HomeFreeBSD

MFC r350579,r350741,r352584

Description

MFC r350579,r350741,r352584

Enable superpage promotion within the kernel pmap.

Ordinarily, during a superpage promotion or demotion within a pmap, the
pmap's lock ensures that other operations on the pmap don't observe the
old mapping being broken before the new mapping is established.  However,
pmap_kextract() doesn't acquire the kernel pmap's lock, so it may observe
the broken mapping.  And, if it does, it returns an incorrect result.

This revision implements a lock-free solution to this problem in
pmap_update_entry() and pmap_kextract() because pmap_kextract() can't
acquire the kernel pmap's lock.

In case a translation fault on the kernel address space occurs from
within a critical section, we must perform a lock-free check on the
faulting address.

Details

Provenance
alcAuthored on
Parents
rS355135: Plug two mbuf leaks during INIT-ACK handling.
Branches
Unknown
Tags
Unknown