diff --git a/main/linux-vserver/APKBUILD b/main/linux-vserver/APKBUILD
index 59f9ea0afc66b8a1e43061046a8dfad73406e649..21375df67c3e9ef3856cdb1be48b560792b60292 100644
--- a/main/linux-vserver/APKBUILD
+++ b/main/linux-vserver/APKBUILD
@@ -2,7 +2,7 @@
 
 _flavor=vserver
 pkgname=linux-${_flavor}
-pkgver=3.4.51
+pkgver=3.4.56
 pkgrel=0
 _vsver=vs2.3.3.9
 
@@ -136,17 +136,17 @@ dev() {
 }
 
 md5sums="967f72983655e2479f951195953e8480  linux-3.4.tar.xz
-c74052b5a413496d9182bcf8f9087403  patch-3.4.51.xz
-57bf6e2df90c55df27cb345232f75a59  patch-3.4.51-vs2.3.3.9.diff
+d13507089f1c81a5f00c510144ae4f2d  patch-3.4.56.xz
+28aca79d0c947ca90d80d96f24a020f5  patch-3.4.56-vs2.3.3.9.diff
 1fce2ef2e47d19c150ab0b2df3373a57  kernelconfig.x86
 b6a18f4cb2523bbd2500809e61172f8f  kernelconfig.x86_64"
 sha256sums="ff3dee6a855873d12487a6f4070ec2f7996d073019171361c955639664baa0c6  linux-3.4.tar.xz
-693b3370e84f9612357b5ecf5272930a4dfbfb7674b4f257ece42c9d122c39f5  patch-3.4.51.xz
-15866fe9338fc9069ab1646149a5fb48ea1eada0d7616bd16ae5c77566ee94bc  patch-3.4.51-vs2.3.3.9.diff
+71980cb04968fe5141be9f370d542deb767c8c2de8b68073c25035790900cd56  patch-3.4.56.xz
+9c44202e615937d338ed5be1dc2f517f3a48b9c100788a1d840aae2f98d196cd  patch-3.4.56-vs2.3.3.9.diff
 e97b45a117671c5a87a9ba4a1f946125053eac078d297f61f9c8d4594acbf830  kernelconfig.x86
 d44d1a1be3402847f540cc0cfb201deec7084b4c516e592b92e115ab3f71d4b5  kernelconfig.x86_64"
 sha512sums="1c49b336750c9c2b49d21e54126f22a800367296be0d57e6df28b1532cbeba7fc3bdf4cfe27d9810576e76c2db2e9c2493f0804451c915137cb78d7aa61f236c  linux-3.4.tar.xz
-6daa4976c680a66f9d1c0f8b8be855057cad9744353b999ea51331db7056eb6705231cdfa7075c8cbcc4439aac6ff5de9c6ca336569026029560955a5fc70b06  patch-3.4.51.xz
-16bd974160323f49fe8590d3a99102f6d0f4bc34942cae6a3b0f239f96d52e51ba64435ef1e9c3ff118abc903f2e2b42ca126e29c97df9261c2623898bb955a1  patch-3.4.51-vs2.3.3.9.diff
+608e165b38e6fff0341369e3793edf8675cb5d0d4b123338f446424b4fe4c52050fce2a281a3ebb7d04f45e9fc5f5c9ec9d01c407261194385f60fc35a705726  patch-3.4.56.xz
+02a9cd3c7f7dd131e26a8d4512530b054d2b5c61e07995fd1fca5b1b76cbd96c4e12252866f52077626179e40040be5e8ede0af910a1915d2f64679e05e8c7e0  patch-3.4.56-vs2.3.3.9.diff
 f12f999c84f724a4ac20a736c7f56671e23b2a9ddce4b0576dc17d0b3e8f319f5c4bc40b58992eba75ace44148018d85de24b2516d0a83240cd0ca3803606eae  kernelconfig.x86
 4cf43a7fc609e9822919e5706f38c03ef72deae2eae6b7d4c4ca7f9f29bccd1f01c0d65660a0c5234df6c2123a1d0c797dbdcb57ca5559e39644704426657f3e  kernelconfig.x86_64"
diff --git a/main/linux-vserver/patch-3.4.51-vs2.3.3.9.diff b/main/linux-vserver/patch-3.4.56-vs2.3.3.9.diff
similarity index 82%
rename from main/linux-vserver/patch-3.4.51-vs2.3.3.9.diff
rename to main/linux-vserver/patch-3.4.56-vs2.3.3.9.diff
index 3d00861f87bc74f5083f1beac4c7803a9ff78a7e..dead3708763ecec12321f4cee6d6963d7d23a139 100644
--- a/main/linux-vserver/patch-3.4.51-vs2.3.3.9.diff
+++ b/main/linux-vserver/patch-3.4.56-vs2.3.3.9.diff
@@ -1,6 +1,8 @@
-diff -NurpP --minimal linux-3.4.48/Documentation/vserver/debug.txt linux-3.4.48-vs2.3.3.9/Documentation/vserver/debug.txt
---- linux-3.4.48/Documentation/vserver/debug.txt	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/Documentation/vserver/debug.txt	2012-05-21 16:15:04.000000000 +0000
+diff --git a/Documentation/vserver/debug.txt b/Documentation/vserver/debug.txt
+new file mode 100644
+index 0000000..4464a0f
+--- /dev/null
++++ b/Documentation/vserver/debug.txt
 @@ -0,0 +1,154 @@
 +
 +debug_cvirt:
@@ -156,22 +158,23 @@ diff -NurpP --minimal linux-3.4.48/Documentation/vserver/debug.txt linux-3.4.48-
 + 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-3.4.48/Makefile linux-3.4.48-vs2.3.3.9/Makefile
---- linux-3.4.48/Makefile	2013-06-13 08:59:13.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/Makefile	2013-06-13 13:08:07.000000000 +0000
+diff --git a/Makefile b/Makefile
+index 2fe1f6d..a34c518 100644
+--- a/Makefile
++++ b/Makefile
 @@ -1,7 +1,7 @@
  VERSION = 3
  PATCHLEVEL = 4
--SUBLEVEL = 51
+ SUBLEVEL = 56
 -EXTRAVERSION =
-+SUBLEVEL = 51
 +EXTRAVERSION = -vs2.3.3.9
  NAME = Saber-toothed Squirrel
  
  # *DOCUMENTATION*
-diff -NurpP --minimal linux-3.4.48/arch/alpha/Kconfig linux-3.4.48-vs2.3.3.9/arch/alpha/Kconfig
---- linux-3.4.48/arch/alpha/Kconfig	2012-05-21 16:06:12.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/arch/alpha/Kconfig	2012-05-21 16:15:04.000000000 +0000
+diff --git a/arch/alpha/Kconfig b/arch/alpha/Kconfig
+index 22e58a9..743b861 100644
+--- a/arch/alpha/Kconfig
++++ b/arch/alpha/Kconfig
 @@ -662,6 +662,8 @@ config DUMMY_CONSOLE
  	depends on VGA_HOSE
  	default y
@@ -181,9 +184,10 @@ diff -NurpP --minimal linux-3.4.48/arch/alpha/Kconfig linux-3.4.48-vs2.3.3.9/arc
  source "security/Kconfig"
  
  source "crypto/Kconfig"
-diff -NurpP --minimal linux-3.4.48/arch/alpha/kernel/entry.S linux-3.4.48-vs2.3.3.9/arch/alpha/kernel/entry.S
---- linux-3.4.48/arch/alpha/kernel/entry.S	2010-10-21 11:06:45.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/arch/alpha/kernel/entry.S	2012-05-21 16:15:04.000000000 +0000
+diff --git a/arch/alpha/kernel/entry.S b/arch/alpha/kernel/entry.S
+index 6d159ce..eecae79 100644
+--- a/arch/alpha/kernel/entry.S
++++ b/arch/alpha/kernel/entry.S
 @@ -860,24 +860,15 @@ sys_getxgid:
  	.globl	sys_getxpid
  	.ent	sys_getxpid
@@ -216,9 +220,10 @@ diff -NurpP --minimal linux-3.4.48/arch/alpha/kernel/entry.S linux-3.4.48-vs2.3.
  	ret
  .end sys_getxpid
  
-diff -NurpP --minimal linux-3.4.48/arch/alpha/kernel/ptrace.c linux-3.4.48-vs2.3.3.9/arch/alpha/kernel/ptrace.c
---- linux-3.4.48/arch/alpha/kernel/ptrace.c	2012-05-21 16:06:12.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/arch/alpha/kernel/ptrace.c	2012-05-21 16:15:04.000000000 +0000
+diff --git a/arch/alpha/kernel/ptrace.c b/arch/alpha/kernel/ptrace.c
+index 54616f4..539720c 100644
+--- a/arch/alpha/kernel/ptrace.c
++++ b/arch/alpha/kernel/ptrace.c
 @@ -13,6 +13,7 @@
  #include <linux/user.h>
  #include <linux/security.h>
@@ -227,9 +232,10 @@ diff -NurpP --minimal linux-3.4.48/arch/alpha/kernel/ptrace.c linux-3.4.48-vs2.3
  
  #include <asm/uaccess.h>
  #include <asm/pgtable.h>
-diff -NurpP --minimal linux-3.4.48/arch/alpha/kernel/systbls.S linux-3.4.48-vs2.3.3.9/arch/alpha/kernel/systbls.S
---- linux-3.4.48/arch/alpha/kernel/systbls.S	2012-01-09 15:13:54.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/arch/alpha/kernel/systbls.S	2012-05-21 16:15:04.000000000 +0000
+diff --git a/arch/alpha/kernel/systbls.S b/arch/alpha/kernel/systbls.S
+index e534e1c..df045e4 100644
+--- a/arch/alpha/kernel/systbls.S
++++ b/arch/alpha/kernel/systbls.S
 @@ -446,7 +446,7 @@ sys_call_table:
  	.quad sys_stat64			/* 425 */
  	.quad sys_lstat64
@@ -239,10 +245,11 @@ diff -NurpP --minimal linux-3.4.48/arch/alpha/kernel/systbls.S linux-3.4.48-vs2.
  	.quad sys_ni_syscall			/* sys_mbind */
  	.quad sys_ni_syscall			/* sys_get_mempolicy */
  	.quad sys_ni_syscall			/* sys_set_mempolicy */
-diff -NurpP --minimal linux-3.4.48/arch/alpha/kernel/traps.c linux-3.4.48-vs2.3.3.9/arch/alpha/kernel/traps.c
---- linux-3.4.48/arch/alpha/kernel/traps.c	2012-05-21 16:06:12.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/arch/alpha/kernel/traps.c	2012-05-21 16:15:04.000000000 +0000
-@@ -184,7 +184,8 @@ die_if_kernel(char * str, struct pt_regs
+diff --git a/arch/alpha/kernel/traps.c b/arch/alpha/kernel/traps.c
+index 80d987c..83c8bbb 100644
+--- a/arch/alpha/kernel/traps.c
++++ b/arch/alpha/kernel/traps.c
+@@ -184,7 +184,8 @@ die_if_kernel(char * str, struct pt_regs *regs, long err, unsigned long *r9_15)
  #ifdef CONFIG_SMP
  	printk("CPU %d ", hard_smp_processor_id());
  #endif
@@ -252,9 +259,10 @@ diff -NurpP --minimal linux-3.4.48/arch/alpha/kernel/traps.c linux-3.4.48-vs2.3.
  	dik_show_regs(regs, r9_15);
  	add_taint(TAINT_DIE);
  	dik_show_trace((unsigned long *)(regs+1));
-diff -NurpP --minimal linux-3.4.48/arch/arm/Kconfig linux-3.4.48-vs2.3.3.9/arch/arm/Kconfig
---- linux-3.4.48/arch/arm/Kconfig	2013-06-13 08:59:13.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/arch/arm/Kconfig	2012-12-11 11:42:38.000000000 +0000
+diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
+index 7fe19a3..58612a8 100644
+--- a/arch/arm/Kconfig
++++ b/arch/arm/Kconfig
 @@ -2311,6 +2311,8 @@ source "fs/Kconfig"
  
  source "arch/arm/Kconfig.debug"
@@ -264,9 +272,10 @@ diff -NurpP --minimal linux-3.4.48/arch/arm/Kconfig linux-3.4.48-vs2.3.3.9/arch/
  source "security/Kconfig"
  
  source "crypto/Kconfig"
-diff -NurpP --minimal linux-3.4.48/arch/arm/kernel/calls.S linux-3.4.48-vs2.3.3.9/arch/arm/kernel/calls.S
---- linux-3.4.48/arch/arm/kernel/calls.S	2012-01-09 15:13:54.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/arch/arm/kernel/calls.S	2012-05-21 16:15:04.000000000 +0000
+diff --git a/arch/arm/kernel/calls.S b/arch/arm/kernel/calls.S
+index 463ff4a..8913128 100644
+--- a/arch/arm/kernel/calls.S
++++ b/arch/arm/kernel/calls.S
 @@ -322,7 +322,7 @@
  /* 310 */	CALL(sys_request_key)
  		CALL(sys_keyctl)
@@ -276,9 +285,10 @@ diff -NurpP --minimal linux-3.4.48/arch/arm/kernel/calls.S linux-3.4.48-vs2.3.3.
  		CALL(sys_ioprio_set)
  /* 315 */	CALL(sys_ioprio_get)
  		CALL(sys_inotify_init)
-diff -NurpP --minimal linux-3.4.48/arch/arm/kernel/process.c linux-3.4.48-vs2.3.3.9/arch/arm/kernel/process.c
---- linux-3.4.48/arch/arm/kernel/process.c	2013-06-13 08:59:13.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/arch/arm/kernel/process.c	2012-09-01 08:50:48.000000000 +0000
+diff --git a/arch/arm/kernel/process.c b/arch/arm/kernel/process.c
+index 48f3624..a2ca40e 100644
+--- a/arch/arm/kernel/process.c
++++ b/arch/arm/kernel/process.c
 @@ -357,7 +357,8 @@ void __show_regs(struct pt_regs *regs)
  void show_regs(struct pt_regs * regs)
  {
@@ -289,10 +299,11 @@ diff -NurpP --minimal linux-3.4.48/arch/arm/kernel/process.c linux-3.4.48-vs2.3.
  	__show_regs(regs);
  	dump_stack();
  }
-diff -NurpP --minimal linux-3.4.48/arch/arm/kernel/traps.c linux-3.4.48-vs2.3.3.9/arch/arm/kernel/traps.c
---- linux-3.4.48/arch/arm/kernel/traps.c	2013-06-13 08:59:13.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/arch/arm/kernel/traps.c	2012-10-22 13:09:53.000000000 +0000
-@@ -249,8 +249,8 @@ static int __die(const char *str, int er
+diff --git a/arch/arm/kernel/traps.c b/arch/arm/kernel/traps.c
+index a53a5a3..37938db 100644
+--- a/arch/arm/kernel/traps.c
++++ b/arch/arm/kernel/traps.c
+@@ -249,8 +249,8 @@ static int __die(const char *str, int err, struct thread_info *thread, struct pt
  
  	print_modules();
  	__show_regs(regs);
@@ -303,9 +314,10 @@ diff -NurpP --minimal linux-3.4.48/arch/arm/kernel/traps.c linux-3.4.48-vs2.3.3.
  
  	if (!user_mode(regs) || in_interrupt()) {
  		dump_mem(KERN_EMERG, "Stack: ", regs->ARM_sp,
-diff -NurpP --minimal linux-3.4.48/arch/cris/Kconfig linux-3.4.48-vs2.3.3.9/arch/cris/Kconfig
---- linux-3.4.48/arch/cris/Kconfig	2012-03-19 18:46:39.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/arch/cris/Kconfig	2012-05-21 16:15:04.000000000 +0000
+diff --git a/arch/cris/Kconfig b/arch/cris/Kconfig
+index b3abfb0..397b82e 100644
+--- a/arch/cris/Kconfig
++++ b/arch/cris/Kconfig
 @@ -675,6 +675,8 @@ source "drivers/staging/Kconfig"
  
  source "arch/cris/Kconfig.debug"
@@ -315,9 +327,10 @@ diff -NurpP --minimal linux-3.4.48/arch/cris/Kconfig linux-3.4.48-vs2.3.3.9/arch
  source "security/Kconfig"
  
  source "crypto/Kconfig"
-diff -NurpP --minimal linux-3.4.48/arch/frv/kernel/kernel_thread.S linux-3.4.48-vs2.3.3.9/arch/frv/kernel/kernel_thread.S
---- linux-3.4.48/arch/frv/kernel/kernel_thread.S	2008-12-24 23:26:37.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/arch/frv/kernel/kernel_thread.S	2012-05-21 16:15:04.000000000 +0000
+diff --git a/arch/frv/kernel/kernel_thread.S b/arch/frv/kernel/kernel_thread.S
+index 4531c83..fab3b42 100644
+--- a/arch/frv/kernel/kernel_thread.S
++++ b/arch/frv/kernel/kernel_thread.S
 @@ -37,7 +37,7 @@ kernel_thread:
  
  	# start by forking the current process, but with shared VM
@@ -327,9 +340,10 @@ diff -NurpP --minimal linux-3.4.48/arch/frv/kernel/kernel_thread.S linux-3.4.48-
  	sethi.p		#0xe4e4,gr9		; second syscall arg	[newsp]
  	setlo		#0xe4e4,gr9
  	setlos.p	#0,gr10			; third syscall arg	[parent_tidptr]
-diff -NurpP --minimal linux-3.4.48/arch/h8300/Kconfig linux-3.4.48-vs2.3.3.9/arch/h8300/Kconfig
---- linux-3.4.48/arch/h8300/Kconfig	2012-03-19 18:46:39.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/arch/h8300/Kconfig	2012-05-21 16:15:04.000000000 +0000
+diff --git a/arch/h8300/Kconfig b/arch/h8300/Kconfig
+index 56e890d..694dfb0 100644
+--- a/arch/h8300/Kconfig
++++ b/arch/h8300/Kconfig
 @@ -214,6 +214,8 @@ source "fs/Kconfig"
  
  source "arch/h8300/Kconfig.debug"
@@ -339,9 +353,10 @@ diff -NurpP --minimal linux-3.4.48/arch/h8300/Kconfig linux-3.4.48-vs2.3.3.9/arc
  source "security/Kconfig"
  
  source "crypto/Kconfig"
-diff -NurpP --minimal linux-3.4.48/arch/ia64/Kconfig linux-3.4.48-vs2.3.3.9/arch/ia64/Kconfig
---- linux-3.4.48/arch/ia64/Kconfig	2012-03-19 18:46:39.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/arch/ia64/Kconfig	2012-05-21 16:15:04.000000000 +0000
+diff --git a/arch/ia64/Kconfig b/arch/ia64/Kconfig
+index bd72669..bd9cfe2 100644
+--- a/arch/ia64/Kconfig
++++ b/arch/ia64/Kconfig
 @@ -654,6 +654,8 @@ source "fs/Kconfig"
  
  source "arch/ia64/Kconfig.debug"
@@ -351,9 +366,10 @@ diff -NurpP --minimal linux-3.4.48/arch/ia64/Kconfig linux-3.4.48-vs2.3.3.9/arch
  source "security/Kconfig"
  
  source "crypto/Kconfig"
-diff -NurpP --minimal linux-3.4.48/arch/ia64/kernel/entry.S linux-3.4.48-vs2.3.3.9/arch/ia64/kernel/entry.S
---- linux-3.4.48/arch/ia64/kernel/entry.S	2012-03-19 18:46:40.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/arch/ia64/kernel/entry.S	2012-05-21 16:15:04.000000000 +0000
+diff --git a/arch/ia64/kernel/entry.S b/arch/ia64/kernel/entry.S
+index 1ccbe12..8d2c517 100644
+--- a/arch/ia64/kernel/entry.S
++++ b/arch/ia64/kernel/entry.S
 @@ -1714,7 +1714,7 @@ sys_call_table:
  	data8 sys_mq_notify
  	data8 sys_mq_getsetattr
@@ -363,9 +379,10 @@ diff -NurpP --minimal linux-3.4.48/arch/ia64/kernel/entry.S linux-3.4.48-vs2.3.3
  	data8 sys_waitid			// 1270
  	data8 sys_add_key
  	data8 sys_request_key
-diff -NurpP --minimal linux-3.4.48/arch/ia64/kernel/process.c linux-3.4.48-vs2.3.3.9/arch/ia64/kernel/process.c
---- linux-3.4.48/arch/ia64/kernel/process.c	2013-06-13 08:59:14.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/arch/ia64/kernel/process.c	2012-10-22 13:09:53.000000000 +0000
+diff --git a/arch/ia64/kernel/process.c b/arch/ia64/kernel/process.c
+index 86d74ab..3c74e03 100644
+--- a/arch/ia64/kernel/process.c
++++ b/arch/ia64/kernel/process.c
 @@ -111,8 +111,8 @@ show_regs (struct pt_regs *regs)
  	unsigned long ip = regs->cr_iip + ia64_psr(regs)->ri;
  
@@ -377,9 +394,10 @@ diff -NurpP --minimal linux-3.4.48/arch/ia64/kernel/process.c linux-3.4.48-vs2.3
  	printk("psr : %016lx ifs : %016lx ip  : [<%016lx>]    %s (%s)\n",
  	       regs->cr_ipsr, regs->cr_ifs, ip, print_tainted(),
  	       init_utsname()->release);
-diff -NurpP --minimal linux-3.4.48/arch/ia64/kernel/ptrace.c linux-3.4.48-vs2.3.3.9/arch/ia64/kernel/ptrace.c
---- linux-3.4.48/arch/ia64/kernel/ptrace.c	2012-05-21 16:06:26.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/arch/ia64/kernel/ptrace.c	2012-05-21 16:15:04.000000000 +0000
+diff --git a/arch/ia64/kernel/ptrace.c b/arch/ia64/kernel/ptrace.c
+index 4265ff6..e58cc71 100644
+--- a/arch/ia64/kernel/ptrace.c
++++ b/arch/ia64/kernel/ptrace.c
 @@ -21,6 +21,7 @@
  #include <linux/regset.h>
  #include <linux/elf.h>
@@ -388,10 +406,11 @@ diff -NurpP --minimal linux-3.4.48/arch/ia64/kernel/ptrace.c linux-3.4.48-vs2.3.
  
  #include <asm/pgtable.h>
  #include <asm/processor.h>
-diff -NurpP --minimal linux-3.4.48/arch/ia64/kernel/traps.c linux-3.4.48-vs2.3.3.9/arch/ia64/kernel/traps.c
---- linux-3.4.48/arch/ia64/kernel/traps.c	2012-05-21 16:06:26.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/arch/ia64/kernel/traps.c	2012-05-21 16:15:04.000000000 +0000
-@@ -60,8 +60,9 @@ die (const char *str, struct pt_regs *re
+diff --git a/arch/ia64/kernel/traps.c b/arch/ia64/kernel/traps.c
+index bd42b76..1039099 100644
+--- a/arch/ia64/kernel/traps.c
++++ b/arch/ia64/kernel/traps.c
+@@ -60,8 +60,9 @@ die (const char *str, struct pt_regs *regs, long err)
  	put_cpu();
  
  	if (++die.lock_owner_depth < 3) {
@@ -403,7 +422,7 @@ diff -NurpP --minimal linux-3.4.48/arch/ia64/kernel/traps.c linux-3.4.48-vs2.3.3
  		if (notify_die(DIE_OOPS, str, regs, err, 255, SIGSEGV)
  	            != NOTIFY_STOP)
  			show_regs(regs);
-@@ -324,8 +325,9 @@ handle_fpu_swa (int fp_fault, struct pt_
+@@ -324,8 +325,9 @@ handle_fpu_swa (int fp_fault, struct pt_regs *regs, unsigned long isr)
  			if ((last.count & 15) < 5 && (ia64_fetchadd(1, &last.count, acq) & 15) < 5) {
  				last.time = current_jiffies + 5 * HZ;
  				printk(KERN_WARNING
@@ -415,10 +434,11 @@ diff -NurpP --minimal linux-3.4.48/arch/ia64/kernel/traps.c linux-3.4.48-vs2.3.3
  			}
  		}
  	}
-diff -NurpP --minimal linux-3.4.48/arch/m32r/kernel/traps.c linux-3.4.48-vs2.3.3.9/arch/m32r/kernel/traps.c
---- linux-3.4.48/arch/m32r/kernel/traps.c	2012-05-21 16:06:26.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/arch/m32r/kernel/traps.c	2012-05-21 16:15:04.000000000 +0000
-@@ -195,8 +195,9 @@ static void show_registers(struct pt_reg
+diff --git a/arch/m32r/kernel/traps.c b/arch/m32r/kernel/traps.c
+index 3bcb207..f962486 100644
+--- a/arch/m32r/kernel/traps.c
++++ b/arch/m32r/kernel/traps.c
+@@ -195,8 +195,9 @@ static void show_registers(struct pt_regs *regs)
  	} else {
  		printk("SPI: %08lx\n", sp);
  	}
@@ -430,9 +450,10 @@ diff -NurpP --minimal linux-3.4.48/arch/m32r/kernel/traps.c linux-3.4.48-vs2.3.3
  
  	/*
  	 * When in-kernel, we also print out the stack and code at the
-diff -NurpP --minimal linux-3.4.48/arch/m68k/Kconfig linux-3.4.48-vs2.3.3.9/arch/m68k/Kconfig
---- linux-3.4.48/arch/m68k/Kconfig	2012-05-21 16:06:26.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/arch/m68k/Kconfig	2012-05-21 16:15:04.000000000 +0000
+diff --git a/arch/m68k/Kconfig b/arch/m68k/Kconfig
+index d318c60..44485f6 100644
+--- a/arch/m68k/Kconfig
++++ b/arch/m68k/Kconfig
 @@ -146,6 +146,8 @@ source "fs/Kconfig"
  
  source "arch/m68k/Kconfig.debug"
@@ -442,9 +463,10 @@ diff -NurpP --minimal linux-3.4.48/arch/m68k/Kconfig linux-3.4.48-vs2.3.3.9/arch
  source "security/Kconfig"
  
  source "crypto/Kconfig"
-diff -NurpP --minimal linux-3.4.48/arch/mips/Kconfig linux-3.4.48-vs2.3.3.9/arch/mips/Kconfig
---- linux-3.4.48/arch/mips/Kconfig	2012-05-21 16:06:27.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/arch/mips/Kconfig	2012-05-21 16:15:04.000000000 +0000
+diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig
+index ce30e2f..a8b4dab 100644
+--- a/arch/mips/Kconfig
++++ b/arch/mips/Kconfig
 @@ -2516,6 +2516,8 @@ source "fs/Kconfig"
  
  source "arch/mips/Kconfig.debug"
@@ -454,9 +476,10 @@ diff -NurpP --minimal linux-3.4.48/arch/mips/Kconfig linux-3.4.48-vs2.3.3.9/arch
  source "security/Kconfig"
  
  source "crypto/Kconfig"
-diff -NurpP --minimal linux-3.4.48/arch/mips/kernel/ptrace.c linux-3.4.48-vs2.3.3.9/arch/mips/kernel/ptrace.c
---- linux-3.4.48/arch/mips/kernel/ptrace.c	2012-05-21 16:06:27.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/arch/mips/kernel/ptrace.c	2012-05-21 16:15:04.000000000 +0000
+diff --git a/arch/mips/kernel/ptrace.c b/arch/mips/kernel/ptrace.c
+index 7c24c29..794a5b0 100644
+--- a/arch/mips/kernel/ptrace.c
++++ b/arch/mips/kernel/ptrace.c
 @@ -25,6 +25,7 @@
  #include <linux/security.h>
  #include <linux/audit.h>
@@ -465,7 +488,7 @@ diff -NurpP --minimal linux-3.4.48/arch/mips/kernel/ptrace.c linux-3.4.48-vs2.3.
  
  #include <asm/byteorder.h>
  #include <asm/cpu.h>
-@@ -262,6 +263,9 @@ long arch_ptrace(struct task_struct *chi
+@@ -262,6 +263,9 @@ long arch_ptrace(struct task_struct *child, long request,
  	void __user *datavp = (void __user *) data;
  	unsigned long __user *datalp = (void __user *) data;
  
@@ -475,9 +498,10 @@ diff -NurpP --minimal linux-3.4.48/arch/mips/kernel/ptrace.c linux-3.4.48-vs2.3.
  	switch (request) {
  	/* when I and D space are separate, these will need to be fixed. */
  	case PTRACE_PEEKTEXT: /* read word at location addr. */
-diff -NurpP --minimal linux-3.4.48/arch/mips/kernel/scall32-o32.S linux-3.4.48-vs2.3.3.9/arch/mips/kernel/scall32-o32.S
---- linux-3.4.48/arch/mips/kernel/scall32-o32.S	2012-01-09 15:14:05.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/arch/mips/kernel/scall32-o32.S	2012-05-21 16:15:04.000000000 +0000
+diff --git a/arch/mips/kernel/scall32-o32.S b/arch/mips/kernel/scall32-o32.S
+index a632bc1..b05626a 100644
+--- a/arch/mips/kernel/scall32-o32.S
++++ b/arch/mips/kernel/scall32-o32.S
 @@ -523,7 +523,7 @@ einval:	li	v0, -ENOSYS
  	sys	sys_mq_timedreceive	5
  	sys	sys_mq_notify		2	/* 4275 */
@@ -487,9 +511,10 @@ diff -NurpP --minimal linux-3.4.48/arch/mips/kernel/scall32-o32.S linux-3.4.48-v
  	sys	sys_waitid		5
  	sys	sys_ni_syscall		0	/* available, was setaltroot */
  	sys	sys_add_key		5	/* 4280 */
-diff -NurpP --minimal linux-3.4.48/arch/mips/kernel/scall64-64.S linux-3.4.48-vs2.3.3.9/arch/mips/kernel/scall64-64.S
---- linux-3.4.48/arch/mips/kernel/scall64-64.S	2012-01-09 15:14:05.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/arch/mips/kernel/scall64-64.S	2012-05-21 16:15:04.000000000 +0000
+diff --git a/arch/mips/kernel/scall64-64.S b/arch/mips/kernel/scall64-64.S
+index 3b5a5e9..150ff87f 100644
+--- a/arch/mips/kernel/scall64-64.S
++++ b/arch/mips/kernel/scall64-64.S
 @@ -362,7 +362,7 @@ sys_call_table:
  	PTR	sys_mq_timedreceive
  	PTR	sys_mq_notify
@@ -499,9 +524,10 @@ diff -NurpP --minimal linux-3.4.48/arch/mips/kernel/scall64-64.S linux-3.4.48-vs
  	PTR	sys_waitid
  	PTR	sys_ni_syscall			/* available, was setaltroot */
  	PTR	sys_add_key
-diff -NurpP --minimal linux-3.4.48/arch/mips/kernel/scall64-n32.S linux-3.4.48-vs2.3.3.9/arch/mips/kernel/scall64-n32.S
---- linux-3.4.48/arch/mips/kernel/scall64-n32.S	2012-01-09 15:14:05.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/arch/mips/kernel/scall64-n32.S	2012-05-21 16:15:04.000000000 +0000
+diff --git a/arch/mips/kernel/scall64-n32.S b/arch/mips/kernel/scall64-n32.S
+index 6be6f70..e241470 100644
+--- a/arch/mips/kernel/scall64-n32.S
++++ b/arch/mips/kernel/scall64-n32.S
 @@ -361,7 +361,7 @@ EXPORT(sysn32_call_table)
  	PTR	compat_sys_mq_timedreceive
  	PTR	compat_sys_mq_notify
@@ -511,9 +537,10 @@ diff -NurpP --minimal linux-3.4.48/arch/mips/kernel/scall64-n32.S linux-3.4.48-v
  	PTR	compat_sys_waitid
  	PTR	sys_ni_syscall			/* available, was setaltroot */
  	PTR	sys_add_key
-diff -NurpP --minimal linux-3.4.48/arch/mips/kernel/scall64-o32.S linux-3.4.48-vs2.3.3.9/arch/mips/kernel/scall64-o32.S
---- linux-3.4.48/arch/mips/kernel/scall64-o32.S	2012-01-09 15:14:05.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/arch/mips/kernel/scall64-o32.S	2012-05-21 16:15:04.000000000 +0000
+diff --git a/arch/mips/kernel/scall64-o32.S b/arch/mips/kernel/scall64-o32.S
+index 5422855..316be5e 100644
+--- a/arch/mips/kernel/scall64-o32.S
++++ b/arch/mips/kernel/scall64-o32.S
 @@ -480,7 +480,7 @@ sys_call_table:
  	PTR	compat_sys_mq_timedreceive
  	PTR	compat_sys_mq_notify		/* 4275 */
@@ -523,10 +550,11 @@ diff -NurpP --minimal linux-3.4.48/arch/mips/kernel/scall64-o32.S linux-3.4.48-v
  	PTR	sys_32_waitid
  	PTR	sys_ni_syscall			/* available, was setaltroot */
  	PTR	sys_add_key			/* 4280 */
-diff -NurpP --minimal linux-3.4.48/arch/mips/kernel/traps.c linux-3.4.48-vs2.3.3.9/arch/mips/kernel/traps.c
---- linux-3.4.48/arch/mips/kernel/traps.c	2012-05-21 16:06:27.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/arch/mips/kernel/traps.c	2012-05-21 16:15:04.000000000 +0000
-@@ -343,9 +343,10 @@ void show_registers(struct pt_regs *regs
+diff --git a/arch/mips/kernel/traps.c b/arch/mips/kernel/traps.c
+index cfdaaa4..6de6d34 100644
+--- a/arch/mips/kernel/traps.c
++++ b/arch/mips/kernel/traps.c
+@@ -343,9 +343,10 @@ void show_registers(struct pt_regs *regs)
  
  	__show_regs(regs);
  	print_modules();
@@ -540,9 +568,10 @@ diff -NurpP --minimal linux-3.4.48/arch/mips/kernel/traps.c linux-3.4.48-vs2.3.3
  	if (cpu_has_userlocal) {
  		unsigned long tls;
  
-diff -NurpP --minimal linux-3.4.48/arch/parisc/Kconfig linux-3.4.48-vs2.3.3.9/arch/parisc/Kconfig
---- linux-3.4.48/arch/parisc/Kconfig	2012-03-19 18:46:44.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/arch/parisc/Kconfig	2012-05-21 16:15:04.000000000 +0000
+diff --git a/arch/parisc/Kconfig b/arch/parisc/Kconfig
+index 242a1b7..8c2c34e 100644
+--- a/arch/parisc/Kconfig
++++ b/arch/parisc/Kconfig
 @@ -279,6 +279,8 @@ source "fs/Kconfig"
  
  source "arch/parisc/Kconfig.debug"
@@ -552,9 +581,10 @@ diff -NurpP --minimal linux-3.4.48/arch/parisc/Kconfig linux-3.4.48-vs2.3.3.9/ar
  source "security/Kconfig"
  
  source "crypto/Kconfig"
-diff -NurpP --minimal linux-3.4.48/arch/parisc/kernel/syscall_table.S linux-3.4.48-vs2.3.3.9/arch/parisc/kernel/syscall_table.S
---- linux-3.4.48/arch/parisc/kernel/syscall_table.S	2011-10-24 16:45:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/arch/parisc/kernel/syscall_table.S	2012-05-21 16:15:04.000000000 +0000
+diff --git a/arch/parisc/kernel/syscall_table.S b/arch/parisc/kernel/syscall_table.S
+index 3735abd..3f4faa3 100644
+--- a/arch/parisc/kernel/syscall_table.S
++++ b/arch/parisc/kernel/syscall_table.S
 @@ -361,7 +361,7 @@
  	ENTRY_COMP(mbind)		/* 260 */
  	ENTRY_COMP(get_mempolicy)
@@ -564,10 +594,11 @@ diff -NurpP --minimal linux-3.4.48/arch/parisc/kernel/syscall_table.S linux-3.4.
  	ENTRY_SAME(add_key)
  	ENTRY_SAME(request_key)		/* 265 */
  	ENTRY_SAME(keyctl)
-diff -NurpP --minimal linux-3.4.48/arch/parisc/kernel/traps.c linux-3.4.48-vs2.3.3.9/arch/parisc/kernel/traps.c
---- linux-3.4.48/arch/parisc/kernel/traps.c	2012-05-21 16:06:28.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/arch/parisc/kernel/traps.c	2012-05-21 16:15:04.000000000 +0000
-@@ -235,8 +235,9 @@ void die_if_kernel(char *str, struct pt_
+diff --git a/arch/parisc/kernel/traps.c b/arch/parisc/kernel/traps.c
+index 45ba99f..f380ca3 100644
+--- a/arch/parisc/kernel/traps.c
++++ b/arch/parisc/kernel/traps.c
+@@ -235,8 +235,9 @@ void die_if_kernel(char *str, struct pt_regs *regs, long err)
  		if (err == 0)
  			return; /* STFU */
  
@@ -579,7 +610,7 @@ diff -NurpP --minimal linux-3.4.48/arch/parisc/kernel/traps.c linux-3.4.48-vs2.3
  #ifdef PRINT_USER_FAULTS
  		/* XXX for debugging only */
  		show_regs(regs);
-@@ -269,8 +270,8 @@ void die_if_kernel(char *str, struct pt_
+@@ -269,8 +270,8 @@ void die_if_kernel(char *str, struct pt_regs *regs, long err)
  		pdc_console_restart();
  	
  	if (err)
@@ -590,9 +621,10 @@ diff -NurpP --minimal linux-3.4.48/arch/parisc/kernel/traps.c linux-3.4.48-vs2.3
  
  	/* Wot's wrong wif bein' racy? */
  	if (current->thread.flags & PARISC_KERNEL_DEATH) {
-diff -NurpP --minimal linux-3.4.48/arch/parisc/mm/fault.c linux-3.4.48-vs2.3.3.9/arch/parisc/mm/fault.c
---- linux-3.4.48/arch/parisc/mm/fault.c	2010-08-02 14:52:06.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/arch/parisc/mm/fault.c	2012-05-21 16:15:04.000000000 +0000
+diff --git a/arch/parisc/mm/fault.c b/arch/parisc/mm/fault.c
+index 18162ce..41370f2 100644
+--- a/arch/parisc/mm/fault.c
++++ b/arch/parisc/mm/fault.c
 @@ -237,8 +237,9 @@ bad_area:
  
  #ifdef PRINT_USER_FAULTS
@@ -605,9 +637,10 @@ diff -NurpP --minimal linux-3.4.48/arch/parisc/mm/fault.c linux-3.4.48-vs2.3.3.9
  		if (vma) {
  			printk(KERN_DEBUG "vm_start = 0x%08lx, vm_end = 0x%08lx\n",
  					vma->vm_start, vma->vm_end);
-diff -NurpP --minimal linux-3.4.48/arch/powerpc/Kconfig linux-3.4.48-vs2.3.3.9/arch/powerpc/Kconfig
---- linux-3.4.48/arch/powerpc/Kconfig	2012-05-21 16:06:28.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/arch/powerpc/Kconfig	2012-05-21 16:15:04.000000000 +0000
+diff --git a/arch/powerpc/Kconfig b/arch/powerpc/Kconfig
+index feab3ba..48c1e14 100644
+--- a/arch/powerpc/Kconfig
++++ b/arch/powerpc/Kconfig
 @@ -1002,6 +1002,8 @@ source "lib/Kconfig"
  
  source "arch/powerpc/Kconfig.debug"
@@ -617,9 +650,10 @@ diff -NurpP --minimal linux-3.4.48/arch/powerpc/Kconfig linux-3.4.48-vs2.3.3.9/a
  source "security/Kconfig"
  
  config KEYS_COMPAT
-diff -NurpP --minimal linux-3.4.48/arch/powerpc/include/asm/unistd.h linux-3.4.48-vs2.3.3.9/arch/powerpc/include/asm/unistd.h
---- linux-3.4.48/arch/powerpc/include/asm/unistd.h	2012-01-09 15:14:05.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/arch/powerpc/include/asm/unistd.h	2012-05-21 16:15:04.000000000 +0000
+diff --git a/arch/powerpc/include/asm/unistd.h b/arch/powerpc/include/asm/unistd.h
+index d3d1b5e..c43e77b 100644
+--- a/arch/powerpc/include/asm/unistd.h
++++ b/arch/powerpc/include/asm/unistd.h
 @@ -275,7 +275,7 @@
  #endif
  #define __NR_rtas		255
@@ -629,9 +663,10 @@ diff -NurpP --minimal linux-3.4.48/arch/powerpc/include/asm/unistd.h linux-3.4.4
  #define __NR_migrate_pages	258
  #define __NR_mbind		259
  #define __NR_get_mempolicy	260
-diff -NurpP --minimal linux-3.4.48/arch/powerpc/kernel/process.c linux-3.4.48-vs2.3.3.9/arch/powerpc/kernel/process.c
---- linux-3.4.48/arch/powerpc/kernel/process.c	2013-06-13 08:59:15.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/arch/powerpc/kernel/process.c	2012-09-16 18:49:11.000000000 +0000
+diff --git a/arch/powerpc/kernel/process.c b/arch/powerpc/kernel/process.c
+index c1aef40..f3784c8 100644
+--- a/arch/powerpc/kernel/process.c
++++ b/arch/powerpc/kernel/process.c
 @@ -661,8 +661,9 @@ void show_regs(struct pt_regs * regs)
  #else
  		printk("DAR: "REG", DSISR: %08lx\n", regs->dar, regs->dsisr);
@@ -644,10 +679,11 @@ diff -NurpP --minimal linux-3.4.48/arch/powerpc/kernel/process.c linux-3.4.48-vs
  
  #ifdef CONFIG_SMP
  	printk(" CPU: %d", raw_smp_processor_id());
-diff -NurpP --minimal linux-3.4.48/arch/powerpc/kernel/traps.c linux-3.4.48-vs2.3.3.9/arch/powerpc/kernel/traps.c
---- linux-3.4.48/arch/powerpc/kernel/traps.c	2013-06-13 08:59:15.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/arch/powerpc/kernel/traps.c	2013-06-13 09:46:37.000000000 +0000
-@@ -1119,8 +1119,9 @@ void nonrecoverable_exception(struct pt_
+diff --git a/arch/powerpc/kernel/traps.c b/arch/powerpc/kernel/traps.c
+index 3bb7197..cef967d 100644
+--- a/arch/powerpc/kernel/traps.c
++++ b/arch/powerpc/kernel/traps.c
+@@ -1125,8 +1125,9 @@ void nonrecoverable_exception(struct pt_regs *regs)
  
  void trace_syscall(struct pt_regs *regs)
  {
@@ -659,9 +695,10 @@ diff -NurpP --minimal linux-3.4.48/arch/powerpc/kernel/traps.c linux-3.4.48-vs2.
  	       regs->ccr&0x10000000?"Error=":"", regs->gpr[3], print_tainted());
  }
  
-diff -NurpP --minimal linux-3.4.48/arch/s390/Kconfig linux-3.4.48-vs2.3.3.9/arch/s390/Kconfig
---- linux-3.4.48/arch/s390/Kconfig	2012-05-21 16:06:32.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/arch/s390/Kconfig	2012-05-21 16:15:04.000000000 +0000
+diff --git a/arch/s390/Kconfig b/arch/s390/Kconfig
+index 9015060..4cf4f43 100644
+--- a/arch/s390/Kconfig
++++ b/arch/s390/Kconfig
 @@ -639,6 +639,8 @@ source "fs/Kconfig"
  
  source "arch/s390/Kconfig.debug"
@@ -671,9 +708,10 @@ diff -NurpP --minimal linux-3.4.48/arch/s390/Kconfig linux-3.4.48-vs2.3.3.9/arch
  source "security/Kconfig"
  
  source "crypto/Kconfig"
-diff -NurpP --minimal linux-3.4.48/arch/s390/include/asm/tlb.h linux-3.4.48-vs2.3.3.9/arch/s390/include/asm/tlb.h
---- linux-3.4.48/arch/s390/include/asm/tlb.h	2012-05-21 16:06:32.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/arch/s390/include/asm/tlb.h	2012-05-21 16:15:04.000000000 +0000
+diff --git a/arch/s390/include/asm/tlb.h b/arch/s390/include/asm/tlb.h
+index 775a5ee..451d100 100644
+--- a/arch/s390/include/asm/tlb.h
++++ b/arch/s390/include/asm/tlb.h
 @@ -24,6 +24,7 @@
  #include <linux/mm.h>
  #include <linux/pagemap.h>
@@ -682,9 +720,10 @@ diff -NurpP --minimal linux-3.4.48/arch/s390/include/asm/tlb.h linux-3.4.48-vs2.
  #include <asm/processor.h>
  #include <asm/pgalloc.h>
  #include <asm/tlbflush.h>
-diff -NurpP --minimal linux-3.4.48/arch/s390/include/asm/unistd.h linux-3.4.48-vs2.3.3.9/arch/s390/include/asm/unistd.h
---- linux-3.4.48/arch/s390/include/asm/unistd.h	2012-03-19 18:46:48.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/arch/s390/include/asm/unistd.h	2012-05-21 16:15:04.000000000 +0000
+diff --git a/arch/s390/include/asm/unistd.h b/arch/s390/include/asm/unistd.h
+index 8a8008f..7e960e3 100644
+--- a/arch/s390/include/asm/unistd.h
++++ b/arch/s390/include/asm/unistd.h
 @@ -202,7 +202,7 @@
  #define __NR_clock_gettime	(__NR_timer_create+6)
  #define __NR_clock_getres	(__NR_timer_create+7)
@@ -694,9 +733,10 @@ diff -NurpP --minimal linux-3.4.48/arch/s390/include/asm/unistd.h linux-3.4.48-v
  #define __NR_statfs64		265
  #define __NR_fstatfs64		266
  #define __NR_remap_file_pages	267
-diff -NurpP --minimal linux-3.4.48/arch/s390/kernel/ptrace.c linux-3.4.48-vs2.3.3.9/arch/s390/kernel/ptrace.c
---- linux-3.4.48/arch/s390/kernel/ptrace.c	2012-05-21 16:06:32.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/arch/s390/kernel/ptrace.c	2012-05-21 16:15:04.000000000 +0000
+diff --git a/arch/s390/kernel/ptrace.c b/arch/s390/kernel/ptrace.c
+index 02f300f..cd5677e 100644
+--- a/arch/s390/kernel/ptrace.c
++++ b/arch/s390/kernel/ptrace.c
 @@ -21,6 +21,7 @@
  #include <linux/tracehook.h>
  #include <linux/seccomp.h>
@@ -705,10 +745,11 @@ diff -NurpP --minimal linux-3.4.48/arch/s390/kernel/ptrace.c linux-3.4.48-vs2.3.
  #include <trace/syscall.h>
  #include <asm/segment.h>
  #include <asm/page.h>
-diff -NurpP --minimal linux-3.4.48/arch/s390/kernel/syscalls.S linux-3.4.48-vs2.3.3.9/arch/s390/kernel/syscalls.S
---- linux-3.4.48/arch/s390/kernel/syscalls.S	2012-01-09 15:14:06.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/arch/s390/kernel/syscalls.S	2012-05-21 16:15:04.000000000 +0000
-@@ -271,7 +271,7 @@ SYSCALL(sys_clock_settime,sys_clock_sett
+diff --git a/arch/s390/kernel/syscalls.S b/arch/s390/kernel/syscalls.S
+index bcab2f0..6aa93ca 100644
+--- a/arch/s390/kernel/syscalls.S
++++ b/arch/s390/kernel/syscalls.S
+@@ -271,7 +271,7 @@ SYSCALL(sys_clock_settime,sys_clock_settime,sys32_clock_settime_wrapper)
  SYSCALL(sys_clock_gettime,sys_clock_gettime,sys32_clock_gettime_wrapper)	/* 260 */
  SYSCALL(sys_clock_getres,sys_clock_getres,sys32_clock_getres_wrapper)
  SYSCALL(sys_clock_nanosleep,sys_clock_nanosleep,sys32_clock_nanosleep_wrapper)
@@ -717,9 +758,10 @@ diff -NurpP --minimal linux-3.4.48/arch/s390/kernel/syscalls.S linux-3.4.48-vs2.
  SYSCALL(sys_s390_fadvise64_64,sys_ni_syscall,sys32_fadvise64_64_wrapper)
  SYSCALL(sys_statfs64,sys_statfs64,compat_sys_statfs64_wrapper)
  SYSCALL(sys_fstatfs64,sys_fstatfs64,compat_sys_fstatfs64_wrapper)
-diff -NurpP --minimal linux-3.4.48/arch/sh/Kconfig linux-3.4.48-vs2.3.3.9/arch/sh/Kconfig
---- linux-3.4.48/arch/sh/Kconfig	2012-05-21 16:06:33.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/arch/sh/Kconfig	2012-05-21 16:15:04.000000000 +0000
+diff --git a/arch/sh/Kconfig b/arch/sh/Kconfig
+index ff9e033..620d659 100644
+--- a/arch/sh/Kconfig
++++ b/arch/sh/Kconfig
 @@ -905,6 +905,8 @@ source "fs/Kconfig"
  
  source "arch/sh/Kconfig.debug"
@@ -729,9 +771,10 @@ diff -NurpP --minimal linux-3.4.48/arch/sh/Kconfig linux-3.4.48-vs2.3.3.9/arch/s
  source "security/Kconfig"
  
  source "crypto/Kconfig"
-diff -NurpP --minimal linux-3.4.48/arch/sh/kernel/irq.c linux-3.4.48-vs2.3.3.9/arch/sh/kernel/irq.c
---- linux-3.4.48/arch/sh/kernel/irq.c	2011-07-22 09:17:41.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/arch/sh/kernel/irq.c	2012-05-21 16:15:04.000000000 +0000
+diff --git a/arch/sh/kernel/irq.c b/arch/sh/kernel/irq.c
+index a3ee919..370c557 100644
+--- a/arch/sh/kernel/irq.c
++++ b/arch/sh/kernel/irq.c
 @@ -14,6 +14,7 @@
  #include <linux/ftrace.h>
  #include <linux/delay.h>
@@ -740,9 +783,10 @@ diff -NurpP --minimal linux-3.4.48/arch/sh/kernel/irq.c linux-3.4.48-vs2.3.3.9/a
  #include <asm/processor.h>
  #include <asm/machvec.h>
  #include <asm/uaccess.h>
-diff -NurpP --minimal linux-3.4.48/arch/sparc/Kconfig linux-3.4.48-vs2.3.3.9/arch/sparc/Kconfig
---- linux-3.4.48/arch/sparc/Kconfig	2013-06-13 08:59:15.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/arch/sparc/Kconfig	2012-06-08 13:57:24.000000000 +0000
+diff --git a/arch/sparc/Kconfig b/arch/sparc/Kconfig
+index 76c7ccf..123bfcf 100644
+--- a/arch/sparc/Kconfig
++++ b/arch/sparc/Kconfig
 @@ -599,6 +599,8 @@ source "fs/Kconfig"
  
  source "arch/sparc/Kconfig.debug"
@@ -752,9 +796,10 @@ diff -NurpP --minimal linux-3.4.48/arch/sparc/Kconfig linux-3.4.48-vs2.3.3.9/arc
  source "security/Kconfig"
  
  source "crypto/Kconfig"
-diff -NurpP --minimal linux-3.4.48/arch/sparc/include/asm/unistd.h linux-3.4.48-vs2.3.3.9/arch/sparc/include/asm/unistd.h
---- linux-3.4.48/arch/sparc/include/asm/unistd.h	2012-01-09 15:14:07.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/arch/sparc/include/asm/unistd.h	2012-05-21 16:15:04.000000000 +0000
+diff --git a/arch/sparc/include/asm/unistd.h b/arch/sparc/include/asm/unistd.h
+index c7cb0af..1f5c6d7 100644
+--- a/arch/sparc/include/asm/unistd.h
++++ b/arch/sparc/include/asm/unistd.h
 @@ -335,7 +335,7 @@
  #define __NR_timer_getoverrun	264
  #define __NR_timer_delete	265
@@ -764,9 +809,10 @@ diff -NurpP --minimal linux-3.4.48/arch/sparc/include/asm/unistd.h linux-3.4.48-
  #define __NR_io_setup		268
  #define __NR_io_destroy		269
  #define __NR_io_submit		270
-diff -NurpP --minimal linux-3.4.48/arch/sparc/kernel/systbls_32.S linux-3.4.48-vs2.3.3.9/arch/sparc/kernel/systbls_32.S
---- linux-3.4.48/arch/sparc/kernel/systbls_32.S	2012-01-09 15:14:09.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/arch/sparc/kernel/systbls_32.S	2012-05-21 16:15:04.000000000 +0000
+diff --git a/arch/sparc/kernel/systbls_32.S b/arch/sparc/kernel/systbls_32.S
+index 63402f9..317e23c 100644
+--- a/arch/sparc/kernel/systbls_32.S
++++ b/arch/sparc/kernel/systbls_32.S
 @@ -70,7 +70,7 @@ sys_call_table:
  /*250*/	.long sys_mremap, sys_sysctl, sys_getsid, sys_fdatasync, sys_ni_syscall
  /*255*/	.long sys_sync_file_range, sys_clock_settime, sys_clock_gettime, sys_clock_getres, sys_clock_nanosleep
@@ -776,9 +822,10 @@ diff -NurpP --minimal linux-3.4.48/arch/sparc/kernel/systbls_32.S linux-3.4.48-v
  /*270*/	.long sys_io_submit, sys_io_cancel, sys_io_getevents, sys_mq_open, sys_mq_unlink
  /*275*/	.long sys_mq_timedsend, sys_mq_timedreceive, sys_mq_notify, sys_mq_getsetattr, sys_waitid
  /*280*/	.long sys_tee, sys_add_key, sys_request_key, sys_keyctl, sys_openat
-diff -NurpP --minimal linux-3.4.48/arch/sparc/kernel/systbls_64.S linux-3.4.48-vs2.3.3.9/arch/sparc/kernel/systbls_64.S
---- linux-3.4.48/arch/sparc/kernel/systbls_64.S	2013-06-13 08:59:15.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/arch/sparc/kernel/systbls_64.S	2012-06-08 13:57:24.000000000 +0000
+diff --git a/arch/sparc/kernel/systbls_64.S b/arch/sparc/kernel/systbls_64.S
+index 3a58e0d..a782653 100644
+--- a/arch/sparc/kernel/systbls_64.S
++++ b/arch/sparc/kernel/systbls_64.S
 @@ -71,7 +71,7 @@ sys_call_table32:
  /*250*/	.word sys_mremap, compat_sys_sysctl, sys32_getsid, sys_fdatasync, sys_nis_syscall
  	.word sys32_sync_file_range, compat_sys_clock_settime, compat_sys_clock_gettime, compat_sys_clock_getres, sys32_clock_nanosleep
@@ -797,9 +844,10 @@ diff -NurpP --minimal linux-3.4.48/arch/sparc/kernel/systbls_64.S linux-3.4.48-v
  /*270*/	.word sys_io_submit, sys_io_cancel, sys_io_getevents, sys_mq_open, sys_mq_unlink
  	.word sys_mq_timedsend, sys_mq_timedreceive, sys_mq_notify, sys_mq_getsetattr, sys_waitid
  /*280*/	.word sys_tee, sys_add_key, sys_request_key, sys_keyctl, sys_openat
-diff -NurpP --minimal linux-3.4.48/arch/um/Kconfig.rest linux-3.4.48-vs2.3.3.9/arch/um/Kconfig.rest
---- linux-3.4.48/arch/um/Kconfig.rest	2012-01-09 15:14:09.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/arch/um/Kconfig.rest	2012-05-21 16:15:04.000000000 +0000
+diff --git a/arch/um/Kconfig.rest b/arch/um/Kconfig.rest
+index 567eb5f..93eb92f 100644
+--- a/arch/um/Kconfig.rest
++++ b/arch/um/Kconfig.rest
 @@ -12,6 +12,8 @@ source "arch/um/Kconfig.net"
  
  source "fs/Kconfig"
@@ -809,9 +857,10 @@ diff -NurpP --minimal linux-3.4.48/arch/um/Kconfig.rest linux-3.4.48-vs2.3.3.9/a
  source "security/Kconfig"
  
  source "crypto/Kconfig"
-diff -NurpP --minimal linux-3.4.48/arch/x86/Kconfig linux-3.4.48-vs2.3.3.9/arch/x86/Kconfig
---- linux-3.4.48/arch/x86/Kconfig	2013-06-13 08:59:16.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/arch/x86/Kconfig	2013-03-02 15:26:44.000000000 +0000
+diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig
+index b1478f4..0784cf7 100644
+--- a/arch/x86/Kconfig
++++ b/arch/x86/Kconfig
 @@ -2221,6 +2221,8 @@ source "fs/Kconfig"
  
  source "arch/x86/Kconfig.debug"
@@ -821,9 +870,10 @@ diff -NurpP --minimal linux-3.4.48/arch/x86/Kconfig linux-3.4.48-vs2.3.3.9/arch/
  source "security/Kconfig"
  
  source "crypto/Kconfig"
-diff -NurpP --minimal linux-3.4.48/arch/x86/syscalls/syscall_32.tbl linux-3.4.48-vs2.3.3.9/arch/x86/syscalls/syscall_32.tbl
---- linux-3.4.48/arch/x86/syscalls/syscall_32.tbl	2012-05-21 16:06:42.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/arch/x86/syscalls/syscall_32.tbl	2012-05-21 16:15:04.000000000 +0000
+diff --git a/arch/x86/syscalls/syscall_32.tbl b/arch/x86/syscalls/syscall_32.tbl
+index 29f9f05..60f2ef1 100644
+--- a/arch/x86/syscalls/syscall_32.tbl
++++ b/arch/x86/syscalls/syscall_32.tbl
 @@ -279,7 +279,7 @@
  270	i386	tgkill			sys_tgkill
  271	i386	utimes			sys_utimes			compat_sys_utimes
@@ -833,9 +883,10 @@ diff -NurpP --minimal linux-3.4.48/arch/x86/syscalls/syscall_32.tbl linux-3.4.48
  274	i386	mbind			sys_mbind
  275	i386	get_mempolicy		sys_get_mempolicy		compat_sys_get_mempolicy
  276	i386	set_mempolicy		sys_set_mempolicy
-diff -NurpP --minimal linux-3.4.48/arch/x86/syscalls/syscall_64.tbl linux-3.4.48-vs2.3.3.9/arch/x86/syscalls/syscall_64.tbl
---- linux-3.4.48/arch/x86/syscalls/syscall_64.tbl	2013-06-13 08:59:16.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/arch/x86/syscalls/syscall_64.tbl	2012-09-16 18:49:11.000000000 +0000
+diff --git a/arch/x86/syscalls/syscall_64.tbl b/arch/x86/syscalls/syscall_64.tbl
+index fd1f103..cd47b1e 100644
+--- a/arch/x86/syscalls/syscall_64.tbl
++++ b/arch/x86/syscalls/syscall_64.tbl
 @@ -242,7 +242,7 @@
  233	common	epoll_ctl		sys_epoll_ctl
  234	common	tgkill			sys_tgkill
@@ -845,9 +896,10 @@ diff -NurpP --minimal linux-3.4.48/arch/x86/syscalls/syscall_64.tbl linux-3.4.48
  237	common	mbind			sys_mbind
  238	common	set_mempolicy		sys_set_mempolicy
  239	common	get_mempolicy		sys_get_mempolicy
-diff -NurpP --minimal linux-3.4.48/drivers/block/Kconfig linux-3.4.48-vs2.3.3.9/drivers/block/Kconfig
---- linux-3.4.48/drivers/block/Kconfig	2012-05-21 16:06:43.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/drivers/block/Kconfig	2012-05-21 16:15:04.000000000 +0000
+diff --git a/drivers/block/Kconfig b/drivers/block/Kconfig
+index a796407..9bbef0b 100644
+--- a/drivers/block/Kconfig
++++ b/drivers/block/Kconfig
 @@ -290,6 +290,13 @@ config BLK_DEV_CRYPTOLOOP
  
  source "drivers/block/drbd/Kconfig"
@@ -862,9 +914,10 @@ diff -NurpP --minimal linux-3.4.48/drivers/block/Kconfig linux-3.4.48-vs2.3.3.9/
  config BLK_DEV_NBD
  	tristate "Network block device support"
  	depends on NET
-diff -NurpP --minimal linux-3.4.48/drivers/block/Makefile linux-3.4.48-vs2.3.3.9/drivers/block/Makefile
---- linux-3.4.48/drivers/block/Makefile	2012-03-19 18:46:52.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/drivers/block/Makefile	2012-05-21 16:15:04.000000000 +0000
+diff --git a/drivers/block/Makefile b/drivers/block/Makefile
+index 5b79505..eb19a27 100644
+--- a/drivers/block/Makefile
++++ b/drivers/block/Makefile
 @@ -35,6 +35,7 @@ obj-$(CONFIG_VIODASD)		+= viodasd.o
  obj-$(CONFIG_BLK_DEV_SX8)	+= sx8.o
  obj-$(CONFIG_BLK_DEV_UB)	+= ub.o
@@ -873,9 +926,10 @@ diff -NurpP --minimal linux-3.4.48/drivers/block/Makefile linux-3.4.48-vs2.3.3.9
  
  obj-$(CONFIG_XEN_BLKDEV_FRONTEND)	+= xen-blkfront.o
  obj-$(CONFIG_XEN_BLKDEV_BACKEND)	+= xen-blkback/
-diff -NurpP --minimal linux-3.4.48/drivers/block/loop.c linux-3.4.48-vs2.3.3.9/drivers/block/loop.c
---- linux-3.4.48/drivers/block/loop.c	2013-06-13 08:59:17.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/drivers/block/loop.c	2013-06-13 09:46:37.000000000 +0000
+diff --git a/drivers/block/loop.c b/drivers/block/loop.c
+index 179b5b4..a718b5d 100644
+--- a/drivers/block/loop.c
++++ b/drivers/block/loop.c
 @@ -76,6 +76,7 @@
  #include <linux/sysfs.h>
  #include <linux/miscdevice.h>
@@ -884,7 +938,7 @@ diff -NurpP --minimal linux-3.4.48/drivers/block/loop.c linux-3.4.48-vs2.3.3.9/d
  
  #include <asm/uaccess.h>
  
-@@ -869,6 +870,7 @@ static int loop_set_fd(struct loop_devic
+@@ -869,6 +870,7 @@ static int loop_set_fd(struct loop_device *lo, fmode_t mode,
  	lo->lo_blocksize = lo_blocksize;
  	lo->lo_device = bdev;
  	lo->lo_flags = lo_flags;
@@ -892,7 +946,7 @@ diff -NurpP --minimal linux-3.4.48/drivers/block/loop.c linux-3.4.48-vs2.3.3.9/d
  	lo->lo_backing_file = file;
  	lo->transfer = transfer_none;
  	lo->ioctl = NULL;
-@@ -1001,6 +1003,7 @@ static int loop_clr_fd(struct loop_devic
+@@ -1006,6 +1008,7 @@ static int loop_clr_fd(struct loop_device *lo)
  	lo->lo_sizelimit = 0;
  	lo->lo_encrypt_key_size = 0;
  	lo->lo_thread = NULL;
@@ -900,7 +954,7 @@ diff -NurpP --minimal linux-3.4.48/drivers/block/loop.c linux-3.4.48-vs2.3.3.9/d
  	memset(lo->lo_encrypt_key, 0, LO_KEY_SIZE);
  	memset(lo->lo_crypt_name, 0, LO_NAME_SIZE);
  	memset(lo->lo_file_name, 0, LO_NAME_SIZE);
-@@ -1042,7 +1045,7 @@ loop_set_status(struct loop_device *lo,
+@@ -1049,7 +1052,7 @@ loop_set_status(struct loop_device *lo, const struct loop_info64 *info)
  
  	if (lo->lo_encrypt_key_size &&
  	    lo->lo_key_owner != uid &&
@@ -909,7 +963,7 @@ diff -NurpP --minimal linux-3.4.48/drivers/block/loop.c linux-3.4.48-vs2.3.3.9/d
  		return -EPERM;
  	if (lo->lo_state != Lo_bound)
  		return -ENXIO;
-@@ -1132,7 +1135,8 @@ loop_get_status(struct loop_device *lo,
+@@ -1139,7 +1142,8 @@ loop_get_status(struct loop_device *lo, struct loop_info64 *info)
  	memcpy(info->lo_crypt_name, lo->lo_crypt_name, LO_NAME_SIZE);
  	info->lo_encrypt_type =
  		lo->lo_encryption ? lo->lo_encryption->number : 0;
@@ -919,7 +973,7 @@ diff -NurpP --minimal linux-3.4.48/drivers/block/loop.c linux-3.4.48-vs2.3.3.9/d
  		info->lo_encrypt_key_size = lo->lo_encrypt_key_size;
  		memcpy(info->lo_encrypt_key, lo->lo_encrypt_key,
  		       lo->lo_encrypt_key_size);
-@@ -1490,6 +1494,11 @@ static int lo_open(struct block_device *
+@@ -1497,6 +1501,11 @@ static int lo_open(struct block_device *bdev, fmode_t mode)
  		goto out;
  	}
  
@@ -931,9 +985,11 @@ diff -NurpP --minimal linux-3.4.48/drivers/block/loop.c linux-3.4.48-vs2.3.3.9/d
  	mutex_lock(&lo->lo_ctl_mutex);
  	lo->lo_refcnt++;
  	mutex_unlock(&lo->lo_ctl_mutex);
-diff -NurpP --minimal linux-3.4.48/drivers/block/vroot.c linux-3.4.48-vs2.3.3.9/drivers/block/vroot.c
---- linux-3.4.48/drivers/block/vroot.c	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/drivers/block/vroot.c	2012-05-21 16:15:04.000000000 +0000
+diff --git a/drivers/block/vroot.c b/drivers/block/vroot.c
+new file mode 100644
+index 0000000..942ad53
+--- /dev/null
++++ b/drivers/block/vroot.c
 @@ -0,0 +1,291 @@
 +/*
 + *  linux/drivers/block/vroot.c
@@ -1226,9 +1282,10 @@ diff -NurpP --minimal linux-3.4.48/drivers/block/vroot.c linux-3.4.48-vs2.3.3.9/
 +
 +#endif
 +
-diff -NurpP --minimal linux-3.4.48/drivers/infiniband/Kconfig linux-3.4.48-vs2.3.3.9/drivers/infiniband/Kconfig
---- linux-3.4.48/drivers/infiniband/Kconfig	2012-03-19 18:46:54.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/drivers/infiniband/Kconfig	2012-05-21 16:15:04.000000000 +0000
+diff --git a/drivers/infiniband/Kconfig b/drivers/infiniband/Kconfig
+index eb0add3..bc760cb 100644
+--- a/drivers/infiniband/Kconfig
++++ b/drivers/infiniband/Kconfig
 @@ -39,7 +39,7 @@ config INFINIBAND_USER_MEM
  config INFINIBAND_ADDR_TRANS
  	bool
@@ -1238,10 +1295,11 @@ diff -NurpP --minimal linux-3.4.48/drivers/infiniband/Kconfig linux-3.4.48-vs2.3
  	default y
  
  source "drivers/infiniband/hw/mthca/Kconfig"
-diff -NurpP --minimal linux-3.4.48/drivers/infiniband/core/addr.c linux-3.4.48-vs2.3.3.9/drivers/infiniband/core/addr.c
---- linux-3.4.48/drivers/infiniband/core/addr.c	2012-05-21 16:06:46.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/drivers/infiniband/core/addr.c	2012-05-21 16:15:04.000000000 +0000
-@@ -263,7 +263,7 @@ static int addr6_resolve(struct sockaddr
+diff --git a/drivers/infiniband/core/addr.c b/drivers/infiniband/core/addr.c
+index 6ef660c..409b035 100644
+--- a/drivers/infiniband/core/addr.c
++++ b/drivers/infiniband/core/addr.c
+@@ -263,7 +263,7 @@ static int addr6_resolve(struct sockaddr_in6 *src_in,
  
  	if (ipv6_addr_any(&fl6.saddr)) {
  		ret = ipv6_dev_get_saddr(&init_net, ip6_dst_idev(dst)->dev,
@@ -1250,9 +1308,10 @@ diff -NurpP --minimal linux-3.4.48/drivers/infiniband/core/addr.c linux-3.4.48-v
  		if (ret)
  			goto put;
  
-diff -NurpP --minimal linux-3.4.48/drivers/md/dm-ioctl.c linux-3.4.48-vs2.3.3.9/drivers/md/dm-ioctl.c
---- linux-3.4.48/drivers/md/dm-ioctl.c	2013-06-13 08:59:20.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/drivers/md/dm-ioctl.c	2013-02-11 23:37:30.000000000 +0000
+diff --git a/drivers/md/dm-ioctl.c b/drivers/md/dm-ioctl.c
+index f011d4b..724cc20 100644
+--- a/drivers/md/dm-ioctl.c
++++ b/drivers/md/dm-ioctl.c
 @@ -16,6 +16,7 @@
  #include <linux/dm-ioctl.h>
  #include <linux/hdreg.h>
@@ -1261,7 +1320,7 @@ diff -NurpP --minimal linux-3.4.48/drivers/md/dm-ioctl.c linux-3.4.48-vs2.3.3.9/
  
  #include <asm/uaccess.h>
  
-@@ -106,7 +107,8 @@ static struct hash_cell *__get_name_cell
+@@ -106,7 +107,8 @@ static struct hash_cell *__get_name_cell(const char *str)
  	unsigned int h = hash_str(str);
  
  	list_for_each_entry (hc, _name_buckets + h, name_list)
@@ -1271,7 +1330,7 @@ diff -NurpP --minimal linux-3.4.48/drivers/md/dm-ioctl.c linux-3.4.48-vs2.3.3.9/
  			dm_get(hc->md);
  			return hc;
  		}
-@@ -120,7 +122,8 @@ static struct hash_cell *__get_uuid_cell
+@@ -120,7 +122,8 @@ static struct hash_cell *__get_uuid_cell(const char *str)
  	unsigned int h = hash_str(str);
  
  	list_for_each_entry (hc, _uuid_buckets + h, uuid_list)
@@ -1281,7 +1340,7 @@ diff -NurpP --minimal linux-3.4.48/drivers/md/dm-ioctl.c linux-3.4.48-vs2.3.3.9/
  			dm_get(hc->md);
  			return hc;
  		}
-@@ -131,13 +134,15 @@ static struct hash_cell *__get_uuid_cell
+@@ -131,13 +134,15 @@ static struct hash_cell *__get_uuid_cell(const char *str)
  static struct hash_cell *__get_dev_cell(uint64_t dev)
  {
  	struct mapped_device *md;
@@ -1299,7 +1358,7 @@ diff -NurpP --minimal linux-3.4.48/drivers/md/dm-ioctl.c linux-3.4.48-vs2.3.3.9/
  	if (!hc) {
  		dm_put(md);
  		return NULL;
-@@ -445,6 +450,9 @@ typedef int (*ioctl_fn)(struct dm_ioctl
+@@ -445,6 +450,9 @@ typedef int (*ioctl_fn)(struct dm_ioctl *param, size_t param_size);
  
  static int remove_all(struct dm_ioctl *param, size_t param_size)
  {
@@ -1309,7 +1368,7 @@ diff -NurpP --minimal linux-3.4.48/drivers/md/dm-ioctl.c linux-3.4.48-vs2.3.3.9/
  	dm_hash_remove_all(1);
  	param->data_size = 0;
  	return 0;
-@@ -492,6 +500,8 @@ static int list_devices(struct dm_ioctl
+@@ -492,6 +500,8 @@ static int list_devices(struct dm_ioctl *param, size_t param_size)
  	 */
  	for (i = 0; i < NUM_BUCKETS; i++) {
  		list_for_each_entry (hc, _name_buckets + i, name_list) {
@@ -1318,7 +1377,7 @@ diff -NurpP --minimal linux-3.4.48/drivers/md/dm-ioctl.c linux-3.4.48-vs2.3.3.9/
  			needed += sizeof(struct dm_name_list);
  			needed += strlen(hc->name) + 1;
  			needed += ALIGN_MASK;
-@@ -515,6 +525,8 @@ static int list_devices(struct dm_ioctl
+@@ -515,6 +525,8 @@ static int list_devices(struct dm_ioctl *param, size_t param_size)
  	 */
  	for (i = 0; i < NUM_BUCKETS; i++) {
  		list_for_each_entry (hc, _name_buckets + i, name_list) {
@@ -1327,7 +1386,7 @@ diff -NurpP --minimal linux-3.4.48/drivers/md/dm-ioctl.c linux-3.4.48-vs2.3.3.9/
  			if (old_nl)
  				old_nl->next = (uint32_t) ((void *) nl -
  							   (void *) old_nl);
-@@ -1624,8 +1636,8 @@ static int ctl_ioctl(uint command, struc
+@@ -1624,8 +1636,8 @@ static int ctl_ioctl(uint command, struct dm_ioctl __user *user)
  	ioctl_fn fn = NULL;
  	size_t input_param_size;
  
@@ -1338,9 +1397,10 @@ diff -NurpP --minimal linux-3.4.48/drivers/md/dm-ioctl.c linux-3.4.48-vs2.3.3.9/
  		return -EACCES;
  
  	if (_IOC_TYPE(command) != DM_IOCTL)
-diff -NurpP --minimal linux-3.4.48/drivers/md/dm.c linux-3.4.48-vs2.3.3.9/drivers/md/dm.c
---- linux-3.4.48/drivers/md/dm.c	2013-06-13 08:59:20.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/drivers/md/dm.c	2012-12-08 00:53:53.000000000 +0000
+diff --git a/drivers/md/dm.c b/drivers/md/dm.c
+index 32370ea..d700817 100644
+--- a/drivers/md/dm.c
++++ b/drivers/md/dm.c
 @@ -19,6 +19,7 @@
  #include <linux/idr.h>
  #include <linux/hdreg.h>
@@ -1357,7 +1417,7 @@ diff -NurpP --minimal linux-3.4.48/drivers/md/dm.c linux-3.4.48-vs2.3.3.9/driver
  
  	unsigned long flags;
  
-@@ -343,6 +345,7 @@ int dm_deleting_md(struct mapped_device
+@@ -343,6 +345,7 @@ int dm_deleting_md(struct mapped_device *md)
  static int dm_blk_open(struct block_device *bdev, fmode_t mode)
  {
  	struct mapped_device *md;
@@ -1365,7 +1425,7 @@ diff -NurpP --minimal linux-3.4.48/drivers/md/dm.c linux-3.4.48-vs2.3.3.9/driver
  
  	spin_lock(&_minor_lock);
  
-@@ -351,18 +354,19 @@ static int dm_blk_open(struct block_devi
+@@ -351,18 +354,19 @@ static int dm_blk_open(struct block_device *bdev, fmode_t mode)
  		goto out;
  
  	if (test_bit(DMF_FREEING, &md->flags) ||
@@ -1391,7 +1451,7 @@ diff -NurpP --minimal linux-3.4.48/drivers/md/dm.c linux-3.4.48-vs2.3.3.9/driver
  }
  
  static int dm_blk_close(struct gendisk *disk, fmode_t mode)
-@@ -583,6 +587,14 @@ int dm_set_geometry(struct mapped_device
+@@ -583,6 +587,14 @@ int dm_set_geometry(struct mapped_device *md, struct hd_geometry *geo)
  	return 0;
  }
  
@@ -1406,7 +1466,7 @@ diff -NurpP --minimal linux-3.4.48/drivers/md/dm.c linux-3.4.48-vs2.3.3.9/driver
  /*-----------------------------------------------------------------
   * CRUD START:
   *   A more elegant soln is in the works that uses the queue
-@@ -1876,6 +1888,7 @@ static struct mapped_device *alloc_dev(i
+@@ -1876,6 +1888,7 @@ static struct mapped_device *alloc_dev(int minor)
  	INIT_LIST_HEAD(&md->uevent_list);
  	spin_lock_init(&md->uevent_lock);
  
@@ -1414,9 +1474,10 @@ diff -NurpP --minimal linux-3.4.48/drivers/md/dm.c linux-3.4.48-vs2.3.3.9/driver
  	md->queue = blk_alloc_queue(GFP_KERNEL);
  	if (!md->queue)
  		goto bad_queue;
-diff -NurpP --minimal linux-3.4.48/drivers/md/dm.h linux-3.4.48-vs2.3.3.9/drivers/md/dm.h
---- linux-3.4.48/drivers/md/dm.h	2012-01-09 15:14:21.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/drivers/md/dm.h	2012-05-21 16:15:04.000000000 +0000
+diff --git a/drivers/md/dm.h b/drivers/md/dm.h
+index b7dacd5..8afbf20 100644
+--- a/drivers/md/dm.h
++++ b/drivers/md/dm.h
 @@ -41,6 +41,8 @@ struct dm_dev_internal {
  struct dm_table;
  struct dm_md_mempools;
@@ -1426,9 +1487,10 @@ diff -NurpP --minimal linux-3.4.48/drivers/md/dm.h linux-3.4.48-vs2.3.3.9/driver
  /*-----------------------------------------------------------------
   * Internal table functions.
   *---------------------------------------------------------------*/
-diff -NurpP --minimal linux-3.4.48/drivers/net/tun.c linux-3.4.48-vs2.3.3.9/drivers/net/tun.c
---- linux-3.4.48/drivers/net/tun.c	2013-06-13 08:59:22.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/drivers/net/tun.c	2013-03-30 21:29:17.000000000 +0000
+diff --git a/drivers/net/tun.c b/drivers/net/tun.c
+index c896b8f..9766b23 100644
+--- a/drivers/net/tun.c
++++ b/drivers/net/tun.c
 @@ -64,6 +64,7 @@
  #include <linux/nsproxy.h>
  #include <linux/virtio_net.h>
@@ -1445,7 +1507,7 @@ diff -NurpP --minimal linux-3.4.48/drivers/net/tun.c linux-3.4.48-vs2.3.3.9/driv
  
  	struct net_device	*dev;
  	netdev_features_t	set_features;
-@@ -912,6 +914,7 @@ static void tun_setup(struct net_device
+@@ -912,6 +914,7 @@ static void tun_setup(struct net_device *dev)
  
  	tun->owner = -1;
  	tun->group = -1;
@@ -1453,7 +1515,7 @@ diff -NurpP --minimal linux-3.4.48/drivers/net/tun.c linux-3.4.48-vs2.3.3.9/driv
  
  	dev->ethtool_ops = &tun_ethtool_ops;
  	dev->destructor = tun_free_netdev;
-@@ -1070,7 +1073,7 @@ static int tun_set_iff(struct net *net,
+@@ -1070,7 +1073,7 @@ static int tun_set_iff(struct net *net, struct file *file, struct ifreq *ifr)
  
  		if (((tun->owner != -1 && cred->euid != tun->owner) ||
  		     (tun->group != -1 && !in_egroup_p(tun->group))) &&
@@ -1462,7 +1524,7 @@ diff -NurpP --minimal linux-3.4.48/drivers/net/tun.c linux-3.4.48-vs2.3.3.9/driv
  			return -EPERM;
  		err = security_tun_dev_attach(tun->socket.sk);
  		if (err < 0)
-@@ -1084,7 +1087,7 @@ static int tun_set_iff(struct net *net,
+@@ -1084,7 +1087,7 @@ static int tun_set_iff(struct net *net, struct file *file, struct ifreq *ifr)
  		char *name;
  		unsigned long flags = 0;
  
@@ -1471,7 +1533,7 @@ diff -NurpP --minimal linux-3.4.48/drivers/net/tun.c linux-3.4.48-vs2.3.3.9/driv
  			return -EPERM;
  		err = security_tun_dev_create();
  		if (err < 0)
-@@ -1154,6 +1157,9 @@ static int tun_set_iff(struct net *net,
+@@ -1154,6 +1157,9 @@ static int tun_set_iff(struct net *net, struct file *file, struct ifreq *ifr)
  
  		sk->sk_destruct = tun_sock_destruct;
  
@@ -1481,7 +1543,7 @@ diff -NurpP --minimal linux-3.4.48/drivers/net/tun.c linux-3.4.48-vs2.3.3.9/driv
  		err = tun_attach(tun, file);
  		if (err < 0)
  			goto failed;
-@@ -1337,6 +1343,16 @@ static long __tun_chr_ioctl(struct file
+@@ -1337,6 +1343,16 @@ static long __tun_chr_ioctl(struct file *file, unsigned int cmd,
  		tun_debug(KERN_INFO, tun, "group set to %d\n", tun->group);
  		break;
  
@@ -1498,9 +1560,10 @@ diff -NurpP --minimal linux-3.4.48/drivers/net/tun.c linux-3.4.48-vs2.3.3.9/driv
  	case TUNSETLINK:
  		/* Only allow setting the type when the interface is down */
  		if (tun->dev->flags & IFF_UP) {
-diff -NurpP --minimal linux-3.4.48/drivers/tty/sysrq.c linux-3.4.48-vs2.3.3.9/drivers/tty/sysrq.c
---- linux-3.4.48/drivers/tty/sysrq.c	2012-05-21 16:07:16.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/drivers/tty/sysrq.c	2012-05-21 16:15:04.000000000 +0000
+diff --git a/drivers/tty/sysrq.c b/drivers/tty/sysrq.c
+index 05728894..00e0d96 100644
+--- a/drivers/tty/sysrq.c
++++ b/drivers/tty/sysrq.c
 @@ -41,6 +41,7 @@
  #include <linux/slab.h>
  #include <linux/input.h>
@@ -1509,7 +1572,7 @@ diff -NurpP --minimal linux-3.4.48/drivers/tty/sysrq.c linux-3.4.48-vs2.3.3.9/dr
  
  #include <asm/ptrace.h>
  #include <asm/irq_regs.h>
-@@ -398,6 +399,21 @@ static struct sysrq_key_op sysrq_unrt_op
+@@ -398,6 +399,21 @@ static struct sysrq_key_op sysrq_unrt_op = {
  	.enable_mask	= SYSRQ_ENABLE_RTNICE,
  };
  
@@ -1531,7 +1594,7 @@ diff -NurpP --minimal linux-3.4.48/drivers/tty/sysrq.c linux-3.4.48-vs2.3.3.9/dr
  /* Key Operations table and lock */
  static DEFINE_SPINLOCK(sysrq_key_table_lock);
  
-@@ -452,7 +468,11 @@ static struct sysrq_key_op *sysrq_key_ta
+@@ -452,7 +468,11 @@ static struct sysrq_key_op *sysrq_key_table[36] = {
  	NULL,				/* v */
  	&sysrq_showstate_blocked_op,	/* w */
  	/* x: May be registered on ppc/powerpc for xmon */
@@ -1543,7 +1606,7 @@ diff -NurpP --minimal linux-3.4.48/drivers/tty/sysrq.c linux-3.4.48-vs2.3.3.9/dr
  	/* y: May be registered on sparc64 for global register dump */
  	NULL,				/* y */
  	&sysrq_ftrace_dump_op,		/* z */
-@@ -467,6 +487,8 @@ static int sysrq_key_table_key2index(int
+@@ -467,6 +487,8 @@ static int sysrq_key_table_key2index(int key)
  		retval = key - '0';
  	else if ((key >= 'a') && (key <= 'z'))
  		retval = key + 10 - 'a';
@@ -1552,9 +1615,10 @@ diff -NurpP --minimal linux-3.4.48/drivers/tty/sysrq.c linux-3.4.48-vs2.3.3.9/dr
  	else
  		retval = -1;
  	return retval;
-diff -NurpP --minimal linux-3.4.48/drivers/tty/tty_io.c linux-3.4.48-vs2.3.3.9/drivers/tty/tty_io.c
---- linux-3.4.48/drivers/tty/tty_io.c	2012-05-21 16:07:16.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/drivers/tty/tty_io.c	2013-06-13 09:46:38.000000000 +0000
+diff --git a/drivers/tty/tty_io.c b/drivers/tty/tty_io.c
+index b28d635..3cf9232 100644
+--- a/drivers/tty/tty_io.c
++++ b/drivers/tty/tty_io.c
 @@ -104,6 +104,7 @@
  
  #include <linux/kmod.h>
@@ -1563,7 +1627,7 @@ diff -NurpP --minimal linux-3.4.48/drivers/tty/tty_io.c linux-3.4.48-vs2.3.3.9/d
  
  #undef TTY_DEBUG_HANGUP
  
-@@ -2118,7 +2119,8 @@ static int tiocsti(struct tty_struct *tt
+@@ -2128,7 +2129,8 @@ static int tiocsti(struct tty_struct *tty, char __user *p)
  	char ch, mbz = 0;
  	struct tty_ldisc *ld;
  
@@ -1573,7 +1637,7 @@ diff -NurpP --minimal linux-3.4.48/drivers/tty/tty_io.c linux-3.4.48-vs2.3.3.9/d
  		return -EPERM;
  	if (get_user(ch, p))
  		return -EFAULT;
-@@ -2406,6 +2408,7 @@ static int tiocspgrp(struct tty_struct *
+@@ -2416,6 +2418,7 @@ static int tiocspgrp(struct tty_struct *tty, struct tty_struct *real_tty, pid_t
  		return -ENOTTY;
  	if (get_user(pgrp_nr, p))
  		return -EFAULT;
@@ -1581,9 +1645,10 @@ diff -NurpP --minimal linux-3.4.48/drivers/tty/tty_io.c linux-3.4.48-vs2.3.3.9/d
  	if (pgrp_nr < 0)
  		return -EINVAL;
  	rcu_read_lock();
-diff -NurpP --minimal linux-3.4.48/fs/attr.c linux-3.4.48-vs2.3.3.9/fs/attr.c
---- linux-3.4.48/fs/attr.c	2013-06-13 08:59:31.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/attr.c	2012-06-28 14:45:07.000000000 +0000
+diff --git a/fs/attr.c b/fs/attr.c
+index d94d1b6..465c795 100644
+--- a/fs/attr.c
++++ b/fs/attr.c
 @@ -14,6 +14,9 @@
  #include <linux/fcntl.h>
  #include <linux/security.h>
@@ -1594,7 +1659,7 @@ diff -NurpP --minimal linux-3.4.48/fs/attr.c linux-3.4.48-vs2.3.3.9/fs/attr.c
  
  /**
   * inode_change_ok - check if attribute changes to an inode are allowed
-@@ -74,6 +77,10 @@ int inode_change_ok(const struct inode *
+@@ -74,6 +77,10 @@ int inode_change_ok(const struct inode *inode, struct iattr *attr)
  			return -EPERM;
  	}
  
@@ -1605,7 +1670,7 @@ diff -NurpP --minimal linux-3.4.48/fs/attr.c linux-3.4.48-vs2.3.3.9/fs/attr.c
  	return 0;
  }
  EXPORT_SYMBOL(inode_change_ok);
-@@ -144,6 +151,8 @@ void setattr_copy(struct inode *inode, c
+@@ -144,6 +151,8 @@ void setattr_copy(struct inode *inode, const struct iattr *attr)
  		inode->i_uid = attr->ia_uid;
  	if (ia_valid & ATTR_GID)
  		inode->i_gid = attr->ia_gid;
@@ -1614,7 +1679,7 @@ diff -NurpP --minimal linux-3.4.48/fs/attr.c linux-3.4.48-vs2.3.3.9/fs/attr.c
  	if (ia_valid & ATTR_ATIME)
  		inode->i_atime = timespec_trunc(attr->ia_atime,
  						inode->i_sb->s_time_gran);
-@@ -171,7 +180,8 @@ int notify_change(struct dentry * dentry
+@@ -171,7 +180,8 @@ int notify_change(struct dentry * dentry, struct iattr * attr)
  	struct timespec now;
  	unsigned int ia_valid = attr->ia_valid;
  
@@ -1624,9 +1689,10 @@ diff -NurpP --minimal linux-3.4.48/fs/attr.c linux-3.4.48-vs2.3.3.9/fs/attr.c
  		if (IS_IMMUTABLE(inode) || IS_APPEND(inode))
  			return -EPERM;
  	}
-diff -NurpP --minimal linux-3.4.48/fs/block_dev.c linux-3.4.48-vs2.3.3.9/fs/block_dev.c
---- linux-3.4.48/fs/block_dev.c	2013-06-13 08:59:31.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/block_dev.c	2013-06-13 09:46:38.000000000 +0000
+diff --git a/fs/block_dev.c b/fs/block_dev.c
+index 319d9c7..98a5360 100644
+--- a/fs/block_dev.c
++++ b/fs/block_dev.c
 @@ -27,6 +27,7 @@
  #include <linux/namei.h>
  #include <linux/log2.h>
@@ -1635,7 +1701,7 @@ diff -NurpP --minimal linux-3.4.48/fs/block_dev.c linux-3.4.48-vs2.3.3.9/fs/bloc
  #include <asm/uaccess.h>
  #include "internal.h"
  
-@@ -581,6 +582,7 @@ struct block_device *bdget(dev_t dev)
+@@ -588,6 +589,7 @@ struct block_device *bdget(dev_t dev)
  		bdev->bd_invalidated = 0;
  		inode->i_mode = S_IFBLK;
  		inode->i_rdev = dev;
@@ -1643,7 +1709,7 @@ diff -NurpP --minimal linux-3.4.48/fs/block_dev.c linux-3.4.48-vs2.3.3.9/fs/bloc
  		inode->i_bdev = bdev;
  		inode->i_data.a_ops = &def_blk_aops;
  		mapping_set_gfp_mask(&inode->i_data, GFP_USER);
-@@ -627,6 +629,11 @@ EXPORT_SYMBOL(bdput);
+@@ -635,6 +637,11 @@ EXPORT_SYMBOL(bdput);
  static struct block_device *bd_acquire(struct inode *inode)
  {
  	struct block_device *bdev;
@@ -1655,7 +1721,7 @@ diff -NurpP --minimal linux-3.4.48/fs/block_dev.c linux-3.4.48-vs2.3.3.9/fs/bloc
  
  	spin_lock(&bdev_lock);
  	bdev = inode->i_bdev;
-@@ -637,7 +644,7 @@ static struct block_device *bd_acquire(s
+@@ -645,7 +652,7 @@ static struct block_device *bd_acquire(struct inode *inode)
  	}
  	spin_unlock(&bdev_lock);
  
@@ -1664,9 +1730,10 @@ diff -NurpP --minimal linux-3.4.48/fs/block_dev.c linux-3.4.48-vs2.3.3.9/fs/bloc
  	if (bdev) {
  		spin_lock(&bdev_lock);
  		if (!inode->i_bdev) {
-diff -NurpP --minimal linux-3.4.48/fs/btrfs/ctree.h linux-3.4.48-vs2.3.3.9/fs/btrfs/ctree.h
---- linux-3.4.48/fs/btrfs/ctree.h	2012-05-21 16:07:18.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/btrfs/ctree.h	2012-05-21 16:15:04.000000000 +0000
+diff --git a/fs/btrfs/ctree.h b/fs/btrfs/ctree.h
+index 8fd7233..7094fc9 100644
+--- a/fs/btrfs/ctree.h
++++ b/fs/btrfs/ctree.h
 @@ -668,11 +668,14 @@ struct btrfs_inode_item {
  	/* modification sequence number for NFS */
  	__le64 sequence;
@@ -1692,7 +1759,7 @@ diff -NurpP --minimal linux-3.4.48/fs/btrfs/ctree.h linux-3.4.48-vs2.3.3.9/fs/bt
  #define btrfs_clear_opt(o, opt)		((o) &= ~BTRFS_MOUNT_##opt)
  #define btrfs_set_opt(o, opt)		((o) |= BTRFS_MOUNT_##opt)
  #define btrfs_test_opt(root, opt)	((root)->fs_info->mount_opt & \
-@@ -1762,6 +1767,7 @@ BTRFS_SETGET_FUNCS(inode_block_group, st
+@@ -1762,6 +1767,7 @@ BTRFS_SETGET_FUNCS(inode_block_group, struct btrfs_inode_item, block_group, 64);
  BTRFS_SETGET_FUNCS(inode_nlink, struct btrfs_inode_item, nlink, 32);
  BTRFS_SETGET_FUNCS(inode_uid, struct btrfs_inode_item, uid, 32);
  BTRFS_SETGET_FUNCS(inode_gid, struct btrfs_inode_item, gid, 32);
@@ -1700,7 +1767,7 @@ diff -NurpP --minimal linux-3.4.48/fs/btrfs/ctree.h linux-3.4.48-vs2.3.3.9/fs/bt
  BTRFS_SETGET_FUNCS(inode_mode, struct btrfs_inode_item, mode, 32);
  BTRFS_SETGET_FUNCS(inode_rdev, struct btrfs_inode_item, rdev, 64);
  BTRFS_SETGET_FUNCS(inode_flags, struct btrfs_inode_item, flags, 64);
-@@ -1815,6 +1821,10 @@ BTRFS_SETGET_FUNCS(extent_flags, struct
+@@ -1815,6 +1821,10 @@ BTRFS_SETGET_FUNCS(extent_flags, struct btrfs_extent_item, flags, 64);
  
  BTRFS_SETGET_FUNCS(extent_refs_v0, struct btrfs_extent_item_v0, refs, 32);
  
@@ -1711,7 +1778,7 @@ diff -NurpP --minimal linux-3.4.48/fs/btrfs/ctree.h linux-3.4.48-vs2.3.3.9/fs/bt
  
  BTRFS_SETGET_FUNCS(tree_block_level, struct btrfs_tree_block_info, level, 8);
  
-@@ -2959,6 +2969,7 @@ extern const struct dentry_operations bt
+@@ -2959,6 +2969,7 @@ extern const struct dentry_operations btrfs_dentry_operations;
  long btrfs_ioctl(struct file *file, unsigned int cmd, unsigned long arg);
  void btrfs_update_iflags(struct inode *inode);
  void btrfs_inherit_iflags(struct inode *inode, struct inode *dir);
@@ -1719,9 +1786,10 @@ diff -NurpP --minimal linux-3.4.48/fs/btrfs/ctree.h linux-3.4.48-vs2.3.3.9/fs/bt
  int btrfs_defrag_file(struct inode *inode, struct file *file,
  		      struct btrfs_ioctl_defrag_range_args *range,
  		      u64 newer_than, unsigned long max_pages);
-diff -NurpP --minimal linux-3.4.48/fs/btrfs/disk-io.c linux-3.4.48-vs2.3.3.9/fs/btrfs/disk-io.c
---- linux-3.4.48/fs/btrfs/disk-io.c	2012-05-21 16:07:18.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/btrfs/disk-io.c	2012-05-21 16:15:04.000000000 +0000
+diff --git a/fs/btrfs/disk-io.c b/fs/btrfs/disk-io.c
+index a7ffc88..e664ffd 100644
+--- a/fs/btrfs/disk-io.c
++++ b/fs/btrfs/disk-io.c
 @@ -2083,6 +2083,9 @@ int open_ctree(struct super_block *sb,
  		goto fail_alloc;
  	}
@@ -1732,9 +1800,10 @@ diff -NurpP --minimal linux-3.4.48/fs/btrfs/disk-io.c linux-3.4.48-vs2.3.3.9/fs/
  	features = btrfs_super_incompat_flags(disk_super) &
  		~BTRFS_FEATURE_INCOMPAT_SUPP;
  	if (features) {
-diff -NurpP --minimal linux-3.4.48/fs/btrfs/inode.c linux-3.4.48-vs2.3.3.9/fs/btrfs/inode.c
---- linux-3.4.48/fs/btrfs/inode.c	2013-06-13 08:59:31.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/btrfs/inode.c	2013-06-13 09:46:38.000000000 +0000
+diff --git a/fs/btrfs/inode.c b/fs/btrfs/inode.c
+index 9e51325..c144755 100644
+--- a/fs/btrfs/inode.c
++++ b/fs/btrfs/inode.c
 @@ -39,6 +39,7 @@
  #include <linux/slab.h>
  #include <linux/ratelimit.h>
@@ -1743,7 +1812,7 @@ diff -NurpP --minimal linux-3.4.48/fs/btrfs/inode.c linux-3.4.48-vs2.3.3.9/fs/bt
  #include "compat.h"
  #include "ctree.h"
  #include "disk-io.h"
-@@ -2468,6 +2469,8 @@ static void btrfs_read_locked_inode(stru
+@@ -2482,6 +2483,8 @@ static void btrfs_read_locked_inode(struct inode *inode)
  	struct btrfs_key location;
  	int maybe_acls;
  	u32 rdev;
@@ -1752,7 +1821,7 @@ diff -NurpP --minimal linux-3.4.48/fs/btrfs/inode.c linux-3.4.48-vs2.3.3.9/fs/bt
  	int ret;
  	bool filled = false;
  
-@@ -2495,8 +2498,13 @@ static void btrfs_read_locked_inode(stru
+@@ -2509,8 +2512,13 @@ static void btrfs_read_locked_inode(struct inode *inode)
  				    struct btrfs_inode_item);
  	inode->i_mode = btrfs_inode_mode(leaf, inode_item);
  	set_nlink(inode, btrfs_inode_nlink(leaf, inode_item));
@@ -1768,7 +1837,7 @@ diff -NurpP --minimal linux-3.4.48/fs/btrfs/inode.c linux-3.4.48-vs2.3.3.9/fs/bt
  	btrfs_i_size_write(inode, btrfs_inode_size(leaf, inode_item));
  
  	tspec = btrfs_inode_atime(inode_item);
-@@ -2574,8 +2582,14 @@ static void fill_inode_item(struct btrfs
+@@ -2588,8 +2596,14 @@ static void fill_inode_item(struct btrfs_trans_handle *trans,
  			    struct btrfs_inode_item *item,
  			    struct inode *inode)
  {
@@ -1785,7 +1854,7 @@ diff -NurpP --minimal linux-3.4.48/fs/btrfs/inode.c linux-3.4.48-vs2.3.3.9/fs/bt
  	btrfs_set_inode_size(leaf, item, BTRFS_I(inode)->disk_i_size);
  	btrfs_set_inode_mode(leaf, item, inode->i_mode);
  	btrfs_set_inode_nlink(leaf, item, inode->i_nlink);
-@@ -7576,11 +7590,13 @@ static const struct inode_operations btr
+@@ -7590,11 +7604,13 @@ static const struct inode_operations btrfs_dir_inode_operations = {
  	.listxattr	= btrfs_listxattr,
  	.removexattr	= btrfs_removexattr,
  	.permission	= btrfs_permission,
@@ -1799,10 +1868,11 @@ diff -NurpP --minimal linux-3.4.48/fs/btrfs/inode.c linux-3.4.48-vs2.3.3.9/fs/bt
  	.get_acl	= btrfs_get_acl,
  };
  
-diff -NurpP --minimal linux-3.4.48/fs/btrfs/ioctl.c linux-3.4.48-vs2.3.3.9/fs/btrfs/ioctl.c
---- linux-3.4.48/fs/btrfs/ioctl.c	2012-05-21 16:07:19.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/btrfs/ioctl.c	2012-05-21 16:15:04.000000000 +0000
-@@ -71,10 +71,13 @@ static unsigned int btrfs_flags_to_ioctl
+diff --git a/fs/btrfs/ioctl.c b/fs/btrfs/ioctl.c
+index 3a65f43..4b171c2 100644
+--- a/fs/btrfs/ioctl.c
++++ b/fs/btrfs/ioctl.c
+@@ -71,10 +71,13 @@ static unsigned int btrfs_flags_to_ioctl(unsigned int flags)
  {
  	unsigned int iflags = 0;
  
@@ -1818,7 +1888,7 @@ diff -NurpP --minimal linux-3.4.48/fs/btrfs/ioctl.c linux-3.4.48-vs2.3.3.9/fs/bt
  	if (flags & BTRFS_INODE_APPEND)
  		iflags |= FS_APPEND_FL;
  	if (flags & BTRFS_INODE_NODUMP)
-@@ -91,28 +94,78 @@ static unsigned int btrfs_flags_to_ioctl
+@@ -91,28 +94,78 @@ static unsigned int btrfs_flags_to_ioctl(unsigned int flags)
  	else if (flags & BTRFS_INODE_NOCOMPRESS)
  		iflags |= FS_NOCOMP_FL;
  
@@ -1901,7 +1971,7 @@ diff -NurpP --minimal linux-3.4.48/fs/btrfs/ioctl.c linux-3.4.48-vs2.3.3.9/fs/bt
  }
  
  /*
-@@ -128,6 +181,7 @@ void btrfs_inherit_iflags(struct inode *
+@@ -128,6 +181,7 @@ void btrfs_inherit_iflags(struct inode *inode, struct inode *dir)
  		return;
  
  	flags = BTRFS_I(dir)->flags;
@@ -1909,7 +1979,7 @@ diff -NurpP --minimal linux-3.4.48/fs/btrfs/ioctl.c linux-3.4.48-vs2.3.3.9/fs/bt
  
  	if (flags & BTRFS_INODE_NOCOMPRESS) {
  		BTRFS_I(inode)->flags &= ~BTRFS_INODE_COMPRESS;
-@@ -143,6 +197,30 @@ void btrfs_inherit_iflags(struct inode *
+@@ -143,6 +197,30 @@ void btrfs_inherit_iflags(struct inode *inode, struct inode *dir)
  	btrfs_update_iflags(inode);
  }
  
@@ -1940,7 +2010,7 @@ diff -NurpP --minimal linux-3.4.48/fs/btrfs/ioctl.c linux-3.4.48-vs2.3.3.9/fs/bt
  static int btrfs_ioctl_getflags(struct file *file, void __user *arg)
  {
  	struct btrfs_inode *ip = BTRFS_I(file->f_path.dentry->d_inode);
-@@ -199,7 +277,8 @@ static int btrfs_ioctl_setflags(struct f
+@@ -199,7 +277,8 @@ static int btrfs_ioctl_setflags(struct file *file, void __user *arg)
  
  	flags = btrfs_mask_flags(inode->i_mode, flags);
  	oldflags = btrfs_flags_to_ioctl(ip->flags);
@@ -1950,7 +2020,7 @@ diff -NurpP --minimal linux-3.4.48/fs/btrfs/ioctl.c linux-3.4.48-vs2.3.3.9/fs/bt
  		if (!capable(CAP_LINUX_IMMUTABLE)) {
  			ret = -EPERM;
  			goto out_unlock;
-@@ -210,14 +289,19 @@ static int btrfs_ioctl_setflags(struct f
+@@ -210,14 +289,19 @@ static int btrfs_ioctl_setflags(struct file *file, void __user *arg)
  	if (ret)
  		goto out_unlock;
  
@@ -1974,9 +2044,10 @@ diff -NurpP --minimal linux-3.4.48/fs/btrfs/ioctl.c linux-3.4.48-vs2.3.3.9/fs/bt
  	if (flags & FS_APPEND_FL)
  		ip->flags |= BTRFS_INODE_APPEND;
  	else
-diff -NurpP --minimal linux-3.4.48/fs/btrfs/super.c linux-3.4.48-vs2.3.3.9/fs/btrfs/super.c
---- linux-3.4.48/fs/btrfs/super.c	2012-05-21 16:07:19.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/btrfs/super.c	2012-05-21 16:15:04.000000000 +0000
+diff --git a/fs/btrfs/super.c b/fs/btrfs/super.c
+index c5f8fca..847062b 100644
+--- a/fs/btrfs/super.c
++++ b/fs/btrfs/super.c
 @@ -279,7 +279,7 @@ enum {
  	Opt_no_space_cache, Opt_recovery, Opt_skip_balance,
  	Opt_check_integrity, Opt_check_integrity_including_extent_data,
@@ -1996,7 +2067,7 @@ diff -NurpP --minimal linux-3.4.48/fs/btrfs/super.c linux-3.4.48-vs2.3.3.9/fs/bt
  	{Opt_err, NULL},
  };
  
-@@ -564,6 +567,22 @@ int btrfs_parse_options(struct btrfs_roo
+@@ -564,6 +567,22 @@ int btrfs_parse_options(struct btrfs_root *root, char *options)
  				goto out;
  			}
  			break;
@@ -2019,7 +2090,7 @@ diff -NurpP --minimal linux-3.4.48/fs/btrfs/super.c linux-3.4.48-vs2.3.3.9/fs/bt
  		case Opt_err:
  			printk(KERN_INFO "btrfs: unrecognized mount option "
  			       "'%s'\n", p);
-@@ -1137,6 +1156,12 @@ static int btrfs_remount(struct super_bl
+@@ -1137,6 +1156,12 @@ static int btrfs_remount(struct super_block *sb, int *flags, char *data)
  		goto restore;
  	}
  
@@ -2032,9 +2103,10 @@ diff -NurpP --minimal linux-3.4.48/fs/btrfs/super.c linux-3.4.48-vs2.3.3.9/fs/bt
  	if ((*flags & MS_RDONLY) == (sb->s_flags & MS_RDONLY))
  		return 0;
  
-diff -NurpP --minimal linux-3.4.48/fs/char_dev.c linux-3.4.48-vs2.3.3.9/fs/char_dev.c
---- linux-3.4.48/fs/char_dev.c	2012-03-19 18:47:25.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/char_dev.c	2012-05-21 16:15:04.000000000 +0000
+diff --git a/fs/char_dev.c b/fs/char_dev.c
+index 3f152b9..b103570 100644
+--- a/fs/char_dev.c
++++ b/fs/char_dev.c
 @@ -21,6 +21,8 @@
  #include <linux/mutex.h>
  #include <linux/backing-dev.h>
@@ -2044,7 +2116,7 @@ diff -NurpP --minimal linux-3.4.48/fs/char_dev.c linux-3.4.48-vs2.3.3.9/fs/char_
  
  #include "internal.h"
  
-@@ -371,14 +373,21 @@ static int chrdev_open(struct inode *ino
+@@ -371,14 +373,21 @@ static int chrdev_open(struct inode *inode, struct file *filp)
  	struct cdev *p;
  	struct cdev *new = NULL;
  	int ret = 0;
@@ -2067,9 +2139,10 @@ diff -NurpP --minimal linux-3.4.48/fs/char_dev.c linux-3.4.48-vs2.3.3.9/fs/char_
  		if (!kobj)
  			return -ENXIO;
  		new = container_of(kobj, struct cdev, kobj);
-diff -NurpP --minimal linux-3.4.48/fs/dcache.c linux-3.4.48-vs2.3.3.9/fs/dcache.c
---- linux-3.4.48/fs/dcache.c	2013-06-13 08:59:32.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/dcache.c	2013-06-13 09:46:38.000000000 +0000
+diff --git a/fs/dcache.c b/fs/dcache.c
+index e498de2..fb162ec 100644
+--- a/fs/dcache.c
++++ b/fs/dcache.c
 @@ -37,6 +37,7 @@
  #include <linux/rculist_bl.h>
  #include <linux/prefetch.h>
@@ -2095,7 +2168,7 @@ diff -NurpP --minimal linux-3.4.48/fs/dcache.c linux-3.4.48-vs2.3.3.9/fs/dcache.
  }
  
  static inline void __dget(struct dentry *dentry)
-@@ -1258,6 +1262,9 @@ struct dentry *__d_alloc(struct super_bl
+@@ -1260,6 +1264,9 @@ struct dentry *__d_alloc(struct super_block *sb, const struct qstr *name)
  	struct dentry *dentry;
  	char *dname;
  
@@ -2105,7 +2178,7 @@ diff -NurpP --minimal linux-3.4.48/fs/dcache.c linux-3.4.48-vs2.3.3.9/fs/dcache.
  	dentry = kmem_cache_alloc(dentry_cache, GFP_KERNEL);
  	if (!dentry)
  		return NULL;
-@@ -1280,6 +1287,7 @@ struct dentry *__d_alloc(struct super_bl
+@@ -1282,6 +1289,7 @@ struct dentry *__d_alloc(struct super_block *sb, const struct qstr *name)
  
  	dentry->d_count = 1;
  	dentry->d_flags = 0;
@@ -2113,7 +2186,7 @@ diff -NurpP --minimal linux-3.4.48/fs/dcache.c linux-3.4.48-vs2.3.3.9/fs/dcache.
  	spin_lock_init(&dentry->d_lock);
  	seqcount_init(&dentry->d_seq);
  	dentry->d_inode = NULL;
-@@ -1941,6 +1949,7 @@ struct dentry *__d_lookup(struct dentry
+@@ -1943,6 +1951,7 @@ struct dentry *__d_lookup(struct dentry *parent, struct qstr *name)
  		}
  
  		dentry->d_count++;
@@ -2121,9 +2194,10 @@ diff -NurpP --minimal linux-3.4.48/fs/dcache.c linux-3.4.48-vs2.3.3.9/fs/dcache.
  		found = dentry;
  		spin_unlock(&dentry->d_lock);
  		break;
-diff -NurpP --minimal linux-3.4.48/fs/devpts/inode.c linux-3.4.48-vs2.3.3.9/fs/devpts/inode.c
---- linux-3.4.48/fs/devpts/inode.c	2012-05-21 16:07:20.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/devpts/inode.c	2012-05-21 16:15:04.000000000 +0000
+diff --git a/fs/devpts/inode.c b/fs/devpts/inode.c
+index 10f5e0b..df81cf1 100644
+--- a/fs/devpts/inode.c
++++ b/fs/devpts/inode.c
 @@ -25,6 +25,7 @@
  #include <linux/parser.h>
  #include <linux/fsnotify.h>
@@ -2154,7 +2228,7 @@ diff -NurpP --minimal linux-3.4.48/fs/devpts/inode.c linux-3.4.48-vs2.3.3.9/fs/d
  /*
   * sysctl support for setting limits on the number of Unix98 ptys allocated.
   * Otherwise one can eat up all kernel memory by opening /dev/ptmx repeatedly.
-@@ -328,6 +344,34 @@ static int devpts_show_options(struct se
+@@ -328,6 +344,34 @@ static int devpts_show_options(struct seq_file *seq, struct dentry *root)
  	return 0;
  }
  
@@ -2189,7 +2263,7 @@ diff -NurpP --minimal linux-3.4.48/fs/devpts/inode.c linux-3.4.48-vs2.3.3.9/fs/d
  static const struct super_operations devpts_sops = {
  	.statfs		= simple_statfs,
  	.remount_fs	= devpts_remount,
-@@ -371,8 +415,10 @@ devpts_fill_super(struct super_block *s,
+@@ -371,8 +415,10 @@ devpts_fill_super(struct super_block *s, void *data, int silent)
  	inode->i_mtime = inode->i_atime = inode->i_ctime = CURRENT_TIME;
  	inode->i_mode = S_IFDIR | S_IRUGO | S_IXUGO | S_IWUSR;
  	inode->i_op = &simple_dir_inode_operations;
@@ -2201,7 +2275,7 @@ diff -NurpP --minimal linux-3.4.48/fs/devpts/inode.c linux-3.4.48-vs2.3.3.9/fs/d
  
  	s->s_root = d_make_root(inode);
  	if (s->s_root)
-@@ -564,6 +610,9 @@ int devpts_pty_new(struct inode *ptmx_in
+@@ -564,6 +610,9 @@ int devpts_pty_new(struct inode *ptmx_inode, struct tty_struct *tty)
  	inode->i_gid = opts->setgid ? opts->gid : current_fsgid();
  	inode->i_mtime = inode->i_atime = inode->i_ctime = CURRENT_TIME;
  	init_special_inode(inode, S_IFCHR|opts->mode, device);
@@ -2211,10 +2285,11 @@ diff -NurpP --minimal linux-3.4.48/fs/devpts/inode.c linux-3.4.48-vs2.3.3.9/fs/d
  	inode->i_private = tty;
  	tty->driver_data = inode;
  
-diff -NurpP --minimal linux-3.4.48/fs/ext2/balloc.c linux-3.4.48-vs2.3.3.9/fs/ext2/balloc.c
---- linux-3.4.48/fs/ext2/balloc.c	2012-01-09 15:14:54.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/ext2/balloc.c	2012-05-21 16:15:04.000000000 +0000
-@@ -701,7 +701,6 @@ ext2_try_to_allocate(struct super_block
+diff --git a/fs/ext2/balloc.c b/fs/ext2/balloc.c
+index a8cbe1b..1469e14 100644
+--- a/fs/ext2/balloc.c
++++ b/fs/ext2/balloc.c
+@@ -701,7 +701,6 @@ ext2_try_to_allocate(struct super_block *sb, int group,
  			start = 0;
  		end = EXT2_BLOCKS_PER_GROUP(sb);
  	}
@@ -2222,9 +2297,10 @@ diff -NurpP --minimal linux-3.4.48/fs/ext2/balloc.c linux-3.4.48-vs2.3.3.9/fs/ex
  	BUG_ON(start > EXT2_BLOCKS_PER_GROUP(sb));
  
  repeat:
-diff -NurpP --minimal linux-3.4.48/fs/ext2/ext2.h linux-3.4.48-vs2.3.3.9/fs/ext2/ext2.h
---- linux-3.4.48/fs/ext2/ext2.h	2012-05-21 16:07:20.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/ext2/ext2.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/fs/ext2/ext2.h b/fs/ext2/ext2.h
+index 0b2b4db..0818565 100644
+--- a/fs/ext2/ext2.h
++++ b/fs/ext2/ext2.h
 @@ -244,8 +244,12 @@ struct ext2_group_desc
  #define EXT2_NOTAIL_FL			FS_NOTAIL_FL	/* file tail should not be merged */
  #define EXT2_DIRSYNC_FL			FS_DIRSYNC_FL	/* dirsync behaviour (directories only) */
@@ -2264,7 +2340,7 @@ diff -NurpP --minimal linux-3.4.48/fs/ext2/ext2.h linux-3.4.48-vs2.3.3.9/fs/ext2
  
  
  #define clear_opt(o, opt)		o &= ~EXT2_MOUNT_##opt
-@@ -757,6 +764,7 @@ extern void ext2_set_inode_flags(struct
+@@ -757,6 +764,7 @@ extern void ext2_set_inode_flags(struct inode *inode);
  extern void ext2_get_inode_flags(struct ext2_inode_info *);
  extern int ext2_fiemap(struct inode *inode, struct fiemap_extent_info *fieinfo,
  		       u64 start, u64 len);
@@ -2272,18 +2348,20 @@ diff -NurpP --minimal linux-3.4.48/fs/ext2/ext2.h linux-3.4.48-vs2.3.3.9/fs/ext2
  
  /* ioctl.c */
  extern long ext2_ioctl(struct file *, unsigned int, unsigned long);
-diff -NurpP --minimal linux-3.4.48/fs/ext2/file.c linux-3.4.48-vs2.3.3.9/fs/ext2/file.c
---- linux-3.4.48/fs/ext2/file.c	2011-10-24 16:45:27.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/ext2/file.c	2012-05-21 16:15:05.000000000 +0000
-@@ -104,4 +104,5 @@ const struct inode_operations ext2_file_
+diff --git a/fs/ext2/file.c b/fs/ext2/file.c
+index a5b3a5d..e86e897 100644
+--- a/fs/ext2/file.c
++++ b/fs/ext2/file.c
+@@ -104,4 +104,5 @@ const struct inode_operations ext2_file_inode_operations = {
  	.setattr	= ext2_setattr,
  	.get_acl	= ext2_get_acl,
  	.fiemap		= ext2_fiemap,
 +	.sync_flags	= ext2_sync_flags,
  };
-diff -NurpP --minimal linux-3.4.48/fs/ext2/ialloc.c linux-3.4.48-vs2.3.3.9/fs/ext2/ialloc.c
---- linux-3.4.48/fs/ext2/ialloc.c	2012-03-19 18:47:25.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/ext2/ialloc.c	2012-05-21 16:15:05.000000000 +0000
+diff --git a/fs/ext2/ialloc.c b/fs/ext2/ialloc.c
+index 8b15cf8..ae251a8 100644
+--- a/fs/ext2/ialloc.c
++++ b/fs/ext2/ialloc.c
 @@ -17,6 +17,7 @@
  #include <linux/backing-dev.h>
  #include <linux/buffer_head.h>
@@ -2300,9 +2378,10 @@ diff -NurpP --minimal linux-3.4.48/fs/ext2/ialloc.c linux-3.4.48-vs2.3.3.9/fs/ex
  	} else
  		inode_init_owner(inode, dir, mode);
  
-diff -NurpP --minimal linux-3.4.48/fs/ext2/inode.c linux-3.4.48-vs2.3.3.9/fs/ext2/inode.c
---- linux-3.4.48/fs/ext2/inode.c	2012-03-19 18:47:25.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/ext2/inode.c	2012-05-21 16:15:05.000000000 +0000
+diff --git a/fs/ext2/inode.c b/fs/ext2/inode.c
+index 740cad8..24137f6 100644
+--- a/fs/ext2/inode.c
++++ b/fs/ext2/inode.c
 @@ -31,6 +31,7 @@
  #include <linux/mpage.h>
  #include <linux/fiemap.h>
@@ -2311,7 +2390,7 @@ diff -NurpP --minimal linux-3.4.48/fs/ext2/inode.c linux-3.4.48-vs2.3.3.9/fs/ext
  #include "ext2.h"
  #include "acl.h"
  #include "xip.h"
-@@ -1162,7 +1163,7 @@ static void ext2_truncate_blocks(struct
+@@ -1162,7 +1163,7 @@ static void ext2_truncate_blocks(struct inode *inode, loff_t offset)
  		return;
  	if (ext2_inode_is_fast_symlink(inode))
  		return;
@@ -2320,7 +2399,7 @@ diff -NurpP --minimal linux-3.4.48/fs/ext2/inode.c linux-3.4.48-vs2.3.3.9/fs/ext
  		return;
  	__ext2_truncate_blocks(inode, offset);
  }
-@@ -1253,36 +1254,61 @@ void ext2_set_inode_flags(struct inode *
+@@ -1253,36 +1254,61 @@ void ext2_set_inode_flags(struct inode *inode)
  {
  	unsigned int flags = EXT2_I(inode)->i_flags;
  
@@ -2389,7 +2468,7 @@ diff -NurpP --minimal linux-3.4.48/fs/ext2/inode.c linux-3.4.48-vs2.3.3.9/fs/ext
  }
  
  struct inode *ext2_iget (struct super_block *sb, unsigned long ino)
-@@ -1292,6 +1318,8 @@ struct inode *ext2_iget (struct super_bl
+@@ -1292,6 +1318,8 @@ struct inode *ext2_iget (struct super_block *sb, unsigned long ino)
  	struct ext2_inode *raw_inode;
  	struct inode *inode;
  	long ret = -EIO;
@@ -2398,7 +2477,7 @@ diff -NurpP --minimal linux-3.4.48/fs/ext2/inode.c linux-3.4.48-vs2.3.3.9/fs/ext
  	int n;
  
  	inode = iget_locked(sb, ino);
-@@ -1310,12 +1338,16 @@ struct inode *ext2_iget (struct super_bl
+@@ -1310,12 +1338,16 @@ struct inode *ext2_iget (struct super_block *sb, unsigned long ino)
  	}
  
  	inode->i_mode = le16_to_cpu(raw_inode->i_mode);
@@ -2419,7 +2498,7 @@ diff -NurpP --minimal linux-3.4.48/fs/ext2/inode.c linux-3.4.48-vs2.3.3.9/fs/ext
  	set_nlink(inode, le16_to_cpu(raw_inode->i_links_count));
  	inode->i_size = le32_to_cpu(raw_inode->i_size);
  	inode->i_atime.tv_sec = (signed)le32_to_cpu(raw_inode->i_atime);
-@@ -1413,8 +1445,8 @@ static int __ext2_write_inode(struct ino
+@@ -1413,8 +1445,8 @@ static int __ext2_write_inode(struct inode *inode, int do_sync)
  	struct ext2_inode_info *ei = EXT2_I(inode);
  	struct super_block *sb = inode->i_sb;
  	ino_t ino = inode->i_ino;
@@ -2430,7 +2509,7 @@ diff -NurpP --minimal linux-3.4.48/fs/ext2/inode.c linux-3.4.48-vs2.3.3.9/fs/ext
  	struct buffer_head * bh;
  	struct ext2_inode * raw_inode = ext2_get_inode(sb, ino, &bh);
  	int n;
-@@ -1450,6 +1482,9 @@ static int __ext2_write_inode(struct ino
+@@ -1450,6 +1482,9 @@ static int __ext2_write_inode(struct inode *inode, int do_sync)
  		raw_inode->i_uid_high = 0;
  		raw_inode->i_gid_high = 0;
  	}
@@ -2440,7 +2519,7 @@ diff -NurpP --minimal linux-3.4.48/fs/ext2/inode.c linux-3.4.48-vs2.3.3.9/fs/ext
  	raw_inode->i_links_count = cpu_to_le16(inode->i_nlink);
  	raw_inode->i_size = cpu_to_le32(inode->i_size);
  	raw_inode->i_atime = cpu_to_le32(inode->i_atime.tv_sec);
-@@ -1530,7 +1565,8 @@ int ext2_setattr(struct dentry *dentry,
+@@ -1530,7 +1565,8 @@ int ext2_setattr(struct dentry *dentry, struct iattr *iattr)
  	if (is_quota_modification(inode, iattr))
  		dquot_initialize(inode);
  	if ((iattr->ia_valid & ATTR_UID && iattr->ia_uid != inode->i_uid) ||
@@ -2450,9 +2529,10 @@ diff -NurpP --minimal linux-3.4.48/fs/ext2/inode.c linux-3.4.48-vs2.3.3.9/fs/ext
  		error = dquot_transfer(inode, iattr);
  		if (error)
  			return error;
-diff -NurpP --minimal linux-3.4.48/fs/ext2/ioctl.c linux-3.4.48-vs2.3.3.9/fs/ext2/ioctl.c
---- linux-3.4.48/fs/ext2/ioctl.c	2012-03-19 18:47:25.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/ext2/ioctl.c	2012-05-21 16:15:05.000000000 +0000
+diff --git a/fs/ext2/ioctl.c b/fs/ext2/ioctl.c
+index 2de655f..f1534ec1 100644
+--- a/fs/ext2/ioctl.c
++++ b/fs/ext2/ioctl.c
 @@ -17,6 +17,16 @@
  #include <asm/uaccess.h>
  
@@ -2470,7 +2550,7 @@ diff -NurpP --minimal linux-3.4.48/fs/ext2/ioctl.c linux-3.4.48-vs2.3.3.9/fs/ext
  long ext2_ioctl(struct file *filp, unsigned int cmd, unsigned long arg)
  {
  	struct inode *inode = filp->f_dentry->d_inode;
-@@ -51,6 +61,11 @@ long ext2_ioctl(struct file *filp, unsig
+@@ -51,6 +61,11 @@ long ext2_ioctl(struct file *filp, unsigned int cmd, unsigned long arg)
  
  		flags = ext2_mask_flags(inode->i_mode, flags);
  
@@ -2482,7 +2562,7 @@ diff -NurpP --minimal linux-3.4.48/fs/ext2/ioctl.c linux-3.4.48-vs2.3.3.9/fs/ext
  		mutex_lock(&inode->i_mutex);
  		/* Is it quota file? Do not allow user to mess with it */
  		if (IS_NOQUOTA(inode)) {
-@@ -66,7 +81,9 @@ long ext2_ioctl(struct file *filp, unsig
+@@ -66,7 +81,9 @@ long ext2_ioctl(struct file *filp, unsigned int cmd, unsigned long arg)
  		 *
  		 * This test looks nicer. Thanks to Pauline Middelink
  		 */
@@ -2493,7 +2573,7 @@ diff -NurpP --minimal linux-3.4.48/fs/ext2/ioctl.c linux-3.4.48-vs2.3.3.9/fs/ext
  			if (!capable(CAP_LINUX_IMMUTABLE)) {
  				mutex_unlock(&inode->i_mutex);
  				ret = -EPERM;
-@@ -74,7 +91,7 @@ long ext2_ioctl(struct file *filp, unsig
+@@ -74,7 +91,7 @@ long ext2_ioctl(struct file *filp, unsigned int cmd, unsigned long arg)
  			}
  		}
  
@@ -2502,9 +2582,10 @@ diff -NurpP --minimal linux-3.4.48/fs/ext2/ioctl.c linux-3.4.48-vs2.3.3.9/fs/ext
  		flags |= oldflags & ~EXT2_FL_USER_MODIFIABLE;
  		ei->i_flags = flags;
  
-diff -NurpP --minimal linux-3.4.48/fs/ext2/namei.c linux-3.4.48-vs2.3.3.9/fs/ext2/namei.c
---- linux-3.4.48/fs/ext2/namei.c	2012-05-21 16:07:20.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/ext2/namei.c	2012-05-21 16:15:05.000000000 +0000
+diff --git a/fs/ext2/namei.c b/fs/ext2/namei.c
+index dffb865..e0509e7 100644
+--- a/fs/ext2/namei.c
++++ b/fs/ext2/namei.c
 @@ -32,6 +32,7 @@
  
  #include <linux/pagemap.h>
@@ -2513,7 +2594,7 @@ diff -NurpP --minimal linux-3.4.48/fs/ext2/namei.c linux-3.4.48-vs2.3.3.9/fs/ext
  #include "ext2.h"
  #include "xattr.h"
  #include "acl.h"
-@@ -73,6 +74,7 @@ static struct dentry *ext2_lookup(struct
+@@ -73,6 +74,7 @@ static struct dentry *ext2_lookup(struct inode * dir, struct dentry *dentry, str
  					(unsigned long) ino);
  			return ERR_PTR(-EIO);
  		}
@@ -2521,7 +2602,7 @@ diff -NurpP --minimal linux-3.4.48/fs/ext2/namei.c linux-3.4.48-vs2.3.3.9/fs/ext
  	}
  	return d_splice_alias(inode, dentry);
  }
-@@ -397,6 +399,7 @@ const struct inode_operations ext2_dir_i
+@@ -397,6 +399,7 @@ const struct inode_operations ext2_dir_inode_operations = {
  	.removexattr	= generic_removexattr,
  #endif
  	.setattr	= ext2_setattr,
@@ -2529,9 +2610,10 @@ diff -NurpP --minimal linux-3.4.48/fs/ext2/namei.c linux-3.4.48-vs2.3.3.9/fs/ext
  	.get_acl	= ext2_get_acl,
  };
  
-diff -NurpP --minimal linux-3.4.48/fs/ext2/super.c linux-3.4.48-vs2.3.3.9/fs/ext2/super.c
---- linux-3.4.48/fs/ext2/super.c	2012-05-21 16:07:20.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/ext2/super.c	2012-05-21 16:15:05.000000000 +0000
+diff --git a/fs/ext2/super.c b/fs/ext2/super.c
+index e1025c7..815078c 100644
+--- a/fs/ext2/super.c
++++ b/fs/ext2/super.c
 @@ -393,7 +393,8 @@ enum {
  	Opt_err_ro, Opt_nouid32, Opt_nocheck, Opt_debug,
  	Opt_oldalloc, Opt_orlov, Opt_nobh, Opt_user_xattr, Opt_nouser_xattr,
@@ -2552,7 +2634,7 @@ diff -NurpP --minimal linux-3.4.48/fs/ext2/super.c linux-3.4.48-vs2.3.3.9/fs/ext
  	{Opt_grpquota, "grpquota"},
  	{Opt_ignore, "noquota"},
  	{Opt_quota, "quota"},
-@@ -491,6 +495,20 @@ static int parse_options(char *options,
+@@ -491,6 +495,20 @@ static int parse_options(char *options, struct super_block *sb)
  		case Opt_nouid32:
  			set_opt (sbi->s_mount_opt, NO_UID32);
  			break;
@@ -2573,7 +2655,7 @@ diff -NurpP --minimal linux-3.4.48/fs/ext2/super.c linux-3.4.48-vs2.3.3.9/fs/ext
  		case Opt_nocheck:
  			clear_opt (sbi->s_mount_opt, CHECK);
  			break;
-@@ -849,6 +867,8 @@ static int ext2_fill_super(struct super_
+@@ -849,6 +867,8 @@ static int ext2_fill_super(struct super_block *sb, void *data, int silent)
  	if (!parse_options((char *) data, sb))
  		goto failed_mount;
  
@@ -2582,11 +2664,10 @@ diff -NurpP --minimal linux-3.4.48/fs/ext2/super.c linux-3.4.48-vs2.3.3.9/fs/ext
  	sb->s_flags = (sb->s_flags & ~MS_POSIXACL) |
  		((EXT2_SB(sb)->s_mount_opt & EXT2_MOUNT_POSIX_ACL) ?
  		 MS_POSIXACL : 0);
-@@ -1222,6 +1242,14 @@ static int ext2_remount (struct super_bl
- 		err = -EINVAL;
+@@ -1223,6 +1243,14 @@ static int ext2_remount (struct super_block * sb, int * flags, char * data)
  		goto restore_opts;
  	}
-+
+ 
 +	if ((sbi->s_mount_opt & EXT2_MOUNT_TAGGED) &&
 +		!(sb->s_flags & MS_TAGGED)) {
 +		printk("EXT2-fs: %s: tagging not permitted on remount.\n",
@@ -2594,12 +2675,14 @@ diff -NurpP --minimal linux-3.4.48/fs/ext2/super.c linux-3.4.48-vs2.3.3.9/fs/ext
 +		err = -EINVAL;
 +		goto restore_opts;
 +	}
- 
++
  	sb->s_flags = (sb->s_flags & ~MS_POSIXACL) |
  		((sbi->s_mount_opt & EXT2_MOUNT_POSIX_ACL) ? MS_POSIXACL : 0);
-diff -NurpP --minimal linux-3.4.48/fs/ext3/ext3.h linux-3.4.48-vs2.3.3.9/fs/ext3/ext3.h
---- linux-3.4.48/fs/ext3/ext3.h	2012-05-21 16:07:20.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/ext3/ext3.h	2012-05-21 17:13:31.000000000 +0000
+ 
+diff --git a/fs/ext3/ext3.h b/fs/ext3/ext3.h
+index b6515fd..c528674 100644
+--- a/fs/ext3/ext3.h
++++ b/fs/ext3/ext3.h
 @@ -151,10 +151,14 @@ struct ext3_group_desc
  #define EXT3_NOTAIL_FL			0x00008000 /* file tail should not be merged */
  #define EXT3_DIRSYNC_FL			0x00010000 /* dirsync behaviour (directories only) */
@@ -2643,7 +2726,7 @@ diff -NurpP --minimal linux-3.4.48/fs/ext3/ext3.h linux-3.4.48-vs2.3.3.9/fs/ext3
  
  /* Compatibility, for having both ext2_fs.h and ext3_fs.h included at once */
  #ifndef _LINUX_EXT2_FS_H
-@@ -1057,6 +1064,7 @@ extern void ext3_get_inode_flags(struct
+@@ -1057,6 +1064,7 @@ extern void ext3_get_inode_flags(struct ext3_inode_info *);
  extern void ext3_set_aops(struct inode *inode);
  extern int ext3_fiemap(struct inode *inode, struct fiemap_extent_info *fieinfo,
  		       u64 start, u64 len);
@@ -2651,19 +2734,21 @@ diff -NurpP --minimal linux-3.4.48/fs/ext3/ext3.h linux-3.4.48-vs2.3.3.9/fs/ext3
  
  /* ioctl.c */
  extern long ext3_ioctl(struct file *, unsigned int, unsigned long);
-diff -NurpP --minimal linux-3.4.48/fs/ext3/file.c linux-3.4.48-vs2.3.3.9/fs/ext3/file.c
---- linux-3.4.48/fs/ext3/file.c	2012-05-21 16:07:20.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/ext3/file.c	2012-05-21 16:15:05.000000000 +0000
-@@ -76,5 +76,6 @@ const struct inode_operations ext3_file_
+diff --git a/fs/ext3/file.c b/fs/ext3/file.c
+index 25cb413..85b15ad 100644
+--- a/fs/ext3/file.c
++++ b/fs/ext3/file.c
+@@ -76,5 +76,6 @@ const struct inode_operations ext3_file_inode_operations = {
  #endif
  	.get_acl	= ext3_get_acl,
  	.fiemap		= ext3_fiemap,
 +	.sync_flags	= ext3_sync_flags,
  };
  
-diff -NurpP --minimal linux-3.4.48/fs/ext3/ialloc.c linux-3.4.48-vs2.3.3.9/fs/ext3/ialloc.c
---- linux-3.4.48/fs/ext3/ialloc.c	2012-05-21 16:07:20.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/ext3/ialloc.c	2012-05-21 16:15:05.000000000 +0000
+diff --git a/fs/ext3/ialloc.c b/fs/ext3/ialloc.c
+index e3c39e4..babbe82 100644
+--- a/fs/ext3/ialloc.c
++++ b/fs/ext3/ialloc.c
 @@ -14,6 +14,7 @@
  
  #include <linux/quotaops.h>
@@ -2680,9 +2765,10 @@ diff -NurpP --minimal linux-3.4.48/fs/ext3/ialloc.c linux-3.4.48-vs2.3.3.9/fs/ex
  	} else
  		inode_init_owner(inode, dir, mode);
  
-diff -NurpP --minimal linux-3.4.48/fs/ext3/inode.c linux-3.4.48-vs2.3.3.9/fs/ext3/inode.c
---- linux-3.4.48/fs/ext3/inode.c	2013-06-13 08:59:32.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/ext3/inode.c	2012-09-16 18:49:11.000000000 +0000
+diff --git a/fs/ext3/inode.c b/fs/ext3/inode.c
+index aad0f39..b847ded 100644
+--- a/fs/ext3/inode.c
++++ b/fs/ext3/inode.c
 @@ -27,6 +27,8 @@
  #include <linux/writeback.h>
  #include <linux/mpage.h>
@@ -2692,7 +2778,7 @@ diff -NurpP --minimal linux-3.4.48/fs/ext3/inode.c linux-3.4.48-vs2.3.3.9/fs/ext
  #include "ext3.h"
  #include "xattr.h"
  #include "acl.h"
-@@ -2848,36 +2850,60 @@ void ext3_set_inode_flags(struct inode *
+@@ -2849,36 +2851,60 @@ void ext3_set_inode_flags(struct inode *inode)
  {
  	unsigned int flags = EXT3_I(inode)->i_flags;
  
@@ -2760,7 +2846,7 @@ diff -NurpP --minimal linux-3.4.48/fs/ext3/inode.c linux-3.4.48-vs2.3.3.9/fs/ext
  }
  
  struct inode *ext3_iget(struct super_block *sb, unsigned long ino)
-@@ -2891,6 +2917,8 @@ struct inode *ext3_iget(struct super_blo
+@@ -2892,6 +2918,8 @@ struct inode *ext3_iget(struct super_block *sb, unsigned long ino)
  	transaction_t *transaction;
  	long ret;
  	int block;
@@ -2769,7 +2855,7 @@ diff -NurpP --minimal linux-3.4.48/fs/ext3/inode.c linux-3.4.48-vs2.3.3.9/fs/ext
  
  	inode = iget_locked(sb, ino);
  	if (!inode)
-@@ -2907,12 +2935,16 @@ struct inode *ext3_iget(struct super_blo
+@@ -2908,12 +2936,16 @@ struct inode *ext3_iget(struct super_block *sb, unsigned long ino)
  	bh = iloc.bh;
  	raw_inode = ext3_raw_inode(&iloc);
  	inode->i_mode = le16_to_cpu(raw_inode->i_mode);
@@ -2790,7 +2876,7 @@ diff -NurpP --minimal linux-3.4.48/fs/ext3/inode.c linux-3.4.48-vs2.3.3.9/fs/ext
  	set_nlink(inode, le16_to_cpu(raw_inode->i_links_count));
  	inode->i_size = le32_to_cpu(raw_inode->i_size);
  	inode->i_atime.tv_sec = (signed)le32_to_cpu(raw_inode->i_atime);
-@@ -3067,6 +3099,8 @@ static int ext3_do_update_inode(handle_t
+@@ -3068,6 +3100,8 @@ static int ext3_do_update_inode(handle_t *handle,
  	struct ext3_inode *raw_inode = ext3_raw_inode(iloc);
  	struct ext3_inode_info *ei = EXT3_I(inode);
  	struct buffer_head *bh = iloc->bh;
@@ -2799,7 +2885,7 @@ diff -NurpP --minimal linux-3.4.48/fs/ext3/inode.c linux-3.4.48-vs2.3.3.9/fs/ext
  	int err = 0, rc, block;
  	int need_datasync = 0;
  	__le32 disksize;
-@@ -3083,29 +3117,32 @@ again:
+@@ -3084,29 +3118,32 @@ again:
  	ext3_get_inode_flags(ei);
  	raw_inode->i_mode = cpu_to_le16(inode->i_mode);
  	if(!(test_opt(inode->i_sb, NO_UID32))) {
@@ -2838,7 +2924,7 @@ diff -NurpP --minimal linux-3.4.48/fs/ext3/inode.c linux-3.4.48-vs2.3.3.9/fs/ext
  	raw_inode->i_links_count = cpu_to_le16(inode->i_nlink);
  	disksize = cpu_to_le32(ei->i_disksize);
  	if (disksize != raw_inode->i_size) {
-@@ -3274,7 +3311,8 @@ int ext3_setattr(struct dentry *dentry,
+@@ -3275,7 +3312,8 @@ int ext3_setattr(struct dentry *dentry, struct iattr *attr)
  	if (is_quota_modification(inode, attr))
  		dquot_initialize(inode);
  	if ((ia_valid & ATTR_UID && attr->ia_uid != inode->i_uid) ||
@@ -2848,7 +2934,7 @@ diff -NurpP --minimal linux-3.4.48/fs/ext3/inode.c linux-3.4.48-vs2.3.3.9/fs/ext
  		handle_t *handle;
  
  		/* (user+group)*(old+new) structure, inode write (sb,
-@@ -3296,6 +3334,8 @@ int ext3_setattr(struct dentry *dentry,
+@@ -3297,6 +3335,8 @@ int ext3_setattr(struct dentry *dentry, struct iattr *attr)
  			inode->i_uid = attr->ia_uid;
  		if (attr->ia_valid & ATTR_GID)
  			inode->i_gid = attr->ia_gid;
@@ -2857,9 +2943,10 @@ diff -NurpP --minimal linux-3.4.48/fs/ext3/inode.c linux-3.4.48-vs2.3.3.9/fs/ext
  		error = ext3_mark_inode_dirty(handle, inode);
  		ext3_journal_stop(handle);
  	}
-diff -NurpP --minimal linux-3.4.48/fs/ext3/ioctl.c linux-3.4.48-vs2.3.3.9/fs/ext3/ioctl.c
---- linux-3.4.48/fs/ext3/ioctl.c	2012-05-21 16:07:20.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/ext3/ioctl.c	2012-05-21 16:15:05.000000000 +0000
+diff --git a/fs/ext3/ioctl.c b/fs/ext3/ioctl.c
+index 677a5c2..0af62fd 100644
+--- a/fs/ext3/ioctl.c
++++ b/fs/ext3/ioctl.c
 @@ -12,6 +12,34 @@
  #include <asm/uaccess.h>
  #include "ext3.h"
@@ -2895,7 +2982,7 @@ diff -NurpP --minimal linux-3.4.48/fs/ext3/ioctl.c linux-3.4.48-vs2.3.3.9/fs/ext
  long ext3_ioctl(struct file *filp, unsigned int cmd, unsigned long arg)
  {
  	struct inode *inode = filp->f_dentry->d_inode;
-@@ -45,6 +73,11 @@ long ext3_ioctl(struct file *filp, unsig
+@@ -45,6 +73,11 @@ long ext3_ioctl(struct file *filp, unsigned int cmd, unsigned long arg)
  
  		flags = ext3_mask_flags(inode->i_mode, flags);
  
@@ -2907,7 +2994,7 @@ diff -NurpP --minimal linux-3.4.48/fs/ext3/ioctl.c linux-3.4.48-vs2.3.3.9/fs/ext
  		mutex_lock(&inode->i_mutex);
  
  		/* Is it quota file? Do not allow user to mess with it */
-@@ -63,7 +96,9 @@ long ext3_ioctl(struct file *filp, unsig
+@@ -63,7 +96,9 @@ long ext3_ioctl(struct file *filp, unsigned int cmd, unsigned long arg)
  		 *
  		 * This test looks nicer. Thanks to Pauline Middelink
  		 */
@@ -2918,7 +3005,7 @@ diff -NurpP --minimal linux-3.4.48/fs/ext3/ioctl.c linux-3.4.48-vs2.3.3.9/fs/ext
  			if (!capable(CAP_LINUX_IMMUTABLE))
  				goto flags_out;
  		}
-@@ -88,7 +123,7 @@ long ext3_ioctl(struct file *filp, unsig
+@@ -88,7 +123,7 @@ long ext3_ioctl(struct file *filp, unsigned int cmd, unsigned long arg)
  		if (err)
  			goto flags_err;
  
@@ -2927,9 +3014,10 @@ diff -NurpP --minimal linux-3.4.48/fs/ext3/ioctl.c linux-3.4.48-vs2.3.3.9/fs/ext
  		flags |= oldflags & ~EXT3_FL_USER_MODIFIABLE;
  		ei->i_flags = flags;
  
-diff -NurpP --minimal linux-3.4.48/fs/ext3/namei.c linux-3.4.48-vs2.3.3.9/fs/ext3/namei.c
---- linux-3.4.48/fs/ext3/namei.c	2012-05-21 16:07:20.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/ext3/namei.c	2012-05-21 16:15:05.000000000 +0000
+diff --git a/fs/ext3/namei.c b/fs/ext3/namei.c
+index fbb9b82..29ac470 100644
+--- a/fs/ext3/namei.c
++++ b/fs/ext3/namei.c
 @@ -25,6 +25,8 @@
   */
  
@@ -2939,7 +3027,7 @@ diff -NurpP --minimal linux-3.4.48/fs/ext3/namei.c linux-3.4.48-vs2.3.3.9/fs/ext
  #include "ext3.h"
  #include "namei.h"
  #include "xattr.h"
-@@ -915,6 +917,7 @@ restart:
+@@ -912,6 +914,7 @@ restart:
  					submit_bh(READ | REQ_META | REQ_PRIO,
  						  bh);
  				}
@@ -2947,7 +3035,7 @@ diff -NurpP --minimal linux-3.4.48/fs/ext3/namei.c linux-3.4.48-vs2.3.3.9/fs/ext
  			}
  		}
  		if ((bh = bh_use[ra_ptr++]) == NULL)
-@@ -2526,6 +2529,7 @@ const struct inode_operations ext3_dir_i
+@@ -2523,6 +2526,7 @@ const struct inode_operations ext3_dir_inode_operations = {
  	.listxattr	= ext3_listxattr,
  	.removexattr	= generic_removexattr,
  #endif
@@ -2955,9 +3043,10 @@ diff -NurpP --minimal linux-3.4.48/fs/ext3/namei.c linux-3.4.48-vs2.3.3.9/fs/ext
  	.get_acl	= ext3_get_acl,
  };
  
-diff -NurpP --minimal linux-3.4.48/fs/ext3/super.c linux-3.4.48-vs2.3.3.9/fs/ext3/super.c
---- linux-3.4.48/fs/ext3/super.c	2013-06-13 08:59:32.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/ext3/super.c	2013-03-30 21:29:17.000000000 +0000
+diff --git a/fs/ext3/super.c b/fs/ext3/super.c
+index ef4c812..43de0b5 100644
+--- a/fs/ext3/super.c
++++ b/fs/ext3/super.c
 @@ -820,7 +820,8 @@ enum {
  	Opt_usrjquota, Opt_grpjquota, Opt_offusrjquota, Opt_offgrpjquota,
  	Opt_jqfmt_vfsold, Opt_jqfmt_vfsv0, Opt_jqfmt_vfsv1, Opt_quota,
@@ -2978,7 +3067,7 @@ diff -NurpP --minimal linux-3.4.48/fs/ext3/super.c linux-3.4.48-vs2.3.3.9/fs/ext
  	{Opt_err, NULL},
  };
  
-@@ -1029,6 +1033,20 @@ static int parse_options (char *options,
+@@ -1029,6 +1033,20 @@ static int parse_options (char *options, struct super_block *sb,
  		case Opt_nouid32:
  			set_opt (sbi->s_mount_opt, NO_UID32);
  			break;
@@ -2999,7 +3088,7 @@ diff -NurpP --minimal linux-3.4.48/fs/ext3/super.c linux-3.4.48-vs2.3.3.9/fs/ext
  		case Opt_nocheck:
  			clear_opt (sbi->s_mount_opt, CHECK);
  			break;
-@@ -1727,6 +1745,9 @@ static int ext3_fill_super (struct super
+@@ -1727,6 +1745,9 @@ static int ext3_fill_super (struct super_block *sb, void *data, int silent)
  			    NULL, 0))
  		goto failed_mount;
  
@@ -3009,7 +3098,7 @@ diff -NurpP --minimal linux-3.4.48/fs/ext3/super.c linux-3.4.48-vs2.3.3.9/fs/ext
  	sb->s_flags = (sb->s_flags & ~MS_POSIXACL) |
  		(test_opt(sb, POSIX_ACL) ? MS_POSIXACL : 0);
  
-@@ -2608,6 +2629,14 @@ static int ext3_remount (struct super_bl
+@@ -2608,6 +2629,14 @@ static int ext3_remount (struct super_block * sb, int * flags, char * data)
  	if (test_opt(sb, ABORT))
  		ext3_abort(sb, __func__, "Abort forced by user");
  
@@ -3024,9 +3113,10 @@ diff -NurpP --minimal linux-3.4.48/fs/ext3/super.c linux-3.4.48-vs2.3.3.9/fs/ext
  	sb->s_flags = (sb->s_flags & ~MS_POSIXACL) |
  		(test_opt(sb, POSIX_ACL) ? MS_POSIXACL : 0);
  
-diff -NurpP --minimal linux-3.4.48/fs/ext4/ext4.h linux-3.4.48-vs2.3.3.9/fs/ext4/ext4.h
---- linux-3.4.48/fs/ext4/ext4.h	2013-06-13 08:59:32.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/ext4/ext4.h	2013-06-13 09:46:38.000000000 +0000
+diff --git a/fs/ext4/ext4.h b/fs/ext4/ext4.h
+index d918b55..5c847c0 100644
+--- a/fs/ext4/ext4.h
++++ b/fs/ext4/ext4.h
 @@ -380,8 +380,12 @@ struct flex_groups {
  #define EXT4_EXTENTS_FL			0x00080000 /* Inode uses extents */
  #define EXT4_EA_INODE_FL	        0x00200000 /* Inode used for large EA */
@@ -3066,7 +3156,7 @@ diff -NurpP --minimal linux-3.4.48/fs/ext4/ext4.h linux-3.4.48-vs2.3.3.9/fs/ext4
  #define EXT4_MOUNT_QUOTA		0x80000 /* Some quota option set */
  #define EXT4_MOUNT_USRQUOTA		0x100000 /* "old" user quota */
  #define EXT4_MOUNT_GRPQUOTA		0x200000 /* "old" group quota */
-@@ -2294,6 +2301,7 @@ extern int ext4_map_blocks(handle_t *han
+@@ -2294,6 +2301,7 @@ extern int ext4_map_blocks(handle_t *handle, struct inode *inode,
  			   struct ext4_map_blocks *map, int flags);
  extern int ext4_fiemap(struct inode *inode, struct fiemap_extent_info *fieinfo,
  			__u64 start, __u64 len);
@@ -3074,19 +3164,21 @@ diff -NurpP --minimal linux-3.4.48/fs/ext4/ext4.h linux-3.4.48-vs2.3.3.9/fs/ext4
  /* move_extent.c */
  extern int ext4_move_extents(struct file *o_filp, struct file *d_filp,
  			     __u64 start_orig, __u64 start_donor,
-diff -NurpP --minimal linux-3.4.48/fs/ext4/file.c linux-3.4.48-vs2.3.3.9/fs/ext4/file.c
---- linux-3.4.48/fs/ext4/file.c	2012-01-09 15:14:54.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/ext4/file.c	2012-05-21 16:15:05.000000000 +0000
-@@ -258,5 +258,6 @@ const struct inode_operations ext4_file_
+diff --git a/fs/ext4/file.c b/fs/ext4/file.c
+index cb70f18..df67251 100644
+--- a/fs/ext4/file.c
++++ b/fs/ext4/file.c
+@@ -258,5 +258,6 @@ const struct inode_operations ext4_file_inode_operations = {
  #endif
  	.get_acl	= ext4_get_acl,
  	.fiemap		= ext4_fiemap,
 +	.sync_flags	= ext4_sync_flags,
  };
  
-diff -NurpP --minimal linux-3.4.48/fs/ext4/ialloc.c linux-3.4.48-vs2.3.3.9/fs/ext4/ialloc.c
---- linux-3.4.48/fs/ext4/ialloc.c	2013-06-13 08:59:32.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/ext4/ialloc.c	2013-06-13 09:46:38.000000000 +0000
+diff --git a/fs/ext4/ialloc.c b/fs/ext4/ialloc.c
+index e42b468..d703d53 100644
+--- a/fs/ext4/ialloc.c
++++ b/fs/ext4/ialloc.c
 @@ -22,6 +22,7 @@
  #include <linux/random.h>
  #include <linux/bitops.h>
@@ -3103,9 +3195,10 @@ diff -NurpP --minimal linux-3.4.48/fs/ext4/ialloc.c linux-3.4.48-vs2.3.3.9/fs/ex
  	} else
  		inode_init_owner(inode, dir, mode);
  
-diff -NurpP --minimal linux-3.4.48/fs/ext4/inode.c linux-3.4.48-vs2.3.3.9/fs/ext4/inode.c
---- linux-3.4.48/fs/ext4/inode.c	2013-06-13 08:59:32.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/ext4/inode.c	2013-03-30 21:29:17.000000000 +0000
+diff --git a/fs/ext4/inode.c b/fs/ext4/inode.c
+index 98bff01ee..6a1b0af 100644
+--- a/fs/ext4/inode.c
++++ b/fs/ext4/inode.c
 @@ -37,6 +37,7 @@
  #include <linux/printk.h>
  #include <linux/slab.h>
@@ -3114,7 +3207,7 @@ diff -NurpP --minimal linux-3.4.48/fs/ext4/inode.c linux-3.4.48-vs2.3.3.9/fs/ext
  
  #include "ext4_jbd2.h"
  #include "xattr.h"
-@@ -3585,41 +3586,64 @@ void ext4_set_inode_flags(struct inode *
+@@ -3585,41 +3586,64 @@ void ext4_set_inode_flags(struct inode *inode)
  {
  	unsigned int flags = EXT4_I(inode)->i_flags;
  
@@ -3186,7 +3279,7 @@ diff -NurpP --minimal linux-3.4.48/fs/ext4/inode.c linux-3.4.48-vs2.3.3.9/fs/ext
  	} while (cmpxchg(&ei->i_flags, old_fl, new_fl) != old_fl);
  }
  
-@@ -3655,6 +3679,8 @@ struct inode *ext4_iget(struct super_blo
+@@ -3655,6 +3679,8 @@ struct inode *ext4_iget(struct super_block *sb, unsigned long ino)
  	journal_t *journal = EXT4_SB(sb)->s_journal;
  	long ret;
  	int block;
@@ -3195,7 +3288,7 @@ diff -NurpP --minimal linux-3.4.48/fs/ext4/inode.c linux-3.4.48-vs2.3.3.9/fs/ext
  
  	inode = iget_locked(sb, ino);
  	if (!inode)
-@@ -3670,12 +3696,16 @@ struct inode *ext4_iget(struct super_blo
+@@ -3670,12 +3696,16 @@ struct inode *ext4_iget(struct super_block *sb, unsigned long ino)
  		goto bad_inode;
  	raw_inode = ext4_raw_inode(&iloc);
  	inode->i_mode = le16_to_cpu(raw_inode->i_mode);
@@ -3216,7 +3309,7 @@ diff -NurpP --minimal linux-3.4.48/fs/ext4/inode.c linux-3.4.48-vs2.3.3.9/fs/ext
  	set_nlink(inode, le16_to_cpu(raw_inode->i_links_count));
  
  	ext4_clear_state_flags(ei);	/* Only relevant on 32-bit archs */
-@@ -3894,6 +3924,8 @@ static int ext4_do_update_inode(handle_t
+@@ -3894,6 +3924,8 @@ static int ext4_do_update_inode(handle_t *handle,
  	struct ext4_inode *raw_inode = ext4_raw_inode(iloc);
  	struct ext4_inode_info *ei = EXT4_I(inode);
  	struct buffer_head *bh = iloc->bh;
@@ -3225,7 +3318,7 @@ diff -NurpP --minimal linux-3.4.48/fs/ext4/inode.c linux-3.4.48-vs2.3.3.9/fs/ext
  	int err = 0, rc, block;
  	int need_datasync = 0;
  
-@@ -3905,29 +3937,32 @@ static int ext4_do_update_inode(handle_t
+@@ -3905,29 +3937,32 @@ static int ext4_do_update_inode(handle_t *handle,
  	ext4_get_inode_flags(ei);
  	raw_inode->i_mode = cpu_to_le16(inode->i_mode);
  	if (!(test_opt(inode->i_sb, NO_UID32))) {
@@ -3264,7 +3357,7 @@ diff -NurpP --minimal linux-3.4.48/fs/ext4/inode.c linux-3.4.48-vs2.3.3.9/fs/ext
  	raw_inode->i_links_count = cpu_to_le16(inode->i_nlink);
  
  	EXT4_INODE_SET_XTIME(i_ctime, inode, raw_inode);
-@@ -4114,7 +4149,8 @@ int ext4_setattr(struct dentry *dentry,
+@@ -4114,7 +4149,8 @@ int ext4_setattr(struct dentry *dentry, struct iattr *attr)
  	if (is_quota_modification(inode, attr))
  		dquot_initialize(inode);
  	if ((ia_valid & ATTR_UID && attr->ia_uid != inode->i_uid) ||
@@ -3274,7 +3367,7 @@ diff -NurpP --minimal linux-3.4.48/fs/ext4/inode.c linux-3.4.48-vs2.3.3.9/fs/ext
  		handle_t *handle;
  
  		/* (user+group)*(old+new) structure, inode write (sb,
-@@ -4136,6 +4172,8 @@ int ext4_setattr(struct dentry *dentry,
+@@ -4136,6 +4172,8 @@ int ext4_setattr(struct dentry *dentry, struct iattr *attr)
  			inode->i_uid = attr->ia_uid;
  		if (attr->ia_valid & ATTR_GID)
  			inode->i_gid = attr->ia_gid;
@@ -3283,9 +3376,10 @@ diff -NurpP --minimal linux-3.4.48/fs/ext4/inode.c linux-3.4.48-vs2.3.3.9/fs/ext
  		error = ext4_mark_inode_dirty(handle, inode);
  		ext4_journal_stop(handle);
  	}
-diff -NurpP --minimal linux-3.4.48/fs/ext4/ioctl.c linux-3.4.48-vs2.3.3.9/fs/ext4/ioctl.c
---- linux-3.4.48/fs/ext4/ioctl.c	2013-06-13 08:59:32.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/ext4/ioctl.c	2012-09-01 08:50:49.000000000 +0000
+diff --git a/fs/ext4/ioctl.c b/fs/ext4/ioctl.c
+index 9727522..5a219c7 100644
+--- a/fs/ext4/ioctl.c
++++ b/fs/ext4/ioctl.c
 @@ -14,12 +14,40 @@
  #include <linux/compat.h>
  #include <linux/mount.h>
@@ -3327,7 +3421,7 @@ diff -NurpP --minimal linux-3.4.48/fs/ext4/ioctl.c linux-3.4.48-vs2.3.3.9/fs/ext
  long ext4_ioctl(struct file *filp, unsigned int cmd, unsigned long arg)
  {
  	struct inode *inode = filp->f_dentry->d_inode;
-@@ -53,6 +81,11 @@ long ext4_ioctl(struct file *filp, unsig
+@@ -53,6 +81,11 @@ long ext4_ioctl(struct file *filp, unsigned int cmd, unsigned long arg)
  
  		flags = ext4_mask_flags(inode->i_mode, flags);
  
@@ -3339,7 +3433,7 @@ diff -NurpP --minimal linux-3.4.48/fs/ext4/ioctl.c linux-3.4.48-vs2.3.3.9/fs/ext
  		err = -EPERM;
  		mutex_lock(&inode->i_mutex);
  		/* Is it quota file? Do not allow user to mess with it */
-@@ -70,7 +103,9 @@ long ext4_ioctl(struct file *filp, unsig
+@@ -70,7 +103,9 @@ long ext4_ioctl(struct file *filp, unsigned int cmd, unsigned long arg)
  		 *
  		 * This test looks nicer. Thanks to Pauline Middelink
  		 */
@@ -3350,9 +3444,10 @@ diff -NurpP --minimal linux-3.4.48/fs/ext4/ioctl.c linux-3.4.48-vs2.3.3.9/fs/ext
  			if (!capable(CAP_LINUX_IMMUTABLE))
  				goto flags_out;
  		}
-diff -NurpP --minimal linux-3.4.48/fs/ext4/namei.c linux-3.4.48-vs2.3.3.9/fs/ext4/namei.c
---- linux-3.4.48/fs/ext4/namei.c	2013-06-13 08:59:32.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/ext4/namei.c	2012-10-22 13:09:53.000000000 +0000
+diff --git a/fs/ext4/namei.c b/fs/ext4/namei.c
+index 9fb3fae..1ea3cb2 100644
+--- a/fs/ext4/namei.c
++++ b/fs/ext4/namei.c
 @@ -34,6 +34,7 @@
  #include <linux/quotaops.h>
  #include <linux/buffer_head.h>
@@ -3361,7 +3456,7 @@ diff -NurpP --minimal linux-3.4.48/fs/ext4/namei.c linux-3.4.48-vs2.3.3.9/fs/ext
  #include "ext4.h"
  #include "ext4_jbd2.h"
  
-@@ -925,6 +926,7 @@ restart:
+@@ -922,6 +923,7 @@ restart:
  					ll_rw_block(READ | REQ_META | REQ_PRIO,
  						    1, &bh);
  			}
@@ -3369,7 +3464,7 @@ diff -NurpP --minimal linux-3.4.48/fs/ext4/namei.c linux-3.4.48-vs2.3.3.9/fs/ext
  		}
  		if ((bh = bh_use[ra_ptr++]) == NULL)
  			goto next;
-@@ -2591,6 +2593,7 @@ const struct inode_operations ext4_dir_i
+@@ -2588,6 +2590,7 @@ const struct inode_operations ext4_dir_inode_operations = {
  #endif
  	.get_acl	= ext4_get_acl,
  	.fiemap         = ext4_fiemap,
@@ -3377,10 +3472,11 @@ diff -NurpP --minimal linux-3.4.48/fs/ext4/namei.c linux-3.4.48-vs2.3.3.9/fs/ext
  };
  
  const struct inode_operations ext4_special_inode_operations = {
-diff -NurpP --minimal linux-3.4.48/fs/ext4/super.c linux-3.4.48-vs2.3.3.9/fs/ext4/super.c
---- linux-3.4.48/fs/ext4/super.c	2013-06-13 08:59:32.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/ext4/super.c	2013-06-13 09:46:38.000000000 +0000
-@@ -1188,6 +1188,7 @@ enum {
+diff --git a/fs/ext4/super.c b/fs/ext4/super.c
+index b93de81..f1e1f91 100644
+--- a/fs/ext4/super.c
++++ b/fs/ext4/super.c
+@@ -1191,6 +1191,7 @@ enum {
  	Opt_inode_readahead_blks, Opt_journal_ioprio,
  	Opt_dioread_nolock, Opt_dioread_lock,
  	Opt_discard, Opt_nodiscard, Opt_init_itable, Opt_noinit_itable,
@@ -3388,7 +3484,7 @@ diff -NurpP --minimal linux-3.4.48/fs/ext4/super.c linux-3.4.48-vs2.3.3.9/fs/ext
  };
  
  static const match_table_t tokens = {
-@@ -1266,6 +1267,9 @@ static const match_table_t tokens = {
+@@ -1269,6 +1270,9 @@ static const match_table_t tokens = {
  	{Opt_removed, "reservation"},	/* mount option from ext2/3 */
  	{Opt_removed, "noreservation"}, /* mount option from ext2/3 */
  	{Opt_removed, "journal=%u"},	/* mount option from ext2/3 */
@@ -3398,7 +3494,7 @@ diff -NurpP --minimal linux-3.4.48/fs/ext4/super.c linux-3.4.48-vs2.3.3.9/fs/ext
  	{Opt_err, NULL},
  };
  
-@@ -1500,6 +1504,20 @@ static int handle_mount_opt(struct super
+@@ -1503,6 +1507,20 @@ static int handle_mount_opt(struct super_block *sb, char *opt, int token,
  			return -1;
  		*journal_ioprio = IOPRIO_PRIO_VALUE(IOPRIO_CLASS_BE, arg);
  		return 1;
@@ -3419,7 +3515,7 @@ diff -NurpP --minimal linux-3.4.48/fs/ext4/super.c linux-3.4.48-vs2.3.3.9/fs/ext
  	}
  
  	for (m = ext4_mount_opts; m->token != Opt_err; m++) {
-@@ -3236,6 +3254,9 @@ static int ext4_fill_super(struct super_
+@@ -3239,6 +3257,9 @@ static int ext4_fill_super(struct super_block *sb, void *data, int silent)
  			clear_opt(sb, DELALLOC);
  	}
  
@@ -3429,7 +3525,7 @@ diff -NurpP --minimal linux-3.4.48/fs/ext4/super.c linux-3.4.48-vs2.3.3.9/fs/ext
  	sb->s_flags = (sb->s_flags & ~MS_POSIXACL) |
  		(test_opt(sb, POSIX_ACL) ? MS_POSIXACL : 0);
  
-@@ -4397,6 +4418,14 @@ static int ext4_remount(struct super_blo
+@@ -4400,6 +4421,14 @@ static int ext4_remount(struct super_block *sb, int *flags, char *data)
  	if (sbi->s_mount_flags & EXT4_MF_FS_ABORTED)
  		ext4_abort(sb, "Abort forced by user");
  
@@ -3444,9 +3540,10 @@ diff -NurpP --minimal linux-3.4.48/fs/ext4/super.c linux-3.4.48-vs2.3.3.9/fs/ext
  	sb->s_flags = (sb->s_flags & ~MS_POSIXACL) |
  		(test_opt(sb, POSIX_ACL) ? MS_POSIXACL : 0);
  
-diff -NurpP --minimal linux-3.4.48/fs/fcntl.c linux-3.4.48-vs2.3.3.9/fs/fcntl.c
---- linux-3.4.48/fs/fcntl.c	2012-05-21 16:07:20.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/fcntl.c	2012-05-21 16:15:05.000000000 +0000
+diff --git a/fs/fcntl.c b/fs/fcntl.c
+index 75e7c1f..3a725a0 100644
+--- a/fs/fcntl.c
++++ b/fs/fcntl.c
 @@ -20,6 +20,7 @@
  #include <linux/signal.h>
  #include <linux/rcupdate.h>
@@ -3455,7 +3552,7 @@ diff -NurpP --minimal linux-3.4.48/fs/fcntl.c linux-3.4.48-vs2.3.3.9/fs/fcntl.c
  
  #include <asm/poll.h>
  #include <asm/siginfo.h>
-@@ -103,6 +104,8 @@ SYSCALL_DEFINE3(dup3, unsigned int, oldf
+@@ -103,6 +104,8 @@ SYSCALL_DEFINE3(dup3, unsigned int, oldfd, unsigned int, newfd, int, flags)
  
  	if (tofree)
  		filp_close(tofree, files);
@@ -3464,7 +3561,7 @@ diff -NurpP --minimal linux-3.4.48/fs/fcntl.c linux-3.4.48-vs2.3.3.9/fs/fcntl.c
  
  	return newfd;
  
-@@ -447,6 +450,8 @@ SYSCALL_DEFINE3(fcntl, unsigned int, fd,
+@@ -447,6 +450,8 @@ SYSCALL_DEFINE3(fcntl, unsigned int, fd, unsigned int, cmd, unsigned long, arg)
  	filp = fget_raw(fd);
  	if (!filp)
  		goto out;
@@ -3473,9 +3570,10 @@ diff -NurpP --minimal linux-3.4.48/fs/fcntl.c linux-3.4.48-vs2.3.3.9/fs/fcntl.c
  
  	if (unlikely(filp->f_mode & FMODE_PATH)) {
  		if (!check_fcntl_cmd(cmd)) {
-diff -NurpP --minimal linux-3.4.48/fs/file.c linux-3.4.48-vs2.3.3.9/fs/file.c
---- linux-3.4.48/fs/file.c	2012-05-21 16:07:20.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/file.c	2012-05-21 16:15:05.000000000 +0000
+diff --git a/fs/file.c b/fs/file.c
+index ba3f605..39007e7 100644
+--- a/fs/file.c
++++ b/fs/file.c
 @@ -21,6 +21,7 @@
  #include <linux/spinlock.h>
  #include <linux/rcupdate.h>
@@ -3484,7 +3582,7 @@ diff -NurpP --minimal linux-3.4.48/fs/file.c linux-3.4.48-vs2.3.3.9/fs/file.c
  
  struct fdtable_defer {
  	spinlock_t lock;
-@@ -358,6 +359,8 @@ struct files_struct *dup_fd(struct files
+@@ -358,6 +359,8 @@ struct files_struct *dup_fd(struct files_struct *oldf, int *errorp)
  		struct file *f = *old_fds++;
  		if (f) {
  			get_file(f);
@@ -3501,9 +3599,10 @@ diff -NurpP --minimal linux-3.4.48/fs/file.c linux-3.4.48-vs2.3.3.9/fs/file.c
  #if 1
  	/* Sanity check */
  	if (rcu_dereference_raw(fdt->fd[fd]) != NULL) {
-diff -NurpP --minimal linux-3.4.48/fs/file_table.c linux-3.4.48-vs2.3.3.9/fs/file_table.c
---- linux-3.4.48/fs/file_table.c	2012-05-21 16:07:20.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/file_table.c	2012-05-21 16:15:05.000000000 +0000
+diff --git a/fs/file_table.c b/fs/file_table.c
+index 70f2a0f..ba4daef 100644
+--- a/fs/file_table.c
++++ b/fs/file_table.c
 @@ -24,6 +24,8 @@
  #include <linux/percpu_counter.h>
  #include <linux/percpu.h>
@@ -3540,9 +3639,10 @@ diff -NurpP --minimal linux-3.4.48/fs/file_table.c linux-3.4.48-vs2.3.3.9/fs/fil
  		file_sb_list_del(file);
  		file_free(file);
  	}
-diff -NurpP --minimal linux-3.4.48/fs/fs_struct.c linux-3.4.48-vs2.3.3.9/fs/fs_struct.c
---- linux-3.4.48/fs/fs_struct.c	2012-05-21 16:07:20.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/fs_struct.c	2012-05-21 16:15:05.000000000 +0000
+diff --git a/fs/fs_struct.c b/fs/fs_struct.c
+index e159e68..35a252d 100644
+--- a/fs/fs_struct.c
++++ b/fs/fs_struct.c
 @@ -4,6 +4,7 @@
  #include <linux/path.h>
  #include <linux/slab.h>
@@ -3551,7 +3651,7 @@ diff -NurpP --minimal linux-3.4.48/fs/fs_struct.c linux-3.4.48-vs2.3.3.9/fs/fs_s
  #include "internal.h"
  
  static inline void path_get_longterm(struct path *path)
-@@ -99,6 +100,7 @@ void free_fs_struct(struct fs_struct *fs
+@@ -99,6 +100,7 @@ void free_fs_struct(struct fs_struct *fs)
  {
  	path_put_longterm(&fs->root);
  	path_put_longterm(&fs->pwd);
@@ -3559,7 +3659,7 @@ diff -NurpP --minimal linux-3.4.48/fs/fs_struct.c linux-3.4.48-vs2.3.3.9/fs/fs_s
  	kmem_cache_free(fs_cachep, fs);
  }
  
-@@ -136,6 +138,7 @@ struct fs_struct *copy_fs_struct(struct
+@@ -136,6 +138,7 @@ struct fs_struct *copy_fs_struct(struct fs_struct *old)
  		fs->pwd = old->pwd;
  		path_get_longterm(&fs->pwd);
  		spin_unlock(&old->lock);
@@ -3567,9 +3667,10 @@ diff -NurpP --minimal linux-3.4.48/fs/fs_struct.c linux-3.4.48-vs2.3.3.9/fs/fs_s
  	}
  	return fs;
  }
-diff -NurpP --minimal linux-3.4.48/fs/gfs2/file.c linux-3.4.48-vs2.3.3.9/fs/gfs2/file.c
---- linux-3.4.48/fs/gfs2/file.c	2012-05-21 16:07:20.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/gfs2/file.c	2012-05-21 16:15:05.000000000 +0000
+diff --git a/fs/gfs2/file.c b/fs/gfs2/file.c
+index a3d2c9e..b089632 100644
+--- a/fs/gfs2/file.c
++++ b/fs/gfs2/file.c
 @@ -142,6 +142,9 @@ static const u32 fsflags_to_gfs2[32] = {
  	[7] = GFS2_DIF_NOATIME,
  	[12] = GFS2_DIF_EXHASH,
@@ -3590,7 +3691,7 @@ diff -NurpP --minimal linux-3.4.48/fs/gfs2/file.c linux-3.4.48-vs2.3.3.9/fs/gfs2
  };
  
  static int gfs2_get_flags(struct file *filp, u32 __user *ptr)
-@@ -181,12 +187,18 @@ void gfs2_set_inode_flags(struct inode *
+@@ -181,12 +187,18 @@ void gfs2_set_inode_flags(struct inode *inode)
  {
  	struct gfs2_inode *ip = GFS2_I(inode);
  	unsigned int flags = inode->i_flags;
@@ -3610,7 +3711,7 @@ diff -NurpP --minimal linux-3.4.48/fs/gfs2/file.c linux-3.4.48-vs2.3.3.9/fs/gfs2
  	if (ip->i_diskflags & GFS2_DIF_APPENDONLY)
  		flags |= S_APPEND;
  	if (ip->i_diskflags & GFS2_DIF_NOATIME)
-@@ -194,6 +206,43 @@ void gfs2_set_inode_flags(struct inode *
+@@ -194,6 +206,43 @@ void gfs2_set_inode_flags(struct inode *inode)
  	if (ip->i_diskflags & GFS2_DIF_SYNC)
  		flags |= S_SYNC;
  	inode->i_flags = flags;
@@ -3654,7 +3755,7 @@ diff -NurpP --minimal linux-3.4.48/fs/gfs2/file.c linux-3.4.48-vs2.3.3.9/fs/gfs2
  }
  
  /* Flags that can be set by user space */
-@@ -305,6 +354,37 @@ static int gfs2_set_flags(struct file *f
+@@ -305,6 +354,37 @@ static int gfs2_set_flags(struct file *filp, u32 __user *ptr)
  	return do_gfs2_set_flags(filp, gfsflags, ~GFS2_DIF_JDATA);
  }
  
@@ -3692,10 +3793,11 @@ diff -NurpP --minimal linux-3.4.48/fs/gfs2/file.c linux-3.4.48-vs2.3.3.9/fs/gfs2
  static long gfs2_ioctl(struct file *filp, unsigned int cmd, unsigned long arg)
  {
  	switch(cmd) {
-diff -NurpP --minimal linux-3.4.48/fs/gfs2/inode.h linux-3.4.48-vs2.3.3.9/fs/gfs2/inode.h
---- linux-3.4.48/fs/gfs2/inode.h	2012-01-09 15:14:54.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/gfs2/inode.h	2012-05-21 16:15:05.000000000 +0000
-@@ -120,6 +120,7 @@ extern const struct file_operations gfs2
+diff --git a/fs/gfs2/inode.h b/fs/gfs2/inode.h
+index 276e7b5..c43c053 100644
+--- a/fs/gfs2/inode.h
++++ b/fs/gfs2/inode.h
+@@ -120,6 +120,7 @@ extern const struct file_operations gfs2_file_fops_nolock;
  extern const struct file_operations gfs2_dir_fops_nolock;
  
  extern void gfs2_set_inode_flags(struct inode *inode);
@@ -3703,9 +3805,10 @@ diff -NurpP --minimal linux-3.4.48/fs/gfs2/inode.h linux-3.4.48-vs2.3.3.9/fs/gfs
   
  #ifdef CONFIG_GFS2_FS_LOCKING_DLM
  extern const struct file_operations gfs2_file_fops;
-diff -NurpP --minimal linux-3.4.48/fs/inode.c linux-3.4.48-vs2.3.3.9/fs/inode.c
---- linux-3.4.48/fs/inode.c	2012-05-21 16:07:24.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/inode.c	2013-06-13 09:46:38.000000000 +0000
+diff --git a/fs/inode.c b/fs/inode.c
+index 8de457e..3e643c3 100644
+--- a/fs/inode.c
++++ b/fs/inode.c
 @@ -17,6 +17,7 @@
  #include <linux/prefetch.h>
  #include <linux/buffer_head.h> /* for inode_has_buffers */
@@ -3714,7 +3817,7 @@ diff -NurpP --minimal linux-3.4.48/fs/inode.c linux-3.4.48-vs2.3.3.9/fs/inode.c
  #include "internal.h"
  
  /*
-@@ -128,6 +129,9 @@ int inode_init_always(struct super_block
+@@ -128,6 +129,9 @@ int inode_init_always(struct super_block *sb, struct inode *inode)
  	struct address_space *const mapping = &inode->i_data;
  
  	inode->i_sb = sb;
@@ -3724,7 +3827,7 @@ diff -NurpP --minimal linux-3.4.48/fs/inode.c linux-3.4.48-vs2.3.3.9/fs/inode.c
  	inode->i_blkbits = sb->s_blocksize_bits;
  	inode->i_flags = 0;
  	atomic_set(&inode->i_count, 1);
-@@ -149,6 +153,7 @@ int inode_init_always(struct super_block
+@@ -149,6 +153,7 @@ int inode_init_always(struct super_block *sb, struct inode *inode)
  	inode->i_bdev = NULL;
  	inode->i_cdev = NULL;
  	inode->i_rdev = 0;
@@ -3732,7 +3835,7 @@ diff -NurpP --minimal linux-3.4.48/fs/inode.c linux-3.4.48-vs2.3.3.9/fs/inode.c
  	inode->dirtied_when = 0;
  
  	if (security_inode_alloc(inode))
-@@ -470,6 +475,8 @@ void __insert_inode_hash(struct inode *i
+@@ -470,6 +475,8 @@ void __insert_inode_hash(struct inode *inode, unsigned long hashval)
  }
  EXPORT_SYMBOL(__insert_inode_hash);
  
@@ -3741,7 +3844,7 @@ diff -NurpP --minimal linux-3.4.48/fs/inode.c linux-3.4.48-vs2.3.3.9/fs/inode.c
  /**
   *	__remove_inode_hash - remove an inode from the hash
   *	@inode: inode to unhash
-@@ -1689,9 +1696,11 @@ void init_special_inode(struct inode *in
+@@ -1689,9 +1696,11 @@ void init_special_inode(struct inode *inode, umode_t mode, dev_t rdev)
  	if (S_ISCHR(mode)) {
  		inode->i_fop = &def_chr_fops;
  		inode->i_rdev = rdev;
@@ -3753,7 +3856,7 @@ diff -NurpP --minimal linux-3.4.48/fs/inode.c linux-3.4.48-vs2.3.3.9/fs/inode.c
  	} else if (S_ISFIFO(mode))
  		inode->i_fop = &def_fifo_fops;
  	else if (S_ISSOCK(mode))
-@@ -1720,6 +1729,7 @@ void inode_init_owner(struct inode *inod
+@@ -1720,6 +1729,7 @@ void inode_init_owner(struct inode *inode, const struct inode *dir,
  	} else
  		inode->i_gid = current_fsgid();
  	inode->i_mode = mode;
@@ -3761,9 +3864,10 @@ diff -NurpP --minimal linux-3.4.48/fs/inode.c linux-3.4.48-vs2.3.3.9/fs/inode.c
  }
  EXPORT_SYMBOL(inode_init_owner);
  
-diff -NurpP --minimal linux-3.4.48/fs/ioctl.c linux-3.4.48-vs2.3.3.9/fs/ioctl.c
---- linux-3.4.48/fs/ioctl.c	2012-05-21 16:07:24.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/ioctl.c	2012-05-21 16:15:05.000000000 +0000
+diff --git a/fs/ioctl.c b/fs/ioctl.c
+index 29167be..dcc2ab9 100644
+--- a/fs/ioctl.c
++++ b/fs/ioctl.c
 @@ -15,6 +15,9 @@
  #include <linux/writeback.h>
  #include <linux/buffer_head.h>
@@ -3774,9 +3878,10 @@ diff -NurpP --minimal linux-3.4.48/fs/ioctl.c linux-3.4.48-vs2.3.3.9/fs/ioctl.c
  
  #include <asm/ioctls.h>
  
-diff -NurpP --minimal linux-3.4.48/fs/ioprio.c linux-3.4.48-vs2.3.3.9/fs/ioprio.c
---- linux-3.4.48/fs/ioprio.c	2012-03-19 18:47:25.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/ioprio.c	2012-05-21 16:15:05.000000000 +0000
+diff --git a/fs/ioprio.c b/fs/ioprio.c
+index 0f1b951..a90276f 100644
+--- a/fs/ioprio.c
++++ b/fs/ioprio.c
 @@ -28,6 +28,7 @@
  #include <linux/syscalls.h>
  #include <linux/security.h>
@@ -3785,7 +3890,7 @@ diff -NurpP --minimal linux-3.4.48/fs/ioprio.c linux-3.4.48-vs2.3.3.9/fs/ioprio.
  
  int set_task_ioprio(struct task_struct *task, int ioprio)
  {
-@@ -104,6 +105,8 @@ SYSCALL_DEFINE3(ioprio_set, int, which,
+@@ -104,6 +105,8 @@ SYSCALL_DEFINE3(ioprio_set, int, which, int, who, int, ioprio)
  			else
  				pgrp = find_vpid(who);
  			do_each_pid_thread(pgrp, PIDTYPE_PGID, p) {
@@ -3794,7 +3899,7 @@ diff -NurpP --minimal linux-3.4.48/fs/ioprio.c linux-3.4.48-vs2.3.3.9/fs/ioprio.
  				ret = set_task_ioprio(p, ioprio);
  				if (ret)
  					break;
-@@ -193,6 +196,8 @@ SYSCALL_DEFINE2(ioprio_get, int, which,
+@@ -193,6 +196,8 @@ SYSCALL_DEFINE2(ioprio_get, int, which, int, who)
  			else
  				pgrp = find_vpid(who);
  			do_each_pid_thread(pgrp, PIDTYPE_PGID, p) {
@@ -3803,10 +3908,11 @@ diff -NurpP --minimal linux-3.4.48/fs/ioprio.c linux-3.4.48-vs2.3.3.9/fs/ioprio.
  				tmpio = get_task_ioprio(p);
  				if (tmpio < 0)
  					continue;
-diff -NurpP --minimal linux-3.4.48/fs/jfs/file.c linux-3.4.48-vs2.3.3.9/fs/jfs/file.c
---- linux-3.4.48/fs/jfs/file.c	2011-10-24 16:45:27.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/jfs/file.c	2012-05-21 16:15:05.000000000 +0000
-@@ -109,7 +109,8 @@ int jfs_setattr(struct dentry *dentry, s
+diff --git a/fs/jfs/file.c b/fs/jfs/file.c
+index 844f946..8af7d86 100644
+--- a/fs/jfs/file.c
++++ b/fs/jfs/file.c
+@@ -109,7 +109,8 @@ int jfs_setattr(struct dentry *dentry, struct iattr *iattr)
  	if (is_quota_modification(inode, iattr))
  		dquot_initialize(inode);
  	if ((iattr->ia_valid & ATTR_UID && iattr->ia_uid != inode->i_uid) ||
@@ -3816,7 +3922,7 @@ diff -NurpP --minimal linux-3.4.48/fs/jfs/file.c linux-3.4.48-vs2.3.3.9/fs/jfs/f
  		rc = dquot_transfer(inode, iattr);
  		if (rc)
  			return rc;
-@@ -142,6 +143,7 @@ const struct inode_operations jfs_file_i
+@@ -142,6 +143,7 @@ const struct inode_operations jfs_file_inode_operations = {
  #ifdef CONFIG_JFS_POSIX_ACL
  	.get_acl	= jfs_get_acl,
  #endif
@@ -3824,9 +3930,10 @@ diff -NurpP --minimal linux-3.4.48/fs/jfs/file.c linux-3.4.48-vs2.3.3.9/fs/jfs/f
  };
  
  const struct file_operations jfs_file_operations = {
-diff -NurpP --minimal linux-3.4.48/fs/jfs/ioctl.c linux-3.4.48-vs2.3.3.9/fs/jfs/ioctl.c
---- linux-3.4.48/fs/jfs/ioctl.c	2012-03-19 18:47:25.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/jfs/ioctl.c	2012-05-21 16:15:05.000000000 +0000
+diff --git a/fs/jfs/ioctl.c b/fs/jfs/ioctl.c
+index f19d1e0..db57624 100644
+--- a/fs/jfs/ioctl.c
++++ b/fs/jfs/ioctl.c
 @@ -11,6 +11,7 @@
  #include <linux/mount.h>
  #include <linux/time.h>
@@ -3835,7 +3942,7 @@ diff -NurpP --minimal linux-3.4.48/fs/jfs/ioctl.c linux-3.4.48-vs2.3.3.9/fs/jfs/
  #include <asm/current.h>
  #include <asm/uaccess.h>
  
-@@ -52,6 +53,16 @@ static long jfs_map_ext2(unsigned long f
+@@ -52,6 +53,16 @@ static long jfs_map_ext2(unsigned long flags, int from)
  }
  
  
@@ -3852,7 +3959,7 @@ diff -NurpP --minimal linux-3.4.48/fs/jfs/ioctl.c linux-3.4.48-vs2.3.3.9/fs/jfs/
  long jfs_ioctl(struct file *filp, unsigned int cmd, unsigned long arg)
  {
  	struct inode *inode = filp->f_dentry->d_inode;
-@@ -85,6 +96,11 @@ long jfs_ioctl(struct file *filp, unsign
+@@ -85,6 +96,11 @@ long jfs_ioctl(struct file *filp, unsigned int cmd, unsigned long arg)
  		if (!S_ISDIR(inode->i_mode))
  			flags &= ~JFS_DIRSYNC_FL;
  
@@ -3864,7 +3971,7 @@ diff -NurpP --minimal linux-3.4.48/fs/jfs/ioctl.c linux-3.4.48-vs2.3.3.9/fs/jfs/
  		/* Is it quota file? Do not allow user to mess with it */
  		if (IS_NOQUOTA(inode)) {
  			err = -EPERM;
-@@ -102,8 +118,8 @@ long jfs_ioctl(struct file *filp, unsign
+@@ -102,8 +118,8 @@ long jfs_ioctl(struct file *filp, unsigned int cmd, unsigned long arg)
  		 * the relevant capability.
  		 */
  		if ((oldflags & JFS_IMMUTABLE_FL) ||
@@ -3875,7 +3982,7 @@ diff -NurpP --minimal linux-3.4.48/fs/jfs/ioctl.c linux-3.4.48-vs2.3.3.9/fs/jfs/
  			if (!capable(CAP_LINUX_IMMUTABLE)) {
  				mutex_unlock(&inode->i_mutex);
  				err = -EPERM;
-@@ -111,7 +127,7 @@ long jfs_ioctl(struct file *filp, unsign
+@@ -111,7 +127,7 @@ long jfs_ioctl(struct file *filp, unsigned int cmd, unsigned long arg)
  			}
  		}
  
@@ -3884,9 +3991,10 @@ diff -NurpP --minimal linux-3.4.48/fs/jfs/ioctl.c linux-3.4.48-vs2.3.3.9/fs/jfs/
  		flags |= oldflags & ~JFS_FL_USER_MODIFIABLE;
  		jfs_inode->mode2 = flags;
  
-diff -NurpP --minimal linux-3.4.48/fs/jfs/jfs_dinode.h linux-3.4.48-vs2.3.3.9/fs/jfs/jfs_dinode.h
---- linux-3.4.48/fs/jfs/jfs_dinode.h	2008-12-24 23:26:37.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/jfs/jfs_dinode.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/fs/jfs/jfs_dinode.h b/fs/jfs/jfs_dinode.h
+index 395c4c0..c3dabc1 100644
+--- a/fs/jfs/jfs_dinode.h
++++ b/fs/jfs/jfs_dinode.h
 @@ -161,9 +161,13 @@ struct dinode {
  
  #define JFS_APPEND_FL		0x01000000 /* writes to file may only append */
@@ -3903,9 +4011,10 @@ diff -NurpP --minimal linux-3.4.48/fs/jfs/jfs_dinode.h linux-3.4.48-vs2.3.3.9/fs
  #define JFS_FL_INHERIT		0x03C80000
  
  /* These are identical to EXT[23]_IOC_GETFLAGS/SETFLAGS */
-diff -NurpP --minimal linux-3.4.48/fs/jfs/jfs_filsys.h linux-3.4.48-vs2.3.3.9/fs/jfs/jfs_filsys.h
---- linux-3.4.48/fs/jfs/jfs_filsys.h	2008-12-24 23:26:37.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/jfs/jfs_filsys.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/fs/jfs/jfs_filsys.h b/fs/jfs/jfs_filsys.h
+index b3f5463..b8b38a7e 100644
+--- a/fs/jfs/jfs_filsys.h
++++ b/fs/jfs/jfs_filsys.h
 @@ -263,6 +263,7 @@
  #define JFS_NAME_MAX	255
  #define JFS_PATH_MAX	BPSIZE
@@ -3914,9 +4023,10 @@ diff -NurpP --minimal linux-3.4.48/fs/jfs/jfs_filsys.h linux-3.4.48-vs2.3.3.9/fs
  
  /*
   *	file system state (superblock state)
-diff -NurpP --minimal linux-3.4.48/fs/jfs/jfs_imap.c linux-3.4.48-vs2.3.3.9/fs/jfs/jfs_imap.c
---- linux-3.4.48/fs/jfs/jfs_imap.c	2012-01-09 15:14:54.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/jfs/jfs_imap.c	2012-05-21 16:15:05.000000000 +0000
+diff --git a/fs/jfs/jfs_imap.c b/fs/jfs/jfs_imap.c
+index 1b6f15f..2d5a0b4 100644
+--- a/fs/jfs/jfs_imap.c
++++ b/fs/jfs/jfs_imap.c
 @@ -46,6 +46,7 @@
  #include <linux/pagemap.h>
  #include <linux/quotaops.h>
@@ -3925,7 +4035,7 @@ diff -NurpP --minimal linux-3.4.48/fs/jfs/jfs_imap.c linux-3.4.48-vs2.3.3.9/fs/j
  
  #include "jfs_incore.h"
  #include "jfs_inode.h"
-@@ -3058,6 +3059,8 @@ static int copy_from_dinode(struct dinod
+@@ -3058,6 +3059,8 @@ static int copy_from_dinode(struct dinode * dip, struct inode *ip)
  {
  	struct jfs_inode_info *jfs_ip = JFS_IP(ip);
  	struct jfs_sb_info *sbi = JFS_SBI(ip->i_sb);
@@ -3934,7 +4044,7 @@ diff -NurpP --minimal linux-3.4.48/fs/jfs/jfs_imap.c linux-3.4.48-vs2.3.3.9/fs/j
  
  	jfs_ip->fileset = le32_to_cpu(dip->di_fileset);
  	jfs_ip->mode2 = le32_to_cpu(dip->di_mode);
-@@ -3078,14 +3081,18 @@ static int copy_from_dinode(struct dinod
+@@ -3078,14 +3081,18 @@ static int copy_from_dinode(struct dinode * dip, struct inode *ip)
  	}
  	set_nlink(ip, le32_to_cpu(dip->di_nlink));
  
@@ -3955,7 +4065,7 @@ diff -NurpP --minimal linux-3.4.48/fs/jfs/jfs_imap.c linux-3.4.48-vs2.3.3.9/fs/j
  	if (sbi->gid == -1)
  		ip->i_gid = jfs_ip->saved_gid;
  	else {
-@@ -3150,14 +3157,12 @@ static void copy_to_dinode(struct dinode
+@@ -3150,14 +3157,12 @@ static void copy_to_dinode(struct dinode * dip, struct inode *ip)
  	dip->di_size = cpu_to_le64(ip->i_size);
  	dip->di_nblocks = cpu_to_le64(PBLK2LBLK(ip->i_sb, ip->i_blocks));
  	dip->di_nlink = cpu_to_le32(ip->i_nlink);
@@ -3976,9 +4086,10 @@ diff -NurpP --minimal linux-3.4.48/fs/jfs/jfs_imap.c linux-3.4.48-vs2.3.3.9/fs/j
  	jfs_get_inode_flags(jfs_ip);
  	/*
  	 * mode2 is only needed for storing the higher order bits.
-diff -NurpP --minimal linux-3.4.48/fs/jfs/jfs_inode.c linux-3.4.48-vs2.3.3.9/fs/jfs/jfs_inode.c
---- linux-3.4.48/fs/jfs/jfs_inode.c	2012-01-09 15:14:54.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/jfs/jfs_inode.c	2012-05-21 16:15:05.000000000 +0000
+diff --git a/fs/jfs/jfs_inode.c b/fs/jfs/jfs_inode.c
+index c1a3e60..3f86fe5 100644
+--- a/fs/jfs/jfs_inode.c
++++ b/fs/jfs/jfs_inode.c
 @@ -18,6 +18,7 @@
  
  #include <linux/fs.h>
@@ -3987,7 +4098,7 @@ diff -NurpP --minimal linux-3.4.48/fs/jfs/jfs_inode.c linux-3.4.48-vs2.3.3.9/fs/
  #include "jfs_incore.h"
  #include "jfs_inode.h"
  #include "jfs_filsys.h"
-@@ -30,29 +31,46 @@ void jfs_set_inode_flags(struct inode *i
+@@ -30,29 +31,46 @@ void jfs_set_inode_flags(struct inode *inode)
  {
  	unsigned int flags = JFS_IP(inode)->mode2;
  
@@ -4040,7 +4151,7 @@ diff -NurpP --minimal linux-3.4.48/fs/jfs/jfs_inode.c linux-3.4.48-vs2.3.3.9/fs/
  	if (flags & S_APPEND)
  		jfs_ip->mode2 |= JFS_APPEND_FL;
  	if (flags & S_NOATIME)
-@@ -61,6 +79,11 @@ void jfs_get_inode_flags(struct jfs_inod
+@@ -61,6 +79,11 @@ void jfs_get_inode_flags(struct jfs_inode_info *jfs_ip)
  		jfs_ip->mode2 |= JFS_DIRSYNC_FL;
  	if (flags & S_SYNC)
  		jfs_ip->mode2 |= JFS_SYNC_FL;
@@ -4052,10 +4163,11 @@ diff -NurpP --minimal linux-3.4.48/fs/jfs/jfs_inode.c linux-3.4.48-vs2.3.3.9/fs/
  }
  
  /*
-diff -NurpP --minimal linux-3.4.48/fs/jfs/jfs_inode.h linux-3.4.48-vs2.3.3.9/fs/jfs/jfs_inode.h
---- linux-3.4.48/fs/jfs/jfs_inode.h	2011-10-24 16:45:27.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/jfs/jfs_inode.h	2012-05-21 16:15:05.000000000 +0000
-@@ -39,6 +39,7 @@ extern struct dentry *jfs_fh_to_dentry(s
+diff --git a/fs/jfs/jfs_inode.h b/fs/jfs/jfs_inode.h
+index 9271cfe4..ccfdb60 100644
+--- a/fs/jfs/jfs_inode.h
++++ b/fs/jfs/jfs_inode.h
+@@ -39,6 +39,7 @@ extern struct dentry *jfs_fh_to_dentry(struct super_block *sb, struct fid *fid,
  extern struct dentry *jfs_fh_to_parent(struct super_block *sb, struct fid *fid,
  	int fh_len, int fh_type);
  extern void jfs_set_inode_flags(struct inode *);
@@ -4063,9 +4175,10 @@ diff -NurpP --minimal linux-3.4.48/fs/jfs/jfs_inode.h linux-3.4.48-vs2.3.3.9/fs/
  extern int jfs_get_block(struct inode *, sector_t, struct buffer_head *, int);
  extern int jfs_setattr(struct dentry *, struct iattr *);
  
-diff -NurpP --minimal linux-3.4.48/fs/jfs/namei.c linux-3.4.48-vs2.3.3.9/fs/jfs/namei.c
---- linux-3.4.48/fs/jfs/namei.c	2012-05-21 16:07:25.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/jfs/namei.c	2012-05-21 16:15:05.000000000 +0000
+diff --git a/fs/jfs/namei.c b/fs/jfs/namei.c
+index 07c91ca..e6877e5 100644
+--- a/fs/jfs/namei.c
++++ b/fs/jfs/namei.c
 @@ -22,6 +22,7 @@
  #include <linux/ctype.h>
  #include <linux/quotaops.h>
@@ -4074,7 +4187,7 @@ diff -NurpP --minimal linux-3.4.48/fs/jfs/namei.c linux-3.4.48-vs2.3.3.9/fs/jfs/
  #include "jfs_incore.h"
  #include "jfs_superblock.h"
  #include "jfs_inode.h"
-@@ -1461,6 +1462,7 @@ static struct dentry *jfs_lookup(struct
+@@ -1461,6 +1462,7 @@ static struct dentry *jfs_lookup(struct inode *dip, struct dentry *dentry, struc
  			jfs_err("jfs_lookup: iget failed on inum %d", (uint)inum);
  	}
  
@@ -4082,7 +4195,7 @@ diff -NurpP --minimal linux-3.4.48/fs/jfs/namei.c linux-3.4.48-vs2.3.3.9/fs/jfs/
  	return d_splice_alias(ip, dentry);
  }
  
-@@ -1525,6 +1527,7 @@ const struct inode_operations jfs_dir_in
+@@ -1525,6 +1527,7 @@ const struct inode_operations jfs_dir_inode_operations = {
  #ifdef CONFIG_JFS_POSIX_ACL
  	.get_acl	= jfs_get_acl,
  #endif
@@ -4090,10 +4203,11 @@ diff -NurpP --minimal linux-3.4.48/fs/jfs/namei.c linux-3.4.48-vs2.3.3.9/fs/jfs/
  };
  
  const struct file_operations jfs_dir_operations = {
-diff -NurpP --minimal linux-3.4.48/fs/jfs/super.c linux-3.4.48-vs2.3.3.9/fs/jfs/super.c
---- linux-3.4.48/fs/jfs/super.c	2012-05-21 16:07:25.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/jfs/super.c	2012-05-21 16:15:05.000000000 +0000
-@@ -197,7 +197,8 @@ static void jfs_put_super(struct super_b
+diff --git a/fs/jfs/super.c b/fs/jfs/super.c
+index 4a82950..d5f12f5 100644
+--- a/fs/jfs/super.c
++++ b/fs/jfs/super.c
+@@ -197,7 +197,8 @@ static void jfs_put_super(struct super_block *sb)
  enum {
  	Opt_integrity, Opt_nointegrity, Opt_iocharset, Opt_resize,
  	Opt_resize_nosize, Opt_errors, Opt_ignore, Opt_err, Opt_quota,
@@ -4114,7 +4228,7 @@ diff -NurpP --minimal linux-3.4.48/fs/jfs/super.c linux-3.4.48-vs2.3.3.9/fs/jfs/
  	{Opt_ignore, "noquota"},
  	{Opt_ignore, "quota"},
  	{Opt_usrquota, "usrquota"},
-@@ -341,6 +346,20 @@ static int parse_options(char *options,
+@@ -341,6 +346,20 @@ static int parse_options(char *options, struct super_block *sb, s64 *newLVSize,
  			}
  			break;
  		}
@@ -4135,7 +4249,7 @@ diff -NurpP --minimal linux-3.4.48/fs/jfs/super.c linux-3.4.48-vs2.3.3.9/fs/jfs/
  		default:
  			printk("jfs: Unrecognized mount option \"%s\" "
  					" or missing value\n", p);
-@@ -372,6 +391,12 @@ static int jfs_remount(struct super_bloc
+@@ -372,6 +391,12 @@ static int jfs_remount(struct super_block *sb, int *flags, char *data)
  		return -EINVAL;
  	}
  
@@ -4148,7 +4262,7 @@ diff -NurpP --minimal linux-3.4.48/fs/jfs/super.c linux-3.4.48-vs2.3.3.9/fs/jfs/
  	if (newLVSize) {
  		if (sb->s_flags & MS_RDONLY) {
  			printk(KERN_ERR
-@@ -455,6 +480,9 @@ static int jfs_fill_super(struct super_b
+@@ -455,6 +480,9 @@ static int jfs_fill_super(struct super_block *sb, void *data, int silent)
  #ifdef CONFIG_JFS_POSIX_ACL
  	sb->s_flags |= MS_POSIXACL;
  #endif
@@ -4158,10 +4272,11 @@ diff -NurpP --minimal linux-3.4.48/fs/jfs/super.c linux-3.4.48-vs2.3.3.9/fs/jfs/
  
  	if (newLVSize) {
  		printk(KERN_ERR "resize option for remount only\n");
-diff -NurpP --minimal linux-3.4.48/fs/libfs.c linux-3.4.48-vs2.3.3.9/fs/libfs.c
---- linux-3.4.48/fs/libfs.c	2012-05-21 16:07:25.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/libfs.c	2012-05-21 16:15:05.000000000 +0000
-@@ -135,7 +135,8 @@ static inline unsigned char dt_type(stru
+diff --git a/fs/libfs.c b/fs/libfs.c
+index 18d08f5..3402ccc 100644
+--- a/fs/libfs.c
++++ b/fs/libfs.c
+@@ -135,7 +135,8 @@ static inline unsigned char dt_type(struct inode *inode)
   * both impossible due to the lock on directory.
   */
  
@@ -4171,7 +4286,7 @@ diff -NurpP --minimal linux-3.4.48/fs/libfs.c linux-3.4.48-vs2.3.3.9/fs/libfs.c
  {
  	struct dentry *dentry = filp->f_path.dentry;
  	struct dentry *cursor = filp->private_data;
-@@ -166,6 +167,8 @@ int dcache_readdir(struct file * filp, v
+@@ -166,6 +167,8 @@ int dcache_readdir(struct file * filp, void * dirent, filldir_t filldir)
  			for (p=q->next; p != &dentry->d_subdirs; p=p->next) {
  				struct dentry *next;
  				next = list_entry(p, struct dentry, d_u.d_child);
@@ -4180,7 +4295,7 @@ diff -NurpP --minimal linux-3.4.48/fs/libfs.c linux-3.4.48-vs2.3.3.9/fs/libfs.c
  				spin_lock_nested(&next->d_lock, DENTRY_D_LOCK_NESTED);
  				if (!simple_positive(next)) {
  					spin_unlock(&next->d_lock);
-@@ -192,6 +195,17 @@ int dcache_readdir(struct file * filp, v
+@@ -192,6 +195,17 @@ int dcache_readdir(struct file * filp, void * dirent, filldir_t filldir)
  	return 0;
  }
  
@@ -4206,9 +4321,10 @@ diff -NurpP --minimal linux-3.4.48/fs/libfs.c linux-3.4.48-vs2.3.3.9/fs/libfs.c
  EXPORT_SYMBOL(generic_read_dir);
  EXPORT_SYMBOL(mount_pseudo);
  EXPORT_SYMBOL(simple_write_begin);
-diff -NurpP --minimal linux-3.4.48/fs/locks.c linux-3.4.48-vs2.3.3.9/fs/locks.c
---- linux-3.4.48/fs/locks.c	2013-06-13 08:59:34.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/locks.c	2012-09-01 08:50:49.000000000 +0000
+diff --git a/fs/locks.c b/fs/locks.c
+index fcc50ab..1bbdd58 100644
+--- a/fs/locks.c
++++ b/fs/locks.c
 @@ -126,6 +126,8 @@
  #include <linux/time.h>
  #include <linux/rcupdate.h>
@@ -4218,7 +4334,7 @@ diff -NurpP --minimal linux-3.4.48/fs/locks.c linux-3.4.48-vs2.3.3.9/fs/locks.c
  
  #include <asm/uaccess.h>
  
-@@ -184,11 +186,17 @@ static void locks_init_lock_heads(struct
+@@ -184,11 +186,17 @@ static void locks_init_lock_heads(struct file_lock *fl)
  /* Allocate an empty lock structure. */
  struct file_lock *locks_alloc_lock(void)
  {
@@ -4229,9 +4345,9 @@ diff -NurpP --minimal linux-3.4.48/fs/locks.c linux-3.4.48-vs2.3.3.9/fs/locks.c
 -		locks_init_lock_heads(fl);
 +	if (!vx_locks_avail(1))
 +		return NULL;
- 
-+	fl = kmem_cache_zalloc(filelock_cache, GFP_KERNEL);
 +
++	fl = kmem_cache_zalloc(filelock_cache, GFP_KERNEL);
+ 
 +	if (fl) {
 +		locks_init_lock_heads(fl);
 +		fl->fl_xid = -1;
@@ -4239,7 +4355,7 @@ diff -NurpP --minimal linux-3.4.48/fs/locks.c linux-3.4.48-vs2.3.3.9/fs/locks.c
  	return fl;
  }
  EXPORT_SYMBOL_GPL(locks_alloc_lock);
-@@ -216,6 +224,7 @@ void locks_free_lock(struct file_lock *f
+@@ -216,6 +224,7 @@ void locks_free_lock(struct file_lock *fl)
  	BUG_ON(!list_empty(&fl->fl_block));
  	BUG_ON(!list_empty(&fl->fl_link));
  
@@ -4247,7 +4363,7 @@ diff -NurpP --minimal linux-3.4.48/fs/locks.c linux-3.4.48-vs2.3.3.9/fs/locks.c
  	locks_release_private(fl);
  	kmem_cache_free(filelock_cache, fl);
  }
-@@ -225,6 +234,7 @@ void locks_init_lock(struct file_lock *f
+@@ -225,6 +234,7 @@ void locks_init_lock(struct file_lock *fl)
  {
  	memset(fl, 0, sizeof(struct file_lock));
  	locks_init_lock_heads(fl);
@@ -4255,7 +4371,7 @@ diff -NurpP --minimal linux-3.4.48/fs/locks.c linux-3.4.48-vs2.3.3.9/fs/locks.c
  }
  
  EXPORT_SYMBOL(locks_init_lock);
-@@ -265,6 +275,7 @@ void locks_copy_lock(struct file_lock *n
+@@ -265,6 +275,7 @@ void locks_copy_lock(struct file_lock *new, struct file_lock *fl)
  	new->fl_file = fl->fl_file;
  	new->fl_ops = fl->fl_ops;
  	new->fl_lmops = fl->fl_lmops;
@@ -4263,7 +4379,7 @@ diff -NurpP --minimal linux-3.4.48/fs/locks.c linux-3.4.48-vs2.3.3.9/fs/locks.c
  
  	locks_copy_private(new, fl);
  }
-@@ -303,6 +314,11 @@ static int flock_make_lock(struct file *
+@@ -303,6 +314,11 @@ static int flock_make_lock(struct file *filp, struct file_lock **lock,
  	fl->fl_flags = FL_FLOCK;
  	fl->fl_type = type;
  	fl->fl_end = OFFSET_MAX;
@@ -4275,7 +4391,7 @@ diff -NurpP --minimal linux-3.4.48/fs/locks.c linux-3.4.48-vs2.3.3.9/fs/locks.c
  	
  	*lock = fl;
  	return 0;
-@@ -452,6 +468,7 @@ static int lease_init(struct file *filp,
+@@ -452,6 +468,7 @@ static int lease_init(struct file *filp, long type, struct file_lock *fl)
  
  	fl->fl_owner = current->files;
  	fl->fl_pid = current->tgid;
@@ -4283,7 +4399,7 @@ diff -NurpP --minimal linux-3.4.48/fs/locks.c linux-3.4.48-vs2.3.3.9/fs/locks.c
  
  	fl->fl_file = filp;
  	fl->fl_flags = FL_LEASE;
-@@ -471,6 +488,11 @@ static struct file_lock *lease_alloc(str
+@@ -471,6 +488,11 @@ static struct file_lock *lease_alloc(struct file *filp, long type)
  	if (fl == NULL)
  		return ERR_PTR(error);
  
@@ -4295,7 +4411,7 @@ diff -NurpP --minimal linux-3.4.48/fs/locks.c linux-3.4.48-vs2.3.3.9/fs/locks.c
  	error = lease_init(filp, type, fl);
  	if (error) {
  		locks_free_lock(fl);
-@@ -773,6 +795,7 @@ static int flock_lock_file(struct file *
+@@ -773,6 +795,7 @@ static int flock_lock_file(struct file *filp, struct file_lock *request)
  		lock_flocks();
  	}
  
@@ -4321,7 +4437,7 @@ diff -NurpP --minimal linux-3.4.48/fs/locks.c linux-3.4.48-vs2.3.3.9/fs/locks.c
  {
  	struct file_lock *fl;
  	struct file_lock *new_fl = NULL;
-@@ -813,6 +838,8 @@ static int __posix_lock_file(struct inod
+@@ -813,6 +838,8 @@ static int __posix_lock_file(struct inode *inode, struct file_lock *request, str
  	struct file_lock **before;
  	int error, added = 0;
  
@@ -4330,7 +4446,7 @@ diff -NurpP --minimal linux-3.4.48/fs/locks.c linux-3.4.48-vs2.3.3.9/fs/locks.c
  	/*
  	 * We may need two file_lock structures for this operation,
  	 * so we get them in advance to avoid races.
-@@ -823,7 +850,11 @@ static int __posix_lock_file(struct inod
+@@ -823,7 +850,11 @@ static int __posix_lock_file(struct inode *inode, struct file_lock *request, str
  	    (request->fl_type != F_UNLCK ||
  	     request->fl_start != 0 || request->fl_end != OFFSET_MAX)) {
  		new_fl = locks_alloc_lock();
@@ -4342,7 +4458,7 @@ diff -NurpP --minimal linux-3.4.48/fs/locks.c linux-3.4.48-vs2.3.3.9/fs/locks.c
  	}
  
  	lock_flocks();
-@@ -1022,7 +1053,8 @@ static int __posix_lock_file(struct inod
+@@ -1022,7 +1053,8 @@ static int __posix_lock_file(struct inode *inode, struct file_lock *request, str
  int posix_lock_file(struct file *filp, struct file_lock *fl,
  			struct file_lock *conflock)
  {
@@ -4352,7 +4468,7 @@ diff -NurpP --minimal linux-3.4.48/fs/locks.c linux-3.4.48-vs2.3.3.9/fs/locks.c
  }
  EXPORT_SYMBOL(posix_lock_file);
  
-@@ -1112,7 +1144,7 @@ int locks_mandatory_area(int read_write,
+@@ -1112,7 +1144,7 @@ int locks_mandatory_area(int read_write, struct inode *inode,
  	fl.fl_end = offset + count - 1;
  
  	for (;;) {
@@ -4361,7 +4477,7 @@ diff -NurpP --minimal linux-3.4.48/fs/locks.c linux-3.4.48-vs2.3.3.9/fs/locks.c
  		if (error != FILE_LOCK_DEFERRED)
  			break;
  		error = wait_event_interruptible(fl.fl_wait, !fl.fl_next);
-@@ -1407,6 +1439,7 @@ int generic_add_lease(struct file *filp,
+@@ -1407,6 +1439,7 @@ int generic_add_lease(struct file *filp, long arg, struct file_lock **flp)
  		goto out;
  
  	locks_insert_lock(before, lease);
@@ -4369,7 +4485,7 @@ diff -NurpP --minimal linux-3.4.48/fs/locks.c linux-3.4.48-vs2.3.3.9/fs/locks.c
  	return 0;
  
  out:
-@@ -1847,6 +1880,11 @@ int fcntl_setlk(unsigned int fd, struct
+@@ -1847,6 +1880,11 @@ int fcntl_setlk(unsigned int fd, struct file *filp, unsigned int cmd,
  	if (file_lock == NULL)
  		return -ENOLCK;
  
@@ -4381,7 +4497,7 @@ diff -NurpP --minimal linux-3.4.48/fs/locks.c linux-3.4.48-vs2.3.3.9/fs/locks.c
  	/*
  	 * This might block, so we do it before checking the inode.
  	 */
-@@ -1965,6 +2003,11 @@ int fcntl_setlk64(unsigned int fd, struc
+@@ -1965,6 +2003,11 @@ int fcntl_setlk64(unsigned int fd, struct file *filp, unsigned int cmd,
  	if (file_lock == NULL)
  		return -ENOLCK;
  
@@ -4393,7 +4509,7 @@ diff -NurpP --minimal linux-3.4.48/fs/locks.c linux-3.4.48-vs2.3.3.9/fs/locks.c
  	/*
  	 * This might block, so we do it before checking the inode.
  	 */
-@@ -2230,8 +2273,11 @@ static int locks_show(struct seq_file *f
+@@ -2230,8 +2273,11 @@ static int locks_show(struct seq_file *f, void *v)
  
  	lock_get_status(f, fl, *((loff_t *)f->private), "");
  
@@ -4406,9 +4522,10 @@ diff -NurpP --minimal linux-3.4.48/fs/locks.c linux-3.4.48-vs2.3.3.9/fs/locks.c
  
  	return 0;
  }
-diff -NurpP --minimal linux-3.4.48/fs/mount.h linux-3.4.48-vs2.3.3.9/fs/mount.h
---- linux-3.4.48/fs/mount.h	2012-03-19 18:47:26.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/mount.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/fs/mount.h b/fs/mount.h
+index 4ef36d9..b7f1af3 100644
+--- a/fs/mount.h
++++ b/fs/mount.h
 @@ -47,6 +47,7 @@ struct mount {
  	int mnt_expiry_mark;		/* true if marked for expiry */
  	int mnt_pinned;
@@ -4417,9 +4534,10 @@ diff -NurpP --minimal linux-3.4.48/fs/mount.h linux-3.4.48-vs2.3.3.9/fs/mount.h
  };
  
  static inline struct mount *real_mount(struct vfsmount *mnt)
-diff -NurpP --minimal linux-3.4.48/fs/namei.c linux-3.4.48-vs2.3.3.9/fs/namei.c
---- linux-3.4.48/fs/namei.c	2012-05-21 16:07:25.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/namei.c	2012-05-21 16:15:05.000000000 +0000
+diff --git a/fs/namei.c b/fs/namei.c
+index c427919..e726b31 100644
+--- a/fs/namei.c
++++ b/fs/namei.c
 @@ -33,6 +33,14 @@
  #include <linux/device_cgroup.h>
  #include <linux/fs_struct.h>
@@ -4435,7 +4553,7 @@ diff -NurpP --minimal linux-3.4.48/fs/namei.c linux-3.4.48-vs2.3.3.9/fs/namei.c
  #include <asm/uaccess.h>
  
  #include "internal.h"
-@@ -221,6 +229,89 @@ static int check_acl(struct inode *inode
+@@ -221,6 +229,89 @@ static int check_acl(struct inode *inode, int mask)
  	return -EAGAIN;
  }
  
@@ -4525,7 +4643,7 @@ diff -NurpP --minimal linux-3.4.48/fs/namei.c linux-3.4.48-vs2.3.3.9/fs/namei.c
  /*
   * This does the basic permission checking
   */
-@@ -356,10 +447,14 @@ int inode_permission(struct inode *inode
+@@ -356,10 +447,14 @@ int inode_permission(struct inode *inode, int mask)
  		/*
  		 * Nobody gets write access to an immutable file.
  		 */
@@ -4541,7 +4659,7 @@ diff -NurpP --minimal linux-3.4.48/fs/namei.c linux-3.4.48-vs2.3.3.9/fs/namei.c
  	retval = do_inode_permission(inode, mask);
  	if (retval)
  		return retval;
-@@ -1038,7 +1133,8 @@ static void follow_dotdot(struct nameida
+@@ -1038,7 +1133,8 @@ static void follow_dotdot(struct nameidata *nd)
  
  		if (nd->path.dentry == nd->root.dentry &&
  		    nd->path.mnt == nd->root.mnt) {
@@ -4551,7 +4669,7 @@ diff -NurpP --minimal linux-3.4.48/fs/namei.c linux-3.4.48-vs2.3.3.9/fs/namei.c
  		}
  		if (nd->path.dentry != nd->path.mnt->mnt_root) {
  			/* rare case of legitimate dget_parent()... */
-@@ -1174,6 +1270,9 @@ static int do_lookup(struct nameidata *n
+@@ -1174,6 +1270,9 @@ static int do_lookup(struct nameidata *nd, struct qstr *name,
  				goto unlazy;
  			}
  		}
@@ -4571,7 +4689,7 @@ diff -NurpP --minimal linux-3.4.48/fs/namei.c linux-3.4.48-vs2.3.3.9/fs/namei.c
  done:
  	path->mnt = mnt;
  	path->dentry = dentry;
-@@ -1981,7 +2083,7 @@ static int may_delete(struct inode *dir,
+@@ -1981,7 +2083,7 @@ static int may_delete(struct inode *dir,struct dentry *victim,int isdir)
  	if (IS_APPEND(dir))
  		return -EPERM;
  	if (check_sticky(dir, victim->d_inode)||IS_APPEND(victim->d_inode)||
@@ -4580,7 +4698,7 @@ diff -NurpP --minimal linux-3.4.48/fs/namei.c linux-3.4.48-vs2.3.3.9/fs/namei.c
  		return -EPERM;
  	if (isdir) {
  		if (!S_ISDIR(victim->d_inode->i_mode))
-@@ -2061,19 +2163,25 @@ int vfs_create(struct inode *dir, struct
+@@ -2061,19 +2163,25 @@ int vfs_create(struct inode *dir, struct dentry *dentry, umode_t mode,
  {
  	int error = may_create(dir, dentry);
  
@@ -4608,7 +4726,7 @@ diff -NurpP --minimal linux-3.4.48/fs/namei.c linux-3.4.48-vs2.3.3.9/fs/namei.c
  	return error;
  }
  
-@@ -2108,6 +2216,15 @@ static int may_open(struct path *path, i
+@@ -2108,6 +2216,15 @@ static int may_open(struct path *path, int acc_mode, int flag)
  		break;
  	}
  
@@ -4641,7 +4759,7 @@ diff -NurpP --minimal linux-3.4.48/fs/namei.c linux-3.4.48-vs2.3.3.9/fs/namei.c
  	if (error)
  		goto exit;
  	filp = nameidata_to_filp(nd);
-@@ -2374,6 +2501,7 @@ static struct file *path_openat(int dfd,
+@@ -2374,6 +2501,7 @@ static struct file *path_openat(int dfd, const char *pathname,
  	struct path path;
  	int error;
  
@@ -4649,7 +4767,7 @@ diff -NurpP --minimal linux-3.4.48/fs/namei.c linux-3.4.48-vs2.3.3.9/fs/namei.c
  	filp = get_empty_filp();
  	if (!filp)
  		return ERR_PTR(-ENFILE);
-@@ -2411,6 +2539,17 @@ static struct file *path_openat(int dfd,
+@@ -2411,6 +2539,17 @@ static struct file *path_openat(int dfd, const char *pathname,
  			filp = do_last(nd, &path, op, pathname);
  		put_link(nd, &link, cookie);
  	}
@@ -4667,7 +4785,7 @@ diff -NurpP --minimal linux-3.4.48/fs/namei.c linux-3.4.48-vs2.3.3.9/fs/namei.c
  out:
  	if (nd->root.mnt && !(nd->flags & LOOKUP_ROOT))
  		path_put(&nd->root);
-@@ -2500,6 +2639,11 @@ struct dentry *kern_path_create(int dfd,
+@@ -2500,6 +2639,11 @@ struct dentry *kern_path_create(int dfd, const char *pathname, struct path *path
  		goto fail;
  	}
  	*path = nd.path;
@@ -4679,7 +4797,7 @@ diff -NurpP --minimal linux-3.4.48/fs/namei.c linux-3.4.48-vs2.3.3.9/fs/namei.c
  	return dentry;
  eexist:
  	dput(dentry);
-@@ -2986,7 +3130,7 @@ int vfs_link(struct dentry *old_dentry,
+@@ -2986,7 +3130,7 @@ int vfs_link(struct dentry *old_dentry, struct inode *dir, struct dentry *new_de
  	/*
  	 * A link to an append-only or immutable file cannot be created.
  	 */
@@ -4688,7 +4806,7 @@ diff -NurpP --minimal linux-3.4.48/fs/namei.c linux-3.4.48-vs2.3.3.9/fs/namei.c
  		return -EPERM;
  	if (!dir->i_op->link)
  		return -EPERM;
-@@ -3375,6 +3519,253 @@ int vfs_follow_link(struct nameidata *nd
+@@ -3375,6 +3519,253 @@ int vfs_follow_link(struct nameidata *nd, const char *link)
  	return __vfs_follow_link(nd, link);
  }
  
@@ -4947,9 +5065,10 @@ diff -NurpP --minimal linux-3.4.48/fs/namei.c linux-3.4.48-vs2.3.3.9/fs/namei.c
  EXPORT_SYMBOL(dentry_unhash);
  EXPORT_SYMBOL(generic_readlink);
 +EXPORT_SYMBOL(vx_info_mnt_namespace);
-diff -NurpP --minimal linux-3.4.48/fs/namespace.c linux-3.4.48-vs2.3.3.9/fs/namespace.c
---- linux-3.4.48/fs/namespace.c	2013-06-13 08:59:34.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/namespace.c	2012-06-28 14:45:07.000000000 +0000
+diff --git a/fs/namespace.c b/fs/namespace.c
+index 4e46539..887918c 100644
+--- a/fs/namespace.c
++++ b/fs/namespace.c
 @@ -20,6 +20,11 @@
  #include <linux/fs_struct.h>	/* get_fs_root et.al. */
  #include <linux/fsnotify.h>	/* fsnotify_vfsmount_delete */
@@ -4962,7 +5081,7 @@ diff -NurpP --minimal linux-3.4.48/fs/namespace.c linux-3.4.48-vs2.3.3.9/fs/name
  #include "pnode.h"
  #include "internal.h"
  
-@@ -697,6 +702,10 @@ vfs_kern_mount(struct file_system_type *
+@@ -697,6 +702,10 @@ vfs_kern_mount(struct file_system_type *type, int flags, const char *name, void
  	if (!type)
  		return ERR_PTR(-ENODEV);
  
@@ -4973,7 +5092,7 @@ diff -NurpP --minimal linux-3.4.48/fs/namespace.c linux-3.4.48-vs2.3.3.9/fs/name
  	mnt = alloc_vfsmnt(name);
  	if (!mnt)
  		return ERR_PTR(-ENOMEM);
-@@ -745,6 +754,7 @@ static struct mount *clone_mnt(struct mo
+@@ -745,6 +754,7 @@ static struct mount *clone_mnt(struct mount *old, struct dentry *root,
  		mnt->mnt.mnt_root = dget(root);
  		mnt->mnt_mountpoint = mnt->mnt.mnt_root;
  		mnt->mnt_parent = mnt;
@@ -4981,7 +5100,7 @@ diff -NurpP --minimal linux-3.4.48/fs/namespace.c linux-3.4.48-vs2.3.3.9/fs/name
  		br_write_lock(vfsmount_lock);
  		list_add_tail(&mnt->mnt_instance, &sb->s_mounts);
  		br_write_unlock(vfsmount_lock);
-@@ -1210,7 +1220,7 @@ SYSCALL_DEFINE2(umount, char __user *, n
+@@ -1210,7 +1220,7 @@ SYSCALL_DEFINE2(umount, char __user *, name, int, flags)
  		goto dput_and_out;
  
  	retval = -EPERM;
@@ -4990,7 +5109,7 @@ diff -NurpP --minimal linux-3.4.48/fs/namespace.c linux-3.4.48-vs2.3.3.9/fs/name
  		goto dput_and_out;
  
  	retval = do_umount(mnt, flags);
-@@ -1236,7 +1246,7 @@ SYSCALL_DEFINE1(oldumount, char __user *
+@@ -1236,7 +1246,7 @@ SYSCALL_DEFINE1(oldumount, char __user *, name)
  
  static int mount_is_safe(struct path *path)
  {
@@ -4999,7 +5118,7 @@ diff -NurpP --minimal linux-3.4.48/fs/namespace.c linux-3.4.48-vs2.3.3.9/fs/name
  		return 0;
  	return -EPERM;
  #ifdef notyet
-@@ -1549,7 +1559,7 @@ static int do_change_type(struct path *p
+@@ -1549,7 +1559,7 @@ static int do_change_type(struct path *path, int flag)
  	int type;
  	int err = 0;
  
@@ -5008,7 +5127,7 @@ diff -NurpP --minimal linux-3.4.48/fs/namespace.c linux-3.4.48-vs2.3.3.9/fs/name
  		return -EPERM;
  
  	if (path->dentry != path->mnt->mnt_root)
-@@ -1565,6 +1575,7 @@ static int do_change_type(struct path *p
+@@ -1565,6 +1575,7 @@ static int do_change_type(struct path *path, int flag)
  		if (err)
  			goto out_unlock;
  	}
@@ -5016,7 +5135,7 @@ diff -NurpP --minimal linux-3.4.48/fs/namespace.c linux-3.4.48-vs2.3.3.9/fs/name
  
  	br_write_lock(vfsmount_lock);
  	for (m = mnt; m; m = (recurse ? next_mnt(m, mnt) : NULL))
-@@ -1580,12 +1591,14 @@ static int do_change_type(struct path *p
+@@ -1580,12 +1591,14 @@ static int do_change_type(struct path *path, int flag)
   * do loopback mount.
   */
  static int do_loopback(struct path *path, char *old_name,
@@ -5032,7 +5151,7 @@ diff -NurpP --minimal linux-3.4.48/fs/namespace.c linux-3.4.48-vs2.3.3.9/fs/name
  	if (err)
  		return err;
  	if (!old_name || !*old_name)
-@@ -1653,13 +1666,13 @@ static int change_mount_flags(struct vfs
+@@ -1653,13 +1666,13 @@ static int change_mount_flags(struct vfsmount *mnt, int ms_flags)
   * on it - tough luck.
   */
  static int do_remount(struct path *path, int flags, int mnt_flags,
@@ -5048,7 +5167,7 @@ diff -NurpP --minimal linux-3.4.48/fs/namespace.c linux-3.4.48-vs2.3.3.9/fs/name
  		return -EPERM;
  
  	if (!check_mnt(mnt))
-@@ -1708,7 +1721,7 @@ static int do_move_mount(struct path *pa
+@@ -1708,7 +1721,7 @@ static int do_move_mount(struct path *path, char *old_name)
  	struct mount *p;
  	struct mount *old;
  	int err = 0;
@@ -5057,7 +5176,7 @@ diff -NurpP --minimal linux-3.4.48/fs/namespace.c linux-3.4.48-vs2.3.3.9/fs/name
  		return -EPERM;
  	if (!old_name || !*old_name)
  		return -EINVAL;
-@@ -1859,7 +1872,7 @@ static int do_new_mount(struct path *pat
+@@ -1859,7 +1872,7 @@ static int do_new_mount(struct path *path, char *type, int flags,
  		return -EINVAL;
  
  	/* we need capabilities... */
@@ -5066,7 +5185,7 @@ diff -NurpP --minimal linux-3.4.48/fs/namespace.c linux-3.4.48-vs2.3.3.9/fs/name
  		return -EPERM;
  
  	mnt = do_kern_mount(type, flags, name, data);
-@@ -2129,6 +2142,7 @@ long do_mount(char *dev_name, char *dir_
+@@ -2129,6 +2142,7 @@ long do_mount(char *dev_name, char *dir_name, char *type_page,
  	struct path path;
  	int retval = 0;
  	int mnt_flags = 0;
@@ -5074,7 +5193,7 @@ diff -NurpP --minimal linux-3.4.48/fs/namespace.c linux-3.4.48-vs2.3.3.9/fs/name
  
  	/* Discard magic */
  	if ((flags & MS_MGC_MSK) == MS_MGC_VAL)
-@@ -2156,6 +2170,12 @@ long do_mount(char *dev_name, char *dir_
+@@ -2156,6 +2170,12 @@ long do_mount(char *dev_name, char *dir_name, char *type_page,
  	if (!(flags & MS_NOATIME))
  		mnt_flags |= MNT_RELATIME;
  
@@ -5087,7 +5206,7 @@ diff -NurpP --minimal linux-3.4.48/fs/namespace.c linux-3.4.48-vs2.3.3.9/fs/name
  	/* Separate the per-mountpoint flags */
  	if (flags & MS_NOSUID)
  		mnt_flags |= MNT_NOSUID;
-@@ -2172,15 +2192,17 @@ long do_mount(char *dev_name, char *dir_
+@@ -2172,15 +2192,17 @@ long do_mount(char *dev_name, char *dir_name, char *type_page,
  	if (flags & MS_RDONLY)
  		mnt_flags |= MNT_READONLY;
  
@@ -5107,7 +5226,7 @@ diff -NurpP --minimal linux-3.4.48/fs/namespace.c linux-3.4.48-vs2.3.3.9/fs/name
  	else if (flags & (MS_SHARED | MS_PRIVATE | MS_SLAVE | MS_UNBINDABLE))
  		retval = do_change_type(&path, flags);
  	else if (flags & MS_MOVE)
-@@ -2283,6 +2305,7 @@ static struct mnt_namespace *dup_mnt_ns(
+@@ -2283,6 +2305,7 @@ static struct mnt_namespace *dup_mnt_ns(struct mnt_namespace *mnt_ns,
  		q = next_mnt(q, new);
  	}
  	up_write(&namespace_sem);
@@ -5115,7 +5234,7 @@ diff -NurpP --minimal linux-3.4.48/fs/namespace.c linux-3.4.48-vs2.3.3.9/fs/name
  
  	if (rootmnt)
  		mntput(rootmnt);
-@@ -2479,9 +2502,10 @@ SYSCALL_DEFINE2(pivot_root, const char _
+@@ -2479,9 +2502,10 @@ SYSCALL_DEFINE2(pivot_root, const char __user *, new_root,
  	error = -EINVAL;
  	new_mnt = real_mount(new.mnt);
  	root_mnt = real_mount(root.mnt);
@@ -5128,7 +5247,7 @@ diff -NurpP --minimal linux-3.4.48/fs/namespace.c linux-3.4.48-vs2.3.3.9/fs/name
  		goto out4;
  	if (!check_mnt(root_mnt) || !check_mnt(new_mnt))
  		goto out4;
-@@ -2602,6 +2626,7 @@ void put_mnt_ns(struct mnt_namespace *ns
+@@ -2602,6 +2626,7 @@ void put_mnt_ns(struct mnt_namespace *ns)
  	br_write_unlock(vfsmount_lock);
  	up_write(&namespace_sem);
  	release_mounts(&umount_list);
@@ -5136,10 +5255,11 @@ diff -NurpP --minimal linux-3.4.48/fs/namespace.c linux-3.4.48-vs2.3.3.9/fs/name
  	kfree(ns);
  }
  
-diff -NurpP --minimal linux-3.4.48/fs/nfs/client.c linux-3.4.48-vs2.3.3.9/fs/nfs/client.c
---- linux-3.4.48/fs/nfs/client.c	2013-06-13 08:59:34.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/nfs/client.c	2013-01-16 00:15:57.000000000 +0000
-@@ -801,6 +801,9 @@ static int nfs_init_server_rpcclient(str
+diff --git a/fs/nfs/client.c b/fs/nfs/client.c
+index 37f6de3..95bff63 100644
+--- a/fs/nfs/client.c
++++ b/fs/nfs/client.c
+@@ -801,6 +801,9 @@ static int nfs_init_server_rpcclient(struct nfs_server *server,
  	if (server->flags & NFS_MOUNT_SOFT)
  		server->client->cl_softrtry = 1;
  
@@ -5149,7 +5269,7 @@ diff -NurpP --minimal linux-3.4.48/fs/nfs/client.c linux-3.4.48-vs2.3.3.9/fs/nfs
  	return 0;
  }
  
-@@ -976,6 +979,10 @@ static void nfs_server_set_fsinfo(struct
+@@ -976,6 +979,10 @@ static void nfs_server_set_fsinfo(struct nfs_server *server,
  		server->acdirmin = server->acdirmax = 0;
  	}
  
@@ -5160,9 +5280,10 @@ diff -NurpP --minimal linux-3.4.48/fs/nfs/client.c linux-3.4.48-vs2.3.3.9/fs/nfs
  	server->maxfilesize = fsinfo->maxfilesize;
  
  	server->time_delta = fsinfo->time_delta;
-diff -NurpP --minimal linux-3.4.48/fs/nfs/dir.c linux-3.4.48-vs2.3.3.9/fs/nfs/dir.c
---- linux-3.4.48/fs/nfs/dir.c	2013-06-13 08:59:34.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/nfs/dir.c	2013-01-16 00:15:57.000000000 +0000
+diff --git a/fs/nfs/dir.c b/fs/nfs/dir.c
+index a0daac7..32219ea 100644
+--- a/fs/nfs/dir.c
++++ b/fs/nfs/dir.c
 @@ -35,6 +35,7 @@
  #include <linux/sched.h>
  #include <linux/kmemleak.h>
@@ -5171,7 +5292,7 @@ diff -NurpP --minimal linux-3.4.48/fs/nfs/dir.c linux-3.4.48-vs2.3.3.9/fs/nfs/di
  
  #include "delegation.h"
  #include "iostat.h"
-@@ -1314,6 +1315,7 @@ static struct dentry *nfs_lookup(struct
+@@ -1314,6 +1315,7 @@ static struct dentry *nfs_lookup(struct inode *dir, struct dentry * dentry, stru
  	if (IS_ERR(res))
  		goto out_unblock_sillyrename;
  
@@ -5179,9 +5300,10 @@ diff -NurpP --minimal linux-3.4.48/fs/nfs/dir.c linux-3.4.48-vs2.3.3.9/fs/nfs/di
  no_entry:
  	res = d_materialise_unique(dentry, inode);
  	if (res != NULL) {
-diff -NurpP --minimal linux-3.4.48/fs/nfs/inode.c linux-3.4.48-vs2.3.3.9/fs/nfs/inode.c
---- linux-3.4.48/fs/nfs/inode.c	2013-06-13 08:59:34.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/nfs/inode.c	2012-10-22 13:09:53.000000000 +0000
+diff --git a/fs/nfs/inode.c b/fs/nfs/inode.c
+index edf4119..14a368f 100644
+--- a/fs/nfs/inode.c
++++ b/fs/nfs/inode.c
 @@ -40,6 +40,7 @@
  #include <linux/compat.h>
  #include <linux/freezer.h>
@@ -5190,7 +5312,7 @@ diff -NurpP --minimal linux-3.4.48/fs/nfs/inode.c linux-3.4.48-vs2.3.3.9/fs/nfs/
  
  #include <asm/uaccess.h>
  
-@@ -275,6 +276,8 @@ nfs_fhget(struct super_block *sb, struct
+@@ -275,6 +276,8 @@ nfs_fhget(struct super_block *sb, struct nfs_fh *fh, struct nfs_fattr *fattr)
  	if (inode->i_state & I_NEW) {
  		struct nfs_inode *nfsi = NFS_I(inode);
  		unsigned long now = jiffies;
@@ -5199,7 +5321,7 @@ diff -NurpP --minimal linux-3.4.48/fs/nfs/inode.c linux-3.4.48-vs2.3.3.9/fs/nfs/
  
  		/* We set i_ino for the few things that still rely on it,
  		 * such as stat(2) */
-@@ -323,8 +326,8 @@ nfs_fhget(struct super_block *sb, struct
+@@ -323,8 +326,8 @@ nfs_fhget(struct super_block *sb, struct nfs_fh *fh, struct nfs_fattr *fattr)
  		inode->i_version = 0;
  		inode->i_size = 0;
  		clear_nlink(inode);
@@ -5210,7 +5332,7 @@ diff -NurpP --minimal linux-3.4.48/fs/nfs/inode.c linux-3.4.48-vs2.3.3.9/fs/nfs/
  		inode->i_blocks = 0;
  		memset(nfsi->cookieverf, 0, sizeof(nfsi->cookieverf));
  
-@@ -361,13 +364,13 @@ nfs_fhget(struct super_block *sb, struct
+@@ -361,13 +364,13 @@ nfs_fhget(struct super_block *sb, struct nfs_fh *fh, struct nfs_fattr *fattr)
  		else if (nfs_server_capable(inode, NFS_CAP_NLINK))
  			nfsi->cache_validity |= NFS_INO_INVALID_ATTR;
  		if (fattr->valid & NFS_ATTR_FATTR_OWNER)
@@ -5226,7 +5348,7 @@ diff -NurpP --minimal linux-3.4.48/fs/nfs/inode.c linux-3.4.48-vs2.3.3.9/fs/nfs/
  		else if (nfs_server_capable(inode, NFS_CAP_OWNER_GROUP))
  			nfsi->cache_validity |= NFS_INO_INVALID_ATTR
  				| NFS_INO_INVALID_ACCESS
-@@ -380,6 +383,11 @@ nfs_fhget(struct super_block *sb, struct
+@@ -380,6 +383,11 @@ nfs_fhget(struct super_block *sb, struct nfs_fh *fh, struct nfs_fattr *fattr)
  			 */
  			inode->i_blocks = nfs_calc_block_size(fattr->du.nfs3.used);
  		}
@@ -5238,7 +5360,7 @@ diff -NurpP --minimal linux-3.4.48/fs/nfs/inode.c linux-3.4.48-vs2.3.3.9/fs/nfs/
  		nfsi->attrtimeo = NFS_MINATTRTIMEO(inode);
  		nfsi->attrtimeo_timestamp = now;
  		nfsi->access_cache = RB_ROOT;
-@@ -497,6 +505,8 @@ void nfs_setattr_update_inode(struct ino
+@@ -497,6 +505,8 @@ void nfs_setattr_update_inode(struct inode *inode, struct iattr *attr)
  			inode->i_uid = attr->ia_uid;
  		if ((attr->ia_valid & ATTR_GID) != 0)
  			inode->i_gid = attr->ia_gid;
@@ -5247,7 +5369,7 @@ diff -NurpP --minimal linux-3.4.48/fs/nfs/inode.c linux-3.4.48-vs2.3.3.9/fs/nfs/
  		NFS_I(inode)->cache_validity |= NFS_INO_INVALID_ACCESS|NFS_INO_INVALID_ACL;
  		spin_unlock(&inode->i_lock);
  	}
-@@ -946,6 +956,9 @@ static int nfs_check_inode_attributes(st
+@@ -946,6 +956,9 @@ static int nfs_check_inode_attributes(struct inode *inode, struct nfs_fattr *fat
  	struct nfs_inode *nfsi = NFS_I(inode);
  	loff_t cur_size, new_isize;
  	unsigned long invalid = 0;
@@ -5257,7 +5379,7 @@ diff -NurpP --minimal linux-3.4.48/fs/nfs/inode.c linux-3.4.48-vs2.3.3.9/fs/nfs/
  
  
  	/* Has the inode gone and changed behind our back? */
-@@ -969,13 +982,18 @@ static int nfs_check_inode_attributes(st
+@@ -969,13 +982,18 @@ static int nfs_check_inode_attributes(struct inode *inode, struct nfs_fattr *fat
  			invalid |= NFS_INO_INVALID_ATTR|NFS_INO_REVAL_PAGECACHE;
  	}
  
@@ -5278,7 +5400,7 @@ diff -NurpP --minimal linux-3.4.48/fs/nfs/inode.c linux-3.4.48-vs2.3.3.9/fs/nfs/
  
  	/* Has the link count changed? */
  	if ((fattr->valid & NFS_ATTR_FATTR_NLINK) && inode->i_nlink != fattr->nlink)
-@@ -1273,6 +1291,9 @@ static int nfs_update_inode(struct inode
+@@ -1273,6 +1291,9 @@ static int nfs_update_inode(struct inode *inode, struct nfs_fattr *fattr)
  	unsigned long invalid = 0;
  	unsigned long now = jiffies;
  	unsigned long save_cache_validity;
@@ -5288,7 +5410,7 @@ diff -NurpP --minimal linux-3.4.48/fs/nfs/inode.c linux-3.4.48-vs2.3.3.9/fs/nfs/
  
  	dfprintk(VFS, "NFS: %s(%s/%ld fh_crc=0x%08x ct=%d info=0x%x)\n",
  			__func__, inode->i_sb->s_id, inode->i_ino,
-@@ -1381,6 +1402,9 @@ static int nfs_update_inode(struct inode
+@@ -1381,6 +1402,9 @@ static int nfs_update_inode(struct inode *inode, struct nfs_fattr *fattr)
  				| NFS_INO_REVAL_PAGECACHE
  				| NFS_INO_REVAL_FORCED);
  
@@ -5298,7 +5420,7 @@ diff -NurpP --minimal linux-3.4.48/fs/nfs/inode.c linux-3.4.48-vs2.3.3.9/fs/nfs/
  
  	if (fattr->valid & NFS_ATTR_FATTR_ATIME)
  		memcpy(&inode->i_atime, &fattr->atime, sizeof(inode->i_atime));
-@@ -1402,9 +1426,9 @@ static int nfs_update_inode(struct inode
+@@ -1402,9 +1426,9 @@ static int nfs_update_inode(struct inode *inode, struct nfs_fattr *fattr)
  				| NFS_INO_REVAL_FORCED);
  
  	if (fattr->valid & NFS_ATTR_FATTR_OWNER) {
@@ -5310,7 +5432,7 @@ diff -NurpP --minimal linux-3.4.48/fs/nfs/inode.c linux-3.4.48-vs2.3.3.9/fs/nfs/
  		}
  	} else if (server->caps & NFS_CAP_OWNER)
  		invalid |= save_cache_validity & (NFS_INO_INVALID_ATTR
-@@ -1413,9 +1437,9 @@ static int nfs_update_inode(struct inode
+@@ -1413,9 +1437,9 @@ static int nfs_update_inode(struct inode *inode, struct nfs_fattr *fattr)
  				| NFS_INO_REVAL_FORCED);
  
  	if (fattr->valid & NFS_ATTR_FATTR_GROUP) {
@@ -5322,7 +5444,7 @@ diff -NurpP --minimal linux-3.4.48/fs/nfs/inode.c linux-3.4.48-vs2.3.3.9/fs/nfs/
  		}
  	} else if (server->caps & NFS_CAP_OWNER_GROUP)
  		invalid |= save_cache_validity & (NFS_INO_INVALID_ATTR
-@@ -1423,6 +1447,10 @@ static int nfs_update_inode(struct inode
+@@ -1423,6 +1447,10 @@ static int nfs_update_inode(struct inode *inode, struct nfs_fattr *fattr)
  				| NFS_INO_INVALID_ACL
  				| NFS_INO_REVAL_FORCED);
  
@@ -5333,9 +5455,10 @@ diff -NurpP --minimal linux-3.4.48/fs/nfs/inode.c linux-3.4.48-vs2.3.3.9/fs/nfs/
  	if (fattr->valid & NFS_ATTR_FATTR_NLINK) {
  		if (inode->i_nlink != fattr->nlink) {
  			invalid |= NFS_INO_INVALID_ATTR;
-diff -NurpP --minimal linux-3.4.48/fs/nfs/nfs3xdr.c linux-3.4.48-vs2.3.3.9/fs/nfs/nfs3xdr.c
---- linux-3.4.48/fs/nfs/nfs3xdr.c	2012-05-21 16:07:25.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/nfs/nfs3xdr.c	2012-05-21 16:15:05.000000000 +0000
+diff --git a/fs/nfs/nfs3xdr.c b/fs/nfs/nfs3xdr.c
+index a77cc9a..f7563a8 100644
+--- a/fs/nfs/nfs3xdr.c
++++ b/fs/nfs/nfs3xdr.c
 @@ -20,6 +20,7 @@
  #include <linux/nfs3.h>
  #include <linux/nfs_fs.h>
@@ -5344,7 +5467,7 @@ diff -NurpP --minimal linux-3.4.48/fs/nfs/nfs3xdr.c linux-3.4.48-vs2.3.3.9/fs/nf
  #include "internal.h"
  
  #define NFSDBG_FACILITY		NFSDBG_XDR
-@@ -562,7 +563,8 @@ static __be32 *xdr_decode_nfstime3(__be3
+@@ -562,7 +563,8 @@ static __be32 *xdr_decode_nfstime3(__be32 *p, struct timespec *timep)
   *		set_mtime	mtime;
   *	};
   */
@@ -5354,7 +5477,7 @@ diff -NurpP --minimal linux-3.4.48/fs/nfs/nfs3xdr.c linux-3.4.48-vs2.3.3.9/fs/nf
  {
  	u32 nbytes;
  	__be32 *p;
-@@ -594,15 +596,19 @@ static void encode_sattr3(struct xdr_str
+@@ -594,15 +596,19 @@ static void encode_sattr3(struct xdr_stream *xdr, const struct iattr *attr)
  	} else
  		*p++ = xdr_zero;
  
@@ -5378,7 +5501,7 @@ diff -NurpP --minimal linux-3.4.48/fs/nfs/nfs3xdr.c linux-3.4.48-vs2.3.3.9/fs/nf
  	} else
  		*p++ = xdr_zero;
  
-@@ -878,7 +884,7 @@ static void nfs3_xdr_enc_setattr3args(st
+@@ -878,7 +884,7 @@ static void nfs3_xdr_enc_setattr3args(struct rpc_rqst *req,
  				      const struct nfs3_sattrargs *args)
  {
  	encode_nfs_fh3(xdr, args->fh);
@@ -5387,7 +5510,7 @@ diff -NurpP --minimal linux-3.4.48/fs/nfs/nfs3xdr.c linux-3.4.48-vs2.3.3.9/fs/nf
  	encode_sattrguard3(xdr, args);
  }
  
-@@ -1028,13 +1034,13 @@ static void nfs3_xdr_enc_write3args(stru
+@@ -1028,13 +1034,13 @@ static void nfs3_xdr_enc_write3args(struct rpc_rqst *req,
   *	};
   */
  static void encode_createhow3(struct xdr_stream *xdr,
@@ -5403,7 +5526,7 @@ diff -NurpP --minimal linux-3.4.48/fs/nfs/nfs3xdr.c linux-3.4.48-vs2.3.3.9/fs/nf
  		break;
  	case NFS3_CREATE_EXCLUSIVE:
  		encode_createverf3(xdr, args->verifier);
-@@ -1049,7 +1055,7 @@ static void nfs3_xdr_enc_create3args(str
+@@ -1049,7 +1055,7 @@ static void nfs3_xdr_enc_create3args(struct rpc_rqst *req,
  				     const struct nfs3_createargs *args)
  {
  	encode_diropargs3(xdr, args->fh, args->name, args->len);
@@ -5412,7 +5535,7 @@ diff -NurpP --minimal linux-3.4.48/fs/nfs/nfs3xdr.c linux-3.4.48-vs2.3.3.9/fs/nf
  }
  
  /*
-@@ -1065,7 +1071,7 @@ static void nfs3_xdr_enc_mkdir3args(stru
+@@ -1065,7 +1071,7 @@ static void nfs3_xdr_enc_mkdir3args(struct rpc_rqst *req,
  				    const struct nfs3_mkdirargs *args)
  {
  	encode_diropargs3(xdr, args->fh, args->name, args->len);
@@ -5421,7 +5544,7 @@ diff -NurpP --minimal linux-3.4.48/fs/nfs/nfs3xdr.c linux-3.4.48-vs2.3.3.9/fs/nf
  }
  
  /*
-@@ -1082,9 +1088,9 @@ static void nfs3_xdr_enc_mkdir3args(stru
+@@ -1082,9 +1088,9 @@ static void nfs3_xdr_enc_mkdir3args(struct rpc_rqst *req,
   *	};
   */
  static void encode_symlinkdata3(struct xdr_stream *xdr,
@@ -5433,7 +5556,7 @@ diff -NurpP --minimal linux-3.4.48/fs/nfs/nfs3xdr.c linux-3.4.48-vs2.3.3.9/fs/nf
  	encode_nfspath3(xdr, args->pages, args->pathlen);
  }
  
-@@ -1093,7 +1099,7 @@ static void nfs3_xdr_enc_symlink3args(st
+@@ -1093,7 +1099,7 @@ static void nfs3_xdr_enc_symlink3args(struct rpc_rqst *req,
  				      const struct nfs3_symlinkargs *args)
  {
  	encode_diropargs3(xdr, args->fromfh, args->fromname, args->fromlen);
@@ -5442,7 +5565,7 @@ diff -NurpP --minimal linux-3.4.48/fs/nfs/nfs3xdr.c linux-3.4.48-vs2.3.3.9/fs/nf
  }
  
  /*
-@@ -1121,24 +1127,24 @@ static void nfs3_xdr_enc_symlink3args(st
+@@ -1121,24 +1127,24 @@ static void nfs3_xdr_enc_symlink3args(struct rpc_rqst *req,
   *	};
   */
  static void encode_devicedata3(struct xdr_stream *xdr,
@@ -5472,7 +5595,7 @@ diff -NurpP --minimal linux-3.4.48/fs/nfs/nfs3xdr.c linux-3.4.48-vs2.3.3.9/fs/nf
  		break;
  	case NF3REG:
  	case NF3DIR:
-@@ -1153,7 +1159,7 @@ static void nfs3_xdr_enc_mknod3args(stru
+@@ -1153,7 +1159,7 @@ static void nfs3_xdr_enc_mknod3args(struct rpc_rqst *req,
  				    const struct nfs3_mknodargs *args)
  {
  	encode_diropargs3(xdr, args->fh, args->name, args->len);
@@ -5481,9 +5604,10 @@ diff -NurpP --minimal linux-3.4.48/fs/nfs/nfs3xdr.c linux-3.4.48-vs2.3.3.9/fs/nf
  }
  
  /*
-diff -NurpP --minimal linux-3.4.48/fs/nfs/super.c linux-3.4.48-vs2.3.3.9/fs/nfs/super.c
---- linux-3.4.48/fs/nfs/super.c	2013-06-13 08:59:34.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/nfs/super.c	2013-01-16 00:15:57.000000000 +0000
+diff --git a/fs/nfs/super.c b/fs/nfs/super.c
+index c252161..893b6d8 100644
+--- a/fs/nfs/super.c
++++ b/fs/nfs/super.c
 @@ -54,6 +54,7 @@
  #include <linux/parser.h>
  #include <linux/nsproxy.h>
@@ -5508,7 +5632,7 @@ diff -NurpP --minimal linux-3.4.48/fs/nfs/super.c linux-3.4.48-vs2.3.3.9/fs/nfs/
  
  	/* Mount options that take string arguments */
  	Opt_nfsvers,
-@@ -180,6 +183,10 @@ static const match_table_t nfs_mount_opt
+@@ -180,6 +183,10 @@ static const match_table_t nfs_mount_option_tokens = {
  	/* The following needs to be listed after all other options */
  	{ Opt_nfsvers, "v%s" },
  
@@ -5519,7 +5643,7 @@ diff -NurpP --minimal linux-3.4.48/fs/nfs/super.c linux-3.4.48-vs2.3.3.9/fs/nfs/
  	{ Opt_err, NULL }
  };
  
-@@ -674,6 +681,7 @@ static void nfs_show_mount_options(struc
+@@ -674,6 +681,7 @@ static void nfs_show_mount_options(struct seq_file *m, struct nfs_server *nfss,
  		{ NFS_MOUNT_NORDIRPLUS, ",nordirplus", "" },
  		{ NFS_MOUNT_UNSHARED, ",nosharecache", "" },
  		{ NFS_MOUNT_NORESVPORT, ",noresvport", "" },
@@ -5527,7 +5651,7 @@ diff -NurpP --minimal linux-3.4.48/fs/nfs/super.c linux-3.4.48-vs2.3.3.9/fs/nfs/
  		{ 0, NULL, NULL }
  	};
  	const struct proc_nfs_info *nfs_infop;
-@@ -1286,6 +1294,14 @@ static int nfs_parse_mount_options(char
+@@ -1286,6 +1294,14 @@ static int nfs_parse_mount_options(char *raw,
  			kfree(mnt->fscache_uniq);
  			mnt->fscache_uniq = NULL;
  			break;
@@ -5542,7 +5666,7 @@ diff -NurpP --minimal linux-3.4.48/fs/nfs/super.c linux-3.4.48-vs2.3.3.9/fs/nfs/
  
  		/*
  		 * options that take numeric values
-@@ -1372,6 +1388,12 @@ static int nfs_parse_mount_options(char
+@@ -1372,6 +1388,12 @@ static int nfs_parse_mount_options(char *raw,
  				goto out_invalid_value;
  			mnt->minorversion = option;
  			break;
@@ -5555,9 +5679,10 @@ diff -NurpP --minimal linux-3.4.48/fs/nfs/super.c linux-3.4.48-vs2.3.3.9/fs/nfs/
  
  		/*
  		 * options that take text values
-diff -NurpP --minimal linux-3.4.48/fs/nfsd/auth.c linux-3.4.48-vs2.3.3.9/fs/nfsd/auth.c
---- linux-3.4.48/fs/nfsd/auth.c	2010-02-25 10:52:05.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/nfsd/auth.c	2012-05-21 16:15:05.000000000 +0000
+diff --git a/fs/nfsd/auth.c b/fs/nfsd/auth.c
+index 79717a4..ecdce16 100644
+--- a/fs/nfsd/auth.c
++++ b/fs/nfsd/auth.c
 @@ -1,6 +1,7 @@
  /* Copyright (C) 1995, 1996 Olaf Kirch <okir@monad.swb.de> */
  
@@ -5566,7 +5691,7 @@ diff -NurpP --minimal linux-3.4.48/fs/nfsd/auth.c linux-3.4.48-vs2.3.3.9/fs/nfsd
  #include "nfsd.h"
  #include "auth.h"
  
-@@ -36,6 +37,9 @@ int nfsd_setuser(struct svc_rqst *rqstp,
+@@ -36,6 +37,9 @@ int nfsd_setuser(struct svc_rqst *rqstp, struct svc_export *exp)
  
  	new->fsuid = rqstp->rq_cred.cr_uid;
  	new->fsgid = rqstp->rq_cred.cr_gid;
@@ -5576,9 +5701,10 @@ diff -NurpP --minimal linux-3.4.48/fs/nfsd/auth.c linux-3.4.48-vs2.3.3.9/fs/nfsd
  
  	rqgi = rqstp->rq_cred.cr_group_info;
  
-diff -NurpP --minimal linux-3.4.48/fs/nfsd/nfs3xdr.c linux-3.4.48-vs2.3.3.9/fs/nfsd/nfs3xdr.c
---- linux-3.4.48/fs/nfsd/nfs3xdr.c	2012-05-21 16:07:26.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/nfsd/nfs3xdr.c	2012-05-21 16:15:05.000000000 +0000
+diff --git a/fs/nfsd/nfs3xdr.c b/fs/nfsd/nfs3xdr.c
+index 43f46cd..24d537c 100644
+--- a/fs/nfsd/nfs3xdr.c
++++ b/fs/nfsd/nfs3xdr.c
 @@ -7,6 +7,7 @@
   */
  
@@ -5596,7 +5722,7 @@ diff -NurpP --minimal linux-3.4.48/fs/nfsd/nfs3xdr.c linux-3.4.48-vs2.3.3.9/fs/n
  
  	iap->ia_valid = 0;
  
-@@ -104,12 +107,15 @@ decode_sattr3(__be32 *p, struct iattr *i
+@@ -104,12 +107,15 @@ decode_sattr3(__be32 *p, struct iattr *iap)
  	}
  	if (*p++) {
  		iap->ia_valid |= ATTR_UID;
@@ -5614,7 +5740,7 @@ diff -NurpP --minimal linux-3.4.48/fs/nfsd/nfs3xdr.c linux-3.4.48-vs2.3.3.9/fs/n
  	if (*p++) {
  		u64	newsize;
  
-@@ -165,8 +171,12 @@ encode_fattr3(struct svc_rqst *rqstp, __
+@@ -165,8 +171,12 @@ encode_fattr3(struct svc_rqst *rqstp, __be32 *p, struct svc_fh *fhp,
  	*p++ = htonl(nfs3_ftypes[(stat->mode & S_IFMT) >> 12]);
  	*p++ = htonl((u32) stat->mode);
  	*p++ = htonl((u32) stat->nlink);
@@ -5629,9 +5755,10 @@ diff -NurpP --minimal linux-3.4.48/fs/nfsd/nfs3xdr.c linux-3.4.48-vs2.3.3.9/fs/n
  	if (S_ISLNK(stat->mode) && stat->size > NFS3_MAXPATHLEN) {
  		p = xdr_encode_hyper(p, (u64) NFS3_MAXPATHLEN);
  	} else {
-diff -NurpP --minimal linux-3.4.48/fs/nfsd/nfs4xdr.c linux-3.4.48-vs2.3.3.9/fs/nfsd/nfs4xdr.c
---- linux-3.4.48/fs/nfsd/nfs4xdr.c	2013-06-13 08:59:34.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/nfsd/nfs4xdr.c	2013-06-13 09:46:39.000000000 +0000
+diff --git a/fs/nfsd/nfs4xdr.c b/fs/nfsd/nfs4xdr.c
+index cb997b1..9d1ce48 100644
+--- a/fs/nfsd/nfs4xdr.c
++++ b/fs/nfsd/nfs4xdr.c
 @@ -46,6 +46,7 @@
  #include <linux/utsname.h>
  #include <linux/pagemap.h>
@@ -5640,7 +5767,7 @@ diff -NurpP --minimal linux-3.4.48/fs/nfsd/nfs4xdr.c linux-3.4.48-vs2.3.3.9/fs/n
  
  #include "idmap.h"
  #include "acl.h"
-@@ -2325,14 +2326,18 @@ out_acl:
+@@ -2319,14 +2320,18 @@ out_acl:
  		WRITE32(stat.nlink);
  	}
  	if (bmval1 & FATTR4_WORD1_OWNER) {
@@ -5661,9 +5788,10 @@ diff -NurpP --minimal linux-3.4.48/fs/nfsd/nfs4xdr.c linux-3.4.48-vs2.3.3.9/fs/n
  		if (status == nfserr_resource)
  			goto out_resource;
  		if (status)
-diff -NurpP --minimal linux-3.4.48/fs/nfsd/nfsxdr.c linux-3.4.48-vs2.3.3.9/fs/nfsd/nfsxdr.c
---- linux-3.4.48/fs/nfsd/nfsxdr.c	2011-05-22 14:17:53.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/nfsd/nfsxdr.c	2012-05-21 16:15:05.000000000 +0000
+diff --git a/fs/nfsd/nfsxdr.c b/fs/nfsd/nfsxdr.c
+index 65ec595..31939e6 100644
+--- a/fs/nfsd/nfsxdr.c
++++ b/fs/nfsd/nfsxdr.c
 @@ -6,6 +6,7 @@
  
  #include "xdr.h"
@@ -5681,7 +5809,7 @@ diff -NurpP --minimal linux-3.4.48/fs/nfsd/nfsxdr.c linux-3.4.48-vs2.3.3.9/fs/nf
  
  	iap->ia_valid = 0;
  
-@@ -101,12 +104,15 @@ decode_sattr(__be32 *p, struct iattr *ia
+@@ -101,12 +104,15 @@ decode_sattr(__be32 *p, struct iattr *iap)
  	}
  	if ((tmp = ntohl(*p++)) != (u32)-1) {
  		iap->ia_valid |= ATTR_UID;
@@ -5699,7 +5827,7 @@ diff -NurpP --minimal linux-3.4.48/fs/nfsd/nfsxdr.c linux-3.4.48-vs2.3.3.9/fs/nf
  	if ((tmp = ntohl(*p++)) != (u32)-1) {
  		iap->ia_valid |= ATTR_SIZE;
  		iap->ia_size = tmp;
-@@ -151,8 +157,10 @@ encode_fattr(struct svc_rqst *rqstp, __b
+@@ -151,8 +157,10 @@ encode_fattr(struct svc_rqst *rqstp, __be32 *p, struct svc_fh *fhp,
  	*p++ = htonl(nfs_ftypes[type >> 12]);
  	*p++ = htonl((u32) stat->mode);
  	*p++ = htonl((u32) stat->nlink);
@@ -5712,10 +5840,11 @@ diff -NurpP --minimal linux-3.4.48/fs/nfsd/nfsxdr.c linux-3.4.48-vs2.3.3.9/fs/nf
  
  	if (S_ISLNK(type) && stat->size > NFS_MAXPATHLEN) {
  		*p++ = htonl(NFS_MAXPATHLEN);
-diff -NurpP --minimal linux-3.4.48/fs/ocfs2/dlmglue.c linux-3.4.48-vs2.3.3.9/fs/ocfs2/dlmglue.c
---- linux-3.4.48/fs/ocfs2/dlmglue.c	2013-06-13 08:59:34.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/ocfs2/dlmglue.c	2013-03-02 15:26:44.000000000 +0000
-@@ -2047,6 +2047,7 @@ static void __ocfs2_stuff_meta_lvb(struc
+diff --git a/fs/ocfs2/dlmglue.c b/fs/ocfs2/dlmglue.c
+index 231eab2..c48839a 100644
+--- a/fs/ocfs2/dlmglue.c
++++ b/fs/ocfs2/dlmglue.c
+@@ -2047,6 +2047,7 @@ static void __ocfs2_stuff_meta_lvb(struct inode *inode)
  	lvb->lvb_iclusters = cpu_to_be32(oi->ip_clusters);
  	lvb->lvb_iuid      = cpu_to_be32(inode->i_uid);
  	lvb->lvb_igid      = cpu_to_be32(inode->i_gid);
@@ -5723,7 +5852,7 @@ diff -NurpP --minimal linux-3.4.48/fs/ocfs2/dlmglue.c linux-3.4.48-vs2.3.3.9/fs/
  	lvb->lvb_imode     = cpu_to_be16(inode->i_mode);
  	lvb->lvb_inlink    = cpu_to_be16(inode->i_nlink);
  	lvb->lvb_iatime_packed  =
-@@ -2097,6 +2098,7 @@ static void ocfs2_refresh_inode_from_lvb
+@@ -2097,6 +2098,7 @@ static void ocfs2_refresh_inode_from_lvb(struct inode *inode)
  
  	inode->i_uid     = be32_to_cpu(lvb->lvb_iuid);
  	inode->i_gid     = be32_to_cpu(lvb->lvb_igid);
@@ -5731,9 +5860,10 @@ diff -NurpP --minimal linux-3.4.48/fs/ocfs2/dlmglue.c linux-3.4.48-vs2.3.3.9/fs/
  	inode->i_mode    = be16_to_cpu(lvb->lvb_imode);
  	set_nlink(inode, be16_to_cpu(lvb->lvb_inlink));
  	ocfs2_unpack_timespec(&inode->i_atime,
-diff -NurpP --minimal linux-3.4.48/fs/ocfs2/dlmglue.h linux-3.4.48-vs2.3.3.9/fs/ocfs2/dlmglue.h
---- linux-3.4.48/fs/ocfs2/dlmglue.h	2010-10-21 11:07:50.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/ocfs2/dlmglue.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/fs/ocfs2/dlmglue.h b/fs/ocfs2/dlmglue.h
+index 1d596d8..357ff1e 100644
+--- a/fs/ocfs2/dlmglue.h
++++ b/fs/ocfs2/dlmglue.h
 @@ -46,7 +46,8 @@ struct ocfs2_meta_lvb {
  	__be16       lvb_inlink;
  	__be32       lvb_iattr;
@@ -5744,10 +5874,11 @@ diff -NurpP --minimal linux-3.4.48/fs/ocfs2/dlmglue.h linux-3.4.48-vs2.3.3.9/fs/
  };
  
  #define OCFS2_QINFO_LVB_VERSION 1
-diff -NurpP --minimal linux-3.4.48/fs/ocfs2/file.c linux-3.4.48-vs2.3.3.9/fs/ocfs2/file.c
---- linux-3.4.48/fs/ocfs2/file.c	2013-06-13 08:59:34.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/ocfs2/file.c	2012-07-17 22:29:43.000000000 +0000
-@@ -1123,7 +1123,7 @@ int ocfs2_setattr(struct dentry *dentry,
+diff --git a/fs/ocfs2/file.c b/fs/ocfs2/file.c
+index 7602783..b7567ce 100644
+--- a/fs/ocfs2/file.c
++++ b/fs/ocfs2/file.c
+@@ -1123,7 +1123,7 @@ int ocfs2_setattr(struct dentry *dentry, struct iattr *attr)
  		attr->ia_valid &= ~ATTR_SIZE;
  
  #define OCFS2_VALID_ATTRS (ATTR_ATIME | ATTR_MTIME | ATTR_CTIME | ATTR_SIZE \
@@ -5756,9 +5887,10 @@ diff -NurpP --minimal linux-3.4.48/fs/ocfs2/file.c linux-3.4.48-vs2.3.3.9/fs/ocf
  	if (!(attr->ia_valid & OCFS2_VALID_ATTRS))
  		return 0;
  
-diff -NurpP --minimal linux-3.4.48/fs/ocfs2/inode.c linux-3.4.48-vs2.3.3.9/fs/ocfs2/inode.c
---- linux-3.4.48/fs/ocfs2/inode.c	2012-01-09 15:14:55.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/ocfs2/inode.c	2012-05-21 16:15:05.000000000 +0000
+diff --git a/fs/ocfs2/inode.c b/fs/ocfs2/inode.c
+index 17454a9..e8e5419 100644
+--- a/fs/ocfs2/inode.c
++++ b/fs/ocfs2/inode.c
 @@ -28,6 +28,7 @@
  #include <linux/highmem.h>
  #include <linux/pagemap.h>
@@ -5767,7 +5899,7 @@ diff -NurpP --minimal linux-3.4.48/fs/ocfs2/inode.c linux-3.4.48-vs2.3.3.9/fs/oc
  
  #include <asm/byteorder.h>
  
-@@ -78,11 +79,13 @@ void ocfs2_set_inode_flags(struct inode
+@@ -78,11 +79,13 @@ void ocfs2_set_inode_flags(struct inode *inode)
  {
  	unsigned int flags = OCFS2_I(inode)->ip_attr;
  
@@ -5782,7 +5914,7 @@ diff -NurpP --minimal linux-3.4.48/fs/ocfs2/inode.c linux-3.4.48-vs2.3.3.9/fs/oc
  
  	if (flags & OCFS2_SYNC_FL)
  		inode->i_flags |= S_SYNC;
-@@ -92,25 +95,44 @@ void ocfs2_set_inode_flags(struct inode
+@@ -92,25 +95,44 @@ void ocfs2_set_inode_flags(struct inode *inode)
  		inode->i_flags |= S_NOATIME;
  	if (flags & OCFS2_DIRSYNC_FL)
  		inode->i_flags |= S_DIRSYNC;
@@ -5831,7 +5963,7 @@ diff -NurpP --minimal linux-3.4.48/fs/ocfs2/inode.c linux-3.4.48-vs2.3.3.9/fs/oc
  }
  
  struct inode *ocfs2_ilookup(struct super_block *sb, u64 blkno)
-@@ -241,6 +263,8 @@ void ocfs2_populate_inode(struct inode *
+@@ -241,6 +263,8 @@ void ocfs2_populate_inode(struct inode *inode, struct ocfs2_dinode *fe,
  	struct super_block *sb;
  	struct ocfs2_super *osb;
  	int use_plocks = 1;
@@ -5840,7 +5972,7 @@ diff -NurpP --minimal linux-3.4.48/fs/ocfs2/inode.c linux-3.4.48-vs2.3.3.9/fs/oc
  
  	sb = inode->i_sb;
  	osb = OCFS2_SB(sb);
-@@ -269,8 +293,12 @@ void ocfs2_populate_inode(struct inode *
+@@ -269,8 +293,12 @@ void ocfs2_populate_inode(struct inode *inode, struct ocfs2_dinode *fe,
  	inode->i_generation = le32_to_cpu(fe->i_generation);
  	inode->i_rdev = huge_decode_dev(le64_to_cpu(fe->id1.dev1.i_rdev));
  	inode->i_mode = le16_to_cpu(fe->i_mode);
@@ -5855,10 +5987,11 @@ diff -NurpP --minimal linux-3.4.48/fs/ocfs2/inode.c linux-3.4.48-vs2.3.3.9/fs/oc
  
  	/* Fast symlinks will have i_size but no allocated clusters. */
  	if (S_ISLNK(inode->i_mode) && !fe->i_clusters)
-diff -NurpP --minimal linux-3.4.48/fs/ocfs2/inode.h linux-3.4.48-vs2.3.3.9/fs/ocfs2/inode.h
---- linux-3.4.48/fs/ocfs2/inode.h	2012-01-09 15:14:55.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/ocfs2/inode.h	2012-05-21 16:15:05.000000000 +0000
-@@ -154,6 +154,7 @@ struct buffer_head *ocfs2_bread(struct i
+diff --git a/fs/ocfs2/inode.h b/fs/ocfs2/inode.h
+index 88924a3..a154533 100644
+--- a/fs/ocfs2/inode.h
++++ b/fs/ocfs2/inode.h
+@@ -154,6 +154,7 @@ struct buffer_head *ocfs2_bread(struct inode *inode,
  
  void ocfs2_set_inode_flags(struct inode *inode);
  void ocfs2_get_inode_flags(struct ocfs2_inode_info *oi);
@@ -5866,10 +5999,11 @@ diff -NurpP --minimal linux-3.4.48/fs/ocfs2/inode.h linux-3.4.48-vs2.3.3.9/fs/oc
  
  static inline blkcnt_t ocfs2_inode_sector_count(struct inode *inode)
  {
-diff -NurpP --minimal linux-3.4.48/fs/ocfs2/ioctl.c linux-3.4.48-vs2.3.3.9/fs/ocfs2/ioctl.c
---- linux-3.4.48/fs/ocfs2/ioctl.c	2012-05-21 16:07:26.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/ocfs2/ioctl.c	2012-05-21 16:15:05.000000000 +0000
-@@ -76,7 +76,41 @@ static int ocfs2_get_inode_attr(struct i
+diff --git a/fs/ocfs2/ioctl.c b/fs/ocfs2/ioctl.c
+index a1a1bfd..e97bd26 100644
+--- a/fs/ocfs2/ioctl.c
++++ b/fs/ocfs2/ioctl.c
+@@ -76,7 +76,41 @@ static int ocfs2_get_inode_attr(struct inode *inode, unsigned *flags)
  	return status;
  }
  
@@ -5912,7 +6046,7 @@ diff -NurpP --minimal linux-3.4.48/fs/ocfs2/ioctl.c linux-3.4.48-vs2.3.3.9/fs/oc
  				unsigned mask)
  {
  	struct ocfs2_inode_info *ocfs2_inode = OCFS2_I(inode);
-@@ -101,6 +135,11 @@ static int ocfs2_set_inode_attr(struct i
+@@ -101,6 +135,11 @@ static int ocfs2_set_inode_attr(struct inode *inode, unsigned flags,
  	if (!S_ISDIR(inode->i_mode))
  		flags &= ~OCFS2_DIRSYNC_FL;
  
@@ -5932,9 +6066,10 @@ diff -NurpP --minimal linux-3.4.48/fs/ocfs2/ioctl.c linux-3.4.48-vs2.3.3.9/fs/oc
  long ocfs2_ioctl(struct file *filp, unsigned int cmd, unsigned long arg)
  {
  	struct inode *inode = filp->f_path.dentry->d_inode;
-diff -NurpP --minimal linux-3.4.48/fs/ocfs2/namei.c linux-3.4.48-vs2.3.3.9/fs/ocfs2/namei.c
---- linux-3.4.48/fs/ocfs2/namei.c	2012-03-19 18:47:26.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/ocfs2/namei.c	2012-05-21 16:15:05.000000000 +0000
+diff --git a/fs/ocfs2/namei.c b/fs/ocfs2/namei.c
+index a9856e3..ab87257 100644
+--- a/fs/ocfs2/namei.c
++++ b/fs/ocfs2/namei.c
 @@ -41,6 +41,7 @@
  #include <linux/slab.h>
  #include <linux/highmem.h>
@@ -5943,7 +6078,7 @@ diff -NurpP --minimal linux-3.4.48/fs/ocfs2/namei.c linux-3.4.48-vs2.3.3.9/fs/oc
  
  #include <cluster/masklog.h>
  
-@@ -475,6 +476,7 @@ static int __ocfs2_mknod_locked(struct i
+@@ -475,6 +476,7 @@ static int __ocfs2_mknod_locked(struct inode *dir,
  	struct ocfs2_dinode *fe = NULL;
  	struct ocfs2_extent_list *fel;
  	u16 feat;
@@ -5951,7 +6086,7 @@ diff -NurpP --minimal linux-3.4.48/fs/ocfs2/namei.c linux-3.4.48-vs2.3.3.9/fs/oc
  
  	*new_fe_bh = NULL;
  
-@@ -512,8 +514,11 @@ static int __ocfs2_mknod_locked(struct i
+@@ -512,8 +514,11 @@ static int __ocfs2_mknod_locked(struct inode *dir,
  	fe->i_suballoc_loc = cpu_to_le64(suballoc_loc);
  	fe->i_suballoc_bit = cpu_to_le16(suballoc_bit);
  	fe->i_suballoc_slot = cpu_to_le16(inode_ac->ac_alloc_slot);
@@ -5965,9 +6100,10 @@ diff -NurpP --minimal linux-3.4.48/fs/ocfs2/namei.c linux-3.4.48-vs2.3.3.9/fs/oc
  	fe->i_mode = cpu_to_le16(inode->i_mode);
  	if (S_ISCHR(inode->i_mode) || S_ISBLK(inode->i_mode))
  		fe->id1.dev1.i_rdev = cpu_to_le64(huge_encode_dev(dev));
-diff -NurpP --minimal linux-3.4.48/fs/ocfs2/ocfs2.h linux-3.4.48-vs2.3.3.9/fs/ocfs2/ocfs2.h
---- linux-3.4.48/fs/ocfs2/ocfs2.h	2012-01-09 15:14:55.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/ocfs2/ocfs2.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/fs/ocfs2/ocfs2.h b/fs/ocfs2/ocfs2.h
+index d355e6e..5d00443 100644
+--- a/fs/ocfs2/ocfs2.h
++++ b/fs/ocfs2/ocfs2.h
 @@ -272,6 +272,7 @@ enum ocfs2_mount_options
  						     writes */
  	OCFS2_MOUNT_HB_NONE = 1 << 13, /* No heartbeat */
@@ -5976,9 +6112,10 @@ diff -NurpP --minimal linux-3.4.48/fs/ocfs2/ocfs2.h linux-3.4.48-vs2.3.3.9/fs/oc
  };
  
  #define OCFS2_OSB_SOFT_RO			0x0001
-diff -NurpP --minimal linux-3.4.48/fs/ocfs2/ocfs2_fs.h linux-3.4.48-vs2.3.3.9/fs/ocfs2/ocfs2_fs.h
---- linux-3.4.48/fs/ocfs2/ocfs2_fs.h	2011-05-22 14:17:53.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/ocfs2/ocfs2_fs.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/fs/ocfs2/ocfs2_fs.h b/fs/ocfs2/ocfs2_fs.h
+index 938387a..6e8d529 100644
+--- a/fs/ocfs2/ocfs2_fs.h
++++ b/fs/ocfs2/ocfs2_fs.h
 @@ -266,6 +266,11 @@
  #define OCFS2_TOPDIR_FL			FS_TOPDIR_FL	/* Top of directory hierarchies*/
  #define OCFS2_RESERVED_FL		FS_RESERVED_FL	/* reserved for ext2 lib */
@@ -5991,9 +6128,10 @@ diff -NurpP --minimal linux-3.4.48/fs/ocfs2/ocfs2_fs.h linux-3.4.48-vs2.3.3.9/fs
  #define OCFS2_FL_VISIBLE		FS_FL_USER_VISIBLE	/* User visible flags */
  #define OCFS2_FL_MODIFIABLE		FS_FL_USER_MODIFIABLE	/* User modifiable flags */
  
-diff -NurpP --minimal linux-3.4.48/fs/ocfs2/super.c linux-3.4.48-vs2.3.3.9/fs/ocfs2/super.c
---- linux-3.4.48/fs/ocfs2/super.c	2012-05-21 16:07:26.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/ocfs2/super.c	2012-05-21 16:15:05.000000000 +0000
+diff --git a/fs/ocfs2/super.c b/fs/ocfs2/super.c
+index 68f4541..dbb1f8d 100644
+--- a/fs/ocfs2/super.c
++++ b/fs/ocfs2/super.c
 @@ -185,6 +185,7 @@ enum {
  	Opt_coherency_full,
  	Opt_resv_level,
@@ -6012,7 +6150,7 @@ diff -NurpP --minimal linux-3.4.48/fs/ocfs2/super.c linux-3.4.48-vs2.3.3.9/fs/oc
  	{Opt_err, NULL}
  };
  
-@@ -662,6 +666,13 @@ static int ocfs2_remount(struct super_bl
+@@ -662,6 +666,13 @@ static int ocfs2_remount(struct super_block *sb, int *flags, char *data)
  		goto out;
  	}
  
@@ -6026,7 +6164,7 @@ diff -NurpP --minimal linux-3.4.48/fs/ocfs2/super.c linux-3.4.48-vs2.3.3.9/fs/oc
  	/* We're going to/from readonly mode. */
  	if ((*flags & MS_RDONLY) != (sb->s_flags & MS_RDONLY)) {
  		/* Disable quota accounting before remounting RO */
-@@ -1177,6 +1188,9 @@ static int ocfs2_fill_super(struct super
+@@ -1177,6 +1188,9 @@ static int ocfs2_fill_super(struct super_block *sb, void *data, int silent)
  
  	ocfs2_complete_mount_recovery(osb);
  
@@ -6036,7 +6174,7 @@ diff -NurpP --minimal linux-3.4.48/fs/ocfs2/super.c linux-3.4.48-vs2.3.3.9/fs/oc
  	if (ocfs2_mount_local(osb))
  		snprintf(nodestr, sizeof(nodestr), "local");
  	else
-@@ -1503,6 +1517,20 @@ static int ocfs2_parse_options(struct su
+@@ -1503,6 +1517,20 @@ static int ocfs2_parse_options(struct super_block *sb,
  			    option < OCFS2_MAX_RESV_LEVEL)
  				mopt->dir_resv_level = option;
  			break;
@@ -6057,9 +6195,10 @@ diff -NurpP --minimal linux-3.4.48/fs/ocfs2/super.c linux-3.4.48-vs2.3.3.9/fs/oc
  		default:
  			mlog(ML_ERROR,
  			     "Unrecognized mount option \"%s\" "
-diff -NurpP --minimal linux-3.4.48/fs/open.c linux-3.4.48-vs2.3.3.9/fs/open.c
---- linux-3.4.48/fs/open.c	2013-06-13 08:59:34.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/open.c	2012-09-16 18:49:11.000000000 +0000
+diff --git a/fs/open.c b/fs/open.c
+index cf1d34f..9455091 100644
+--- a/fs/open.c
++++ b/fs/open.c
 @@ -30,6 +30,11 @@
  #include <linux/fs_struct.h>
  #include <linux/ima.h>
@@ -6072,7 +6211,7 @@ diff -NurpP --minimal linux-3.4.48/fs/open.c linux-3.4.48-vs2.3.3.9/fs/open.c
  
  #include "internal.h"
  
-@@ -74,6 +79,12 @@ static long do_sys_truncate(const char _
+@@ -74,6 +79,12 @@ static long do_sys_truncate(const char __user *pathname, loff_t length)
  	error = user_path(pathname, &path);
  	if (error)
  		goto out;
@@ -6085,7 +6224,7 @@ diff -NurpP --minimal linux-3.4.48/fs/open.c linux-3.4.48-vs2.3.3.9/fs/open.c
  	inode = path.dentry->d_inode;
  
  	/* For directories it's -EISDIR, for other non-regulars - -EINVAL */
-@@ -489,6 +500,10 @@ SYSCALL_DEFINE3(fchmodat, int, dfd, cons
+@@ -489,6 +500,10 @@ SYSCALL_DEFINE3(fchmodat, int, dfd, const char __user *, filename, umode_t, mode
  
  	error = user_path_at(dfd, filename, LOOKUP_FOLLOW, &path);
  	if (!error) {
@@ -6096,7 +6235,7 @@ diff -NurpP --minimal linux-3.4.48/fs/open.c linux-3.4.48-vs2.3.3.9/fs/open.c
  		error = chmod_common(&path, mode);
  		path_put(&path);
  	}
-@@ -509,11 +524,11 @@ static int chown_common(struct path *pat
+@@ -509,11 +524,11 @@ static int chown_common(struct path *path, uid_t user, gid_t group)
  	newattrs.ia_valid =  ATTR_CTIME;
  	if (user != (uid_t) -1) {
  		newattrs.ia_valid |= ATTR_UID;
@@ -6110,7 +6249,7 @@ diff -NurpP --minimal linux-3.4.48/fs/open.c linux-3.4.48-vs2.3.3.9/fs/open.c
  	}
  	if (!S_ISDIR(inode->i_mode))
  		newattrs.ia_valid |=
-@@ -538,6 +553,10 @@ SYSCALL_DEFINE3(chown, const char __user
+@@ -538,6 +553,10 @@ SYSCALL_DEFINE3(chown, const char __user *, filename, uid_t, user, gid_t, group)
  	error = mnt_want_write(path.mnt);
  	if (error)
  		goto out_release;
@@ -6121,7 +6260,7 @@ diff -NurpP --minimal linux-3.4.48/fs/open.c linux-3.4.48-vs2.3.3.9/fs/open.c
  	error = chown_common(&path, user, group);
  	mnt_drop_write(path.mnt);
  out_release:
-@@ -565,6 +584,10 @@ SYSCALL_DEFINE5(fchownat, int, dfd, cons
+@@ -565,6 +584,10 @@ SYSCALL_DEFINE5(fchownat, int, dfd, const char __user *, filename, uid_t, user,
  	error = mnt_want_write(path.mnt);
  	if (error)
  		goto out_release;
@@ -6132,7 +6271,7 @@ diff -NurpP --minimal linux-3.4.48/fs/open.c linux-3.4.48-vs2.3.3.9/fs/open.c
  	error = chown_common(&path, user, group);
  	mnt_drop_write(path.mnt);
  out_release:
-@@ -584,6 +607,10 @@ SYSCALL_DEFINE3(lchown, const char __use
+@@ -584,6 +607,10 @@ SYSCALL_DEFINE3(lchown, const char __user *, filename, uid_t, user, gid_t, group
  	error = mnt_want_write(path.mnt);
  	if (error)
  		goto out_release;
@@ -6143,7 +6282,7 @@ diff -NurpP --minimal linux-3.4.48/fs/open.c linux-3.4.48-vs2.3.3.9/fs/open.c
  	error = chown_common(&path, user, group);
  	mnt_drop_write(path.mnt);
  out_release:
-@@ -839,6 +866,7 @@ static void __put_unused_fd(struct files
+@@ -839,6 +866,7 @@ static void __put_unused_fd(struct files_struct *files, unsigned int fd)
  	__clear_open_fd(fd, fdt);
  	if (fd < files->next_fd)
  		files->next_fd = fd;
@@ -6151,9 +6290,10 @@ diff -NurpP --minimal linux-3.4.48/fs/open.c linux-3.4.48-vs2.3.3.9/fs/open.c
  }
  
  void put_unused_fd(unsigned int fd)
-diff -NurpP --minimal linux-3.4.48/fs/proc/array.c linux-3.4.48-vs2.3.3.9/fs/proc/array.c
---- linux-3.4.48/fs/proc/array.c	2012-05-21 16:07:26.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/proc/array.c	2012-05-21 16:15:05.000000000 +0000
+diff --git a/fs/proc/array.c b/fs/proc/array.c
+index f9bd395..b0300cc 100644
+--- a/fs/proc/array.c
++++ b/fs/proc/array.c
 @@ -81,6 +81,8 @@
  #include <linux/pid_namespace.h>
  #include <linux/ptrace.h>
@@ -6163,7 +6303,7 @@ diff -NurpP --minimal linux-3.4.48/fs/proc/array.c linux-3.4.48-vs2.3.3.9/fs/pro
  
  #include <asm/pgtable.h>
  #include <asm/processor.h>
-@@ -170,6 +172,9 @@ static inline void task_state(struct seq
+@@ -170,6 +172,9 @@ static inline void task_state(struct seq_file *m, struct pid_namespace *ns,
  	rcu_read_lock();
  	ppid = pid_alive(p) ?
  		task_tgid_nr_ns(rcu_dereference(p->real_parent), ns) : 0;
@@ -6173,7 +6313,7 @@ diff -NurpP --minimal linux-3.4.48/fs/proc/array.c linux-3.4.48-vs2.3.3.9/fs/pro
  	tpid = 0;
  	if (pid_alive(p)) {
  		struct task_struct *tracer = ptrace_parent(p);
-@@ -287,7 +292,7 @@ static inline void task_sig(struct seq_f
+@@ -287,7 +292,7 @@ static inline void task_sig(struct seq_file *m, struct task_struct *p)
  }
  
  static void render_cap_t(struct seq_file *m, const char *header,
@@ -6182,7 +6322,7 @@ diff -NurpP --minimal linux-3.4.48/fs/proc/array.c linux-3.4.48-vs2.3.3.9/fs/pro
  {
  	unsigned __capi;
  
-@@ -312,10 +317,11 @@ static inline void task_cap(struct seq_f
+@@ -312,10 +317,11 @@ static inline void task_cap(struct seq_file *m, struct task_struct *p)
  	cap_bset	= cred->cap_bset;
  	rcu_read_unlock();
  
@@ -6198,7 +6338,7 @@ diff -NurpP --minimal linux-3.4.48/fs/proc/array.c linux-3.4.48-vs2.3.3.9/fs/pro
  }
  
  static inline void task_context_switch_counts(struct seq_file *m,
-@@ -337,6 +343,42 @@ static void task_cpus_allowed(struct seq
+@@ -337,6 +343,42 @@ static void task_cpus_allowed(struct seq_file *m, struct task_struct *task)
  	seq_putc(m, '\n');
  }
  
@@ -6241,7 +6381,7 @@ diff -NurpP --minimal linux-3.4.48/fs/proc/array.c linux-3.4.48-vs2.3.3.9/fs/pro
  int proc_pid_status(struct seq_file *m, struct pid_namespace *ns,
  			struct pid *pid, struct task_struct *task)
  {
-@@ -353,6 +395,7 @@ int proc_pid_status(struct seq_file *m,
+@@ -353,6 +395,7 @@ int proc_pid_status(struct seq_file *m, struct pid_namespace *ns,
  	task_cap(m, task);
  	task_cpus_allowed(m, task);
  	cpuset_task_status_allowed(m, task);
@@ -6249,7 +6389,7 @@ diff -NurpP --minimal linux-3.4.48/fs/proc/array.c linux-3.4.48-vs2.3.3.9/fs/pro
  	task_context_switch_counts(m, task);
  	return 0;
  }
-@@ -462,6 +505,17 @@ static int do_task_stat(struct seq_file
+@@ -462,6 +505,17 @@ static int do_task_stat(struct seq_file *m, struct pid_namespace *ns,
  	/* convert nsec -> ticks */
  	start_time = nsec_to_clock_t(start_time);
  
@@ -6267,9 +6407,10 @@ diff -NurpP --minimal linux-3.4.48/fs/proc/array.c linux-3.4.48-vs2.3.3.9/fs/pro
  	seq_printf(m, "%d (%s) %c", pid_nr_ns(pid, ns), tcomm, state);
  	seq_put_decimal_ll(m, ' ', ppid);
  	seq_put_decimal_ll(m, ' ', pgid);
-diff -NurpP --minimal linux-3.4.48/fs/proc/base.c linux-3.4.48-vs2.3.3.9/fs/proc/base.c
---- linux-3.4.48/fs/proc/base.c	2013-06-13 08:59:35.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/proc/base.c	2012-06-28 14:45:07.000000000 +0000
+diff --git a/fs/proc/base.c b/fs/proc/base.c
+index 9fc77b4..eea14cb 100644
+--- a/fs/proc/base.c
++++ b/fs/proc/base.c
 @@ -84,6 +84,8 @@
  #include <linux/fs_struct.h>
  #include <linux/slab.h>
@@ -6279,7 +6420,7 @@ diff -NurpP --minimal linux-3.4.48/fs/proc/base.c linux-3.4.48-vs2.3.3.9/fs/proc
  #ifdef CONFIG_HARDWALL
  #include <asm/hardwall.h>
  #endif
-@@ -937,11 +939,16 @@ static ssize_t oom_adjust_write(struct f
+@@ -937,11 +939,16 @@ static ssize_t oom_adjust_write(struct file *file, const char __user *buf,
  		goto err_task_lock;
  	}
  
@@ -6297,7 +6438,7 @@ diff -NurpP --minimal linux-3.4.48/fs/proc/base.c linux-3.4.48-vs2.3.3.9/fs/proc
  	/*
  	 * Warn that /proc/pid/oom_adj is deprecated, see
  	 * Documentation/feature-removal-schedule.txt.
-@@ -1541,6 +1548,8 @@ struct inode *proc_pid_make_inode(struct
+@@ -1541,6 +1548,8 @@ struct inode *proc_pid_make_inode(struct super_block * sb, struct task_struct *t
  		inode->i_gid = cred->egid;
  		rcu_read_unlock();
  	}
@@ -6306,7 +6447,7 @@ diff -NurpP --minimal linux-3.4.48/fs/proc/base.c linux-3.4.48-vs2.3.3.9/fs/proc
  	security_task_to_inode(task, inode);
  
  out:
-@@ -1586,6 +1595,8 @@ int pid_getattr(struct vfsmount *mnt, st
+@@ -1586,6 +1595,8 @@ int pid_getattr(struct vfsmount *mnt, struct dentry *dentry, struct kstat *stat)
  
  /* dentry stuff */
  
@@ -6315,7 +6456,7 @@ diff -NurpP --minimal linux-3.4.48/fs/proc/base.c linux-3.4.48-vs2.3.3.9/fs/proc
  /*
   *	Exceptional case: normally we are not allowed to unhash a busy
   * directory. In this case, however, we can do it - no aliasing problems
-@@ -1614,6 +1625,12 @@ int pid_revalidate(struct dentry *dentry
+@@ -1614,6 +1625,12 @@ int pid_revalidate(struct dentry *dentry, struct nameidata *nd)
  	task = get_proc_task(inode);
  
  	if (task) {
@@ -6328,7 +6469,7 @@ diff -NurpP --minimal linux-3.4.48/fs/proc/base.c linux-3.4.48-vs2.3.3.9/fs/proc
  		if ((inode->i_mode == (S_IFDIR|S_IRUGO|S_IXUGO)) ||
  		    task_dumpable(task)) {
  			rcu_read_lock();
-@@ -1630,6 +1647,7 @@ int pid_revalidate(struct dentry *dentry
+@@ -1630,6 +1647,7 @@ int pid_revalidate(struct dentry *dentry, struct nameidata *nd)
  		put_task_struct(task);
  		return 1;
  	}
@@ -6336,7 +6477,7 @@ diff -NurpP --minimal linux-3.4.48/fs/proc/base.c linux-3.4.48-vs2.3.3.9/fs/proc
  	d_drop(dentry);
  	return 0;
  }
-@@ -2452,6 +2470,13 @@ static struct dentry *proc_pident_lookup
+@@ -2452,6 +2470,13 @@ static struct dentry *proc_pident_lookup(struct inode *dir,
  	if (!task)
  		goto out_no_task;
  
@@ -6359,7 +6500,7 @@ diff -NurpP --minimal linux-3.4.48/fs/proc/base.c linux-3.4.48-vs2.3.3.9/fs/proc
  	const struct pid_entry *p, *last;
  
  	error = ERR_PTR(-ENOENT);
-@@ -2944,6 +2969,9 @@ static int proc_pid_personality(struct s
+@@ -2944,6 +2969,9 @@ static int proc_pid_personality(struct seq_file *m, struct pid_namespace *ns,
  static const struct file_operations proc_task_operations;
  static const struct inode_operations proc_task_inode_operations;
  
@@ -6369,7 +6510,7 @@ diff -NurpP --minimal linux-3.4.48/fs/proc/base.c linux-3.4.48-vs2.3.3.9/fs/proc
  static const struct pid_entry tgid_base_stuff[] = {
  	DIR("task",       S_IRUGO|S_IXUGO, proc_task_inode_operations, proc_task_operations),
  	DIR("fd",         S_IRUSR|S_IXUSR, proc_fd_inode_operations, proc_fd_operations),
-@@ -3010,6 +3038,8 @@ static const struct pid_entry tgid_base_
+@@ -3010,6 +3038,8 @@ static const struct pid_entry tgid_base_stuff[] = {
  #ifdef CONFIG_CGROUPS
  	REG("cgroup",  S_IRUGO, proc_cgroup_operations),
  #endif
@@ -6378,7 +6519,7 @@ diff -NurpP --minimal linux-3.4.48/fs/proc/base.c linux-3.4.48-vs2.3.3.9/fs/proc
  	INF("oom_score",  S_IRUGO, proc_oom_score),
  	REG("oom_adj",    S_IRUGO|S_IWUSR, proc_oom_adjust_operations),
  	REG("oom_score_adj", S_IRUGO|S_IWUSR, proc_oom_score_adj_operations),
-@@ -3029,6 +3059,7 @@ static const struct pid_entry tgid_base_
+@@ -3029,6 +3059,7 @@ static const struct pid_entry tgid_base_stuff[] = {
  #ifdef CONFIG_HARDWALL
  	INF("hardwall",   S_IRUGO, proc_pid_hardwall),
  #endif
@@ -6395,7 +6536,7 @@ diff -NurpP --minimal linux-3.4.48/fs/proc/base.c linux-3.4.48-vs2.3.3.9/fs/proc
  		iter.task = pid_task(pid, PIDTYPE_PID);
  		/* What we to know is if the pid we have find is the
  		 * pid of a thread_group_leader.  Testing for task
-@@ -3252,7 +3283,7 @@ static int proc_pid_fill_cache(struct fi
+@@ -3252,7 +3283,7 @@ static int proc_pid_fill_cache(struct file *filp, void *dirent, filldir_t filldi
  	struct tgid_iter iter)
  {
  	char name[PROC_NUMBUF];
@@ -6404,7 +6545,7 @@ diff -NurpP --minimal linux-3.4.48/fs/proc/base.c linux-3.4.48-vs2.3.3.9/fs/proc
  	return proc_fill_cache(filp, dirent, filldir, name, len,
  				proc_pid_instantiate, iter.task, NULL);
  }
-@@ -3276,7 +3307,7 @@ int proc_pid_readdir(struct file * filp,
+@@ -3276,7 +3307,7 @@ int proc_pid_readdir(struct file * filp, void * dirent, filldir_t filldir)
  		goto out_no_task;
  	nr = filp->f_pos - FIRST_PROCESS_ENTRY;
  
@@ -6413,7 +6554,7 @@ diff -NurpP --minimal linux-3.4.48/fs/proc/base.c linux-3.4.48-vs2.3.3.9/fs/proc
  	if (!reaper)
  		goto out_no_task;
  
-@@ -3298,6 +3329,8 @@ int proc_pid_readdir(struct file * filp,
+@@ -3298,6 +3329,8 @@ int proc_pid_readdir(struct file * filp, void * dirent, filldir_t filldir)
  			__filldir = fake_filldir;
  
  		filp->f_pos = iter.tgid + TGID_OFFSET;
@@ -6422,7 +6563,7 @@ diff -NurpP --minimal linux-3.4.48/fs/proc/base.c linux-3.4.48-vs2.3.3.9/fs/proc
  		if (proc_pid_fill_cache(filp, dirent, __filldir, iter) < 0) {
  			put_task_struct(iter.task);
  			goto out;
-@@ -3451,6 +3484,8 @@ static struct dentry *proc_task_lookup(s
+@@ -3451,6 +3484,8 @@ static struct dentry *proc_task_lookup(struct inode *dir, struct dentry * dentry
  	tid = name_to_int(dentry);
  	if (tid == ~0U)
  		goto out;
@@ -6431,9 +6572,10 @@ diff -NurpP --minimal linux-3.4.48/fs/proc/base.c linux-3.4.48-vs2.3.3.9/fs/proc
  
  	ns = dentry->d_sb->s_fs_info;
  	rcu_read_lock();
-diff -NurpP --minimal linux-3.4.48/fs/proc/generic.c linux-3.4.48-vs2.3.3.9/fs/proc/generic.c
---- linux-3.4.48/fs/proc/generic.c	2012-03-19 18:47:26.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/proc/generic.c	2012-05-21 16:15:05.000000000 +0000
+diff --git a/fs/proc/generic.c b/fs/proc/generic.c
+index 2edf34f..3154d5b 100644
+--- a/fs/proc/generic.c
++++ b/fs/proc/generic.c
 @@ -22,6 +22,7 @@
  #include <linux/bitops.h>
  #include <linux/spinlock.h>
@@ -6442,7 +6584,7 @@ diff -NurpP --minimal linux-3.4.48/fs/proc/generic.c linux-3.4.48-vs2.3.3.9/fs/p
  #include <asm/uaccess.h>
  
  #include "internal.h"
-@@ -424,11 +425,15 @@ struct dentry *proc_lookup_de(struct pro
+@@ -424,11 +425,15 @@ struct dentry *proc_lookup_de(struct proc_dir_entry *de, struct inode *dir,
  	for (de = de->subdir; de ; de = de->next) {
  		if (de->namelen != dentry->d_name.len)
  			continue;
@@ -6458,7 +6600,7 @@ diff -NurpP --minimal linux-3.4.48/fs/proc/generic.c linux-3.4.48-vs2.3.3.9/fs/p
  			goto out_unlock;
  		}
  	}
-@@ -506,6 +511,8 @@ int proc_readdir_de(struct proc_dir_entr
+@@ -506,6 +511,8 @@ int proc_readdir_de(struct proc_dir_entry *de, struct file *filp, void *dirent,
  
  				/* filldir passes info to user space */
  				pde_get(de);
@@ -6467,7 +6609,7 @@ diff -NurpP --minimal linux-3.4.48/fs/proc/generic.c linux-3.4.48-vs2.3.3.9/fs/p
  				spin_unlock(&proc_subdir_lock);
  				if (filldir(dirent, de->name, de->namelen, filp->f_pos,
  					    de->low_ino, de->mode >> 12) < 0) {
-@@ -513,6 +520,7 @@ int proc_readdir_de(struct proc_dir_entr
+@@ -513,6 +520,7 @@ int proc_readdir_de(struct proc_dir_entry *de, struct file *filp, void *dirent,
  					goto out;
  				}
  				spin_lock(&proc_subdir_lock);
@@ -6475,7 +6617,7 @@ diff -NurpP --minimal linux-3.4.48/fs/proc/generic.c linux-3.4.48-vs2.3.3.9/fs/p
  				filp->f_pos++;
  				next = de->next;
  				pde_put(de);
-@@ -626,6 +634,7 @@ static struct proc_dir_entry *__proc_cre
+@@ -626,6 +634,7 @@ static struct proc_dir_entry *__proc_create(struct proc_dir_entry **parent,
  	ent->nlink = nlink;
  	atomic_set(&ent->count, 1);
  	ent->pde_users = 0;
@@ -6483,7 +6625,7 @@ diff -NurpP --minimal linux-3.4.48/fs/proc/generic.c linux-3.4.48-vs2.3.3.9/fs/p
  	spin_lock_init(&ent->pde_unload_lock);
  	ent->pde_unload_completion = NULL;
  	INIT_LIST_HEAD(&ent->pde_openers);
-@@ -649,7 +658,8 @@ struct proc_dir_entry *proc_symlink(cons
+@@ -649,7 +658,8 @@ struct proc_dir_entry *proc_symlink(const char *name,
  				kfree(ent->data);
  				kfree(ent);
  				ent = NULL;
@@ -6493,10 +6635,11 @@ diff -NurpP --minimal linux-3.4.48/fs/proc/generic.c linux-3.4.48-vs2.3.3.9/fs/p
  		} else {
  			kfree(ent);
  			ent = NULL;
-diff -NurpP --minimal linux-3.4.48/fs/proc/inode.c linux-3.4.48-vs2.3.3.9/fs/proc/inode.c
---- linux-3.4.48/fs/proc/inode.c	2012-05-21 16:07:26.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/proc/inode.c	2012-05-21 16:15:05.000000000 +0000
-@@ -458,6 +458,8 @@ struct inode *proc_get_inode(struct supe
+diff --git a/fs/proc/inode.c b/fs/proc/inode.c
+index 205c922..82266c0 100644
+--- a/fs/proc/inode.c
++++ b/fs/proc/inode.c
+@@ -458,6 +458,8 @@ struct inode *proc_get_inode(struct super_block *sb, struct proc_dir_entry *de)
  			inode->i_uid = de->uid;
  			inode->i_gid = de->gid;
  		}
@@ -6505,9 +6648,10 @@ diff -NurpP --minimal linux-3.4.48/fs/proc/inode.c linux-3.4.48-vs2.3.3.9/fs/pro
  		if (de->size)
  			inode->i_size = de->size;
  		if (de->nlink)
-diff -NurpP --minimal linux-3.4.48/fs/proc/internal.h linux-3.4.48-vs2.3.3.9/fs/proc/internal.h
---- linux-3.4.48/fs/proc/internal.h	2012-05-21 16:07:26.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/proc/internal.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/fs/proc/internal.h b/fs/proc/internal.h
+index 5f79bb8..c6bc064 100644
+--- a/fs/proc/internal.h
++++ b/fs/proc/internal.h
 @@ -10,6 +10,8 @@
   */
  
@@ -6517,7 +6661,7 @@ diff -NurpP --minimal linux-3.4.48/fs/proc/internal.h linux-3.4.48-vs2.3.3.9/fs/
  struct  ctl_table_header;
  
  extern struct proc_dir_entry proc_root;
-@@ -54,6 +56,9 @@ extern int proc_pid_status(struct seq_fi
+@@ -54,6 +56,9 @@ extern int proc_pid_status(struct seq_file *m, struct pid_namespace *ns,
  				struct pid *pid, struct task_struct *task);
  extern int proc_pid_statm(struct seq_file *m, struct pid_namespace *ns,
  				struct pid *pid, struct task_struct *task);
@@ -6527,7 +6671,7 @@ diff -NurpP --minimal linux-3.4.48/fs/proc/internal.h linux-3.4.48-vs2.3.3.9/fs/
  extern loff_t mem_lseek(struct file *file, loff_t offset, int orig);
  
  extern const struct file_operations proc_pid_maps_operations;
-@@ -82,11 +87,16 @@ static inline struct pid *proc_pid(struc
+@@ -82,11 +87,16 @@ static inline struct pid *proc_pid(struct inode *inode)
  	return PROC_I(inode)->pid;
  }
  
@@ -6545,9 +6689,10 @@ diff -NurpP --minimal linux-3.4.48/fs/proc/internal.h linux-3.4.48-vs2.3.3.9/fs/
  static inline int proc_fd(struct inode *inode)
  {
  	return PROC_I(inode)->fd;
-diff -NurpP --minimal linux-3.4.48/fs/proc/loadavg.c linux-3.4.48-vs2.3.3.9/fs/proc/loadavg.c
---- linux-3.4.48/fs/proc/loadavg.c	2009-09-10 13:26:23.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/proc/loadavg.c	2012-05-21 16:15:05.000000000 +0000
+diff --git a/fs/proc/loadavg.c b/fs/proc/loadavg.c
+index 1afa4dd..c7a8901 100644
+--- a/fs/proc/loadavg.c
++++ b/fs/proc/loadavg.c
 @@ -12,15 +12,27 @@
  
  static int loadavg_proc_show(struct seq_file *m, void *v)
@@ -6577,10 +6722,11 @@ diff -NurpP --minimal linux-3.4.48/fs/proc/loadavg.c linux-3.4.48-vs2.3.3.9/fs/p
  		task_active_pid_ns(current)->last_pid);
  	return 0;
  }
-diff -NurpP --minimal linux-3.4.48/fs/proc/meminfo.c linux-3.4.48-vs2.3.3.9/fs/proc/meminfo.c
---- linux-3.4.48/fs/proc/meminfo.c	2012-01-09 15:14:55.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/proc/meminfo.c	2012-05-21 16:15:05.000000000 +0000
-@@ -39,7 +39,8 @@ static int meminfo_proc_show(struct seq_
+diff --git a/fs/proc/meminfo.c b/fs/proc/meminfo.c
+index 80e4645..c8ae47e 100644
+--- a/fs/proc/meminfo.c
++++ b/fs/proc/meminfo.c
+@@ -39,7 +39,8 @@ static int meminfo_proc_show(struct seq_file *m, void *v)
  	allowed = ((totalram_pages - hugetlb_total_pages())
  		* sysctl_overcommit_ratio / 100) + total_swap_pages;
  
@@ -6590,9 +6736,10 @@ diff -NurpP --minimal linux-3.4.48/fs/proc/meminfo.c linux-3.4.48-vs2.3.3.9/fs/p
  			total_swapcache_pages - i.bufferram;
  	if (cached < 0)
  		cached = 0;
-diff -NurpP --minimal linux-3.4.48/fs/proc/root.c linux-3.4.48-vs2.3.3.9/fs/proc/root.c
---- linux-3.4.48/fs/proc/root.c	2012-05-21 16:07:26.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/proc/root.c	2012-05-21 16:15:05.000000000 +0000
+diff --git a/fs/proc/root.c b/fs/proc/root.c
+index eed44bf..23bc771 100644
+--- a/fs/proc/root.c
++++ b/fs/proc/root.c
 @@ -19,9 +19,14 @@
  #include <linux/mount.h>
  #include <linux/pid_namespace.h>
@@ -6624,9 +6771,10 @@ diff -NurpP --minimal linux-3.4.48/fs/proc/root.c linux-3.4.48-vs2.3.3.9/fs/proc
  	.name		= "/proc",
  };
  
-diff -NurpP --minimal linux-3.4.48/fs/proc/stat.c linux-3.4.48-vs2.3.3.9/fs/proc/stat.c
---- linux-3.4.48/fs/proc/stat.c	2013-06-13 08:59:35.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/proc/stat.c	2012-11-06 17:02:35.000000000 +0000
+diff --git a/fs/proc/stat.c b/fs/proc/stat.c
+index e296572..378a2a9 100644
+--- a/fs/proc/stat.c
++++ b/fs/proc/stat.c
 @@ -9,6 +9,7 @@
  #include <linux/slab.h>
  #include <linux/time.h>
@@ -6635,7 +6783,7 @@ diff -NurpP --minimal linux-3.4.48/fs/proc/stat.c linux-3.4.48-vs2.3.3.9/fs/proc
  #include <asm/cputime.h>
  #include <linux/tick.h>
  
-@@ -92,6 +93,10 @@ static int show_stat(struct seq_file *p,
+@@ -92,6 +93,10 @@ static int show_stat(struct seq_file *p, void *v)
  		irq = softirq = steal = 0;
  	guest = guest_nice = 0;
  	getboottime(&boottime);
@@ -6646,9 +6794,10 @@ diff -NurpP --minimal linux-3.4.48/fs/proc/stat.c linux-3.4.48-vs2.3.3.9/fs/proc
  	jif = boottime.tv_sec;
  
  	for_each_possible_cpu(i) {
-diff -NurpP --minimal linux-3.4.48/fs/proc/uptime.c linux-3.4.48-vs2.3.3.9/fs/proc/uptime.c
---- linux-3.4.48/fs/proc/uptime.c	2012-03-19 18:47:26.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/proc/uptime.c	2012-05-21 16:15:05.000000000 +0000
+diff --git a/fs/proc/uptime.c b/fs/proc/uptime.c
+index 9610ac7..5b37714 100644
+--- a/fs/proc/uptime.c
++++ b/fs/proc/uptime.c
 @@ -5,6 +5,7 @@
  #include <linux/seq_file.h>
  #include <linux/time.h>
@@ -6657,7 +6806,7 @@ diff -NurpP --minimal linux-3.4.48/fs/proc/uptime.c linux-3.4.48-vs2.3.3.9/fs/pr
  #include <asm/cputime.h>
  
  static int uptime_proc_show(struct seq_file *m, void *v)
-@@ -25,6 +26,10 @@ static int uptime_proc_show(struct seq_f
+@@ -25,6 +26,10 @@ static int uptime_proc_show(struct seq_file *m, void *v)
  	nsec = cputime64_to_jiffies64(idletime) * TICK_NSEC;
  	idle.tv_sec = div_u64_rem(nsec, NSEC_PER_SEC, &rem);
  	idle.tv_nsec = rem;
@@ -6668,10 +6817,11 @@ diff -NurpP --minimal linux-3.4.48/fs/proc/uptime.c linux-3.4.48-vs2.3.3.9/fs/pr
  	seq_printf(m, "%lu.%02lu %lu.%02lu\n",
  			(unsigned long) uptime.tv_sec,
  			(uptime.tv_nsec / (NSEC_PER_SEC / 100)),
-diff -NurpP --minimal linux-3.4.48/fs/proc_namespace.c linux-3.4.48-vs2.3.3.9/fs/proc_namespace.c
---- linux-3.4.48/fs/proc_namespace.c	2012-03-19 18:47:26.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/proc_namespace.c	2012-05-21 16:15:05.000000000 +0000
-@@ -44,6 +44,8 @@ static int show_sb_opts(struct seq_file
+diff --git a/fs/proc_namespace.c b/fs/proc_namespace.c
+index 1241285..23000d8 100644
+--- a/fs/proc_namespace.c
++++ b/fs/proc_namespace.c
+@@ -44,6 +44,8 @@ static int show_sb_opts(struct seq_file *m, struct super_block *sb)
  		{ MS_SYNCHRONOUS, ",sync" },
  		{ MS_DIRSYNC, ",dirsync" },
  		{ MS_MANDLOCK, ",mand" },
@@ -6680,7 +6830,7 @@ diff -NurpP --minimal linux-3.4.48/fs/proc_namespace.c linux-3.4.48-vs2.3.3.9/fs
  		{ 0, NULL }
  	};
  	const struct proc_fs_info *fs_infop;
-@@ -80,6 +82,34 @@ static inline void mangle(struct seq_fil
+@@ -80,6 +82,34 @@ static inline void mangle(struct seq_file *m, const char *s)
  	seq_escape(m, s, " \t\n\\");
  }
  
@@ -6715,7 +6865,7 @@ diff -NurpP --minimal linux-3.4.48/fs/proc_namespace.c linux-3.4.48-vs2.3.3.9/fs
  static void show_type(struct seq_file *m, struct super_block *sb)
  {
  	mangle(m, sb->s_type->name);
-@@ -96,6 +126,17 @@ static int show_vfsmnt(struct seq_file *
+@@ -96,6 +126,17 @@ static int show_vfsmnt(struct seq_file *m, struct vfsmount *mnt)
  	struct path mnt_path = { .dentry = mnt->mnt_root, .mnt = mnt };
  	struct super_block *sb = mnt_path.dentry->d_sb;
  
@@ -6733,7 +6883,7 @@ diff -NurpP --minimal linux-3.4.48/fs/proc_namespace.c linux-3.4.48-vs2.3.3.9/fs
  	if (sb->s_op->show_devname) {
  		err = sb->s_op->show_devname(m, mnt_path.dentry);
  		if (err)
-@@ -106,6 +147,7 @@ static int show_vfsmnt(struct seq_file *
+@@ -106,6 +147,7 @@ static int show_vfsmnt(struct seq_file *m, struct vfsmount *mnt)
  	seq_putc(m, ' ');
  	seq_path(m, &mnt_path, " \t\n\\");
  	seq_putc(m, ' ');
@@ -6741,7 +6891,7 @@ diff -NurpP --minimal linux-3.4.48/fs/proc_namespace.c linux-3.4.48-vs2.3.3.9/fs
  	show_type(m, sb);
  	seq_puts(m, __mnt_is_readonly(mnt) ? " ro" : " rw");
  	err = show_sb_opts(m, sb);
-@@ -128,6 +170,11 @@ static int show_mountinfo(struct seq_fil
+@@ -128,6 +170,11 @@ static int show_mountinfo(struct seq_file *m, struct vfsmount *mnt)
  	struct path root = p->root;
  	int err = 0;
  
@@ -6753,7 +6903,7 @@ diff -NurpP --minimal linux-3.4.48/fs/proc_namespace.c linux-3.4.48-vs2.3.3.9/fs
  	seq_printf(m, "%i %i %u:%u ", r->mnt_id, r->mnt_parent->mnt_id,
  		   MAJOR(sb->s_dev), MINOR(sb->s_dev));
  	if (sb->s_op->show_path)
-@@ -187,6 +234,17 @@ static int show_vfsstat(struct seq_file
+@@ -187,6 +234,17 @@ static int show_vfsstat(struct seq_file *m, struct vfsmount *mnt)
  	struct super_block *sb = mnt_path.dentry->d_sb;
  	int err = 0;
  
@@ -6771,7 +6921,7 @@ diff -NurpP --minimal linux-3.4.48/fs/proc_namespace.c linux-3.4.48-vs2.3.3.9/fs
  	/* device */
  	if (sb->s_op->show_devname) {
  		seq_puts(m, "device ");
-@@ -203,7 +261,7 @@ static int show_vfsstat(struct seq_file
+@@ -203,7 +261,7 @@ static int show_vfsstat(struct seq_file *m, struct vfsmount *mnt)
  	seq_puts(m, " mounted on ");
  	seq_path(m, &mnt_path, " \t\n\\");
  	seq_putc(m, ' ');
@@ -6780,10 +6930,11 @@ diff -NurpP --minimal linux-3.4.48/fs/proc_namespace.c linux-3.4.48-vs2.3.3.9/fs
  	/* file system type */
  	seq_puts(m, "with fstype ");
  	show_type(m, sb);
-diff -NurpP --minimal linux-3.4.48/fs/quota/dquot.c linux-3.4.48-vs2.3.3.9/fs/quota/dquot.c
---- linux-3.4.48/fs/quota/dquot.c	2012-05-21 16:07:26.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/quota/dquot.c	2012-05-21 16:15:05.000000000 +0000
-@@ -1563,6 +1563,9 @@ int __dquot_alloc_space(struct inode *in
+diff --git a/fs/quota/dquot.c b/fs/quota/dquot.c
+index d69a1d1..77e33ba 100644
+--- a/fs/quota/dquot.c
++++ b/fs/quota/dquot.c
+@@ -1563,6 +1563,9 @@ int __dquot_alloc_space(struct inode *inode, qsize_t number, int flags)
  	struct dquot **dquots = inode->i_dquot;
  	int reserve = flags & DQUOT_SPACE_RESERVE;
  
@@ -6793,7 +6944,7 @@ diff -NurpP --minimal linux-3.4.48/fs/quota/dquot.c linux-3.4.48-vs2.3.3.9/fs/qu
  	/*
  	 * First test before acquiring mutex - solves deadlocks when we
  	 * re-enter the quota code and are already holding the mutex
-@@ -1618,6 +1621,9 @@ int dquot_alloc_inode(const struct inode
+@@ -1618,6 +1621,9 @@ int dquot_alloc_inode(const struct inode *inode)
  	struct dquot_warn warn[MAXQUOTAS];
  	struct dquot * const *dquots = inode->i_dquot;
  
@@ -6803,7 +6954,7 @@ diff -NurpP --minimal linux-3.4.48/fs/quota/dquot.c linux-3.4.48-vs2.3.3.9/fs/qu
  	/* First test before acquiring mutex - solves deadlocks when we
           * re-enter the quota code and are already holding the mutex */
  	if (!dquot_active(inode))
-@@ -1689,6 +1695,8 @@ void __dquot_free_space(struct inode *in
+@@ -1689,6 +1695,8 @@ void __dquot_free_space(struct inode *inode, qsize_t number, int flags)
  	struct dquot **dquots = inode->i_dquot;
  	int reserve = flags & DQUOT_SPACE_RESERVE;
  
@@ -6812,7 +6963,7 @@ diff -NurpP --minimal linux-3.4.48/fs/quota/dquot.c linux-3.4.48-vs2.3.3.9/fs/qu
  	/* First test before acquiring mutex - solves deadlocks when we
           * re-enter the quota code and are already holding the mutex */
  	if (!dquot_active(inode)) {
-@@ -1733,6 +1741,8 @@ void dquot_free_inode(const struct inode
+@@ -1733,6 +1741,8 @@ void dquot_free_inode(const struct inode *inode)
  	struct dquot_warn warn[MAXQUOTAS];
  	struct dquot * const *dquots = inode->i_dquot;
  
@@ -6821,9 +6972,10 @@ diff -NurpP --minimal linux-3.4.48/fs/quota/dquot.c linux-3.4.48-vs2.3.3.9/fs/qu
  	/* First test before acquiring mutex - solves deadlocks when we
           * re-enter the quota code and are already holding the mutex */
  	if (!dquot_active(inode))
-diff -NurpP --minimal linux-3.4.48/fs/quota/quota.c linux-3.4.48-vs2.3.3.9/fs/quota/quota.c
---- linux-3.4.48/fs/quota/quota.c	2012-05-21 16:07:26.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/quota/quota.c	2012-05-21 16:15:05.000000000 +0000
+diff --git a/fs/quota/quota.c b/fs/quota/quota.c
+index 9a39120..79cb4b1 100644
+--- a/fs/quota/quota.c
++++ b/fs/quota/quota.c
 @@ -8,6 +8,7 @@
  #include <linux/fs.h>
  #include <linux/namei.h>
@@ -6832,7 +6984,7 @@ diff -NurpP --minimal linux-3.4.48/fs/quota/quota.c linux-3.4.48-vs2.3.3.9/fs/qu
  #include <asm/current.h>
  #include <asm/uaccess.h>
  #include <linux/kernel.h>
-@@ -37,7 +38,7 @@ static int check_quotactl_permission(str
+@@ -37,7 +38,7 @@ static int check_quotactl_permission(struct super_block *sb, int type, int cmd,
  			break;
  		/*FALLTHROUGH*/
  	default:
@@ -6841,7 +6993,7 @@ diff -NurpP --minimal linux-3.4.48/fs/quota/quota.c linux-3.4.48-vs2.3.3.9/fs/qu
  			return -EPERM;
  	}
  
-@@ -291,6 +292,46 @@ static int do_quotactl(struct super_bloc
+@@ -291,6 +292,46 @@ static int do_quotactl(struct super_block *sb, int type, int cmd, qid_t id,
  	}
  }
  
@@ -6888,7 +7040,7 @@ diff -NurpP --minimal linux-3.4.48/fs/quota/quota.c linux-3.4.48-vs2.3.3.9/fs/qu
  /* Return 1 if 'cmd' will block on frozen filesystem */
  static int quotactl_cmd_write(int cmd)
  {
-@@ -323,6 +364,22 @@ static struct super_block *quotactl_bloc
+@@ -323,6 +364,22 @@ static struct super_block *quotactl_block(const char __user *special, int cmd)
  	putname(tmp);
  	if (IS_ERR(bdev))
  		return ERR_CAST(bdev);
@@ -6911,19 +7063,21 @@ diff -NurpP --minimal linux-3.4.48/fs/quota/quota.c linux-3.4.48-vs2.3.3.9/fs/qu
  	if (quotactl_cmd_write(cmd))
  		sb = get_super_thawed(bdev);
  	else
-diff -NurpP --minimal linux-3.4.48/fs/reiserfs/file.c linux-3.4.48-vs2.3.3.9/fs/reiserfs/file.c
---- linux-3.4.48/fs/reiserfs/file.c	2012-05-21 16:07:26.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/reiserfs/file.c	2012-05-21 16:15:05.000000000 +0000
-@@ -319,5 +319,6 @@ const struct inode_operations reiserfs_f
+diff --git a/fs/reiserfs/file.c b/fs/reiserfs/file.c
+index 8375c92..8c6e73d 100644
+--- a/fs/reiserfs/file.c
++++ b/fs/reiserfs/file.c
+@@ -319,5 +319,6 @@ const struct inode_operations reiserfs_file_inode_operations = {
  	.listxattr = reiserfs_listxattr,
  	.removexattr = reiserfs_removexattr,
  	.permission = reiserfs_permission,
 +	.sync_flags = reiserfs_sync_flags,
  	.get_acl = reiserfs_get_acl,
  };
-diff -NurpP --minimal linux-3.4.48/fs/reiserfs/inode.c linux-3.4.48-vs2.3.3.9/fs/reiserfs/inode.c
---- linux-3.4.48/fs/reiserfs/inode.c	2013-06-13 08:59:35.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/reiserfs/inode.c	2012-12-08 00:53:53.000000000 +0000
+diff --git a/fs/reiserfs/inode.c b/fs/reiserfs/inode.c
+index c11db51..b7dc936 100644
+--- a/fs/reiserfs/inode.c
++++ b/fs/reiserfs/inode.c
 @@ -18,6 +18,7 @@
  #include <linux/writeback.h>
  #include <linux/quotaops.h>
@@ -6932,7 +7086,7 @@ diff -NurpP --minimal linux-3.4.48/fs/reiserfs/inode.c linux-3.4.48-vs2.3.3.9/fs
  
  int reiserfs_commit_write(struct file *f, struct page *page,
  			  unsigned from, unsigned to);
-@@ -1131,6 +1132,8 @@ static void init_inode(struct inode *ino
+@@ -1131,6 +1132,8 @@ static void init_inode(struct inode *inode, struct treepath *path)
  	struct buffer_head *bh;
  	struct item_head *ih;
  	__u32 rdev;
@@ -6941,7 +7095,7 @@ diff -NurpP --minimal linux-3.4.48/fs/reiserfs/inode.c linux-3.4.48-vs2.3.3.9/fs
  	//int version = ITEM_VERSION_1;
  
  	bh = PATH_PLAST_BUFFER(path);
-@@ -1151,12 +1154,13 @@ static void init_inode(struct inode *ino
+@@ -1151,12 +1154,13 @@ static void init_inode(struct inode *inode, struct treepath *path)
  		    (struct stat_data_v1 *)B_I_PITEM(bh, ih);
  		unsigned long blocks;
  
@@ -6957,7 +7111,7 @@ diff -NurpP --minimal linux-3.4.48/fs/reiserfs/inode.c linux-3.4.48-vs2.3.3.9/fs
  		inode->i_size = sd_v1_size(sd);
  		inode->i_atime.tv_sec = sd_v1_atime(sd);
  		inode->i_mtime.tv_sec = sd_v1_mtime(sd);
-@@ -1198,11 +1202,12 @@ static void init_inode(struct inode *ino
+@@ -1198,11 +1202,12 @@ static void init_inode(struct inode *inode, struct treepath *path)
  		// (directories and symlinks)
  		struct stat_data *sd = (struct stat_data *)B_I_PITEM(bh, ih);
  
@@ -6972,7 +7126,7 @@ diff -NurpP --minimal linux-3.4.48/fs/reiserfs/inode.c linux-3.4.48-vs2.3.3.9/fs
  		inode->i_mtime.tv_sec = sd_v2_mtime(sd);
  		inode->i_atime.tv_sec = sd_v2_atime(sd);
  		inode->i_ctime.tv_sec = sd_v2_ctime(sd);
-@@ -1232,6 +1237,10 @@ static void init_inode(struct inode *ino
+@@ -1232,6 +1237,10 @@ static void init_inode(struct inode *inode, struct treepath *path)
  		sd_attrs_to_i_attrs(sd_v2_attrs(sd), inode);
  	}
  
@@ -6983,7 +7137,7 @@ diff -NurpP --minimal linux-3.4.48/fs/reiserfs/inode.c linux-3.4.48-vs2.3.3.9/fs
  	pathrelse(path);
  	if (S_ISREG(inode->i_mode)) {
  		inode->i_op = &reiserfs_file_inode_operations;
-@@ -1254,13 +1263,15 @@ static void init_inode(struct inode *ino
+@@ -1254,13 +1263,15 @@ static void init_inode(struct inode *inode, struct treepath *path)
  static void inode2sd(void *sd, struct inode *inode, loff_t size)
  {
  	struct stat_data *sd_v2 = (struct stat_data *)sd;
@@ -7001,7 +7155,7 @@ diff -NurpP --minimal linux-3.4.48/fs/reiserfs/inode.c linux-3.4.48-vs2.3.3.9/fs
  	set_sd_v2_mtime(sd_v2, inode->i_mtime.tv_sec);
  	set_sd_v2_atime(sd_v2, inode->i_atime.tv_sec);
  	set_sd_v2_ctime(sd_v2, inode->i_ctime.tv_sec);
-@@ -2875,14 +2886,19 @@ int reiserfs_commit_write(struct file *f
+@@ -2875,14 +2886,19 @@ int reiserfs_commit_write(struct file *f, struct page *page,
  void sd_attrs_to_i_attrs(__u16 sd_attrs, struct inode *inode)
  {
  	if (reiserfs_attrs(inode->i_sb)) {
@@ -7025,7 +7179,7 @@ diff -NurpP --minimal linux-3.4.48/fs/reiserfs/inode.c linux-3.4.48-vs2.3.3.9/fs
  		if (sd_attrs & REISERFS_APPEND_FL)
  			inode->i_flags |= S_APPEND;
  		else
-@@ -2895,6 +2911,15 @@ void sd_attrs_to_i_attrs(__u16 sd_attrs,
+@@ -2895,6 +2911,15 @@ void sd_attrs_to_i_attrs(__u16 sd_attrs, struct inode *inode)
  			REISERFS_I(inode)->i_flags |= i_nopack_mask;
  		else
  			REISERFS_I(inode)->i_flags &= ~i_nopack_mask;
@@ -7041,7 +7195,7 @@ diff -NurpP --minimal linux-3.4.48/fs/reiserfs/inode.c linux-3.4.48-vs2.3.3.9/fs
  	}
  }
  
-@@ -2905,6 +2930,11 @@ void i_attrs_to_sd_attrs(struct inode *i
+@@ -2905,6 +2930,11 @@ void i_attrs_to_sd_attrs(struct inode *inode, __u16 * sd_attrs)
  			*sd_attrs |= REISERFS_IMMUTABLE_FL;
  		else
  			*sd_attrs &= ~REISERFS_IMMUTABLE_FL;
@@ -7053,7 +7207,7 @@ diff -NurpP --minimal linux-3.4.48/fs/reiserfs/inode.c linux-3.4.48-vs2.3.3.9/fs
  		if (inode->i_flags & S_SYNC)
  			*sd_attrs |= REISERFS_SYNC_FL;
  		else
-@@ -2917,6 +2947,15 @@ void i_attrs_to_sd_attrs(struct inode *i
+@@ -2917,6 +2947,15 @@ void i_attrs_to_sd_attrs(struct inode *inode, __u16 * sd_attrs)
  			*sd_attrs |= REISERFS_NOTAIL_FL;
  		else
  			*sd_attrs &= ~REISERFS_NOTAIL_FL;
@@ -7069,7 +7223,7 @@ diff -NurpP --minimal linux-3.4.48/fs/reiserfs/inode.c linux-3.4.48-vs2.3.3.9/fs
  	}
  }
  
-@@ -3161,7 +3200,8 @@ int reiserfs_setattr(struct dentry *dent
+@@ -3161,7 +3200,8 @@ int reiserfs_setattr(struct dentry *dentry, struct iattr *attr)
  	}
  
  	if ((ia_valid & ATTR_UID && attr->ia_uid != inode->i_uid) ||
@@ -7079,7 +7233,7 @@ diff -NurpP --minimal linux-3.4.48/fs/reiserfs/inode.c linux-3.4.48-vs2.3.3.9/fs
  		struct reiserfs_transaction_handle th;
  		int jbegin_count =
  		    2 *
-@@ -3192,6 +3232,9 @@ int reiserfs_setattr(struct dentry *dent
+@@ -3192,6 +3232,9 @@ int reiserfs_setattr(struct dentry *dentry, struct iattr *attr)
  			inode->i_uid = attr->ia_uid;
  		if (attr->ia_valid & ATTR_GID)
  			inode->i_gid = attr->ia_gid;
@@ -7089,9 +7243,10 @@ diff -NurpP --minimal linux-3.4.48/fs/reiserfs/inode.c linux-3.4.48-vs2.3.3.9/fs
  		mark_inode_dirty(inode);
  		error = journal_end(&th, inode->i_sb, jbegin_count);
  		if (error)
-diff -NurpP --minimal linux-3.4.48/fs/reiserfs/ioctl.c linux-3.4.48-vs2.3.3.9/fs/reiserfs/ioctl.c
---- linux-3.4.48/fs/reiserfs/ioctl.c	2012-05-21 16:07:27.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/reiserfs/ioctl.c	2012-05-21 16:15:05.000000000 +0000
+diff --git a/fs/reiserfs/ioctl.c b/fs/reiserfs/ioctl.c
+index 0c21850..c285691 100644
+--- a/fs/reiserfs/ioctl.c
++++ b/fs/reiserfs/ioctl.c
 @@ -11,6 +11,21 @@
  #include <linux/pagemap.h>
  #include <linux/compat.h>
@@ -7123,7 +7278,7 @@ diff -NurpP --minimal linux-3.4.48/fs/reiserfs/ioctl.c linux-3.4.48-vs2.3.3.9/fs
  	int err = 0;
  
  	reiserfs_write_lock(inode->i_sb);
-@@ -47,6 +62,7 @@ long reiserfs_ioctl(struct file *filp, u
+@@ -47,6 +62,7 @@ long reiserfs_ioctl(struct file *filp, unsigned int cmd, unsigned long arg)
  
  		flags = REISERFS_I(inode)->i_attrs;
  		i_attrs_to_sd_attrs(inode, (__u16 *) & flags);
@@ -7131,7 +7286,7 @@ diff -NurpP --minimal linux-3.4.48/fs/reiserfs/ioctl.c linux-3.4.48-vs2.3.3.9/fs
  		err = put_user(flags, (int __user *)arg);
  		break;
  	case REISERFS_IOC_SETFLAGS:{
-@@ -67,6 +83,10 @@ long reiserfs_ioctl(struct file *filp, u
+@@ -67,6 +83,10 @@ long reiserfs_ioctl(struct file *filp, unsigned int cmd, unsigned long arg)
  				err = -EFAULT;
  				goto setflags_out;
  			}
@@ -7142,7 +7297,7 @@ diff -NurpP --minimal linux-3.4.48/fs/reiserfs/ioctl.c linux-3.4.48-vs2.3.3.9/fs
  			/*
  			 * Is it quota file? Do not allow user to mess with it
  			 */
-@@ -91,6 +111,10 @@ long reiserfs_ioctl(struct file *filp, u
+@@ -91,6 +111,10 @@ long reiserfs_ioctl(struct file *filp, unsigned int cmd, unsigned long arg)
  					goto setflags_out;
  				}
  			}
@@ -7153,9 +7308,10 @@ diff -NurpP --minimal linux-3.4.48/fs/reiserfs/ioctl.c linux-3.4.48-vs2.3.3.9/fs
  			sd_attrs_to_i_attrs(flags, inode);
  			REISERFS_I(inode)->i_attrs = flags;
  			inode->i_ctime = CURRENT_TIME_SEC;
-diff -NurpP --minimal linux-3.4.48/fs/reiserfs/namei.c linux-3.4.48-vs2.3.3.9/fs/reiserfs/namei.c
---- linux-3.4.48/fs/reiserfs/namei.c	2012-05-21 16:07:27.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/reiserfs/namei.c	2012-05-21 16:15:05.000000000 +0000
+diff --git a/fs/reiserfs/namei.c b/fs/reiserfs/namei.c
+index 84e8a69..2a1a8b3 100644
+--- a/fs/reiserfs/namei.c
++++ b/fs/reiserfs/namei.c
 @@ -18,6 +18,7 @@
  #include "acl.h"
  #include "xattr.h"
@@ -7164,7 +7320,7 @@ diff -NurpP --minimal linux-3.4.48/fs/reiserfs/namei.c linux-3.4.48-vs2.3.3.9/fs
  
  #define INC_DIR_INODE_NLINK(i) if (i->i_nlink != 1) { inc_nlink(i); if (i->i_nlink >= REISERFS_LINK_MAX) set_nlink(i, 1); }
  #define DEC_DIR_INODE_NLINK(i) if (i->i_nlink != 1) drop_nlink(i);
-@@ -362,6 +363,7 @@ static struct dentry *reiserfs_lookup(st
+@@ -362,6 +363,7 @@ static struct dentry *reiserfs_lookup(struct inode *dir, struct dentry *dentry,
  	if (retval == IO_ERROR) {
  		return ERR_PTR(-EIO);
  	}
@@ -7172,9 +7328,10 @@ diff -NurpP --minimal linux-3.4.48/fs/reiserfs/namei.c linux-3.4.48-vs2.3.3.9/fs
  
  	return d_splice_alias(inode, dentry);
  }
-diff -NurpP --minimal linux-3.4.48/fs/reiserfs/reiserfs.h linux-3.4.48-vs2.3.3.9/fs/reiserfs/reiserfs.h
---- linux-3.4.48/fs/reiserfs/reiserfs.h	2012-05-21 16:07:27.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/reiserfs/reiserfs.h	2012-05-21 17:19:33.000000000 +0000
+diff --git a/fs/reiserfs/reiserfs.h b/fs/reiserfs/reiserfs.h
+index a59d271..9d9dc3a 100644
+--- a/fs/reiserfs/reiserfs.h
++++ b/fs/reiserfs/reiserfs.h
 @@ -544,6 +544,7 @@ enum reiserfs_mount_options {
  	REISERFS_EXPOSE_PRIVROOT,
  	REISERFS_BARRIER_NONE,
@@ -7205,7 +7362,7 @@ diff -NurpP --minimal linux-3.4.48/fs/reiserfs/reiserfs.h linux-3.4.48-vs2.3.3.9
  /* Stat Data on disk (reiserfs version of UFS disk inode minus the
     address blocks) */
  struct stat_data {
-@@ -2641,6 +2650,7 @@ static inline void reiserfs_update_sd(st
+@@ -2641,6 +2650,7 @@ static inline void reiserfs_update_sd(struct reiserfs_transaction_handle *th,
  void sd_attrs_to_i_attrs(__u16 sd_attrs, struct inode *inode);
  void i_attrs_to_sd_attrs(struct inode *inode, __u16 * sd_attrs);
  int reiserfs_setattr(struct dentry *dentry, struct iattr *attr);
@@ -7213,10 +7370,11 @@ diff -NurpP --minimal linux-3.4.48/fs/reiserfs/reiserfs.h linux-3.4.48-vs2.3.3.9
  
  int __reiserfs_write_begin(struct page *page, unsigned from, unsigned len);
  
-diff -NurpP --minimal linux-3.4.48/fs/reiserfs/super.c linux-3.4.48-vs2.3.3.9/fs/reiserfs/super.c
---- linux-3.4.48/fs/reiserfs/super.c	2013-06-13 08:59:35.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/reiserfs/super.c	2012-12-08 00:53:53.000000000 +0000
-@@ -982,6 +982,14 @@ static int reiserfs_parse_options(struct
+diff --git a/fs/reiserfs/super.c b/fs/reiserfs/super.c
+index 8169be9..ae8e537 100644
+--- a/fs/reiserfs/super.c
++++ b/fs/reiserfs/super.c
+@@ -982,6 +982,14 @@ static int reiserfs_parse_options(struct super_block *s, char *options,	/* strin
  		{"user_xattr",.setmask = 1 << REISERFS_UNSUPPORTED_OPT},
  		{"nouser_xattr",.clrmask = 1 << REISERFS_UNSUPPORTED_OPT},
  #endif
@@ -7231,7 +7389,7 @@ diff -NurpP --minimal linux-3.4.48/fs/reiserfs/super.c linux-3.4.48-vs2.3.3.9/fs
  #ifdef CONFIG_REISERFS_FS_POSIX_ACL
  		{"acl",.setmask = 1 << REISERFS_POSIXACL},
  		{"noacl",.clrmask = 1 << REISERFS_POSIXACL},
-@@ -1300,6 +1308,14 @@ static int reiserfs_remount(struct super
+@@ -1300,6 +1308,14 @@ static int reiserfs_remount(struct super_block *s, int *mount_flags, char *arg)
  	handle_quota_files(s, qf_names, &qfmt);
  #endif
  
@@ -7246,7 +7404,7 @@ diff -NurpP --minimal linux-3.4.48/fs/reiserfs/super.c linux-3.4.48-vs2.3.3.9/fs
  	handle_attrs(s);
  
  	/* Add options that are safe here */
-@@ -1792,6 +1808,10 @@ static int reiserfs_fill_super(struct su
+@@ -1792,6 +1808,10 @@ static int reiserfs_fill_super(struct super_block *s, void *data, int silent)
  		goto error_unlocked;
  	}
  
@@ -7257,9 +7415,10 @@ diff -NurpP --minimal linux-3.4.48/fs/reiserfs/super.c linux-3.4.48-vs2.3.3.9/fs
  	rs = SB_DISK_SUPER_BLOCK(s);
  	/* Let's do basic sanity check to verify that underlying device is not
  	   smaller than the filesystem. If the check fails then abort and scream,
-diff -NurpP --minimal linux-3.4.48/fs/reiserfs/xattr.c linux-3.4.48-vs2.3.3.9/fs/reiserfs/xattr.c
---- linux-3.4.48/fs/reiserfs/xattr.c	2012-05-21 16:07:27.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/reiserfs/xattr.c	2013-06-13 09:46:39.000000000 +0000
+diff --git a/fs/reiserfs/xattr.c b/fs/reiserfs/xattr.c
+index 048d990..32bd2be 100644
+--- a/fs/reiserfs/xattr.c
++++ b/fs/reiserfs/xattr.c
 @@ -40,6 +40,7 @@
  #include <linux/errno.h>
  #include <linux/gfp.h>
@@ -7268,10 +7427,11 @@ diff -NurpP --minimal linux-3.4.48/fs/reiserfs/xattr.c linux-3.4.48-vs2.3.3.9/fs
  #include <linux/file.h>
  #include <linux/pagemap.h>
  #include <linux/xattr.h>
-diff -NurpP --minimal linux-3.4.48/fs/stat.c linux-3.4.48-vs2.3.3.9/fs/stat.c
---- linux-3.4.48/fs/stat.c	2013-06-13 08:59:35.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/stat.c	2012-10-22 13:09:53.000000000 +0000
-@@ -26,6 +26,7 @@ void generic_fillattr(struct inode *inod
+diff --git a/fs/stat.c b/fs/stat.c
+index dc6d0be..5e6a73f 100644
+--- a/fs/stat.c
++++ b/fs/stat.c
+@@ -26,6 +26,7 @@ void generic_fillattr(struct inode *inode, struct kstat *stat)
  	stat->nlink = inode->i_nlink;
  	stat->uid = inode->i_uid;
  	stat->gid = inode->i_gid;
@@ -7279,9 +7439,10 @@ diff -NurpP --minimal linux-3.4.48/fs/stat.c linux-3.4.48-vs2.3.3.9/fs/stat.c
  	stat->rdev = inode->i_rdev;
  	stat->size = i_size_read(inode);
  	stat->atime = inode->i_atime;
-diff -NurpP --minimal linux-3.4.48/fs/statfs.c linux-3.4.48-vs2.3.3.9/fs/statfs.c
---- linux-3.4.48/fs/statfs.c	2012-05-21 16:07:27.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/statfs.c	2012-05-21 16:15:05.000000000 +0000
+diff --git a/fs/statfs.c b/fs/statfs.c
+index 43e6b6f..bb1c8af 100644
+--- a/fs/statfs.c
++++ b/fs/statfs.c
 @@ -7,6 +7,8 @@
  #include <linux/statfs.h>
  #include <linux/security.h>
@@ -7291,7 +7452,7 @@ diff -NurpP --minimal linux-3.4.48/fs/statfs.c linux-3.4.48-vs2.3.3.9/fs/statfs.
  #include "internal.h"
  
  static int flags_by_mnt(int mnt_flags)
-@@ -60,6 +62,8 @@ static int statfs_by_dentry(struct dentr
+@@ -60,6 +62,8 @@ static int statfs_by_dentry(struct dentry *dentry, struct kstatfs *buf)
  	retval = dentry->d_sb->s_op->statfs(dentry, buf);
  	if (retval == 0 && buf->f_frsize == 0)
  		buf->f_frsize = buf->f_bsize;
@@ -7300,9 +7461,10 @@ diff -NurpP --minimal linux-3.4.48/fs/statfs.c linux-3.4.48-vs2.3.3.9/fs/statfs.
  	return retval;
  }
  
-diff -NurpP --minimal linux-3.4.48/fs/super.c linux-3.4.48-vs2.3.3.9/fs/super.c
---- linux-3.4.48/fs/super.c	2012-05-21 16:07:27.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/super.c	2012-05-21 16:59:38.000000000 +0000
+diff --git a/fs/super.c b/fs/super.c
+index 3c520a5..c54c8c3 100644
+--- a/fs/super.c
++++ b/fs/super.c
 @@ -33,6 +33,8 @@
  #include <linux/rculist_bl.h>
  #include <linux/cleancache.h>
@@ -7312,7 +7474,7 @@ diff -NurpP --minimal linux-3.4.48/fs/super.c linux-3.4.48-vs2.3.3.9/fs/super.c
  #include "internal.h"
  
  
-@@ -1138,6 +1140,13 @@ mount_fs(struct file_system_type *type,
+@@ -1133,6 +1135,13 @@ mount_fs(struct file_system_type *type, int flags, const char *name, void *data)
  	WARN_ON(sb->s_bdi == &default_backing_dev_info);
  	sb->s_flags |= MS_BORN;
  
@@ -7326,10 +7488,11 @@ diff -NurpP --minimal linux-3.4.48/fs/super.c linux-3.4.48-vs2.3.3.9/fs/super.c
  	error = security_sb_kern_mount(sb, flags, secdata);
  	if (error)
  		goto out_sb;
-diff -NurpP --minimal linux-3.4.48/fs/sysfs/mount.c linux-3.4.48-vs2.3.3.9/fs/sysfs/mount.c
---- linux-3.4.48/fs/sysfs/mount.c	2012-05-21 16:07:27.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/sysfs/mount.c	2012-05-21 16:15:05.000000000 +0000
-@@ -47,7 +47,7 @@ static int sysfs_fill_super(struct super
+diff --git a/fs/sysfs/mount.c b/fs/sysfs/mount.c
+index 52c3bdb..9a1d6a5 100644
+--- a/fs/sysfs/mount.c
++++ b/fs/sysfs/mount.c
+@@ -47,7 +47,7 @@ static int sysfs_fill_super(struct super_block *sb, void *data, int silent)
  
  	sb->s_blocksize = PAGE_CACHE_SIZE;
  	sb->s_blocksize_bits = PAGE_CACHE_SHIFT;
@@ -7338,9 +7501,10 @@ diff -NurpP --minimal linux-3.4.48/fs/sysfs/mount.c linux-3.4.48-vs2.3.3.9/fs/sy
  	sb->s_op = &sysfs_ops;
  	sb->s_time_gran = 1;
  
-diff -NurpP --minimal linux-3.4.48/fs/utimes.c linux-3.4.48-vs2.3.3.9/fs/utimes.c
---- linux-3.4.48/fs/utimes.c	2011-05-22 14:17:54.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/utimes.c	2012-05-21 16:15:05.000000000 +0000
+diff --git a/fs/utimes.c b/fs/utimes.c
+index ba653f3..ffac095 100644
+--- a/fs/utimes.c
++++ b/fs/utimes.c
 @@ -8,6 +8,8 @@
  #include <linux/stat.h>
  #include <linux/utime.h>
@@ -7350,7 +7514,7 @@ diff -NurpP --minimal linux-3.4.48/fs/utimes.c linux-3.4.48-vs2.3.3.9/fs/utimes.
  #include <asm/uaccess.h>
  #include <asm/unistd.h>
  
-@@ -52,12 +54,18 @@ static int utimes_common(struct path *pa
+@@ -52,12 +54,18 @@ static int utimes_common(struct path *path, struct timespec *times)
  {
  	int error;
  	struct iattr newattrs;
@@ -7370,9 +7534,10 @@ diff -NurpP --minimal linux-3.4.48/fs/utimes.c linux-3.4.48-vs2.3.3.9/fs/utimes.
  	if (times && times[0].tv_nsec == UTIME_NOW &&
  		     times[1].tv_nsec == UTIME_NOW)
  		times = NULL;
-diff -NurpP --minimal linux-3.4.48/fs/xattr.c linux-3.4.48-vs2.3.3.9/fs/xattr.c
---- linux-3.4.48/fs/xattr.c	2012-05-21 16:07:27.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/xattr.c	2012-05-21 16:15:05.000000000 +0000
+diff --git a/fs/xattr.c b/fs/xattr.c
+index 3c8c1cc..fc48afc 100644
+--- a/fs/xattr.c
++++ b/fs/xattr.c
 @@ -20,6 +20,7 @@
  #include <linux/fsnotify.h>
  #include <linux/audit.h>
@@ -7381,7 +7546,7 @@ diff -NurpP --minimal linux-3.4.48/fs/xattr.c linux-3.4.48-vs2.3.3.9/fs/xattr.c
  
  #include <asm/uaccess.h>
  
-@@ -51,7 +52,7 @@ xattr_permission(struct inode *inode, co
+@@ -51,7 +52,7 @@ xattr_permission(struct inode *inode, const char *name, int mask)
  	 * The trusted.* namespace can only be accessed by privileged users.
  	 */
  	if (!strncmp(name, XATTR_TRUSTED_PREFIX, XATTR_TRUSTED_PREFIX_LEN)) {
@@ -7390,9 +7555,10 @@ diff -NurpP --minimal linux-3.4.48/fs/xattr.c linux-3.4.48-vs2.3.3.9/fs/xattr.c
  			return (mask & MAY_WRITE) ? -EPERM : -ENODATA;
  		return 0;
  	}
-diff -NurpP --minimal linux-3.4.48/fs/xfs/xfs_dinode.h linux-3.4.48-vs2.3.3.9/fs/xfs/xfs_dinode.h
---- linux-3.4.48/fs/xfs/xfs_dinode.h	2011-10-24 16:45:31.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/xfs/xfs_dinode.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/fs/xfs/xfs_dinode.h b/fs/xfs/xfs_dinode.h
+index a372163..a2bad6a 100644
+--- a/fs/xfs/xfs_dinode.h
++++ b/fs/xfs/xfs_dinode.h
 @@ -51,7 +51,9 @@ typedef struct xfs_dinode {
  	__be32		di_nlink;	/* number of links to file */
  	__be16		di_projid_lo;	/* lower part of owner's project id */
@@ -7404,7 +7570,7 @@ diff -NurpP --minimal linux-3.4.48/fs/xfs/xfs_dinode.h linux-3.4.48-vs2.3.3.9/fs
  	__be16		di_flushiter;	/* incremented on flush */
  	xfs_timestamp_t	di_atime;	/* time last accessed */
  	xfs_timestamp_t	di_mtime;	/* time last modified */
-@@ -184,6 +186,8 @@ static inline void xfs_dinode_put_rdev(s
+@@ -184,6 +186,8 @@ static inline void xfs_dinode_put_rdev(struct xfs_dinode *dip, xfs_dev_t rdev)
  #define XFS_DIFLAG_EXTSZINHERIT_BIT 12	/* inherit inode extent size */
  #define XFS_DIFLAG_NODEFRAG_BIT     13	/* do not reorganize/defragment */
  #define XFS_DIFLAG_FILESTREAM_BIT   14  /* use filestream allocator */
@@ -7413,7 +7579,7 @@ diff -NurpP --minimal linux-3.4.48/fs/xfs/xfs_dinode.h linux-3.4.48-vs2.3.3.9/fs
  #define XFS_DIFLAG_REALTIME      (1 << XFS_DIFLAG_REALTIME_BIT)
  #define XFS_DIFLAG_PREALLOC      (1 << XFS_DIFLAG_PREALLOC_BIT)
  #define XFS_DIFLAG_NEWRTBM       (1 << XFS_DIFLAG_NEWRTBM_BIT)
-@@ -199,6 +203,7 @@ static inline void xfs_dinode_put_rdev(s
+@@ -199,6 +203,7 @@ static inline void xfs_dinode_put_rdev(struct xfs_dinode *dip, xfs_dev_t rdev)
  #define XFS_DIFLAG_EXTSZINHERIT  (1 << XFS_DIFLAG_EXTSZINHERIT_BIT)
  #define XFS_DIFLAG_NODEFRAG      (1 << XFS_DIFLAG_NODEFRAG_BIT)
  #define XFS_DIFLAG_FILESTREAM    (1 << XFS_DIFLAG_FILESTREAM_BIT)
@@ -7421,7 +7587,7 @@ diff -NurpP --minimal linux-3.4.48/fs/xfs/xfs_dinode.h linux-3.4.48-vs2.3.3.9/fs
  
  #ifdef CONFIG_XFS_RT
  #define XFS_IS_REALTIME_INODE(ip) ((ip)->i_d.di_flags & XFS_DIFLAG_REALTIME)
-@@ -211,6 +216,10 @@ static inline void xfs_dinode_put_rdev(s
+@@ -211,6 +216,10 @@ static inline void xfs_dinode_put_rdev(struct xfs_dinode *dip, xfs_dev_t rdev)
  	 XFS_DIFLAG_IMMUTABLE | XFS_DIFLAG_APPEND | XFS_DIFLAG_SYNC | \
  	 XFS_DIFLAG_NOATIME | XFS_DIFLAG_NODUMP | XFS_DIFLAG_RTINHERIT | \
  	 XFS_DIFLAG_PROJINHERIT | XFS_DIFLAG_NOSYMLINKS | XFS_DIFLAG_EXTSIZE | \
@@ -7433,9 +7599,10 @@ diff -NurpP --minimal linux-3.4.48/fs/xfs/xfs_dinode.h linux-3.4.48-vs2.3.3.9/fs
 +#define XFS_DIVFLAG_COW		0x02
  
  #endif	/* __XFS_DINODE_H__ */
-diff -NurpP --minimal linux-3.4.48/fs/xfs/xfs_fs.h linux-3.4.48-vs2.3.3.9/fs/xfs/xfs_fs.h
---- linux-3.4.48/fs/xfs/xfs_fs.h	2011-10-24 16:45:31.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/xfs/xfs_fs.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/fs/xfs/xfs_fs.h b/fs/xfs/xfs_fs.h
+index c13fed8..6bfbcd1 100644
+--- a/fs/xfs/xfs_fs.h
++++ b/fs/xfs/xfs_fs.h
 @@ -67,6 +67,9 @@ struct fsxattr {
  #define XFS_XFLAG_EXTSZINHERIT	0x00001000	/* inherit inode extent size */
  #define XFS_XFLAG_NODEFRAG	0x00002000  	/* do not defragment */
@@ -7456,9 +7623,10 @@ diff -NurpP --minimal linux-3.4.48/fs/xfs/xfs_fs.h linux-3.4.48-vs2.3.3.9/fs/xfs
  	__u32		bs_dmevmask;	/* DMIG event mask		*/
  	__u16		bs_dmstate;	/* DMIG state info		*/
  	__u16		bs_aextents;	/* attribute number of extents	*/
-diff -NurpP --minimal linux-3.4.48/fs/xfs/xfs_ialloc.c linux-3.4.48-vs2.3.3.9/fs/xfs/xfs_ialloc.c
---- linux-3.4.48/fs/xfs/xfs_ialloc.c	2012-03-19 18:47:27.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/xfs/xfs_ialloc.c	2012-05-21 16:15:05.000000000 +0000
+diff --git a/fs/xfs/xfs_ialloc.c b/fs/xfs/xfs_ialloc.c
+index dad1a31..2bb267f 100644
+--- a/fs/xfs/xfs_ialloc.c
++++ b/fs/xfs/xfs_ialloc.c
 @@ -37,7 +37,6 @@
  #include "xfs_error.h"
  #include "xfs_bmap.h"
@@ -7467,9 +7635,10 @@ diff -NurpP --minimal linux-3.4.48/fs/xfs/xfs_ialloc.c linux-3.4.48-vs2.3.3.9/fs
  /*
   * Allocation group level functions.
   */
-diff -NurpP --minimal linux-3.4.48/fs/xfs/xfs_inode.c linux-3.4.48-vs2.3.3.9/fs/xfs/xfs_inode.c
---- linux-3.4.48/fs/xfs/xfs_inode.c	2012-05-21 16:07:27.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/xfs/xfs_inode.c	2012-05-21 16:15:05.000000000 +0000
+diff --git a/fs/xfs/xfs_inode.c b/fs/xfs/xfs_inode.c
+index bc46c0a..5b88287 100644
+--- a/fs/xfs/xfs_inode.c
++++ b/fs/xfs/xfs_inode.c
 @@ -236,6 +236,7 @@ xfs_inotobp(
  	return 0;
  }
@@ -7644,9 +7813,10 @@ diff -NurpP --minimal linux-3.4.48/fs/xfs/xfs_inode.c linux-3.4.48-vs2.3.3.9/fs/
  
  	/* Wrap, we never let the log put out DI_MAX_FLUSH */
  	if (ip->i_d.di_flushiter == DI_MAX_FLUSH)
-diff -NurpP --minimal linux-3.4.48/fs/xfs/xfs_inode.h linux-3.4.48-vs2.3.3.9/fs/xfs/xfs_inode.h
---- linux-3.4.48/fs/xfs/xfs_inode.h	2012-05-21 16:07:27.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/xfs/xfs_inode.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/fs/xfs/xfs_inode.h b/fs/xfs/xfs_inode.h
+index 7fee338..dbc374b 100644
+--- a/fs/xfs/xfs_inode.h
++++ b/fs/xfs/xfs_inode.h
 @@ -134,7 +134,9 @@ typedef struct xfs_icdinode {
  	__uint32_t	di_nlink;	/* number of links to file */
  	__uint16_t	di_projid_lo;	/* lower part of owner's project id */
@@ -7658,7 +7828,7 @@ diff -NurpP --minimal linux-3.4.48/fs/xfs/xfs_inode.h linux-3.4.48-vs2.3.3.9/fs/
  	__uint16_t	di_flushiter;	/* incremented on flush */
  	xfs_ictimestamp_t di_atime;	/* time last accessed */
  	xfs_ictimestamp_t di_mtime;	/* time last modified */
-@@ -565,7 +567,7 @@ int		xfs_itobp(struct xfs_mount *, struc
+@@ -565,7 +567,7 @@ int		xfs_itobp(struct xfs_mount *, struct xfs_trans *,
  int		xfs_iread(struct xfs_mount *, struct xfs_trans *,
  			  struct xfs_inode *, uint);
  void		xfs_dinode_to_disk(struct xfs_dinode *,
@@ -7667,9 +7837,10 @@ diff -NurpP --minimal linux-3.4.48/fs/xfs/xfs_inode.h linux-3.4.48-vs2.3.3.9/fs/
  void		xfs_idestroy_fork(struct xfs_inode *, int);
  void		xfs_idata_realloc(struct xfs_inode *, int, int);
  void		xfs_iroot_realloc(struct xfs_inode *, int, int);
-diff -NurpP --minimal linux-3.4.48/fs/xfs/xfs_ioctl.c linux-3.4.48-vs2.3.3.9/fs/xfs/xfs_ioctl.c
---- linux-3.4.48/fs/xfs/xfs_ioctl.c	2012-05-21 16:07:27.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/xfs/xfs_ioctl.c	2012-05-21 16:15:05.000000000 +0000
+diff --git a/fs/xfs/xfs_ioctl.c b/fs/xfs/xfs_ioctl.c
+index 91f8ff5..6b2f15d 100644
+--- a/fs/xfs/xfs_ioctl.c
++++ b/fs/xfs/xfs_ioctl.c
 @@ -28,7 +28,7 @@
  #include "xfs_bmap_btree.h"
  #include "xfs_dinode.h"
@@ -7738,9 +7909,10 @@ diff -NurpP --minimal linux-3.4.48/fs/xfs/xfs_ioctl.c linux-3.4.48-vs2.3.3.9/fs/
  		return xfs_ioc_setxflags(ip, filp, arg);
  
  	case XFS_IOC_FSSETDM: {
-diff -NurpP --minimal linux-3.4.48/fs/xfs/xfs_ioctl.h linux-3.4.48-vs2.3.3.9/fs/xfs/xfs_ioctl.h
---- linux-3.4.48/fs/xfs/xfs_ioctl.h	2011-10-24 16:45:31.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/xfs/xfs_ioctl.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/fs/xfs/xfs_ioctl.h b/fs/xfs/xfs_ioctl.h
+index d56173b..a8f7331 100644
+--- a/fs/xfs/xfs_ioctl.h
++++ b/fs/xfs/xfs_ioctl.h
 @@ -70,6 +70,12 @@ xfs_handle_to_dentry(
  	void __user		*uhandle,
  	u32			hlen);
@@ -7754,9 +7926,10 @@ diff -NurpP --minimal linux-3.4.48/fs/xfs/xfs_ioctl.h linux-3.4.48-vs2.3.3.9/fs/
  extern long
  xfs_file_ioctl(
  	struct file		*filp,
-diff -NurpP --minimal linux-3.4.48/fs/xfs/xfs_iops.c linux-3.4.48-vs2.3.3.9/fs/xfs/xfs_iops.c
---- linux-3.4.48/fs/xfs/xfs_iops.c	2012-05-21 16:07:27.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/xfs/xfs_iops.c	2012-05-21 16:15:05.000000000 +0000
+diff --git a/fs/xfs/xfs_iops.c b/fs/xfs/xfs_iops.c
+index 23c79ca..91a953f 100644
+--- a/fs/xfs/xfs_iops.c
++++ b/fs/xfs/xfs_iops.c
 @@ -30,6 +30,7 @@
  #include "xfs_bmap_btree.h"
  #include "xfs_dinode.h"
@@ -7781,7 +7954,7 @@ diff -NurpP --minimal linux-3.4.48/fs/xfs/xfs_iops.c linux-3.4.48-vs2.3.3.9/fs/x
  	stat->ino = ip->i_ino;
  	stat->atime = inode->i_atime;
  	stat->mtime = inode->i_mtime;
-@@ -996,6 +999,7 @@ static const struct inode_operations xfs
+@@ -1013,6 +1016,7 @@ static const struct inode_operations xfs_inode_operations = {
  	.removexattr		= generic_removexattr,
  	.listxattr		= xfs_vn_listxattr,
  	.fiemap			= xfs_vn_fiemap,
@@ -7789,7 +7962,7 @@ diff -NurpP --minimal linux-3.4.48/fs/xfs/xfs_iops.c linux-3.4.48-vs2.3.3.9/fs/x
  };
  
  static const struct inode_operations xfs_dir_inode_operations = {
-@@ -1021,6 +1025,7 @@ static const struct inode_operations xfs
+@@ -1038,6 +1042,7 @@ static const struct inode_operations xfs_dir_inode_operations = {
  	.getxattr		= generic_getxattr,
  	.removexattr		= generic_removexattr,
  	.listxattr		= xfs_vn_listxattr,
@@ -7797,7 +7970,7 @@ diff -NurpP --minimal linux-3.4.48/fs/xfs/xfs_iops.c linux-3.4.48-vs2.3.3.9/fs/x
  };
  
  static const struct inode_operations xfs_dir_ci_inode_operations = {
-@@ -1070,6 +1075,10 @@ xfs_diflags_to_iflags(
+@@ -1087,6 +1092,10 @@ xfs_diflags_to_iflags(
  		inode->i_flags |= S_IMMUTABLE;
  	else
  		inode->i_flags &= ~S_IMMUTABLE;
@@ -7808,7 +7981,7 @@ diff -NurpP --minimal linux-3.4.48/fs/xfs/xfs_iops.c linux-3.4.48-vs2.3.3.9/fs/x
  	if (ip->i_d.di_flags & XFS_DIFLAG_APPEND)
  		inode->i_flags |= S_APPEND;
  	else
-@@ -1082,6 +1091,15 @@ xfs_diflags_to_iflags(
+@@ -1099,6 +1108,15 @@ xfs_diflags_to_iflags(
  		inode->i_flags |= S_NOATIME;
  	else
  		inode->i_flags &= ~S_NOATIME;
@@ -7824,7 +7997,7 @@ diff -NurpP --minimal linux-3.4.48/fs/xfs/xfs_iops.c linux-3.4.48-vs2.3.3.9/fs/x
  }
  
  /*
-@@ -1113,6 +1131,7 @@ xfs_setup_inode(
+@@ -1130,6 +1148,7 @@ xfs_setup_inode(
  	set_nlink(inode, ip->i_d.di_nlink);
  	inode->i_uid	= ip->i_d.di_uid;
  	inode->i_gid	= ip->i_d.di_gid;
@@ -7832,9 +8005,10 @@ diff -NurpP --minimal linux-3.4.48/fs/xfs/xfs_iops.c linux-3.4.48-vs2.3.3.9/fs/x
  
  	switch (inode->i_mode & S_IFMT) {
  	case S_IFBLK:
-diff -NurpP --minimal linux-3.4.48/fs/xfs/xfs_itable.c linux-3.4.48-vs2.3.3.9/fs/xfs/xfs_itable.c
---- linux-3.4.48/fs/xfs/xfs_itable.c	2012-05-21 16:07:27.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/xfs/xfs_itable.c	2012-05-21 16:15:05.000000000 +0000
+diff --git a/fs/xfs/xfs_itable.c b/fs/xfs/xfs_itable.c
+index acc2bf2..5ccb314 100644
+--- a/fs/xfs/xfs_itable.c
++++ b/fs/xfs/xfs_itable.c
 @@ -97,6 +97,7 @@ xfs_bulkstat_one_int(
  	buf->bs_mode = dic->di_mode;
  	buf->bs_uid = dic->di_uid;
@@ -7843,9 +8017,10 @@ diff -NurpP --minimal linux-3.4.48/fs/xfs/xfs_itable.c linux-3.4.48-vs2.3.3.9/fs
  	buf->bs_size = dic->di_size;
  	buf->bs_atime.tv_sec = dic->di_atime.t_sec;
  	buf->bs_atime.tv_nsec = dic->di_atime.t_nsec;
-diff -NurpP --minimal linux-3.4.48/fs/xfs/xfs_linux.h linux-3.4.48-vs2.3.3.9/fs/xfs/xfs_linux.h
---- linux-3.4.48/fs/xfs/xfs_linux.h	2011-10-24 16:45:31.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/xfs/xfs_linux.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/fs/xfs/xfs_linux.h b/fs/xfs/xfs_linux.h
+index 828662f..dbc20e6 100644
+--- a/fs/xfs/xfs_linux.h
++++ b/fs/xfs/xfs_linux.h
 @@ -121,6 +121,7 @@
  
  #define current_cpu()		(raw_smp_processor_id())
@@ -7854,9 +8029,10 @@ diff -NurpP --minimal linux-3.4.48/fs/xfs/xfs_linux.h linux-3.4.48-vs2.3.3.9/fs/
  #define current_test_flags(f)	(current->flags & (f))
  #define current_set_flags_nested(sp, f)		\
  		(*(sp) = current->flags, current->flags |= (f))
-diff -NurpP --minimal linux-3.4.48/fs/xfs/xfs_log_recover.c linux-3.4.48-vs2.3.3.9/fs/xfs/xfs_log_recover.c
---- linux-3.4.48/fs/xfs/xfs_log_recover.c	2013-06-13 08:59:35.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/xfs/xfs_log_recover.c	2012-11-18 23:52:29.000000000 +0000
+diff --git a/fs/xfs/xfs_log_recover.c b/fs/xfs/xfs_log_recover.c
+index 0abb162..f9bac62 100644
+--- a/fs/xfs/xfs_log_recover.c
++++ b/fs/xfs/xfs_log_recover.c
 @@ -2344,7 +2344,8 @@ xlog_recover_inode_pass2(
  	}
  
@@ -7867,9 +8043,10 @@ diff -NurpP --minimal linux-3.4.48/fs/xfs/xfs_log_recover.c linux-3.4.48-vs2.3.3
  
  	/* the rest is in on-disk format */
  	if (item->ri_buf[1].i_len > sizeof(struct xfs_icdinode)) {
-diff -NurpP --minimal linux-3.4.48/fs/xfs/xfs_mount.h linux-3.4.48-vs2.3.3.9/fs/xfs/xfs_mount.h
---- linux-3.4.48/fs/xfs/xfs_mount.h	2012-05-21 16:07:28.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/xfs/xfs_mount.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/fs/xfs/xfs_mount.h b/fs/xfs/xfs_mount.h
+index 9eba738..e5784cf 100644
+--- a/fs/xfs/xfs_mount.h
++++ b/fs/xfs/xfs_mount.h
 @@ -251,6 +251,7 @@ typedef struct xfs_mount {
  						   allocator */
  #define XFS_MOUNT_NOATTR2	(1ULL << 25)	/* disable use of attr2 format */
@@ -7878,9 +8055,10 @@ diff -NurpP --minimal linux-3.4.48/fs/xfs/xfs_mount.h linux-3.4.48-vs2.3.3.9/fs/
  
  /*
   * Default minimum read and write sizes.
-diff -NurpP --minimal linux-3.4.48/fs/xfs/xfs_super.c linux-3.4.48-vs2.3.3.9/fs/xfs/xfs_super.c
---- linux-3.4.48/fs/xfs/xfs_super.c	2012-05-21 16:07:28.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/xfs/xfs_super.c	2012-05-21 16:15:05.000000000 +0000
+diff --git a/fs/xfs/xfs_super.c b/fs/xfs/xfs_super.c
+index dab9a5f..01d34c9 100644
+--- a/fs/xfs/xfs_super.c
++++ b/fs/xfs/xfs_super.c
 @@ -113,6 +113,9 @@ mempool_t *xfs_ioend_pool;
  #define MNTOPT_NODELAYLOG  "nodelaylog"	/* Delayed logging disabled */
  #define MNTOPT_DISCARD	   "discard"	/* Discard unused blocks */
@@ -7953,9 +8131,10 @@ diff -NurpP --minimal linux-3.4.48/fs/xfs/xfs_super.c linux-3.4.48-vs2.3.3.9/fs/
  	/*
  	 * we must configure the block size in the superblock before we run the
  	 * full mount process as the mount process can lookup and cache inodes.
-diff -NurpP --minimal linux-3.4.48/fs/xfs/xfs_vnodeops.c linux-3.4.48-vs2.3.3.9/fs/xfs/xfs_vnodeops.c
---- linux-3.4.48/fs/xfs/xfs_vnodeops.c	2012-05-21 16:07:28.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/fs/xfs/xfs_vnodeops.c	2012-05-21 16:15:05.000000000 +0000
+diff --git a/fs/xfs/xfs_vnodeops.c b/fs/xfs/xfs_vnodeops.c
+index 64981d7..efc3c76 100644
+--- a/fs/xfs/xfs_vnodeops.c
++++ b/fs/xfs/xfs_vnodeops.c
 @@ -106,6 +106,77 @@ xfs_readlink_bmap(
  	return error;
  }
@@ -8034,9 +8213,10 @@ diff -NurpP --minimal linux-3.4.48/fs/xfs/xfs_vnodeops.c linux-3.4.48-vs2.3.3.9/
  int
  xfs_readlink(
  	xfs_inode_t     *ip,
-diff -NurpP --minimal linux-3.4.48/include/linux/Kbuild linux-3.4.48-vs2.3.3.9/include/linux/Kbuild
---- linux-3.4.48/include/linux/Kbuild	2013-06-13 08:59:35.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/Kbuild	2012-07-24 09:52:30.000000000 +0000
+diff --git a/include/linux/Kbuild b/include/linux/Kbuild
+index f2f73f9..936cee2 100644
+--- a/include/linux/Kbuild
++++ b/include/linux/Kbuild
 @@ -18,6 +18,7 @@ header-y += netfilter_bridge/
  header-y += netfilter_ipv4/
  header-y += netfilter_ipv6/
@@ -8045,9 +8225,10 @@ diff -NurpP --minimal linux-3.4.48/include/linux/Kbuild linux-3.4.48-vs2.3.3.9/i
  header-y += wimax/
  
  objhdr-y += version.h
-diff -NurpP --minimal linux-3.4.48/include/linux/capability.h linux-3.4.48-vs2.3.3.9/include/linux/capability.h
---- linux-3.4.48/include/linux/capability.h	2012-03-19 18:47:27.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/capability.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/include/linux/capability.h b/include/linux/capability.h
+index 12d52de..80dbfc5 100644
+--- a/include/linux/capability.h
++++ b/include/linux/capability.h
 @@ -280,6 +280,7 @@ struct cpu_vfs_cap_data {
     arbitrary SCSI commands */
  /* Allow setting encryption key on loopback filesystem */
@@ -8070,10 +8251,11 @@ diff -NurpP --minimal linux-3.4.48/include/linux/capability.h linux-3.4.48-vs2.3
  
  /*
   * Bit location of each capability (used by user-space library and kernel)
-diff -NurpP --minimal linux-3.4.48/include/linux/cred.h linux-3.4.48-vs2.3.3.9/include/linux/cred.h
---- linux-3.4.48/include/linux/cred.h	2012-03-19 18:47:27.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/cred.h	2012-05-21 16:15:05.000000000 +0000
-@@ -156,6 +156,7 @@ extern void exit_creds(struct task_struc
+diff --git a/include/linux/cred.h b/include/linux/cred.h
+index adadf71..ed9c50c 100644
+--- a/include/linux/cred.h
++++ b/include/linux/cred.h
+@@ -156,6 +156,7 @@ extern void exit_creds(struct task_struct *);
  extern int copy_creds(struct task_struct *, unsigned long);
  extern const struct cred *get_task_cred(struct task_struct *);
  extern struct cred *cred_alloc_blank(void);
@@ -8081,7 +8263,7 @@ diff -NurpP --minimal linux-3.4.48/include/linux/cred.h linux-3.4.48-vs2.3.3.9/i
  extern struct cred *prepare_creds(void);
  extern struct cred *prepare_exec_creds(void);
  extern int commit_creds(struct cred *);
-@@ -209,6 +210,31 @@ static inline void validate_process_cred
+@@ -209,6 +210,31 @@ static inline void validate_process_creds(void)
  }
  #endif
  
@@ -8113,18 +8295,20 @@ diff -NurpP --minimal linux-3.4.48/include/linux/cred.h linux-3.4.48-vs2.3.3.9/i
  /**
   * get_new_cred - Get a reference on a new set of credentials
   * @cred: The new credentials to reference
-diff -NurpP --minimal linux-3.4.48/include/linux/devpts_fs.h linux-3.4.48-vs2.3.3.9/include/linux/devpts_fs.h
---- linux-3.4.48/include/linux/devpts_fs.h	2008-12-24 23:26:37.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/devpts_fs.h	2012-05-21 16:15:05.000000000 +0000
-@@ -45,5 +45,4 @@ static inline void devpts_pty_kill(struc
+diff --git a/include/linux/devpts_fs.h b/include/linux/devpts_fs.h
+index 5ce0e5f..3c122e5 100644
+--- a/include/linux/devpts_fs.h
++++ b/include/linux/devpts_fs.h
+@@ -45,5 +45,4 @@ static inline void devpts_pty_kill(struct tty_struct *tty) { }
  
  #endif
  
 -
  #endif /* _LINUX_DEVPTS_FS_H */
-diff -NurpP --minimal linux-3.4.48/include/linux/fs.h linux-3.4.48-vs2.3.3.9/include/linux/fs.h
---- linux-3.4.48/include/linux/fs.h	2012-05-21 16:07:29.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/fs.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/include/linux/fs.h b/include/linux/fs.h
+index 25c40b9..fff34c5 100644
+--- a/include/linux/fs.h
++++ b/include/linux/fs.h
 @@ -214,6 +214,9 @@ struct inodes_stat_t {
  #define MS_KERNMOUNT	(1<<22) /* this is a kern_mount call */
  #define MS_I_VERSION	(1<<23) /* Update inode I_version field */
@@ -8202,7 +8386,7 @@ diff -NurpP --minimal linux-3.4.48/include/linux/fs.h linux-3.4.48-vs2.3.3.9/inc
  
  #define SYNC_FILE_RANGE_WAIT_BEFORE	1
  #define SYNC_FILE_RANGE_WRITE		2
-@@ -456,6 +483,7 @@ typedef void (dio_iodone_t)(struct kiocb
+@@ -456,6 +483,7 @@ typedef void (dio_iodone_t)(struct kiocb *iocb, loff_t offset,
  #define ATTR_KILL_PRIV	(1 << 14)
  #define ATTR_OPEN	(1 << 15) /* Truncating from open(O_TRUNC) */
  #define ATTR_TIMES_SET	(1 << 16)
@@ -8247,7 +8431,7 @@ diff -NurpP --minimal linux-3.4.48/include/linux/fs.h linux-3.4.48-vs2.3.3.9/inc
  	struct timespec		i_atime;
  	struct timespec		i_mtime;
  	struct timespec		i_ctime;
-@@ -929,12 +964,12 @@ static inline void i_size_write(struct i
+@@ -929,12 +964,12 @@ static inline void i_size_write(struct inode *inode, loff_t i_size)
  
  static inline unsigned iminor(const struct inode *inode)
  {
@@ -8286,7 +8470,7 @@ diff -NurpP --minimal linux-3.4.48/include/linux/fs.h linux-3.4.48-vs2.3.3.9/inc
  	void (*truncate_range)(struct inode *, loff_t, loff_t);
  	int (*fiemap)(struct inode *, struct fiemap_extent_info *, u64 start,
  		      u64 len);
-@@ -1680,6 +1718,7 @@ extern ssize_t vfs_readv(struct file *,
+@@ -1680,6 +1718,7 @@ extern ssize_t vfs_readv(struct file *, const struct iovec __user *,
  		unsigned long, loff_t *);
  extern ssize_t vfs_writev(struct file *, const struct iovec __user *,
  		unsigned long, loff_t *);
@@ -8294,7 +8478,7 @@ diff -NurpP --minimal linux-3.4.48/include/linux/fs.h linux-3.4.48-vs2.3.3.9/inc
  
  struct super_operations {
     	struct inode *(*alloc_inode)(struct super_block *sb);
-@@ -2509,6 +2548,7 @@ extern int dcache_dir_open(struct inode
+@@ -2509,6 +2548,7 @@ extern int dcache_dir_open(struct inode *, struct file *);
  extern int dcache_dir_close(struct inode *, struct file *);
  extern loff_t dcache_dir_lseek(struct file *, loff_t, int);
  extern int dcache_readdir(struct file *, void *, filldir_t);
@@ -8302,9 +8486,10 @@ diff -NurpP --minimal linux-3.4.48/include/linux/fs.h linux-3.4.48-vs2.3.3.9/inc
  extern int simple_setattr(struct dentry *, struct iattr *);
  extern int simple_getattr(struct vfsmount *, struct dentry *, struct kstat *);
  extern int simple_statfs(struct dentry *, struct kstatfs *);
-diff -NurpP --minimal linux-3.4.48/include/linux/gfs2_ondisk.h linux-3.4.48-vs2.3.3.9/include/linux/gfs2_ondisk.h
---- linux-3.4.48/include/linux/gfs2_ondisk.h	2012-05-21 16:07:29.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/gfs2_ondisk.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/include/linux/gfs2_ondisk.h b/include/linux/gfs2_ondisk.h
+index fa98bdb..0963c10 100644
+--- a/include/linux/gfs2_ondisk.h
++++ b/include/linux/gfs2_ondisk.h
 @@ -214,6 +214,9 @@ enum {
  	gfs2fl_NoAtime		= 7,
  	gfs2fl_Sync		= 8,
@@ -8325,9 +8510,10 @@ diff -NurpP --minimal linux-3.4.48/include/linux/gfs2_ondisk.h linux-3.4.48-vs2.
  #define GFS2_DIF_TRUNC_IN_PROG		0x20000000 /* New in gfs2 */
  #define GFS2_DIF_INHERIT_DIRECTIO	0x40000000
  #define GFS2_DIF_INHERIT_JDATA		0x80000000
-diff -NurpP --minimal linux-3.4.48/include/linux/if_tun.h linux-3.4.48-vs2.3.3.9/include/linux/if_tun.h
---- linux-3.4.48/include/linux/if_tun.h	2010-08-02 14:52:54.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/if_tun.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/include/linux/if_tun.h b/include/linux/if_tun.h
+index 06b1829..b222127 100644
+--- a/include/linux/if_tun.h
++++ b/include/linux/if_tun.h
 @@ -53,6 +53,7 @@
  #define TUNDETACHFILTER _IOW('T', 214, struct sock_fprog)
  #define TUNGETVNETHDRSZ _IOR('T', 215, int)
@@ -8336,10 +8522,11 @@ diff -NurpP --minimal linux-3.4.48/include/linux/if_tun.h linux-3.4.48-vs2.3.3.9
  
  /* TUNSETIFF ifr flags */
  #define IFF_TUN		0x0001
-diff -NurpP --minimal linux-3.4.48/include/linux/init_task.h linux-3.4.48-vs2.3.3.9/include/linux/init_task.h
---- linux-3.4.48/include/linux/init_task.h	2013-06-13 08:59:35.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/init_task.h	2012-10-22 13:09:53.000000000 +0000
-@@ -210,6 +210,10 @@ extern struct task_group root_task_group
+diff --git a/include/linux/init_task.h b/include/linux/init_task.h
+index e7bafa4..9f491e1 100644
+--- a/include/linux/init_task.h
++++ b/include/linux/init_task.h
+@@ -210,6 +210,10 @@ extern struct task_group root_task_group;
  	INIT_TRACE_RECURSION						\
  	INIT_TASK_RCU_PREEMPT(tsk)					\
  	INIT_CPUSET_SEQ							\
@@ -8350,9 +8537,10 @@ diff -NurpP --minimal linux-3.4.48/include/linux/init_task.h linux-3.4.48-vs2.3.
  }
  
  
-diff -NurpP --minimal linux-3.4.48/include/linux/ipc.h linux-3.4.48-vs2.3.3.9/include/linux/ipc.h
---- linux-3.4.48/include/linux/ipc.h	2012-03-19 18:47:28.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/ipc.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/include/linux/ipc.h b/include/linux/ipc.h
+index 30e8161..ba4ea32 100644
+--- a/include/linux/ipc.h
++++ b/include/linux/ipc.h
 @@ -91,6 +91,7 @@ struct kern_ipc_perm
  	key_t		key;
  	uid_t		uid;
@@ -8361,10 +8549,11 @@ diff -NurpP --minimal linux-3.4.48/include/linux/ipc.h linux-3.4.48-vs2.3.3.9/in
  	uid_t		cuid;
  	gid_t		cgid;
  	umode_t		mode; 
-diff -NurpP --minimal linux-3.4.48/include/linux/ipc_namespace.h linux-3.4.48-vs2.3.3.9/include/linux/ipc_namespace.h
---- linux-3.4.48/include/linux/ipc_namespace.h	2011-10-24 16:45:32.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/ipc_namespace.h	2013-06-13 09:46:39.000000000 +0000
-@@ -101,7 +101,8 @@ static inline int mq_init_ns(struct ipc_
+diff --git a/include/linux/ipc_namespace.h b/include/linux/ipc_namespace.h
+index 497c6cc..56868cd 100644
+--- a/include/linux/ipc_namespace.h
++++ b/include/linux/ipc_namespace.h
+@@ -101,7 +101,8 @@ static inline int mq_init_ns(struct ipc_namespace *ns) { return 0; }
  
  #if defined(CONFIG_IPC_NS)
  extern struct ipc_namespace *copy_ipcs(unsigned long flags,
@@ -8374,7 +8563,7 @@ diff -NurpP --minimal linux-3.4.48/include/linux/ipc_namespace.h linux-3.4.48-vs
  static inline struct ipc_namespace *get_ipc_ns(struct ipc_namespace *ns)
  {
  	if (ns)
-@@ -112,12 +113,13 @@ static inline struct ipc_namespace *get_
+@@ -112,12 +113,13 @@ static inline struct ipc_namespace *get_ipc_ns(struct ipc_namespace *ns)
  extern void put_ipc_ns(struct ipc_namespace *ns);
  #else
  static inline struct ipc_namespace *copy_ipcs(unsigned long flags,
@@ -8390,9 +8579,10 @@ diff -NurpP --minimal linux-3.4.48/include/linux/ipc_namespace.h linux-3.4.48-vs
  }
  
  static inline struct ipc_namespace *get_ipc_ns(struct ipc_namespace *ns)
-diff -NurpP --minimal linux-3.4.48/include/linux/loop.h linux-3.4.48-vs2.3.3.9/include/linux/loop.h
---- linux-3.4.48/include/linux/loop.h	2012-01-09 15:14:58.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/loop.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/include/linux/loop.h b/include/linux/loop.h
+index 11a41a8..ddff471 100644
+--- a/include/linux/loop.h
++++ b/include/linux/loop.h
 @@ -45,6 +45,7 @@ struct loop_device {
  	struct loop_func_table *lo_encryption;
  	__u32           lo_init[2];
@@ -8401,9 +8591,10 @@ diff -NurpP --minimal linux-3.4.48/include/linux/loop.h linux-3.4.48-vs2.3.3.9/i
  	int		(*ioctl)(struct loop_device *, int cmd, 
  				 unsigned long arg); 
  
-diff -NurpP --minimal linux-3.4.48/include/linux/magic.h linux-3.4.48-vs2.3.3.9/include/linux/magic.h
---- linux-3.4.48/include/linux/magic.h	2012-05-21 16:07:31.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/magic.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/include/linux/magic.h b/include/linux/magic.h
+index e15192c..9f89937 100644
+--- a/include/linux/magic.h
++++ b/include/linux/magic.h
 @@ -3,7 +3,7 @@
  
  #define ADFS_SUPER_MAGIC	0xadf5
@@ -8413,9 +8604,10 @@ diff -NurpP --minimal linux-3.4.48/include/linux/magic.h linux-3.4.48-vs2.3.3.9/
  #define AUTOFS_SUPER_MAGIC	0x0187
  #define CODA_SUPER_MAGIC	0x73757245
  #define CRAMFS_MAGIC		0x28cd3d45	/* some random number */
-diff -NurpP --minimal linux-3.4.48/include/linux/major.h linux-3.4.48-vs2.3.3.9/include/linux/major.h
---- linux-3.4.48/include/linux/major.h	2009-09-10 13:26:25.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/major.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/include/linux/major.h b/include/linux/major.h
+index 6a8ca98..da44aa0 100644
+--- a/include/linux/major.h
++++ b/include/linux/major.h
 @@ -15,6 +15,7 @@
  #define HD_MAJOR		IDE0_MAJOR
  #define PTY_SLAVE_MAJOR		3
@@ -8424,10 +8616,11 @@ diff -NurpP --minimal linux-3.4.48/include/linux/major.h linux-3.4.48-vs2.3.3.9/
  #define TTYAUX_MAJOR		5
  #define LP_MAJOR		6
  #define VCS_MAJOR		7
-diff -NurpP --minimal linux-3.4.48/include/linux/memcontrol.h linux-3.4.48-vs2.3.3.9/include/linux/memcontrol.h
---- linux-3.4.48/include/linux/memcontrol.h	2012-05-21 16:07:31.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/memcontrol.h	2012-05-21 16:15:05.000000000 +0000
-@@ -88,6 +88,13 @@ extern struct mem_cgroup *try_get_mem_cg
+diff --git a/include/linux/memcontrol.h b/include/linux/memcontrol.h
+index f94efd2..8396eb5 100644
+--- a/include/linux/memcontrol.h
++++ b/include/linux/memcontrol.h
+@@ -88,6 +88,13 @@ extern struct mem_cgroup *try_get_mem_cgroup_from_mm(struct mm_struct *mm);
  extern struct mem_cgroup *parent_mem_cgroup(struct mem_cgroup *memcg);
  extern struct mem_cgroup *mem_cgroup_from_cont(struct cgroup *cont);
  
@@ -8441,9 +8634,10 @@ diff -NurpP --minimal linux-3.4.48/include/linux/memcontrol.h linux-3.4.48-vs2.3
  static inline
  int mm_match_cgroup(const struct mm_struct *mm, const struct mem_cgroup *cgroup)
  {
-diff -NurpP --minimal linux-3.4.48/include/linux/mm_types.h linux-3.4.48-vs2.3.3.9/include/linux/mm_types.h
---- linux-3.4.48/include/linux/mm_types.h	2013-06-13 08:59:36.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/mm_types.h	2012-07-17 22:29:43.000000000 +0000
+diff --git a/include/linux/mm_types.h b/include/linux/mm_types.h
+index b35752f..c8a5869 100644
+--- a/include/linux/mm_types.h
++++ b/include/linux/mm_types.h
 @@ -353,6 +353,7 @@ struct mm_struct {
  
  	/* Architecture-specific MM context */
@@ -8452,9 +8646,10 @@ diff -NurpP --minimal linux-3.4.48/include/linux/mm_types.h linux-3.4.48-vs2.3.3
  
  	/* Swap token stuff */
  	/*
-diff -NurpP --minimal linux-3.4.48/include/linux/mmzone.h linux-3.4.48-vs2.3.3.9/include/linux/mmzone.h
---- linux-3.4.48/include/linux/mmzone.h	2013-06-13 08:59:36.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/mmzone.h	2012-07-17 22:29:43.000000000 +0000
+diff --git a/include/linux/mmzone.h b/include/linux/mmzone.h
+index 5f6806b..cc90e9c 100644
+--- a/include/linux/mmzone.h
++++ b/include/linux/mmzone.h
 @@ -684,6 +684,13 @@ typedef struct pglist_data {
  	__pgdat->node_start_pfn + __pgdat->node_spanned_pages;\
  })
@@ -8469,9 +8664,10 @@ diff -NurpP --minimal linux-3.4.48/include/linux/mmzone.h linux-3.4.48-vs2.3.3.9
  #include <linux/memory_hotplug.h>
  
  extern struct mutex zonelists_mutex;
-diff -NurpP --minimal linux-3.4.48/include/linux/mount.h linux-3.4.48-vs2.3.3.9/include/linux/mount.h
---- linux-3.4.48/include/linux/mount.h	2012-03-19 18:47:28.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/mount.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/include/linux/mount.h b/include/linux/mount.h
+index d7029f4..1e76e26 100644
+--- a/include/linux/mount.h
++++ b/include/linux/mount.h
 @@ -47,6 +47,9 @@ struct mnt_namespace;
  
  #define MNT_INTERNAL	0x4000
@@ -8482,9 +8678,10 @@ diff -NurpP --minimal linux-3.4.48/include/linux/mount.h linux-3.4.48-vs2.3.3.9/
  struct vfsmount {
  	struct dentry *mnt_root;	/* root of the mounted tree */
  	struct super_block *mnt_sb;	/* pointer to superblock */
-diff -NurpP --minimal linux-3.4.48/include/linux/net.h linux-3.4.48-vs2.3.3.9/include/linux/net.h
---- linux-3.4.48/include/linux/net.h	2013-06-13 08:59:36.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/net.h	2012-09-01 08:51:18.000000000 +0000
+diff --git a/include/linux/net.h b/include/linux/net.h
+index 95fea14..0a95dd7 100644
+--- a/include/linux/net.h
++++ b/include/linux/net.h
 @@ -73,6 +73,7 @@ struct net;
  #define SOCK_PASSCRED		3
  #define SOCK_PASSSEC		4
@@ -8493,10 +8690,11 @@ diff -NurpP --minimal linux-3.4.48/include/linux/net.h linux-3.4.48-vs2.3.3.9/in
  
  #ifndef ARCH_HAS_SOCKET_TYPES
  /**
-diff -NurpP --minimal linux-3.4.48/include/linux/netdevice.h linux-3.4.48-vs2.3.3.9/include/linux/netdevice.h
---- linux-3.4.48/include/linux/netdevice.h	2013-06-13 08:59:36.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/netdevice.h	2013-06-13 09:46:39.000000000 +0000
-@@ -1624,6 +1624,7 @@ extern void		netdev_resync_ops(struct ne
+diff --git a/include/linux/netdevice.h b/include/linux/netdevice.h
+index dc6c687..6f626d6 100644
+--- a/include/linux/netdevice.h
++++ b/include/linux/netdevice.h
+@@ -1624,6 +1624,7 @@ extern void		netdev_resync_ops(struct net_device *dev);
  
  extern struct net_device	*dev_get_by_index(struct net *net, int ifindex);
  extern struct net_device	*__dev_get_by_index(struct net *net, int ifindex);
@@ -8504,9 +8702,10 @@ diff -NurpP --minimal linux-3.4.48/include/linux/netdevice.h linux-3.4.48-vs2.3.
  extern struct net_device	*dev_get_by_index_rcu(struct net *net, int ifindex);
  extern int		dev_restart(struct net_device *dev);
  #ifdef CONFIG_NETPOLL_TRAP
-diff -NurpP --minimal linux-3.4.48/include/linux/nfs_mount.h linux-3.4.48-vs2.3.3.9/include/linux/nfs_mount.h
---- linux-3.4.48/include/linux/nfs_mount.h	2011-01-05 20:50:31.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/nfs_mount.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/include/linux/nfs_mount.h b/include/linux/nfs_mount.h
+index 576bddd..341f621 100644
+--- a/include/linux/nfs_mount.h
++++ b/include/linux/nfs_mount.h
 @@ -63,7 +63,8 @@ struct nfs_mount_data {
  #define NFS_MOUNT_SECFLAVOUR	0x2000	/* 5 */
  #define NFS_MOUNT_NORDIRPLUS	0x4000	/* 5 */
@@ -8517,9 +8716,10 @@ diff -NurpP --minimal linux-3.4.48/include/linux/nfs_mount.h linux-3.4.48-vs2.3.
  
  /* The following are for internal use only */
  #define NFS_MOUNT_LOOKUP_CACHE_NONEG	0x10000
-diff -NurpP --minimal linux-3.4.48/include/linux/nsproxy.h linux-3.4.48-vs2.3.3.9/include/linux/nsproxy.h
---- linux-3.4.48/include/linux/nsproxy.h	2011-10-24 16:45:32.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/nsproxy.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/include/linux/nsproxy.h b/include/linux/nsproxy.h
+index cc37a55..e995dde 100644
+--- a/include/linux/nsproxy.h
++++ b/include/linux/nsproxy.h
 @@ -3,6 +3,7 @@
  
  #include <linux/spinlock.h>
@@ -8528,7 +8728,7 @@ diff -NurpP --minimal linux-3.4.48/include/linux/nsproxy.h linux-3.4.48-vs2.3.3.
  
  struct mnt_namespace;
  struct uts_namespace;
-@@ -63,6 +64,7 @@ static inline struct nsproxy *task_nspro
+@@ -63,6 +64,7 @@ static inline struct nsproxy *task_nsproxy(struct task_struct *tsk)
  }
  
  int copy_namespaces(unsigned long flags, struct task_struct *tsk);
@@ -8536,7 +8736,7 @@ diff -NurpP --minimal linux-3.4.48/include/linux/nsproxy.h linux-3.4.48-vs2.3.3.
  void exit_task_namespaces(struct task_struct *tsk);
  void switch_task_namespaces(struct task_struct *tsk, struct nsproxy *new);
  void free_nsproxy(struct nsproxy *ns);
-@@ -70,16 +72,26 @@ int unshare_nsproxy_namespaces(unsigned
+@@ -70,16 +72,26 @@ int unshare_nsproxy_namespaces(unsigned long, struct nsproxy **,
  	struct fs_struct *);
  int __init nsproxy_cache_init(void);
  
@@ -8569,9 +8769,10 @@ diff -NurpP --minimal linux-3.4.48/include/linux/nsproxy.h linux-3.4.48-vs2.3.3.
  }
  
  #endif
-diff -NurpP --minimal linux-3.4.48/include/linux/pid.h linux-3.4.48-vs2.3.3.9/include/linux/pid.h
---- linux-3.4.48/include/linux/pid.h	2011-07-22 09:18:11.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/pid.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/include/linux/pid.h b/include/linux/pid.h
+index b152d44..b08d451 100644
+--- a/include/linux/pid.h
++++ b/include/linux/pid.h
 @@ -8,7 +8,8 @@ enum pid_type
  	PIDTYPE_PID,
  	PIDTYPE_PGID,
@@ -8582,7 +8783,7 @@ diff -NurpP --minimal linux-3.4.48/include/linux/pid.h linux-3.4.48-vs2.3.3.9/in
  };
  
  /*
-@@ -171,6 +172,7 @@ static inline pid_t pid_nr(struct pid *p
+@@ -171,6 +172,7 @@ static inline pid_t pid_nr(struct pid *pid)
  }
  
  pid_t pid_nr_ns(struct pid *pid, struct pid_namespace *ns);
@@ -8590,9 +8791,10 @@ diff -NurpP --minimal linux-3.4.48/include/linux/pid.h linux-3.4.48-vs2.3.3.9/in
  pid_t pid_vnr(struct pid *pid);
  
  #define do_each_pid_task(pid, type, task)				\
-diff -NurpP --minimal linux-3.4.48/include/linux/proc_fs.h linux-3.4.48-vs2.3.3.9/include/linux/proc_fs.h
---- linux-3.4.48/include/linux/proc_fs.h	2012-03-19 18:47:28.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/proc_fs.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/include/linux/proc_fs.h b/include/linux/proc_fs.h
+index 85c5073..2b8bce2 100644
+--- a/include/linux/proc_fs.h
++++ b/include/linux/proc_fs.h
 @@ -54,6 +54,7 @@ struct proc_dir_entry {
  	nlink_t nlink;
  	uid_t uid;
@@ -8601,7 +8803,7 @@ diff -NurpP --minimal linux-3.4.48/include/linux/proc_fs.h linux-3.4.48-vs2.3.3.
  	loff_t size;
  	const struct inode_operations *proc_iops;
  	/*
-@@ -252,12 +253,18 @@ extern const struct proc_ns_operations n
+@@ -252,12 +253,18 @@ extern const struct proc_ns_operations netns_operations;
  extern const struct proc_ns_operations utsns_operations;
  extern const struct proc_ns_operations ipcns_operations;
  
@@ -8628,9 +8830,10 @@ diff -NurpP --minimal linux-3.4.48/include/linux/proc_fs.h linux-3.4.48-vs2.3.3.
  	int fd;
  	union proc_op op;
  	struct proc_dir_entry *pde;
-diff -NurpP --minimal linux-3.4.48/include/linux/quotaops.h linux-3.4.48-vs2.3.3.9/include/linux/quotaops.h
---- linux-3.4.48/include/linux/quotaops.h	2012-01-09 15:14:58.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/quotaops.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/include/linux/quotaops.h b/include/linux/quotaops.h
+index d93f95e..1851154 100644
+--- a/include/linux/quotaops.h
++++ b/include/linux/quotaops.h
 @@ -8,6 +8,7 @@
  #define _LINUX_QUOTAOPS_
  
@@ -8639,7 +8842,7 @@ diff -NurpP --minimal linux-3.4.48/include/linux/quotaops.h linux-3.4.48-vs2.3.3
  
  #define DQUOT_SPACE_WARN	0x1
  #define DQUOT_SPACE_RESERVE	0x2
-@@ -204,11 +205,12 @@ static inline void dquot_drop(struct ino
+@@ -204,11 +205,12 @@ static inline void dquot_drop(struct inode *inode)
  
  static inline int dquot_alloc_inode(const struct inode *inode)
  {
@@ -8653,7 +8856,7 @@ diff -NurpP --minimal linux-3.4.48/include/linux/quotaops.h linux-3.4.48-vs2.3.3
  }
  
  static inline int dquot_transfer(struct inode *inode, struct iattr *iattr)
-@@ -219,6 +221,10 @@ static inline int dquot_transfer(struct
+@@ -219,6 +221,10 @@ static inline int dquot_transfer(struct inode *inode, struct iattr *iattr)
  static inline int __dquot_alloc_space(struct inode *inode, qsize_t number,
  		int flags)
  {
@@ -8664,7 +8867,7 @@ diff -NurpP --minimal linux-3.4.48/include/linux/quotaops.h linux-3.4.48-vs2.3.3
  	if (!(flags & DQUOT_SPACE_RESERVE))
  		inode_add_bytes(inode, number);
  	return 0;
-@@ -229,6 +235,7 @@ static inline void __dquot_free_space(st
+@@ -229,6 +235,7 @@ static inline void __dquot_free_space(struct inode *inode, qsize_t number,
  {
  	if (!(flags & DQUOT_SPACE_RESERVE))
  		inode_sub_bytes(inode, number);
@@ -8672,9 +8875,10 @@ diff -NurpP --minimal linux-3.4.48/include/linux/quotaops.h linux-3.4.48-vs2.3.3
  }
  
  static inline int dquot_claim_space_nodirty(struct inode *inode, qsize_t number)
-diff -NurpP --minimal linux-3.4.48/include/linux/reboot.h linux-3.4.48-vs2.3.3.9/include/linux/reboot.h
---- linux-3.4.48/include/linux/reboot.h	2011-10-24 16:45:32.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/reboot.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/include/linux/reboot.h b/include/linux/reboot.h
+index e0879a7..5a521db 100644
+--- a/include/linux/reboot.h
++++ b/include/linux/reboot.h
 @@ -33,6 +33,7 @@
  #define	LINUX_REBOOT_CMD_RESTART2	0xA1B2C3D4
  #define	LINUX_REBOOT_CMD_SW_SUSPEND	0xD000FCE2
@@ -8683,9 +8887,10 @@ diff -NurpP --minimal linux-3.4.48/include/linux/reboot.h linux-3.4.48-vs2.3.3.9
  
  
  #ifdef __KERNEL__
-diff -NurpP --minimal linux-3.4.48/include/linux/sched.h linux-3.4.48-vs2.3.3.9/include/linux/sched.h
---- linux-3.4.48/include/linux/sched.h	2013-06-13 08:59:36.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/sched.h	2013-02-11 23:37:30.000000000 +0000
+diff --git a/include/linux/sched.h b/include/linux/sched.h
+index 3dd0efb..1176aa9 100644
+--- a/include/linux/sched.h
++++ b/include/linux/sched.h
 @@ -1455,6 +1455,14 @@ struct task_struct {
  #endif
  	seccomp_t seccomp;
@@ -8713,7 +8918,7 @@ diff -NurpP --minimal linux-3.4.48/include/linux/sched.h linux-3.4.48-vs2.3.3.9/
  static inline pid_t task_pid_nr(struct task_struct *tsk)
  {
  	return tsk->pid;
-@@ -1712,7 +1725,8 @@ static inline pid_t task_pid_nr_ns(struc
+@@ -1712,7 +1725,8 @@ static inline pid_t task_pid_nr_ns(struct task_struct *tsk,
  
  static inline pid_t task_pid_vnr(struct task_struct *tsk)
  {
@@ -8723,7 +8928,7 @@ diff -NurpP --minimal linux-3.4.48/include/linux/sched.h linux-3.4.48-vs2.3.3.9/
  }
  
  
-@@ -1725,7 +1739,7 @@ pid_t task_tgid_nr_ns(struct task_struct
+@@ -1725,7 +1739,7 @@ pid_t task_tgid_nr_ns(struct task_struct *tsk, struct pid_namespace *ns);
  
  static inline pid_t task_tgid_vnr(struct task_struct *tsk)
  {
@@ -8732,9 +8937,10 @@ diff -NurpP --minimal linux-3.4.48/include/linux/sched.h linux-3.4.48-vs2.3.3.9/
  }
  
  
-diff -NurpP --minimal linux-3.4.48/include/linux/shmem_fs.h linux-3.4.48-vs2.3.3.9/include/linux/shmem_fs.h
---- linux-3.4.48/include/linux/shmem_fs.h	2012-03-19 18:47:29.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/shmem_fs.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/include/linux/shmem_fs.h b/include/linux/shmem_fs.h
+index 79ab255..952ffa6 100644
+--- a/include/linux/shmem_fs.h
++++ b/include/linux/shmem_fs.h
 @@ -8,6 +8,9 @@
  
  /* inode in-kernel data */
@@ -8745,9 +8951,10 @@ diff -NurpP --minimal linux-3.4.48/include/linux/shmem_fs.h linux-3.4.48-vs2.3.3
  struct shmem_inode_info {
  	spinlock_t		lock;
  	unsigned long		flags;
-diff -NurpP --minimal linux-3.4.48/include/linux/stat.h linux-3.4.48-vs2.3.3.9/include/linux/stat.h
---- linux-3.4.48/include/linux/stat.h	2008-12-24 23:26:37.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/stat.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/include/linux/stat.h b/include/linux/stat.h
+index 611c398..784c0c3 100644
+--- a/include/linux/stat.h
++++ b/include/linux/stat.h
 @@ -66,6 +66,7 @@ struct kstat {
  	unsigned int	nlink;
  	uid_t		uid;
@@ -8756,9 +8963,10 @@ diff -NurpP --minimal linux-3.4.48/include/linux/stat.h linux-3.4.48-vs2.3.3.9/i
  	dev_t		rdev;
  	loff_t		size;
  	struct timespec  atime;
-diff -NurpP --minimal linux-3.4.48/include/linux/sunrpc/auth.h linux-3.4.48-vs2.3.3.9/include/linux/sunrpc/auth.h
---- linux-3.4.48/include/linux/sunrpc/auth.h	2012-05-21 16:07:32.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/sunrpc/auth.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/include/linux/sunrpc/auth.h b/include/linux/sunrpc/auth.h
+index 492a36d..f44bf1c 100644
+--- a/include/linux/sunrpc/auth.h
++++ b/include/linux/sunrpc/auth.h
 @@ -25,6 +25,7 @@
  struct auth_cred {
  	uid_t	uid;
@@ -8767,9 +8975,10 @@ diff -NurpP --minimal linux-3.4.48/include/linux/sunrpc/auth.h linux-3.4.48-vs2.
  	struct group_info *group_info;
  	const char *principal;
  	unsigned char machine_cred : 1;
-diff -NurpP --minimal linux-3.4.48/include/linux/sunrpc/clnt.h linux-3.4.48-vs2.3.3.9/include/linux/sunrpc/clnt.h
---- linux-3.4.48/include/linux/sunrpc/clnt.h	2012-05-21 16:07:32.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/sunrpc/clnt.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/include/linux/sunrpc/clnt.h b/include/linux/sunrpc/clnt.h
+index 523547e..ab51e50 100644
+--- a/include/linux/sunrpc/clnt.h
++++ b/include/linux/sunrpc/clnt.h
 @@ -49,7 +49,8 @@ struct rpc_clnt {
  	unsigned int		cl_softrtry : 1,/* soft timeouts */
  				cl_discrtry : 1,/* disconnect before retry */
@@ -8780,9 +8989,10 @@ diff -NurpP --minimal linux-3.4.48/include/linux/sunrpc/clnt.h linux-3.4.48-vs2.
  
  	struct rpc_rtt *	cl_rtt;		/* RTO estimator data */
  	const struct rpc_timeout *cl_timeout;	/* Timeout strategy */
-diff -NurpP --minimal linux-3.4.48/include/linux/sysctl.h linux-3.4.48-vs2.3.3.9/include/linux/sysctl.h
---- linux-3.4.48/include/linux/sysctl.h	2012-05-21 16:07:32.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/sysctl.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/include/linux/sysctl.h b/include/linux/sysctl.h
+index c34b4c8..782b12d 100644
+--- a/include/linux/sysctl.h
++++ b/include/linux/sysctl.h
 @@ -60,6 +60,7 @@ enum
  	CTL_ABI=9,		/* Binary emulation */
  	CTL_CPU=10,		/* CPU stuff (speed scaling, etc) */
@@ -8799,9 +9009,10 @@ diff -NurpP --minimal linux-3.4.48/include/linux/sysctl.h linux-3.4.48-vs2.3.3.9
  
  	KERN_SPARC_REBOOT=21,	/* reboot command on Sparc */
  	KERN_CTLALTDEL=22,	/* int: allow ctl-alt-del to reboot */
-diff -NurpP --minimal linux-3.4.48/include/linux/sysfs.h linux-3.4.48-vs2.3.3.9/include/linux/sysfs.h
---- linux-3.4.48/include/linux/sysfs.h	2012-03-19 18:47:29.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/sysfs.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/include/linux/sysfs.h b/include/linux/sysfs.h
+index 0010009..ccfd222 100644
+--- a/include/linux/sysfs.h
++++ b/include/linux/sysfs.h
 @@ -19,6 +19,8 @@
  #include <linux/kobject_ns.h>
  #include <linux/atomic.h>
@@ -8811,10 +9022,11 @@ diff -NurpP --minimal linux-3.4.48/include/linux/sysfs.h linux-3.4.48-vs2.3.3.9/
  struct kobject;
  struct module;
  enum kobj_ns_type;
-diff -NurpP --minimal linux-3.4.48/include/linux/time.h linux-3.4.48-vs2.3.3.9/include/linux/time.h
---- linux-3.4.48/include/linux/time.h	2013-06-13 08:59:36.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/time.h	2012-10-22 13:09:53.000000000 +0000
-@@ -281,6 +281,8 @@ static __always_inline void timespec_add
+diff --git a/include/linux/time.h b/include/linux/time.h
+index 03dce74..a119348 100644
+--- a/include/linux/time.h
++++ b/include/linux/time.h
+@@ -281,6 +281,8 @@ static __always_inline void timespec_add_ns(struct timespec *a, u64 ns)
  	a->tv_nsec = ns;
  }
  
@@ -8823,9 +9035,10 @@ diff -NurpP --minimal linux-3.4.48/include/linux/time.h linux-3.4.48-vs2.3.3.9/i
  #endif /* __KERNEL__ */
  
  /*
-diff -NurpP --minimal linux-3.4.48/include/linux/types.h linux-3.4.48-vs2.3.3.9/include/linux/types.h
---- linux-3.4.48/include/linux/types.h	2012-05-21 16:07:32.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/types.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/include/linux/types.h b/include/linux/types.h
+index 7f480db..d417422 100644
+--- a/include/linux/types.h
++++ b/include/linux/types.h
 @@ -41,6 +41,9 @@ typedef __kernel_uid32_t	uid_t;
  typedef __kernel_gid32_t	gid_t;
  typedef __kernel_uid16_t        uid16_t;
@@ -8836,10 +9049,11 @@ diff -NurpP --minimal linux-3.4.48/include/linux/types.h linux-3.4.48-vs2.3.3.9/
  
  typedef unsigned long		uintptr_t;
  
-diff -NurpP --minimal linux-3.4.48/include/linux/utsname.h linux-3.4.48-vs2.3.3.9/include/linux/utsname.h
---- linux-3.4.48/include/linux/utsname.h	2012-01-09 15:14:59.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/utsname.h	2012-05-21 16:15:05.000000000 +0000
-@@ -62,7 +62,8 @@ static inline void get_uts_ns(struct uts
+diff --git a/include/linux/utsname.h b/include/linux/utsname.h
+index c714ed7..0197b43 100644
+--- a/include/linux/utsname.h
++++ b/include/linux/utsname.h
+@@ -62,7 +62,8 @@ static inline void get_uts_ns(struct uts_namespace *ns)
  }
  
  extern struct uts_namespace *copy_utsname(unsigned long flags,
@@ -8849,7 +9063,7 @@ diff -NurpP --minimal linux-3.4.48/include/linux/utsname.h linux-3.4.48-vs2.3.3.
  extern void free_uts_ns(struct kref *kref);
  
  static inline void put_uts_ns(struct uts_namespace *ns)
-@@ -79,12 +80,13 @@ static inline void put_uts_ns(struct uts
+@@ -79,12 +80,13 @@ static inline void put_uts_ns(struct uts_namespace *ns)
  }
  
  static inline struct uts_namespace *copy_utsname(unsigned long flags,
@@ -8865,9 +9079,11 @@ diff -NurpP --minimal linux-3.4.48/include/linux/utsname.h linux-3.4.48-vs2.3.3.
  }
  #endif
  
-diff -NurpP --minimal linux-3.4.48/include/linux/vroot.h linux-3.4.48-vs2.3.3.9/include/linux/vroot.h
---- linux-3.4.48/include/linux/vroot.h	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/vroot.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/include/linux/vroot.h b/include/linux/vroot.h
+new file mode 100644
+index 0000000..5e1d797
+--- /dev/null
++++ b/include/linux/vroot.h
 @@ -0,0 +1,51 @@
 +
 +/*
@@ -8920,9 +9136,11 @@ diff -NurpP --minimal linux-3.4.48/include/linux/vroot.h linux-3.4.48-vs2.3.3.9/
 +#define VROOT_CLR_DEV		0x5601
 +
 +#endif /* _LINUX_VROOT_H */
-diff -NurpP --minimal linux-3.4.48/include/linux/vs_base.h linux-3.4.48-vs2.3.3.9/include/linux/vs_base.h
---- linux-3.4.48/include/linux/vs_base.h	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/vs_base.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/include/linux/vs_base.h b/include/linux/vs_base.h
+new file mode 100644
+index 0000000..cb0ce81
+--- /dev/null
++++ b/include/linux/vs_base.h
 @@ -0,0 +1,10 @@
 +#ifndef _VS_BASE_H
 +#define _VS_BASE_H
@@ -8934,9 +9152,11 @@ diff -NurpP --minimal linux-3.4.48/include/linux/vs_base.h linux-3.4.48-vs2.3.3.
 +#else
 +#warning duplicate inclusion
 +#endif
-diff -NurpP --minimal linux-3.4.48/include/linux/vs_context.h linux-3.4.48-vs2.3.3.9/include/linux/vs_context.h
---- linux-3.4.48/include/linux/vs_context.h	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/vs_context.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/include/linux/vs_context.h b/include/linux/vs_context.h
+new file mode 100644
+index 0000000..5848095
+--- /dev/null
++++ b/include/linux/vs_context.h
 @@ -0,0 +1,242 @@
 +#ifndef _VS_CONTEXT_H
 +#define _VS_CONTEXT_H
@@ -9180,9 +9400,11 @@ diff -NurpP --minimal linux-3.4.48/include/linux/vs_context.h linux-3.4.48-vs2.3
 +#else
 +#warning duplicate inclusion
 +#endif
-diff -NurpP --minimal linux-3.4.48/include/linux/vs_cowbl.h linux-3.4.48-vs2.3.3.9/include/linux/vs_cowbl.h
---- linux-3.4.48/include/linux/vs_cowbl.h	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/vs_cowbl.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/include/linux/vs_cowbl.h b/include/linux/vs_cowbl.h
+new file mode 100644
+index 0000000..1ac1bf2
+--- /dev/null
++++ b/include/linux/vs_cowbl.h
 @@ -0,0 +1,48 @@
 +#ifndef _VS_COWBL_H
 +#define _VS_COWBL_H
@@ -9232,9 +9454,11 @@ diff -NurpP --minimal linux-3.4.48/include/linux/vs_cowbl.h linux-3.4.48-vs2.3.3
 +#else
 +#warning duplicate inclusion
 +#endif
-diff -NurpP --minimal linux-3.4.48/include/linux/vs_cvirt.h linux-3.4.48-vs2.3.3.9/include/linux/vs_cvirt.h
---- linux-3.4.48/include/linux/vs_cvirt.h	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/vs_cvirt.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/include/linux/vs_cvirt.h b/include/linux/vs_cvirt.h
+new file mode 100644
+index 0000000..310af24
+--- /dev/null
++++ b/include/linux/vs_cvirt.h
 @@ -0,0 +1,50 @@
 +#ifndef _VS_CVIRT_H
 +#define _VS_CVIRT_H
@@ -9286,9 +9510,11 @@ diff -NurpP --minimal linux-3.4.48/include/linux/vs_cvirt.h linux-3.4.48-vs2.3.3
 +#else
 +#warning duplicate inclusion
 +#endif
-diff -NurpP --minimal linux-3.4.48/include/linux/vs_device.h linux-3.4.48-vs2.3.3.9/include/linux/vs_device.h
---- linux-3.4.48/include/linux/vs_device.h	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/vs_device.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/include/linux/vs_device.h b/include/linux/vs_device.h
+new file mode 100644
+index 0000000..8e2f043
+--- /dev/null
++++ b/include/linux/vs_device.h
 @@ -0,0 +1,45 @@
 +#ifndef _VS_DEVICE_H
 +#define _VS_DEVICE_H
@@ -9335,9 +9561,11 @@ diff -NurpP --minimal linux-3.4.48/include/linux/vs_device.h linux-3.4.48-vs2.3.
 +#else
 +#warning duplicate inclusion
 +#endif
-diff -NurpP --minimal linux-3.4.48/include/linux/vs_dlimit.h linux-3.4.48-vs2.3.3.9/include/linux/vs_dlimit.h
---- linux-3.4.48/include/linux/vs_dlimit.h	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/vs_dlimit.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/include/linux/vs_dlimit.h b/include/linux/vs_dlimit.h
+new file mode 100644
+index 0000000..8b0b33b
+--- /dev/null
++++ b/include/linux/vs_dlimit.h
 @@ -0,0 +1,215 @@
 +#ifndef _VS_DLIMIT_H
 +#define _VS_DLIMIT_H
@@ -9554,9 +9782,11 @@ diff -NurpP --minimal linux-3.4.48/include/linux/vs_dlimit.h linux-3.4.48-vs2.3.
 +#else
 +#warning duplicate inclusion
 +#endif
-diff -NurpP --minimal linux-3.4.48/include/linux/vs_inet.h linux-3.4.48-vs2.3.3.9/include/linux/vs_inet.h
---- linux-3.4.48/include/linux/vs_inet.h	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/vs_inet.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/include/linux/vs_inet.h b/include/linux/vs_inet.h
+new file mode 100644
+index 0000000..7c8e02b
+--- /dev/null
++++ b/include/linux/vs_inet.h
 @@ -0,0 +1,353 @@
 +#ifndef _VS_INET_H
 +#define _VS_INET_H
@@ -9911,9 +10141,11 @@ diff -NurpP --minimal linux-3.4.48/include/linux/vs_inet.h linux-3.4.48-vs2.3.3.
 +#else
 +// #warning duplicate inclusion
 +#endif
-diff -NurpP --minimal linux-3.4.48/include/linux/vs_inet6.h linux-3.4.48-vs2.3.3.9/include/linux/vs_inet6.h
---- linux-3.4.48/include/linux/vs_inet6.h	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/vs_inet6.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/include/linux/vs_inet6.h b/include/linux/vs_inet6.h
+new file mode 100644
+index 0000000..70f797b
+--- /dev/null
++++ b/include/linux/vs_inet6.h
 @@ -0,0 +1,246 @@
 +#ifndef _VS_INET6_H
 +#define _VS_INET6_H
@@ -10161,9 +10393,11 @@ diff -NurpP --minimal linux-3.4.48/include/linux/vs_inet6.h linux-3.4.48-vs2.3.3
 +#else
 +#warning duplicate inclusion
 +#endif
-diff -NurpP --minimal linux-3.4.48/include/linux/vs_limit.h linux-3.4.48-vs2.3.3.9/include/linux/vs_limit.h
---- linux-3.4.48/include/linux/vs_limit.h	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/vs_limit.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/include/linux/vs_limit.h b/include/linux/vs_limit.h
+new file mode 100644
+index 0000000..96b3b5a
+--- /dev/null
++++ b/include/linux/vs_limit.h
 @@ -0,0 +1,140 @@
 +#ifndef _VS_LIMIT_H
 +#define _VS_LIMIT_H
@@ -10305,9 +10539,11 @@ diff -NurpP --minimal linux-3.4.48/include/linux/vs_limit.h linux-3.4.48-vs2.3.3
 +#else
 +#warning duplicate inclusion
 +#endif
-diff -NurpP --minimal linux-3.4.48/include/linux/vs_network.h linux-3.4.48-vs2.3.3.9/include/linux/vs_network.h
---- linux-3.4.48/include/linux/vs_network.h	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/vs_network.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/include/linux/vs_network.h b/include/linux/vs_network.h
+new file mode 100644
+index 0000000..5bd3898
+--- /dev/null
++++ b/include/linux/vs_network.h
 @@ -0,0 +1,169 @@
 +#ifndef _NX_VS_NETWORK_H
 +#define _NX_VS_NETWORK_H
@@ -10478,9 +10714,11 @@ diff -NurpP --minimal linux-3.4.48/include/linux/vs_network.h linux-3.4.48-vs2.3
 +#else
 +#warning duplicate inclusion
 +#endif
-diff -NurpP --minimal linux-3.4.48/include/linux/vs_pid.h linux-3.4.48-vs2.3.3.9/include/linux/vs_pid.h
---- linux-3.4.48/include/linux/vs_pid.h	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/vs_pid.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/include/linux/vs_pid.h b/include/linux/vs_pid.h
+new file mode 100644
+index 0000000..5b79fcd
+--- /dev/null
++++ b/include/linux/vs_pid.h
 @@ -0,0 +1,50 @@
 +#ifndef _VS_PID_H
 +#define _VS_PID_H
@@ -10532,9 +10770,11 @@ diff -NurpP --minimal linux-3.4.48/include/linux/vs_pid.h linux-3.4.48-vs2.3.3.9
 +#else
 +#warning duplicate inclusion
 +#endif
-diff -NurpP --minimal linux-3.4.48/include/linux/vs_sched.h linux-3.4.48-vs2.3.3.9/include/linux/vs_sched.h
---- linux-3.4.48/include/linux/vs_sched.h	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/vs_sched.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/include/linux/vs_sched.h b/include/linux/vs_sched.h
+new file mode 100644
+index 0000000..d802692
+--- /dev/null
++++ b/include/linux/vs_sched.h
 @@ -0,0 +1,40 @@
 +#ifndef _VS_SCHED_H
 +#define _VS_SCHED_H
@@ -10576,9 +10816,11 @@ diff -NurpP --minimal linux-3.4.48/include/linux/vs_sched.h linux-3.4.48-vs2.3.3
 +#else
 +#warning duplicate inclusion
 +#endif
-diff -NurpP --minimal linux-3.4.48/include/linux/vs_socket.h linux-3.4.48-vs2.3.3.9/include/linux/vs_socket.h
---- linux-3.4.48/include/linux/vs_socket.h	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/vs_socket.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/include/linux/vs_socket.h b/include/linux/vs_socket.h
+new file mode 100644
+index 0000000..b190e24
+--- /dev/null
++++ b/include/linux/vs_socket.h
 @@ -0,0 +1,67 @@
 +#ifndef _VS_SOCKET_H
 +#define _VS_SOCKET_H
@@ -10647,9 +10889,11 @@ diff -NurpP --minimal linux-3.4.48/include/linux/vs_socket.h linux-3.4.48-vs2.3.
 +#else
 +#warning duplicate inclusion
 +#endif
-diff -NurpP --minimal linux-3.4.48/include/linux/vs_tag.h linux-3.4.48-vs2.3.3.9/include/linux/vs_tag.h
---- linux-3.4.48/include/linux/vs_tag.h	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/vs_tag.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/include/linux/vs_tag.h b/include/linux/vs_tag.h
+new file mode 100644
+index 0000000..a83c79b
+--- /dev/null
++++ b/include/linux/vs_tag.h
 @@ -0,0 +1,47 @@
 +#ifndef _VS_TAG_H
 +#define _VS_TAG_H
@@ -10698,9 +10942,11 @@ diff -NurpP --minimal linux-3.4.48/include/linux/vs_tag.h linux-3.4.48-vs2.3.3.9
 +#else
 +#warning duplicate inclusion
 +#endif
-diff -NurpP --minimal linux-3.4.48/include/linux/vs_time.h linux-3.4.48-vs2.3.3.9/include/linux/vs_time.h
---- linux-3.4.48/include/linux/vs_time.h	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/vs_time.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/include/linux/vs_time.h b/include/linux/vs_time.h
+new file mode 100644
+index 0000000..5b962f9
+--- /dev/null
++++ b/include/linux/vs_time.h
 @@ -0,0 +1,19 @@
 +#ifndef _VS_TIME_H
 +#define _VS_TIME_H
@@ -10721,9 +10967,11 @@ diff -NurpP --minimal linux-3.4.48/include/linux/vs_time.h linux-3.4.48-vs2.3.3.
 +#else
 +#warning duplicate inclusion
 +#endif
-diff -NurpP --minimal linux-3.4.48/include/linux/vserver/Kbuild linux-3.4.48-vs2.3.3.9/include/linux/vserver/Kbuild
---- linux-3.4.48/include/linux/vserver/Kbuild	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/vserver/Kbuild	2012-05-21 16:15:05.000000000 +0000
+diff --git a/include/linux/vserver/Kbuild b/include/linux/vserver/Kbuild
+new file mode 100644
+index 0000000..3ea3d70
+--- /dev/null
++++ b/include/linux/vserver/Kbuild
 @@ -0,0 +1,8 @@
 +
 +header-y += context_cmd.h network_cmd.h space_cmd.h \
@@ -10733,9 +10981,11 @@ diff -NurpP --minimal linux-3.4.48/include/linux/vserver/Kbuild linux-3.4.48-vs2
 +
 +header-y += switch.h network.h monitor.h inode.h device.h
 +
-diff -NurpP --minimal linux-3.4.48/include/linux/vserver/base.h linux-3.4.48-vs2.3.3.9/include/linux/vserver/base.h
---- linux-3.4.48/include/linux/vserver/base.h	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/vserver/base.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/include/linux/vserver/base.h b/include/linux/vserver/base.h
+new file mode 100644
+index 0000000..e31841e
+--- /dev/null
++++ b/include/linux/vserver/base.h
 @@ -0,0 +1,178 @@
 +#ifndef _VX_BASE_H
 +#define _VX_BASE_H
@@ -10915,9 +11165,11 @@ diff -NurpP --minimal linux-3.4.48/include/linux/vserver/base.h linux-3.4.48-vs2
 +#define nx_info_state(n, m)	(__nx_state(n) & (m))
 +
 +#endif
-diff -NurpP --minimal linux-3.4.48/include/linux/vserver/cacct.h linux-3.4.48-vs2.3.3.9/include/linux/vserver/cacct.h
---- linux-3.4.48/include/linux/vserver/cacct.h	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/vserver/cacct.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/include/linux/vserver/cacct.h b/include/linux/vserver/cacct.h
+new file mode 100644
+index 0000000..aa202cc
+--- /dev/null
++++ b/include/linux/vserver/cacct.h
 @@ -0,0 +1,15 @@
 +#ifndef _VX_CACCT_H
 +#define _VX_CACCT_H
@@ -10934,9 +11186,11 @@ diff -NurpP --minimal linux-3.4.48/include/linux/vserver/cacct.h linux-3.4.48-vs
 +};
 +
 +#endif	/* _VX_CACCT_H */
-diff -NurpP --minimal linux-3.4.48/include/linux/vserver/cacct_cmd.h linux-3.4.48-vs2.3.3.9/include/linux/vserver/cacct_cmd.h
---- linux-3.4.48/include/linux/vserver/cacct_cmd.h	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/vserver/cacct_cmd.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/include/linux/vserver/cacct_cmd.h b/include/linux/vserver/cacct_cmd.h
+new file mode 100644
+index 0000000..bcc46bb
+--- /dev/null
++++ b/include/linux/vserver/cacct_cmd.h
 @@ -0,0 +1,23 @@
 +#ifndef _VX_CACCT_CMD_H
 +#define _VX_CACCT_CMD_H
@@ -10961,9 +11215,11 @@ diff -NurpP --minimal linux-3.4.48/include/linux/vserver/cacct_cmd.h linux-3.4.4
 +
 +#endif	/* __KERNEL__ */
 +#endif	/* _VX_CACCT_CMD_H */
-diff -NurpP --minimal linux-3.4.48/include/linux/vserver/cacct_def.h linux-3.4.48-vs2.3.3.9/include/linux/vserver/cacct_def.h
---- linux-3.4.48/include/linux/vserver/cacct_def.h	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/vserver/cacct_def.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/include/linux/vserver/cacct_def.h b/include/linux/vserver/cacct_def.h
+new file mode 100644
+index 0000000..5945f4f
+--- /dev/null
++++ b/include/linux/vserver/cacct_def.h
 @@ -0,0 +1,43 @@
 +#ifndef _VX_CACCT_DEF_H
 +#define _VX_CACCT_DEF_H
@@ -11008,9 +11264,11 @@ diff -NurpP --minimal linux-3.4.48/include/linux/vserver/cacct_def.h linux-3.4.4
 +#endif
 +
 +#endif	/* _VX_CACCT_DEF_H */
-diff -NurpP --minimal linux-3.4.48/include/linux/vserver/cacct_int.h linux-3.4.48-vs2.3.3.9/include/linux/vserver/cacct_int.h
---- linux-3.4.48/include/linux/vserver/cacct_int.h	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/vserver/cacct_int.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/include/linux/vserver/cacct_int.h b/include/linux/vserver/cacct_int.h
+new file mode 100644
+index 0000000..a235c01
+--- /dev/null
++++ b/include/linux/vserver/cacct_int.h
 @@ -0,0 +1,21 @@
 +#ifndef _VX_CACCT_INT_H
 +#define _VX_CACCT_INT_H
@@ -11033,9 +11291,11 @@ diff -NurpP --minimal linux-3.4.48/include/linux/vserver/cacct_int.h linux-3.4.4
 +
 +#endif	/* __KERNEL__ */
 +#endif	/* _VX_CACCT_INT_H */
-diff -NurpP --minimal linux-3.4.48/include/linux/vserver/check.h linux-3.4.48-vs2.3.3.9/include/linux/vserver/check.h
---- linux-3.4.48/include/linux/vserver/check.h	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/vserver/check.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/include/linux/vserver/check.h b/include/linux/vserver/check.h
+new file mode 100644
+index 0000000..011d16e
+--- /dev/null
++++ b/include/linux/vserver/check.h
 @@ -0,0 +1,89 @@
 +#ifndef _VS_CHECK_H
 +#define _VS_CHECK_H
@@ -11126,9 +11386,11 @@ diff -NurpP --minimal linux-3.4.48/include/linux/vserver/check.h linux-3.4.48-vs
 +#define nx_weak_check(c, m)	((m) ? nx_check(c, m) : 1)
 +
 +#endif
-diff -NurpP --minimal linux-3.4.48/include/linux/vserver/context.h linux-3.4.48-vs2.3.3.9/include/linux/vserver/context.h
---- linux-3.4.48/include/linux/vserver/context.h	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/vserver/context.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/include/linux/vserver/context.h b/include/linux/vserver/context.h
+new file mode 100644
+index 0000000..a63989e
+--- /dev/null
++++ b/include/linux/vserver/context.h
 @@ -0,0 +1,188 @@
 +#ifndef _VX_CONTEXT_H
 +#define _VX_CONTEXT_H
@@ -11318,9 +11580,11 @@ diff -NurpP --minimal linux-3.4.48/include/linux/vserver/context.h linux-3.4.48-
 +
 +#endif	/* __KERNEL__ */
 +#endif	/* _VX_CONTEXT_H */
-diff -NurpP --minimal linux-3.4.48/include/linux/vserver/context_cmd.h linux-3.4.48-vs2.3.3.9/include/linux/vserver/context_cmd.h
---- linux-3.4.48/include/linux/vserver/context_cmd.h	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/vserver/context_cmd.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/include/linux/vserver/context_cmd.h b/include/linux/vserver/context_cmd.h
+new file mode 100644
+index 0000000..90d3777
+--- /dev/null
++++ b/include/linux/vserver/context_cmd.h
 @@ -0,0 +1,162 @@
 +#ifndef _VX_CONTEXT_CMD_H
 +#define _VX_CONTEXT_CMD_H
@@ -11484,9 +11748,11 @@ diff -NurpP --minimal linux-3.4.48/include/linux/vserver/context_cmd.h linux-3.4
 +
 +#endif	/* __KERNEL__ */
 +#endif	/* _VX_CONTEXT_CMD_H */
-diff -NurpP --minimal linux-3.4.48/include/linux/vserver/cvirt.h linux-3.4.48-vs2.3.3.9/include/linux/vserver/cvirt.h
---- linux-3.4.48/include/linux/vserver/cvirt.h	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/vserver/cvirt.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/include/linux/vserver/cvirt.h b/include/linux/vserver/cvirt.h
+new file mode 100644
+index 0000000..ec69508
+--- /dev/null
++++ b/include/linux/vserver/cvirt.h
 @@ -0,0 +1,22 @@
 +#ifndef _VX_CVIRT_H
 +#define _VX_CVIRT_H
@@ -11510,9 +11776,11 @@ diff -NurpP --minimal linux-3.4.48/include/linux/vserver/cvirt.h linux-3.4.48-vs
 +
 +#endif	/* __KERNEL__ */
 +#endif	/* _VX_CVIRT_H */
-diff -NurpP --minimal linux-3.4.48/include/linux/vserver/cvirt_cmd.h linux-3.4.48-vs2.3.3.9/include/linux/vserver/cvirt_cmd.h
---- linux-3.4.48/include/linux/vserver/cvirt_cmd.h	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/vserver/cvirt_cmd.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/include/linux/vserver/cvirt_cmd.h b/include/linux/vserver/cvirt_cmd.h
+new file mode 100644
+index 0000000..249db86
+--- /dev/null
++++ b/include/linux/vserver/cvirt_cmd.h
 @@ -0,0 +1,53 @@
 +#ifndef _VX_CVIRT_CMD_H
 +#define _VX_CVIRT_CMD_H
@@ -11567,9 +11835,11 @@ diff -NurpP --minimal linux-3.4.48/include/linux/vserver/cvirt_cmd.h linux-3.4.4
 +
 +#endif	/* __KERNEL__ */
 +#endif	/* _VX_CVIRT_CMD_H */
-diff -NurpP --minimal linux-3.4.48/include/linux/vserver/cvirt_def.h linux-3.4.48-vs2.3.3.9/include/linux/vserver/cvirt_def.h
---- linux-3.4.48/include/linux/vserver/cvirt_def.h	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/vserver/cvirt_def.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/include/linux/vserver/cvirt_def.h b/include/linux/vserver/cvirt_def.h
+new file mode 100644
+index 0000000..9eb9837
+--- /dev/null
++++ b/include/linux/vserver/cvirt_def.h
 @@ -0,0 +1,80 @@
 +#ifndef _VX_CVIRT_DEF_H
 +#define _VX_CVIRT_DEF_H
@@ -11651,9 +11921,11 @@ diff -NurpP --minimal linux-3.4.48/include/linux/vserver/cvirt_def.h linux-3.4.4
 +#endif
 +
 +#endif	/* _VX_CVIRT_DEF_H */
-diff -NurpP --minimal linux-3.4.48/include/linux/vserver/debug.h linux-3.4.48-vs2.3.3.9/include/linux/vserver/debug.h
---- linux-3.4.48/include/linux/vserver/debug.h	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/vserver/debug.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/include/linux/vserver/debug.h b/include/linux/vserver/debug.h
+new file mode 100644
+index 0000000..21cd597
+--- /dev/null
++++ b/include/linux/vserver/debug.h
 @@ -0,0 +1,145 @@
 +#ifndef _VX_DEBUG_H
 +#define _VX_DEBUG_H
@@ -11800,9 +12072,11 @@ diff -NurpP --minimal linux-3.4.48/include/linux/vserver/debug.h linux-3.4.48-vs
 +
 +
 +#endif /* _VX_DEBUG_H */
-diff -NurpP --minimal linux-3.4.48/include/linux/vserver/debug_cmd.h linux-3.4.48-vs2.3.3.9/include/linux/vserver/debug_cmd.h
---- linux-3.4.48/include/linux/vserver/debug_cmd.h	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/vserver/debug_cmd.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/include/linux/vserver/debug_cmd.h b/include/linux/vserver/debug_cmd.h
+new file mode 100644
+index 0000000..441eb62
+--- /dev/null
++++ b/include/linux/vserver/debug_cmd.h
 @@ -0,0 +1,58 @@
 +#ifndef _VX_DEBUG_CMD_H
 +#define _VX_DEBUG_CMD_H
@@ -11862,9 +12136,11 @@ diff -NurpP --minimal linux-3.4.48/include/linux/vserver/debug_cmd.h linux-3.4.4
 +
 +#endif	/* __KERNEL__ */
 +#endif	/* _VX_DEBUG_CMD_H */
-diff -NurpP --minimal linux-3.4.48/include/linux/vserver/device.h linux-3.4.48-vs2.3.3.9/include/linux/vserver/device.h
---- linux-3.4.48/include/linux/vserver/device.h	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/vserver/device.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/include/linux/vserver/device.h b/include/linux/vserver/device.h
+new file mode 100644
+index 0000000..dc10daa
+--- /dev/null
++++ b/include/linux/vserver/device.h
 @@ -0,0 +1,15 @@
 +#ifndef _VX_DEVICE_H
 +#define _VX_DEVICE_H
@@ -11881,9 +12157,11 @@ diff -NurpP --minimal linux-3.4.48/include/linux/vserver/device.h linux-3.4.48-v
 +#else	/* _VX_DEVICE_H */
 +#warning duplicate inclusion
 +#endif	/* _VX_DEVICE_H */
-diff -NurpP --minimal linux-3.4.48/include/linux/vserver/device_cmd.h linux-3.4.48-vs2.3.3.9/include/linux/vserver/device_cmd.h
---- linux-3.4.48/include/linux/vserver/device_cmd.h	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/vserver/device_cmd.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/include/linux/vserver/device_cmd.h b/include/linux/vserver/device_cmd.h
+new file mode 100644
+index 0000000..3e45a99
+--- /dev/null
++++ b/include/linux/vserver/device_cmd.h
 @@ -0,0 +1,44 @@
 +#ifndef _VX_DEVICE_CMD_H
 +#define _VX_DEVICE_CMD_H
@@ -11929,9 +12207,11 @@ diff -NurpP --minimal linux-3.4.48/include/linux/vserver/device_cmd.h linux-3.4.
 +
 +#endif	/* __KERNEL__ */
 +#endif	/* _VX_DEVICE_CMD_H */
-diff -NurpP --minimal linux-3.4.48/include/linux/vserver/device_def.h linux-3.4.48-vs2.3.3.9/include/linux/vserver/device_def.h
---- linux-3.4.48/include/linux/vserver/device_def.h	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/vserver/device_def.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/include/linux/vserver/device_def.h b/include/linux/vserver/device_def.h
+new file mode 100644
+index 0000000..aa12784
+--- /dev/null
++++ b/include/linux/vserver/device_def.h
 @@ -0,0 +1,17 @@
 +#ifndef _VX_DEVICE_DEF_H
 +#define _VX_DEVICE_DEF_H
@@ -11950,9 +12230,11 @@ diff -NurpP --minimal linux-3.4.48/include/linux/vserver/device_def.h linux-3.4.
 +};
 +
 +#endif	/* _VX_DEVICE_DEF_H */
-diff -NurpP --minimal linux-3.4.48/include/linux/vserver/dlimit.h linux-3.4.48-vs2.3.3.9/include/linux/vserver/dlimit.h
---- linux-3.4.48/include/linux/vserver/dlimit.h	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/vserver/dlimit.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/include/linux/vserver/dlimit.h b/include/linux/vserver/dlimit.h
+new file mode 100644
+index 0000000..f026233
+--- /dev/null
++++ b/include/linux/vserver/dlimit.h
 @@ -0,0 +1,54 @@
 +#ifndef _VX_DLIMIT_H
 +#define _VX_DLIMIT_H
@@ -12008,9 +12290,11 @@ diff -NurpP --minimal linux-3.4.48/include/linux/vserver/dlimit.h linux-3.4.48-v
 +#else	/* _VX_DLIMIT_H */
 +#warning duplicate inclusion
 +#endif	/* _VX_DLIMIT_H */
-diff -NurpP --minimal linux-3.4.48/include/linux/vserver/dlimit_cmd.h linux-3.4.48-vs2.3.3.9/include/linux/vserver/dlimit_cmd.h
---- linux-3.4.48/include/linux/vserver/dlimit_cmd.h	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/vserver/dlimit_cmd.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/include/linux/vserver/dlimit_cmd.h b/include/linux/vserver/dlimit_cmd.h
+new file mode 100644
+index 0000000..3ae7de3
+--- /dev/null
++++ b/include/linux/vserver/dlimit_cmd.h
 @@ -0,0 +1,109 @@
 +#ifndef _VX_DLIMIT_CMD_H
 +#define _VX_DLIMIT_CMD_H
@@ -12121,9 +12405,11 @@ diff -NurpP --minimal linux-3.4.48/include/linux/vserver/dlimit_cmd.h linux-3.4.
 +
 +#endif	/* __KERNEL__ */
 +#endif	/* _VX_DLIMIT_CMD_H */
-diff -NurpP --minimal linux-3.4.48/include/linux/vserver/global.h linux-3.4.48-vs2.3.3.9/include/linux/vserver/global.h
---- linux-3.4.48/include/linux/vserver/global.h	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/vserver/global.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/include/linux/vserver/global.h b/include/linux/vserver/global.h
+new file mode 100644
+index 0000000..2c317dd
+--- /dev/null
++++ b/include/linux/vserver/global.h
 @@ -0,0 +1,19 @@
 +#ifndef _VX_GLOBAL_H
 +#define _VX_GLOBAL_H
@@ -12144,9 +12430,11 @@ diff -NurpP --minimal linux-3.4.48/include/linux/vserver/global.h linux-3.4.48-v
 +
 +
 +#endif /* _VX_GLOBAL_H */
-diff -NurpP --minimal linux-3.4.48/include/linux/vserver/history.h linux-3.4.48-vs2.3.3.9/include/linux/vserver/history.h
---- linux-3.4.48/include/linux/vserver/history.h	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/vserver/history.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/include/linux/vserver/history.h b/include/linux/vserver/history.h
+new file mode 100644
+index 0000000..0efe903
+--- /dev/null
++++ b/include/linux/vserver/history.h
 @@ -0,0 +1,197 @@
 +#ifndef _VX_HISTORY_H
 +#define _VX_HISTORY_H
@@ -12345,9 +12633,11 @@ diff -NurpP --minimal linux-3.4.48/include/linux/vserver/history.h linux-3.4.48-
 +#endif /* CONFIG_VSERVER_HISTORY */
 +
 +#endif /* _VX_HISTORY_H */
-diff -NurpP --minimal linux-3.4.48/include/linux/vserver/inode.h linux-3.4.48-vs2.3.3.9/include/linux/vserver/inode.h
---- linux-3.4.48/include/linux/vserver/inode.h	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/vserver/inode.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/include/linux/vserver/inode.h b/include/linux/vserver/inode.h
+new file mode 100644
+index 0000000..e44f416
+--- /dev/null
++++ b/include/linux/vserver/inode.h
 @@ -0,0 +1,39 @@
 +#ifndef _VX_INODE_H
 +#define _VX_INODE_H
@@ -12388,9 +12678,11 @@ diff -NurpP --minimal linux-3.4.48/include/linux/vserver/inode.h linux-3.4.48-vs
 +#else	/* _VX_INODE_H */
 +#warning duplicate inclusion
 +#endif	/* _VX_INODE_H */
-diff -NurpP --minimal linux-3.4.48/include/linux/vserver/inode_cmd.h linux-3.4.48-vs2.3.3.9/include/linux/vserver/inode_cmd.h
---- linux-3.4.48/include/linux/vserver/inode_cmd.h	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/vserver/inode_cmd.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/include/linux/vserver/inode_cmd.h b/include/linux/vserver/inode_cmd.h
+new file mode 100644
+index 0000000..4444c11
+--- /dev/null
++++ b/include/linux/vserver/inode_cmd.h
 @@ -0,0 +1,59 @@
 +#ifndef _VX_INODE_CMD_H
 +#define _VX_INODE_CMD_H
@@ -12451,9 +12743,11 @@ diff -NurpP --minimal linux-3.4.48/include/linux/vserver/inode_cmd.h linux-3.4.4
 +
 +#endif	/* __KERNEL__ */
 +#endif	/* _VX_INODE_CMD_H */
-diff -NurpP --minimal linux-3.4.48/include/linux/vserver/limit.h linux-3.4.48-vs2.3.3.9/include/linux/vserver/limit.h
---- linux-3.4.48/include/linux/vserver/limit.h	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/vserver/limit.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/include/linux/vserver/limit.h b/include/linux/vserver/limit.h
+new file mode 100644
+index 0000000..804cc20
+--- /dev/null
++++ b/include/linux/vserver/limit.h
 @@ -0,0 +1,71 @@
 +#ifndef _VX_LIMIT_H
 +#define _VX_LIMIT_H
@@ -12526,9 +12820,11 @@ diff -NurpP --minimal linux-3.4.48/include/linux/vserver/limit.h linux-3.4.48-vs
 +
 +#endif	/* __KERNEL__ */
 +#endif	/* _VX_LIMIT_H */
-diff -NurpP --minimal linux-3.4.48/include/linux/vserver/limit_cmd.h linux-3.4.48-vs2.3.3.9/include/linux/vserver/limit_cmd.h
---- linux-3.4.48/include/linux/vserver/limit_cmd.h	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/vserver/limit_cmd.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/include/linux/vserver/limit_cmd.h b/include/linux/vserver/limit_cmd.h
+new file mode 100644
+index 0000000..62eaaf7
+--- /dev/null
++++ b/include/linux/vserver/limit_cmd.h
 @@ -0,0 +1,71 @@
 +#ifndef _VX_LIMIT_CMD_H
 +#define _VX_LIMIT_CMD_H
@@ -12601,9 +12897,11 @@ diff -NurpP --minimal linux-3.4.48/include/linux/vserver/limit_cmd.h linux-3.4.4
 +
 +#endif	/* __KERNEL__ */
 +#endif	/* _VX_LIMIT_CMD_H */
-diff -NurpP --minimal linux-3.4.48/include/linux/vserver/limit_def.h linux-3.4.48-vs2.3.3.9/include/linux/vserver/limit_def.h
---- linux-3.4.48/include/linux/vserver/limit_def.h	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/vserver/limit_def.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/include/linux/vserver/limit_def.h b/include/linux/vserver/limit_def.h
+new file mode 100644
+index 0000000..2be25ac
+--- /dev/null
++++ b/include/linux/vserver/limit_def.h
 @@ -0,0 +1,47 @@
 +#ifndef _VX_LIMIT_DEF_H
 +#define _VX_LIMIT_DEF_H
@@ -12652,9 +12950,11 @@ diff -NurpP --minimal linux-3.4.48/include/linux/vserver/limit_def.h linux-3.4.4
 +#endif
 +
 +#endif	/* _VX_LIMIT_DEF_H */
-diff -NurpP --minimal linux-3.4.48/include/linux/vserver/limit_int.h linux-3.4.48-vs2.3.3.9/include/linux/vserver/limit_int.h
---- linux-3.4.48/include/linux/vserver/limit_int.h	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/vserver/limit_int.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/include/linux/vserver/limit_int.h b/include/linux/vserver/limit_int.h
+new file mode 100644
+index 0000000..0adf9cb
+--- /dev/null
++++ b/include/linux/vserver/limit_int.h
 @@ -0,0 +1,198 @@
 +#ifndef _VX_LIMIT_INT_H
 +#define _VX_LIMIT_INT_H
@@ -12854,9 +13154,11 @@ diff -NurpP --minimal linux-3.4.48/include/linux/vserver/limit_int.h linux-3.4.4
 +
 +#endif	/* __KERNEL__ */
 +#endif	/* _VX_LIMIT_INT_H */
-diff -NurpP --minimal linux-3.4.48/include/linux/vserver/monitor.h linux-3.4.48-vs2.3.3.9/include/linux/vserver/monitor.h
---- linux-3.4.48/include/linux/vserver/monitor.h	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/vserver/monitor.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/include/linux/vserver/monitor.h b/include/linux/vserver/monitor.h
+new file mode 100644
+index 0000000..53cd19f
+--- /dev/null
++++ b/include/linux/vserver/monitor.h
 @@ -0,0 +1,96 @@
 +#ifndef _VX_MONITOR_H
 +#define _VX_MONITOR_H
@@ -12954,9 +13256,11 @@ diff -NurpP --minimal linux-3.4.48/include/linux/vserver/monitor.h linux-3.4.48-
 +
 +
 +#endif /* _VX_MONITOR_H */
-diff -NurpP --minimal linux-3.4.48/include/linux/vserver/network.h linux-3.4.48-vs2.3.3.9/include/linux/vserver/network.h
---- linux-3.4.48/include/linux/vserver/network.h	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/vserver/network.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/include/linux/vserver/network.h b/include/linux/vserver/network.h
+new file mode 100644
+index 0000000..a6695d5
+--- /dev/null
++++ b/include/linux/vserver/network.h
 @@ -0,0 +1,148 @@
 +#ifndef _VX_NETWORK_H
 +#define _VX_NETWORK_H
@@ -13106,9 +13410,11 @@ diff -NurpP --minimal linux-3.4.48/include/linux/vserver/network.h linux-3.4.48-
 +
 +#endif	/* __KERNEL__ */
 +#endif	/* _VX_NETWORK_H */
-diff -NurpP --minimal linux-3.4.48/include/linux/vserver/network_cmd.h linux-3.4.48-vs2.3.3.9/include/linux/vserver/network_cmd.h
---- linux-3.4.48/include/linux/vserver/network_cmd.h	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/vserver/network_cmd.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/include/linux/vserver/network_cmd.h b/include/linux/vserver/network_cmd.h
+new file mode 100644
+index 0000000..32bcc39
+--- /dev/null
++++ b/include/linux/vserver/network_cmd.h
 @@ -0,0 +1,164 @@
 +#ifndef _VX_NETWORK_CMD_H
 +#define _VX_NETWORK_CMD_H
@@ -13274,9 +13580,11 @@ diff -NurpP --minimal linux-3.4.48/include/linux/vserver/network_cmd.h linux-3.4
 +
 +#endif	/* __KERNEL__ */
 +#endif	/* _VX_CONTEXT_CMD_H */
-diff -NurpP --minimal linux-3.4.48/include/linux/vserver/percpu.h linux-3.4.48-vs2.3.3.9/include/linux/vserver/percpu.h
---- linux-3.4.48/include/linux/vserver/percpu.h	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/vserver/percpu.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/include/linux/vserver/percpu.h b/include/linux/vserver/percpu.h
+new file mode 100644
+index 0000000..647d22c
+--- /dev/null
++++ b/include/linux/vserver/percpu.h
 @@ -0,0 +1,14 @@
 +#ifndef _VX_PERCPU_H
 +#define _VX_PERCPU_H
@@ -13292,9 +13600,11 @@ diff -NurpP --minimal linux-3.4.48/include/linux/vserver/percpu.h linux-3.4.48-v
 +#define	PERCPU_PERCTX	(sizeof(struct _vx_percpu))
 +
 +#endif	/* _VX_PERCPU_H */
-diff -NurpP --minimal linux-3.4.48/include/linux/vserver/pid.h linux-3.4.48-vs2.3.3.9/include/linux/vserver/pid.h
---- linux-3.4.48/include/linux/vserver/pid.h	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/vserver/pid.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/include/linux/vserver/pid.h b/include/linux/vserver/pid.h
+new file mode 100644
+index 0000000..34b8f44
+--- /dev/null
++++ b/include/linux/vserver/pid.h
 @@ -0,0 +1,51 @@
 +#ifndef _VSERVER_PID_H
 +#define _VSERVER_PID_H
@@ -13347,9 +13657,11 @@ diff -NurpP --minimal linux-3.4.48/include/linux/vserver/pid.h linux-3.4.48-vs2.
 +}
 +
 +#endif
-diff -NurpP --minimal linux-3.4.48/include/linux/vserver/sched.h linux-3.4.48-vs2.3.3.9/include/linux/vserver/sched.h
---- linux-3.4.48/include/linux/vserver/sched.h	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/vserver/sched.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/include/linux/vserver/sched.h b/include/linux/vserver/sched.h
+new file mode 100644
+index 0000000..296c63f
+--- /dev/null
++++ b/include/linux/vserver/sched.h
 @@ -0,0 +1,23 @@
 +#ifndef _VX_SCHED_H
 +#define _VX_SCHED_H
@@ -13374,9 +13686,11 @@ diff -NurpP --minimal linux-3.4.48/include/linux/vserver/sched.h linux-3.4.48-vs
 +#else	/* _VX_SCHED_H */
 +#warning duplicate inclusion
 +#endif	/* _VX_SCHED_H */
-diff -NurpP --minimal linux-3.4.48/include/linux/vserver/sched_cmd.h linux-3.4.48-vs2.3.3.9/include/linux/vserver/sched_cmd.h
---- linux-3.4.48/include/linux/vserver/sched_cmd.h	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/vserver/sched_cmd.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/include/linux/vserver/sched_cmd.h b/include/linux/vserver/sched_cmd.h
+new file mode 100644
+index 0000000..9accd68
+--- /dev/null
++++ b/include/linux/vserver/sched_cmd.h
 @@ -0,0 +1,21 @@
 +#ifndef _VX_SCHED_CMD_H
 +#define _VX_SCHED_CMD_H
@@ -13399,9 +13713,11 @@ diff -NurpP --minimal linux-3.4.48/include/linux/vserver/sched_cmd.h linux-3.4.4
 +
 +#endif	/* __KERNEL__ */
 +#endif	/* _VX_SCHED_CMD_H */
-diff -NurpP --minimal linux-3.4.48/include/linux/vserver/sched_def.h linux-3.4.48-vs2.3.3.9/include/linux/vserver/sched_def.h
---- linux-3.4.48/include/linux/vserver/sched_def.h	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/vserver/sched_def.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/include/linux/vserver/sched_def.h b/include/linux/vserver/sched_def.h
+new file mode 100644
+index 0000000..99f5728
+--- /dev/null
++++ b/include/linux/vserver/sched_def.h
 @@ -0,0 +1,38 @@
 +#ifndef _VX_SCHED_DEF_H
 +#define _VX_SCHED_DEF_H
@@ -13441,9 +13757,11 @@ diff -NurpP --minimal linux-3.4.48/include/linux/vserver/sched_def.h linux-3.4.4
 +#endif
 +
 +#endif	/* _VX_SCHED_DEF_H */
-diff -NurpP --minimal linux-3.4.48/include/linux/vserver/signal.h linux-3.4.48-vs2.3.3.9/include/linux/vserver/signal.h
---- linux-3.4.48/include/linux/vserver/signal.h	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/vserver/signal.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/include/linux/vserver/signal.h b/include/linux/vserver/signal.h
+new file mode 100644
+index 0000000..690168e
+--- /dev/null
++++ b/include/linux/vserver/signal.h
 @@ -0,0 +1,14 @@
 +#ifndef _VX_SIGNAL_H
 +#define _VX_SIGNAL_H
@@ -13459,9 +13777,11 @@ diff -NurpP --minimal linux-3.4.48/include/linux/vserver/signal.h linux-3.4.48-v
 +#else	/* _VX_SIGNAL_H */
 +#warning duplicate inclusion
 +#endif	/* _VX_SIGNAL_H */
-diff -NurpP --minimal linux-3.4.48/include/linux/vserver/signal_cmd.h linux-3.4.48-vs2.3.3.9/include/linux/vserver/signal_cmd.h
---- linux-3.4.48/include/linux/vserver/signal_cmd.h	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/vserver/signal_cmd.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/include/linux/vserver/signal_cmd.h b/include/linux/vserver/signal_cmd.h
+new file mode 100644
+index 0000000..ed1ac7b
+--- /dev/null
++++ b/include/linux/vserver/signal_cmd.h
 @@ -0,0 +1,43 @@
 +#ifndef _VX_SIGNAL_CMD_H
 +#define _VX_SIGNAL_CMD_H
@@ -13506,9 +13826,11 @@ diff -NurpP --minimal linux-3.4.48/include/linux/vserver/signal_cmd.h linux-3.4.
 +
 +#endif	/* __KERNEL__ */
 +#endif	/* _VX_SIGNAL_CMD_H */
-diff -NurpP --minimal linux-3.4.48/include/linux/vserver/space.h linux-3.4.48-vs2.3.3.9/include/linux/vserver/space.h
---- linux-3.4.48/include/linux/vserver/space.h	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/vserver/space.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/include/linux/vserver/space.h b/include/linux/vserver/space.h
+new file mode 100644
+index 0000000..65e8021
+--- /dev/null
++++ b/include/linux/vserver/space.h
 @@ -0,0 +1,12 @@
 +#ifndef _VX_SPACE_H
 +#define _VX_SPACE_H
@@ -13522,9 +13844,11 @@ diff -NurpP --minimal linux-3.4.48/include/linux/vserver/space.h linux-3.4.48-vs
 +#else	/* _VX_SPACE_H */
 +#warning duplicate inclusion
 +#endif	/* _VX_SPACE_H */
-diff -NurpP --minimal linux-3.4.48/include/linux/vserver/space_cmd.h linux-3.4.48-vs2.3.3.9/include/linux/vserver/space_cmd.h
---- linux-3.4.48/include/linux/vserver/space_cmd.h	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/vserver/space_cmd.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/include/linux/vserver/space_cmd.h b/include/linux/vserver/space_cmd.h
+new file mode 100644
+index 0000000..2ef8117
+--- /dev/null
++++ b/include/linux/vserver/space_cmd.h
 @@ -0,0 +1,38 @@
 +#ifndef _VX_SPACE_CMD_H
 +#define _VX_SPACE_CMD_H
@@ -13564,9 +13888,11 @@ diff -NurpP --minimal linux-3.4.48/include/linux/vserver/space_cmd.h linux-3.4.4
 +
 +#endif	/* __KERNEL__ */
 +#endif	/* _VX_SPACE_CMD_H */
-diff -NurpP --minimal linux-3.4.48/include/linux/vserver/switch.h linux-3.4.48-vs2.3.3.9/include/linux/vserver/switch.h
---- linux-3.4.48/include/linux/vserver/switch.h	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/vserver/switch.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/include/linux/vserver/switch.h b/include/linux/vserver/switch.h
+new file mode 100644
+index 0000000..f9afa8a
+--- /dev/null
++++ b/include/linux/vserver/switch.h
 @@ -0,0 +1,98 @@
 +#ifndef _VX_SWITCH_H
 +#define _VX_SWITCH_H
@@ -13666,9 +13992,11 @@ diff -NurpP --minimal linux-3.4.48/include/linux/vserver/switch.h linux-3.4.48-v
 +
 +#endif	/* _VX_SWITCH_H */
 +
-diff -NurpP --minimal linux-3.4.48/include/linux/vserver/tag.h linux-3.4.48-vs2.3.3.9/include/linux/vserver/tag.h
---- linux-3.4.48/include/linux/vserver/tag.h	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/vserver/tag.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/include/linux/vserver/tag.h b/include/linux/vserver/tag.h
+new file mode 100644
+index 0000000..f4afd42
+--- /dev/null
++++ b/include/linux/vserver/tag.h
 @@ -0,0 +1,143 @@
 +#ifndef _DX_TAG_H
 +#define _DX_TAG_H
@@ -13813,9 +14141,11 @@ diff -NurpP --minimal linux-3.4.48/include/linux/vserver/tag.h linux-3.4.48-vs2.
 +#endif
 +
 +#endif /* _DX_TAG_H */
-diff -NurpP --minimal linux-3.4.48/include/linux/vserver/tag_cmd.h linux-3.4.48-vs2.3.3.9/include/linux/vserver/tag_cmd.h
---- linux-3.4.48/include/linux/vserver/tag_cmd.h	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/linux/vserver/tag_cmd.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/include/linux/vserver/tag_cmd.h b/include/linux/vserver/tag_cmd.h
+new file mode 100644
+index 0000000..7f3f393
+--- /dev/null
++++ b/include/linux/vserver/tag_cmd.h
 @@ -0,0 +1,22 @@
 +#ifndef _VX_TAG_CMD_H
 +#define _VX_TAG_CMD_H
@@ -13839,22 +14169,24 @@ diff -NurpP --minimal linux-3.4.48/include/linux/vserver/tag_cmd.h linux-3.4.48-
 +
 +#endif	/* __KERNEL__ */
 +#endif	/* _VX_TAG_CMD_H */
-diff -NurpP --minimal linux-3.4.48/include/net/addrconf.h linux-3.4.48-vs2.3.3.9/include/net/addrconf.h
---- linux-3.4.48/include/net/addrconf.h	2012-05-21 16:07:33.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/net/addrconf.h	2012-05-21 16:15:05.000000000 +0000
-@@ -80,7 +80,8 @@ extern int			ipv6_dev_get_saddr(struct n
+diff --git a/include/net/addrconf.h b/include/net/addrconf.h
+index 1a77dbb..369e8f8 100644
+--- a/include/net/addrconf.h
++++ b/include/net/addrconf.h
+@@ -80,7 +80,8 @@ extern int			ipv6_dev_get_saddr(struct net *net,
  					       struct net_device *dev,
  					       const struct in6_addr *daddr,
  					       unsigned int srcprefs,
 -					       struct in6_addr *saddr);
 +					       struct in6_addr *saddr,
 +					       struct nx_info *nxi);
- extern int			ipv6_get_lladdr(struct net_device *dev,
- 						struct in6_addr *addr,
- 						unsigned char banned_flags);
-diff -NurpP --minimal linux-3.4.48/include/net/af_unix.h linux-3.4.48-vs2.3.3.9/include/net/af_unix.h
---- linux-3.4.48/include/net/af_unix.h	2012-05-21 16:07:33.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/net/af_unix.h	2012-05-21 16:15:05.000000000 +0000
+ extern int			__ipv6_get_lladdr(struct inet6_dev *idev,
+ 						  struct in6_addr *addr,
+ 						  unsigned char banned_flags);
+diff --git a/include/net/af_unix.h b/include/net/af_unix.h
+index ca68e2c..820e190 100644
+--- a/include/net/af_unix.h
++++ b/include/net/af_unix.h
 @@ -4,6 +4,7 @@
  #include <linux/socket.h>
  #include <linux/un.h>
@@ -13863,9 +14195,10 @@ diff -NurpP --minimal linux-3.4.48/include/net/af_unix.h linux-3.4.48-vs2.3.3.9/
  #include <net/sock.h>
  
  extern void unix_inflight(struct file *fp);
-diff -NurpP --minimal linux-3.4.48/include/net/inet_timewait_sock.h linux-3.4.48-vs2.3.3.9/include/net/inet_timewait_sock.h
---- linux-3.4.48/include/net/inet_timewait_sock.h	2012-03-19 18:47:29.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/net/inet_timewait_sock.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/include/net/inet_timewait_sock.h b/include/net/inet_timewait_sock.h
+index ba52c83..d3f921f 100644
+--- a/include/net/inet_timewait_sock.h
++++ b/include/net/inet_timewait_sock.h
 @@ -112,6 +112,10 @@ struct inet_timewait_sock {
  #define tw_net			__tw_common.skc_net
  #define tw_daddr        	__tw_common.skc_daddr
@@ -13877,10 +14210,11 @@ diff -NurpP --minimal linux-3.4.48/include/net/inet_timewait_sock.h linux-3.4.48
  	int			tw_timeout;
  	volatile unsigned char	tw_substate;
  	unsigned char		tw_rcv_wscale;
-diff -NurpP --minimal linux-3.4.48/include/net/ip6_route.h linux-3.4.48-vs2.3.3.9/include/net/ip6_route.h
---- linux-3.4.48/include/net/ip6_route.h	2012-03-19 18:47:29.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/net/ip6_route.h	2012-05-21 16:15:05.000000000 +0000
-@@ -88,7 +88,8 @@ extern int			ip6_route_get_saddr(struct
+diff --git a/include/net/ip6_route.h b/include/net/ip6_route.h
+index 2ad92ca..fd3b66f 100644
+--- a/include/net/ip6_route.h
++++ b/include/net/ip6_route.h
+@@ -88,7 +88,8 @@ extern int			ip6_route_get_saddr(struct net *net,
  						    struct rt6_info *rt,
  						    const struct in6_addr *daddr,
  						    unsigned int prefs,
@@ -13890,10 +14224,11 @@ diff -NurpP --minimal linux-3.4.48/include/net/ip6_route.h linux-3.4.48-vs2.3.3.
  
  extern struct rt6_info		*rt6_lookup(struct net *net,
  					    const struct in6_addr *daddr,
-diff -NurpP --minimal linux-3.4.48/include/net/route.h linux-3.4.48-vs2.3.3.9/include/net/route.h
---- linux-3.4.48/include/net/route.h	2012-03-19 18:47:29.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/net/route.h	2012-05-21 16:15:05.000000000 +0000
-@@ -202,6 +202,9 @@ static inline void ip_rt_put(struct rtab
+diff --git a/include/net/route.h b/include/net/route.h
+index b1c0d5b..97cb84b 100644
+--- a/include/net/route.h
++++ b/include/net/route.h
+@@ -202,6 +202,9 @@ static inline void ip_rt_put(struct rtable * rt)
  		dst_release(&rt->dst);
  }
  
@@ -13903,7 +14238,7 @@ diff -NurpP --minimal linux-3.4.48/include/net/route.h linux-3.4.48-vs2.3.3.9/in
  #define IPTOS_RT_MASK	(IPTOS_TOS_MASK & ~3)
  
  extern const __u8 ip_tos2prio[16];
-@@ -253,6 +256,9 @@ static inline void ip_route_connect_init
+@@ -253,6 +256,9 @@ static inline void ip_route_connect_init(struct flowi4 *fl4, __be32 dst, __be32
  			   protocol, flow_flags, dst, src, dport, sport);
  }
  
@@ -13913,7 +14248,7 @@ diff -NurpP --minimal linux-3.4.48/include/net/route.h linux-3.4.48-vs2.3.3.9/in
  static inline struct rtable *ip_route_connect(struct flowi4 *fl4,
  					      __be32 dst, __be32 src, u32 tos,
  					      int oif, u8 protocol,
-@@ -261,11 +267,25 @@ static inline struct rtable *ip_route_co
+@@ -261,11 +267,25 @@ static inline struct rtable *ip_route_connect(struct flowi4 *fl4,
  {
  	struct net *net = sock_net(sk);
  	struct rtable *rt;
@@ -13940,9 +14275,10 @@ diff -NurpP --minimal linux-3.4.48/include/net/route.h linux-3.4.48-vs2.3.3.9/in
  		rt = __ip_route_output_key(net, fl4);
  		if (IS_ERR(rt))
  			return rt;
-diff -NurpP --minimal linux-3.4.48/include/net/sock.h linux-3.4.48-vs2.3.3.9/include/net/sock.h
---- linux-3.4.48/include/net/sock.h	2013-06-13 08:59:36.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/include/net/sock.h	2013-03-02 15:26:44.000000000 +0000
+diff --git a/include/net/sock.h b/include/net/sock.h
+index f673ba5..88fe8a5 100644
+--- a/include/net/sock.h
++++ b/include/net/sock.h
 @@ -170,6 +170,10 @@ struct sock_common {
  #ifdef CONFIG_NET_NS
  	struct net	 	*skc_net;
@@ -13965,9 +14301,10 @@ diff -NurpP --minimal linux-3.4.48/include/net/sock.h linux-3.4.48-vs2.3.3.9/inc
  	socket_lock_t		sk_lock;
  	struct sk_buff_head	sk_receive_queue;
  	/*
-diff -NurpP --minimal linux-3.4.48/init/Kconfig linux-3.4.48-vs2.3.3.9/init/Kconfig
---- linux-3.4.48/init/Kconfig	2012-05-21 16:07:33.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/init/Kconfig	2012-05-21 16:15:05.000000000 +0000
+diff --git a/init/Kconfig b/init/Kconfig
+index 6cfd71d..0e1c0f5 100644
+--- a/init/Kconfig
++++ b/init/Kconfig
 @@ -579,6 +579,7 @@ config HAVE_UNSTABLE_SCHED_CLOCK
  menuconfig CGROUPS
  	boolean "Control Group support"
@@ -13984,9 +14321,10 @@ diff -NurpP --minimal linux-3.4.48/init/Kconfig linux-3.4.48-vs2.3.3.9/init/Kcon
  	default y
  	help
  	  This allows containers, i.e. vservers, to use user namespaces
-diff -NurpP --minimal linux-3.4.48/init/main.c linux-3.4.48-vs2.3.3.9/init/main.c
---- linux-3.4.48/init/main.c	2013-06-13 08:59:37.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/init/main.c	2013-02-19 14:42:56.000000000 +0000
+diff --git a/init/main.c b/init/main.c
+index 02c1384..98a0bd8 100644
+--- a/init/main.c
++++ b/init/main.c
 @@ -68,6 +68,7 @@
  #include <linux/shmem_fs.h>
  #include <linux/slab.h>
@@ -13995,9 +14333,10 @@ diff -NurpP --minimal linux-3.4.48/init/main.c linux-3.4.48-vs2.3.3.9/init/main.
  
  #include <asm/io.h>
  #include <asm/bugs.h>
-diff -NurpP --minimal linux-3.4.48/ipc/mqueue.c linux-3.4.48-vs2.3.3.9/ipc/mqueue.c
---- linux-3.4.48/ipc/mqueue.c	2012-05-21 16:07:34.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/ipc/mqueue.c	2012-05-21 16:15:05.000000000 +0000
+diff --git a/ipc/mqueue.c b/ipc/mqueue.c
+index 28bd64d..fb05d4e 100644
+--- a/ipc/mqueue.c
++++ b/ipc/mqueue.c
 @@ -34,6 +34,8 @@
  #include <linux/ipc_namespace.h>
  #include <linux/user_namespace.h>
@@ -14015,7 +14354,7 @@ diff -NurpP --minimal linux-3.4.48/ipc/mqueue.c linux-3.4.48-vs2.3.3.9/ipc/mqueu
  	struct sock *notify_sock;
  	struct sk_buff *notify_cookie;
  
-@@ -129,6 +132,7 @@ static struct inode *mqueue_get_inode(st
+@@ -129,6 +132,7 @@ static struct inode *mqueue_get_inode(struct super_block *sb,
  	if (S_ISREG(mode)) {
  		struct mqueue_inode_info *info;
  		unsigned long mq_bytes, mq_msg_tblsz;
@@ -14023,7 +14362,7 @@ diff -NurpP --minimal linux-3.4.48/ipc/mqueue.c linux-3.4.48-vs2.3.3.9/ipc/mqueu
  
  		inode->i_fop = &mqueue_file_operations;
  		inode->i_size = FILENT_SIZE;
-@@ -141,6 +145,7 @@ static struct inode *mqueue_get_inode(st
+@@ -141,6 +145,7 @@ static struct inode *mqueue_get_inode(struct super_block *sb,
  		info->notify_owner = NULL;
  		info->qsize = 0;
  		info->user = NULL;	/* set when all is ok */
@@ -14031,7 +14370,7 @@ diff -NurpP --minimal linux-3.4.48/ipc/mqueue.c linux-3.4.48-vs2.3.3.9/ipc/mqueu
  		memset(&info->attr, 0, sizeof(info->attr));
  		info->attr.mq_maxmsg = ipc_ns->mq_msg_max;
  		info->attr.mq_msgsize = ipc_ns->mq_msgsize_max;
-@@ -158,17 +163,20 @@ static struct inode *mqueue_get_inode(st
+@@ -158,17 +163,20 @@ static struct inode *mqueue_get_inode(struct super_block *sb,
  
  		spin_lock(&mq_lock);
  		if (u->mq_bytes + mq_bytes < u->mq_bytes ||
@@ -14053,7 +14392,7 @@ diff -NurpP --minimal linux-3.4.48/ipc/mqueue.c linux-3.4.48-vs2.3.3.9/ipc/mqueu
  	} else if (S_ISDIR(mode)) {
  		inc_nlink(inode);
  		/* Some things misbehave if size == 0 on a directory */
-@@ -267,8 +275,11 @@ static void mqueue_evict_inode(struct in
+@@ -267,8 +275,11 @@ static void mqueue_evict_inode(struct inode *inode)
  	    + info->attr.mq_msgsize);
  	user = info->user;
  	if (user) {
@@ -14065,7 +14404,7 @@ diff -NurpP --minimal linux-3.4.48/ipc/mqueue.c linux-3.4.48-vs2.3.3.9/ipc/mqueu
  		/*
  		 * get_ns_from_inode() ensures that the
  		 * (ipc_ns = sb->s_fs_info) is either a valid ipc_ns
-@@ -278,6 +289,7 @@ static void mqueue_evict_inode(struct in
+@@ -278,6 +289,7 @@ static void mqueue_evict_inode(struct inode *inode)
  		if (ipc_ns)
  			ipc_ns->mq_queues_count--;
  		spin_unlock(&mq_lock);
@@ -14073,9 +14412,10 @@ diff -NurpP --minimal linux-3.4.48/ipc/mqueue.c linux-3.4.48-vs2.3.3.9/ipc/mqueu
  		free_uid(user);
  	}
  	if (ipc_ns)
-diff -NurpP --minimal linux-3.4.48/ipc/msg.c linux-3.4.48-vs2.3.3.9/ipc/msg.c
---- linux-3.4.48/ipc/msg.c	2011-05-22 14:17:59.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/ipc/msg.c	2012-05-21 16:15:05.000000000 +0000
+diff --git a/ipc/msg.c b/ipc/msg.c
+index 7385de2..bce069a 100644
+--- a/ipc/msg.c
++++ b/ipc/msg.c
 @@ -37,6 +37,7 @@
  #include <linux/rwsem.h>
  #include <linux/nsproxy.h>
@@ -14084,7 +14424,7 @@ diff -NurpP --minimal linux-3.4.48/ipc/msg.c linux-3.4.48-vs2.3.3.9/ipc/msg.c
  
  #include <asm/current.h>
  #include <asm/uaccess.h>
-@@ -190,6 +191,7 @@ static int newque(struct ipc_namespace *
+@@ -190,6 +191,7 @@ static int newque(struct ipc_namespace *ns, struct ipc_params *params)
  
  	msq->q_perm.mode = msgflg & S_IRWXUGO;
  	msq->q_perm.key = key;
@@ -14092,9 +14432,10 @@ diff -NurpP --minimal linux-3.4.48/ipc/msg.c linux-3.4.48-vs2.3.3.9/ipc/msg.c
  
  	msq->q_perm.security = NULL;
  	retval = security_msg_queue_alloc(msq);
-diff -NurpP --minimal linux-3.4.48/ipc/namespace.c linux-3.4.48-vs2.3.3.9/ipc/namespace.c
---- linux-3.4.48/ipc/namespace.c	2011-07-22 09:18:12.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/ipc/namespace.c	2012-05-21 16:15:05.000000000 +0000
+diff --git a/ipc/namespace.c b/ipc/namespace.c
+index ce0a647..2999f1a 100644
+--- a/ipc/namespace.c
++++ b/ipc/namespace.c
 @@ -13,11 +13,12 @@
  #include <linux/mount.h>
  #include <linux/user_namespace.h>
@@ -14110,7 +14451,7 @@ diff -NurpP --minimal linux-3.4.48/ipc/namespace.c linux-3.4.48-vs2.3.3.9/ipc/na
  {
  	struct ipc_namespace *ns;
  	int err;
-@@ -46,19 +47,18 @@ static struct ipc_namespace *create_ipc_
+@@ -46,19 +47,18 @@ static struct ipc_namespace *create_ipc_ns(struct task_struct *tsk,
  	ipcns_notify(IPCNS_CREATED);
  	register_ipcns_notifier(ns);
  
@@ -14135,9 +14476,10 @@ diff -NurpP --minimal linux-3.4.48/ipc/namespace.c linux-3.4.48-vs2.3.3.9/ipc/na
  }
  
  /*
-diff -NurpP --minimal linux-3.4.48/ipc/sem.c linux-3.4.48-vs2.3.3.9/ipc/sem.c
---- linux-3.4.48/ipc/sem.c	2012-01-09 15:14:59.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/ipc/sem.c	2012-05-21 16:15:05.000000000 +0000
+diff --git a/ipc/sem.c b/ipc/sem.c
+index 5215a81..c66a364 100644
+--- a/ipc/sem.c
++++ b/ipc/sem.c
 @@ -86,6 +86,8 @@
  #include <linux/rwsem.h>
  #include <linux/nsproxy.h>
@@ -14147,7 +14489,7 @@ diff -NurpP --minimal linux-3.4.48/ipc/sem.c linux-3.4.48-vs2.3.3.9/ipc/sem.c
  
  #include <asm/uaccess.h>
  #include "util.h"
-@@ -306,6 +308,7 @@ static int newary(struct ipc_namespace *
+@@ -306,6 +308,7 @@ static int newary(struct ipc_namespace *ns, struct ipc_params *params)
  
  	sma->sem_perm.mode = (semflg & S_IRWXUGO);
  	sma->sem_perm.key = key;
@@ -14155,7 +14497,7 @@ diff -NurpP --minimal linux-3.4.48/ipc/sem.c linux-3.4.48-vs2.3.3.9/ipc/sem.c
  
  	sma->sem_perm.security = NULL;
  	retval = security_sem_alloc(sma);
-@@ -321,6 +324,9 @@ static int newary(struct ipc_namespace *
+@@ -321,6 +324,9 @@ static int newary(struct ipc_namespace *ns, struct ipc_params *params)
  		return id;
  	}
  	ns->used_sems += nsems;
@@ -14165,7 +14507,7 @@ diff -NurpP --minimal linux-3.4.48/ipc/sem.c linux-3.4.48-vs2.3.3.9/ipc/sem.c
  
  	sma->sem_base = (struct sem *) &sma[1];
  
-@@ -770,6 +776,9 @@ static void freeary(struct ipc_namespace
+@@ -770,6 +776,9 @@ static void freeary(struct ipc_namespace *ns, struct kern_ipc_perm *ipcp)
  
  	wake_up_sem_queue_do(&tasks);
  	ns->used_sems -= sma->sem_nsems;
@@ -14175,9 +14517,10 @@ diff -NurpP --minimal linux-3.4.48/ipc/sem.c linux-3.4.48-vs2.3.3.9/ipc/sem.c
  	security_sem_free(sma);
  	ipc_rcu_putref(sma);
  }
-diff -NurpP --minimal linux-3.4.48/ipc/shm.c linux-3.4.48-vs2.3.3.9/ipc/shm.c
---- linux-3.4.48/ipc/shm.c	2012-05-21 16:07:34.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/ipc/shm.c	2013-06-13 09:46:39.000000000 +0000
+diff --git a/ipc/shm.c b/ipc/shm.c
+index a02ef57..18dc4bc 100644
+--- a/ipc/shm.c
++++ b/ipc/shm.c
 @@ -39,6 +39,8 @@
  #include <linux/nsproxy.h>
  #include <linux/mount.h>
@@ -14187,7 +14530,7 @@ diff -NurpP --minimal linux-3.4.48/ipc/shm.c linux-3.4.48-vs2.3.3.9/ipc/shm.c
  
  #include <asm/uaccess.h>
  
-@@ -187,7 +189,12 @@ static void shm_open(struct vm_area_stru
+@@ -187,7 +189,12 @@ static void shm_open(struct vm_area_struct *vma)
   */
  static void shm_destroy(struct ipc_namespace *ns, struct shmid_kernel *shp)
  {
@@ -14201,7 +14544,7 @@ diff -NurpP --minimal linux-3.4.48/ipc/shm.c linux-3.4.48-vs2.3.3.9/ipc/shm.c
  	shm_rmid(ns, shp);
  	shm_unlock(shp);
  	if (!is_file_hugepages(shp->shm_file))
-@@ -197,6 +204,7 @@ static void shm_destroy(struct ipc_names
+@@ -197,6 +204,7 @@ static void shm_destroy(struct ipc_namespace *ns, struct shmid_kernel *shp)
  						shp->mlock_user);
  	fput (shp->shm_file);
  	security_shm_free(shp);
@@ -14209,7 +14552,7 @@ diff -NurpP --minimal linux-3.4.48/ipc/shm.c linux-3.4.48-vs2.3.3.9/ipc/shm.c
  	ipc_rcu_putref(shp);
  }
  
-@@ -462,11 +470,15 @@ static int newseg(struct ipc_namespace *
+@@ -462,11 +470,15 @@ static int newseg(struct ipc_namespace *ns, struct ipc_params *params)
  	if (ns->shm_tot + numpages > ns->shm_ctlall)
  		return -ENOSPC;
  
@@ -14225,7 +14568,7 @@ diff -NurpP --minimal linux-3.4.48/ipc/shm.c linux-3.4.48-vs2.3.3.9/ipc/shm.c
  	shp->shm_perm.mode = (shmflg & S_IRWXUGO);
  	shp->mlock_user = NULL;
  
-@@ -521,6 +533,7 @@ static int newseg(struct ipc_namespace *
+@@ -523,6 +535,7 @@ static int newseg(struct ipc_namespace *ns, struct ipc_params *params)
  	ns->shm_tot += numpages;
  	error = shp->shm_perm.id;
  	shm_unlock(shp);
@@ -14233,9 +14576,10 @@ diff -NurpP --minimal linux-3.4.48/ipc/shm.c linux-3.4.48-vs2.3.3.9/ipc/shm.c
  	return error;
  
  no_id:
-diff -NurpP --minimal linux-3.4.48/kernel/Makefile linux-3.4.48-vs2.3.3.9/kernel/Makefile
---- linux-3.4.48/kernel/Makefile	2012-05-21 16:07:34.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/kernel/Makefile	2012-05-21 16:15:05.000000000 +0000
+diff --git a/kernel/Makefile b/kernel/Makefile
+index cb41b95..da2903a 100644
+--- a/kernel/Makefile
++++ b/kernel/Makefile
 @@ -25,6 +25,7 @@ endif
  obj-y += sched/
  obj-y += power/
@@ -14244,9 +14588,10 @@ diff -NurpP --minimal linux-3.4.48/kernel/Makefile linux-3.4.48-vs2.3.3.9/kernel
  obj-$(CONFIG_FREEZER) += freezer.o
  obj-$(CONFIG_PROFILING) += profile.o
  obj-$(CONFIG_STACKTRACE) += stacktrace.o
-diff -NurpP --minimal linux-3.4.48/kernel/auditsc.c linux-3.4.48-vs2.3.3.9/kernel/auditsc.c
---- linux-3.4.48/kernel/auditsc.c	2012-03-19 18:47:29.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/kernel/auditsc.c	2012-05-21 16:15:05.000000000 +0000
+diff --git a/kernel/auditsc.c b/kernel/auditsc.c
+index af1de0f..467e922 100644
+--- a/kernel/auditsc.c
++++ b/kernel/auditsc.c
 @@ -2308,7 +2308,7 @@ int audit_set_loginuid(uid_t loginuid)
  	if (task->loginuid != -1)
  		return -EPERM;
@@ -14256,9 +14601,10 @@ diff -NurpP --minimal linux-3.4.48/kernel/auditsc.c linux-3.4.48-vs2.3.3.9/kerne
  		return -EPERM;
  #endif  /* CONFIG_AUDIT_LOGINUID_IMMUTABLE */
  
-diff -NurpP --minimal linux-3.4.48/kernel/capability.c linux-3.4.48-vs2.3.3.9/kernel/capability.c
---- linux-3.4.48/kernel/capability.c	2012-03-19 18:47:29.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/kernel/capability.c	2012-05-21 16:15:05.000000000 +0000
+diff --git a/kernel/capability.c b/kernel/capability.c
+index 3f1adb6..3b88352 100644
+--- a/kernel/capability.c
++++ b/kernel/capability.c
 @@ -15,6 +15,7 @@
  #include <linux/syscalls.h>
  #include <linux/pid_namespace.h>
@@ -14267,7 +14613,7 @@ diff -NurpP --minimal linux-3.4.48/kernel/capability.c linux-3.4.48-vs2.3.3.9/ke
  #include <asm/uaccess.h>
  
  /*
-@@ -116,6 +117,7 @@ static int cap_validate_magic(cap_user_h
+@@ -116,6 +117,7 @@ static int cap_validate_magic(cap_user_header_t header, unsigned *tocopy)
  	return 0;
  }
  
@@ -14275,7 +14621,7 @@ diff -NurpP --minimal linux-3.4.48/kernel/capability.c linux-3.4.48-vs2.3.3.9/ke
  /*
   * The only thing that can change the capabilities of the current
   * process is the current process. As such, we can't be in this code
-@@ -349,6 +351,8 @@ bool has_ns_capability_noaudit(struct ta
+@@ -349,6 +351,8 @@ bool has_ns_capability_noaudit(struct task_struct *t,
  	return (ret == 0);
  }
  
@@ -14284,10 +14630,11 @@ diff -NurpP --minimal linux-3.4.48/kernel/capability.c linux-3.4.48-vs2.3.3.9/ke
  /**
   * has_capability_noaudit - Does a task have a capability (unaudited) in the
   * initial user ns
-diff -NurpP --minimal linux-3.4.48/kernel/compat.c linux-3.4.48-vs2.3.3.9/kernel/compat.c
---- linux-3.4.48/kernel/compat.c	2012-05-21 16:07:34.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/kernel/compat.c	2012-05-21 16:15:05.000000000 +0000
-@@ -1054,7 +1054,7 @@ asmlinkage long compat_sys_stime(compat_
+diff --git a/kernel/compat.c b/kernel/compat.c
+index d2c67aa..3e61099 100644
+--- a/kernel/compat.c
++++ b/kernel/compat.c
+@@ -1054,7 +1054,7 @@ asmlinkage long compat_sys_stime(compat_time_t __user *tptr)
  	if (err)
  		return err;
  
@@ -14296,9 +14643,10 @@ diff -NurpP --minimal linux-3.4.48/kernel/compat.c linux-3.4.48-vs2.3.3.9/kernel
  	return 0;
  }
  
-diff -NurpP --minimal linux-3.4.48/kernel/cred.c linux-3.4.48-vs2.3.3.9/kernel/cred.c
---- linux-3.4.48/kernel/cred.c	2012-05-21 16:07:34.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/kernel/cred.c	2012-05-21 16:15:05.000000000 +0000
+diff --git a/kernel/cred.c b/kernel/cred.c
+index e70683d..ed884ddf 100644
+--- a/kernel/cred.c
++++ b/kernel/cred.c
 @@ -62,31 +62,6 @@ struct cred init_cred = {
  #endif
  };
@@ -14368,9 +14716,10 @@ diff -NurpP --minimal linux-3.4.48/kernel/cred.c linux-3.4.48-vs2.3.3.9/kernel/c
  EXPORT_SYMBOL(prepare_creds);
  
  /*
-diff -NurpP --minimal linux-3.4.48/kernel/exit.c linux-3.4.48-vs2.3.3.9/kernel/exit.c
---- linux-3.4.48/kernel/exit.c	2013-06-13 08:59:37.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/kernel/exit.c	2012-12-08 00:54:06.000000000 +0000
+diff --git a/kernel/exit.c b/kernel/exit.c
+index bfbd856..f8cc8f7 100644
+--- a/kernel/exit.c
++++ b/kernel/exit.c
 @@ -48,6 +48,10 @@
  #include <linux/fs_struct.h>
  #include <linux/init_task.h>
@@ -14382,7 +14731,7 @@ diff -NurpP --minimal linux-3.4.48/kernel/exit.c linux-3.4.48-vs2.3.3.9/kernel/e
  #include <trace/events/sched.h>
  #include <linux/hw_breakpoint.h>
  #include <linux/oom.h>
-@@ -482,9 +486,11 @@ static void close_files(struct files_str
+@@ -482,9 +486,11 @@ static void close_files(struct files_struct * files)
  					filp_close(file, files);
  					cond_resched();
  				}
@@ -14394,7 +14743,7 @@ diff -NurpP --minimal linux-3.4.48/kernel/exit.c linux-3.4.48-vs2.3.3.9/kernel/e
  		}
  	}
  }
-@@ -699,15 +705,25 @@ static struct task_struct *find_new_reap
+@@ -699,15 +705,25 @@ static struct task_struct *find_new_reaper(struct task_struct *father)
  	__acquires(&tasklist_lock)
  {
  	struct pid_namespace *pid_ns = task_active_pid_ns(father);
@@ -14423,7 +14772,7 @@ diff -NurpP --minimal linux-3.4.48/kernel/exit.c linux-3.4.48-vs2.3.3.9/kernel/e
  	}
  
  	if (unlikely(pid_ns->child_reaper == father)) {
-@@ -751,7 +767,9 @@ static struct task_struct *find_new_reap
+@@ -751,7 +767,9 @@ static struct task_struct *find_new_reaper(struct task_struct *father)
  		}
  	}
  
@@ -14434,7 +14783,7 @@ diff -NurpP --minimal linux-3.4.48/kernel/exit.c linux-3.4.48-vs2.3.3.9/kernel/e
  }
  
  /*
-@@ -802,10 +820,15 @@ static void forget_original_parent(struc
+@@ -802,10 +820,15 @@ static void forget_original_parent(struct task_struct *father)
  	list_for_each_entry_safe(p, n, &father->children, sibling) {
  		struct task_struct *t = p;
  		do {
@@ -14478,9 +14827,10 @@ diff -NurpP --minimal linux-3.4.48/kernel/exit.c linux-3.4.48-vs2.3.3.9/kernel/e
  	BUG();
  	/* Avoid "noreturn function does return".  */
  	for (;;)
-diff -NurpP --minimal linux-3.4.48/kernel/fork.c linux-3.4.48-vs2.3.3.9/kernel/fork.c
---- linux-3.4.48/kernel/fork.c	2013-06-13 08:59:37.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/kernel/fork.c	2012-06-28 14:45:07.000000000 +0000
+diff --git a/kernel/fork.c b/kernel/fork.c
+index 8163333..33a7b9c 100644
+--- a/kernel/fork.c
++++ b/kernel/fork.c
 @@ -68,6 +68,9 @@
  #include <linux/oom.h>
  #include <linux/khugepaged.h>
@@ -14500,7 +14850,7 @@ diff -NurpP --minimal linux-3.4.48/kernel/fork.c linux-3.4.48-vs2.3.3.9/kernel/f
  	ftrace_graph_exit_task(tsk);
  	free_task_struct(tsk);
  }
-@@ -507,6 +512,7 @@ static struct mm_struct *mm_init(struct
+@@ -507,6 +512,7 @@ static struct mm_struct *mm_init(struct mm_struct *mm, struct task_struct *p)
  	if (likely(!mm_alloc_pgd(mm))) {
  		mm->def_flags = 0;
  		mmu_notifier_mm_init(mm);
@@ -14516,7 +14866,7 @@ diff -NurpP --minimal linux-3.4.48/kernel/fork.c linux-3.4.48-vs2.3.3.9/kernel/f
  	free_mm(mm);
  }
  EXPORT_SYMBOL_GPL(__mmdrop);
-@@ -794,6 +801,7 @@ struct mm_struct *dup_mm(struct task_str
+@@ -794,6 +801,7 @@ struct mm_struct *dup_mm(struct task_struct *tsk)
  		goto fail_nomem;
  
  	memcpy(mm, oldmm, sizeof(*mm));
@@ -14532,7 +14882,7 @@ diff -NurpP --minimal linux-3.4.48/kernel/fork.c linux-3.4.48-vs2.3.3.9/kernel/f
  	mm_free_pgd(mm);
  	free_mm(mm);
  	return NULL;
-@@ -1125,6 +1134,8 @@ static struct task_struct *copy_process(
+@@ -1125,6 +1134,8 @@ static struct task_struct *copy_process(unsigned long clone_flags,
  	int retval;
  	struct task_struct *p;
  	int cgroup_callbacks_done = 0;
@@ -14541,7 +14891,7 @@ diff -NurpP --minimal linux-3.4.48/kernel/fork.c linux-3.4.48-vs2.3.3.9/kernel/f
  
  	if ((clone_flags & (CLONE_NEWNS|CLONE_FS)) == (CLONE_NEWNS|CLONE_FS))
  		return ERR_PTR(-EINVAL);
-@@ -1171,7 +1182,12 @@ static struct task_struct *copy_process(
+@@ -1171,7 +1182,12 @@ static struct task_struct *copy_process(unsigned long clone_flags,
  	DEBUG_LOCKS_WARN_ON(!p->hardirqs_enabled);
  	DEBUG_LOCKS_WARN_ON(!p->softirqs_enabled);
  #endif
@@ -14554,7 +14904,7 @@ diff -NurpP --minimal linux-3.4.48/kernel/fork.c linux-3.4.48-vs2.3.3.9/kernel/f
  	if (atomic_read(&p->real_cred->user->processes) >=
  			task_rlimit(p, RLIMIT_NPROC)) {
  		if (!capable(CAP_SYS_ADMIN) && !capable(CAP_SYS_RESOURCE) &&
-@@ -1448,6 +1464,18 @@ static struct task_struct *copy_process(
+@@ -1448,6 +1464,18 @@ static struct task_struct *copy_process(unsigned long clone_flags,
  
  	total_forks++;
  	spin_unlock(&current->sighand->siglock);
@@ -14573,9 +14923,10 @@ diff -NurpP --minimal linux-3.4.48/kernel/fork.c linux-3.4.48-vs2.3.3.9/kernel/f
  	write_unlock_irq(&tasklist_lock);
  	proc_fork_connector(p);
  	cgroup_post_fork(p);
-diff -NurpP --minimal linux-3.4.48/kernel/kthread.c linux-3.4.48-vs2.3.3.9/kernel/kthread.c
---- linux-3.4.48/kernel/kthread.c	2013-06-13 08:59:37.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/kernel/kthread.c	2012-10-22 13:09:53.000000000 +0000
+diff --git a/kernel/kthread.c b/kernel/kthread.c
+index b579af5..faa5fc9 100644
+--- a/kernel/kthread.c
++++ b/kernel/kthread.c
 @@ -16,6 +16,7 @@
  #include <linux/mutex.h>
  #include <linux/slab.h>
@@ -14584,9 +14935,10 @@ diff -NurpP --minimal linux-3.4.48/kernel/kthread.c linux-3.4.48-vs2.3.3.9/kerne
  #include <trace/events/sched.h>
  
  static DEFINE_SPINLOCK(kthread_create_lock);
-diff -NurpP --minimal linux-3.4.48/kernel/nsproxy.c linux-3.4.48-vs2.3.3.9/kernel/nsproxy.c
---- linux-3.4.48/kernel/nsproxy.c	2012-01-09 15:15:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/kernel/nsproxy.c	2012-05-21 16:15:05.000000000 +0000
+diff --git a/kernel/nsproxy.c b/kernel/nsproxy.c
+index b576f7f..a358f98 100644
+--- a/kernel/nsproxy.c
++++ b/kernel/nsproxy.c
 @@ -20,11 +20,14 @@
  #include <linux/mnt_namespace.h>
  #include <linux/utsname.h>
@@ -14602,7 +14954,7 @@ diff -NurpP --minimal linux-3.4.48/kernel/nsproxy.c linux-3.4.48-vs2.3.3.9/kerne
  
  static struct kmem_cache *nsproxy_cachep;
  
-@@ -46,8 +49,11 @@ static inline struct nsproxy *create_nsp
+@@ -46,8 +49,11 @@ static inline struct nsproxy *create_nsproxy(void)
  	struct nsproxy *nsproxy;
  
  	nsproxy = kmem_cache_alloc(nsproxy_cachep, GFP_KERNEL);
@@ -14615,7 +14967,7 @@ diff -NurpP --minimal linux-3.4.48/kernel/nsproxy.c linux-3.4.48-vs2.3.3.9/kerne
  	return nsproxy;
  }
  
-@@ -56,8 +62,11 @@ static inline struct nsproxy *create_nsp
+@@ -56,8 +62,11 @@ static inline struct nsproxy *create_nsproxy(void)
   * Return the newly created nsproxy.  Do not attach this to the task,
   * leave it to the caller to do proper locking and attach it to task.
   */
@@ -14629,7 +14981,7 @@ diff -NurpP --minimal linux-3.4.48/kernel/nsproxy.c linux-3.4.48-vs2.3.3.9/kerne
  {
  	struct nsproxy *new_nsp;
  	int err;
-@@ -66,31 +75,31 @@ static struct nsproxy *create_new_namesp
+@@ -66,31 +75,31 @@ static struct nsproxy *create_new_namespaces(unsigned long flags,
  	if (!new_nsp)
  		return ERR_PTR(-ENOMEM);
  
@@ -14721,7 +15073,7 @@ diff -NurpP --minimal linux-3.4.48/kernel/nsproxy.c linux-3.4.48-vs2.3.3.9/kerne
  	if (!old_ns)
  		return 0;
  
-@@ -134,7 +180,7 @@ int copy_namespaces(unsigned long flags,
+@@ -134,7 +180,7 @@ int copy_namespaces(unsigned long flags, struct task_struct *tsk)
  				CLONE_NEWPID | CLONE_NEWNET)))
  		return 0;
  
@@ -14730,7 +15082,7 @@ diff -NurpP --minimal linux-3.4.48/kernel/nsproxy.c linux-3.4.48-vs2.3.3.9/kerne
  		err = -EPERM;
  		goto out;
  	}
-@@ -161,6 +207,9 @@ int copy_namespaces(unsigned long flags,
+@@ -161,6 +207,9 @@ int copy_namespaces(unsigned long flags, struct task_struct *tsk)
  
  out:
  	put_nsproxy(old_ns);
@@ -14751,7 +15103,7 @@ diff -NurpP --minimal linux-3.4.48/kernel/nsproxy.c linux-3.4.48-vs2.3.3.9/kerne
  	kmem_cache_free(nsproxy_cachep, ns);
  }
  
-@@ -187,11 +238,15 @@ int unshare_nsproxy_namespaces(unsigned
+@@ -187,11 +238,15 @@ int unshare_nsproxy_namespaces(unsigned long unshare_flags,
  {
  	int err = 0;
  
@@ -14768,9 +15120,10 @@ diff -NurpP --minimal linux-3.4.48/kernel/nsproxy.c linux-3.4.48-vs2.3.3.9/kerne
  		return -EPERM;
  
  	*new_nsp = create_new_namespaces(unshare_flags, current,
-diff -NurpP --minimal linux-3.4.48/kernel/pid.c linux-3.4.48-vs2.3.3.9/kernel/pid.c
---- linux-3.4.48/kernel/pid.c	2012-03-19 18:47:30.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/kernel/pid.c	2012-05-21 16:15:05.000000000 +0000
+diff --git a/kernel/pid.c b/kernel/pid.c
+index 9f08dfa..46c1be0 100644
+--- a/kernel/pid.c
++++ b/kernel/pid.c
 @@ -36,6 +36,7 @@
  #include <linux/pid_namespace.h>
  #include <linux/init_task.h>
@@ -14788,7 +15141,7 @@ diff -NurpP --minimal linux-3.4.48/kernel/pid.c linux-3.4.48-vs2.3.3.9/kernel/pi
  }
  EXPORT_SYMBOL_GPL(find_vpid);
  
-@@ -404,6 +405,9 @@ void transfer_pid(struct task_struct *ol
+@@ -404,6 +405,9 @@ void transfer_pid(struct task_struct *old, struct task_struct *new,
  struct task_struct *pid_task(struct pid *pid, enum pid_type type)
  {
  	struct task_struct *result = NULL;
@@ -14798,7 +15151,7 @@ diff -NurpP --minimal linux-3.4.48/kernel/pid.c linux-3.4.48-vs2.3.3.9/kernel/pi
  	if (pid) {
  		struct hlist_node *first;
  		first = rcu_dereference_check(hlist_first_rcu(&pid->tasks[type]),
-@@ -423,7 +427,7 @@ struct task_struct *find_task_by_pid_ns(
+@@ -423,7 +427,7 @@ struct task_struct *find_task_by_pid_ns(pid_t nr, struct pid_namespace *ns)
  	rcu_lockdep_assert(rcu_read_lock_held(),
  			   "find_task_by_pid_ns() needs rcu_read_lock()"
  			   " protection");
@@ -14816,7 +15169,7 @@ diff -NurpP --minimal linux-3.4.48/kernel/pid.c linux-3.4.48-vs2.3.3.9/kernel/pi
  {
  	struct upid *upid;
  	pid_t nr = 0;
-@@ -480,6 +484,11 @@ pid_t pid_nr_ns(struct pid *pid, struct
+@@ -480,6 +484,11 @@ pid_t pid_nr_ns(struct pid *pid, struct pid_namespace *ns)
  	return nr;
  }
  
@@ -14828,9 +15181,10 @@ diff -NurpP --minimal linux-3.4.48/kernel/pid.c linux-3.4.48-vs2.3.3.9/kernel/pi
  pid_t pid_vnr(struct pid *pid)
  {
  	return pid_nr_ns(pid, current->nsproxy->pid_ns);
-diff -NurpP --minimal linux-3.4.48/kernel/pid_namespace.c linux-3.4.48-vs2.3.3.9/kernel/pid_namespace.c
---- linux-3.4.48/kernel/pid_namespace.c	2012-05-21 16:07:34.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/kernel/pid_namespace.c	2012-05-21 16:15:05.000000000 +0000
+diff --git a/kernel/pid_namespace.c b/kernel/pid_namespace.c
+index 57bc1fd..f7ce229 100644
+--- a/kernel/pid_namespace.c
++++ b/kernel/pid_namespace.c
 @@ -16,6 +16,7 @@
  #include <linux/slab.h>
  #include <linux/proc_fs.h>
@@ -14839,7 +15193,7 @@ diff -NurpP --minimal linux-3.4.48/kernel/pid_namespace.c linux-3.4.48-vs2.3.3.9
  
  #define BITS_PER_PAGE		(PAGE_SIZE*8)
  
-@@ -89,6 +90,7 @@ static struct pid_namespace *create_pid_
+@@ -89,6 +90,7 @@ static struct pid_namespace *create_pid_namespace(struct pid_namespace *parent_p
  		goto out_free_map;
  
  	kref_init(&ns->kref);
@@ -14847,7 +15201,7 @@ diff -NurpP --minimal linux-3.4.48/kernel/pid_namespace.c linux-3.4.48-vs2.3.3.9
  	ns->level = level;
  	ns->parent = get_pid_ns(parent_pid_ns);
  
-@@ -120,6 +122,7 @@ static void destroy_pid_namespace(struct
+@@ -120,6 +122,7 @@ static void destroy_pid_namespace(struct pid_namespace *ns)
  
  	for (i = 0; i < PIDMAP_ENTRIES; i++)
  		kfree(ns->pidmap[i].page);
@@ -14855,9 +15209,10 @@ diff -NurpP --minimal linux-3.4.48/kernel/pid_namespace.c linux-3.4.48-vs2.3.3.9
  	kmem_cache_free(pid_ns_cachep, ns);
  }
  
-diff -NurpP --minimal linux-3.4.48/kernel/posix-timers.c linux-3.4.48-vs2.3.3.9/kernel/posix-timers.c
---- linux-3.4.48/kernel/posix-timers.c	2013-06-13 08:59:37.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/kernel/posix-timers.c	2013-03-30 21:29:17.000000000 +0000
+diff --git a/kernel/posix-timers.c b/kernel/posix-timers.c
+index e885be1..1be116d 100644
+--- a/kernel/posix-timers.c
++++ b/kernel/posix-timers.c
 @@ -47,6 +47,7 @@
  #include <linux/wait.h>
  #include <linux/workqueue.h>
@@ -14866,7 +15221,7 @@ diff -NurpP --minimal linux-3.4.48/kernel/posix-timers.c linux-3.4.48-vs2.3.3.9/
  
  /*
   * Management arrays for POSIX timers.	 Timers are kept in slab memory
-@@ -340,6 +341,7 @@ int posix_timer_event(struct k_itimer *t
+@@ -340,6 +341,7 @@ int posix_timer_event(struct k_itimer *timr, int si_private)
  {
  	struct task_struct *task;
  	int shared, ret = -1;
@@ -14874,7 +15229,7 @@ diff -NurpP --minimal linux-3.4.48/kernel/posix-timers.c linux-3.4.48-vs2.3.3.9/
  	/*
  	 * FIXME: if ->sigq is queued we can race with
  	 * dequeue_signal()->do_schedule_next_timer().
-@@ -356,10 +358,18 @@ int posix_timer_event(struct k_itimer *t
+@@ -356,10 +358,18 @@ int posix_timer_event(struct k_itimer *timr, int si_private)
  	rcu_read_lock();
  	task = pid_task(timr->it_pid, PIDTYPE_PID);
  	if (task) {
@@ -14893,9 +15248,10 @@ diff -NurpP --minimal linux-3.4.48/kernel/posix-timers.c linux-3.4.48-vs2.3.3.9/
  	/* If we failed to send the signal the timer stops. */
  	return ret > 0;
  }
-diff -NurpP --minimal linux-3.4.48/kernel/printk.c linux-3.4.48-vs2.3.3.9/kernel/printk.c
---- linux-3.4.48/kernel/printk.c	2013-06-13 08:59:37.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/kernel/printk.c	2013-03-02 15:26:44.000000000 +0000
+diff --git a/kernel/printk.c b/kernel/printk.c
+index e95c662..53fb49c 100644
+--- a/kernel/printk.c
++++ b/kernel/printk.c
 @@ -41,6 +41,7 @@
  #include <linux/cpu.h>
  #include <linux/notifier.h>
@@ -14904,7 +15260,7 @@ diff -NurpP --minimal linux-3.4.48/kernel/printk.c linux-3.4.48-vs2.3.3.9/kernel
  
  #include <asm/uaccess.h>
  
-@@ -317,7 +318,7 @@ static int check_syslog_permissions(int
+@@ -317,7 +318,7 @@ static int check_syslog_permissions(int type, bool from_file)
  		return 0;
  
  	if (syslog_action_restricted(type)) {
@@ -14913,7 +15269,7 @@ diff -NurpP --minimal linux-3.4.48/kernel/printk.c linux-3.4.48-vs2.3.3.9/kernel
  			return 0;
  		/* For historical reasons, accept CAP_SYS_ADMIN too, with a warning */
  		if (capable(CAP_SYS_ADMIN)) {
-@@ -347,12 +348,9 @@ int do_syslog(int type, char __user *buf
+@@ -347,12 +348,9 @@ int do_syslog(int type, char __user *buf, int len, bool from_file)
  	if (error)
  		return error;
  
@@ -14929,7 +15285,7 @@ diff -NurpP --minimal linux-3.4.48/kernel/printk.c linux-3.4.48-vs2.3.3.9/kernel
  		error = -EINVAL;
  		if (!buf || len < 0)
  			goto out;
-@@ -363,6 +361,16 @@ int do_syslog(int type, char __user *buf
+@@ -363,6 +361,16 @@ int do_syslog(int type, char __user *buf, int len, bool from_file)
  			error = -EFAULT;
  			goto out;
  		}
@@ -14946,7 +15302,7 @@ diff -NurpP --minimal linux-3.4.48/kernel/printk.c linux-3.4.48-vs2.3.3.9/kernel
  		error = wait_event_interruptible(log_wait,
  							(log_start - log_end));
  		if (error)
-@@ -389,16 +397,6 @@ int do_syslog(int type, char __user *buf
+@@ -389,16 +397,6 @@ int do_syslog(int type, char __user *buf, int len, bool from_file)
  		/* FALL THRU */
  	/* Read last kernel messages */
  	case SYSLOG_ACTION_READ_ALL:
@@ -14963,9 +15319,10 @@ diff -NurpP --minimal linux-3.4.48/kernel/printk.c linux-3.4.48-vs2.3.3.9/kernel
  		count = len;
  		if (count > log_buf_len)
  			count = log_buf_len;
-diff -NurpP --minimal linux-3.4.48/kernel/ptrace.c linux-3.4.48-vs2.3.3.9/kernel/ptrace.c
---- linux-3.4.48/kernel/ptrace.c	2013-06-13 08:59:37.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/kernel/ptrace.c	2013-02-11 23:37:30.000000000 +0000
+diff --git a/kernel/ptrace.c b/kernel/ptrace.c
+index daf4394..b57b360 100644
+--- a/kernel/ptrace.c
++++ b/kernel/ptrace.c
 @@ -22,6 +22,7 @@
  #include <linux/syscalls.h>
  #include <linux/uaccess.h>
@@ -14986,9 +15343,10 @@ diff -NurpP --minimal linux-3.4.48/kernel/ptrace.c linux-3.4.48-vs2.3.3.9/kernel
  
  	return security_ptrace_access_check(task, mode);
  }
-diff -NurpP --minimal linux-3.4.48/kernel/sched/core.c linux-3.4.48-vs2.3.3.9/kernel/sched/core.c
---- linux-3.4.48/kernel/sched/core.c	2013-06-13 08:59:37.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/kernel/sched/core.c	2013-06-13 09:46:39.000000000 +0000
+diff --git a/kernel/sched/core.c b/kernel/sched/core.c
+index 4b6c546..bb45655 100644
+--- a/kernel/sched/core.c
++++ b/kernel/sched/core.c
 @@ -72,6 +72,8 @@
  #include <linux/slab.h>
  #include <linux/init_task.h>
@@ -14998,7 +15356,7 @@ diff -NurpP --minimal linux-3.4.48/kernel/sched/core.c linux-3.4.48-vs2.3.3.9/ke
  
  #include <asm/switch_to.h>
  #include <asm/tlb.h>
-@@ -2226,9 +2228,17 @@ EXPORT_SYMBOL(avenrun); /* should be rem
+@@ -2228,9 +2230,17 @@ EXPORT_SYMBOL(avenrun); /* should be removed */
   */
  void get_avenrun(unsigned long *loads, unsigned long offset, int shift)
  {
@@ -15019,7 +15377,7 @@ diff -NurpP --minimal linux-3.4.48/kernel/sched/core.c linux-3.4.48-vs2.3.3.9/ke
  }
  
  static long calc_load_fold_active(struct rq *this_rq)
-@@ -2797,14 +2807,17 @@ static inline void task_group_account_fi
+@@ -2799,14 +2809,17 @@ static inline void task_group_account_field(struct task_struct *p, int index,
  void account_user_time(struct task_struct *p, cputime_t cputime,
  		       cputime_t cputime_scaled)
  {
@@ -15038,7 +15396,7 @@ diff -NurpP --minimal linux-3.4.48/kernel/sched/core.c linux-3.4.48-vs2.3.3.9/ke
  
  	/* Add user time to cpustat. */
  	task_group_account_field(p, index, (__force u64) cputime);
-@@ -2851,9 +2864,12 @@ static inline
+@@ -2853,9 +2866,12 @@ static inline
  void __account_system_time(struct task_struct *p, cputime_t cputime,
  			cputime_t cputime_scaled, int index)
  {
@@ -15051,7 +15409,7 @@ diff -NurpP --minimal linux-3.4.48/kernel/sched/core.c linux-3.4.48-vs2.3.3.9/ke
  	account_group_system_time(p, cputime);
  
  	/* Add system time to cpustat. */
-@@ -4079,7 +4095,7 @@ SYSCALL_DEFINE1(nice, int, increment)
+@@ -4081,7 +4097,7 @@ SYSCALL_DEFINE1(nice, int, increment)
  		nice = 19;
  
  	if (increment < 0 && !can_nice(current, nice))
@@ -15060,9 +15418,10 @@ diff -NurpP --minimal linux-3.4.48/kernel/sched/core.c linux-3.4.48-vs2.3.3.9/ke
  
  	retval = security_task_setnice(current, nice);
  	if (retval)
-diff -NurpP --minimal linux-3.4.48/kernel/sched/fair.c linux-3.4.48-vs2.3.3.9/kernel/sched/fair.c
---- linux-3.4.48/kernel/sched/fair.c	2012-05-21 16:07:34.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/kernel/sched/fair.c	2012-05-21 16:15:05.000000000 +0000
+diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c
+index e955364..1e5f507 100644
+--- a/kernel/sched/fair.c
++++ b/kernel/sched/fair.c
 @@ -26,6 +26,7 @@
  #include <linux/slab.h>
  #include <linux/profile.h>
@@ -15071,7 +15430,7 @@ diff -NurpP --minimal linux-3.4.48/kernel/sched/fair.c linux-3.4.48-vs2.3.3.9/ke
  
  #include <trace/events/sched.h>
  
-@@ -1111,6 +1112,8 @@ enqueue_entity(struct cfs_rq *cfs_rq, st
+@@ -1111,6 +1112,8 @@ enqueue_entity(struct cfs_rq *cfs_rq, struct sched_entity *se, int flags)
  		__enqueue_entity(cfs_rq, se);
  	se->on_rq = 1;
  
@@ -15080,7 +15439,7 @@ diff -NurpP --minimal linux-3.4.48/kernel/sched/fair.c linux-3.4.48-vs2.3.3.9/ke
  	if (cfs_rq->nr_running == 1) {
  		list_add_leaf_cfs_rq(cfs_rq);
  		check_enqueue_throttle(cfs_rq);
-@@ -1191,6 +1194,8 @@ dequeue_entity(struct cfs_rq *cfs_rq, st
+@@ -1191,6 +1194,8 @@ dequeue_entity(struct cfs_rq *cfs_rq, struct sched_entity *se, int flags)
  	if (se != cfs_rq->curr)
  		__dequeue_entity(cfs_rq, se);
  	se->on_rq = 0;
@@ -15089,9 +15448,10 @@ diff -NurpP --minimal linux-3.4.48/kernel/sched/fair.c linux-3.4.48-vs2.3.3.9/ke
  	update_cfs_load(cfs_rq, 0);
  	account_entity_dequeue(cfs_rq, se);
  
-diff -NurpP --minimal linux-3.4.48/kernel/signal.c linux-3.4.48-vs2.3.3.9/kernel/signal.c
---- linux-3.4.48/kernel/signal.c	2013-06-13 08:59:38.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/kernel/signal.c	2013-06-13 09:46:39.000000000 +0000
+diff --git a/kernel/signal.c b/kernel/signal.c
+index 959df4f..11a7c4d 100644
+--- a/kernel/signal.c
++++ b/kernel/signal.c
 @@ -29,6 +29,8 @@
  #include <linux/pid_namespace.h>
  #include <linux/nsproxy.h>
@@ -15101,7 +15461,7 @@ diff -NurpP --minimal linux-3.4.48/kernel/signal.c linux-3.4.48-vs2.3.3.9/kernel
  #define CREATE_TRACE_POINTS
  #include <trace/events/signal.h>
  
-@@ -787,9 +789,18 @@ static int check_kill_permission(int sig
+@@ -787,9 +789,18 @@ static int check_kill_permission(int sig, struct siginfo *info,
  	struct pid *sid;
  	int error;
  
@@ -15120,7 +15480,7 @@ diff -NurpP --minimal linux-3.4.48/kernel/signal.c linux-3.4.48-vs2.3.3.9/kernel
  	if (!si_fromuser(info))
  		return 0;
  
-@@ -813,6 +824,20 @@ static int check_kill_permission(int sig
+@@ -813,6 +824,20 @@ static int check_kill_permission(int sig, struct siginfo *info,
  		}
  	}
  
@@ -15141,7 +15501,7 @@ diff -NurpP --minimal linux-3.4.48/kernel/signal.c linux-3.4.48-vs2.3.3.9/kernel
  	return security_task_kill(t, info, sig, 0);
  }
  
-@@ -1355,7 +1380,7 @@ int kill_pid_info(int sig, struct siginf
+@@ -1355,7 +1380,7 @@ int kill_pid_info(int sig, struct siginfo *info, struct pid *pid)
  	rcu_read_lock();
  retry:
  	p = pid_task(pid, PIDTYPE_PID);
@@ -15150,7 +15510,7 @@ diff -NurpP --minimal linux-3.4.48/kernel/signal.c linux-3.4.48-vs2.3.3.9/kernel
  		error = group_send_sig_info(sig, info, p);
  		if (unlikely(error == -ESRCH))
  			/*
-@@ -1405,7 +1430,7 @@ int kill_pid_info_as_cred(int sig, struc
+@@ -1405,7 +1430,7 @@ int kill_pid_info_as_cred(int sig, struct siginfo *info, struct pid *pid,
  
  	rcu_read_lock();
  	p = pid_task(pid, PIDTYPE_PID);
@@ -15159,7 +15519,7 @@ diff -NurpP --minimal linux-3.4.48/kernel/signal.c linux-3.4.48-vs2.3.3.9/kernel
  		ret = -ESRCH;
  		goto out_unlock;
  	}
-@@ -1457,8 +1482,10 @@ static int kill_something_info(int sig,
+@@ -1457,8 +1482,10 @@ static int kill_something_info(int sig, struct siginfo *info, pid_t pid)
  		struct task_struct * p;
  
  		for_each_process(p) {
@@ -15184,9 +15544,10 @@ diff -NurpP --minimal linux-3.4.48/kernel/signal.c linux-3.4.48-vs2.3.3.9/kernel
  		if (sig_kernel_stop(signr)) {
  			/*
  			 * The default action is to stop all threads in
-diff -NurpP --minimal linux-3.4.48/kernel/softirq.c linux-3.4.48-vs2.3.3.9/kernel/softirq.c
---- linux-3.4.48/kernel/softirq.c	2012-05-21 16:07:34.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/kernel/softirq.c	2012-05-21 16:15:05.000000000 +0000
+diff --git a/kernel/softirq.c b/kernel/softirq.c
+index 671f959..b985019 100644
+--- a/kernel/softirq.c
++++ b/kernel/softirq.c
 @@ -24,6 +24,7 @@
  #include <linux/ftrace.h>
  #include <linux/smp.h>
@@ -15195,9 +15556,10 @@ diff -NurpP --minimal linux-3.4.48/kernel/softirq.c linux-3.4.48-vs2.3.3.9/kerne
  
  #define CREATE_TRACE_POINTS
  #include <trace/events/irq.h>
-diff -NurpP --minimal linux-3.4.48/kernel/sys.c linux-3.4.48-vs2.3.3.9/kernel/sys.c
---- linux-3.4.48/kernel/sys.c	2013-06-13 08:59:39.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/kernel/sys.c	2013-06-13 09:46:39.000000000 +0000
+diff --git a/kernel/sys.c b/kernel/sys.c
+index 3449d26..1ddea08 100644
+--- a/kernel/sys.c
++++ b/kernel/sys.c
 @@ -45,6 +45,7 @@
  #include <linux/syscalls.h>
  #include <linux/kprobes.h>
@@ -15206,7 +15568,7 @@ diff -NurpP --minimal linux-3.4.48/kernel/sys.c linux-3.4.48-vs2.3.3.9/kernel/sy
  
  #include <linux/kmsg_dump.h>
  /* Move somewhere else to avoid recompiling? */
-@@ -155,7 +156,10 @@ static int set_one_prio(struct task_stru
+@@ -155,7 +156,10 @@ static int set_one_prio(struct task_struct *p, int niceval, int error)
  		goto out;
  	}
  	if (niceval < task_nice(p) && !can_nice(p, niceval)) {
@@ -15218,7 +15580,7 @@ diff -NurpP --minimal linux-3.4.48/kernel/sys.c linux-3.4.48-vs2.3.3.9/kernel/sy
  		goto out;
  	}
  	no_nice = security_task_setnice(p, niceval);
-@@ -205,6 +209,8 @@ SYSCALL_DEFINE3(setpriority, int, which,
+@@ -205,6 +209,8 @@ SYSCALL_DEFINE3(setpriority, int, which, int, who, int, niceval)
  			else
  				pgrp = task_pgrp(current);
  			do_each_pid_thread(pgrp, PIDTYPE_PGID, p) {
@@ -15227,7 +15589,7 @@ diff -NurpP --minimal linux-3.4.48/kernel/sys.c linux-3.4.48-vs2.3.3.9/kernel/sy
  				error = set_one_prio(p, niceval, error);
  			} while_each_pid_thread(pgrp, PIDTYPE_PGID, p);
  			break;
-@@ -268,6 +274,8 @@ SYSCALL_DEFINE2(getpriority, int, which,
+@@ -268,6 +274,8 @@ SYSCALL_DEFINE2(getpriority, int, which, int, who)
  			else
  				pgrp = task_pgrp(current);
  			do_each_pid_thread(pgrp, PIDTYPE_PGID, p) {
@@ -15236,7 +15598,7 @@ diff -NurpP --minimal linux-3.4.48/kernel/sys.c linux-3.4.48-vs2.3.3.9/kernel/sy
  				niceval = 20 - task_nice(p);
  				if (niceval > retval)
  					retval = niceval;
-@@ -419,6 +427,8 @@ EXPORT_SYMBOL_GPL(kernel_power_off);
+@@ -443,6 +451,8 @@ EXPORT_SYMBOL_GPL(kernel_power_off);
  
  static DEFINE_MUTEX(reboot_mutex);
  
@@ -15245,7 +15607,7 @@ diff -NurpP --minimal linux-3.4.48/kernel/sys.c linux-3.4.48-vs2.3.3.9/kernel/sy
  /*
   * Reboot system call: for obvious reasons only root may call it,
   * and even root needs to set up some magic numbers in the registers
-@@ -460,6 +470,9 @@ SYSCALL_DEFINE4(reboot, int, magic1, int
+@@ -484,6 +494,9 @@ SYSCALL_DEFINE4(reboot, int, magic1, int, magic2, unsigned int, cmd,
  	if ((cmd == LINUX_REBOOT_CMD_POWER_OFF) && !pm_power_off)
  		cmd = LINUX_REBOOT_CMD_HALT;
  
@@ -15255,7 +15617,7 @@ diff -NurpP --minimal linux-3.4.48/kernel/sys.c linux-3.4.48-vs2.3.3.9/kernel/sy
  	mutex_lock(&reboot_mutex);
  	switch (cmd) {
  	case LINUX_REBOOT_CMD_RESTART:
-@@ -1285,7 +1298,8 @@ SYSCALL_DEFINE2(sethostname, char __user
+@@ -1309,7 +1322,8 @@ SYSCALL_DEFINE2(sethostname, char __user *, name, int, len)
  	int errno;
  	char tmp[__NEW_UTS_LEN];
  
@@ -15265,7 +15627,7 @@ diff -NurpP --minimal linux-3.4.48/kernel/sys.c linux-3.4.48-vs2.3.3.9/kernel/sy
  		return -EPERM;
  
  	if (len < 0 || len > __NEW_UTS_LEN)
-@@ -1336,7 +1350,8 @@ SYSCALL_DEFINE2(setdomainname, char __us
+@@ -1360,7 +1374,8 @@ SYSCALL_DEFINE2(setdomainname, char __user *, name, int, len)
  	int errno;
  	char tmp[__NEW_UTS_LEN];
  
@@ -15275,7 +15637,7 @@ diff -NurpP --minimal linux-3.4.48/kernel/sys.c linux-3.4.48-vs2.3.3.9/kernel/sy
  		return -EPERM;
  	if (len < 0 || len > __NEW_UTS_LEN)
  		return -EINVAL;
-@@ -1455,7 +1470,7 @@ int do_prlimit(struct task_struct *tsk,
+@@ -1479,7 +1494,7 @@ int do_prlimit(struct task_struct *tsk, unsigned int resource,
  		/* Keep the capable check against init_user_ns until
  		   cgroups can contain all limits */
  		if (new_rlim->rlim_max > rlim->rlim_max &&
@@ -15284,7 +15646,7 @@ diff -NurpP --minimal linux-3.4.48/kernel/sys.c linux-3.4.48-vs2.3.3.9/kernel/sy
  			retval = -EPERM;
  		if (!retval)
  			retval = security_task_setrlimit(tsk->group_leader,
-@@ -1509,7 +1524,8 @@ static int check_prlimit_permission(stru
+@@ -1533,7 +1548,8 @@ static int check_prlimit_permission(struct task_struct *task)
  	     cred->gid == tcred->sgid &&
  	     cred->gid == tcred->gid))
  		return 0;
@@ -15294,9 +15656,10 @@ diff -NurpP --minimal linux-3.4.48/kernel/sys.c linux-3.4.48-vs2.3.3.9/kernel/sy
  		return 0;
  
  	return -EPERM;
-diff -NurpP --minimal linux-3.4.48/kernel/sysctl.c linux-3.4.48-vs2.3.3.9/kernel/sysctl.c
---- linux-3.4.48/kernel/sysctl.c	2012-05-21 16:07:34.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/kernel/sysctl.c	2012-05-21 16:15:05.000000000 +0000
+diff --git a/kernel/sysctl.c b/kernel/sysctl.c
+index 4ab1187..9a17056 100644
+--- a/kernel/sysctl.c
++++ b/kernel/sysctl.c
 @@ -81,6 +81,7 @@
  #if defined(CONFIG_PROVE_LOCKING) || defined(CONFIG_LOCK_STAT)
  #include <linux/lockdep.h>
@@ -15319,10 +15682,11 @@ diff -NurpP --minimal linux-3.4.48/kernel/sysctl.c linux-3.4.48-vs2.3.3.9/kernel
  #ifdef CONFIG_CHR_DEV_SG
  	{
  		.procname	= "sg-big-buff",
-diff -NurpP --minimal linux-3.4.48/kernel/sysctl_binary.c linux-3.4.48-vs2.3.3.9/kernel/sysctl_binary.c
---- linux-3.4.48/kernel/sysctl_binary.c	2013-06-13 08:59:39.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/kernel/sysctl_binary.c	2013-03-30 21:29:17.000000000 +0000
-@@ -73,6 +73,7 @@ static const struct bin_table bin_kern_t
+diff --git a/kernel/sysctl_binary.c b/kernel/sysctl_binary.c
+index 9f9aa32..e967bde 100644
+--- a/kernel/sysctl_binary.c
++++ b/kernel/sysctl_binary.c
+@@ -73,6 +73,7 @@ static const struct bin_table bin_kern_table[] = {
  
  	{ CTL_INT,	KERN_PANIC,			"panic" },
  	{ CTL_INT,	KERN_REALROOTDEV,		"real-root-dev" },
@@ -15330,21 +15694,11 @@ diff -NurpP --minimal linux-3.4.48/kernel/sysctl_binary.c linux-3.4.48-vs2.3.3.9
  
  	{ CTL_STR,	KERN_SPARC_REBOOT,		"reboot-cmd" },
  	{ CTL_INT,	KERN_CTLALTDEL,			"ctrl-alt-del" },
-diff -NurpP --minimal linux-3.4.48/kernel/time/timekeeping.c linux-3.4.48-vs2.3.3.9/kernel/time/timekeeping.c
---- linux-3.4.48/kernel/time/timekeeping.c	2013-06-13 08:59:39.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/kernel/time/timekeeping.c	2012-12-08 00:53:53.000000000 +0000
-@@ -254,6 +254,7 @@ void getnstimeofday(struct timespec *ts)
- 	} while (read_seqretry(&timekeeper.lock, seq));
- 
- 	timespec_add_ns(ts, nsecs);
-+	vx_adjust_timespec(ts);
- }
- 
- EXPORT_SYMBOL(getnstimeofday);
-diff -NurpP --minimal linux-3.4.48/kernel/time.c linux-3.4.48-vs2.3.3.9/kernel/time.c
---- linux-3.4.48/kernel/time.c	2012-05-21 16:07:34.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/kernel/time.c	2012-05-21 16:15:05.000000000 +0000
-@@ -92,7 +92,7 @@ SYSCALL_DEFINE1(stime, time_t __user *,
+diff --git a/kernel/time.c b/kernel/time.c
+index ba744cf..14f14d5 100644
+--- a/kernel/time.c
++++ b/kernel/time.c
+@@ -92,7 +92,7 @@ SYSCALL_DEFINE1(stime, time_t __user *, tptr)
  	if (err)
  		return err;
  
@@ -15353,7 +15707,7 @@ diff -NurpP --minimal linux-3.4.48/kernel/time.c linux-3.4.48-vs2.3.3.9/kernel/t
  	return 0;
  }
  
-@@ -172,7 +172,7 @@ int do_sys_settimeofday(const struct tim
+@@ -172,7 +172,7 @@ int do_sys_settimeofday(const struct timespec *tv, const struct timezone *tz)
  		}
  	}
  	if (tv)
@@ -15362,9 +15716,22 @@ diff -NurpP --minimal linux-3.4.48/kernel/time.c linux-3.4.48-vs2.3.3.9/kernel/t
  	return 0;
  }
  
-diff -NurpP --minimal linux-3.4.48/kernel/timer.c linux-3.4.48-vs2.3.3.9/kernel/timer.c
---- linux-3.4.48/kernel/timer.c	2013-06-13 08:59:39.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/kernel/timer.c	2012-10-22 13:09:53.000000000 +0000
+diff --git a/kernel/time/timekeeping.c b/kernel/time/timekeeping.c
+index eff0b1e..5913ef4 100644
+--- a/kernel/time/timekeeping.c
++++ b/kernel/time/timekeeping.c
+@@ -254,6 +254,7 @@ void getnstimeofday(struct timespec *ts)
+ 	} while (read_seqretry(&timekeeper.lock, seq));
+ 
+ 	timespec_add_ns(ts, nsecs);
++	vx_adjust_timespec(ts);
+ }
+ 
+ EXPORT_SYMBOL(getnstimeofday);
+diff --git a/kernel/timer.c b/kernel/timer.c
+index 7e0a770..8acf352 100644
+--- a/kernel/timer.c
++++ b/kernel/timer.c
 @@ -40,6 +40,10 @@
  #include <linux/irq_work.h>
  #include <linux/sched.h>
@@ -15376,7 +15743,7 @@ diff -NurpP --minimal linux-3.4.48/kernel/timer.c linux-3.4.48-vs2.3.3.9/kernel/
  
  #include <asm/uaccess.h>
  #include <asm/unistd.h>
-@@ -1388,12 +1392,6 @@ SYSCALL_DEFINE1(alarm, unsigned int, sec
+@@ -1390,12 +1394,6 @@ SYSCALL_DEFINE1(alarm, unsigned int, seconds)
  
  #endif
  
@@ -15389,16 +15756,16 @@ diff -NurpP --minimal linux-3.4.48/kernel/timer.c linux-3.4.48-vs2.3.3.9/kernel/
  
  /**
   * sys_getpid - return the thread group id of the current process
-@@ -1422,10 +1420,23 @@ SYSCALL_DEFINE0(getppid)
+@@ -1424,10 +1422,23 @@ SYSCALL_DEFINE0(getppid)
  	rcu_read_lock();
  	pid = task_tgid_vnr(rcu_dereference(current->real_parent));
  	rcu_read_unlock();
 +	return vx_map_pid(pid);
 +}
++
++#ifdef __alpha__
  
 -	return pid;
-+#ifdef __alpha__
-+
 +/*
 + * The Alpha uses getxpid, getxuid, and getxgid instead.
 + */
@@ -15414,9 +15781,10 @@ diff -NurpP --minimal linux-3.4.48/kernel/timer.c linux-3.4.48-vs2.3.3.9/kernel/
  SYSCALL_DEFINE0(getuid)
  {
  	/* Only we change this so SMP safe */
-diff -NurpP --minimal linux-3.4.48/kernel/user_namespace.c linux-3.4.48-vs2.3.3.9/kernel/user_namespace.c
---- linux-3.4.48/kernel/user_namespace.c	2012-01-09 15:15:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/kernel/user_namespace.c	2012-05-21 16:15:05.000000000 +0000
+diff --git a/kernel/user_namespace.c b/kernel/user_namespace.c
+index 3b906e9..48a8927 100644
+--- a/kernel/user_namespace.c
++++ b/kernel/user_namespace.c
 @@ -11,6 +11,7 @@
  #include <linux/user_namespace.h>
  #include <linux/highuid.h>
@@ -15442,9 +15810,10 @@ diff -NurpP --minimal linux-3.4.48/kernel/user_namespace.c linux-3.4.48-vs2.3.3.
  	INIT_WORK(&ns->destroyer, free_user_ns_work);
  	schedule_work(&ns->destroyer);
  }
-diff -NurpP --minimal linux-3.4.48/kernel/utsname.c linux-3.4.48-vs2.3.3.9/kernel/utsname.c
---- linux-3.4.48/kernel/utsname.c	2012-01-09 15:15:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/kernel/utsname.c	2012-05-21 16:15:05.000000000 +0000
+diff --git a/kernel/utsname.c b/kernel/utsname.c
+index 405caf9..307d077 100644
+--- a/kernel/utsname.c
++++ b/kernel/utsname.c
 @@ -16,14 +16,17 @@
  #include <linux/slab.h>
  #include <linux/user_namespace.h>
@@ -15464,7 +15833,7 @@ diff -NurpP --minimal linux-3.4.48/kernel/utsname.c linux-3.4.48-vs2.3.3.9/kerne
  	return uts_ns;
  }
  
-@@ -32,8 +35,8 @@ static struct uts_namespace *create_uts_
+@@ -32,8 +35,8 @@ static struct uts_namespace *create_uts_ns(void)
   * @old_ns: namespace to clone
   * Return NULL on error (failure to kmalloc), new ns otherwise
   */
@@ -15475,7 +15844,7 @@ diff -NurpP --minimal linux-3.4.48/kernel/utsname.c linux-3.4.48-vs2.3.3.9/kerne
  {
  	struct uts_namespace *ns;
  
-@@ -43,7 +46,7 @@ static struct uts_namespace *clone_uts_n
+@@ -43,7 +46,7 @@ static struct uts_namespace *clone_uts_ns(struct task_struct *tsk,
  
  	down_read(&uts_sem);
  	memcpy(&ns->name, &old_ns->name, sizeof(ns->name));
@@ -15484,7 +15853,7 @@ diff -NurpP --minimal linux-3.4.48/kernel/utsname.c linux-3.4.48-vs2.3.3.9/kerne
  	up_read(&uts_sem);
  	return ns;
  }
-@@ -55,9 +58,9 @@ static struct uts_namespace *clone_uts_n
+@@ -55,9 +58,9 @@ static struct uts_namespace *clone_uts_ns(struct task_struct *tsk,
   * versa.
   */
  struct uts_namespace *copy_utsname(unsigned long flags,
@@ -15496,7 +15865,7 @@ diff -NurpP --minimal linux-3.4.48/kernel/utsname.c linux-3.4.48-vs2.3.3.9/kerne
  	struct uts_namespace *new_ns;
  
  	BUG_ON(!old_ns);
-@@ -66,7 +69,7 @@ struct uts_namespace *copy_utsname(unsig
+@@ -66,7 +69,7 @@ struct uts_namespace *copy_utsname(unsigned long flags,
  	if (!(flags & CLONE_NEWUTS))
  		return old_ns;
  
@@ -15513,9 +15882,11 @@ diff -NurpP --minimal linux-3.4.48/kernel/utsname.c linux-3.4.48-vs2.3.3.9/kerne
  	kfree(ns);
  }
  
-diff -NurpP --minimal linux-3.4.48/kernel/vserver/Kconfig linux-3.4.48-vs2.3.3.9/kernel/vserver/Kconfig
---- linux-3.4.48/kernel/vserver/Kconfig	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/kernel/vserver/Kconfig	2012-05-21 16:15:05.000000000 +0000
+diff --git a/kernel/vserver/Kconfig b/kernel/vserver/Kconfig
+new file mode 100644
+index 0000000..0903150
+--- /dev/null
++++ b/kernel/vserver/Kconfig
 @@ -0,0 +1,224 @@
 +#
 +# Linux VServer configuration
@@ -15741,9 +16112,11 @@ diff -NurpP --minimal linux-3.4.48/kernel/vserver/Kconfig linux-3.4.48-vs2.3.3.9
 +	bool
 +	default n
 +
-diff -NurpP --minimal linux-3.4.48/kernel/vserver/Makefile linux-3.4.48-vs2.3.3.9/kernel/vserver/Makefile
---- linux-3.4.48/kernel/vserver/Makefile	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/kernel/vserver/Makefile	2012-05-21 16:15:05.000000000 +0000
+diff --git a/kernel/vserver/Makefile b/kernel/vserver/Makefile
+new file mode 100644
+index 0000000..ba95c6c
+--- /dev/null
++++ b/kernel/vserver/Makefile
 @@ -0,0 +1,18 @@
 +#
 +# Makefile for the Linux vserver routines.
@@ -15763,9 +16136,11 @@ diff -NurpP --minimal linux-3.4.48/kernel/vserver/Makefile linux-3.4.48-vs2.3.3.
 +vserver-$(CONFIG_VSERVER_MONITOR) += monitor.o
 +vserver-$(CONFIG_VSERVER_DEVICE) += device.o
 +
-diff -NurpP --minimal linux-3.4.48/kernel/vserver/cacct.c linux-3.4.48-vs2.3.3.9/kernel/vserver/cacct.c
---- linux-3.4.48/kernel/vserver/cacct.c	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/kernel/vserver/cacct.c	2012-05-21 16:15:05.000000000 +0000
+diff --git a/kernel/vserver/cacct.c b/kernel/vserver/cacct.c
+new file mode 100644
+index 0000000..80dea24
+--- /dev/null
++++ b/kernel/vserver/cacct.c
 @@ -0,0 +1,42 @@
 +/*
 + *  linux/kernel/vserver/cacct.c
@@ -15809,9 +16184,11 @@ diff -NurpP --minimal linux-3.4.48/kernel/vserver/cacct.c linux-3.4.48-vs2.3.3.9
 +	return 0;
 +}
 +
-diff -NurpP --minimal linux-3.4.48/kernel/vserver/cacct_init.h linux-3.4.48-vs2.3.3.9/kernel/vserver/cacct_init.h
---- linux-3.4.48/kernel/vserver/cacct_init.h	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/kernel/vserver/cacct_init.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/kernel/vserver/cacct_init.h b/kernel/vserver/cacct_init.h
+new file mode 100644
+index 0000000..94d82e9
+--- /dev/null
++++ b/kernel/vserver/cacct_init.h
 @@ -0,0 +1,25 @@
 +
 +
@@ -15838,9 +16215,11 @@ diff -NurpP --minimal linux-3.4.48/kernel/vserver/cacct_init.h linux-3.4.48-vs2.
 +	return;
 +}
 +
-diff -NurpP --minimal linux-3.4.48/kernel/vserver/cacct_proc.h linux-3.4.48-vs2.3.3.9/kernel/vserver/cacct_proc.h
---- linux-3.4.48/kernel/vserver/cacct_proc.h	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/kernel/vserver/cacct_proc.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/kernel/vserver/cacct_proc.h b/kernel/vserver/cacct_proc.h
+new file mode 100644
+index 0000000..0de9a38
+--- /dev/null
++++ b/kernel/vserver/cacct_proc.h
 @@ -0,0 +1,53 @@
 +#ifndef _VX_CACCT_PROC_H
 +#define _VX_CACCT_PROC_H
@@ -15895,9 +16274,11 @@ diff -NurpP --minimal linux-3.4.48/kernel/vserver/cacct_proc.h linux-3.4.48-vs2.
 +}
 +
 +#endif	/* _VX_CACCT_PROC_H */
-diff -NurpP --minimal linux-3.4.48/kernel/vserver/context.c linux-3.4.48-vs2.3.3.9/kernel/vserver/context.c
---- linux-3.4.48/kernel/vserver/context.c	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/kernel/vserver/context.c	2012-06-28 14:45:48.000000000 +0000
+diff --git a/kernel/vserver/context.c b/kernel/vserver/context.c
+new file mode 100644
+index 0000000..1061eac
+--- /dev/null
++++ b/kernel/vserver/context.c
 @@ -0,0 +1,1119 @@
 +/*
 + *  linux/kernel/vserver/context.c
@@ -17018,9 +17399,11 @@ diff -NurpP --minimal linux-3.4.48/kernel/vserver/context.c linux-3.4.48-vs2.3.3
 +
 +EXPORT_SYMBOL_GPL(free_vx_info);
 +
-diff -NurpP --minimal linux-3.4.48/kernel/vserver/cvirt.c linux-3.4.48-vs2.3.3.9/kernel/vserver/cvirt.c
---- linux-3.4.48/kernel/vserver/cvirt.c	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/kernel/vserver/cvirt.c	2012-05-21 16:15:05.000000000 +0000
+diff --git a/kernel/vserver/cvirt.c b/kernel/vserver/cvirt.c
+new file mode 100644
+index 0000000..ca0d207
+--- /dev/null
++++ b/kernel/vserver/cvirt.c
 @@ -0,0 +1,313 @@
 +/*
 + *  linux/kernel/vserver/cvirt.c
@@ -17335,9 +17718,11 @@ diff -NurpP --minimal linux-3.4.48/kernel/vserver/cvirt.c linux-3.4.48-vs2.3.3.9
 +
 +#endif
 +
-diff -NurpP --minimal linux-3.4.48/kernel/vserver/cvirt_init.h linux-3.4.48-vs2.3.3.9/kernel/vserver/cvirt_init.h
---- linux-3.4.48/kernel/vserver/cvirt_init.h	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/kernel/vserver/cvirt_init.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/kernel/vserver/cvirt_init.h b/kernel/vserver/cvirt_init.h
+new file mode 100644
+index 0000000..0efd0de
+--- /dev/null
++++ b/kernel/vserver/cvirt_init.h
 @@ -0,0 +1,70 @@
 +
 +
@@ -17409,9 +17794,11 @@ diff -NurpP --minimal linux-3.4.48/kernel/vserver/cvirt_init.h linux-3.4.48-vs2.
 +	return;
 +}
 +
-diff -NurpP --minimal linux-3.4.48/kernel/vserver/cvirt_proc.h linux-3.4.48-vs2.3.3.9/kernel/vserver/cvirt_proc.h
---- linux-3.4.48/kernel/vserver/cvirt_proc.h	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/kernel/vserver/cvirt_proc.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/kernel/vserver/cvirt_proc.h b/kernel/vserver/cvirt_proc.h
+new file mode 100644
+index 0000000..8b95ff4
+--- /dev/null
++++ b/kernel/vserver/cvirt_proc.h
 @@ -0,0 +1,123 @@
 +#ifndef _VX_CVIRT_PROC_H
 +#define _VX_CVIRT_PROC_H
@@ -17536,9 +17923,11 @@ diff -NurpP --minimal linux-3.4.48/kernel/vserver/cvirt_proc.h linux-3.4.48-vs2.
 +}
 +
 +#endif	/* _VX_CVIRT_PROC_H */
-diff -NurpP --minimal linux-3.4.48/kernel/vserver/debug.c linux-3.4.48-vs2.3.3.9/kernel/vserver/debug.c
---- linux-3.4.48/kernel/vserver/debug.c	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/kernel/vserver/debug.c	2012-05-21 16:15:05.000000000 +0000
+diff --git a/kernel/vserver/debug.c b/kernel/vserver/debug.c
+new file mode 100644
+index 0000000..22cf710
+--- /dev/null
++++ b/kernel/vserver/debug.c
 @@ -0,0 +1,32 @@
 +/*
 + *  kernel/vserver/debug.c
@@ -17572,9 +17961,11 @@ diff -NurpP --minimal linux-3.4.48/kernel/vserver/debug.c linux-3.4.48-vs2.3.3.9
 +
 +EXPORT_SYMBOL_GPL(dump_vx_info);
 +
-diff -NurpP --minimal linux-3.4.48/kernel/vserver/device.c linux-3.4.48-vs2.3.3.9/kernel/vserver/device.c
---- linux-3.4.48/kernel/vserver/device.c	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/kernel/vserver/device.c	2012-05-21 16:15:05.000000000 +0000
+diff --git a/kernel/vserver/device.c b/kernel/vserver/device.c
+new file mode 100644
+index 0000000..59277f6
+--- /dev/null
++++ b/kernel/vserver/device.c
 @@ -0,0 +1,443 @@
 +/*
 + *  linux/kernel/vserver/device.c
@@ -18019,9 +18410,11 @@ diff -NurpP --minimal linux-3.4.48/kernel/vserver/device.c linux-3.4.48-vs2.3.3.
 +#endif	/* CONFIG_COMPAT */
 +
 +
-diff -NurpP --minimal linux-3.4.48/kernel/vserver/dlimit.c linux-3.4.48-vs2.3.3.9/kernel/vserver/dlimit.c
---- linux-3.4.48/kernel/vserver/dlimit.c	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/kernel/vserver/dlimit.c	2012-05-21 16:15:05.000000000 +0000
+diff --git a/kernel/vserver/dlimit.c b/kernel/vserver/dlimit.c
+new file mode 100644
+index 0000000..a674f2c
+--- /dev/null
++++ b/kernel/vserver/dlimit.c
 @@ -0,0 +1,531 @@
 +/*
 + *  linux/kernel/vserver/dlimit.c
@@ -18554,9 +18947,11 @@ diff -NurpP --minimal linux-3.4.48/kernel/vserver/dlimit.c linux-3.4.48-vs2.3.3.
 +EXPORT_SYMBOL_GPL(locate_dl_info);
 +EXPORT_SYMBOL_GPL(rcu_free_dl_info);
 +
-diff -NurpP --minimal linux-3.4.48/kernel/vserver/helper.c linux-3.4.48-vs2.3.3.9/kernel/vserver/helper.c
---- linux-3.4.48/kernel/vserver/helper.c	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/kernel/vserver/helper.c	2012-09-16 18:49:44.000000000 +0000
+diff --git a/kernel/vserver/helper.c b/kernel/vserver/helper.c
+new file mode 100644
+index 0000000..f012fbf
+--- /dev/null
++++ b/kernel/vserver/helper.c
 @@ -0,0 +1,229 @@
 +/*
 + *  linux/kernel/vserver/helper.c
@@ -18787,9 +19182,11 @@ diff -NurpP --minimal linux-3.4.48/kernel/vserver/helper.c linux-3.4.48-vs2.3.3.
 +	return do_vshelper(vshelper_path, argv, envp, 1);
 +}
 +
-diff -NurpP --minimal linux-3.4.48/kernel/vserver/history.c linux-3.4.48-vs2.3.3.9/kernel/vserver/history.c
---- linux-3.4.48/kernel/vserver/history.c	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/kernel/vserver/history.c	2012-05-21 16:15:05.000000000 +0000
+diff --git a/kernel/vserver/history.c b/kernel/vserver/history.c
+new file mode 100644
+index 0000000..e3e0712
+--- /dev/null
++++ b/kernel/vserver/history.c
 @@ -0,0 +1,258 @@
 +/*
 + *  kernel/vserver/history.c
@@ -19049,9 +19446,11 @@ diff -NurpP --minimal linux-3.4.48/kernel/vserver/history.c linux-3.4.48-vs2.3.3
 +
 +#endif	/* CONFIG_COMPAT */
 +
-diff -NurpP --minimal linux-3.4.48/kernel/vserver/inet.c linux-3.4.48-vs2.3.3.9/kernel/vserver/inet.c
---- linux-3.4.48/kernel/vserver/inet.c	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/kernel/vserver/inet.c	2012-05-21 16:15:05.000000000 +0000
+diff --git a/kernel/vserver/inet.c b/kernel/vserver/inet.c
+new file mode 100644
+index 0000000..6c56f69
+--- /dev/null
++++ b/kernel/vserver/inet.c
 @@ -0,0 +1,226 @@
 +
 +#include <linux/in.h>
@@ -19279,9 +19678,11 @@ diff -NurpP --minimal linux-3.4.48/kernel/vserver/inet.c linux-3.4.48-vs2.3.3.9/
 +
 +EXPORT_SYMBOL_GPL(ip_v4_find_src);
 +
-diff -NurpP --minimal linux-3.4.48/kernel/vserver/init.c linux-3.4.48-vs2.3.3.9/kernel/vserver/init.c
---- linux-3.4.48/kernel/vserver/init.c	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/kernel/vserver/init.c	2012-05-21 16:15:05.000000000 +0000
+diff --git a/kernel/vserver/init.c b/kernel/vserver/init.c
+new file mode 100644
+index 0000000..17f62f8
+--- /dev/null
++++ b/kernel/vserver/init.c
 @@ -0,0 +1,45 @@
 +/*
 + *  linux/kernel/init.c
@@ -19328,9 +19729,11 @@ diff -NurpP --minimal linux-3.4.48/kernel/vserver/init.c linux-3.4.48-vs2.3.3.9/
 +module_init(init_vserver);
 +module_exit(exit_vserver);
 +
-diff -NurpP --minimal linux-3.4.48/kernel/vserver/inode.c linux-3.4.48-vs2.3.3.9/kernel/vserver/inode.c
---- linux-3.4.48/kernel/vserver/inode.c	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/kernel/vserver/inode.c	2012-05-21 16:15:05.000000000 +0000
+diff --git a/kernel/vserver/inode.c b/kernel/vserver/inode.c
+new file mode 100644
+index 0000000..69b17f7
+--- /dev/null
++++ b/kernel/vserver/inode.c
 @@ -0,0 +1,437 @@
 +/*
 + *  linux/kernel/vserver/inode.c
@@ -19769,9 +20172,11 @@ diff -NurpP --minimal linux-3.4.48/kernel/vserver/inode.c linux-3.4.48-vs2.3.3.9
 +
 +#endif	/* CONFIG_PROPAGATE */
 +
-diff -NurpP --minimal linux-3.4.48/kernel/vserver/limit.c linux-3.4.48-vs2.3.3.9/kernel/vserver/limit.c
---- linux-3.4.48/kernel/vserver/limit.c	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/kernel/vserver/limit.c	2012-09-01 09:15:21.000000000 +0000
+diff --git a/kernel/vserver/limit.c b/kernel/vserver/limit.c
+new file mode 100644
+index 0000000..8bda9de
+--- /dev/null
++++ b/kernel/vserver/limit.c
 @@ -0,0 +1,345 @@
 +/*
 + *  linux/kernel/vserver/limit.c
@@ -20118,9 +20523,11 @@ diff -NurpP --minimal linux-3.4.48/kernel/vserver/limit.c linux-3.4.48-vs2.3.3.9
 +	return cache;
 +}
 +
-diff -NurpP --minimal linux-3.4.48/kernel/vserver/limit_init.h linux-3.4.48-vs2.3.3.9/kernel/vserver/limit_init.h
---- linux-3.4.48/kernel/vserver/limit_init.h	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/kernel/vserver/limit_init.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/kernel/vserver/limit_init.h b/kernel/vserver/limit_init.h
+new file mode 100644
+index 0000000..dfce7a2
+--- /dev/null
++++ b/kernel/vserver/limit_init.h
 @@ -0,0 +1,31 @@
 +
 +
@@ -20153,9 +20560,11 @@ diff -NurpP --minimal linux-3.4.48/kernel/vserver/limit_init.h linux-3.4.48-vs2.
 +	}
 +}
 +
-diff -NurpP --minimal linux-3.4.48/kernel/vserver/limit_proc.h linux-3.4.48-vs2.3.3.9/kernel/vserver/limit_proc.h
---- linux-3.4.48/kernel/vserver/limit_proc.h	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/kernel/vserver/limit_proc.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/kernel/vserver/limit_proc.h b/kernel/vserver/limit_proc.h
+new file mode 100644
+index 0000000..ff5d910
+--- /dev/null
++++ b/kernel/vserver/limit_proc.h
 @@ -0,0 +1,57 @@
 +#ifndef _VX_LIMIT_PROC_H
 +#define _VX_LIMIT_PROC_H
@@ -20214,9 +20623,11 @@ diff -NurpP --minimal linux-3.4.48/kernel/vserver/limit_proc.h linux-3.4.48-vs2.
 +#endif	/* _VX_LIMIT_PROC_H */
 +
 +
-diff -NurpP --minimal linux-3.4.48/kernel/vserver/network.c linux-3.4.48-vs2.3.3.9/kernel/vserver/network.c
---- linux-3.4.48/kernel/vserver/network.c	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/kernel/vserver/network.c	2012-05-21 16:15:05.000000000 +0000
+diff --git a/kernel/vserver/network.c b/kernel/vserver/network.c
+new file mode 100644
+index 0000000..9ec1bba
+--- /dev/null
++++ b/kernel/vserver/network.c
 @@ -0,0 +1,912 @@
 +/*
 + *  linux/kernel/vserver/network.c
@@ -21130,9 +21541,11 @@ diff -NurpP --minimal linux-3.4.48/kernel/vserver/network.c linux-3.4.48-vs2.3.3
 +EXPORT_SYMBOL_GPL(free_nx_info);
 +EXPORT_SYMBOL_GPL(unhash_nx_info);
 +
-diff -NurpP --minimal linux-3.4.48/kernel/vserver/proc.c linux-3.4.48-vs2.3.3.9/kernel/vserver/proc.c
---- linux-3.4.48/kernel/vserver/proc.c	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/kernel/vserver/proc.c	2012-05-21 16:15:05.000000000 +0000
+diff --git a/kernel/vserver/proc.c b/kernel/vserver/proc.c
+new file mode 100644
+index 0000000..b41558d
+--- /dev/null
++++ b/kernel/vserver/proc.c
 @@ -0,0 +1,1103 @@
 +/*
 + *  linux/kernel/vserver/proc.c
@@ -22237,9 +22650,11 @@ diff -NurpP --minimal linux-3.4.48/kernel/vserver/proc.c linux-3.4.48-vs2.3.3.9/
 +	return buffer - orig;
 +}
 +
-diff -NurpP --minimal linux-3.4.48/kernel/vserver/sched.c linux-3.4.48-vs2.3.3.9/kernel/vserver/sched.c
---- linux-3.4.48/kernel/vserver/sched.c	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/kernel/vserver/sched.c	2012-05-21 16:25:11.000000000 +0000
+diff --git a/kernel/vserver/sched.c b/kernel/vserver/sched.c
+new file mode 100644
+index 0000000..0c80b79
+--- /dev/null
++++ b/kernel/vserver/sched.c
 @@ -0,0 +1,83 @@
 +/*
 + *  linux/kernel/vserver/sched.c
@@ -22324,9 +22739,11 @@ diff -NurpP --minimal linux-3.4.48/kernel/vserver/sched.c linux-3.4.48-vs2.3.3.9
 +	return 0;
 +}
 +
-diff -NurpP --minimal linux-3.4.48/kernel/vserver/sched_init.h linux-3.4.48-vs2.3.3.9/kernel/vserver/sched_init.h
---- linux-3.4.48/kernel/vserver/sched_init.h	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/kernel/vserver/sched_init.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/kernel/vserver/sched_init.h b/kernel/vserver/sched_init.h
+new file mode 100644
+index 0000000..725ab06
+--- /dev/null
++++ b/kernel/vserver/sched_init.h
 @@ -0,0 +1,27 @@
 +
 +static inline void vx_info_init_sched(struct _vx_sched *sched)
@@ -22355,9 +22772,11 @@ diff -NurpP --minimal linux-3.4.48/kernel/vserver/sched_init.h linux-3.4.48-vs2.
 +{
 +	return;
 +}
-diff -NurpP --minimal linux-3.4.48/kernel/vserver/sched_proc.h linux-3.4.48-vs2.3.3.9/kernel/vserver/sched_proc.h
---- linux-3.4.48/kernel/vserver/sched_proc.h	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/kernel/vserver/sched_proc.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/kernel/vserver/sched_proc.h b/kernel/vserver/sched_proc.h
+new file mode 100644
+index 0000000..35b8fd4
+--- /dev/null
++++ b/kernel/vserver/sched_proc.h
 @@ -0,0 +1,32 @@
 +#ifndef _VX_SCHED_PROC_H
 +#define _VX_SCHED_PROC_H
@@ -22391,9 +22810,11 @@ diff -NurpP --minimal linux-3.4.48/kernel/vserver/sched_proc.h linux-3.4.48-vs2.
 +}
 +
 +#endif	/* _VX_SCHED_PROC_H */
-diff -NurpP --minimal linux-3.4.48/kernel/vserver/signal.c linux-3.4.48-vs2.3.3.9/kernel/vserver/signal.c
---- linux-3.4.48/kernel/vserver/signal.c	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/kernel/vserver/signal.c	2012-05-21 16:15:05.000000000 +0000
+diff --git a/kernel/vserver/signal.c b/kernel/vserver/signal.c
+new file mode 100644
+index 0000000..2c72a86
+--- /dev/null
++++ b/kernel/vserver/signal.c
 @@ -0,0 +1,134 @@
 +/*
 + *  linux/kernel/vserver/signal.c
@@ -22529,9 +22950,11 @@ diff -NurpP --minimal linux-3.4.48/kernel/vserver/signal.c linux-3.4.48-vs2.3.3.
 +	return ret;
 +}
 +
-diff -NurpP --minimal linux-3.4.48/kernel/vserver/space.c linux-3.4.48-vs2.3.3.9/kernel/vserver/space.c
---- linux-3.4.48/kernel/vserver/space.c	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/kernel/vserver/space.c	2013-02-12 00:16:04.000000000 +0000
+diff --git a/kernel/vserver/space.c b/kernel/vserver/space.c
+new file mode 100644
+index 0000000..cf6dd38
+--- /dev/null
++++ b/kernel/vserver/space.c
 @@ -0,0 +1,436 @@
 +/*
 + *  linux/kernel/vserver/space.c
@@ -22969,9 +23392,11 @@ diff -NurpP --minimal linux-3.4.48/kernel/vserver/space.c linux-3.4.48-vs2.3.3.9
 +	return 0;
 +}
 +
-diff -NurpP --minimal linux-3.4.48/kernel/vserver/switch.c linux-3.4.48-vs2.3.3.9/kernel/vserver/switch.c
---- linux-3.4.48/kernel/vserver/switch.c	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/kernel/vserver/switch.c	2012-05-21 16:15:05.000000000 +0000
+diff --git a/kernel/vserver/switch.c b/kernel/vserver/switch.c
+new file mode 100644
+index 0000000..b9e1210
+--- /dev/null
++++ b/kernel/vserver/switch.c
 @@ -0,0 +1,556 @@
 +/*
 + *  linux/kernel/vserver/switch.c
@@ -23529,9 +23954,11 @@ diff -NurpP --minimal linux-3.4.48/kernel/vserver/switch.c linux-3.4.48-vs2.3.3.
 +}
 +
 +#endif	/* CONFIG_COMPAT */
-diff -NurpP --minimal linux-3.4.48/kernel/vserver/sysctl.c linux-3.4.48-vs2.3.3.9/kernel/vserver/sysctl.c
---- linux-3.4.48/kernel/vserver/sysctl.c	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/kernel/vserver/sysctl.c	2012-05-21 16:15:05.000000000 +0000
+diff --git a/kernel/vserver/sysctl.c b/kernel/vserver/sysctl.c
+new file mode 100644
+index 0000000..a55cda1
+--- /dev/null
++++ b/kernel/vserver/sysctl.c
 @@ -0,0 +1,247 @@
 +/*
 + *  kernel/vserver/sysctl.c
@@ -23780,9 +24207,11 @@ diff -NurpP --minimal linux-3.4.48/kernel/vserver/sysctl.c linux-3.4.48-vs2.3.3.
 +EXPORT_SYMBOL_GPL(vs_debug_perm);
 +EXPORT_SYMBOL_GPL(vs_debug_misc);
 +
-diff -NurpP --minimal linux-3.4.48/kernel/vserver/tag.c linux-3.4.48-vs2.3.3.9/kernel/vserver/tag.c
---- linux-3.4.48/kernel/vserver/tag.c	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/kernel/vserver/tag.c	2012-05-21 16:15:05.000000000 +0000
+diff --git a/kernel/vserver/tag.c b/kernel/vserver/tag.c
+new file mode 100644
+index 0000000..586900c
+--- /dev/null
++++ b/kernel/vserver/tag.c
 @@ -0,0 +1,63 @@
 +/*
 + *  linux/kernel/vserver/tag.c
@@ -23847,9 +24276,11 @@ diff -NurpP --minimal linux-3.4.48/kernel/vserver/tag.c linux-3.4.48-vs2.3.3.9/k
 +}
 +
 +
-diff -NurpP --minimal linux-3.4.48/kernel/vserver/vci_config.h linux-3.4.48-vs2.3.3.9/kernel/vserver/vci_config.h
---- linux-3.4.48/kernel/vserver/vci_config.h	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/kernel/vserver/vci_config.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/kernel/vserver/vci_config.h b/kernel/vserver/vci_config.h
+new file mode 100644
+index 0000000..31d786d
+--- /dev/null
++++ b/kernel/vserver/vci_config.h
 @@ -0,0 +1,76 @@
 +
 +/*  interface version */
@@ -23927,10 +24358,11 @@ diff -NurpP --minimal linux-3.4.48/kernel/vserver/vci_config.h linux-3.4.48-vs2.
 +	0;
 +}
 +
-diff -NurpP --minimal linux-3.4.48/mm/memcontrol.c linux-3.4.48-vs2.3.3.9/mm/memcontrol.c
---- linux-3.4.48/mm/memcontrol.c	2013-06-13 08:59:39.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/mm/memcontrol.c	2012-12-08 00:53:53.000000000 +0000
-@@ -846,6 +846,31 @@ struct mem_cgroup *mem_cgroup_from_task(
+diff --git a/mm/memcontrol.c b/mm/memcontrol.c
+index 81c275b..aba10b1 100644
+--- a/mm/memcontrol.c
++++ b/mm/memcontrol.c
+@@ -846,6 +846,31 @@ struct mem_cgroup *mem_cgroup_from_task(struct task_struct *p)
  				struct mem_cgroup, css);
  }
  
@@ -23962,9 +24394,10 @@ diff -NurpP --minimal linux-3.4.48/mm/memcontrol.c linux-3.4.48-vs2.3.3.9/mm/mem
  struct mem_cgroup *try_get_mem_cgroup_from_mm(struct mm_struct *mm)
  {
  	struct mem_cgroup *memcg = NULL;
-diff -NurpP --minimal linux-3.4.48/mm/oom_kill.c linux-3.4.48-vs2.3.3.9/mm/oom_kill.c
---- linux-3.4.48/mm/oom_kill.c	2012-05-21 16:07:35.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/mm/oom_kill.c	2012-05-21 16:15:05.000000000 +0000
+diff --git a/mm/oom_kill.c b/mm/oom_kill.c
+index 46bf2ed5..d8cdda8 100644
+--- a/mm/oom_kill.c
++++ b/mm/oom_kill.c
 @@ -35,6 +35,8 @@
  #include <linux/freezer.h>
  #include <linux/ftrace.h>
@@ -23974,7 +24407,7 @@ diff -NurpP --minimal linux-3.4.48/mm/oom_kill.c linux-3.4.48-vs2.3.3.9/mm/oom_k
  
  #define CREATE_TRACE_POINTS
  #include <trace/events/oom.h>
-@@ -155,11 +157,18 @@ struct task_struct *find_lock_task_mm(st
+@@ -155,11 +157,18 @@ struct task_struct *find_lock_task_mm(struct task_struct *p)
  static bool oom_unkillable_task(struct task_struct *p,
  		const struct mem_cgroup *memcg, const nodemask_t *nodemask)
  {
@@ -23994,7 +24427,7 @@ diff -NurpP --minimal linux-3.4.48/mm/oom_kill.c linux-3.4.48-vs2.3.3.9/mm/oom_k
  	/* When mem_cgroup_out_of_memory() and p is not member of the group */
  	if (memcg && !task_in_mem_cgroup(p, memcg))
  		return true;
-@@ -462,8 +471,8 @@ static void oom_kill_process(struct task
+@@ -462,8 +471,8 @@ static void oom_kill_process(struct task_struct *p, gfp_t gfp_mask, int order,
  		dump_header(p, gfp_mask, order, memcg, nodemask);
  
  	task_lock(p);
@@ -24005,7 +24438,7 @@ diff -NurpP --minimal linux-3.4.48/mm/oom_kill.c linux-3.4.48-vs2.3.3.9/mm/oom_k
  	task_unlock(p);
  
  	/*
-@@ -496,8 +505,8 @@ static void oom_kill_process(struct task
+@@ -496,8 +505,8 @@ static void oom_kill_process(struct task_struct *p, gfp_t gfp_mask, int order,
  
  	/* mm cannot safely be dereferenced after task_unlock(victim) */
  	mm = victim->mm;
@@ -24016,7 +24449,7 @@ diff -NurpP --minimal linux-3.4.48/mm/oom_kill.c linux-3.4.48-vs2.3.3.9/mm/oom_k
  		K(get_mm_counter(victim->mm, MM_ANONPAGES)),
  		K(get_mm_counter(victim->mm, MM_FILEPAGES)));
  	task_unlock(victim);
-@@ -596,6 +605,8 @@ int unregister_oom_notifier(struct notif
+@@ -596,6 +605,8 @@ int unregister_oom_notifier(struct notifier_block *nb)
  }
  EXPORT_SYMBOL_GPL(unregister_oom_notifier);
  
@@ -24025,7 +24458,7 @@ diff -NurpP --minimal linux-3.4.48/mm/oom_kill.c linux-3.4.48-vs2.3.3.9/mm/oom_k
  /*
   * Try to acquire the OOM killer lock for the zones in zonelist.  Returns zero
   * if a parallel OOM killing is already taking place that includes a zone in
-@@ -747,7 +758,12 @@ void out_of_memory(struct zonelist *zone
+@@ -747,7 +758,12 @@ void out_of_memory(struct zonelist *zonelist, gfp_t gfp_mask,
  	if (!p) {
  		dump_header(NULL, gfp_mask, order, NULL, mpol_mask);
  		read_unlock(&tasklist_lock);
@@ -24039,9 +24472,10 @@ diff -NurpP --minimal linux-3.4.48/mm/oom_kill.c linux-3.4.48-vs2.3.3.9/mm/oom_k
  	}
  	if (PTR_ERR(p) != -1UL) {
  		oom_kill_process(p, gfp_mask, order, points, totalpages, NULL,
-diff -NurpP --minimal linux-3.4.48/mm/page_alloc.c linux-3.4.48-vs2.3.3.9/mm/page_alloc.c
---- linux-3.4.48/mm/page_alloc.c	2013-06-13 08:59:39.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/mm/page_alloc.c	2013-03-02 15:26:44.000000000 +0000
+diff --git a/mm/page_alloc.c b/mm/page_alloc.c
+index 8090542..0bded51 100644
+--- a/mm/page_alloc.c
++++ b/mm/page_alloc.c
 @@ -58,6 +58,8 @@
  #include <linux/memcontrol.h>
  #include <linux/prefetch.h>
@@ -24061,7 +24495,7 @@ diff -NurpP --minimal linux-3.4.48/mm/page_alloc.c linux-3.4.48-vs2.3.3.9/mm/pag
  }
  
  EXPORT_SYMBOL(si_meminfo);
-@@ -2675,6 +2680,9 @@ void si_meminfo_node(struct sysinfo *val
+@@ -2675,6 +2680,9 @@ void si_meminfo_node(struct sysinfo *val, int nid)
  	val->freehigh = 0;
  #endif
  	val->mem_unit = PAGE_SIZE;
@@ -24071,9 +24505,10 @@ diff -NurpP --minimal linux-3.4.48/mm/page_alloc.c linux-3.4.48-vs2.3.3.9/mm/pag
  }
  #endif
  
-diff -NurpP --minimal linux-3.4.48/mm/pgtable-generic.c linux-3.4.48-vs2.3.3.9/mm/pgtable-generic.c
---- linux-3.4.48/mm/pgtable-generic.c	2012-05-21 16:07:35.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/mm/pgtable-generic.c	2012-05-21 16:15:05.000000000 +0000
+diff --git a/mm/pgtable-generic.c b/mm/pgtable-generic.c
+index 5a74fea..e8b8d74 100644
+--- a/mm/pgtable-generic.c
++++ b/mm/pgtable-generic.c
 @@ -6,6 +6,8 @@
   *  Copyright (C) 2010  Linus Torvalds
   */
@@ -24083,10 +24518,11 @@ diff -NurpP --minimal linux-3.4.48/mm/pgtable-generic.c linux-3.4.48-vs2.3.3.9/m
  #include <linux/pagemap.h>
  #include <asm/tlb.h>
  #include <asm-generic/pgtable.h>
-diff -NurpP --minimal linux-3.4.48/mm/shmem.c linux-3.4.48-vs2.3.3.9/mm/shmem.c
---- linux-3.4.48/mm/shmem.c	2013-06-13 08:59:39.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/mm/shmem.c	2013-03-02 15:26:44.000000000 +0000
-@@ -1473,7 +1473,7 @@ static int shmem_statfs(struct dentry *d
+diff --git a/mm/shmem.c b/mm/shmem.c
+index 58c4a47..55757c7 100644
+--- a/mm/shmem.c
++++ b/mm/shmem.c
+@@ -1473,7 +1473,7 @@ static int shmem_statfs(struct dentry *dentry, struct kstatfs *buf)
  {
  	struct shmem_sb_info *sbinfo = SHMEM_SB(dentry->d_sb);
  
@@ -24095,7 +24531,7 @@ diff -NurpP --minimal linux-3.4.48/mm/shmem.c linux-3.4.48-vs2.3.3.9/mm/shmem.c
  	buf->f_bsize = PAGE_CACHE_SIZE;
  	buf->f_namelen = NAME_MAX;
  	if (sbinfo->max_blocks) {
-@@ -2287,7 +2287,7 @@ int shmem_fill_super(struct super_block
+@@ -2287,7 +2287,7 @@ int shmem_fill_super(struct super_block *sb, void *data, int silent)
  	sb->s_maxbytes = MAX_LFS_FILESIZE;
  	sb->s_blocksize = PAGE_CACHE_SIZE;
  	sb->s_blocksize_bits = PAGE_CACHE_SHIFT;
@@ -24104,10 +24540,11 @@ diff -NurpP --minimal linux-3.4.48/mm/shmem.c linux-3.4.48-vs2.3.3.9/mm/shmem.c
  	sb->s_op = &shmem_ops;
  	sb->s_time_gran = 1;
  #ifdef CONFIG_TMPFS_XATTR
-diff -NurpP --minimal linux-3.4.48/mm/slab.c linux-3.4.48-vs2.3.3.9/mm/slab.c
---- linux-3.4.48/mm/slab.c	2013-06-13 08:59:39.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/mm/slab.c	2012-10-22 13:09:53.000000000 +0000
-@@ -413,6 +413,8 @@ static void kmem_list3_init(struct kmem_
+diff --git a/mm/slab.c b/mm/slab.c
+index da2bb68..2e1c4bb 100644
+--- a/mm/slab.c
++++ b/mm/slab.c
+@@ -413,6 +413,8 @@ static void kmem_list3_init(struct kmem_list3 *parent)
  #define STATS_INC_FREEMISS(x)	do { } while (0)
  #endif
  
@@ -24124,7 +24561,7 @@ diff -NurpP --minimal linux-3.4.48/mm/slab.c linux-3.4.48-vs2.3.3.9/mm/slab.c
  	l3->free_objects--;
  	/* move slabp to correct slabp list: */
  	list_del(&slabp->list);
-@@ -3543,6 +3546,7 @@ __cache_alloc_node(struct kmem_cache *ca
+@@ -3543,6 +3546,7 @@ __cache_alloc_node(struct kmem_cache *cachep, gfp_t flags, int nodeid,
  	/* ___cache_alloc_node can fall back to other nodes */
  	ptr = ____cache_alloc_node(cachep, flags, nodeid);
    out:
@@ -24132,7 +24569,7 @@ diff -NurpP --minimal linux-3.4.48/mm/slab.c linux-3.4.48-vs2.3.3.9/mm/slab.c
  	local_irq_restore(save_flags);
  	ptr = cache_alloc_debugcheck_after(cachep, flags, ptr, caller);
  	kmemleak_alloc_recursive(ptr, obj_size(cachep), 1, cachep->flags,
-@@ -3730,6 +3734,7 @@ static inline void __cache_free(struct k
+@@ -3730,6 +3734,7 @@ static inline void __cache_free(struct kmem_cache *cachep, void *objp,
  	check_irq_off();
  	kmemleak_free_recursive(objp, cachep->flags);
  	objp = cache_free_debugcheck(cachep, objp, caller);
@@ -24140,9 +24577,11 @@ diff -NurpP --minimal linux-3.4.48/mm/slab.c linux-3.4.48-vs2.3.3.9/mm/slab.c
  
  	kmemcheck_slab_free(cachep, objp, obj_size(cachep));
  
-diff -NurpP --minimal linux-3.4.48/mm/slab_vs.h linux-3.4.48-vs2.3.3.9/mm/slab_vs.h
---- linux-3.4.48/mm/slab_vs.h	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/mm/slab_vs.h	2012-05-21 16:15:05.000000000 +0000
+diff --git a/mm/slab_vs.h b/mm/slab_vs.h
+new file mode 100644
+index 0000000..00c065e
+--- /dev/null
++++ b/mm/slab_vs.h
 @@ -0,0 +1,29 @@
 +
 +#include <linux/vserver/context.h>
@@ -24173,9 +24612,10 @@ diff -NurpP --minimal linux-3.4.48/mm/slab_vs.h linux-3.4.48-vs2.3.3.9/mm/slab_v
 +	atomic_sub(cachep->buffer_size, &vxi->cacct.slab[what]);
 +}
 +
-diff -NurpP --minimal linux-3.4.48/mm/swapfile.c linux-3.4.48-vs2.3.3.9/mm/swapfile.c
---- linux-3.4.48/mm/swapfile.c	2013-06-13 08:59:40.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/mm/swapfile.c	2012-06-28 14:45:07.000000000 +0000
+diff --git a/mm/swapfile.c b/mm/swapfile.c
+index 38186d9..d0d26b4 100644
+--- a/mm/swapfile.c
++++ b/mm/swapfile.c
 @@ -36,6 +36,7 @@
  #include <asm/tlbflush.h>
  #include <linux/swapops.h>
@@ -24184,7 +24624,7 @@ diff -NurpP --minimal linux-3.4.48/mm/swapfile.c linux-3.4.48-vs2.3.3.9/mm/swapf
  
  static bool swap_count_continued(struct swap_info_struct *, pgoff_t,
  				 unsigned char);
-@@ -1754,6 +1755,16 @@ static int swap_show(struct seq_file *sw
+@@ -1754,6 +1755,16 @@ static int swap_show(struct seq_file *swap, void *v)
  
  	if (si == SEQ_START_TOKEN) {
  		seq_puts(swap,"Filename\t\t\t\tType\t\tSize\tUsed\tPriority\n");
@@ -24210,10 +24650,11 @@ diff -NurpP --minimal linux-3.4.48/mm/swapfile.c linux-3.4.48-vs2.3.3.9/mm/swapf
  }
  
  /*
-diff -NurpP --minimal linux-3.4.48/net/bridge/br_multicast.c linux-3.4.48-vs2.3.3.9/net/bridge/br_multicast.c
---- linux-3.4.48/net/bridge/br_multicast.c	2012-05-21 16:07:40.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/net/bridge/br_multicast.c	2012-05-21 16:15:05.000000000 +0000
-@@ -445,7 +445,7 @@ static struct sk_buff *br_ip6_multicast_
+diff --git a/net/bridge/br_multicast.c b/net/bridge/br_multicast.c
+index 9069071..f8d1b39 100644
+--- a/net/bridge/br_multicast.c
++++ b/net/bridge/br_multicast.c
+@@ -445,7 +445,7 @@ static struct sk_buff *br_ip6_multicast_alloc_query(struct net_bridge *br,
  	ip6h->hop_limit = 1;
  	ipv6_addr_set(&ip6h->daddr, htonl(0xff020000), 0, 0, htonl(1));
  	if (ipv6_dev_get_saddr(dev_net(br->dev), br->dev, &ip6h->daddr, 0,
@@ -24222,9 +24663,10 @@ diff -NurpP --minimal linux-3.4.48/net/bridge/br_multicast.c linux-3.4.48-vs2.3.
  		kfree_skb(skb);
  		return NULL;
  	}
-diff -NurpP --minimal linux-3.4.48/net/core/dev.c linux-3.4.48-vs2.3.3.9/net/core/dev.c
---- linux-3.4.48/net/core/dev.c	2013-06-13 08:59:40.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/net/core/dev.c	2013-06-13 09:46:39.000000000 +0000
+diff --git a/net/core/dev.c b/net/core/dev.c
+index 7db83d6..4676b62 100644
+--- a/net/core/dev.c
++++ b/net/core/dev.c
 @@ -126,6 +126,7 @@
  #include <linux/in.h>
  #include <linux/jhash.h>
@@ -24233,7 +24675,7 @@ diff -NurpP --minimal linux-3.4.48/net/core/dev.c linux-3.4.48-vs2.3.3.9/net/cor
  #include <trace/events/napi.h>
  #include <trace/events/net.h>
  #include <trace/events/skb.h>
-@@ -621,7 +622,8 @@ struct net_device *__dev_get_by_name(str
+@@ -621,7 +622,8 @@ struct net_device *__dev_get_by_name(struct net *net, const char *name)
  	struct hlist_head *head = dev_name_hash(net, name);
  
  	hlist_for_each_entry(dev, p, head, name_hlist)
@@ -24243,7 +24685,7 @@ diff -NurpP --minimal linux-3.4.48/net/core/dev.c linux-3.4.48-vs2.3.3.9/net/cor
  			return dev;
  
  	return NULL;
-@@ -647,7 +649,8 @@ struct net_device *dev_get_by_name_rcu(s
+@@ -647,7 +649,8 @@ struct net_device *dev_get_by_name_rcu(struct net *net, const char *name)
  	struct hlist_head *head = dev_name_hash(net, name);
  
  	hlist_for_each_entry_rcu(dev, p, head, name_hlist)
@@ -24253,7 +24695,7 @@ diff -NurpP --minimal linux-3.4.48/net/core/dev.c linux-3.4.48-vs2.3.3.9/net/cor
  			return dev;
  
  	return NULL;
-@@ -698,7 +701,8 @@ struct net_device *__dev_get_by_index(st
+@@ -698,7 +701,8 @@ struct net_device *__dev_get_by_index(struct net *net, int ifindex)
  	struct hlist_head *head = dev_index_hash(net, ifindex);
  
  	hlist_for_each_entry(dev, p, head, index_hlist)
@@ -24272,7 +24714,7 @@ diff -NurpP --minimal linux-3.4.48/net/core/dev.c linux-3.4.48-vs2.3.3.9/net/cor
  {
  	struct hlist_node *p;
  	struct net_device *dev;
-@@ -728,6 +732,16 @@ struct net_device *dev_get_by_index_rcu(
+@@ -728,6 +732,16 @@ struct net_device *dev_get_by_index_rcu(struct net *net, int ifindex)
  
  	return NULL;
  }
@@ -24289,7 +24731,7 @@ diff -NurpP --minimal linux-3.4.48/net/core/dev.c linux-3.4.48-vs2.3.3.9/net/cor
  EXPORT_SYMBOL(dev_get_by_index_rcu);
  
  
-@@ -776,7 +790,8 @@ struct net_device *dev_getbyhwaddr_rcu(s
+@@ -776,7 +790,8 @@ struct net_device *dev_getbyhwaddr_rcu(struct net *net, unsigned short type,
  
  	for_each_netdev_rcu(net, dev)
  		if (dev->type == type &&
@@ -24299,7 +24741,7 @@ diff -NurpP --minimal linux-3.4.48/net/core/dev.c linux-3.4.48-vs2.3.3.9/net/cor
  			return dev;
  
  	return NULL;
-@@ -788,9 +803,11 @@ struct net_device *__dev_getfirstbyhwtyp
+@@ -788,9 +803,11 @@ struct net_device *__dev_getfirstbyhwtype(struct net *net, unsigned short type)
  	struct net_device *dev;
  
  	ASSERT_RTNL();
@@ -24313,7 +24755,7 @@ diff -NurpP --minimal linux-3.4.48/net/core/dev.c linux-3.4.48-vs2.3.3.9/net/cor
  
  	return NULL;
  }
-@@ -908,6 +925,8 @@ static int __dev_alloc_name(struct net *
+@@ -908,6 +925,8 @@ static int __dev_alloc_name(struct net *net, const char *name, char *buf)
  				continue;
  			if (i < 0 || i >= max_netdevices)
  				continue;
@@ -24322,7 +24764,7 @@ diff -NurpP --minimal linux-3.4.48/net/core/dev.c linux-3.4.48-vs2.3.3.9/net/cor
  
  			/*  avoid cases where sscanf is not exact inverse of printf */
  			snprintf(buf, IFNAMSIZ, name, i);
-@@ -4000,6 +4019,8 @@ static int dev_ifconf(struct net *net, c
+@@ -4009,6 +4028,8 @@ static int dev_ifconf(struct net *net, char __user *arg)
  
  	total = 0;
  	for_each_netdev(net, dev) {
@@ -24331,7 +24773,7 @@ diff -NurpP --minimal linux-3.4.48/net/core/dev.c linux-3.4.48-vs2.3.3.9/net/cor
  		for (i = 0; i < NPROTO; i++) {
  			if (gifconf_list[i]) {
  				int done;
-@@ -4102,6 +4123,10 @@ static void dev_seq_printf_stats(struct
+@@ -4111,6 +4132,10 @@ static void dev_seq_printf_stats(struct seq_file *seq, struct net_device *dev)
  	struct rtnl_link_stats64 temp;
  	const struct rtnl_link_stats64 *stats = dev_get_stats(dev, &temp);
  
@@ -24342,10 +24784,11 @@ diff -NurpP --minimal linux-3.4.48/net/core/dev.c linux-3.4.48-vs2.3.3.9/net/cor
  	seq_printf(seq, "%6s: %7llu %7llu %4llu %4llu %4llu %5llu %10llu %9llu "
  		   "%8llu %7llu %4llu %4llu %4llu %5llu %7llu %10llu\n",
  		   dev->name, stats->rx_bytes, stats->rx_packets,
-diff -NurpP --minimal linux-3.4.48/net/core/rtnetlink.c linux-3.4.48-vs2.3.3.9/net/core/rtnetlink.c
---- linux-3.4.48/net/core/rtnetlink.c	2013-06-13 08:59:40.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/net/core/rtnetlink.c	2013-06-13 09:46:39.000000000 +0000
-@@ -1079,6 +1079,8 @@ static int rtnl_dump_ifinfo(struct sk_bu
+diff --git a/net/core/rtnetlink.c b/net/core/rtnetlink.c
+index a133427..93ff5d5 100644
+--- a/net/core/rtnetlink.c
++++ b/net/core/rtnetlink.c
+@@ -1079,6 +1079,8 @@ static int rtnl_dump_ifinfo(struct sk_buff *skb, struct netlink_callback *cb)
  		hlist_for_each_entry_rcu(dev, node, head, index_hlist) {
  			if (idx < s_idx)
  				goto cont;
@@ -24354,7 +24797,7 @@ diff -NurpP --minimal linux-3.4.48/net/core/rtnetlink.c linux-3.4.48-vs2.3.3.9/n
  			if (rtnl_fill_ifinfo(skb, dev, RTM_NEWLINK,
  					     NETLINK_CB(cb->skb).pid,
  					     cb->nlh->nlmsg_seq, 0,
-@@ -1962,6 +1964,9 @@ void rtmsg_ifinfo(int type, struct net_d
+@@ -1962,6 +1964,9 @@ void rtmsg_ifinfo(int type, struct net_device *dev, unsigned change)
  	int err = -ENOBUFS;
  	size_t if_info_size;
  
@@ -24364,9 +24807,10 @@ diff -NurpP --minimal linux-3.4.48/net/core/rtnetlink.c linux-3.4.48-vs2.3.3.9/n
  	skb = nlmsg_new((if_info_size = if_nlmsg_size(dev, 0)), GFP_KERNEL);
  	if (skb == NULL)
  		goto errout;
-diff -NurpP --minimal linux-3.4.48/net/core/sock.c linux-3.4.48-vs2.3.3.9/net/core/sock.c
---- linux-3.4.48/net/core/sock.c	2013-06-13 08:59:40.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/net/core/sock.c	2013-06-13 09:46:39.000000000 +0000
+diff --git a/net/core/sock.c b/net/core/sock.c
+index 561eb57..4de81b0 100644
+--- a/net/core/sock.c
++++ b/net/core/sock.c
 @@ -129,6 +129,10 @@
  #include <net/netprio_cgroup.h>
  
@@ -24378,7 +24822,7 @@ diff -NurpP --minimal linux-3.4.48/net/core/sock.c linux-3.4.48-vs2.3.3.9/net/co
  
  #include <trace/events/sock.h>
  
-@@ -1147,6 +1151,8 @@ static struct sock *sk_prot_alloc(struct
+@@ -1141,6 +1145,8 @@ static struct sock *sk_prot_alloc(struct proto *prot, gfp_t priority,
  			goto out_free_sec;
  		sk_tx_queue_clear(sk);
  	}
@@ -24387,7 +24831,7 @@ diff -NurpP --minimal linux-3.4.48/net/core/sock.c linux-3.4.48-vs2.3.3.9/net/co
  
  	return sk;
  
-@@ -1255,6 +1261,11 @@ static void __sk_free(struct sock *sk)
+@@ -1249,6 +1255,11 @@ static void __sk_free(struct sock *sk)
  		put_cred(sk->sk_peer_cred);
  	put_pid(sk->sk_peer_pid);
  	put_net(sock_net(sk));
@@ -24399,7 +24843,7 @@ diff -NurpP --minimal linux-3.4.48/net/core/sock.c linux-3.4.48-vs2.3.3.9/net/co
  	sk_prot_free(sk->sk_prot_creator, sk);
  }
  
-@@ -1315,6 +1326,8 @@ struct sock *sk_clone_lock(const struct
+@@ -1309,6 +1320,8 @@ struct sock *sk_clone_lock(const struct sock *sk, const gfp_t priority)
  
  		/* SANITY */
  		get_net(sock_net(newsk));
@@ -24408,7 +24852,7 @@ diff -NurpP --minimal linux-3.4.48/net/core/sock.c linux-3.4.48-vs2.3.3.9/net/co
  		sk_node_init(&newsk->sk_node);
  		sock_lock_init(newsk);
  		bh_lock_sock(newsk);
-@@ -1371,6 +1384,12 @@ struct sock *sk_clone_lock(const struct
+@@ -1365,6 +1378,12 @@ struct sock *sk_clone_lock(const struct sock *sk, const gfp_t priority)
  		smp_wmb();
  		atomic_set(&newsk->sk_refcnt, 2);
  
@@ -24421,7 +24865,7 @@ diff -NurpP --minimal linux-3.4.48/net/core/sock.c linux-3.4.48-vs2.3.3.9/net/co
  		/*
  		 * Increment the counter in the same struct proto as the master
  		 * sock (sk_refcnt_debug_inc uses newsk->sk_prot->socks, that
-@@ -2127,6 +2146,12 @@ void sock_init_data(struct socket *sock,
+@@ -2121,6 +2140,12 @@ void sock_init_data(struct socket *sock, struct sock *sk)
  
  	sk->sk_stamp = ktime_set(-1L, 0);
  
@@ -24434,9 +24878,10 @@ diff -NurpP --minimal linux-3.4.48/net/core/sock.c linux-3.4.48-vs2.3.3.9/net/co
  	/*
  	 * Before updating sk_refcnt, we must commit prior changes to memory
  	 * (Documentation/RCU/rculist_nulls.txt for details)
-diff -NurpP --minimal linux-3.4.48/net/ipv4/af_inet.c linux-3.4.48-vs2.3.3.9/net/ipv4/af_inet.c
---- linux-3.4.48/net/ipv4/af_inet.c	2013-06-13 08:59:41.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/net/ipv4/af_inet.c	2013-03-02 15:26:44.000000000 +0000
+diff --git a/net/ipv4/af_inet.c b/net/ipv4/af_inet.c
+index 78ec298..fce68cf 100644
+--- a/net/ipv4/af_inet.c
++++ b/net/ipv4/af_inet.c
 @@ -118,6 +118,7 @@
  #ifdef CONFIG_IP_MROUTE
  #include <linux/mroute.h>
@@ -24460,7 +24905,7 @@ diff -NurpP --minimal linux-3.4.48/net/ipv4/af_inet.c linux-3.4.48-vs2.3.3.9/net
  	err = -EAFNOSUPPORT;
  	if (!inet_netns_ok(net, protocol))
  		goto out_rcu_unlock;
-@@ -459,6 +464,7 @@ int inet_bind(struct socket *sock, struc
+@@ -459,6 +464,7 @@ int inet_bind(struct socket *sock, struct sockaddr *uaddr, int addr_len)
  	struct sockaddr_in *addr = (struct sockaddr_in *)uaddr;
  	struct sock *sk = sock->sk;
  	struct inet_sock *inet = inet_sk(sk);
@@ -24468,7 +24913,7 @@ diff -NurpP --minimal linux-3.4.48/net/ipv4/af_inet.c linux-3.4.48-vs2.3.3.9/net
  	unsigned short snum;
  	int chk_addr_ret;
  	int err;
-@@ -482,7 +488,11 @@ int inet_bind(struct socket *sock, struc
+@@ -482,7 +488,11 @@ int inet_bind(struct socket *sock, struct sockaddr *uaddr, int addr_len)
  			goto out;
  	}
  
@@ -24481,7 +24926,7 @@ diff -NurpP --minimal linux-3.4.48/net/ipv4/af_inet.c linux-3.4.48-vs2.3.3.9/net
  
  	/* Not specified by any standard per-se, however it breaks too
  	 * many applications when removed.  It is unfortunate since
-@@ -494,7 +504,7 @@ int inet_bind(struct socket *sock, struc
+@@ -494,7 +504,7 @@ int inet_bind(struct socket *sock, struct sockaddr *uaddr, int addr_len)
  	err = -EADDRNOTAVAIL;
  	if (!sysctl_ip_nonlocal_bind &&
  	    !(inet->freebind || inet->transparent) &&
@@ -24490,7 +24935,7 @@ diff -NurpP --minimal linux-3.4.48/net/ipv4/af_inet.c linux-3.4.48-vs2.3.3.9/net
  	    chk_addr_ret != RTN_LOCAL &&
  	    chk_addr_ret != RTN_MULTICAST &&
  	    chk_addr_ret != RTN_BROADCAST)
-@@ -519,7 +529,7 @@ int inet_bind(struct socket *sock, struc
+@@ -519,7 +529,7 @@ int inet_bind(struct socket *sock, struct sockaddr *uaddr, int addr_len)
  	if (sk->sk_state != TCP_CLOSE || inet->inet_num)
  		goto out_release_sock;
  
@@ -24499,7 +24944,7 @@ diff -NurpP --minimal linux-3.4.48/net/ipv4/af_inet.c linux-3.4.48-vs2.3.3.9/net
  	if (chk_addr_ret == RTN_MULTICAST || chk_addr_ret == RTN_BROADCAST)
  		inet->inet_saddr = 0;  /* Use device */
  
-@@ -722,11 +732,13 @@ int inet_getname(struct socket *sock, st
+@@ -722,11 +732,13 @@ int inet_getname(struct socket *sock, struct sockaddr *uaddr,
  		     peer == 1))
  			return -ENOTCONN;
  		sin->sin_port = inet->inet_dport;
@@ -24514,10 +24959,11 @@ diff -NurpP --minimal linux-3.4.48/net/ipv4/af_inet.c linux-3.4.48-vs2.3.3.9/net
  		sin->sin_port = inet->inet_sport;
  		sin->sin_addr.s_addr = addr;
  	}
-diff -NurpP --minimal linux-3.4.48/net/ipv4/arp.c linux-3.4.48-vs2.3.3.9/net/ipv4/arp.c
---- linux-3.4.48/net/ipv4/arp.c	2012-05-21 16:07:40.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/net/ipv4/arp.c	2012-05-21 16:15:05.000000000 +0000
-@@ -1328,6 +1328,7 @@ static void arp_format_neigh_entry(struc
+diff --git a/net/ipv4/arp.c b/net/ipv4/arp.c
+index 18d9b81..d45cd32 100644
+--- a/net/ipv4/arp.c
++++ b/net/ipv4/arp.c
+@@ -1328,6 +1328,7 @@ static void arp_format_neigh_entry(struct seq_file *seq,
  	struct net_device *dev = n->dev;
  	int hatype = dev->type;
  
@@ -24525,7 +24971,7 @@ diff -NurpP --minimal linux-3.4.48/net/ipv4/arp.c linux-3.4.48-vs2.3.3.9/net/ipv
  	read_lock(&n->lock);
  	/* Convert hardware address to XX:XX:XX:XX ... form. */
  #if IS_ENABLED(CONFIG_AX25)
-@@ -1359,6 +1360,7 @@ static void arp_format_pneigh_entry(stru
+@@ -1359,6 +1360,7 @@ static void arp_format_pneigh_entry(struct seq_file *seq,
  	int hatype = dev ? dev->type : 0;
  	char tbuf[16];
  
@@ -24533,10 +24979,11 @@ diff -NurpP --minimal linux-3.4.48/net/ipv4/arp.c linux-3.4.48-vs2.3.3.9/net/ipv
  	sprintf(tbuf, "%pI4", n->key);
  	seq_printf(seq, "%-16s 0x%-10x0x%-10x%s     *        %s\n",
  		   tbuf, hatype, ATF_PUBL | ATF_PERM, "00:00:00:00:00:00",
-diff -NurpP --minimal linux-3.4.48/net/ipv4/devinet.c linux-3.4.48-vs2.3.3.9/net/ipv4/devinet.c
---- linux-3.4.48/net/ipv4/devinet.c	2012-05-21 16:07:40.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/net/ipv4/devinet.c	2012-05-21 16:15:05.000000000 +0000
-@@ -517,6 +517,7 @@ struct in_device *inetdev_by_index(struc
+diff --git a/net/ipv4/devinet.c b/net/ipv4/devinet.c
+index 6e447ff..3c0d332 100644
+--- a/net/ipv4/devinet.c
++++ b/net/ipv4/devinet.c
+@@ -517,6 +517,7 @@ struct in_device *inetdev_by_index(struct net *net, int ifindex)
  }
  EXPORT_SYMBOL(inetdev_by_index);
  
@@ -24544,7 +24991,7 @@ diff -NurpP --minimal linux-3.4.48/net/ipv4/devinet.c linux-3.4.48-vs2.3.3.9/net
  /* Called only from RTNL semaphored context. No locks. */
  
  struct in_ifaddr *inet_ifa_byprefix(struct in_device *in_dev, __be32 prefix,
-@@ -758,6 +759,8 @@ int devinet_ioctl(struct net *net, unsig
+@@ -758,6 +759,8 @@ int devinet_ioctl(struct net *net, unsigned int cmd, void __user *arg)
  
  	in_dev = __in_dev_get_rtnl(dev);
  	if (in_dev) {
@@ -24553,7 +25000,7 @@ diff -NurpP --minimal linux-3.4.48/net/ipv4/devinet.c linux-3.4.48-vs2.3.3.9/net
  		if (tryaddrmatch) {
  			/* Matthias Andree */
  			/* compare label and address (4.4BSD style) */
-@@ -766,6 +769,8 @@ int devinet_ioctl(struct net *net, unsig
+@@ -766,6 +769,8 @@ int devinet_ioctl(struct net *net, unsigned int cmd, void __user *arg)
  			   This is checked above. */
  			for (ifap = &in_dev->ifa_list; (ifa = *ifap) != NULL;
  			     ifap = &ifa->ifa_next) {
@@ -24562,7 +25009,7 @@ diff -NurpP --minimal linux-3.4.48/net/ipv4/devinet.c linux-3.4.48-vs2.3.3.9/net
  				if (!strcmp(ifr.ifr_name, ifa->ifa_label) &&
  				    sin_orig.sin_addr.s_addr ==
  							ifa->ifa_local) {
-@@ -778,9 +783,12 @@ int devinet_ioctl(struct net *net, unsig
+@@ -778,9 +783,12 @@ int devinet_ioctl(struct net *net, unsigned int cmd, void __user *arg)
  		   comparing just the label */
  		if (!ifa) {
  			for (ifap = &in_dev->ifa_list; (ifa = *ifap) != NULL;
@@ -24576,7 +25023,7 @@ diff -NurpP --minimal linux-3.4.48/net/ipv4/devinet.c linux-3.4.48-vs2.3.3.9/net
  		}
  	}
  
-@@ -933,6 +941,8 @@ static int inet_gifconf(struct net_devic
+@@ -933,6 +941,8 @@ static int inet_gifconf(struct net_device *dev, char __user *buf, int len)
  		goto out;
  
  	for (ifa = in_dev->ifa_list; ifa; ifa = ifa->ifa_next) {
@@ -24585,7 +25032,7 @@ diff -NurpP --minimal linux-3.4.48/net/ipv4/devinet.c linux-3.4.48-vs2.3.3.9/net
  		if (!buf) {
  			done += sizeof(ifr);
  			continue;
-@@ -1294,6 +1304,7 @@ static int inet_dump_ifaddr(struct sk_bu
+@@ -1294,6 +1304,7 @@ static int inet_dump_ifaddr(struct sk_buff *skb, struct netlink_callback *cb)
  	struct net_device *dev;
  	struct in_device *in_dev;
  	struct in_ifaddr *ifa;
@@ -24593,7 +25040,7 @@ diff -NurpP --minimal linux-3.4.48/net/ipv4/devinet.c linux-3.4.48-vs2.3.3.9/net
  	struct hlist_head *head;
  	struct hlist_node *node;
  
-@@ -1316,6 +1327,8 @@ static int inet_dump_ifaddr(struct sk_bu
+@@ -1316,6 +1327,8 @@ static int inet_dump_ifaddr(struct sk_buff *skb, struct netlink_callback *cb)
  
  			for (ifa = in_dev->ifa_list, ip_idx = 0; ifa;
  			     ifa = ifa->ifa_next, ip_idx++) {
@@ -24602,10 +25049,11 @@ diff -NurpP --minimal linux-3.4.48/net/ipv4/devinet.c linux-3.4.48-vs2.3.3.9/net
  				if (ip_idx < s_ip_idx)
  					continue;
  				if (inet_fill_ifaddr(skb, ifa,
-diff -NurpP --minimal linux-3.4.48/net/ipv4/fib_trie.c linux-3.4.48-vs2.3.3.9/net/ipv4/fib_trie.c
---- linux-3.4.48/net/ipv4/fib_trie.c	2012-05-21 16:07:40.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/net/ipv4/fib_trie.c	2012-05-21 16:15:05.000000000 +0000
-@@ -2556,6 +2556,7 @@ static int fib_route_seq_show(struct seq
+diff --git a/net/ipv4/fib_trie.c b/net/ipv4/fib_trie.c
+index 30b88d7..f26a2d1 100644
+--- a/net/ipv4/fib_trie.c
++++ b/net/ipv4/fib_trie.c
+@@ -2556,6 +2556,7 @@ static int fib_route_seq_show(struct seq_file *seq, void *v)
  			    || fa->fa_type == RTN_MULTICAST)
  				continue;
  
@@ -24613,10 +25061,11 @@ diff -NurpP --minimal linux-3.4.48/net/ipv4/fib_trie.c linux-3.4.48-vs2.3.3.9/ne
  			if (fi)
  				seq_printf(seq,
  					 "%s\t%08X\t%08X\t%04X\t%d\t%u\t"
-diff -NurpP --minimal linux-3.4.48/net/ipv4/inet_connection_sock.c linux-3.4.48-vs2.3.3.9/net/ipv4/inet_connection_sock.c
---- linux-3.4.48/net/ipv4/inet_connection_sock.c	2013-06-13 08:59:41.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/net/ipv4/inet_connection_sock.c	2013-01-16 00:15:57.000000000 +0000
-@@ -52,6 +52,37 @@ void inet_get_local_port_range(int *low,
+diff --git a/net/ipv4/inet_connection_sock.c b/net/ipv4/inet_connection_sock.c
+index 3f40432..aa64692 100644
+--- a/net/ipv4/inet_connection_sock.c
++++ b/net/ipv4/inet_connection_sock.c
+@@ -52,6 +52,37 @@ void inet_get_local_port_range(int *low, int *high)
  }
  EXPORT_SYMBOL(inet_get_local_port_range);
  
@@ -24654,7 +25103,7 @@ diff -NurpP --minimal linux-3.4.48/net/ipv4/inet_connection_sock.c linux-3.4.48-
  int inet_csk_bind_conflict(const struct sock *sk,
  			   const struct inet_bind_bucket *tb)
  {
-@@ -74,9 +105,7 @@ int inet_csk_bind_conflict(const struct
+@@ -74,9 +105,7 @@ int inet_csk_bind_conflict(const struct sock *sk,
  		     sk->sk_bound_dev_if == sk2->sk_bound_dev_if)) {
  			if (!reuse || !sk2->sk_reuse ||
  			    sk2->sk_state == TCP_LISTEN) {
@@ -24665,9 +25114,10 @@ diff -NurpP --minimal linux-3.4.48/net/ipv4/inet_connection_sock.c linux-3.4.48-
  					break;
  			}
  		}
-diff -NurpP --minimal linux-3.4.48/net/ipv4/inet_diag.c linux-3.4.48-vs2.3.3.9/net/ipv4/inet_diag.c
---- linux-3.4.48/net/ipv4/inet_diag.c	2013-06-13 08:59:41.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/net/ipv4/inet_diag.c	2013-01-16 00:18:21.000000000 +0000
+diff --git a/net/ipv4/inet_diag.c b/net/ipv4/inet_diag.c
+index d7b862a..cac6ffa 100644
+--- a/net/ipv4/inet_diag.c
++++ b/net/ipv4/inet_diag.c
 @@ -31,6 +31,8 @@
  
  #include <linux/inet.h>
@@ -24677,7 +25127,7 @@ diff -NurpP --minimal linux-3.4.48/net/ipv4/inet_diag.c linux-3.4.48-vs2.3.3.9/n
  
  #include <linux/inet_diag.h>
  #include <linux/sock_diag.h>
-@@ -110,8 +112,10 @@ int inet_sk_diag_fill(struct sock *sk, s
+@@ -110,8 +112,10 @@ int inet_sk_diag_fill(struct sock *sk, struct inet_connection_sock *icsk,
  
  	r->id.idiag_sport = inet->inet_sport;
  	r->id.idiag_dport = inet->inet_dport;
@@ -24690,7 +25140,7 @@ diff -NurpP --minimal linux-3.4.48/net/ipv4/inet_diag.c linux-3.4.48-vs2.3.3.9/n
  
  	/* IPv6 dual-stack sockets use inet->tos for IPv4 connections,
  	 * hence this needs to be included regardless of socket family.
-@@ -231,8 +235,8 @@ static int inet_twsk_diag_fill(struct in
+@@ -231,8 +235,8 @@ static int inet_twsk_diag_fill(struct inet_timewait_sock *tw,
  	sock_diag_save_cookie(tw, r->id.idiag_cookie);
  	r->id.idiag_sport     = tw->tw_sport;
  	r->id.idiag_dport     = tw->tw_dport;
@@ -24701,7 +25151,7 @@ diff -NurpP --minimal linux-3.4.48/net/ipv4/inet_diag.c linux-3.4.48-vs2.3.3.9/n
  	r->idiag_state	      = tw->tw_substate;
  	r->idiag_timer	      = 3;
  	r->idiag_expires      = DIV_ROUND_UP(tmo * 1000, HZ);
-@@ -276,12 +280,14 @@ int inet_diag_dump_one_icsk(struct inet_
+@@ -276,12 +280,14 @@ int inet_diag_dump_one_icsk(struct inet_hashinfo *hashinfo, struct sk_buff *in_s
  
  	err = -EINVAL;
  	if (req->sdiag_family == AF_INET) {
@@ -24716,7 +25166,7 @@ diff -NurpP --minimal linux-3.4.48/net/ipv4/inet_diag.c linux-3.4.48-vs2.3.3.9/n
  		sk = inet6_lookup(&init_net, hashinfo,
  				  (struct in6_addr *)req->id.idiag_dst,
  				  req->id.idiag_dport,
-@@ -482,6 +488,7 @@ int inet_diag_bc_sk(const struct nlattr
+@@ -482,6 +488,7 @@ int inet_diag_bc_sk(const struct nlattr *bc, struct sock *sk)
  	} else
  #endif
  	{
@@ -24724,7 +25174,7 @@ diff -NurpP --minimal linux-3.4.48/net/ipv4/inet_diag.c linux-3.4.48-vs2.3.3.9/n
  		entry.saddr = &inet->inet_rcv_saddr;
  		entry.daddr = &inet->inet_daddr;
  	}
-@@ -639,6 +646,7 @@ static int inet_twsk_diag_dump(struct in
+@@ -639,6 +646,7 @@ static int inet_twsk_diag_dump(struct inet_timewait_sock *tw,
  		} else
  #endif
  		{
@@ -24732,7 +25182,7 @@ diff -NurpP --minimal linux-3.4.48/net/ipv4/inet_diag.c linux-3.4.48-vs2.3.3.9/n
  			entry.saddr = &tw->tw_rcv_saddr;
  			entry.daddr = &tw->tw_daddr;
  		}
-@@ -714,8 +722,8 @@ static int inet_diag_fill_req(struct sk_
+@@ -714,8 +722,8 @@ static int inet_diag_fill_req(struct sk_buff *skb, struct sock *sk,
  
  	r->id.idiag_sport = inet->inet_sport;
  	r->id.idiag_dport = ireq->rmt_port;
@@ -24743,7 +25193,7 @@ diff -NurpP --minimal linux-3.4.48/net/ipv4/inet_diag.c linux-3.4.48-vs2.3.3.9/n
  	r->idiag_expires = jiffies_to_msecs(tmo);
  	r->idiag_rqueue = 0;
  	r->idiag_wqueue = 0;
-@@ -784,6 +792,7 @@ static int inet_diag_dump_reqs(struct sk
+@@ -784,6 +792,7 @@ static int inet_diag_dump_reqs(struct sk_buff *skb, struct sock *sk,
  				continue;
  
  			if (bc) {
@@ -24751,7 +25201,7 @@ diff -NurpP --minimal linux-3.4.48/net/ipv4/inet_diag.c linux-3.4.48-vs2.3.3.9/n
  				inet_diag_req_addrs(sk, req, &entry);
  				entry.dport = ntohs(ireq->rmt_port);
  
-@@ -834,6 +843,8 @@ void inet_diag_dump_icsk(struct inet_has
+@@ -834,6 +843,8 @@ void inet_diag_dump_icsk(struct inet_hashinfo *hashinfo, struct sk_buff *skb,
  			sk_nulls_for_each(sk, node, &ilb->head) {
  				struct inet_sock *inet = inet_sk(sk);
  
@@ -24778,9 +25228,10 @@ diff -NurpP --minimal linux-3.4.48/net/ipv4/inet_diag.c linux-3.4.48-vs2.3.3.9/n
  				if (num < s_num)
  					goto next_dying;
  				if (r->sdiag_family != AF_UNSPEC &&
-diff -NurpP --minimal linux-3.4.48/net/ipv4/inet_hashtables.c linux-3.4.48-vs2.3.3.9/net/ipv4/inet_hashtables.c
---- linux-3.4.48/net/ipv4/inet_hashtables.c	2011-10-24 16:45:34.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/net/ipv4/inet_hashtables.c	2012-05-21 16:15:05.000000000 +0000
+diff --git a/net/ipv4/inet_hashtables.c b/net/ipv4/inet_hashtables.c
+index 984ec65..2dc65a1 100644
+--- a/net/ipv4/inet_hashtables.c
++++ b/net/ipv4/inet_hashtables.c
 @@ -22,6 +22,7 @@
  #include <net/inet_connection_sock.h>
  #include <net/inet_hashtables.h>
@@ -24789,7 +25240,7 @@ diff -NurpP --minimal linux-3.4.48/net/ipv4/inet_hashtables.c linux-3.4.48-vs2.3
  #include <net/ip.h>
  
  /*
-@@ -156,6 +157,11 @@ static inline int compute_score(struct s
+@@ -156,6 +157,11 @@ static inline int compute_score(struct sock *sk, struct net *net,
  			if (rcv_saddr != daddr)
  				return -1;
  			score += 2;
@@ -24801,7 +25252,7 @@ diff -NurpP --minimal linux-3.4.48/net/ipv4/inet_hashtables.c linux-3.4.48-vs2.3
  		}
  		if (sk->sk_bound_dev_if) {
  			if (sk->sk_bound_dev_if != dif)
-@@ -173,7 +179,6 @@ static inline int compute_score(struct s
+@@ -173,7 +179,6 @@ static inline int compute_score(struct sock *sk, struct net *net,
   * wildcarded during the search since they can never be otherwise.
   */
  
@@ -24817,20 +25268,10 @@ diff -NurpP --minimal linux-3.4.48/net/ipv4/inet_hashtables.c linux-3.4.48-vs2.3
  	/*
  	 * if the nulls value we got at the end of this lookup is
  	 * not the expected one, we must restart lookup.
-diff -NurpP --minimal linux-3.4.48/net/ipv4/netfilter/nf_nat_helper.c linux-3.4.48-vs2.3.3.9/net/ipv4/netfilter/nf_nat_helper.c
---- linux-3.4.48/net/ipv4/netfilter/nf_nat_helper.c	2012-03-19 18:47:33.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/net/ipv4/netfilter/nf_nat_helper.c	2012-05-21 16:15:05.000000000 +0000
-@@ -20,6 +20,7 @@
- #include <net/route.h>
- 
- #include <linux/netfilter_ipv4.h>
-+#include <net/route.h>
- #include <net/netfilter/nf_conntrack.h>
- #include <net/netfilter/nf_conntrack_helper.h>
- #include <net/netfilter/nf_conntrack_ecache.h>
-diff -NurpP --minimal linux-3.4.48/net/ipv4/netfilter.c linux-3.4.48-vs2.3.3.9/net/ipv4/netfilter.c
---- linux-3.4.48/net/ipv4/netfilter.c	2012-01-09 15:15:03.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/net/ipv4/netfilter.c	2012-05-21 16:15:05.000000000 +0000
+diff --git a/net/ipv4/netfilter.c b/net/ipv4/netfilter.c
+index 4f47e06..aec869b 100644
+--- a/net/ipv4/netfilter.c
++++ b/net/ipv4/netfilter.c
 @@ -6,7 +6,7 @@
  #include <linux/skbuff.h>
  #include <linux/gfp.h>
@@ -24840,10 +25281,23 @@ diff -NurpP --minimal linux-3.4.48/net/ipv4/netfilter.c linux-3.4.48-vs2.3.3.9/n
  #include <net/xfrm.h>
  #include <net/ip.h>
  #include <net/netfilter/nf_queue.h>
-diff -NurpP --minimal linux-3.4.48/net/ipv4/raw.c linux-3.4.48-vs2.3.3.9/net/ipv4/raw.c
---- linux-3.4.48/net/ipv4/raw.c	2013-06-13 08:59:41.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/net/ipv4/raw.c	2012-10-22 13:09:53.000000000 +0000
-@@ -118,7 +118,7 @@ static struct sock *__raw_v4_lookup(stru
+diff --git a/net/ipv4/netfilter/nf_nat_helper.c b/net/ipv4/netfilter/nf_nat_helper.c
+index af65958..34b8007 100644
+--- a/net/ipv4/netfilter/nf_nat_helper.c
++++ b/net/ipv4/netfilter/nf_nat_helper.c
+@@ -20,6 +20,7 @@
+ #include <net/route.h>
+ 
+ #include <linux/netfilter_ipv4.h>
++#include <net/route.h>
+ #include <net/netfilter/nf_conntrack.h>
+ #include <net/netfilter/nf_conntrack_helper.h>
+ #include <net/netfilter/nf_conntrack_ecache.h>
+diff --git a/net/ipv4/raw.c b/net/ipv4/raw.c
+index 2fe0dc2..d91443e 100644
+--- a/net/ipv4/raw.c
++++ b/net/ipv4/raw.c
+@@ -118,7 +118,7 @@ static struct sock *__raw_v4_lookup(struct net *net, struct sock *sk,
  
  		if (net_eq(sock_net(sk), net) && inet->inet_num == num	&&
  		    !(inet->inet_daddr && inet->inet_daddr != raddr) 	&&
@@ -24852,7 +25306,7 @@ diff -NurpP --minimal linux-3.4.48/net/ipv4/raw.c linux-3.4.48-vs2.3.3.9/net/ipv
  		    !(sk->sk_bound_dev_if && sk->sk_bound_dev_if != dif))
  			goto found; /* gotcha */
  	}
-@@ -392,6 +392,12 @@ static int raw_send_hdrinc(struct sock *
+@@ -392,6 +392,12 @@ static int raw_send_hdrinc(struct sock *sk, struct flowi4 *fl4,
  		icmp_out_count(net, ((struct icmphdr *)
  			skb_transport_header(skb))->type);
  
@@ -24865,7 +25319,7 @@ diff -NurpP --minimal linux-3.4.48/net/ipv4/raw.c linux-3.4.48-vs2.3.3.9/net/ipv
  	err = NF_HOOK(NFPROTO_IPV4, NF_INET_LOCAL_OUT, skb, NULL,
  		      rt->dst.dev, dst_output);
  	if (err > 0)
-@@ -577,6 +583,16 @@ static int raw_sendmsg(struct kiocb *ioc
+@@ -577,6 +583,16 @@ static int raw_sendmsg(struct kiocb *iocb, struct sock *sk, struct msghdr *msg,
  			goto done;
  	}
  
@@ -24882,7 +25336,7 @@ diff -NurpP --minimal linux-3.4.48/net/ipv4/raw.c linux-3.4.48-vs2.3.3.9/net/ipv
  	security_sk_classify_flow(sk, flowi4_to_flowi(&fl4));
  	rt = ip_route_output_flow(sock_net(sk), &fl4, sk);
  	if (IS_ERR(rt)) {
-@@ -653,17 +669,19 @@ static int raw_bind(struct sock *sk, str
+@@ -653,17 +669,19 @@ static int raw_bind(struct sock *sk, struct sockaddr *uaddr, int addr_len)
  {
  	struct inet_sock *inet = inet_sk(sk);
  	struct sockaddr_in *addr = (struct sockaddr_in *) uaddr;
@@ -24905,7 +25359,7 @@ diff -NurpP --minimal linux-3.4.48/net/ipv4/raw.c linux-3.4.48-vs2.3.3.9/net/ipv
  	if (chk_addr_ret == RTN_MULTICAST || chk_addr_ret == RTN_BROADCAST)
  		inet->inet_saddr = 0;  /* Use device */
  	sk_dst_reset(sk);
-@@ -715,7 +733,8 @@ static int raw_recvmsg(struct kiocb *ioc
+@@ -715,7 +733,8 @@ static int raw_recvmsg(struct kiocb *iocb, struct sock *sk, struct msghdr *msg,
  	/* Copy the address. */
  	if (sin) {
  		sin->sin_family = AF_INET;
@@ -24915,7 +25369,7 @@ diff -NurpP --minimal linux-3.4.48/net/ipv4/raw.c linux-3.4.48-vs2.3.3.9/net/ipv
  		sin->sin_port = 0;
  		memset(&sin->sin_zero, 0, sizeof(sin->sin_zero));
  	}
-@@ -911,7 +930,8 @@ static struct sock *raw_get_first(struct
+@@ -911,7 +930,8 @@ static struct sock *raw_get_first(struct seq_file *seq)
  		struct hlist_node *node;
  
  		sk_for_each(sk, node, &state->h->ht[state->bucket])
@@ -24925,7 +25379,7 @@ diff -NurpP --minimal linux-3.4.48/net/ipv4/raw.c linux-3.4.48-vs2.3.3.9/net/ipv
  				goto found;
  	}
  	sk = NULL;
-@@ -927,7 +947,8 @@ static struct sock *raw_get_next(struct
+@@ -927,7 +947,8 @@ static struct sock *raw_get_next(struct seq_file *seq, struct sock *sk)
  		sk = sk_next(sk);
  try_again:
  		;
@@ -24935,10 +25389,11 @@ diff -NurpP --minimal linux-3.4.48/net/ipv4/raw.c linux-3.4.48-vs2.3.3.9/net/ipv
  
  	if (!sk && ++state->bucket < RAW_HTABLE_SIZE) {
  		sk = sk_head(&state->h->ht[state->bucket]);
-diff -NurpP --minimal linux-3.4.48/net/ipv4/route.c linux-3.4.48-vs2.3.3.9/net/ipv4/route.c
---- linux-3.4.48/net/ipv4/route.c	2012-05-21 16:07:40.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/net/ipv4/route.c	2012-05-21 16:15:05.000000000 +0000
-@@ -2696,7 +2696,7 @@ static struct rtable *ip_route_output_sl
+diff --git a/net/ipv4/route.c b/net/ipv4/route.c
+index 167ea10..747208b 100644
+--- a/net/ipv4/route.c
++++ b/net/ipv4/route.c
+@@ -2696,7 +2696,7 @@ static struct rtable *ip_route_output_slow(struct net *net, struct flowi4 *fl4)
  
  
  	if (fl4->flowi4_oif) {
@@ -24947,9 +25402,10 @@ diff -NurpP --minimal linux-3.4.48/net/ipv4/route.c linux-3.4.48-vs2.3.3.9/net/i
  		rth = ERR_PTR(-ENODEV);
  		if (dev_out == NULL)
  			goto out;
-diff -NurpP --minimal linux-3.4.48/net/ipv4/tcp.c linux-3.4.48-vs2.3.3.9/net/ipv4/tcp.c
---- linux-3.4.48/net/ipv4/tcp.c	2013-06-13 08:59:41.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/net/ipv4/tcp.c	2013-03-30 21:29:17.000000000 +0000
+diff --git a/net/ipv4/tcp.c b/net/ipv4/tcp.c
+index 0b91c30..e3a3044 100644
+--- a/net/ipv4/tcp.c
++++ b/net/ipv4/tcp.c
 @@ -268,6 +268,7 @@
  #include <linux/crypto.h>
  #include <linux/time.h>
@@ -24958,10 +25414,11 @@ diff -NurpP --minimal linux-3.4.48/net/ipv4/tcp.c linux-3.4.48-vs2.3.3.9/net/ipv
  
  #include <net/icmp.h>
  #include <net/tcp.h>
-diff -NurpP --minimal linux-3.4.48/net/ipv4/tcp_ipv4.c linux-3.4.48-vs2.3.3.9/net/ipv4/tcp_ipv4.c
---- linux-3.4.48/net/ipv4/tcp_ipv4.c	2013-06-13 08:59:41.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/net/ipv4/tcp_ipv4.c	2013-01-16 00:15:57.000000000 +0000
-@@ -2037,6 +2037,12 @@ static void *listening_get_next(struct s
+diff --git a/net/ipv4/tcp_ipv4.c b/net/ipv4/tcp_ipv4.c
+index ae03b7b..7621ce0 100644
+--- a/net/ipv4/tcp_ipv4.c
++++ b/net/ipv4/tcp_ipv4.c
+@@ -2037,6 +2037,12 @@ static void *listening_get_next(struct seq_file *seq, void *cur)
  		req = req->dl_next;
  		while (1) {
  			while (req) {
@@ -24985,7 +25442,7 @@ diff -NurpP --minimal linux-3.4.48/net/ipv4/tcp_ipv4.c linux-3.4.48-vs2.3.3.9/ne
  		if (!net_eq(sock_net(sk), net))
  			continue;
  		if (sk->sk_family == st->family) {
-@@ -2137,6 +2147,11 @@ static void *established_get_first(struc
+@@ -2137,6 +2147,11 @@ static void *established_get_first(struct seq_file *seq)
  
  		spin_lock_bh(lock);
  		sk_nulls_for_each(sk, node, &tcp_hashinfo.ehash[st->bucket].chain) {
@@ -24997,7 +25454,7 @@ diff -NurpP --minimal linux-3.4.48/net/ipv4/tcp_ipv4.c linux-3.4.48-vs2.3.3.9/ne
  			if (sk->sk_family != st->family ||
  			    !net_eq(sock_net(sk), net)) {
  				continue;
-@@ -2147,6 +2162,11 @@ static void *established_get_first(struc
+@@ -2147,6 +2162,11 @@ static void *established_get_first(struct seq_file *seq)
  		st->state = TCP_SEQ_STATE_TIME_WAIT;
  		inet_twsk_for_each(tw, node,
  				   &tcp_hashinfo.ehash[st->bucket].twchain) {
@@ -25009,7 +25466,7 @@ diff -NurpP --minimal linux-3.4.48/net/ipv4/tcp_ipv4.c linux-3.4.48-vs2.3.3.9/ne
  			if (tw->tw_family != st->family ||
  			    !net_eq(twsk_net(tw), net)) {
  				continue;
-@@ -2176,7 +2196,9 @@ static void *established_get_next(struct
+@@ -2176,7 +2196,9 @@ static void *established_get_next(struct seq_file *seq, void *cur)
  		tw = cur;
  		tw = tw_next(tw);
  get_tw:
@@ -25032,7 +25489,7 @@ diff -NurpP --minimal linux-3.4.48/net/ipv4/tcp_ipv4.c linux-3.4.48-vs2.3.3.9/ne
  		if (sk->sk_family == st->family && net_eq(sock_net(sk), net))
  			goto found;
  	}
-@@ -2405,9 +2432,9 @@ static void get_openreq4(const struct so
+@@ -2405,9 +2432,9 @@ static void get_openreq4(const struct sock *sk, const struct request_sock *req,
  	seq_printf(f, "%4d: %08X:%04X %08X:%04X"
  		" %02X %08X:%08X %02X:%08lX %08X %5d %8d %u %d %pK%n",
  		i,
@@ -25044,7 +25501,7 @@ diff -NurpP --minimal linux-3.4.48/net/ipv4/tcp_ipv4.c linux-3.4.48-vs2.3.3.9/ne
  		ntohs(ireq->rmt_port),
  		TCP_SYN_RECV,
  		0, 0, /* could print option size, but that is af dependent. */
-@@ -2429,8 +2456,8 @@ static void get_tcp4_sock(struct sock *s
+@@ -2429,8 +2456,8 @@ static void get_tcp4_sock(struct sock *sk, struct seq_file *f, int i, int *len)
  	const struct tcp_sock *tp = tcp_sk(sk);
  	const struct inet_connection_sock *icsk = inet_csk(sk);
  	const struct inet_sock *inet = inet_sk(sk);
@@ -25055,7 +25512,7 @@ diff -NurpP --minimal linux-3.4.48/net/ipv4/tcp_ipv4.c linux-3.4.48-vs2.3.3.9/ne
  	__u16 destp = ntohs(inet->inet_dport);
  	__u16 srcp = ntohs(inet->inet_sport);
  	int rx_queue;
-@@ -2487,8 +2514,8 @@ static void get_timewait4_sock(const str
+@@ -2487,8 +2514,8 @@ static void get_timewait4_sock(const struct inet_timewait_sock *tw,
  	if (ttd < 0)
  		ttd = 0;
  
@@ -25066,9 +25523,10 @@ diff -NurpP --minimal linux-3.4.48/net/ipv4/tcp_ipv4.c linux-3.4.48-vs2.3.3.9/ne
  	destp = ntohs(tw->tw_dport);
  	srcp  = ntohs(tw->tw_sport);
  
-diff -NurpP --minimal linux-3.4.48/net/ipv4/tcp_minisocks.c linux-3.4.48-vs2.3.3.9/net/ipv4/tcp_minisocks.c
---- linux-3.4.48/net/ipv4/tcp_minisocks.c	2012-05-21 16:07:40.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/net/ipv4/tcp_minisocks.c	2012-05-21 16:15:05.000000000 +0000
+diff --git a/net/ipv4/tcp_minisocks.c b/net/ipv4/tcp_minisocks.c
+index 3cabafb..3a13a16 100644
+--- a/net/ipv4/tcp_minisocks.c
++++ b/net/ipv4/tcp_minisocks.c
 @@ -23,6 +23,9 @@
  #include <linux/slab.h>
  #include <linux/sysctl.h>
@@ -25079,7 +25537,7 @@ diff -NurpP --minimal linux-3.4.48/net/ipv4/tcp_minisocks.c linux-3.4.48-vs2.3.3
  #include <net/tcp.h>
  #include <net/inet_common.h>
  #include <net/xfrm.h>
-@@ -336,6 +339,11 @@ void tcp_time_wait(struct sock *sk, int
+@@ -336,6 +339,11 @@ void tcp_time_wait(struct sock *sk, int state, int timeo)
  		tcptw->tw_ts_recent	= tp->rx_opt.ts_recent;
  		tcptw->tw_ts_recent_stamp = tp->rx_opt.ts_recent_stamp;
  
@@ -25091,9 +25549,10 @@ diff -NurpP --minimal linux-3.4.48/net/ipv4/tcp_minisocks.c linux-3.4.48-vs2.3.3
  #if IS_ENABLED(CONFIG_IPV6)
  		if (tw->tw_family == PF_INET6) {
  			struct ipv6_pinfo *np = inet6_sk(sk);
-diff -NurpP --minimal linux-3.4.48/net/ipv4/udp.c linux-3.4.48-vs2.3.3.9/net/ipv4/udp.c
---- linux-3.4.48/net/ipv4/udp.c	2012-05-21 16:07:40.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/net/ipv4/udp.c	2012-06-28 14:45:36.000000000 +0000
+diff --git a/net/ipv4/udp.c b/net/ipv4/udp.c
+index 0b6136d..63eb580 100644
+--- a/net/ipv4/udp.c
++++ b/net/ipv4/udp.c
 @@ -298,14 +298,7 @@ fail:
  }
  EXPORT_SYMBOL(udp_lib_get_port);
@@ -25110,7 +25569,7 @@ diff -NurpP --minimal linux-3.4.48/net/ipv4/udp.c linux-3.4.48-vs2.3.3.9/net/ipv
  
  static unsigned int udp4_portaddr_hash(struct net *net, __be32 saddr,
  				       unsigned int port)
-@@ -340,6 +333,11 @@ static inline int compute_score(struct s
+@@ -340,6 +333,11 @@ static inline int compute_score(struct sock *sk, struct net *net, __be32 saddr,
  			if (inet->inet_rcv_saddr != daddr)
  				return -1;
  			score += 2;
@@ -25158,7 +25617,7 @@ diff -NurpP --minimal linux-3.4.48/net/ipv4/udp.c linux-3.4.48-vs2.3.3.9/net/ipv
  	rcu_read_unlock();
  	return result;
  }
-@@ -553,8 +559,7 @@ static inline struct sock *udp_v4_mcast_
+@@ -553,8 +559,7 @@ static inline struct sock *udp_v4_mcast_next(struct net *net, struct sock *sk,
  		    udp_sk(s)->udp_port_hash != hnum ||
  		    (inet->inet_daddr && inet->inet_daddr != rmt_addr) ||
  		    (inet->inet_dport != rmt_port && inet->inet_dport) ||
@@ -25168,7 +25627,7 @@ diff -NurpP --minimal linux-3.4.48/net/ipv4/udp.c linux-3.4.48-vs2.3.3.9/net/ipv
  		    ipv6_only_sock(s) ||
  		    (s->sk_bound_dev_if && s->sk_bound_dev_if != dif))
  			continue;
-@@ -933,6 +938,16 @@ int udp_sendmsg(struct kiocb *iocb, stru
+@@ -934,6 +939,16 @@ int udp_sendmsg(struct kiocb *iocb, struct sock *sk, struct msghdr *msg,
  				   inet_sk_flowi_flags(sk)|FLOWI_FLAG_CAN_SLEEP,
  				   faddr, saddr, dport, inet->inet_sport);
  
@@ -25185,7 +25644,7 @@ diff -NurpP --minimal linux-3.4.48/net/ipv4/udp.c linux-3.4.48-vs2.3.3.9/net/ipv
  		security_sk_classify_flow(sk, flowi4_to_flowi(fl4));
  		rt = ip_route_output_flow(net, fl4, sk);
  		if (IS_ERR(rt)) {
-@@ -1231,7 +1246,8 @@ try_again:
+@@ -1232,7 +1247,8 @@ try_again:
  	if (sin) {
  		sin->sin_family = AF_INET;
  		sin->sin_port = udp_hdr(skb)->source;
@@ -25195,7 +25654,7 @@ diff -NurpP --minimal linux-3.4.48/net/ipv4/udp.c linux-3.4.48-vs2.3.3.9/net/ipv
  		memset(sin->sin_zero, 0, sizeof(sin->sin_zero));
  	}
  	if (inet->cmsg_flags)
-@@ -1970,6 +1986,8 @@ static struct sock *udp_get_first(struct
+@@ -1971,6 +1987,8 @@ static struct sock *udp_get_first(struct seq_file *seq, int start)
  		sk_nulls_for_each(sk, node, &hslot->head) {
  			if (!net_eq(sock_net(sk), net))
  				continue;
@@ -25204,7 +25663,7 @@ diff -NurpP --minimal linux-3.4.48/net/ipv4/udp.c linux-3.4.48-vs2.3.3.9/net/ipv
  			if (sk->sk_family == state->family)
  				goto found;
  		}
-@@ -1987,7 +2005,9 @@ static struct sock *udp_get_next(struct
+@@ -1988,7 +2006,9 @@ static struct sock *udp_get_next(struct seq_file *seq, struct sock *sk)
  
  	do {
  		sk = sk_nulls_next(sk);
@@ -25215,7 +25674,7 @@ diff -NurpP --minimal linux-3.4.48/net/ipv4/udp.c linux-3.4.48-vs2.3.3.9/net/ipv
  
  	if (!sk) {
  		if (state->bucket <= state->udp_table->mask)
-@@ -2083,8 +2103,8 @@ static void udp4_format_sock(struct sock
+@@ -2084,8 +2104,8 @@ static void udp4_format_sock(struct sock *sp, struct seq_file *f,
  		int bucket, int *len)
  {
  	struct inet_sock *inet = inet_sk(sp);
@@ -25226,9 +25685,10 @@ diff -NurpP --minimal linux-3.4.48/net/ipv4/udp.c linux-3.4.48-vs2.3.3.9/net/ipv
  	__u16 destp	  = ntohs(inet->inet_dport);
  	__u16 srcp	  = ntohs(inet->inet_sport);
  
-diff -NurpP --minimal linux-3.4.48/net/ipv6/Kconfig linux-3.4.48-vs2.3.3.9/net/ipv6/Kconfig
---- linux-3.4.48/net/ipv6/Kconfig	2010-08-02 14:52:59.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/net/ipv6/Kconfig	2012-05-21 16:15:05.000000000 +0000
+diff --git a/net/ipv6/Kconfig b/net/ipv6/Kconfig
+index 36d7437..05f84bc 100644
+--- a/net/ipv6/Kconfig
++++ b/net/ipv6/Kconfig
 @@ -4,8 +4,8 @@
  
  #   IPv6 as module will cause a CRASH if you try to unload it
@@ -25240,9 +25700,10 @@ diff -NurpP --minimal linux-3.4.48/net/ipv6/Kconfig linux-3.4.48-vs2.3.3.9/net/i
  	---help---
  	  This is complemental support for the IP version 6.
  	  You will still be able to do traditional IPv4 networking as well.
-diff -NurpP --minimal linux-3.4.48/net/ipv6/addrconf.c linux-3.4.48-vs2.3.3.9/net/ipv6/addrconf.c
---- linux-3.4.48/net/ipv6/addrconf.c	2013-06-13 08:59:41.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/net/ipv6/addrconf.c	2013-06-13 09:46:39.000000000 +0000
+diff --git a/net/ipv6/addrconf.c b/net/ipv6/addrconf.c
+index d427f1b..a465a6e 100644
+--- a/net/ipv6/addrconf.c
++++ b/net/ipv6/addrconf.c
 @@ -88,6 +88,8 @@
  #include <linux/proc_fs.h>
  #include <linux/seq_file.h>
@@ -25261,7 +25722,7 @@ diff -NurpP --minimal linux-3.4.48/net/ipv6/addrconf.c linux-3.4.48-vs2.3.3.9/ne
  {
  	struct ipv6_saddr_score scores[2],
  				*score = &scores[0], *hiscore = &scores[1];
-@@ -1180,6 +1182,8 @@ int ipv6_dev_get_saddr(struct net *net,
+@@ -1180,6 +1182,8 @@ int ipv6_dev_get_saddr(struct net *net, struct net_device *dst_dev,
  					       dev->name);
  				continue;
  			}
@@ -25270,7 +25731,7 @@ diff -NurpP --minimal linux-3.4.48/net/ipv6/addrconf.c linux-3.4.48-vs2.3.3.9/ne
  
  			score->rule = -1;
  			bitmap_zero(score->scorebits, IPV6_SADDR_RULE_MAX);
-@@ -3166,7 +3170,10 @@ static void if6_seq_stop(struct seq_file
+@@ -3206,7 +3210,10 @@ static void if6_seq_stop(struct seq_file *seq, void *v)
  static int if6_seq_show(struct seq_file *seq, void *v)
  {
  	struct inet6_ifaddr *ifp = (struct inet6_ifaddr *)v;
@@ -25282,7 +25743,7 @@ diff -NurpP --minimal linux-3.4.48/net/ipv6/addrconf.c linux-3.4.48-vs2.3.3.9/ne
  		   &ifp->addr,
  		   ifp->idev->dev->ifindex,
  		   ifp->prefix_len,
-@@ -3672,6 +3679,11 @@ static int in6_dump_addrs(struct inet6_d
+@@ -3712,6 +3719,11 @@ static int in6_dump_addrs(struct inet6_dev *idev, struct sk_buff *skb,
  	struct ifacaddr6 *ifaca;
  	int err = 1;
  	int ip_idx = *p_ip_idx;
@@ -25294,7 +25755,7 @@ diff -NurpP --minimal linux-3.4.48/net/ipv6/addrconf.c linux-3.4.48-vs2.3.3.9/ne
  
  	read_lock_bh(&idev->lock);
  	switch (type) {
-@@ -3682,6 +3694,8 @@ static int in6_dump_addrs(struct inet6_d
+@@ -3722,6 +3734,8 @@ static int in6_dump_addrs(struct inet6_dev *idev, struct sk_buff *skb,
  		list_for_each_entry(ifa, &idev->addr_list, if_list) {
  			if (++ip_idx < s_ip_idx)
  				continue;
@@ -25303,7 +25764,7 @@ diff -NurpP --minimal linux-3.4.48/net/ipv6/addrconf.c linux-3.4.48-vs2.3.3.9/ne
  			err = inet6_fill_ifaddr(skb, ifa,
  						NETLINK_CB(cb->skb).pid,
  						cb->nlh->nlmsg_seq,
-@@ -3698,6 +3712,8 @@ static int in6_dump_addrs(struct inet6_d
+@@ -3738,6 +3752,8 @@ static int in6_dump_addrs(struct inet6_dev *idev, struct sk_buff *skb,
  		     ifmca = ifmca->next, ip_idx++) {
  			if (ip_idx < s_ip_idx)
  				continue;
@@ -25312,7 +25773,7 @@ diff -NurpP --minimal linux-3.4.48/net/ipv6/addrconf.c linux-3.4.48-vs2.3.3.9/ne
  			err = inet6_fill_ifmcaddr(skb, ifmca,
  						  NETLINK_CB(cb->skb).pid,
  						  cb->nlh->nlmsg_seq,
-@@ -3713,6 +3729,8 @@ static int in6_dump_addrs(struct inet6_d
+@@ -3753,6 +3769,8 @@ static int in6_dump_addrs(struct inet6_dev *idev, struct sk_buff *skb,
  		     ifaca = ifaca->aca_next, ip_idx++) {
  			if (ip_idx < s_ip_idx)
  				continue;
@@ -25321,7 +25782,7 @@ diff -NurpP --minimal linux-3.4.48/net/ipv6/addrconf.c linux-3.4.48-vs2.3.3.9/ne
  			err = inet6_fill_ifacaddr(skb, ifaca,
  						  NETLINK_CB(cb->skb).pid,
  						  cb->nlh->nlmsg_seq,
-@@ -4098,6 +4116,11 @@ static int inet6_dump_ifinfo(struct sk_b
+@@ -4138,6 +4156,11 @@ static int inet6_dump_ifinfo(struct sk_buff *skb, struct netlink_callback *cb)
  	struct inet6_dev *idev;
  	struct hlist_head *head;
  	struct hlist_node *node;
@@ -25333,7 +25794,7 @@ diff -NurpP --minimal linux-3.4.48/net/ipv6/addrconf.c linux-3.4.48-vs2.3.3.9/ne
  
  	s_h = cb->args[0];
  	s_idx = cb->args[1];
-@@ -4109,6 +4132,8 @@ static int inet6_dump_ifinfo(struct sk_b
+@@ -4149,6 +4172,8 @@ static int inet6_dump_ifinfo(struct sk_buff *skb, struct netlink_callback *cb)
  		hlist_for_each_entry_rcu(dev, node, head, index_hlist) {
  			if (idx < s_idx)
  				goto cont;
@@ -25342,9 +25803,10 @@ diff -NurpP --minimal linux-3.4.48/net/ipv6/addrconf.c linux-3.4.48-vs2.3.3.9/ne
  			idev = __in6_dev_get(dev);
  			if (!idev)
  				goto cont;
-diff -NurpP --minimal linux-3.4.48/net/ipv6/af_inet6.c linux-3.4.48-vs2.3.3.9/net/ipv6/af_inet6.c
---- linux-3.4.48/net/ipv6/af_inet6.c	2012-05-21 16:07:40.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/net/ipv6/af_inet6.c	2012-09-01 09:15:04.000000000 +0000
+diff --git a/net/ipv6/af_inet6.c b/net/ipv6/af_inet6.c
+index 8ed1b93..716c4c5 100644
+--- a/net/ipv6/af_inet6.c
++++ b/net/ipv6/af_inet6.c
 @@ -42,6 +42,8 @@
  #include <linux/netdevice.h>
  #include <linux/icmpv6.h>
@@ -25368,7 +25830,7 @@ diff -NurpP --minimal linux-3.4.48/net/ipv6/af_inet6.c linux-3.4.48-vs2.3.3.9/ne
  	sock->ops = answer->ops;
  	answer_prot = answer->prot;
  	answer_no_check = answer->no_check;
-@@ -261,6 +266,7 @@ int inet6_bind(struct socket *sock, stru
+@@ -261,6 +266,7 @@ int inet6_bind(struct socket *sock, struct sockaddr *uaddr, int addr_len)
  	struct inet_sock *inet = inet_sk(sk);
  	struct ipv6_pinfo *np = inet6_sk(sk);
  	struct net *net = sock_net(sk);
@@ -25376,7 +25838,7 @@ diff -NurpP --minimal linux-3.4.48/net/ipv6/af_inet6.c linux-3.4.48-vs2.3.3.9/ne
  	__be32 v4addr = 0;
  	unsigned short snum;
  	int addr_type = 0;
-@@ -276,6 +282,10 @@ int inet6_bind(struct socket *sock, stru
+@@ -276,6 +282,10 @@ int inet6_bind(struct socket *sock, struct sockaddr *uaddr, int addr_len)
  	if (addr->sin6_family != AF_INET6)
  		return -EAFNOSUPPORT;
  
@@ -25387,7 +25849,7 @@ diff -NurpP --minimal linux-3.4.48/net/ipv6/af_inet6.c linux-3.4.48-vs2.3.3.9/ne
  	addr_type = ipv6_addr_type(&addr->sin6_addr);
  	if ((addr_type & IPV6_ADDR_MULTICAST) && sock->type == SOCK_STREAM)
  		return -EINVAL;
-@@ -307,6 +317,7 @@ int inet6_bind(struct socket *sock, stru
+@@ -307,6 +317,7 @@ int inet6_bind(struct socket *sock, struct sockaddr *uaddr, int addr_len)
  		/* Reproduce AF_INET checks to make the bindings consistent */
  		v4addr = addr->sin6_addr.s6_addr32[3];
  		chk_addr_ret = inet_addr_type(net, v4addr);
@@ -25395,7 +25857,7 @@ diff -NurpP --minimal linux-3.4.48/net/ipv6/af_inet6.c linux-3.4.48-vs2.3.3.9/ne
  		if (!sysctl_ip_nonlocal_bind &&
  		    !(inet->freebind || inet->transparent) &&
  		    v4addr != htonl(INADDR_ANY) &&
-@@ -316,6 +327,10 @@ int inet6_bind(struct socket *sock, stru
+@@ -316,6 +327,10 @@ int inet6_bind(struct socket *sock, struct sockaddr *uaddr, int addr_len)
  			err = -EADDRNOTAVAIL;
  			goto out;
  		}
@@ -25406,7 +25868,7 @@ diff -NurpP --minimal linux-3.4.48/net/ipv6/af_inet6.c linux-3.4.48-vs2.3.3.9/ne
  	} else {
  		if (addr_type != IPV6_ADDR_ANY) {
  			struct net_device *dev = NULL;
-@@ -342,6 +357,11 @@ int inet6_bind(struct socket *sock, stru
+@@ -342,6 +357,11 @@ int inet6_bind(struct socket *sock, struct sockaddr *uaddr, int addr_len)
  				}
  			}
  
@@ -25418,7 +25880,7 @@ diff -NurpP --minimal linux-3.4.48/net/ipv6/af_inet6.c linux-3.4.48-vs2.3.3.9/ne
  			/* ipv4 addr of the socket is invalid.  Only the
  			 * unspecified and mapped address have a v4 equivalent.
  			 */
-@@ -358,6 +378,9 @@ int inet6_bind(struct socket *sock, stru
+@@ -358,6 +378,9 @@ int inet6_bind(struct socket *sock, struct sockaddr *uaddr, int addr_len)
  		}
  	}
  
@@ -25428,7 +25890,7 @@ diff -NurpP --minimal linux-3.4.48/net/ipv6/af_inet6.c linux-3.4.48-vs2.3.3.9/ne
  	inet->inet_rcv_saddr = v4addr;
  	inet->inet_saddr = v4addr;
  
-@@ -459,9 +482,11 @@ int inet6_getname(struct socket *sock, s
+@@ -459,9 +482,11 @@ int inet6_getname(struct socket *sock, struct sockaddr *uaddr,
  			return -ENOTCONN;
  		sin->sin6_port = inet->inet_dport;
  		sin->sin6_addr = np->daddr;
@@ -25440,10 +25902,11 @@ diff -NurpP --minimal linux-3.4.48/net/ipv6/af_inet6.c linux-3.4.48-vs2.3.3.9/ne
  		if (ipv6_addr_any(&np->rcv_saddr))
  			sin->sin6_addr = np->saddr;
  		else
-diff -NurpP --minimal linux-3.4.48/net/ipv6/datagram.c linux-3.4.48-vs2.3.3.9/net/ipv6/datagram.c
---- linux-3.4.48/net/ipv6/datagram.c	2012-05-21 16:07:40.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/net/ipv6/datagram.c	2012-05-21 16:15:05.000000000 +0000
-@@ -642,7 +642,7 @@ int datagram_send_ctl(struct net *net, s
+diff --git a/net/ipv6/datagram.c b/net/ipv6/datagram.c
+index 76832c8..8e26750 100644
+--- a/net/ipv6/datagram.c
++++ b/net/ipv6/datagram.c
+@@ -642,7 +642,7 @@ int datagram_send_ctl(struct net *net, struct sock *sk,
  
  			rcu_read_lock();
  			if (fl6->flowi6_oif) {
@@ -25452,10 +25915,11 @@ diff -NurpP --minimal linux-3.4.48/net/ipv6/datagram.c linux-3.4.48-vs2.3.3.9/ne
  				if (!dev) {
  					rcu_read_unlock();
  					return -ENODEV;
-diff -NurpP --minimal linux-3.4.48/net/ipv6/fib6_rules.c linux-3.4.48-vs2.3.3.9/net/ipv6/fib6_rules.c
---- linux-3.4.48/net/ipv6/fib6_rules.c	2012-03-19 18:47:33.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/net/ipv6/fib6_rules.c	2012-05-21 16:15:05.000000000 +0000
-@@ -91,7 +91,7 @@ static int fib6_rule_action(struct fib_r
+diff --git a/net/ipv6/fib6_rules.c b/net/ipv6/fib6_rules.c
+index b6c5731..de4b61b 100644
+--- a/net/ipv6/fib6_rules.c
++++ b/net/ipv6/fib6_rules.c
+@@ -91,7 +91,7 @@ static int fib6_rule_action(struct fib_rule *rule, struct flowi *flp,
  					       ip6_dst_idev(&rt->dst)->dev,
  					       &flp6->daddr,
  					       rt6_flags2srcprefs(flags),
@@ -25464,9 +25928,10 @@ diff -NurpP --minimal linux-3.4.48/net/ipv6/fib6_rules.c linux-3.4.48-vs2.3.3.9/
  				goto again;
  			if (!ipv6_prefix_equal(&saddr, &r->src.addr,
  					       r->src.plen))
-diff -NurpP --minimal linux-3.4.48/net/ipv6/inet6_hashtables.c linux-3.4.48-vs2.3.3.9/net/ipv6/inet6_hashtables.c
---- linux-3.4.48/net/ipv6/inet6_hashtables.c	2011-10-24 16:45:34.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/net/ipv6/inet6_hashtables.c	2012-05-21 16:15:05.000000000 +0000
+diff --git a/net/ipv6/inet6_hashtables.c b/net/ipv6/inet6_hashtables.c
+index 73f1a00..a6196c7 100644
+--- a/net/ipv6/inet6_hashtables.c
++++ b/net/ipv6/inet6_hashtables.c
 @@ -16,6 +16,7 @@
  
  #include <linux/module.h>
@@ -25475,7 +25940,7 @@ diff -NurpP --minimal linux-3.4.48/net/ipv6/inet6_hashtables.c linux-3.4.48-vs2.
  
  #include <net/inet_connection_sock.h>
  #include <net/inet_hashtables.h>
-@@ -83,7 +84,6 @@ struct sock *__inet6_lookup_established(
+@@ -83,7 +84,6 @@ struct sock *__inet6_lookup_established(struct net *net,
  	unsigned int slot = hash & hashinfo->ehash_mask;
  	struct inet_ehash_bucket *head = &hashinfo->ehash[slot];
  
@@ -25492,7 +25957,7 @@ diff -NurpP --minimal linux-3.4.48/net/ipv6/inet6_hashtables.c linux-3.4.48-vs2.
  		}
  	}
  	if (get_nulls_value(node) != slot)
-@@ -141,6 +141,9 @@ static inline int compute_score(struct s
+@@ -141,6 +141,9 @@ static inline int compute_score(struct sock *sk, struct net *net,
  			if (!ipv6_addr_equal(&np->rcv_saddr, daddr))
  				return -1;
  			score++;
@@ -25502,10 +25967,11 @@ diff -NurpP --minimal linux-3.4.48/net/ipv6/inet6_hashtables.c linux-3.4.48-vs2.
  		}
  		if (sk->sk_bound_dev_if) {
  			if (sk->sk_bound_dev_if != dif)
-diff -NurpP --minimal linux-3.4.48/net/ipv6/ip6_output.c linux-3.4.48-vs2.3.3.9/net/ipv6/ip6_output.c
---- linux-3.4.48/net/ipv6/ip6_output.c	2013-06-13 08:59:41.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/net/ipv6/ip6_output.c	2013-02-19 14:42:56.000000000 +0000
-@@ -966,7 +966,8 @@ static int ip6_dst_lookup_tail(struct so
+diff --git a/net/ipv6/ip6_output.c b/net/ipv6/ip6_output.c
+index d6b9d56..abc7da9 100644
+--- a/net/ipv6/ip6_output.c
++++ b/net/ipv6/ip6_output.c
+@@ -972,7 +972,8 @@ static int ip6_dst_lookup_tail(struct sock *sk,
  		struct rt6_info *rt = (struct rt6_info *) *dst;
  		err = ip6_route_get_saddr(net, rt, &fl6->daddr,
  					  sk ? inet6_sk(sk)->srcprefs : 0,
@@ -25515,10 +25981,11 @@ diff -NurpP --minimal linux-3.4.48/net/ipv6/ip6_output.c linux-3.4.48-vs2.3.3.9/
  		if (err)
  			goto out_err_release;
  	}
-diff -NurpP --minimal linux-3.4.48/net/ipv6/ndisc.c linux-3.4.48-vs2.3.3.9/net/ipv6/ndisc.c
---- linux-3.4.48/net/ipv6/ndisc.c	2013-06-13 08:59:41.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/net/ipv6/ndisc.c	2012-11-18 23:52:30.000000000 +0000
-@@ -575,7 +575,7 @@ static void ndisc_send_na(struct net_dev
+diff --git a/net/ipv6/ndisc.c b/net/ipv6/ndisc.c
+index 843d6eb..9196d19 100644
+--- a/net/ipv6/ndisc.c
++++ b/net/ipv6/ndisc.c
+@@ -575,7 +575,7 @@ static void ndisc_send_na(struct net_device *dev, struct neighbour *neigh,
  	} else {
  		if (ipv6_dev_get_saddr(dev_net(dev), dev, daddr,
  				       inet6_sk(dev_net(dev)->ipv6.ndisc_sk)->srcprefs,
@@ -25527,9 +25994,10 @@ diff -NurpP --minimal linux-3.4.48/net/ipv6/ndisc.c linux-3.4.48-vs2.3.3.9/net/i
  			return;
  		src_addr = &tmpaddr;
  	}
-diff -NurpP --minimal linux-3.4.48/net/ipv6/raw.c linux-3.4.48-vs2.3.3.9/net/ipv6/raw.c
---- linux-3.4.48/net/ipv6/raw.c	2013-06-13 08:59:41.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/net/ipv6/raw.c	2012-10-22 13:09:53.000000000 +0000
+diff --git a/net/ipv6/raw.c b/net/ipv6/raw.c
+index 3ee2870..3b549ff 100644
+--- a/net/ipv6/raw.c
++++ b/net/ipv6/raw.c
 @@ -30,6 +30,7 @@
  #include <linux/icmpv6.h>
  #include <linux/netfilter.h>
@@ -25538,7 +26006,7 @@ diff -NurpP --minimal linux-3.4.48/net/ipv6/raw.c linux-3.4.48-vs2.3.3.9/net/ipv
  #include <linux/skbuff.h>
  #include <linux/compat.h>
  #include <asm/uaccess.h>
-@@ -284,6 +285,13 @@ static int rawv6_bind(struct sock *sk, s
+@@ -284,6 +285,13 @@ static int rawv6_bind(struct sock *sk, struct sockaddr *uaddr, int addr_len)
  				goto out_unlock;
  		}
  
@@ -25552,9 +26020,10 @@ diff -NurpP --minimal linux-3.4.48/net/ipv6/raw.c linux-3.4.48-vs2.3.3.9/net/ipv
  		/* ipv4 addr of the socket is invalid.  Only the
  		 * unspecified and mapped address have a v4 equivalent.
  		 */
-diff -NurpP --minimal linux-3.4.48/net/ipv6/route.c linux-3.4.48-vs2.3.3.9/net/ipv6/route.c
---- linux-3.4.48/net/ipv6/route.c	2013-06-13 08:59:41.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/net/ipv6/route.c	2013-03-30 21:29:17.000000000 +0000
+diff --git a/net/ipv6/route.c b/net/ipv6/route.c
+index 016ed7c..16375c0 100644
+--- a/net/ipv6/route.c
++++ b/net/ipv6/route.c
 @@ -55,6 +55,7 @@
  #include <net/xfrm.h>
  #include <net/netevent.h>
@@ -25563,7 +26032,7 @@ diff -NurpP --minimal linux-3.4.48/net/ipv6/route.c linux-3.4.48-vs2.3.3.9/net/i
  
  #include <asm/uaccess.h>
  
-@@ -2147,15 +2148,17 @@ int ip6_route_get_saddr(struct net *net,
+@@ -2150,15 +2151,17 @@ int ip6_route_get_saddr(struct net *net,
  			struct rt6_info *rt,
  			const struct in6_addr *daddr,
  			unsigned int prefs,
@@ -25584,7 +26053,7 @@ diff -NurpP --minimal linux-3.4.48/net/ipv6/route.c linux-3.4.48-vs2.3.3.9/net/i
  	return err;
  }
  
-@@ -2486,7 +2489,8 @@ static int rt6_fill_node(struct net *net
+@@ -2489,7 +2492,8 @@ static int rt6_fill_node(struct net *net,
  			NLA_PUT_U32(skb, RTA_IIF, iif);
  	} else if (dst) {
  		struct in6_addr saddr_buf;
@@ -25594,7 +26063,7 @@ diff -NurpP --minimal linux-3.4.48/net/ipv6/route.c linux-3.4.48-vs2.3.3.9/net/i
  			NLA_PUT(skb, RTA_PREFSRC, 16, &saddr_buf);
  	}
  
-@@ -2713,6 +2717,7 @@ static int rt6_info_route(struct rt6_inf
+@@ -2716,6 +2720,7 @@ static int rt6_info_route(struct rt6_info *rt, void *p_arg)
  	struct seq_file *m = p_arg;
  	struct neighbour *n;
  
@@ -25602,9 +26071,10 @@ diff -NurpP --minimal linux-3.4.48/net/ipv6/route.c linux-3.4.48-vs2.3.3.9/net/i
  	seq_printf(m, "%pi6 %02x ", &rt->rt6i_dst.addr, rt->rt6i_dst.plen);
  
  #ifdef CONFIG_IPV6_SUBTREES
-diff -NurpP --minimal linux-3.4.48/net/ipv6/tcp_ipv6.c linux-3.4.48-vs2.3.3.9/net/ipv6/tcp_ipv6.c
---- linux-3.4.48/net/ipv6/tcp_ipv6.c	2013-06-13 08:59:41.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/net/ipv6/tcp_ipv6.c	2013-01-16 00:15:57.000000000 +0000
+diff --git a/net/ipv6/tcp_ipv6.c b/net/ipv6/tcp_ipv6.c
+index 7ee7121..4c44785 100644
+--- a/net/ipv6/tcp_ipv6.c
++++ b/net/ipv6/tcp_ipv6.c
 @@ -71,6 +71,7 @@
  
  #include <linux/crypto.h>
@@ -25613,7 +26083,7 @@ diff -NurpP --minimal linux-3.4.48/net/ipv6/tcp_ipv6.c linux-3.4.48-vs2.3.3.9/ne
  
  static void	tcp_v6_send_reset(struct sock *sk, struct sk_buff *skb);
  static void	tcp_v6_reqsk_send_ack(struct sock *sk, struct sk_buff *skb,
-@@ -163,8 +164,15 @@ static int tcp_v6_connect(struct sock *s
+@@ -163,8 +164,15 @@ static int tcp_v6_connect(struct sock *sk, struct sockaddr *uaddr,
  	 *	connect() to INADDR_ANY means loopback (BSD'ism).
  	 */
  
@@ -25631,9 +26101,10 @@ diff -NurpP --minimal linux-3.4.48/net/ipv6/tcp_ipv6.c linux-3.4.48-vs2.3.3.9/ne
  
  	addr_type = ipv6_addr_type(&usin->sin6_addr);
  
-diff -NurpP --minimal linux-3.4.48/net/ipv6/udp.c linux-3.4.48-vs2.3.3.9/net/ipv6/udp.c
---- linux-3.4.48/net/ipv6/udp.c	2012-05-21 16:07:40.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/net/ipv6/udp.c	2012-05-21 16:15:05.000000000 +0000
+diff --git a/net/ipv6/udp.c b/net/ipv6/udp.c
+index f79bfdb..18c5ac9 100644
+--- a/net/ipv6/udp.c
++++ b/net/ipv6/udp.c
 @@ -45,41 +45,67 @@
  #include <net/tcp_states.h>
  #include <net/ip6_checksum.h>
@@ -25715,7 +26186,7 @@ diff -NurpP --minimal linux-3.4.48/net/ipv6/udp.c linux-3.4.48-vs2.3.3.9/net/ipv
  }
  
  static unsigned int udp6_portaddr_hash(struct net *net,
-@@ -143,6 +169,10 @@ static inline int compute_score(struct s
+@@ -143,6 +169,10 @@ static inline int compute_score(struct sock *sk, struct net *net,
  			if (!ipv6_addr_equal(&np->rcv_saddr, daddr))
  				return -1;
  			score++;
@@ -25726,10 +26197,11 @@ diff -NurpP --minimal linux-3.4.48/net/ipv6/udp.c linux-3.4.48-vs2.3.3.9/net/ipv
  		}
  		if (!ipv6_addr_any(&np->daddr)) {
  			if (!ipv6_addr_equal(&np->daddr, saddr))
-diff -NurpP --minimal linux-3.4.48/net/ipv6/xfrm6_policy.c linux-3.4.48-vs2.3.3.9/net/ipv6/xfrm6_policy.c
---- linux-3.4.48/net/ipv6/xfrm6_policy.c	2012-03-19 18:47:33.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/net/ipv6/xfrm6_policy.c	2012-05-21 16:15:05.000000000 +0000
-@@ -63,7 +63,7 @@ static int xfrm6_get_saddr(struct net *n
+diff --git a/net/ipv6/xfrm6_policy.c b/net/ipv6/xfrm6_policy.c
+index 808fd08..b8ca90a 100644
+--- a/net/ipv6/xfrm6_policy.c
++++ b/net/ipv6/xfrm6_policy.c
+@@ -63,7 +63,7 @@ static int xfrm6_get_saddr(struct net *net,
  	dev = ip6_dst_idev(dst)->dev;
  	ipv6_dev_get_saddr(dev_net(dev), dev,
  			   (struct in6_addr *)&daddr->a6, 0,
@@ -25738,10 +26210,11 @@ diff -NurpP --minimal linux-3.4.48/net/ipv6/xfrm6_policy.c linux-3.4.48-vs2.3.3.
  	dst_release(dst);
  	return 0;
  }
-diff -NurpP --minimal linux-3.4.48/net/netfilter/ipvs/ip_vs_xmit.c linux-3.4.48-vs2.3.3.9/net/netfilter/ipvs/ip_vs_xmit.c
---- linux-3.4.48/net/netfilter/ipvs/ip_vs_xmit.c	2012-03-19 18:47:33.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/net/netfilter/ipvs/ip_vs_xmit.c	2012-05-21 16:15:05.000000000 +0000
-@@ -226,7 +226,7 @@ __ip_vs_route_output_v6(struct net *net,
+diff --git a/net/netfilter/ipvs/ip_vs_xmit.c b/net/netfilter/ipvs/ip_vs_xmit.c
+index 7fd66de..5674a76 100644
+--- a/net/netfilter/ipvs/ip_vs_xmit.c
++++ b/net/netfilter/ipvs/ip_vs_xmit.c
+@@ -226,7 +226,7 @@ __ip_vs_route_output_v6(struct net *net, struct in6_addr *daddr,
  		return dst;
  	if (ipv6_addr_any(&fl6.saddr) &&
  	    ipv6_dev_get_saddr(net, ip6_dst_idev(dst)->dev,
@@ -25750,9 +26223,10 @@ diff -NurpP --minimal linux-3.4.48/net/netfilter/ipvs/ip_vs_xmit.c linux-3.4.48-
  		goto out_err;
  	if (do_xfrm) {
  		dst = xfrm_lookup(net, dst, flowi6_to_flowi(&fl6), NULL, 0);
-diff -NurpP --minimal linux-3.4.48/net/netlink/af_netlink.c linux-3.4.48-vs2.3.3.9/net/netlink/af_netlink.c
---- linux-3.4.48/net/netlink/af_netlink.c	2013-06-13 08:59:42.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/net/netlink/af_netlink.c	2012-11-18 23:52:30.000000000 +0000
+diff --git a/net/netlink/af_netlink.c b/net/netlink/af_netlink.c
+index 9017e3e..90711f9 100644
+--- a/net/netlink/af_netlink.c
++++ b/net/netlink/af_netlink.c
 @@ -55,6 +55,9 @@
  #include <linux/types.h>
  #include <linux/audit.h>
@@ -25763,7 +26237,7 @@ diff -NurpP --minimal linux-3.4.48/net/netlink/af_netlink.c linux-3.4.48-vs2.3.3
  
  #include <net/net_namespace.h>
  #include <net/sock.h>
-@@ -1951,6 +1954,8 @@ static struct sock *netlink_seq_socket_i
+@@ -1951,6 +1954,8 @@ static struct sock *netlink_seq_socket_idx(struct seq_file *seq, loff_t pos)
  			sk_for_each(s, node, &hash->table[j]) {
  				if (sock_net(s) != seq_file_net(seq))
  					continue;
@@ -25772,7 +26246,7 @@ diff -NurpP --minimal linux-3.4.48/net/netlink/af_netlink.c linux-3.4.48-vs2.3.3
  				if (off == pos) {
  					iter->link = i;
  					iter->hash_idx = j;
-@@ -1985,7 +1990,8 @@ static void *netlink_seq_next(struct seq
+@@ -1985,7 +1990,8 @@ static void *netlink_seq_next(struct seq_file *seq, void *v, loff_t *pos)
  	s = v;
  	do {
  		s = sk_next(s);
@@ -25782,7 +26256,7 @@ diff -NurpP --minimal linux-3.4.48/net/netlink/af_netlink.c linux-3.4.48-vs2.3.3
  	if (s)
  		return s;
  
-@@ -1997,7 +2003,8 @@ static void *netlink_seq_next(struct seq
+@@ -1997,7 +2003,8 @@ static void *netlink_seq_next(struct seq_file *seq, void *v, loff_t *pos)
  
  		for (; j <= hash->mask; j++) {
  			s = sk_head(&hash->table[j]);
@@ -25792,9 +26266,10 @@ diff -NurpP --minimal linux-3.4.48/net/netlink/af_netlink.c linux-3.4.48-vs2.3.3
  				s = sk_next(s);
  			if (s) {
  				iter->link = i;
-diff -NurpP --minimal linux-3.4.48/net/socket.c linux-3.4.48-vs2.3.3.9/net/socket.c
---- linux-3.4.48/net/socket.c	2013-06-13 08:59:42.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/net/socket.c	2012-10-22 13:09:53.000000000 +0000
+diff --git a/net/socket.c b/net/socket.c
+index 47ce3ea..4f0a342 100644
+--- a/net/socket.c
++++ b/net/socket.c
 @@ -98,6 +98,10 @@
  
  #include <net/sock.h>
@@ -25806,7 +26281,7 @@ diff -NurpP --minimal linux-3.4.48/net/socket.c linux-3.4.48-vs2.3.3.9/net/socke
  
  #include <linux/if_tun.h>
  #include <linux/ipv6_route.h>
-@@ -551,6 +555,7 @@ static inline int __sock_sendmsg_nosec(s
+@@ -551,6 +555,7 @@ static inline int __sock_sendmsg_nosec(struct kiocb *iocb, struct socket *sock,
  				       struct msghdr *msg, size_t size)
  {
  	struct sock_iocb *si = kiocb_to_siocb(iocb);
@@ -25814,7 +26289,7 @@ diff -NurpP --minimal linux-3.4.48/net/socket.c linux-3.4.48-vs2.3.3.9/net/socke
  
  	sock_update_classid(sock->sk);
  
-@@ -561,7 +566,22 @@ static inline int __sock_sendmsg_nosec(s
+@@ -561,7 +566,22 @@ static inline int __sock_sendmsg_nosec(struct kiocb *iocb, struct socket *sock,
  	si->msg = msg;
  	si->size = size;
  
@@ -25838,7 +26313,7 @@ diff -NurpP --minimal linux-3.4.48/net/socket.c linux-3.4.48-vs2.3.3.9/net/socke
  }
  
  static inline int __sock_sendmsg(struct kiocb *iocb, struct socket *sock,
-@@ -717,6 +737,7 @@ static inline int __sock_recvmsg_nosec(s
+@@ -717,6 +737,7 @@ static inline int __sock_recvmsg_nosec(struct kiocb *iocb, struct socket *sock,
  				       struct msghdr *msg, size_t size, int flags)
  {
  	struct sock_iocb *si = kiocb_to_siocb(iocb);
@@ -25846,7 +26321,7 @@ diff -NurpP --minimal linux-3.4.48/net/socket.c linux-3.4.48-vs2.3.3.9/net/socke
  
  	sock_update_classid(sock->sk);
  
-@@ -726,7 +747,18 @@ static inline int __sock_recvmsg_nosec(s
+@@ -726,7 +747,18 @@ static inline int __sock_recvmsg_nosec(struct kiocb *iocb, struct socket *sock,
  	si->size = size;
  	si->flags = flags;
  
@@ -25866,7 +26341,7 @@ diff -NurpP --minimal linux-3.4.48/net/socket.c linux-3.4.48-vs2.3.3.9/net/socke
  }
  
  static inline int __sock_recvmsg(struct kiocb *iocb, struct socket *sock,
-@@ -1211,6 +1243,13 @@ int __sock_create(struct net *net, int f
+@@ -1211,6 +1243,13 @@ int __sock_create(struct net *net, int family, int type, int protocol,
  	if (type < 0 || type >= SOCK_MAX)
  		return -EINVAL;
  
@@ -25880,7 +26355,7 @@ diff -NurpP --minimal linux-3.4.48/net/socket.c linux-3.4.48-vs2.3.3.9/net/socke
  	/* Compatibility.
  
  	   This uglymoron is moved from INET layer to here to avoid
-@@ -1346,6 +1385,7 @@ SYSCALL_DEFINE3(socket, int, family, int
+@@ -1346,6 +1385,7 @@ SYSCALL_DEFINE3(socket, int, family, int, type, int, protocol)
  	if (retval < 0)
  		goto out;
  
@@ -25888,7 +26363,7 @@ diff -NurpP --minimal linux-3.4.48/net/socket.c linux-3.4.48-vs2.3.3.9/net/socke
  	retval = sock_map_fd(sock, flags & (O_CLOEXEC | O_NONBLOCK));
  	if (retval < 0)
  		goto out_release;
-@@ -1387,10 +1427,12 @@ SYSCALL_DEFINE4(socketpair, int, family,
+@@ -1387,10 +1427,12 @@ SYSCALL_DEFINE4(socketpair, int, family, int, type, int, protocol,
  	err = sock_create(family, type, protocol, &sock1);
  	if (err < 0)
  		goto out;
@@ -25901,9 +26376,10 @@ diff -NurpP --minimal linux-3.4.48/net/socket.c linux-3.4.48-vs2.3.3.9/net/socke
  
  	err = sock1->ops->socketpair(sock1, sock2);
  	if (err < 0)
-diff -NurpP --minimal linux-3.4.48/net/sunrpc/auth.c linux-3.4.48-vs2.3.3.9/net/sunrpc/auth.c
---- linux-3.4.48/net/sunrpc/auth.c	2011-10-24 16:45:34.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/net/sunrpc/auth.c	2012-05-21 16:15:05.000000000 +0000
+diff --git a/net/sunrpc/auth.c b/net/sunrpc/auth.c
+index 727e506..97e2387 100644
+--- a/net/sunrpc/auth.c
++++ b/net/sunrpc/auth.c
 @@ -14,6 +14,7 @@
  #include <linux/hash.h>
  #include <linux/sunrpc/clnt.h>
@@ -25912,7 +26388,7 @@ diff -NurpP --minimal linux-3.4.48/net/sunrpc/auth.c linux-3.4.48-vs2.3.3.9/net/
  
  #ifdef RPC_DEBUG
  # define RPCDBG_FACILITY	RPCDBG_AUTH
-@@ -427,6 +428,7 @@ rpcauth_lookupcred(struct rpc_auth *auth
+@@ -427,6 +428,7 @@ rpcauth_lookupcred(struct rpc_auth *auth, int flags)
  	memset(&acred, 0, sizeof(acred));
  	acred.uid = cred->fsuid;
  	acred.gid = cred->fsgid;
@@ -25920,7 +26396,7 @@ diff -NurpP --minimal linux-3.4.48/net/sunrpc/auth.c linux-3.4.48-vs2.3.3.9/net/
  	acred.group_info = get_group_info(((struct cred *)cred)->group_info);
  
  	ret = auth->au_ops->lookup_cred(auth, &acred, flags);
-@@ -467,6 +469,7 @@ rpcauth_bind_root_cred(struct rpc_task *
+@@ -467,6 +469,7 @@ rpcauth_bind_root_cred(struct rpc_task *task, int lookupflags)
  	struct auth_cred acred = {
  		.uid = 0,
  		.gid = 0,
@@ -25928,9 +26404,10 @@ diff -NurpP --minimal linux-3.4.48/net/sunrpc/auth.c linux-3.4.48-vs2.3.3.9/net/
  	};
  
  	dprintk("RPC: %5u looking up %s cred\n",
-diff -NurpP --minimal linux-3.4.48/net/sunrpc/auth_unix.c linux-3.4.48-vs2.3.3.9/net/sunrpc/auth_unix.c
---- linux-3.4.48/net/sunrpc/auth_unix.c	2012-01-09 15:15:04.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/net/sunrpc/auth_unix.c	2012-05-21 16:15:05.000000000 +0000
+diff --git a/net/sunrpc/auth_unix.c b/net/sunrpc/auth_unix.c
+index e50502d..f5980fc 100644
+--- a/net/sunrpc/auth_unix.c
++++ b/net/sunrpc/auth_unix.c
 @@ -12,12 +12,14 @@
  #include <linux/module.h>
  #include <linux/sunrpc/clnt.h>
@@ -25946,7 +26423,7 @@ diff -NurpP --minimal linux-3.4.48/net/sunrpc/auth_unix.c linux-3.4.48-vs2.3.3.9
  	gid_t			uc_gids[NFS_NGROUPS];
  };
  #define uc_uid			uc_base.cr_uid
-@@ -78,6 +80,7 @@ unx_create_cred(struct rpc_auth *auth, s
+@@ -78,6 +80,7 @@ unx_create_cred(struct rpc_auth *auth, struct auth_cred *acred, int flags)
  		groups = NFS_NGROUPS;
  
  	cred->uc_gid = acred->gid;
@@ -25954,7 +26431,7 @@ diff -NurpP --minimal linux-3.4.48/net/sunrpc/auth_unix.c linux-3.4.48-vs2.3.3.9
  	for (i = 0; i < groups; i++)
  		cred->uc_gids[i] = GROUP_AT(acred->group_info, i);
  	if (i < NFS_NGROUPS)
-@@ -119,7 +122,9 @@ unx_match(struct auth_cred *acred, struc
+@@ -119,7 +122,9 @@ unx_match(struct auth_cred *acred, struct rpc_cred *rcred, int flags)
  	unsigned int i;
  
  
@@ -25965,7 +26442,7 @@ diff -NurpP --minimal linux-3.4.48/net/sunrpc/auth_unix.c linux-3.4.48-vs2.3.3.9
  		return 0;
  
  	if (acred->group_info != NULL)
-@@ -145,7 +150,7 @@ unx_marshal(struct rpc_task *task, __be3
+@@ -145,7 +150,7 @@ unx_marshal(struct rpc_task *task, __be32 *p)
  	struct rpc_clnt	*clnt = task->tk_client;
  	struct unx_cred	*cred = container_of(task->tk_rqstp->rq_cred, struct unx_cred, uc_base);
  	__be32		*base, *hold;
@@ -25974,7 +26451,7 @@ diff -NurpP --minimal linux-3.4.48/net/sunrpc/auth_unix.c linux-3.4.48-vs2.3.3.9
  
  	*p++ = htonl(RPC_AUTH_UNIX);
  	base = p++;
-@@ -155,9 +160,12 @@ unx_marshal(struct rpc_task *task, __be3
+@@ -155,9 +160,12 @@ unx_marshal(struct rpc_task *task, __be32 *p)
  	 * Copy the UTS nodename captured when the client was created.
  	 */
  	p = xdr_encode_array(p, clnt->cl_nodename, clnt->cl_nodelen);
@@ -25989,9 +26466,10 @@ diff -NurpP --minimal linux-3.4.48/net/sunrpc/auth_unix.c linux-3.4.48-vs2.3.3.9
  	hold = p++;
  	for (i = 0; i < 16 && cred->uc_gids[i] != (gid_t) NOGROUP; i++)
  		*p++ = htonl((u32) cred->uc_gids[i]);
-diff -NurpP --minimal linux-3.4.48/net/sunrpc/clnt.c linux-3.4.48-vs2.3.3.9/net/sunrpc/clnt.c
---- linux-3.4.48/net/sunrpc/clnt.c	2013-06-13 08:59:42.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/net/sunrpc/clnt.c	2013-02-11 23:37:30.000000000 +0000
+diff --git a/net/sunrpc/clnt.c b/net/sunrpc/clnt.c
+index a28a211..1b4b069 100644
+--- a/net/sunrpc/clnt.c
++++ b/net/sunrpc/clnt.c
 @@ -31,6 +31,7 @@
  #include <linux/in6.h>
  #include <linux/un.h>
@@ -26000,7 +26478,7 @@ diff -NurpP --minimal linux-3.4.48/net/sunrpc/clnt.c linux-3.4.48-vs2.3.3.9/net/
  
  #include <linux/sunrpc/clnt.h>
  #include <linux/sunrpc/rpc_pipe_fs.h>
-@@ -483,6 +484,9 @@ struct rpc_clnt *rpc_create(struct rpc_c
+@@ -483,6 +484,9 @@ struct rpc_clnt *rpc_create(struct rpc_create_args *args)
  	if (!(args->flags & RPC_CLNT_CREATE_QUIET))
  		clnt->cl_chatty = 1;
  
@@ -26010,9 +26488,10 @@ diff -NurpP --minimal linux-3.4.48/net/sunrpc/clnt.c linux-3.4.48-vs2.3.3.9/net/
  	return clnt;
  }
  EXPORT_SYMBOL_GPL(rpc_create);
-diff -NurpP --minimal linux-3.4.48/net/unix/af_unix.c linux-3.4.48-vs2.3.3.9/net/unix/af_unix.c
---- linux-3.4.48/net/unix/af_unix.c	2013-06-13 08:59:42.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/net/unix/af_unix.c	2013-06-13 09:46:39.000000000 +0000
+diff --git a/net/unix/af_unix.c b/net/unix/af_unix.c
+index c4821fd..fd70828 100644
+--- a/net/unix/af_unix.c
++++ b/net/unix/af_unix.c
 @@ -114,6 +114,8 @@
  #include <linux/mount.h>
  #include <net/checksum.h>
@@ -26022,7 +26501,7 @@ diff -NurpP --minimal linux-3.4.48/net/unix/af_unix.c linux-3.4.48-vs2.3.3.9/net
  
  struct hlist_head unix_socket_table[UNIX_HASH_SIZE + 1];
  EXPORT_SYMBOL_GPL(unix_socket_table);
-@@ -261,6 +263,8 @@ static struct sock *__unix_find_socket_b
+@@ -261,6 +263,8 @@ static struct sock *__unix_find_socket_byname(struct net *net,
  		if (!net_eq(sock_net(s), net))
  			continue;
  
@@ -26031,7 +26510,7 @@ diff -NurpP --minimal linux-3.4.48/net/unix/af_unix.c linux-3.4.48-vs2.3.3.9/net
  		if (u->addr->len == len &&
  		    !memcmp(u->addr->name, sunname, len))
  			goto found;
-@@ -2266,6 +2270,8 @@ static struct sock *unix_seq_idx(struct
+@@ -2265,6 +2269,8 @@ static struct sock *unix_seq_idx(struct seq_file *seq, loff_t pos)
  	for (s = first_unix_socket(&iter->i); s; s = next_unix_socket(&iter->i, s)) {
  		if (sock_net(s) != seq_file_net(seq))
  			continue;
@@ -26040,7 +26519,7 @@ diff -NurpP --minimal linux-3.4.48/net/unix/af_unix.c linux-3.4.48-vs2.3.3.9/net
  		if (off == pos)
  			return s;
  		++off;
-@@ -2290,7 +2296,8 @@ static void *unix_seq_next(struct seq_fi
+@@ -2289,7 +2295,8 @@ static void *unix_seq_next(struct seq_file *seq, void *v, loff_t *pos)
  		sk = first_unix_socket(&iter->i);
  	else
  		sk = next_unix_socket(&iter->i, sk);
@@ -26050,9 +26529,10 @@ diff -NurpP --minimal linux-3.4.48/net/unix/af_unix.c linux-3.4.48-vs2.3.3.9/net
  		sk = next_unix_socket(&iter->i, sk);
  	return sk;
  }
-diff -NurpP --minimal linux-3.4.48/scripts/checksyscalls.sh linux-3.4.48-vs2.3.3.9/scripts/checksyscalls.sh
---- linux-3.4.48/scripts/checksyscalls.sh	2012-03-19 18:47:34.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/scripts/checksyscalls.sh	2012-05-21 16:15:05.000000000 +0000
+diff --git a/scripts/checksyscalls.sh b/scripts/checksyscalls.sh
+index d24810f..b9e7023 100755
+--- a/scripts/checksyscalls.sh
++++ b/scripts/checksyscalls.sh
 @@ -193,7 +193,6 @@ cat << EOF
  #define __IGNORE_afs_syscall
  #define __IGNORE_getpmsg
@@ -26061,10 +26541,11 @@ diff -NurpP --minimal linux-3.4.48/scripts/checksyscalls.sh linux-3.4.48-vs2.3.3
  EOF
  }
  
-diff -NurpP --minimal linux-3.4.48/security/commoncap.c linux-3.4.48-vs2.3.3.9/security/commoncap.c
---- linux-3.4.48/security/commoncap.c	2012-05-21 16:07:41.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/security/commoncap.c	2012-05-21 16:15:05.000000000 +0000
-@@ -76,14 +76,20 @@ int cap_netlink_send(struct sock *sk, st
+diff --git a/security/commoncap.c b/security/commoncap.c
+index 71a166a..dfa0c4f 100644
+--- a/security/commoncap.c
++++ b/security/commoncap.c
+@@ -76,14 +76,20 @@ int cap_netlink_send(struct sock *sk, struct sk_buff *skb)
  int cap_capable(const struct cred *cred, struct user_namespace *targ_ns,
  		int cap, int audit)
  {
@@ -26087,7 +26568,7 @@ diff -NurpP --minimal linux-3.4.48/security/commoncap.c linux-3.4.48-vs2.3.3.9/s
  
  		/* Have we tried all of the parent namespaces? */
  		if (targ_ns == &init_user_ns)
-@@ -612,7 +618,7 @@ int cap_inode_setxattr(struct dentry *de
+@@ -612,7 +618,7 @@ int cap_inode_setxattr(struct dentry *dentry, const char *name,
  
  	if (!strncmp(name, XATTR_SECURITY_PREFIX,
  		     sizeof(XATTR_SECURITY_PREFIX) - 1) &&
@@ -26096,7 +26577,7 @@ diff -NurpP --minimal linux-3.4.48/security/commoncap.c linux-3.4.48-vs2.3.3.9/s
  		return -EPERM;
  	return 0;
  }
-@@ -638,7 +644,7 @@ int cap_inode_removexattr(struct dentry
+@@ -638,7 +644,7 @@ int cap_inode_removexattr(struct dentry *dentry, const char *name)
  
  	if (!strncmp(name, XATTR_SECURITY_PREFIX,
  		     sizeof(XATTR_SECURITY_PREFIX) - 1) &&
@@ -26105,9 +26586,10 @@ diff -NurpP --minimal linux-3.4.48/security/commoncap.c linux-3.4.48-vs2.3.3.9/s
  		return -EPERM;
  	return 0;
  }
-diff -NurpP --minimal linux-3.4.48/security/selinux/hooks.c linux-3.4.48-vs2.3.3.9/security/selinux/hooks.c
---- linux-3.4.48/security/selinux/hooks.c	2013-06-13 08:59:44.000000000 +0000
-+++ linux-3.4.48-vs2.3.3.9/security/selinux/hooks.c	2012-09-01 08:50:49.000000000 +0000
+diff --git a/security/selinux/hooks.c b/security/selinux/hooks.c
+index 5626222..2ac26b6 100644
+--- a/security/selinux/hooks.c
++++ b/security/selinux/hooks.c
 @@ -66,7 +66,6 @@
  #include <linux/dccp.h>
  #include <linux/quota.h>