kernel-ark/arch/x86/xen
Mark McLoughlin a684d69d15 xen: Do not pin/unpin PMD pages
i.e. with this simple test case:

    int fd = open("/dev/zero", O_RDONLY);
    munmap(mmap((void *)0x40000000, 0x1000_LEN, PROT_READ, MAP_PRIVATE, fd, 0), 0x1000);
    close(fd);

we currently get:

   kernel BUG at arch/x86/xen/enlighten.c:678!
   ...
   EIP is at xen_release_pt+0x79/0xa9
   ...
   Call Trace:
    [<c041da25>] ? __pmd_free_tlb+0x1a/0x75
    [<c047a192>] ? free_pgd_range+0x1d2/0x2b5
    [<c047a2f3>] ? free_pgtables+0x7e/0x93
    [<c047b272>] ? unmap_region+0xb9/0xf5
    [<c047c1bd>] ? do_munmap+0x193/0x1f5
    [<c047c24f>] ? sys_munmap+0x30/0x3f
    [<c0408cce>] ? syscall_call+0x7/0xb
    =======================

and xen complains:

  (XEN) mm.c:2241:d4 Mfn 1cc37 not pinned

Further details at:

  https://bugzilla.redhat.com/436453

Signed-off-by: Mark McLoughlin <markmc@redhat.com>
Cc: xen-devel@lists.xensource.com
Cc: Mark McLoughlin <markmc@redhat.com>
Cc: Jeremy Fitzhardinge <jeremy@goop.org>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
2008-04-04 18:36:48 +02:00
..
enlighten.c xen: Do not pin/unpin PMD pages 2008-04-04 18:36:48 +02:00
events.c x86: remove all definitions with fastcall 2008-01-30 13:31:17 +01:00
features.c i386: move xen 2007-10-11 11:16:51 +02:00
Kconfig x86: remove depends on X86_32 from PARAVIRT & PARAVIRT_GUEST 2008-01-30 13:33:32 +01:00
Makefile i386: move xen 2007-10-11 11:16:51 +02:00
manage.c i386: move xen 2007-10-11 11:16:51 +02:00
mmu.c xen: refactor xen_{alloc,release}_{pt,pd}() 2008-04-04 18:36:48 +02:00
mmu.h xen: refactor xen_{alloc,release}_{pt,pd}() 2008-04-04 18:36:48 +02:00
multicalls.c xen: add some debug output for failed multicalls 2007-10-16 11:51:31 -07:00
multicalls.h xen: add batch completion callbacks 2007-10-16 11:51:30 -07:00
setup.c x86/xen: fix DomU boot problem 2008-03-04 17:10:12 +01:00
smp.c x86: use generic register name in the thread and tss structures 2008-01-30 13:31:02 +01:00
time.c x86: fix sparse warning in xen/time.c 2008-02-09 23:24:08 +01:00
vdso.h i386: move xen 2007-10-11 11:16:51 +02:00
xen-asm.S xen: fix RMW when unmasking events 2008-03-27 16:08:45 +01:00
xen-head.S xen: fix section usage in xen-head.S and setup.c 2008-01-30 13:33:25 +01:00
xen-ops.h xen: deal with stale cr3 values when unpinning pagetables 2007-10-16 11:51:30 -07:00