[PATCH v5 32/38] mm/madvise: use predicates for madvise(..., MADV_DOFORK)

David Hildenbrand (Arm) david at kernel.org
Mon Oct 12 11:48:21 PDT 2026


On 10/9/26 20:04, Lorenzo Stoakes (ARM) wrote:
> Make it clear what we're blocking in MADV_DOFORK. Previously we simply
> disallowed VM_SPECIAL i.e. mappings not managed by core mm, fixed mappings
> and
> VMA_IO_BIT.
> 
> Now the invariant is established that mm-managed mappings may not set
> VMA_IO_BIT, the VMA_IO_BIT check is redundant.
> 
> The rest is equivalent to testing for a fixed or non-mm-managed mapping,
> i.e. exactly the same check as whether the VMA is permitted to be merged.
> 
> This was established by commit 0b2758f48f22 ("Require (reasonably) normal
> mappings for MADV_DOFORK") containing my hands-down favourite call out of
> all time.
> 
> Express the same thing differently - if we wouldn't be allowed to merge it,
> then we aren't allowed to manipulate CoW behaviour on fork.
> 
> No functional change intended.
> 
> Acked-by: Zi Yan <ziy at nvidia.com>
> Signed-off-by: Lorenzo Stoakes (ARM) <ljs at kernel.org>

Acked-by: David Hildenbrand (Arm) <david at kernel.org>

-- 
Cheers,

David



More information about the kvm-riscv mailing list