Cyrix/mtrr fix missing from 2.4.3

From: Bob_Tracy (rct@gherkin.sa.wlk.com)
Date: Tue Apr 03 2001 - 10:20:12 EST


The following fix was omitted from 2.4.3. It corrects a problem
where the mtrr code attempts to set up a region twice as large as
the user requested.

The original message appeared in linux-kernel on 14 Mar 2001.

--Bob Tracy

----- Forwarded message from David Wragg -----
>From: David Wragg <dpw@doc.ic.ac.uk>
>Date: 14 Mar 2001 22:57:21 +0000

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;
 

----- End of forwarded message from David Wragg -----
-
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/



This archive was generated by hypermail 2b29 : Sat Apr 07 2001 - 21:00:12 EST