1
0
mirror of https://git.FreeBSD.org/src.git synced 2024-12-15 10:17:20 +00:00
freebsd/sys/x86/iommu
Mark Johnston 9978bd996b Add malloc_domainset(9) and _domainset variants to other allocator KPIs.
Remove malloc_domain(9) and most other _domain KPIs added in r327900.
The new functions allow the caller to specify a general NUMA domain
selection policy, rather than specifically requesting an allocation from
a specific domain.  The latter policy tends to interact poorly with
M_WAITOK, resulting in situations where a caller is blocked indefinitely
because the specified domain is depleted.  Most existing consumers of
the _domain KPIs are converted to instead use a DOMAINSET_PREF() policy,
in which we fall back to other domains to satisfy the allocation
request.

This change also defines a set of DOMAINSET_FIXED() policies, which
only permit allocations from the specified domain.

Discussed with:	gallatin, jeff
Reported and tested by:	pho (previous version)
MFC after:	2 weeks
Sponsored by:	The FreeBSD Foundation
Differential Revision:	https://reviews.freebsd.org/D17418
2018-10-30 18:26:34 +00:00
..
busdma_dmar.c Add malloc_domainset(9) and _domainset variants to other allocator KPIs. 2018-10-30 18:26:34 +00:00
busdma_dmar.h sys/x86: further adoption of SPDX licensing ID tags. 2017-11-27 15:11:47 +00:00
intel_ctx.c sys/x86: further adoption of SPDX licensing ID tags. 2017-11-27 15:11:47 +00:00
intel_dmar.h Make timespecadd(3) and friends public 2018-07-30 15:46:40 +00:00
intel_drv.c sys/x86: further adoption of SPDX licensing ID tags. 2017-11-27 15:11:47 +00:00
intel_fault.c sys/x86: further adoption of SPDX licensing ID tags. 2017-11-27 15:11:47 +00:00
intel_gas.c Don't include DMAR map entry zone items in kernel dumps. 2018-02-18 16:03:50 +00:00
intel_idpgtbl.c sys/x86: further adoption of SPDX licensing ID tags. 2017-11-27 15:11:47 +00:00
intel_intrmap.c Dynamically allocate IRQ ranges on x86. 2018-08-28 21:09:19 +00:00
intel_qi.c Eliminate the arena parameter to kmem_free(). Implicitly this corrects an 2018-08-25 19:38:08 +00:00
intel_quirks.c sys/x86: further adoption of SPDX licensing ID tags. 2017-11-27 15:11:47 +00:00
intel_reg.h sys/x86: further adoption of SPDX licensing ID tags. 2017-11-27 15:11:47 +00:00
intel_utils.c Convert x86 cache invalidation functions to ifuncs. 2018-09-19 19:35:02 +00:00
iommu_intrmap.h