Date: Fri, 21 Nov 2003 17:11:07 -0800 (PST) From: Peter Wemm <peter@FreeBSD.org> To: src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: src/sys/amd64/amd64 amd64_mem.c Message-ID: <200311220111.hAM1B743034754@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
peter 2003/11/21 17:11:07 PST
FreeBSD src repository
Modified files:
sys/amd64/amd64 amd64_mem.c
Log:
Argh! The Athlon64 and Opteron only implement 40 bits of address space in
the MTRR Base/Mask registers. If you use the documented algorithm in the
systems programming guide, you'll get a GPF. The only thing that has
prevented this so far is that the bios pre-sets some MTRR entries which
we mis-interpreted sufficiently to fool the memcontrol interface into
thinking all the address space was taken and therefore rejected XFree86's
requests. However, not all bioses do this.. You get an insta-panic in
that case. Grrr. A better fix (dynamic mask) will happen by 5.3/5-stable
so that we automatically adapt to more than 40 physical bits.
Approved by: re (scottl)
Revision Changes Path
1.23 +4 -5 src/sys/amd64/amd64/amd64_mem.c
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200311220111.hAM1B743034754>
