RE: [PATCH 20/35] mm: Update can_follow_write_pte() for shadow stack

From: David Laight
Date: Thu Feb 10 2022 - 17:45:10 EST


From: Dave Hansen
> Sent: 09 February 2022 22:52
>
> On 1/30/22 13:18, Rick Edgecombe wrote:
> > Like a writable data page, a shadow stack page is writable, and becomes
> > read-only during copy-on-write, but it is always dirty.
>
> One other thing...
>
> The language in these changelogs is a bit sloppy. For instance, what
> does "always dirty" mean here? pte_dirty()? Or strictly _PAGE_DIRTY?
>
> In other words, logically dirty, or literally "has *the* dirty bit set"?

Doesn't COW have to set it readonly - so that the access faults.
And then set the fault code set it readonly+dirty (without write)
to allow the shadow stack accesses to not-fault.

Or am I mis-guessing what the docs actually say?

David

-
Registered Address Lakeside, Bramley Road, Mount Farm, Milton Keynes, MK1 1PT, UK
Registration No: 1397386 (Wales)