rpms/kernel/F-8 kernel.spec, 1.303, 1.304 linux-2.6-utrace-core.patch, 1.8, 1.9 linux-2.6-utrace-ptrace-compat.patch, 1.9, 1.10 linux-2.6-utrace-tracehook.patch, 1.15, 1.16

Chuck Ebbert (cebbert) fedora-extras-commits at redhat.com
Fri Dec 14 23:28:17 UTC 2007


Author: cebbert

Update of /cvs/pkgs/rpms/kernel/F-8
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv15231

Modified Files:
	kernel.spec linux-2.6-utrace-core.patch 
	linux-2.6-utrace-ptrace-compat.patch 
	linux-2.6-utrace-tracehook.patch 
Log Message:
* Fri Dec 14 2007 Chuck Ebbert <cebbert at redhat.com> 2.6.23.9-95
- Update utrace to latest.



Index: kernel.spec
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/F-8/kernel.spec,v
retrieving revision 1.303
retrieving revision 1.304
diff -u -r1.303 -r1.304
--- kernel.spec	14 Dec 2007 22:37:15 -0000	1.303
+++ kernel.spec	14 Dec 2007 23:27:35 -0000	1.304
@@ -2041,6 +2041,9 @@
 
 
 %changelog
+* Fri Dec 14 2007 Chuck Ebbert <cebbert at redhat.com> 2.6.23.9-95
+- Update utrace to latest.
+
 * Fri Dec 14 2007 David Woodhouse <dwmw2 at redhat.com> 2.6.23.9-94
 - Re-enable and fix pasemi-mac (and gpio-mdio)
 

linux-2.6-utrace-core.patch:

Index: linux-2.6-utrace-core.patch
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/F-8/linux-2.6-utrace-core.patch,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -r1.8 -r1.9
--- linux-2.6-utrace-core.patch	25 Sep 2007 01:28:29 -0000	1.8
+++ linux-2.6-utrace-core.patch	14 Dec 2007 23:27:35 -0000	1.9
@@ -19,23 +19,25 @@
 
 ---
 
- kernel/Makefile                   |    1 
- kernel/utrace.c                   | 2359 +++++++++++++++++++++++++++++++++++++
- Documentation/utrace.txt          |  579 +++++++++
  Documentation/DocBook/Makefile    |    2 
  Documentation/DocBook/utrace.tmpl |   23 
- include/linux/tracehook.h         |   85 +
- include/linux/utrace.h            |  544 +++++++++
+ Documentation/utrace.txt          |  579 +++++++++
  include/linux/sched.h             |    5 
+ include/linux/tracehook.h         |   85 +
+ include/linux/utrace.h            |  544 ++++++++
  init/Kconfig                      |   20 
+ kernel/Makefile                   |    1 
+ kernel/utrace.c                   | 2359 ++++++++++++++++++++++++++++++++++++++
  9 files changed, 3600 insertions(+), 18 deletions(-)
  create kernel/utrace.c
  create Documentation/utrace.txt
  create Documentation/DocBook/utrace.tmpl
  create include/linux/utrace.h
 
---- linux-2.6/kernel/Makefile
-+++ linux-2.6/kernel/Makefile
+Index: b/kernel/Makefile
+===================================================================
+--- a/kernel/Makefile
++++ b/kernel/Makefile
 @@ -51,6 +51,7 @@ obj-$(CONFIG_RELAY) += relay.o
  obj-$(CONFIG_SYSCTL) += utsname_sysctl.o
  obj-$(CONFIG_TASK_DELAY_ACCT) += delayacct.o
@@ -44,8 +46,10 @@
  
  ifneq ($(CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER),y)
  # According to Alan Modra <alan at linuxcare.com.au>, the -fno-omit-frame-pointer is
---- linux-2.6/kernel/utrace.c
-+++ linux-2.6/kernel/utrace.c
+Index: b/kernel/utrace.c
+===================================================================
+--- /dev/null
++++ b/kernel/utrace.c
 @@ -0,0 +1,2359 @@
 +/*
 + * utrace infrastructure interface for debugging user processes
@@ -2406,8 +2410,10 @@
 +
 +	return unsafe;
 +}
---- linux-2.6/Documentation/utrace.txt
-+++ linux-2.6/Documentation/utrace.txt
+Index: b/Documentation/utrace.txt
+===================================================================
+--- /dev/null
++++ b/Documentation/utrace.txt
 @@ -0,0 +1,579 @@
 +DRAFT DRAFT DRAFT	WORK IN PROGRESS	DRAFT DRAFT DRAFT
 +
@@ -2988,8 +2994,10 @@
 +sure which event callbacks it will or won't see after utrace_set_flags
 +has returned.  By checking for errors, it can know whether to clean up
 +its data structures immediately or to let its callbacks do the work.
---- linux-2.6/Documentation/DocBook/Makefile
-+++ linux-2.6/Documentation/DocBook/Makefile
+Index: b/Documentation/DocBook/Makefile
+===================================================================
+--- a/Documentation/DocBook/Makefile
++++ b/Documentation/DocBook/Makefile
 @@ -9,7 +9,7 @@
  DOCBOOKS := wanbook.xml z8530book.xml mcabook.xml videobook.xml \
  	    kernel-hacking.xml kernel-locking.xml deviceiobook.xml \
@@ -2999,8 +3007,10 @@
  	    gadget.xml libata.xml mtdnand.xml librs.xml rapidio.xml \
  	    genericirq.xml
  
---- linux-2.6/Documentation/DocBook/utrace.tmpl
-+++ linux-2.6/Documentation/DocBook/utrace.tmpl
+Index: b/Documentation/DocBook/utrace.tmpl
+===================================================================
+--- /dev/null
++++ b/Documentation/DocBook/utrace.tmpl
 @@ -0,0 +1,23 @@
 +<?xml version="1.0" encoding="UTF-8"?>
 +<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN"
@@ -3025,8 +3035,10 @@
 +    </chapter>
 +
 +</book>
---- linux-2.6/include/linux/tracehook.h
-+++ linux-2.6/include/linux/tracehook.h
+Index: b/include/linux/tracehook.h
+===================================================================
+--- a/include/linux/tracehook.h
++++ b/include/linux/tracehook.h
 @@ -28,6 +28,7 @@
  
  #include <linux/sched.h>
@@ -3302,8 +3314,10 @@
  }
  
  
---- linux-2.6/include/linux/utrace.h
-+++ linux-2.6/include/linux/utrace.h
+Index: b/include/linux/utrace.h
+===================================================================
+--- /dev/null
++++ b/include/linux/utrace.h
 @@ -0,0 +1,544 @@
 +/*
 + * utrace infrastructure interface for debugging user processes
@@ -3849,9 +3863,11 @@
 +#endif  /* CONFIG_UTRACE */
 +
 +#endif	/* linux/utrace.h */
