Author: zbyniu                       Date: Sun Mar 30 19:24:24 2008 GMT
Module: SOURCES                       Tag: LINUX_2_6
---- Log message:
- raw http://vserver.13thfloor.at/Experimental/patch-2.6.24.4-vs2.3.0.34.diff

---- Files affected:
SOURCES:
   linux-2.6-vs2.3.patch (1.2.4.11.2.17 -> 1.2.4.11.2.18) 

---- Diffs:

================================================================
Index: SOURCES/linux-2.6-vs2.3.patch
diff -u SOURCES/linux-2.6-vs2.3.patch:1.2.4.11.2.17 
SOURCES/linux-2.6-vs2.3.patch:1.2.4.11.2.18
--- SOURCES/linux-2.6-vs2.3.patch:1.2.4.11.2.17 Fri Feb  8 10:00:18 2008
+++ SOURCES/linux-2.6-vs2.3.patch       Sun Mar 30 21:24:17 2008
@@ -1 +1,29652 @@
-No 2.3 for 2.6.24 yet. Build kernel --with vs22 option.
+diff -NurpP --minimal linux-2.6.24.4/Documentation/vserver/debug.txt 
linux-2.6.24.4-vs2.3.0.34/Documentation/vserver/debug.txt
+--- linux-2.6.24.4/Documentation/vserver/debug.txt     1970-01-01 01:00:00 
+0100
++++ linux-2.6.24.4-vs2.3.0.34/Documentation/vserver/debug.txt  2007-12-13 
13:25:42 +0100
+@@ -0,0 +1,154 @@
++
++debug_cvirt:
++
++ 2   4        "vx_map_tgid: %p/%llx: %d -> %d"
++      "vx_rmap_tgid: %p/%llx: %d -> %d"
++
++debug_dlim:
++
++ 0   1        "ALLOC (%p,#%d)%c inode (%d)"
++      "FREE  (%p,#%d)%c inode"
++ 1   2        "ALLOC (%p,#%d)%c %lld bytes (%d)"
++      "FREE  (%p,#%d)%c %lld bytes"
++ 2   4        "ADJUST: %lld,%lld on %ld,%ld [mult=%d]"
++ 3   8        "ext3_has_free_blocks(%p): %lu<%lu+1, %c, %u!=%u r=%d"
++      "ext3_has_free_blocks(%p): free=%lu, root=%lu"
++      "rcu_free_dl_info(%p)"
++ 4  10        "alloc_dl_info(%p,%d) = %p"
++      "dealloc_dl_info(%p)"
++      "get_dl_info(%p[#%d.%d])"
++      "put_dl_info(%p[#%d.%d])"
++ 5  20        "alloc_dl_info(%p,%d)*"
++ 6  40        "__hash_dl_info: %p[#%d]"
++      "__unhash_dl_info: %p[#%d]"
++ 7  80        "locate_dl_info(%p,#%d) = %p"
++
++debug_misc:
++
++ 0   1        "destroy_dqhash: %p [#0x%08x] c=%d"
++      "new_dqhash: %p [#0x%08x]"
++      "vroot[%d]_clr_dev: dev=%p[%lu,%d:%d]"
++      "vroot[%d]_get_real_bdev: dev=%p[%lu,%d:%d]"
++      "vroot[%d]_set_dev: dev=%p[%lu,%d:%d]"
++      "vroot_get_real_bdev not set"
++ 1   2        "cow_break_link(�%s�)"
++      "temp copy �%s�"
++ 2   4        "dentry_open(new): %p"
++      "dentry_open(old): %p"
++      "lookup_create(new): %p"
++      "old path �%s�"
++      "path_lookup(old): %d"
++      "vfs_create(new): %d"
++      "vfs_rename: %d"
++      "vfs_sendfile: %d"
++ 3   8        "fput(new_file=%p[#%d])"
++      "fput(old_file=%p[#%d])"
++ 4  10        "vx_info_kill(%p[#%d],%d,%d) = %d"
++      "vx_info_kill(%p[#%d],%d,%d)*"
++ 5  20        "vs_reboot(%p[#%d],%d)"
++ 6  40        "dropping task %p[#%u,%u] for %p[#%u,%u]"
++
++debug_net:
++
++ 2   4        "nx_addr_conflict(%p,%p) %d.%d,%d.%d"
++ 3   8        "inet_bind(%p) %d.%d.%d.%d, %d.%d.%d.%d, %d.%d.%d.%d"
++      "inet_bind(%p)* %p,%p;%lx %d.%d.%d.%d"
++ 4  10        "ip_route_connect(%p) %p,%p;%lx"
++ 5  20        "__addr_in_socket(%p,%d.%d.%d.%d) %p:%d.%d.%d.%d %p;%lx"
++ 6  40        "sk,egf: %p [#%d] (from %d)"
++      "sk,egn: %p [#%d] (from %d)"
++      "sk,req: %p [#%d] (from %d)"
++      "sk: %p [#%d] (from %d)"
++      "tw: %p [#%d] (from %d)"
++ 7  80        "__sock_recvmsg: %p[%p,%p,%p;%d]:%d/%d"
++      "__sock_sendmsg: %p[%p,%p,%p;%d]:%d/%d"
++
++debug_nid:
++
++ 0   1        "__lookup_nx_info(#%u): %p[#%u]"
++      "alloc_nx_info(%d) = %p"
++      "create_nx_info(%d) (dynamic rejected)"
++      "create_nx_info(%d) = %p (already there)"
++      "create_nx_info(%d) = %p (new)"
++      "dealloc_nx_info(%p)"
++ 1   2        "alloc_nx_info(%d)*"
++      "create_nx_info(%d)*"
++ 2   4        "get_nx_info(%p[#%d.%d])"
++      "put_nx_info(%p[#%d.%d])"
++ 3   8        "claim_nx_info(%p[#%d.%d.%d]) %p"
++      "clr_nx_info(%p[#%d.%d])"
++      "init_nx_info(%p[#%d.%d])"
++      "release_nx_info(%p[#%d.%d.%d]) %p"
++      "set_nx_info(%p[#%d.%d])"
++ 4  10        "__hash_nx_info: %p[#%d]"
++      "__nx_dynamic_id: [#%d]"
++      "__unhash_nx_info: %p[#%d.%d.%d]"
++ 5  20        "moved task %p into nxi:%p[#%d]"
++      "nx_migrate_task(%p,%p[#%d.%d.%d])"
++      "task_get_nx_info(%p)"
++ 6  40        "nx_clear_persistent(%p[#%d])"
++
++debug_quota:
++
++ 0   1        "quota_sync_dqh(%p,%d) discard inode %p"
++ 1   2        "quota_sync_dqh(%p,%d)"
++      "sync_dquots(%p,%d)"
++      "sync_dquots_dqh(%p,%d)"
++ 3   8        "do_quotactl(%p,%d,cmd=%d,id=%d,%p)"
++
++debug_switch:
++
++ 0   1        "vc: VCMD_%02d_%d[%d], %d,%p [%d,%d,%x,%x]"
++ 1   2        "vc: VCMD_%02d_%d[%d] = %08lx(%ld) [%d,%d]"
++ 4  10        "%s: (%s %s) returned %s with %d"
++
++debug_tag:
++
++ 7  80        "dx_parse_tag(�%s�): %d:#%d"
++      "dx_propagate_tag(%p[#%lu.%d]): %d,%d"
++
++debug_xid:
++
++ 0   1        "__lookup_vx_info(#%u): %p[#%u]"
++      "alloc_vx_info(%d) = %p"
++      "alloc_vx_info(%d)*"
++      "create_vx_info(%d) (dynamic rejected)"
++      "create_vx_info(%d) = %p (already there)"
++      "create_vx_info(%d) = %p (new)"
++      "dealloc_vx_info(%p)"
++      "loc_vx_info(%d) = %p (found)"
++      "loc_vx_info(%d) = %p (new)"
++      "loc_vx_info(%d) = %p (not available)"
++ 1   2        "create_vx_info(%d)*"
++      "loc_vx_info(%d)*"
++ 2   4        "get_vx_info(%p[#%d.%d])"
++      "put_vx_info(%p[#%d.%d])"
++ 3   8        "claim_vx_info(%p[#%d.%d.%d]) %p"
++      "clr_vx_info(%p[#%d.%d])"
++      "init_vx_info(%p[#%d.%d])"
++      "release_vx_info(%p[#%d.%d.%d]) %p"
++      "set_vx_info(%p[#%d.%d])"
++ 4  10        "__hash_vx_info: %p[#%d]"
++      "__unhash_vx_info: %p[#%d.%d.%d]"
++      "__vx_dynamic_id: [#%d]"
++ 5  20        "enter_vx_info(%p[#%d],%p) %p[#%d,%p]"
++      "leave_vx_info(%p[#%d,%p]) %p[#%d,%p]"
++      "moved task %p into vxi:%p[#%d]"
++      "task_get_vx_info(%p)"
++      "vx_migrate_task(%p,%p[#%d.%d])"
++ 6  40        "vx_clear_persistent(%p[#%d])"
++      "vx_exit_init(%p[#%d],%p[#%d,%d,%d])"
++      "vx_set_init(%p[#%d],%p[#%d,%d,%d])"
++      "vx_set_persistent(%p[#%d])"
++      "vx_set_reaper(%p[#%d],%p[#%d,%d])"
++ 7  80        "vx_child_reaper(%p[#%u,%u]) = %p[#%u,%u]"
++
++
++debug_limit:
++
++ n 2^n        "vx_acc_cres[%5d,%s,%2d]: %5d%s"
++      "vx_cres_avail[%5d,%s,%2d]: %5ld > %5d + %5d"
++
++ m 2^m        "vx_acc_page[%5d,%s,%2d]: %5d%s"
++      "vx_acc_pages[%5d,%s,%2d]: %5d += %5d"
++      "vx_pages_avail[%5d,%s,%2d]: %5ld > %5d + %5d"
+diff -NurpP --minimal linux-2.6.24.4/Makefile 
linux-2.6.24.4-vs2.3.0.34/Makefile
+--- linux-2.6.24.4/Makefile    2008-03-27 17:51:27 +0100
++++ linux-2.6.24.4-vs2.3.0.34/Makefile 2008-03-28 17:40:15 +0100
+@@ -1,7 +1,7 @@
+ VERSION = 2
+ PATCHLEVEL = 6
+ SUBLEVEL = 24
+-EXTRAVERSION = .4
++EXTRAVERSION = .4-vs2.3.0.34
+ NAME = Err Metey! A Heury Beelge-a Ret!
+ 
+ # *DOCUMENTATION*
+diff -NurpP --minimal linux-2.6.24.4/arch/alpha/Kconfig 
linux-2.6.24.4-vs2.3.0.34/arch/alpha/Kconfig
+--- linux-2.6.24.4/arch/alpha/Kconfig  2008-03-27 17:44:40 +0100
++++ linux-2.6.24.4-vs2.3.0.34/arch/alpha/Kconfig       2007-12-13 13:25:26 
+0100
+@@ -665,6 +665,8 @@ config DUMMY_CONSOLE
+       depends on VGA_HOSE
+       default y
+ 
++source "kernel/vserver/Kconfig"
++
+ source "security/Kconfig"
+ 
+ source "crypto/Kconfig"
+diff -NurpP --minimal linux-2.6.24.4/arch/alpha/kernel/asm-offsets.c 
linux-2.6.24.4-vs2.3.0.34/arch/alpha/kernel/asm-offsets.c
+--- linux-2.6.24.4/arch/alpha/kernel/asm-offsets.c     2006-02-15 13:54:10 
+0100
++++ linux-2.6.24.4-vs2.3.0.34/arch/alpha/kernel/asm-offsets.c  2007-12-13 
13:25:44 +0100
+@@ -36,6 +36,7 @@ void foo(void)
+       DEFINE(PT_PTRACED, PT_PTRACED);
+       DEFINE(CLONE_VM, CLONE_VM);
+       DEFINE(CLONE_UNTRACED, CLONE_UNTRACED);
++      DEFINE(CLONE_KTHREAD, CLONE_KTHREAD);
+       DEFINE(SIGCHLD, SIGCHLD);
+       BLANK();
+ 
+diff -NurpP --minimal linux-2.6.24.4/arch/alpha/kernel/entry.S 
linux-2.6.24.4-vs2.3.0.34/arch/alpha/kernel/entry.S
+--- linux-2.6.24.4/arch/alpha/kernel/entry.S   2008-03-27 17:44:40 +0100
++++ linux-2.6.24.4-vs2.3.0.34/arch/alpha/kernel/entry.S        2007-12-13 
13:25:48 +0100
+@@ -643,7 +643,7 @@ kernel_thread:
+       stq     $2, 152($sp)            /* HAE */
+ 
+       /* Shuffle FLAGS to the front; add CLONE_VM.  */
+-      ldi     $1, CLONE_VM|CLONE_UNTRACED
++      ldi     $1, CLONE_VM | CLONE_UNTRACED | CLONE_KTHREAD;
+       or      $18, $1, $16
+       bsr     $26, sys_clone
+ 
+@@ -872,24 +872,15 @@ sys_getxgid:
+       .globl  sys_getxpid
+       .ent    sys_getxpid
+ sys_getxpid:
++      lda     $sp, -16($sp)
++      stq     $26, 0($sp)
+       .prologue 0
+-      ldq     $2, TI_TASK($8)
+ 
+-      /* See linux/kernel/timer.c sys_getppid for discussion
+-         about this loop.  */
+-      ldq     $3, TASK_GROUP_LEADER($2)
+-      ldq     $4, TASK_REAL_PARENT($3)
+-      ldl     $0, TASK_TGID($2)
+-1:    ldl     $1, TASK_TGID($4)
+-#ifdef CONFIG_SMP
+-      mov     $4, $5
+-      mb
+-      ldq     $3, TASK_GROUP_LEADER($2)
+-      ldq     $4, TASK_REAL_PARENT($3)
+-      cmpeq   $4, $5, $5
+-      beq     $5, 1b
+-#endif
+-      stq     $1, 80($sp)
++      lda     $16, 96($sp)
++      jsr     $26, do_getxpid
++      ldq     $26, 0($sp)
++
++      lda     $sp, 16($sp)
+       ret
+ .end sys_getxpid
+ 
+diff -NurpP --minimal linux-2.6.24.4/arch/alpha/kernel/osf_sys.c 
linux-2.6.24.4-vs2.3.0.34/arch/alpha/kernel/osf_sys.c
+--- linux-2.6.24.4/arch/alpha/kernel/osf_sys.c 2008-03-27 17:44:40 +0100
++++ linux-2.6.24.4-vs2.3.0.34/arch/alpha/kernel/osf_sys.c      2007-12-13 
13:25:31 +0100
+@@ -883,7 +883,7 @@ osf_gettimeofday(struct timeval32 __user
+ {
+       if (tv) {
+               struct timeval ktv;
+-              do_gettimeofday(&ktv);
++              vx_gettimeofday(&ktv);
+               if (put_tv32(tv, &ktv))
+                       return -EFAULT;
+       }
+diff -NurpP --minimal linux-2.6.24.4/arch/alpha/kernel/ptrace.c 
linux-2.6.24.4-vs2.3.0.34/arch/alpha/kernel/ptrace.c
+--- linux-2.6.24.4/arch/alpha/kernel/ptrace.c  2008-03-27 17:44:40 +0100
++++ linux-2.6.24.4-vs2.3.0.34/arch/alpha/kernel/ptrace.c       2007-12-13 
13:25:11 +0100
+@@ -15,6 +15,7 @@
+ #include <linux/slab.h>
+ #include <linux/security.h>
+ #include <linux/signal.h>
++#include <linux/vs_base.h>
+ 
+ #include <asm/uaccess.h>
+ #include <asm/pgtable.h>
+diff -NurpP --minimal linux-2.6.24.4/arch/alpha/kernel/semaphore.c 
linux-2.6.24.4-vs2.3.0.34/arch/alpha/kernel/semaphore.c
+--- linux-2.6.24.4/arch/alpha/kernel/semaphore.c       2008-03-27 17:44:40 
+0100
++++ linux-2.6.24.4-vs2.3.0.34/arch/alpha/kernel/semaphore.c    2007-12-13 
13:25:29 +0100
+@@ -68,8 +68,8 @@ __down_failed(struct semaphore *sem)
+       DECLARE_WAITQUEUE(wait, tsk);
+ 
+ #ifdef CONFIG_DEBUG_SEMAPHORE
+-      printk("%s(%d): down failed(%p)\n",
+-             tsk->comm, task_pid_nr(tsk), sem);
++      printk("%s(%d:#%u): down failed(%p)\n",
++             tsk->comm, task_pid_nr(tsk), tsk->xid, sem);
+ #endif
+ 
+       tsk->state = TASK_UNINTERRUPTIBLE;
+@@ -97,8 +97,8 @@ __down_failed(struct semaphore *sem)
+       wake_up(&sem->wait);
+ 
+ #ifdef CONFIG_DEBUG_SEMAPHORE
+-      printk("%s(%d): down acquired(%p)\n",
+-             tsk->comm, task_pid_nr(tsk), sem);
++      printk("%s(%d:#%u): down acquired(%p)\n",
++             tsk->comm, task_pid_nr(tsk), tsk->xid, sem);
+ #endif
+ }
+ 
+@@ -110,8 +110,8 @@ __down_failed_interruptible(struct semap
+       long ret = 0;
+ 
+ #ifdef CONFIG_DEBUG_SEMAPHORE
+-      printk("%s(%d): down failed(%p)\n",
+-             tsk->comm, task_pid_nr(tsk), sem);
++      printk("%s(%d:#%u): down failed(%p)\n",
++             tsk->comm, task_pid_nr(tsk), tsk->xid, sem);
+ #endif
+ 
+       tsk->state = TASK_INTERRUPTIBLE;
+diff -NurpP --minimal linux-2.6.24.4/arch/alpha/kernel/systbls.S 
linux-2.6.24.4-vs2.3.0.34/arch/alpha/kernel/systbls.S
+--- linux-2.6.24.4/arch/alpha/kernel/systbls.S 2007-07-09 13:17:31 +0200
++++ linux-2.6.24.4-vs2.3.0.34/arch/alpha/kernel/systbls.S      2007-12-13 
13:25:27 +0100
+@@ -446,7 +446,7 @@ sys_call_table:
+       .quad sys_stat64                        /* 425 */
+       .quad sys_lstat64
+       .quad sys_fstat64
+-      .quad sys_ni_syscall                    /* sys_vserver */
++      .quad sys_vserver                       /* sys_vserver */
+       .quad sys_ni_syscall                    /* sys_mbind */
+       .quad sys_ni_syscall                    /* sys_get_mempolicy */
+       .quad sys_ni_syscall                    /* sys_set_mempolicy */
+diff -NurpP --minimal linux-2.6.24.4/arch/alpha/kernel/traps.c 
linux-2.6.24.4-vs2.3.0.34/arch/alpha/kernel/traps.c
+--- linux-2.6.24.4/arch/alpha/kernel/traps.c   2008-03-27 17:44:40 +0100
++++ linux-2.6.24.4-vs2.3.0.34/arch/alpha/kernel/traps.c        2007-12-13 
13:25:29 +0100
+@@ -182,7 +182,8 @@ die_if_kernel(char * str, struct pt_regs
+ #ifdef CONFIG_SMP
+       printk("CPU %d ", hard_smp_processor_id());
+ #endif
+-      printk("%s(%d): %s %ld\n", current->comm, task_pid_nr(current), str, 
err);
++      printk("%s(%d[#%u]): %s %ld\n", current->comm,
++              task_pid_nr(current), current->xid, str, err);
+       dik_show_regs(regs, r9_15);
+       add_taint(TAINT_DIE);
+       dik_show_trace((unsigned long *)(regs+1));
+diff -NurpP --minimal linux-2.6.24.4/arch/alpha/mm/fault.c 
linux-2.6.24.4-vs2.3.0.34/arch/alpha/mm/fault.c
+--- linux-2.6.24.4/arch/alpha/mm/fault.c       2008-03-27 17:44:40 +0100
++++ linux-2.6.24.4-vs2.3.0.34/arch/alpha/mm/fault.c    2007-12-13 13:25:29 
+0100
+@@ -193,8 +193,8 @@ do_page_fault(unsigned long address, uns
+               down_read(&mm->mmap_sem);
+               goto survive;
+       }
+-      printk(KERN_ALERT "VM: killing process %s(%d)\n",
+-             current->comm, task_pid_nr(current));
++      printk(KERN_ALERT "VM: killing process %s(%d:#%u)\n",
++             current->comm, task_pid_nr(current), current->xid);
+       if (!user_mode(regs))
+               goto no_context;
+       do_group_exit(SIGKILL);
+diff -NurpP --minimal linux-2.6.24.4/arch/arm/Kconfig 
linux-2.6.24.4-vs2.3.0.34/arch/arm/Kconfig
+--- linux-2.6.24.4/arch/arm/Kconfig    2008-03-27 17:44:42 +0100
++++ linux-2.6.24.4-vs2.3.0.34/arch/arm/Kconfig 2008-01-28 20:35:50 +0100
+@@ -1082,6 +1082,8 @@ source "arch/arm/Kconfig.instrumentation
+ 
+ source "arch/arm/Kconfig.debug"
+ 
++source "kernel/vserver/Kconfig"
++
+ source "security/Kconfig"
+ 
+ source "crypto/Kconfig"
+diff -NurpP --minimal linux-2.6.24.4/arch/arm/kernel/calls.S 
linux-2.6.24.4-vs2.3.0.34/arch/arm/kernel/calls.S
+--- linux-2.6.24.4/arch/arm/kernel/calls.S     2008-03-27 17:44:42 +0100
++++ linux-2.6.24.4-vs2.3.0.34/arch/arm/kernel/calls.S  2007-12-13 13:25:28 
+0100
+@@ -322,7 +322,7 @@
+ /* 310 */     CALL(sys_request_key)
+               CALL(sys_keyctl)
+               CALL(ABI(sys_semtimedop, sys_oabi_semtimedop))
+-/* vserver */ CALL(sys_ni_syscall)
++              CALL(sys_vserver)
+               CALL(sys_ioprio_set)
+ /* 315 */     CALL(sys_ioprio_get)
+               CALL(sys_inotify_init)
+diff -NurpP --minimal linux-2.6.24.4/arch/arm/kernel/process.c 
linux-2.6.24.4-vs2.3.0.34/arch/arm/kernel/process.c
+--- linux-2.6.24.4/arch/arm/kernel/process.c   2008-03-27 17:44:42 +0100
++++ linux-2.6.24.4-vs2.3.0.34/arch/arm/kernel/process.c        2007-12-13 
13:25:44 +0100
+@@ -265,7 +265,8 @@ void __show_regs(struct pt_regs *regs)
+ void show_regs(struct pt_regs * regs)
+ {
+       printk("\n");
+-      printk("Pid: %d, comm: %20s\n", task_pid_nr(current), current->comm);
++      printk("Pid: %d[#%u], comm: %20s\n",
++              task_pid_nr(current), current->xid, current->comm);
+       __show_regs(regs);
+       __backtrace();
+ }
+@@ -427,7 +428,8 @@ pid_t kernel_thread(int (*fn)(void *), v
+       regs.ARM_pc = (unsigned long)kernel_thread_helper;
+       regs.ARM_cpsr = SVC_MODE;
+ 
+-      return do_fork(flags|CLONE_VM|CLONE_UNTRACED, 0, &regs, 0, NULL, NULL);
++      return do_fork(flags | CLONE_VM | CLONE_UNTRACED | CLONE_KTHREAD,
++              0, &regs, 0, NULL, NULL);
+ }
+ EXPORT_SYMBOL(kernel_thread);
+ 
+diff -NurpP --minimal linux-2.6.24.4/arch/arm/kernel/traps.c 
linux-2.6.24.4-vs2.3.0.34/arch/arm/kernel/traps.c
+--- linux-2.6.24.4/arch/arm/kernel/traps.c     2008-03-27 17:44:42 +0100
++++ linux-2.6.24.4-vs2.3.0.34/arch/arm/kernel/traps.c  2007-12-31 12:34:02 
+0100
+@@ -222,8 +222,8 @@ static void __die(const char *str, int e
+              str, err, ++die_counter);
+       print_modules();
+       __show_regs(regs);
+-      printk("Process %s (pid: %d, stack limit = 0x%p)\n",
+-              tsk->comm, task_pid_nr(tsk), thread + 1);
++      printk("Process %s (pid: %d:#%u, stack limit = 0x%p)\n",
++              tsk->comm, task_pid_nr(tsk), tsk->xid, thread + 1);
+ 
+       if (!user_mode(regs) || in_interrupt()) {
+               dump_mem("Stack: ", regs->ARM_sp,
+diff -NurpP --minimal linux-2.6.24.4/arch/arm/mm/fault.c 
linux-2.6.24.4-vs2.3.0.34/arch/arm/mm/fault.c
+--- linux-2.6.24.4/arch/arm/mm/fault.c 2008-03-27 17:44:44 +0100
++++ linux-2.6.24.4-vs2.3.0.34/arch/arm/mm/fault.c      2007-12-13 13:25:29 
+0100
+@@ -265,7 +265,8 @@ do_page_fault(unsigned long addr, unsign
+                * happened to us that made us unable to handle
+                * the page fault gracefully.
+                */
+-              printk("VM: killing process %s\n", tsk->comm);
++              printk("VM: killing process %s(%d:#%u)\n",
++                      tsk->comm, task_pid_nr(tsk), tsk->xid);
+               do_group_exit(SIGKILL);
+               return 0;
+       }
+diff -NurpP --minimal linux-2.6.24.4/arch/cris/Kconfig 
linux-2.6.24.4-vs2.3.0.34/arch/cris/Kconfig
+--- linux-2.6.24.4/arch/cris/Kconfig   2008-03-27 17:44:47 +0100
++++ linux-2.6.24.4-vs2.3.0.34/arch/cris/Kconfig        2007-12-13 13:25:26 
+0100
+@@ -217,6 +217,8 @@ source "kernel/Kconfig.instrumentation"
+ 
+ source "arch/cris/Kconfig.debug"
+ 
++source "kernel/vserver/Kconfig"
++
+ source "security/Kconfig"
+ 
+ source "crypto/Kconfig"
+diff -NurpP --minimal linux-2.6.24.4/arch/cris/arch-v10/kernel/process.c 
linux-2.6.24.4-vs2.3.0.34/arch/cris/arch-v10/kernel/process.c
+--- linux-2.6.24.4/arch/cris/arch-v10/kernel/process.c 2008-03-27 17:44:48 
+0100
++++ linux-2.6.24.4-vs2.3.0.34/arch/cris/arch-v10/kernel/process.c      
2007-12-13 13:25:44 +0100
+@@ -103,7 +103,8 @@ int kernel_thread(int (*fn)(void *), voi
+       regs.dccr = 1 << I_DCCR_BITNR;
+ 
+       /* Ok, create the new process.. */
+-        return do_fork(flags | CLONE_VM | CLONE_UNTRACED, 0, &regs, 0, NULL, 
NULL);
++      return do_fork(flags | CLONE_VM | CLONE_UNTRACED | CLONE_KTHREAD,
++              0, &regs, 0, NULL, NULL);
+ }
+ 
+ /* setup the child's kernel stack with a pt_regs and switch_stack on it.
+diff -NurpP --minimal linux-2.6.24.4/arch/cris/arch-v32/kernel/process.c 
linux-2.6.24.4-vs2.3.0.34/arch/cris/arch-v32/kernel/process.c
+--- linux-2.6.24.4/arch/cris/arch-v32/kernel/process.c 2008-03-27 17:44:48 
+0100
++++ linux-2.6.24.4-vs2.3.0.34/arch/cris/arch-v32/kernel/process.c      
2007-12-13 13:25:44 +0100
+@@ -120,7 +120,8 @@ kernel_thread(int (*fn)(void *), void * 
+       regs.ccs = 1 << (I_CCS_BITNR + CCS_SHIFT);
+ 
+       /* Create the new process. */
+-        return do_fork(flags | CLONE_VM | CLONE_UNTRACED, 0, &regs, 0, NULL, 
NULL);
++      return do_fork(flags | CLONE_VM | CLONE_UNTRACED | CLONE_KTHREAD,
++              0, &regs, 0, NULL, NULL);
+ }
+ 
+ /*
+diff -NurpP --minimal linux-2.6.24.4/arch/frv/kernel/kernel_thread.S 
linux-2.6.24.4-vs2.3.0.34/arch/frv/kernel/kernel_thread.S
+--- linux-2.6.24.4/arch/frv/kernel/kernel_thread.S     2005-03-02 12:38:20 
+0100
++++ linux-2.6.24.4-vs2.3.0.34/arch/frv/kernel/kernel_thread.S  2007-12-13 
13:25:44 +0100
+@@ -13,6 +13,8 @@
+ #include <asm/unistd.h>
+ 
+ #define CLONE_VM      0x00000100      /* set if VM shared between processes */
++#define CLONE_KTHREAD 0x10000000      /* kernel thread */
++#define CLONE_KT      (CLONE_VM | CLONE_KTHREAD)      /* kernel thread flags 
*/
+ #define       KERN_ERR        "<3>"
+ 
+       .section .rodata
+@@ -37,7 +39,7 @@ kernel_thread:
+ 
+       # start by forking the current process, but with shared VM
+       setlos.p        #__NR_clone,gr7         ; syscall number
+-      ori             gr10,#CLONE_VM,gr8      ; first syscall arg     
[clone_flags]
++      ori             gr10,#CLONE_KT,gr8      ; first syscall arg     
[clone_flags]
+       sethi.p         #0xe4e4,gr9             ; second syscall arg    [newsp]
+       setlo           #0xe4e4,gr9
+       setlos.p        #0,gr10                 ; third syscall arg     
[parent_tidptr]
+diff -NurpP --minimal linux-2.6.24.4/arch/h8300/Kconfig 
linux-2.6.24.4-vs2.3.0.34/arch/h8300/Kconfig
+--- linux-2.6.24.4/arch/h8300/Kconfig  2008-03-27 17:44:49 +0100
++++ linux-2.6.24.4-vs2.3.0.34/arch/h8300/Kconfig       2007-12-13 13:25:26 
+0100
+@@ -227,6 +227,8 @@ source "kernel/Kconfig.instrumentation"
+ 
+ source "arch/h8300/Kconfig.debug"
+ 
++source "kernel/vserver/Kconfig"
++
+ source "security/Kconfig"
+ 
+ source "crypto/Kconfig"
+diff -NurpP --minimal linux-2.6.24.4/arch/h8300/kernel/process.c 
linux-2.6.24.4-vs2.3.0.34/arch/h8300/kernel/process.c
+--- linux-2.6.24.4/arch/h8300/kernel/process.c 2007-11-29 01:00:10 +0100
++++ linux-2.6.24.4-vs2.3.0.34/arch/h8300/kernel/process.c      2007-12-13 
13:25:44 +0100
+@@ -135,7 +135,7 @@ int kernel_thread(int (*fn)(void *), voi
+ 
+       fs = get_fs();
+       set_fs (KERNEL_DS);
+-      clone_arg = flags | CLONE_VM;
++      clone_arg = flags | CLONE_VM | CLONE_KTHREAD;
+       __asm__("mov.l sp,er3\n\t"
+               "sub.l er2,er2\n\t"
+               "mov.l %2,er1\n\t"
+diff -NurpP --minimal linux-2.6.24.4/arch/ia64/Kconfig 
linux-2.6.24.4-vs2.3.0.34/arch/ia64/Kconfig
+--- linux-2.6.24.4/arch/ia64/Kconfig   2008-03-27 17:44:54 +0100
++++ linux-2.6.24.4-vs2.3.0.34/arch/ia64/Kconfig        2007-12-13 13:25:26 
+0100
+@@ -596,6 +596,8 @@ source "kernel/Kconfig.instrumentation"
+ 
+ source "arch/ia64/Kconfig.debug"
+ 
++source "kernel/vserver/Kconfig"
++
+ source "security/Kconfig"
+ 
+ source "crypto/Kconfig"
+diff -NurpP --minimal linux-2.6.24.4/arch/ia64/ia32/ia32_entry.S 
linux-2.6.24.4-vs2.3.0.34/arch/ia64/ia32/ia32_entry.S
+--- linux-2.6.24.4/arch/ia64/ia32/ia32_entry.S 2007-11-29 01:00:17 +0100
++++ linux-2.6.24.4-vs2.3.0.34/arch/ia64/ia32/ia32_entry.S      2007-12-13 
13:25:28 +0100
+@@ -446,7 +446,7 @@ ia32_syscall_table:
+       data8 sys_tgkill        /* 270 */
+       data8 compat_sys_utimes
+       data8 sys32_fadvise64_64
+-      data8 sys_ni_syscall
++      data8 sys32_vserver
+       data8 sys_ni_syscall
+       data8 sys_ni_syscall    /* 275 */
+       data8 sys_ni_syscall
+diff -NurpP --minimal linux-2.6.24.4/arch/ia64/ia32/sys_ia32.c 
linux-2.6.24.4-vs2.3.0.34/arch/ia64/ia32/sys_ia32.c
+--- linux-2.6.24.4/arch/ia64/ia32/sys_ia32.c   2008-03-27 17:44:54 +0100
++++ linux-2.6.24.4-vs2.3.0.34/arch/ia64/ia32/sys_ia32.c        2007-12-13 
13:25:31 +0100
+@@ -1182,7 +1182,7 @@ sys32_gettimeofday (struct compat_timeva
+ {
+       if (tv) {
+               struct timeval ktv;
+-              do_gettimeofday(&ktv);
++              vx_gettimeofday(&ktv);
+               if (put_tv32(tv, &ktv))
+                       return -EFAULT;
+       }
+diff -NurpP --minimal linux-2.6.24.4/arch/ia64/kernel/asm-offsets.c 
linux-2.6.24.4-vs2.3.0.34/arch/ia64/kernel/asm-offsets.c
+--- linux-2.6.24.4/arch/ia64/kernel/asm-offsets.c      2007-11-29 01:00:17 
+0100
++++ linux-2.6.24.4-vs2.3.0.34/arch/ia64/kernel/asm-offsets.c   2007-12-13 
13:25:44 +0100
+@@ -194,6 +194,7 @@ void foo(void)
+     /* for assembly files which can't include sched.h: */
+       DEFINE(IA64_CLONE_VFORK, CLONE_VFORK);
+       DEFINE(IA64_CLONE_VM, CLONE_VM);
++      DEFINE(IA64_CLONE_KTHREAD, CLONE_KTHREAD);
+ 
+       BLANK();
+       DEFINE(IA64_CPUINFO_NSEC_PER_CYC_OFFSET,
+diff -NurpP --minimal linux-2.6.24.4/arch/ia64/kernel/entry.S 
linux-2.6.24.4-vs2.3.0.34/arch/ia64/kernel/entry.S
+--- linux-2.6.24.4/arch/ia64/kernel/entry.S    2007-11-29 01:00:17 +0100
++++ linux-2.6.24.4-vs2.3.0.34/arch/ia64/kernel/entry.S 2007-12-13 13:25:28 
+0100
+@@ -1547,7 +1547,7 @@ sys_call_table:
+       data8 sys_mq_notify
+       data8 sys_mq_getsetattr
+       data8 sys_kexec_load
+-      data8 sys_ni_syscall                    // reserved for vserver
++      data8 sys_vserver
+       data8 sys_waitid                        // 1270
+       data8 sys_add_key
+       data8 sys_request_key
+diff -NurpP --minimal linux-2.6.24.4/arch/ia64/kernel/perfmon.c 
linux-2.6.24.4-vs2.3.0.34/arch/ia64/kernel/perfmon.c
+--- linux-2.6.24.4/arch/ia64/kernel/perfmon.c  2008-03-27 17:44:55 +0100
++++ linux-2.6.24.4-vs2.3.0.34/arch/ia64/kernel/perfmon.c       2007-12-13 
13:25:41 +0100
+@@ -40,6 +40,7 @@
+ #include <linux/capability.h>
+ #include <linux/rcupdate.h>
+ #include <linux/completion.h>
++#include <linux/vs_memory.h>
+ 
+ #include <asm/errno.h>
+ #include <asm/intrinsics.h>
+@@ -2389,7 +2390,7 @@ pfm_smpl_buffer_alloc(struct task_struct
+        */
+       insert_vm_struct(mm, vma);
+ 
+-      mm->total_vm  += size >> PAGE_SHIFT;
++      vx_vmpages_add(mm, size >> PAGE_SHIFT);
+       vm_stat_account(vma->vm_mm, vma->vm_flags, vma->vm_file,
+                                                       vma_pages(vma));
+       up_write(&task->mm->mmap_sem);
+diff -NurpP --minimal linux-2.6.24.4/arch/ia64/kernel/process.c 
linux-2.6.24.4-vs2.3.0.34/arch/ia64/kernel/process.c
+--- linux-2.6.24.4/arch/ia64/kernel/process.c  2008-03-27 17:44:55 +0100
++++ linux-2.6.24.4-vs2.3.0.34/arch/ia64/kernel/process.c       2007-12-31 
12:36:36 +0100
+@@ -106,8 +106,8 @@ show_regs (struct pt_regs *regs)
+       unsigned long ip = regs->cr_iip + ia64_psr(regs)->ri;
+ 
+       print_modules();
+-      printk("\nPid: %d, CPU %d, comm: %20s\n", task_pid_nr(current),
+-                      smp_processor_id(), current->comm);
++      printk("\nPid: %d[#%u], CPU %d, comm: %20s\n", task_pid_nr(current),
++                      current->xid, smp_processor_id(), current->comm);
+       printk("psr : %016lx ifs : %016lx ip  : [<%016lx>]    %s (%s)\n",
+              regs->cr_ipsr, regs->cr_ifs, ip, print_tainted(),
+              init_utsname()->release);
+@@ -705,7 +705,8 @@ kernel_thread (int (*fn)(void *), void *
+       regs.sw.ar_fpsr = regs.pt.ar_fpsr = ia64_getreg(_IA64_REG_AR_FPSR);
+       regs.sw.ar_bspstore = (unsigned long) current + IA64_RBS_OFFSET;
+       regs.sw.pr = (1 << PRED_KERNEL_STACK);
+-      return do_fork(flags | CLONE_VM | CLONE_UNTRACED, 0, &regs.pt, 0, NULL, 
NULL);
<<Diff was trimmed, longer than 597 lines>>

---- CVS-web:
    
http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/SOURCES/linux-2.6-vs2.3.patch?r1=1.2.4.11.2.17&r2=1.2.4.11.2.18&f=u

_______________________________________________
pld-cvs-commit mailing list
[email protected]
http://lists.pld-linux.org/mailman/listinfo/pld-cvs-commit

Reply via email to