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 0F31BC04FFE for ; Wed, 15 May 2024 01:50:48 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 785CD8D005F; Tue, 14 May 2024 21:50:47 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 735918D004F; Tue, 14 May 2024 21:50:47 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 5FD608D005F; Tue, 14 May 2024 21:50:47 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0014.hostedemail.com [216.40.44.14]) by kanga.kvack.org (Postfix) with ESMTP id 3FE048D004F for ; Tue, 14 May 2024 21:50:47 -0400 (EDT) Received: from smtpin04.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay06.hostedemail.com (Postfix) with ESMTP id B780AA112E for ; Wed, 15 May 2024 01:50:46 +0000 (UTC) X-FDA: 82118951292.04.36D45DC Received: from out-187.mta0.migadu.com (out-187.mta0.migadu.com [91.218.175.187]) by imf20.hostedemail.com (Postfix) with ESMTP id D603F1C000D for ; Wed, 15 May 2024 01:50:43 +0000 (UTC) Authentication-Results: imf20.hostedemail.com; dkim=pass header.d=linux.dev header.s=key1 header.b=ex3VJywQ; dmarc=pass (policy=none) header.from=linux.dev; spf=pass (imf20.hostedemail.com: domain of yajun.deng@linux.dev designates 91.218.175.187 as permitted sender) smtp.mailfrom=yajun.deng@linux.dev ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1715737844; 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=Um+LLAWibB7fswZ990STIjfH5bJNb9IuSwPgMuXjA2k=; b=em8D3G16uYrv81iJ35cdDOydALxWtJIuOebLmST+x9mKTKM0wi93lMouu0/HS8IsaGOosW ygMIZ7vyi8/lZZkkTyVZRvWfpe4Dhkmx2YCnqfGwkhWjJnvCqBjwzk706iGV/QzcEtJPpy 23nagjiSekhxknom3ra9OYPK9cAlGvw= ARC-Authentication-Results: i=1; imf20.hostedemail.com; dkim=pass header.d=linux.dev header.s=key1 header.b=ex3VJywQ; dmarc=pass (policy=none) header.from=linux.dev; spf=pass (imf20.hostedemail.com: domain of yajun.deng@linux.dev designates 91.218.175.187 as permitted sender) smtp.mailfrom=yajun.deng@linux.dev ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1715737844; a=rsa-sha256; cv=none; b=Tjijb+Nl9Xy7htw2oHoh65i+/rlMXLYiaem2Ep7KtMsC8ZGMv5HWwPHY1AFvyB1iGSZCUg Kwnvv0YSAgpn3JLn6XNiO3Qj9geziVJwt/0AnY7ptqKX8F8HcSyX8R4asit7ramved9Vyn /nTGZE3sCSNG+ro5/EiNJ+60/KsH/wM= MIME-Version: 1.0 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linux.dev; s=key1; t=1715737841; h=from:from: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; bh=Um+LLAWibB7fswZ990STIjfH5bJNb9IuSwPgMuXjA2k=; b=ex3VJywQEJlE2rBN39osd0SXAcXK4bSWV3bXKtbbL+RgRs20rIZh9IfBHNkm52upzm0iy7 KR1kJcROd/jLzoYJfsDSSffopfftx9Y2qLyOCLj8zYqowtDPEHUYJo0tyADVIeqef/tMBF X8DnmtVAzhOfP9qarR79iyKvd9ilH4g= Date: Wed, 15 May 2024 01:50:39 +0000 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-Report-Abuse: Please report any abuse attempt to abuse@migadu.com and include these headers. From: "Yajun Deng" Message-ID: <6fe9f88b4d71f0f563d57eb73484bbbe9a285e6c@linux.dev> TLS-Required: No Subject: Re: [PATCH] mm: page_alloc: fix the incorrect parameter To: "Johannes Weiner" Cc: akpm@linux-foundation.org, vbabka@suse.cz, linux-mm@kvack.org, linux-kernel@vger.kernel.org In-Reply-To: <20240514124015.GA2697047@cmpxchg.org> References: <20240514065933.1523170-1-yajun.deng@linux.dev> <20240514124015.GA2697047@cmpxchg.org> X-Migadu-Flow: FLOW_OUT X-Rspamd-Queue-Id: D603F1C000D X-Stat-Signature: ecdecso5kmfxjrauiara6ztfkawbhm1d X-Rspam-User: X-Rspamd-Server: rspam08 X-HE-Tag: 1715737843-438361 X-HE-Meta: U2FsdGVkX19ZFFgtWnhIMWcaxsaQx2IERhLEgUNX17V4zda7ABrIdMytzCtjZtR4+wUmVgQELy1zx7NMQWg9LbCFmGHT+wy3izvz/caZNzN9r+AS8XuIrLKqtDC7YWH5hXeLJRkrNPua8lr66/Rqi+LdLxgmI8ZNtqTNAo3vpVRzeBrTn7hQ9v7aWNqNOQdKjr+fPpFjv23zf13CtGQzWplIO6YmUm69jgCwTitGkB0l/OZmoe+tVZKs+5w1mVP81LIb3Oooc8fQVjbBdNpkQyyfAvfxlSPZ6nrU/etLDqzaorhLRE+bSebj2cTUcTtofD8yNv+YVlqL5rSeC3CRr2MFsnGqH4sjOreYvBml0ocegoM+kyM2CSyqxPFqf7/SPIXC5wGFQ75fKcWSjhlUK/NgJRxtClonNaz3Vv/utdPnJt6o6dZY1pkkO3FXMk3ZzvW5kMHkkj1YXb0foAcSt0isigKo6PiHgOZjyRX3QFPrt01UoCWigQ1GndSyJQ9i/vjIEE/Wl/Z9Pv9RAttZrygqoXZSEousnCE1aaVkDZTGvXTGyY4yxNfRM/KJih9Uf76IaB5naOHWsdfgjYmCr9gG25IFywneJaLwfSbZUjxyw+0QYxJU8u90QhB5rre33bfixXLnaHMB1/wPvd1kbM3IjK6l54NrGOtITDAzfS4+cFap4Tij2d6PFZ0ONJk8V/pKo0JIaLmzcUlp+3DilUcCk/up5LwnEhTGfl29JxfqwljrwrWinqjkZ32GtqUnmzFTX6C+4fk64BFFvH2PsSA1O3WwZTCOH63ECXzhWw//40WL3ERSHQII66ll1a+Qhy//w5Yo6i8tavV4xzOrK515cSUobUAUUH3OO10x2ZU5GupE2YqApPU13OkETKUZH9xJRhuWtPjpO5qwe7oZJaMxerisx1xT/RwtgSur4GzQrUxwJMvD1SiUHXZYH0pO+jYXDbB4ZMcgblypto0 oRHAWrkI /nV2hKFbK/eiB5DO581yQ4vLQla17zY7Te9glnX0vtokd5yEcAhtM8zmlrBtZjRdbf7U7J4YjqfOiOXwaTynsYNd/igodMbz0GuCbLSfJkbEpa5FegwxwGyut5wyzwtMOQr8KsdiEen9jiYAF/xA6HV7wVLB1KbJ/luGeZaDsMfq4ST4NIwWOTlkiytZIMgPE6hM2 X-Bogosity: Ham, tests=bogofilter, spamicity=0.000001, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: May 14, 2024 at 8:40 PM, "Johannes Weiner" wrote: >=20 >=20On Tue, May 14, 2024 at 02:59:33PM +0800, Yajun Deng wrote: >=20 >=20>=20 >=20> The first parameter passed to set_pageblock_migratetype should be t= he > >=20 >=20> buddy, not the page. Let's change it back correctly. > >=20 >=20 > No it shouldn't be. >=20 >=20>=20 >=20> Fixes: fd919a85cd55 ("mm: page_isolation: prepare for hygienic free= lists") > >=20 >=20> Signed-off-by: Yajun Deng > >=20 >=20> --- > >=20 >=20> mm/page_alloc.c | 2 +- > >=20 >=20> 1 file changed, 1 insertion(+), 1 deletion(-) > >=20 >=20>=20=20 >=20>=20 >=20> diff --git a/mm/page_alloc.c b/mm/page_alloc.c > >=20 >=20> index cd584aace6bf..5422f6f8975d 100644 > >=20 >=20> --- a/mm/page_alloc.c > >=20 >=20> +++ b/mm/page_alloc.c > >=20 >=20> @@ -1728,7 +1728,7 @@ bool move_freepages_block_isolate(struct zon= e *zone, struct page *page, > >=20 >=20>=20=20 >=20>=20 >=20> del_page_from_free_list(buddy, zone, order, > >=20 >=20> get_pfnblock_migratetype(buddy, pfn)); > >=20 >=20> - set_pageblock_migratetype(page, migratetype); > >=20 >=20> + set_pageblock_migratetype(buddy, migratetype); > >=20 >=20> split_large_buddy(zone, buddy, pfn, order); > >=20 >=20 > [ pageblock | pageblock ] >=20 >=20^ ^ >=20 >=20buddy page >=20 >=20We're trying to isolate the second pageblock, but it's part of a >=20 >=20bigger buddy. Remove buddy from the free list, update the migratetype >=20 >=20of page, then split and free the chunks back. This puts the first >=20 >=20pageblock back on the original freelist and the second block onto the >=20 >=20isolate list. >=20 >=20In the else branch, it's the first block we're interested in: >=20 >=20[ pageblock | pageblock ] >=20 >=20^ >=20 >=20page >=20 >=20So again, take the whole thing off, but now mark the first block >=20 >=20isolate, then split and free. > Got it, thank you for your detailed explanation.