]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
Eliminate the arena parameter to kmem_free(). Implicitly this corrects an
authorAlan Cox <alc@FreeBSD.org>
Sat, 25 Aug 2018 19:38:08 +0000 (19:38 +0000)
committerAlan Cox <alc@FreeBSD.org>
Sat, 25 Aug 2018 19:38:08 +0000 (19:38 +0000)
commit49bfa624ac861d7fafc87f06dc2cdf4972aed854
tree67c3d87a41a1d37c805695647c6c1502e3a81c80
parentee6281c3d385306e6b6a7cc272f122154d409cba
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
35 files changed:
sys/amd64/amd64/sys_machdep.c
sys/amd64/amd64/vm_machdep.c
sys/arm/allwinner/a10_fb.c
sys/arm/arm/busdma_machdep-v4.c
sys/arm/arm/busdma_machdep-v6.c
sys/arm/arm/pmap-v6.c
sys/arm/freescale/imx/imx6_sdma.c
sys/arm/nvidia/tegra_xhci.c
sys/arm64/arm64/busdma_bounce.c
sys/arm64/arm64/mp_machdep.c
sys/compat/linuxkpi/common/include/linux/dma-mapping.h
sys/compat/linuxkpi/common/src/linux_page.c
sys/dev/agp/agp.c
sys/dev/agp/agp_amd.c
sys/dev/agp/agp_ati.c
sys/dev/agp/agp_i810.c
sys/dev/amd_ecc_inject/ecc_inject.c
sys/dev/drm/drm_scatter.c
sys/dev/drm2/drm_scatter.c
sys/dev/hyperv/vmbus/hyperv.c
sys/dev/liquidio/lio_network.h
sys/kern/kern_malloc.c
sys/kern/subr_busdma_bufalloc.c
sys/mips/ingenic/jz4780_lcd.c
sys/mips/mips/busdma_machdep.c
sys/powerpc/powerpc/busdma_machdep.c
sys/vm/uma.h
sys/vm/uma_core.c
sys/vm/vm_extern.h
sys/vm/vm_kern.c
sys/vm/vm_page.h
sys/x86/iommu/busdma_dmar.c
sys/x86/iommu/intel_intrmap.c
sys/x86/iommu/intel_qi.c
sys/x86/x86/busdma_bounce.c