---- linux-2.6/include/linux/sched.h
-+++ linux-2.6/include/linux/sched.h
-@@ -1081,6 +1081,11 @@ struct task_struct {
+Index: b/include/linux/sched.h
+===================================================================
+--- a/include/linux/sched.h
++++ b/include/linux/sched.h
+@@ -1082,6 +1082,11 @@ struct task_struct {
  	struct audit_context *audit_context;
  	seccomp_t seccomp;
  
@@ -3863,8 +3879,10 @@
  /* Thread group tracking */
     	u32 parent_exec_id;
     	u32 self_exec_id;
---- linux-2.6/init/Kconfig
-+++ linux-2.6/init/Kconfig
+Index: b/init/Kconfig
+===================================================================
+--- a/init/Kconfig
++++ b/init/Kconfig
 @@ -667,4 +667,24 @@ config STOP_MACHINE
  	help
  	  Need stop_machine() primitive.

linux-2.6-utrace-ptrace-compat.patch:

Index: linux-2.6-utrace-ptrace-compat.patch
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/F-8/linux-2.6-utrace-ptrace-compat.patch,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -r1.9 -r1.10
--- linux-2.6-utrace-ptrace-compat.patch	7 Nov 2007 00:05:35 -0000	1.9
+++ linux-2.6-utrace-ptrace-compat.patch	14 Dec 2007 23:27:35 -0000	1.10
@@ -12,31 +12,33 @@
 
 ---
 
- fs/proc/base.c                  |   40 +
- arch/i386/kernel/ptrace.c       |   40 +
- arch/x86_64/ia32/ptrace32.c     |   57 +
- arch/x86_64/ia32/ia32entry.S    |    2 
- arch/x86_64/kernel/ptrace.c     |   46 +
- arch/powerpc/kernel/ptrace.c    |  455 +++++----
- arch/powerpc/kernel/signal_32.c |   52 +
+ arch/i386/kernel/ptrace.c       |   40 
  arch/powerpc/kernel/Makefile    |    2 
- arch/powerpc/kernel/ptrace32.c  |  408 --------
+ arch/powerpc/kernel/ptrace.c    |  455 +++++---
+ arch/powerpc/kernel/ptrace32.c  |  408 -------
+ arch/powerpc/kernel/signal_32.c |   52 +
  arch/powerpc/lib/sstep.c        |    3 
- kernel/fork.c                   |    2 
- kernel/exit.c                   |   13 
- kernel/ptrace.c                 | 2058 +++++++++++++++++++++++++++++++++++++--
- kernel/sys_ni.c                 |    4 
- kernel/Makefile                 |    3 
- include/linux/sched.h           |    4 
- include/linux/ptrace.h          |  221 +++-
- include/asm-x86_64/tracehook.h  |    1 
+ arch/x86_64/ia32/ia32entry.S    |    2 
+ arch/x86_64/ia32/ptrace32.c     |   57 +
+ arch/x86_64/kernel/ptrace.c     |   46 
+ fs/proc/base.c                  |   40 
  include/asm-x86_64/ptrace-abi.h |    3 
+ include/asm-x86_64/tracehook.h  |    1 
+ include/linux/ptrace.h          |  221 +++-
+ include/linux/sched.h           |    4 
  init/Kconfig                    |   15 
+ kernel/Makefile                 |    3 
+ kernel/exit.c                   |   13 
+ kernel/fork.c                   |    2 
+ kernel/ptrace.c                 | 2058 +++++++++++++++++++++++++++++++++++++---
+ kernel/sys_ni.c                 |    4 
  20 files changed, 2650 insertions(+), 779 deletions(-)
  delete arch/powerpc/kernel/ptrace32.c
 
---- linux-2.6/fs/proc/base.c
-+++ linux-2.6/fs/proc/base.c
+Index: b/fs/proc/base.c
+===================================================================
+--- a/fs/proc/base.c
++++ b/fs/proc/base.c
 @@ -151,6 +151,46 @@ static int get_nr_threads(struct task_st
  	return count;
  }
@@ -84,8 +86,10 @@
  static int proc_cwd_link(struct inode *inode, struct dentry **dentry, struct vfsmount **mnt)
  {
  	struct task_struct *task = get_proc_task(inode);
---- linux-2.6/arch/i386/kernel/ptrace.c
-+++ linux-2.6/arch/i386/kernel/ptrace.c
+Index: b/arch/i386/kernel/ptrace.c
+===================================================================
+--- a/arch/i386/kernel/ptrace.c
++++ b/arch/i386/kernel/ptrace.c
 @@ -747,6 +747,46 @@ const struct utrace_regset_view *utrace_
  	return &utrace_i386_native;
  }
@@ -133,8 +137,10 @@
  
  void send_sigtrap(struct task_struct *tsk, struct pt_regs *regs, int error_code)
  {
---- linux-2.6/arch/x86_64/ia32/ptrace32.c
-+++ linux-2.6/arch/x86_64/ia32/ptrace32.c
+Index: b/arch/x86_64/ia32/ptrace32.c
+===================================================================
+--- a/arch/x86_64/ia32/ptrace32.c
++++ b/arch/x86_64/ia32/ptrace32.c
 @@ -167,11 +167,6 @@ static int getreg32(struct task_struct *
  
  #undef R32
@@ -203,8 +209,10 @@
 +	return -ENOSYS;
 +}
 +#endif	/* CONFIG_PTRACE */
---- linux-2.6/arch/x86_64/ia32/ia32entry.S
-+++ linux-2.6/arch/x86_64/ia32/ia32entry.S
+Index: b/arch/x86_64/ia32/ia32entry.S
+===================================================================
+--- a/arch/x86_64/ia32/ia32entry.S
++++ b/arch/x86_64/ia32/ia32entry.S
 @@ -434,7 +434,7 @@ ia32_sys_call_table:
  	.quad sys_setuid16
  	.quad sys_getuid16
@@ -214,8 +222,10 @@
  	.quad sys_alarm
  	.quad sys_fstat	/* (old)fstat */
  	.quad sys_pause
---- linux-2.6/arch/x86_64/kernel/ptrace.c
-+++ linux-2.6/arch/x86_64/kernel/ptrace.c
+Index: b/arch/x86_64/kernel/ptrace.c
+===================================================================
+--- a/arch/x86_64/kernel/ptrace.c
++++ b/arch/x86_64/kernel/ptrace.c
 @@ -722,6 +722,52 @@ const struct utrace_regset_view *utrace_
  }
  
@@ -269,8 +279,10 @@
  asmlinkage void syscall_trace_enter(struct pt_regs *regs)
  {
  	/* do the secure computing check first */
---- linux-2.6/arch/powerpc/kernel/ptrace.c
-+++ linux-2.6/arch/powerpc/kernel/ptrace.c
+Index: b/arch/powerpc/kernel/ptrace.c
+===================================================================
+--- a/arch/powerpc/kernel/ptrace.c
++++ b/arch/powerpc/kernel/ptrace.c
 @@ -590,249 +590,320 @@ const struct utrace_regset_view *utrace_
  }
  
@@ -784,8 +796,10 @@
  
  void do_syscall_trace_enter(struct pt_regs *regs)
  {
---- linux-2.6/arch/powerpc/kernel/signal_32.c
-+++ linux-2.6/arch/powerpc/kernel/signal_32.c
+Index: b/arch/powerpc/kernel/signal_32.c
+===================================================================
+--- a/arch/powerpc/kernel/signal_32.c
++++ b/arch/powerpc/kernel/signal_32.c
 @@ -622,6 +622,58 @@ int copy_siginfo_to_user32(struct compat
  
  #define copy_siginfo_to_user	copy_siginfo_to_user32
@@ -845,8 +859,10 @@
  /*
   * Note: it is necessary to treat pid and sig as unsigned ints, with the
   * corresponding cast to a signed int to insure that the proper conversion
---- linux-2.6/arch/powerpc/kernel/Makefile
-+++ linux-2.6/arch/powerpc/kernel/Makefile
+Index: b/arch/powerpc/kernel/Makefile
+===================================================================
+--- a/arch/powerpc/kernel/Makefile
++++ b/arch/powerpc/kernel/Makefile
 @@ -18,7 +18,7 @@ obj-y				:= semaphore.o cputable.o ptrac
  				   signal.o
  obj-y				+= vdso32/
@@ -856,8 +872,10 @@
  				   paca.o cpu_setup_ppc970.o \
  				   cpu_setup_pa6t.o \
  				   firmware.o sysfs.o nvram_64.o
---- linux-2.6/arch/powerpc/kernel/ptrace32.c
-+++ linux-2.6/arch/powerpc/kernel/ptrace32.c
+Index: b/arch/powerpc/kernel/ptrace32.c
+===================================================================
+--- a/arch/powerpc/kernel/ptrace32.c
++++ /dev/null
 @@ -1,408 +0,0 @@
 -/*
 - * ptrace for 32-bit processes running on a 64-bit kernel.
@@ -1267,8 +1285,10 @@
 -	unlock_kernel();
 -	return ret;
 -}
---- linux-2.6/arch/powerpc/lib/sstep.c
-+++ linux-2.6/arch/powerpc/lib/sstep.c
+Index: b/arch/powerpc/lib/sstep.c
+===================================================================
+--- a/arch/powerpc/lib/sstep.c
++++ b/arch/powerpc/lib/sstep.c
 @@ -13,6 +13,9 @@
  #include <linux/ptrace.h>
  #include <asm/sstep.h>
@@ -1279,8 +1299,10 @@
  
  extern char system_call_common[];
  
---- linux-2.6/kernel/fork.c
-+++ linux-2.6/kernel/fork.c
+Index: b/kernel/fork.c
+===================================================================
+--- a/kernel/fork.c
++++ b/kernel/fork.c
 @@ -49,6 +49,7 @@
  #include <linux/delayacct.h>
  #include <linux/taskstats_kern.h>
@@ -1297,8 +1319,10 @@
  
  	clear_tsk_thread_flag(p, TIF_SIGPENDING);
  	init_sigpending(&p->pending);
---- linux-2.6/kernel/exit.c
-+++ linux-2.6/kernel/exit.c
+Index: b/kernel/exit.c
+===================================================================
+--- a/kernel/exit.c
++++ b/kernel/exit.c
 @@ -23,6 +23,7 @@
  #include <linux/nsproxy.h>
  #include <linux/tracehook.h>
@@ -1316,7 +1340,7 @@
  	if (unlikely(in_atomic()))
  		printk(KERN_INFO "note: %s[%d] exited with preempt_count %d\n",
  				current->comm, current->pid,
-@@ -1510,9 +1513,15 @@ check_continued:
+@@ -1508,9 +1511,15 @@ check_continued:
  				break;
  			}
  		}
@@ -1334,8 +1358,10 @@
  		if (options & __WNOTHREAD)
  			break;
  		tsk = next_thread(tsk);
---- linux-2.6/kernel/ptrace.c
-+++ linux-2.6/kernel/ptrace.c
+Index: b/kernel/ptrace.c
+===================================================================
+--- a/kernel/ptrace.c
++++ b/kernel/ptrace.c
 @@ -19,213 +19,2011 @@
  #include <linux/security.h>
  #include <linux/signal.h>
@@ -3478,8 +3504,10 @@
 +	.tracer_task = ptrace_tracer_task,
 +	.allow_access_process_vm = ptrace_allow_access_process_vm,
 +};
---- linux-2.6/kernel/sys_ni.c
-+++ linux-2.6/kernel/sys_ni.c
+Index: b/kernel/sys_ni.c
+===================================================================
+--- a/kernel/sys_ni.c
++++ b/kernel/sys_ni.c
 @@ -114,6 +114,10 @@ cond_syscall(sys_vm86);
  cond_syscall(compat_sys_ipc);
  cond_syscall(compat_sys_sysctl);
@@ -3491,8 +3519,10 @@
  /* arch-specific weak syscall entries */
  cond_syscall(sys_pciconfig_read);
  cond_syscall(sys_pciconfig_write);
---- linux-2.6/kernel/Makefile
-+++ linux-2.6/kernel/Makefile
+Index: b/kernel/Makefile
+===================================================================
+--- a/kernel/Makefile
++++ b/kernel/Makefile
 @@ -4,7 +4,7 @@
  
  obj-y     = sched.o fork.o exec_domain.o panic.o printk.o profile.o \
@@ -3510,9 +3540,11 @@
  
  ifneq ($(CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER),y)
  # According to Alan Modra <alan at linuxcare.com.au>, the -fno-omit-frame-pointer is
---- linux-2.6/include/linux/sched.h
-+++ linux-2.6/include/linux/sched.h
-@@ -1179,6 +1179,10 @@ struct task_struct {
+Index: b/include/linux/sched.h
+===================================================================
+--- a/include/linux/sched.h
++++ b/include/linux/sched.h
+@@ -1180,6 +1180,10 @@ struct task_struct {
  	atomic_t fs_excl;	/* holding fs exclusive resources */
  	struct rcu_head rcu;
  
@@ -3523,8 +3555,10 @@
  	/*
  	 * cache last used pipe for splice
  	 */
---- linux-2.6/include/linux/ptrace.h
-+++ linux-2.6/include/linux/ptrace.h
+Index: b/include/linux/ptrace.h
+===================================================================
+--- a/include/linux/ptrace.h
++++ b/include/linux/ptrace.h
 @@ -49,49 +49,196 @@
  #include <asm/ptrace.h>
  
@@ -3759,8 +3793,10 @@
  int generic_ptrace_peekdata(struct task_struct *tsk, long addr, long data);
  int generic_ptrace_pokedata(struct task_struct *tsk, long addr, long data);
  
---- linux-2.6/include/asm-x86_64/tracehook.h
-+++ linux-2.6/include/asm-x86_64/tracehook.h
+Index: b/include/asm-x86_64/tracehook.h
+===================================================================
+--- a/include/asm-x86_64/tracehook.h
++++ b/include/asm-x86_64/tracehook.h
 @@ -15,6 +15,7 @@
  
  #include <linux/sched.h>
@@ -3769,8 +3805,10 @@
  
  /*
   * See linux/tracehook.h for the descriptions of what these need to do.
---- linux-2.6/include/asm-x86_64/ptrace-abi.h
-+++ linux-2.6/include/asm-x86_64/ptrace-abi.h
+Index: b/include/asm-x86_64/ptrace-abi.h
+===================================================================
+--- a/include/asm-x86_64/ptrace-abi.h
++++ b/include/asm-x86_64/ptrace-abi.h
 @@ -48,4 +48,7 @@
  
  #define PTRACE_ARCH_PRCTL	  30	/* arch_prctl for child */
@@ -3779,8 +3817,10 @@
 +#define PTRACE_SYSEMU_SINGLESTEP  32
 +
  #endif
---- linux-2.6/init/Kconfig
-+++ linux-2.6/init/Kconfig
+Index: b/init/Kconfig
+===================================================================
+--- a/init/Kconfig
++++ b/init/Kconfig
 @@ -673,10 +673,21 @@ endmenu
  
  menu "Process debugging support"

linux-2.6-utrace-tracehook.patch:

Index: linux-2.6-utrace-tracehook.patch
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/F-8/linux-2.6-utrace-tracehook.patch,v
retrieving revision 1.15
retrieving revision 1.16
diff -u -r1.15 -r1.16
--- linux-2.6-utrace-tracehook.patch	19 Nov 2007 17:29:06 -0000	1.15
+++ linux-2.6-utrace-tracehook.patch	14 Dec 2007 23:27:35 -0000	1.16
@@ -33,81 +33,83 @@
 
 ---
 
- fs/binfmt_flat.c                    |    3 
- fs/binfmt_som.c                     |    2 
- fs/proc/base.c                      |   17 +
- fs/proc/array.c                     |   12 +
- fs/binfmt_elf_fdpic.c               |    7 -
- fs/exec.c                           |   11 -
- fs/binfmt_elf.c                     |    6 -
- fs/binfmt_aout.c                    |    6 -
- security/selinux/hooks.c            |   54 +++--
- security/selinux/include/objsec.h   |    1 
- arch/s390/kernel/compat_linux.c     |    3 
- arch/s390/kernel/process.c          |    3 
+ arch/alpha/kernel/asm-offsets.c     |    2 
+ arch/alpha/kernel/entry.S           |    4 
+ arch/arm/kernel/ptrace.c            |   17 -
  arch/frv/kernel/ptrace.c            |   15 -
- arch/i386/math-emu/fpu_entry.c      |    6 -
- arch/i386/kernel/ptrace.c           |  103 ++-------
- arch/i386/kernel/signal.c           |   37 +--
+ arch/i386/kernel/entry.S            |    7 
  arch/i386/kernel/process.c          |    3 
- arch/i386/kernel/vm86.c             |    7 -
- arch/i386/kernel/entry.S            |    7 -
- arch/x86_64/ia32/sys_ia32.c         |    5 
- arch/x86_64/ia32/ptrace32.c         |    2 
- arch/x86_64/ia32/ia32_aout.c        |    6 -
- arch/x86_64/ia32/ia32_signal.c      |    7 -
- arch/x86_64/ia32/ia32entry.S        |    4 
- arch/x86_64/kernel/traps.c          |    8 -
- arch/x86_64/kernel/ptrace.c         |   57 ++---
- arch/x86_64/kernel/signal.c         |   28 +-
- arch/x86_64/kernel/process.c        |    5 
- arch/x86_64/kernel/entry.S          |    8 -
- arch/x86_64/mm/fault.c              |    2 
- arch/arm/kernel/ptrace.c            |   17 -
- arch/mips/kernel/sysirix.c          |    2 
+ arch/i386/kernel/ptrace.c           |  103 +-------
+ arch/i386/kernel/signal.c           |   37 +--
+ arch/i386/kernel/vm86.c             |    7 
+ arch/i386/math-emu/fpu_entry.c      |    6 
+ arch/ia64/kernel/asm-offsets.c      |    2 
+ arch/ia64/kernel/fsys.S             |   16 -
+ arch/ia64/kernel/mca.c              |    2 
  arch/mips/kernel/ptrace.c           |   23 --
- arch/powerpc/kernel/sys_ppc32.c     |    5 
- arch/powerpc/kernel/ptrace32.c      |    7 +
- arch/powerpc/kernel/ptrace.c        |   49 +---
- arch/powerpc/kernel/signal.c        |    3 
+ arch/mips/kernel/sysirix.c          |    2 
  arch/powerpc/kernel/asm-offsets.c   |    2 
  arch/powerpc/kernel/process.c       |    5 
- arch/alpha/kernel/asm-offsets.c     |    2 
- arch/alpha/kernel/entry.S           |    4 
+ arch/powerpc/kernel/ptrace.c        |   49 +---
+ arch/powerpc/kernel/ptrace32.c      |    7 
+ arch/powerpc/kernel/signal.c        |    3 
+ arch/powerpc/kernel/sys_ppc32.c     |    5 
+ arch/ppc/kernel/asm-offsets.c       |    2 
+ arch/s390/kernel/compat_linux.c     |    3 
+ arch/s390/kernel/process.c          |    3 
  arch/sparc64/kernel/binfmt_aout32.c |    2 
  arch/sparc64/kernel/process.c       |    3 
  arch/sparc64/kernel/sys_sparc32.c   |    3 
- arch/ppc/kernel/asm-offsets.c       |    2 
- arch/ia64/kernel/mca.c              |    2 
- arch/ia64/kernel/asm-offsets.c      |    2 
- arch/ia64/kernel/fsys.S             |   16 +
- kernel/exit.c                       |  250 ++++++---------------
- kernel/ptrace.c                     |  298 +------------------------
- kernel/timer.c                      |    6 -
- kernel/signal.c                     |  210 ++++--------------
- kernel/tsacct.c                     |    2 
- kernel/sys.c                        |    2 
- kernel/fork.c                       |   66 ++----
- include/linux/ptrace.h              |   18 --
- include/linux/sched.h               |   16 -
- include/linux/init_task.h           |    3 
- include/linux/tracehook.h           |  414 +++++++++++++++++++++++++++++++++++
- include/asm-i386/tracehook.h        |   52 ++++
- include/asm-i386/thread_info.h      |    7 -
+ arch/x86_64/ia32/ia32_aout.c        |    6 
+ arch/x86_64/ia32/ia32_signal.c      |    7 
+ arch/x86_64/ia32/ia32entry.S        |    4 
+ arch/x86_64/ia32/ptrace32.c         |    2 
+ arch/x86_64/ia32/sys_ia32.c         |    5 
+ arch/x86_64/kernel/entry.S          |    8 
+ arch/x86_64/kernel/process.c        |    5 
+ arch/x86_64/kernel/ptrace.c         |   57 +---
+ arch/x86_64/kernel/signal.c         |   28 +-
+ arch/x86_64/kernel/traps.c          |    8 
+ arch/x86_64/mm/fault.c              |    2 
+ drivers/connector/cn_proc.c         |    4 
+ fs/binfmt_aout.c                    |    6 
+ fs/binfmt_elf.c                     |    6 
+ fs/binfmt_elf_fdpic.c               |    7 
+ fs/binfmt_flat.c                    |    3 
+ fs/binfmt_som.c                     |    2 
+ fs/exec.c                           |   11 
+ fs/proc/array.c                     |   12 -
+ fs/proc/base.c                      |   17 -
  include/asm-i386/signal.h           |    4 
+ include/asm-i386/thread_info.h      |    7 
+ include/asm-i386/tracehook.h        |   52 ++++
  include/asm-powerpc/tracehook.h     |   49 ++++
- include/asm-x86_64/tracehook.h      |   51 ++++
  include/asm-x86_64/thread_info.h    |    3 
- drivers/connector/cn_proc.c         |    4 
+ include/asm-x86_64/tracehook.h      |   51 ++++
+ include/linux/init_task.h           |    3 
+ include/linux/ptrace.h              |   18 -
+ include/linux/sched.h               |   16 -
+ include/linux/tracehook.h           |  414 ++++++++++++++++++++++++++++++++++++
+ kernel/exit.c                       |  251 ++++++---------------
+ kernel/fork.c                       |   66 +----
+ kernel/ptrace.c                     |  298 +------------------------
+ kernel/signal.c                     |  210 +++---------------
+ kernel/sys.c                        |    2 
+ kernel/timer.c                      |    6 
+ kernel/tsacct.c                     |    2 
  mm/nommu.c                          |    4 
- 67 files changed, 904 insertions(+), 1139 deletions(-)
+ security/selinux/hooks.c            |   54 ++--
+ security/selinux/include/objsec.h   |    1 
+ 67 files changed, 904 insertions(+), 1140 deletions(-)
  create include/linux/tracehook.h
  create include/asm-i386/tracehook.h
  create include/asm-powerpc/tracehook.h
  create include/asm-x86_64/tracehook.h
 
---- linux-2.6/fs/binfmt_flat.c
-+++ linux-2.6/fs/binfmt_flat.c
+Index: b/fs/binfmt_flat.c
+===================================================================
+--- a/fs/binfmt_flat.c
++++ b/fs/binfmt_flat.c
 @@ -918,9 +918,6 @@ static int load_flat_binary(struct linux
  	
  	start_thread(regs, start_addr, current->mm->start_stack);
@@ -118,8 +120,10 @@
  	return 0;
  }
  
---- linux-2.6/fs/binfmt_som.c
-+++ linux-2.6/fs/binfmt_som.c
+Index: b/fs/binfmt_som.c
+===================================================================
+--- a/fs/binfmt_som.c
++++ b/fs/binfmt_som.c
 @@ -285,8 +285,6 @@ load_som_binary(struct linux_binprm * bp
  	map_hpux_gateway_page(current,current->mm);
  
@@ -129,8 +133,10 @@
  	return 0;
  
  	/* error cleanup */
---- linux-2.6/fs/proc/base.c
-+++ linux-2.6/fs/proc/base.c
+Index: b/fs/proc/base.c
+===================================================================
+--- a/fs/proc/base.c
++++ b/fs/proc/base.c
 @@ -67,6 +67,7 @@
  #include <linux/mount.h>
  #include <linux/security.h>
@@ -183,8 +189,10 @@
  		goto out;
  
  	copied = -ENOMEM;
---- linux-2.6/fs/proc/array.c
-+++ linux-2.6/fs/proc/array.c
+Index: b/fs/proc/array.c
+===================================================================
+--- a/fs/proc/array.c
++++ b/fs/proc/array.c
 @@ -75,6 +75,7 @@
  #include <linux/file.h>
  #include <linux/times.h>
@@ -221,7 +229,7 @@
  		p->uid, p->euid, p->suid, p->fsuid,
  		p->gid, p->egid, p->sgid, p->fsgid);
  
-@@ -441,7 +447,7 @@ static int do_task_stat(struct task_stru
+@@ -443,7 +449,7 @@ static int do_task_stat(struct task_stru
  
  		sid = signal_session(sig);
  		pgid = process_group(task);
@@ -230,8 +238,10 @@
  
  		unlock_task_sighand(task, &flags);
  	}
---- linux-2.6/fs/binfmt_elf_fdpic.c
-+++ linux-2.6/fs/binfmt_elf_fdpic.c
+Index: b/fs/binfmt_elf_fdpic.c
+===================================================================
+--- a/fs/binfmt_elf_fdpic.c
++++ b/fs/binfmt_elf_fdpic.c
 @@ -427,13 +427,6 @@ static int load_elf_fdpic_binary(struct 
  	entryaddr = interp_params.entry_addr ?: exec_params.entry_addr;
  	start_thread(regs, entryaddr, current->mm->start_stack);
@@ -246,8 +256,10 @@
  	retval = 0;
  
  error:
---- linux-2.6/fs/exec.c
-+++ linux-2.6/fs/exec.c
+Index: b/fs/exec.c
+===================================================================
+--- a/fs/exec.c
++++ b/fs/exec.c
 @@ -42,7 +42,7 @@
  #include <linux/module.h>
  #include <linux/namei.h>
@@ -280,8 +292,10 @@
  				return retval;
  			}
  			read_lock(&binfmt_lock);
---- linux-2.6/fs/binfmt_elf.c
-+++ linux-2.6/fs/binfmt_elf.c
+Index: b/fs/binfmt_elf.c
+===================================================================
+--- a/fs/binfmt_elf.c
++++ b/fs/binfmt_elf.c
 @@ -1036,12 +1036,6 @@ static int load_elf_binary(struct linux_
  #endif
  
@@ -295,8 +309,10 @@
  	retval = 0;
  out:
  	kfree(loc);
---- linux-2.6/fs/binfmt_aout.c
-+++ linux-2.6/fs/binfmt_aout.c
+Index: b/fs/binfmt_aout.c
+===================================================================
+--- a/fs/binfmt_aout.c
++++ b/fs/binfmt_aout.c
 @@ -452,12 +452,6 @@ beyond_if:
  	regs->gp = ex.a_gpvalue;
  #endif
@@ -310,8 +326,10 @@
  	return 0;
  }
  
---- linux-2.6/security/selinux/hooks.c
-+++ linux-2.6/security/selinux/hooks.c
+Index: b/security/selinux/hooks.c
+===================================================================
+--- a/security/selinux/hooks.c
++++ b/security/selinux/hooks.c
 @@ -23,7 +23,7 @@
  #include <linux/module.h>
  #include <linux/init.h>
@@ -430,8 +448,10 @@
  			tsec->sid = sid;
  			task_unlock(p);
  		}
---- linux-2.6/security/selinux/include/objsec.h
-+++ linux-2.6/security/selinux/include/objsec.h
+Index: b/security/selinux/include/objsec.h
+===================================================================
+--- a/security/selinux/include/objsec.h
++++ b/security/selinux/include/objsec.h
 @@ -35,7 +35,6 @@ struct task_security_struct {
  	u32 create_sid;      /* fscreate SID */
  	u32 keycreate_sid;   /* keycreate SID */
@@ -440,8 +460,10 @@
  };
  
  struct inode_security_struct {
---- linux-2.6/arch/s390/kernel/compat_linux.c
-+++ linux-2.6/arch/s390/kernel/compat_linux.c
+Index: b/arch/s390/kernel/compat_linux.c
+===================================================================
+--- a/arch/s390/kernel/compat_linux.c
++++ b/arch/s390/kernel/compat_linux.c
 @@ -513,9 +513,6 @@ asmlinkage long sys32_execve(void)
  		result = rc;
  		goto out_putname;
@@ -452,8 +474,10 @@
  	current->thread.fp_regs.fpc=0;
  	asm volatile("sfpc %0,0" : : "d" (0));
  	result = regs->gprs[2];
---- linux-2.6/arch/s390/kernel/process.c
-+++ linux-2.6/arch/s390/kernel/process.c
+Index: b/arch/s390/kernel/process.c
+===================================================================
+--- a/arch/s390/kernel/process.c
++++ b/arch/s390/kernel/process.c
 @@ -322,9 +322,6 @@ asmlinkage long sys_vfork(void)
  
  asmlinkage void execve_tail(void)
@@ -464,8 +488,10 @@
  	current->thread.fp_regs.fpc = 0;
  	if (MACHINE_HAS_IEEE)
  		asm volatile("sfpc %0,%0" : : "d" (0));
---- linux-2.6/arch/frv/kernel/ptrace.c
-+++ linux-2.6/arch/frv/kernel/ptrace.c
+Index: b/arch/frv/kernel/ptrace.c
+===================================================================
+--- a/arch/frv/kernel/ptrace.c
++++ b/arch/frv/kernel/ptrace.c
 @@ -689,24 +689,11 @@ asmlinkage void do_syscall_trace(int lea
  	if (!test_thread_flag(TIF_SYSCALL_TRACE))
  		return;
@@ -492,8 +518,10 @@
 -	}
 +	tracehook_report_syscall(regs, leaving);
  }
---- linux-2.6/arch/i386/math-emu/fpu_entry.c
-+++ linux-2.6/arch/i386/math-emu/fpu_entry.c
+Index: b/arch/i386/math-emu/fpu_entry.c
+===================================================================
+--- a/arch/i386/math-emu/fpu_entry.c
++++ b/arch/i386/math-emu/fpu_entry.c
 @@ -25,7 +25,6 @@
   +---------------------------------------------------------------------------*/
  
@@ -514,8 +542,10 @@
  
    if ( !valid_prefix(&byte1, (u_char __user **)&FPU_EIP,
  		     &addr_modes.override) )
---- linux-2.6/arch/i386/kernel/ptrace.c
-+++ linux-2.6/arch/i386/kernel/ptrace.c
+Index: b/arch/i386/kernel/ptrace.c
+===================================================================
+--- a/arch/i386/kernel/ptrace.c
++++ b/arch/i386/kernel/ptrace.c
 @@ -11,6 +11,7 @@
  #include <linux/smp.h>
  #include <linux/errno.h>
@@ -709,8 +739,10 @@
 -		audit_syscall_exit(AUDITSC_RESULT(regs->eax), regs->eax);
 -	return 1;
  }
---- linux-2.6/arch/i386/kernel/signal.c
-+++ linux-2.6/arch/i386/kernel/signal.c
+Index: b/arch/i386/kernel/signal.c
+===================================================================
+--- a/arch/i386/kernel/signal.c
++++ b/arch/i386/kernel/signal.c
 @@ -18,7 +18,7 @@
  #include <linux/stddef.h>
  #include <linux/personality.h>
@@ -787,8 +819,10 @@
  	}
  
  	return ret;
---- linux-2.6/arch/i386/kernel/process.c
-+++ linux-2.6/arch/i386/kernel/process.c
+Index: b/arch/i386/kernel/process.c
+===================================================================
+--- a/arch/i386/kernel/process.c
++++ b/arch/i386/kernel/process.c
 @@ -791,9 +791,6 @@ asmlinkage int sys_execve(struct pt_regs
  			(char __user * __user *) regs.edx,
  			&regs);
@@ -799,8 +833,10 @@
  		/* Make sure we don't return using sysenter.. */
  		set_thread_flag(TIF_IRET);
  	}
---- linux-2.6/arch/i386/kernel/vm86.c
-+++ linux-2.6/arch/i386/kernel/vm86.c
+Index: b/arch/i386/kernel/vm86.c
+===================================================================
+--- a/arch/i386/kernel/vm86.c
++++ b/arch/i386/kernel/vm86.c
 @@ -556,13 +556,6 @@ int handle_vm86_trap(struct kernel_vm86_
  	}
  	if (trapno !=1)
@@ -815,8 +851,10 @@
  	send_sig(SIGTRAP, current, 1);
  	current->thread.trap_no = trapno;
  	current->thread.error_code = error_code;
---- linux-2.6/arch/i386/kernel/entry.S
-+++ linux-2.6/arch/i386/kernel/entry.S
+Index: b/arch/i386/kernel/entry.S
+===================================================================
+--- a/arch/i386/kernel/entry.S
++++ b/arch/i386/kernel/entry.S
 @@ -332,7 +332,7 @@ sysenter_past_esp:
  	GET_THREAD_INFO(%ebp)
  
@@ -845,8 +883,10 @@
  	movl PT_ORIG_EAX(%esp), %eax
  	cmpl $(nr_syscalls), %eax
  	jnae syscall_call
---- linux-2.6/arch/x86_64/ia32/sys_ia32.c
-+++ linux-2.6/arch/x86_64/ia32/sys_ia32.c
+Index: b/arch/x86_64/ia32/sys_ia32.c
+===================================================================
+--- a/arch/x86_64/ia32/sys_ia32.c
++++ b/arch/x86_64/ia32/sys_ia32.c
 @@ -800,11 +800,6 @@ asmlinkage long sys32_execve(char __user
  	if (IS_ERR(filename))
  		return error;
@@ -859,8 +899,10 @@
  	putname(filename);
  	return error;
  }
---- linux-2.6/arch/x86_64/ia32/ptrace32.c
-+++ linux-2.6/arch/x86_64/ia32/ptrace32.c
+Index: b/arch/x86_64/ia32/ptrace32.c
+===================================================================
+--- a/arch/x86_64/ia32/ptrace32.c
++++ b/arch/x86_64/ia32/ptrace32.c
 @@ -389,9 +389,11 @@ asmlinkage long sys32_ptrace(long reques
  		break;
  	}
@@ -873,8 +915,10 @@
  
  	default:
  		BUG();
---- linux-2.6/arch/x86_64/ia32/ia32_aout.c
-+++ linux-2.6/arch/x86_64/ia32/ia32_aout.c
+Index: b/arch/x86_64/ia32/ia32_aout.c
+===================================================================
+--- a/arch/x86_64/ia32/ia32_aout.c
++++ b/arch/x86_64/ia32/ia32_aout.c
 @@ -423,12 +423,6 @@ beyond_if:
  	(regs)->cs = __USER32_CS;
  	(regs)->ss = __USER32_DS;
@@ -888,8 +932,10 @@
  	return 0;
  }
  
---- linux-2.6/arch/x86_64/ia32/ia32_signal.c
-+++ linux-2.6/arch/x86_64/ia32/ia32_signal.c
+Index: b/arch/x86_64/ia32/ia32_signal.c
+===================================================================
+--- a/arch/x86_64/ia32/ia32_signal.c
++++ b/arch/x86_64/ia32/ia32_signal.c
 @@ -492,11 +492,7 @@ int ia32_setup_frame(int sig, struct k_s
  
  	regs->cs = __USER32_CS; 
@@ -912,8 +958,10 @@
  
  #if DEBUG_SIG
  	printk("SIG deliver (%s:%d): sp=%p pc=%lx ra=%u\n",
---- linux-2.6/arch/x86_64/ia32/ia32entry.S
-+++ linux-2.6/arch/x86_64/ia32/ia32entry.S
+Index: b/arch/x86_64/ia32/ia32entry.S
+===================================================================
+--- a/arch/x86_64/ia32/ia32entry.S
++++ b/arch/x86_64/ia32/ia32entry.S
 @@ -333,7 +333,7 @@ ENTRY(ia32_syscall)
  	jnz ia32_tracesys
  ia32_do_syscall:	
@@ -932,8 +980,10 @@
  	movq %rsp,%rdi        /* &pt_regs -> arg1 */
  	call syscall_trace_enter
  	LOAD_ARGS32 ARGOFFSET  /* reload args from stack in case ptrace changed it */
---- linux-2.6/arch/x86_64/kernel/traps.c
-+++ linux-2.6/arch/x86_64/kernel/traps.c
+Index: b/arch/x86_64/kernel/traps.c
+===================================================================
+--- a/arch/x86_64/kernel/traps.c
++++ b/arch/x86_64/kernel/traps.c
 @@ -878,14 +878,6 @@ asmlinkage void __kprobes do_debug(struc
  		 */
                  if (!user_mode(regs))
@@ -949,8 +999,10 @@
  	}
  
  	/* Ok, finally something we can handle */
---- linux-2.6/arch/x86_64/kernel/ptrace.c
-+++ linux-2.6/arch/x86_64/kernel/ptrace.c
+Index: b/arch/x86_64/kernel/ptrace.c
+===================================================================
+--- a/arch/x86_64/kernel/ptrace.c
++++ b/arch/x86_64/kernel/ptrace.c
 @@ -12,6 +12,7 @@
  #include <linux/mm.h>
  #include <linux/smp.h>
@@ -1083,8 +1135,10 @@
 +		tracehook_report_syscall_step(regs);
 +	}
  }
---- linux-2.6/arch/x86_64/kernel/signal.c
-+++ linux-2.6/arch/x86_64/kernel/signal.c
+Index: b/arch/x86_64/kernel/signal.c
+===================================================================
+--- a/arch/x86_64/kernel/signal.c
++++ b/arch/x86_64/kernel/signal.c
 @@ -16,7 +16,7 @@
  #include <linux/signal.h>
  #include <linux/errno.h>
@@ -1142,8 +1196,10 @@
  	}
  
  	return ret;
---- linux-2.6/arch/x86_64/kernel/process.c
-+++ linux-2.6/arch/x86_64/kernel/process.c
+Index: b/arch/x86_64/kernel/process.c
+===================================================================
+--- a/arch/x86_64/kernel/process.c
++++ b/arch/x86_64/kernel/process.c
 @@ -699,11 +699,6 @@ long sys_execve(char __user *name, char 
  	if (IS_ERR(filename)) 
  		return error;
@@ -1156,8 +1212,10 @@
  	putname(filename);
  	return error;
  }
---- linux-2.6/arch/x86_64/kernel/entry.S
-+++ linux-2.6/arch/x86_64/kernel/entry.S
+Index: b/arch/x86_64/kernel/entry.S
+===================================================================
+--- a/arch/x86_64/kernel/entry.S
++++ b/arch/x86_64/kernel/entry.S
 @@ -305,19 +305,17 @@ badsys:
  	/* Do syscall tracing */
  tracesys:			 
@@ -1181,8 +1239,10 @@
  	/* Use IRET because user could have changed frame */
  		
  /* 
---- linux-2.6/arch/x86_64/mm/fault.c
-+++ linux-2.6/arch/x86_64/mm/fault.c
+Index: b/arch/x86_64/mm/fault.c
+===================================================================
+--- a/arch/x86_64/mm/fault.c
++++ b/arch/x86_64/mm/fault.c
 @@ -11,7 +11,7 @@
  #include <linux/errno.h>
  #include <linux/string.h>
@@ -1192,8 +1252,10 @@
  #include <linux/mman.h>
  #include <linux/mm.h>
  #include <linux/smp.h>
---- linux-2.6/arch/arm/kernel/ptrace.c
-+++ linux-2.6/arch/arm/kernel/ptrace.c
+Index: b/arch/arm/kernel/ptrace.c
+===================================================================
+--- a/arch/arm/kernel/ptrace.c
++++ b/arch/arm/kernel/ptrace.c
 @@ -795,8 +795,6 @@ asmlinkage int syscall_trace(int why, st
  
  	if (!test_thread_flag(TIF_SYSCALL_TRACE))
@@ -1225,8 +1287,10 @@
  
  	return current_thread_info()->syscall;
  }
---- linux-2.6/arch/mips/kernel/sysirix.c
-+++ linux-2.6/arch/mips/kernel/sysirix.c
+Index: b/arch/mips/kernel/sysirix.c
+===================================================================
+--- a/arch/mips/kernel/sysirix.c
++++ b/arch/mips/kernel/sysirix.c
 @@ -582,7 +582,7 @@ out:
  
  asmlinkage int irix_getpid(struct pt_regs *regs)
@@ -1236,8 +1300,10 @@
  	return current->pid;
  }
  
---- linux-2.6/arch/mips/kernel/ptrace.c
-+++ linux-2.6/arch/mips/kernel/ptrace.c
+Index: b/arch/mips/kernel/ptrace.c
+===================================================================
+--- a/arch/mips/kernel/ptrace.c
++++ b/arch/mips/kernel/ptrace.c
 @@ -478,28 +478,9 @@ asmlinkage void do_syscall_trace(struct 
  		audit_syscall_exit(AUDITSC_RESULT(regs->regs[2]),
  		                   regs->regs[2]);
@@ -1269,8 +1335,10 @@
  	if (unlikely(current->audit_context) && !entryexit)
  		audit_syscall_entry(audit_arch(), regs->regs[0],
  				    regs->regs[4], regs->regs[5],
---- linux-2.6/arch/powerpc/kernel/sys_ppc32.c
-+++ linux-2.6/arch/powerpc/kernel/sys_ppc32.c
+Index: b/arch/powerpc/kernel/sys_ppc32.c
+===================================================================
+--- a/arch/powerpc/kernel/sys_ppc32.c
++++ b/arch/powerpc/kernel/sys_ppc32.c
 @@ -368,11 +368,6 @@ long compat_sys_execve(unsigned long a0,
  
  	error = compat_do_execve(filename, compat_ptr(a1), compat_ptr(a2), regs);
@@ -1283,8 +1351,10 @@
  	putname(filename);
  
  out:
---- linux-2.6/arch/powerpc/kernel/ptrace32.c
-+++ linux-2.6/arch/powerpc/kernel/ptrace32.c
+Index: b/arch/powerpc/kernel/ptrace32.c
+===================================================================
+--- a/arch/powerpc/kernel/ptrace32.c
++++ b/arch/powerpc/kernel/ptrace32.c
 @@ -24,6 +24,7 @@
  #include <linux/smp_lock.h>
  #include <linux/errno.h>
@@ -1323,8 +1393,10 @@
  
  	case PTRACE_GETREGS: { /* Get all pt_regs from the child. */
  		int ui;
---- linux-2.6/arch/powerpc/kernel/ptrace.c
-+++ linux-2.6/arch/powerpc/kernel/ptrace.c
+Index: b/arch/powerpc/kernel/ptrace.c
+===================================================================
+--- a/arch/powerpc/kernel/ptrace.c
++++ b/arch/powerpc/kernel/ptrace.c
 @@ -21,6 +21,7 @@
  #include <linux/smp.h>
  #include <linux/errno.h>
@@ -1446,8 +1518,10 @@
 +		tracehook_report_syscall_step(regs);
 +	}
  }
