[Date Prev][Date Next] [Thread Prev][Thread Next]
[Thread Index]
[Date Index]
[Author Index]
rpms/kernel/devel kernel-2.6.spec, 1.2481, 1.2482 linux-2.6-xen.patch, 1.47, 1.48
- From: fedora-cvs-commits redhat com
- To: fedora-cvs-commits redhat com
- Subject: rpms/kernel/devel kernel-2.6.spec, 1.2481, 1.2482 linux-2.6-xen.patch, 1.47, 1.48
- Date: Mon, 31 Jul 2006 16:54:13 -0400
Author: quintela
Update of /cvs/dist/rpms/kernel/devel
In directory cvs.devel.redhat.com:/tmp/cvs-serv32662
Modified Files:
kernel-2.6.spec linux-2.6-xen.patch
Log Message:
- Update xen patch to linux-2.6-xen-fedora cset 34801.
* linux-2.6 cset 33175
* no linux-2.6-xen updates.
Index: kernel-2.6.spec
===================================================================
RCS file: /cvs/dist/rpms/kernel/devel/kernel-2.6.spec,v
retrieving revision 1.2481
retrieving revision 1.2482
diff -u -r1.2481 -r1.2482
--- kernel-2.6.spec 31 Jul 2006 20:48:11 -0000 1.2481
+++ kernel-2.6.spec 31 Jul 2006 20:54:04 -0000 1.2482
@@ -1662,6 +1662,11 @@
%endif
%changelog
+* Mon Jul 31 2006 Juan Quintela <quintela redhat com>
+- Update xen patch to linux-2.6-xen-fedora cset 34801.
+ * linux-2.6 cset 33175
+ * no linux-2.6-xen updates.
+
* Mon Jul 31 2006 Dave Jones <davej redhat com>
- Numerous GFS2/DLM fixes.
linux-2.6-xen.patch:
arch/i386/Kconfig | 86
arch/i386/Kconfig.cpu | 4
arch/i386/Kconfig.debug | 2
arch/i386/Makefile | 24
arch/i386/boot-xen/Makefile | 21
arch/i386/kernel/Makefile | 21
arch/i386/kernel/acpi/Makefile | 4
arch/i386/kernel/acpi/boot-xen.c | 1168 ++++++++
arch/i386/kernel/alternative.c | 4
arch/i386/kernel/apic-xen.c | 160 +
arch/i386/kernel/asm-offsets.c | 7
arch/i386/kernel/cpu/Makefile | 5
arch/i386/kernel/cpu/common-xen.c | 740 +++++
arch/i386/kernel/cpu/mtrr/Makefile | 7
arch/i386/kernel/cpu/mtrr/main-xen.c | 197 +
arch/i386/kernel/early_printk-xen.c | 2
arch/i386/kernel/entry-xen.S | 1188 ++++++++
arch/i386/kernel/entry.S | 6
arch/i386/kernel/fixup.c | 93
arch/i386/kernel/head-xen.S | 180 +
arch/i386/kernel/init_task-xen.c | 51
arch/i386/kernel/io_apic-xen.c | 2772 ++++++++++++++++++++
arch/i386/kernel/ioport-xen.c | 121
arch/i386/kernel/irq-xen.c | 324 ++
arch/i386/kernel/ldt-xen.c | 269 +
arch/i386/kernel/microcode-xen.c | 147 +
arch/i386/kernel/mpparse-xen.c | 1186 ++++++++
arch/i386/kernel/pci-dma-xen.c | 378 ++
arch/i386/kernel/process-xen.c | 815 +++++
arch/i386/kernel/quirks-xen.c | 48
arch/i386/kernel/setup-xen.c | 1827 +++++++++++++
arch/i386/kernel/smp-xen.c | 624 ++++
arch/i386/kernel/swiotlb.c | 672 ++++
arch/i386/kernel/sysenter.c | 22
arch/i386/kernel/time-xen.c | 1103 +++++++
arch/i386/kernel/traps-xen.c | 1182 ++++++++
arch/i386/kernel/traps.c | 9
arch/i386/kernel/tsc.c | 2
arch/i386/kernel/vm86.c | 12
arch/i386/kernel/vsyscall-note-xen.S | 32
arch/i386/lib/delay.c | 3
arch/i386/mach-xen/Makefile | 5
arch/i386/mach-xen/setup.c | 154 +
arch/i386/mm/Makefile | 8
arch/i386/mm/fault-xen.c | 770 +++++
arch/i386/mm/highmem-xen.c | 133
arch/i386/mm/hypervisor.c | 458 +++
arch/i386/mm/init-xen.c | 852 ++++++
arch/i386/mm/ioremap-xen.c | 476 +++
arch/i386/mm/pageattr.c | 2
arch/i386/mm/pgtable-xen.c | 693 +++++
arch/i386/mm/pgtable.c | 12
arch/i386/oprofile/Makefile | 4
arch/i386/oprofile/xenoprof.c | 555 ++++
arch/i386/pci/Makefile | 9
arch/i386/pci/irq-xen.c | 1204 ++++++++
arch/i386/pci/pcifront.c | 55
arch/i386/power/Makefile | 4
arch/ia64/Kconfig | 58
arch/ia64/Makefile | 16
arch/ia64/hp/sim/Makefile | 2
arch/ia64/kernel/asm-offsets.c | 25
arch/ia64/kernel/entry.S | 32
arch/ia64/kernel/gate.S | 1
arch/ia64/kernel/gate.lds.S | 1
arch/ia64/kernel/head.S | 6
arch/ia64/kernel/iosapic.c | 65
arch/ia64/kernel/irq_ia64.c | 208 +
arch/ia64/kernel/pal.S | 5
arch/ia64/kernel/setup.c | 60
arch/ia64/mm/ioremap.c | 3
arch/ia64/xen/Makefile | 8
arch/ia64/xen/drivers/README | 2
arch/ia64/xen/hypercall.S | 353 ++
arch/ia64/xen/hypervisor.c | 799 +++++
arch/ia64/xen/util.c | 130
arch/ia64/xen/xenentry.S | 869 ++++++
arch/ia64/xen/xenhpski.c | 19
arch/ia64/xen/xenivt.S | 2171 +++++++++++++++
arch/ia64/xen/xenminstate.h | 369 ++
arch/ia64/xen/xenpal.S | 76
arch/ia64/xen/xensetup.S | 35
arch/um/kernel/physmem.c | 4
arch/x86_64/Kconfig | 63
arch/x86_64/Kconfig.debug | 1
arch/x86_64/Makefile | 20
arch/x86_64/ia32/Makefile | 20
arch/x86_64/ia32/ia32entry-xen.S | 743 +++++
arch/x86_64/ia32/syscall32-xen.c | 128
arch/x86_64/ia32/syscall32_syscall-xen.S | 28
arch/x86_64/ia32/vsyscall-int80.S | 58
arch/x86_64/ia32/vsyscall-sigreturn.S | 2
arch/x86_64/kernel/Makefile | 18
arch/x86_64/kernel/acpi/Makefile | 1
arch/x86_64/kernel/apic-xen.c | 197 +
arch/x86_64/kernel/asm-offsets.c | 2
arch/x86_64/kernel/e820-xen.c | 752 +++++
arch/x86_64/kernel/early_printk-xen.c | 304 ++
arch/x86_64/kernel/entry-xen.S | 1209 ++++++++
arch/x86_64/kernel/genapic-xen.c | 143 +
arch/x86_64/kernel/genapic_xen.c | 176 +
arch/x86_64/kernel/head-xen.S | 176 +
arch/x86_64/kernel/head64-xen.c | 161 +
arch/x86_64/kernel/init_task.c | 3
arch/x86_64/kernel/io_apic-xen.c | 2263 ++++++++++++++++
arch/x86_64/kernel/ioport-xen.c | 99
arch/x86_64/kernel/irq-xen.c | 198 +
arch/x86_64/kernel/ldt-xen.c | 282 ++
arch/x86_64/kernel/mpparse-xen.c | 1012 +++++++
arch/x86_64/kernel/pci-swiotlb-xen.c | 54
arch/x86_64/kernel/process-xen.c | 793 +++++
arch/x86_64/kernel/setup-xen.c | 1640 +++++++++++
arch/x86_64/kernel/setup64-xen.c | 360 ++
arch/x86_64/kernel/smp-xen.c | 600 ++++
arch/x86_64/kernel/traps-xen.c | 1166 ++++++++
arch/x86_64/kernel/vsyscall-xen.c | 239 +
arch/x86_64/kernel/xen_entry.S | 40
arch/x86_64/mm/Makefile | 10
arch/x86_64/mm/fault-xen.c | 723 +++++
arch/x86_64/mm/init-xen.c | 1201 ++++++++
arch/x86_64/mm/pageattr-xen.c | 396 ++
arch/x86_64/oprofile/Makefile | 5
arch/x86_64/pci/Makefile | 12
drivers/Makefile | 1
drivers/acpi/Kconfig | 3
drivers/char/hangcheck-timer.c | 2
drivers/char/mem.c | 6
drivers/char/tpm/Kconfig | 12
drivers/char/tpm/Makefile | 2
drivers/char/tpm/tpm.c | 55
drivers/char/tpm/tpm.h | 7
drivers/char/tpm/tpm_vtpm.c | 547 +++
drivers/char/tpm/tpm_vtpm.h | 68
drivers/char/tpm/tpm_xen.c | 758 +++++
drivers/char/tty_io.c | 7
drivers/firmware/Kconfig | 2
drivers/ide/ide-lib.c | 8
drivers/oprofile/buffer_sync.c | 66
drivers/oprofile/cpu_buffer.c | 51
drivers/oprofile/cpu_buffer.h | 9
drivers/oprofile/event_buffer.h | 7
drivers/oprofile/oprof.c | 32
drivers/oprofile/oprof.h | 3
drivers/oprofile/oprofile_files.c | 207 +
drivers/pci/Kconfig | 1
drivers/scsi/scsi_error.c | 1
drivers/scsi/scsi_priv.h | 1
drivers/serial/Kconfig | 1
drivers/xen/Kconfig | 260 +
drivers/xen/Makefile | 17
drivers/xen/balloon/Makefile | 2
drivers/xen/balloon/balloon.c | 608 ++++
drivers/xen/blkback/Makefile | 3
drivers/xen/blkback/blkback.c | 569 ++++
drivers/xen/blkback/common.h | 134
drivers/xen/blkback/interface.c | 177 +
drivers/xen/blkback/vbd.c | 119
drivers/xen/blkback/xenbus.c | 460 +++
drivers/xen/blkfront/Kconfig | 6
drivers/xen/blkfront/Makefile | 5
drivers/xen/blkfront/blkfront.c | 841 ++++++
drivers/xen/blkfront/block.h | 155 +
drivers/xen/blkfront/vbd.c | 318 ++
drivers/xen/blktap/Makefile | 3
drivers/xen/blktap/blktap.c | 1438 ++++++++++
drivers/xen/blktap/common.h | 120
drivers/xen/blktap/interface.c | 165 +
drivers/xen/blktap/xenbus.c | 354 ++
drivers/xen/char/Makefile | 2
drivers/xen/char/mem.c | 181 +
drivers/xen/console/Makefile | 2
drivers/xen/console/console.c | 647 ++++
drivers/xen/console/xencons_ring.c | 141 +
drivers/xen/core/Makefile | 13
drivers/xen/core/cpu_hotplug.c | 188 +
drivers/xen/core/evtchn.c | 870 ++++++
drivers/xen/core/features.c | 30
drivers/xen/core/gnttab.c | 442 +++
drivers/xen/core/hypervisor_sysfs.c | 60
drivers/xen/core/reboot.c | 364 ++
drivers/xen/core/skbuff.c | 141 +
drivers/xen/core/smpboot.c | 427 +++
drivers/xen/core/xen_proc.c | 19
drivers/xen/core/xen_sysfs.c | 379 ++
drivers/xen/evtchn/Makefile | 2
drivers/xen/evtchn/evtchn.c | 457 +++
drivers/xen/netback/Makefile | 5
drivers/xen/netback/common.h | 125
drivers/xen/netback/interface.c | 315 ++
drivers/xen/netback/loopback.c | 261 +
drivers/xen/netback/netback.c | 1122 ++++++++
drivers/xen/netback/xenbus.c | 405 ++
drivers/xen/netfront/Kconfig | 6
drivers/xen/netfront/Makefile | 4
drivers/xen/netfront/netfront.c | 1606 +++++++++++
drivers/xen/pciback/Makefile | 13
drivers/xen/pciback/conf_space.c | 403 ++
drivers/xen/pciback/conf_space.h | 123
drivers/xen/pciback/conf_space_capability.c | 71
drivers/xen/pciback/conf_space_capability.h | 23
drivers/xen/pciback/conf_space_capability_pm.c | 113
drivers/xen/pciback/conf_space_capability_vpd.c | 42
drivers/xen/pciback/conf_space_header.c | 299 ++
drivers/xen/pciback/passthrough.c | 157 +
drivers/xen/pciback/pci_stub.c | 690 ++++
drivers/xen/pciback/pciback.h | 91
drivers/xen/pciback/pciback_ops.c | 95
drivers/xen/pciback/vpci.c | 204 +
drivers/xen/pciback/xenbus.c | 454 +++
drivers/xen/pcifront/Makefile | 7
drivers/xen/pcifront/pci.c | 46
drivers/xen/pcifront/pci_op.c | 272 +
drivers/xen/pcifront/pcifront.h | 40
drivers/xen/pcifront/xenbus.c | 294 ++
drivers/xen/privcmd/Makefile | 2
drivers/xen/privcmd/privcmd.c | 285 ++
drivers/xen/tpmback/Makefile | 4
drivers/xen/tpmback/common.h | 85
drivers/xen/tpmback/interface.c | 177 +
drivers/xen/tpmback/tpmback.c | 983 +++++++
drivers/xen/tpmback/xenbus.c | 291 ++
drivers/xen/util.c | 70
drivers/xen/xenbus/Makefile | 12
drivers/xen/xenbus/xenbus_backend_client.c | 135
drivers/xen/xenbus/xenbus_client.c | 278 ++
drivers/xen/xenbus/xenbus_comms.c | 208 +
drivers/xen/xenbus/xenbus_comms.h | 43
drivers/xen/xenbus/xenbus_dev.c | 245 +
drivers/xen/xenbus/xenbus_probe.c | 1086 +++++++
drivers/xen/xenbus/xenbus_xs.c | 843 ++++++
fs/Kconfig | 1
include/asm-i386/apic.h | 2
include/asm-i386/fixmap.h | 4
include/asm-i386/mach-default/mach_traps.h | 12
include/asm-i386/mach-xen/asm/agp.h | 37
include/asm-i386/mach-xen/asm/desc.h | 164 +
include/asm-i386/mach-xen/asm/dma-mapping.h | 152 +
include/asm-i386/mach-xen/asm/fixmap.h | 156 +
include/asm-i386/mach-xen/asm/floppy.h | 147 +
include/asm-i386/mach-xen/asm/highmem.h | 80
include/asm-i386/mach-xen/asm/hypercall.h | 372 ++
include/asm-i386/mach-xen/asm/hypervisor.h | 226 +
include/asm-i386/mach-xen/asm/io.h | 389 ++
include/asm-i386/mach-xen/asm/kmap_types.h | 31
include/asm-i386/mach-xen/asm/mmu.h | 26
include/asm-i386/mach-xen/asm/mmu_context.h | 107
include/asm-i386/mach-xen/asm/page.h | 337 ++
include/asm-i386/mach-xen/asm/param.h | 23
include/asm-i386/mach-xen/asm/pci.h | 153 +
include/asm-i386/mach-xen/asm/pgalloc.h | 63
include/asm-i386/mach-xen/asm/pgtable-2level-defs.h | 21
include/asm-i386/mach-xen/asm/pgtable-2level.h | 88
include/asm-i386/mach-xen/asm/pgtable-3level-defs.h | 25
include/asm-i386/mach-xen/asm/pgtable-3level.h | 197 +
include/asm-i386/mach-xen/asm/pgtable.h | 509 +++
include/asm-i386/mach-xen/asm/processor.h | 741 +++++
include/asm-i386/mach-xen/asm/ptrace.h | 90
include/asm-i386/mach-xen/asm/scatterlist.h | 22
include/asm-i386/mach-xen/asm/segment.h | 117
include/asm-i386/mach-xen/asm/setup.h | 79
include/asm-i386/mach-xen/asm/smp.h | 103
include/asm-i386/mach-xen/asm/spinlock.h | 199 +
include/asm-i386/mach-xen/asm/swiotlb.h | 43
include/asm-i386/mach-xen/asm/synch_bitops.h | 143 +
include/asm-i386/mach-xen/asm/system.h | 575 ++++
include/asm-i386/mach-xen/asm/timer.h | 70
include/asm-i386/mach-xen/asm/tlbflush.h | 101
include/asm-i386/mach-xen/asm/vga.h | 20
include/asm-i386/mach-xen/irq_vectors.h | 125
include/asm-i386/mach-xen/mach_traps.h | 33
include/asm-i386/mach-xen/setup_arch.h | 6
include/asm-i386/page.h | 2
include/asm-i386/pgtable-2level-defs.h | 2
include/asm-i386/pgtable-3level-defs.h | 2
include/asm-ia64/agp.h | 31
include/asm-ia64/dma-mapping.h | 72
include/asm-ia64/fixmap.h | 2
include/asm-ia64/gcc_intrin.h | 60
include/asm-ia64/hw_irq.h | 10
include/asm-ia64/hypercall.h | 533 +++
include/asm-ia64/hypervisor.h | 207 +
include/asm-ia64/intel_intrin.h | 68
include/asm-ia64/io.h | 34
include/asm-ia64/iosapic.h | 2
include/asm-ia64/irq.h | 31
include/asm-ia64/machvec.h | 15
include/asm-ia64/meminit.h | 5
include/asm-ia64/page.h | 124
include/asm-ia64/pal.h | 1
include/asm-ia64/pgalloc.h | 2
include/asm-ia64/privop.h | 59
include/asm-ia64/processor.h | 1
include/asm-ia64/synch_bitops.h | 63
include/asm-ia64/system.h | 4
include/asm-ia64/xen/privop.h | 302 ++
include/asm-um/page.h | 2
include/asm-x86_64/apic.h | 2
include/asm-x86_64/mach-xen/asm/arch_hooks.h | 27
include/asm-x86_64/mach-xen/asm/bootsetup.h | 42
include/asm-x86_64/mach-xen/asm/desc.h | 263 +
include/asm-x86_64/mach-xen/asm/dma-mapping.h | 208 +
include/asm-x86_64/mach-xen/asm/dmi.h | 29
include/asm-x86_64/mach-xen/asm/e820.h | 64
include/asm-x86_64/mach-xen/asm/fixmap.h | 113
include/asm-x86_64/mach-xen/asm/floppy.h | 206 +
include/asm-x86_64/mach-xen/asm/hw_irq.h | 137
include/asm-x86_64/mach-xen/asm/hypercall.h | 372 ++
include/asm-x86_64/mach-xen/asm/hypervisor.h | 2
include/asm-x86_64/mach-xen/asm/io.h | 327 ++
include/asm-x86_64/mach-xen/asm/irq.h | 39
include/asm-x86_64/mach-xen/asm/mmu.h | 37
include/asm-x86_64/mach-xen/asm/mmu_context.h | 135
include/asm-x86_64/mach-xen/asm/msr.h | 399 ++
include/asm-x86_64/mach-xen/asm/nmi.h | 93
include/asm-x86_64/mach-xen/asm/page.h | 327 ++
include/asm-x86_64/mach-xen/asm/param.h | 22
include/asm-x86_64/mach-xen/asm/pci.h | 173 +
include/asm-x86_64/mach-xen/asm/pgalloc.h | 226 +
include/asm-x86_64/mach-xen/asm/pgtable.h | 560 ++++
include/asm-x86_64/mach-xen/asm/processor.h | 499 +++
include/asm-x86_64/mach-xen/asm/ptrace.h | 125
include/asm-x86_64/mach-xen/asm/smp.h | 150 +
include/asm-x86_64/mach-xen/asm/synch_bitops.h | 2
include/asm-x86_64/mach-xen/asm/system.h | 346 ++
include/asm-x86_64/mach-xen/asm/timer.h | 67
include/asm-x86_64/mach-xen/asm/tlbflush.h | 103
include/asm-x86_64/mach-xen/asm/vga.h | 20
include/asm-x86_64/mach-xen/asm/xor.h | 328 ++
include/asm-x86_64/mach-xen/irq_vectors.h | 123
include/asm-x86_64/mach-xen/mach_time.h | 111
include/asm-x86_64/mach-xen/mach_timer.h | 48
include/asm-x86_64/mach-xen/setup_arch_post.h | 58
include/asm-x86_64/mach-xen/setup_arch_pre.h | 5
include/linux/gfp.h | 6
include/linux/highmem.h | 6
include/linux/interrupt.h | 6
include/linux/mm.h | 10
include/linux/oprofile.h | 11
include/linux/skbuff.h | 15
include/scsi/scsi_eh.h | 1
include/xen/balloon.h | 63
include/xen/cpu_hotplug.h | 44
include/xen/driver_util.h | 16
include/xen/evtchn.h | 114
include/xen/features.h | 20
include/xen/foreign_page.h | 30
include/xen/gnttab.h | 151 +
include/xen/hypervisor_sysfs.h | 32
include/xen/interface/acm.h | 188 +
include/xen/interface/acm_ops.h | 103
include/xen/interface/arch-ia64.h | 433 +++
include/xen/interface/arch-powerpc.h | 119
include/xen/interface/arch-x86_32.h | 233 +
include/xen/interface/arch-x86_64.h | 299 ++
include/xen/interface/callback.h | 74
include/xen/interface/dom0_ops.h | 598 ++++
include/xen/interface/event_channel.h | 233 +
include/xen/interface/features.h | 53
include/xen/interface/grant_table.h | 317 ++
include/xen/interface/hvm/hvm_info_table.h | 24
include/xen/interface/hvm/ioreq.h | 93
include/xen/interface/hvm/vmx_assist.h | 98
include/xen/interface/io/blkif.h | 87
include/xen/interface/io/console.h | 33
include/xen/interface/io/netif.h | 157 +
include/xen/interface/io/pciif.h | 55
include/xen/interface/io/ring.h | 273 +
include/xen/interface/io/tpmif.h | 59
include/xen/interface/io/xenbus.h | 45
include/xen/interface/io/xs_wire.h | 97
include/xen/interface/memory.h | 243 +
include/xen/interface/nmi.h | 60
include/xen/interface/physdev.h | 149 +
include/xen/interface/sched.h | 103
include/xen/interface/sched_ctl.h | 69
include/xen/interface/trace.h | 87
include/xen/interface/vcpu.h | 121
include/xen/interface/version.h | 70
include/xen/interface/xen-compat.h | 47
include/xen/interface/xen.h | 507 +++
include/xen/interface/xencomm.h | 37
include/xen/interface/xenoprof.h | 103
include/xen/pcifront.h | 39
include/xen/public/evtchn.h | 91
include/xen/public/privcmd.h | 79
include/xen/xen_proc.h | 13
include/xen/xenbus.h | 299 ++
include/xen/xencons.h | 14
kernel/Kconfig.preempt | 1
kernel/fork.c | 3
kernel/irq/manage.c | 1
kernel/timer.c | 16
lib/Kconfig.debug | 2
lib/Makefile | 3
mm/Kconfig | 3
mm/highmem.c | 11
mm/memory.c | 119
mm/mmap.c | 4
mm/page_alloc.c | 6
net/core/dev.c | 63
net/core/pktgen.c | 2
net/core/skbuff.c | 42
net/ipv4/netfilter/ip_nat_proto_tcp.c | 7
net/ipv4/netfilter/ip_nat_proto_udp.c | 7
net/ipv4/xfrm4_output.c | 6
net/ipv6/addrconf.c | 2
scripts/Makefile.xen | 14
407 files changed, 85185 insertions(+), 201 deletions(-)
Index: linux-2.6-xen.patch
===================================================================
RCS file: /cvs/dist/rpms/kernel/devel/linux-2.6-xen.patch,v
retrieving revision 1.47
retrieving revision 1.48
diff -u -r1.47 -r1.48
--- linux-2.6-xen.patch 30 Jul 2006 18:05:14 -0000 1.47
+++ linux-2.6-xen.patch 31 Jul 2006 20:54:04 -0000 1.48
@@ -12868,7 +12868,7 @@
+
diff -urNp --exclude=TAGS --exclude='.hg*' linux-2.6/arch/i386/kernel/swiotlb.c linux-2.6-xen-fedora/arch/i386/kernel/swiotlb.c
--- linux-2.6/arch/i386/kernel/swiotlb.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6-xen-fedora/arch/i386/kernel/swiotlb.c 2006-07-18 03:27:59.000000000 +0200
++++ linux-2.6-xen-fedora/arch/i386/kernel/swiotlb.c 2006-07-31 22:25:22.000000000 +0200
@@ -0,0 +1,672 @@
+/*
+ * Dynamic DMA mapping support.
@@ -13606,7 +13606,7 @@
memcpy(syscall_page,
diff -urNp --exclude=TAGS --exclude='.hg*' linux-2.6/arch/i386/kernel/time-xen.c linux-2.6-xen-fedora/arch/i386/kernel/time-xen.c
--- linux-2.6/arch/i386/kernel/time-xen.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6-xen-fedora/arch/i386/kernel/time-xen.c 2006-07-26 17:52:27.000000000 +0200
++++ linux-2.6-xen-fedora/arch/i386/kernel/time-xen.c 2006-07-31 22:25:22.000000000 +0200
@@ -0,0 +1,1103 @@
+/*
+ * linux/arch/i386/kernel/time.c
@@ -14198,7 +14198,7 @@
+ is just accounted to the spinlock function.
+ Better would be to write these functions in assembler again
+ and check exactly. */
-+ if (in_lock_functions(pc)) {
++ if (!user_mode_vm(regs) && in_lock_functions(pc)) {
+ char *v = *(char **)regs->rsp;
+ if ((v >= _stext && v <= _etext) ||
+ (v >= _sinittext && v <= _einittext) ||
@@ -14207,7 +14207,7 @@
+ return ((unsigned long *)regs->rsp)[1];
+ }
+#else
-+ if (in_lock_functions(pc))
++ if (!user_mode_vm(regs) && in_lock_functions(pc))
+ return *(unsigned long *)(regs->ebp + 4);
+#endif
+
@@ -14712,9 +14712,9 @@
+}
+__initcall(xen_sysctl_init);
diff -urNp --exclude=TAGS --exclude='.hg*' linux-2.6/arch/i386/kernel/traps.c linux-2.6-xen-fedora/arch/i386/kernel/traps.c
---- linux-2.6/arch/i386/kernel/traps.c 2006-07-16 19:14:07.000000000 +0200
-+++ linux-2.6-xen-fedora/arch/i386/kernel/traps.c 2006-07-22 20:37:35.000000000 +0200
-@@ -630,18 +630,11 @@ static void mem_parity_error(unsigned ch
+--- linux-2.6/arch/i386/kernel/traps.c 2006-07-31 12:23:37.000000000 +0200
++++ linux-2.6-xen-fedora/arch/i386/kernel/traps.c 2006-07-31 22:25:22.000000000 +0200
+@@ -641,18 +641,11 @@ static void mem_parity_error(unsigned ch
static void io_check_error(unsigned char reason, struct pt_regs * regs)
{
@@ -14736,8 +14736,8 @@
static void unknown_nmi_error(unsigned char reason, struct pt_regs * regs)
diff -urNp --exclude=TAGS --exclude='.hg*' linux-2.6/arch/i386/kernel/traps-xen.c linux-2.6-xen-fedora/arch/i386/kernel/traps-xen.c
--- linux-2.6/arch/i386/kernel/traps-xen.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6-xen-fedora/arch/i386/kernel/traps-xen.c 2006-07-22 20:37:35.000000000 +0200
-@@ -0,0 +1,1169 @@
++++ linux-2.6-xen-fedora/arch/i386/kernel/traps-xen.c 2006-07-31 22:25:22.000000000 +0200
+@@ -0,0 +1,1182 @@
+/*
+ * linux/arch/i386/traps.c
+ *
@@ -14933,10 +14933,21 @@
+ if (unwind_init_blocked(&info, task) == 0)
+ unw_ret = show_trace_unwind(&info, log_lvl);
+ }
-+ if (unw_ret > 0) {
-+ if (call_trace > 0)
++ if (unw_ret > 0 && !arch_unw_user_mode(&info)) {
++#ifdef CONFIG_STACK_UNWIND
++ print_symbol("DWARF2 unwinder stuck at %s\n",
++ UNW_PC(&info));
++ if (call_trace == 1) {
++ printk("Leftover inexact backtrace:\n");
++ if (UNW_SP(&info))
++ stack = (void *)UNW_SP(&info);
++ } else if (call_trace > 1)
+ return;
-+ printk("%sLegacy call trace:\n", log_lvl);
++ else
++ printk("Full inexact backtrace again:\n");
++#else
++ printk("Inexact backtrace:\n");
++#endif
+ }
+ }
+
@@ -15902,8 +15913,10 @@
+ call_trace = -1;
+ else if (strcmp(s, "both") == 0)
+ call_trace = 0;
-+ else if (strcmp(s, "new") == 0)
++ else if (strcmp(s, "newfallback") == 0)
+ call_trace = 1;
++ else if (strcmp(s, "new") == 2)
++ call_trace = 2;
+ return 1;
+}
+__setup("call_trace=", call_trace_setup);
@@ -21845,482 +21858,26 @@
br.many b7
diff -urNp --exclude=TAGS --exclude='.hg*' linux-2.6/arch/ia64/kernel/gate.lds.S linux-2.6-xen-fedora/arch/ia64/kernel/gate.lds.S
--- linux-2.6/arch/ia64/kernel/gate.lds.S 2006-07-13 00:51:19.000000000 +0200
-+++ linux-2.6-xen-fedora/arch/ia64/kernel/gate.lds.S 1970-01-01 01:00:00.000000000 +0100
-@@ -1,95 +0,0 @@
--/*
-- * Linker script for gate DSO. The gate pages are an ELF shared object prelinked to its
-- * virtual address, with only one read-only segment and one execute-only segment (both fit
-- * in one page). This script controls its layout.
-- */
--
--
--#include <asm/system.h>
--
--SECTIONS
--{
-- . = GATE_ADDR + SIZEOF_HEADERS;
--
-- .hash : { *(.hash) } :readable
-- .dynsym : { *(.dynsym) }
-- .dynstr : { *(.dynstr) }
-- .gnu.version : { *(.gnu.version) }
-- .gnu.version_d : { *(.gnu.version_d) }
-- .gnu.version_r : { *(.gnu.version_r) }
-- .dynamic : { *(.dynamic) } :readable :dynamic
--
-- /*
-- * This linker script is used both with -r and with -shared. For the layouts to match,
-- * we need to skip more than enough space for the dynamic symbol table et al. If this
-- * amount is insufficient, ld -shared will barf. Just increase it here.
-- */
-- . = GATE_ADDR + 0x500;
--
-- .data.patch : {
-- __start_gate_mckinley_e9_patchlist = .;
-- *(.data.patch.mckinley_e9)
-- __end_gate_mckinley_e9_patchlist = .;
--
-- __start_gate_vtop_patchlist = .;
-- *(.data.patch.vtop)
-- __end_gate_vtop_patchlist = .;
--
-- __start_gate_fsyscall_patchlist = .;
-- *(.data.patch.fsyscall_table)
-- __end_gate_fsyscall_patchlist = .;
--
-- __start_gate_brl_fsys_bubble_down_patchlist = .;
-- *(.data.patch.brl_fsys_bubble_down)
-- __end_gate_brl_fsys_bubble_down_patchlist = .;
-- } :readable
-- .IA_64.unwind_info : { *(.IA_64.unwind_info*) }
-- .IA_64.unwind : { *(.IA_64.unwind*) } :readable :unwind
--#ifdef HAVE_BUGGY_SEGREL
-- .text (GATE_ADDR + PAGE_SIZE) : { *(.text) *(.text.*) } :readable
--#else
-- . = ALIGN (PERCPU_PAGE_SIZE) + (. & (PERCPU_PAGE_SIZE - 1));
-- .text : { *(.text) *(.text.*) } :epc
--#endif
--
-- /DISCARD/ : {
-- *(.got.plt) *(.got)
-- *(.data .data.* .gnu.linkonce.d.*)
-- *(.dynbss)
-- *(.bss .bss.* .gnu.linkonce.b.*)
-- *(__ex_table)
-- *(__mca_table)
-- }
--}
--
--/*
-- * We must supply the ELF program headers explicitly to get just one
-- * PT_LOAD segment, and set the flags explicitly to make segments read-only.
-- */
--PHDRS
--{
-- readable PT_LOAD FILEHDR PHDRS FLAGS(4); /* PF_R */
--#ifndef HAVE_BUGGY_SEGREL
-- epc PT_LOAD FILEHDR PHDRS FLAGS(1); /* PF_X */
--#endif
-- dynamic PT_DYNAMIC FLAGS(4); /* PF_R */
-- unwind 0x70000001; /* PT_IA_64_UNWIND, but ld doesn't match the name */
--}
--
--/*
-- * This controls what symbols we export from the DSO.
-- */
--VERSION
--{
-- LINUX_2.5 {
-- global:
-- __kernel_syscall_via_break;
-- __kernel_syscall_via_epc;
-- __kernel_sigtramp;
--
-- local: *;
-- };
--}
--
--/* The ELF entry point can be used to set the AT_SYSINFO value. */
--ENTRY(__kernel_syscall_via_epc)
++++ linux-2.6-xen-fedora/arch/ia64/kernel/gate.lds.S 2006-07-28 02:38:48.000000000 +0200
+@@ -4,6 +4,7 @@
+ * in one page). This script controls its layout.
+ */
+
++#include <linux/config.h>
+
+ #include <asm/system.h>
+
diff -urNp --exclude=TAGS --exclude='.hg*' linux-2.6/arch/ia64/kernel/gate.S linux-2.6-xen-fedora/arch/ia64/kernel/gate.S
--- linux-2.6/arch/ia64/kernel/gate.S 2006-07-13 00:51:19.000000000 +0200
-+++ linux-2.6-xen-fedora/arch/ia64/kernel/gate.S 1970-01-01 01:00:00.000000000 +0100
-@@ -1,375 +0,0 @@
--/*
-- * This file contains the code that gets mapped at the upper end of each task's text
-- * region. For now, it contains the signal trampoline code only.
-- *
-- * Copyright (C) 1999-2003 Hewlett-Packard Co
-- * David Mosberger-Tang <davidm hpl hp com>
-- */
--
--
--#include <asm/asmmacro.h>
--#include <asm/errno.h>
--#include <asm/asm-offsets.h>
--#include <asm/sigcontext.h>
--#include <asm/system.h>
--#include <asm/unistd.h>
--
--/*
-- * We can't easily refer to symbols inside the kernel. To avoid full runtime relocation,
-- * complications with the linker (which likes to create PLT stubs for branches
-- * to targets outside the shared object) and to avoid multi-phase kernel builds, we
-- * simply create minimalistic "patch lists" in special ELF sections.
-- */
-- .section ".data.patch.fsyscall_table", "a"
-- .previous
--#define LOAD_FSYSCALL_TABLE(reg) \
--[1:] movl reg=0; \
-- .xdata4 ".data.patch.fsyscall_table", 1b-.
--
-- .section ".data.patch.brl_fsys_bubble_down", "a"
-- .previous
--#define BRL_COND_FSYS_BUBBLE_DOWN(pr) \
--[1:](pr)brl.cond.sptk 0; \
-- .xdata4 ".data.patch.brl_fsys_bubble_down", 1b-.
--
--GLOBAL_ENTRY(__kernel_syscall_via_break)
-- .prologue
-- .altrp b6
-- .body
-- /*
-- * Note: for (fast) syscall restart to work, the break instruction must be
-- * the first one in the bundle addressed by syscall_via_break.
-- */
--{ .mib
-- break 0x100000
-- nop.i 0
-- br.ret.sptk.many b6
--}
--END(__kernel_syscall_via_break)
--
--/*
-- * On entry:
-- * r11 = saved ar.pfs
-- * r15 = system call #
-- * b0 = saved return address
-- * b6 = return address
-- * On exit:
-- * r11 = saved ar.pfs
-- * r15 = system call #
-- * b0 = saved return address
-- * all other "scratch" registers: undefined
-- * all "preserved" registers: same as on entry
-- */
--
--GLOBAL_ENTRY(__kernel_syscall_via_epc)
-- .prologue
-- .altrp b6
-- .body
--{
-- /*
-- * Note: the kernel cannot assume that the first two instructions in this
-- * bundle get executed. The remaining code must be safe even if
-- * they do not get executed.
-- */
-- adds r17=-1024,r15 // A
-- mov r10=0 // A default to successful syscall execution
-- epc // B causes split-issue
--}
-- ;;
-- rsm psr.be | psr.i // M2 (5 cyc to srlz.d)
-- LOAD_FSYSCALL_TABLE(r14) // X
-- ;;
-- mov r16=IA64_KR(CURRENT) // M2 (12 cyc)
-- shladd r18=r17,3,r14 // A
-- mov r19=NR_syscalls-1 // A
-- ;;
-- lfetch [r18] // M0|1
-- mov r29=psr // M2 (12 cyc)
-- // If r17 is a NaT, p6 will be zero
-- cmp.geu p6,p7=r19,r17 // A (sysnr > 0 && sysnr < 1024+NR_syscalls)?
-- ;;
-- mov r21=ar.fpsr // M2 (12 cyc)
-- tnat.nz p10,p9=r15 // I0
-- mov.i r26=ar.pfs // I0 (would stall anyhow due to srlz.d...)
-- ;;
-- srlz.d // M0 (forces split-issue) ensure PSR.BE==0
--(p6) ld8 r18=[r18] // M0|1
-- nop.i 0
-- ;;
-- nop.m 0
--(p6) tbit.z.unc p8,p0=r18,0 // I0 (dual-issues with "mov b7=r18"!)
-- nop.i 0
-- ;;
--(p8) ssm psr.i
--(p6) mov b7=r18 // I0
--(p8) br.dptk.many b7 // B
--
-- mov r27=ar.rsc // M2 (12 cyc)
--/*
-- * brl.cond doesn't work as intended because the linker would convert this branch
-- * into a branch to a PLT. Perhaps there will be a way to avoid this with some
-- * future version of the linker. In the meantime, we just use an indirect branch
-- * instead.
-- */
--#ifdef CONFIG_ITANIUM
--(p6) add r14=-8,r14 // r14 <- addr of fsys_bubble_down entry
-- ;;
--(p6) ld8 r14=[r14] // r14 <- fsys_bubble_down
-- ;;
--(p6) mov b7=r14
--(p6) br.sptk.many b7
--#else
-- BRL_COND_FSYS_BUBBLE_DOWN(p6)
--#endif
-- ssm psr.i
-- mov r10=-1
--(p10) mov r8=EINVAL
--(p9) mov r8=ENOSYS
-- FSYS_RETURN
--END(__kernel_syscall_via_epc)
--
--# define ARG0_OFF (16 + IA64_SIGFRAME_ARG0_OFFSET)
--# define ARG1_OFF (16 + IA64_SIGFRAME_ARG1_OFFSET)
--# define ARG2_OFF (16 + IA64_SIGFRAME_ARG2_OFFSET)
--# define SIGHANDLER_OFF (16 + IA64_SIGFRAME_HANDLER_OFFSET)
--# define SIGCONTEXT_OFF (16 + IA64_SIGFRAME_SIGCONTEXT_OFFSET)
--
--# define FLAGS_OFF IA64_SIGCONTEXT_FLAGS_OFFSET
--# define CFM_OFF IA64_SIGCONTEXT_CFM_OFFSET
--# define FR6_OFF IA64_SIGCONTEXT_FR6_OFFSET
--# define BSP_OFF IA64_SIGCONTEXT_AR_BSP_OFFSET
--# define RNAT_OFF IA64_SIGCONTEXT_AR_RNAT_OFFSET
--# define UNAT_OFF IA64_SIGCONTEXT_AR_UNAT_OFFSET
--# define FPSR_OFF IA64_SIGCONTEXT_AR_FPSR_OFFSET
--# define PR_OFF IA64_SIGCONTEXT_PR_OFFSET
--# define RP_OFF IA64_SIGCONTEXT_IP_OFFSET
--# define SP_OFF IA64_SIGCONTEXT_R12_OFFSET
--# define RBS_BASE_OFF IA64_SIGCONTEXT_RBS_BASE_OFFSET
--# define LOADRS_OFF IA64_SIGCONTEXT_LOADRS_OFFSET
--# define base0 r2
--# define base1 r3
-- /*
-- * When we get here, the memory stack looks like this:
-- *
-- * +===============================+
-- * | |
-- * // struct sigframe //
-- * | |
-- * +-------------------------------+ <-- sp+16
-- * | 16 byte of scratch |
-- * | space |
-- * +-------------------------------+ <-- sp
-- *
-- * The register stack looks _exactly_ the way it looked at the time the signal
-- * occurred. In other words, we're treading on a potential mine-field: each
-- * incoming general register may be a NaT value (including sp, in which case the
-- * process ends up dying with a SIGSEGV).
-- *
-- * The first thing need to do is a cover to get the registers onto the backing
-- * store. Once that is done, we invoke the signal handler which may modify some
-- * of the machine state. After returning from the signal handler, we return
-- * control to the previous context by executing a sigreturn system call. A signal
-- * handler may call the rt_sigreturn() function to directly return to a given
-- * sigcontext. However, the user-level sigreturn() needs to do much more than
-- * calling the rt_sigreturn() system call as it needs to unwind the stack to
-- * restore preserved registers that may have been saved on the signal handler's
-- * call stack.
-- */
--
--#define SIGTRAMP_SAVES \
-- .unwabi 3, 's'; /* mark this as a sigtramp handler (saves scratch regs) */ \
-- .unwabi @svr4, 's'; /* backwards compatibility with old unwinders (remove in v2.7) */ \
-- .savesp ar.unat, UNAT_OFF+SIGCONTEXT_OFF; \
-- .savesp ar.fpsr, FPSR_OFF+SIGCONTEXT_OFF; \
-- .savesp pr, PR_OFF+SIGCONTEXT_OFF; \
-- .savesp rp, RP_OFF+SIGCONTEXT_OFF; \
-- .savesp ar.pfs, CFM_OFF+SIGCONTEXT_OFF; \
-- .vframesp SP_OFF+SIGCONTEXT_OFF
--
--GLOBAL_ENTRY(__kernel_sigtramp)
-- // describe the state that is active when we get here:
-- .prologue
-- SIGTRAMP_SAVES
-- .body
--
-- .label_state 1
--
-- adds base0=SIGHANDLER_OFF,sp
-- adds base1=RBS_BASE_OFF+SIGCONTEXT_OFF,sp
-- br.call.sptk.many rp=1f
--1:
-- ld8 r17=[base0],(ARG0_OFF-SIGHANDLER_OFF) // get pointer to signal handler's plabel
-- ld8 r15=[base1] // get address of new RBS base (or NULL)
-- cover // push args in interrupted frame onto backing store
-- ;;
-- cmp.ne p1,p0=r15,r0 // do we need to switch rbs? (note: pr is saved by kernel)
-- mov.m r9=ar.bsp // fetch ar.bsp
-- .spillsp.p p1, ar.rnat, RNAT_OFF+SIGCONTEXT_OFF
--(p1) br.cond.spnt setup_rbs // yup -> (clobbers p8, r14-r16, and r18-r20)
--back_from_setup_rbs:
-- alloc r8=ar.pfs,0,0,3,0
-- ld8 out0=[base0],16 // load arg0 (signum)
-- adds base1=(ARG1_OFF-(RBS_BASE_OFF+SIGCONTEXT_OFF)),base1
-- ;;
-- ld8 out1=[base1] // load arg1 (siginfop)
-- ld8 r10=[r17],8 // get signal handler entry point
-- ;;
-- ld8 out2=[base0] // load arg2 (sigcontextp)
-- ld8 gp=[r17] // get signal handler's global pointer
-- adds base0=(BSP_OFF+SIGCONTEXT_OFF),sp
-- ;;
-- .spillsp ar.bsp, BSP_OFF+SIGCONTEXT_OFF
-- st8 [base0]=r9 // save sc_ar_bsp
-- adds base0=(FR6_OFF+SIGCONTEXT_OFF),sp
-- adds base1=(FR6_OFF+16+SIGCONTEXT_OFF),sp
-- ;;
-- stf.spill [base0]=f6,32
-- stf.spill [base1]=f7,32
-- ;;
-- stf.spill [base0]=f8,32
-- stf.spill [base1]=f9,32
-- mov b6=r10
-- ;;
-- stf.spill [base0]=f10,32
-- stf.spill [base1]=f11,32
-- ;;
-- stf.spill [base0]=f12,32
-- stf.spill [base1]=f13,32
-- ;;
-- stf.spill [base0]=f14,32
-- stf.spill [base1]=f15,32
-- br.call.sptk.many rp=b6 // call the signal handler
--.ret0: adds base0=(BSP_OFF+SIGCONTEXT_OFF),sp
-- ;;
-- ld8 r15=[base0] // fetch sc_ar_bsp
-- mov r14=ar.bsp
-- ;;
-- cmp.ne p1,p0=r14,r15 // do we need to restore the rbs?
--(p1) br.cond.spnt restore_rbs // yup -> (clobbers r14-r18, f6 & f7)
-- ;;
--back_from_restore_rbs:
-- adds base0=(FR6_OFF+SIGCONTEXT_OFF),sp
-- adds base1=(FR6_OFF+16+SIGCONTEXT_OFF),sp
-- ;;
-- ldf.fill f6=[base0],32
-- ldf.fill f7=[base1],32
-- ;;
-- ldf.fill f8=[base0],32
-- ldf.fill f9=[base1],32
-- ;;
-- ldf.fill f10=[base0],32
-- ldf.fill f11=[base1],32
-- ;;
-- ldf.fill f12=[base0],32
-- ldf.fill f13=[base1],32
-- ;;
-- ldf.fill f14=[base0],32
-- ldf.fill f15=[base1],32
-- mov r15=__NR_rt_sigreturn
-- .restore sp // pop .prologue
-- break __BREAK_SYSCALL
--
-- .prologue
-- SIGTRAMP_SAVES
--setup_rbs:
-- mov ar.rsc=0 // put RSE into enforced lazy mode
-- ;;
-- .save ar.rnat, r19
-- mov r19=ar.rnat // save RNaT before switching backing store area
-- adds r14=(RNAT_OFF+SIGCONTEXT_OFF),sp
--
-- mov r18=ar.bspstore
-- mov ar.bspstore=r15 // switch over to new register backing store area
-- ;;
--
-- .spillsp ar.rnat, RNAT_OFF+SIGCONTEXT_OFF
-- st8 [r14]=r19 // save sc_ar_rnat
-- .body
-- mov.m r16=ar.bsp // sc_loadrs <- (new bsp - new bspstore) << 16
-- adds r14=(LOADRS_OFF+SIGCONTEXT_OFF),sp
-- ;;
-- invala
-- sub r15=r16,r15
-- extr.u r20=r18,3,6
-- ;;
-- mov ar.rsc=0xf // set RSE into eager mode, pl 3
-- cmp.eq p8,p0=63,r20
-- shl r15=r15,16
-- ;;
-- st8 [r14]=r15 // save sc_loadrs
--(p8) st8 [r18]=r19 // if bspstore points at RNaT slot, store RNaT there now
-- .restore sp // pop .prologue
-- br.cond.sptk back_from_setup_rbs
--
-- .prologue
-- SIGTRAMP_SAVES
-- .spillsp ar.rnat, RNAT_OFF+SIGCONTEXT_OFF
-- .body
--restore_rbs:
-- // On input:
-- // r14 = bsp1 (bsp at the time of return from signal handler)
-- // r15 = bsp0 (bsp at the time the signal occurred)
-- //
-- // Here, we need to calculate bspstore0, the value that ar.bspstore needs
-- // to be set to, based on bsp0 and the size of the dirty partition on
-- // the alternate stack (sc_loadrs >> 16). This can be done with the
-- // following algorithm:
-- //
-- // bspstore0 = rse_skip_regs(bsp0, -rse_num_regs(bsp1 - (loadrs >> 19), bsp1));
-- //
-- // This is what the code below does.
-- //
-- alloc r2=ar.pfs,0,0,0,0 // alloc null frame
-- adds r16=(LOADRS_OFF+SIGCONTEXT_OFF),sp
-- adds r18=(RNAT_OFF+SIGCONTEXT_OFF),sp
-- ;;
-- ld8 r17=[r16]
-- ld8 r16=[r18] // get new rnat
-- extr.u r18=r15,3,6 // r18 <- rse_slot_num(bsp0)
-- ;;
-- mov ar.rsc=r17 // put RSE into enforced lazy mode
-- shr.u r17=r17,16
-- ;;
-- sub r14=r14,r17 // r14 (bspstore1) <- bsp1 - (sc_loadrs >> 16)
-- shr.u r17=r17,3 // r17 <- (sc_loadrs >> 19)
-- ;;
-- loadrs // restore dirty partition
-- extr.u r14=r14,3,6 // r14 <- rse_slot_num(bspstore1)
-- ;;
-- add r14=r14,r17 // r14 <- rse_slot_num(bspstore1) + (sc_loadrs >> 19)
-- ;;
-- shr.u r14=r14,6 // r14 <- (rse_slot_num(bspstore1) + (sc_loadrs >> 19))/0x40
-- ;;
-- sub r14=r14,r17 // r14 <- -rse_num_regs(bspstore1, bsp1)
-- movl r17=0x8208208208208209
-- ;;
-- add r18=r18,r14 // r18 (delta) <- rse_slot_num(bsp0) - rse_num_regs(bspstore1,bsp1)
-- setf.sig f7=r17
-- cmp.lt p7,p0=r14,r0 // p7 <- (r14 < 0)?
-- ;;
--(p7) adds r18=-62,r18 // delta -= 62
-- ;;
-- setf.sig f6=r18
-- ;;
-- xmpy.h f6=f6,f7
-- ;;
-- getf.sig r17=f6
-- ;;
-- add r17=r17,r18
-- shr r18=r18,63
-- ;;
-- shr r17=r17,5
-- ;;
-- sub r17=r17,r18 // r17 = delta/63
-- ;;
-- add r17=r14,r17 // r17 <- delta/63 - rse_num_regs(bspstore1, bsp1)
-- ;;
-- shladd r15=r17,3,r15 // r15 <- bsp0 + 8*(delta/63 - rse_num_regs(bspstore1, bsp1))
-- ;;
-- mov ar.bspstore=r15 // switch back to old register backing store area
-- ;;
-- mov ar.rnat=r16 // restore RNaT
-- mov ar.rsc=0xf // (will be restored later on from sc_ar_rsc)
-- // invala not necessary as that will happen when returning to user-mode
-- br.cond.sptk back_from_restore_rbs
--END(__kernel_sigtramp)
++++ linux-2.6-xen-fedora/arch/ia64/kernel/gate.S 2006-07-28 02:38:48.000000000 +0200
+@@ -6,6 +6,7 @@
+ * David Mosberger-Tang <davidm hpl hp com>
+ */
+
++#include <linux/config.h>
+
+ #include <asm/asmmacro.h>
+ #include <asm/errno.h>
diff -urNp --exclude=TAGS --exclude='.hg*' linux-2.6/arch/ia64/kernel/head.S linux-2.6-xen-fedora/arch/ia64/kernel/head.S
--- linux-2.6/arch/ia64/kernel/head.S 2006-07-13 00:51:19.000000000 +0200
+++ linux-2.6-xen-fedora/arch/ia64/kernel/head.S 2006-07-22 20:37:35.000000000 +0200
@@ -22701,207 +22258,6 @@
/*
* Make a PAL call using the stacked registers calling convention.
-diff -urNp --exclude=TAGS --exclude='.hg*' linux-2.6/arch/ia64/kernel/patch.c linux-2.6-xen-fedora/arch/ia64/kernel/patch.c
---- linux-2.6/arch/ia64/kernel/patch.c 2006-07-13 00:51:20.000000000 +0200
-+++ linux-2.6-xen-fedora/arch/ia64/kernel/patch.c 1970-01-01 01:00:00.000000000 +0100
-@@ -1,197 +0,0 @@
--/*
-- * Instruction-patching support.
-- *
-- * Copyright (C) 2003 Hewlett-Packard Co
-- * David Mosberger-Tang <davidm hpl hp com>
-- */
--#include <linux/init.h>
--#include <linux/string.h>
--
--#include <asm/patch.h>
--#include <asm/processor.h>
--#include <asm/sections.h>
--#include <asm/system.h>
--#include <asm/unistd.h>
--
--/*
-- * This was adapted from code written by Tony Luck:
-- *
-- * The 64-bit value in a "movl reg=value" is scattered between the two words of the bundle
-- * like this:
-- *
-- * 6 6 5 4 3 2 1
-- * 3210987654321098765432109876543210987654321098765432109876543210
-- * ABBBBBBBBBBBBBBBBBBBBBBBCCCCCCCCCCCCCCCCCCDEEEEEFFFFFFFFFGGGGGGG
-- *
-- * CCCCCCCCCCCCCCCCCCxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
-- * xxxxAFFFFFFFFFEEEEEDxGGGGGGGxxxxxxxxxxxxxBBBBBBBBBBBBBBBBBBBBBBB
-- */
--static u64
--get_imm64 (u64 insn_addr)
--{
-- u64 *p = (u64 *) (insn_addr & -16); /* mask out slot number */
--
-- return ( (p[1] & 0x0800000000000000UL) << 4) | /*A*/
-- ((p[1] & 0x00000000007fffffUL) << 40) | /*B*/
-- ((p[0] & 0xffffc00000000000UL) >> 24) | /*C*/
-- ((p[1] & 0x0000100000000000UL) >> 23) | /*D*/
-- ((p[1] & 0x0003e00000000000UL) >> 29) | /*E*/
-- ((p[1] & 0x07fc000000000000UL) >> 43) | /*F*/
-- ((p[1] & 0x000007f000000000UL) >> 36); /*G*/
--}
--
--/* Patch instruction with "val" where "mask" has 1 bits. */
--void
--ia64_patch (u64 insn_addr, u64 mask, u64 val)
--{
-- u64 m0, m1, v0, v1, b0, b1, *b = (u64 *) (insn_addr & -16);
--# define insn_mask ((1UL << 41) - 1)
-- unsigned long shift;
--
-- b0 = b[0]; b1 = b[1];
-- shift = 5 + 41 * (insn_addr % 16); /* 5 bits of template, then 3 x 41-bit instructions */
-- if (shift >= 64) {
-- m1 = mask << (shift - 64);
-- v1 = val << (shift - 64);
-- } else {
-- m0 = mask << shift; m1 = mask >> (64 - shift);
-- v0 = val << shift; v1 = val >> (64 - shift);
-- b[0] = (b0 & ~m0) | (v0 & m0);
-- }
-- b[1] = (b1 & ~m1) | (v1 & m1);
--}
--
--void
--ia64_patch_imm64 (u64 insn_addr, u64 val)
--{
-- /* The assembler may generate offset pointing to either slot 1
-- or slot 2 for a long (2-slot) instruction, occupying slots 1
-- and 2. */
-- insn_addr &= -16UL;
-- ia64_patch(insn_addr + 2,
-- 0x01fffefe000UL, ( ((val & 0x8000000000000000UL) >> 27) /* bit 63 -> 36 */
-- | ((val & 0x0000000000200000UL) << 0) /* bit 21 -> 21 */
-- | ((val & 0x00000000001f0000UL) << 6) /* bit 16 -> 22 */
-- | ((val & 0x000000000000ff80UL) << 20) /* bit 7 -> 27 */
-- | ((val & 0x000000000000007fUL) << 13) /* bit 0 -> 13 */));
-- ia64_patch(insn_addr + 1, 0x1ffffffffffUL, val >> 22);
--}
--
--void
--ia64_patch_imm60 (u64 insn_addr, u64 val)
--{
-- /* The assembler may generate offset pointing to either slot 1
-- or slot 2 for a long (2-slot) instruction, occupying slots 1
-- and 2. */
-- insn_addr &= -16UL;
-- ia64_patch(insn_addr + 2,
-- 0x011ffffe000UL, ( ((val & 0x0800000000000000UL) >> 23) /* bit 59 -> 36 */
-- | ((val & 0x00000000000fffffUL) << 13) /* bit 0 -> 13 */));
-- ia64_patch(insn_addr + 1, 0x1fffffffffcUL, val >> 18);
--}
--
--/*
-- * We need sometimes to load the physical address of a kernel
-- * object. Often we can convert the virtual address to physical
-- * at execution time, but sometimes (either for performance reasons
-- * or during error recovery) we cannot to this. Patch the marked
-- * bundles to load the physical address.
-- */
--void __init
--ia64_patch_vtop (unsigned long start, unsigned long end)
--{
-- s32 *offp = (s32 *) start;
-- u64 ip;
--
-- while (offp < (s32 *) end) {
-- ip = (u64) offp + *offp;
--
-- /* replace virtual address with corresponding physical address: */
-- ia64_patch_imm64(ip, ia64_tpa(get_imm64(ip)));
-- ia64_fc((void *) ip);
-- ++offp;
-- }
-- ia64_sync_i();
-- ia64_srlz_i();
--}
--
--void __init
--ia64_patch_mckinley_e9 (unsigned long start, unsigned long end)
--{
-- static int first_time = 1;
-- int need_workaround;
-- s32 *offp = (s32 *) start;
-- u64 *wp;
--
-- need_workaround = (local_cpu_data->family == 0x1f && local_cpu_data->model == 0);
--
-- if (first_time) {
-- first_time = 0;
-- if (need_workaround)
-- printk(KERN_INFO "Leaving McKinley Errata 9 workaround enabled\n");
-- else
-- printk(KERN_INFO "McKinley Errata 9 workaround not needed; "
-- "disabling it\n");
-- }
-- if (need_workaround)
-- return;
--
-- while (offp < (s32 *) end) {
-- wp = (u64 *) ia64_imva((char *) offp + *offp);
-- wp[0] = 0x0000000100000000UL; /* nop.m 0; nop.i 0; nop.i 0 */
-- wp[1] = 0x0004000000000200UL;
-- wp[2] = 0x0000000100000011UL; /* nop.m 0; nop.i 0; br.ret.sptk.many b6 */
-- wp[3] = 0x0084006880000200UL;
-- ia64_fc(wp); ia64_fc(wp + 2);
-- ++offp;
-- }
-- ia64_sync_i();
-- ia64_srlz_i();
--}
--
--static void __init
--patch_fsyscall_table (unsigned long start, unsigned long end)
--{
-- extern unsigned long fsyscall_table[NR_syscalls];
-- s32 *offp = (s32 *) start;
-- u64 ip;
--
-- while (offp < (s32 *) end) {
-- ip = (u64) ia64_imva((char *) offp + *offp);
-- ia64_patch_imm64(ip, (u64) fsyscall_table);
-- ia64_fc((void *) ip);
-- ++offp;
-- }
-- ia64_sync_i();
-- ia64_srlz_i();
--}
--
--static void __init
--patch_brl_fsys_bubble_down (unsigned long start, unsigned long end)
--{
-- extern char fsys_bubble_down[];
-- s32 *offp = (s32 *) start;
-- u64 ip;
--
-- while (offp < (s32 *) end) {
-- ip = (u64) offp + *offp;
-- ia64_patch_imm60((u64) ia64_imva((void *) ip),
-- (u64) (fsys_bubble_down - (ip & -16)) / 16);
-- ia64_fc((void *) ip);
-- ++offp;
-- }
-- ia64_sync_i();
-- ia64_srlz_i();
--}
--
--void __init
--ia64_patch_gate (void)
--{
--# define START(name) ((unsigned long) __start_gate_##name##_patchlist)
--# define END(name) ((unsigned long)__end_gate_##name##_patchlist)
--
-- patch_fsyscall_table(START(fsyscall), END(fsyscall));
-- patch_brl_fsys_bubble_down(START(brl_fsys_bubble_down), END(brl_fsys_bubble_down));
-- ia64_patch_vtop(START(vtop), END(vtop));
-- ia64_patch_mckinley_e9(START(mckinley_e9), END(mckinley_e9));
--}
diff -urNp --exclude=TAGS --exclude='.hg*' linux-2.6/arch/ia64/kernel/setup.c linux-2.6-xen-fedora/arch/ia64/kernel/setup.c
--- linux-2.6/arch/ia64/kernel/setup.c 2006-07-13 00:51:20.000000000 +0200
+++ linux-2.6-xen-fedora/arch/ia64/kernel/setup.c 2006-07-22 20:37:35.000000000 +0200
@@ -23059,12 +22415,14 @@
echo '* compressed - Build compressed kernel image'
diff -urNp --exclude=TAGS --exclude='.hg*' linux-2.6/arch/ia64/mm/ioremap.c linux-2.6-xen-fedora/arch/ia64/mm/ioremap.c
--- linux-2.6/arch/ia64/mm/ioremap.c 2006-07-13 00:51:20.000000000 +0200
-+++ linux-2.6-xen-fedora/arch/ia64/mm/ioremap.c 2006-07-18 03:28:00.000000000 +0200
-@@ -16,6 +16,7 @@
++++ linux-2.6-xen-fedora/arch/ia64/mm/ioremap.c 2006-07-28 02:38:48.000000000 +0200
+@@ -16,6 +16,9 @@
static inline void __iomem *
__ioremap (unsigned long offset, unsigned long size)
{
++#ifdef CONFIG_XEN
+ offset = HYPERVISOR_ioremap(offset, size);
++#endif
return (void __iomem *) (__IA64_UNCACHED_OFFSET | offset);
}
@@ -23433,8 +22791,8 @@
+END(xen_send_ipi)
diff -urNp --exclude=TAGS --exclude='.hg*' linux-2.6/arch/ia64/xen/hypervisor.c linux-2.6-xen-fedora/arch/ia64/xen/hypervisor.c
--- linux-2.6/arch/ia64/xen/hypervisor.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6-xen-fedora/arch/ia64/xen/hypervisor.c 2006-07-18 03:28:00.000000000 +0200
-@@ -0,0 +1,795 @@
++++ linux-2.6-xen-fedora/arch/ia64/xen/hypervisor.c 2006-07-28 02:38:48.000000000 +0200
+@@ -0,0 +1,799 @@
+/******************************************************************************
+ * include/asm-ia64/shadow.h
+ *
@@ -23472,6 +22830,7 @@
+EXPORT_SYMBOL(HYPERVISOR_shared_info);
+
+start_info_t *xen_start_info;
++EXPORT_SYMBOL(xen_start_info);
+
+int running_on_xen;
+EXPORT_SYMBOL(running_on_xen);
@@ -23528,6 +22887,7 @@
+ }
+ return ret;
+}
++EXPORT_SYMBOL(ia64_xenmem_reservation_op);
+
+//XXX same as i386, x86_64 contiguous_bitmap_set(), contiguous_bitmap_clear()
+// move those to lib/contiguous_bitmap?
@@ -23816,12 +23176,14 @@
+
+ return ____HYPERVISOR_grant_table_op(cmd, uop, count);
+}
++EXPORT_SYMBOL(HYPERVISOR_grant_table_op);
+
+
+///////////////////////////////////////////////////////////////////////////
+// PageForeign(), SetPageForeign(), ClearPageForeign()
+
+struct address_space xen_ia64_foreign_dummy_mapping;
++EXPORT_SYMBOL(xen_ia64_foreign_dummy_mapping);
+
+///////////////////////////////////////////////////////////////////////////
+// foreign mapping
@@ -27962,7 +27324,7 @@
int is_remapped(void *virt)
diff -urNp --exclude=TAGS --exclude='.hg*' linux-2.6/arch/x86_64/ia32/ia32entry-xen.S linux-2.6-xen-fedora/arch/x86_64/ia32/ia32entry-xen.S
--- linux-2.6/arch/x86_64/ia32/ia32entry-xen.S 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6-xen-fedora/arch/x86_64/ia32/ia32entry-xen.S 2006-07-22 20:37:38.000000000 +0200
++++ linux-2.6-xen-fedora/arch/x86_64/ia32/ia32entry-xen.S 2006-07-31 22:25:22.000000000 +0200
@@ -0,0 +1,743 @@
+/*
+ * Compatibility mode system call entry point for x86-64.
@@ -28087,7 +27449,7 @@
+ pushq %rax
+ CFI_ADJUST_CFA_OFFSET 8
+ cld
-+ SAVE_ARGS 0,0,1
++ SAVE_ARGS 0,0,0
+ /* no need to do an access_ok check here because rbp has been
+ 32bit zero extended */
+1: movl (%rbp),%r9d
@@ -39748,8 +39110,8 @@
+}
diff -urNp --exclude=TAGS --exclude='.hg*' linux-2.6/arch/x86_64/kernel/traps-xen.c linux-2.6-xen-fedora/arch/x86_64/kernel/traps-xen.c
--- linux-2.6/arch/x86_64/kernel/traps-xen.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6-xen-fedora/arch/x86_64/kernel/traps-xen.c 2006-07-22 20:37:38.000000000 +0200
-@@ -0,0 +1,1156 @@
++++ linux-2.6-xen-fedora/arch/x86_64/kernel/traps-xen.c 2006-07-31 22:25:22.000000000 +0200
+@@ -0,0 +1,1166 @@
+/*
+ * linux/arch/x86-64/traps.c
+ *
@@ -40007,7 +39369,6 @@
+{
+ const unsigned cpu = safe_smp_processor_id();
+ unsigned long *irqstack_end = (unsigned long *)cpu_pda(cpu)->irqstackptr;
-+ int i = 11;
+ unsigned used = 0;
+
+ printk("\nCall Trace:\n");
@@ -40028,11 +39389,20 @@
+ if (unwind_init_blocked(&info, tsk) == 0)
+ unw_ret = show_trace_unwind(&info, NULL);
+ }
-+ if (unw_ret > 0) {
-+ if (call_trace > 0)
++ if (unw_ret > 0 && !arch_unw_user_mode(&info)) {
++#ifdef CONFIG_STACK_UNWIND
++ unsigned long rip = info.regs.rip;
++ print_symbol("DWARF2 unwinder stuck at %s\n", rip);
++ if (call_trace == 1) {
++ printk("Leftover inexact backtrace:\n");
++ stack = (unsigned long *)info.regs.rsp;
++ } else if (call_trace > 1)
+ return;
-+ printk("Legacy call trace:");
-+ i = 18;
++ else
++ printk("Full inexact backtrace again:\n");
++#else
++ printk("Inexact backtrace:\n");
++#endif
+ }
+ }
+ /*
@@ -40901,8 +40271,10 @@
+ call_trace = -1;
+ else if (strcmp(s, "both") == 0)
+ call_trace = 0;
-+ else if (strcmp(s, "new") == 0)
++ else if (strcmp(s, "newfallback") == 0)
+ call_trace = 1;
++ else if (strcmp(s, "new") == 0)
++ call_trace = 2;
+ return 1;
+}
+__setup("call_trace=", call_trace_setup);
@@ -46606,8 +45978,8 @@
+obj-y += balloon.o
diff -urNp --exclude=TAGS --exclude='.hg*' linux-2.6/drivers/xen/blkback/blkback.c linux-2.6-xen-fedora/drivers/xen/blkback/blkback.c
--- linux-2.6/drivers/xen/blkback/blkback.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6-xen-fedora/drivers/xen/blkback/blkback.c 2006-07-18 03:28:20.000000000 +0200
-@@ -0,0 +1,568 @@
++++ linux-2.6-xen-fedora/drivers/xen/blkback/blkback.c 2006-07-28 02:38:48.000000000 +0200
+@@ -0,0 +1,569 @@
+/******************************************************************************
+ * arch/xen/drivers/blkif/backend/main.c
+ *
@@ -46650,6 +46022,7 @@
+#include <linux/list.h>
+#include <xen/balloon.h>
+#include <asm/hypervisor.h>
++#include <asm/hypercall.h>
+#include "common.h"
+
+/*
@@ -52721,7 +52094,7 @@
+}
diff -urNp --exclude=TAGS --exclude='.hg*' linux-2.6/drivers/xen/core/evtchn.c linux-2.6-xen-fedora/drivers/xen/core/evtchn.c
--- linux-2.6/drivers/xen/core/evtchn.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6-xen-fedora/drivers/xen/core/evtchn.c 2006-07-22 20:37:52.000000000 +0200
++++ linux-2.6-xen-fedora/drivers/xen/core/evtchn.c 2006-07-28 02:38:48.000000000 +0200
@@ -0,0 +1,870 @@
+/******************************************************************************
+ * evtchn.c
@@ -53419,7 +52792,7 @@
+ return !!(irq_status.flags & XENIRQSTAT_shared);
+}
+
-+void resend_irq_on_evtchn(struct hw_interrupt_type *h, unsigned int i)
++void resend_irq_on_evtchn(unsigned int i)
+{
+ int evtchn = evtchn_from_irq(i);
+ shared_info_t *s = HYPERVISOR_shared_info;
@@ -56258,8 +55631,8 @@
+obj-$(CONFIG_XEN_PCIDEV_FRONTEND) += pcifront/
diff -urNp --exclude=TAGS --exclude='.hg*' linux-2.6/drivers/xen/netback/common.h linux-2.6-xen-fedora/drivers/xen/netback/common.h
--- linux-2.6/drivers/xen/netback/common.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6-xen-fedora/drivers/xen/netback/common.h 2006-07-18 03:28:20.000000000 +0200
-@@ -0,0 +1,124 @@
++++ linux-2.6-xen-fedora/drivers/xen/netback/common.h 2006-07-28 02:38:48.000000000 +0200
+@@ -0,0 +1,125 @@
+/******************************************************************************
+ * arch/xen/drivers/netif/backend/common.h
+ *
@@ -56308,6 +55681,7 @@
+#include <xen/interface/grant_table.h>
+#include <xen/gnttab.h>
+#include <xen/driver_util.h>
++#include <asm/hypercall.h>
+
+#define DPRINTK(_f, _a...) \
+ pr_debug("(file=%s, line=%d) " _f, \
@@ -56979,8 +56353,8 @@
+netloop-y := loopback.o
diff -urNp --exclude=TAGS --exclude='.hg*' linux-2.6/drivers/xen/netback/netback.c linux-2.6-xen-fedora/drivers/xen/netback/netback.c
--- linux-2.6/drivers/xen/netback/netback.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6-xen-fedora/drivers/xen/netback/netback.c 2006-07-18 03:28:20.000000000 +0200
-@@ -0,0 +1,1121 @@
++++ linux-2.6-xen-fedora/drivers/xen/netback/netback.c 2006-07-28 02:38:48.000000000 +0200
+@@ -0,0 +1,1122 @@
+/******************************************************************************
+ * drivers/xen/netback/netback.c
+ *
@@ -57020,6 +56394,7 @@
+#include "common.h"
+#include <xen/balloon.h>
+#include <xen/interface/memory.h>
++#include <asm/page.h>
+
+/*#define NETBE_DEBUG_INTERRUPT*/
+
@@ -58531,8 +57906,8 @@
+xennet-objs := netfront.o
diff -urNp --exclude=TAGS --exclude='.hg*' linux-2.6/drivers/xen/netfront/netfront.c linux-2.6-xen-fedora/drivers/xen/netfront/netfront.c
--- linux-2.6/drivers/xen/netfront/netfront.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6-xen-fedora/drivers/xen/netfront/netfront.c 2006-07-26 17:52:27.000000000 +0200
-@@ -0,0 +1,1605 @@
++++ linux-2.6-xen-fedora/drivers/xen/netfront/netfront.c 2006-07-28 02:38:48.000000000 +0200
+@@ -0,0 +1,1606 @@
+/******************************************************************************
+ * Virtual network driver for conversing with remote driver backends.
+ *
@@ -58585,6 +57960,7 @@
+#include <net/pkt_sched.h>
+#include <net/arp.h>
+#include <net/route.h>
++#include <asm/hypercall.h>
+#include <asm/io.h>
+#include <asm/uaccess.h>
+#include <xen/evtchn.h>
@@ -74829,7 +74205,7 @@
#endif /* _ASM_IA64_GCC_INTRIN_H */
diff -urNp --exclude=TAGS --exclude='.hg*' linux-2.6/include/asm-ia64/hw_irq.h linux-2.6-xen-fedora/include/asm-ia64/hw_irq.h
--- linux-2.6/include/asm-ia64/hw_irq.h 2006-07-13 00:51:36.000000000 +0200
-+++ linux-2.6-xen-fedora/include/asm-ia64/hw_irq.h 2006-07-22 20:37:54.000000000 +0200
++++ linux-2.6-xen-fedora/include/asm-ia64/hw_irq.h 2006-07-28 02:38:49.000000000 +0200
@@ -15,7 +15,11 @@
#include <asm/ptrace.h>
#include <asm/smp.h>
@@ -74842,15 +74218,14 @@
/*
* 0 special
-@@ -99,6 +103,13 @@ extern void register_percpu_irq (ia64_ve
+@@ -99,6 +103,12 @@ extern void register_percpu_irq (ia64_ve
static inline void ia64_resend_irq(unsigned int vector)
{
+#ifdef CONFIG_XEN
-+ extern void resend_irq_on_evtchn(struct hw_interrupt_type *h,
-+ unsigned int i);
++ extern void resend_irq_on_evtchn(unsigned int i);
+ if (is_running_on_xen())
-+ resend_irq_on_evtchn(h, vector);
++ resend_irq_on_evtchn(vector);
+ else
+#endif /* CONFIG_XEN */
platform_send_ipi(smp_processor_id(), vector, IA64_IPI_DM_INT, 0);
@@ -75732,7 +75107,7 @@
#endif /* _ASM_IA64_INTEL_INTRIN_H */
diff -urNp --exclude=TAGS --exclude='.hg*' linux-2.6/include/asm-ia64/io.h linux-2.6-xen-fedora/include/asm-ia64/io.h
--- linux-2.6/include/asm-ia64/io.h 2006-07-13 00:51:36.000000000 +0200
-+++ linux-2.6-xen-fedora/include/asm-ia64/io.h 2006-07-22 20:37:54.000000000 +0200
++++ linux-2.6-xen-fedora/include/asm-ia64/io.h 2006-07-28 02:38:49.000000000 +0200
@@ -66,9 +66,11 @@ extern unsigned int num_io_spaces;
#define PIO_RESERVED __IA64_UNCACHED_OFFSET
#define HAVE_ARCH_PIO_SIZE
@@ -75787,35 +75162,6 @@
# endif /* KERNEL */
-@@ -417,14 +451,26 @@ __writeq (unsigned long val, volatile vo
- # define outl_p outl
- #endif
-
--extern void __iomem * ioremap(unsigned long offset, unsigned long size);
--extern void __iomem * ioremap_nocache (unsigned long offset, unsigned long size);
-+/*
-+ * An "address" in IO memory space is not clearly either an integer or a pointer. We will
-+ * accept both, thus the casts.
-+ *
-+ * On ia-64, we access the physical I/O memory space through the uncached kernel region.
-+ */
-+static inline void __iomem *
-+ioremap (unsigned long offset, unsigned long size)
-+{
-+ offset = HYPERVISOR_ioremap(offset, size);
-+ return (void __iomem *) (__IA64_UNCACHED_OFFSET | (offset));
-+}
-
- static inline void
- iounmap (volatile void __iomem *addr)
- {
- }
-
-+#define ioremap_nocache(o,s) ioremap(o,s)
-+
- /* Use normal IO mappings for DMI */
- #define dmi_ioremap ioremap
- #define dmi_iounmap(x,l) iounmap(x)
diff -urNp --exclude=TAGS --exclude='.hg*' linux-2.6/include/asm-ia64/iosapic.h linux-2.6-xen-fedora/include/asm-ia64/iosapic.h
--- linux-2.6/include/asm-ia64/iosapic.h 2006-07-13 00:51:36.000000000 +0200
+++ linux-2.6-xen-fedora/include/asm-ia64/iosapic.h 2006-07-18 03:28:26.000000000 +0200
@@ -79144,7 +78490,7 @@
+#endif /* ASM_NMI_H */
diff -urNp --exclude=TAGS --exclude='.hg*' linux-2.6/include/asm-x86_64/mach-xen/asm/page.h linux-2.6-xen-fedora/include/asm-x86_64/mach-xen/asm/page.h
--- linux-2.6/include/asm-x86_64/mach-xen/asm/page.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6-xen-fedora/include/asm-x86_64/mach-xen/asm/page.h 2006-07-18 03:28:29.000000000 +0200
++++ linux-2.6-xen-fedora/include/asm-x86_64/mach-xen/asm/page.h 2006-07-31 22:25:24.000000000 +0200
@@ -0,0 +1,327 @@
+#ifndef _X86_64_PAGE_H
+#define _X86_64_PAGE_H
@@ -79191,7 +78537,7 @@
+#define EXCEPTION_STACK_ORDER 0
+#define EXCEPTION_STKSZ (PAGE_SIZE << EXCEPTION_STACK_ORDER)
+
-+#define DEBUG_STACK_ORDER EXCEPTION_STACK_ORDER
++#define DEBUG_STACK_ORDER (EXCEPTION_STACK_ORDER + 1)
+#define DEBUG_STKSZ (PAGE_SIZE << DEBUG_STACK_ORDER)
+
+#define IRQSTACK_ORDER 2
@@ -82625,17 +81971,6 @@
/**
* Create a file of the given name as a child of the given root, with
-diff -urNp --exclude=TAGS --exclude='.hg*' linux-2.6/include/linux/pfn.h linux-2.6-xen-fedora/include/linux/pfn.h
---- linux-2.6/include/linux/pfn.h 2006-07-13 00:51:40.000000000 +0200
-+++ linux-2.6-xen-fedora/include/linux/pfn.h 2006-07-22 21:51:19.000000000 +0200
-@@ -4,6 +4,6 @@
- #define PFN_ALIGN(x) (((unsigned long)(x) + (PAGE_SIZE - 1)) & PAGE_MASK)
- #define PFN_UP(x) (((x) + PAGE_SIZE-1) >> PAGE_SHIFT)
- #define PFN_DOWN(x) ((x) >> PAGE_SHIFT)
--#define PFN_PHYS(x) ((x) << PAGE_SHIFT)
-+#define PFN_PHYS(x) ((unsigned long long)(x) << PAGE_SHIFT)
-
- #endif
diff -urNp --exclude=TAGS --exclude='.hg*' linux-2.6/include/linux/skbuff.h linux-2.6-xen-fedora/include/linux/skbuff.h
--- linux-2.6/include/linux/skbuff.h 2006-07-25 18:52:10.000000000 +0200
+++ linux-2.6-xen-fedora/include/linux/skbuff.h 2006-07-26 17:11:05.000000000 +0200
[Date Prev][Date Next] [Thread Prev][Thread Next]
[Thread Index]
[Date Index]
[Author Index]