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 E1339C3065A for ; Mon, 1 Jul 2024 07:38:21 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 622036B0098; Mon, 1 Jul 2024 03:38:21 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 5AB3A6B009A; Mon, 1 Jul 2024 03:38:21 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 4243C6B009B; Mon, 1 Jul 2024 03:38:21 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0015.hostedemail.com [216.40.44.15]) by kanga.kvack.org (Postfix) with ESMTP id 222956B0098 for ; Mon, 1 Jul 2024 03:38:21 -0400 (EDT) Received: from smtpin03.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay05.hostedemail.com (Postfix) with ESMTP id CB6D440AF1 for ; Mon, 1 Jul 2024 07:38:20 +0000 (UTC) X-FDA: 82290380760.03.74F4D75 Received: from mgamail.intel.com (mgamail.intel.com [192.198.163.10]) by imf24.hostedemail.com (Postfix) with ESMTP id 9D5E9180011 for ; Mon, 1 Jul 2024 07:38:17 +0000 (UTC) Authentication-Results: imf24.hostedemail.com; dkim=pass header.d=intel.com header.s=Intel header.b=ffZqo45z; dmarc=pass (policy=none) header.from=intel.com; spf=pass (imf24.hostedemail.com: domain of ying.huang@intel.com designates 192.198.163.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=1719819475; 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: in-reply-to:in-reply-to:references:references:dkim-signature; bh=m+U+zxrsvVmp9hbJ4dsZ3oC69iGWWm4Fmx7gN6tPzx4=; b=MdszXrxCZci4jgYN+D7gBeL5Ev66dvBx1uIyI2JKymxrUtpId8to/TnSU2fmKE/V9PMdkR ytn4P9MHBXNnnRd9vlbR2woh3h3GMEv8V0AlpiSrqEOwDBGVqo8XpJN/c6OB9RH1azA9bx w3QpcNYMyMvkbiZ11caVDqtA462KDSo= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1719819475; a=rsa-sha256; cv=none; b=KpZ5uzddLn/Ov2p8fCQZqVeXEtJ67jtFmBXKuf7tYnHimsMWUIYHflYmWUsDUMiv/qEwMx JFrac5UaUzW/9shk6DSWTX5SJTjZC7rtZzmRuG52fiE83ABVDRJOTGPk6QF4iJ5qjaPLxb ZJuLFj25KMV/wz8l29fStKscYyQFsUk= ARC-Authentication-Results: i=1; imf24.hostedemail.com; dkim=pass header.d=intel.com header.s=Intel header.b=ffZqo45z; dmarc=pass (policy=none) header.from=intel.com; spf=pass (imf24.hostedemail.com: domain of ying.huang@intel.com designates 192.198.163.10 as permitted sender) smtp.mailfrom=ying.huang@intel.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1719819498; x=1751355498; h=from:to:cc:subject:in-reply-to:references:date: message-id:mime-version; bh=facbaRCnbSQSPEJ4NU4guvxeVPVmZBrJDP2YaKOJGH4=; b=ffZqo45zMZXroLLreLBOCEl5mkxT0MZ4Ke5uPwvHtYXU19Womk0QJTQX BGohFOSe/1PAculFC3yLiCzLj1PNOT/8SBWDyKFkpap88gPgP5bj3knyF 9KnEXxgueeoYQWGW3CGIwHyXGKQhYBCAy5v7CauHX7rGGfb2exAYCE3ej 9Xt9hm67uDV5EKB1mn0g9rUvgfln0n5p3+Z0xnOVYHd7tzHR5BnECHxpV XBHFhIUeC9UFWKGSMqHWwZNcFxgsK7DbOzho3vou+yL8ENiSZlFaYywRr LBnQ8PLXsT87HCSrN7W5bjjVvS9EYHBRXvCUs7aEpWruhOAXg7UJvXPVo w==; X-CSE-ConnectionGUID: G+G70G/TSS2LXOfFK8T0zA== X-CSE-MsgGUID: ruD63UQKRPmSZ4QLBWawpw== X-IronPort-AV: E=McAfee;i="6700,10204,11119"; a="28324749" X-IronPort-AV: E=Sophos;i="6.09,175,1716274800"; d="scan'208";a="28324749" Received: from fmviesa001.fm.intel.com ([10.60.135.141]) by fmvoesa104.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 01 Jul 2024 00:38:16 -0700 X-CSE-ConnectionGUID: GB8kuVrgQeCem9zhK20QJQ== X-CSE-MsgGUID: JTvTZ1kXQOG5KpD8ugvahA== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.09,175,1716274800"; d="scan'208";a="76610300" Received: from unknown (HELO yhuang6-desk2.ccr.corp.intel.com) ([10.238.208.55]) by smtpauth.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 01 Jul 2024 00:38:15 -0700 From: "Huang, Ying" To: David Hildenbrand Cc: linux-kernel@vger.kernel.org, linux-mm@kvack.org, Andrew Morton Subject: Re: [PATCH v1 1/2] mm/migrate: make migrate_misplaced_folio() return 0 on success In-Reply-To: <20240620212935.656243-2-david@redhat.com> (David Hildenbrand's message of "Thu, 20 Jun 2024 23:29:34 +0200") References: <20240620212935.656243-1-david@redhat.com> <20240620212935.656243-2-david@redhat.com> Date: Mon, 01 Jul 2024 15:36:23 +0800 Message-ID: <87plrxo96w.fsf@yhuang6-desk2.ccr.corp.intel.com> User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain; charset=ascii X-Rspamd-Server: rspam07 X-Rspamd-Queue-Id: 9D5E9180011 X-Stat-Signature: k9miyx5ezo66ih136y1b68p8ijgjeejs X-Rspam-User: X-HE-Tag: 1719819497-174568 X-HE-Meta: U2FsdGVkX18nN2HRpty2yOVMTo7JAKkMmxtRUxZbkdQlkZtOG56xUGsk+VvL6pf/ZxCkySzb9W8+idXgStOg8QFNov+CtjWgxxyocCjC+xOEHj+h+i7p2AueeUACPJoAi88WS+UK6hMioBrurH4uisprh8z+Ht/ST9sErX1Ylz8j1mq/Q9JHuAjW4ZUirkCL6iGytvygKKvjrzWK6+0j3B8NhI2/G1iiXayP+kpyJD8q0JNTSecRoAk3VNwx627f7KSczS/4UW3oxxaysWqT9cTysPVcgSwXrKnOBGy7Ek+KKZtzAtY9x2LGuegpG3cqdgnzb9XUl9z9ll7Hdi7mlovxT3bo/RJ9MfKzR7LBLf7OIuXI+57i+ZXZfD9jisDmo7rYBKNXbvBi0kak3N6cwOl1nsqKepqyr4R1q8qpt6e7jrwtNhTuYJQRg0fi+9Be7AAmbw1LAgnqH2Qhe/bi9q9KCLpJRkj4UxOrESEtr3ogaBFXWJzxzpUpTP1iA/dpNDsaR2YZYfGMfpvsErV9/s14JbHDdJYdWzaEysSLbhTwiyCopj3QLL7N2by8b8qr4brRSwNcCZ5Qh0WP9WETLNh7Aiyw8eHaCX4uPUCFrfuiUXs538iIN8z0pc4TyLyHUDRxd6nONHPYyF0OdzaVWAk80aB7HpI8Z2zyCqpQ9neqCJC3gNo+DzhmyzAunvuBNDG0Ub1VJ5AwXXZbXnDsXVrCGNM3w02BCARSnkrERU9vZIT0o25f9j2bn0nebOSJvsi/5wutARuETL7PNfWf001a/5grJ2mTLA2mIMp+nCAIHeAeFXX68ypZWcTrtKd/5/QDsuHxhwyS9Gw+g9f2ERm3zfZhuacw2O2Ucup1+AguZlFstdegGiP8Cl2JW49dvOner1b1XuB8Cb2bLV00WGjb+Abp4rxsd4kxUMUB0SgR3Zy08+E2VgdLJJ/sCN/3KHfFcsKmiKCP1irtU9+ hkkAODRB 2W//JKzLs3IwtK1BFzigP6U/BkjdgHhJTI0ARU2iQ9QopFov5sm64IqCO+If+3R5sN69MuxAjvp6OXgCikwBcpUwq+SbEieEsvJibxDbX8Wc/EjuDOFo2tVuCm0bAFpxRm4+uSeMIzihyJ5EVnz2/7jayff693OqNDfBk4sebV1cXsbHKOjbprI6Jnl2JBmXKiTezaVSAG5INunMbvj6O0u11TCMJyr/cx2nL43q1lC+OSPqAeb/i3U5t1A== 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: David Hildenbrand writes: > Let's just return 0 on success, which is less confusing. > > ... especially because we got it wrong in the migrate.h stub where we > have "return -EAGAIN; /* can't migrate now */" instead of "return 0;". > Likely this wrong return value doesn't currently matter, but it > certainly adds confusion. > > We'll add migrate_misplaced_folio_prepare() next, where we want to use > the same "return 0 on success" approach, so let's just clean this up. > > Signed-off-by: David Hildenbrand > --- > mm/huge_memory.c | 5 ++--- > mm/memory.c | 2 +- > mm/migrate.c | 4 ++-- > 3 files changed, 5 insertions(+), 6 deletions(-) > > diff --git a/mm/huge_memory.c b/mm/huge_memory.c > index 0fffaa58a47a..fc27dabcd8e3 100644 > --- a/mm/huge_memory.c > +++ b/mm/huge_memory.c > @@ -1652,7 +1652,7 @@ vm_fault_t do_huge_pmd_numa_page(struct vm_fault *vmf) > unsigned long haddr = vmf->address & HPAGE_PMD_MASK; > int nid = NUMA_NO_NODE; > int target_nid, last_cpupid = (-1 & LAST_CPUPID_MASK); > - bool migrated = false, writable = false; > + bool writable = false; > int flags = 0; > > vmf->ptl = pmd_lock(vma->vm_mm, vmf->pmd); > @@ -1696,8 +1696,7 @@ vm_fault_t do_huge_pmd_numa_page(struct vm_fault *vmf) > spin_unlock(vmf->ptl); > writable = false; > > - migrated = migrate_misplaced_folio(folio, vma, target_nid); > - if (migrated) { > + if (!migrate_misplaced_folio(folio, vma, target_nid)) { > flags |= TNF_MIGRATED; > nid = target_nid; > } else { > diff --git a/mm/memory.c b/mm/memory.c > index 00728ea95583..118660de5bcc 100644 > --- a/mm/memory.c > +++ b/mm/memory.c > @@ -5354,7 +5354,7 @@ static vm_fault_t do_numa_page(struct vm_fault *vmf) > ignore_writable = true; > > /* Migrate to the requested node */ > - if (migrate_misplaced_folio(folio, vma, target_nid)) { > + if (!migrate_misplaced_folio(folio, vma, target_nid)) { > nid = target_nid; > flags |= TNF_MIGRATED; > } else { > diff --git a/mm/migrate.c b/mm/migrate.c > index 781979567f64..0307b54879a0 100644 > --- a/mm/migrate.c > +++ b/mm/migrate.c > @@ -2629,11 +2629,11 @@ int migrate_misplaced_folio(struct folio *folio, struct vm_area_struct *vma, > nr_succeeded); > } > BUG_ON(!list_empty(&migratepages)); > - return isolated; > + return isolated ? 0 : -EAGAIN; Is it good to use -EAGAIN as error code always? At least if nr_remaining < 0, we can use that? Otherwise, this LGTM. Thanks! > > out: > folio_put(folio); > - return 0; > + return -EAGAIN; > } > #endif /* CONFIG_NUMA_BALANCING */ > #endif /* CONFIG_NUMA */ -- Best Regards, Huang, Ying