diff options
author | Mike Belopuhov <mikeb@cvs.openbsd.org> | 2012-08-01 15:44:15 +0000 |
---|---|---|
committer | Mike Belopuhov <mikeb@cvs.openbsd.org> | 2012-08-01 15:44:15 +0000 |
commit | f336bc8563bd527edda0ad338295faa8fe31a06d (patch) | |
tree | 24bfe00b7b0cb406dc533b7659cb9fb730a815bc /lib | |
parent | 099062ce3bad5e2d24cd48088b995fdf2a2bcabe (diff) |
Use mtrrmask instead of hardcoded values to accommodate newer CPUs
with a large physical address size (greater than 36 bit). Fixes a
major performance hit seen on newer servers where an incorrectly
programmed memory region length affects the PCI device mappings.
While here, make sure to invalidate the TLB after programming MSRs
and fix an incorrect behavior found by deraadt@ where MTRRdefType
was updated outside of the protected region.
The fix was partly obtained from FreeBSD, tested by many.
With and OK deraadt
Diffstat (limited to 'lib')
0 files changed, 0 insertions, 0 deletions