[kernel] r7704 - in dists/trunk/linux-2.6/debian: . patches/features/all/xen patches/series

Bastian Blank waldi at alioth.debian.org
Mon Nov 6 13:25:39 UTC 2006


Author: waldi
Date: Mon Nov  6 14:25:39 2006
New Revision: 7704

Added:
   dists/trunk/linux-2.6/debian/patches/features/all/xen/vserver-update.patch   (contents, props changed)
Modified:
   dists/trunk/linux-2.6/debian/changelog
   dists/trunk/linux-2.6/debian/patches/series/5-extra
Log:
* debian/changelog: Update.
* debian/patches/features/all/xen/vserver-update.patch: Add.
* debian/patches/series/5-extra: Add features/all/xen/vserver-update.patch.


Modified: dists/trunk/linux-2.6/debian/changelog
==============================================================================
--- dists/trunk/linux-2.6/debian/changelog	(original)
+++ dists/trunk/linux-2.6/debian/changelog	Mon Nov  6 14:25:39 2006
@@ -11,8 +11,9 @@
 
   [ Bastian Blank ]
   * Update vserver patch to 2.0.2.2-rc5.
+  * Update xen parts for vserver. (closes: #397281)
 
- -- Bastian Blank <waldi at debian.org>  Mon,  6 Nov 2006 13:15:37 +0100
+ -- Bastian Blank <waldi at debian.org>  Mon,  6 Nov 2006 14:24:00 +0100
 
 linux-2.6 (2.6.18-4) unstable; urgency=low
 

Added: dists/trunk/linux-2.6/debian/patches/features/all/xen/vserver-update.patch
==============================================================================
--- (empty file)
+++ dists/trunk/linux-2.6/debian/patches/features/all/xen/vserver-update.patch	Mon Nov  6 14:25:39 2006
@@ -0,0 +1,155 @@
+diff -ur source-amd64-xen/arch/i386/kernel/irq-xen.c source-amd64-xen-vserver-patch/arch/i386/kernel/irq-xen.c
+--- source-amd64-xen/arch/i386/kernel/irq-xen.c	2006-11-06 11:57:48.000000000 +0100
++++ source-amd64-xen-vserver-patch/arch/i386/kernel/irq-xen.c	2006-11-06 12:06:08.000000000 +0100
+@@ -18,6 +18,7 @@
+ #include <linux/notifier.h>
+ #include <linux/cpu.h>
+ #include <linux/delay.h>
++#include <linux/vs_context.h>
+ 
+ DEFINE_PER_CPU(irq_cpustat_t, irq_stat) ____cacheline_internodealigned_in_smp;
+ EXPORT_PER_CPU_SYMBOL(irq_stat);
+@@ -55,6 +56,7 @@
+ {	
+ 	/* high bit used in ret_from_ code */
+ 	int irq = ~regs->orig_eax;
++	struct vx_info_save vxis;
+ #ifdef CONFIG_4KSTACKS
+ 	union irq_ctx *curctx, *irqctx;
+ 	u32 *isp;
+@@ -81,7 +83,7 @@
+ 		}
+ 	}
+ #endif
+-
++	__enter_vx_admin(&vxis);
+ #ifdef CONFIG_4KSTACKS
+ 
+ 	curctx = (union irq_ctx *) current_thread_info();
+@@ -120,6 +122,7 @@
+ 	} else
+ #endif
+ 		__do_IRQ(irq, regs);
++	__leave_vx_admin(&vxis);
+ 
+ 	irq_exit();
+ 
+diff -ur source-amd64-xen/arch/i386/kernel/traps-xen.c source-amd64-xen-vserver-patch/arch/i386/kernel/traps-xen.c
+--- source-amd64-xen/arch/i386/kernel/traps-xen.c	2006-11-06 11:57:48.000000000 +0100
++++ source-amd64-xen-vserver-patch/arch/i386/kernel/traps-xen.c	2006-11-06 12:06:08.000000000 +0100
+@@ -53,6 +53,7 @@
+ #include <asm/kdebug.h>
+ 
+ #include <linux/module.h>
++#include <linux/vserver/debug.h>
+ 
+ #include "mach_traps.h"
+ 
+@@ -309,8 +310,8 @@
+ 		regs->esi, regs->edi, regs->ebp, esp);
+ 	printk(KERN_EMERG "ds: %04x   es: %04x   ss: %04x\n",
+ 		regs->xds & 0xffff, regs->xes & 0xffff, ss);
+-	printk(KERN_EMERG "Process %.*s (pid: %d, ti=%p task=%p task.ti=%p)",
+-		TASK_COMM_LEN, current->comm, current->pid,
++	printk(KERN_EMERG "Process %.*s (pid: %d[#%u], ti=%p task=%p task.ti=%p)",
++		TASK_COMM_LEN, current->comm, current->pid, current->xid,
+ 		current_thread_info(), current, current->thread_info);
+ 	/*
+ 	 * When in-kernel, we also print out the stack and code at the
+@@ -392,6 +393,8 @@
+ 
+ 	oops_enter();
+ 
++	vxh_throw_oops();
++
+ 	if (die.lock_owner != raw_smp_processor_id()) {
+ 		console_verbose();
+ 		spin_lock_irqsave(&die.lock, flags);
+@@ -428,9 +431,9 @@
+ 		if (nl)
+ 			printk("\n");
+ 		if (notify_die(DIE_OOPS, str, regs, err,
+-					current->thread.trap_no, SIGSEGV) !=
+-				NOTIFY_STOP) {
++			current->thread.trap_no, SIGSEGV) != NOTIFY_STOP) {
+ 			show_registers(regs);
++			vxh_dump_history();
+ 			/* Executive summary in case the oops scrolled away */
+ 			esp = (unsigned long) (&regs->esp);
+ 			savesegment(ss, ss);
+diff -ur source-amd64-xen/arch/x86_64/ia32/ia32entry-xen.S source-amd64-xen-vserver-patch/arch/x86_64/ia32/ia32entry-xen.S
+--- source-amd64-xen/arch/x86_64/ia32/ia32entry-xen.S	2006-11-06 11:57:48.000000000 +0100
++++ source-amd64-xen-vserver-patch/arch/x86_64/ia32/ia32entry-xen.S	2006-11-06 12:06:08.000000000 +0100
+@@ -695,7 +695,7 @@
+ 	.quad sys_tgkill		/* 270 */
+ 	.quad compat_sys_utimes
+ 	.quad sys32_fadvise64_64
+-	.quad quiet_ni_syscall	/* sys_vserver */
++	.quad sys32_vserver
+ 	.quad sys_mbind
+ 	.quad compat_sys_get_mempolicy	/* 275 */
+ 	.quad sys_set_mempolicy
+diff -ur source-amd64-xen/arch/x86_64/ia32/syscall32-xen.c source-amd64-xen-vserver-patch/arch/x86_64/ia32/syscall32-xen.c
+--- source-amd64-xen/arch/x86_64/ia32/syscall32-xen.c	2006-11-06 11:57:48.000000000 +0100
++++ source-amd64-xen-vserver-patch/arch/x86_64/ia32/syscall32-xen.c	2006-11-06 12:06:08.000000000 +0100
+@@ -10,6 +10,7 @@
+ #include <linux/init.h>
+ #include <linux/stringify.h>
+ #include <linux/security.h>
++#include <linux/vs_memory.h>
+ #include <asm/proto.h>
+ #include <asm/tlbflush.h>
+ #include <asm/ia32_unistd.h>
+@@ -75,7 +76,7 @@
+ 		kmem_cache_free(vm_area_cachep, vma);
+ 		return ret;
+ 	}
+-	mm->total_vm += npages;
++	vx_vmpages_add(mm, npages);
+ 	up_write(&mm->mmap_sem);
+ 	return 0;
+ }
+diff -ur source-amd64-xen/arch/x86_64/kernel/irq-xen.c source-amd64-xen-vserver-patch/arch/x86_64/kernel/irq-xen.c
+--- source-amd64-xen/arch/x86_64/kernel/irq-xen.c	2006-11-06 11:57:48.000000000 +0100
++++ source-amd64-xen-vserver-patch/arch/x86_64/kernel/irq-xen.c	2006-11-06 12:06:08.000000000 +0100
+@@ -15,6 +15,7 @@
+ #include <linux/seq_file.h>
+ #include <linux/module.h>
+ #include <linux/delay.h>
++#include <linux/vs_context.h>
+ #include <asm/uaccess.h>
+ #include <asm/io_apic.h>
+ #include <asm/idle.h>
+@@ -117,6 +118,7 @@
+ {	
+ 	/* high bit used in ret_from_ code  */
+ 	unsigned irq = ~regs->orig_rax;
++	struct vx_info_save vxis;
+ 
+ 	if (unlikely(irq >= NR_IRQS)) {
+ 		printk(KERN_EMERG "%s: cannot handle IRQ %d\n",
+@@ -130,7 +132,9 @@
+ #ifdef CONFIG_DEBUG_STACKOVERFLOW
+ 	stack_overflow_check(regs);
+ #endif
++	__enter_vx_admin(&vxis);
+ 	__do_IRQ(irq, regs);
++	__leave_vx_admin(&vxis);
+ 	irq_exit();
+ 
+ 	return 1;
+diff -ur source-amd64-xen/arch/x86_64/kernel/traps-xen.c source-amd64-xen-vserver-patch/arch/x86_64/kernel/traps-xen.c
+--- source-amd64-xen/arch/x86_64/kernel/traps-xen.c	2006-11-06 11:57:48.000000000 +0100
++++ source-amd64-xen-vserver-patch/arch/x86_64/kernel/traps-xen.c	2006-11-06 12:06:08.000000000 +0100
+@@ -436,8 +436,9 @@
+ 
+ 	printk("CPU %d ", cpu);
+ 	__show_regs(regs);
+-	printk("Process %s (pid: %d, threadinfo %p, task %p)\n",
+-		cur->comm, cur->pid, task_thread_info(cur), cur);
++	printk("Process %s (pid: %d[#%u], threadinfo %p, task %p)\n",
++		cur->comm, cur->pid, cur->xid,
++		task_thread_info(cur), cur);
+ 
+ 	/*
+ 	 * When in-kernel, we also print out the stack and code at the

Modified: dists/trunk/linux-2.6/debian/patches/series/5-extra
==============================================================================
--- dists/trunk/linux-2.6/debian/patches/series/5-extra	(original)
+++ dists/trunk/linux-2.6/debian/patches/series/5-extra	Mon Nov  6 14:25:39 2006
@@ -2,3 +2,4 @@
 + features/all/vserver/bindmount-dev.patch *_vserver *_xen-vserver
 + features/all/xen/vserver-clash.patch *_xen-vserver
 + features/all/xen/fedora-36252.patch *_xen *_xen-vserver
++ features/all/xen/vserver-update.patch *_xen-vserver



More information about the Kernel-svn-changes mailing list