freebsd-dev/sys/amd64
Konstantin Belousov a58679a93b Complete r323772 on amd64.
Compilers are allowed to combine plain reads into group operations,
e.g. 64bit element copies of one array into another can be
legitimately optimized back to a memcpy() call, which r323772 tried to
prevent.

Qualify accesses to LDT descriptors with volatile dereference to
ensure that each write indeed occurs.  After that, our usual claim of
native-size aligned writes being atomic applies.

This is equivalent to atomic_store(memory_order_relaxed) C11 accesses,
but our machine/atomic.h does not provide corresponding primitive.

Noted and reviewed by:	bde
Sponsored by:	The FreeBSD Foundation
MFC after:	1 week
2017-10-05 12:16:45 +00:00
..
acpica Ensure that resume path on amd64 only accesses page tables for normal 2017-05-15 20:52:43 +00:00
amd64 Complete r323772 on amd64. 2017-10-05 12:16:45 +00:00
cloudabi32 Move struct syscall_args syscall arguments parameters container into 2017-06-12 21:03:23 +00:00
cloudabi64 Keep top page on CloudABI to work around AMD Ryzen stability issues. 2017-08-02 13:08:10 +00:00
conf Add MMCCAM-enabled kernel config for IMX6, reduce debug noice in MMCCAM kernels 2017-09-13 10:56:02 +00:00
ia32 Translate between abridged and full x87 tags for compat32 2017-06-24 11:38:31 +00:00
include On amd64, mark the set_user_ldt() function as static. 2017-10-05 11:50:01 +00:00
linux Lower the amd64 shared page, which contains the signal trampoline, 2017-08-02 01:43:35 +00:00
linux32 Avoid using [LINUX_]SHAREDPAGE constant directly in the vdso code. 2017-07-30 21:24:20 +00:00
pci pcicfg: Fix direct calls of pci_cfg{read,write} on systems w/o PCI host bridge. 2017-05-04 05:28:46 +00:00
sgx Fix module unload when SGX support is not present in CPU. 2017-08-18 14:47:06 +00:00
vmm Save KGSBASE in pcb before overriding it with the guest value. 2017-08-24 10:49:53 +00:00
Makefile Bring the tags and links entries for amd64 up to date. 2015-10-27 22:59:24 +00:00