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 E0007C61CE8 for ; Mon, 9 Jun 2025 11:04:50 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 781396B0092; Mon, 9 Jun 2025 07:04:50 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 759016B0093; Mon, 9 Jun 2025 07:04:50 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 695936B0095; Mon, 9 Jun 2025 07:04:50 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0012.hostedemail.com [216.40.44.12]) by kanga.kvack.org (Postfix) with ESMTP id 5001F6B0092 for ; Mon, 9 Jun 2025 07:04:50 -0400 (EDT) Received: from smtpin04.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay05.hostedemail.com (Postfix) with ESMTP id 0DB955FE65 for ; Mon, 9 Jun 2025 11:04:50 +0000 (UTC) X-FDA: 83535579540.04.2C5E6BA Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by imf28.hostedemail.com (Postfix) with ESMTP id 59F36C0009 for ; Mon, 9 Jun 2025 11:04:48 +0000 (UTC) Authentication-Results: imf28.hostedemail.com; dkim=none; dmarc=pass (policy=none) header.from=arm.com; spf=pass (imf28.hostedemail.com: domain of ryan.roberts@arm.com designates 217.140.110.172 as permitted sender) smtp.mailfrom=ryan.roberts@arm.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1749467088; 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; bh=6snZ0NLx0J07p0ICJUHkzcgqpQ9z9TYeDAmsPWxq3K8=; b=4Un7I6xcdH6MduEBlNpHqsqm9FDBqh4MWoo6qEBsXNkw9XYTiw/B2wsIGRcElVpHpyKkbS GW+pMsfcG6tAQ7x/45HlxbOYoh5cwprWjyh4Fq3JaqbSSZQk9A9gWudlhtOlFuMpayBkN1 +1hREETDScOgPuQEjExIOGeaWWfuTPI= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1749467088; a=rsa-sha256; cv=none; b=ZomrRRAEZI85bn6d9kauN1y1zoNV80FqvlJTLqasbF951zJp0ddMvIltqEuijwOOupRggj yCBqriGHF9Ca9md3i55WIkwQ8f9K8dWUO1nJIejFqHqaBndolkjqFstlDUj2AVKT0UzMaQ PHS2S29TCkWGjQneB7Zr3PBfxrTanIY= ARC-Authentication-Results: i=1; imf28.hostedemail.com; dkim=none; dmarc=pass (policy=none) header.from=arm.com; spf=pass (imf28.hostedemail.com: domain of ryan.roberts@arm.com designates 217.140.110.172 as permitted sender) smtp.mailfrom=ryan.roberts@arm.com Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 8D545113E; Mon, 9 Jun 2025 04:04:28 -0700 (PDT) Received: from [10.1.39.162] (XHFQ2J9959.cambridge.arm.com [10.1.39.162]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 264AE3F59E; Mon, 9 Jun 2025 04:04:45 -0700 (PDT) Message-ID: Date: Mon, 9 Jun 2025 12:04:43 +0100 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH v2] mm: madvise: use walk_page_range_vma() instead of walk_page_range() Content-Language: en-GB To: Barry Song <21cnbao@gmail.com>, lorenzo.stoakes@oracle.com, akpm@linux-foundation.org Cc: Liam.Howlett@oracle.com, anshuman.khandual@arm.com, david@redhat.com, dev.jain@arm.com, jannh@google.com, linux-kernel@vger.kernel.org, linux-mm@kvack.org, lokeshgidra@google.com, osalvador@suse.de, surenb@google.com, v-songbaohua@oppo.com, vbabka@suse.cz, zhengtangquan@oppo.com References: <20250609105513.10901-1-21cnbao@gmail.com> From: Ryan Roberts In-Reply-To: <20250609105513.10901-1-21cnbao@gmail.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Server: rspam10 X-Rspamd-Queue-Id: 59F36C0009 X-Stat-Signature: zg9yhkeranqzu7hcipp8ihxhf7d1yqoa X-Rspam-User: X-HE-Tag: 1749467088-176256 X-HE-Meta: U2FsdGVkX19dQ1JxkqHGjg1SxT9seN6MIZeQCEDFWrvO8SP5A4hEc1mWlALtvozIYaXNCbxLkKc51x/Qh8hlRSRJGNQJ67+vqIYv/MYOrXi/tS0QEcqsicrgzofe+1klvGHu98NyxzCkbs7yT9Q2U11vvLbeiB5E9QpmG26g9+IgM8NHiOW37AOlWPfB+WwGU3HRQ838ZdxsBGVIVeH0obsjkQfEOsUn0osn6CzSOOGwczoxLI2E+5G0uieEuiAWY9N2lh/vPEbGEbxyUPl2HNeLuB2kkOxvHZMvf+Q0WjC13WpstdAMYGB4ytCsAFIDZ6QqMQnwQ2RuxLKS226vtrQ0fqy2k2NUNO8SFhRI27b3VvvYwKzeVYWSbI3TFgXQNCXpr6DKSwAEXRigHuXbw6lVfE6aUMvSbJkYe6yiK/avb6TdhWwawLqu0xjgdp3JJ3UMsT9T3fsOwsrMQutNmZ4UkZUGmVscsvFTwczvLX5dXb4mVq3sQa0tHo4N9IfdsLWyDeJL9r2TbBjuGkQF+1IZBywljW/ZNTxAe5XKgPI8veAShs2J/DISOpO5cbS2585myS839HwzNvCJ8g2juBufaMyy1aq8SApvcFd4iWqpb4KkmWgSHGDdbEaCIhuRZGrzb57HZj6bugNGJGjBPyMQUv9voOJIMl14mCM3z7/dkznI/jB2249KejhltjhcpLjGkDWainlMK9zPVbmVDQZN8e5L4URTu9jrVbq1qILWd5cf9mxSUJZ8EBNq9/w/q+r+QsCDrxTcX6bheNIHR6qJp3jNIaSXys1J2kmJQA290FG0R7TFGUa+7hlEdIkxjEhkmPg12my/VSiWmkJtIqmGca4vSQY8d8ZFxIc5v9+aQij5gF+3U+xEX3NuxbX2Z3nai6GxKyWmxCrmnQK4IUGDv6K5orPAW22VpIZuFu4mn1W73sijjD6WvPSeyTPyH9GZ56H1CaZr1QOwAy4 4C0CzHlN tPQ1pvFL+snM+7EDt+6Rd2EXgUtGj2gLjlhj8UCjR5e8MAoxFh5t+VkwQIdHpcYqiUiXGD5INMfMD0tRqBl+uS4XNQWE+0zKiLqyniUX0pcasAb1OI07hT1gS7KVEOxPCiKC+VL8El5xBi0tKK/HhB1Ypanamrfen8LH4PUf4OZw9lT8LKYMBvxjvqqf/FXXN4tUesJfrrPsoSTonx+xcC6NOPm4bkpLALUTqwPbU6OKIeaO1B5W9/gQG298bhsmGpNbmJikY6s4pi7/FVvsMxyUPqwAAkQ/tVixPDrUM33kbfVDBznYPjtmWWfjranRmK1w9 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 09/06/2025 11:55, Barry Song wrote: >> Yeah dear god I missed this oops! >> >> Yeah Barry - could you revert this change for the guard region bits please? So >> this is intentional as we do not want anything non-mm to have access to >> install_pte. > > All my fault! I wrote a multi-process/thread test to issue lots of madvise   > calls, but it looks like I missed INSTALL_GUARD. > > Thanks, Ryan & Lorenzo! Does Andrew prefer to pick up the fix below, or   > would it be better to send a new version? He’s handled fixes like this in   > the past—happy to resend if needed. > > From: Barry Song > Date: Mon, 9 Jun 2025 22:42:13 +1200 > Subject: [PATCH] mm: madvise: revert the walk_page_range_vma change for > MADV_GUARD_INSTALL > > Fix the broken MADV_GUARD_INSTALL reported by Ryan. > # guard-regions.c:719:split_merge:Expected madvise(ptr, 10 * page_size, > MADV_GUARD_INSTALL) (-1) == 0 (0) > > Reported-by: Ryan Roberts > Closes: https://lore.kernel.org/linux-mm/671f8164-a90b-48d7-9446-359eb9493500@arm.com/ > Signed-off-by: Barry Song FWIW, the rest of the original patch looks good to me, ands this fix looks correct, so: Reviewed-by: Ryan Roberts > --- > mm/madvise.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/mm/madvise.c b/mm/madvise.c > index 8382614b71d1..381eedde8f6d 100644 > --- a/mm/madvise.c > +++ b/mm/madvise.c > @@ -1141,7 +1141,7 @@ static long madvise_guard_install(struct vm_area_struct *vma, > unsigned long nr_pages = 0; > > /* Returns < 0 on error, == 0 if success, > 0 if zap needed. */ > - err = walk_page_range_vma(vma, start, end, > + err = walk_page_range_mm(vma->vm_mm, start, end, > &guard_install_walk_ops, &nr_pages); > if (err < 0) > return err;