From: "David Hildenbrand (Arm)" <david@kernel.org>
To: Andy Lutomirski <luto@amacapital.net>
Cc: Qi Zheng <qi.zheng@linux.dev>,
luto@kernel.org, linux-mm@kvack.org,
Liam Howlett <liam.howlett@oracle.com>,
Lorenzo Stoakes <lorenzo.stoakes@oracle.com>,
Michal Hocko <mhocko@suse.com>, Mike Rapoport <rppt@kernel.org>,
Suren Baghdasaryan <surenb@google.com>,
Vlastimil Babka <vbabka@suse.cz>,
Andrew Morton <akpm@linux-foundation.org>,
stable@vger.kernel.org
Subject: Re: [PATCH] Fix incorrect flush address in direct page table reclaim
Date: Tue, 4 Aug 2026 19:05:02 +0200 [thread overview]
Message-ID: <556894de-2e06-424b-9414-36fb0ecd9657@kernel.org> (raw)
In-Reply-To: <0B39A63B-3697-4FEC-B6FF-2F4D5901F7E9@amacapital.net>
On 8/4/26 15:43, Andy Lutomirski wrote:
>
>> On Aug 4, 2026, at 2:34 AM, David Hildenbrand (Arm) <david@kernel.org> wrote:
>>
>> On 8/4/26 11:25, Qi Zheng wrote:
>>>
>>>
>>>
>>> We backported the PT_RECLAIM to our internal tree a while ago (excluding
>>> the rework patch being fixed here), and it has been running stably ever
>>> since.
>>
>> I'm wondering whether we should have a selftest that triggers this exact scenario:
>>
>> (a) Populate page table(s)
>> (b) MADV_DONTNEED to reclaim the page table(s)
>> (c) Allocate plenty of pages for another purpose (draining PCP where the page
>> table likely ended up) and fill them with some data that looks like present page
>> table entries.
>> (d) Re-access the reclaimed VA space, expecting re-population of anonymous
>> pages.
>>
>
> If you want a better chance of hitting this bug, you could try:
>
> - First DONTNEED the range in multiple calls so none of them reclaim the table.
Not required. If MADV_DONTNEED spans the full page table we always reclaim if it
is empty after MADV_DONTNEED (there are some oddities around uffd-wp handling,
which wouldn't apply here).
>
> - Then PREFETCH the range (or use your favorite speculative read gadget or even do a real read and ignore the signal). Maybe also do this from multiple CPUs.
>
Not sure if that's required, but if that's required to trigger it that certainly
makes it less elegant.
> - Trigger reclaim
Also not sure if that one would really help.
>
> Then do c and d.
>
> The result might be so specialized that it would be of dubious value.
>
Right, if we cannot easily trigger it then it's way to special.
--
Cheers,
David
next prev parent reply other threads:[~2026-08-04 17:05 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-08-04 0:37 [PATCH] Fix incorrect flush address in direct page table reclaim luto
2026-08-04 1:30 ` Andrew Morton
2026-08-04 2:18 ` Andy Lutomirski
[not found] ` <313133db-3b94-4a63-8bcd-21952ff77e41@kernel.org>
[not found] ` <8cf8eaca-fc04-4a68-bbc8-50ecdbf96382@linux.dev>
[not found] ` <3d3aa670-76bc-4df3-9c36-609c14354e9e@kernel.org>
2026-08-04 13:43 ` Andy Lutomirski
2026-08-04 17:05 ` David Hildenbrand (Arm) [this message]
2026-08-04 18:34 ` David Hildenbrand (Arm)
[not found] ` <0adaae9e-7086-4213-811e-ba6e4181e145@kernel.org>
2026-08-04 15:54 ` Linus Torvalds
2026-08-05 6:04 ` David Hildenbrand (Arm)
2026-08-05 15:02 ` Linus Torvalds
2026-08-05 15:06 ` David Hildenbrand (Arm)
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=556894de-2e06-424b-9414-36fb0ecd9657@kernel.org \
--to=david@kernel.org \
--cc=akpm@linux-foundation.org \
--cc=liam.howlett@oracle.com \
--cc=linux-mm@kvack.org \
--cc=lorenzo.stoakes@oracle.com \
--cc=luto@amacapital.net \
--cc=luto@kernel.org \
--cc=mhocko@suse.com \
--cc=qi.zheng@linux.dev \
--cc=rppt@kernel.org \
--cc=stable@vger.kernel.org \
--cc=surenb@google.com \
--cc=vbabka@suse.cz \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox