On 11.12.24 14:42, Kirill A. Shutemov wrote:
On Wed, Dec 11, 2024 at 12:56:11PM +0100, David Hildenbrand wrote:(C) Encode it in the PTE. pte_write() -> PAE !pte_write() && pte_dirty() -> PAE !pte_write && !pte_dirty() -> !PAEYou are late to the party. On x86, !pte_write() && pte_dirty() is shadow stack.
Hah, no, it works! :)On x86 we use this fancy savedirty bit to handle that internally, such that pte_write/pte_dirty keep working as expected on shadow stacks.
-- Cheers, David / dhildenb