HomeFreeBSD

Eliminate the arena parameter to kmem_free(). Implicitly this corrects an

Description

Eliminate the arena parameter to kmem_free(). Implicitly this corrects an
error in the function hypercall_memfree(), where the wrong arena was being
passed to kmem_free().

Introduce a per-page flag, VPO_KMEM_EXEC, to mark physical pages that are
mapped in kmem with execute permissions. Use this flag to determine which
arena the kmem virtual addresses are returned to.

Eliminate UMA_SLAB_KRWX. The introduction of VPO_KMEM_EXEC makes it
redundant.

Update the nearby comment for UMA_SLAB_KERNEL.

Reviewed by: kib, markj
Discussed with: jeff
Approved by: re (marius)
Differential Revision: https://reviews.freebsd.org/D16845

Details

Provenance
alcAuthored on
Reviewer
kib
Differential Revision
D16845: Replace kmem_free()'s arena parameter
Parents
rS338317: Fix wrong offset calculation for R_ARM_TLS_TPOFF32 relocations.
Branches
Unknown
Tags
Unknown