Commit Graph
856 Commits
Author SHA1 Message Date
cl349@firebug.cl.cam.ac.uk 1ba8680ea4 Adapt Xenlinux/ia64 to build in the new subarch environment.
From: "Magenheimer, Dan (HP Labs Fort Collins)" <dan.magenheimer@hp.com>
Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
2006-01-31 17:39:35 +00:00
vhanquez@kneesa.uk.xensource.com cc3a733b64 allow compilation of 32 bits on biarch 64 bits.
Signed-off-by: Vincent Hanquez <vincent@xensource.com>
2006-01-31 12:00:25 +00:00
cl349@firebug.cl.cam.ac.uk 66ee4af453 Update linux sparse tree to subarch layout.
Sparse tree is based on 2.6.12 branch of linux-2.6-xen.hg.

Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>

--HG--
rename : linux-2.6-xen-sparse/arch/xen/configs/xen0_defconfig_x86_32 => buildconfigs/linux-defconfig_xen0_x86_32
rename : linux-2.6-xen-sparse/arch/xen/configs/xen0_defconfig_x86_64 => buildconfigs/linux-defconfig_xen0_x86_64
rename : linux-2.6-xen-sparse/arch/xen/configs/xenU_defconfig_x86_32 => buildconfigs/linux-defconfig_xenU_x86_32
rename : linux-2.6-xen-sparse/arch/xen/configs/xenU_defconfig_x86_64 => buildconfigs/linux-defconfig_xenU_x86_64
rename : linux-2.6-xen-sparse/arch/xen/configs/xen_defconfig_x86_32 => buildconfigs/linux-defconfig_xen_x86_32
rename : linux-2.6-xen-sparse/arch/xen/configs/xen_defconfig_x86_64 => buildconfigs/linux-defconfig_xen_x86_64
rename : linux-2.6-xen-sparse/arch/xen/i386/Kconfig => linux-2.6-xen-sparse/arch/i386/Kconfig
rename : linux-2.6-xen-sparse/arch/xen/i386/Makefile => linux-2.6-xen-sparse/arch/i386/Makefile
rename : linux-2.6-xen-sparse/arch/xen/boot/Makefile => linux-2.6-xen-sparse/arch/i386/boot-xen/Makefile
rename : linux-2.6-xen-sparse/arch/xen/i386/kernel/Makefile => linux-2.6-xen-sparse/arch/i386/kernel/Makefile
rename : linux-2.6-xen-sparse/arch/xen/i386/kernel/acpi/Makefile => linux-2.6-xen-sparse/arch/i386/kernel/acpi/Makefile
rename : linux-2.6-xen-sparse/arch/xen/i386/kernel/acpi/boot.c => linux-2.6-xen-sparse/arch/i386/kernel/acpi/boot-xen.c
rename : linux-2.6-xen-sparse/arch/xen/i386/kernel/apic.c => linux-2.6-xen-sparse/arch/i386/kernel/apic-xen.c
rename : linux-2.6-xen-sparse/arch/xen/i386/kernel/cpu/Makefile => linux-2.6-xen-sparse/arch/i386/kernel/cpu/Makefile
rename : linux-2.6-xen-sparse/arch/xen/i386/kernel/cpu/common.c => linux-2.6-xen-sparse/arch/i386/kernel/cpu/common-xen.c
rename : linux-2.6-xen-sparse/arch/xen/i386/kernel/cpu/mtrr/Makefile => linux-2.6-xen-sparse/arch/i386/kernel/cpu/mtrr/Makefile
rename : linux-2.6-xen-sparse/arch/xen/i386/kernel/cpu/mtrr/main.c => linux-2.6-xen-sparse/arch/i386/kernel/cpu/mtrr/main-xen.c
rename : linux-2.6-xen-sparse/arch/xen/i386/kernel/entry.S => linux-2.6-xen-sparse/arch/i386/kernel/entry-xen.S
rename : linux-2.6-xen-sparse/arch/xen/i386/kernel/fixup.c => linux-2.6-xen-sparse/arch/i386/kernel/fixup.c
rename : linux-2.6-xen-sparse/arch/xen/i386/kernel/head.S => linux-2.6-xen-sparse/arch/i386/kernel/head-xen.S
rename : linux-2.6-xen-sparse/arch/xen/i386/kernel/i386_ksyms.c => linux-2.6-xen-sparse/arch/i386/kernel/i386_ksyms-xen.c
rename : linux-2.6-xen-sparse/arch/xen/i386/kernel/init_task.c => linux-2.6-xen-sparse/arch/i386/kernel/init_task-xen.c
rename : linux-2.6-xen-sparse/arch/xen/i386/kernel/io_apic.c => linux-2.6-xen-sparse/arch/i386/kernel/io_apic-xen.c
rename : linux-2.6-xen-sparse/arch/xen/i386/kernel/ioport.c => linux-2.6-xen-sparse/arch/i386/kernel/ioport-xen.c
rename : linux-2.6-xen-sparse/arch/xen/i386/kernel/irq.c => linux-2.6-xen-sparse/arch/i386/kernel/irq-xen.c
rename : linux-2.6-xen-sparse/arch/xen/i386/kernel/ldt.c => linux-2.6-xen-sparse/arch/i386/kernel/ldt-xen.c
rename : linux-2.6-xen-sparse/arch/xen/i386/kernel/microcode.c => linux-2.6-xen-sparse/arch/i386/kernel/microcode-xen.c
rename : linux-2.6-xen-sparse/arch/xen/i386/kernel/mpparse.c => linux-2.6-xen-sparse/arch/i386/kernel/mpparse-xen.c
rename : linux-2.6-xen-sparse/arch/xen/i386/kernel/pci-dma.c => linux-2.6-xen-sparse/arch/i386/kernel/pci-dma-xen.c
rename : linux-2.6-xen-sparse/arch/xen/i386/kernel/process.c => linux-2.6-xen-sparse/arch/i386/kernel/process-xen.c
rename : linux-2.6-xen-sparse/arch/xen/i386/kernel/quirks.c => linux-2.6-xen-sparse/arch/i386/kernel/quirks-xen.c
rename : linux-2.6-xen-sparse/arch/xen/i386/kernel/setup.c => linux-2.6-xen-sparse/arch/i386/kernel/setup-xen.c
rename : linux-2.6-xen-sparse/arch/xen/i386/kernel/signal.c => linux-2.6-xen-sparse/arch/i386/kernel/signal-xen.c
rename : linux-2.6-xen-sparse/arch/xen/i386/kernel/smp.c => linux-2.6-xen-sparse/arch/i386/kernel/smp-xen.c
rename : linux-2.6-xen-sparse/arch/xen/i386/kernel/swiotlb.c => linux-2.6-xen-sparse/arch/i386/kernel/swiotlb.c
rename : linux-2.6-xen-sparse/arch/xen/i386/kernel/time.c => linux-2.6-xen-sparse/arch/i386/kernel/time-xen.c
rename : linux-2.6-xen-sparse/arch/xen/i386/kernel/traps.c => linux-2.6-xen-sparse/arch/i386/kernel/traps-xen.c
rename : linux-2.6-xen-sparse/arch/xen/i386/kernel/vsyscall-note.S => linux-2.6-xen-sparse/arch/i386/kernel/vsyscall-note-xen.S
rename : linux-2.6-xen-sparse/arch/xen/i386/mach-default/Makefile => linux-2.6-xen-sparse/arch/i386/mach-xen/Makefile
rename : linux-2.6-xen-sparse/arch/xen/i386/mm/Makefile => linux-2.6-xen-sparse/arch/i386/mm/Makefile
rename : linux-2.6-xen-sparse/arch/xen/i386/mm/fault.c => linux-2.6-xen-sparse/arch/i386/mm/fault-xen.c
rename : linux-2.6-xen-sparse/arch/xen/i386/mm/highmem.c => linux-2.6-xen-sparse/arch/i386/mm/highmem-xen.c
rename : linux-2.6-xen-sparse/arch/xen/i386/mm/hypervisor.c => linux-2.6-xen-sparse/arch/i386/mm/hypervisor.c
rename : linux-2.6-xen-sparse/arch/xen/i386/mm/init.c => linux-2.6-xen-sparse/arch/i386/mm/init-xen.c
rename : linux-2.6-xen-sparse/arch/xen/i386/mm/ioremap.c => linux-2.6-xen-sparse/arch/i386/mm/ioremap-xen.c
rename : linux-2.6-xen-sparse/arch/xen/i386/mm/pgtable.c => linux-2.6-xen-sparse/arch/i386/mm/pgtable-xen.c
rename : linux-2.6-xen-sparse/arch/xen/i386/pci/Makefile => linux-2.6-xen-sparse/arch/i386/pci/Makefile
rename : linux-2.6-xen-sparse/arch/xen/i386/pci/i386.c => linux-2.6-xen-sparse/arch/i386/pci/i386-xen.c
rename : linux-2.6-xen-sparse/arch/xen/i386/pci/irq.c => linux-2.6-xen-sparse/arch/i386/pci/irq-xen.c
rename : linux-2.6-xen-sparse/arch/xen/x86_64/Kconfig => linux-2.6-xen-sparse/arch/x86_64/Kconfig
rename : linux-2.6-xen-sparse/arch/xen/x86_64/Makefile => linux-2.6-xen-sparse/arch/x86_64/Makefile
rename : linux-2.6-xen-sparse/arch/xen/x86_64/ia32/Makefile => linux-2.6-xen-sparse/arch/x86_64/ia32/Makefile
rename : linux-2.6-xen-sparse/arch/xen/x86_64/ia32/ia32entry.S => linux-2.6-xen-sparse/arch/x86_64/ia32/ia32entry-xen.S
rename : linux-2.6-xen-sparse/arch/xen/x86_64/ia32/syscall32.c => linux-2.6-xen-sparse/arch/x86_64/ia32/syscall32-xen.c
rename : linux-2.6-xen-sparse/arch/xen/x86_64/ia32/vsyscall-int80.S => linux-2.6-xen-sparse/arch/x86_64/ia32/vsyscall-int80.S
rename : linux-2.6-xen-sparse/arch/xen/x86_64/kernel/Makefile => linux-2.6-xen-sparse/arch/x86_64/kernel/Makefile
rename : linux-2.6-xen-sparse/arch/xen/x86_64/kernel/acpi/Makefile => linux-2.6-xen-sparse/arch/x86_64/kernel/acpi/Makefile
rename : linux-2.6-xen-sparse/arch/xen/x86_64/kernel/apic.c => linux-2.6-xen-sparse/arch/x86_64/kernel/apic-xen.c
rename : linux-2.6-xen-sparse/arch/xen/x86_64/kernel/e820.c => linux-2.6-xen-sparse/arch/x86_64/kernel/e820-xen.c
rename : linux-2.6-xen-sparse/arch/xen/x86_64/kernel/early_printk.c => linux-2.6-xen-sparse/arch/x86_64/kernel/early_printk-xen.c
rename : linux-2.6-xen-sparse/arch/xen/x86_64/kernel/entry.S => linux-2.6-xen-sparse/arch/x86_64/kernel/entry-xen.S
rename : linux-2.6-xen-sparse/arch/xen/x86_64/kernel/genapic.c => linux-2.6-xen-sparse/arch/x86_64/kernel/genapic-xen.c
rename : linux-2.6-xen-sparse/arch/xen/x86_64/kernel/genapic_xen.c => linux-2.6-xen-sparse/arch/x86_64/kernel/genapic_xen.c
rename : linux-2.6-xen-sparse/arch/xen/x86_64/kernel/head.S => linux-2.6-xen-sparse/arch/x86_64/kernel/head-xen.S
rename : linux-2.6-xen-sparse/arch/xen/x86_64/kernel/head64.c => linux-2.6-xen-sparse/arch/x86_64/kernel/head64-xen.c
rename : linux-2.6-xen-sparse/arch/xen/x86_64/kernel/io_apic.c => linux-2.6-xen-sparse/arch/x86_64/kernel/io_apic-xen.c
rename : linux-2.6-xen-sparse/arch/xen/x86_64/kernel/ioport.c => linux-2.6-xen-sparse/arch/x86_64/kernel/ioport-xen.c
rename : linux-2.6-xen-sparse/arch/xen/x86_64/kernel/irq.c => linux-2.6-xen-sparse/arch/x86_64/kernel/irq-xen.c
rename : linux-2.6-xen-sparse/arch/xen/x86_64/kernel/ldt.c => linux-2.6-xen-sparse/arch/x86_64/kernel/ldt-xen.c
rename : linux-2.6-xen-sparse/arch/xen/x86_64/kernel/mpparse.c => linux-2.6-xen-sparse/arch/x86_64/kernel/mpparse-xen.c
rename : linux-2.6-xen-sparse/arch/xen/x86_64/kernel/pci-nommu.c => linux-2.6-xen-sparse/arch/x86_64/kernel/pci-nommu-xen.c
rename : linux-2.6-xen-sparse/arch/xen/x86_64/kernel/process.c => linux-2.6-xen-sparse/arch/x86_64/kernel/process-xen.c
rename : linux-2.6-xen-sparse/arch/xen/x86_64/kernel/setup.c => linux-2.6-xen-sparse/arch/x86_64/kernel/setup-xen.c
rename : linux-2.6-xen-sparse/arch/xen/x86_64/kernel/setup64.c => linux-2.6-xen-sparse/arch/x86_64/kernel/setup64-xen.c
rename : linux-2.6-xen-sparse/arch/xen/x86_64/kernel/signal.c => linux-2.6-xen-sparse/arch/x86_64/kernel/signal-xen.c
rename : linux-2.6-xen-sparse/arch/xen/x86_64/kernel/smp.c => linux-2.6-xen-sparse/arch/x86_64/kernel/smp-xen.c
rename : linux-2.6-xen-sparse/arch/xen/x86_64/kernel/traps.c => linux-2.6-xen-sparse/arch/x86_64/kernel/traps-xen.c
rename : linux-2.6-xen-sparse/arch/xen/x86_64/kernel/vsyscall.c => linux-2.6-xen-sparse/arch/x86_64/kernel/vsyscall-xen.c
rename : linux-2.6-xen-sparse/arch/xen/x86_64/kernel/x8664_ksyms.c => linux-2.6-xen-sparse/arch/x86_64/kernel/x8664_ksyms-xen.c
rename : linux-2.6-xen-sparse/arch/xen/x86_64/kernel/xen_entry.S => linux-2.6-xen-sparse/arch/x86_64/kernel/xen_entry.S
rename : linux-2.6-xen-sparse/arch/xen/x86_64/mm/Makefile => linux-2.6-xen-sparse/arch/x86_64/mm/Makefile
rename : linux-2.6-xen-sparse/arch/xen/x86_64/mm/fault.c => linux-2.6-xen-sparse/arch/x86_64/mm/fault-xen.c
rename : linux-2.6-xen-sparse/arch/xen/x86_64/mm/init.c => linux-2.6-xen-sparse/arch/x86_64/mm/init-xen.c
rename : linux-2.6-xen-sparse/arch/xen/x86_64/mm/pageattr.c => linux-2.6-xen-sparse/arch/x86_64/mm/pageattr-xen.c
rename : linux-2.6-xen-sparse/arch/xen/x86_64/pci/Makefile => linux-2.6-xen-sparse/arch/x86_64/pci/Makefile
rename : linux-2.6-xen-sparse/arch/xen/kernel/Makefile => linux-2.6-xen-sparse/drivers/xen/core/Makefile
rename : linux-2.6-xen-sparse/arch/xen/kernel/evtchn.c => linux-2.6-xen-sparse/drivers/xen/core/evtchn.c
rename : linux-2.6-xen-sparse/arch/xen/kernel/features.c => linux-2.6-xen-sparse/drivers/xen/core/features.c
rename : linux-2.6-xen-sparse/arch/xen/kernel/gnttab.c => linux-2.6-xen-sparse/drivers/xen/core/gnttab.c
rename : linux-2.6-xen-sparse/arch/xen/kernel/reboot.c => linux-2.6-xen-sparse/drivers/xen/core/reboot.c
rename : linux-2.6-xen-sparse/arch/xen/kernel/skbuff.c => linux-2.6-xen-sparse/drivers/xen/core/skbuff.c
rename : linux-2.6-xen-sparse/arch/xen/kernel/smpboot.c => linux-2.6-xen-sparse/drivers/xen/core/smpboot.c
rename : linux-2.6-xen-sparse/arch/xen/kernel/xen_proc.c => linux-2.6-xen-sparse/drivers/xen/core/xen_proc.c
rename : linux-2.6-xen-sparse/include/asm-xen/asm-i386/agp.h => linux-2.6-xen-sparse/include/asm-i386/mach-xen/asm/agp.h
rename : linux-2.6-xen-sparse/include/asm-xen/asm-i386/desc.h => linux-2.6-xen-sparse/include/asm-i386/mach-xen/asm/desc.h
rename : linux-2.6-xen-sparse/include/asm-xen/asm-i386/dma-mapping.h => linux-2.6-xen-sparse/include/asm-i386/mach-xen/asm/dma-mapping.h
rename : linux-2.6-xen-sparse/include/asm-xen/asm-i386/fixmap.h => linux-2.6-xen-sparse/include/asm-i386/mach-xen/asm/fixmap.h
rename : linux-2.6-xen-sparse/include/asm-xen/asm-i386/floppy.h => linux-2.6-xen-sparse/include/asm-i386/mach-xen/asm/floppy.h
rename : linux-2.6-xen-sparse/include/asm-xen/asm-i386/highmem.h => linux-2.6-xen-sparse/include/asm-i386/mach-xen/asm/highmem.h
rename : linux-2.6-xen-sparse/include/asm-xen/asm-i386/hw_irq.h => linux-2.6-xen-sparse/include/asm-i386/mach-xen/asm/hw_irq.h
rename : linux-2.6-xen-sparse/include/asm-xen/asm-i386/hypercall.h => linux-2.6-xen-sparse/include/asm-i386/mach-xen/asm/hypercall.h
rename : linux-2.6-xen-sparse/include/asm-xen/asm-i386/hypervisor.h => linux-2.6-xen-sparse/include/asm-i386/mach-xen/asm/hypervisor.h
rename : linux-2.6-xen-sparse/include/asm-xen/asm-i386/io.h => linux-2.6-xen-sparse/include/asm-i386/mach-xen/asm/io.h
rename : linux-2.6-xen-sparse/include/asm-xen/asm-i386/kmap_types.h => linux-2.6-xen-sparse/include/asm-i386/mach-xen/asm/kmap_types.h
rename : linux-2.6-xen-sparse/include/asm-xen/asm-i386/mmu.h => linux-2.6-xen-sparse/include/asm-i386/mach-xen/asm/mmu.h
rename : linux-2.6-xen-sparse/include/asm-xen/asm-i386/mmu_context.h => linux-2.6-xen-sparse/include/asm-i386/mach-xen/asm/mmu_context.h
rename : linux-2.6-xen-sparse/include/asm-xen/asm-i386/page.h => linux-2.6-xen-sparse/include/asm-i386/mach-xen/asm/page.h
rename : linux-2.6-xen-sparse/include/asm-xen/asm-i386/param.h => linux-2.6-xen-sparse/include/asm-i386/mach-xen/asm/param.h
rename : linux-2.6-xen-sparse/include/asm-xen/asm-i386/pci.h => linux-2.6-xen-sparse/include/asm-i386/mach-xen/asm/pci.h
rename : linux-2.6-xen-sparse/include/asm-xen/asm-i386/pgalloc.h => linux-2.6-xen-sparse/include/asm-i386/mach-xen/asm/pgalloc.h
rename : linux-2.6-xen-sparse/include/asm-xen/asm-i386/pgtable-2level-defs.h => linux-2.6-xen-sparse/include/asm-i386/mach-xen/asm/pgtable-2level-defs.h
rename : linux-2.6-xen-sparse/include/asm-xen/asm-i386/pgtable-2level.h => linux-2.6-xen-sparse/include/asm-i386/mach-xen/asm/pgtable-2level.h
rename : linux-2.6-xen-sparse/include/asm-xen/asm-i386/pgtable-3level-defs.h => linux-2.6-xen-sparse/include/asm-i386/mach-xen/asm/pgtable-3level-defs.h
rename : linux-2.6-xen-sparse/include/asm-xen/asm-i386/pgtable-3level.h => linux-2.6-xen-sparse/include/asm-i386/mach-xen/asm/pgtable-3level.h
rename : linux-2.6-xen-sparse/include/asm-xen/asm-i386/pgtable.h => linux-2.6-xen-sparse/include/asm-i386/mach-xen/asm/pgtable.h
rename : linux-2.6-xen-sparse/include/asm-xen/asm-i386/processor.h => linux-2.6-xen-sparse/include/asm-i386/mach-xen/asm/processor.h
rename : linux-2.6-xen-sparse/include/asm-xen/asm-i386/ptrace.h => linux-2.6-xen-sparse/include/asm-i386/mach-xen/asm/ptrace.h
rename : linux-2.6-xen-sparse/include/asm-xen/asm-i386/scatterlist.h => linux-2.6-xen-sparse/include/asm-i386/mach-xen/asm/scatterlist.h
rename : linux-2.6-xen-sparse/include/asm-xen/asm-i386/segment.h => linux-2.6-xen-sparse/include/asm-i386/mach-xen/asm/segment.h
rename : linux-2.6-xen-sparse/include/asm-xen/asm-i386/setup.h => linux-2.6-xen-sparse/include/asm-i386/mach-xen/asm/setup.h
rename : linux-2.6-xen-sparse/include/asm-xen/asm-i386/smp.h => linux-2.6-xen-sparse/include/asm-i386/mach-xen/asm/smp.h
rename : linux-2.6-xen-sparse/include/asm-xen/asm-i386/spinlock.h => linux-2.6-xen-sparse/include/asm-i386/mach-xen/asm/spinlock.h
rename : linux-2.6-xen-sparse/include/asm-xen/asm-i386/swiotlb.h => linux-2.6-xen-sparse/include/asm-i386/mach-xen/asm/swiotlb.h
rename : linux-2.6-xen-sparse/include/asm-xen/asm-i386/synch_bitops.h => linux-2.6-xen-sparse/include/asm-i386/mach-xen/asm/synch_bitops.h
rename : linux-2.6-xen-sparse/include/asm-xen/asm-i386/system.h => linux-2.6-xen-sparse/include/asm-i386/mach-xen/asm/system.h
rename : linux-2.6-xen-sparse/include/asm-xen/asm-i386/tlbflush.h => linux-2.6-xen-sparse/include/asm-i386/mach-xen/asm/tlbflush.h
rename : linux-2.6-xen-sparse/include/asm-xen/asm-i386/vga.h => linux-2.6-xen-sparse/include/asm-i386/mach-xen/asm/vga.h
rename : linux-2.6-xen-sparse/include/asm-xen/asm-i386/mach-xen/irq_vectors.h => linux-2.6-xen-sparse/include/asm-i386/mach-xen/irq_vectors.h
rename : linux-2.6-xen-sparse/include/asm-xen/asm-i386/mach-xen/mach_traps.h => linux-2.6-xen-sparse/include/asm-i386/mach-xen/mach_traps.h
rename : linux-2.6-xen-sparse/include/asm-xen/asm-i386/mach-xen/setup_arch_post.h => linux-2.6-xen-sparse/include/asm-i386/mach-xen/setup_arch_post.h
rename : linux-2.6-xen-sparse/include/asm-xen/asm-i386/mach-xen/setup_arch_pre.h => linux-2.6-xen-sparse/include/asm-i386/mach-xen/setup_arch_pre.h
rename : linux-2.6-xen-sparse/include/asm-xen/asm-ia64/fixmap.h => linux-2.6-xen-sparse/include/asm-ia64/fixmap.h
rename : linux-2.6-xen-sparse/include/asm-xen/asm-ia64/hypercall.h => linux-2.6-xen-sparse/include/asm-ia64/hypercall.h
rename : linux-2.6-xen-sparse/include/asm-xen/asm-ia64/hypervisor.h => linux-2.6-xen-sparse/include/asm-ia64/hypervisor.h
rename : linux-2.6-xen-sparse/include/asm-xen/asm-ia64/synch_bitops.h => linux-2.6-xen-sparse/include/asm-ia64/synch_bitops.h
rename : linux-2.6-xen-sparse/include/asm-xen/asm-x86_64/arch_hooks.h => linux-2.6-xen-sparse/include/asm-x86_64/mach-xen/asm/arch_hooks.h
rename : linux-2.6-xen-sparse/include/asm-xen/asm-x86_64/bootsetup.h => linux-2.6-xen-sparse/include/asm-x86_64/mach-xen/asm/bootsetup.h
rename : linux-2.6-xen-sparse/include/asm-xen/asm-x86_64/desc.h => linux-2.6-xen-sparse/include/asm-x86_64/mach-xen/asm/desc.h
rename : linux-2.6-xen-sparse/include/asm-xen/asm-x86_64/dma-mapping.h => linux-2.6-xen-sparse/include/asm-x86_64/mach-xen/asm/dma-mapping.h
rename : linux-2.6-xen-sparse/include/asm-xen/asm-x86_64/fixmap.h => linux-2.6-xen-sparse/include/asm-x86_64/mach-xen/asm/fixmap.h
rename : linux-2.6-xen-sparse/include/asm-xen/asm-x86_64/floppy.h => linux-2.6-xen-sparse/include/asm-x86_64/mach-xen/asm/floppy.h
rename : linux-2.6-xen-sparse/include/asm-xen/asm-x86_64/hw_irq.h => linux-2.6-xen-sparse/include/asm-x86_64/mach-xen/asm/hw_irq.h
rename : linux-2.6-xen-sparse/include/asm-xen/asm-x86_64/hypercall.h => linux-2.6-xen-sparse/include/asm-x86_64/mach-xen/asm/hypercall.h
rename : linux-2.6-xen-sparse/include/asm-xen/asm-x86_64/hypervisor.h => linux-2.6-xen-sparse/include/asm-x86_64/mach-xen/asm/hypervisor.h
rename : linux-2.6-xen-sparse/include/asm-xen/asm-x86_64/io.h => linux-2.6-xen-sparse/include/asm-x86_64/mach-xen/asm/io.h
rename : linux-2.6-xen-sparse/include/asm-xen/asm-x86_64/irq.h => linux-2.6-xen-sparse/include/asm-x86_64/mach-xen/asm/irq.h
rename : linux-2.6-xen-sparse/include/asm-xen/asm-x86_64/mmu.h => linux-2.6-xen-sparse/include/asm-x86_64/mach-xen/asm/mmu.h
rename : linux-2.6-xen-sparse/include/asm-xen/asm-x86_64/mmu_context.h => linux-2.6-xen-sparse/include/asm-x86_64/mach-xen/asm/mmu_context.h
rename : linux-2.6-xen-sparse/include/asm-xen/asm-x86_64/nmi.h => linux-2.6-xen-sparse/include/asm-x86_64/mach-xen/asm/nmi.h
rename : linux-2.6-xen-sparse/include/asm-xen/asm-x86_64/page.h => linux-2.6-xen-sparse/include/asm-x86_64/mach-xen/asm/page.h
rename : linux-2.6-xen-sparse/include/asm-xen/asm-x86_64/param.h => linux-2.6-xen-sparse/include/asm-x86_64/mach-xen/asm/param.h
rename : linux-2.6-xen-sparse/include/asm-xen/asm-x86_64/pci.h => linux-2.6-xen-sparse/include/asm-x86_64/mach-xen/asm/pci.h
rename : linux-2.6-xen-sparse/include/asm-xen/asm-x86_64/pgalloc.h => linux-2.6-xen-sparse/include/asm-x86_64/mach-xen/asm/pgalloc.h
rename : linux-2.6-xen-sparse/include/asm-xen/asm-x86_64/pgtable.h => linux-2.6-xen-sparse/include/asm-x86_64/mach-xen/asm/pgtable.h
rename : linux-2.6-xen-sparse/include/asm-xen/asm-x86_64/processor.h => linux-2.6-xen-sparse/include/asm-x86_64/mach-xen/asm/processor.h
rename : linux-2.6-xen-sparse/include/asm-xen/asm-x86_64/ptrace.h => linux-2.6-xen-sparse/include/asm-x86_64/mach-xen/asm/ptrace.h
rename : linux-2.6-xen-sparse/include/asm-xen/asm-x86_64/segment.h => linux-2.6-xen-sparse/include/asm-x86_64/mach-xen/asm/segment.h
rename : linux-2.6-xen-sparse/include/asm-xen/asm-x86_64/smp.h => linux-2.6-xen-sparse/include/asm-x86_64/mach-xen/asm/smp.h
rename : linux-2.6-xen-sparse/include/asm-xen/asm-x86_64/synch_bitops.h => linux-2.6-xen-sparse/include/asm-x86_64/mach-xen/asm/synch_bitops.h
rename : linux-2.6-xen-sparse/include/asm-xen/asm-x86_64/system.h => linux-2.6-xen-sparse/include/asm-x86_64/mach-xen/asm/system.h
rename : linux-2.6-xen-sparse/include/asm-xen/asm-x86_64/timer.h => linux-2.6-xen-sparse/include/asm-x86_64/mach-xen/asm/timer.h
rename : linux-2.6-xen-sparse/include/asm-xen/asm-x86_64/tlbflush.h => linux-2.6-xen-sparse/include/asm-x86_64/mach-xen/asm/tlbflush.h
rename : linux-2.6-xen-sparse/include/asm-xen/asm-x86_64/vga.h => linux-2.6-xen-sparse/include/asm-x86_64/mach-xen/asm/vga.h
rename : linux-2.6-xen-sparse/include/asm-xen/asm-x86_64/xor.h => linux-2.6-xen-sparse/include/asm-x86_64/mach-xen/asm/xor.h
rename : linux-2.6-xen-sparse/include/asm-xen/asm-x86_64/mach-xen/io_ports.h => linux-2.6-xen-sparse/include/asm-x86_64/mach-xen/io_ports.h
rename : linux-2.6-xen-sparse/include/asm-xen/asm-x86_64/mach-xen/irq_vectors.h => linux-2.6-xen-sparse/include/asm-x86_64/mach-xen/irq_vectors.h
rename : linux-2.6-xen-sparse/include/asm-xen/asm-x86_64/mach-xen/mach_time.h => linux-2.6-xen-sparse/include/asm-x86_64/mach-xen/mach_time.h
rename : linux-2.6-xen-sparse/include/asm-xen/asm-x86_64/mach-xen/mach_timer.h => linux-2.6-xen-sparse/include/asm-x86_64/mach-xen/mach_timer.h
rename : linux-2.6-xen-sparse/include/asm-xen/asm-x86_64/mach-xen/setup_arch_post.h => linux-2.6-xen-sparse/include/asm-x86_64/mach-xen/setup_arch_post.h
rename : linux-2.6-xen-sparse/include/asm-xen/asm-x86_64/mach-xen/setup_arch_pre.h => linux-2.6-xen-sparse/include/asm-x86_64/mach-xen/setup_arch_pre.h
rename : linux-2.6-xen-sparse/include/asm-xen/balloon.h => linux-2.6-xen-sparse/include/xen/balloon.h
rename : linux-2.6-xen-sparse/include/asm-xen/driver_util.h => linux-2.6-xen-sparse/include/xen/driver_util.h
rename : linux-2.6-xen-sparse/include/asm-xen/evtchn.h => linux-2.6-xen-sparse/include/xen/evtchn.h
rename : linux-2.6-xen-sparse/include/asm-xen/features.h => linux-2.6-xen-sparse/include/xen/features.h
rename : linux-2.6-xen-sparse/include/asm-xen/foreign_page.h => linux-2.6-xen-sparse/include/xen/foreign_page.h
rename : linux-2.6-xen-sparse/include/asm-xen/gnttab.h => linux-2.6-xen-sparse/include/xen/gnttab.h
rename : linux-2.6-xen-sparse/include/asm-xen/net_driver_util.h => linux-2.6-xen-sparse/include/xen/net_driver_util.h
rename : linux-2.6-xen-sparse/include/asm-xen/linux-public/evtchn.h => linux-2.6-xen-sparse/include/xen/public/evtchn.h
rename : linux-2.6-xen-sparse/include/asm-xen/linux-public/privcmd.h => linux-2.6-xen-sparse/include/xen/public/privcmd.h
rename : linux-2.6-xen-sparse/include/asm-xen/tpmfe.h => linux-2.6-xen-sparse/include/xen/tpmfe.h
rename : linux-2.6-xen-sparse/include/asm-xen/xen_proc.h => linux-2.6-xen-sparse/include/xen/xen_proc.h
rename : linux-2.6-xen-sparse/include/asm-xen/xenbus.h => linux-2.6-xen-sparse/include/xen/xenbus.h
rename : linux-2.6-xen-sparse/include/asm-xen/xencons.h => linux-2.6-xen-sparse/include/xen/xencons.h
2006-01-30 17:18:27 +00:00
kaf24@firebug.cl.cam.ac.uk 840b5b5071 Fix 64b build.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-01-30 13:35:43 +01:00
kaf24@firebug.cl.cam.ac.uk 91fe82d9a0 Split XENFEAT_writable_mmu_structures into
XENFEAT_writable_page_tables/XENFEAT_writable_descriptor_tables.

