[PATCH 0/3] bios: mtrr: Improvements to memory ranges

Ricardo Neri ricardo.neri-calderon at linux.intel.com
Wed Apr 27 20:11:51 UTC 2016


Hi,

I am submitting a series of three patches for the Memory Type Range
Registers (MTRR) tests.

The first two patches are corrections for corner cases when testing if any
part of a given memory range is covered by an MTRR register or not.
Admittedly, it is unlikely that we will run into such corner cases as most
of the memory regions of concern have a 4Kbyte boundary. Still, I could not
stare at the bug (in my opinion) and not fix it. :) I will leave to you the
decision on whether these two patches are worth merging into the FWTS tree.

The third patch is not a bug, but an improvement (to me) on how the MTRR
ranges are presented in the MTRR Overview part of the tests. The memory
ranges are represented differently in the FWTS tests and in /proc/iomem.
This is an example of a memory range found in /proc/iomem

    00001000-0008efff : System RAM

It has a size of 0x8e000. If there was a MTRR register to describe this
memory range it would appear in the MTRR overview as:

Reg xx: 0x0000000000001000 - 0x000000000008f000 (    58 KB)   [cache type]

It gives the wrong preception that 0x8f000 is part of the range when it is
not. We see that we have two different formats. Since FWTS uses
/proc/iomem as a source of data, it would be good if both used the same
format for memory ranges.

Thanks and BR,
Ricardo

Ricardo Neri (3):
  bios: mtrr: fix cache type corner case at start of mtrr range
  bios: mtrr: fix cache type corner case at end of mtrr range
  bios: mtrr: redefine the end point of memory ranges

 src/bios/mtrr/mtrr.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

-- 
2.8.1




More information about the fwts-devel mailing list