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 26456C3ABC6 for ; Thu, 8 May 2025 20:46:57 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 4707E6B00A9; Thu, 8 May 2025 16:46:55 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 3F8846B00B7; Thu, 8 May 2025 16:46:55 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 24C266B00BA; Thu, 8 May 2025 16:46:55 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0013.hostedemail.com [216.40.44.13]) by kanga.kvack.org (Postfix) with ESMTP id 032C56B00A9 for ; Thu, 8 May 2025 16:46:54 -0400 (EDT) Received: from smtpin20.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay09.hostedemail.com (Postfix) with ESMTP id E212E8126C for ; Thu, 8 May 2025 20:46:55 +0000 (UTC) X-FDA: 83420924790.20.8A8412C Received: from mail-qk1-f173.google.com (mail-qk1-f173.google.com [209.85.222.173]) by imf11.hostedemail.com (Postfix) with ESMTP id D95294000F for ; Thu, 8 May 2025 20:46:53 +0000 (UTC) Authentication-Results: imf11.hostedemail.com; dkim=pass header.d=cmpxchg-org.20230601.gappssmtp.com header.s=20230601 header.b=jZPRLSjL; dmarc=pass (policy=none) header.from=cmpxchg.org; spf=pass (imf11.hostedemail.com: domain of hannes@cmpxchg.org designates 209.85.222.173 as permitted sender) smtp.mailfrom=hannes@cmpxchg.org ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1746737214; a=rsa-sha256; cv=none; b=kzRVZD7wy3Lk9sRP5GwSSP/1X3sT4APs8U6L/CGoJOPzRySKs8ywIppNT4mtPRUUh1HvTo R38Vf27BKyM7X0Rpk7+gW2TDSBNIE8TnXTCT9pxSD+HhC9m9Z7f3eBXu97cRtcAxc6CWbw tF9WTiuJOLkkej4bCXdiXQpR6FaNgOA= ARC-Authentication-Results: i=1; imf11.hostedemail.com; dkim=pass header.d=cmpxchg-org.20230601.gappssmtp.com header.s=20230601 header.b=jZPRLSjL; dmarc=pass (policy=none) header.from=cmpxchg.org; spf=pass (imf11.hostedemail.com: domain of hannes@cmpxchg.org designates 209.85.222.173 as permitted sender) smtp.mailfrom=hannes@cmpxchg.org ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1746737214; 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=zQEnUDiH17j0axkwQIQsd15gk3w4WvOGH1IVj+x3pR8=; b=aOpOb5r7CTpjGNw0zriokVBGi2JVeV/UAP5NUbiug5yKnK4/gT+ZBJiTjYGoOjIlR50vQe F5c932KGzTe9bhHtXbXgyN9WXO7/g4MSKEP1JSRUERC0FYtvPw6m41Cc2CUTgcK/Ucc2RN sAB7QvrrgNgZv04yIn07/3aY1mjSk6U= Received: by mail-qk1-f173.google.com with SMTP id af79cd13be357-7c5a88b34a6so156691885a.3 for ; Thu, 08 May 2025 13:46:53 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cmpxchg-org.20230601.gappssmtp.com; s=20230601; t=1746737213; x=1747342013; darn=kvack.org; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to; bh=zQEnUDiH17j0axkwQIQsd15gk3w4WvOGH1IVj+x3pR8=; b=jZPRLSjLZ7l2NjSNzs7v7Zor4ehkaKPoBQ43I9veCtn89V8qQwz7jLZmd1dwsWlMio gdcelwblpvU4i4+JJ4qfN1wOxVJKR5iK6osH1pAffb0+xbYRMGg5wtdE8WT9l4tlUX9N YuFuyl/nOF10iHOTQZoUd3cs9frfjd5AdymlTclEbohYpSy+6ieHR24/RD7XtK0T4sOJ asgqxX0wvv1tpn82JEMmHfayU8fzO1UVKw8nrg2Q4GCrC27cbM97voIPmcy+U7pijE78 oE9LqDzxzV1eePUKQvb6STCJH/p5JpZmRVIQA8hn8Z/4n9AqBqtdwasZMNxKqIVqgbRb uw2A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1746737213; x=1747342013; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=zQEnUDiH17j0axkwQIQsd15gk3w4WvOGH1IVj+x3pR8=; b=UA/DuszJrUHcpKdjR/VKSn9a/LzUwjbWtujJInV6wsRG3jIjZEXAJ/FyyWYK0z2V/U nEmfgA6nDk1QzIQYKqdGGfv/Il0Xl9UlhKRitO7rA4kA1N+G+Ezu68xQY6XnatZB1zER PYCPT4yaTRXvNirjC73YfdgTvs4ROOvVq0RqrdUf/Q2OFmuZnLfhwXWaDfc8EOMykgtr iaac3OsP9k4jf7wPvGRMfaKQUxNWJnZSAB0KKMl3bWNSkgTtn/lUSdCI48fsoNeYIRbu VTAsXvR3CdvpMWpL+l3+tJzxUaml8pciVxjelbuASWB7BQxRKonY9DnZ2hFBJhsJfQvb BFDw== X-Forwarded-Encrypted: i=1; AJvYcCXs+cLfTwsIrxW5rIlK0hRvc1maWfXYvlJt7OUR0LcVXoMBJ9c00EmLUEB1TBFPam0KaZ0MyZj2pw==@kvack.org X-Gm-Message-State: AOJu0Yw7XtxTytOQaioaYuoU9mJlayea+x90RUYRAT8c3ysD99a27CUR jvTeEU+tprGVmeChrMwJa3XOEqwbJQJDzh3nszh3JkZ4DcUhIuJJ5eOpvvHoRVg= X-Gm-Gg: ASbGncu8vfuLtQjU/GkTGHBgK5HVcl/672KJYAKwCkedQa4fy/ZHfO9KAfiKldXh+uL hZrqUIbnHPleHMd2GSohqJw/af6KxjV3FIo2PF/2zvUA5p0Z/riRY64kkm9jtqVhrU9MJ5CA1JL cokGJKx3I/ILvGBfKUzlCHhduZYyyYziJbr6y2MjARCR9EL83Ixy6LTMcjs2DEdYgsk2HV5cFSz 0GoxDRmiCH57s+lKv4As8f/FJLTzV8QkzlIHCahN7DhrhdU7Nz4nfDTc2sYc15FbqMzFmtmcdqe j76qmbuMaF4B122HZysMp7SY7WIT0IkYKjDJZPw= X-Google-Smtp-Source: AGHT+IHeeTbu3oSEAaZfd20nR1n/PId7yFctl0Zs1lNl+athCGKHq7I+Zd6dkLIXBnQuGA3moXaPoQ== X-Received: by 2002:a05:620a:370b:b0:7c5:54d7:d744 with SMTP id af79cd13be357-7cd010f19bamr172019485a.23.1746737212814; Thu, 08 May 2025 13:46:52 -0700 (PDT) Received: from localhost ([2603:7000:c01:2716:365a:60ff:fe62:ff29]) by smtp.gmail.com with UTF8SMTPSA id af79cd13be357-7cd00f98942sm38704085a.49.2025.05.08.13.46.51 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 08 May 2025 13:46:51 -0700 (PDT) Date: Thu, 8 May 2025 16:46:44 -0400 From: Johannes Weiner To: Zi Yan Cc: David Hildenbrand , linux-mm@kvack.org, Andrew Morton , Oscar Salvador , Vlastimil Babka , Baolin Wang , "Kirill A . Shutemov" , Mel Gorman , Suren Baghdasaryan , Michal Hocko , Brendan Jackman , Richard Chang , linux-kernel@vger.kernel.org Subject: Re: [PATCH v3 1/4] mm/page_isolation: make page isolation a standalone bit. Message-ID: <20250508204644.GB323143@cmpxchg.org> References: <20250507211059.2211628-1-ziy@nvidia.com> <20250507211059.2211628-2-ziy@nvidia.com> <20250508052409.GB320498@cmpxchg.org> <13898284-B62B-412D-A592-856406F7D7C0@nvidia.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: X-Rspam-User: X-Rspamd-Queue-Id: D95294000F X-Rspamd-Server: rspam04 X-Stat-Signature: q3jxq4gwrnwbta17e5yh7k7pcxdxt995 X-HE-Tag: 1746737213-655090 X-HE-Meta: U2FsdGVkX19JsUtd0LFeQQqPkYzXYZR3IZnQ4pUmnQ/BwgVFOh+q2DqfaLZBt2aX4PQUUDfIF3pfxwb3P/FodzBfQRAuO256y8Kwhl2AuYTjgeNuKe4zzolGME2hGCfF6hT/2WXgbWFD1ozK80HwA7YuH+aN7JorGLKZruNcRDSHqArI3qvrNsrWWShUvvT8C1vWNcg5dcTCfbnUcQfONHHEOSULos+Atsoi++GDchc7XUBa7Ni5jAdT/HNRiGzn7CXRaQNula/jWEwa5Yl5uIqnUFQ3U1q/JN2wYSn7yX/2UMXoRFJe+s5gD/MZinT3Oi1lCOwoKcAA2YfPRNvYNtShC1LtgDLzP68S7LnqYursABUOUuWSelMQXBDiVYsSaEf6f13inOM1DjOdk34snQi6ygaVj5E4vdCqTu04Lo6pCpZYgBj9WzqAzR89vorJlPgD2gXEvcPKScbEQkTcvg9UCPE7yvmN0Qjdw6kWnukPiz1jt7SqKimQ3OHoqNPVcrZgo4noVrw/hEGoMAn8MXKlKhaPijqSSwLwBnNhRR8AgA2SVP8qZqTQD3Iuy9/SeC61/uM5HI2f7bkeqGxCyOP2JY5rPSbOxxdQ4Njgo4Xcw+JNUBKxS46CIe7BULl9fOaOGPdN3I5yLigJ1kgj47GHq0D+HFNlXkqSQkUfWuKdDwlalL8RdxQSzmm2Uc8ngp7HrntkUzk19j9pd8lKkMIXEpZbt/sjou2rlX/5sMKALePe5SjtxKrOYPPaUol697KJ0ki+6YNSyYR9W2OdLeBsExwsVdh+yIaOvmQyyeO3ktBvXLj23/2XVndEXqeSwKB2Zmk2+WcclDVHrcr/m41NKqw3R9L2kg45z3YVvPfYLWNONoc77s6aiVGSDq84bFI5TTmBU7P9iY18F8q300fFxSMO5VU7HHWjuEwrugtJadTQc9oexBdvE9Q6ajsL10/8h7+gHW0mpekF2Gc tsbL1X5f lF2BYNwWuC0vKH+Pn6FMEG2WmuHBLV6MEEPgObn4X1bhAatXWSWglHKFV2Tj/KbPqi+BpjxTVHzV6i8170O4fxGzmAcVUEGlcc2OyFf4R1Y2ohTrdJlWpLUXRY5uFQpPO2UThhaeG3f1HxE3vchX3FpWe1tfEV6iVKpQQRfCSrRByNitjFg67wG6f++pblEW5dzfyA2C+nxbp9+xyX9P9/OtYjsoc3ONu/Ic/QlzrNOwPcoBCcqKCCxcRLslZGFPhVZ3IpD/6EzNcxRtVSlpO4Iq8OwhvcQiEpj8t2sZZjpcDX5UFssMHEzfjZ01sdck/X7+tKL4jp9AKTOUhYaB5nUycq1K16oOfBvADC9JFHJWD+dFJ4KOFeN9ikV7kncYG0aC000BXpTrN8ddDUqxiCw+eguA1O7vXYJs+WgpB+ibO8ZoVdp/PZIrxWUB+ZcsY6co9bRG+zFMbpNPUotR6wkbyRBiflDbVehgmn2XyHQsE8NzbEwY0tOE5ro1SNCVLaSTQ8y3UmXL+UV8= 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: On Thu, May 08, 2025 at 03:17:05PM -0400, Zi Yan wrote: > > >>> @@ -426,7 +460,12 @@ void set_pageblock_migratetype(struct page *page, int migratetype) > >>> migratetype < MIGRATE_PCPTYPES)) > >>> migratetype = MIGRATE_UNMOVABLE; > >>> > >>> - set_pfnblock_flags_mask(page, (unsigned long)migratetype, > >>> +#ifdef CONFIG_MEMORY_ISOLATION > >>> + if (migratetype == MIGRATE_ISOLATE) > >>> + set_pageblock_isolate(page); > >> > >> Are there paths actually doing this after the second patch? > >> > >> There are many instances that want to *read* the migratetype or > >> MIGRATE_ISOLATE, but only isolation code should be manipulating that > >> bit through the dedicated set/toggle_pageblock_isolate API. > >> > >> If there isn't one, it might be good to enforce this with a VM_WARN > >> instead. > > > > I checked all set_pageblock_migratetype() callers and do not see > > one using it for pageblock isolation. Let me replace the code > > with a VM_WARN and add a comment to tell users to use dedicated > > pageblock isolation APIs. > > > > Actually, move_freepages_block_isolate() calls __move_freepages_block() > to move free pages to MIGRATE_ISOLATE pageblock and > set_pageblock_migratetype() is used inside __move_freepages_block(). > So the branch has to stay. Will use the suggestion below. Ah, good catch. But looking at the callers, it's: move_freepages_block() move_freepages_block_isolate() try_to_claim_block() The last one would benefit from having the set_pageblock_migratetype() there explicitly, as this is what this function is supposed to do. It also should never set the isolation bit. move_freepages_block_isolate() has two set_pageblock_migratetype() calls already. And after the series, it should only manipulate the isolate bit, not change the actual migratetype anymore, right? Maybe it makes the most sense to move it into the three callers? And then fortify set_pageblock_migratetype() after all.