]> git.karo-electronics.de Git - karo-tx-linux.git/commit
Revert "xen/e820: Coalesce the PVH release/populate logic in the generic case."
authorKonrad Rzeszutek Wilk <konrad.wilk@oracle.com>
Mon, 29 Oct 2012 13:42:03 +0000 (09:42 -0400)
committerKonrad Rzeszutek Wilk <konrad.wilk@oracle.com>
Mon, 29 Oct 2012 14:10:47 +0000 (10:10 -0400)
commit888abd20a3732a2af183a72f2dbb7693d75232fb
tree20739fe8089c026d2f567628d74c2a6c3380ad14
parent52f90d3ca175f83d16060aedc6f504c1e48f04d0
Revert "xen/e820: Coalesce the PVH release/populate logic in the generic case."

This reverts commit f825f5f66cbb15429ec549ad745dd546b22640a6
as it is causing with PVH the following problem:

(XEN) vmx_hybrid.c:710:d0 Dom:0 EPT violation 0x181 (r--/---), gpa 0x000000bf421e1c, mfn 0xffffffffffffffff, type 4.
(XEN) p2m-ept.c:642:d0 Walking EPT tables for domain 0 gfn bf421
(XEN) p2m-ept.c:648:d0  gfn exceeds max_mapped_pfn 4b062
(XEN) vmx_hybrid.c:717:d0  --- GLA 0xffffffffff477e1c

The reason being:
xen_set_identity_and_release_chunk():
NEW : > for (pfn = start_pfn; pfn <= max_pfn_mapped && pfn < end_pfn; pfn++) {

xen_pvh_identity_map_chunk():
OLD: for (pfn = start_pfn; pfn < end_pfn; pfn++)

IOW, for PVH we need to avoid testing for max_pfn_mapped, as we are
mapping the entire IO space.

So lets revert it for right now, and come back to this later.

Reported-and-Tested-by: Mukesh Rathor <mukesh.rathor@oracle.com>
Signed-off-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
arch/x86/xen/setup.c