Name the make_readonly/writable functions back to their old
names, and they now accept a feature flag that they test
before performing their operation.

Signed-off-by: Keir Fraser <keir@xensource.com>
2006-01-30 12:49:31 +01:00
kaf24@firebug.cl.cam.ac.uk 12ae09506e Export the hypercall_page symbol to modules, otherwise they
cannot be loaded.

Signed-off-by: Keir Fraser <keir@xensource.com>
2006-01-29 10:49:38 +01:00
kaf24@firebug.cl.cam.ac.uk 901b108e27 Remove shadow-translate Linux patches for now. We'll merge this stuff
in piecemeal.

Signed-off-by: Keir Fraser <keir@xensource.com>
2006-01-28 12:09:45 +01:00
sos22@douglas.cl.cam.ac.uk 3c66de8cb2 Fix build.
Signed-off-by: Steven Smith, sos22@cam.ac.uk
2006-01-28 11:09:18 +01:00
sos22@douglas.cl.cam.ac.uk a62bc811fe Merge.
Signed-off-by: Steven Smith, sos22@cam.ac.uk
2006-01-27 22:18:15 +01:00
sos22@douglas.cl.cam.ac.uk f674d6427f Turn down debug a bit, and generally tidy hings up a little.
Signed-off-by: Steven Smith, sos22@cam.ac.uk
2006-01-27 21:57:07 +01:00
sos22@douglas.cl.cam.ac.uk 11556202e4 Merge up and generally make shadow mode be nice.
Signed-off-by: Steven Smith, sos22@cam.ac.uk
2006-01-27 21:23:06 +01:00
Ian.Campbell@xensource.com da322cd0dd Checkin missing hunks from previous commit
Signed-off-by: Ian Campbell <Ian.Campbell@XenSource.com>
2006-01-27 14:24:50 +00:00
Ian.Campbell@xensource.com 5429c5d16e merge 2006-01-27 11:51:57 +00:00
kaf24@firebug.cl.cam.ac.uk 6f8668f572 New memory hypercall 'populate_physmap'. Accepts a list of
pseudophys frame numbers to be populated with memory.

