On Tue, Jan 26, 2021 at 03:28:22PM -0800, Hugh Dickins wrote: > On Tue, 26 Jan 2021, Will Deacon wrote: > > On Wed, Jan 20, 2021 at 05:36:04PM +0000, Will Deacon wrote: > > > Hi all, > > > > > > This is version four of the patches I previously posted here: > > > > > > v1: https://lore.kernel.org/r/20201209163950.8494-1-will@xxxxxxxxxx > > > v2: https://lore.kernel.org/r/20210108171517.5290-1-will@xxxxxxxxxx > > > v3: https://lore.kernel.org/r/20210114175934.13070-1-will@xxxxxxxxxx > > > > > > The patches allow architectures to opt-in at runtime for faultaround > > > mappings to be created as 'old' instead of 'young'. Although there have > > > been previous attempts at this, they failed either because the decision > > > was deferred to userspace [1] or because it was done unconditionally and > > > shown to regress benchmarks for particular architectures [2]. > > > > > > The big change since v3 is that the immutable fields of 'struct vm_fault' > > > now live in a 'const' anonymous struct. Although Clang will silently > > > accept modifications to these fields [3], GCC emits an error. The > > > resulting diffstat is _considerably_ more manageable with this approach. > > > > The only changes I have pending against this series are cosmetic (commit > > logs). Can I go ahead and queue this in the arm64 tree so that it can sit > > in linux-next for a bit? (positive or negative feedback appreciated!). > > That would be fine by me: I ran v3 on rc3, then the nicer smaller v4 > on rc4, and saw no problems when running either of them (x86_64 only). Thanks, Hugh. I'll stick these into -next later today and we'll see how we get on. Will