Re: [GIT PULL] xen /proc/mtrr implementation

From: Andi Kleen
Date: Wed May 20 2009 - 04:16:44 EST


Jeremy Fitzhardinge <jeremy@xxxxxxxx> writes:

> arch/x86 already defines an mtrr_ops, which defines how to manipulate
> the MTRR registers. There are currently several implementations of
> that interface. In Xen the MTRR registers belong to the hypervisor,
> but it allows a privileged kernel to modify them via hypercalls.

One part that's unclear to me in this discussion. Could you perhaps
clarify Jeremy?:

Even Dom0 is not continuous in physical memory, but mapped page by page
except for swiotlb mappings. But MTRRs are fundamentally a way
to change attributes for large physically continous mappings. How do these
two meet?

After all when you change a MTRR for a given range of memory
linux sees as continuous it isn't necessarily in Xen.

Is this new interface only defined for swiotlb or MMIO mappings?
If yes did you check the drivers only actually set it on
swiotlb or MMIO (that seems dubious to me)?

-Andi

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