Signed-off-by: Keir Fraser <keir@xensource.com>
2006-01-27 12:49:47 +01:00
kaf24@firebug.cl.cam.ac.uk 12f38d5421 Need to include module.h to get EXPORT_SYMBOL macros.
Export xen driver util functions with GPL tag.

Signed-off-by: Keir Fraser <keir@xensource.com>
2006-01-27 12:48:32 +01:00
Ian.Campbell@xensource.com 18acd247df Introduce XENFEAT_writable_mmu_structures.
This feature flag indicates to the guest that it is allowable to
use writable LDT, GDT and page table pages.

Signed-off-by: Ian Campbell <Ian.Campbell@XenSource.com>
Index: xen-features/xen/include/public/version.h
===================================================================
--- xen-features.orig/xen/include/public/version.h	2006-01-27 11:27:14.000000000 +0000
+++ xen-features/xen/include/public/version.h	2006-01-27 11:27:14.000000000 +0000
@@ -45,6 +45,9 @@
     uint32_t     submap;        /* OUT: 32-bit submap */
 } xen_feature_info_t;

+#define _XENFEAT_writable_mmu_structures 0
+#define XENFEAT_writable_mmu_structures (1UL<<_XENFEAT_writable_mmu_structures)
+
 #define XENFEAT_NR_SUBMAPS 1

 #endif /* __XEN_PUBLIC_VERSION_H__ */
