linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
From: Ryan Roberts <ryan.roberts@arm.com>
To: Anshuman Khandual <anshuman.khandual@arm.com>,
	Will Deacon <will@kernel.org>
Cc: Catalin Marinas <catalin.marinas@arm.com>,
	Joey Gouly <joey.gouly@arm.com>, Ard Biesheuvel <ardb@kernel.org>,
	Mark Rutland <mark.rutland@arm.com>,
	David Hildenbrand <david@redhat.com>,
	Peter Xu <peterx@redhat.com>, Mike Rapoport <rppt@linux.ibm.com>,
	Shivansh Vij <shivanshvij@outlook.com>,
	linux-arm-kernel@lists.infradead.org,
	linux-kernel@vger.kernel.org
Subject: Re: [PATCH v4 0/4] arm64/mm: Enable userfaultfd write-protect
Date: Wed, 8 May 2024 11:14:24 +0100	[thread overview]
Message-ID: <91007ef8-ed54-4594-a574-fb20ba91cba9@arm.com> (raw)
In-Reply-To: <674dac6b-4fd5-4460-81fd-6b215b21434e@arm.com>

On 08/05/2024 11:00, Anshuman Khandual wrote:
> 
> 
> On 5/7/24 16:37, Will Deacon wrote:
>> Hi Ryan,
>>
>> On Fri, May 03, 2024 at 03:45:58PM +0100, Ryan Roberts wrote:
>>> This series adds uffd write-protect support for arm64.
>>>
>>> Previous attempts to add uffd-wp (and soft-dirty) have failed because of a
>>> perceived lack of available PTE SW bits. However it actually turns out that
>>> there are 2 available but they are hidden. PTE_PROT_NONE was previously
>>> occupying a SW bit, but can be moved, freeing up the SW bit. Bit 63 is marked as
>>> "IGNORED" in the Arm ARM, but it does not currently indicate "reserved for SW
>>> use" like it does for the other SW bits. I've confirmed with the spec owner that
>>> this is an oversight; the bit is intended to be reserved for SW use and the spec
>>> will clarify this in a future update.
>>>
>>> So now we have two spare bits; patch 4 enables uffd-wp on arm64, using the SW
>>> bit freed up by moving PTE_PROT_NONE. This leaves bit 63 spare for future use
>>> (e.g. soft-dirty - see RFC at [4] - or some other usage).
>>>
>>> ---
>>>
>>> This applies on top of v6.9-rc5.
>>
>> I chucked this into the CI on Friday and it looks to have survived the
>> long weekend, so I've gone ahead and merged it into for-next/core. Short
>> of any last minute failures (touch wood), this should land in 6.10.
> 
> It would be great to have some memory migration tests (including THP and HugeTLB)
> thrown at this series, which should test the mapped, migration entry transitions
> etc. But not sure if there are any such tests off the shelf and readily available
> in the CI system.

The "private_anon_thp" migration test in mm selftests is doing that for THP. and
invoking pmd_mkinvalid() as I recall; that's what originally led to me finding
the pmd_mkinvalid()-on-a-swap-pmd bug. There is nothing in that suite for
HugeTLB though - happy to run if someone can recommend anything.


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

      reply	other threads:[~2024-05-08 10:14 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-05-03 14:45 [PATCH v4 0/4] arm64/mm: Enable userfaultfd write-protect Ryan Roberts
2024-05-03 14:45 ` [PATCH v4 1/4] arm64/mm: generalize PMD_PRESENT_INVALID for all levels Ryan Roberts
2024-05-07 11:38   ` David Hildenbrand
2024-05-07 12:34     ` Ryan Roberts
2024-05-07 14:08       ` Catalin Marinas
2024-05-07 15:06         ` Ryan Roberts
2024-05-08  9:43   ` Anshuman Khandual
2024-05-03 14:46 ` [PATCH v4 2/4] arm64/mm: Remove PTE_PROT_NONE bit Ryan Roberts
2024-05-07 11:40   ` David Hildenbrand
2024-05-08  9:50   ` Anshuman Khandual
2024-05-03 14:46 ` [PATCH v4 3/4] arm64/mm: Move PTE_PRESENT_INVALID to overlay PTE_NG Ryan Roberts
2024-05-07 11:43   ` David Hildenbrand
2024-05-03 14:46 ` [PATCH v4 4/4] arm64/mm: Add uffd write-protect support Ryan Roberts
2024-05-07 11:45   ` David Hildenbrand
2024-05-07 11:07 ` [PATCH v4 0/4] arm64/mm: Enable userfaultfd write-protect Will Deacon
2024-05-07 11:17   ` Ryan Roberts
2024-05-07 11:45     ` Catalin Marinas
2024-05-08 10:00   ` Anshuman Khandual
2024-05-08 10:14     ` Ryan Roberts [this message]

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=91007ef8-ed54-4594-a574-fb20ba91cba9@arm.com \
    --to=ryan.roberts@arm.com \
    --cc=anshuman.khandual@arm.com \
    --cc=ardb@kernel.org \
    --cc=catalin.marinas@arm.com \
    --cc=david@redhat.com \
    --cc=joey.gouly@arm.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mark.rutland@arm.com \
    --cc=peterx@redhat.com \
    --cc=rppt@linux.ibm.com \
    --cc=shivanshvij@outlook.com \
    --cc=will@kernel.org \
    /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;
as well as URLs for NNTP newsgroup(s).