rpms/kernel/devel kernel-2.6.spec, 1.2159, 1.2160 linux-2.6-execshield.patch, 1.17, 1.18 linux-2.6-xen-compile-fixes.patch, 1.8, 1.9 linux-2.6-xen-move-vdso-fixmap.patch, 1.2, 1.3 linux-2.6-xen-vsyscall_base.patch, 1.2, 1.3 linux-2.6-xen.patch, 1.13, 1.14
fedora-cvs-commits at redhat.com
fedora-cvs-commits at redhat.com
Wed Apr 26 11:13:50 UTC 2006
Author: quintela
Update of /cvs/dist/rpms/kernel/devel
In directory cvs.devel.redhat.com:/tmp/cvs-serv14644
Modified Files:
kernel-2.6.spec linux-2.6-execshield.patch
linux-2.6-xen-compile-fixes.patch
linux-2.6-xen-move-vdso-fixmap.patch
linux-2.6-xen-vsyscall_base.patch linux-2.6-xen.patch
Log Message:
merge with linux-2.6 & linux-2.6-xen
Index: kernel-2.6.spec
===================================================================
RCS file: /cvs/dist/rpms/kernel/devel/kernel-2.6.spec,v
retrieving revision 1.2159
retrieving revision 1.2160
diff -u -r1.2159 -r1.2160
--- kernel-2.6.spec 26 Apr 2006 04:33:40 -0000 1.2159
+++ kernel-2.6.spec 26 Apr 2006 11:13:46 -0000 1.2160
@@ -7,7 +7,7 @@
%define buildsmp 0
%define buildpae 0
# Whether to apply the Xen patches, leave this enabled.
-%define includexen 0
+%define includexen 1
# Whether to build the Xen kernels, disable if you want.
%define buildxen 1
%define buildxenPAE 0
@@ -1666,6 +1666,10 @@
%endif
%changelog
+* Wed Apr 26 2006 Juan Quintela <quintela at redhat.com>
+- rebase with last linux-2.6-xen.
+- enable xen again.
+
* Tue Apr 25 2006 Dave Jones <davej at redhat.com>
- 2.6.17rc2-git7
linux-2.6-execshield.patch:
linux-2.6.16.noarch/arch/i386/kernel/sysenter.c | 123 ++++++++--------
linux-2.6.16.noarch/include/asm-powerpc/elf.h | 3
linux/arch/i386/kernel/asm-offsets.c | 1
linux/arch/i386/kernel/cpu/common.c | 7
linux/arch/i386/kernel/entry.S | 8 -
linux/arch/i386/kernel/process.c | 59 +++++++
linux/arch/i386/kernel/signal.c | 4
linux/arch/i386/kernel/smp.c | 3
linux/arch/i386/kernel/traps.c | 93 +++++++++++-
linux/arch/i386/kernel/vsyscall-sysenter.S | 6
linux/arch/i386/kernel/vsyscall.lds.S | 4
linux/arch/i386/mm/init.c | 6
linux/arch/i386/mm/mmap.c | 6
linux/arch/ia64/ia32/binfmt_elf32.c | 2
linux/arch/powerpc/kernel/vdso.c | 3
linux/arch/x86_64/ia32/ia32_binfmt.c | 6
linux/arch/x86_64/ia32/syscall32.c | 4
linux/arch/x86_64/kernel/process.c | 6
linux/arch/x86_64/kernel/setup64.c | 23 ---
linux/arch/x86_64/mm/fault.c | 2
linux/arch/x86_64/mm/mmap.c | 99 ++++++++++--
linux/drivers/char/random.c | 7
linux/fs/binfmt_elf.c | 151 +++++++++++++++----
linux/fs/proc/array.c | 8 -
linux/fs/proc/base.c | 8 -
linux/fs/proc/task_mmu.c | 34 +++-
linux/include/asm-i386/a.out.h | 2
linux/include/asm-i386/desc.h | 14 +
linux/include/asm-i386/elf.h | 50 ++++--
linux/include/asm-i386/mmu.h | 6
linux/include/asm-i386/page.h | 5
linux/include/asm-i386/pgalloc.h | 1
linux/include/asm-i386/processor.h | 8 -
linux/include/asm-i386/thread_info.h | 1
linux/include/asm-ia64/pgalloc.h | 4
linux/include/asm-powerpc/pgalloc.h | 5
linux/include/asm-ppc/pgalloc.h | 5
linux/include/asm-s390/pgalloc.h | 4
linux/include/asm-sparc/pgalloc.h | 4
linux/include/asm-sparc64/pgalloc.h | 4
linux/include/asm-x86_64/pgalloc.h | 7
linux/include/asm-x86_64/pgtable.h | 2
linux/include/linux/mm.h | 16 +-
linux/include/linux/resource.h | 5
linux/include/linux/sched.h | 9 +
linux/include/linux/sysctl.h | 3
linux/kernel/signal.c | 38 ++++
linux/kernel/sysctl.c | 57 +++++++
linux/mm/fremap.c | 16 +-
linux/mm/mmap.c | 183 ++++++++++++++++++++++--
linux/mm/mprotect.c | 5
linux/mm/mremap.c | 4
52 files changed, 919 insertions(+), 215 deletions(-)
Index: linux-2.6-execshield.patch
===================================================================
RCS file: /cvs/dist/rpms/kernel/devel/linux-2.6-execshield.patch,v
retrieving revision 1.17
retrieving revision 1.18
diff -u -r1.17 -r1.18
--- linux-2.6-execshield.patch 1 Apr 2006 21:26:06 -0000 1.17
+++ linux-2.6-execshield.patch 26 Apr 2006 11:13:46 -0000 1.18
@@ -164,44 +164,102 @@
if (!cpu_isset(cpu, flush_cpumask))
goto out;
-Index: linux/arch/i386/kernel/sysenter.c
-===================================================================
---- linux.orig/arch/i386/kernel/sysenter.c
-+++ linux/arch/i386/kernel/sysenter.c
-@@ -13,7 +13,9 @@
- #include <linux/gfp.h>
+diff -uNp linux-2.6.16.noarch/arch/i386/kernel/sysenter.c.orig linux-2.6.16.noarch/arch/i386/kernel/sysenter.c
+--- linux-2.6.16.noarch/arch/i386/kernel/sysenter.c.orig 2006-04-25 14:25:11.000000000 +0200
++++ linux-2.6.16.noarch/arch/i386/kernel/sysenter.c 2006-04-25 14:50:26.000000000 +0200
+@@ -14,7 +14,9 @@
#include <linux/string.h>
#include <linux/elf.h>
+ #include <linux/mm.h>
+#include <linux/mman.h>
+#include <asm/a.out.h>
#include <asm/cpufeature.h>
#include <asm/msr.h>
#include <asm/pgtable.h>
-@@ -46,11 +48,13 @@ void enable_sep_cpu(void)
+@@ -52,11 +54,13 @@ void enable_sep_cpu(void)
+ */
extern const char vsyscall_int80_start, vsyscall_int80_end;
extern const char vsyscall_sysenter_start, vsyscall_sysenter_end;
-
+-static void *syscall_page;
+static struct page *sysenter_pages[2];
-+
+
int __init sysenter_setup(void)
{
- void *page = (void *)get_zeroed_page(GFP_ATOMIC);
-
-- __set_fixmap(FIX_VSYSCALL, __pa(page), PAGE_READONLY_EXEC);
+- syscall_page = (void *)get_zeroed_page(GFP_ATOMIC);
++ void *page = (void *)get_zeroed_page(GFP_ATOMIC);
++
+ sysenter_pages[0] = virt_to_page(page);
- if (!boot_cpu_has(X86_FEATURE_SEP)) {
- memcpy(page,
-@@ -65,3 +69,78 @@ int __init sysenter_setup(void)
+ #ifdef CONFIG_XEN
+ if (boot_cpu_has(X86_FEATURE_SEP)) {
+@@ -71,73 +75,82 @@ int __init sysenter_setup(void)
+ #endif
+
+ if (boot_cpu_has(X86_FEATURE_SEP)) {
+- memcpy(syscall_page,
++ memcpy(page,
+ &vsyscall_sysenter_start,
+ &vsyscall_sysenter_end - &vsyscall_sysenter_start);
+ return 0;
+ }
+
+- memcpy(syscall_page,
++ memcpy(page,
+ &vsyscall_int80_start,
+ &vsyscall_int80_end - &vsyscall_int80_start);
return 0;
}
-+
+
+-static struct page*
+-syscall_nopage(struct vm_area_struct *vma, unsigned long adr, int *type)
+-{
+- struct page *p = virt_to_page(adr - vma->vm_start + syscall_page);
+- get_page(p);
+- return p;
+-}
+-
+-/* Prevent VMA merging */
+-static void syscall_vma_close(struct vm_area_struct *vma)
+-{
+-}
+extern void SYSENTER_RETURN_OFFSET;
+
+unsigned int vdso_enabled = 1;
-+
+
+-static struct vm_operations_struct syscall_vm_ops = {
+- .close = syscall_vma_close,
+- .nopage = syscall_nopage,
+-};
+-
+-/* Setup a VMA at program startup for the vsyscall page */
+-int arch_setup_additional_pages(struct linux_binprm *bprm, int exstack)
+-{
+- struct vm_area_struct *vma;
+- struct mm_struct *mm = current->mm;
+- int ret;
+-
+- vma = kmem_cache_alloc(vm_area_cachep, SLAB_KERNEL);
+- if (!vma)
+- return -ENOMEM;
+-
+- memset(vma, 0, sizeof(struct vm_area_struct));
+- /* Could randomize here */
+- vma->vm_start = VSYSCALL_BASE;
+- vma->vm_end = VSYSCALL_BASE + PAGE_SIZE;
+- /* MAYWRITE to allow gdb to COW and set breakpoints */
+- vma->vm_flags = VM_READ|VM_EXEC|VM_MAYREAD|VM_MAYEXEC|VM_MAYWRITE;
+- vma->vm_flags |= mm->def_flags;
+- vma->vm_page_prot = protection_map[vma->vm_flags & 7];
+- vma->vm_ops = &syscall_vm_ops;
+- vma->vm_mm = mm;
+-
+- down_write(&mm->mmap_sem);
+- if ((ret = insert_vm_struct(mm, vma))) {
+- up_write(&mm->mmap_sem);
+- kmem_cache_free(vm_area_cachep, vma);
+- return ret;
+/*
+ * This is called from binfmt_elf, we create the special vma for the
+ * vDSO and insert it into the mm struct tree.
@@ -227,7 +285,10 @@
+ if (0==exec_shield) { /* off; %cs limit off */
+ addr = STACK_TOP; /* minimal interference with anybody */
+ flags = MAP_PRIVATE | MAP_FIXED;
-+ }
+ }
+- mm->total_vm++;
+- up_write(&mm->mmap_sem);
+- return 0;
+ else if ((3<<2) & exec_shield) { /* vdso just below .text */
+ addr = (((2<<2) & exec_shield) && interp_map_address) ?
+ interp_map_address : start_code;
@@ -256,22 +317,26 @@
+ }
+ up_write(¤t->mm->mmap_sem);
+ return err;
-+}
-+
+ }
+
+-struct vm_area_struct *get_gate_vma(struct task_struct *tsk)
+int in_gate_area_no_task(unsigned long addr)
-+{
-+ return 0;
-+}
-+
-+int in_gate_area(struct task_struct *task, unsigned long addr)
-+{
+ {
+- return NULL;
+ return 0;
-+}
-+
+ }
+
+ int in_gate_area(struct task_struct *task, unsigned long addr)
+@@ -145,7 +158,7 @@ int in_gate_area(struct task_struct *tas
+ return 0;
+ }
+
+-int in_gate_area_no_task(unsigned long addr)
+struct vm_area_struct *get_gate_vma(struct task_struct *tsk)
-+{
+ {
+- return 0;
+ return NULL;
-+}
+ }
Index: linux/arch/i386/kernel/traps.c
===================================================================
--- linux.orig/arch/i386/kernel/traps.c
linux-2.6-xen-compile-fixes.patch:
arch/i386/kernel/acpi/boot-xen.c | 3 +-
linux-2.6.15.xen/arch/i386/kernel/smp-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 +
linux-2.6.16.noarch/include/asm-x86_64/ipi.h | 2 +
14 files changed, 47 insertions(+), 10 deletions(-)
Index: linux-2.6-xen-compile-fixes.patch
===================================================================
RCS file: /cvs/dist/rpms/kernel/devel/linux-2.6-xen-compile-fixes.patch,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -r1.8 -r1.9
--- linux-2.6-xen-compile-fixes.patch 22 Apr 2006 17:48:28 -0000 1.8
+++ linux-2.6-xen-compile-fixes.patch 26 Apr 2006 11:13:46 -0000 1.9
@@ -215,26 +215,3 @@
+#endif
#endif /* __ASM_IPI_H */
-diff -r c68722b17299 arch/x86_64/kernel/head-xen.S
---- a/arch/x86_64/kernel/head-xen.S Wed Apr 19 11:47:47 2006 +0100
-+++ b/arch/x86_64/kernel/head-xen.S Fri Apr 21 19:32:49 2006 -0400
-@@ -23,6 +23,7 @@
- #include <asm/cache.h>
-
- .text
-+ .section .bootstrap.text
- .code64
- .globl startup_64
- startup_64:
-diff -urNp --exclude-from=/home/quintela/old/config/misc/dontdiff linux-2.6.16.noarch/arch/x86_64/ia32/Makefile linux-2.6.16.work/arch/x86_64/ia32/Makefile
---- linux-2.6.16.noarch/arch/x86_64/ia32/Makefile 2006-04-22 19:19:42.000000000 +0200
-+++ linux-2.6.16.work/arch/x86_64/ia32/Makefile 2006-04-21 19:36:31.000000000 +0200
-@@ -26,7 +26,7 @@ quiet_cmd_syscall = SYSCALL $@
- -Wl,-soname=linux-gate.so.1 -o $@ \
- -Wl,-T,$(filter-out FORCE,$^)
-
--$(obj)/vsyscall-int80.so
-+$(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)
linux-2.6-xen-move-vdso-fixmap.patch:
arch/i386/mm/pgtable-xen.c | 1 -
include/asm-i386/a.out.h | 2 +-
include/asm-i386/elf.h | 7 ++++++-
include/asm-i386/fixmap.h | 9 ---------
include/asm-i386/mach-xen/asm/fixmap.h | 9 ---------
include/asm-i386/mach-xen/asm/page.h | 2 ++
include/asm-i386/page.h | 2 ++
7 files changed, 11 insertions(+), 21 deletions(-)
Index: linux-2.6-xen-move-vdso-fixmap.patch
===================================================================
RCS file: /cvs/dist/rpms/kernel/devel/linux-2.6-xen-move-vdso-fixmap.patch,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- linux-2.6-xen-move-vdso-fixmap.patch 6 Mar 2006 16:31:48 -0000 1.2
+++ linux-2.6-xen-move-vdso-fixmap.patch 26 Apr 2006 11:13:46 -0000 1.3
@@ -1,3 +1,6 @@
+
+This has been heavily hand edited (Juan Quintela)
+
# HG changeset patch
# User cl349 at firebug.cl.cam.ac.uk
# Node ID 822a27d28afeab1ffdf8ca8e8e8a11de5e7c7aec
@@ -8,131 +11,6 @@
From: Gerd Hoffmann <kraxel at suse.de>
Signed-off-by: Christian Limpach <Christian.Limpach at cl.cam.ac.uk>
-diff -r 875e0e96e574 -r 822a27d28afe linux-2.6-xen-sparse/arch/i386/kernel/asm-offsets.c
---- a/linux-2.6-xen-sparse/arch/i386/kernel/asm-offsets.c Thu Feb 23 15:22:17 2006 +0000
-+++ b/linux-2.6-xen-sparse/arch/i386/kernel/asm-offsets.c Thu Feb 23 15:22:19 2006 +0000
-@@ -13,6 +13,7 @@
- #include <asm/fixmap.h>
- #include <asm/processor.h>
- #include <asm/thread_info.h>
-+#include <asm/elf.h>
-
- #define DEFINE(sym, val) \
- asm volatile("\n->" #sym " %0 " #val : : "i" (val))
-@@ -70,5 +71,5 @@ void foo(void)
- #endif
-
- DEFINE(PAGE_SIZE_asm, PAGE_SIZE);
-- DEFINE(VSYSCALL_BASE, __fix_to_virt(FIX_VSYSCALL));
-+ DEFINE(VSYSCALL_BASE, VSYSCALL_BASE);
- }
-diff -r 875e0e96e574 -r 822a27d28afe linux-2.6-xen-sparse/arch/i386/kernel/sysenter.c
---- a/linux-2.6-xen-sparse/arch/i386/kernel/sysenter.c Thu Feb 23 15:22:17 2006 +0000
-+++ b/linux-2.6-xen-sparse/arch/i386/kernel/sysenter.c Thu Feb 23 15:22:19 2006 +0000
-@@ -13,6 +13,7 @@
- #include <linux/gfp.h>
- #include <linux/string.h>
- #include <linux/elf.h>
-+#include <linux/mm.h>
-
- #include <asm/cpufeature.h>
- #include <asm/msr.h>
-@@ -47,25 +48,90 @@ void enable_sep_cpu(void)
- */
- extern const char vsyscall_int80_start, vsyscall_int80_end;
- extern const char vsyscall_sysenter_start, vsyscall_sysenter_end;
-+static void *syscall_page;
-
- int __init sysenter_setup(void)
- {
-- void *page = (void *)get_zeroed_page(GFP_ATOMIC);
--
-- __set_fixmap(FIX_VSYSCALL, __pa(page), PAGE_READONLY_EXEC);
-+ syscall_page = (void *)get_zeroed_page(GFP_ATOMIC);
-
- #ifdef CONFIG_X86_SYSENTER
- if (boot_cpu_has(X86_FEATURE_SEP)) {
-- memcpy(page,
-+ memcpy(syscall_page,
- &vsyscall_sysenter_start,
- &vsyscall_sysenter_end - &vsyscall_sysenter_start);
- return 0;
- }
- #endif
-
-- memcpy(page,
-+ memcpy(syscall_page,
- &vsyscall_int80_start,
- &vsyscall_int80_end - &vsyscall_int80_start);
-
- return 0;
- }
-+
-+static struct page*
-+syscall_nopage(struct vm_area_struct *vma, unsigned long adr, int *type)
-+{
-+ struct page *p = virt_to_page(adr - vma->vm_start + syscall_page);
-+ get_page(p);
-+ return p;
-+}
-+
-+/* Prevent VMA merging */
-+static void syscall_vma_close(struct vm_area_struct *vma)
-+{
-+}
-+
-+static struct vm_operations_struct syscall_vm_ops = {
-+ .close = syscall_vma_close,
-+ .nopage = syscall_nopage,
-+};
-+
-+/* Setup a VMA at program startup for the vsyscall page */
-+int arch_setup_additional_pages(struct linux_binprm *bprm, int exstack)
-+{
-+ struct vm_area_struct *vma;
-+ struct mm_struct *mm = current->mm;
-+ int ret;
-+
-+ vma = kmem_cache_alloc(vm_area_cachep, SLAB_KERNEL);
-+ if (!vma)
-+ return -ENOMEM;
-+
-+ memset(vma, 0, sizeof(struct vm_area_struct));
-+ /* Could randomize here */
-+ vma->vm_start = VSYSCALL_BASE;
-+ vma->vm_end = VSYSCALL_BASE + PAGE_SIZE;
-+ /* MAYWRITE to allow gdb to COW and set breakpoints */
-+ vma->vm_flags = VM_READ|VM_EXEC|VM_MAYREAD|VM_MAYEXEC|VM_MAYWRITE;
-+ vma->vm_flags |= mm->def_flags;
-+ vma->vm_page_prot = protection_map[vma->vm_flags & 7];
-+ vma->vm_ops = &syscall_vm_ops;
-+ vma->vm_mm = mm;
-+
-+ down_write(&mm->mmap_sem);
-+ if ((ret = insert_vm_struct(mm, vma))) {
-+ up_write(&mm->mmap_sem);
-+ kmem_cache_free(vm_area_cachep, vma);
-+ return ret;
-+ }
-+ mm->total_vm++;
-+ up_write(&mm->mmap_sem);
-+ return 0;
-+}
-+
-+struct vm_area_struct *get_gate_vma(struct task_struct *tsk)
-+{
-+ return NULL;
-+}
-+
-+int in_gate_area(struct task_struct *task, unsigned long addr)
-+{
-+ return 0;
-+}
-+
-+int in_gate_area_no_task(unsigned long addr)
-+{
-+ return 0;
-+}
diff -r 875e0e96e574 -r 822a27d28afe linux-2.6-xen-sparse/arch/i386/mm/pgtable-xen.c
--- a/linux-2.6-xen-sparse/arch/i386/mm/pgtable-xen.c Thu Feb 23 15:22:17 2006 +0000
+++ b/linux-2.6-xen-sparse/arch/i386/mm/pgtable-xen.c Thu Feb 23 15:22:19 2006 +0000
linux-2.6-xen-vsyscall_base.patch:
asm-offsets.c | 1 -
1 files changed, 1 deletion(-)
Index: linux-2.6-xen-vsyscall_base.patch
===================================================================
RCS file: /cvs/dist/rpms/kernel/devel/linux-2.6-xen-vsyscall_base.patch,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- linux-2.6-xen-vsyscall_base.patch 6 Mar 2006 16:31:49 -0000 1.2
+++ linux-2.6-xen-vsyscall_base.patch 26 Apr 2006 11:13:46 -0000 1.3
@@ -14,5 +14,5 @@
#endif
DEFINE(PAGE_SIZE_asm, PAGE_SIZE);
-- DEFINE(VSYSCALL_BASE, __fix_to_virt(FIX_VSYSCALL));
+- DEFINE(VSYSCALL_BASE, VSYSCALL_BASE);
}
linux-2.6-xen.patch:
arch/x86_64/kernel/head-xen.S | 1
new/arch/i386/Kconfig | 94
new/arch/i386/Kconfig.cpu | 2
new/arch/i386/Kconfig.debug | 1
new/arch/i386/Makefile | 24
new/arch/i386/boot-xen/Makefile | 21
new/arch/i386/kernel/Makefile | 22
new/arch/i386/kernel/acpi/Makefile | 4
new/arch/i386/kernel/acpi/boot-xen.c | 1170 ++++++
new/arch/i386/kernel/apic-xen.c | 160
new/arch/i386/kernel/asm-offsets.c | 10
new/arch/i386/kernel/cpu/Makefile | 5
new/arch/i386/kernel/cpu/common-xen.c | 732 ++++
new/arch/i386/kernel/cpu/mtrr/Makefile | 7
new/arch/i386/kernel/cpu/mtrr/main-xen.c | 197 +
new/arch/i386/kernel/early_printk-xen.c | 2
new/arch/i386/kernel/entry-xen.S | 903 +++++
new/arch/i386/kernel/entry.S | 10
new/arch/i386/kernel/fixup.c | 96
new/arch/i386/kernel/head-xen.S | 171
new/arch/i386/kernel/init_task-xen.c | 51
new/arch/i386/kernel/io_apic-xen.c | 2748 ++++++++++++++++
new/arch/i386/kernel/ioport-xen.c | 122
new/arch/i386/kernel/irq-xen.c | 306 +
new/arch/i386/kernel/irq.c | 4
new/arch/i386/kernel/ldt-xen.c | 269 +
new/arch/i386/kernel/microcode-xen.c | 148
new/arch/i386/kernel/mpparse-xen.c | 1176 ++++++
new/arch/i386/kernel/pci-dma-xen.c | 344 ++
new/arch/i386/kernel/process-xen.c | 824 ++++
new/arch/i386/kernel/quirks-xen.c | 48
new/arch/i386/kernel/setup-xen.c | 1854 ++++++++++
new/arch/i386/kernel/smp-xen.c | 613 +++
new/arch/i386/kernel/swiotlb.c | 674 +++
new/arch/i386/kernel/sysenter.c | 102
new/arch/i386/kernel/time-xen.c | 1097 ++++++
new/arch/i386/kernel/traps-xen.c | 1137 ++++++
new/arch/i386/kernel/traps.c | 9
new/arch/i386/kernel/vm86.c | 8
new/arch/i386/kernel/vsyscall-note-xen.S | 32
new/arch/i386/mach-xen/Makefile | 5
new/arch/i386/mach-xen/setup.c | 49
new/arch/i386/mm/Makefile | 8
new/arch/i386/mm/fault-xen.c | 683 +++
new/arch/i386/mm/highmem-xen.c | 123
new/arch/i386/mm/hypervisor.c | 424 ++
new/arch/i386/mm/init-xen.c | 855 ++++
new/arch/i386/mm/ioremap-xen.c | 486 ++
new/arch/i386/mm/pageattr.c | 2
new/arch/i386/mm/pgtable-xen.c | 652 +++
new/arch/i386/mm/pgtable.c | 12
new/arch/i386/oprofile/Makefile | 4
new/arch/i386/oprofile/xenoprof.c | 441 ++
new/arch/i386/pci/Makefile | 9
new/arch/i386/pci/irq-xen.c | 1205 +++++++
new/arch/i386/pci/pcifront.c | 55
new/arch/i386/power/Makefile | 4
new/arch/ia64/Kconfig | 51
new/arch/ia64/Makefile | 16
new/arch/ia64/hp/sim/Makefile | 2
new/arch/ia64/kernel/entry.S | 32
new/arch/ia64/kernel/head.S | 6
new/arch/ia64/kernel/pal.S | 5
new/arch/ia64/kernel/sal.c | 3
new/arch/ia64/kernel/setup.c | 32
new/arch/ia64/xen/Makefile | 5
new/arch/ia64/xen/drivers/Makefile | 20
new/arch/ia64/xen/drivers/README | 2
new/arch/ia64/xen/drivers/coreMakefile | 26
new/arch/ia64/xen/drivers/evtchn_ia64.c | 273 +
new/arch/ia64/xen/drivers/patches/blkback.c.patch | 33
new/arch/ia64/xen/drivers/patches/console.c.patch | 11
new/arch/ia64/xen/drivers/patches/devmem.c.patch | 2
new/arch/ia64/xen/drivers/patches/gnttab.c.patch | 33
new/arch/ia64/xen/drivers/patches/privcmd.c.patch | 30
new/arch/ia64/xen/drivers/xenia64_init.c | 55
new/arch/ia64/xen/hypercall.S | 365 ++
new/arch/ia64/xen/xen_ksyms.c | 12
new/arch/ia64/xen/xenconsole.c | 19
new/arch/ia64/xen/xenentry.S | 850 ++++
new/arch/ia64/xen/xenhpski.c | 19
new/arch/ia64/xen/xenivt.S | 2032 +++++++++++
new/arch/ia64/xen/xenminstate.h | 367 ++
new/arch/ia64/xen/xenpal.S | 73
new/arch/ia64/xen/xensetup.S | 35
new/arch/um/kernel/physmem.c | 4
new/arch/x86_64/Kconfig | 60
new/arch/x86_64/Makefile | 20
new/arch/x86_64/ia32/Makefile | 20
new/arch/x86_64/ia32/ia32entry-xen.S | 725 ++++
new/arch/x86_64/ia32/syscall32-xen.c | 128
new/arch/x86_64/ia32/syscall32_syscall-xen.S | 28
new/arch/x86_64/ia32/vsyscall-int80.S | 58
new/arch/x86_64/ia32/vsyscall-sigreturn.S | 2
new/arch/x86_64/kernel/Makefile | 19
new/arch/x86_64/kernel/acpi/Makefile | 1
new/arch/x86_64/kernel/apic-xen.c | 198 +
new/arch/x86_64/kernel/asm-offsets.c | 2
new/arch/x86_64/kernel/e820-xen.c | 777 ++++
new/arch/x86_64/kernel/early_printk-xen.c | 304 +
new/arch/x86_64/kernel/entry-xen.S | 1141 ++++++
new/arch/x86_64/kernel/entry.S | 2
new/arch/x86_64/kernel/genapic-xen.c | 144
new/arch/x86_64/kernel/genapic_xen.c | 162
new/arch/x86_64/kernel/head-xen.S | 163
new/arch/x86_64/kernel/head64-xen.c | 140
new/arch/x86_64/kernel/init_task.c | 3
new/arch/x86_64/kernel/io_apic-xen.c | 2229 ++++++++++++
new/arch/x86_64/kernel/ioport-xen.c | 58
new/arch/x86_64/kernel/irq-xen.c | 163
new/arch/x86_64/kernel/irq.c | 4
new/arch/x86_64/kernel/ldt-xen.c | 282 +
new/arch/x86_64/kernel/mpparse-xen.c | 1002 +++++
new/arch/x86_64/kernel/pci-swiotlb-xen.c | 54
new/arch/x86_64/kernel/process-xen.c | 802 ++++
new/arch/x86_64/kernel/setup-xen.c | 1679 +++++++++
new/arch/x86_64/kernel/setup64-xen.c | 360 ++
new/arch/x86_64/kernel/smp-xen.c | 596 +++
new/arch/x86_64/kernel/smp.c | 4
new/arch/x86_64/kernel/traps-xen.c | 1025 +++++
new/arch/x86_64/kernel/vsyscall-xen.c | 239 +
new/arch/x86_64/kernel/x8664_ksyms-xen.c | 155
new/arch/x86_64/kernel/xen_entry.S | 40
new/arch/x86_64/mm/Makefile | 10
new/arch/x86_64/mm/fault-xen.c | 644 +++
new/arch/x86_64/mm/init-xen.c | 1176 ++++++
new/arch/x86_64/mm/pageattr-xen.c | 390 ++
new/arch/x86_64/oprofile/Makefile | 5
new/arch/x86_64/pci/Makefile | 12
new/drivers/Makefile | 1
new/drivers/acpi/Kconfig | 3
new/drivers/char/mem.c | 6
new/drivers/char/tpm/Kconfig | 14
new/drivers/char/tpm/Makefile | 1
new/drivers/char/tpm/tpm.c | 44
new/drivers/char/tpm/tpm.h | 7
new/drivers/char/tpm/tpm_xen.c | 536 +++
new/drivers/char/tty_io.c | 7
new/drivers/firmware/Kconfig | 2
new/drivers/pci/Kconfig | 1
new/drivers/serial/Kconfig | 1
new/drivers/video/Kconfig | 2
new/drivers/xen/Kconfig | 223 +
new/drivers/xen/Makefile | 22
new/drivers/xen/balloon/Makefile | 2
new/drivers/xen/balloon/balloon.c | 592 +++
new/drivers/xen/blkback/Makefile | 3
new/drivers/xen/blkback/blkback.c | 597 +++
new/drivers/xen/blkback/common.h | 145
new/drivers/xen/blkback/interface.c | 181 +
new/drivers/xen/blkback/vbd.c | 126
new/drivers/xen/blkback/xenbus.c | 421 ++
new/drivers/xen/blkfront/Kconfig | 6
new/drivers/xen/blkfront/Makefile | 5
new/drivers/xen/blkfront/blkfront.c | 819 ++++
new/drivers/xen/blkfront/block.h | 165
new/drivers/xen/blkfront/vbd.c | 327 +
new/drivers/xen/blktap/Makefile | 3
new/drivers/xen/blktap/blktap.c | 910 +++++
new/drivers/xen/blktap/common.h | 110
new/drivers/xen/blktap/interface.c | 143
new/drivers/xen/blktap/xenbus.c | 233 +
new/drivers/xen/char/Makefile | 2
new/drivers/xen/char/mem.c | 192 +
new/drivers/xen/console/Makefile | 2
new/drivers/xen/console/console.c | 648 +++
new/drivers/xen/console/xencons_ring.c | 151
new/drivers/xen/core/Makefile | 11
new/drivers/xen/core/evtchn.c | 867 +++++
new/drivers/xen/core/features.c | 29
new/drivers/xen/core/gnttab.c | 471 ++
new/drivers/xen/core/hypervisor_sysfs.c | 57
new/drivers/xen/core/reboot.c | 381 ++
new/drivers/xen/core/skbuff.c | 144
new/drivers/xen/core/smpboot.c | 576 +++
new/drivers/xen/core/xen_proc.c | 29
new/drivers/xen/core/xen_sysfs.c | 311 +
new/drivers/xen/evtchn/Makefile | 2
new/drivers/xen/evtchn/evtchn.c | 464 ++
new/drivers/xen/net_driver_util.c | 68
new/drivers/xen/netback/Makefile | 5
new/drivers/xen/netback/common.h | 133
new/drivers/xen/netback/interface.c | 328 +
new/drivers/xen/netback/loopback.c | 254 +
new/drivers/xen/netback/netback.c | 864 +++++
new/drivers/xen/netback/xenbus.c | 366 ++
new/drivers/xen/netfront/Kconfig | 6
new/drivers/xen/netfront/Makefile | 4
new/drivers/xen/netfront/netfront.c | 1522 ++++++++
new/drivers/xen/pciback/Makefile | 10
new/drivers/xen/pciback/conf_space.c | 345 ++
new/drivers/xen/pciback/conf_space.h | 97
new/drivers/xen/pciback/conf_space_header.c | 267 +
new/drivers/xen/pciback/passthrough.c | 157
new/drivers/xen/pciback/pci_stub.c | 695 ++++
new/drivers/xen/pciback/pciback.h | 78
new/drivers/xen/pciback/pciback_ops.c | 74
new/drivers/xen/pciback/vpci.c | 204 +
new/drivers/xen/pciback/xenbus.c | 441 ++
new/drivers/xen/pcifront/Makefile | 7
new/drivers/xen/pcifront/pci.c | 46
new/drivers/xen/pcifront/pci_op.c | 272 +
new/drivers/xen/pcifront/pcifront.h | 40
new/drivers/xen/pcifront/xenbus.c | 294 +
new/drivers/xen/privcmd/Makefile | 2
new/drivers/xen/privcmd/privcmd.c | 303 +
new/drivers/xen/tpmback/Makefile | 4
new/drivers/xen/tpmback/common.h | 92
new/drivers/xen/tpmback/interface.c | 193 +
new/drivers/xen/tpmback/tpmback.c | 1061 ++++++
new/drivers/xen/tpmback/xenbus.c | 316 +
new/drivers/xen/tpmfront/Makefile | 2
new/drivers/xen/tpmfront/tpmfront.c | 767 ++++
new/drivers/xen/tpmfront/tpmfront.h | 40
new/drivers/xen/util.c | 80
new/drivers/xen/xenbus/Makefile | 12
new/drivers/xen/xenbus/xenbus_backend_client.c | 165
new/drivers/xen/xenbus/xenbus_client.c | 284 +
new/drivers/xen/xenbus/xenbus_comms.c | 218 +
new/drivers/xen/xenbus/xenbus_comms.h | 53
new/drivers/xen/xenbus/xenbus_dev.c | 255 +
new/drivers/xen/xenbus/xenbus_probe.c | 1093 ++++++
new/drivers/xen/xenbus/xenbus_xs.c | 856 ++++
new/fs/Kconfig | 1
new/include/asm-i386/a.out.h | 2
new/include/asm-i386/apic.h | 2
new/include/asm-i386/elf.h | 7
new/include/asm-i386/fixmap.h | 13
new/include/asm-i386/mach-default/mach_traps.h | 12
new/include/asm-i386/mach-xen/asm/agp.h | 37
new/include/asm-i386/mach-xen/asm/desc.h | 164
new/include/asm-i386/mach-xen/asm/dma-mapping.h | 156
new/include/asm-i386/mach-xen/asm/fixmap.h | 156
new/include/asm-i386/mach-xen/asm/floppy.h | 147
new/include/asm-i386/mach-xen/asm/highmem.h | 81
new/include/asm-i386/mach-xen/asm/hw_irq.h | 73
new/include/asm-i386/mach-xen/asm/hypercall.h | 357 ++
new/include/asm-i386/mach-xen/asm/hypervisor.h | 224 +
new/include/asm-i386/mach-xen/asm/io.h | 390 ++
new/include/asm-i386/mach-xen/asm/kmap_types.h | 32
new/include/asm-i386/mach-xen/asm/mmu.h | 21
new/include/asm-i386/mach-xen/asm/mmu_context.h | 105
new/include/asm-i386/mach-xen/asm/page.h | 326 +
new/include/asm-i386/mach-xen/asm/param.h | 24
new/include/asm-i386/mach-xen/asm/pci.h | 154
new/include/asm-i386/mach-xen/asm/pgalloc.h | 64
new/include/asm-i386/mach-xen/asm/pgtable-2level-defs.h | 21
new/include/asm-i386/mach-xen/asm/pgtable-2level.h | 85
new/include/asm-i386/mach-xen/asm/pgtable-3level-defs.h | 25
new/include/asm-i386/mach-xen/asm/pgtable-3level.h | 183 +
new/include/asm-i386/mach-xen/asm/pgtable.h | 520 +++
new/include/asm-i386/mach-xen/asm/processor.h | 754 ++++
new/include/asm-i386/mach-xen/asm/ptrace.h | 90
new/include/asm-i386/mach-xen/asm/scatterlist.h | 22
new/include/asm-i386/mach-xen/asm/segment.h | 117
new/include/asm-i386/mach-xen/asm/setup.h | 64
new/include/asm-i386/mach-xen/asm/smp.h | 104
new/include/asm-i386/mach-xen/asm/spinlock.h | 200 +
new/include/asm-i386/mach-xen/asm/swiotlb.h | 43
new/include/asm-i386/mach-xen/asm/synch_bitops.h | 141
new/include/asm-i386/mach-xen/asm/system.h | 576 +++
new/include/asm-i386/mach-xen/asm/tlbflush.h | 102
new/include/asm-i386/mach-xen/asm/vga.h | 20
new/include/asm-i386/mach-xen/irq_vectors.h | 125
new/include/asm-i386/mach-xen/mach_traps.h | 33
new/include/asm-i386/mach-xen/setup_arch_post.h | 69
new/include/asm-i386/mach-xen/setup_arch_pre.h | 5
new/include/asm-i386/page.h | 4
new/include/asm-i386/pgtable-2level-defs.h | 2
new/include/asm-i386/pgtable-3level-defs.h | 2
new/include/asm-ia64/fixmap.h | 2
new/include/asm-ia64/gcc_intrin.h | 60
new/include/asm-ia64/hypercall.h | 274 +
new/include/asm-ia64/hypervisor.h | 138
new/include/asm-ia64/intel_intrin.h | 68
new/include/asm-ia64/meminit.h | 5
new/include/asm-ia64/pal.h | 1
new/include/asm-ia64/privop.h | 59
new/include/asm-ia64/processor.h | 1
new/include/asm-ia64/synch_bitops.h | 61
new/include/asm-ia64/system.h | 4
new/include/asm-ia64/xen/privop.h | 277 +
new/include/asm-um/page.h | 2
new/include/asm-x86_64/apic.h | 2
new/include/asm-x86_64/hw_irq.h | 2
new/include/asm-x86_64/mach-xen/asm/arch_hooks.h | 27
new/include/asm-x86_64/mach-xen/asm/bootsetup.h | 42
new/include/asm-x86_64/mach-xen/asm/desc.h | 263 +
new/include/asm-x86_64/mach-xen/asm/dma-mapping.h | 191 +
new/include/asm-x86_64/mach-xen/asm/dmi.h | 29
new/include/asm-x86_64/mach-xen/asm/fixmap.h | 114
new/include/asm-x86_64/mach-xen/asm/floppy.h | 206 +
new/include/asm-x86_64/mach-xen/asm/hw_irq.h | 141
new/include/asm-x86_64/mach-xen/asm/hypercall.h | 357 ++
new/include/asm-x86_64/mach-xen/asm/hypervisor.h | 2
new/include/asm-x86_64/mach-xen/asm/io.h | 328 +
new/include/asm-x86_64/mach-xen/asm/irq.h | 39
new/include/asm-x86_64/mach-xen/asm/mmu.h | 33
new/include/asm-x86_64/mach-xen/asm/mmu_context.h | 134
new/include/asm-x86_64/mach-xen/asm/msr.h | 399 ++
new/include/asm-x86_64/mach-xen/asm/nmi.h | 75
new/include/asm-x86_64/mach-xen/asm/page.h | 317 +
new/include/asm-x86_64/mach-xen/asm/param.h | 23
new/include/asm-x86_64/mach-xen/asm/pci.h | 174 +
new/include/asm-x86_64/mach-xen/asm/pgalloc.h | 226 +
new/include/asm-x86_64/mach-xen/asm/pgtable.h | 564 +++
new/include/asm-x86_64/mach-xen/asm/processor.h | 494 ++
new/include/asm-x86_64/mach-xen/asm/ptrace.h | 125
new/include/asm-x86_64/mach-xen/asm/smp.h | 153
new/include/asm-x86_64/mach-xen/asm/synch_bitops.h | 2
new/include/asm-x86_64/mach-xen/asm/system.h | 428 ++
new/include/asm-x86_64/mach-xen/asm/timer.h | 67
new/include/asm-x86_64/mach-xen/asm/tlbflush.h | 104
new/include/asm-x86_64/mach-xen/asm/vga.h | 20
new/include/asm-x86_64/mach-xen/asm/xor.h | 328 +
new/include/asm-x86_64/mach-xen/irq_vectors.h | 123
new/include/asm-x86_64/mach-xen/mach_time.h | 111
new/include/asm-x86_64/mach-xen/mach_timer.h | 48
new/include/asm-x86_64/mach-xen/setup_arch_post.h | 58
new/include/asm-x86_64/mach-xen/setup_arch_pre.h | 5
new/include/linux/gfp.h | 6
new/include/linux/highmem.h | 6
new/include/linux/mm.h | 13
new/include/linux/pfn.h | 2
new/include/linux/skbuff.h | 13
new/include/xen/balloon.h | 73
new/include/xen/driver_util.h | 26
new/include/xen/evtchn.h | 126
new/include/xen/features.h | 20
new/include/xen/foreign_page.h | 40
new/include/xen/gnttab.h | 160
new/include/xen/hypervisor_sysfs.h | 32
new/include/xen/interface/acm.h | 187 +
new/include/xen/interface/acm_ops.h | 98
new/include/xen/interface/arch-ia64.h | 337 +
new/include/xen/interface/arch-x86_32.h | 200 +
new/include/xen/interface/arch-x86_64.h | 273 +
new/include/xen/interface/callback.h | 63
new/include/xen/interface/dom0_ops.h | 533 +++
new/include/xen/interface/event_channel.h | 211 +
new/include/xen/interface/features.h | 53
new/include/xen/interface/grant_table.h | 311 +
new/include/xen/interface/hvm/hvm_info_table.h | 24
new/include/xen/interface/hvm/ioreq.h | 94
new/include/xen/interface/hvm/vmx_assist.h | 97
new/include/xen/interface/io/blkif.h | 85
new/include/xen/interface/io/console.h | 33
new/include/xen/interface/io/netif.h | 84
new/include/xen/interface/io/pciif.h | 55
new/include/xen/interface/io/ring.h | 265 +
new/include/xen/interface/io/tpmif.h | 56
new/include/xen/interface/io/xenbus.h | 42
new/include/xen/interface/io/xs_wire.h | 97
new/include/xen/interface/memory.h | 155
new/include/xen/interface/nmi.h | 59
new/include/xen/interface/physdev.h | 71
new/include/xen/interface/sched.h | 100
new/include/xen/interface/sched_ctl.h | 64
new/include/xen/interface/trace.h | 86
new/include/xen/interface/vcpu.h | 119
new/include/xen/interface/version.h | 64
new/include/xen/interface/xen-compat.h | 31
new/include/xen/interface/xen.h | 461 ++
new/include/xen/interface/xenoprof.h | 91
new/include/xen/net_driver_util.h | 58
new/include/xen/pcifront.h | 39
new/include/xen/public/evtchn.h | 101
new/include/xen/public/privcmd.h | 94
new/include/xen/tpmfe.h | 40
new/include/xen/xen_proc.h | 23
new/include/xen/xenbus.h | 306 +
new/include/xen/xencons.h | 14
new/kernel/Kconfig.preempt | 1
new/kernel/irq/manage.c | 24
new/lib/Kconfig.debug | 31
new/lib/Makefile | 3
new/mm/Kconfig | 3
new/mm/highmem.c | 11
new/mm/memory.c | 116
new/mm/mmap.c | 4
new/mm/page_alloc.c | 6
new/net/core/dev.c | 63
new/net/core/skbuff.c | 41
new/net/ipv4/netfilter/ip_nat_proto_tcp.c | 9
new/net/ipv4/netfilter/ip_nat_proto_udp.c | 12
new/net/ipv4/xfrm4_output.c | 6
new/scripts/Makefile.xen | 14
387 files changed, 80387 insertions(+), 231 deletions(-)
View full diff with command:
/usr/bin/cvs -f diff -kk -u -N -r 1.13 -r 1.14 linux-2.6-xen.patch
Index: linux-2.6-xen.patch
===================================================================
RCS file: /cvs/dist/rpms/kernel/devel/linux-2.6-xen.patch,v
retrieving revision 1.13
retrieving revision 1.14
diff -u -r1.13 -r1.14
--- linux-2.6-xen.patch 22 Apr 2006 17:48:28 -0000 1.13
+++ linux-2.6-xen.patch 26 Apr 2006 11:13:46 -0000 1.14
@@ -1,6 +1,6 @@
-diff -urNp --exclude-from=/home/quintela/config/misc/dontdiff --exclude=.hg ../hg/linux-2.6/arch/i386/boot-xen/Makefile i386/arch/i386/boot-xen/Makefile
---- ../hg/linux-2.6/arch/i386/boot-xen/Makefile 1969-12-31 19:00:00.000000000 -0500
-+++ i386/arch/i386/boot-xen/Makefile 2006-04-20 07:09:43.000000000 -0400
+diff -urNp --exclude-from=/home/quintela/config/misc/dontdiff ../upstream/hg/linux-2.6/arch/i386/boot-xen/Makefile new/arch/i386/boot-xen/Makefile
+--- ../upstream/hg/linux-2.6/arch/i386/boot-xen/Makefile 1970-01-01 01:00:00.000000000 +0100
++++ new/arch/i386/boot-xen/Makefile 2006-04-24 23:54:19.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 -urNp --exclude-from=/home/quintela/config/misc/dontdiff --exclude=.hg ../hg/linux-2.6/arch/i386/Kconfig i386/arch/i386/Kconfig
---- ../hg/linux-2.6/arch/i386/Kconfig 2006-04-17 13:34:05.000000000 -0400
-+++ i386/arch/i386/Kconfig 2006-04-20 07:09:43.000000000 -0400
+diff -urNp --exclude-from=/home/quintela/config/misc/dontdiff ../upstream/hg/linux-2.6/arch/i386/Kconfig new/arch/i386/Kconfig
+--- ../upstream/hg/linux-2.6/arch/i386/Kconfig 2006-04-14 19:01:33.000000000 +0200
++++ new/arch/i386/Kconfig 2006-04-24 23:54:19.000000000 +0200
@@ -91,6 +91,15 @@ config X86_PC
help
Choose this option if your computer is a standard PC or compatible.
@@ -307,7 +307,7 @@
default y
config X86_BIOS_REBOOT
-@@ -1127,6 +1175,21 @@ config X86_TRAMPOLINE
+@@ -1127,6 +1175,16 @@ config X86_TRAMPOLINE
depends on X86_SMP || (X86_VOYAGER && SMP)
default y
@@ -316,11 +316,6 @@
+ depends on X86_XEN
+ default y
+
-+config X86_SYSENTER
-+ bool
-+ depends on !X86_NO_TSS
-+ default y
-+
+config X86_NO_IDT
+ bool
+ depends on X86_XEN
@@ -329,9 +324,9 @@
config KTIME_SCALAR
bool
default y
-diff -urNp --exclude-from=/home/quintela/config/misc/dontdiff --exclude=.hg ../hg/linux-2.6/arch/i386/Kconfig.cpu i386/arch/i386/Kconfig.cpu
---- ../hg/linux-2.6/arch/i386/Kconfig.cpu 2006-04-17 13:34:05.000000000 -0400
-+++ i386/arch/i386/Kconfig.cpu 2006-04-20 07:09:43.000000000 -0400
+diff -urNp --exclude-from=/home/quintela/config/misc/dontdiff ../upstream/hg/linux-2.6/arch/i386/Kconfig.cpu new/arch/i386/Kconfig.cpu
+--- ../upstream/hg/linux-2.6/arch/i386/Kconfig.cpu 2006-04-14 19:01:33.000000000 +0200
++++ new/arch/i386/Kconfig.cpu 2006-04-24 23:54:19.000000000 +0200
@@ -251,7 +251,7 @@ config X86_PPRO_FENCE
config X86_F00F_BUG
@@ -341,9 +336,9 @@
default y
config X86_WP_WORKS_OK
-diff -urNp --exclude-from=/home/quintela/config/misc/dontdiff --exclude=.hg ../hg/linux-2.6/arch/i386/Kconfig.debug i386/arch/i386/Kconfig.debug
---- ../hg/linux-2.6/arch/i386/Kconfig.debug 2006-04-18 16:49:18.000000000 -0400
-+++ i386/arch/i386/Kconfig.debug 2006-04-20 07:09:43.000000000 -0400
+diff -urNp --exclude-from=/home/quintela/config/misc/dontdiff ../upstream/hg/linux-2.6/arch/i386/Kconfig.debug new/arch/i386/Kconfig.debug
+--- ../upstream/hg/linux-2.6/arch/i386/Kconfig.debug 2006-04-20 13:58:44.000000000 +0200
++++ new/arch/i386/Kconfig.debug 2006-04-24 23:54:19.000000000 +0200
@@ -84,6 +84,7 @@ config X86_MPPARSE
config DOUBLEFAULT
default y
@@ -352,9 +347,9 @@
help
This option allows trapping of rare doublefault exceptions that
would otherwise cause a system to silently reboot. Disabling this
-diff -urNp --exclude-from=/home/quintela/config/misc/dontdiff --exclude=.hg ../hg/linux-2.6/arch/i386/kernel/acpi/boot-xen.c i386/arch/i386/kernel/acpi/boot-xen.c
---- ../hg/linux-2.6/arch/i386/kernel/acpi/boot-xen.c 1969-12-31 19:00:00.000000000 -0500
-+++ i386/arch/i386/kernel/acpi/boot-xen.c 2006-04-20 07:09:43.000000000 -0400
+diff -urNp --exclude-from=/home/quintela/config/misc/dontdiff ../upstream/hg/linux-2.6/arch/i386/kernel/acpi/boot-xen.c new/arch/i386/kernel/acpi/boot-xen.c
+--- ../upstream/hg/linux-2.6/arch/i386/kernel/acpi/boot-xen.c 1970-01-01 01:00:00.000000000 +0100
++++ new/arch/i386/kernel/acpi/boot-xen.c 2006-04-24 23:54:19.000000000 +0200
@@ -0,0 +1,1170 @@
+/*
+ * boot.c - Architecture-Specific Low-Level ACPI Boot Support
@@ -1526,9 +1521,9 @@
+
+ return 0;
+}
-diff -urNp --exclude-from=/home/quintela/config/misc/dontdiff --exclude=.hg ../hg/linux-2.6/arch/i386/kernel/acpi/Makefile i386/arch/i386/kernel/acpi/Makefile
---- ../hg/linux-2.6/arch/i386/kernel/acpi/Makefile 2006-04-17 13:34:05.000000000 -0400
-+++ i386/arch/i386/kernel/acpi/Makefile 2006-04-20 07:09:43.000000000 -0400
+diff -urNp --exclude-from=/home/quintela/config/misc/dontdiff ../upstream/hg/linux-2.6/arch/i386/kernel/acpi/Makefile new/arch/i386/kernel/acpi/Makefile
+--- ../upstream/hg/linux-2.6/arch/i386/kernel/acpi/Makefile 2006-03-10 14:25:05.000000000 +0100
++++ new/arch/i386/kernel/acpi/Makefile 2006-04-24 23:54:19.000000000 +0200
@@ -6,3 +6,7 @@ ifneq ($(CONFIG_ACPI_PROCESSOR),)
obj-y += cstate.o processor.o
endif
@@ -1537,9 +1532,9 @@
+include $(srctree)/scripts/Makefile.xen
+obj-y := $(call cherrypickxen, $(obj-y), $(src))
+endif
-diff -urNp --exclude-from=/home/quintela/config/misc/dontdiff --exclude=.hg ../hg/linux-2.6/arch/i386/kernel/apic-xen.c i386/arch/i386/kernel/apic-xen.c
---- ../hg/linux-2.6/arch/i386/kernel/apic-xen.c 1969-12-31 19:00:00.000000000 -0500
-+++ i386/arch/i386/kernel/apic-xen.c 2006-04-20 07:09:43.000000000 -0400
+diff -urNp --exclude-from=/home/quintela/config/misc/dontdiff ../upstream/hg/linux-2.6/arch/i386/kernel/apic-xen.c new/arch/i386/kernel/apic-xen.c
+--- ../upstream/hg/linux-2.6/arch/i386/kernel/apic-xen.c 1970-01-01 01:00:00.000000000 +0100
++++ new/arch/i386/kernel/apic-xen.c 2006-04-24 23:54:19.000000000 +0200
@@ -0,0 +1,160 @@
+/*
+ * Local APIC handling, local APIC timers
@@ -1701,9 +1696,9 @@
+
+ return 0;
+}
-diff -urNp --exclude-from=/home/quintela/config/misc/dontdiff --exclude=.hg ../hg/linux-2.6/arch/i386/kernel/asm-offsets.c i386/arch/i386/kernel/asm-offsets.c
---- ../hg/linux-2.6/arch/i386/kernel/asm-offsets.c 2006-04-17 13:34:05.000000000 -0400
-+++ i386/arch/i386/kernel/asm-offsets.c 2006-04-20 07:09:43.000000000 -0400
+diff -urNp --exclude-from=/home/quintela/config/misc/dontdiff ../upstream/hg/linux-2.6/arch/i386/kernel/asm-offsets.c new/arch/i386/kernel/asm-offsets.c
+--- ../upstream/hg/linux-2.6/arch/i386/kernel/asm-offsets.c 2005-11-07 20:02:43.000000000 +0100
++++ new/arch/i386/kernel/asm-offsets.c 2006-04-24 23:54:19.000000000 +0200
@@ -13,6 +13,7 @@
#include <asm/fixmap.h>
#include <asm/processor.h>
@@ -1712,23 +1707,27 @@
#define DEFINE(sym, val) \
asm volatile("\n->" #sym " %0 " #val : : "i" (val))
-@@ -63,10 +64,12 @@ void foo(void)
+@@ -63,10 +64,15 @@ void foo(void)
OFFSET(pbe_orig_address, pbe, orig_address);
OFFSET(pbe_next, pbe, next);
-+#ifdef CONFIG_X86_SYSENTER
++#ifndef CONFIG_X86_NO_TSS
/* Offset from the sysenter stack to tss.esp0 */
- DEFINE(TSS_sysenter_esp0, offsetof(struct tss_struct, esp0) -
+- DEFINE(TSS_sysenter_esp0, offsetof(struct tss_struct, esp0) -
++ DEFINE(SYSENTER_stack_esp0, offsetof(struct tss_struct, esp0) -
sizeof(struct tss_struct));
++#else
++ /* sysenter stack points directly to esp0 */
++ DEFINE(SYSENTER_stack_esp0, 0);
+#endif
DEFINE(PAGE_SIZE_asm, PAGE_SIZE);
- DEFINE(VSYSCALL_BASE, __fix_to_virt(FIX_VSYSCALL));
+ DEFINE(VSYSCALL_BASE, VSYSCALL_BASE);
}
-diff -urNp --exclude-from=/home/quintela/config/misc/dontdiff --exclude=.hg ../hg/linux-2.6/arch/i386/kernel/cpu/common-xen.c i386/arch/i386/kernel/cpu/common-xen.c
---- ../hg/linux-2.6/arch/i386/kernel/cpu/common-xen.c 1969-12-31 19:00:00.000000000 -0500
-+++ i386/arch/i386/kernel/cpu/common-xen.c 2006-04-20 09:47:57.000000000 -0400
+diff -urNp --exclude-from=/home/quintela/config/misc/dontdiff ../upstream/hg/linux-2.6/arch/i386/kernel/cpu/common-xen.c new/arch/i386/kernel/cpu/common-xen.c
+--- ../upstream/hg/linux-2.6/arch/i386/kernel/cpu/common-xen.c 1970-01-01 01:00:00.000000000 +0100
++++ new/arch/i386/kernel/cpu/common-xen.c 2006-04-25 12:35:17.000000000 +0200
@@ -0,0 +1,732 @@
+#include <linux/init.h>
+#include <linux/string.h>
@@ -2462,9 +2461,9 @@
+ per_cpu(cpu_tlbstate, cpu).active_mm = &init_mm;
+}
+#endif
-diff -urNp --exclude-from=/home/quintela/config/misc/dontdiff --exclude=.hg ../hg/linux-2.6/arch/i386/kernel/cpu/Makefile i386/arch/i386/kernel/cpu/Makefile
---- ../hg/linux-2.6/arch/i386/kernel/cpu/Makefile 2006-04-17 13:34:05.000000000 -0400
-+++ i386/arch/i386/kernel/cpu/Makefile 2006-04-20 07:09:43.000000000 -0400
+diff -urNp --exclude-from=/home/quintela/config/misc/dontdiff ../upstream/hg/linux-2.6/arch/i386/kernel/cpu/Makefile new/arch/i386/kernel/cpu/Makefile
+--- ../upstream/hg/linux-2.6/arch/i386/kernel/cpu/Makefile 2005-11-07 20:02:43.000000000 +0100
++++ new/arch/i386/kernel/cpu/Makefile 2006-04-24 23:54:19.000000000 +0200
@@ -17,3 +17,8 @@ obj-$(CONFIG_X86_MCE) += mcheck/
obj-$(CONFIG_MTRR) += mtrr/
@@ -2474,9 +2473,9 @@
+include $(srctree)/scripts/Makefile.xen
+obj-y := $(call cherrypickxen, $(obj-y), $(src))
+endif
-diff -urNp --exclude-from=/home/quintela/config/misc/dontdiff --exclude=.hg ../hg/linux-2.6/arch/i386/kernel/cpu/mtrr/main-xen.c i386/arch/i386/kernel/cpu/mtrr/main-xen.c
---- ../hg/linux-2.6/arch/i386/kernel/cpu/mtrr/main-xen.c 1969-12-31 19:00:00.000000000 -0500
-+++ i386/arch/i386/kernel/cpu/mtrr/main-xen.c 2006-04-20 07:09:43.000000000 -0400
+diff -urNp --exclude-from=/home/quintela/config/misc/dontdiff ../upstream/hg/linux-2.6/arch/i386/kernel/cpu/mtrr/main-xen.c new/arch/i386/kernel/cpu/mtrr/main-xen.c
+--- ../upstream/hg/linux-2.6/arch/i386/kernel/cpu/mtrr/main-xen.c 1970-01-01 01:00:00.000000000 +0100
++++ new/arch/i386/kernel/cpu/mtrr/main-xen.c 2006-04-24 23:54:19.000000000 +0200
@@ -0,0 +1,197 @@
+#include <linux/init.h>
+#include <linux/proc_fs.h>
@@ -2675,9 +2674,9 @@
+}
+
+subsys_initcall(mtrr_init);
-diff -urNp --exclude-from=/home/quintela/config/misc/dontdiff --exclude=.hg ../hg/linux-2.6/arch/i386/kernel/cpu/mtrr/Makefile i386/arch/i386/kernel/cpu/mtrr/Makefile
---- ../hg/linux-2.6/arch/i386/kernel/cpu/mtrr/Makefile 2006-04-17 13:34:05.000000000 -0400
-+++ i386/arch/i386/kernel/cpu/mtrr/Makefile 2006-04-20 07:09:43.000000000 -0400
+diff -urNp --exclude-from=/home/quintela/config/misc/dontdiff ../upstream/hg/linux-2.6/arch/i386/kernel/cpu/mtrr/Makefile new/arch/i386/kernel/cpu/mtrr/Makefile
+--- ../upstream/hg/linux-2.6/arch/i386/kernel/cpu/mtrr/Makefile 2005-11-07 20:02:43.000000000 +0100
++++ new/arch/i386/kernel/cpu/mtrr/Makefile 2006-04-24 23:54:19.000000000 +0200
[...6381 lines suppressed...]
+ } \
+ }
+#ifdef CONFIG_XEN
-+ /* If a checksum-deferred packet is forwarded to a device that needs a
-+ * checksum, correct the pointers and force checksumming.
-+ */
++inline int skb_checksum_setup(struct sk_buff *skb)
++{
+ if (skb->proto_csum_blank) {
+ if (skb->protocol != htons(ETH_P_IP))
-+ goto out_kfree_skb;
++ goto out;
+ skb->h.raw = (unsigned char *)skb->nh.iph + 4*skb->nh.iph->ihl;
+ if (skb->h.raw >= skb->tail)
-+ goto out_kfree_skb;
++ goto out;
+ switch (skb->nh.iph->protocol) {
+ case IPPROTO_TCP:
+ skb->csum = offsetof(struct tcphdr, check);
@@ -84332,20 +83696,39 @@
+ printk(KERN_ERR "Attempting to checksum a non-"
+ "TCP/UDP packet, dropping a protocol"
+ " %d packet", skb->nh.iph->protocol);
-+ rc = -EPROTO;
-+ goto out_kfree_skb;
++ goto out;
+ }
+ if ((skb->h.raw + skb->csum + 2) > skb->tail)
-+ goto out_kfree_skb;
++ goto out;
+ skb->ip_summed = CHECKSUM_HW;
+ skb->proto_csum_blank = 0;
+ }
++ 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
+@@ -1331,6 +1374,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.
*/
-@@ -1704,6 +1742,19 @@ int netif_receive_skb(struct sk_buff *sk
+@@ -1704,6 +1753,19 @@ int netif_receive_skb(struct sk_buff *sk
}
#endif
@@ -84365,10 +83748,18 @@
list_for_each_entry_rcu(ptype, &ptype_all, list) {
if (!ptype->dev || ptype->dev == skb->dev) {
if (pt_prev)
-diff -urNp --exclude-from=/home/quintela/config/misc/dontdiff --exclude=.hg ../hg/linux-2.6/net/core/skbuff.c i386/net/core/skbuff.c
---- ../hg/linux-2.6/net/core/skbuff.c 2006-04-17 13:34:25.000000000 -0400
-+++ i386/net/core/skbuff.c 2006-04-20 07:10:01.000000000 -0400
-@@ -132,6 +132,7 @@ void skb_under_panic(struct sk_buff *skb
+@@ -3410,6 +3472,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 -urNp --exclude-from=/home/quintela/config/misc/dontdiff ../upstream/hg/linux-2.6/net/core/skbuff.c new/net/core/skbuff.c
+--- ../upstream/hg/linux-2.6/net/core/skbuff.c 2006-04-21 20:21:11.000000000 +0200
++++ new/net/core/skbuff.c 2006-04-24 23:57:00.000000000 +0200
+@@ -140,6 +140,7 @@ EXPORT_SYMBOL(skb_truesize_bug);
* Buffers may only be allocated from interrupts using a @gfp_mask of
* %GFP_ATOMIC.
*/
@@ -84376,7 +83767,7 @@
struct sk_buff *__alloc_skb(unsigned int size, gfp_t gfp_mask,
int fclone)
{
-@@ -186,6 +187,7 @@ nodata:
+@@ -194,6 +195,7 @@ nodata:
skb = NULL;
goto out;
}
@@ -84384,7 +83775,7 @@
/**
* alloc_skb_from_cache - allocate a network buffer
-@@ -203,14 +205,18 @@ nodata:
+@@ -211,14 +213,18 @@ nodata:
*/
struct sk_buff *alloc_skb_from_cache(kmem_cache_t *cp,
unsigned int size,
@@ -84406,7 +83797,7 @@
if (!skb)
goto out;
-@@ -227,16 +233,29 @@ struct sk_buff *alloc_skb_from_cache(kme
+@@ -235,16 +241,29 @@ struct sk_buff *alloc_skb_from_cache(kme
skb->data = data;
skb->tail = data;
skb->end = data + size;
@@ -84442,7 +83833,7 @@
skb = NULL;
goto out;
}
-@@ -426,6 +445,10 @@ struct sk_buff *skb_clone(struct sk_buff
+@@ -434,6 +453,10 @@ struct sk_buff *skb_clone(struct sk_buff
C(local_df);
n->cloned = 1;
n->nohdr = 0;
@@ -84453,9 +83844,9 @@
C(pkt_type);
C(ip_summed);
C(priority);
-diff -urNp --exclude-from=/home/quintela/config/misc/dontdiff --exclude=.hg ../hg/linux-2.6/net/ipv4/netfilter/ip_nat_proto_tcp.c i386/net/ipv4/netfilter/ip_nat_proto_tcp.c
---- ../hg/linux-2.6/net/ipv4/netfilter/ip_nat_proto_tcp.c 2006-04-17 13:34:25.000000000 -0400
-+++ i386/net/ipv4/netfilter/ip_nat_proto_tcp.c 2006-04-20 07:10:02.000000000 -0400
+diff -urNp --exclude-from=/home/quintela/config/misc/dontdiff ../upstream/hg/linux-2.6/net/ipv4/netfilter/ip_nat_proto_tcp.c new/net/ipv4/netfilter/ip_nat_proto_tcp.c
+--- ../upstream/hg/linux-2.6/net/ipv4/netfilter/ip_nat_proto_tcp.c 2006-01-16 01:22:34.000000000 +0100
++++ new/net/ipv4/netfilter/ip_nat_proto_tcp.c 2006-04-25 12:34:00.000000000 +0200
@@ -129,10 +129,17 @@ tcp_manip_pkt(struct sk_buff **pskb,
if (hdrsize < sizeof(*hdr))
return 1;
@@ -84475,9 +83866,9 @@
return 1;
}
-diff -urNp --exclude-from=/home/quintela/config/misc/dontdiff --exclude=.hg ../hg/linux-2.6/net/ipv4/netfilter/ip_nat_proto_udp.c i386/net/ipv4/netfilter/ip_nat_proto_udp.c
---- ../hg/linux-2.6/net/ipv4/netfilter/ip_nat_proto_udp.c 2006-04-17 13:34:25.000000000 -0400
-+++ i386/net/ipv4/netfilter/ip_nat_proto_udp.c 2006-04-20 07:10:02.000000000 -0400
+diff -urNp --exclude-from=/home/quintela/config/misc/dontdiff ../upstream/hg/linux-2.6/net/ipv4/netfilter/ip_nat_proto_udp.c new/net/ipv4/netfilter/ip_nat_proto_udp.c
+--- ../upstream/hg/linux-2.6/net/ipv4/netfilter/ip_nat_proto_udp.c 2006-01-16 01:22:34.000000000 +0100
++++ new/net/ipv4/netfilter/ip_nat_proto_udp.c 2006-04-25 12:34:00.000000000 +0200
@@ -113,11 +113,19 @@ udp_manip_pkt(struct sk_buff **pskb,
newport = tuple->dst.u.udp.port;
portptr = &hdr->dest;
@@ -84500,9 +83891,32 @@
*portptr = newport;
return 1;
}
-diff -urNp --exclude-from=/home/quintela/config/misc/dontdiff --exclude=.hg ../hg/linux-2.6/scripts/Makefile.xen i386/scripts/Makefile.xen
---- ../hg/linux-2.6/scripts/Makefile.xen 1969-12-31 19:00:00.000000000 -0500
-+++ i386/scripts/Makefile.xen 2006-04-20 07:10:02.000000000 -0400
+diff -urNp --exclude-from=/home/quintela/config/misc/dontdiff ../upstream/hg/linux-2.6/net/ipv4/xfrm4_output.c new/net/ipv4/xfrm4_output.c
+--- ../upstream/hg/linux-2.6/net/ipv4/xfrm4_output.c 2006-02-18 11:50:03.000000000 +0100
++++ new/net/ipv4/xfrm4_output.c 2006-04-24 23:57:05.000000000 +0200
+@@ -17,6 +17,8 @@
+ #include <net/xfrm.h>
+ #include <net/icmp.h>
+
++extern int skb_checksum_setup(struct sk_buff *skb);
++
+ /* Add encapsulation header.
+ *
+ * In transport mode, the IP header will be moved forward to make space
+@@ -103,6 +105,10 @@ static int xfrm4_output_one(struct sk_bu
+ struct xfrm_state *x = dst->xfrm;
+ int err;
+
++ err = skb_checksum_setup(skb);
++ if (err)
++ goto error_nolock;
++
+ if (skb->ip_summed == CHECKSUM_HW) {
+ err = skb_checksum_help(skb, 0);
+ if (err)
+diff -urNp --exclude-from=/home/quintela/config/misc/dontdiff ../upstream/hg/linux-2.6/scripts/Makefile.xen new/scripts/Makefile.xen
+--- ../upstream/hg/linux-2.6/scripts/Makefile.xen 1970-01-01 01:00:00.000000000 +0100
++++ new/scripts/Makefile.xen 2006-04-24 23:57:09.000000000 +0200
@@ -0,0 +1,14 @@
+
+# cherrypickxen($1 = allobj)
@@ -84518,3 +83932,14 @@
+ )
+# filterxen($1 = allobj, $2 = noobjs)
+filterxen = $(filter-out $(2), $(1))
+diff -r c68722b17299 arch/x86_64/kernel/head-xen.S
+--- a/arch/x86_64/kernel/head-xen.S Wed Apr 19 11:47:47 2006 +0100
++++ b/arch/x86_64/kernel/head-xen.S Fri Apr 21 19:32:49 2006 -0400
+@@ -23,6 +23,7 @@
+ #include <asm/cache.h>
+
+ .text
++ .section .bootstrap.text
+ .code64
+ .globl startup_64
+ startup_64:
More information about the fedora-cvs-commits
mailing list