opnsense-src/sys/amd64/include
John Baldwin 67b69e76e8 vmm: Use an sx lock to protect the memory map.
Previously bhyve obtained a "read lock" on the memory map for ioctls
needing to read the map by locking the last vCPU.  This is now
replaced by a new per-VM sx lock.  Modifying the map requires
exclusively locking the sx lock as well as locking all existing vCPUs.
Reading the map requires either locking one vCPU or the sx lock.

This permits safely modifying or querying the memory map while some
vCPUs do not exist which will be true in a future commit.

Reviewed by:	corvink, markj
Differential Revision:	https://reviews.freebsd.org/D37172
2022-11-18 10:25:38 -08:00
..
pc smbios: Move smbios driver out from x86 machdep code 2021-02-23 21:17:09 +00:00
xen xen: Prevent buffer overflow in privcmd ioctl 2022-05-06 09:31:32 +02:00
_align.h
_bus.h
_inttypes.h
_limits.h
_stdint.h
_types.h
acpica_machdep.h
apm_bios.h
asan.h kasan: Create a shadow for the bootstack prior to hammer_time() 2022-06-15 11:39:10 -04:00
asm.h amd64: -m32 support for machine/asm(macros).h 2022-06-13 18:35:39 +01:00
asmacros.h elfnote: place note in a PT_NOTE program header 2022-06-28 09:51:57 +02:00
atomic.h amd64: -m32 support for machine/atomic.h 2022-06-13 18:35:39 +01:00
bus.h
bus_dma.h
clock.h x86: Deduplicate clock.h 2021-12-06 10:39:08 -05:00
counter.h amd64: -m32 support for machine/counter.h 2022-06-13 18:35:40 +01:00
cpu.h Simplify swi for bus_dma. 2021-12-28 13:51:25 -08:00
cpufunc.h amd64: -m32 support for machine/cpufunc.h 2022-06-13 18:35:38 +01:00
cputypes.h
csan.h Limit when we call DELAY from KCSAN on amd64 2021-02-25 12:38:05 +00:00
db_machdep.h Create sys/reg.h for the common code previously in machine/reg.h 2021-08-30 12:50:53 +01:00
dump.h
efi.h Remove "All Rights Reserved" from FreeBSD Foundation sys/ copyrights 2021-08-08 10:42:24 -04:00
elf.h
endian.h
exec.h
fdt.h
float.h
floatingpoint.h
fpu.h
frame.h amd64: centralize definitions of CS_SECURE and EFL_SECURE 2021-09-21 20:20:14 +03:00
gdb_machdep.h gdb: report specific stop reason for watchpoints 2021-03-30 11:36:41 -03:00
ieeefp.h Remove checks for __GNUCLIKE_ASM assuming it is always true. 2022-04-12 10:05:45 -07:00
in_cksum.h machine/in_cksum.h: don't include sys/cdefs.h 2022-04-18 21:02:19 +01:00
intr_machdep.h amd64: Make it easier to configure exception stack sizes 2020-11-04 16:42:20 +00:00
iodev.h
iommu.h o Add machine/iommu.h and include MD iommu headers from it, 2020-08-05 19:11:31 +00:00
kdb.h x86: implement kdb watchpoint functions 2021-03-29 12:05:43 -03:00
limits.h Remove checks for __CC_SUPPORTS_WARNING assuming it is always true. 2022-04-12 10:06:13 -07:00
md_var.h kasan: Create a shadow for the bootstack prior to hammer_time() 2022-06-15 11:39:10 -04:00
memdev.h Add the MEM_EXTRACT_PADDR ioctl to /dev/mem. 2020-09-02 18:12:47 +00:00
metadata.h
minidump.h Sparsify the vm_page_dump bitmap 2020-09-21 22:21:59 +00:00
msan.h Add the KMSAN runtime 2021-08-10 21:27:53 -04:00
nexusvar.h
npx.h
ofw_machdep.h
param.h amd64: Populate the KMSAN shadow maps and integrate with the VM 2021-08-10 21:27:53 -04:00
pcb.h Fix for mis-interpretation of PCB_KERNFPU. 2020-10-14 23:01:41 +00:00
pci_cfgreg.h
pcpu.h amd64: -m32 support for machine/pcpu.h 2022-06-13 18:35:40 +01:00
pcpu_aux.h amd64: -m32 support for machine/pcpu_aux.h 2022-06-13 18:35:40 +01:00
pmap.h sys: Consolidate common implementation details of PV entries. 2022-10-07 10:14:03 -07:00
pmc_mdep.h
ppireg.h
proc.h amd64: -m32 support for machine/proc.h 2022-06-13 18:35:39 +01:00
procctl.h
profile.h amd64: -m32 support for machine/profile.h 2022-06-13 18:35:39 +01:00
psl.h
ptrace.h
pvclock.h
reg.h
reloc.h
resource.h
runq.h
segments.h amd64: -m32 support for machine/segments.h 2022-06-13 18:35:39 +01:00
setjmp.h
sf_buf.h amd64: -m32 support for machine/sb_buf.h 2022-06-13 18:35:39 +01:00
sgx.h
sgxreg.h
sigframe.h
signal.h
smp.h amd64: rework AP startup 2021-07-27 20:11:15 +03:00
specialreg.h
stack.h
stdarg.h
sysarch.h
timerreg.h
tls.h Add <machine/tls.h> header to hold MD constants and helpers for TLS. 2021-12-09 13:17:13 -08:00
trap.h
tss.h
ucontext.h
vdso.h
vm.h Create VM_MEMATTR_DEVICE on all architectures 2021-04-12 06:15:31 +00:00
vmm.h vmm: Use an sx lock to protect the memory map. 2022-11-18 10:25:38 -08:00
vmm_dev.h Extend the VMM stats interface to support a dynamic count of statistics. 2022-02-07 14:11:10 -08:00
vmm_instruction_emul.h vmm: Use struct vcpu in the instruction emulation code. 2022-11-18 10:25:37 -08:00
vmm_snapshot.h bhyve: Drop volatile qualifiers from snapshot code 2022-11-11 10:02:26 -05:00
vmparam.h amd64: -m32 support for machine/vmparam.h 2022-06-13 18:35:39 +01:00