From: Konrad Rzeszutek Wilk Date: Mon, 10 Jun 2013 16:46:22 +0000 (-0400) Subject: Merge branch 'stable/pvh.v8' into linux-next X-Git-Tag: next-20130617~32^2 X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=6c63f3caff1731fdded6ba500201b01abab76d98;p=karo-tx-linux.git Merge branch 'stable/pvh.v8' into linux-next * stable/pvh.v8: x86/xen: remove depends on CONFIG_EXPERIMENTAL xen/pvh: Use ballooning to allocate grant table pages [v2] xen/pvh: remove code to map iomem from guest xen/pvh: specify xen features strings cleanly for PVH xen: implement updated XENMEM_add_to_physmap_range ABI x86/xen: Use __pa_symbol instead of __pa on C visible symbols xen/privcmd: fix condition in privcmd_close() xen/x86: remove duplicated include from enlighten.c xen: x86 pvh: use XENMEM_add_to_physmap_range for foreign gmfn mappings xen/pvh: balloon and grant changes. xen/pvh: bootup and setup (E820) related changes. xen/pvh: Implement MMU changes for PVH. xen/pvh: Extend vcpu_guest_context, p2m, event, and XenBus. xen/pvh: Support ParaVirtualized Hardware extensions. Conflicts: arch/x86/xen/mmu.c --- 6c63f3caff1731fdded6ba500201b01abab76d98 diff --cc arch/x86/xen/mmu.c index fdc3ba28ca38,31cc1ef4ac4b..33c113aff6f8 --- a/arch/x86/xen/mmu.c +++ b/arch/x86/xen/mmu.c @@@ -1753,13 -1763,13 +1761,17 @@@ static void set_page_prot_flags(void *a unsigned long pfn = __pa(addr) >> PAGE_SHIFT; pte_t pte = pfn_pte(pfn, prot); + /* recall for PVH, page tables are native. */ + if (xen_feature(XENFEAT_auto_translated_physmap)) + return; + - if (HYPERVISOR_update_va_mapping((unsigned long)addr, pte, 0)) + if (HYPERVISOR_update_va_mapping((unsigned long)addr, pte, flags)) BUG(); } +static void set_page_prot(void *addr, pgprot_t prot) +{ + return set_page_prot_flags(addr, prot, UVMF_NONE); +} #ifdef CONFIG_X86_32 static void __init xen_map_identity_early(pmd_t *pmd, unsigned long max_pfn) {