rpms/kernel/FC-5 linux-2.6-xen-uptodate-2.6.16.15.patch, 1.1, 1.2 kernel-2.6.spec, 1.2115, 1.2116 linux-2.6-crashdump-common.patch, 1.16, 1.17 linux-2.6-xen-compile-fixes.patch, 1.2, 1.3 linux-2.6-xen.patch, 1.12, 1.13
fedora-cvs-commits at redhat.com
fedora-cvs-commits at redhat.com
Thu May 11 22:04:08 UTC 2006
Author: quintela
Update of /cvs/dist/rpms/kernel/FC-5
In directory cvs.devel.redhat.com:/tmp/cvs-serv5826
Modified Files:
kernel-2.6.spec linux-2.6-crashdump-common.patch
linux-2.6-xen-compile-fixes.patch linux-2.6-xen.patch
Added Files:
linux-2.6-xen-uptodate-2.6.16.15.patch
Log Message:
rebase 3.0.2 new xen-3.0.testing
linux-2.6-xen-uptodate-2.6.16.15.patch:
arch/x86_64/kernel/entry-xen.S | 28 ++++++++-----------------
arch/x86_64/kernel/process-xen.c | 22 ++++++++-----------
arch/x86_64/kernel/setup-xen.c | 4 +++
include/asm-i386/mach-xen/asm/pgtable-2level.h | 2 +
include/asm-i386/mach-xen/asm/pgtable-3level.h | 20 +++++++++++++++++
include/asm-i386/mach-xen/asm/pgtable.h | 13 -----------
6 files changed, 47 insertions(+), 42 deletions(-)
Index: linux-2.6-xen-uptodate-2.6.16.15.patch
===================================================================
RCS file: linux-2.6-xen-uptodate-2.6.16.15.patch
diff -N linux-2.6-xen-uptodate-2.6.16.15.patch
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ linux-2.6-xen-uptodate-2.6.16.15.patch 11 May 2006 22:02:40 -0000 1.2
@@ -0,0 +1,194 @@
+diff -urNp --exclude-from=/home/quintela/config/misc/dontdiff linux-2.6.16.orig/arch/x86_64/kernel/entry-xen.S linux-2.6.16.noarch/arch/x86_64/kernel/entry-xen.S
+--- linux-2.6.16.orig/arch/x86_64/kernel/entry-xen.S 2006-05-10 14:10:50.000000000 +0200
++++ linux-2.6.16.noarch/arch/x86_64/kernel/entry-xen.S 2006-05-10 14:39:53.000000000 +0200
+@@ -221,6 +221,10 @@ rff_trace:
+ *
+ * XXX if we had a free scratch register we could save the RSP into the stack frame
+ * and report it properly in ps. Unfortunately we haven't.
++ *
++ * When user can change the frames always force IRET. That is because
++ * it deals with uncanonical addresses better. SYSRET has trouble
++ * with them due to bugs in both AMD and Intel CPUs.
+ */
+
+ ENTRY(system_call)
+@@ -289,7 +293,10 @@ sysret_signal:
+ xorl %esi,%esi # oldset -> arg2
+ call ptregscall_common
+ 1: movl $_TIF_NEED_RESCHED,%edi
+- jmp sysret_check
++ /* Use IRET because user could have changed frame. This
++ works because ptregscall_common has called FIXUP_TOP_OF_STACK. */
++ cli
++ jmp int_with_check
+
+ badsys:
+ movq $-ENOSYS,RAX-ARGOFFSET(%rsp)
+@@ -315,7 +322,8 @@ tracesys:
+ call syscall_trace_leave
+ RESTORE_TOP_OF_STACK %rbx
+ RESTORE_REST
+- jmp ret_from_sys_call
++ /* Use IRET because user could have changed frame */
++ jmp int_ret_from_sys_call
+ CFI_ENDPROC
+
+ /*
+@@ -449,25 +457,9 @@ ENTRY(stub_execve)
+ CFI_ADJUST_CFA_OFFSET -8
+ CFI_REGISTER rip, r11
+ SAVE_REST
+- movq %r11, %r15
+- CFI_REGISTER rip, r15
+ FIXUP_TOP_OF_STACK %r11
+ call sys_execve
+- GET_THREAD_INFO(%rcx)
+- bt $TIF_IA32,threadinfo_flags(%rcx)
+- CFI_REMEMBER_STATE
+- jc exec_32bit
+ RESTORE_TOP_OF_STACK %r11
+- movq %r15, %r11
+- CFI_REGISTER rip, r11
+- RESTORE_REST
+- pushq %r11
+- CFI_ADJUST_CFA_OFFSET 8
+- CFI_REL_OFFSET rip, 0
+- ret
+-
+-exec_32bit:
+- CFI_RESTORE_STATE
+ movq %rax,RAX(%rsp)
+ RESTORE_REST
+ jmp int_ret_from_sys_call
+diff -urNp --exclude-from=/home/quintela/config/misc/dontdiff linux-2.6.16.orig/arch/x86_64/kernel/process-xen.c linux-2.6.16.noarch/arch/x86_64/kernel/process-xen.c
+--- linux-2.6.16.orig/arch/x86_64/kernel/process-xen.c 2006-05-10 14:10:51.000000000 +0200
++++ linux-2.6.16.noarch/arch/x86_64/kernel/process-xen.c 2006-05-10 14:49:00.000000000 +0200
+@@ -482,18 +482,6 @@ __switch_to(struct task_struct *prev_p,
+ multicall_entry_t _mcl[8], *mcl = _mcl;
+
+ /*
+- * This is basically '__unlazy_fpu', except that we queue a
+- * multicall to indicate FPU task switch, rather than
+- * synchronously trapping to Xen.
+- */
+- if (prev_p->thread_info->status & TS_USEDFPU) {
+- __save_init_fpu(prev_p); /* _not_ save_init_fpu() */
+- mcl->op = __HYPERVISOR_fpu_taskswitch;
+- mcl->args[0] = 1;
+- mcl++;
+- }
+-
+- /*
+ * Reload esp0, LDT and the page table pointer:
+ */
+ mcl->op = __HYPERVISOR_stack_switch;
+@@ -569,6 +557,16 @@ __switch_to(struct task_struct *prev_p,
+ prev->userrsp = read_pda(oldrsp);
+ write_pda(oldrsp, next->userrsp);
+ write_pda(pcurrent, next_p);
++ /*
++ * This is basically '__unlazy_fpu', except that we queue a
++ * multicall to indicate FPU task switch, rather than
++ * synchronously trapping to Xen.
++ */
++ if (prev_p->thread_info->status & TS_USEDFPU) {
++ __save_init_fpu(prev_p); /* _not_ save_init_fpu() */
++ HYPERVISOR_fpu_taskswitch(1);
++ }
++
+ write_pda(kernelstack,
+ task_stack_page(next_p) + THREAD_SIZE - PDA_STACKOFFSET);
+
+diff -urNp --exclude-from=/home/quintela/config/misc/dontdiff linux-2.6.16.orig/arch/x86_64/kernel/setup-xen.c linux-2.6.16.noarch/arch/x86_64/kernel/setup-xen.c
+--- linux-2.6.16.orig/arch/x86_64/kernel/setup-xen.c 2006-05-10 14:10:50.000000000 +0200
++++ linux-2.6.16.noarch/arch/x86_64/kernel/setup-xen.c 2006-05-10 14:50:08.000000000 +0200
+@@ -1158,6 +1158,10 @@ static int __init init_amd(struct cpuinf
+ if (c->x86 == 15 && ((level >= 0x0f48 && level < 0x0f50) || level >= 0x0f58))
+ set_bit(X86_FEATURE_REP_GOOD, &c->x86_capability);
+
++ /* Enable workaround for FXSAVE leak */
++ if (c->x86 >= 6)
++ set_bit(X86_FEATURE_FXSAVE_LEAK, &c->x86_capability);
++
+ r = get_model_name(c);
+ if (!r) {
+ switch (c->x86) {
+diff -urNp --exclude-from=/home/quintela/config/misc/dontdiff linux-2.6.16.orig/include/asm-i386/mach-xen/asm/pgtable-2level.h linux-2.6.16.noarch/include/asm-i386/mach-xen/asm/pgtable-2level.h
+--- linux-2.6.16.orig/include/asm-i386/mach-xen/asm/pgtable-2level.h 2006-05-10 14:10:50.000000000 +0200
++++ linux-2.6.16.noarch/include/asm-i386/mach-xen/asm/pgtable-2level.h 2006-05-10 14:22:41.000000000 +0200
+@@ -33,6 +33,9 @@
+
+ #define set_pmd(pmdptr, pmdval) xen_l2_entry_update((pmdptr), (pmdval))
+
++#define pte_clear(mm,addr,xp) do { set_pte_at(mm, addr, xp, __pte(0)); } while (0)
++#define pmd_clear(xp) do { set_pmd(xp, __pmd(0)); } while (0)
+++
+ #define ptep_get_and_clear(mm,addr,xp) __pte_ma(xchg(&(xp)->pte_low, 0))
+ #define pte_same(a, b) ((a).pte_low == (b).pte_low)
+ #define pte_mfn(_pte) ((_pte).pte_low >> PAGE_SHIFT)
+diff -urNp --exclude-from=/home/quintela/config/misc/dontdiff linux-2.6.16.orig/include/asm-i386/mach-xen/asm/pgtable-3level.h linux-2.6.16.noarch/include/asm-i386/mach-xen/asm/pgtable-3level.h
+--- linux-2.6.16.orig/include/asm-i386/mach-xen/asm/pgtable-3level.h 2006-05-10 14:10:50.000000000 +0200
++++ linux-2.6.16.noarch/include/asm-i386/mach-xen/asm/pgtable-3level.h 2006-05-10 14:25:28.000000000 +0200
+@@ -107,6 +107,26 @@ static inline void pud_clear (pud_t * pu
+ #define pmd_offset(pud, address) ((pmd_t *) pud_page(*(pud)) + \
+ pmd_index(address))
+
++/*
++ * For PTEs and PDEs, we must clear the P-bit first when clearing a page table
++ * entry, so clear the bottom half first and enforce ordering with a compiler
++ * barrier.
++ */
++static inline void pte_clear(struct mm_struct *mm, unsigned long addr, pte_t *ptep)
++{
++ ptep->pte_low = 0;
++ smp_wmb();
++ ptep->pte_high = 0;
++}
++
++static inline void pmd_clear(pmd_t *pmd)
++{
++ u32 *tmp = (u32 *)pmd;
++ *tmp = 0;
++ smp_wmb();
++ *(tmp + 1) = 0;
++}
++
+ static inline pte_t ptep_get_and_clear(struct mm_struct *mm, unsigned long addr, pte_t *ptep)
+ {
+ pte_t res;
+diff -urNp --exclude-from=/home/quintela/config/misc/dontdiff linux-2.6.16.orig/include/asm-i386/mach-xen/asm/pgtable.h linux-2.6.16.noarch/include/asm-i386/mach-xen/asm/pgtable.h
+--- linux-2.6.16.orig/include/asm-i386/mach-xen/asm/pgtable.h 2006-05-10 14:10:50.000000000 +0200
++++ linux-2.6.16.noarch/include/asm-i386/mach-xen/asm/pgtable.h 2006-05-10 14:26:56.000000000 +0200
+@@ -205,14 +205,12 @@ extern unsigned long long __PAGE_KERNEL,
+ extern unsigned long pg0[];
+
+ #define pte_present(x) ((x).pte_low & (_PAGE_PRESENT | _PAGE_PROTNONE))
+-#define pte_clear(mm,addr,xp) do { set_pte_at(mm, addr, xp, __pte(0)); } while (0)
+
+ /* To avoid harmful races, pmd_none(x) should check only the lower when PAE */
+ #define pmd_none(x) (!(unsigned long)pmd_val(x))
+ /* pmd_present doesn't just test the _PAGE_PRESENT bit since wr.p.t.
+ can temporarily clear it. */
+ #define pmd_present(x) (pmd_val(x))
+-#define pmd_clear(xp) do { set_pmd(xp, __pmd(0)); } while (0)
+ #define pmd_bad(x) ((pmd_val(x) & (~PAGE_MASK & ~_PAGE_USER & ~_PAGE_PRESENT)) != (_KERNPG_TABLE & ~_PAGE_PRESENT))
+
+
+@@ -272,16 +270,7 @@ static inline pte_t ptep_get_and_clear_f
+ pte_t pte;
+ if (full) {
+ pte = *ptep;
+-#ifdef CONFIG_X86_PAE
+- /* Cannot do this in a single step, as the compiler may
+- issue the two stores in either order, but the hypervisor
+- must not see the high part before the low one. */
+- ptep->pte_low = 0;
+- barrier();
+- ptep->pte_high = 0;
+-#else
+- *ptep = __pte(0);
+-#endif
++ pte_clear(mm, addr, ptep);
+ } else {
+ pte = ptep_get_and_clear(mm, addr, ptep);
+ }
Index: kernel-2.6.spec
===================================================================
RCS file: /cvs/dist/rpms/kernel/FC-5/kernel-2.6.spec,v
retrieving revision 1.2115
retrieving revision 1.2116
diff -u -r1.2115 -r1.2116
--- kernel-2.6.spec 11 May 2006 03:11:56 -0000 1.2115
+++ kernel-2.6.spec 11 May 2006 22:02:19 -0000 1.2116
@@ -181,7 +181,7 @@
Source0: ftp://ftp.kernel.org/pub/linux/kernel/v2.6/linux-%{kversion}.tar.bz2
-Source1: xen-20060301.tar.bz2
+Source1: xen-20060510.tar.bz2
Source2: Config.mk
Source10: COPYING.modules
@@ -259,6 +259,7 @@
Patch704: linux-2.6-xen-vsyscall_base.patch
Patch706: linux-2.6-xen_remap_vma_flags.patch
Patch709: linux-2.6-percpu-NR_CPUS-hotplug-fix.patch
+Patch710: linux-2.6-xen-uptodate-2.6.16.15.patch
#
# Patches 800 through 899 are reserved for bugfixes to the core system
@@ -823,6 +824,7 @@
%patch704 -p1
%patch706 -p1
%patch709 -p1
+%patch710 -p1
%endif
linux-2.6-crashdump-common.patch:
linux-2.6.12/Documentation/sysrq.txt | 8
linux-2.6.12/arch/i386/kernel/nmi.c | 1
linux-2.6.12/arch/i386/kernel/traps.c | 3
linux-2.6.12/arch/i386/mm/init.c | 47 +++++
linux-2.6.12/arch/ia64/kernel/process.c | 30 ++-
linux-2.6.12/arch/ia64/kernel/traps.c | 6
linux-2.6.12/arch/ia64/mm/contig.c | 3
linux-2.6.12/arch/ia64/mm/discontig.c | 3
linux-2.6.12/arch/ia64/mm/init.c | 90 +++++++++
linux-2.6.12/arch/powerpc/kernel/process.c | 1
linux-2.6.12/arch/powerpc/kernel/traps.c | 3
linux-2.6.12/arch/powerpc/mm/mem.c | 29 +++
linux-2.6.12/arch/s390/kernel/traps.c | 6
linux-2.6.12/arch/x86_64/kernel/process.c | 2
linux-2.6.12/arch/x86_64/kernel/traps.c | 6
linux-2.6.12/arch/x86_64/mm/init.c | 32 +++
linux-2.6.12/drivers/char/sysrq.c | 2
linux-2.6.12/include/asm-generic/crashdump.h | 47 +++++
linux-2.6.12/include/asm-i386/crashdump.h | 123 +++++++++++++
linux-2.6.12/include/asm-i386/kmap_types.h | 4
linux-2.6.12/include/asm-ia64/crashdump.h | 72 +++++++
linux-2.6.12/include/asm-powerpc/crashdump.h | 61 ++++++
linux-2.6.12/include/asm-x86_64/crashdump.h | 86 +++++++++
linux-2.6.12/include/linux/kernel.h | 18 +
linux-2.6.12/kernel/Makefile | 2
linux-2.6.12/kernel/dump.c | 246 +++++++++++++++++++++++++++
linux-2.6.12/kernel/panic.c | 4
linux-2.6.12/kernel/printk.c | 20 ++
linux-2.6.12/kernel/sched.c | 2
linux-2.6.13/arch/x86_64/mm/fault.c | 1
linux-2.6.13/drivers/char/sysrq.c | 5
linux-2.6.16.noarch/arch/i386/mm/pgtable.c | 2
32 files changed, 951 insertions(+), 14 deletions(-)
Index: linux-2.6-crashdump-common.patch
===================================================================
RCS file: /cvs/dist/rpms/kernel/FC-5/linux-2.6-crashdump-common.patch,v
retrieving revision 1.16
retrieving revision 1.17
diff -u -r1.16 -r1.17
--- linux-2.6-crashdump-common.patch 4 May 2006 21:23:42 -0000 1.16
+++ linux-2.6-crashdump-common.patch 11 May 2006 22:02:37 -0000 1.17
@@ -889,14 +889,6 @@
* valid. The argument is a physical page number.
--- linux-2.6.16.noarch/arch/i386/mm/pgtable.c~ 2006-03-24 21:29:33.000000000 -0500
+++ linux-2.6.16.noarch/arch/i386/mm/pgtable.c 2006-03-24 21:29:42.000000000 -0500
-@@ -13,6 +13,7 @@
- #include <linux/slab.h>
- #include <linux/pagemap.h>
- #include <linux/spinlock.h>
-+#include <linux/module.h>
-
- #include <asm/system.h>
- #include <asm/pgtable.h>
@@ -63,6 +64,8 @@
printk(KERN_INFO "%lu pages pagetables\n", ps.nr_page_table_pages);
}
linux-2.6-xen-compile-fixes.patch:
arch/i386/kernel/acpi/boot-xen.c | 3 +-
linux-2.6.15.ia64/fs/Kconfig | 1
linux-2.6.15.xen/arch/i386/kernel/Makefile | 3 --
linux-2.6.15.xen/arch/i386/kernel/smp-xen.c | 1
linux-2.6.15.xen/arch/i386/mm/init-xen.c | 1
linux-2.6.15.xen/arch/x86_64/kernel/pmtimer.c | 2 +
linux-2.6.15.xen/arch/x86_64/kernel/process-xen.c | 6 ----
linux-2.6.15.xen/arch/x86_64/mm/fault-xen.c | 2 -
linux-2.6.15.xen/include/asm-i386/mach-xen/asm/desc.h | 14 +++++++++++
linux-2.6.15.xen/include/asm-i386/mach-xen/asm/mmu.h | 7 +++++
linux-2.6.15.xen/include/asm-i386/mach-xen/asm/pgalloc.h | 1
linux-2.6.15.xen/include/asm-i386/mach-xen/asm/processor.h | 7 ++++-
linux-2.6.15.xen/include/asm-i386/mach-xen/asm/swiotlb.h | 1
linux-2.6.15.xen/include/asm-x86_64/mach-xen/asm/pgalloc.h | 7 +++++
linux-2.6.15.xen/include/asm-x86_64/mach-xen/asm/pgtable.h | 2 -
linux-2.6.15.xen/include/asm-x86_64/mach-xen/asm/processor.h | 2 +
net/core/dev.c | 6 +---
17 files changed, 49 insertions(+), 17 deletions(-)
Index: linux-2.6-xen-compile-fixes.patch
===================================================================
RCS file: /cvs/dist/rpms/kernel/FC-5/linux-2.6-xen-compile-fixes.patch,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- linux-2.6-xen-compile-fixes.patch 6 Mar 2006 16:31:47 -0000 1.2
+++ linux-2.6-xen-compile-fixes.patch 11 May 2006 22:02:37 -0000 1.3
@@ -231,3 +231,34 @@
return 0;
}
+--- linux-2.6.16.orig/net/core/dev.c 2006-05-10 16:52:15.000000000 +0200
++++ linux-2.6.16.noarch/net/core/dev.c 2006-05-10 22:13:26.000000000 +0200
+@@ -1252,8 +1252,6 @@ inline int skb_checksum_setup(struct sk_
+ out:
+ return -EPROTO;
+ }
+-#else
+-inline int skb_checksum_setup(struct sk_buff *skb) {}
+ #endif
+
+
+@@ -1306,9 +1304,10 @@ int dev_queue_xmit(struct sk_buff *skb)
+ /* If a checksum-deferred packet is forwarded to a device that needs a
+ * checksum, correct the pointers and force checksumming.
+ */
++#ifdef CONFIG_XEN
+ if(skb_checksum_setup(skb))
+ goto out_kfree_skb;
+-
++#endif
+ /* If packet is not checksummed and device does not support
+ * checksumming for this protocol, complete checksumming here.
+ */
+@@ -3362,7 +3361,6 @@ EXPORT_SYMBOL(unregister_netdevice_notif
+ EXPORT_SYMBOL(net_enable_timestamp);
+ EXPORT_SYMBOL(net_disable_timestamp);
+ EXPORT_SYMBOL(dev_get_flags);
+-EXPORT_SYMBOL(skb_checksum_setup);
+
+ #if defined(CONFIG_BRIDGE) || defined(CONFIG_BRIDGE_MODULE)
+ EXPORT_SYMBOL(br_handle_frame_hook);
linux-2.6-xen.patch:
linux-2.6.16-xen/arch/i386/Kconfig | 98
linux-2.6.16-xen/arch/i386/Kconfig.cpu | 2
linux-2.6.16-xen/arch/i386/Makefile | 23
linux-2.6.16-xen/arch/i386/boot-xen/Makefile | 21
linux-2.6.16-xen/arch/i386/kernel/Makefile | 33
linux-2.6.16-xen/arch/i386/kernel/acpi/Makefile | 4
linux-2.6.16-xen/arch/i386/kernel/acpi/boot-xen.c | 1161 ++++
linux-2.6.16-xen/arch/i386/kernel/apic-xen.c | 140
linux-2.6.16-xen/arch/i386/kernel/asm-offsets.c | 5
linux-2.6.16-xen/arch/i386/kernel/cpu/Makefile | 5
linux-2.6.16-xen/arch/i386/kernel/cpu/common-xen.c | 715 ++
linux-2.6.16-xen/arch/i386/kernel/cpu/mtrr/Makefile | 7
linux-2.6.16-xen/arch/i386/kernel/cpu/mtrr/main-xen.c | 196
linux-2.6.16-xen/arch/i386/kernel/early_printk-xen.c | 2
linux-2.6.16-xen/arch/i386/kernel/entry-xen.S | 876 +++
linux-2.6.16-xen/arch/i386/kernel/fixup.c | 96
linux-2.6.16-xen/arch/i386/kernel/head-xen.S | 171
linux-2.6.16-xen/arch/i386/kernel/init_task-xen.c | 51
linux-2.6.16-xen/arch/i386/kernel/io_apic-xen.c | 2753 ++++++++++
linux-2.6.16-xen/arch/i386/kernel/ioport-xen.c | 122
linux-2.6.16-xen/arch/i386/kernel/irq-xen.c | 306 +
linux-2.6.16-xen/arch/i386/kernel/ldt-xen.c | 269
linux-2.6.16-xen/arch/i386/kernel/microcode-xen.c | 165
linux-2.6.16-xen/arch/i386/kernel/mpparse-xen.c | 1188 ++++
linux-2.6.16-xen/arch/i386/kernel/pci-dma-xen.c | 344 +
linux-2.6.16-xen/arch/i386/kernel/process-xen.c | 833 +++
linux-2.6.16-xen/arch/i386/kernel/quirks-xen.c | 48
linux-2.6.16-xen/arch/i386/kernel/setup-xen.c | 1892 ++++++
linux-2.6.16-xen/arch/i386/kernel/smp-xen.c | 617 ++
linux-2.6.16-xen/arch/i386/kernel/swiotlb.c | 674 ++
linux-2.6.16-xen/arch/i386/kernel/sysenter.c | 90
linux-2.6.16-xen/arch/i386/kernel/time-xen.c | 1097 +++
linux-2.6.16-xen/arch/i386/kernel/traps-xen.c | 1094 +++
linux-2.6.16-xen/arch/i386/kernel/vmlinux.lds.S | 4
linux-2.6.16-xen/arch/i386/kernel/vsyscall-note-xen.S | 32
linux-2.6.16-xen/arch/i386/kernel/vsyscall.S | 2
linux-2.6.16-xen/arch/i386/mach-xen/Makefile | 5
linux-2.6.16-xen/arch/i386/mach-xen/setup.c | 37
linux-2.6.16-xen/arch/i386/mm/Makefile | 8
linux-2.6.16-xen/arch/i386/mm/fault-xen.c | 617 ++
linux-2.6.16-xen/arch/i386/mm/highmem-xen.c | 123
linux-2.6.16-xen/arch/i386/mm/hypervisor.c | 424 +
linux-2.6.16-xen/arch/i386/mm/init-xen.c | 854 +++
linux-2.6.16-xen/arch/i386/mm/ioremap-xen.c | 464 +
linux-2.6.16-xen/arch/i386/mm/pgtable-xen.c | 652 ++
linux-2.6.16-xen/arch/i386/mm/pgtable.c | 63
linux-2.6.16-xen/arch/i386/pci/Makefile | 9
linux-2.6.16-xen/arch/i386/pci/irq-xen.c | 1202 ++++
linux-2.6.16-xen/arch/i386/pci/pcifront.c | 55
linux-2.6.16-xen/arch/i386/power/Makefile | 4
linux-2.6.16-xen/arch/ia64/Kconfig | 51
linux-2.6.16-xen/arch/ia64/Makefile | 16
linux-2.6.16-xen/arch/ia64/hp/sim/Makefile | 2
linux-2.6.16-xen/arch/ia64/kernel/entry.S | 32
linux-2.6.16-xen/arch/ia64/kernel/head.S | 6
linux-2.6.16-xen/arch/ia64/kernel/pal.S | 5
linux-2.6.16-xen/arch/ia64/kernel/sal.c | 3
linux-2.6.16-xen/arch/ia64/kernel/setup.c | 32
linux-2.6.16-xen/arch/ia64/xen-mkbuildtree-post | 2
linux-2.6.16-xen/arch/ia64/xen-mkbuildtree-pre | 50
linux-2.6.16-xen/arch/ia64/xen/Makefile | 5
linux-2.6.16-xen/arch/ia64/xen/drivers/Makefile | 20
linux-2.6.16-xen/arch/ia64/xen/drivers/README | 2
linux-2.6.16-xen/arch/ia64/xen/drivers/coreMakefile | 26
linux-2.6.16-xen/arch/ia64/xen/drivers/evtchn_ia64.c | 273
linux-2.6.16-xen/arch/ia64/xen/drivers/patches/blkback.c.patch | 33
linux-2.6.16-xen/arch/ia64/xen/drivers/patches/console.c.patch | 11
linux-2.6.16-xen/arch/ia64/xen/drivers/patches/devmem.c.patch | 2
linux-2.6.16-xen/arch/ia64/xen/drivers/patches/gnttab.c.patch | 33
linux-2.6.16-xen/arch/ia64/xen/drivers/patches/privcmd.c.patch | 30
linux-2.6.16-xen/arch/ia64/xen/drivers/xenia64_init.c | 55
linux-2.6.16-xen/arch/ia64/xen/hypercall.S | 365 +
linux-2.6.16-xen/arch/ia64/xen/xen_ksyms.c | 12
linux-2.6.16-xen/arch/ia64/xen/xenconsole.c | 19
linux-2.6.16-xen/arch/ia64/xen/xenentry.S | 850 +++
linux-2.6.16-xen/arch/ia64/xen/xenhpski.c | 19
linux-2.6.16-xen/arch/ia64/xen/xenivt.S | 2032 +++++++
linux-2.6.16-xen/arch/ia64/xen/xenminstate.h | 367 +
linux-2.6.16-xen/arch/ia64/xen/xenpal.S | 73
linux-2.6.16-xen/arch/ia64/xen/xensetup.S | 35
linux-2.6.16-xen/arch/um/kernel/physmem.c | 4
linux-2.6.16-xen/arch/x86_64/Kconfig | 58
linux-2.6.16-xen/arch/x86_64/Makefile | 20
linux-2.6.16-xen/arch/x86_64/ia32/ia32entry-xen.S | 721 ++
linux-2.6.16-xen/arch/x86_64/ia32/syscall32-xen.c | 128
linux-2.6.16-xen/arch/x86_64/ia32/syscall32_syscall-xen.S | 28
linux-2.6.16-xen/arch/x86_64/ia32/vsyscall-int80.S | 58
linux-2.6.16-xen/arch/x86_64/ia32/vsyscall-sigreturn.S | 2
linux-2.6.16-xen/arch/x86_64/kernel/Makefile | 18
linux-2.6.16-xen/arch/x86_64/kernel/acpi/Makefile | 1
linux-2.6.16-xen/arch/x86_64/kernel/apic-xen.c | 198
linux-2.6.16-xen/arch/x86_64/kernel/asm-offsets.c | 2
linux-2.6.16-xen/arch/x86_64/kernel/e820-xen.c | 744 ++
linux-2.6.16-xen/arch/x86_64/kernel/early_printk-xen.c | 306 +
linux-2.6.16-xen/arch/x86_64/kernel/entry-xen.S | 1149 ++++
linux-2.6.16-xen/arch/x86_64/kernel/genapic-xen.c | 144
linux-2.6.16-xen/arch/x86_64/kernel/genapic_xen.c | 162
linux-2.6.16-xen/arch/x86_64/kernel/head-xen.S | 156
linux-2.6.16-xen/arch/x86_64/kernel/head64-xen.c | 140
linux-2.6.16-xen/arch/x86_64/kernel/init_task.c | 3
linux-2.6.16-xen/arch/x86_64/kernel/io_apic-xen.c | 2231 ++++++++
linux-2.6.16-xen/arch/x86_64/kernel/ioport-xen.c | 58
linux-2.6.16-xen/arch/x86_64/kernel/irq-xen.c | 168
linux-2.6.16-xen/arch/x86_64/kernel/ldt-xen.c | 282 +
linux-2.6.16-xen/arch/x86_64/kernel/mpparse-xen.c | 1005 +++
linux-2.6.16-xen/arch/x86_64/kernel/pci-swiotlb-xen.c | 54
linux-2.6.16-xen/arch/x86_64/kernel/process-xen.c | 810 ++
linux-2.6.16-xen/arch/x86_64/kernel/setup-xen.c | 1661 ++++++
linux-2.6.16-xen/arch/x86_64/kernel/setup64-xen.c | 360 +
linux-2.6.16-xen/arch/x86_64/kernel/smp-xen.c | 596 ++
linux-2.6.16-xen/arch/x86_64/kernel/traps-xen.c | 1023 +++
linux-2.6.16-xen/arch/x86_64/kernel/vsyscall-xen.c | 239
linux-2.6.16-xen/arch/x86_64/kernel/x8664_ksyms-xen.c | 163
linux-2.6.16-xen/arch/x86_64/kernel/xen_entry.S | 40
linux-2.6.16-xen/arch/x86_64/mm/Makefile | 10
linux-2.6.16-xen/arch/x86_64/mm/fault-xen.c | 595 ++
linux-2.6.16-xen/arch/x86_64/mm/init-xen.c | 1101 +++
linux-2.6.16-xen/arch/x86_64/mm/pageattr-xen.c | 401 +
linux-2.6.16-xen/arch/x86_64/pci/Makefile | 12
linux-2.6.16-xen/drivers/Makefile | 1
linux-2.6.16-xen/drivers/acpi/Kconfig | 3
linux-2.6.16-xen/drivers/acpi/tables.c | 7
linux-2.6.16-xen/drivers/char/mem.c | 6
linux-2.6.16-xen/drivers/char/tpm/Kconfig | 14
linux-2.6.16-xen/drivers/char/tpm/Makefile | 1
linux-2.6.16-xen/drivers/char/tpm/tpm.c | 44
linux-2.6.16-xen/drivers/char/tpm/tpm.h | 7
linux-2.6.16-xen/drivers/char/tpm/tpm_xen.c | 536 +
linux-2.6.16-xen/drivers/char/tty_io.c | 7
linux-2.6.16-xen/drivers/firmware/Kconfig | 2
linux-2.6.16-xen/drivers/pci/Kconfig | 1
linux-2.6.16-xen/drivers/serial/Kconfig | 1
linux-2.6.16-xen/drivers/video/Kconfig | 2
linux-2.6.16-xen/drivers/xen/Kconfig | 223
linux-2.6.16-xen/drivers/xen/Makefile | 22
linux-2.6.16-xen/drivers/xen/balloon/Makefile | 2
linux-2.6.16-xen/drivers/xen/balloon/balloon.c | 592 ++
linux-2.6.16-xen/drivers/xen/blkback/Makefile | 3
linux-2.6.16-xen/drivers/xen/blkback/blkback.c | 596 ++
linux-2.6.16-xen/drivers/xen/blkback/common.h | 148
linux-2.6.16-xen/drivers/xen/blkback/interface.c | 188
linux-2.6.16-xen/drivers/xen/blkback/vbd.c | 126
linux-2.6.16-xen/drivers/xen/blkback/xenbus.c | 425 +
linux-2.6.16-xen/drivers/xen/blkfront/Makefile | 5
linux-2.6.16-xen/drivers/xen/blkfront/blkfront.c | 819 ++
linux-2.6.16-xen/drivers/xen/blkfront/block.h | 165
linux-2.6.16-xen/drivers/xen/blkfront/vbd.c | 327 +
linux-2.6.16-xen/drivers/xen/blktap/Makefile | 3
linux-2.6.16-xen/drivers/xen/blktap/blktap.c | 910 +++
linux-2.6.16-xen/drivers/xen/blktap/common.h | 110
linux-2.6.16-xen/drivers/xen/blktap/interface.c | 146
linux-2.6.16-xen/drivers/xen/blktap/xenbus.c | 233
linux-2.6.16-xen/drivers/xen/char/Makefile | 2
linux-2.6.16-xen/drivers/xen/char/mem.c | 192
linux-2.6.16-xen/drivers/xen/console/Makefile | 2
linux-2.6.16-xen/drivers/xen/console/console.c | 648 ++
linux-2.6.16-xen/drivers/xen/console/xencons_ring.c | 151
linux-2.6.16-xen/drivers/xen/core/Makefile | 11
linux-2.6.16-xen/drivers/xen/core/evtchn.c | 869 +++
linux-2.6.16-xen/drivers/xen/core/features.c | 30
linux-2.6.16-xen/drivers/xen/core/gnttab.c | 464 +
linux-2.6.16-xen/drivers/xen/core/hypervisor_sysfs.c | 57
linux-2.6.16-xen/drivers/xen/core/reboot.c | 381 +
linux-2.6.16-xen/drivers/xen/core/skbuff.c | 144
linux-2.6.16-xen/drivers/xen/core/smpboot.c | 581 ++
linux-2.6.16-xen/drivers/xen/core/xen_proc.c | 29
linux-2.6.16-xen/drivers/xen/core/xen_sysfs.c | 311 +
linux-2.6.16-xen/drivers/xen/evtchn/Makefile | 2
linux-2.6.16-xen/drivers/xen/evtchn/evtchn.c | 464 +
linux-2.6.16-xen/drivers/xen/net_driver_util.c | 68
linux-2.6.16-xen/drivers/xen/netback/Makefile | 5
linux-2.6.16-xen/drivers/xen/netback/common.h | 133
linux-2.6.16-xen/drivers/xen/netback/interface.c | 334 +
linux-2.6.16-xen/drivers/xen/netback/loopback.c | 254
linux-2.6.16-xen/drivers/xen/netback/netback.c | 868 +++
linux-2.6.16-xen/drivers/xen/netback/xenbus.c | 366 +
linux-2.6.16-xen/drivers/xen/netfront/Makefile | 4
linux-2.6.16-xen/drivers/xen/netfront/netfront.c | 1519 +++++
linux-2.6.16-xen/drivers/xen/pciback/Makefile | 10
linux-2.6.16-xen/drivers/xen/pciback/conf_space.c | 345 +
linux-2.6.16-xen/drivers/xen/pciback/conf_space.h | 97
linux-2.6.16-xen/drivers/xen/pciback/conf_space_header.c | 267
linux-2.6.16-xen/drivers/xen/pciback/passthrough.c | 157
linux-2.6.16-xen/drivers/xen/pciback/pci_stub.c | 695 ++
linux-2.6.16-xen/drivers/xen/pciback/pciback.h | 79
linux-2.6.16-xen/drivers/xen/pciback/pciback_ops.c | 74
linux-2.6.16-xen/drivers/xen/pciback/vpci.c | 204
linux-2.6.16-xen/drivers/xen/pciback/xenbus.c | 446 +
linux-2.6.16-xen/drivers/xen/pcifront/Makefile | 7
linux-2.6.16-xen/drivers/xen/pcifront/pci.c | 46
linux-2.6.16-xen/drivers/xen/pcifront/pci_op.c | 272
linux-2.6.16-xen/drivers/xen/pcifront/pcifront.h | 40
linux-2.6.16-xen/drivers/xen/pcifront/xenbus.c | 294 +
linux-2.6.16-xen/drivers/xen/privcmd/Makefile | 2
linux-2.6.16-xen/drivers/xen/privcmd/privcmd.c | 302 +
linux-2.6.16-xen/drivers/xen/tpmback/Makefile | 4
linux-2.6.16-xen/drivers/xen/tpmback/common.h | 91
linux-2.6.16-xen/drivers/xen/tpmback/interface.c | 194
linux-2.6.16-xen/drivers/xen/tpmback/tpmback.c | 1060 +++
linux-2.6.16-xen/drivers/xen/tpmback/xenbus.c | 328 +
linux-2.6.16-xen/drivers/xen/tpmfront/Makefile | 2
linux-2.6.16-xen/drivers/xen/tpmfront/tpmfront.c | 731 ++
linux-2.6.16-xen/drivers/xen/tpmfront/tpmfront.h | 40
linux-2.6.16-xen/drivers/xen/util.c | 80
linux-2.6.16-xen/drivers/xen/xenbus/Makefile | 12
linux-2.6.16-xen/drivers/xen/xenbus/xenbus_backend_client.c | 152
linux-2.6.16-xen/drivers/xen/xenbus/xenbus_client.c | 284 +
linux-2.6.16-xen/drivers/xen/xenbus/xenbus_comms.c | 218
linux-2.6.16-xen/drivers/xen/xenbus/xenbus_comms.h | 53
linux-2.6.16-xen/drivers/xen/xenbus/xenbus_dev.c | 255
linux-2.6.16-xen/drivers/xen/xenbus/xenbus_probe.c | 1093 +++
linux-2.6.16-xen/drivers/xen/xenbus/xenbus_xs.c | 856 +++
linux-2.6.16-xen/fs/Kconfig | 1
linux-2.6.16-xen/include/asm-i386/a.out.h | 2
linux-2.6.16-xen/include/asm-i386/apic.h | 2
linux-2.6.16-xen/include/asm-i386/elf.h | 7
linux-2.6.16-xen/include/asm-i386/fixmap.h | 13
linux-2.6.16-xen/include/asm-i386/mach-xen/asm/agp.h | 37
linux-2.6.16-xen/include/asm-i386/mach-xen/asm/desc.h | 164
linux-2.6.16-xen/include/asm-i386/mach-xen/asm/dma-mapping.h | 156
linux-2.6.16-xen/include/asm-i386/mach-xen/asm/fixmap.h | 156
linux-2.6.16-xen/include/asm-i386/mach-xen/asm/floppy.h | 147
linux-2.6.16-xen/include/asm-i386/mach-xen/asm/highmem.h | 81
linux-2.6.16-xen/include/asm-i386/mach-xen/asm/hw_irq.h | 73
linux-2.6.16-xen/include/asm-i386/mach-xen/asm/hypercall.h | 342 +
linux-2.6.16-xen/include/asm-i386/mach-xen/asm/hypervisor.h | 224
linux-2.6.16-xen/include/asm-i386/mach-xen/asm/io.h | 401 +
linux-2.6.16-xen/include/asm-i386/mach-xen/asm/kmap_types.h | 32
linux-2.6.16-xen/include/asm-i386/mach-xen/asm/mmu.h | 21
linux-2.6.16-xen/include/asm-i386/mach-xen/asm/mmu_context.h | 105
linux-2.6.16-xen/include/asm-i386/mach-xen/asm/page.h | 327 +
linux-2.6.16-xen/include/asm-i386/mach-xen/asm/param.h | 24
linux-2.6.16-xen/include/asm-i386/mach-xen/asm/pci.h | 154
linux-2.6.16-xen/include/asm-i386/mach-xen/asm/pgalloc.h | 64
linux-2.6.16-xen/include/asm-i386/mach-xen/asm/pgtable-2level-defs.h | 21
linux-2.6.16-xen/include/asm-i386/mach-xen/asm/pgtable-2level.h | 83
linux-2.6.16-xen/include/asm-i386/mach-xen/asm/pgtable-3level-defs.h | 25
linux-2.6.16-xen/include/asm-i386/mach-xen/asm/pgtable-3level.h | 181
linux-2.6.16-xen/include/asm-i386/mach-xen/asm/pgtable.h | 521 +
linux-2.6.16-xen/include/asm-i386/mach-xen/asm/processor.h | 753 ++
linux-2.6.16-xen/include/asm-i386/mach-xen/asm/ptrace.h | 90
linux-2.6.16-xen/include/asm-i386/mach-xen/asm/scatterlist.h | 22
linux-2.6.16-xen/include/asm-i386/mach-xen/asm/segment.h | 117
linux-2.6.16-xen/include/asm-i386/mach-xen/asm/setup.h | 66
linux-2.6.16-xen/include/asm-i386/mach-xen/asm/smp.h | 103
linux-2.6.16-xen/include/asm-i386/mach-xen/asm/spinlock.h | 217
linux-2.6.16-xen/include/asm-i386/mach-xen/asm/swiotlb.h | 43
linux-2.6.16-xen/include/asm-i386/mach-xen/asm/synch_bitops.h | 141
linux-2.6.16-xen/include/asm-i386/mach-xen/asm/system.h | 679 ++
linux-2.6.16-xen/include/asm-i386/mach-xen/asm/tlbflush.h | 102
linux-2.6.16-xen/include/asm-i386/mach-xen/asm/vga.h | 20
linux-2.6.16-xen/include/asm-i386/mach-xen/irq_vectors.h | 125
linux-2.6.16-xen/include/asm-i386/mach-xen/mach_traps.h | 33
linux-2.6.16-xen/include/asm-i386/mach-xen/setup_arch_post.h | 45
linux-2.6.16-xen/include/asm-i386/mach-xen/setup_arch_pre.h | 5
linux-2.6.16-xen/include/asm-i386/page.h | 4
linux-2.6.16-xen/include/asm-i386/spinlock.h | 6
linux-2.6.16-xen/include/asm-i386/system.h | 2
linux-2.6.16-xen/include/asm-ia64/fixmap.h | 2
linux-2.6.16-xen/include/asm-ia64/gcc_intrin.h | 60
linux-2.6.16-xen/include/asm-ia64/hypercall.h | 274
linux-2.6.16-xen/include/asm-ia64/hypervisor.h | 138
linux-2.6.16-xen/include/asm-ia64/intel_intrin.h | 68
linux-2.6.16-xen/include/asm-ia64/meminit.h | 5
linux-2.6.16-xen/include/asm-ia64/pal.h | 1
linux-2.6.16-xen/include/asm-ia64/privop.h | 59
linux-2.6.16-xen/include/asm-ia64/processor.h | 1
linux-2.6.16-xen/include/asm-ia64/synch_bitops.h | 61
linux-2.6.16-xen/include/asm-ia64/system.h | 4
linux-2.6.16-xen/include/asm-ia64/xen/privop.h | 277 +
linux-2.6.16-xen/include/asm-um/page.h | 2
linux-2.6.16-xen/include/asm-x86_64/apic.h | 2
linux-2.6.16-xen/include/asm-x86_64/mach-xen/asm/arch_hooks.h | 27
linux-2.6.16-xen/include/asm-x86_64/mach-xen/asm/bootsetup.h | 42
linux-2.6.16-xen/include/asm-x86_64/mach-xen/asm/desc.h | 263
linux-2.6.16-xen/include/asm-x86_64/mach-xen/asm/dma-mapping.h | 191
linux-2.6.16-xen/include/asm-x86_64/mach-xen/asm/fixmap.h | 109
linux-2.6.16-xen/include/asm-x86_64/mach-xen/asm/floppy.h | 206
linux-2.6.16-xen/include/asm-x86_64/mach-xen/asm/hw_irq.h | 141
linux-2.6.16-xen/include/asm-x86_64/mach-xen/asm/hypercall.h | 343 +
linux-2.6.16-xen/include/asm-x86_64/mach-xen/asm/hypervisor.h | 2
linux-2.6.16-xen/include/asm-x86_64/mach-xen/asm/io.h | 359 +
linux-2.6.16-xen/include/asm-x86_64/mach-xen/asm/irq.h | 39
linux-2.6.16-xen/include/asm-x86_64/mach-xen/asm/mmu.h | 33
linux-2.6.16-xen/include/asm-x86_64/mach-xen/asm/mmu_context.h | 134
linux-2.6.16-xen/include/asm-x86_64/mach-xen/asm/msr.h | 399 +
linux-2.6.16-xen/include/asm-x86_64/mach-xen/asm/nmi.h | 75
linux-2.6.16-xen/include/asm-x86_64/mach-xen/asm/page.h | 318 +
linux-2.6.16-xen/include/asm-x86_64/mach-xen/asm/pci.h | 174
linux-2.6.16-xen/include/asm-x86_64/mach-xen/asm/pgalloc.h | 198
linux-2.6.16-xen/include/asm-x86_64/mach-xen/asm/pgtable.h | 560 ++
linux-2.6.16-xen/include/asm-x86_64/mach-xen/asm/processor.h | 493 +
linux-2.6.16-xen/include/asm-x86_64/mach-xen/asm/ptrace.h | 125
linux-2.6.16-xen/include/asm-x86_64/mach-xen/asm/smp.h | 152
linux-2.6.16-xen/include/asm-x86_64/mach-xen/asm/synch_bitops.h | 2
linux-2.6.16-xen/include/asm-x86_64/mach-xen/asm/system.h | 434 +
linux-2.6.16-xen/include/asm-x86_64/mach-xen/asm/timer.h | 67
linux-2.6.16-xen/include/asm-x86_64/mach-xen/asm/tlbflush.h | 104
linux-2.6.16-xen/include/asm-x86_64/mach-xen/asm/vga.h | 20
linux-2.6.16-xen/include/asm-x86_64/mach-xen/asm/xor.h | 328 +
linux-2.6.16-xen/include/asm-x86_64/mach-xen/irq_vectors.h | 123
linux-2.6.16-xen/include/asm-x86_64/mach-xen/mach_time.h | 122
linux-2.6.16-xen/include/asm-x86_64/mach-xen/mach_timer.h | 48
linux-2.6.16-xen/include/asm-x86_64/mach-xen/setup_arch_post.h | 28
linux-2.6.16-xen/include/asm-x86_64/mach-xen/setup_arch_pre.h | 5
linux-2.6.16-xen/include/linux/gfp.h | 6
linux-2.6.16-xen/include/linux/highmem.h | 6
linux-2.6.16-xen/include/linux/mm.h | 10
linux-2.6.16-xen/include/linux/skbuff.h | 13
linux-2.6.16-xen/include/xen/balloon.h | 73
linux-2.6.16-xen/include/xen/driver_util.h | 26
linux-2.6.16-xen/include/xen/evtchn.h | 126
linux-2.6.16-xen/include/xen/features.h | 20
linux-2.6.16-xen/include/xen/foreign_page.h | 40
linux-2.6.16-xen/include/xen/gnttab.h | 126
linux-2.6.16-xen/include/xen/hypervisor_sysfs.h | 32
linux-2.6.16-xen/include/xen/interface/COPYING | 28
linux-2.6.16-xen/include/xen/interface/acm.h | 181
linux-2.6.16-xen/include/xen/interface/acm_ops.h | 98
linux-2.6.16-xen/include/xen/interface/arch-ia64.h | 337 +
linux-2.6.16-xen/include/xen/interface/arch-x86_32.h | 195
linux-2.6.16-xen/include/xen/interface/arch-x86_64.h | 271
linux-2.6.16-xen/include/xen/interface/dom0_ops.h | 533 +
linux-2.6.16-xen/include/xen/interface/event_channel.h | 205
linux-2.6.16-xen/include/xen/interface/features.h | 53
linux-2.6.16-xen/include/xen/interface/grant_table.h | 311 +
linux-2.6.16-xen/include/xen/interface/hvm/hvm_info_table.h | 24
linux-2.6.16-xen/include/xen/interface/hvm/ioreq.h | 94
linux-2.6.16-xen/include/xen/interface/hvm/vmx_assist.h | 97
linux-2.6.16-xen/include/xen/interface/io/blkif.h | 85
linux-2.6.16-xen/include/xen/interface/io/console.h | 33
linux-2.6.16-xen/include/xen/interface/io/netif.h | 84
linux-2.6.16-xen/include/xen/interface/io/pciif.h | 55
linux-2.6.16-xen/include/xen/interface/io/ring.h | 265
linux-2.6.16-xen/include/xen/interface/io/tpmif.h | 56
linux-2.6.16-xen/include/xen/interface/io/xenbus.h | 42
linux-2.6.16-xen/include/xen/interface/io/xs_wire.h | 97
linux-2.6.16-xen/include/xen/interface/memory.h | 155
linux-2.6.16-xen/include/xen/interface/nmi.h | 59
linux-2.6.16-xen/include/xen/interface/physdev.h | 71
linux-2.6.16-xen/include/xen/interface/sched.h | 87
linux-2.6.16-xen/include/xen/interface/sched_ctl.h | 64
linux-2.6.16-xen/include/xen/interface/trace.h | 86
linux-2.6.16-xen/include/xen/interface/vcpu.h | 119
linux-2.6.16-xen/include/xen/interface/version.h | 64
linux-2.6.16-xen/include/xen/interface/xen-compat.h | 31
linux-2.6.16-xen/include/xen/interface/xen.h | 451 +
linux-2.6.16-xen/include/xen/net_driver_util.h | 58
linux-2.6.16-xen/include/xen/pcifront.h | 39
linux-2.6.16-xen/include/xen/public/evtchn.h | 101
linux-2.6.16-xen/include/xen/public/privcmd.h | 94
linux-2.6.16-xen/include/xen/tpmfe.h | 40
linux-2.6.16-xen/include/xen/xen_proc.h | 23
linux-2.6.16-xen/include/xen/xenbus.h | 306 +
linux-2.6.16-xen/include/xen/xencons.h | 14
linux-2.6.16-xen/kernel/Kconfig.preempt | 1
linux-2.6.16-xen/lib/Makefile | 3
linux-2.6.16-xen/mm/Kconfig | 3
linux-2.6.16-xen/mm/highmem.c | 11
linux-2.6.16-xen/mm/memory.c | 116
linux-2.6.16-xen/mm/mmap.c | 4
linux-2.6.16-xen/mm/page_alloc.c | 6
linux-2.6.16-xen/net/core/dev.c | 63
linux-2.6.16-xen/net/core/skbuff.c | 41
linux-2.6.16-xen/scripts/Makefile.xen | 14
linux-2.6.16.noarch/arch/i386/kernel/vm86.c | 8
linux-2.6.16.noarch/arch/x86_64/ia32/Makefile | 20
367 files changed, 79425 insertions(+), 223 deletions(-)
View full diff with command:
/usr/bin/cvs -f diff -kk -u -N -r 1.12 -r 1.13 linux-2.6-xen.patch
Index: linux-2.6-xen.patch
===================================================================
RCS file: /cvs/dist/rpms/kernel/FC-5/linux-2.6-xen.patch,v
retrieving revision 1.12
retrieving revision 1.13
diff -u -r1.12 -r1.13
--- linux-2.6-xen.patch 4 May 2006 18:40:57 -0000 1.12
+++ linux-2.6-xen.patch 11 May 2006 22:02:56 -0000 1.13
@@ -1,6 +1,6 @@
-diff -Nru -p --exclude='.*' ref-linux-2.6.16-rc5/arch/i386/boot-xen/Makefile linux-2.6.16-rc5-xen0/arch/i386/boot-xen/Makefile
---- ref-linux-2.6.16-rc5/arch/i386/boot-xen/Makefile 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.16-rc5-xen0/arch/i386/boot-xen/Makefile 2006-03-01 11:09:36.000000000 -0500
+diff -Nru -p --exclude='.*' ref-linux-2.6.16/arch/i386/boot-xen/Makefile linux-2.6.16-xen/arch/i386/boot-xen/Makefile
+--- ref-linux-2.6.16/arch/i386/boot-xen/Makefile 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.16-xen/arch/i386/boot-xen/Makefile 2006-05-10 13:01:34.000000000 +0200
@@ -0,0 +1,21 @@
+
+OBJCOPYFLAGS := -g --strip-unneeded
@@ -23,9 +23,9 @@
+ install -m0664 .config $(INSTALL_ROOT)/boot/config-$(XINSTALL_NAME)$(INSTALL_SUFFIX)
+ install -m0664 System.map $(INSTALL_ROOT)/boot/System.map-$(XINSTALL_NAME)$(INSTALL_SUFFIX)
+ ln -f -s vmlinuz-$(XINSTALL_NAME)$(INSTALL_SUFFIX) $(INSTALL_ROOT)/boot/vmlinuz-$(VERSION).$(PATCHLEVEL)$(XENGUEST)$(INSTALL_SUFFIX)
-diff -Nru -p --exclude='.*' ref-linux-2.6.16-rc5/arch/i386/Kconfig linux-2.6.16-rc5-xen0/arch/i386/Kconfig
---- ref-linux-2.6.16-rc5/arch/i386/Kconfig 2006-03-01 11:12:36.000000000 -0500
-+++ linux-2.6.16-rc5-xen0/arch/i386/Kconfig 2006-03-01 11:09:36.000000000 -0500
+diff -Nru -p --exclude='.*' ref-linux-2.6.16/arch/i386/Kconfig linux-2.6.16-xen/arch/i386/Kconfig
+--- ref-linux-2.6.16/arch/i386/Kconfig 2006-05-10 13:22:17.000000000 +0200
++++ linux-2.6.16-xen/arch/i386/Kconfig 2006-05-10 13:01:34.000000000 +0200
@@ -58,6 +58,15 @@ config X86_PC
help
Choose this option if your computer is a standard PC or compatible.
@@ -329,9 +329,9 @@
config KTIME_SCALAR
bool
default y
-diff -Nru -p --exclude='.*' ref-linux-2.6.16-rc5/arch/i386/Kconfig.cpu linux-2.6.16-rc5-xen0/arch/i386/Kconfig.cpu
---- ref-linux-2.6.16-rc5/arch/i386/Kconfig.cpu 2006-03-01 11:12:26.000000000 -0500
-+++ linux-2.6.16-rc5-xen0/arch/i386/Kconfig.cpu 2006-03-01 11:09:36.000000000 -0500
+diff -Nru -p --exclude='.*' ref-linux-2.6.16/arch/i386/Kconfig.cpu linux-2.6.16-xen/arch/i386/Kconfig.cpu
+--- ref-linux-2.6.16/arch/i386/Kconfig.cpu 2006-03-20 06:53:29.000000000 +0100
++++ linux-2.6.16-xen/arch/i386/Kconfig.cpu 2006-05-10 13:01:34.000000000 +0200
@@ -251,7 +251,7 @@ config X86_PPRO_FENCE
config X86_F00F_BUG
@@ -341,9 +341,9 @@
default y
config X86_WP_WORKS_OK
-diff -Nru -p --exclude='.*' ref-linux-2.6.16-rc5/arch/i386/kernel/acpi/boot-xen.c linux-2.6.16-rc5-xen0/arch/i386/kernel/acpi/boot-xen.c
---- ref-linux-2.6.16-rc5/arch/i386/kernel/acpi/boot-xen.c 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.16-rc5-xen0/arch/i386/kernel/acpi/boot-xen.c 2006-03-01 11:09:36.000000000 -0500
+diff -Nru -p --exclude='.*' ref-linux-2.6.16/arch/i386/kernel/acpi/boot-xen.c linux-2.6.16-xen/arch/i386/kernel/acpi/boot-xen.c
+--- ref-linux-2.6.16/arch/i386/kernel/acpi/boot-xen.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.16-xen/arch/i386/kernel/acpi/boot-xen.c 2006-05-10 13:01:34.000000000 +0200
@@ -0,0 +1,1161 @@
+/*
+ * boot.c - Architecture-Specific Low-Level ACPI Boot Support
@@ -391,6 +391,9 @@
+extern int gsi_irq_sharing(int gsi);
+#include <asm/proto.h>
+
++static inline int acpi_madt_oem_check(char *oem_id, char *oem_table_id) { return 0; }
++
++
+#else /* X86 */
+
+#ifdef CONFIG_X86_LOCAL_APIC
@@ -1458,9 +1461,6 @@
+ disable_acpi();
+ return error;
+ }
-+#ifdef __i386__
-+ check_acpi_pci();
-+#endif
+
+ acpi_table_parse(ACPI_BOOT, acpi_parse_sbf);
+
@@ -1506,9 +1506,9 @@
+
+ return 0;
+}
-diff -Nru -p --exclude='.*' ref-linux-2.6.16-rc5/arch/i386/kernel/acpi/Makefile linux-2.6.16-rc5-xen0/arch/i386/kernel/acpi/Makefile
---- ref-linux-2.6.16-rc5/arch/i386/kernel/acpi/Makefile 2006-03-01 11:12:26.000000000 -0500
-+++ linux-2.6.16-rc5-xen0/arch/i386/kernel/acpi/Makefile 2006-03-01 11:09:36.000000000 -0500
+diff -Nru -p --exclude='.*' ref-linux-2.6.16/arch/i386/kernel/acpi/Makefile linux-2.6.16-xen/arch/i386/kernel/acpi/Makefile
+--- ref-linux-2.6.16/arch/i386/kernel/acpi/Makefile 2006-03-20 06:53:29.000000000 +0100
++++ linux-2.6.16-xen/arch/i386/kernel/acpi/Makefile 2006-05-10 13:01:34.000000000 +0200
@@ -6,3 +6,7 @@ ifneq ($(CONFIG_ACPI_PROCESSOR),)
obj-y += cstate.o processor.o
endif
@@ -1517,9 +1517,9 @@
+include $(srctree)/scripts/Makefile.xen
+obj-y := $(call cherrypickxen, $(obj-y), $(src))
+endif
-diff -Nru -p --exclude='.*' ref-linux-2.6.16-rc5/arch/i386/kernel/apic-xen.c linux-2.6.16-rc5-xen0/arch/i386/kernel/apic-xen.c
---- ref-linux-2.6.16-rc5/arch/i386/kernel/apic-xen.c 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.16-rc5-xen0/arch/i386/kernel/apic-xen.c 2006-03-01 11:09:36.000000000 -0500
+diff -Nru -p --exclude='.*' ref-linux-2.6.16/arch/i386/kernel/apic-xen.c linux-2.6.16-xen/arch/i386/kernel/apic-xen.c
+--- ref-linux-2.6.16/arch/i386/kernel/apic-xen.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.16-xen/arch/i386/kernel/apic-xen.c 2006-05-10 13:01:34.000000000 +0200
@@ -0,0 +1,140 @@
+/*
+ * Local APIC handling, local APIC timers
@@ -1661,9 +1661,9 @@
+
+ return 0;
+}
-diff -Nru -p --exclude='.*' ref-linux-2.6.16-rc5/arch/i386/kernel/asm-offsets.c linux-2.6.16-rc5-xen0/arch/i386/kernel/asm-offsets.c
---- ref-linux-2.6.16-rc5/arch/i386/kernel/asm-offsets.c 2006-01-02 22:21:10.000000000 -0500
-+++ linux-2.6.16-rc5-xen0/arch/i386/kernel/asm-offsets.c 2006-03-01 11:09:36.000000000 -0500
+diff -Nru -p --exclude='.*' ref-linux-2.6.16/arch/i386/kernel/asm-offsets.c linux-2.6.16-xen/arch/i386/kernel/asm-offsets.c
+--- ref-linux-2.6.16/arch/i386/kernel/asm-offsets.c 2006-03-20 06:53:29.000000000 +0100
++++ linux-2.6.16-xen/arch/i386/kernel/asm-offsets.c 2006-05-10 13:01:34.000000000 +0200
@@ -13,6 +13,7 @@
#include <asm/fixmap.h>
#include <asm/processor.h>
@@ -1686,10 +1686,10 @@
- DEFINE(VSYSCALL_BASE, __fix_to_virt(FIX_VSYSCALL));
+ DEFINE(VSYSCALL_BASE, VSYSCALL_BASE);
}
-diff -Nru -p --exclude='.*' ref-linux-2.6.16-rc5/arch/i386/kernel/cpu/common-xen.c linux-2.6.16-rc5-xen0/arch/i386/kernel/cpu/common-xen.c
---- ref-linux-2.6.16-rc5/arch/i386/kernel/cpu/common-xen.c 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.16-rc5-xen0/arch/i386/kernel/cpu/common-xen.c 2006-03-01 11:09:36.000000000 -0500
-@@ -0,0 +1,719 @@
+diff -Nru -p --exclude='.*' ref-linux-2.6.16/arch/i386/kernel/cpu/common-xen.c linux-2.6.16-xen/arch/i386/kernel/cpu/common-xen.c
+--- ref-linux-2.6.16/arch/i386/kernel/cpu/common-xen.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.16-xen/arch/i386/kernel/cpu/common-xen.c 2006-05-10 13:01:34.000000000 +0200
+@@ -0,0 +1,715 @@
+#include <linux/init.h>
+#include <linux/string.h>
+#include <linux/delay.h>
@@ -1726,8 +1726,6 @@
+
+struct cpu_dev * cpu_devs[X86_VENDOR_NUM] = {};
+
-+extern void machine_specific_modify_cpu_capabilities(struct cpuinfo_x86 *c);
-+
+extern int disable_pse;
+
+static void default_init(struct cpuinfo_x86 * c)
@@ -1975,10 +1973,10 @@
+ c->x86_capability[4] = excap;
+ c->x86 = (tfms >> 8) & 15;
+ c->x86_model = (tfms >> 4) & 15;
-+ if (c->x86 == 0xf) {
++ if (c->x86 == 0xf)
+ c->x86 += (tfms >> 20) & 0xff;
++ if (c->x86 >= 0x6)
+ c->x86_model += ((tfms >> 16) & 0xF) << 4;
-+ }
+ c->x86_mask = tfms & 15;
+ } else {
+ /* Have CPUID level 0 only - unheard of */
@@ -2117,8 +2115,6 @@
+ c->x86_vendor, c->x86_model);
+ }
+
-+ machine_specific_modify_cpu_capabilities(c);
-+
+ /* Now the feature flags better reflect actual CPU features! */
+
+ printk(KERN_DEBUG "CPU: After all inits, caps:");
@@ -2409,9 +2405,9 @@
+ per_cpu(cpu_tlbstate, cpu).active_mm = &init_mm;
+}
+#endif
-diff -Nru -p --exclude='.*' ref-linux-2.6.16-rc5/arch/i386/kernel/cpu/Makefile linux-2.6.16-rc5-xen0/arch/i386/kernel/cpu/Makefile
---- ref-linux-2.6.16-rc5/arch/i386/kernel/cpu/Makefile 2006-01-02 22:21:10.000000000 -0500
-+++ linux-2.6.16-rc5-xen0/arch/i386/kernel/cpu/Makefile 2006-03-01 11:09:36.000000000 -0500
+diff -Nru -p --exclude='.*' ref-linux-2.6.16/arch/i386/kernel/cpu/Makefile linux-2.6.16-xen/arch/i386/kernel/cpu/Makefile
+--- ref-linux-2.6.16/arch/i386/kernel/cpu/Makefile 2006-03-20 06:53:29.000000000 +0100
++++ linux-2.6.16-xen/arch/i386/kernel/cpu/Makefile 2006-05-10 13:01:34.000000000 +0200
@@ -17,3 +17,8 @@ obj-$(CONFIG_X86_MCE) += mcheck/
obj-$(CONFIG_MTRR) += mtrr/
@@ -2421,10 +2417,10 @@
+include $(srctree)/scripts/Makefile.xen
+obj-y := $(call cherrypickxen, $(obj-y), $(src))
+endif
-diff -Nru -p --exclude='.*' ref-linux-2.6.16-rc5/arch/i386/kernel/cpu/mtrr/main-xen.c linux-2.6.16-rc5-xen0/arch/i386/kernel/cpu/mtrr/main-xen.c
---- ref-linux-2.6.16-rc5/arch/i386/kernel/cpu/mtrr/main-xen.c 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.16-rc5-xen0/arch/i386/kernel/cpu/mtrr/main-xen.c 2006-03-01 11:09:36.000000000 -0500
-@@ -0,0 +1,187 @@
+diff -Nru -p --exclude='.*' ref-linux-2.6.16/arch/i386/kernel/cpu/mtrr/main-xen.c linux-2.6.16-xen/arch/i386/kernel/cpu/mtrr/main-xen.c
+--- ref-linux-2.6.16/arch/i386/kernel/cpu/mtrr/main-xen.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.16-xen/arch/i386/kernel/cpu/mtrr/main-xen.c 2006-05-10 13:01:34.000000000 +0200
+@@ -0,0 +1,196 @@
+#include <linux/init.h>
+#include <linux/proc_fs.h>
+#include <linux/ctype.h>
@@ -2435,6 +2431,8 @@
+#include <asm/mtrr.h>
+#include "mtrr.h"
+
++static DECLARE_MUTEX(mtrr_sem);
++
+void generic_get_mtrr(unsigned int reg, unsigned long *base,
+ unsigned int *size, mtrr_type * type)
+{
@@ -2490,12 +2488,15 @@
[...18799 lines suppressed...]
+ }
++ return 0;
++out:
++ return -EPROTO;
++}
++#else
++inline int skb_checksum_setup(struct sk_buff *skb) {}
+#endif
+
++
+ /**
+ * dev_queue_xmit - transmit a buffer
+ * @skb: buffer to transmit
+@@ -1260,6 +1303,12 @@ int dev_queue_xmit(struct sk_buff *skb)
+ __skb_linearize(skb, GFP_ATOMIC))
+ goto out_kfree_skb;
+
++ /* If a checksum-deferred packet is forwarded to a device that needs a
++ * checksum, correct the pointers and force checksumming.
++ */
++ if(skb_checksum_setup(skb))
++ goto out_kfree_skb;
++
/* If packet is not checksummed and device does not support
* checksumming for this protocol, complete checksumming here.
*/
-@@ -1609,6 +1646,19 @@ int netif_receive_skb(struct sk_buff *sk
+@@ -1609,6 +1658,19 @@ int netif_receive_skb(struct sk_buff *sk
}
#endif
+#ifdef CONFIG_XEN
+ switch (skb->ip_summed) {
+ case CHECKSUM_UNNECESSARY:
-+ skb->proto_csum_valid = 1;
++ skb->proto_data_valid = 1;
+ break;
+ case CHECKSUM_HW:
+ /* XXX Implement me. */
+ default:
-+ skb->proto_csum_valid = 0;
++ skb->proto_data_valid = 0;
+ break;
+ }
+#endif
@@ -80674,9 +82550,17 @@
list_for_each_entry_rcu(ptype, &ptype_all, list) {
if (!ptype->dev || ptype->dev == skb->dev) {
if (pt_prev)
-diff -Nru -p --exclude='.*' ref-linux-2.6.16-rc5/net/core/skbuff.c linux-2.6.16-rc5-xen0/net/core/skbuff.c
---- ref-linux-2.6.16-rc5/net/core/skbuff.c 2006-03-01 11:12:32.000000000 -0500
-+++ linux-2.6.16-rc5-xen0/net/core/skbuff.c 2006-03-01 11:09:39.000000000 -0500
+@@ -3300,6 +3362,7 @@ EXPORT_SYMBOL(unregister_netdevice_notif
+ EXPORT_SYMBOL(net_enable_timestamp);
+ EXPORT_SYMBOL(net_disable_timestamp);
+ EXPORT_SYMBOL(dev_get_flags);
++EXPORT_SYMBOL(skb_checksum_setup);
+
+ #if defined(CONFIG_BRIDGE) || defined(CONFIG_BRIDGE_MODULE)
+ EXPORT_SYMBOL(br_handle_frame_hook);
+diff -Nru -p --exclude='.*' ref-linux-2.6.16/net/core/skbuff.c linux-2.6.16-xen/net/core/skbuff.c
+--- ref-linux-2.6.16/net/core/skbuff.c 2006-03-20 06:53:29.000000000 +0100
++++ linux-2.6.16-xen/net/core/skbuff.c 2006-05-10 13:01:40.000000000 +0200
@@ -132,6 +132,7 @@ void skb_under_panic(struct sk_buff *skb
* Buffers may only be allocated from interrupts using a @gfp_mask of
* %GFP_ATOMIC.
@@ -80756,15 +82640,15 @@
n->cloned = 1;
n->nohdr = 0;
+#ifdef CONFIG_XEN
-+ C(proto_csum_valid);
++ C(proto_data_valid);
+ C(proto_csum_blank);
+#endif
C(pkt_type);
C(ip_summed);
C(priority);
-diff -Nru -p --exclude='.*' ref-linux-2.6.16-rc5/scripts/Makefile.xen linux-2.6.16-rc5-xen0/scripts/Makefile.xen
---- ref-linux-2.6.16-rc5/scripts/Makefile.xen 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.16-rc5-xen0/scripts/Makefile.xen 2006-03-01 11:09:39.000000000 -0500
+diff -Nru -p --exclude='.*' ref-linux-2.6.16/scripts/Makefile.xen linux-2.6.16-xen/scripts/Makefile.xen
+--- ref-linux-2.6.16/scripts/Makefile.xen 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.16-xen/scripts/Makefile.xen 2006-05-10 13:01:40.000000000 +0200
@@ -0,0 +1,14 @@
+
+# cherrypickxen($1 = allobj)
@@ -80780,45 +82664,77 @@
+ )
+# filterxen($1 = allobj, $2 = noobjs)
+filterxen = $(filter-out $(2), $(1))
---- linux-2.6.16.noarch/arch/i386/kernel/io_apic-xen.c~ 2006-05-04 13:54:46.000000000 -0400
-+++ linux-2.6.16.noarch/arch/i386/kernel/io_apic-xen.c 2006-05-04 13:56:43.000000000 -0400
-@@ -93,6 +93,8 @@ static struct { int pin, apic; } ioapic_
+diff -uNp linux-2.6.16.noarch/arch/x86_64/ia32/Makefile.orig linux-2.6.16.noarch/arch/x86_64/ia32/Makefile
+--- linux-2.6.16.noarch/arch/x86_64/ia32/Makefile.orig 2006-05-10 13:33:51.000000000 +0200
++++ linux-2.6.16.noarch/arch/x86_64/ia32/Makefile 2006-05-10 14:03:16.000000000 +0200
+@@ -23,9 +23,25 @@ quiet_cmd_syscall = SYSCALL $@
+ -Wl,-soname=linux-gate.so.1 -o $@ \
+ -Wl,-T,$(filter-out FORCE,$^)
- static DEFINE_SPINLOCK(ioapic_lock);
++$(obj)/vsyscall-int80.so \
+ $(obj)/vsyscall-sysenter.so $(obj)/vsyscall-syscall.so: \
+ $(obj)/vsyscall-%.so: $(src)/vsyscall.lds $(obj)/vsyscall-%.o FORCE
+ $(call if_changed,syscall)
-+int timer_over_8254 __initdata = 1;
+-AFLAGS_vsyscall-sysenter.o = -m32 -Wa,-32
+-AFLAGS_vsyscall-syscall.o = -m32 -Wa,-32
++AFLAGS_vsyscall-sysenter.o = -m32 -Wa,-32 -Iarch/i386/kernel
++AFLAGS_vsyscall-syscall.o = -m32 -Wa,-32 -Iarch/i386/kernel
+
- /*
- * Is the SiS APIC rmw bug present ?
- * -1 = don't know, 0 = no, 1 = yes
-@@ -2329,7 +2331,8 @@ static inline void check_timer(void)
- apic_write_around(APIC_LVT0, APIC_LVT_MASKED | APIC_DM_EXTINT);
- init_8259A(1);
- timer_ack = 1;
-- enable_8259A_irq(0);
-+ if (timer_over_8254 > 0)
-+ enable_8259A_irq(0);
-
- pin1 = find_isa_irq_pin(0, mp_INT);
- apic1 = find_isa_irq_apic(0, mp_INT);
-@@ -2459,6 +2462,20 @@ void __init setup_IO_APIC(void)
- print_IO_APIC();
- }
-
-+static int __init setup_disable_8254_timer(char *s)
-+{
-+ timer_over_8254 = -1;
-+ return 1;
-+}
-+static int __init setup_enable_8254_timer(char *s)
-+{
-+ timer_over_8254 = 2;
-+ return 1;
-+}
++ifdef CONFIG_XEN
++AFLAGS_vsyscall-int80.o = -m32 -Wa,-32 -Iarch/i386/kernel
++CFLAGS_syscall32-xen.o += -DUSE_INT80
++AFLAGS_syscall32_syscall-xen.o += -DUSE_INT80
+
-+__setup("disable_8254_timer", setup_disable_8254_timer);
-+__setup("enable_8254_timer", setup_enable_8254_timer);
++$(obj)/syscall32_syscall-xen.o: \
++ $(foreach F,int80 sysenter syscall,$(obj)/vsyscall-$F.so)
++
++targets := $(foreach F,int80 sysenter syscall,vsyscall-$F.o vsyscall-$F.so)
++
++include $(srctree)/scripts/Makefile.xen
+
++obj-y := $(call cherrypickxen, $(obj-y))
++endif
+diff -uNp linux-2.6.16.noarch/arch/i386/kernel/vm86.c.orig linux-2.6.16.noarch/arch/i386/kernel/vm86.c
+--- linux-2.6.16.noarch/arch/i386/kernel/vm86.c.orig 2006-05-10 13:33:51.000000000 +0200
++++ linux-2.6.16.noarch/arch/i386/kernel/vm86.c 2006-05-10 14:01:24.000000000 +0200
+@@ -98,7 +98,9 @@
+ struct pt_regs * FASTCALL(save_v86_state(struct kernel_vm86_regs * regs));
+ struct pt_regs * fastcall save_v86_state(struct kernel_vm86_regs * regs)
+ {
++#ifndef CONFIG_X86_NO_TSS
+ struct tss_struct *tss;
++#endif
+ struct pt_regs *ret;
+ unsigned long tmp;
+
+@@ -123,7 +125,9 @@ struct pt_regs * fastcall save_v86_state
+ do_exit(SIGSEGV);
+ }
+
++#ifndef CONFIG_X86_NO_TSS
+ tss = &per_cpu(init_tss, get_cpu());
++#endif
+ current->thread.esp0 = current->thread.saved_esp0;
+ current->thread.sysenter_cs = __KERNEL_CS;
+ load_esp0(tss, ¤t->thread);
+@@ -252,7 +256,9 @@ out:
+
+ static void do_sys_vm86(struct kernel_vm86_struct *info, struct task_struct *tsk)
+ {
++#ifndef CONFIG_X86_NO_TSS
+ struct tss_struct *tss;
++#endif
+ long eax;
/*
- * Called after all the initialization is done. If we didnt find any
- * APIC bugs then we can allow the modify fast path
+ * make sure the vm86() system call doesn't try to do anything silly
+@@ -297,7 +303,9 @@ static void do_sys_vm86(struct kernel_vm
+ savesegment(fs, tsk->thread.saved_fs);
+ savesegment(gs, tsk->thread.saved_gs);
+
++#ifndef CONFIG_X86_NO_TSS
+ tss = &per_cpu(init_tss, get_cpu());
++#endif
+ tsk->thread.esp0 = (unsigned long) &info->VM86_TSS_ESP0;
+ if (cpu_has_sep)
+ tsk->thread.sysenter_cs = 0;
More information about the fedora-cvs-commits
mailing list