freebsd-nq/sys/ia64
Marcel Moolenaar 79c3bcf42c In the nested TLB fault handler, for a direct-mapped address, make
sure to clear the lower 12 bits. We're adding the translation
attributes to the physical address and non-zero bits in the first
12 bits would give us something unexpected, including invalid bit
values. Those trigger nested general protection faults.
We do not have to clear the region bits, because they are ignored
anyway, so we can replace an existing dep instruction with the one
we need.

This fixes GP faults for the swapper thread, as it's the only thread
that has a direct-mapped stack. Since the bug is in the nested TLB
fault handler, the frequency of hitting the GP is in the order of
hours/days under load.
2014-01-15 03:57:41 +00:00
..
acpica Improve style(9) in the previous commit. 2012-06-01 17:07:52 +00:00
conf Make process descriptors standard part of the kernel. rwhod(8) already 2013-11-30 15:08:35 +00:00
disasm
ia32 Add a mmap flag (MAP_32BIT) on 64-bit platforms to request that a mapping use 2013-09-09 18:11:59 +00:00
ia64 In the nested TLB fault handler, for a direct-mapped address, make 2014-01-15 03:57:41 +00:00
include Implement atomic_swap_<type>. 2014-01-01 22:51:19 +00:00
isa Retire isa_setup_intr() and isa_teardown_intr() and use the generic bus 2011-05-06 13:48:53 +00:00
pci In pci_cfgregread() and pci_cfgregwrite(), multiplex the domain and 2013-07-23 03:03:17 +00:00