Re: another Cyrix/mtrr problem?

David Wragg (dpw@doc.ic.ac.uk)
14 Mar 2001 22:57:21 +0000


rct@gherkin.sa.wlk.com (Bob_Tracy) writes:
> Unfortunately, when I execute
>
> echo "base=0xd8000000 size=0x100000 type=write-combining" >| /proc/mtrr
>
> I get a 2MB region instead of the 1MB region I expected...

Oops, it got broken by the MTRR >32-bit support in 2.4.0-testX. The
patch below should fix it.

Joerg, I think this might well fix your Cyrix mtrr problem also.

Let me know how it goes,
Dave Wragg

diff -uar linux-2.4.2/arch/i386/kernel/mtrr.c linux-2.4.2.cyrix/arch/i386/kernel/mtrr.c
--- linux-2.4.2/arch/i386/kernel/mtrr.c Thu Feb 22 15:24:53 2001
+++ linux-2.4.2.cyrix/arch/i386/kernel/mtrr.c Wed Mar 14 22:28:02 2001
@@ -538,7 +538,7 @@
* Note: shift==0xf means 4G, this is unsupported.
*/
if (shift)
- *size = (reg < 7 ? 0x1UL : 0x40UL) << shift;
+ *size = (reg < 7 ? 0x1UL : 0x40UL) << (shift - 1);
else
*size = 0;

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/