svn commit: r338107 - in head/sys: arm/allwinner arm/arm arm/freescale/imx arm/nvidia arm/nvidia/drm2 arm/samsung/exynos arm64/arm64 compat/linuxkpi/common/include/linux compat/linuxkpi/common/src ...
Alan Cox
alc at FreeBSD.org
Mon Aug 20 15:57:33 UTC 2018
Author: alc
Date: Mon Aug 20 15:57:27 2018
New Revision: 338107
URL: https://svnweb.freebsd.org/changeset/base/338107
Log:
Eliminate kmem_alloc_contig()'s unused arena parameter.
Reviewed by: hselasky, kib, markj
Discussed with: jeff
Differential Revision: https://reviews.freebsd.org/D16799
Modified:
head/sys/arm/allwinner/a10_fb.c
head/sys/arm/arm/busdma_machdep-v4.c
head/sys/arm/arm/busdma_machdep-v6.c
head/sys/arm/arm/pmap-v6.c
head/sys/arm/freescale/imx/imx6_sdma.c
head/sys/arm/nvidia/drm2/tegra_dc.c
head/sys/arm/nvidia/tegra_pcie.c
head/sys/arm/nvidia/tegra_xhci.c
head/sys/arm/samsung/exynos/exynos5_fimd.c
head/sys/arm64/arm64/busdma_bounce.c
head/sys/compat/linuxkpi/common/include/linux/dma-mapping.h
head/sys/compat/linuxkpi/common/src/linux_page.c
head/sys/compat/ndis/subr_ntoskrnl.c
head/sys/dev/agp/agp.c
head/sys/dev/agp/agp_i810.c
head/sys/dev/liquidio/lio_network.h
head/sys/dev/xdma/controller/pl330.c
head/sys/kern/kern_malloc.c
head/sys/mips/ingenic/jz4780_lcd.c
head/sys/mips/mips/busdma_machdep.c
head/sys/powerpc/powerpc/busdma_machdep.c
head/sys/vm/vm_extern.h
head/sys/vm/vm_kern.c
head/sys/x86/iommu/intel_intrmap.c
head/sys/x86/iommu/intel_qi.c
Modified: head/sys/arm/allwinner/a10_fb.c
==============================================================================
--- head/sys/arm/allwinner/a10_fb.c Mon Aug 20 15:43:08 2018 (r338106)
+++ head/sys/arm/allwinner/a10_fb.c Mon Aug 20 15:57:27 2018 (r338107)
@@ -178,8 +178,8 @@ static struct resource_spec a10fb_spec[] = {
static int
a10fb_allocfb(struct a10fb_softc *sc)
{
- sc->vaddr = kmem_alloc_contig(kernel_arena, sc->fbsize,
- M_NOWAIT | M_ZERO, 0, ~0, FB_ALIGN, 0, VM_MEMATTR_WRITE_COMBINING);
+ sc->vaddr = kmem_alloc_contig(sc->fbsize, M_NOWAIT | M_ZERO, 0, ~0,
+ FB_ALIGN, 0, VM_MEMATTR_WRITE_COMBINING);
if (sc->vaddr == 0) {
device_printf(sc->dev, "failed to allocate FB memory\n");
return (ENOMEM);
Modified: head/sys/arm/arm/busdma_machdep-v4.c
==============================================================================
--- head/sys/arm/arm/busdma_machdep-v4.c Mon Aug 20 15:43:08 2018 (r338106)
+++ head/sys/arm/arm/busdma_machdep-v4.c Mon Aug 20 15:57:27 2018 (r338107)
@@ -750,9 +750,8 @@ bus_dmamem_alloc(bus_dma_tag_t dmat, void **vaddr, int
*vaddr = (void *)kmem_alloc_attr(dmat->maxsize, mflags, 0,
dmat->lowaddr, memattr);
} else {
- *vaddr = (void *)kmem_alloc_contig(kernel_arena, dmat->maxsize,
- mflags, 0, dmat->lowaddr, dmat->alignment, dmat->boundary,
- memattr);
+ *vaddr = (void *)kmem_alloc_contig(dmat->maxsize, mflags, 0,
+ dmat->lowaddr, dmat->alignment, dmat->boundary, memattr);
}
if (*vaddr == NULL) {
CTR4(KTR_BUSDMA, "%s: tag %p tag flags 0x%x error %d",
Modified: head/sys/arm/arm/busdma_machdep-v6.c
==============================================================================
--- head/sys/arm/arm/busdma_machdep-v6.c Mon Aug 20 15:43:08 2018 (r338106)
+++ head/sys/arm/arm/busdma_machdep-v6.c Mon Aug 20 15:57:27 2018 (r338107)
@@ -815,9 +815,8 @@ bus_dmamem_alloc(bus_dma_tag_t dmat, void **vaddr, int
*vaddr = (void *)kmem_alloc_attr(dmat->maxsize, mflags, 0,
dmat->lowaddr, memattr);
} else {
- *vaddr = (void *)kmem_alloc_contig(kernel_arena, dmat->maxsize,
- mflags, 0, dmat->lowaddr, dmat->alignment, dmat->boundary,
- memattr);
+ *vaddr = (void *)kmem_alloc_contig(dmat->maxsize, mflags, 0,
+ dmat->lowaddr, dmat->alignment, dmat->boundary, memattr);
}
if (*vaddr == NULL) {
CTR4(KTR_BUSDMA, "%s: tag %p tag flags 0x%x error %d",
Modified: head/sys/arm/arm/pmap-v6.c
==============================================================================
--- head/sys/arm/arm/pmap-v6.c Mon Aug 20 15:43:08 2018 (r338106)
+++ head/sys/arm/arm/pmap-v6.c Mon Aug 20 15:57:27 2018 (r338107)
@@ -2219,9 +2219,8 @@ pmap_pinit(pmap_t pmap)
*/
if (pmap->pm_pt1 == NULL) {
- pmap->pm_pt1 = (pt1_entry_t *)kmem_alloc_contig(kernel_arena,
- NB_IN_PT1, M_NOWAIT | M_ZERO, 0, -1UL, NB_IN_PT1, 0,
- pt_memattr);
+ pmap->pm_pt1 = (pt1_entry_t *)kmem_alloc_contig(NB_IN_PT1,
+ M_NOWAIT | M_ZERO, 0, -1UL, NB_IN_PT1, 0, pt_memattr);
if (pmap->pm_pt1 == NULL)
return (0);
}
Modified: head/sys/arm/freescale/imx/imx6_sdma.c
==============================================================================
--- head/sys/arm/freescale/imx/imx6_sdma.c Mon Aug 20 15:43:08 2018 (r338106)
+++ head/sys/arm/freescale/imx/imx6_sdma.c Mon Aug 20 15:57:27 2018 (r338107)
@@ -179,9 +179,8 @@ sdma_alloc(void)
chn = i;
/* Allocate area for buffer descriptors */
- channel->bd = (void *)kmem_alloc_contig(kernel_arena,
- PAGE_SIZE, M_ZERO, 0, ~0, PAGE_SIZE, 0,
- VM_MEMATTR_UNCACHEABLE);
+ channel->bd = (void *)kmem_alloc_contig(PAGE_SIZE, M_ZERO, 0, ~0,
+ PAGE_SIZE, 0, VM_MEMATTR_UNCACHEABLE);
return (chn);
}
@@ -392,8 +391,8 @@ boot_firmware(struct sdma_softc *sc)
sz = SDMA_N_CHANNELS * sizeof(struct sdma_channel_control) + \
sizeof(struct sdma_context_data);
- sc->ccb = (void *)kmem_alloc_contig(kernel_arena,
- sz, M_ZERO, 0, ~0, PAGE_SIZE, 0, VM_MEMATTR_UNCACHEABLE);
+ sc->ccb = (void *)kmem_alloc_contig(sz, M_ZERO, 0, ~0, PAGE_SIZE, 0,
+ VM_MEMATTR_UNCACHEABLE);
sc->ccb_phys = vtophys(sc->ccb);
sc->context = (void *)((char *)sc->ccb + \
@@ -411,9 +410,8 @@ boot_firmware(struct sdma_softc *sc)
/* Channel 0 is used for booting firmware */
chn = 0;
- sc->bd0 = (void *)kmem_alloc_contig(kernel_arena,
- PAGE_SIZE, M_ZERO, 0, ~0, PAGE_SIZE, 0,
- VM_MEMATTR_UNCACHEABLE);
+ sc->bd0 = (void *)kmem_alloc_contig(PAGE_SIZE, M_ZERO, 0, ~0, PAGE_SIZE,
+ 0, VM_MEMATTR_UNCACHEABLE);
bd0 = sc->bd0;
sc->ccb[chn].base_bd_ptr = vtophys(bd0);
sc->ccb[chn].current_bd_ptr = vtophys(bd0);
Modified: head/sys/arm/nvidia/drm2/tegra_dc.c
==============================================================================
--- head/sys/arm/nvidia/drm2/tegra_dc.c Mon Aug 20 15:43:08 2018 (r338106)
+++ head/sys/arm/nvidia/drm2/tegra_dc.c Mon Aug 20 15:57:27 2018 (r338107)
@@ -1234,9 +1234,9 @@ dc_init_client(device_t dev, device_t host1x, struct t
}
/* allocate memory for cursor cache */
- sc->tegra_crtc.cursor_vbase = kmem_alloc_contig(kernel_arena,
- 256 * 256 * 4, M_WAITOK | M_ZERO,
- 0, -1UL, PAGE_SIZE, 0, VM_MEMATTR_WRITE_COMBINING);
+ sc->tegra_crtc.cursor_vbase = kmem_alloc_contig(256 * 256 * 4,
+ M_WAITOK | M_ZERO, 0, -1UL, PAGE_SIZE, 0,
+ VM_MEMATTR_WRITE_COMBINING);
sc->tegra_crtc.cursor_pbase = vtophys(sc->tegra_crtc.cursor_vbase);
return (0);
}
Modified: head/sys/arm/nvidia/tegra_pcie.c
==============================================================================
--- head/sys/arm/nvidia/tegra_pcie.c Mon Aug 20 15:43:08 2018 (r338106)
+++ head/sys/arm/nvidia/tegra_pcie.c Mon Aug 20 15:57:27 2018 (r338107)
@@ -1395,8 +1395,8 @@ tegra_pcib_attach_msi(device_t dev)
sc = device_get_softc(dev);
- sc->msi_page = kmem_alloc_contig(kernel_arena, PAGE_SIZE, M_WAITOK,
- 0, BUS_SPACE_MAXADDR, PAGE_SIZE, 0, VM_MEMATTR_DEFAULT);
+ sc->msi_page = kmem_alloc_contig(PAGE_SIZE, M_WAITOK, 0,
+ BUS_SPACE_MAXADDR, PAGE_SIZE, 0, VM_MEMATTR_DEFAULT);
/* MSI BAR */
tegra_pcib_set_bar(sc, 9, vtophys(sc->msi_page), vtophys(sc->msi_page),
Modified: head/sys/arm/nvidia/tegra_xhci.c
==============================================================================
--- head/sys/arm/nvidia/tegra_xhci.c Mon Aug 20 15:43:08 2018 (r338106)
+++ head/sys/arm/nvidia/tegra_xhci.c Mon Aug 20 15:57:27 2018 (r338107)
@@ -808,8 +808,8 @@ load_fw(struct tegra_xhci_softc *sc)
fw_hdr = (const struct tegra_xusb_fw_hdr *)fw->data;
fw_size = fw_hdr->fwimg_len;
- fw_vaddr = kmem_alloc_contig(kernel_arena, fw_size,
- M_WAITOK, 0, -1UL, PAGE_SIZE, 0, VM_MEMATTR_UNCACHEABLE);
+ fw_vaddr = kmem_alloc_contig(fw_size, M_WAITOK, 0, -1UL, PAGE_SIZE, 0,
+ VM_MEMATTR_UNCACHEABLE);
fw_paddr = vtophys(fw_vaddr);
fw_hdr = (const struct tegra_xusb_fw_hdr *)fw_vaddr;
memcpy((void *)fw_vaddr, fw->data, fw_size);
Modified: head/sys/arm/samsung/exynos/exynos5_fimd.c
==============================================================================
--- head/sys/arm/samsung/exynos/exynos5_fimd.c Mon Aug 20 15:43:08 2018 (r338106)
+++ head/sys/arm/samsung/exynos/exynos5_fimd.c Mon Aug 20 15:57:27 2018 (r338107)
@@ -356,8 +356,8 @@ fimd_attach(device_t dev)
sc->sc_info.fb_stride = sc->sc_info.fb_width * 2;
sc->sc_info.fb_bpp = sc->sc_info.fb_depth = 16;
sc->sc_info.fb_size = sc->sc_info.fb_height * sc->sc_info.fb_stride;
- sc->sc_info.fb_vbase = (intptr_t)kmem_alloc_contig(kernel_arena,
- sc->sc_info.fb_size, M_ZERO, 0, ~0, PAGE_SIZE, 0, VM_MEMATTR_UNCACHEABLE);
+ sc->sc_info.fb_vbase = (intptr_t)kmem_alloc_contig(sc->sc_info.fb_size,
+ M_ZERO, 0, ~0, PAGE_SIZE, 0, VM_MEMATTR_UNCACHEABLE);
sc->sc_info.fb_pbase = (intptr_t)vtophys(sc->sc_info.fb_vbase);
#if 0
Modified: head/sys/arm64/arm64/busdma_bounce.c
==============================================================================
--- head/sys/arm64/arm64/busdma_bounce.c Mon Aug 20 15:43:08 2018 (r338106)
+++ head/sys/arm64/arm64/busdma_bounce.c Mon Aug 20 15:57:27 2018 (r338107)
@@ -495,10 +495,9 @@ bounce_bus_dmamem_alloc(bus_dma_tag_t dmat, void** vad
0ul, dmat->common.lowaddr, attr);
dmat->bounce_flags |= BF_KMEM_ALLOC;
} else {
- *vaddr = (void *)kmem_alloc_contig(kernel_arena,
- dmat->common.maxsize, mflags, 0ul, dmat->common.lowaddr,
- dmat->common.alignment != 0 ? dmat->common.alignment : 1ul,
- dmat->common.boundary, attr);
+ *vaddr = (void *)kmem_alloc_contig(dmat->common.maxsize, mflags,
+ 0ul, dmat->common.lowaddr, dmat->common.alignment != 0 ?
+ dmat->common.alignment : 1ul, dmat->common.boundary, attr);
dmat->bounce_flags |= BF_KMEM_ALLOC;
}
if (*vaddr == NULL) {
Modified: head/sys/compat/linuxkpi/common/include/linux/dma-mapping.h
==============================================================================
--- head/sys/compat/linuxkpi/common/include/linux/dma-mapping.h Mon Aug 20 15:43:08 2018 (r338106)
+++ head/sys/compat/linuxkpi/common/include/linux/dma-mapping.h Mon Aug 20 15:57:27 2018 (r338107)
@@ -134,8 +134,8 @@ dma_alloc_coherent(struct device *dev, size_t size, dm
else
high = BUS_SPACE_MAXADDR;
align = PAGE_SIZE << get_order(size);
- mem = (void *)kmem_alloc_contig(kmem_arena, size, flag, 0, high, align,
- 0, VM_MEMATTR_DEFAULT);
+ mem = (void *)kmem_alloc_contig(size, flag, 0, high, align, 0,
+ VM_MEMATTR_DEFAULT);
if (mem)
*dma_handle = vtophys(mem);
else
Modified: head/sys/compat/linuxkpi/common/src/linux_page.c
==============================================================================
--- head/sys/compat/linuxkpi/common/src/linux_page.c Mon Aug 20 15:43:08 2018 (r338106)
+++ head/sys/compat/linuxkpi/common/src/linux_page.c Mon Aug 20 15:57:27 2018 (r338107)
@@ -167,9 +167,8 @@ linux_alloc_kmem(gfp_t flags, unsigned int order)
if ((flags & GFP_DMA32) == 0) {
addr = kmem_malloc(kmem_arena, size, flags & GFP_NATIVE_MASK);
} else {
- addr = kmem_alloc_contig(kmem_arena, size,
- flags & GFP_NATIVE_MASK, 0, BUS_SPACE_MAXADDR_32BIT,
- PAGE_SIZE, 0, VM_MEMATTR_DEFAULT);
+ addr = kmem_alloc_contig(size, flags & GFP_NATIVE_MASK, 0,
+ BUS_SPACE_MAXADDR_32BIT, PAGE_SIZE, 0, VM_MEMATTR_DEFAULT);
}
return (addr);
}
Modified: head/sys/compat/ndis/subr_ntoskrnl.c
==============================================================================
--- head/sys/compat/ndis/subr_ntoskrnl.c Mon Aug 20 15:43:08 2018 (r338106)
+++ head/sys/compat/ndis/subr_ntoskrnl.c Mon Aug 20 15:57:27 2018 (r338107)
@@ -2491,8 +2491,8 @@ MmAllocateContiguousMemorySpecifyCache(size, lowest, h
break;
}
- ret = (void *)kmem_alloc_contig(kernel_arena, size, M_ZERO | M_NOWAIT,
- lowest, highest, PAGE_SIZE, boundary, memattr);
+ ret = (void *)kmem_alloc_contig(size, M_ZERO | M_NOWAIT, lowest,
+ highest, PAGE_SIZE, boundary, memattr);
if (ret != NULL)
malloc_type_allocated(M_DEVBUF, round_page(size));
return (ret);
Modified: head/sys/dev/agp/agp.c
==============================================================================
--- head/sys/dev/agp/agp.c Mon Aug 20 15:43:08 2018 (r338106)
+++ head/sys/dev/agp/agp.c Mon Aug 20 15:57:27 2018 (r338107)
@@ -154,9 +154,9 @@ agp_alloc_gatt(device_t dev)
return 0;
gatt->ag_entries = entries;
- gatt->ag_virtual = (void *)kmem_alloc_contig(kernel_arena,
- entries * sizeof(u_int32_t), M_NOWAIT | M_ZERO, 0, ~0, PAGE_SIZE,
- 0, VM_MEMATTR_WRITE_COMBINING);
+ gatt->ag_virtual = (void *)kmem_alloc_contig(entries *
+ sizeof(u_int32_t), M_NOWAIT | M_ZERO, 0, ~0, PAGE_SIZE, 0,
+ VM_MEMATTR_WRITE_COMBINING);
if (!gatt->ag_virtual) {
if (bootverbose)
device_printf(dev, "contiguous allocation failed\n");
Modified: head/sys/dev/agp/agp_i810.c
==============================================================================
--- head/sys/dev/agp/agp_i810.c Mon Aug 20 15:43:08 2018 (r338106)
+++ head/sys/dev/agp/agp_i810.c Mon Aug 20 15:57:27 2018 (r338107)
@@ -1189,9 +1189,8 @@ agp_i810_install_gatt(device_t dev)
sc->dcache_size = 0;
/* According to the specs the gatt on the i810 must be 64k. */
- sc->gatt->ag_virtual = (void *)kmem_alloc_contig(kernel_arena,
- 64 * 1024, M_NOWAIT | M_ZERO, 0, ~0, PAGE_SIZE,
- 0, VM_MEMATTR_WRITE_COMBINING);
+ sc->gatt->ag_virtual = (void *)kmem_alloc_contig(64 * 1024, M_NOWAIT |
+ M_ZERO, 0, ~0, PAGE_SIZE, 0, VM_MEMATTR_WRITE_COMBINING);
if (sc->gatt->ag_virtual == NULL) {
if (bootverbose)
device_printf(dev, "contiguous allocation failed\n");
Modified: head/sys/dev/liquidio/lio_network.h
==============================================================================
--- head/sys/dev/liquidio/lio_network.h Mon Aug 20 15:43:08 2018 (r338106)
+++ head/sys/dev/liquidio/lio_network.h Mon Aug 20 15:57:27 2018 (r338107)
@@ -198,8 +198,8 @@ lio_dma_alloc(size_t size, vm_paddr_t *dma_handle)
void *mem;
align = PAGE_SIZE << lio_get_order(size);
- mem = (void *)kmem_alloc_contig(kmem_arena, size, M_WAITOK, 0, ~0ul,
- align, 0, VM_MEMATTR_DEFAULT);
+ mem = (void *)kmem_alloc_contig(size, M_WAITOK, 0, ~0ul, align, 0,
+ VM_MEMATTR_DEFAULT);
if (mem != NULL)
*dma_handle = vtophys(mem);
else
Modified: head/sys/dev/xdma/controller/pl330.c
==============================================================================
--- head/sys/dev/xdma/controller/pl330.c Mon Aug 20 15:43:08 2018 (r338106)
+++ head/sys/dev/xdma/controller/pl330.c Mon Aug 20 15:57:27 2018 (r338107)
@@ -392,8 +392,8 @@ pl330_channel_alloc(device_t dev, struct xdma_channel
chan->sc = sc;
chan->used = 1;
- chan->ibuf = (void *)kmem_alloc_contig(kernel_arena,
- PAGE_SIZE*8, M_ZERO, 0, ~0, PAGE_SIZE, 0,
+ chan->ibuf = (void *)kmem_alloc_contig(PAGE_SIZE * 8,
+ M_ZERO, 0, ~0, PAGE_SIZE, 0,
VM_MEMATTR_UNCACHEABLE);
chan->ibuf_phys = vtophys(chan->ibuf);
Modified: head/sys/kern/kern_malloc.c
==============================================================================
--- head/sys/kern/kern_malloc.c Mon Aug 20 15:43:08 2018 (r338106)
+++ head/sys/kern/kern_malloc.c Mon Aug 20 15:57:27 2018 (r338107)
@@ -443,8 +443,8 @@ contigmalloc(unsigned long size, struct malloc_type *t
{
void *ret;
- ret = (void *)kmem_alloc_contig(kernel_arena, size, flags, low, high,
- alignment, boundary, VM_MEMATTR_DEFAULT);
+ ret = (void *)kmem_alloc_contig(size, flags, low, high, alignment,
+ boundary, VM_MEMATTR_DEFAULT);
if (ret != NULL)
malloc_type_allocated(type, round_page(size));
return (ret);
Modified: head/sys/mips/ingenic/jz4780_lcd.c
==============================================================================
--- head/sys/mips/ingenic/jz4780_lcd.c Mon Aug 20 15:43:08 2018 (r338106)
+++ head/sys/mips/ingenic/jz4780_lcd.c Mon Aug 20 15:57:27 2018 (r338107)
@@ -115,8 +115,8 @@ static struct resource_spec jzlcd_spec[] = {
static int
jzlcd_allocfb(struct jzlcd_softc *sc)
{
- sc->vaddr = kmem_alloc_contig(kernel_arena, sc->fbsize,
- M_NOWAIT | M_ZERO, 0, ~0, FB_ALIGN, 0, VM_MEMATTR_WRITE_COMBINING);
+ sc->vaddr = kmem_alloc_contig(sc->fbsize, M_NOWAIT | M_ZERO, 0, ~0,
+ FB_ALIGN, 0, VM_MEMATTR_WRITE_COMBINING);
if (sc->vaddr == 0) {
device_printf(sc->dev, "failed to allocate FB memory\n");
return (ENOMEM);
Modified: head/sys/mips/mips/busdma_machdep.c
==============================================================================
--- head/sys/mips/mips/busdma_machdep.c Mon Aug 20 15:43:08 2018 (r338106)
+++ head/sys/mips/mips/busdma_machdep.c Mon Aug 20 15:57:27 2018 (r338107)
@@ -717,9 +717,8 @@ bus_dmamem_alloc(bus_dma_tag_t dmat, void** vaddrp, in
vaddr = (void *)kmem_alloc_attr(dmat->maxsize, mflags, 0,
dmat->lowaddr, memattr);
} else {
- vaddr = (void *)kmem_alloc_contig(kernel_arena, dmat->maxsize,
- mflags, 0, dmat->lowaddr, dmat->alignment, dmat->boundary,
- memattr);
+ vaddr = (void *)kmem_alloc_contig(dmat->maxsize, mflags, 0,
+ dmat->lowaddr, dmat->alignment, dmat->boundary, memattr);
}
if (vaddr == NULL) {
_busdma_free_dmamap(newmap);
Modified: head/sys/powerpc/powerpc/busdma_machdep.c
==============================================================================
--- head/sys/powerpc/powerpc/busdma_machdep.c Mon Aug 20 15:43:08 2018 (r338106)
+++ head/sys/powerpc/powerpc/busdma_machdep.c Mon Aug 20 15:57:27 2018 (r338107)
@@ -542,9 +542,9 @@ bus_dmamem_alloc(bus_dma_tag_t dmat, void** vaddr, int
* multi-seg allocations yet though.
* XXX Certain AGP hardware does.
*/
- *vaddr = (void *)kmem_alloc_contig(kmem_arena, dmat->maxsize,
- mflags, 0ul, dmat->lowaddr, dmat->alignment ?
- dmat->alignment : 1ul, dmat->boundary, attr);
+ *vaddr = (void *)kmem_alloc_contig(dmat->maxsize, mflags, 0ul,
+ dmat->lowaddr, dmat->alignment ? dmat->alignment : 1ul,
+ dmat->boundary, attr);
(*mapp)->contigalloc = 1;
}
if (*vaddr == NULL) {
Modified: head/sys/vm/vm_extern.h
==============================================================================
--- head/sys/vm/vm_extern.h Mon Aug 20 15:43:08 2018 (r338106)
+++ head/sys/vm/vm_extern.h Mon Aug 20 15:57:27 2018 (r338107)
@@ -58,7 +58,7 @@ vm_offset_t kmem_alloc_attr(vm_size_t size, int flags,
vm_paddr_t low, vm_paddr_t high, vm_memattr_t memattr);
vm_offset_t kmem_alloc_attr_domain(int domain, vm_size_t size, int flags,
vm_paddr_t low, vm_paddr_t high, vm_memattr_t memattr);
-vm_offset_t kmem_alloc_contig(struct vmem *, vm_size_t size, int flags,
+vm_offset_t kmem_alloc_contig(vm_size_t size, int flags,
vm_paddr_t low, vm_paddr_t high, u_long alignment, vm_paddr_t boundary,
vm_memattr_t memattr);
vm_offset_t kmem_alloc_contig_domain(int domain, vm_size_t size, int flags,
Modified: head/sys/vm/vm_kern.c
==============================================================================
--- head/sys/vm/vm_kern.c Mon Aug 20 15:43:08 2018 (r338106)
+++ head/sys/vm/vm_kern.c Mon Aug 20 15:57:27 2018 (r338107)
@@ -304,16 +304,12 @@ retry:
}
vm_offset_t
-kmem_alloc_contig(struct vmem *vmem, vm_size_t size, int flags, vm_paddr_t low,
- vm_paddr_t high, u_long alignment, vm_paddr_t boundary,
- vm_memattr_t memattr)
+kmem_alloc_contig(vm_size_t size, int flags, vm_paddr_t low, vm_paddr_t high,
+ u_long alignment, vm_paddr_t boundary, vm_memattr_t memattr)
{
struct vm_domainset_iter di;
vm_offset_t addr;
int domain;
-
- KASSERT(vmem == kernel_arena,
- ("kmem_alloc_contig: Only kernel_arena is supported."));
vm_domainset_iter_malloc_init(&di, kernel_object, &domain, &flags);
do {
Modified: head/sys/x86/iommu/intel_intrmap.c
==============================================================================
--- head/sys/x86/iommu/intel_intrmap.c Mon Aug 20 15:43:08 2018 (r338106)
+++ head/sys/x86/iommu/intel_intrmap.c Mon Aug 20 15:57:27 2018 (r338107)
@@ -338,7 +338,7 @@ dmar_init_irt(struct dmar_unit *unit)
return (0);
}
unit->irte_cnt = clp2(NUM_IO_INTS);
- unit->irt = (dmar_irte_t *)(uintptr_t)kmem_alloc_contig(kernel_arena,
+ unit->irt = (dmar_irte_t *)(uintptr_t)kmem_alloc_contig(
unit->irte_cnt * sizeof(dmar_irte_t), M_ZERO | M_WAITOK, 0,
dmar_high, PAGE_SIZE, 0, DMAR_IS_COHERENT(unit) ?
VM_MEMATTR_DEFAULT : VM_MEMATTR_UNCACHEABLE);
Modified: head/sys/x86/iommu/intel_qi.c
==============================================================================
--- head/sys/x86/iommu/intel_qi.c Mon Aug 20 15:43:08 2018 (r338106)
+++ head/sys/x86/iommu/intel_qi.c Mon Aug 20 15:57:27 2018 (r338107)
@@ -398,8 +398,8 @@ dmar_init_qi(struct dmar_unit *unit)
unit->inv_queue_avail = unit->inv_queue_size - DMAR_IQ_DESCR_SZ;
/* The invalidation queue reads by DMARs are always coherent. */
- unit->inv_queue = kmem_alloc_contig(kernel_arena, unit->inv_queue_size,
- M_WAITOK | M_ZERO, 0, dmar_high, PAGE_SIZE, 0, VM_MEMATTR_DEFAULT);
+ unit->inv_queue = kmem_alloc_contig(unit->inv_queue_size, M_WAITOK |
+ M_ZERO, 0, dmar_high, PAGE_SIZE, 0, VM_MEMATTR_DEFAULT);
unit->inv_waitd_seq_hw_phys = pmap_kextract(
(vm_offset_t)&unit->inv_waitd_seq_hw);
More information about the svn-src-all
mailing list