OpenCloudOS-Kernel/arch/x86/xen
Juergen Gross b8f05c8803 x86/xen: correct bug in p2m list initialization
Commit 054954eb05 ("xen: switch to
linear virtual mapped sparse p2m list") introduced an error.

During initialization of the p2m list a p2m identity area mapped by
a complete identity pmd entry has to be split up into smaller chunks
sometimes, if a non-identity pfn is introduced in this area.

If this non-identity pfn is not at index 0 of a p2m page the new
p2m page needed is initialized with wrong identity entries, as the
identity pfns don't start with the value corresponding to index 0,
but with the initial non-identity pfn. This results in weird wrong
mappings.

Correct the wrong initialization by starting with the correct pfn.

Cc: stable@vger.kernel.org # 3.19
Reported-by: Stefan Bader <stefan.bader@canonical.com>
Signed-off-by: Juergen Gross <jgross@suse.com>
Tested-by: Stefan Bader <stefan.bader@canonical.com>
Signed-off-by: David Vrabel <david.vrabel@citrix.com>
2015-02-27 14:53:19 +00:00
..
Kconfig Support PCI devices with multiple MSIs, performance improvement for 2014-04-03 14:01:37 -07:00
Makefile arch/x86/xen: Silence compiler warnings 2014-07-18 21:24:03 +01:00
apic.c xen/apic/xenbus/swiotlb/pcifront/grant/tmem: Make functions or variables static. 2012-08-21 14:50:03 -04:00
debugfs.c debugfs: Add support to print u32 array in debugfs 2012-04-17 00:18:36 -04:00
debugfs.h debugfs: Add support to print u32 array in debugfs 2012-04-17 00:18:36 -04:00
efi.c xen/efi: Directly include needed headers 2014-09-23 13:36:20 +00:00
enlighten.c x86/xen: Initialize cr4 shadow for 64-bit PV(H) guests 2015-02-23 16:30:26 +00:00
grant-table.c x86/xen: use vmap() to map grant table pages in PVH guests 2014-08-11 11:59:35 +01:00
irq.c asmlinkage, x86: Add explicit __visible to arch/x86/* 2014-05-05 16:07:44 -07:00
mmu.c x86/xen: cleanup arch/x86/xen/mmu.c 2015-01-28 10:01:11 +00:00
mmu.h xen: make a pile of mmu pvop functions static 2011-05-20 14:25:24 -07:00
multicalls.c x86: Replace __get_cpu_var uses 2014-08-26 13:45:49 -04:00
multicalls.h xen: use this_cpu_xxx replace percpu_xxx funcs 2012-01-24 12:20:24 -05:00
p2m.c x86/xen: correct bug in p2m list initialization 2015-02-27 14:53:19 +00:00
p2m.h xen/setup: Remap Xen Identity Mapped RAM 2014-09-23 13:36:18 +00:00
pci-swiotlb-xen.c pci-swiotlb-xen: call pci_request_acs only ifdef CONFIG_PCI 2013-11-08 15:21:44 -05:00
platform-pci-unplug.c xen/pvhvm: Remove the xen_platform_pci int. 2014-01-03 14:54:53 -05:00
setup.c x86/xen: add some __init and static annotations in arch/x86/xen/setup.c 2015-01-28 10:00:36 +00:00
smp.c x86,xen: use current->state helpers 2015-01-26 10:21:26 +00:00
smp.h x86/xen: Set EFER.NX and EFER.SCE in PVH guests 2014-10-06 10:27:47 +01:00
spinlock.c x86/spinlocks/paravirt: Fix memory corruption on unlock 2015-02-18 14:53:49 +01:00
suspend.c xen: refactor suspend pre/post hooks 2014-05-12 17:19:56 +01:00
time.c x86/xen: prefer TSC over xen clocksource for dom0 2015-01-20 18:44:24 +00:00
trace.c xen/trace: Fix compile error when CONFIG_XEN_PRIVILEGED_GUEST is not set 2011-08-05 09:43:02 -04:00
vdso.h
vga.c xen/vga: add the xen EFI video mode support 2012-09-24 09:28:57 -04:00
xen-asm.S xen: correctly check for pending events when restoring irq flags 2012-04-27 16:04:21 -04:00
xen-asm.h
xen-asm_32.S x86/xen: Fix 32-bit PV guests's usage of kernel_stack 2014-04-15 15:00:14 +01:00
xen-asm_64.S xen: use iret for return from 64b kernel to 32b usermode 2009-12-03 11:14:54 -08:00
xen-head.S x86/xen: Set EFER.NX and EFER.SCE in PVH guests 2014-10-06 10:27:47 +01:00
xen-ops.h x86/xen: cleanup arch/x86/xen/setup.c 2015-01-28 09:59:46 +00:00