From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id 6A737C2BBCA for ; Tue, 25 Jun 2024 04:38:31 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id A150E6B032B; Tue, 25 Jun 2024 00:38:30 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 99E5B6B032C; Tue, 25 Jun 2024 00:38:30 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 7F1356B032D; Tue, 25 Jun 2024 00:38:30 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0016.hostedemail.com [216.40.44.16]) by kanga.kvack.org (Postfix) with ESMTP id 5DF2A6B032B for ; Tue, 25 Jun 2024 00:38:30 -0400 (EDT) Received: from smtpin08.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay09.hostedemail.com (Postfix) with ESMTP id B861E81621 for ; Tue, 25 Jun 2024 04:38:29 +0000 (UTC) X-FDA: 82268154738.08.285AC87 Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.10]) by imf08.hostedemail.com (Postfix) with ESMTP id 95FBB160013 for ; Tue, 25 Jun 2024 04:38:26 +0000 (UTC) Authentication-Results: imf08.hostedemail.com; dkim=pass header.d=intel.com header.s=Intel header.b=gTT0htxk; dmarc=pass (policy=none) header.from=intel.com; spf=pass (imf08.hostedemail.com: domain of ying.huang@intel.com designates 198.175.65.10 as permitted sender) smtp.mailfrom=ying.huang@intel.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1719290296; a=rsa-sha256; cv=none; b=IxnPh9F99BexPGJmn7ZeLwW+R/0+DB14MK4GwxyrXZ+pCtgGIPcq2klL8rM2ivlzwHWj2J xy6wgBhbATXZJVDdz/DwIhsHUWzc7JDEBFWeQhoaZ5V5ScEM1nYX+B/5S2J9WuBrnuRlqP WAeN0gX6FnDkeHtaZXrC6uKdewSI0Ho= ARC-Authentication-Results: i=1; imf08.hostedemail.com; dkim=pass header.d=intel.com header.s=Intel header.b=gTT0htxk; dmarc=pass (policy=none) header.from=intel.com; spf=pass (imf08.hostedemail.com: domain of ying.huang@intel.com designates 198.175.65.10 as permitted sender) smtp.mailfrom=ying.huang@intel.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1719290296; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=vvOtNdRU3DZSZ9CMRjgJGJ2Q+oxeGJHtVu36avnqOYg=; b=nmEnQrNPR1HEfBjVuNJ6+Z60rAP8Ek5nZbVT2yseFwyFjI269Ss9JzADpp7cjk7CrKGPYg fG+MNqrCvD8aD0i10kqYf85N+isPSCj4BK5LAxr4UcgXwGuIJNU+oRdveCi4CntT9rX8Pb m8DnmLVdP5eqwrOyqTL6JUklTPuDCcw= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1719290306; x=1750826306; h=from:to:cc:subject:in-reply-to:references:date: message-id:mime-version:content-transfer-encoding; bh=EGZvQJESo6gryhKMWkPpgTasuq63w/uSx/WXHZYgYyE=; b=gTT0htxkMW3+RObbVU2Hp0SYuWgcKghcVNfUn36utOfjCtDR5rG8INVY 7nUiV7TWh/r/H2h9H4hUm12BZBOCMCZw0hRo9CdBYmRIzxq0Q4BDWLWWp luW+Vsewmwy4nrCVPTcU2xz57P5jCntiVU7xc6SB2q0x2tivAwsB23HGu YPiKTiNrr1IERKxEhOaP/Smvo0l53ujktt6L2JT9kKN3EC0GVeIpDkkAm 5b/SlWtEIyp8XxWOSKH+pYZ5UsR7Q1jyBA9jUVTG74Yq6Gcn0zxz8ndK/ efQAsawgM1dkRJenEUX6qc1cW4/W8jj3+JiJgVdY9nIzoqdJAqgbQB1j4 w==; X-CSE-ConnectionGUID: pbJHyK50R0avHQKE9JSdEg== X-CSE-MsgGUID: dpu3eSBMTs+zZIa1qxrfUQ== X-IronPort-AV: E=McAfee;i="6700,10204,11113"; a="33743753" X-IronPort-AV: E=Sophos;i="6.08,263,1712646000"; d="scan'208";a="33743753" Received: from fmviesa005.fm.intel.com ([10.60.135.145]) by orvoesa102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 24 Jun 2024 21:38:25 -0700 X-CSE-ConnectionGUID: 8+m6qDnkSV6zvLGkQT/UeA== X-CSE-MsgGUID: iGfM5Oo1QHeuyLNM8PJY/A== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.08,263,1712646000"; d="scan'208";a="47954618" Received: from unknown (HELO yhuang6-desk2.ccr.corp.intel.com) ([10.238.208.55]) by fmviesa005-auth.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 24 Jun 2024 21:38:25 -0700 From: "Huang, Ying" To: =?utf-8?B?5p2O55yf6IO9?= Cc: Andrew Morton , linux-mm , linux-kernel Subject: Re: =?utf-8?B?5Zue5aSNOg==?= Re: [PATCH] migrate_pages: modify max number of pages to migrate in batch In-Reply-To: <7ii375j23j-7ikn2sd5r4@nsmail7.0.0--kylin--1> (=?utf-8?B?Ig==?= =?utf-8?B?5p2O55yf6IO9Iidz?= message of "Tue, 25 Jun 2024 11:33:54 +0800") References: <7ii375j23j-7ikn2sd5r4@nsmail7.0.0--kylin--1> Date: Tue, 25 Jun 2024 12:36:32 +0800 Message-ID: <87zfr9y6y7.fsf@yhuang6-desk2.ccr.corp.intel.com> User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Rspamd-Server: rspam12 X-Rspamd-Queue-Id: 95FBB160013 X-Stat-Signature: fei5prj995z6xsoargy79awpukfrhknr X-Rspam-User: X-HE-Tag: 1719290306-111655 X-HE-Meta: U2FsdGVkX1/4K8CyWG7PyN/h4mHtogxt0NMwcW6DDu8jtTvcXkfWRyH2D5S9pTwAZsmq9NjxU/6M/tI7hQscaF7x390X8GKO7u7Q8by5sVPTHbCirLMQ1Xh+WN92ibfydF2aFaIrSz3XjlgwUJQc/2QmF3Y9O+vsU8PuZuSHgUB7ZDXixfrQz2NDdaJAYsJgtA6ANiS+Ve9p+UqwQpVe5M/y/hvCAU/NbDcsRdW3QtZPi0fwCPe4WmKAdqUcTWcoyFJ/rIZLd3s2sFVUGjB12V7K4Njy32EtDqQDdCi27g7RzVl2Kwyo+qFpkaiVubSXT0P4i4SSKrH75adWKYJGQSjEq/lcY1qx5898ofolGz6uY3VG6XWS0PsF1hLHqSDZ+Zb94IFR7quefTkgg5Ucc7wSZv8czaUWmZxFtqYB+tca9Od7wJgY22mfWgV4gBTFSKPiFrfJ/TspIIQMwOo/ZGc8P0Sl1Jgxuumw/M7gVsbW+skbgseHcpZLkuJ/5WtwWorQ24+maj2GGGM+SZA9NGY8SFhiS5yRf8bv64beZpfEy7roxFAxRBgDUeGtRbIX8i5udm12tVk29mRI4vSQwQKP9+VC7KnZMBzjXfHzuJWtUVxqKtjTz166N4997KSfiUBVnxpvFM+aSgfK+x3k+v3GLOgcr9uJx+mLygxv70WrPWwx4mzIdXMiMWy7n37eyUepnszgyqV/NFo0a4VAV+SlQvIcD3evANBbfAYvFwTfkVT1uY3WJvbX4Kwxt3uxf364WL+5xLgoFY9Bpc08M20BgC3kkEDR8XHQ55sLjOjYJt9cJLLQqXD5AEQecOG7k1SP83YkqL9gzNNzEdq8aVgIp6XcvSA+PTcmvRPibPicaMbXQmeHowFJwPQSvy+gT0HcP/fpzym5L0itwkIZdRckiydG5yxjukG9oFeZOUvwd/axXGGjsIz+GiucIOd1KhMgECLLUzY3SYqEi5Y scOW+/8X J4wzVz3kf8qoJ+tTSw22aDwj3pDArWXoZ8JFl6LU1tPHb3ZCBisG/Zr8Cr/WR5iuDiYBZoYFqiTkix0vfHrVJRufgpnkFZk6pQoH3T9KZ5gGUb56u9sXfm3BOLEAfUnGOWbCZdH+uVVKL29E4g+grmoj5fRBDzs//LoFUI6XBwyMxOBAX/50FxMhJPj4Y4cBQpNyf/rqn0rPtPv5wGuO99c4YH48PJSqLUMZvWoyNClScK6X5ivm6Nki2mg== X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: =E6=9D=8E=E7=9C=9F=E8=83=BD writes: > ---- > >=20=20 > >=20=20 > > =E4=B8=BB=E3=80=80=E9=A2=98=EF=BC=9ARe: [PATCH] migrate_pages: modify max= number of pages to migrate in batch=20 > =E6=97=A5=E3=80=80=E6=9C=9F=EF=BC=9A2024-06-25 09:17=20 > =E5=8F=91=E4=BB=B6=E4=BA=BA=EF=BC=9Aying.huang=20 > =E6=94=B6=E4=BB=B6=E4=BA=BA=EF=BC=9A=E6=9D=8E=E7=9C=9F=E8=83=BD; > > Hi, Zhenneng, > > Zhenneng Li writes: > >> We restrict the number of pages to be migrated to no more than >> HPAGE_PMD_NR or NR_MAX_BATCHED_MIGRATION, but in fact, the >> number of pages to be migrated may reach 2*HPAGE_PMD_NR-1 or 2 >> *NR_MAX_BATCHED_MIGRATION-1, it's not in inconsistent with the context. > > Yes. It's not HPAGE_PMD_NR exactly. > >> Please refer to the patch: 42012e0436d4(migrate_pages: restrict number >> of pages to migrate in batch) >> >> Signed-off-by: Zhenneng Li=20 >> --- >> mm/migrate.c | 2 +- >> 1 file changed, 1 insertion(+), 1 deletion(-) >> >> diff --git a/mm/migrate.c b/mm/migrate.c >> index 781979567f64..7a4b37aac9e8 100644 >> --- a/mm/migrate.c >> +++ b/mm/migrate.c >> @@ -1961,7 +1961,7 @@ int migrate_pages(struct list_head *from, new_foli= o_t get_new_folio, >> break; >> } >> if (nr_pages >=3D NR_MAX_BATCHED_MIGRATION) >> - list_cut_before(&folios, from, &folio2->lru); >> + list_cut_before(&folios, from, &folio->lru); > > If the first entry of the list "from" is a THP with size HPAGE_PMD_NR, > "folio" will be the first entry of from, so that "folios" will be empty. > Right? >=20=20 > Yes, It's right, so we can check whether it is the first entry of the lis= t "from", new patch are as follows(attachment is > patch file): > diff --git a/mm/migrate.c b/mm/migrate.c > index 781979567f64..cce8e2b85e89 100644 > --- a/mm/migrate.c > +++ b/mm/migrate.c > @@ -1957,11 +1957,12 @@ int migrate_pages(struct list_head *from, new_fol= io_t get_new_folio, > } > > nr_pages +=3D folio_nr_pages(folio); > - if (nr_pages >=3D NR_MAX_BATCHED_MIGRATION) > + if ((nr_pages >=3D NR_MAX_BATCHED_MIGRATION) && > + (!list_first_entry(from, struct folio, lru))) > break; > } > if (nr_pages >=3D NR_MAX_BATCHED_MIGRATION) > - list_cut_before(&folios, from, &folio2->lru); > + list_cut_before(&folios, from, &folio->lru); > else > list_splice_init(from, &folios); > if (mode =3D=3D MIGRATE_ASYNC) > I don't think that it's necessary to change this. Yes, the max batch number of the page migration may be 2*HPAGE_PMD_NR-1. Does it cause any latency issue for you? > >> else >> list_splice_init(from, &folios); >> if (mode =3D=3D MIGRATE_ASYNC) -- Best Regards, Huang, Ying