Index: xen-features/linux-2.6-xen-sparse/arch/xen/i386/mm/pgtable.c
===================================================================
--- xen-features.orig/linux-2.6-xen-sparse/arch/xen/i386/mm/pgtable.c	2006-01-27 11:27:14.000000000 +0000
+++ xen-features/linux-2.6-xen-sparse/arch/xen/i386/mm/pgtable.c	2006-01-27 11:27:14.000000000 +0000
@@ -24,6 +24,7 @@
 #include <asm/io.h>
 #include <asm/mmu_context.h>

+#include <asm-xen/features.h>
 #include <asm-xen/foreign_page.h>
 #include <asm/hypervisor.h>

@@ -391,24 +392,42 @@
 #ifndef CONFIG_XEN_SHADOW_MODE
 void make_lowmem_mmu_page_readonly(void *va)
 {
-	pte_t *pte = virt_to_ptep(va);
-	int rc = HYPERVISOR_update_va_mapping(
+	pte_t *pte;
+	int rc;
+
+	if (xen_feature(writable_mmu_structures))
+		return;
+
+	pte = virt_to_ptep(va);
+	rc = HYPERVISOR_update_va_mapping(
 		(unsigned long)va, pte_wrprotect(*pte), 0);
 	BUG_ON(rc);
 }

 void make_lowmem_mmu_page_writable(void *va)
 {
-	pte_t *pte = virt_to_ptep(va);
-	int rc = HYPERVISOR_update_va_mapping(
+	pte_t *pte;
+	int rc;
+
+	if (xen_feature(writable_mmu_structures))
+		return;
+
+	pte = virt_to_ptep(va);
+	rc = HYPERVISOR_update_va_mapping(
 		(unsigned long)va, pte_mkwrite(*pte), 0);
 	BUG_ON(rc);
 }

 void make_mmu_page_readonly(void *va)
 {
-	pte_t *pte = virt_to_ptep(va);
-	int rc = HYPERVISOR_update_va_mapping(
+	pte_t *pte;
+	int rc;
+
+	if (xen_feature(writable_mmu_structures))
+		return;
+
+	pte = virt_to_ptep(va);
+	rc = HYPERVISOR_update_va_mapping(
 		(unsigned long)va, pte_wrprotect(*pte), 0);
 	if (rc) /* fallback? */
 		xen_l1_entry_update(pte, pte_wrprotect(*pte));
@@ -426,8 +445,14 @@

 void make_mmu_page_writable(void *va)
 {
-	pte_t *pte = virt_to_ptep(va);
-	int rc = HYPERVISOR_update_va_mapping(
+	pte_t *pte;
+	int rc;
+
+	if (xen_feature(writable_mmu_structures))
+		return;
+
+	pte = virt_to_ptep(va);
+	rc = HYPERVISOR_update_va_mapping(
 		(unsigned long)va, pte_mkwrite(*pte), 0);
 	if (rc) /* fallback? */
 		xen_l1_entry_update(pte, pte_mkwrite(*pte));
@@ -443,6 +468,9 @@

 void make_mmu_pages_readonly(void *va, unsigned int nr)
 {
+	if (xen_feature(writable_mmu_structures))
+		return;
+
 	while (nr-- != 0) {
 		make_mmu_page_readonly(va);
 		va = (void *)((unsigned long)va + PAGE_SIZE);
@@ -451,6 +479,8 @@

 void make_mmu_pages_writable(void *va, unsigned int nr)
 {
+	if (xen_feature(writable_mmu_structures))
+		return;
 	while (nr-- != 0) {
 		make_mmu_page_writable(va);
 		va = (void *)((unsigned long)va + PAGE_SIZE);
Index: xen-features/linux-2.6-xen-sparse/arch/xen/x86_64/mm/init.c
===================================================================
--- xen-features.orig/linux-2.6-xen-sparse/arch/xen/x86_64/mm/init.c	2006-01-27 11:27:14.000000000 +0000
+++ xen-features/linux-2.6-xen-sparse/arch/xen/x86_64/mm/init.c	2006-01-27 11:27:18.000000000 +0000
@@ -40,6 +40,8 @@
 #include <asm/proto.h>
 #include <asm/smp.h>

+#include <asm-xen/features.h>
+
 #ifndef Dprintk
 #define Dprintk(x...)
 #endif
@@ -72,6 +74,9 @@
 	pte_t pte, *ptep;
 	unsigned long *page = (unsigned long *) init_level4_pgt;

+	if (xen_feature(writable_mmu_structures))
+		return;
+
 	addr = (unsigned long) page[pgd_index(_va)];
 	addr_to_page(addr, page);

@@ -93,6 +98,9 @@
 	pgd_t *pgd; pud_t *pud; pmd_t *pmd; pte_t pte, *ptep;
 	unsigned long addr = (unsigned long) va;

+	if (xen_feature(writable_mmu_structures))
+		return;
+
 	pgd = pgd_offset_k(addr);
 	pud = pud_offset(pgd, addr);
 	pmd = pmd_offset(pud, addr);
@@ -111,6 +119,9 @@
 	pgd_t *pgd; pud_t *pud; pmd_t *pmd; pte_t pte, *ptep;
 	unsigned long addr = (unsigned long) va;

+	if (xen_feature(writable_mmu_structures))
+		return;
+
 	pgd = pgd_offset_k(addr);
 	pud = pud_offset(pgd, addr);
 	pmd = pmd_offset(pud, addr);
@@ -126,6 +137,9 @@

 void make_mmu_pages_readonly(void *va, unsigned nr)
 {
+	if (xen_feature(writable_mmu_structures))
+		return;
+
 	while (nr-- != 0) {
 		make_mmu_page_readonly(va);
 		va = (void*)((unsigned long)va + PAGE_SIZE);
@@ -134,6 +148,8 @@

 void make_mmu_pages_writable(void *va, unsigned nr)
 {
+	if (xen_feature(writable_mmu_structures))
+		return;
 	while (nr-- != 0) {
 		make_mmu_page_writable(va);
 		va = (void*)((unsigned long)va + PAGE_SIZE);
@@ -385,6 +401,9 @@
 {
 	int readonly = 0;

+	if (xen_feature(writable_mmu_structures))
+		return 0;
+
 	/* Make old and new page tables read-only. */
 	if ((paddr >= (xen_start_info->pt_base - __START_KERNEL_map))
 	    && (paddr < ((table_start << PAGE_SHIFT) + tables_space)))
2006-01-27 11:31:14 +00:00
Ian.Campbell@xensource.com bcec3ef0dd Add XENVER_get_features sub-operation to HYPERVISOR_xen_version.
This operation allows a guest OS to determine which features are
supported by the running version of Xen. This changeset contains the
base infrastructure but does not implement any features yet.

Signed-off-by: Ian Campbell <Ian.Campbell@XenSource.com>
Index: xen-features/linux-2.6-xen-sparse/arch/xen/i386/kernel/setup.c
===================================================================
--- xen-features.orig/linux-2.6-xen-sparse/arch/xen/i386/kernel/setup.c	2006-01-27 11:13:22.000000000 +0000
+++ xen-features/linux-2.6-xen-sparse/arch/xen/i386/kernel/setup.c	2006-01-27 11:27:14.000000000 +0000
@@ -56,6 +56,7 @@
 #include <asm/hypervisor.h>
 #include <asm-xen/xen-public/physdev.h>
 #include <asm-xen/xen-public/memory.h>
+#include <asm-xen/features.h>
 #include "setup_arch_pre.h"
 #include <bios_ebda.h>

@@ -1591,6 +1592,9 @@
 	rd_prompt = ((RAMDISK_FLAGS & RAMDISK_PROMPT_FLAG) != 0);
 	rd_doload = ((RAMDISK_FLAGS & RAMDISK_LOAD_FLAG) != 0);
 #endif
+
+	setup_xen_features();
+
 	ARCH_SETUP
 	if (efi_enabled)
 		efi_init();
Index: xen-features/linux-2.6-xen-sparse/arch/xen/x86_64/kernel/setup.c
===================================================================
--- xen-features.orig/linux-2.6-xen-sparse/arch/xen/x86_64/kernel/setup.c	2006-01-27 11:13:22.000000000 +0000
+++ xen-features/linux-2.6-xen-sparse/arch/xen/x86_64/kernel/setup.c	2006-01-27 11:27:14.000000000 +0000
@@ -63,6 +63,7 @@
 #include "setup_arch_pre.h"
 #include <asm/hypervisor.h>
 #include <asm-xen/xen-public/nmi.h>
+#include <asm-xen/features.h>
 #define PFN_UP(x)       (((x) + PAGE_SIZE-1) >> PAGE_SHIFT)
 #define PFN_PHYS(x)     ((x) << PAGE_SHIFT)
 #define end_pfn_map end_pfn
@@ -587,6 +588,8 @@

 #endif

+	setup_xen_features();
+
 	HYPERVISOR_vm_assist(VMASST_CMD_enable,
 			     VMASST_TYPE_writable_pagetables);

Index: xen-features/linux-2.6-xen-sparse/include/asm-xen/features.h
===================================================================
--- /dev/null	1970-01-01 00:00:00.000000000 +0000
+++ xen-features/linux-2.6-xen-sparse/include/asm-xen/features.h	2006-01-27 11:27:14.000000000 +0000
@@ -0,0 +1,20 @@
+/******************************************************************************
+ * features.h
+ *
+ * Query the features reported by Xen.
+ *
+ * Copyright (c) 2006, Ian Campbell
+ */
+
+#ifndef __ASM_XEN_FEATURES_H__
+#define __ASM_XEN_FEATURES_H__
+
+#include <asm-xen/xen-public/version.h>
+
+extern void setup_xen_features(void);
+
+extern unsigned long xen_features[XENFEAT_NR_SUBMAPS];
+
+#define xen_feature(flag)	(test_bit(_XENFEAT_ ## flag, xen_features))
+
+#endif
Index: xen-features/xen/common/kernel.c
===================================================================
--- xen-features.orig/xen/common/kernel.c	2006-01-27 11:13:22.000000000 +0000
+++ xen-features/xen/common/kernel.c	2006-01-27 11:27:34.000000000 +0000
@@ -144,6 +144,28 @@
             return -EFAULT;
         return 0;
     }
+
+    case XENVER_get_features:
+    {
+        xen_feature_info_t fi;
+
+        if ( copy_from_user(&fi, arg, sizeof(fi)) )
+            return -EFAULT;
+
+        switch ( fi.submap_idx )
+        {
+        case 0:
+            fi.submap = 0;
+            break;
+        default:
+            return -EINVAL;
+        }
+
+        if ( copy_to_user(arg, &fi, sizeof(fi)) )
+            return -EFAULT;
+        return 0;
+    }
+
     }

     return -ENOSYS;
Index: xen-features/xen/include/public/version.h
===================================================================
--- xen-features.orig/xen/include/public/version.h	2006-01-27 11:13:22.000000000 +0000
+++ xen-features/xen/include/public/version.h	2006-01-27 11:27:22.000000000 +0000
@@ -39,6 +39,14 @@
     unsigned long virt_start;
 } xen_platform_parameters_t;

+#define XENVER_get_features 6
+typedef struct xen_feature_info {
+    unsigned int submap_idx;    /* IN: which 32-bit submap to return */
+    uint32_t     submap;        /* OUT: 32-bit submap */
+} xen_feature_info_t;
+
+#define XENFEAT_NR_SUBMAPS 1
+
 #endif /* __XEN_PUBLIC_VERSION_H__ */

 /*
Index: xen-features/linux-2.6-xen-sparse/arch/xen/kernel/features.c
===================================================================
--- /dev/null	1970-01-01 00:00:00.000000000 +0000
+++ xen-features/linux-2.6-xen-sparse/arch/xen/kernel/features.c	2006-01-27 11:27:14.000000000 +0000
@@ -0,0 +1,29 @@
+/******************************************************************************
+ * features.c
+ *
+ * Xen feature flags.
+ *
+ * Copyright (c) 2006, Ian Campbell
+ */
+#include <linux/types.h>
+#include <linux/cache.h>
+#include <asm/hypervisor.h>
+#include <asm-xen/features.h>
+
+/* When we rebase to a more recent version of Linux we can use __read_mostly here. */
+unsigned long xen_features[XENFEAT_NR_SUBMAPS] __cacheline_aligned;
+
+void setup_xen_features(void)
+{
+     uint32_t *flags = (uint32_t *)&xen_features[0];
+     xen_feature_info_t fi;
+     int i;
+
+     for (i=0; i<XENFEAT_NR_SUBMAPS; i++) {
+	  fi.submap_idx = i;
+	  if (HYPERVISOR_xen_version(XENVER_get_features, &fi) < 0)
+	       break;
+	  flags[i] = fi.submap;
+     }
+}
+
2006-01-27 11:31:12 +00:00
Ian.Campbell@xensource.com 469a31e7be Rename funtions
early_make_page_readonly()	(x86/64)
    make_lowmem_page_readonly() (x86/32)
    make_page_readonly() 	(x86)
    make_pages_readonly() 	(x86)
    make_page_writable()	(x86)
    make_pages_writable()	(x86)
to
    early_make_mmu_page_readonly()
    make_lowmem_mmu_page_readonly()
    make_mmu_page_readonly()
    make_mmu_pages_readonly()
    make_mmu_page_writable()
    make_mmu_pages_writable()

These functions are only called by LDT, GDT or page table page
construction, initialisation and destruction functions and in the
future they will behave in a MMU page specific manner.

Signed-off-by: Ian Campbell <Ian.Campbell@XenSource.com>
Index: xen-features/linux-2.6-xen-sparse/include/asm-xen/asm-i386/pgtable.h
===================================================================
--- xen-features.orig/linux-2.6-xen-sparse/include/asm-xen/asm-i386/pgtable.h	2006-01-27 10:18:17.000000000 +0000
+++ xen-features/linux-2.6-xen-sparse/include/asm-xen/asm-i386/pgtable.h	2006-01-27 10:56:59.000000000 +0000
@@ -413,19 +413,19 @@
 } while (0)

 #ifndef CONFIG_XEN_SHADOW_MODE
-void make_lowmem_page_readonly(void *va);
-void make_lowmem_page_writable(void *va);
-void make_page_readonly(void *va);
-void make_page_writable(void *va);
-void make_pages_readonly(void *va, unsigned int nr);
-void make_pages_writable(void *va, unsigned int nr);
+void make_lowmem_mmu_page_readonly(void *va);
+void make_lowmem_mmu_page_writable(void *va);
+void make_mmu_page_readonly(void *va);
+void make_mmu_page_writable(void *va);
+void make_mmu_pages_readonly(void *va, unsigned int nr);
+void make_mmu_pages_writable(void *va, unsigned int nr);
 #else
-#define make_lowmem_page_readonly(_va) ((void)0)
-#define make_lowmem_page_writable(_va) ((void)0)
-#define make_page_readonly(_va)        ((void)0)
-#define make_page_writable(_va)        ((void)0)
-#define make_pages_readonly(_va, _nr)  ((void)0)
-#define make_pages_writable(_va, _nr)  ((void)0)
+#define make_lowmem_mmu_page_readonly(_va) ((void)0)
+#define make_lowmem_mmu_page_writable(_va)     ((void)0)
+#define make_mmu_page_readonly(_va)        ((void)0)
+#define make_mmu_page_writable(_va)            ((void)0)
+#define make_mmu_pages_readonly(_va, _nr)  ((void)0)
+#define make_mmu_pages_writable(_va, _nr)      ((void)0)
 #endif

 #define virt_to_ptep(__va)						\
Index: xen-features/linux-2.6-xen-sparse/arch/xen/i386/kernel/cpu/common.c
===================================================================
--- xen-features.orig/linux-2.6-xen-sparse/arch/xen/i386/kernel/cpu/common.c	2006-01-27 10:18:17.000000000 +0000
+++ xen-features/linux-2.6-xen-sparse/arch/xen/i386/kernel/cpu/common.c	2006-01-27 10:18:19.000000000 +0000
@@ -572,7 +572,7 @@
 	     va < gdt_descr->address + gdt_descr->size;
 	     va += PAGE_SIZE, f++) {
 		frames[f] = virt_to_mfn(va);
-		make_lowmem_page_readonly((void *)va);
+		make_lowmem_mmu_page_readonly((void *)va);
 	}
 	if (HYPERVISOR_set_gdt(frames, gdt_descr->size / 8))
 		BUG();
Index: xen-features/linux-2.6-xen-sparse/arch/xen/i386/kernel/ldt.c
===================================================================
--- xen-features.orig/linux-2.6-xen-sparse/arch/xen/i386/kernel/ldt.c	2006-01-27 10:18:17.000000000 +0000
+++ xen-features/linux-2.6-xen-sparse/arch/xen/i386/kernel/ldt.c	2006-01-27 10:56:59.000000000 +0000
@@ -59,8 +59,8 @@
 		cpumask_t mask;
 		preempt_disable();
 #endif
-		make_pages_readonly(pc->ldt, (pc->size * LDT_ENTRY_SIZE) /
-				    PAGE_SIZE);
+		make_mmu_pages_readonly(pc->ldt, (pc->size * LDT_ENTRY_SIZE) /
+					PAGE_SIZE);
 		load_LDT(pc);
 #ifdef CONFIG_SMP
 		mask = cpumask_of_cpu(smp_processor_id());
@@ -70,7 +70,7 @@
 #endif
 	}
 	if (oldsize) {
-		make_pages_writable(oldldt, (oldsize * LDT_ENTRY_SIZE) /
+		make_mmu_pages_writable(oldldt, (oldsize * LDT_ENTRY_SIZE) /
 			PAGE_SIZE);
 		if (oldsize*LDT_ENTRY_SIZE > PAGE_SIZE)
 			vfree(oldldt);
@@ -86,8 +86,8 @@
 	if (err < 0)
 		return err;
 	memcpy(new->ldt, old->ldt, old->size*LDT_ENTRY_SIZE);
-	make_pages_readonly(new->ldt, (new->size * LDT_ENTRY_SIZE) /
-			    PAGE_SIZE);
+	make_mmu_pages_readonly(new->ldt, (new->size * LDT_ENTRY_SIZE) /
+				PAGE_SIZE);
 	return 0;
 }

@@ -119,9 +119,9 @@
 	if (mm->context.size) {
 		if (mm == current->active_mm)
 			clear_LDT();
-		make_pages_writable(mm->context.ldt,
-				    (mm->context.size * LDT_ENTRY_SIZE) /
-				    PAGE_SIZE);
+		make_mmu_pages_writable(mm->context.ldt,
+					(mm->context.size * LDT_ENTRY_SIZE) /
+					PAGE_SIZE);
 		if (mm->context.size*LDT_ENTRY_SIZE > PAGE_SIZE)
 			vfree(mm->context.ldt);
 		else
Index: xen-features/linux-2.6-xen-sparse/arch/xen/i386/mm/init.c
===================================================================
--- xen-features.orig/linux-2.6-xen-sparse/arch/xen/i386/mm/init.c	2006-01-27 10:18:17.000000000 +0000
+++ xen-features/linux-2.6-xen-sparse/arch/xen/i386/mm/init.c	2006-01-27 10:18:19.000000000 +0000
@@ -68,7 +68,7 @@

 #ifdef CONFIG_X86_PAE
 	pmd_table = (pmd_t *) alloc_bootmem_low_pages(PAGE_SIZE);
-	make_lowmem_page_readonly(pmd_table);
+	make_lowmem_mmu_page_readonly(pmd_table);
 	set_pgd(pgd, __pgd(__pa(pmd_table) | _PAGE_PRESENT));
 	pud = pud_offset(pgd, 0);
 	if (pmd_table != pmd_offset(pud, 0))
@@ -89,7 +89,7 @@
 {
 	if (pmd_none(*pmd)) {
 		pte_t *page_table = (pte_t *) alloc_bootmem_low_pages(PAGE_SIZE);
-		make_lowmem_page_readonly(page_table);
+		make_lowmem_mmu_page_readonly(page_table);
 		set_pmd(pmd, __pmd(__pa(page_table) | _PAGE_TABLE));
 		if (page_table != pte_offset_kernel(pmd, 0))
 			BUG();
Index: xen-features/linux-2.6-xen-sparse/arch/xen/i386/mm/pgtable.c
===================================================================
--- xen-features.orig/linux-2.6-xen-sparse/arch/xen/i386/mm/pgtable.c	2006-01-27 10:18:17.000000000 +0000
+++ xen-features/linux-2.6-xen-sparse/arch/xen/i386/mm/pgtable.c	2006-01-27 11:01:11.000000000 +0000
@@ -198,7 +198,7 @@
 {
 	pte_t *pte = (pte_t *)__get_free_page(GFP_KERNEL|__GFP_REPEAT|__GFP_ZERO);
 	if (pte)
-		make_lowmem_page_readonly(pte);
+		make_lowmem_mmu_page_readonly(pte);
 	return pte;
 }

@@ -344,7 +344,7 @@
 			pmd_t *kpmd = pmd_offset(kpud, v);
 			pmd_t *pmd = (void *)__va(pgd_val(pgd[i])-1);
 			memcpy(pmd, kpmd, PAGE_SIZE);
-			make_lowmem_page_readonly(pmd);
+			make_lowmem_mmu_page_readonly(pmd);
 		}
 		pgd_list_add(pgd);
 		spin_unlock_irqrestore(&pgd_lock, flags);
@@ -378,7 +378,7 @@
 			spin_unlock_irqrestore(&pgd_lock, flags);
 			for (i = USER_PTRS_PER_PGD; i < PTRS_PER_PGD; i++) {
 				pmd_t *pmd = (void *)__va(pgd_val(pgd[i])-1);
-				make_lowmem_page_writable(pmd);
+				make_lowmem_mmu_page_writable(pmd);
 				memset(pmd, 0, PTRS_PER_PMD*sizeof(pmd_t));
 				kmem_cache_free(pmd_cache, pmd);
 			}
@@ -389,7 +389,7 @@
 }

 #ifndef CONFIG_XEN_SHADOW_MODE
-void make_lowmem_page_readonly(void *va)
+void make_lowmem_mmu_page_readonly(void *va)
 {
 	pte_t *pte = virt_to_ptep(va);
 	int rc = HYPERVISOR_update_va_mapping(
@@ -397,7 +397,7 @@
 	BUG_ON(rc);
 }

-void make_lowmem_page_writable(void *va)
+void make_lowmem_mmu_page_writable(void *va)
 {
 	pte_t *pte = virt_to_ptep(va);
 	int rc = HYPERVISOR_update_va_mapping(
@@ -405,7 +405,7 @@
 	BUG_ON(rc);
 }

-void make_page_readonly(void *va)
+void make_mmu_page_readonly(void *va)
 {
 	pte_t *pte = virt_to_ptep(va);
 	int rc = HYPERVISOR_update_va_mapping(
@@ -419,12 +419,12 @@
 			kmap_flush_unused(); /* flush stale writable kmaps */
 		else
 #endif
-			make_lowmem_page_readonly(
+			make_lowmem_mmu_page_readonly(
 				phys_to_virt(pfn << PAGE_SHIFT));
 	}
 }

-void make_page_writable(void *va)
+void make_mmu_page_writable(void *va)
 {
 	pte_t *pte = virt_to_ptep(va);
 	int rc = HYPERVISOR_update_va_mapping(
@@ -436,23 +436,23 @@
 #ifdef CONFIG_HIGHMEM
 		if (pfn < highstart_pfn)
 #endif
-			make_lowmem_page_writable(
+			make_lowmem_mmu_page_writable(
 				phys_to_virt(pfn << PAGE_SHIFT));
 	}
 }

-void make_pages_readonly(void *va, unsigned int nr)
+void make_mmu_pages_readonly(void *va, unsigned int nr)
 {
 	while (nr-- != 0) {
-		make_page_readonly(va);
+		make_mmu_page_readonly(va);
 		va = (void *)((unsigned long)va + PAGE_SIZE);
 	}
 }

-void make_pages_writable(void *va, unsigned int nr)
+void make_mmu_pages_writable(void *va, unsigned int nr)
 {
 	while (nr-- != 0) {
-		make_page_writable(va);
+		make_mmu_page_writable(va);
 		va = (void *)((unsigned long)va + PAGE_SIZE);
 	}
 }
Index: xen-features/linux-2.6-xen-sparse/arch/xen/kernel/smpboot.c
===================================================================
--- xen-features.orig/linux-2.6-xen-sparse/arch/xen/kernel/smpboot.c	2006-01-27 10:18:17.000000000 +0000
+++ xen-features/linux-2.6-xen-sparse/arch/xen/kernel/smpboot.c	2006-01-27 10:18:19.000000000 +0000
@@ -239,7 +239,7 @@
 		memcpy((void *)cpu_gdt_descr[cpu].address,
 		       (void *)cpu_gdt_descr[0].address,
 		       cpu_gdt_descr[0].size);
-		make_page_readonly((void *)cpu_gdt_descr[cpu].address);
+		make_mmu_page_readonly((void *)cpu_gdt_descr[cpu].address);

 		cpu_set(cpu, cpu_possible_map);
 #ifdef CONFIG_HOTPLUG_CPU
Index: xen-features/linux-2.6-xen-sparse/arch/xen/x86_64/kernel/ldt.c
===================================================================
--- xen-features.orig/linux-2.6-xen-sparse/arch/xen/x86_64/kernel/ldt.c	2006-01-27 10:18:17.000000000 +0000
+++ xen-features/linux-2.6-xen-sparse/arch/xen/x86_64/kernel/ldt.c	2006-01-27 10:56:59.000000000 +0000
@@ -65,8 +65,8 @@

 		preempt_disable();
 #endif
-		make_pages_readonly(pc->ldt, (pc->size * LDT_ENTRY_SIZE) /
-				    PAGE_SIZE);
+		make_mmu_pages_readonly(pc->ldt, (pc->size * LDT_ENTRY_SIZE) /
+					PAGE_SIZE);
 		load_LDT(pc);
 #ifdef CONFIG_SMP
 		mask = cpumask_of_cpu(smp_processor_id());
@@ -76,7 +76,7 @@
 #endif
 	}
 	if (oldsize) {
-		make_pages_writable(oldldt, (oldsize * LDT_ENTRY_SIZE) /
+		make_mmu_pages_writable(oldldt, (oldsize * LDT_ENTRY_SIZE) /
 			PAGE_SIZE);
 		if (oldsize*LDT_ENTRY_SIZE > PAGE_SIZE)
 			vfree(oldldt);
@@ -92,8 +92,8 @@
 	if (err < 0)
 		return err;
 	memcpy(new->ldt, old->ldt, old->size*LDT_ENTRY_SIZE);
-	make_pages_readonly(new->ldt, (new->size * LDT_ENTRY_SIZE) /
-			    PAGE_SIZE);
+	make_mmu_pages_readonly(new->ldt, (new->size * LDT_ENTRY_SIZE) /
+				PAGE_SIZE);
 	return 0;
 }

@@ -131,9 +131,9 @@
 	if (mm->context.size) {
 		if (mm == current->active_mm)
 			clear_LDT();
-		make_pages_writable(mm->context.ldt,
-				    (mm->context.size * LDT_ENTRY_SIZE) /
-				    PAGE_SIZE);
+		make_mmu_pages_writable(mm->context.ldt,
+					(mm->context.size * LDT_ENTRY_SIZE) /
+					PAGE_SIZE);
 		if (mm->context.size*LDT_ENTRY_SIZE > PAGE_SIZE)
 			vfree(mm->context.ldt);
 		else
Index: xen-features/linux-2.6-xen-sparse/arch/xen/x86_64/kernel/setup64.c
===================================================================
--- xen-features.orig/linux-2.6-xen-sparse/arch/xen/x86_64/kernel/setup64.c	2006-01-27 10:18:17.000000000 +0000
+++ xen-features/linux-2.6-xen-sparse/arch/xen/x86_64/kernel/setup64.c	2006-01-27 10:18:19.000000000 +0000
@@ -141,7 +141,7 @@
 	     va < gdt_descr->address + gdt_descr->size;
 	     va += PAGE_SIZE, f++) {
 		frames[f] = virt_to_mfn(va);
-		make_page_readonly((void *)va);
+		make_mmu_page_readonly((void *)va);
 	}
 	if (HYPERVISOR_set_gdt(frames, gdt_descr->size /
                                sizeof (struct desc_struct)))
Index: xen-features/linux-2.6-xen-sparse/arch/xen/x86_64/mm/init.c
===================================================================
--- xen-features.orig/linux-2.6-xen-sparse/arch/xen/x86_64/mm/init.c	2006-01-27 10:18:17.000000000 +0000
+++ xen-features/linux-2.6-xen-sparse/arch/xen/x86_64/mm/init.c	2006-01-27 11:01:11.000000000 +0000
@@ -66,7 +66,7 @@
 	(((mfn_to_pfn((addr) >> PAGE_SHIFT)) << PAGE_SHIFT) +	\
 	__START_KERNEL_map)))

-static void early_make_page_readonly(void *va)
+static void early_make_mmu_page_readonly(void *va)
 {
 	unsigned long addr, _va = (unsigned long)va;
 	pte_t pte, *ptep;
@@ -88,7 +88,7 @@
 		BUG();
 }

-void make_page_readonly(void *va)
+void make_mmu_page_readonly(void *va)
 {
 	pgd_t *pgd; pud_t *pud; pmd_t *pmd; pte_t pte, *ptep;
 	unsigned long addr = (unsigned long) va;
@@ -103,10 +103,10 @@
 		xen_l1_entry_update(ptep, pte); /* fallback */

 	if ((addr >= VMALLOC_START) && (addr < VMALLOC_END))
-		make_page_readonly(__va(pte_pfn(pte) << PAGE_SHIFT));
+		make_mmu_page_readonly(__va(pte_pfn(pte) << PAGE_SHIFT));
 }

-void make_page_writable(void *va)
+void make_mmu_page_writable(void *va)
 {
 	pgd_t *pgd; pud_t *pud; pmd_t *pmd; pte_t pte, *ptep;
 	unsigned long addr = (unsigned long) va;
@@ -121,21 +121,21 @@
 		xen_l1_entry_update(ptep, pte); /* fallback */

 	if ((addr >= VMALLOC_START) && (addr < VMALLOC_END))
-		make_page_writable(__va(pte_pfn(pte) << PAGE_SHIFT));
+		make_mmu_page_writable(__va(pte_pfn(pte) << PAGE_SHIFT));
 }

-void make_pages_readonly(void *va, unsigned nr)
+void make_mmu_pages_readonly(void *va, unsigned nr)
 {
 	while (nr-- != 0) {
-		make_page_readonly(va);
+		make_mmu_page_readonly(va);
 		va = (void*)((unsigned long)va + PAGE_SIZE);
 	}
 }

-void make_pages_writable(void *va, unsigned nr)
+void make_mmu_pages_writable(void *va, unsigned nr)
 {
 	while (nr-- != 0) {
-		make_page_writable(va);
+		make_mmu_page_writable(va);
 		va = (void*)((unsigned long)va + PAGE_SIZE);
 	}
 }
@@ -223,7 +223,7 @@
 	pud = (user_mode ? pud_offset_u(vaddr) : pud_offset(pgd, vaddr));
 	if (pud_none(*pud)) {
 		pmd = (pmd_t *) spp_getpage();
-		make_page_readonly(pmd);
+		make_mmu_page_readonly(pmd);
 		xen_pmd_pin(__pa(pmd));
 		set_pud(pud, __pud(__pa(pmd) | _KERNPG_TABLE | _PAGE_USER));
 		if (pmd != pmd_offset(pud, 0)) {
@@ -234,7 +234,7 @@
 	pmd = pmd_offset(pud, vaddr);
 	if (pmd_none(*pmd)) {
 		pte = (pte_t *) spp_getpage();
-		make_page_readonly(pte);
+		make_mmu_page_readonly(pte);
 		xen_pte_pin(__pa(pte));
 		set_pmd(pmd, __pmd(__pa(pte) | _KERNPG_TABLE | _PAGE_USER));
 		if (pte != pte_offset_kernel(pmd, 0)) {
@@ -276,7 +276,7 @@
 	if (pud_none(*pud)) {

 		pmd = (pmd_t *) spp_getpage();
-		make_page_readonly(pmd);
+		make_mmu_page_readonly(pmd);
 		xen_pmd_pin(__pa(pmd));

 		set_pud(pud, __pud(__pa(pmd) | _KERNPG_TABLE | _PAGE_USER));
@@ -290,7 +290,7 @@

 	if (pmd_none(*pmd)) {
 		pte = (pte_t *) spp_getpage();
-		make_page_readonly(pte);
+		make_mmu_page_readonly(pte);
 		xen_pte_pin(__pa(pte));

 		set_pmd(pmd, __pmd(__pa(pte) | _KERNPG_TABLE | _PAGE_USER));
@@ -419,7 +419,7 @@
 		}

 		pmd = alloc_static_page(&pmd_phys);
-		early_make_page_readonly(pmd);
+		early_make_mmu_page_readonly(pmd);
 		xen_pmd_pin(pmd_phys);
 		set_pud(pud, __pud(pmd_phys | _KERNPG_TABLE));
       		for (j = 0; j < PTRS_PER_PMD; pmd++, j++) {
@@ -448,7 +448,7 @@
 				__set_pte(pte, __pte(paddr | _KERNPG_TABLE));
 			}
 			pte = pte_save;
-			early_make_page_readonly(pte);
+			early_make_mmu_page_readonly(pte);
 			xen_pte_pin(pte_phys);
 			set_pmd(pmd, __pmd(pte_phys | _KERNPG_TABLE));
 		}
@@ -497,11 +497,11 @@
 		      _KERNPG_TABLE | _PAGE_USER);
 	memcpy((void *)level2_kernel_pgt, page, PAGE_SIZE);

-	early_make_page_readonly(init_level4_pgt);
-	early_make_page_readonly(init_level4_user_pgt);
-	early_make_page_readonly(level3_kernel_pgt);
-	early_make_page_readonly(level3_user_pgt);
-	early_make_page_readonly(level2_kernel_pgt);
+	early_make_mmu_page_readonly(init_level4_pgt);
+	early_make_mmu_page_readonly(init_level4_user_pgt);
+	early_make_mmu_page_readonly(level3_kernel_pgt);
+	early_make_mmu_page_readonly(level3_user_pgt);
+	early_make_mmu_page_readonly(level2_kernel_pgt);

 	xen_pgd_pin(__pa_symbol(init_level4_pgt));
 	xen_pgd_pin(__pa_symbol(init_level4_user_pgt));
@@ -539,7 +539,7 @@
 		pmd = (pmd_t *)&page[pmd_index(va)];
 		if (pmd_none(*pmd)) {
 			pte_page = alloc_static_page(&phys);
-			early_make_page_readonly(pte_page);
+			early_make_mmu_page_readonly(pte_page);
 			xen_pte_pin(phys);
 			set_pmd(pmd, __pmd(phys | _KERNPG_TABLE | _PAGE_USER));
 		} else {
@@ -586,7 +586,7 @@
 	for (; start < end; start = next) {
 		unsigned long pud_phys;
 		pud_t *pud = alloc_static_page(&pud_phys);
-		early_make_page_readonly(pud);
+		early_make_mmu_page_readonly(pud);
 		xen_pud_pin(pud_phys);
 		next = start + PGDIR_SIZE;
 		if (next > end)
@@ -791,11 +791,11 @@
 		set_page_count(virt_to_page(addr), 1);
 		memset((void *)(addr & ~(PAGE_SIZE-1)), 0xcc, PAGE_SIZE);
 		xen_pte_unpin(__pa(addr));
-		make_page_writable(__va(__pa(addr)));
+		make_mmu_page_writable(__va(__pa(addr)));
 		/*
 		 * Make pages from __PAGE_OFFSET address as well
 		 */
-		make_page_writable((void *)addr);
+		make_mmu_page_writable((void *)addr);
 		free_page(addr);
 		totalram_pages++;
 	}
Index: xen-features/linux-2.6-xen-sparse/include/asm-xen/asm-x86_64/pgalloc.h
===================================================================
--- xen-features.orig/linux-2.6-xen-sparse/include/asm-xen/asm-x86_64/pgalloc.h	2006-01-27 10:18:17.000000000 +0000
+++ xen-features/linux-2.6-xen-sparse/include/asm-xen/asm-x86_64/pgalloc.h	2006-01-27 10:56:59.000000000 +0000
@@ -7,10 +7,10 @@
 #include <linux/mm.h>
 #include <asm/io.h>		/* for phys_to_virt and page_to_pseudophys */

-void make_page_readonly(void *va);
-void make_page_writable(void *va);
-void make_pages_readonly(void *va, unsigned int nr);
-void make_pages_writable(void *va, unsigned int nr);
+void make_mmu_page_readonly(void *va);
+void make_mmu_page_writable(void *va);
+void make_mmu_pages_readonly(void *va, unsigned int nr);
+void make_mmu_pages_writable(void *va, unsigned int nr);

 #define __user_pgd(pgd) ((pgd) + PTRS_PER_PGD)

@@ -161,7 +161,7 @@
 {
         pte_t *pte = (pte_t *)get_zeroed_page(GFP_KERNEL|__GFP_REPEAT);
         if (pte)
-		make_page_readonly(pte);
+		make_mmu_page_readonly(pte);

 	return pte;
 }
@@ -181,7 +181,7 @@
 {
 	BUG_ON((unsigned long)pte & (PAGE_SIZE-1));
         xen_pte_unpin(__pa(pte));
-        make_page_writable(pte);
+        make_mmu_page_writable(pte);
 	free_page((unsigned long)pte);
 }

Index: xen-features/linux-2.6-xen-sparse/include/asm-xen/asm-i386/pgalloc.h
===================================================================
--- xen-features.orig/linux-2.6-xen-sparse/include/asm-xen/asm-i386/pgalloc.h	2006-01-27 11:01:53.000000000 +0000
+++ xen-features/linux-2.6-xen-sparse/include/asm-xen/asm-i386/pgalloc.h	2006-01-27 11:02:07.000000000 +0000
@@ -42,7 +42,7 @@
 static inline void pte_free_kernel(pte_t *pte)
 {
 	free_page((unsigned long)pte);
-	make_page_writable(pte);
+	make_mmu_page_writable(pte);
 }

 extern void pte_free(struct page *pte);
2006-01-27 11:29:42 +00:00
kaf24@firebug.cl.cam.ac.uk 0e6b53535f Remove unneeded /proc/xen/grant and its libxc wrapper.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-01-26 00:17:06 +01:00
kaf24@firebug.cl.cam.ac.uk 57dcc574ee Fix batched request list overflow on packet receive path
in the netback driver.

Signed-off-by: Robert Read <robert@xensource.com>
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-01-25 14:36:35 +01:00
kaf24@firebug.cl.cam.ac.uk 009b337646 Export Xen driver util function symbols so that Xen drivers
can build as modules.

Signed-off-by: Keir Fraser <keir@xensource.com>
2006-01-25 14:28:07 +01:00
kaf24@firebug.cl.cam.ac.uk e5c953af87 Fix inline asm hypercall argument parameter indexes.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-01-25 12:34:02 +01:00
kaf24@firebug.cl.cam.ac.uk b1f769322e Fix 64-bit build and fix the transfer-page code for the
iret hypercall.

Signed-off-by: Keir Fraser <keir@xensource.com>
2006-01-25 11:08:33 +01:00
kaf24@firebug.cl.cam.ac.uk 5afac71b27 Fix an incorrect type, and a missing return value check,
in direct_remap_pfn_range().

Signed-off-by: Jan Beulich <JBeulich@novell.com>
2006-01-24 18:08:11 +01:00
kaf24@firebug.cl.cam.ac.uk 99e957075c Indirect hypercalls through a hypercall transfer page.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-01-24 18:05:45 +01:00
kaf24@firebug.cl.cam.ac.uk 05e845bded The present pud_offset_k implementation runs the value read through
the m2p translation process twice. With that removed, it can then
also be simplified.

Signed-off-by: Jan Beulich <JBeulich@novell.com>
2006-01-23 16:27:00 +01:00
kaf24@firebug.cl.cam.ac.uk 31415c26f9 Allow disabling the tx checksums on the xen loopback
interface, which is used for the virtual interfaces of dom0 instead 
of netfront/netback.

I need to issue ethtool -K eth0 tx off to work around a bad checksum
problem, which has been reported for domUs a few months ago. I'm
bridging dom0's eth0 to a domU where I do NAT to a different virtual
interface. Without this change, I get lots of packets with bad
checksums.

Signed-off-by: Jan Niehusmann <jan@gondor.com>
2006-01-19 20:11:09 +01:00
vhanquez@kneesa.uk.xensource.com 67a3f812a2 Delete 2 unused Kconfig files.
Signed-off-by: Vincent Hanquez <vincent@xensource.com>
2006-01-18 12:58:11 +00:00
vhanquez@kneesa.uk.xensource.com 99720cafe6 return -ENOMEM value instead of -1 when running out of memory.
Signed-off-by: Vincent Hanquez <vincent@xensource.com>
2006-01-16 23:54:24 +00:00
vhanquez@kneesa.uk.xensource.com 4ca0e16c74 sanitize tpmfront. missing spin_unlock'ing in error paths and fix coding style.
Signed-off-by: Vincent Hanquez <vincent@xensource.com>
2006-01-16 23:43:58 +00:00
vhanquez@kneesa.uk.xensource.com 403ce4ff82 bool type doesn't exist in C, don't try to emulate one.
Signed-off-by: Vincent Hanquez <vincent@xensource.com>
2006-01-16 22:11:43 +00:00
vhanquez@kneesa.uk.xensource.com 562b48cc4f remove ASSERT macro.
Signed-off-by: Vincent Hanquez <vincent@xensource.com>
2006-01-16 22:07:29 +00:00
vhanquez@kneesa.uk.xensource.com ff45641f7d replace ASSERT by BUG_ON.
Signed-off-by: Vincent Hanquez <vincent@xensource.com>
2006-01-16 22:04:42 +00:00
vhanquez@kneesa.uk.xensource.com c4975c1cf0 define all DPRINTK as pr_debug
Signed-off-by: Vincent Hanquez <vincent@xensource.com>
2006-01-16 21:58:44 +00:00
vhanquez@kneesa.uk.xensource.com ffd9d0c69e fix xenbus_scanf called with NULL instead of XBT_NULL.
Signed-off-by: Vincent Hanquez <vincent@xensource.com>
2006-01-16 21:48:24 +00:00
vhanquez@kneesa.uk.xensource.com 1765b01024 use standard pr_debug macro for DPRINTK.
Signed-off-by: Vincent Hanquez <vincent@xensource.com>
2006-01-16 21:43:17 +00:00
vhanquez@kneesa.uk.xensource.com 23a6ea1276 remove ASSERT macro that is not used anymore in blkback.
Signed-off-by: Vincent Hanquez <vincent@xensource.com>
2006-01-16 21:29:10 +00:00
vhanquez@kneesa.uk.xensource.com bc7c642662 remove unnecessary macro bdev_put which is an alias to blkdev_put.
Signed-off-by: Vincent Hanquez <vincent@xensource.com>
2006-01-16 21:13:29 +00:00
djm@kirby.fc.hp.com 0070cb1f3a Merge 2006-01-13 14:12:24 -06:00
kaf24@firebug.cl.cam.ac.uk 723bbd528f Fix xenbus_cleanup_devices() to cleanup proper subdirectories
of the deleted path, not merely paths mwith matching prefixes.

Signed-off-by: Keir Fraser <keir@xensource.com>
2006-01-13 15:22:36 +01:00
kaf24@firebug.cl.cam.ac.uk 6889a045da fixes some compiler warnings due to new types used in
the xenbus.

Signed-off-by: Stefan Berger <stefanb@us.ibm.com>
2006-01-12 14:27:55 +01:00
Ian.Campbell@xensource.com 2c5ceaba04 Fix x86_64 domU build by conditionalizing NMI support on CONFIG_X86_LOCAL_APIC
The NMI handler is not built unless CONFIG_X86_LOCAL_APIC is defined, and 
CONFIG_X86_LOCAL_APIC requires a dom0 build.

Signed-off-by: Ian Campbell <Ian.Campbell@XenSource.com>
2006-01-12 10:37:10 +00:00
Ian.Campbell@xensource.com 046536e8ee Fixup some bogus formatting and remove a stray debug printk
Signed-off-by: Ian Campbell <Ian.Campbell@xensource.com>
2006-01-11 17:50:05 +00:00
Ian.Campbell@xensource.com 544a856af5 Pass NMIs to DOM0 via a dedicated callback, Xen/Linux x86_64 support.
Register our NMI handler with Xen. Do an iret via the hypervisor
whenever the return CS is > RING0.

Add include/asm-xen/asm-x86_64/nmi.h as a Xen modified copy of
include/asm-x86_64/nmi.h in order that we can implement
get_nmi_reason() in a manner suitable for Xen.

Signed-off-by: Ian Campbell <Ian.Campbell@XenSource.com>
2006-01-11 15:53:59 +00:00
Ian.Campbell@xensource.com 716d68d4c2 Pass NMIs to DOM0 via a dedicated callback, Xen/Linux i386 support.
Register our NMI handler with Xen. Use a pseudo-flag in EFLAGS in
indicate that we should return from the NMI via a hypervisor iret.

Signed-off-by: Ian Campbell <Ian.Campbell@XenSource.com>
2006-01-11 15:52:54 +00:00
Ian.Campbell@xensource.com 1582d11750 Factor re-enabling the IOCK line out of io_check_error()
and into a machine specific function to.

Signed-off-by: Ian Campbell <Ian.Campbell@XenSource.com>
2006-01-11 15:51:18 +00:00
vhanquez@kneesa.uk.xensource.com d9014bb4aa update xs_transaction_t to be a plain u32 integer instead of a fake pointer.
Signed-off-by: Vincent Hanquez <vincent@xensource.com>
2006-01-11 12:01:37 +00:00
vhanquez@kneesa.uk.xensource.com ec5303c071 Change xenbus_transaction fake pointer into an opaque type.
Signed-off-by: Vincent Hanquez <vincent@xensource.com>
2006-01-10 17:16:30 +00:00
cl349@firebug.cl.cam.ac.uk e2fa4bde2c Cleanups.
Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
2006-01-10 17:27:16 +01:00
vhanquez@kneesa.uk.xensource.com e92fb45b06 Replace NULL xenbus transaction by a specific XBT_NULL value.
Signed-off-by: Vincent Hanquez <vincent@xensource.com>
2006-01-10 15:05:05 +00:00