---- linux-2.6/arch/powerpc/kernel/signal.c
-+++ linux-2.6/arch/powerpc/kernel/signal.c
+Index: b/arch/powerpc/kernel/signal.c
+===================================================================
+--- a/arch/powerpc/kernel/signal.c
++++ b/arch/powerpc/kernel/signal.c
 @@ -10,6 +10,7 @@
   */
  
@@ -1465,8 +1539,10 @@
  	}
  
  	return ret;
---- linux-2.6/arch/powerpc/kernel/asm-offsets.c
-+++ linux-2.6/arch/powerpc/kernel/asm-offsets.c
+Index: b/arch/powerpc/kernel/asm-offsets.c
+===================================================================
+--- a/arch/powerpc/kernel/asm-offsets.c
++++ b/arch/powerpc/kernel/asm-offsets.c
 @@ -59,7 +59,6 @@ int main(void)
  	DEFINE(AUDITCONTEXT, offsetof(struct task_struct, audit_context));
  #else
@@ -1483,8 +1559,10 @@
  #endif
  #ifdef CONFIG_SPE
  	DEFINE(THREAD_EVR0, offsetof(struct thread_struct, evr[0]));
---- linux-2.6/arch/powerpc/kernel/process.c
-+++ linux-2.6/arch/powerpc/kernel/process.c
+Index: b/arch/powerpc/kernel/process.c
+===================================================================
+--- a/arch/powerpc/kernel/process.c
++++ b/arch/powerpc/kernel/process.c
 @@ -820,11 +820,6 @@ int sys_execve(unsigned long a0, unsigne
  	flush_spe_to_thread(current);
  	error = do_execve(filename, (char __user * __user *) a1,
@@ -1497,8 +1575,10 @@
  	putname(filename);
  out:
  	return error;
---- linux-2.6/arch/alpha/kernel/asm-offsets.c
-+++ linux-2.6/arch/alpha/kernel/asm-offsets.c
+Index: b/arch/alpha/kernel/asm-offsets.c
+===================================================================
+--- a/arch/alpha/kernel/asm-offsets.c
++++ b/arch/alpha/kernel/asm-offsets.c
 @@ -27,7 +27,7 @@ void foo(void)
          DEFINE(TASK_EUID, offsetof(struct task_struct, euid));
          DEFINE(TASK_GID, offsetof(struct task_struct, gid));
@@ -1508,8 +1588,10 @@
          DEFINE(TASK_GROUP_LEADER, offsetof(struct task_struct, group_leader));
          DEFINE(TASK_TGID, offsetof(struct task_struct, tgid));
          BLANK();
---- linux-2.6/arch/alpha/kernel/entry.S
-+++ linux-2.6/arch/alpha/kernel/entry.S
+Index: b/arch/alpha/kernel/entry.S
+===================================================================
+--- a/arch/alpha/kernel/entry.S
++++ b/arch/alpha/kernel/entry.S
 @@ -878,14 +878,14 @@ sys_getxpid:
  	/* See linux/kernel/timer.c sys_getppid for discussion
  	   about this loop.  */
@@ -1527,8 +1609,10 @@
  	cmpeq	$4, $5, $5
  	beq	$5, 1b
  #endif
---- linux-2.6/arch/sparc64/kernel/binfmt_aout32.c
-+++ linux-2.6/arch/sparc64/kernel/binfmt_aout32.c
+Index: b/arch/sparc64/kernel/binfmt_aout32.c
+===================================================================
+--- a/arch/sparc64/kernel/binfmt_aout32.c
++++ b/arch/sparc64/kernel/binfmt_aout32.c
 @@ -335,8 +335,6 @@ beyond_if:
  	tsb_context_switch(current->mm);
  
@@ -1538,8 +1622,10 @@
  	return 0;
  }
  
---- linux-2.6/arch/sparc64/kernel/process.c
-+++ linux-2.6/arch/sparc64/kernel/process.c
+Index: b/arch/sparc64/kernel/process.c
+===================================================================
+--- a/arch/sparc64/kernel/process.c
++++ b/arch/sparc64/kernel/process.c
 @@ -831,9 +831,6 @@ asmlinkage int sparc_execve(struct pt_re
  		current_thread_info()->xfsr[0] = 0;
  		current_thread_info()->fpsaved[0] = 0;
@@ -1550,8 +1636,10 @@
  	}
  out:
  	return error;
---- linux-2.6/arch/sparc64/kernel/sys_sparc32.c
-+++ linux-2.6/arch/sparc64/kernel/sys_sparc32.c
+Index: b/arch/sparc64/kernel/sys_sparc32.c
+===================================================================
+--- a/arch/sparc64/kernel/sys_sparc32.c
++++ b/arch/sparc64/kernel/sys_sparc32.c
 @@ -681,9 +681,6 @@ asmlinkage long sparc32_execve(struct pt
  		current_thread_info()->xfsr[0] = 0;
  		current_thread_info()->fpsaved[0] = 0;
@@ -1562,8 +1650,10 @@
  	}
  out:
  	return error;
---- linux-2.6/arch/ppc/kernel/asm-offsets.c
-+++ linux-2.6/arch/ppc/kernel/asm-offsets.c
+Index: b/arch/ppc/kernel/asm-offsets.c
+===================================================================
+--- a/arch/ppc/kernel/asm-offsets.c
++++ b/arch/ppc/kernel/asm-offsets.c
 @@ -37,7 +37,6 @@ main(void)
  	DEFINE(THREAD, offsetof(struct task_struct, thread));
  	DEFINE(THREAD_INFO, offsetof(struct task_struct, stack));
@@ -1580,8 +1670,10 @@
  #endif
  #ifdef CONFIG_ALTIVEC
  	DEFINE(THREAD_VR0, offsetof(struct thread_struct, vr[0]));
---- linux-2.6/arch/ia64/kernel/mca.c
-+++ linux-2.6/arch/ia64/kernel/mca.c
+Index: b/arch/ia64/kernel/mca.c
+===================================================================
+--- a/arch/ia64/kernel/mca.c
++++ b/arch/ia64/kernel/mca.c
 @@ -1744,7 +1744,7 @@ format_mca_init_stack(void *mca_data, un
  	p->state = TASK_UNINTERRUPTIBLE;
  	cpu_set(cpu, p->cpus_allowed);
@@ -1591,8 +1683,10 @@
  	INIT_LIST_HEAD(&p->children);
  	INIT_LIST_HEAD(&p->sibling);
  	strncpy(p->comm, type, sizeof(p->comm)-1);
---- linux-2.6/arch/ia64/kernel/asm-offsets.c
-+++ linux-2.6/arch/ia64/kernel/asm-offsets.c
+Index: b/arch/ia64/kernel/asm-offsets.c
+===================================================================
+--- a/arch/ia64/kernel/asm-offsets.c
++++ b/arch/ia64/kernel/asm-offsets.c
 @@ -47,7 +47,7 @@ void foo(void)
  	DEFINE(IA64_TASK_GROUP_LEADER_OFFSET, offsetof (struct task_struct, group_leader));
  	DEFINE(IA64_TASK_PENDING_OFFSET,offsetof (struct task_struct, pending));
@@ -1602,8 +1696,10 @@
  	DEFINE(IA64_TASK_SIGHAND_OFFSET,offsetof (struct task_struct, sighand));
  	DEFINE(IA64_TASK_SIGNAL_OFFSET,offsetof (struct task_struct, signal));
  	DEFINE(IA64_TASK_TGID_OFFSET, offsetof (struct task_struct, tgid));
---- linux-2.6/arch/ia64/kernel/fsys.S
-+++ linux-2.6/arch/ia64/kernel/fsys.S
+Index: b/arch/ia64/kernel/fsys.S
+===================================================================
+--- a/arch/ia64/kernel/fsys.S
++++ b/arch/ia64/kernel/fsys.S
 @@ -85,29 +85,29 @@ ENTRY(fsys_getppid)
  	;;
  
@@ -1642,8 +1738,10 @@
  	mov r19=0			// i must not leak kernel bits...
  (p6)	br.cond.spnt.few 1b			// yes -> redo the read of tgid and the check
  	;;
---- linux-2.6/kernel/exit.c
-+++ linux-2.6/kernel/exit.c
+Index: b/kernel/exit.c
+===================================================================
+--- a/kernel/exit.c
++++ b/kernel/exit.c
 @@ -21,8 +21,8 @@
  #include <linux/file.h>
  #include <linux/binfmts.h>
@@ -2019,7 +2117,7 @@
  	    p->signal && p->signal->group_stop_count > 0)
  		/*
  		 * A group stop is in progress and this is the group leader.
-@@ -1359,13 +1276,12 @@ static int wait_task_stopped(struct task
+@@ -1359,14 +1276,12 @@ static int wait_task_stopped(struct task
  	if (unlikely(noreap)) {
  		pid_t pid = p->pid;
  		uid_t uid = p->uid;
@@ -2030,12 +2128,13 @@
  			goto bail_ref;
 -		return wait_noreap_copyout(p, pid, uid,
 -					   why, (exit_code << 8) | 0x7f,
+-					   infop, ru);
 +		return wait_noreap_copyout(p, pid, uid, CLD_STOPPED,
-+					   (exit_code << 8) | 0x7f,
- 					   infop, ru);
++					   exit_code, infop, ru);
  	}
  
-@@ -1422,9 +1338,7 @@ bail_ref:
+ 	write_lock_irq(&tasklist_lock);
+@@ -1421,9 +1336,7 @@ bail_ref:
  	if (!retval && infop)
  		retval = put_user(0, &infop->si_errno);
  	if (!retval && infop)
@@ -2046,7 +2145,7 @@
  	if (!retval && infop)
  		retval = put_user(exit_code, &infop->si_status);
  	if (!retval && infop)
-@@ -1492,22 +1406,6 @@ static int wait_task_continued(struct ta
+@@ -1491,22 +1404,6 @@ static int wait_task_continued(struct ta
  }
  
  
@@ -2069,7 +2168,7 @@
  static long do_wait(pid_t pid, int options, struct siginfo __user *infop,
  		    int __user *stat_addr, struct rusage __user *ru)
  {
-@@ -1547,26 +1445,17 @@ repeat:
+@@ -1546,26 +1443,17 @@ repeat:
  
  			switch (p->state) {
  			case TASK_TRACED:
@@ -2100,7 +2199,7 @@
  					continue;
  				retval = wait_task_stopped(p, ret == 2,
  							   (options & WNOWAIT),
-@@ -1591,6 +1480,10 @@ repeat:
+@@ -1590,6 +1478,10 @@ repeat:
  						goto check_continued;
  					if (!likely(options & WEXITED))
  						continue;
@@ -2111,7 +2210,7 @@
  					retval = wait_task_zombie(
  						p, (options & WNOWAIT),
  						infop, stat_addr, ru);
-@@ -1607,6 +1500,8 @@ check_continued:
+@@ -1606,6 +1498,8 @@ check_continued:
  				flag = 1;
  				if (!unlikely(options & WCONTINUED))
  					continue;
@@ -2120,7 +2219,7 @@
  				retval = wait_task_continued(
  					p, (options & WNOWAIT),
  					infop, stat_addr, ru);
-@@ -1616,14 +1511,7 @@ check_continued:
+@@ -1615,14 +1509,7 @@ check_continued:
  			}
  		}
  		if (!flag) {
@@ -2136,7 +2235,7 @@
  		}
  		if (options & __WNOTHREAD)
  			break;
-@@ -1650,7 +1538,7 @@ end:
+@@ -1649,7 +1536,7 @@ end:
  	remove_wait_queue(&current->signal->wait_chldexit,&wait);
  	if (infop) {
  		if (retval > 0)
@@ -2145,8 +2244,10 @@
  		else {
  			/*
  			 * For a WNOHANG return, clear out all the fields
---- linux-2.6/kernel/ptrace.c
-+++ linux-2.6/kernel/ptrace.c
+Index: b/kernel/ptrace.c
+===================================================================
+--- a/kernel/ptrace.c
++++ b/kernel/ptrace.c
 @@ -18,105 +18,19 @@
  #include <linux/ptrace.h>
  #include <linux/security.h>
@@ -2520,8 +2621,10 @@
  }
  #endif /* __ARCH_SYS_PTRACE */
  
---- linux-2.6/kernel/timer.c
-+++ linux-2.6/kernel/timer.c
+Index: b/kernel/timer.c
+===================================================================
+--- a/kernel/timer.c
++++ b/kernel/timer.c
 @@ -957,9 +957,9 @@ asmlinkage long sys_getpid(void)
  }
  
@@ -2543,8 +2646,10 @@
  	rcu_read_unlock();
  
  	return pid;
---- linux-2.6/kernel/signal.c
-+++ linux-2.6/kernel/signal.c
+Index: b/kernel/signal.c
+===================================================================
+--- a/kernel/signal.c
++++ b/kernel/signal.c
 @@ -19,7 +19,7 @@
  #include <linux/binfmts.h>
  #include <linux/security.h>
@@ -2887,8 +2992,10 @@
  EXPORT_SYMBOL(send_sig);
  EXPORT_SYMBOL(send_sig_info);
  EXPORT_SYMBOL(sigprocmask);
---- linux-2.6/kernel/tsacct.c
-+++ linux-2.6/kernel/tsacct.c
+Index: b/kernel/tsacct.c
+===================================================================
+--- a/kernel/tsacct.c
++++ b/kernel/tsacct.c
 @@ -58,7 +58,7 @@ void bacct_add_tsk(struct taskstats *sta
  	stats->ac_pid	 = tsk->pid;
  	rcu_read_lock();
@@ -2898,8 +3005,10 @@
  	rcu_read_unlock();
  	stats->ac_utime	 = cputime_to_msecs(tsk->utime) * USEC_PER_MSEC;
  	stats->ac_stime	 = cputime_to_msecs(tsk->stime) * USEC_PER_MSEC;
---- linux-2.6/kernel/sys.c
-+++ linux-2.6/kernel/sys.c
+Index: b/kernel/sys.c
+===================================================================
+--- a/kernel/sys.c
++++ b/kernel/sys.c
 @@ -1471,7 +1471,7 @@ asmlinkage long sys_setpgid(pid_t pid, p
  	if (!thread_group_leader(p))
  		goto out;
@@ -2909,8 +3018,10 @@
  		err = -EPERM;
  		if (task_session(p) != task_session(group_leader))
  			goto out;
---- linux-2.6/kernel/fork.c
-+++ linux-2.6/kernel/fork.c
+Index: b/kernel/fork.c
+===================================================================
+--- a/kernel/fork.c
++++ b/kernel/fork.c
 @@ -37,7 +37,7 @@
  #include <linux/futex.h>
  #include <linux/task_io_accounting_ops.h>
@@ -2930,7 +3041,7 @@
  	p->flags = new_flags;
  }
  
-@@ -1180,8 +1179,6 @@ static struct task_struct *copy_process(
+@@ -1182,8 +1181,6 @@ static struct task_struct *copy_process(
  	 */
  	p->group_leader = p;
  	INIT_LIST_HEAD(&p->thread_group);
@@ -2939,7 +3050,7 @@
  
  	/* Perform scheduler related setup. Assign this task to a CPU. */
  	sched_fork(p, clone_flags);
-@@ -1208,10 +1205,9 @@ static struct task_struct *copy_process(
+@@ -1210,10 +1207,9 @@ static struct task_struct *copy_process(
  
  	/* CLONE_PARENT re-uses the old parent */
  	if (clone_flags & (CLONE_PARENT|CLONE_THREAD))
@@ -2952,7 +3063,7 @@
  
  	spin_lock(&current->sighand->siglock);
  
-@@ -1253,8 +1249,7 @@ static struct task_struct *copy_process(
+@@ -1255,8 +1251,7 @@ static struct task_struct *copy_process(
  
  	if (likely(p->pid)) {
  		add_parent(p);
@@ -2962,7 +3073,7 @@
  
  		if (thread_group_leader(p)) {
  			p->signal->tty = current->signal->tty;
-@@ -1338,22 +1333,6 @@ struct task_struct * __cpuinit fork_idle
+@@ -1340,22 +1335,6 @@ struct task_struct * __cpuinit fork_idle
  	return task;
  }
  
@@ -2985,7 +3096,7 @@
  /*
   *  Ok, this is the main fork-routine.
   *
-@@ -1368,18 +1347,12 @@ long do_fork(unsigned long clone_flags,
+@@ -1370,18 +1349,12 @@ long do_fork(unsigned long clone_flags,
  	      int __user *child_tidptr)
  {
  	struct task_struct *p;
@@ -3004,7 +3115,7 @@
  
  	p = copy_process(clone_flags, stack_start, regs, stack_size, parent_tidptr, child_tidptr, pid);
  	/*
-@@ -1387,6 +1360,10 @@ long do_fork(unsigned long clone_flags,
+@@ -1389,6 +1362,10 @@ long do_fork(unsigned long clone_flags,
  	 * might get invalid after that point, if the thread exits quickly.
  	 */
  	if (!IS_ERR(p)) {
@@ -3015,7 +3126,7 @@
  		struct completion vfork;
  
  		if (clone_flags & CLONE_VFORK) {
-@@ -1394,32 +1371,31 @@ long do_fork(unsigned long clone_flags,
+@@ -1396,32 +1373,31 @@ long do_fork(unsigned long clone_flags,
  			init_completion(&vfork);
  		}
  
@@ -3060,8 +3171,10 @@
  		}
  	} else {
  		free_pid(pid);
---- linux-2.6/include/linux/ptrace.h
-+++ linux-2.6/include/linux/ptrace.h
+Index: b/include/linux/ptrace.h
+===================================================================
+--- a/include/linux/ptrace.h
++++ b/include/linux/ptrace.h
 @@ -67,7 +67,6 @@
  #define PT_TRACE_EXEC	0x00000080
  #define PT_TRACE_VFORK_DONE	0x00000100
@@ -3096,8 +3209,10 @@
  int generic_ptrace_peekdata(struct task_struct *tsk, long addr, long data);
  int generic_ptrace_pokedata(struct task_struct *tsk, long addr, long data);
  
---- linux-2.6/include/linux/sched.h
-+++ linux-2.6/include/linux/sched.h
+Index: b/include/linux/sched.h
+===================================================================
+--- a/include/linux/sched.h
++++ b/include/linux/sched.h
 @@ -939,7 +939,6 @@ struct task_struct {
  	void *stack;
  	atomic_t usage;
@@ -3137,7 +3252,7 @@
  	 */
  	struct list_head children;	/* list of my children */
  	struct list_head sibling;	/* linkage in my parent's children list */
-@@ -1146,8 +1137,6 @@ struct task_struct {
+@@ -1147,8 +1138,6 @@ struct task_struct {
  
  	struct io_context *io_context;
  
@@ -3146,7 +3261,7 @@
  /*
   * current io wait handle: wait queue entry to use for io waits
   * If this thread is processing aio, this points at the waitqueue
-@@ -1528,6 +1517,7 @@ extern int kill_pgrp(struct pid *pid, in
+@@ -1529,6 +1518,7 @@ extern int kill_pgrp(struct pid *pid, in
  extern int kill_pid(struct pid *pid, int sig, int priv);
  extern int kill_proc_info(int, struct siginfo *, pid_t);
  extern void do_notify_parent(struct task_struct *, int);
@@ -3154,8 +3269,10 @@
  extern void force_sig(int, struct task_struct *);
  extern void force_sig_specific(int, struct task_struct *);
  extern int send_sig(int, struct task_struct *, int);
---- linux-2.6/include/linux/init_task.h
-+++ linux-2.6/include/linux/init_task.h
+Index: b/include/linux/init_task.h
+===================================================================
+--- a/include/linux/init_task.h
++++ b/include/linux/init_task.h
 @@ -135,9 +135,6 @@ extern struct group_info init_groups;
  	.ioprio		= 0,						\
  	.time_slice	= HZ,						\
@@ -3166,8 +3283,10 @@
  	.parent		= &tsk,						\
  	.children	= LIST_HEAD_INIT(tsk.children),			\
  	.sibling	= LIST_HEAD_INIT(tsk.sibling),			\
---- linux-2.6/include/linux/tracehook.h
-+++ linux-2.6/include/linux/tracehook.h
+Index: b/include/linux/tracehook.h
+===================================================================
+--- /dev/null
++++ b/include/linux/tracehook.h
 @@ -0,0 +1,414 @@
 +/*
 + * Tracing hooks
@@ -3583,8 +3702,10 @@
 +
 +
 +#endif	/* <linux/tracehook.h> */
---- linux-2.6/include/asm-i386/tracehook.h
-+++ linux-2.6/include/asm-i386/tracehook.h
+Index: b/include/asm-i386/tracehook.h
+===================================================================
+--- /dev/null
++++ b/include/asm-i386/tracehook.h
 @@ -0,0 +1,52 @@
 +/*
 + * Tracing hooks, i386 CPU support
@@ -3638,8 +3759,10 @@
 +
 +
 +#endif
---- linux-2.6/include/asm-i386/thread_info.h
-+++ linux-2.6/include/asm-i386/thread_info.h
+Index: b/include/asm-i386/thread_info.h
+===================================================================
+--- a/include/asm-i386/thread_info.h
++++ b/include/asm-i386/thread_info.h
 @@ -128,7 +128,6 @@ static inline struct thread_info *curren
  #define TIF_NEED_RESCHED	2	/* rescheduling necessary */
  #define TIF_SINGLESTEP		3	/* restore singlestep on return to user mode */
@@ -3677,8 +3800,10 @@
  /* work to do on any return to u-space */
  #define _TIF_ALLWORK_MASK	(0x0000FFFF & ~_TIF_SECCOMP)
  
---- linux-2.6/include/asm-i386/signal.h
-+++ linux-2.6/include/asm-i386/signal.h
+Index: b/include/asm-i386/signal.h
+===================================================================
+--- a/include/asm-i386/signal.h
++++ b/include/asm-i386/signal.h
 @@ -221,10 +221,8 @@ struct pt_regs;
  
  #define ptrace_signal_deliver(regs, cookie)		\
@@ -3691,8 +3816,10 @@
  	} while (0)
  
  #endif /* __KERNEL__ */
---- linux-2.6/include/asm-powerpc/tracehook.h
-+++ linux-2.6/include/asm-powerpc/tracehook.h
+Index: b/include/asm-powerpc/tracehook.h
+===================================================================
+--- /dev/null
++++ b/include/asm-powerpc/tracehook.h
 @@ -0,0 +1,49 @@
 +/*
 + * Tracing hooks, PowerPC CPU support
@@ -3743,8 +3870,10 @@
 +
 +
 +#endif
---- linux-2.6/include/asm-x86_64/tracehook.h
-+++ linux-2.6/include/asm-x86_64/tracehook.h
+Index: b/include/asm-x86_64/tracehook.h
+===================================================================
+--- /dev/null
++++ b/include/asm-x86_64/tracehook.h
 @@ -0,0 +1,51 @@
 +/*
 + * Tracing hooks, x86-64 CPU support
@@ -3797,8 +3926,10 @@
 +}
 +
 +#endif
---- linux-2.6/include/asm-x86_64/thread_info.h
-+++ linux-2.6/include/asm-x86_64/thread_info.h
+Index: b/include/asm-x86_64/thread_info.h
+===================================================================
+--- a/include/asm-x86_64/thread_info.h
++++ b/include/asm-x86_64/thread_info.h
 @@ -115,7 +115,7 @@ static inline struct thread_info *stack_
  #define TIF_SECCOMP		8	/* secure computing */
  #define TIF_RESTORE_SIGMASK	9	/* restore signal mask in do_signal */
@@ -3816,8 +3947,10 @@
  #define _TIF_IA32		(1<<TIF_IA32)
  #define _TIF_FORK		(1<<TIF_FORK)
  #define _TIF_ABI_PENDING	(1<<TIF_ABI_PENDING)
---- linux-2.6/drivers/connector/cn_proc.c
-+++ linux-2.6/drivers/connector/cn_proc.c
+Index: b/drivers/connector/cn_proc.c
+===================================================================
+--- a/drivers/connector/cn_proc.c
++++ b/drivers/connector/cn_proc.c
 @@ -63,8 +63,8 @@ void proc_fork_connector(struct task_str
  	ktime_get_ts(&ts); /* get high res monotonic timestamp */
  	put_unaligned(timespec_to_ns(&ts), (__u64 *)&ev->timestamp_ns);
@@ -3829,8 +3962,10 @@
  	ev->event_data.fork.child_pid = task->pid;
  	ev->event_data.fork.child_tgid = task->tgid;
  
---- linux-2.6/mm/nommu.c
-+++ linux-2.6/mm/nommu.c
+Index: b/mm/nommu.c
+===================================================================
+--- a/mm/nommu.c
++++ b/mm/nommu.c
 @@ -20,7 +20,7 @@
  #include <linux/pagemap.h>
  #include <linux/slab.h>




More information about the fedora-extras-commits mailing list