]> git.pld-linux.org Git - packages/kernel.git/blobdiff - kernel-vserver-2.3.patch
- 4.9.267
[packages/kernel.git] / kernel-vserver-2.3.patch
index 261553bff2053fd87fec6cf13a6e92b01e3d6c6b..505f10b1cad9cab244084ae0973e99382483b794 100644 (file)
@@ -1,6 +1,6 @@
-diff -NurpP --minimal linux-4.9.135/Documentation/vserver/debug.txt linux-4.9.135-vs2.3.9.8/Documentation/vserver/debug.txt
---- linux-4.9.135/Documentation/vserver/debug.txt      1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/Documentation/vserver/debug.txt    2018-10-20 04:58:12.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/Documentation/vserver/debug.txt linux-4.9/Documentation/vserver/debug.txt
+--- linux-4.9/Documentation/vserver/debug.txt  1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/Documentation/vserver/debug.txt  2021-02-24 15:47:45.047741532 +0100
 @@ -0,0 +1,154 @@
 +
 +debug_cvirt:
 @@ -0,0 +1,154 @@
 +
 +debug_cvirt:
@@ -156,9 +156,9 @@ diff -NurpP --minimal linux-4.9.135/Documentation/vserver/debug.txt linux-4.9.13
 + 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"
 + 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-4.9.135/arch/alpha/Kconfig linux-4.9.135-vs2.3.9.8/arch/alpha/Kconfig
---- linux-4.9.135/arch/alpha/Kconfig   2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/arch/alpha/Kconfig 2018-10-20 04:58:12.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/arch/alpha/Kconfig linux-4.9/arch/alpha/Kconfig
+--- linux-4.9/arch/alpha/Kconfig       2016-12-11 20:17:54.000000000 +0100
++++ linux-4.9/arch/alpha/Kconfig       2021-02-24 15:47:45.037741219 +0100
 @@ -743,6 +743,8 @@ config DUMMY_CONSOLE
        depends on VGA_HOSE
        default y
 @@ -743,6 +743,8 @@ config DUMMY_CONSOLE
        depends on VGA_HOSE
        default y
@@ -168,9 +168,9 @@ diff -NurpP --minimal linux-4.9.135/arch/alpha/Kconfig linux-4.9.135-vs2.3.9.8/a
  source "security/Kconfig"
  
  source "crypto/Kconfig"
  source "security/Kconfig"
  
  source "crypto/Kconfig"
-diff -NurpP --minimal linux-4.9.135/arch/alpha/kernel/systbls.S linux-4.9.135-vs2.3.9.8/arch/alpha/kernel/systbls.S
---- linux-4.9.135/arch/alpha/kernel/systbls.S  2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/arch/alpha/kernel/systbls.S        2018-10-20 04:58:12.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/arch/alpha/kernel/systbls.S linux-4.9/arch/alpha/kernel/systbls.S
+--- linux-4.9/arch/alpha/kernel/systbls.S      2016-12-11 20:17:54.000000000 +0100
++++ linux-4.9/arch/alpha/kernel/systbls.S      2021-02-24 15:47:45.037741219 +0100
 @@ -446,7 +446,7 @@ sys_call_table:
        .quad sys_stat64                        /* 425 */
        .quad sys_lstat64
 @@ -446,7 +446,7 @@ sys_call_table:
        .quad sys_stat64                        /* 425 */
        .quad sys_lstat64
@@ -180,9 +180,9 @@ diff -NurpP --minimal linux-4.9.135/arch/alpha/kernel/systbls.S linux-4.9.135-vs
        .quad sys_ni_syscall                    /* sys_mbind */
        .quad sys_ni_syscall                    /* sys_get_mempolicy */
        .quad sys_ni_syscall                    /* sys_set_mempolicy */
        .quad sys_ni_syscall                    /* sys_mbind */
        .quad sys_ni_syscall                    /* sys_get_mempolicy */
        .quad sys_ni_syscall                    /* sys_set_mempolicy */
-diff -NurpP --minimal linux-4.9.135/arch/alpha/kernel/traps.c linux-4.9.135-vs2.3.9.8/arch/alpha/kernel/traps.c
---- linux-4.9.135/arch/alpha/kernel/traps.c    2018-10-20 10:38:42.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/arch/alpha/kernel/traps.c  2018-10-20 04:58:12.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/arch/alpha/kernel/traps.c linux-4.9/arch/alpha/kernel/traps.c
+--- linux-4.9/arch/alpha/kernel/traps.c        2021-02-24 15:47:30.747294162 +0100
++++ linux-4.9/arch/alpha/kernel/traps.c        2021-02-24 15:47:45.037741219 +0100
 @@ -179,7 +179,8 @@ die_if_kernel(char * str, struct pt_regs
  #ifdef CONFIG_SMP
        printk("CPU %d ", hard_smp_processor_id());
 @@ -179,7 +179,8 @@ die_if_kernel(char * str, struct pt_regs
  #ifdef CONFIG_SMP
        printk("CPU %d ", hard_smp_processor_id());
@@ -193,10 +193,10 @@ diff -NurpP --minimal linux-4.9.135/arch/alpha/kernel/traps.c linux-4.9.135-vs2.
        dik_show_regs(regs, r9_15);
        add_taint(TAINT_DIE, LOCKDEP_NOW_UNRELIABLE);
        dik_show_trace((unsigned long *)(regs+1));
        dik_show_regs(regs, r9_15);
        add_taint(TAINT_DIE, LOCKDEP_NOW_UNRELIABLE);
        dik_show_trace((unsigned long *)(regs+1));
-diff -NurpP --minimal linux-4.9.135/arch/arm/Kconfig linux-4.9.135-vs2.3.9.8/arch/arm/Kconfig
---- linux-4.9.135/arch/arm/Kconfig     2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/arch/arm/Kconfig   2018-10-20 04:58:12.000000000 +0000
-@@ -2199,6 +2199,8 @@ source "fs/Kconfig"
+diff -urNp -x '*.orig' linux-4.9/arch/arm/Kconfig linux-4.9/arch/arm/Kconfig
+--- linux-4.9/arch/arm/Kconfig 2021-02-24 15:47:30.757294474 +0100
++++ linux-4.9/arch/arm/Kconfig 2021-02-24 15:47:45.041074656 +0100
+@@ -2202,6 +2202,8 @@ source "fs/Kconfig"
  
  source "arch/arm/Kconfig.debug"
  
  
  source "arch/arm/Kconfig.debug"
  
@@ -205,9 +205,9 @@ diff -NurpP --minimal linux-4.9.135/arch/arm/Kconfig linux-4.9.135-vs2.3.9.8/arc
  source "security/Kconfig"
  
  source "crypto/Kconfig"
  source "security/Kconfig"
  
  source "crypto/Kconfig"
-diff -NurpP --minimal linux-4.9.135/arch/arm/kernel/calls.S linux-4.9.135-vs2.3.9.8/arch/arm/kernel/calls.S
---- linux-4.9.135/arch/arm/kernel/calls.S      2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/arch/arm/kernel/calls.S    2018-10-20 04:58:12.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/arch/arm/kernel/calls.S linux-4.9/arch/arm/kernel/calls.S
+--- linux-4.9/arch/arm/kernel/calls.S  2016-12-11 20:17:54.000000000 +0100
++++ linux-4.9/arch/arm/kernel/calls.S  2021-02-24 15:47:45.041074656 +0100
 @@ -322,7 +322,7 @@
  /* 310 */     CALL(sys_request_key)
                CALL(sys_keyctl)
 @@ -322,7 +322,7 @@
  /* 310 */     CALL(sys_request_key)
                CALL(sys_keyctl)
@@ -217,9 +217,9 @@ diff -NurpP --minimal linux-4.9.135/arch/arm/kernel/calls.S linux-4.9.135-vs2.3.
                CALL(sys_ioprio_set)
  /* 315 */     CALL(sys_ioprio_get)
                CALL(sys_inotify_init)
                CALL(sys_ioprio_set)
  /* 315 */     CALL(sys_ioprio_get)
                CALL(sys_inotify_init)
-diff -NurpP --minimal linux-4.9.135/arch/arm/kernel/traps.c linux-4.9.135-vs2.3.9.8/arch/arm/kernel/traps.c
---- linux-4.9.135/arch/arm/kernel/traps.c      2018-10-20 10:38:42.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/arch/arm/kernel/traps.c    2018-10-20 04:58:12.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/arch/arm/kernel/traps.c linux-4.9/arch/arm/kernel/traps.c
+--- linux-4.9/arch/arm/kernel/traps.c  2021-02-24 15:47:30.797295726 +0100
++++ linux-4.9/arch/arm/kernel/traps.c  2021-02-24 15:47:45.041074656 +0100
 @@ -279,8 +279,8 @@ static int __die(const char *str, int er
  
        print_modules();
 @@ -279,8 +279,8 @@ static int __die(const char *str, int er
  
        print_modules();
@@ -231,9 +231,9 @@ diff -NurpP --minimal linux-4.9.135/arch/arm/kernel/traps.c linux-4.9.135-vs2.3.
  
        if (!user_mode(regs) || in_interrupt()) {
                dump_mem(KERN_EMERG, "Stack: ", regs->ARM_sp,
  
        if (!user_mode(regs) || in_interrupt()) {
                dump_mem(KERN_EMERG, "Stack: ", regs->ARM_sp,
-diff -NurpP --minimal linux-4.9.135/arch/cris/Kconfig linux-4.9.135-vs2.3.9.8/arch/cris/Kconfig
---- linux-4.9.135/arch/cris/Kconfig    2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/arch/cris/Kconfig  2018-10-20 04:58:12.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/arch/cris/Kconfig linux-4.9/arch/cris/Kconfig
+--- linux-4.9/arch/cris/Kconfig        2016-12-11 20:17:54.000000000 +0100
++++ linux-4.9/arch/cris/Kconfig        2021-02-24 15:47:45.041074656 +0100
 @@ -583,6 +583,8 @@ source "fs/Kconfig"
  
  source "arch/cris/Kconfig.debug"
 @@ -583,6 +583,8 @@ source "fs/Kconfig"
  
  source "arch/cris/Kconfig.debug"
@@ -243,9 +243,9 @@ diff -NurpP --minimal linux-4.9.135/arch/cris/Kconfig linux-4.9.135-vs2.3.9.8/ar
  source "security/Kconfig"
  
  source "crypto/Kconfig"
  source "security/Kconfig"
  
  source "crypto/Kconfig"
-diff -NurpP --minimal linux-4.9.135/arch/ia64/Kconfig linux-4.9.135-vs2.3.9.8/arch/ia64/Kconfig
---- linux-4.9.135/arch/ia64/Kconfig    2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/arch/ia64/Kconfig  2018-10-20 04:58:12.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/arch/ia64/Kconfig linux-4.9/arch/ia64/Kconfig
+--- linux-4.9/arch/ia64/Kconfig        2016-12-11 20:17:54.000000000 +0100
++++ linux-4.9/arch/ia64/Kconfig        2021-02-24 15:47:45.041074656 +0100
 @@ -602,6 +602,8 @@ source "fs/Kconfig"
  
  source "arch/ia64/Kconfig.debug"
 @@ -602,6 +602,8 @@ source "fs/Kconfig"
  
  source "arch/ia64/Kconfig.debug"
@@ -255,9 +255,9 @@ diff -NurpP --minimal linux-4.9.135/arch/ia64/Kconfig linux-4.9.135-vs2.3.9.8/ar
  source "security/Kconfig"
  
  source "crypto/Kconfig"
  source "security/Kconfig"
  
  source "crypto/Kconfig"
-diff -NurpP --minimal linux-4.9.135/arch/ia64/kernel/entry.S linux-4.9.135-vs2.3.9.8/arch/ia64/kernel/entry.S
---- linux-4.9.135/arch/ia64/kernel/entry.S     2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/arch/ia64/kernel/entry.S   2018-10-20 04:58:12.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/arch/ia64/kernel/entry.S linux-4.9/arch/ia64/kernel/entry.S
+--- linux-4.9/arch/ia64/kernel/entry.S 2016-12-11 20:17:54.000000000 +0100
++++ linux-4.9/arch/ia64/kernel/entry.S 2021-02-24 15:47:45.041074656 +0100
 @@ -1697,7 +1697,7 @@ sys_call_table:
        data8 sys_mq_notify
        data8 sys_mq_getsetattr
 @@ -1697,7 +1697,7 @@ sys_call_table:
        data8 sys_mq_notify
        data8 sys_mq_getsetattr
@@ -267,9 +267,9 @@ diff -NurpP --minimal linux-4.9.135/arch/ia64/kernel/entry.S linux-4.9.135-vs2.3
        data8 sys_waitid                        // 1270
        data8 sys_add_key
        data8 sys_request_key
        data8 sys_waitid                        // 1270
        data8 sys_add_key
        data8 sys_request_key
-diff -NurpP --minimal linux-4.9.135/arch/ia64/kernel/ptrace.c linux-4.9.135-vs2.3.9.8/arch/ia64/kernel/ptrace.c
---- linux-4.9.135/arch/ia64/kernel/ptrace.c    2018-10-20 10:38:44.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/arch/ia64/kernel/ptrace.c  2018-10-20 04:58:12.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/arch/ia64/kernel/ptrace.c linux-4.9/arch/ia64/kernel/ptrace.c
+--- linux-4.9/arch/ia64/kernel/ptrace.c        2021-02-24 15:47:30.857297603 +0100
++++ linux-4.9/arch/ia64/kernel/ptrace.c        2021-02-24 15:47:45.041074656 +0100
 @@ -21,6 +21,7 @@
  #include <linux/regset.h>
  #include <linux/elf.h>
 @@ -21,6 +21,7 @@
  #include <linux/regset.h>
  #include <linux/elf.h>
@@ -278,9 +278,9 @@ diff -NurpP --minimal linux-4.9.135/arch/ia64/kernel/ptrace.c linux-4.9.135-vs2.
  
  #include <asm/pgtable.h>
  #include <asm/processor.h>
  
  #include <asm/pgtable.h>
  #include <asm/processor.h>
-diff -NurpP --minimal linux-4.9.135/arch/ia64/kernel/traps.c linux-4.9.135-vs2.3.9.8/arch/ia64/kernel/traps.c
---- linux-4.9.135/arch/ia64/kernel/traps.c     2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/arch/ia64/kernel/traps.c   2018-10-20 04:58:12.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/arch/ia64/kernel/traps.c linux-4.9/arch/ia64/kernel/traps.c
+--- linux-4.9/arch/ia64/kernel/traps.c 2016-12-11 20:17:54.000000000 +0100
++++ linux-4.9/arch/ia64/kernel/traps.c 2021-02-24 15:47:45.041074656 +0100
 @@ -60,8 +60,9 @@ die (const char *str, struct pt_regs *re
        put_cpu();
  
 @@ -60,8 +60,9 @@ die (const char *str, struct pt_regs *re
        put_cpu();
  
@@ -305,9 +305,9 @@ diff -NurpP --minimal linux-4.9.135/arch/ia64/kernel/traps.c linux-4.9.135-vs2.3
                        }
                }
        }
                        }
                }
        }
-diff -NurpP --minimal linux-4.9.135/arch/m32r/kernel/traps.c linux-4.9.135-vs2.3.9.8/arch/m32r/kernel/traps.c
---- linux-4.9.135/arch/m32r/kernel/traps.c     2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/arch/m32r/kernel/traps.c   2018-10-20 04:58:12.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/arch/m32r/kernel/traps.c linux-4.9/arch/m32r/kernel/traps.c
+--- linux-4.9/arch/m32r/kernel/traps.c 2016-12-11 20:17:54.000000000 +0100
++++ linux-4.9/arch/m32r/kernel/traps.c 2021-02-24 15:47:45.041074656 +0100
 @@ -184,8 +184,9 @@ static void show_registers(struct pt_reg
        } else {
                printk("SPI: %08lx\n", sp);
 @@ -184,8 +184,9 @@ static void show_registers(struct pt_reg
        } else {
                printk("SPI: %08lx\n", sp);
@@ -320,9 +320,9 @@ diff -NurpP --minimal linux-4.9.135/arch/m32r/kernel/traps.c linux-4.9.135-vs2.3
  
        /*
         * When in-kernel, we also print out the stack and code at the
  
        /*
         * When in-kernel, we also print out the stack and code at the
-diff -NurpP --minimal linux-4.9.135/arch/m68k/Kconfig linux-4.9.135-vs2.3.9.8/arch/m68k/Kconfig
---- linux-4.9.135/arch/m68k/Kconfig    2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/arch/m68k/Kconfig  2018-10-20 04:58:12.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/arch/m68k/Kconfig linux-4.9/arch/m68k/Kconfig
+--- linux-4.9/arch/m68k/Kconfig        2016-12-11 20:17:54.000000000 +0100
++++ linux-4.9/arch/m68k/Kconfig        2021-02-24 15:47:45.041074656 +0100
 @@ -163,6 +163,8 @@ source "fs/Kconfig"
  
  source "arch/m68k/Kconfig.debug"
 @@ -163,6 +163,8 @@ source "fs/Kconfig"
  
  source "arch/m68k/Kconfig.debug"
@@ -332,10 +332,10 @@ diff -NurpP --minimal linux-4.9.135/arch/m68k/Kconfig linux-4.9.135-vs2.3.9.8/ar
  source "security/Kconfig"
  
  source "crypto/Kconfig"
  source "security/Kconfig"
  
  source "crypto/Kconfig"
-diff -NurpP --minimal linux-4.9.135/arch/mips/Kconfig linux-4.9.135-vs2.3.9.8/arch/mips/Kconfig
---- linux-4.9.135/arch/mips/Kconfig    2018-10-20 10:38:44.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/arch/mips/Kconfig  2018-10-20 04:58:12.000000000 +0000
-@@ -3190,6 +3190,8 @@ source "fs/Kconfig"
+diff -urNp -x '*.orig' linux-4.9/arch/mips/Kconfig linux-4.9/arch/mips/Kconfig
+--- linux-4.9/arch/mips/Kconfig        2021-02-24 15:47:30.863964478 +0100
++++ linux-4.9/arch/mips/Kconfig        2021-02-24 15:47:45.044408094 +0100
+@@ -3194,6 +3194,8 @@ source "fs/Kconfig"
  
  source "arch/mips/Kconfig.debug"
  
  
  source "arch/mips/Kconfig.debug"
  
@@ -344,9 +344,9 @@ diff -NurpP --minimal linux-4.9.135/arch/mips/Kconfig linux-4.9.135-vs2.3.9.8/ar
  source "security/Kconfig"
  
  source "crypto/Kconfig"
  source "security/Kconfig"
  
  source "crypto/Kconfig"
-diff -NurpP --minimal linux-4.9.135/arch/mips/kernel/ptrace.c linux-4.9.135-vs2.3.9.8/arch/mips/kernel/ptrace.c
---- linux-4.9.135/arch/mips/kernel/ptrace.c    2018-10-20 10:38:44.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/arch/mips/kernel/ptrace.c  2018-10-20 05:55:33.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/arch/mips/kernel/ptrace.c linux-4.9/arch/mips/kernel/ptrace.c
+--- linux-4.9/arch/mips/kernel/ptrace.c        2021-02-24 15:47:30.880631666 +0100
++++ linux-4.9/arch/mips/kernel/ptrace.c        2021-02-24 15:47:45.044408094 +0100
 @@ -30,6 +30,7 @@
  #include <linux/audit.h>
  #include <linux/seccomp.h>
 @@ -30,6 +30,7 @@
  #include <linux/audit.h>
  #include <linux/seccomp.h>
@@ -365,9 +365,9 @@ diff -NurpP --minimal linux-4.9.135/arch/mips/kernel/ptrace.c linux-4.9.135-vs2.
        switch (request) {
        /* when I and D space are separate, these will need to be fixed. */
        case PTRACE_PEEKTEXT: /* read word at location addr. */
        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-4.9.135/arch/mips/kernel/scall32-o32.S linux-4.9.135-vs2.3.9.8/arch/mips/kernel/scall32-o32.S
---- linux-4.9.135/arch/mips/kernel/scall32-o32.S       2018-10-20 10:38:44.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/arch/mips/kernel/scall32-o32.S     2018-10-20 04:58:12.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/arch/mips/kernel/scall32-o32.S linux-4.9/arch/mips/kernel/scall32-o32.S
+--- linux-4.9/arch/mips/kernel/scall32-o32.S   2021-02-24 15:47:30.880631666 +0100
++++ linux-4.9/arch/mips/kernel/scall32-o32.S   2021-02-24 15:47:45.044408094 +0100
 @@ -511,7 +511,7 @@ EXPORT(sys_call_table)
        PTR     sys_mq_timedreceive
        PTR     sys_mq_notify                   /* 4275 */
 @@ -511,7 +511,7 @@ EXPORT(sys_call_table)
        PTR     sys_mq_timedreceive
        PTR     sys_mq_notify                   /* 4275 */
@@ -377,9 +377,9 @@ diff -NurpP --minimal linux-4.9.135/arch/mips/kernel/scall32-o32.S linux-4.9.135
        PTR     sys_waitid
        PTR     sys_ni_syscall                  /* available, was setaltroot */
        PTR     sys_add_key                     /* 4280 */
        PTR     sys_waitid
        PTR     sys_ni_syscall                  /* available, was setaltroot */
        PTR     sys_add_key                     /* 4280 */
-diff -NurpP --minimal linux-4.9.135/arch/mips/kernel/scall64-64.S linux-4.9.135-vs2.3.9.8/arch/mips/kernel/scall64-64.S
---- linux-4.9.135/arch/mips/kernel/scall64-64.S        2018-10-20 10:38:44.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/arch/mips/kernel/scall64-64.S      2018-10-20 04:58:12.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/arch/mips/kernel/scall64-64.S linux-4.9/arch/mips/kernel/scall64-64.S
+--- linux-4.9/arch/mips/kernel/scall64-64.S    2021-02-24 15:47:30.880631666 +0100
++++ linux-4.9/arch/mips/kernel/scall64-64.S    2021-02-24 15:47:45.044408094 +0100
 @@ -348,7 +348,7 @@ EXPORT(sys_call_table)
        PTR     sys_mq_timedreceive
        PTR     sys_mq_notify
 @@ -348,7 +348,7 @@ EXPORT(sys_call_table)
        PTR     sys_mq_timedreceive
        PTR     sys_mq_notify
@@ -389,9 +389,9 @@ diff -NurpP --minimal linux-4.9.135/arch/mips/kernel/scall64-64.S linux-4.9.135-
        PTR     sys_waitid
        PTR     sys_ni_syscall                  /* available, was setaltroot */
        PTR     sys_add_key
        PTR     sys_waitid
        PTR     sys_ni_syscall                  /* available, was setaltroot */
        PTR     sys_add_key
-diff -NurpP --minimal linux-4.9.135/arch/mips/kernel/scall64-n32.S linux-4.9.135-vs2.3.9.8/arch/mips/kernel/scall64-n32.S
---- linux-4.9.135/arch/mips/kernel/scall64-n32.S       2018-10-20 10:38:44.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/arch/mips/kernel/scall64-n32.S     2018-10-20 04:58:12.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/arch/mips/kernel/scall64-n32.S linux-4.9/arch/mips/kernel/scall64-n32.S
+--- linux-4.9/arch/mips/kernel/scall64-n32.S   2021-02-24 15:47:30.880631666 +0100
++++ linux-4.9/arch/mips/kernel/scall64-n32.S   2021-02-24 15:47:45.044408094 +0100
 @@ -343,7 +343,7 @@ EXPORT(sysn32_call_table)
        PTR     compat_sys_mq_timedreceive
        PTR     compat_sys_mq_notify
 @@ -343,7 +343,7 @@ EXPORT(sysn32_call_table)
        PTR     compat_sys_mq_timedreceive
        PTR     compat_sys_mq_notify
@@ -401,9 +401,9 @@ diff -NurpP --minimal linux-4.9.135/arch/mips/kernel/scall64-n32.S linux-4.9.135
        PTR     compat_sys_waitid
        PTR     sys_ni_syscall                  /* available, was setaltroot */
        PTR     sys_add_key
        PTR     compat_sys_waitid
        PTR     sys_ni_syscall                  /* available, was setaltroot */
        PTR     sys_add_key
-diff -NurpP --minimal linux-4.9.135/arch/mips/kernel/scall64-o32.S linux-4.9.135-vs2.3.9.8/arch/mips/kernel/scall64-o32.S
---- linux-4.9.135/arch/mips/kernel/scall64-o32.S       2018-10-20 10:38:44.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/arch/mips/kernel/scall64-o32.S     2018-10-20 04:58:12.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/arch/mips/kernel/scall64-o32.S linux-4.9/arch/mips/kernel/scall64-o32.S
+--- linux-4.9/arch/mips/kernel/scall64-o32.S   2021-02-24 15:47:30.880631666 +0100
++++ linux-4.9/arch/mips/kernel/scall64-o32.S   2021-02-24 15:47:45.044408094 +0100
 @@ -499,7 +499,7 @@ EXPORT(sys32_call_table)
        PTR     compat_sys_mq_timedreceive
        PTR     compat_sys_mq_notify            /* 4275 */
 @@ -499,7 +499,7 @@ EXPORT(sys32_call_table)
        PTR     compat_sys_mq_timedreceive
        PTR     compat_sys_mq_notify            /* 4275 */
@@ -413,9 +413,9 @@ diff -NurpP --minimal linux-4.9.135/arch/mips/kernel/scall64-o32.S linux-4.9.135
        PTR     compat_sys_waitid
        PTR     sys_ni_syscall                  /* available, was setaltroot */
        PTR     sys_add_key                     /* 4280 */
        PTR     compat_sys_waitid
        PTR     sys_ni_syscall                  /* available, was setaltroot */
        PTR     sys_add_key                     /* 4280 */
-diff -NurpP --minimal linux-4.9.135/arch/mips/kernel/traps.c linux-4.9.135-vs2.3.9.8/arch/mips/kernel/traps.c
---- linux-4.9.135/arch/mips/kernel/traps.c     2018-10-20 10:38:44.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/arch/mips/kernel/traps.c   2018-10-20 04:58:13.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/arch/mips/kernel/traps.c linux-4.9/arch/mips/kernel/traps.c
+--- linux-4.9/arch/mips/kernel/traps.c 2021-02-24 15:47:30.880631666 +0100
++++ linux-4.9/arch/mips/kernel/traps.c 2021-02-24 15:47:45.044408094 +0100
 @@ -361,9 +361,10 @@ void show_registers(struct pt_regs *regs
  
        __show_regs(regs);
 @@ -361,9 +361,10 @@ void show_registers(struct pt_regs *regs
  
        __show_regs(regs);
@@ -430,9 +430,9 @@ diff -NurpP --minimal linux-4.9.135/arch/mips/kernel/traps.c linux-4.9.135-vs2.3
        if (cpu_has_userlocal) {
                unsigned long tls;
  
        if (cpu_has_userlocal) {
                unsigned long tls;
  
-diff -NurpP --minimal linux-4.9.135/arch/parisc/Kconfig linux-4.9.135-vs2.3.9.8/arch/parisc/Kconfig
---- linux-4.9.135/arch/parisc/Kconfig  2018-10-20 10:38:44.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/arch/parisc/Kconfig        2018-10-20 05:55:33.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/arch/parisc/Kconfig linux-4.9/arch/parisc/Kconfig
+--- linux-4.9/arch/parisc/Kconfig      2021-02-24 15:47:30.893965417 +0100
++++ linux-4.9/arch/parisc/Kconfig      2021-02-24 15:47:45.044408094 +0100
 @@ -348,6 +348,8 @@ config SECCOMP
  
          If unsure, say Y. Only embedded should say N here.
 @@ -348,6 +348,8 @@ config SECCOMP
  
          If unsure, say Y. Only embedded should say N here.
@@ -442,9 +442,9 @@ diff -NurpP --minimal linux-4.9.135/arch/parisc/Kconfig linux-4.9.135-vs2.3.9.8/
  source "security/Kconfig"
  
  source "crypto/Kconfig"
  source "security/Kconfig"
  
  source "crypto/Kconfig"
-diff -NurpP --minimal linux-4.9.135/arch/parisc/kernel/syscall_table.S linux-4.9.135-vs2.3.9.8/arch/parisc/kernel/syscall_table.S
---- linux-4.9.135/arch/parisc/kernel/syscall_table.S   2018-10-20 10:38:45.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/arch/parisc/kernel/syscall_table.S 2018-10-20 04:58:13.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/arch/parisc/kernel/syscall_table.S linux-4.9/arch/parisc/kernel/syscall_table.S
+--- linux-4.9/arch/parisc/kernel/syscall_table.S       2021-02-24 15:47:30.897298854 +0100
++++ linux-4.9/arch/parisc/kernel/syscall_table.S       2021-02-24 15:47:45.044408094 +0100
 @@ -358,7 +358,7 @@
        ENTRY_COMP(mbind)               /* 260 */
        ENTRY_COMP(get_mempolicy)
 @@ -358,7 +358,7 @@
        ENTRY_COMP(mbind)               /* 260 */
        ENTRY_COMP(get_mempolicy)
@@ -454,9 +454,9 @@ diff -NurpP --minimal linux-4.9.135/arch/parisc/kernel/syscall_table.S linux-4.9
        ENTRY_SAME(add_key)
        ENTRY_SAME(request_key)         /* 265 */
        ENTRY_COMP(keyctl)
        ENTRY_SAME(add_key)
        ENTRY_SAME(request_key)         /* 265 */
        ENTRY_COMP(keyctl)
-diff -NurpP --minimal linux-4.9.135/arch/parisc/kernel/traps.c linux-4.9.135-vs2.3.9.8/arch/parisc/kernel/traps.c
---- linux-4.9.135/arch/parisc/kernel/traps.c   2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/arch/parisc/kernel/traps.c 2018-10-20 04:58:13.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/arch/parisc/kernel/traps.c linux-4.9/arch/parisc/kernel/traps.c
+--- linux-4.9/arch/parisc/kernel/traps.c       2021-02-24 15:47:30.897298854 +0100
++++ linux-4.9/arch/parisc/kernel/traps.c       2021-02-24 15:47:45.044408094 +0100
 @@ -235,8 +235,9 @@ void die_if_kernel(char *str, struct pt_
                        return; /* STFU */
  
 @@ -235,8 +235,9 @@ void die_if_kernel(char *str, struct pt_
                        return; /* STFU */
  
@@ -480,10 +480,10 @@ diff -NurpP --minimal linux-4.9.135/arch/parisc/kernel/traps.c linux-4.9.135-vs2
  
        /* Wot's wrong wif bein' racy? */
        if (current->thread.flags & PARISC_KERNEL_DEATH) {
  
        /* Wot's wrong wif bein' racy? */
        if (current->thread.flags & PARISC_KERNEL_DEATH) {
-diff -NurpP --minimal linux-4.9.135/arch/powerpc/Kconfig linux-4.9.135-vs2.3.9.8/arch/powerpc/Kconfig
---- linux-4.9.135/arch/powerpc/Kconfig 2018-10-20 10:38:45.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/arch/powerpc/Kconfig       2018-10-20 04:58:13.000000000 +0000
-@@ -1086,6 +1086,8 @@ source "lib/Kconfig"
+diff -urNp -x '*.orig' linux-4.9/arch/powerpc/Kconfig linux-4.9/arch/powerpc/Kconfig
+--- linux-4.9/arch/powerpc/Kconfig     2021-02-24 15:47:30.900632291 +0100
++++ linux-4.9/arch/powerpc/Kconfig     2021-02-24 15:47:45.044408094 +0100
+@@ -1092,6 +1092,8 @@ source "lib/Kconfig"
  
  source "arch/powerpc/Kconfig.debug"
  
  
  source "arch/powerpc/Kconfig.debug"
  
@@ -492,9 +492,9 @@ diff -NurpP --minimal linux-4.9.135/arch/powerpc/Kconfig linux-4.9.135-vs2.3.9.8
  source "security/Kconfig"
  
  source "crypto/Kconfig"
  source "security/Kconfig"
  
  source "crypto/Kconfig"
-diff -NurpP --minimal linux-4.9.135/arch/powerpc/include/uapi/asm/unistd.h linux-4.9.135-vs2.3.9.8/arch/powerpc/include/uapi/asm/unistd.h
---- linux-4.9.135/arch/powerpc/include/uapi/asm/unistd.h       2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/arch/powerpc/include/uapi/asm/unistd.h     2018-10-20 04:58:13.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/arch/powerpc/include/uapi/asm/unistd.h linux-4.9/arch/powerpc/include/uapi/asm/unistd.h
+--- linux-4.9/arch/powerpc/include/uapi/asm/unistd.h   2016-12-11 20:17:54.000000000 +0100
++++ linux-4.9/arch/powerpc/include/uapi/asm/unistd.h   2021-02-24 15:47:45.044408094 +0100
 @@ -275,7 +275,7 @@
  #endif
  #define __NR_rtas             255
 @@ -275,7 +275,7 @@
  #endif
  #define __NR_rtas             255
@@ -504,9 +504,9 @@ diff -NurpP --minimal linux-4.9.135/arch/powerpc/include/uapi/asm/unistd.h linux
  #define __NR_migrate_pages    258
  #define __NR_mbind            259
  #define __NR_get_mempolicy    260
  #define __NR_migrate_pages    258
  #define __NR_mbind            259
  #define __NR_get_mempolicy    260
-diff -NurpP --minimal linux-4.9.135/arch/s390/Kconfig linux-4.9.135-vs2.3.9.8/arch/s390/Kconfig
---- linux-4.9.135/arch/s390/Kconfig    2018-10-20 10:38:45.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/arch/s390/Kconfig  2018-10-20 04:58:13.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/arch/s390/Kconfig linux-4.9/arch/s390/Kconfig
+--- linux-4.9/arch/s390/Kconfig        2021-02-24 15:47:30.947300418 +0100
++++ linux-4.9/arch/s390/Kconfig        2021-02-24 15:47:45.044408094 +0100
 @@ -775,6 +775,8 @@ source "fs/Kconfig"
  
  source "arch/s390/Kconfig.debug"
 @@ -775,6 +775,8 @@ source "fs/Kconfig"
  
  source "arch/s390/Kconfig.debug"
@@ -516,9 +516,9 @@ diff -NurpP --minimal linux-4.9.135/arch/s390/Kconfig linux-4.9.135-vs2.3.9.8/ar
  source "security/Kconfig"
  
  source "crypto/Kconfig"
  source "security/Kconfig"
  
  source "crypto/Kconfig"
-diff -NurpP --minimal linux-4.9.135/arch/s390/include/asm/tlb.h linux-4.9.135-vs2.3.9.8/arch/s390/include/asm/tlb.h
---- linux-4.9.135/arch/s390/include/asm/tlb.h  2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/arch/s390/include/asm/tlb.h        2018-10-20 04:58:13.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/arch/s390/include/asm/tlb.h linux-4.9/arch/s390/include/asm/tlb.h
+--- linux-4.9/arch/s390/include/asm/tlb.h      2016-12-11 20:17:54.000000000 +0100
++++ linux-4.9/arch/s390/include/asm/tlb.h      2021-02-24 15:47:45.044408094 +0100
 @@ -24,6 +24,7 @@
  #include <linux/mm.h>
  #include <linux/pagemap.h>
 @@ -24,6 +24,7 @@
  #include <linux/mm.h>
  #include <linux/pagemap.h>
@@ -527,9 +527,9 @@ diff -NurpP --minimal linux-4.9.135/arch/s390/include/asm/tlb.h linux-4.9.135-vs
  #include <asm/processor.h>
  #include <asm/pgalloc.h>
  #include <asm/tlbflush.h>
  #include <asm/processor.h>
  #include <asm/pgalloc.h>
  #include <asm/tlbflush.h>
-diff -NurpP --minimal linux-4.9.135/arch/s390/include/uapi/asm/unistd.h linux-4.9.135-vs2.3.9.8/arch/s390/include/uapi/asm/unistd.h
---- linux-4.9.135/arch/s390/include/uapi/asm/unistd.h  2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/arch/s390/include/uapi/asm/unistd.h        2018-10-20 04:58:13.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/arch/s390/include/uapi/asm/unistd.h linux-4.9/arch/s390/include/uapi/asm/unistd.h
+--- linux-4.9/arch/s390/include/uapi/asm/unistd.h      2016-12-11 20:17:54.000000000 +0100
++++ linux-4.9/arch/s390/include/uapi/asm/unistd.h      2021-02-24 15:47:45.044408094 +0100
 @@ -200,7 +200,7 @@
  #define __NR_clock_gettime    260
  #define __NR_clock_getres     261
 @@ -200,7 +200,7 @@
  #define __NR_clock_gettime    260
  #define __NR_clock_getres     261
@@ -539,9 +539,9 @@ diff -NurpP --minimal linux-4.9.135/arch/s390/include/uapi/asm/unistd.h linux-4.
  #define __NR_statfs64         265
  #define __NR_fstatfs64                266
  #define __NR_remap_file_pages 267
  #define __NR_statfs64         265
  #define __NR_fstatfs64                266
  #define __NR_remap_file_pages 267
-diff -NurpP --minimal linux-4.9.135/arch/s390/kernel/ptrace.c linux-4.9.135-vs2.3.9.8/arch/s390/kernel/ptrace.c
---- linux-4.9.135/arch/s390/kernel/ptrace.c    2018-10-20 10:38:46.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/arch/s390/kernel/ptrace.c  2018-10-20 04:58:13.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/arch/s390/kernel/ptrace.c linux-4.9/arch/s390/kernel/ptrace.c
+--- linux-4.9/arch/s390/kernel/ptrace.c        2021-02-24 15:47:30.957300731 +0100
++++ linux-4.9/arch/s390/kernel/ptrace.c        2021-02-24 15:47:45.047741532 +0100
 @@ -21,6 +21,7 @@
  #include <linux/tracehook.h>
  #include <linux/seccomp.h>
 @@ -21,6 +21,7 @@
  #include <linux/tracehook.h>
  #include <linux/seccomp.h>
@@ -550,9 +550,9 @@ diff -NurpP --minimal linux-4.9.135/arch/s390/kernel/ptrace.c linux-4.9.135-vs2.
  #include <trace/syscall.h>
  #include <asm/segment.h>
  #include <asm/page.h>
  #include <trace/syscall.h>
  #include <asm/segment.h>
  #include <asm/page.h>
-diff -NurpP --minimal linux-4.9.135/arch/s390/kernel/syscalls.S linux-4.9.135-vs2.3.9.8/arch/s390/kernel/syscalls.S
---- linux-4.9.135/arch/s390/kernel/syscalls.S  2018-10-20 10:38:46.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/arch/s390/kernel/syscalls.S        2018-10-20 04:58:13.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/arch/s390/kernel/syscalls.S linux-4.9/arch/s390/kernel/syscalls.S
+--- linux-4.9/arch/s390/kernel/syscalls.S      2021-02-24 15:47:30.960634169 +0100
++++ linux-4.9/arch/s390/kernel/syscalls.S      2021-02-24 15:47:45.047741532 +0100
 @@ -271,7 +271,7 @@ SYSCALL(sys_clock_settime,compat_sys_clo
  SYSCALL(sys_clock_gettime,compat_sys_clock_gettime)   /* 260 */
  SYSCALL(sys_clock_getres,compat_sys_clock_getres)
 @@ -271,7 +271,7 @@ SYSCALL(sys_clock_settime,compat_sys_clo
  SYSCALL(sys_clock_gettime,compat_sys_clock_gettime)   /* 260 */
  SYSCALL(sys_clock_getres,compat_sys_clock_getres)
@@ -562,9 +562,9 @@ diff -NurpP --minimal linux-4.9.135/arch/s390/kernel/syscalls.S linux-4.9.135-vs
  SYSCALL(sys_ni_syscall,compat_sys_s390_fadvise64_64)
  SYSCALL(sys_statfs64,compat_sys_statfs64)
  SYSCALL(sys_fstatfs64,compat_sys_fstatfs64)
  SYSCALL(sys_ni_syscall,compat_sys_s390_fadvise64_64)
  SYSCALL(sys_statfs64,compat_sys_statfs64)
  SYSCALL(sys_fstatfs64,compat_sys_fstatfs64)
-diff -NurpP --minimal linux-4.9.135/arch/sh/Kconfig linux-4.9.135-vs2.3.9.8/arch/sh/Kconfig
---- linux-4.9.135/arch/sh/Kconfig      2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/arch/sh/Kconfig    2018-10-20 04:58:13.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/arch/sh/Kconfig linux-4.9/arch/sh/Kconfig
+--- linux-4.9/arch/sh/Kconfig  2016-12-11 20:17:54.000000000 +0100
++++ linux-4.9/arch/sh/Kconfig  2021-02-24 15:47:45.047741532 +0100
 @@ -904,6 +904,8 @@ source "fs/Kconfig"
  
  source "arch/sh/Kconfig.debug"
 @@ -904,6 +904,8 @@ source "fs/Kconfig"
  
  source "arch/sh/Kconfig.debug"
@@ -574,9 +574,9 @@ diff -NurpP --minimal linux-4.9.135/arch/sh/Kconfig linux-4.9.135-vs2.3.9.8/arch
  source "security/Kconfig"
  
  source "crypto/Kconfig"
  source "security/Kconfig"
  
  source "crypto/Kconfig"
-diff -NurpP --minimal linux-4.9.135/arch/sh/kernel/irq.c linux-4.9.135-vs2.3.9.8/arch/sh/kernel/irq.c
---- linux-4.9.135/arch/sh/kernel/irq.c 2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/arch/sh/kernel/irq.c       2018-10-20 04:58:13.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/arch/sh/kernel/irq.c linux-4.9/arch/sh/kernel/irq.c
+--- linux-4.9/arch/sh/kernel/irq.c     2016-12-11 20:17:54.000000000 +0100
++++ linux-4.9/arch/sh/kernel/irq.c     2021-02-24 15:47:45.047741532 +0100
 @@ -14,6 +14,7 @@
  #include <linux/ftrace.h>
  #include <linux/delay.h>
 @@ -14,6 +14,7 @@
  #include <linux/ftrace.h>
  #include <linux/delay.h>
@@ -585,10 +585,10 @@ diff -NurpP --minimal linux-4.9.135/arch/sh/kernel/irq.c linux-4.9.135-vs2.3.9.8
  #include <asm/processor.h>
  #include <asm/machvec.h>
  #include <asm/uaccess.h>
  #include <asm/processor.h>
  #include <asm/machvec.h>
  #include <asm/uaccess.h>
-diff -NurpP --minimal linux-4.9.135/arch/sparc/Kconfig linux-4.9.135-vs2.3.9.8/arch/sparc/Kconfig
---- linux-4.9.135/arch/sparc/Kconfig   2018-10-20 10:38:46.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/arch/sparc/Kconfig 2018-10-20 04:58:13.000000000 +0000
-@@ -580,6 +580,8 @@ source "fs/Kconfig"
+diff -urNp -x '*.orig' linux-4.9/arch/sparc/Kconfig linux-4.9/arch/sparc/Kconfig
+--- linux-4.9/arch/sparc/Kconfig       2021-02-24 15:47:30.967301044 +0100
++++ linux-4.9/arch/sparc/Kconfig       2021-02-24 15:47:45.047741532 +0100
+@@ -584,6 +584,8 @@ source "fs/Kconfig"
  
  source "arch/sparc/Kconfig.debug"
  
  
  source "arch/sparc/Kconfig.debug"
  
@@ -597,9 +597,9 @@ diff -NurpP --minimal linux-4.9.135/arch/sparc/Kconfig linux-4.9.135-vs2.3.9.8/a
  source "security/Kconfig"
  
  source "crypto/Kconfig"
  source "security/Kconfig"
  
  source "crypto/Kconfig"
-diff -NurpP --minimal linux-4.9.135/arch/sparc/include/uapi/asm/unistd.h linux-4.9.135-vs2.3.9.8/arch/sparc/include/uapi/asm/unistd.h
---- linux-4.9.135/arch/sparc/include/uapi/asm/unistd.h 2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/arch/sparc/include/uapi/asm/unistd.h       2018-10-20 04:58:13.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/arch/sparc/include/uapi/asm/unistd.h linux-4.9/arch/sparc/include/uapi/asm/unistd.h
+--- linux-4.9/arch/sparc/include/uapi/asm/unistd.h     2016-12-11 20:17:54.000000000 +0100
++++ linux-4.9/arch/sparc/include/uapi/asm/unistd.h     2021-02-24 15:47:45.047741532 +0100
 @@ -332,7 +332,7 @@
  #define __NR_timer_getoverrun 264
  #define __NR_timer_delete     265
 @@ -332,7 +332,7 @@
  #define __NR_timer_getoverrun 264
  #define __NR_timer_delete     265
@@ -609,9 +609,9 @@ diff -NurpP --minimal linux-4.9.135/arch/sparc/include/uapi/asm/unistd.h linux-4
  #define __NR_io_setup         268
  #define __NR_io_destroy               269
  #define __NR_io_submit                270
  #define __NR_io_setup         268
  #define __NR_io_destroy               269
  #define __NR_io_submit                270
-diff -NurpP --minimal linux-4.9.135/arch/sparc/kernel/systbls_32.S linux-4.9.135-vs2.3.9.8/arch/sparc/kernel/systbls_32.S
---- linux-4.9.135/arch/sparc/kernel/systbls_32.S       2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/arch/sparc/kernel/systbls_32.S     2018-10-20 04:58:13.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/arch/sparc/kernel/systbls_32.S linux-4.9/arch/sparc/kernel/systbls_32.S
+--- linux-4.9/arch/sparc/kernel/systbls_32.S   2016-12-11 20:17:54.000000000 +0100
++++ linux-4.9/arch/sparc/kernel/systbls_32.S   2021-02-24 15:47:45.047741532 +0100
 @@ -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
 @@ -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
@@ -621,9 +621,9 @@ diff -NurpP --minimal linux-4.9.135/arch/sparc/kernel/systbls_32.S linux-4.9.135
  /*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
  /*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-4.9.135/arch/sparc/kernel/systbls_64.S linux-4.9.135-vs2.3.9.8/arch/sparc/kernel/systbls_64.S
---- linux-4.9.135/arch/sparc/kernel/systbls_64.S       2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/arch/sparc/kernel/systbls_64.S     2018-10-20 04:58:13.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/arch/sparc/kernel/systbls_64.S linux-4.9/arch/sparc/kernel/systbls_64.S
+--- linux-4.9/arch/sparc/kernel/systbls_64.S   2016-12-11 20:17:54.000000000 +0100
++++ linux-4.9/arch/sparc/kernel/systbls_64.S   2021-02-24 15:47:45.047741532 +0100
 @@ -71,7 +71,7 @@ sys_call_table32:
  /*250*/       .word sys_mremap, compat_sys_sysctl, sys_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
 @@ -71,7 +71,7 @@ sys_call_table32:
  /*250*/       .word sys_mremap, compat_sys_sysctl, sys_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
@@ -642,9 +642,9 @@ diff -NurpP --minimal linux-4.9.135/arch/sparc/kernel/systbls_64.S linux-4.9.135
  /*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
  /*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-4.9.135/arch/um/Kconfig.rest linux-4.9.135-vs2.3.9.8/arch/um/Kconfig.rest
---- linux-4.9.135/arch/um/Kconfig.rest 2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/arch/um/Kconfig.rest       2018-10-20 04:58:13.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/arch/um/Kconfig.rest linux-4.9/arch/um/Kconfig.rest
+--- linux-4.9/arch/um/Kconfig.rest     2016-12-11 20:17:54.000000000 +0100
++++ linux-4.9/arch/um/Kconfig.rest     2021-02-24 15:47:45.047741532 +0100
 @@ -12,6 +12,8 @@ source "arch/um/Kconfig.net"
  
  source "fs/Kconfig"
 @@ -12,6 +12,8 @@ source "arch/um/Kconfig.net"
  
  source "fs/Kconfig"
@@ -654,10 +654,10 @@ diff -NurpP --minimal linux-4.9.135/arch/um/Kconfig.rest linux-4.9.135-vs2.3.9.8
  source "security/Kconfig"
  
  source "crypto/Kconfig"
  source "security/Kconfig"
  
  source "crypto/Kconfig"
-diff -NurpP --minimal linux-4.9.135/arch/x86/Kconfig linux-4.9.135-vs2.3.9.8/arch/x86/Kconfig
---- linux-4.9.135/arch/x86/Kconfig     2018-10-20 10:38:46.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/arch/x86/Kconfig   2018-10-20 05:55:34.000000000 +0000
-@@ -2778,6 +2778,8 @@ source "fs/Kconfig"
+diff -urNp -x '*.orig' linux-4.9/arch/x86/Kconfig linux-4.9/arch/x86/Kconfig
+--- linux-4.9/arch/x86/Kconfig 2021-02-24 15:47:30.980634795 +0100
++++ linux-4.9/arch/x86/Kconfig 2021-02-24 15:47:45.047741532 +0100
+@@ -2810,6 +2810,8 @@ source "fs/Kconfig"
  
  source "arch/x86/Kconfig.debug"
  
  
  source "arch/x86/Kconfig.debug"
  
@@ -666,9 +666,9 @@ diff -NurpP --minimal linux-4.9.135/arch/x86/Kconfig linux-4.9.135-vs2.3.9.8/arc
  source "security/Kconfig"
  
  source "crypto/Kconfig"
  source "security/Kconfig"
  
  source "crypto/Kconfig"
-diff -NurpP --minimal linux-4.9.135/arch/x86/entry/syscalls/syscall_32.tbl linux-4.9.135-vs2.3.9.8/arch/x86/entry/syscalls/syscall_32.tbl
---- linux-4.9.135/arch/x86/entry/syscalls/syscall_32.tbl       2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/arch/x86/entry/syscalls/syscall_32.tbl     2018-10-20 04:58:13.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/arch/x86/entry/syscalls/syscall_32.tbl linux-4.9/arch/x86/entry/syscalls/syscall_32.tbl
+--- linux-4.9/arch/x86/entry/syscalls/syscall_32.tbl   2016-12-11 20:17:54.000000000 +0100
++++ linux-4.9/arch/x86/entry/syscalls/syscall_32.tbl   2021-02-24 15:47:45.047741532 +0100
 @@ -279,7 +279,7 @@
  270   i386    tgkill                  sys_tgkill
  271   i386    utimes                  sys_utimes                      compat_sys_utimes
 @@ -279,7 +279,7 @@
  270   i386    tgkill                  sys_tgkill
  271   i386    utimes                  sys_utimes                      compat_sys_utimes
@@ -678,9 +678,9 @@ diff -NurpP --minimal linux-4.9.135/arch/x86/entry/syscalls/syscall_32.tbl linux
  274   i386    mbind                   sys_mbind
  275   i386    get_mempolicy           sys_get_mempolicy               compat_sys_get_mempolicy
  276   i386    set_mempolicy           sys_set_mempolicy
  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-4.9.135/arch/x86/entry/syscalls/syscall_64.tbl linux-4.9.135-vs2.3.9.8/arch/x86/entry/syscalls/syscall_64.tbl
---- linux-4.9.135/arch/x86/entry/syscalls/syscall_64.tbl       2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/arch/x86/entry/syscalls/syscall_64.tbl     2018-10-20 04:58:13.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/arch/x86/entry/syscalls/syscall_64.tbl linux-4.9/arch/x86/entry/syscalls/syscall_64.tbl
+--- linux-4.9/arch/x86/entry/syscalls/syscall_64.tbl   2016-12-11 20:17:54.000000000 +0100
++++ linux-4.9/arch/x86/entry/syscalls/syscall_64.tbl   2021-02-24 15:47:45.047741532 +0100
 @@ -242,7 +242,7 @@
  233   common  epoll_ctl               sys_epoll_ctl
  234   common  tgkill                  sys_tgkill
 @@ -242,7 +242,7 @@
  233   common  epoll_ctl               sys_epoll_ctl
  234   common  tgkill                  sys_tgkill
@@ -690,9 +690,9 @@ diff -NurpP --minimal linux-4.9.135/arch/x86/entry/syscalls/syscall_64.tbl linux
  237   common  mbind                   sys_mbind
  238   common  set_mempolicy           sys_set_mempolicy
  239   common  get_mempolicy           sys_get_mempolicy
  237   common  mbind                   sys_mbind
  238   common  set_mempolicy           sys_set_mempolicy
  239   common  get_mempolicy           sys_get_mempolicy
-diff -NurpP --minimal linux-4.9.135/block/ioprio.c linux-4.9.135-vs2.3.9.8/block/ioprio.c
---- linux-4.9.135/block/ioprio.c       2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/block/ioprio.c     2018-10-20 04:58:13.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/block/ioprio.c linux-4.9/block/ioprio.c
+--- linux-4.9/block/ioprio.c   2016-12-11 20:17:54.000000000 +0100
++++ linux-4.9/block/ioprio.c   2021-02-24 15:47:45.047741532 +0100
 @@ -28,6 +28,7 @@
  #include <linux/syscalls.h>
  #include <linux/security.h>
 @@ -28,6 +28,7 @@
  #include <linux/syscalls.h>
  #include <linux/security.h>
@@ -719,9 +719,9 @@ diff -NurpP --minimal linux-4.9.135/block/ioprio.c linux-4.9.135-vs2.3.9.8/block
                                tmpio = get_task_ioprio(p);
                                if (tmpio < 0)
                                        continue;
                                tmpio = get_task_ioprio(p);
                                if (tmpio < 0)
                                        continue;
-diff -NurpP --minimal linux-4.9.135/drivers/block/Kconfig linux-4.9.135-vs2.3.9.8/drivers/block/Kconfig
---- linux-4.9.135/drivers/block/Kconfig        2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/drivers/block/Kconfig      2018-10-20 04:58:13.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/drivers/block/Kconfig linux-4.9/drivers/block/Kconfig
+--- linux-4.9/drivers/block/Kconfig    2021-02-24 15:47:31.113972298 +0100
++++ linux-4.9/drivers/block/Kconfig    2021-02-24 15:47:45.047741532 +0100
 @@ -273,6 +273,13 @@ config BLK_DEV_CRYPTOLOOP
  
  source "drivers/block/drbd/Kconfig"
 @@ -273,6 +273,13 @@ config BLK_DEV_CRYPTOLOOP
  
  source "drivers/block/drbd/Kconfig"
@@ -736,9 +736,9 @@ diff -NurpP --minimal linux-4.9.135/drivers/block/Kconfig linux-4.9.135-vs2.3.9.
  config BLK_DEV_NBD
        tristate "Network block device support"
        depends on NET
  config BLK_DEV_NBD
        tristate "Network block device support"
        depends on NET
-diff -NurpP --minimal linux-4.9.135/drivers/block/Makefile linux-4.9.135-vs2.3.9.8/drivers/block/Makefile
---- linux-4.9.135/drivers/block/Makefile       2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/drivers/block/Makefile     2018-10-20 04:58:13.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/drivers/block/Makefile linux-4.9/drivers/block/Makefile
+--- linux-4.9/drivers/block/Makefile   2016-12-11 20:17:54.000000000 +0100
++++ linux-4.9/drivers/block/Makefile   2021-02-24 15:47:45.051074969 +0100
 @@ -31,6 +31,7 @@ obj-$(CONFIG_VIRTIO_BLK)     += virtio_blk.o
  
  obj-$(CONFIG_BLK_DEV_SX8)     += sx8.o
 @@ -31,6 +31,7 @@ obj-$(CONFIG_VIRTIO_BLK)     += virtio_blk.o
  
  obj-$(CONFIG_BLK_DEV_SX8)     += sx8.o
@@ -747,9 +747,9 @@ diff -NurpP --minimal linux-4.9.135/drivers/block/Makefile linux-4.9.135-vs2.3.9
  
  obj-$(CONFIG_XEN_BLKDEV_FRONTEND)     += xen-blkfront.o
  obj-$(CONFIG_XEN_BLKDEV_BACKEND)      += xen-blkback/
  
  obj-$(CONFIG_XEN_BLKDEV_FRONTEND)     += xen-blkfront.o
  obj-$(CONFIG_XEN_BLKDEV_BACKEND)      += xen-blkback/
-diff -NurpP --minimal linux-4.9.135/drivers/block/loop.c linux-4.9.135-vs2.3.9.8/drivers/block/loop.c
---- linux-4.9.135/drivers/block/loop.c 2018-10-20 10:38:49.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/drivers/block/loop.c       2018-10-20 04:58:13.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/drivers/block/loop.c linux-4.9/drivers/block/loop.c
+--- linux-4.9/drivers/block/loop.c     2021-02-24 15:47:31.117305737 +0100
++++ linux-4.9/drivers/block/loop.c     2021-02-24 15:47:45.051074969 +0100
 @@ -76,6 +76,7 @@
  #include <linux/miscdevice.h>
  #include <linux/falloc.h>
 @@ -76,6 +76,7 @@
  #include <linux/miscdevice.h>
  #include <linux/falloc.h>
@@ -793,7 +793,7 @@ diff -NurpP --minimal linux-4.9.135/drivers/block/loop.c linux-4.9.135-vs2.3.9.8
                info->lo_encrypt_key_size = lo->lo_encrypt_key_size;
                memcpy(info->lo_encrypt_key, lo->lo_encrypt_key,
                       lo->lo_encrypt_key_size);
                info->lo_encrypt_key_size = lo->lo_encrypt_key_size;
                memcpy(info->lo_encrypt_key, lo->lo_encrypt_key,
                       lo->lo_encrypt_key_size);
-@@ -1568,6 +1572,11 @@ static int lo_open(struct block_device *
+@@ -1569,6 +1573,11 @@ static int lo_open(struct block_device *
                goto out;
        }
  
                goto out;
        }
  
@@ -805,9 +805,9 @@ diff -NurpP --minimal linux-4.9.135/drivers/block/loop.c linux-4.9.135-vs2.3.9.8
        atomic_inc(&lo->lo_refcnt);
  out:
        mutex_unlock(&loop_index_mutex);
        atomic_inc(&lo->lo_refcnt);
  out:
        mutex_unlock(&loop_index_mutex);
-diff -NurpP --minimal linux-4.9.135/drivers/block/loop.h linux-4.9.135-vs2.3.9.8/drivers/block/loop.h
---- linux-4.9.135/drivers/block/loop.h 2018-10-20 10:38:49.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/drivers/block/loop.h       2018-10-20 04:58:13.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/drivers/block/loop.h linux-4.9/drivers/block/loop.h
+--- linux-4.9/drivers/block/loop.h     2021-02-24 15:47:31.117305737 +0100
++++ linux-4.9/drivers/block/loop.h     2021-02-24 15:47:45.051074969 +0100
 @@ -43,6 +43,7 @@ struct loop_device {
        struct loop_func_table *lo_encryption;
        __u32           lo_init[2];
 @@ -43,6 +43,7 @@ struct loop_device {
        struct loop_func_table *lo_encryption;
        __u32           lo_init[2];
@@ -816,9 +816,9 @@ diff -NurpP --minimal linux-4.9.135/drivers/block/loop.h linux-4.9.135-vs2.3.9.8
        int             (*ioctl)(struct loop_device *, int cmd, 
                                 unsigned long arg); 
  
        int             (*ioctl)(struct loop_device *, int cmd, 
                                 unsigned long arg); 
  
-diff -NurpP --minimal linux-4.9.135/drivers/block/vroot.c linux-4.9.135-vs2.3.9.8/drivers/block/vroot.c
---- linux-4.9.135/drivers/block/vroot.c        1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/drivers/block/vroot.c      2018-10-20 04:58:13.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/drivers/block/vroot.c linux-4.9/drivers/block/vroot.c
+--- linux-4.9/drivers/block/vroot.c    1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/drivers/block/vroot.c    2021-02-24 15:47:45.051074969 +0100
 @@ -0,0 +1,291 @@
 +/*
 + *  linux/drivers/block/vroot.c
 @@ -0,0 +1,291 @@
 +/*
 + *  linux/drivers/block/vroot.c
@@ -1111,9 +1111,9 @@ diff -NurpP --minimal linux-4.9.135/drivers/block/vroot.c linux-4.9.135-vs2.3.9.
 +
 +#endif
 +
 +
 +#endif
 +
-diff -NurpP --minimal linux-4.9.135/drivers/md/dm-core.h linux-4.9.135-vs2.3.9.8/drivers/md/dm-core.h
---- linux-4.9.135/drivers/md/dm-core.h 2018-10-20 10:38:58.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/drivers/md/dm-core.h       2018-10-20 04:58:13.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/drivers/md/dm-core.h linux-4.9/drivers/md/dm-core.h
+--- linux-4.9/drivers/md/dm-core.h     2021-02-24 15:47:31.450649498 +0100
++++ linux-4.9/drivers/md/dm-core.h     2021-02-24 15:47:45.051074969 +0100
 @@ -52,6 +52,7 @@ struct mapped_device {
  
        atomic_t holders;
 @@ -52,6 +52,7 @@ struct mapped_device {
  
        atomic_t holders;
@@ -1122,9 +1122,9 @@ diff -NurpP --minimal linux-4.9.135/drivers/md/dm-core.h linux-4.9.135-vs2.3.9.8
  
        struct dm_target *immutable_target;
        struct target_type *immutable_target_type;
  
        struct dm_target *immutable_target;
        struct target_type *immutable_target_type;
-diff -NurpP --minimal linux-4.9.135/drivers/md/dm-ioctl.c linux-4.9.135-vs2.3.9.8/drivers/md/dm-ioctl.c
---- linux-4.9.135/drivers/md/dm-ioctl.c        2018-10-20 10:38:58.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/drivers/md/dm-ioctl.c      2018-10-20 04:58:13.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/drivers/md/dm-ioctl.c linux-4.9/drivers/md/dm-ioctl.c
+--- linux-4.9/drivers/md/dm-ioctl.c    2021-02-24 15:47:31.450649498 +0100
++++ linux-4.9/drivers/md/dm-ioctl.c    2021-02-24 15:47:45.051074969 +0100
 @@ -16,6 +16,7 @@
  #include <linux/dm-ioctl.h>
  #include <linux/hdreg.h>
 @@ -16,6 +16,7 @@
  #include <linux/dm-ioctl.h>
  #include <linux/hdreg.h>
@@ -1199,7 +1199,7 @@ diff -NurpP --minimal linux-4.9.135/drivers/md/dm-ioctl.c linux-4.9.135-vs2.3.9.
                        if (old_nl)
                                old_nl->next = (uint32_t) ((void *) nl -
                                                           (void *) old_nl);
                        if (old_nl)
                                old_nl->next = (uint32_t) ((void *) nl -
                                                           (void *) old_nl);
-@@ -1805,8 +1817,8 @@ static int ctl_ioctl(uint command, struc
+@@ -1800,8 +1812,8 @@ static int ctl_ioctl(uint command, struc
        size_t input_param_size;
        struct dm_ioctl param_kernel;
  
        size_t input_param_size;
        struct dm_ioctl param_kernel;
  
@@ -1210,9 +1210,9 @@ diff -NurpP --minimal linux-4.9.135/drivers/md/dm-ioctl.c linux-4.9.135-vs2.3.9.
                return -EACCES;
  
        if (_IOC_TYPE(command) != DM_IOCTL)
                return -EACCES;
  
        if (_IOC_TYPE(command) != DM_IOCTL)
-diff -NurpP --minimal linux-4.9.135/drivers/md/dm.c linux-4.9.135-vs2.3.9.8/drivers/md/dm.c
---- linux-4.9.135/drivers/md/dm.c      2018-10-20 10:38:58.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/drivers/md/dm.c    2018-10-20 04:58:13.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/drivers/md/dm.c linux-4.9/drivers/md/dm.c
+--- linux-4.9/drivers/md/dm.c  2021-02-24 15:47:31.457316373 +0100
++++ linux-4.9/drivers/md/dm.c  2021-02-24 15:47:45.051074969 +0100
 @@ -22,6 +22,7 @@
  #include <linux/wait.h>
  #include <linux/pr.h>
 @@ -22,6 +22,7 @@
  #include <linux/wait.h>
  #include <linux/pr.h>
@@ -1277,9 +1277,9 @@ diff -NurpP --minimal linux-4.9.135/drivers/md/dm.c linux-4.9.135-vs2.3.9.8/driv
  
        md->queue = blk_alloc_queue_node(GFP_KERNEL, numa_node_id);
        if (!md->queue)
  
        md->queue = blk_alloc_queue_node(GFP_KERNEL, numa_node_id);
        if (!md->queue)
-diff -NurpP --minimal linux-4.9.135/drivers/md/dm.h linux-4.9.135-vs2.3.9.8/drivers/md/dm.h
---- linux-4.9.135/drivers/md/dm.h      2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/drivers/md/dm.h    2018-10-20 04:58:13.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/drivers/md/dm.h linux-4.9/drivers/md/dm.h
+--- linux-4.9/drivers/md/dm.h  2016-12-11 20:17:54.000000000 +0100
++++ linux-4.9/drivers/md/dm.h  2021-02-24 15:47:45.051074969 +0100
 @@ -45,6 +45,8 @@ struct dm_dev_internal {
  struct dm_table;
  struct dm_md_mempools;
 @@ -45,6 +45,8 @@ struct dm_dev_internal {
  struct dm_table;
  struct dm_md_mempools;
@@ -1289,9 +1289,9 @@ diff -NurpP --minimal linux-4.9.135/drivers/md/dm.h linux-4.9.135-vs2.3.9.8/driv
  /*-----------------------------------------------------------------
   * Internal table functions.
   *---------------------------------------------------------------*/
  /*-----------------------------------------------------------------
   * Internal table functions.
   *---------------------------------------------------------------*/
-diff -NurpP --minimal linux-4.9.135/drivers/net/tun.c linux-4.9.135-vs2.3.9.8/drivers/net/tun.c
---- linux-4.9.135/drivers/net/tun.c    2018-10-20 10:39:05.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/drivers/net/tun.c  2018-10-20 04:58:13.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/drivers/net/tun.c linux-4.9/drivers/net/tun.c
+--- linux-4.9/drivers/net/tun.c        2021-02-24 15:47:31.743992008 +0100
++++ linux-4.9/drivers/net/tun.c        2021-02-24 15:47:45.051074969 +0100
 @@ -65,6 +65,7 @@
  #include <linux/nsproxy.h>
  #include <linux/virtio_net.h>
 @@ -65,6 +65,7 @@
  #include <linux/nsproxy.h>
  #include <linux/virtio_net.h>
@@ -1316,7 +1316,7 @@ diff -NurpP --minimal linux-4.9.135/drivers/net/tun.c linux-4.9.135-vs2.3.9.8/dr
  }
  
  static void tun_set_real_num_queues(struct tun_struct *tun)
  }
  
  static void tun_set_real_num_queues(struct tun_struct *tun)
-@@ -1558,6 +1561,7 @@ static void tun_setup(struct net_device
+@@ -1569,6 +1572,7 @@ static void tun_setup(struct net_device
  
        tun->owner = INVALID_UID;
        tun->group = INVALID_GID;
  
        tun->owner = INVALID_UID;
        tun->group = INVALID_GID;
@@ -1324,7 +1324,7 @@ diff -NurpP --minimal linux-4.9.135/drivers/net/tun.c linux-4.9.135-vs2.3.9.8/dr
  
        dev->ethtool_ops = &tun_ethtool_ops;
        dev->destructor = tun_free_netdev;
  
        dev->ethtool_ops = &tun_ethtool_ops;
        dev->destructor = tun_free_netdev;
-@@ -1769,7 +1773,7 @@ static int tun_set_iff(struct net *net,
+@@ -1782,7 +1786,7 @@ static int tun_set_iff(struct net *net,
                int queues = ifr->ifr_flags & IFF_MULTI_QUEUE ?
                             MAX_TAP_QUEUES : 1;
  
                int queues = ifr->ifr_flags & IFF_MULTI_QUEUE ?
                             MAX_TAP_QUEUES : 1;
  
@@ -1333,7 +1333,7 @@ diff -NurpP --minimal linux-4.9.135/drivers/net/tun.c linux-4.9.135-vs2.3.9.8/dr
                        return -EPERM;
                err = security_tun_dev_create();
                if (err < 0)
                        return -EPERM;
                err = security_tun_dev_create();
                if (err < 0)
-@@ -2134,6 +2138,16 @@ static long __tun_chr_ioctl(struct file
+@@ -2151,6 +2155,16 @@ static long __tun_chr_ioctl(struct file
                          from_kgid(&init_user_ns, tun->group));
                break;
  
                          from_kgid(&init_user_ns, tun->group));
                break;
  
@@ -1350,10 +1350,10 @@ diff -NurpP --minimal linux-4.9.135/drivers/net/tun.c linux-4.9.135-vs2.3.9.8/dr
        case TUNSETLINK:
                /* Only allow setting the type when the interface is down */
                if (tun->dev->flags & IFF_UP) {
        case TUNSETLINK:
                /* Only allow setting the type when the interface is down */
                if (tun->dev->flags & IFF_UP) {
-diff -NurpP --minimal linux-4.9.135/drivers/scsi/cxgbi/libcxgbi.c linux-4.9.135-vs2.3.9.8/drivers/scsi/cxgbi/libcxgbi.c
---- linux-4.9.135/drivers/scsi/cxgbi/libcxgbi.c        2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/drivers/scsi/cxgbi/libcxgbi.c      2018-10-20 04:58:13.000000000 +0000
-@@ -772,7 +772,8 @@ static struct cxgbi_sock *cxgbi_check_ro
+diff -urNp -x '*.orig' linux-4.9/drivers/scsi/cxgbi/libcxgbi.c linux-4.9/drivers/scsi/cxgbi/libcxgbi.c
+--- linux-4.9/drivers/scsi/cxgbi/libcxgbi.c    2021-02-24 15:47:31.947331702 +0100
++++ linux-4.9/drivers/scsi/cxgbi/libcxgbi.c    2021-02-24 15:47:45.051074969 +0100
+@@ -777,7 +777,8 @@ static struct cxgbi_sock *cxgbi_check_ro
                struct inet6_dev *idev = ip6_dst_idev((struct dst_entry *)rt);
  
                err = ipv6_dev_get_saddr(&init_net, idev ? idev->dev : NULL,
                struct inet6_dev *idev = ip6_dst_idev((struct dst_entry *)rt);
  
                err = ipv6_dev_get_saddr(&init_net, idev ? idev->dev : NULL,
@@ -1363,9 +1363,9 @@ diff -NurpP --minimal linux-4.9.135/drivers/scsi/cxgbi/libcxgbi.c linux-4.9.135-
                if (err) {
                        pr_info("failed to get source address to reach %pI6\n",
                                &daddr6->sin6_addr);
                if (err) {
                        pr_info("failed to get source address to reach %pI6\n",
                                &daddr6->sin6_addr);
-diff -NurpP --minimal linux-4.9.135/drivers/tty/sysrq.c linux-4.9.135-vs2.3.9.8/drivers/tty/sysrq.c
---- linux-4.9.135/drivers/tty/sysrq.c  2018-10-20 10:39:13.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/drivers/tty/sysrq.c        2018-10-20 04:58:13.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/drivers/tty/sysrq.c linux-4.9/drivers/tty/sysrq.c
+--- linux-4.9/drivers/tty/sysrq.c      2021-02-24 15:47:32.084002644 +0100
++++ linux-4.9/drivers/tty/sysrq.c      2021-02-24 15:47:45.051074969 +0100
 @@ -47,6 +47,7 @@
  #include <linux/syscalls.h>
  #include <linux/of.h>
 @@ -47,6 +47,7 @@
  #include <linux/syscalls.h>
  #include <linux/of.h>
@@ -1417,9 +1417,9 @@ diff -NurpP --minimal linux-4.9.135/drivers/tty/sysrq.c linux-4.9.135-vs2.3.9.8/
        else
                retval = -1;
        return retval;
        else
                retval = -1;
        return retval;
-diff -NurpP --minimal linux-4.9.135/drivers/tty/tty_io.c linux-4.9.135-vs2.3.9.8/drivers/tty/tty_io.c
---- linux-4.9.135/drivers/tty/tty_io.c 2018-10-20 10:39:13.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/drivers/tty/tty_io.c       2018-10-20 05:55:42.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/drivers/tty/tty_io.c linux-4.9/drivers/tty/tty_io.c
+--- linux-4.9/drivers/tty/tty_io.c     2021-02-24 15:47:32.084002644 +0100
++++ linux-4.9/drivers/tty/tty_io.c     2021-02-24 15:47:45.054408406 +0100
 @@ -104,6 +104,7 @@
  
  #include <linux/kmod.h>
 @@ -104,6 +104,7 @@
  
  #include <linux/kmod.h>
@@ -1428,7 +1428,7 @@ diff -NurpP --minimal linux-4.9.135/drivers/tty/tty_io.c linux-4.9.135-vs2.3.9.8
  
  #undef TTY_DEBUG_HANGUP
  #ifdef TTY_DEBUG_HANGUP
  
  #undef TTY_DEBUG_HANGUP
  #ifdef TTY_DEBUG_HANGUP
-@@ -2308,7 +2309,8 @@ static int tiocsti(struct tty_struct *tt
+@@ -2321,7 +2322,8 @@ static int tiocsti(struct tty_struct *tt
        char ch, mbz = 0;
        struct tty_ldisc *ld;
  
        char ch, mbz = 0;
        struct tty_ldisc *ld;
  
@@ -1438,17 +1438,17 @@ diff -NurpP --minimal linux-4.9.135/drivers/tty/tty_io.c linux-4.9.135-vs2.3.9.8
                return -EPERM;
        if (get_user(ch, p))
                return -EFAULT;
                return -EPERM;
        if (get_user(ch, p))
                return -EFAULT;
-@@ -2623,6 +2625,7 @@ static int tiocspgrp(struct tty_struct *
-               return -ENOTTY;
+@@ -2634,6 +2636,7 @@ static int tiocspgrp(struct tty_struct *
        if (get_user(pgrp_nr, p))
                return -EFAULT;
 +      pgrp_nr = vx_rmap_pid(pgrp_nr);
        if (pgrp_nr < 0)
                return -EINVAL;
        if (get_user(pgrp_nr, p))
                return -EFAULT;
 +      pgrp_nr = vx_rmap_pid(pgrp_nr);
        if (pgrp_nr < 0)
                return -EINVAL;
-       rcu_read_lock();
-diff -NurpP --minimal linux-4.9.135/fs/attr.c linux-4.9.135-vs2.3.9.8/fs/attr.c
---- linux-4.9.135/fs/attr.c    2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/fs/attr.c  2018-10-20 04:58:13.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/fs/attr.c linux-4.9/fs/attr.c
+--- linux-4.9/fs/attr.c        2016-12-11 20:17:54.000000000 +0100
++++ linux-4.9/fs/attr.c        2021-02-24 15:47:45.054408406 +0100
 @@ -15,6 +15,9 @@
  #include <linux/security.h>
  #include <linux/evm.h>
 @@ -15,6 +15,9 @@
  #include <linux/security.h>
  #include <linux/evm.h>
@@ -1489,9 +1489,9 @@ diff -NurpP --minimal linux-4.9.135/fs/attr.c linux-4.9.135-vs2.3.9.8/fs/attr.c
                if (IS_IMMUTABLE(inode) || IS_APPEND(inode))
                        return -EPERM;
        }
                if (IS_IMMUTABLE(inode) || IS_APPEND(inode))
                        return -EPERM;
        }
-diff -NurpP --minimal linux-4.9.135/fs/block_dev.c linux-4.9.135-vs2.3.9.8/fs/block_dev.c
---- linux-4.9.135/fs/block_dev.c       2018-10-20 10:39:16.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/fs/block_dev.c     2018-10-20 04:58:13.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/fs/block_dev.c linux-4.9/fs/block_dev.c
+--- linux-4.9/fs/block_dev.c   2021-02-24 15:47:32.207339836 +0100
++++ linux-4.9/fs/block_dev.c   2021-02-24 15:47:45.054408406 +0100
 @@ -31,6 +31,7 @@
  #include <linux/dax.h>
  #include <linux/badblocks.h>
 @@ -31,6 +31,7 @@
  #include <linux/dax.h>
  #include <linux/badblocks.h>
@@ -1500,7 +1500,7 @@ diff -NurpP --minimal linux-4.9.135/fs/block_dev.c linux-4.9.135-vs2.3.9.8/fs/bl
  #include <asm/uaccess.h>
  #include "internal.h"
  
  #include <asm/uaccess.h>
  #include "internal.h"
  
-@@ -720,6 +721,7 @@ struct block_device *bdget(dev_t dev)
+@@ -734,6 +735,7 @@ struct block_device *bdget(dev_t dev)
                bdev->bd_invalidated = 0;
                inode->i_mode = S_IFBLK;
                inode->i_rdev = dev;
                bdev->bd_invalidated = 0;
                inode->i_mode = S_IFBLK;
                inode->i_rdev = dev;
@@ -1508,7 +1508,7 @@ diff -NurpP --minimal linux-4.9.135/fs/block_dev.c linux-4.9.135-vs2.3.9.8/fs/bl
                inode->i_bdev = bdev;
                inode->i_data.a_ops = &def_blk_aops;
                mapping_set_gfp_mask(&inode->i_data, GFP_USER);
                inode->i_bdev = bdev;
                inode->i_data.a_ops = &def_blk_aops;
                mapping_set_gfp_mask(&inode->i_data, GFP_USER);
-@@ -766,6 +768,11 @@ EXPORT_SYMBOL(bdput);
+@@ -780,6 +782,11 @@ EXPORT_SYMBOL(bdput);
  static struct block_device *bd_acquire(struct inode *inode)
  {
        struct block_device *bdev;
  static struct block_device *bd_acquire(struct inode *inode)
  {
        struct block_device *bdev;
@@ -1520,7 +1520,7 @@ diff -NurpP --minimal linux-4.9.135/fs/block_dev.c linux-4.9.135-vs2.3.9.8/fs/bl
  
        spin_lock(&bdev_lock);
        bdev = inode->i_bdev;
  
        spin_lock(&bdev_lock);
        bdev = inode->i_bdev;
-@@ -776,7 +783,7 @@ static struct block_device *bd_acquire(s
+@@ -790,7 +797,7 @@ static struct block_device *bd_acquire(s
        }
        spin_unlock(&bdev_lock);
  
        }
        spin_unlock(&bdev_lock);
  
@@ -1529,10 +1529,10 @@ diff -NurpP --minimal linux-4.9.135/fs/block_dev.c linux-4.9.135-vs2.3.9.8/fs/bl
        if (bdev) {
                spin_lock(&bdev_lock);
                if (!inode->i_bdev) {
        if (bdev) {
                spin_lock(&bdev_lock);
                if (!inode->i_bdev) {
-diff -NurpP --minimal linux-4.9.135/fs/btrfs/ctree.h linux-4.9.135-vs2.3.9.8/fs/btrfs/ctree.h
---- linux-4.9.135/fs/btrfs/ctree.h     2018-10-20 10:39:16.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/fs/btrfs/ctree.h   2018-10-20 04:58:13.000000000 +0000
-@@ -1321,6 +1321,8 @@ static inline u32 BTRFS_MAX_XATTR_SIZE(c
+diff -urNp -x '*.orig' linux-4.9/fs/btrfs/ctree.h linux-4.9/fs/btrfs/ctree.h
+--- linux-4.9/fs/btrfs/ctree.h 2021-02-24 15:47:32.210673274 +0100
++++ linux-4.9/fs/btrfs/ctree.h 2021-02-24 15:47:45.054408406 +0100
+@@ -1319,6 +1319,8 @@ static inline u32 BTRFS_MAX_XATTR_SIZE(c
  #define BTRFS_DEFAULT_COMMIT_INTERVAL (30)
  #define BTRFS_DEFAULT_MAX_INLINE      (2048)
  
  #define BTRFS_DEFAULT_COMMIT_INTERVAL (30)
  #define BTRFS_DEFAULT_MAX_INLINE      (2048)
  
@@ -1541,7 +1541,7 @@ diff -NurpP --minimal linux-4.9.135/fs/btrfs/ctree.h linux-4.9.135-vs2.3.9.8/fs/
  #define btrfs_clear_opt(o, opt)               ((o) &= ~BTRFS_MOUNT_##opt)
  #define btrfs_set_opt(o, opt)         ((o) |= BTRFS_MOUNT_##opt)
  #define btrfs_raw_test_opt(o, opt)    ((o) & BTRFS_MOUNT_##opt)
  #define btrfs_clear_opt(o, opt)               ((o) &= ~BTRFS_MOUNT_##opt)
  #define btrfs_set_opt(o, opt)         ((o) |= BTRFS_MOUNT_##opt)
  #define btrfs_raw_test_opt(o, opt)    ((o) & BTRFS_MOUNT_##opt)
-@@ -1668,6 +1670,7 @@ BTRFS_SETGET_FUNCS(inode_block_group, st
+@@ -1669,6 +1671,7 @@ BTRFS_SETGET_FUNCS(inode_block_group, st
  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);
  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);
@@ -1549,7 +1549,7 @@ diff -NurpP --minimal linux-4.9.135/fs/btrfs/ctree.h linux-4.9.135-vs2.3.9.8/fs/
  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);
  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);
-@@ -1715,6 +1718,10 @@ BTRFS_SETGET_FUNCS(extent_flags, struct
+@@ -1716,6 +1719,10 @@ BTRFS_SETGET_FUNCS(extent_flags, struct
  
  BTRFS_SETGET_FUNCS(extent_refs_v0, struct btrfs_extent_item_v0, refs, 32);
  
  
  BTRFS_SETGET_FUNCS(extent_refs_v0, struct btrfs_extent_item_v0, refs, 32);
  
@@ -1560,7 +1560,7 @@ diff -NurpP --minimal linux-4.9.135/fs/btrfs/ctree.h linux-4.9.135-vs2.3.9.8/fs/
  
  BTRFS_SETGET_FUNCS(tree_block_level, struct btrfs_tree_block_info, level, 8);
  
  
  BTRFS_SETGET_FUNCS(tree_block_level, struct btrfs_tree_block_info, level, 8);
  
-@@ -3197,6 +3204,7 @@ int btrfs_ioctl_get_supported_features(v
+@@ -3199,6 +3206,7 @@ int btrfs_ioctl_get_supported_features(v
  void btrfs_update_iflags(struct inode *inode);
  void btrfs_inherit_iflags(struct inode *inode, struct inode *dir);
  int btrfs_is_empty_uuid(u8 *uuid);
  void btrfs_update_iflags(struct inode *inode);
  void btrfs_inherit_iflags(struct inode *inode, struct inode *dir);
  int btrfs_is_empty_uuid(u8 *uuid);
@@ -1568,10 +1568,10 @@ diff -NurpP --minimal linux-4.9.135/fs/btrfs/ctree.h linux-4.9.135-vs2.3.9.8/fs/
  int btrfs_defrag_file(struct inode *inode, struct file *file,
                      struct btrfs_ioctl_defrag_range_args *range,
                      u64 newer_than, unsigned long max_pages);
  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-4.9.135/fs/btrfs/disk-io.c linux-4.9.135-vs2.3.9.8/fs/btrfs/disk-io.c
---- linux-4.9.135/fs/btrfs/disk-io.c   2018-10-20 10:39:16.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/fs/btrfs/disk-io.c 2018-10-20 05:55:42.000000000 +0000
-@@ -2852,6 +2852,9 @@ int open_ctree(struct super_block *sb,
+diff -urNp -x '*.orig' linux-4.9/fs/btrfs/disk-io.c linux-4.9/fs/btrfs/disk-io.c
+--- linux-4.9/fs/btrfs/disk-io.c       2021-02-24 15:47:32.210673274 +0100
++++ linux-4.9/fs/btrfs/disk-io.c       2021-02-24 15:47:45.054408406 +0100
+@@ -2712,6 +2712,9 @@ int open_ctree(struct super_block *sb,
                goto fail_alloc;
        }
  
                goto fail_alloc;
        }
  
@@ -1581,9 +1581,9 @@ diff -NurpP --minimal linux-4.9.135/fs/btrfs/disk-io.c linux-4.9.135-vs2.3.9.8/f
        features = btrfs_super_incompat_flags(disk_super) &
                ~BTRFS_FEATURE_INCOMPAT_SUPP;
        if (features) {
        features = btrfs_super_incompat_flags(disk_super) &
                ~BTRFS_FEATURE_INCOMPAT_SUPP;
        if (features) {
-diff -NurpP --minimal linux-4.9.135/fs/btrfs/inode.c linux-4.9.135-vs2.3.9.8/fs/btrfs/inode.c
---- linux-4.9.135/fs/btrfs/inode.c     2018-10-20 10:39:16.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/fs/btrfs/inode.c   2018-10-20 04:58:13.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/fs/btrfs/inode.c linux-4.9/fs/btrfs/inode.c
+--- linux-4.9/fs/btrfs/inode.c 2021-02-24 15:47:32.217340149 +0100
++++ linux-4.9/fs/btrfs/inode.c 2021-02-24 15:47:45.057741845 +0100
 @@ -43,6 +43,7 @@
  #include <linux/blkdev.h>
  #include <linux/posix_acl_xattr.h>
 @@ -43,6 +43,7 @@
  #include <linux/blkdev.h>
  #include <linux/posix_acl_xattr.h>
@@ -1592,7 +1592,7 @@ diff -NurpP --minimal linux-4.9.135/fs/btrfs/inode.c linux-4.9.135-vs2.3.9.8/fs/
  #include "ctree.h"
  #include "disk-io.h"
  #include "transaction.h"
  #include "ctree.h"
  #include "disk-io.h"
  #include "transaction.h"
-@@ -3701,6 +3702,9 @@ static int btrfs_read_locked_inode(struc
+@@ -3717,6 +3718,9 @@ static int btrfs_read_locked_inode(struc
        unsigned long ptr;
        int maybe_acls;
        u32 rdev;
        unsigned long ptr;
        int maybe_acls;
        u32 rdev;
@@ -1602,7 +1602,7 @@ diff -NurpP --minimal linux-4.9.135/fs/btrfs/inode.c linux-4.9.135-vs2.3.9.8/fs/
        int ret;
        bool filled = false;
        int first_xattr_slot;
        int ret;
        bool filled = false;
        int first_xattr_slot;
-@@ -3733,8 +3737,14 @@ static int btrfs_read_locked_inode(struc
+@@ -3749,8 +3753,14 @@ static int btrfs_read_locked_inode(struc
                                    struct btrfs_inode_item);
        inode->i_mode = btrfs_inode_mode(leaf, inode_item);
        set_nlink(inode, btrfs_inode_nlink(leaf, inode_item));
                                    struct btrfs_inode_item);
        inode->i_mode = btrfs_inode_mode(leaf, inode_item);
        set_nlink(inode, btrfs_inode_nlink(leaf, inode_item));
@@ -1619,7 +1619,7 @@ diff -NurpP --minimal linux-4.9.135/fs/btrfs/inode.c linux-4.9.135-vs2.3.9.8/fs/
        btrfs_i_size_write(inode, btrfs_inode_size(leaf, inode_item));
  
        inode->i_atime.tv_sec = btrfs_timespec_sec(leaf, &inode_item->atime);
        btrfs_i_size_write(inode, btrfs_inode_size(leaf, inode_item));
  
        inode->i_atime.tv_sec = btrfs_timespec_sec(leaf, &inode_item->atime);
-@@ -3889,11 +3899,18 @@ static void fill_inode_item(struct btrfs
+@@ -3905,11 +3915,18 @@ static void fill_inode_item(struct btrfs
                            struct inode *inode)
  {
        struct btrfs_map_token token;
                            struct inode *inode)
  {
        struct btrfs_map_token token;
@@ -1640,7 +1640,7 @@ diff -NurpP --minimal linux-4.9.135/fs/btrfs/inode.c linux-4.9.135-vs2.3.9.8/fs/
        btrfs_set_token_inode_size(leaf, item, BTRFS_I(inode)->disk_i_size,
                                   &token);
        btrfs_set_token_inode_mode(leaf, item, inode->i_mode, &token);
        btrfs_set_token_inode_size(leaf, item, BTRFS_I(inode)->disk_i_size,
                                   &token);
        btrfs_set_token_inode_mode(leaf, item, inode->i_mode, &token);
-@@ -10646,6 +10663,7 @@ static const struct inode_operations btr
+@@ -10687,6 +10704,7 @@ static const struct inode_operations btr
        .mknod          = btrfs_mknod,
        .listxattr      = btrfs_listxattr,
        .permission     = btrfs_permission,
        .mknod          = btrfs_mknod,
        .listxattr      = btrfs_listxattr,
        .permission     = btrfs_permission,
@@ -1648,7 +1648,7 @@ diff -NurpP --minimal linux-4.9.135/fs/btrfs/inode.c linux-4.9.135-vs2.3.9.8/fs/
        .get_acl        = btrfs_get_acl,
        .set_acl        = btrfs_set_acl,
        .update_time    = btrfs_update_time,
        .get_acl        = btrfs_get_acl,
        .set_acl        = btrfs_set_acl,
        .update_time    = btrfs_update_time,
-@@ -10654,6 +10672,7 @@ static const struct inode_operations btr
+@@ -10695,6 +10713,7 @@ static const struct inode_operations btr
  static const struct inode_operations btrfs_dir_ro_inode_operations = {
        .lookup         = btrfs_lookup,
        .permission     = btrfs_permission,
  static const struct inode_operations btrfs_dir_ro_inode_operations = {
        .lookup         = btrfs_lookup,
        .permission     = btrfs_permission,
@@ -1656,7 +1656,7 @@ diff -NurpP --minimal linux-4.9.135/fs/btrfs/inode.c linux-4.9.135-vs2.3.9.8/fs/
        .update_time    = btrfs_update_time,
  };
  
        .update_time    = btrfs_update_time,
  };
  
-@@ -10719,6 +10738,7 @@ static const struct inode_operations btr
+@@ -10760,6 +10779,7 @@ static const struct inode_operations btr
        .listxattr      = btrfs_listxattr,
        .permission     = btrfs_permission,
        .fiemap         = btrfs_fiemap,
        .listxattr      = btrfs_listxattr,
        .permission     = btrfs_permission,
        .fiemap         = btrfs_fiemap,
@@ -1664,9 +1664,9 @@ diff -NurpP --minimal linux-4.9.135/fs/btrfs/inode.c linux-4.9.135-vs2.3.9.8/fs/
        .get_acl        = btrfs_get_acl,
        .set_acl        = btrfs_set_acl,
        .update_time    = btrfs_update_time,
        .get_acl        = btrfs_get_acl,
        .set_acl        = btrfs_set_acl,
        .update_time    = btrfs_update_time,
-diff -NurpP --minimal linux-4.9.135/fs/btrfs/ioctl.c linux-4.9.135-vs2.3.9.8/fs/btrfs/ioctl.c
---- linux-4.9.135/fs/btrfs/ioctl.c     2018-10-20 10:39:16.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/fs/btrfs/ioctl.c   2018-10-20 04:58:13.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/fs/btrfs/ioctl.c linux-4.9/fs/btrfs/ioctl.c
+--- linux-4.9/fs/btrfs/ioctl.c 2021-02-24 15:47:32.217340149 +0100
++++ linux-4.9/fs/btrfs/ioctl.c 2021-02-24 15:47:45.057741845 +0100
 @@ -110,10 +110,13 @@ static unsigned int btrfs_flags_to_ioctl
  {
        unsigned int iflags = 0;
 @@ -110,10 +110,13 @@ static unsigned int btrfs_flags_to_ioctl
  {
        unsigned int iflags = 0;
@@ -1845,9 +1845,9 @@ diff -NurpP --minimal linux-4.9.135/fs/btrfs/ioctl.c linux-4.9.135-vs2.3.9.8/fs/
        if (flags & FS_APPEND_FL)
                ip->flags |= BTRFS_INODE_APPEND;
        else
        if (flags & FS_APPEND_FL)
                ip->flags |= BTRFS_INODE_APPEND;
        else
-diff -NurpP --minimal linux-4.9.135/fs/btrfs/super.c linux-4.9.135-vs2.3.9.8/fs/btrfs/super.c
---- linux-4.9.135/fs/btrfs/super.c     2018-10-20 10:39:16.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/fs/btrfs/super.c   2018-10-20 04:58:13.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/fs/btrfs/super.c linux-4.9/fs/btrfs/super.c
+--- linux-4.9/fs/btrfs/super.c 2021-02-24 15:47:32.224007024 +0100
++++ linux-4.9/fs/btrfs/super.c 2021-02-24 15:47:45.057741845 +0100
 @@ -327,7 +327,7 @@ enum {
  #ifdef CONFIG_BTRFS_DEBUG
        Opt_fragment_data, Opt_fragment_metadata, Opt_fragment_all,
 @@ -327,7 +327,7 @@ enum {
  #ifdef CONFIG_BTRFS_DEBUG
        Opt_fragment_data, Opt_fragment_metadata, Opt_fragment_all,
@@ -1890,7 +1890,7 @@ diff -NurpP --minimal linux-4.9.135/fs/btrfs/super.c linux-4.9.135-vs2.3.9.8/fs/
                case Opt_err:
                        btrfs_info(root->fs_info,
                                   "unrecognized mount option '%s'", p);
                case Opt_err:
                        btrfs_info(root->fs_info,
                                   "unrecognized mount option '%s'", p);
-@@ -1754,6 +1773,12 @@ static int btrfs_remount(struct super_bl
+@@ -1760,6 +1779,12 @@ static int btrfs_remount(struct super_bl
        btrfs_resize_thread_pool(fs_info,
                fs_info->thread_pool_size, old_thread_pool_size);
  
        btrfs_resize_thread_pool(fs_info,
                fs_info->thread_pool_size, old_thread_pool_size);
  
@@ -1903,9 +1903,9 @@ diff -NurpP --minimal linux-4.9.135/fs/btrfs/super.c linux-4.9.135-vs2.3.9.8/fs/
        if ((*flags & MS_RDONLY) == (sb->s_flags & MS_RDONLY))
                goto out;
  
        if ((*flags & MS_RDONLY) == (sb->s_flags & MS_RDONLY))
                goto out;
  
-diff -NurpP --minimal linux-4.9.135/fs/char_dev.c linux-4.9.135-vs2.3.9.8/fs/char_dev.c
---- linux-4.9.135/fs/char_dev.c        2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/fs/char_dev.c      2018-10-20 04:58:13.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/fs/char_dev.c linux-4.9/fs/char_dev.c
+--- linux-4.9/fs/char_dev.c    2021-02-24 15:47:32.230673899 +0100
++++ linux-4.9/fs/char_dev.c    2021-02-24 15:47:45.057741845 +0100
 @@ -21,6 +21,8 @@
  #include <linux/mutex.h>
  #include <linux/backing-dev.h>
 @@ -21,6 +21,8 @@
  #include <linux/mutex.h>
  #include <linux/backing-dev.h>
@@ -1915,7 +1915,7 @@ diff -NurpP --minimal linux-4.9.135/fs/char_dev.c linux-4.9.135-vs2.3.9.8/fs/cha
  
  #include "internal.h"
  
  
  #include "internal.h"
  
-@@ -354,14 +356,21 @@ static int chrdev_open(struct inode *ino
+@@ -360,14 +362,21 @@ static int chrdev_open(struct inode *ino
        struct cdev *p;
        struct cdev *new = NULL;
        int ret = 0;
        struct cdev *p;
        struct cdev *new = NULL;
        int ret = 0;
@@ -1938,9 +1938,9 @@ diff -NurpP --minimal linux-4.9.135/fs/char_dev.c linux-4.9.135-vs2.3.9.8/fs/cha
                if (!kobj)
                        return -ENXIO;
                new = container_of(kobj, struct cdev, kobj);
                if (!kobj)
                        return -ENXIO;
                new = container_of(kobj, struct cdev, kobj);
-diff -NurpP --minimal linux-4.9.135/fs/dcache.c linux-4.9.135-vs2.3.9.8/fs/dcache.c
---- linux-4.9.135/fs/dcache.c  2018-10-20 10:39:17.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/fs/dcache.c        2018-10-20 05:55:42.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/fs/dcache.c linux-4.9/fs/dcache.c
+--- linux-4.9/fs/dcache.c      2021-02-24 15:47:32.247341088 +0100
++++ linux-4.9/fs/dcache.c      2021-02-24 15:47:45.061075282 +0100
 @@ -39,6 +39,7 @@
  #include <linux/ratelimit.h>
  #include <linux/list_lru.h>
 @@ -39,6 +39,7 @@
  #include <linux/ratelimit.h>
  #include <linux/list_lru.h>
@@ -1998,7 +1998,7 @@ diff -NurpP --minimal linux-4.9.135/fs/dcache.c linux-4.9.135-vs2.3.9.8/fs/dcach
                                spin_unlock(&dentry->d_lock);
                                if (parent)
                                        spin_unlock(&parent->d_lock);
                                spin_unlock(&dentry->d_lock);
                                if (parent)
                                        spin_unlock(&parent->d_lock);
-@@ -1600,6 +1608,9 @@ struct dentry *__d_alloc(struct super_bl
+@@ -1594,6 +1602,9 @@ struct dentry *__d_alloc(struct super_bl
        char *dname;
        int err;
  
        char *dname;
        int err;
  
@@ -2008,7 +2008,7 @@ diff -NurpP --minimal linux-4.9.135/fs/dcache.c linux-4.9.135-vs2.3.9.8/fs/dcach
        dentry = kmem_cache_alloc(dentry_cache, GFP_KERNEL);
        if (!dentry)
                return NULL;
        dentry = kmem_cache_alloc(dentry_cache, GFP_KERNEL);
        if (!dentry)
                return NULL;
-@@ -1643,6 +1654,7 @@ struct dentry *__d_alloc(struct super_bl
+@@ -1637,6 +1648,7 @@ struct dentry *__d_alloc(struct super_bl
  
        dentry->d_lockref.count = 1;
        dentry->d_flags = 0;
  
        dentry->d_lockref.count = 1;
        dentry->d_flags = 0;
@@ -2016,7 +2016,7 @@ diff -NurpP --minimal linux-4.9.135/fs/dcache.c linux-4.9.135-vs2.3.9.8/fs/dcach
        spin_lock_init(&dentry->d_lock);
        seqcount_init(&dentry->d_seq);
        dentry->d_inode = NULL;
        spin_lock_init(&dentry->d_lock);
        seqcount_init(&dentry->d_seq);
        dentry->d_inode = NULL;
-@@ -2316,6 +2328,7 @@ struct dentry *__d_lookup(const struct d
+@@ -2310,6 +2322,7 @@ struct dentry *__d_lookup(const struct d
                        goto next;
  
                dentry->d_lockref.count++;
                        goto next;
  
                dentry->d_lockref.count++;
@@ -2024,7 +2024,7 @@ diff -NurpP --minimal linux-4.9.135/fs/dcache.c linux-4.9.135-vs2.3.9.8/fs/dcach
                found = dentry;
                spin_unlock(&dentry->d_lock);
                break;
                found = dentry;
                spin_unlock(&dentry->d_lock);
                break;
-@@ -3574,6 +3587,7 @@ static enum d_walk_ret d_genocide_kill(v
+@@ -3568,6 +3581,7 @@ static enum d_walk_ret d_genocide_kill(v
                if (!(dentry->d_flags & DCACHE_GENOCIDE)) {
                        dentry->d_flags |= DCACHE_GENOCIDE;
                        dentry->d_lockref.count--;
                if (!(dentry->d_flags & DCACHE_GENOCIDE)) {
                        dentry->d_flags |= DCACHE_GENOCIDE;
                        dentry->d_lockref.count--;
@@ -2032,9 +2032,9 @@ diff -NurpP --minimal linux-4.9.135/fs/dcache.c linux-4.9.135-vs2.3.9.8/fs/dcach
                }
        }
        return D_WALK_CONTINUE;
                }
        }
        return D_WALK_CONTINUE;
-diff -NurpP --minimal linux-4.9.135/fs/devpts/inode.c linux-4.9.135-vs2.3.9.8/fs/devpts/inode.c
---- linux-4.9.135/fs/devpts/inode.c    2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/fs/devpts/inode.c  2018-10-20 04:58:13.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/fs/devpts/inode.c linux-4.9/fs/devpts/inode.c
+--- linux-4.9/fs/devpts/inode.c        2021-02-24 15:47:32.247341088 +0100
++++ linux-4.9/fs/devpts/inode.c        2021-02-24 15:47:45.061075282 +0100
 @@ -27,6 +27,7 @@
  #include <linux/parser.h>
  #include <linux/fsnotify.h>
 @@ -27,6 +27,7 @@
  #include <linux/parser.h>
  #include <linux/fsnotify.h>
@@ -2100,7 +2100,7 @@ diff -NurpP --minimal linux-4.9.135/fs/devpts/inode.c linux-4.9.135-vs2.3.9.8/fs
  static const struct super_operations devpts_sops = {
        .statfs         = simple_statfs,
        .remount_fs     = devpts_remount,
  static const struct super_operations devpts_sops = {
        .statfs         = simple_statfs,
        .remount_fs     = devpts_remount,
-@@ -415,8 +459,10 @@ devpts_fill_super(struct super_block *s,
+@@ -416,8 +460,10 @@ devpts_fill_super(struct super_block *s,
        inode->i_mtime = inode->i_atime = inode->i_ctime = current_time(inode);
        inode->i_mode = S_IFDIR | S_IRUGO | S_IXUGO | S_IWUSR;
        inode->i_op = &simple_dir_inode_operations;
        inode->i_mtime = inode->i_atime = inode->i_ctime = current_time(inode);
        inode->i_mode = S_IFDIR | S_IRUGO | S_IXUGO | S_IWUSR;
        inode->i_op = &simple_dir_inode_operations;
@@ -2112,7 +2112,7 @@ diff -NurpP --minimal linux-4.9.135/fs/devpts/inode.c linux-4.9.135-vs2.3.9.8/fs
  
        s->s_root = d_make_root(inode);
        if (!s->s_root) {
  
        s->s_root = d_make_root(inode);
        if (!s->s_root) {
-@@ -542,6 +588,9 @@ struct dentry *devpts_pty_new(struct pts
+@@ -543,6 +589,9 @@ struct dentry *devpts_pty_new(struct pts
        inode->i_gid = opts->setgid ? opts->gid : current_fsgid();
        inode->i_mtime = inode->i_atime = inode->i_ctime = current_time(inode);
        init_special_inode(inode, S_IFCHR|opts->mode, MKDEV(UNIX98_PTY_SLAVE_MAJOR, index));
        inode->i_gid = opts->setgid ? opts->gid : current_fsgid();
        inode->i_mtime = inode->i_atime = inode->i_ctime = current_time(inode);
        init_special_inode(inode, S_IFCHR|opts->mode, MKDEV(UNIX98_PTY_SLAVE_MAJOR, index));
@@ -2122,9 +2122,9 @@ diff -NurpP --minimal linux-4.9.135/fs/devpts/inode.c linux-4.9.135-vs2.3.9.8/fs
  
        sprintf(s, "%d", index);
  
  
        sprintf(s, "%d", index);
  
-diff -NurpP --minimal linux-4.9.135/fs/ext2/balloc.c linux-4.9.135-vs2.3.9.8/fs/ext2/balloc.c
---- linux-4.9.135/fs/ext2/balloc.c     2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/fs/ext2/balloc.c   2018-10-20 04:58:13.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/fs/ext2/balloc.c linux-4.9/fs/ext2/balloc.c
+--- linux-4.9/fs/ext2/balloc.c 2016-12-11 20:17:54.000000000 +0100
++++ linux-4.9/fs/ext2/balloc.c 2021-02-24 15:47:45.061075282 +0100
 @@ -693,7 +693,6 @@ ext2_try_to_allocate(struct super_block
                        start = 0;
                end = EXT2_BLOCKS_PER_GROUP(sb);
 @@ -693,7 +693,6 @@ ext2_try_to_allocate(struct super_block
                        start = 0;
                end = EXT2_BLOCKS_PER_GROUP(sb);
@@ -2133,9 +2133,9 @@ diff -NurpP --minimal linux-4.9.135/fs/ext2/balloc.c linux-4.9.135-vs2.3.9.8/fs/
        BUG_ON(start > EXT2_BLOCKS_PER_GROUP(sb));
  
  repeat:
        BUG_ON(start > EXT2_BLOCKS_PER_GROUP(sb));
  
  repeat:
-diff -NurpP --minimal linux-4.9.135/fs/ext2/ext2.h linux-4.9.135-vs2.3.9.8/fs/ext2/ext2.h
---- linux-4.9.135/fs/ext2/ext2.h       2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/fs/ext2/ext2.h     2018-10-20 04:58:13.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/fs/ext2/ext2.h linux-4.9/fs/ext2/ext2.h
+--- linux-4.9/fs/ext2/ext2.h   2016-12-11 20:17:54.000000000 +0100
++++ linux-4.9/fs/ext2/ext2.h   2021-02-24 15:47:45.061075282 +0100
 @@ -247,8 +247,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) */
 @@ -247,8 +247,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) */
@@ -2183,18 +2183,18 @@ diff -NurpP --minimal linux-4.9.135/fs/ext2/ext2.h linux-4.9.135-vs2.3.9.8/fs/ex
  
  /* ioctl.c */
  extern long ext2_ioctl(struct file *, unsigned int, unsigned long);
  
  /* ioctl.c */
  extern long ext2_ioctl(struct file *, unsigned int, unsigned long);
-diff -NurpP --minimal linux-4.9.135/fs/ext2/file.c linux-4.9.135-vs2.3.9.8/fs/ext2/file.c
---- linux-4.9.135/fs/ext2/file.c       2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/fs/ext2/file.c     2018-10-20 04:58:13.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/fs/ext2/file.c linux-4.9/fs/ext2/file.c
+--- linux-4.9/fs/ext2/file.c   2016-12-11 20:17:54.000000000 +0100
++++ linux-4.9/fs/ext2/file.c   2021-02-24 15:47:45.061075282 +0100
 @@ -247,4 +247,5 @@ const struct inode_operations ext2_file_
        .get_acl        = ext2_get_acl,
        .set_acl        = ext2_set_acl,
        .fiemap         = ext2_fiemap,
 +      .sync_flags     = ext2_sync_flags,
  };
 @@ -247,4 +247,5 @@ const struct inode_operations ext2_file_
        .get_acl        = ext2_get_acl,
        .set_acl        = ext2_set_acl,
        .fiemap         = ext2_fiemap,
 +      .sync_flags     = ext2_sync_flags,
  };
-diff -NurpP --minimal linux-4.9.135/fs/ext2/ialloc.c linux-4.9.135-vs2.3.9.8/fs/ext2/ialloc.c
---- linux-4.9.135/fs/ext2/ialloc.c     2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/fs/ext2/ialloc.c   2018-10-20 04:58:13.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/fs/ext2/ialloc.c linux-4.9/fs/ext2/ialloc.c
+--- linux-4.9/fs/ext2/ialloc.c 2021-02-24 15:47:32.254007963 +0100
++++ linux-4.9/fs/ext2/ialloc.c 2021-02-24 15:47:45.061075282 +0100
 @@ -17,6 +17,7 @@
  #include <linux/backing-dev.h>
  #include <linux/buffer_head.h>
 @@ -17,6 +17,7 @@
  #include <linux/backing-dev.h>
  #include <linux/buffer_head.h>
@@ -2203,7 +2203,7 @@ diff -NurpP --minimal linux-4.9.135/fs/ext2/ialloc.c linux-4.9.135-vs2.3.9.8/fs/
  #include "ext2.h"
  #include "xattr.h"
  #include "acl.h"
  #include "ext2.h"
  #include "xattr.h"
  #include "acl.h"
-@@ -551,6 +552,7 @@ got:
+@@ -552,6 +553,7 @@ got:
                inode->i_mode = mode;
                inode->i_uid = current_fsuid();
                inode->i_gid = dir->i_gid;
                inode->i_mode = mode;
                inode->i_uid = current_fsuid();
                inode->i_gid = dir->i_gid;
@@ -2211,9 +2211,9 @@ diff -NurpP --minimal linux-4.9.135/fs/ext2/ialloc.c linux-4.9.135-vs2.3.9.8/fs/
        } else
                inode_init_owner(inode, dir, mode);
  
        } else
                inode_init_owner(inode, dir, mode);
  
-diff -NurpP --minimal linux-4.9.135/fs/ext2/inode.c linux-4.9.135-vs2.3.9.8/fs/ext2/inode.c
---- linux-4.9.135/fs/ext2/inode.c      2018-10-20 10:39:17.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/fs/ext2/inode.c    2018-10-20 04:58:13.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/fs/ext2/inode.c linux-4.9/fs/ext2/inode.c
+--- linux-4.9/fs/ext2/inode.c  2021-02-24 15:47:32.254007963 +0100
++++ linux-4.9/fs/ext2/inode.c  2021-02-24 15:47:45.061075282 +0100
 @@ -35,6 +35,7 @@
  #include <linux/iomap.h>
  #include <linux/namei.h>
 @@ -35,6 +35,7 @@
  #include <linux/iomap.h>
  #include <linux/namei.h>
@@ -2222,7 +2222,7 @@ diff -NurpP --minimal linux-4.9.135/fs/ext2/inode.c linux-4.9.135-vs2.3.9.8/fs/e
  #include "ext2.h"
  #include "acl.h"
  #include "xattr.h"
  #include "ext2.h"
  #include "acl.h"
  #include "xattr.h"
-@@ -1357,39 +1358,61 @@ void ext2_set_inode_flags(struct inode *
+@@ -1360,39 +1361,61 @@ void ext2_set_inode_flags(struct inode *
  {
        unsigned int flags = EXT2_I(inode)->i_flags;
  
  {
        unsigned int flags = EXT2_I(inode)->i_flags;
  
@@ -2292,7 +2292,7 @@ diff -NurpP --minimal linux-4.9.135/fs/ext2/inode.c linux-4.9.135-vs2.3.9.8/fs/e
  }
  
  struct inode *ext2_iget (struct super_block *sb, unsigned long ino)
  }
  
  struct inode *ext2_iget (struct super_block *sb, unsigned long ino)
-@@ -1425,8 +1448,10 @@ struct inode *ext2_iget (struct super_bl
+@@ -1428,8 +1451,10 @@ struct inode *ext2_iget (struct super_bl
                i_uid |= le16_to_cpu(raw_inode->i_uid_high) << 16;
                i_gid |= le16_to_cpu(raw_inode->i_gid_high) << 16;
        }
                i_uid |= le16_to_cpu(raw_inode->i_uid_high) << 16;
                i_gid |= le16_to_cpu(raw_inode->i_gid_high) << 16;
        }
@@ -2305,7 +2305,7 @@ diff -NurpP --minimal linux-4.9.135/fs/ext2/inode.c linux-4.9.135-vs2.3.9.8/fs/e
        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);
        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);
-@@ -1533,8 +1558,10 @@ static int __ext2_write_inode(struct ino
+@@ -1536,8 +1561,10 @@ static int __ext2_write_inode(struct ino
        struct ext2_inode_info *ei = EXT2_I(inode);
        struct super_block *sb = inode->i_sb;
        ino_t ino = inode->i_ino;
        struct ext2_inode_info *ei = EXT2_I(inode);
        struct super_block *sb = inode->i_sb;
        ino_t ino = inode->i_ino;
@@ -2318,7 +2318,7 @@ diff -NurpP --minimal linux-4.9.135/fs/ext2/inode.c linux-4.9.135-vs2.3.9.8/fs/e
        struct buffer_head * bh;
        struct ext2_inode * raw_inode = ext2_get_inode(sb, ino, &bh);
        int n;
        struct buffer_head * bh;
        struct ext2_inode * raw_inode = ext2_get_inode(sb, ino, &bh);
        int n;
-@@ -1570,6 +1597,9 @@ static int __ext2_write_inode(struct ino
+@@ -1573,6 +1600,9 @@ static int __ext2_write_inode(struct ino
                raw_inode->i_uid_high = 0;
                raw_inode->i_gid_high = 0;
        }
                raw_inode->i_uid_high = 0;
                raw_inode->i_gid_high = 0;
        }
@@ -2328,7 +2328,7 @@ diff -NurpP --minimal linux-4.9.135/fs/ext2/inode.c linux-4.9.135-vs2.3.9.8/fs/e
        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);
        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);
-@@ -1653,7 +1683,8 @@ int ext2_setattr(struct dentry *dentry,
+@@ -1656,7 +1686,8 @@ int ext2_setattr(struct dentry *dentry,
                        return error;
        }
        if ((iattr->ia_valid & ATTR_UID && !uid_eq(iattr->ia_uid, inode->i_uid)) ||
                        return error;
        }
        if ((iattr->ia_valid & ATTR_UID && !uid_eq(iattr->ia_uid, inode->i_uid)) ||
@@ -2338,9 +2338,9 @@ diff -NurpP --minimal linux-4.9.135/fs/ext2/inode.c linux-4.9.135-vs2.3.9.8/fs/e
                error = dquot_transfer(inode, iattr);
                if (error)
                        return error;
                error = dquot_transfer(inode, iattr);
                if (error)
                        return error;
-diff -NurpP --minimal linux-4.9.135/fs/ext2/ioctl.c linux-4.9.135-vs2.3.9.8/fs/ext2/ioctl.c
---- linux-4.9.135/fs/ext2/ioctl.c      2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/fs/ext2/ioctl.c    2018-10-20 04:58:13.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/fs/ext2/ioctl.c linux-4.9/fs/ext2/ioctl.c
+--- linux-4.9/fs/ext2/ioctl.c  2016-12-11 20:17:54.000000000 +0100
++++ linux-4.9/fs/ext2/ioctl.c  2021-02-24 15:47:45.061075282 +0100
 @@ -17,6 +17,16 @@
  #include <asm/uaccess.h>
  
 @@ -17,6 +17,16 @@
  #include <asm/uaccess.h>
  
@@ -2390,9 +2390,9 @@ diff -NurpP --minimal linux-4.9.135/fs/ext2/ioctl.c linux-4.9.135-vs2.3.9.8/fs/e
                flags |= oldflags & ~EXT2_FL_USER_MODIFIABLE;
                ei->i_flags = flags;
  
                flags |= oldflags & ~EXT2_FL_USER_MODIFIABLE;
                ei->i_flags = flags;
  
-diff -NurpP --minimal linux-4.9.135/fs/ext2/namei.c linux-4.9.135-vs2.3.9.8/fs/ext2/namei.c
---- linux-4.9.135/fs/ext2/namei.c      2018-10-20 10:39:17.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/fs/ext2/namei.c    2018-10-20 04:58:13.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/fs/ext2/namei.c linux-4.9/fs/ext2/namei.c
+--- linux-4.9/fs/ext2/namei.c  2021-02-24 15:47:32.254007963 +0100
++++ linux-4.9/fs/ext2/namei.c  2021-02-24 15:47:45.061075282 +0100
 @@ -32,6 +32,7 @@
  
  #include <linux/pagemap.h>
 @@ -32,6 +32,7 @@
  
  #include <linux/pagemap.h>
@@ -2417,9 +2417,9 @@ diff -NurpP --minimal linux-4.9.135/fs/ext2/namei.c linux-4.9.135-vs2.3.9.8/fs/e
        .get_acl        = ext2_get_acl,
        .set_acl        = ext2_set_acl,
  };
        .get_acl        = ext2_get_acl,
        .set_acl        = ext2_set_acl,
  };
-diff -NurpP --minimal linux-4.9.135/fs/ext2/super.c linux-4.9.135-vs2.3.9.8/fs/ext2/super.c
---- linux-4.9.135/fs/ext2/super.c      2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/fs/ext2/super.c    2018-10-20 04:58:13.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/fs/ext2/super.c linux-4.9/fs/ext2/super.c
+--- linux-4.9/fs/ext2/super.c  2021-02-24 15:47:32.254007963 +0100
++++ linux-4.9/fs/ext2/super.c  2021-02-24 15:47:45.061075282 +0100
 @@ -411,7 +411,8 @@ enum {
        Opt_err_ro, Opt_nouid32, Opt_nocheck, Opt_debug,
        Opt_oldalloc, Opt_orlov, Opt_nobh, Opt_user_xattr, Opt_nouser_xattr,
 @@ -411,7 +411,8 @@ enum {
        Opt_err_ro, Opt_nouid32, Opt_nocheck, Opt_debug,
        Opt_oldalloc, Opt_orlov, Opt_nobh, Opt_user_xattr, Opt_nouser_xattr,
@@ -2461,7 +2461,7 @@ diff -NurpP --minimal linux-4.9.135/fs/ext2/super.c linux-4.9.135-vs2.3.9.8/fs/e
                case Opt_nocheck:
                        clear_opt (sbi->s_mount_opt, CHECK);
                        break;
                case Opt_nocheck:
                        clear_opt (sbi->s_mount_opt, CHECK);
                        break;
-@@ -887,6 +905,8 @@ static int ext2_fill_super(struct super_
+@@ -898,6 +916,8 @@ static int ext2_fill_super(struct super_
        if (!parse_options((char *) data, sb))
                goto failed_mount;
  
        if (!parse_options((char *) data, sb))
                goto failed_mount;
  
@@ -2470,7 +2470,7 @@ diff -NurpP --minimal linux-4.9.135/fs/ext2/super.c linux-4.9.135-vs2.3.9.8/fs/e
        sb->s_flags = (sb->s_flags & ~MS_POSIXACL) |
                ((EXT2_SB(sb)->s_mount_opt & EXT2_MOUNT_POSIX_ACL) ?
                 MS_POSIXACL : 0);
        sb->s_flags = (sb->s_flags & ~MS_POSIXACL) |
                ((EXT2_SB(sb)->s_mount_opt & EXT2_MOUNT_POSIX_ACL) ?
                 MS_POSIXACL : 0);
-@@ -1300,6 +1320,14 @@ static int ext2_remount (struct super_bl
+@@ -1311,6 +1331,14 @@ static int ext2_remount (struct super_bl
                err = -EINVAL;
                goto restore_opts;
        }
                err = -EINVAL;
                goto restore_opts;
        }
@@ -2485,9 +2485,9 @@ diff -NurpP --minimal linux-4.9.135/fs/ext2/super.c linux-4.9.135-vs2.3.9.8/fs/e
  
        sb->s_flags = (sb->s_flags & ~MS_POSIXACL) |
                ((sbi->s_mount_opt & EXT2_MOUNT_POSIX_ACL) ? MS_POSIXACL : 0);
  
        sb->s_flags = (sb->s_flags & ~MS_POSIXACL) |
                ((sbi->s_mount_opt & EXT2_MOUNT_POSIX_ACL) ? MS_POSIXACL : 0);
-diff -NurpP --minimal linux-4.9.135/fs/ext4/ext4.h linux-4.9.135-vs2.3.9.8/fs/ext4/ext4.h
---- linux-4.9.135/fs/ext4/ext4.h       2018-10-20 10:39:17.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/fs/ext4/ext4.h     2018-10-20 11:46:17.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/fs/ext4/ext4.h linux-4.9/fs/ext4/ext4.h
+--- linux-4.9/fs/ext4/ext4.h   2021-02-24 15:47:32.254007963 +0100
++++ linux-4.9/fs/ext4/ext4.h   2021-02-24 15:47:45.064408719 +0100
 @@ -392,8 +392,11 @@ struct flex_groups {
  #define EXT4_EXTENTS_FL                       0x00080000 /* Inode uses extents */
  #define EXT4_EA_INODE_FL              0x00200000 /* Inode used for large EA */
 @@ -392,8 +392,11 @@ struct flex_groups {
  #define EXT4_EXTENTS_FL                       0x00080000 /* Inode uses extents */
  #define EXT4_EA_INODE_FL              0x00200000 /* Inode used for large EA */
@@ -2525,7 +2525,7 @@ diff -NurpP --minimal linux-4.9.135/fs/ext4/ext4.h linux-4.9.135-vs2.3.9.8/fs/ex
  #define EXT4_MOUNT_DELALLOC           0x8000000 /* Delalloc support */
  #define EXT4_MOUNT_DATA_ERR_ABORT     0x10000000 /* Abort on file data write */
  #define EXT4_MOUNT_BLOCK_VALIDITY     0x20000000 /* Block validity checking */
  #define EXT4_MOUNT_DELALLOC           0x8000000 /* Delalloc support */
  #define EXT4_MOUNT_DATA_ERR_ABORT     0x10000000 /* Abort on file data write */
  #define EXT4_MOUNT_BLOCK_VALIDITY     0x20000000 /* Block validity checking */
-@@ -2492,6 +2497,7 @@ extern int ext4_punch_hole(struct inode
+@@ -2527,6 +2532,7 @@ extern int ext4_punch_hole(struct inode
  extern int ext4_truncate_restart_trans(handle_t *, struct inode *, int nblocks);
  extern void ext4_set_inode_flags(struct inode *);
  extern void ext4_get_inode_flags(struct ext4_inode_info *);
  extern int ext4_truncate_restart_trans(handle_t *, struct inode *, int nblocks);
  extern void ext4_set_inode_flags(struct inode *);
  extern void ext4_get_inode_flags(struct ext4_inode_info *);
@@ -2533,19 +2533,19 @@ diff -NurpP --minimal linux-4.9.135/fs/ext4/ext4.h linux-4.9.135-vs2.3.9.8/fs/ex
  extern int ext4_alloc_da_blocks(struct inode *inode);
  extern void ext4_set_aops(struct inode *inode);
  extern int ext4_writepage_trans_blocks(struct inode *);
  extern int ext4_alloc_da_blocks(struct inode *inode);
  extern void ext4_set_aops(struct inode *inode);
  extern int ext4_writepage_trans_blocks(struct inode *);
-diff -NurpP --minimal linux-4.9.135/fs/ext4/file.c linux-4.9.135-vs2.3.9.8/fs/ext4/file.c
---- linux-4.9.135/fs/ext4/file.c       2018-10-20 10:39:17.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/fs/ext4/file.c     2018-10-20 04:58:13.000000000 +0000
-@@ -691,5 +691,6 @@ const struct inode_operations ext4_file_
+diff -urNp -x '*.orig' linux-4.9/fs/ext4/file.c linux-4.9/fs/ext4/file.c
+--- linux-4.9/fs/ext4/file.c   2021-02-24 15:47:32.257341400 +0100
++++ linux-4.9/fs/ext4/file.c   2021-02-24 15:47:45.064408719 +0100
+@@ -698,5 +698,6 @@ const struct inode_operations ext4_file_
        .get_acl        = ext4_get_acl,
        .set_acl        = ext4_set_acl,
        .fiemap         = ext4_fiemap,
 +      .sync_flags     = ext4_sync_flags,
  };
  
        .get_acl        = ext4_get_acl,
        .set_acl        = ext4_set_acl,
        .fiemap         = ext4_fiemap,
 +      .sync_flags     = ext4_sync_flags,
  };
  
-diff -NurpP --minimal linux-4.9.135/fs/ext4/ialloc.c linux-4.9.135-vs2.3.9.8/fs/ext4/ialloc.c
---- linux-4.9.135/fs/ext4/ialloc.c     2018-10-20 10:39:17.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/fs/ext4/ialloc.c   2018-10-20 05:55:42.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/fs/ext4/ialloc.c linux-4.9/fs/ext4/ialloc.c
+--- linux-4.9/fs/ext4/ialloc.c 2021-02-24 15:47:32.257341400 +0100
++++ linux-4.9/fs/ext4/ialloc.c 2021-02-24 15:47:45.064408719 +0100
 @@ -21,6 +21,7 @@
  #include <linux/random.h>
  #include <linux/bitops.h>
 @@ -21,6 +21,7 @@
  #include <linux/random.h>
  #include <linux/bitops.h>
@@ -2554,7 +2554,7 @@ diff -NurpP --minimal linux-4.9.135/fs/ext4/ialloc.c linux-4.9.135-vs2.3.9.8/fs/
  #include <asm/byteorder.h>
  
  #include "ext4.h"
  #include <asm/byteorder.h>
  
  #include "ext4.h"
-@@ -777,6 +778,7 @@ struct inode *__ext4_new_inode(handle_t
+@@ -780,6 +781,7 @@ struct inode *__ext4_new_inode(handle_t
                inode->i_mode = mode;
                inode->i_uid = current_fsuid();
                inode->i_gid = dir->i_gid;
                inode->i_mode = mode;
                inode->i_uid = current_fsuid();
                inode->i_gid = dir->i_gid;
@@ -2562,9 +2562,9 @@ diff -NurpP --minimal linux-4.9.135/fs/ext4/ialloc.c linux-4.9.135-vs2.3.9.8/fs/
        } else
                inode_init_owner(inode, dir, mode);
  
        } else
                inode_init_owner(inode, dir, mode);
  
-diff -NurpP --minimal linux-4.9.135/fs/ext4/inode.c linux-4.9.135-vs2.3.9.8/fs/ext4/inode.c
---- linux-4.9.135/fs/ext4/inode.c      2018-10-20 10:39:17.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/fs/ext4/inode.c    2018-10-20 05:55:42.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/fs/ext4/inode.c linux-4.9/fs/ext4/inode.c
+--- linux-4.9/fs/ext4/inode.c  2021-02-24 15:47:32.260674838 +0100
++++ linux-4.9/fs/ext4/inode.c  2021-02-24 15:47:45.064408719 +0100
 @@ -37,6 +37,7 @@
  #include <linux/printk.h>
  #include <linux/slab.h>
 @@ -37,6 +37,7 @@
  #include <linux/printk.h>
  #include <linux/slab.h>
@@ -2573,7 +2573,7 @@ diff -NurpP --minimal linux-4.9.135/fs/ext4/inode.c linux-4.9.135-vs2.3.9.8/fs/e
  
  #include "ext4_jbd2.h"
  #include "xattr.h"
  
  #include "ext4_jbd2.h"
  #include "xattr.h"
-@@ -4380,12 +4381,15 @@ void ext4_set_inode_flags(struct inode *
+@@ -4399,12 +4400,15 @@ void ext4_set_inode_flags(struct inode *
        unsigned int flags = EXT4_I(inode)->i_flags;
        unsigned int new_fl = 0;
  
        unsigned int flags = EXT4_I(inode)->i_flags;
        unsigned int new_fl = 0;
  
@@ -2591,7 +2591,7 @@ diff -NurpP --minimal linux-4.9.135/fs/ext4/inode.c linux-4.9.135-vs2.3.9.8/fs/e
        if (flags & EXT4_NOATIME_FL)
                new_fl |= S_NOATIME;
        if (flags & EXT4_DIRSYNC_FL)
        if (flags & EXT4_NOATIME_FL)
                new_fl |= S_NOATIME;
        if (flags & EXT4_DIRSYNC_FL)
-@@ -4393,31 +4397,52 @@ void ext4_set_inode_flags(struct inode *
+@@ -4412,31 +4416,52 @@ void ext4_set_inode_flags(struct inode *
        if (test_opt(inode->i_sb, DAX) && S_ISREG(inode->i_mode))
                new_fl |= S_DAX;
        inode_set_flags(inode, new_fl,
        if (test_opt(inode->i_sb, DAX) && S_ISREG(inode->i_mode))
                new_fl |= S_DAX;
        inode_set_flags(inode, new_fl,
@@ -2649,7 +2649,7 @@ diff -NurpP --minimal linux-4.9.135/fs/ext4/inode.c linux-4.9.135-vs2.3.9.8/fs/e
        } while (cmpxchg(&ei->i_flags, old_fl, new_fl) != old_fl);
  }
  
        } while (cmpxchg(&ei->i_flags, old_fl, new_fl) != old_fl);
  }
  
-@@ -4543,8 +4568,10 @@ struct inode *ext4_iget(struct super_blo
+@@ -4584,8 +4609,10 @@ struct inode *__ext4_iget(struct super_b
                i_uid |= le16_to_cpu(raw_inode->i_uid_high) << 16;
                i_gid |= le16_to_cpu(raw_inode->i_gid_high) << 16;
        }
                i_uid |= le16_to_cpu(raw_inode->i_uid_high) << 16;
                i_gid |= le16_to_cpu(raw_inode->i_gid_high) << 16;
        }
@@ -2662,7 +2662,7 @@ diff -NurpP --minimal linux-4.9.135/fs/ext4/inode.c linux-4.9.135-vs2.3.9.8/fs/e
        ei->i_projid = make_kprojid(&init_user_ns, i_projid);
        set_nlink(inode, le16_to_cpu(raw_inode->i_links_count));
  
        ei->i_projid = make_kprojid(&init_user_ns, i_projid);
        set_nlink(inode, le16_to_cpu(raw_inode->i_links_count));
  
-@@ -4860,8 +4887,10 @@ static int ext4_do_update_inode(handle_t
+@@ -4909,8 +4936,10 @@ static int ext4_do_update_inode(handle_t
  
        ext4_get_inode_flags(ei);
        raw_inode->i_mode = cpu_to_le16(inode->i_mode);
  
        ext4_get_inode_flags(ei);
        raw_inode->i_mode = cpu_to_le16(inode->i_mode);
@@ -2675,7 +2675,7 @@ diff -NurpP --minimal linux-4.9.135/fs/ext4/inode.c linux-4.9.135-vs2.3.9.8/fs/e
        i_projid = from_kprojid(&init_user_ns, ei->i_projid);
        if (!(test_opt(inode->i_sb, NO_UID32))) {
                raw_inode->i_uid_low = cpu_to_le16(low_16_bits(i_uid));
        i_projid = from_kprojid(&init_user_ns, ei->i_projid);
        if (!(test_opt(inode->i_sb, NO_UID32))) {
                raw_inode->i_uid_low = cpu_to_le16(low_16_bits(i_uid));
-@@ -4885,6 +4914,9 @@ static int ext4_do_update_inode(handle_t
+@@ -4934,6 +4963,9 @@ static int ext4_do_update_inode(handle_t
                raw_inode->i_uid_high = 0;
                raw_inode->i_gid_high = 0;
        }
                raw_inode->i_uid_high = 0;
                raw_inode->i_gid_high = 0;
        }
@@ -2685,7 +2685,7 @@ diff -NurpP --minimal linux-4.9.135/fs/ext4/inode.c linux-4.9.135-vs2.3.9.8/fs/e
        raw_inode->i_links_count = cpu_to_le16(inode->i_nlink);
  
        EXT4_INODE_SET_XTIME(i_ctime, inode, raw_inode);
        raw_inode->i_links_count = cpu_to_le16(inode->i_nlink);
  
        EXT4_INODE_SET_XTIME(i_ctime, inode, raw_inode);
-@@ -5138,7 +5170,8 @@ int ext4_setattr(struct dentry *dentry,
+@@ -5191,7 +5223,8 @@ int ext4_setattr(struct dentry *dentry,
                        return error;
        }
        if ((ia_valid & ATTR_UID && !uid_eq(attr->ia_uid, inode->i_uid)) ||
                        return error;
        }
        if ((ia_valid & ATTR_UID && !uid_eq(attr->ia_uid, inode->i_uid)) ||
@@ -2695,7 +2695,7 @@ diff -NurpP --minimal linux-4.9.135/fs/ext4/inode.c linux-4.9.135-vs2.3.9.8/fs/e
                handle_t *handle;
  
                /* (user+group)*(old+new) structure, inode write (sb,
                handle_t *handle;
  
                /* (user+group)*(old+new) structure, inode write (sb,
-@@ -5161,6 +5194,8 @@ int ext4_setattr(struct dentry *dentry,
+@@ -5214,6 +5247,8 @@ int ext4_setattr(struct dentry *dentry,
                        inode->i_uid = attr->ia_uid;
                if (attr->ia_valid & ATTR_GID)
                        inode->i_gid = attr->ia_gid;
                        inode->i_uid = attr->ia_uid;
                if (attr->ia_valid & ATTR_GID)
                        inode->i_gid = attr->ia_gid;
@@ -2704,9 +2704,9 @@ diff -NurpP --minimal linux-4.9.135/fs/ext4/inode.c linux-4.9.135-vs2.3.9.8/fs/e
                error = ext4_mark_inode_dirty(handle, inode);
                ext4_journal_stop(handle);
        }
                error = ext4_mark_inode_dirty(handle, inode);
                ext4_journal_stop(handle);
        }
-diff -NurpP --minimal linux-4.9.135/fs/ext4/ioctl.c linux-4.9.135-vs2.3.9.8/fs/ext4/ioctl.c
---- linux-4.9.135/fs/ext4/ioctl.c      2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/fs/ext4/ioctl.c    2018-10-20 04:58:13.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/fs/ext4/ioctl.c linux-4.9/fs/ext4/ioctl.c
+--- linux-4.9/fs/ext4/ioctl.c  2021-02-24 15:47:32.260674838 +0100
++++ linux-4.9/fs/ext4/ioctl.c  2021-02-24 15:47:45.064408719 +0100
 @@ -15,6 +15,7 @@
  #include <linux/file.h>
  #include <linux/quotaops.h>
 @@ -15,6 +15,7 @@
  #include <linux/file.h>
  #include <linux/quotaops.h>
@@ -2726,7 +2726,7 @@ diff -NurpP --minimal linux-4.9.135/fs/ext4/ioctl.c linux-4.9.135-vs2.3.9.8/fs/e
                if (!capable(CAP_LINUX_IMMUTABLE))
                        goto flags_out;
        }
                if (!capable(CAP_LINUX_IMMUTABLE))
                        goto flags_out;
        }
-@@ -430,6 +433,33 @@ static inline unsigned long ext4_xflags_
+@@ -432,6 +435,33 @@ static inline unsigned long ext4_xflags_
        return iflags;
  }
  
        return iflags;
  }
  
@@ -2760,7 +2760,7 @@ diff -NurpP --minimal linux-4.9.135/fs/ext4/ioctl.c linux-4.9.135-vs2.3.9.8/fs/e
  long ext4_ioctl(struct file *filp, unsigned int cmd, unsigned long arg)
  {
        struct inode *inode = file_inode(filp);
  long ext4_ioctl(struct file *filp, unsigned int cmd, unsigned long arg)
  {
        struct inode *inode = file_inode(filp);
-@@ -459,6 +489,11 @@ long ext4_ioctl(struct file *filp, unsig
+@@ -461,6 +491,11 @@ long ext4_ioctl(struct file *filp, unsig
  
                flags = ext4_mask_flags(inode->i_mode, flags);
  
  
                flags = ext4_mask_flags(inode->i_mode, flags);
  
@@ -2772,9 +2772,9 @@ diff -NurpP --minimal linux-4.9.135/fs/ext4/ioctl.c linux-4.9.135-vs2.3.9.8/fs/e
                inode_lock(inode);
                err = ext4_ioctl_setflags(inode, flags);
                inode_unlock(inode);
                inode_lock(inode);
                err = ext4_ioctl_setflags(inode, flags);
                inode_unlock(inode);
-diff -NurpP --minimal linux-4.9.135/fs/ext4/namei.c linux-4.9.135-vs2.3.9.8/fs/ext4/namei.c
---- linux-4.9.135/fs/ext4/namei.c      2018-10-20 10:39:17.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/fs/ext4/namei.c    2018-10-20 05:55:42.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/fs/ext4/namei.c linux-4.9/fs/ext4/namei.c
+--- linux-4.9/fs/ext4/namei.c  2021-02-24 15:47:32.260674838 +0100
++++ linux-4.9/fs/ext4/namei.c  2021-02-24 15:47:45.064408719 +0100
 @@ -33,6 +33,7 @@
  #include <linux/quotaops.h>
  #include <linux/buffer_head.h>
 @@ -33,6 +33,7 @@
  #include <linux/quotaops.h>
  #include <linux/buffer_head.h>
@@ -2783,7 +2783,7 @@ diff -NurpP --minimal linux-4.9.135/fs/ext4/namei.c linux-4.9.135-vs2.3.9.8/fs/e
  #include "ext4.h"
  #include "ext4_jbd2.h"
  
  #include "ext4.h"
  #include "ext4_jbd2.h"
  
-@@ -1460,6 +1461,7 @@ restart:
+@@ -1457,6 +1458,7 @@ restart:
                                                    REQ_META | REQ_PRIO,
                                                    1, &bh);
                        }
                                                    REQ_META | REQ_PRIO,
                                                    1, &bh);
                        }
@@ -2791,7 +2791,7 @@ diff -NurpP --minimal linux-4.9.135/fs/ext4/namei.c linux-4.9.135-vs2.3.9.8/fs/e
                }
                if ((bh = bh_use[ra_ptr++]) == NULL)
                        goto next;
                }
                if ((bh = bh_use[ra_ptr++]) == NULL)
                        goto next;
-@@ -3911,6 +3913,7 @@ const struct inode_operations ext4_dir_i
+@@ -3935,6 +3937,7 @@ const struct inode_operations ext4_dir_i
        .get_acl        = ext4_get_acl,
        .set_acl        = ext4_set_acl,
        .fiemap         = ext4_fiemap,
        .get_acl        = ext4_get_acl,
        .set_acl        = ext4_set_acl,
        .fiemap         = ext4_fiemap,
@@ -2799,10 +2799,10 @@ diff -NurpP --minimal linux-4.9.135/fs/ext4/namei.c linux-4.9.135-vs2.3.9.8/fs/e
  };
  
  const struct inode_operations ext4_special_inode_operations = {
  };
  
  const struct inode_operations ext4_special_inode_operations = {
-diff -NurpP --minimal linux-4.9.135/fs/ext4/super.c linux-4.9.135-vs2.3.9.8/fs/ext4/super.c
---- linux-4.9.135/fs/ext4/super.c      2018-10-20 10:39:17.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/fs/ext4/super.c    2018-10-20 05:55:42.000000000 +0000
-@@ -1281,6 +1281,7 @@ enum {
+diff -urNp -x '*.orig' linux-4.9/fs/ext4/super.c linux-4.9/fs/ext4/super.c
+--- linux-4.9/fs/ext4/super.c  2021-02-24 15:47:32.264008276 +0100
++++ linux-4.9/fs/ext4/super.c  2021-02-24 15:47:45.067742158 +0100
+@@ -1294,6 +1294,7 @@ enum {
        Opt_dioread_nolock, Opt_dioread_lock,
        Opt_discard, Opt_nodiscard, Opt_init_itable, Opt_noinit_itable,
        Opt_max_dir_size_kb, Opt_nojournal_checksum,
        Opt_dioread_nolock, Opt_dioread_lock,
        Opt_discard, Opt_nodiscard, Opt_init_itable, Opt_noinit_itable,
        Opt_max_dir_size_kb, Opt_nojournal_checksum,
@@ -2810,7 +2810,7 @@ diff -NurpP --minimal linux-4.9.135/fs/ext4/super.c linux-4.9.135-vs2.3.9.8/fs/e
  };
  
  static const match_table_t tokens = {
  };
  
  static const match_table_t tokens = {
-@@ -1367,6 +1368,9 @@ static const match_table_t tokens = {
+@@ -1380,6 +1381,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 */
        {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 */
@@ -2820,7 +2820,7 @@ diff -NurpP --minimal linux-4.9.135/fs/ext4/super.c linux-4.9.135-vs2.3.9.8/fs/e
        {Opt_err, NULL},
  };
  
        {Opt_err, NULL},
  };
  
-@@ -1612,6 +1616,20 @@ static int handle_mount_opt(struct super
+@@ -1625,6 +1629,20 @@ static int handle_mount_opt(struct super
        case Opt_nolazytime:
                sb->s_flags &= ~MS_LAZYTIME;
                return 1;
        case Opt_nolazytime:
                sb->s_flags &= ~MS_LAZYTIME;
                return 1;
@@ -2841,7 +2841,7 @@ diff -NurpP --minimal linux-4.9.135/fs/ext4/super.c linux-4.9.135-vs2.3.9.8/fs/e
        }
  
        for (m = ext4_mount_opts; m->token != Opt_err; m++)
        }
  
        for (m = ext4_mount_opts; m->token != Opt_err; m++)
-@@ -3587,6 +3605,9 @@ static int ext4_fill_super(struct super_
+@@ -3645,6 +3663,9 @@ static int ext4_fill_super(struct super_
                sb->s_iflags |= SB_I_CGROUPWB;
        }
  
                sb->s_iflags |= SB_I_CGROUPWB;
        }
  
@@ -2851,7 +2851,7 @@ diff -NurpP --minimal linux-4.9.135/fs/ext4/super.c linux-4.9.135-vs2.3.9.8/fs/e
        sb->s_flags = (sb->s_flags & ~MS_POSIXACL) |
                (test_opt(sb, POSIX_ACL) ? MS_POSIXACL : 0);
  
        sb->s_flags = (sb->s_flags & ~MS_POSIXACL) |
                (test_opt(sb, POSIX_ACL) ? MS_POSIXACL : 0);
  
-@@ -4984,6 +5005,14 @@ static int ext4_remount(struct super_blo
+@@ -5032,6 +5053,14 @@ static int ext4_remount(struct super_blo
        if (sbi->s_mount_flags & EXT4_MF_FS_ABORTED)
                ext4_abort(sb, "Abort forced by user");
  
        if (sbi->s_mount_flags & EXT4_MF_FS_ABORTED)
                ext4_abort(sb, "Abort forced by user");
  
@@ -2866,9 +2866,9 @@ diff -NurpP --minimal linux-4.9.135/fs/ext4/super.c linux-4.9.135-vs2.3.9.8/fs/e
        sb->s_flags = (sb->s_flags & ~MS_POSIXACL) |
                (test_opt(sb, POSIX_ACL) ? MS_POSIXACL : 0);
  
        sb->s_flags = (sb->s_flags & ~MS_POSIXACL) |
                (test_opt(sb, POSIX_ACL) ? MS_POSIXACL : 0);
  
-diff -NurpP --minimal linux-4.9.135/fs/fcntl.c linux-4.9.135-vs2.3.9.8/fs/fcntl.c
---- linux-4.9.135/fs/fcntl.c   2018-10-20 10:39:17.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/fs/fcntl.c 2018-10-20 04:58:13.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/fs/fcntl.c linux-4.9/fs/fcntl.c
+--- linux-4.9/fs/fcntl.c       2021-02-24 15:47:32.270675151 +0100
++++ linux-4.9/fs/fcntl.c       2021-02-24 15:47:45.067742158 +0100
 @@ -22,6 +22,7 @@
  #include <linux/pid_namespace.h>
  #include <linux/user_namespace.h>
 @@ -22,6 +22,7 @@
  #include <linux/pid_namespace.h>
  #include <linux/user_namespace.h>
@@ -2886,9 +2886,9 @@ diff -NurpP --minimal linux-4.9.135/fs/fcntl.c linux-4.9.135-vs2.3.9.8/fs/fcntl.
  
        if (unlikely(f.file->f_mode & FMODE_PATH)) {
                if (!check_fcntl_cmd(cmd))
  
        if (unlikely(f.file->f_mode & FMODE_PATH)) {
                if (!check_fcntl_cmd(cmd))
-diff -NurpP --minimal linux-4.9.135/fs/file.c linux-4.9.135-vs2.3.9.8/fs/file.c
---- linux-4.9.135/fs/file.c    2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/fs/file.c  2018-10-20 04:58:13.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/fs/file.c linux-4.9/fs/file.c
+--- linux-4.9/fs/file.c        2021-02-24 15:47:32.270675151 +0100
++++ linux-4.9/fs/file.c        2021-02-24 15:47:45.067742158 +0100
 @@ -22,6 +22,7 @@
  #include <linux/spinlock.h>
  #include <linux/rcupdate.h>
 @@ -22,6 +22,7 @@
  #include <linux/spinlock.h>
  #include <linux/rcupdate.h>
@@ -2918,7 +2918,7 @@ diff -NurpP --minimal linux-4.9.135/fs/file.c linux-4.9.135-vs2.3.9.8/fs/file.c
                }
        }
  
                }
        }
  
-@@ -539,6 +544,7 @@ repeat:
+@@ -540,6 +545,7 @@ repeat:
        else
                __clear_close_on_exec(fd, fdt);
        error = fd;
        else
                __clear_close_on_exec(fd, fdt);
        error = fd;
@@ -2926,7 +2926,7 @@ diff -NurpP --minimal linux-4.9.135/fs/file.c linux-4.9.135-vs2.3.9.8/fs/file.c
  #if 1
        /* Sanity check */
        if (rcu_access_pointer(fdt->fd[fd]) != NULL) {
  #if 1
        /* Sanity check */
        if (rcu_access_pointer(fdt->fd[fd]) != NULL) {
-@@ -569,6 +575,7 @@ static void __put_unused_fd(struct files
+@@ -570,6 +576,7 @@ static void __put_unused_fd(struct files
        __clear_open_fd(fd, fdt);
        if (fd < files->next_fd)
                files->next_fd = fd;
        __clear_open_fd(fd, fdt);
        if (fd < files->next_fd)
                files->next_fd = fd;
@@ -2934,7 +2934,7 @@ diff -NurpP --minimal linux-4.9.135/fs/file.c linux-4.9.135-vs2.3.9.8/fs/file.c
  }
  
  void put_unused_fd(unsigned int fd)
  }
  
  void put_unused_fd(unsigned int fd)
-@@ -856,6 +863,8 @@ __releases(&files->file_lock)
+@@ -857,6 +864,8 @@ __releases(&files->file_lock)
  
        if (tofree)
                filp_close(tofree, files);
  
        if (tofree)
                filp_close(tofree, files);
@@ -2943,9 +2943,9 @@ diff -NurpP --minimal linux-4.9.135/fs/file.c linux-4.9.135-vs2.3.9.8/fs/file.c
  
        return fd;
  
  
        return fd;
  
-diff -NurpP --minimal linux-4.9.135/fs/file_table.c linux-4.9.135-vs2.3.9.8/fs/file_table.c
---- linux-4.9.135/fs/file_table.c      2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/fs/file_table.c    2018-10-20 04:58:13.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/fs/file_table.c linux-4.9/fs/file_table.c
+--- linux-4.9/fs/file_table.c  2016-12-11 20:17:54.000000000 +0100
++++ linux-4.9/fs/file_table.c  2021-02-24 15:47:45.067742158 +0100
 @@ -26,6 +26,8 @@
  #include <linux/task_work.h>
  #include <linux/ima.h>
 @@ -26,6 +26,8 @@
  #include <linux/task_work.h>
  #include <linux/ima.h>
@@ -2982,9 +2982,9 @@ diff -NurpP --minimal linux-4.9.135/fs/file_table.c linux-4.9.135-vs2.3.9.8/fs/f
                file_free(file);
        }
  }
                file_free(file);
        }
  }
-diff -NurpP --minimal linux-4.9.135/fs/fs_struct.c linux-4.9.135-vs2.3.9.8/fs/fs_struct.c
---- linux-4.9.135/fs/fs_struct.c       2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/fs/fs_struct.c     2018-10-20 04:58:13.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/fs/fs_struct.c linux-4.9/fs/fs_struct.c
+--- linux-4.9/fs/fs_struct.c   2016-12-11 20:17:54.000000000 +0100
++++ linux-4.9/fs/fs_struct.c   2021-02-24 15:47:45.067742158 +0100
 @@ -4,6 +4,7 @@
  #include <linux/path.h>
  #include <linux/slab.h>
 @@ -4,6 +4,7 @@
  #include <linux/path.h>
  #include <linux/slab.h>
@@ -3009,9 +3009,9 @@ diff -NurpP --minimal linux-4.9.135/fs/fs_struct.c linux-4.9.135-vs2.3.9.8/fs/fs
        }
        return fs;
  }
        }
        return fs;
  }
-diff -NurpP --minimal linux-4.9.135/fs/gfs2/file.c linux-4.9.135-vs2.3.9.8/fs/gfs2/file.c
---- linux-4.9.135/fs/gfs2/file.c       2018-10-20 10:39:17.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/fs/gfs2/file.c     2018-10-20 04:58:13.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/fs/gfs2/file.c linux-4.9/fs/gfs2/file.c
+--- linux-4.9/fs/gfs2/file.c   2021-02-24 15:47:32.277342026 +0100
++++ linux-4.9/fs/gfs2/file.c   2021-02-24 15:47:45.067742158 +0100
 @@ -137,6 +137,9 @@ static const u32 fsflags_to_gfs2[32] = {
        [12] = GFS2_DIF_EXHASH,
        [14] = GFS2_DIF_INHERIT_JDATA,
 @@ -137,6 +137,9 @@ static const u32 fsflags_to_gfs2[32] = {
        [12] = GFS2_DIF_EXHASH,
        [14] = GFS2_DIF_INHERIT_JDATA,
@@ -3133,9 +3133,9 @@ diff -NurpP --minimal linux-4.9.135/fs/gfs2/file.c linux-4.9.135-vs2.3.9.8/fs/gf
  static long gfs2_ioctl(struct file *filp, unsigned int cmd, unsigned long arg)
  {
        switch(cmd) {
  static long gfs2_ioctl(struct file *filp, unsigned int cmd, unsigned long arg)
  {
        switch(cmd) {
-diff -NurpP --minimal linux-4.9.135/fs/gfs2/inode.h linux-4.9.135-vs2.3.9.8/fs/gfs2/inode.h
---- linux-4.9.135/fs/gfs2/inode.h      2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/fs/gfs2/inode.h    2018-10-20 04:58:13.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/fs/gfs2/inode.h linux-4.9/fs/gfs2/inode.h
+--- linux-4.9/fs/gfs2/inode.h  2016-12-11 20:17:54.000000000 +0100
++++ linux-4.9/fs/gfs2/inode.h  2021-02-24 15:47:45.067742158 +0100
 @@ -117,6 +117,7 @@ extern const struct file_operations gfs2
  extern const struct file_operations gfs2_dir_fops_nolock;
  
 @@ -117,6 +117,7 @@ extern const struct file_operations gfs2
  extern const struct file_operations gfs2_dir_fops_nolock;
  
@@ -3144,9 +3144,9 @@ diff -NurpP --minimal linux-4.9.135/fs/gfs2/inode.h linux-4.9.135-vs2.3.9.8/fs/g
   
  #ifdef CONFIG_GFS2_FS_LOCKING_DLM
  extern const struct file_operations gfs2_file_fops;
   
  #ifdef CONFIG_GFS2_FS_LOCKING_DLM
  extern const struct file_operations gfs2_file_fops;
-diff -NurpP --minimal linux-4.9.135/fs/hostfs/hostfs.h linux-4.9.135-vs2.3.9.8/fs/hostfs/hostfs.h
---- linux-4.9.135/fs/hostfs/hostfs.h   2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/fs/hostfs/hostfs.h 2018-10-20 04:58:13.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/fs/hostfs/hostfs.h linux-4.9/fs/hostfs/hostfs.h
+--- linux-4.9/fs/hostfs/hostfs.h       2016-12-11 20:17:54.000000000 +0100
++++ linux-4.9/fs/hostfs/hostfs.h       2021-02-24 15:47:45.067742158 +0100
 @@ -42,6 +42,7 @@ struct hostfs_iattr {
        unsigned short  ia_mode;
        uid_t           ia_uid;
 @@ -42,6 +42,7 @@ struct hostfs_iattr {
        unsigned short  ia_mode;
        uid_t           ia_uid;
@@ -3155,9 +3155,9 @@ diff -NurpP --minimal linux-4.9.135/fs/hostfs/hostfs.h linux-4.9.135-vs2.3.9.8/f
        loff_t          ia_size;
        struct timespec ia_atime;
        struct timespec ia_mtime;
        loff_t          ia_size;
        struct timespec ia_atime;
        struct timespec ia_mtime;
-diff -NurpP --minimal linux-4.9.135/fs/inode.c linux-4.9.135-vs2.3.9.8/fs/inode.c
---- linux-4.9.135/fs/inode.c   2018-10-20 10:39:17.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/fs/inode.c 2018-10-20 04:58:13.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/fs/inode.c linux-4.9/fs/inode.c
+--- linux-4.9/fs/inode.c       2021-02-24 15:47:32.280675463 +0100
++++ linux-4.9/fs/inode.c       2021-02-24 15:47:45.067742158 +0100
 @@ -18,6 +18,7 @@
  #include <linux/buffer_head.h> /* for inode_has_buffers */
  #include <linux/ratelimit.h>
 @@ -18,6 +18,7 @@
  #include <linux/buffer_head.h> /* for inode_has_buffers */
  #include <linux/ratelimit.h>
@@ -3174,8 +3174,8 @@ diff -NurpP --minimal linux-4.9.135/fs/inode.c linux-4.9.135-vs2.3.9.8/fs/inode.
 +      /* essential because of inode slab reuse */
        inode->i_blkbits = sb->s_blocksize_bits;
        inode->i_flags = 0;
 +      /* essential because of inode slab reuse */
        inode->i_blkbits = sb->s_blocksize_bits;
        inode->i_flags = 0;
-       atomic_set(&inode->i_count, 1);
-@@ -144,6 +147,7 @@ int inode_init_always(struct super_block
+       atomic64_set(&inode->i_sequence, 0);
+@@ -145,6 +148,7 @@ int inode_init_always(struct super_block
                inode->i_opflags |= IOP_XATTR;
        i_uid_write(inode, 0);
        i_gid_write(inode, 0);
                inode->i_opflags |= IOP_XATTR;
        i_uid_write(inode, 0);
        i_gid_write(inode, 0);
@@ -3183,7 +3183,7 @@ diff -NurpP --minimal linux-4.9.135/fs/inode.c linux-4.9.135-vs2.3.9.8/fs/inode.
        atomic_set(&inode->i_writecount, 0);
        inode->i_size = 0;
        inode->i_blocks = 0;
        atomic_set(&inode->i_writecount, 0);
        inode->i_size = 0;
        inode->i_blocks = 0;
-@@ -155,6 +159,7 @@ int inode_init_always(struct super_block
+@@ -156,6 +160,7 @@ int inode_init_always(struct super_block
        inode->i_link = NULL;
        inode->i_dir_seq = 0;
        inode->i_rdev = 0;
        inode->i_link = NULL;
        inode->i_dir_seq = 0;
        inode->i_rdev = 0;
@@ -3191,7 +3191,7 @@ diff -NurpP --minimal linux-4.9.135/fs/inode.c linux-4.9.135-vs2.3.9.8/fs/inode.
        inode->dirtied_when = 0;
  
  #ifdef CONFIG_CGROUP_WRITEBACK
        inode->dirtied_when = 0;
  
  #ifdef CONFIG_CGROUP_WRITEBACK
-@@ -479,6 +484,8 @@ void __insert_inode_hash(struct inode *i
+@@ -480,6 +485,8 @@ void __insert_inode_hash(struct inode *i
  }
  EXPORT_SYMBOL(__insert_inode_hash);
  
  }
  EXPORT_SYMBOL(__insert_inode_hash);
  
@@ -3200,7 +3200,7 @@ diff -NurpP --minimal linux-4.9.135/fs/inode.c linux-4.9.135-vs2.3.9.8/fs/inode.
  /**
   *    __remove_inode_hash - remove an inode from the hash
   *    @inode: inode to unhash
  /**
   *    __remove_inode_hash - remove an inode from the hash
   *    @inode: inode to unhash
-@@ -1977,9 +1984,11 @@ void init_special_inode(struct inode *in
+@@ -1983,9 +1990,11 @@ void init_special_inode(struct inode *in
        if (S_ISCHR(mode)) {
                inode->i_fop = &def_chr_fops;
                inode->i_rdev = rdev;
        if (S_ISCHR(mode)) {
                inode->i_fop = &def_chr_fops;
                inode->i_rdev = rdev;
@@ -3212,7 +3212,7 @@ diff -NurpP --minimal linux-4.9.135/fs/inode.c linux-4.9.135-vs2.3.9.8/fs/inode.
        } else if (S_ISFIFO(mode))
                inode->i_fop = &pipefifo_fops;
        else if (S_ISSOCK(mode))
        } else if (S_ISFIFO(mode))
                inode->i_fop = &pipefifo_fops;
        else if (S_ISSOCK(mode))
-@@ -2014,6 +2023,7 @@ void inode_init_owner(struct inode *inod
+@@ -2020,6 +2029,7 @@ void inode_init_owner(struct inode *inod
        } else
                inode->i_gid = current_fsgid();
        inode->i_mode = mode;
        } else
                inode->i_gid = current_fsgid();
        inode->i_mode = mode;
@@ -3220,9 +3220,9 @@ diff -NurpP --minimal linux-4.9.135/fs/inode.c linux-4.9.135-vs2.3.9.8/fs/inode.
  }
  EXPORT_SYMBOL(inode_init_owner);
  
  }
  EXPORT_SYMBOL(inode_init_owner);
  
-diff -NurpP --minimal linux-4.9.135/fs/ioctl.c linux-4.9.135-vs2.3.9.8/fs/ioctl.c
---- linux-4.9.135/fs/ioctl.c   2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/fs/ioctl.c 2018-10-20 04:58:13.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/fs/ioctl.c linux-4.9/fs/ioctl.c
+--- linux-4.9/fs/ioctl.c       2016-12-11 20:17:54.000000000 +0100
++++ linux-4.9/fs/ioctl.c       2021-02-24 15:47:45.067742158 +0100
 @@ -15,6 +15,9 @@
  #include <linux/writeback.h>
  #include <linux/buffer_head.h>
 @@ -15,6 +15,9 @@
  #include <linux/writeback.h>
  #include <linux/buffer_head.h>
@@ -3233,9 +3233,9 @@ diff -NurpP --minimal linux-4.9.135/fs/ioctl.c linux-4.9.135-vs2.3.9.8/fs/ioctl.
  #include "internal.h"
  
  #include <asm/ioctls.h>
  #include "internal.h"
  
  #include <asm/ioctls.h>
-diff -NurpP --minimal linux-4.9.135/fs/jfs/file.c linux-4.9.135-vs2.3.9.8/fs/jfs/file.c
---- linux-4.9.135/fs/jfs/file.c        2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/fs/jfs/file.c      2018-10-20 04:58:13.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/fs/jfs/file.c linux-4.9/fs/jfs/file.c
+--- linux-4.9/fs/jfs/file.c    2016-12-11 20:17:54.000000000 +0100
++++ linux-4.9/fs/jfs/file.c    2021-02-24 15:47:45.067742158 +0100
 @@ -113,7 +113,8 @@ int jfs_setattr(struct dentry *dentry, s
                        return rc;
        }
 @@ -113,7 +113,8 @@ int jfs_setattr(struct dentry *dentry, s
                        return rc;
        }
@@ -3254,9 +3254,9 @@ diff -NurpP --minimal linux-4.9.135/fs/jfs/file.c linux-4.9.135-vs2.3.9.8/fs/jfs
  };
  
  const struct file_operations jfs_file_operations = {
  };
  
  const struct file_operations jfs_file_operations = {
-diff -NurpP --minimal linux-4.9.135/fs/jfs/ioctl.c linux-4.9.135-vs2.3.9.8/fs/jfs/ioctl.c
---- linux-4.9.135/fs/jfs/ioctl.c       2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/fs/jfs/ioctl.c     2018-10-20 04:58:13.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/fs/jfs/ioctl.c linux-4.9/fs/jfs/ioctl.c
+--- linux-4.9/fs/jfs/ioctl.c   2016-12-11 20:17:54.000000000 +0100
++++ linux-4.9/fs/jfs/ioctl.c   2021-02-24 15:47:45.067742158 +0100
 @@ -12,6 +12,7 @@
  #include <linux/time.h>
  #include <linux/sched.h>
 @@ -12,6 +12,7 @@
  #include <linux/time.h>
  #include <linux/sched.h>
@@ -3314,9 +3314,9 @@ diff -NurpP --minimal linux-4.9.135/fs/jfs/ioctl.c linux-4.9.135-vs2.3.9.8/fs/jf
                flags |= oldflags & ~JFS_FL_USER_MODIFIABLE;
                jfs_inode->mode2 = flags;
  
                flags |= oldflags & ~JFS_FL_USER_MODIFIABLE;
                jfs_inode->mode2 = flags;
  
-diff -NurpP --minimal linux-4.9.135/fs/jfs/jfs_dinode.h linux-4.9.135-vs2.3.9.8/fs/jfs/jfs_dinode.h
---- linux-4.9.135/fs/jfs/jfs_dinode.h  2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/fs/jfs/jfs_dinode.h        2018-10-20 04:58:13.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/fs/jfs/jfs_dinode.h linux-4.9/fs/jfs/jfs_dinode.h
+--- linux-4.9/fs/jfs/jfs_dinode.h      2016-12-11 20:17:54.000000000 +0100
++++ linux-4.9/fs/jfs/jfs_dinode.h      2021-02-24 15:47:45.067742158 +0100
 @@ -161,9 +161,13 @@ struct dinode {
  
  #define JFS_APPEND_FL         0x01000000 /* writes to file may only append */
 @@ -161,9 +161,13 @@ struct dinode {
  
  #define JFS_APPEND_FL         0x01000000 /* writes to file may only append */
@@ -3333,9 +3333,9 @@ diff -NurpP --minimal linux-4.9.135/fs/jfs/jfs_dinode.h linux-4.9.135-vs2.3.9.8/
  #define JFS_FL_INHERIT                0x03C80000
  
  /* These are identical to EXT[23]_IOC_GETFLAGS/SETFLAGS */
  #define JFS_FL_INHERIT                0x03C80000
  
  /* These are identical to EXT[23]_IOC_GETFLAGS/SETFLAGS */
-diff -NurpP --minimal linux-4.9.135/fs/jfs/jfs_filsys.h linux-4.9.135-vs2.3.9.8/fs/jfs/jfs_filsys.h
---- linux-4.9.135/fs/jfs/jfs_filsys.h  2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/fs/jfs/jfs_filsys.h        2018-10-20 04:58:13.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/fs/jfs/jfs_filsys.h linux-4.9/fs/jfs/jfs_filsys.h
+--- linux-4.9/fs/jfs/jfs_filsys.h      2016-12-11 20:17:54.000000000 +0100
++++ linux-4.9/fs/jfs/jfs_filsys.h      2021-02-24 15:47:45.067742158 +0100
 @@ -266,6 +266,7 @@
  #define JFS_NAME_MAX  255
  #define JFS_PATH_MAX  BPSIZE
 @@ -266,6 +266,7 @@
  #define JFS_NAME_MAX  255
  #define JFS_PATH_MAX  BPSIZE
@@ -3344,9 +3344,9 @@ diff -NurpP --minimal linux-4.9.135/fs/jfs/jfs_filsys.h linux-4.9.135-vs2.3.9.8/
  
  /*
   *    file system state (superblock state)
  
  /*
   *    file system state (superblock state)
-diff -NurpP --minimal linux-4.9.135/fs/jfs/jfs_imap.c linux-4.9.135-vs2.3.9.8/fs/jfs/jfs_imap.c
---- linux-4.9.135/fs/jfs/jfs_imap.c    2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/fs/jfs/jfs_imap.c  2018-10-20 04:58:13.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/fs/jfs/jfs_imap.c linux-4.9/fs/jfs/jfs_imap.c
+--- linux-4.9/fs/jfs/jfs_imap.c        2016-12-11 20:17:54.000000000 +0100
++++ linux-4.9/fs/jfs/jfs_imap.c        2021-02-24 15:47:45.071075595 +0100
 @@ -46,6 +46,7 @@
  #include <linux/pagemap.h>
  #include <linux/quotaops.h>
 @@ -46,6 +46,7 @@
  #include <linux/pagemap.h>
  #include <linux/quotaops.h>
@@ -3410,9 +3410,9 @@ diff -NurpP --minimal linux-4.9.135/fs/jfs/jfs_imap.c linux-4.9.135-vs2.3.9.8/fs
        jfs_get_inode_flags(jfs_ip);
        /*
         * mode2 is only needed for storing the higher order bits.
        jfs_get_inode_flags(jfs_ip);
        /*
         * mode2 is only needed for storing the higher order bits.
-diff -NurpP --minimal linux-4.9.135/fs/jfs/jfs_inode.c linux-4.9.135-vs2.3.9.8/fs/jfs/jfs_inode.c
---- linux-4.9.135/fs/jfs/jfs_inode.c   2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/fs/jfs/jfs_inode.c 2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/fs/jfs/jfs_inode.c linux-4.9/fs/jfs/jfs_inode.c
+--- linux-4.9/fs/jfs/jfs_inode.c       2016-12-11 20:17:54.000000000 +0100
++++ linux-4.9/fs/jfs/jfs_inode.c       2021-02-24 15:47:45.071075595 +0100
 @@ -18,6 +18,7 @@
  
  #include <linux/fs.h>
 @@ -18,6 +18,7 @@
  
  #include <linux/fs.h>
@@ -3483,9 +3483,9 @@ diff -NurpP --minimal linux-4.9.135/fs/jfs/jfs_inode.c linux-4.9.135-vs2.3.9.8/f
  }
  
  /*
  }
  
  /*
-diff -NurpP --minimal linux-4.9.135/fs/jfs/jfs_inode.h linux-4.9.135-vs2.3.9.8/fs/jfs/jfs_inode.h
---- linux-4.9.135/fs/jfs/jfs_inode.h   2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/fs/jfs/jfs_inode.h 2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/fs/jfs/jfs_inode.h linux-4.9/fs/jfs/jfs_inode.h
+--- linux-4.9/fs/jfs/jfs_inode.h       2016-12-11 20:17:54.000000000 +0100
++++ linux-4.9/fs/jfs/jfs_inode.h       2021-02-24 15:47:45.071075595 +0100
 @@ -39,6 +39,7 @@ extern struct dentry *jfs_fh_to_dentry(s
  extern struct dentry *jfs_fh_to_parent(struct super_block *sb, struct fid *fid,
        int fh_len, int fh_type);
 @@ -39,6 +39,7 @@ extern struct dentry *jfs_fh_to_dentry(s
  extern struct dentry *jfs_fh_to_parent(struct super_block *sb, struct fid *fid,
        int fh_len, int fh_type);
@@ -3494,9 +3494,9 @@ diff -NurpP --minimal linux-4.9.135/fs/jfs/jfs_inode.h linux-4.9.135-vs2.3.9.8/f
  extern int jfs_get_block(struct inode *, sector_t, struct buffer_head *, int);
  extern int jfs_setattr(struct dentry *, struct iattr *);
  
  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-4.9.135/fs/jfs/namei.c linux-4.9.135-vs2.3.9.8/fs/jfs/namei.c
---- linux-4.9.135/fs/jfs/namei.c       2018-10-20 10:39:17.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/fs/jfs/namei.c     2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/fs/jfs/namei.c linux-4.9/fs/jfs/namei.c
+--- linux-4.9/fs/jfs/namei.c   2021-02-24 15:47:32.287342339 +0100
++++ linux-4.9/fs/jfs/namei.c   2021-02-24 15:47:45.071075595 +0100
 @@ -22,6 +22,7 @@
  #include <linux/ctype.h>
  #include <linux/quotaops.h>
 @@ -22,6 +22,7 @@
  #include <linux/ctype.h>
  #include <linux/quotaops.h>
@@ -3521,9 +3521,9 @@ diff -NurpP --minimal linux-4.9.135/fs/jfs/namei.c linux-4.9.135-vs2.3.9.8/fs/jf
  };
  
  const struct file_operations jfs_dir_operations = {
  };
  
  const struct file_operations jfs_dir_operations = {
-diff -NurpP --minimal linux-4.9.135/fs/jfs/super.c linux-4.9.135-vs2.3.9.8/fs/jfs/super.c
---- linux-4.9.135/fs/jfs/super.c       2018-10-20 10:39:17.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/fs/jfs/super.c     2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/fs/jfs/super.c linux-4.9/fs/jfs/super.c
+--- linux-4.9/fs/jfs/super.c   2021-02-24 15:47:32.287342339 +0100
++++ linux-4.9/fs/jfs/super.c   2021-02-24 15:47:45.071075595 +0100
 @@ -206,7 +206,8 @@ enum {
        Opt_integrity, Opt_nointegrity, Opt_iocharset, Opt_resize,
        Opt_resize_nosize, Opt_errors, Opt_ignore, Opt_err, Opt_quota,
 @@ -206,7 +206,8 @@ enum {
        Opt_integrity, Opt_nointegrity, Opt_iocharset, Opt_resize,
        Opt_resize_nosize, Opt_errors, Opt_ignore, Opt_err, Opt_quota,
@@ -3590,9 +3590,9 @@ diff -NurpP --minimal linux-4.9.135/fs/jfs/super.c linux-4.9.135-vs2.3.9.8/fs/jf
  
        if (newLVSize) {
                pr_err("resize option for remount only\n");
  
        if (newLVSize) {
                pr_err("resize option for remount only\n");
-diff -NurpP --minimal linux-4.9.135/fs/libfs.c linux-4.9.135-vs2.3.9.8/fs/libfs.c
---- linux-4.9.135/fs/libfs.c   2018-10-20 10:39:17.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/fs/libfs.c 2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/fs/libfs.c linux-4.9/fs/libfs.c
+--- linux-4.9/fs/libfs.c       2021-02-24 15:47:32.287342339 +0100
++++ linux-4.9/fs/libfs.c       2021-02-24 15:47:45.071075595 +0100
 @@ -180,7 +180,8 @@ static inline unsigned char dt_type(stru
   * both impossible due to the lock on directory.
   */
 @@ -180,7 +180,8 @@ static inline unsigned char dt_type(stru
   * both impossible due to the lock on directory.
   */
@@ -3603,21 +3603,21 @@ diff -NurpP --minimal linux-4.9.135/fs/libfs.c linux-4.9.135-vs2.3.9.8/fs/libfs.
  {
        struct dentry *dentry = file->f_path.dentry;
        struct dentry *cursor = file->private_data;
  {
        struct dentry *dentry = file->f_path.dentry;
        struct dentry *cursor = file->private_data;
-@@ -194,9 +195,10 @@ int dcache_readdir(struct file *file, st
-       if (ctx->pos == 2)
-               p = &dentry->d_subdirs;
-       while ((next = next_positive(dentry, p, 1)) != NULL) {
+@@ -197,9 +198,10 @@ int dcache_readdir(struct file *file, st
+               p = &cursor->d_child;
+       while ((p = scan_positives(cursor, p, 1, &next)) != anchor) {
 -              if (!dir_emit(ctx, next->d_name.name, next->d_name.len,
 +              if (!filter || filter(next))
 +                      if (!dir_emit(ctx, next->d_name.name, next->d_name.len,
                              d_inode(next)->i_ino, dt_type(d_inode(next))))
 -                      break;
 +                              break;
 -              if (!dir_emit(ctx, next->d_name.name, next->d_name.len,
 +              if (!filter || filter(next))
 +                      if (!dir_emit(ctx, next->d_name.name, next->d_name.len,
                              d_inode(next)->i_ino, dt_type(d_inode(next))))
 -                      break;
 +                              break;
-               moved = true;
-               p = &next->d_child;
                ctx->pos++;
                ctx->pos++;
-@@ -205,8 +207,22 @@ int dcache_readdir(struct file *file, st
-               move_cursor(cursor, p);
+       }
+       spin_lock(&dentry->d_lock);
+@@ -209,8 +211,22 @@ int dcache_readdir(struct file *file, st
        return 0;
  }
 +
        return 0;
  }
 +
@@ -3639,9 +3639,9 @@ diff -NurpP --minimal linux-4.9.135/fs/libfs.c linux-4.9.135-vs2.3.9.8/fs/libfs.
  ssize_t generic_read_dir(struct file *filp, char __user *buf, size_t siz, loff_t *ppos)
  {
        return -EISDIR;
  ssize_t generic_read_dir(struct file *filp, char __user *buf, size_t siz, loff_t *ppos)
  {
        return -EISDIR;
-diff -NurpP --minimal linux-4.9.135/fs/locks.c linux-4.9.135-vs2.3.9.8/fs/locks.c
---- linux-4.9.135/fs/locks.c   2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/fs/locks.c 2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/fs/locks.c linux-4.9/fs/locks.c
+--- linux-4.9/fs/locks.c       2021-02-24 15:47:32.287342339 +0100
++++ linux-4.9/fs/locks.c       2021-02-24 15:47:45.071075595 +0100
 @@ -127,6 +127,8 @@
  #include <linux/pid_namespace.h>
  #include <linux/hashtable.h>
 @@ -127,6 +127,8 @@
  #include <linux/pid_namespace.h>
  #include <linux/hashtable.h>
@@ -3828,9 +3828,9 @@ diff -NurpP --minimal linux-4.9.135/fs/locks.c linux-4.9.135-vs2.3.9.8/fs/locks.
  
        return 0;
  }
  
        return 0;
  }
-diff -NurpP --minimal linux-4.9.135/fs/mount.h linux-4.9.135-vs2.3.9.8/fs/mount.h
---- linux-4.9.135/fs/mount.h   2018-10-20 10:39:17.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/fs/mount.h 2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/fs/mount.h linux-4.9/fs/mount.h
+--- linux-4.9/fs/mount.h       2021-02-24 15:47:32.287342339 +0100
++++ linux-4.9/fs/mount.h       2021-02-24 15:47:45.071075595 +0100
 @@ -69,6 +69,7 @@ struct mount {
        struct hlist_head mnt_pins;
        struct fs_pin mnt_umount;
 @@ -69,6 +69,7 @@ struct mount {
        struct hlist_head mnt_pins;
        struct fs_pin mnt_umount;
@@ -3839,9 +3839,9 @@ diff -NurpP --minimal linux-4.9.135/fs/mount.h linux-4.9.135-vs2.3.9.8/fs/mount.
  };
  
  #define MNT_NS_INTERNAL ERR_PTR(-EINVAL) /* distinct from any mnt_namespace */
  };
  
  #define MNT_NS_INTERNAL ERR_PTR(-EINVAL) /* distinct from any mnt_namespace */
-diff -NurpP --minimal linux-4.9.135/fs/namei.c linux-4.9.135-vs2.3.9.8/fs/namei.c
---- linux-4.9.135/fs/namei.c   2018-10-20 10:39:17.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/fs/namei.c 2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/fs/namei.c linux-4.9/fs/namei.c
+--- linux-4.9/fs/namei.c       2021-02-24 15:47:32.290675776 +0100
++++ linux-4.9/fs/namei.c       2021-02-24 15:47:45.071075595 +0100
 @@ -37,9 +37,19 @@
  #include <linux/hash.h>
  #include <linux/bitops.h>
 @@ -37,9 +37,19 @@
  #include <linux/hash.h>
  #include <linux/bitops.h>
@@ -3976,7 +3976,7 @@ diff -NurpP --minimal linux-4.9.135/fs/namei.c linux-4.9.135-vs2.3.9.8/fs/namei.
        retval = do_inode_permission(inode, mask);
        if (retval)
                return retval;
        retval = do_inode_permission(inode, mask);
        if (retval)
                return retval;
-@@ -2783,7 +2884,7 @@ static int may_delete(struct inode *dir,
+@@ -2825,7 +2926,7 @@ static int may_delete(struct inode *dir,
                return -EPERM;
  
        if (check_sticky(dir, inode) || IS_APPEND(inode) ||
                return -EPERM;
  
        if (check_sticky(dir, inode) || IS_APPEND(inode) ||
@@ -3985,7 +3985,7 @@ diff -NurpP --minimal linux-4.9.135/fs/namei.c linux-4.9.135-vs2.3.9.8/fs/namei.
                return -EPERM;
        if (isdir) {
                if (!d_is_dir(victim))
                return -EPERM;
        if (isdir) {
                if (!d_is_dir(victim))
-@@ -2871,19 +2972,25 @@ int vfs_create(struct inode *dir, struct
+@@ -2913,19 +3014,25 @@ int vfs_create(struct inode *dir, struct
                bool want_excl)
  {
        int error = may_create(dir, dentry);
                bool want_excl)
  {
        int error = may_create(dir, dentry);
@@ -4013,7 +4013,7 @@ diff -NurpP --minimal linux-4.9.135/fs/namei.c linux-4.9.135-vs2.3.9.8/fs/namei.
        return error;
  }
  EXPORT_SYMBOL(vfs_create);
        return error;
  }
  EXPORT_SYMBOL(vfs_create);
-@@ -2921,6 +3028,15 @@ static int may_open(struct path *path, i
+@@ -2963,6 +3070,15 @@ static int may_open(struct path *path, i
                break;
        }
  
                break;
        }
  
@@ -4029,7 +4029,7 @@ diff -NurpP --minimal linux-4.9.135/fs/namei.c linux-4.9.135-vs2.3.9.8/fs/namei.
        error = inode_permission(inode, MAY_OPEN | acc_mode);
        if (error)
                return error;
        error = inode_permission(inode, MAY_OPEN | acc_mode);
        if (error)
                return error;
-@@ -3373,6 +3489,16 @@ finish_open:
+@@ -3423,6 +3539,16 @@ finish_open:
        }
  finish_open_created:
        error = may_open(&nd->path, acc_mode, open_flag);
        }
  finish_open_created:
        error = may_open(&nd->path, acc_mode, open_flag);
@@ -4046,7 +4046,7 @@ diff -NurpP --minimal linux-4.9.135/fs/namei.c linux-4.9.135-vs2.3.9.8/fs/namei.
        if (error)
                goto out;
        BUG_ON(*opened & FILE_OPENED); /* once it's opened, it's opened */
        if (error)
                goto out;
        BUG_ON(*opened & FILE_OPENED); /* once it's opened, it's opened */
-@@ -3476,6 +3602,9 @@ static struct file *path_openat(struct n
+@@ -3526,6 +3652,9 @@ static struct file *path_openat(struct n
        int opened = 0;
        int error;
  
        int opened = 0;
        int error;
  
@@ -4056,7 +4056,7 @@ diff -NurpP --minimal linux-4.9.135/fs/namei.c linux-4.9.135-vs2.3.9.8/fs/namei.
        file = get_empty_filp();
        if (IS_ERR(file))
                return file;
        file = get_empty_filp();
        if (IS_ERR(file))
                return file;
-@@ -3509,6 +3638,12 @@ static struct file *path_openat(struct n
+@@ -3559,6 +3688,12 @@ static struct file *path_openat(struct n
                }
        }
        terminate_walk(nd);
                }
        }
        terminate_walk(nd);
@@ -4069,7 +4069,7 @@ diff -NurpP --minimal linux-4.9.135/fs/namei.c linux-4.9.135-vs2.3.9.8/fs/namei.
  out2:
        if (!(opened & FILE_OPENED)) {
                BUG_ON(!error);
  out2:
        if (!(opened & FILE_OPENED)) {
                BUG_ON(!error);
-@@ -3629,6 +3764,11 @@ static struct dentry *filename_create(in
+@@ -3679,6 +3814,11 @@ static struct dentry *filename_create(in
                goto fail;
        }
        putname(name);
                goto fail;
        }
        putname(name);
@@ -4081,7 +4081,7 @@ diff -NurpP --minimal linux-4.9.135/fs/namei.c linux-4.9.135-vs2.3.9.8/fs/namei.
        return dentry;
  fail:
        dput(dentry);
        return dentry;
  fail:
        dput(dentry);
-@@ -3747,6 +3887,7 @@ retry:
+@@ -3797,6 +3937,7 @@ retry:
                        error = vfs_mknod(path.dentry->d_inode,dentry,mode,0);
                        break;
        }
                        error = vfs_mknod(path.dentry->d_inode,dentry,mode,0);
                        break;
        }
@@ -4089,7 +4089,7 @@ diff -NurpP --minimal linux-4.9.135/fs/namei.c linux-4.9.135-vs2.3.9.8/fs/namei.
  out:
        done_path_create(&path, dentry);
        if (retry_estale(error, lookup_flags)) {
  out:
        done_path_create(&path, dentry);
        if (retry_estale(error, lookup_flags)) {
-@@ -4168,7 +4309,7 @@ int vfs_link(struct dentry *old_dentry,
+@@ -4218,7 +4359,7 @@ int vfs_link(struct dentry *old_dentry,
        /*
         * A link to an append-only or immutable file cannot be created.
         */
        /*
         * A link to an append-only or immutable file cannot be created.
         */
@@ -4098,7 +4098,7 @@ diff -NurpP --minimal linux-4.9.135/fs/namei.c linux-4.9.135-vs2.3.9.8/fs/namei.
                return -EPERM;
        /*
         * Updating the link count will likely cause i_uid and i_gid to
                return -EPERM;
        /*
         * Updating the link count will likely cause i_uid and i_gid to
-@@ -4698,6 +4839,326 @@ const char *vfs_get_link(struct dentry *
+@@ -4748,6 +4889,326 @@ const char *vfs_get_link(struct dentry *
  }
  EXPORT_SYMBOL(vfs_get_link);
  
  }
  EXPORT_SYMBOL(vfs_get_link);
  
@@ -4425,9 +4425,9 @@ diff -NurpP --minimal linux-4.9.135/fs/namei.c linux-4.9.135-vs2.3.9.8/fs/namei.
  /* get the link contents into pagecache */
  const char *page_get_link(struct dentry *dentry, struct inode *inode,
                          struct delayed_call *callback)
  /* get the link contents into pagecache */
  const char *page_get_link(struct dentry *dentry, struct inode *inode,
                          struct delayed_call *callback)
-diff -NurpP --minimal linux-4.9.135/fs/namespace.c linux-4.9.135-vs2.3.9.8/fs/namespace.c
---- linux-4.9.135/fs/namespace.c       2018-10-20 10:39:17.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/fs/namespace.c     2018-10-20 05:55:43.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/fs/namespace.c linux-4.9/fs/namespace.c
+--- linux-4.9/fs/namespace.c   2021-02-24 15:47:32.290675776 +0100
++++ linux-4.9/fs/namespace.c   2021-02-24 15:47:45.074409033 +0100
 @@ -24,6 +24,11 @@
  #include <linux/magic.h>
  #include <linux/bootmem.h>
 @@ -24,6 +24,11 @@
  #include <linux/magic.h>
  #include <linux/bootmem.h>
@@ -4459,7 +4459,7 @@ diff -NurpP --minimal linux-4.9.135/fs/namespace.c linux-4.9.135-vs2.3.9.8/fs/na
        lock_mount_hash();
        list_add_tail(&mnt->mnt_instance, &sb->s_mounts);
        unlock_mount_hash();
        lock_mount_hash();
        list_add_tail(&mnt->mnt_instance, &sb->s_mounts);
        unlock_mount_hash();
-@@ -1660,7 +1670,8 @@ out_unlock:
+@@ -1666,7 +1676,8 @@ out_unlock:
   */
  static inline bool may_mount(void)
  {
   */
  static inline bool may_mount(void)
  {
@@ -4469,7 +4469,7 @@ diff -NurpP --minimal linux-4.9.135/fs/namespace.c linux-4.9.135-vs2.3.9.8/fs/na
  }
  
  static inline bool may_mandlock(void)
  }
  
  static inline bool may_mandlock(void)
-@@ -2169,6 +2180,7 @@ static int do_change_type(struct path *p
+@@ -2181,6 +2192,7 @@ static int do_change_type(struct path *p
                if (err)
                        goto out_unlock;
        }
                if (err)
                        goto out_unlock;
        }
@@ -4477,7 +4477,7 @@ diff -NurpP --minimal linux-4.9.135/fs/namespace.c linux-4.9.135-vs2.3.9.8/fs/na
  
        lock_mount_hash();
        for (m = mnt; m; m = (recurse ? next_mnt(m, mnt) : NULL))
  
        lock_mount_hash();
        for (m = mnt; m; m = (recurse ? next_mnt(m, mnt) : NULL))
-@@ -2197,12 +2209,14 @@ static bool has_locked_children(struct m
+@@ -2209,12 +2221,14 @@ static bool has_locked_children(struct m
   * do loopback mount.
   */
  static int do_loopback(struct path *path, const char *old_name,
   * do loopback mount.
   */
  static int do_loopback(struct path *path, const char *old_name,
@@ -4493,7 +4493,7 @@ diff -NurpP --minimal linux-4.9.135/fs/namespace.c linux-4.9.135-vs2.3.9.8/fs/na
        if (!old_name || !*old_name)
                return -EINVAL;
        err = kern_path(old_name, LOOKUP_FOLLOW|LOOKUP_AUTOMOUNT, &old_path);
        if (!old_name || !*old_name)
                return -EINVAL;
        err = kern_path(old_name, LOOKUP_FOLLOW|LOOKUP_AUTOMOUNT, &old_path);
-@@ -2282,7 +2296,7 @@ static int change_mount_flags(struct vfs
+@@ -2294,7 +2308,7 @@ static int change_mount_flags(struct vfs
   * on it - tough luck.
   */
  static int do_remount(struct path *path, int flags, int mnt_flags,
   * on it - tough luck.
   */
  static int do_remount(struct path *path, int flags, int mnt_flags,
@@ -4502,7 +4502,7 @@ diff -NurpP --minimal linux-4.9.135/fs/namespace.c linux-4.9.135-vs2.3.9.8/fs/na
  {
        int err;
        struct super_block *sb = path->mnt->mnt_sb;
  {
        int err;
        struct super_block *sb = path->mnt->mnt_sb;
-@@ -2767,6 +2781,7 @@ long do_mount(const char *dev_name, cons
+@@ -2779,6 +2793,7 @@ long do_mount(const char *dev_name, cons
        struct path path;
        int retval = 0;
        int mnt_flags = 0;
        struct path path;
        int retval = 0;
        int mnt_flags = 0;
@@ -4510,7 +4510,7 @@ diff -NurpP --minimal linux-4.9.135/fs/namespace.c linux-4.9.135-vs2.3.9.8/fs/na
  
        /* Discard magic */
        if ((flags & MS_MGC_MSK) == MS_MGC_VAL)
  
        /* Discard magic */
        if ((flags & MS_MGC_MSK) == MS_MGC_VAL)
-@@ -2794,6 +2809,12 @@ long do_mount(const char *dev_name, cons
+@@ -2806,6 +2821,12 @@ long do_mount(const char *dev_name, cons
        if (!(flags & MS_NOATIME))
                mnt_flags |= MNT_RELATIME;
  
        if (!(flags & MS_NOATIME))
                mnt_flags |= MNT_RELATIME;
  
@@ -4523,7 +4523,7 @@ diff -NurpP --minimal linux-4.9.135/fs/namespace.c linux-4.9.135-vs2.3.9.8/fs/na
        /* Separate the per-mountpoint flags */
        if (flags & MS_NOSUID)
                mnt_flags |= MNT_NOSUID;
        /* Separate the per-mountpoint flags */
        if (flags & MS_NOSUID)
                mnt_flags |= MNT_NOSUID;
-@@ -2818,15 +2839,18 @@ long do_mount(const char *dev_name, cons
+@@ -2830,15 +2851,18 @@ long do_mount(const char *dev_name, cons
                mnt_flags |= path.mnt->mnt_flags & MNT_ATIME_MASK;
        }
  
                mnt_flags |= path.mnt->mnt_flags & MNT_ATIME_MASK;
        }
  
@@ -4544,7 +4544,7 @@ diff -NurpP --minimal linux-4.9.135/fs/namespace.c linux-4.9.135-vs2.3.9.8/fs/na
        else if (flags & (MS_SHARED | MS_PRIVATE | MS_SLAVE | MS_UNBINDABLE))
                retval = do_change_type(&path, flags);
        else if (flags & MS_MOVE)
        else if (flags & (MS_SHARED | MS_PRIVATE | MS_SLAVE | MS_UNBINDABLE))
                retval = do_change_type(&path, flags);
        else if (flags & MS_MOVE)
-@@ -2967,6 +2991,7 @@ struct mnt_namespace *copy_mnt_ns(unsign
+@@ -2979,6 +3003,7 @@ struct mnt_namespace *copy_mnt_ns(unsign
                        p = next_mnt(p, old);
        }
        namespace_unlock();
                        p = next_mnt(p, old);
        }
        namespace_unlock();
@@ -4552,7 +4552,7 @@ diff -NurpP --minimal linux-4.9.135/fs/namespace.c linux-4.9.135-vs2.3.9.8/fs/na
  
        if (rootmnt)
                mntput(rootmnt);
  
        if (rootmnt)
                mntput(rootmnt);
-@@ -3142,9 +3167,10 @@ SYSCALL_DEFINE2(pivot_root, const char _
+@@ -3154,9 +3179,10 @@ SYSCALL_DEFINE2(pivot_root, const char _
        new_mnt = real_mount(new.mnt);
        root_mnt = real_mount(root.mnt);
        old_mnt = real_mount(old.mnt);
        new_mnt = real_mount(new.mnt);
        root_mnt = real_mount(root.mnt);
        old_mnt = real_mount(old.mnt);
@@ -4565,7 +4565,7 @@ diff -NurpP --minimal linux-4.9.135/fs/namespace.c linux-4.9.135-vs2.3.9.8/fs/na
                goto out4;
        if (!check_mnt(root_mnt) || !check_mnt(new_mnt))
                goto out4;
                goto out4;
        if (!check_mnt(root_mnt) || !check_mnt(new_mnt))
                goto out4;
-@@ -3282,6 +3308,7 @@ void put_mnt_ns(struct mnt_namespace *ns
+@@ -3294,6 +3320,7 @@ void put_mnt_ns(struct mnt_namespace *ns
        if (!atomic_dec_and_test(&ns->count))
                return;
        drop_collected_mounts(&ns->root->mnt);
        if (!atomic_dec_and_test(&ns->count))
                return;
        drop_collected_mounts(&ns->root->mnt);
@@ -4573,9 +4573,9 @@ diff -NurpP --minimal linux-4.9.135/fs/namespace.c linux-4.9.135-vs2.3.9.8/fs/na
        free_mnt_ns(ns);
  }
  
        free_mnt_ns(ns);
  }
  
-diff -NurpP --minimal linux-4.9.135/fs/nfs/client.c linux-4.9.135-vs2.3.9.8/fs/nfs/client.c
---- linux-4.9.135/fs/nfs/client.c      2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/fs/nfs/client.c    2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/fs/nfs/client.c linux-4.9/fs/nfs/client.c
+--- linux-4.9/fs/nfs/client.c  2021-02-24 15:47:32.290675776 +0100
++++ linux-4.9/fs/nfs/client.c  2021-02-24 15:47:45.074409033 +0100
 @@ -586,6 +586,9 @@ int nfs_init_server_rpcclient(struct nfs
        if (server->flags & NFS_MOUNT_SOFT)
                server->client->cl_softrtry = 1;
 @@ -586,6 +586,9 @@ int nfs_init_server_rpcclient(struct nfs
        if (server->flags & NFS_MOUNT_SOFT)
                server->client->cl_softrtry = 1;
@@ -4597,9 +4597,9 @@ diff -NurpP --minimal linux-4.9.135/fs/nfs/client.c linux-4.9.135-vs2.3.9.8/fs/n
        server->maxfilesize = fsinfo->maxfilesize;
  
        server->time_delta = fsinfo->time_delta;
        server->maxfilesize = fsinfo->maxfilesize;
  
        server->time_delta = fsinfo->time_delta;
-diff -NurpP --minimal linux-4.9.135/fs/nfs/dir.c linux-4.9.135-vs2.3.9.8/fs/nfs/dir.c
---- linux-4.9.135/fs/nfs/dir.c 2018-10-20 10:39:17.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/fs/nfs/dir.c       2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/fs/nfs/dir.c linux-4.9/fs/nfs/dir.c
+--- linux-4.9/fs/nfs/dir.c     2021-02-24 15:47:32.294009214 +0100
++++ linux-4.9/fs/nfs/dir.c     2021-02-24 15:47:45.074409033 +0100
 @@ -37,6 +37,7 @@
  #include <linux/sched.h>
  #include <linux/kmemleak.h>
 @@ -37,6 +37,7 @@
  #include <linux/sched.h>
  #include <linux/kmemleak.h>
@@ -4608,7 +4608,7 @@ diff -NurpP --minimal linux-4.9.135/fs/nfs/dir.c linux-4.9.135-vs2.3.9.8/fs/nfs/
  
  #include "delegation.h"
  #include "iostat.h"
  
  #include "delegation.h"
  #include "iostat.h"
-@@ -1420,6 +1421,7 @@ struct dentry *nfs_lookup(struct inode *
+@@ -1431,6 +1432,7 @@ struct dentry *nfs_lookup(struct inode *
        /* Success: notify readdir to use READDIRPLUS */
        nfs_advise_use_readdirplus(dir);
  
        /* Success: notify readdir to use READDIRPLUS */
        nfs_advise_use_readdirplus(dir);
  
@@ -4616,9 +4616,9 @@ diff -NurpP --minimal linux-4.9.135/fs/nfs/dir.c linux-4.9.135-vs2.3.9.8/fs/nfs/
  no_entry:
        res = d_splice_alias(inode, dentry);
        if (res != NULL) {
  no_entry:
        res = d_splice_alias(inode, dentry);
        if (res != NULL) {
-diff -NurpP --minimal linux-4.9.135/fs/nfs/inode.c linux-4.9.135-vs2.3.9.8/fs/nfs/inode.c
---- linux-4.9.135/fs/nfs/inode.c       2018-10-20 10:39:17.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/fs/nfs/inode.c     2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/fs/nfs/inode.c linux-4.9/fs/nfs/inode.c
+--- linux-4.9/fs/nfs/inode.c   2021-02-24 15:47:32.294009214 +0100
++++ linux-4.9/fs/nfs/inode.c   2021-02-24 15:47:45.074409033 +0100
 @@ -38,6 +38,7 @@
  #include <linux/slab.h>
  #include <linux/compat.h>
 @@ -38,6 +38,7 @@
  #include <linux/slab.h>
  #include <linux/compat.h>
@@ -4681,7 +4681,7 @@ diff -NurpP --minimal linux-4.9.135/fs/nfs/inode.c linux-4.9.135-vs2.3.9.8/fs/nf
                nfs_set_cache_invalid(inode, NFS_INO_INVALID_ACCESS
                                | NFS_INO_INVALID_ACL);
        }
                nfs_set_cache_invalid(inode, NFS_INO_INVALID_ACCESS
                                | NFS_INO_INVALID_ACL);
        }
-@@ -1272,7 +1281,9 @@ static int nfs_check_inode_attributes(st
+@@ -1273,7 +1282,9 @@ static int nfs_check_inode_attributes(st
        struct nfs_inode *nfsi = NFS_I(inode);
        loff_t cur_size, new_isize;
        unsigned long invalid = 0;
        struct nfs_inode *nfsi = NFS_I(inode);
        loff_t cur_size, new_isize;
        unsigned long invalid = 0;
@@ -4692,7 +4692,7 @@ diff -NurpP --minimal linux-4.9.135/fs/nfs/inode.c linux-4.9.135-vs2.3.9.8/fs/nf
  
        if (nfs_have_delegated_attributes(inode))
                return 0;
  
        if (nfs_have_delegated_attributes(inode))
                return 0;
-@@ -1301,13 +1312,18 @@ static int nfs_check_inode_attributes(st
+@@ -1302,13 +1313,18 @@ static int nfs_check_inode_attributes(st
                }
        }
  
                }
        }
  
@@ -4713,7 +4713,7 @@ diff -NurpP --minimal linux-4.9.135/fs/nfs/inode.c linux-4.9.135-vs2.3.9.8/fs/nf
  
        /* Has the link count changed? */
        if ((fattr->valid & NFS_ATTR_FATTR_NLINK) && inode->i_nlink != fattr->nlink)
  
        /* Has the link count changed? */
        if ((fattr->valid & NFS_ATTR_FATTR_NLINK) && inode->i_nlink != fattr->nlink)
-@@ -1666,6 +1682,9 @@ static int nfs_update_inode(struct inode
+@@ -1667,6 +1683,9 @@ static int nfs_update_inode(struct inode
        unsigned long save_cache_validity;
        bool have_writers = nfs_file_has_buffered_writers(nfsi);
        bool cache_revalidated = true;
        unsigned long save_cache_validity;
        bool have_writers = nfs_file_has_buffered_writers(nfsi);
        bool cache_revalidated = true;
@@ -4723,7 +4723,7 @@ diff -NurpP --minimal linux-4.9.135/fs/nfs/inode.c linux-4.9.135-vs2.3.9.8/fs/nf
  
        dfprintk(VFS, "NFS: %s(%s/%lu fh_crc=0x%08x ct=%d info=0x%x)\n",
                        __func__, inode->i_sb->s_id, inode->i_ino,
  
        dfprintk(VFS, "NFS: %s(%s/%lu fh_crc=0x%08x ct=%d info=0x%x)\n",
                        __func__, inode->i_sb->s_id, inode->i_ino,
-@@ -1785,6 +1804,9 @@ static int nfs_update_inode(struct inode
+@@ -1786,6 +1805,9 @@ static int nfs_update_inode(struct inode
                cache_revalidated = false;
        }
  
                cache_revalidated = false;
        }
  
@@ -4733,7 +4733,7 @@ diff -NurpP --minimal linux-4.9.135/fs/nfs/inode.c linux-4.9.135-vs2.3.9.8/fs/nf
  
        if (fattr->valid & NFS_ATTR_FATTR_ATIME)
                memcpy(&inode->i_atime, &fattr->atime, sizeof(inode->i_atime));
  
        if (fattr->valid & NFS_ATTR_FATTR_ATIME)
                memcpy(&inode->i_atime, &fattr->atime, sizeof(inode->i_atime));
-@@ -1839,6 +1861,10 @@ static int nfs_update_inode(struct inode
+@@ -1840,6 +1862,10 @@ static int nfs_update_inode(struct inode
                cache_revalidated = false;
        }
  
                cache_revalidated = false;
        }
  
@@ -4744,9 +4744,9 @@ diff -NurpP --minimal linux-4.9.135/fs/nfs/inode.c linux-4.9.135-vs2.3.9.8/fs/nf
        if (fattr->valid & NFS_ATTR_FATTR_NLINK) {
                if (inode->i_nlink != fattr->nlink) {
                        invalid |= NFS_INO_INVALID_ATTR;
        if (fattr->valid & NFS_ATTR_FATTR_NLINK) {
                if (inode->i_nlink != fattr->nlink) {
                        invalid |= NFS_INO_INVALID_ATTR;
-diff -NurpP --minimal linux-4.9.135/fs/nfs/nfs3xdr.c linux-4.9.135-vs2.3.9.8/fs/nfs/nfs3xdr.c
---- linux-4.9.135/fs/nfs/nfs3xdr.c     2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/fs/nfs/nfs3xdr.c   2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/fs/nfs/nfs3xdr.c linux-4.9/fs/nfs/nfs3xdr.c
+--- linux-4.9/fs/nfs/nfs3xdr.c 2016-12-11 20:17:54.000000000 +0100
++++ linux-4.9/fs/nfs/nfs3xdr.c 2021-02-24 15:47:45.074409033 +0100
 @@ -20,6 +20,7 @@
  #include <linux/nfs3.h>
  #include <linux/nfs_fs.h>
 @@ -20,6 +20,7 @@
  #include <linux/nfs3.h>
  #include <linux/nfs_fs.h>
@@ -4892,9 +4892,9 @@ diff -NurpP --minimal linux-4.9.135/fs/nfs/nfs3xdr.c linux-4.9.135-vs2.3.9.8/fs/
  }
  
  /*
  }
  
  /*
-diff -NurpP --minimal linux-4.9.135/fs/nfs/super.c linux-4.9.135-vs2.3.9.8/fs/nfs/super.c
---- linux-4.9.135/fs/nfs/super.c       2018-10-20 10:39:17.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/fs/nfs/super.c     2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/fs/nfs/super.c linux-4.9/fs/nfs/super.c
+--- linux-4.9/fs/nfs/super.c   2021-02-24 15:47:32.300676089 +0100
++++ linux-4.9/fs/nfs/super.c   2021-02-24 15:47:45.074409033 +0100
 @@ -54,6 +54,7 @@
  #include <linux/parser.h>
  #include <linux/nsproxy.h>
 @@ -54,6 +54,7 @@
  #include <linux/parser.h>
  #include <linux/nsproxy.h>
@@ -4968,9 +4968,9 @@ diff -NurpP --minimal linux-4.9.135/fs/nfs/super.c linux-4.9.135-vs2.3.9.8/fs/nf
  
                /*
                 * options that take text values
  
                /*
                 * options that take text values
-diff -NurpP --minimal linux-4.9.135/fs/nfsd/auth.c linux-4.9.135-vs2.3.9.8/fs/nfsd/auth.c
---- linux-4.9.135/fs/nfsd/auth.c       2018-10-20 10:39:18.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/fs/nfsd/auth.c     2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/fs/nfsd/auth.c linux-4.9/fs/nfsd/auth.c
+--- linux-4.9/fs/nfsd/auth.c   2021-02-24 15:47:32.300676089 +0100
++++ linux-4.9/fs/nfsd/auth.c   2021-02-24 15:47:45.074409033 +0100
 @@ -1,6 +1,7 @@
  /* Copyright (C) 1995, 1996 Olaf Kirch <okir@monad.swb.de> */
  
 @@ -1,6 +1,7 @@
  /* Copyright (C) 1995, 1996 Olaf Kirch <okir@monad.swb.de> */
  
@@ -4989,9 +4989,9 @@ diff -NurpP --minimal linux-4.9.135/fs/nfsd/auth.c linux-4.9.135-vs2.3.9.8/fs/nf
  
        rqgi = rqstp->rq_cred.cr_group_info;
  
  
        rqgi = rqstp->rq_cred.cr_group_info;
  
-diff -NurpP --minimal linux-4.9.135/fs/nfsd/nfs3xdr.c linux-4.9.135-vs2.3.9.8/fs/nfsd/nfs3xdr.c
---- linux-4.9.135/fs/nfsd/nfs3xdr.c    2018-10-20 10:39:18.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/fs/nfsd/nfs3xdr.c  2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/fs/nfsd/nfs3xdr.c linux-4.9/fs/nfsd/nfs3xdr.c
+--- linux-4.9/fs/nfsd/nfs3xdr.c        2021-02-24 15:47:32.300676089 +0100
++++ linux-4.9/fs/nfsd/nfs3xdr.c        2021-02-24 15:47:45.077742470 +0100
 @@ -8,6 +8,7 @@
  
  #include <linux/namei.h>
 @@ -8,6 +8,7 @@
  
  #include <linux/namei.h>
@@ -5045,9 +5045,9 @@ diff -NurpP --minimal linux-4.9.135/fs/nfsd/nfs3xdr.c linux-4.9.135-vs2.3.9.8/fs
        if (S_ISLNK(stat->mode) && stat->size > NFS3_MAXPATHLEN) {
                p = xdr_encode_hyper(p, (u64) NFS3_MAXPATHLEN);
        } else {
        if (S_ISLNK(stat->mode) && stat->size > NFS3_MAXPATHLEN) {
                p = xdr_encode_hyper(p, (u64) NFS3_MAXPATHLEN);
        } else {
-diff -NurpP --minimal linux-4.9.135/fs/nfsd/nfs4xdr.c linux-4.9.135-vs2.3.9.8/fs/nfsd/nfs4xdr.c
---- linux-4.9.135/fs/nfsd/nfs4xdr.c    2018-10-20 10:39:18.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/fs/nfsd/nfs4xdr.c  2018-10-20 05:55:43.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/fs/nfsd/nfs4xdr.c linux-4.9/fs/nfsd/nfs4xdr.c
+--- linux-4.9/fs/nfsd/nfs4xdr.c        2021-02-24 15:47:32.304009527 +0100
++++ linux-4.9/fs/nfsd/nfs4xdr.c        2021-02-24 15:47:45.077742470 +0100
 @@ -40,6 +40,7 @@
  #include <linux/utsname.h>
  #include <linux/pagemap.h>
 @@ -40,6 +40,7 @@
  #include <linux/utsname.h>
  #include <linux/pagemap.h>
@@ -5075,9 +5075,9 @@ diff -NurpP --minimal linux-4.9.135/fs/nfsd/nfs4xdr.c linux-4.9.135-vs2.3.9.8/fs
                if (status)
                        goto out;
        }
                if (status)
                        goto out;
        }
-diff -NurpP --minimal linux-4.9.135/fs/nfsd/nfsxdr.c linux-4.9.135-vs2.3.9.8/fs/nfsd/nfsxdr.c
---- linux-4.9.135/fs/nfsd/nfsxdr.c     2018-10-20 10:39:18.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/fs/nfsd/nfsxdr.c   2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/fs/nfsd/nfsxdr.c linux-4.9/fs/nfsd/nfsxdr.c
+--- linux-4.9/fs/nfsd/nfsxdr.c 2021-02-24 15:47:32.307342964 +0100
++++ linux-4.9/fs/nfsd/nfsxdr.c 2021-02-24 15:47:45.077742470 +0100
 @@ -7,6 +7,7 @@
  #include "vfs.h"
  #include "xdr.h"
 @@ -7,6 +7,7 @@
  #include "vfs.h"
  #include "xdr.h"
@@ -5129,9 +5129,9 @@ diff -NurpP --minimal linux-4.9.135/fs/nfsd/nfsxdr.c linux-4.9.135-vs2.3.9.8/fs/
  
        if (S_ISLNK(type) && stat->size > NFS_MAXPATHLEN) {
                *p++ = htonl(NFS_MAXPATHLEN);
  
        if (S_ISLNK(type) && stat->size > NFS_MAXPATHLEN) {
                *p++ = htonl(NFS_MAXPATHLEN);
-diff -NurpP --minimal linux-4.9.135/fs/ocfs2/dlmglue.c linux-4.9.135-vs2.3.9.8/fs/ocfs2/dlmglue.c
---- linux-4.9.135/fs/ocfs2/dlmglue.c   2018-10-20 10:39:18.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/fs/ocfs2/dlmglue.c 2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/fs/ocfs2/dlmglue.c linux-4.9/fs/ocfs2/dlmglue.c
+--- linux-4.9/fs/ocfs2/dlmglue.c       2021-02-24 15:47:32.314009840 +0100
++++ linux-4.9/fs/ocfs2/dlmglue.c       2021-02-24 15:47:45.077742470 +0100
 @@ -2120,6 +2120,7 @@ static void __ocfs2_stuff_meta_lvb(struc
        lvb->lvb_iclusters = cpu_to_be32(oi->ip_clusters);
        lvb->lvb_iuid      = cpu_to_be32(i_uid_read(inode));
 @@ -2120,6 +2120,7 @@ static void __ocfs2_stuff_meta_lvb(struc
        lvb->lvb_iclusters = cpu_to_be32(oi->ip_clusters);
        lvb->lvb_iuid      = cpu_to_be32(i_uid_read(inode));
@@ -5148,9 +5148,9 @@ diff -NurpP --minimal linux-4.9.135/fs/ocfs2/dlmglue.c linux-4.9.135-vs2.3.9.8/f
        inode->i_mode    = be16_to_cpu(lvb->lvb_imode);
        set_nlink(inode, be16_to_cpu(lvb->lvb_inlink));
        ocfs2_unpack_timespec(&inode->i_atime,
        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-4.9.135/fs/ocfs2/dlmglue.h linux-4.9.135-vs2.3.9.8/fs/ocfs2/dlmglue.h
---- linux-4.9.135/fs/ocfs2/dlmglue.h   2018-10-20 10:39:18.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/fs/ocfs2/dlmglue.h 2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/fs/ocfs2/dlmglue.h linux-4.9/fs/ocfs2/dlmglue.h
+--- linux-4.9/fs/ocfs2/dlmglue.h       2021-02-24 15:47:32.314009840 +0100
++++ linux-4.9/fs/ocfs2/dlmglue.h       2021-02-24 15:47:45.077742470 +0100
 @@ -46,7 +46,8 @@ struct ocfs2_meta_lvb {
        __be16       lvb_inlink;
        __be32       lvb_iattr;
 @@ -46,7 +46,8 @@ struct ocfs2_meta_lvb {
        __be16       lvb_inlink;
        __be32       lvb_iattr;
@@ -5161,9 +5161,9 @@ diff -NurpP --minimal linux-4.9.135/fs/ocfs2/dlmglue.h linux-4.9.135-vs2.3.9.8/f
  };
  
  #define OCFS2_QINFO_LVB_VERSION 1
  };
  
  #define OCFS2_QINFO_LVB_VERSION 1
-diff -NurpP --minimal linux-4.9.135/fs/ocfs2/file.c linux-4.9.135-vs2.3.9.8/fs/ocfs2/file.c
---- linux-4.9.135/fs/ocfs2/file.c      2018-10-20 10:39:18.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/fs/ocfs2/file.c    2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/fs/ocfs2/file.c linux-4.9/fs/ocfs2/file.c
+--- linux-4.9/fs/ocfs2/file.c  2021-02-24 15:47:32.314009840 +0100
++++ linux-4.9/fs/ocfs2/file.c  2021-02-24 15:47:45.077742470 +0100
 @@ -1151,7 +1151,7 @@ int ocfs2_setattr(struct dentry *dentry,
                attr->ia_valid &= ~ATTR_SIZE;
  
 @@ -1151,7 +1151,7 @@ int ocfs2_setattr(struct dentry *dentry,
                attr->ia_valid &= ~ATTR_SIZE;
  
@@ -5173,9 +5173,9 @@ diff -NurpP --minimal linux-4.9.135/fs/ocfs2/file.c linux-4.9.135-vs2.3.9.8/fs/o
        if (!(attr->ia_valid & OCFS2_VALID_ATTRS))
                return 0;
  
        if (!(attr->ia_valid & OCFS2_VALID_ATTRS))
                return 0;
  
-diff -NurpP --minimal linux-4.9.135/fs/ocfs2/inode.c linux-4.9.135-vs2.3.9.8/fs/ocfs2/inode.c
---- linux-4.9.135/fs/ocfs2/inode.c     2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/fs/ocfs2/inode.c   2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/fs/ocfs2/inode.c linux-4.9/fs/ocfs2/inode.c
+--- linux-4.9/fs/ocfs2/inode.c 2016-12-11 20:17:54.000000000 +0100
++++ linux-4.9/fs/ocfs2/inode.c 2021-02-24 15:47:45.077742470 +0100
 @@ -28,6 +28,7 @@
  #include <linux/highmem.h>
  #include <linux/pagemap.h>
 @@ -28,6 +28,7 @@
  #include <linux/highmem.h>
  #include <linux/pagemap.h>
@@ -5272,9 +5272,9 @@ diff -NurpP --minimal linux-4.9.135/fs/ocfs2/inode.c linux-4.9.135-vs2.3.9.8/fs/
  
        /* Fast symlinks will have i_size but no allocated clusters. */
        if (S_ISLNK(inode->i_mode) && !fe->i_clusters) {
  
        /* Fast symlinks will have i_size but no allocated clusters. */
        if (S_ISLNK(inode->i_mode) && !fe->i_clusters) {
-diff -NurpP --minimal linux-4.9.135/fs/ocfs2/inode.h linux-4.9.135-vs2.3.9.8/fs/ocfs2/inode.h
---- linux-4.9.135/fs/ocfs2/inode.h     2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/fs/ocfs2/inode.h   2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/fs/ocfs2/inode.h linux-4.9/fs/ocfs2/inode.h
+--- linux-4.9/fs/ocfs2/inode.h 2016-12-11 20:17:54.000000000 +0100
++++ linux-4.9/fs/ocfs2/inode.h 2021-02-24 15:47:45.077742470 +0100
 @@ -155,6 +155,7 @@ int ocfs2_mark_inode_dirty(handle_t *han
  
  void ocfs2_set_inode_flags(struct inode *inode);
 @@ -155,6 +155,7 @@ int ocfs2_mark_inode_dirty(handle_t *han
  
  void ocfs2_set_inode_flags(struct inode *inode);
@@ -5283,9 +5283,9 @@ diff -NurpP --minimal linux-4.9.135/fs/ocfs2/inode.h linux-4.9.135-vs2.3.9.8/fs/
  
  static inline blkcnt_t ocfs2_inode_sector_count(struct inode *inode)
  {
  
  static inline blkcnt_t ocfs2_inode_sector_count(struct inode *inode)
  {
-diff -NurpP --minimal linux-4.9.135/fs/ocfs2/ioctl.c linux-4.9.135-vs2.3.9.8/fs/ocfs2/ioctl.c
---- linux-4.9.135/fs/ocfs2/ioctl.c     2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/fs/ocfs2/ioctl.c   2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/fs/ocfs2/ioctl.c linux-4.9/fs/ocfs2/ioctl.c
+--- linux-4.9/fs/ocfs2/ioctl.c 2021-02-24 15:47:32.314009840 +0100
++++ linux-4.9/fs/ocfs2/ioctl.c 2021-02-24 15:47:45.077742470 +0100
 @@ -76,7 +76,41 @@ static int ocfs2_get_inode_attr(struct i
        return status;
  }
 @@ -76,7 +76,41 @@ static int ocfs2_get_inode_attr(struct i
        return status;
  }
@@ -5349,9 +5349,9 @@ diff -NurpP --minimal linux-4.9.135/fs/ocfs2/ioctl.c linux-4.9.135-vs2.3.9.8/fs/
  long ocfs2_ioctl(struct file *filp, unsigned int cmd, unsigned long arg)
  {
        struct inode *inode = file_inode(filp);
  long ocfs2_ioctl(struct file *filp, unsigned int cmd, unsigned long arg)
  {
        struct inode *inode = file_inode(filp);
-diff -NurpP --minimal linux-4.9.135/fs/ocfs2/namei.c linux-4.9.135-vs2.3.9.8/fs/ocfs2/namei.c
---- linux-4.9.135/fs/ocfs2/namei.c     2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/fs/ocfs2/namei.c   2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/fs/ocfs2/namei.c linux-4.9/fs/ocfs2/namei.c
+--- linux-4.9/fs/ocfs2/namei.c 2016-12-11 20:17:54.000000000 +0100
++++ linux-4.9/fs/ocfs2/namei.c 2021-02-24 15:47:45.081075908 +0100
 @@ -41,6 +41,7 @@
  #include <linux/slab.h>
  #include <linux/highmem.h>
 @@ -41,6 +41,7 @@
  #include <linux/slab.h>
  #include <linux/highmem.h>
@@ -5384,9 +5384,9 @@ diff -NurpP --minimal linux-4.9.135/fs/ocfs2/namei.c linux-4.9.135-vs2.3.9.8/fs/
        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));
        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-4.9.135/fs/ocfs2/ocfs2.h linux-4.9.135-vs2.3.9.8/fs/ocfs2/ocfs2.h
---- linux-4.9.135/fs/ocfs2/ocfs2.h     2018-10-20 10:39:18.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/fs/ocfs2/ocfs2.h   2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/fs/ocfs2/ocfs2.h linux-4.9/fs/ocfs2/ocfs2.h
+--- linux-4.9/fs/ocfs2/ocfs2.h 2021-02-24 15:47:32.317343277 +0100
++++ linux-4.9/fs/ocfs2/ocfs2.h 2021-02-24 15:47:45.081075908 +0100
 @@ -289,6 +289,7 @@ enum ocfs2_mount_options
        OCFS2_MOUNT_JOURNAL_ASYNC_COMMIT = 1 << 15,  /* Journal Async Commit */
        OCFS2_MOUNT_ERRORS_CONT = 1 << 16, /* Return EIO to the calling process on error */
 @@ -289,6 +289,7 @@ enum ocfs2_mount_options
        OCFS2_MOUNT_JOURNAL_ASYNC_COMMIT = 1 << 15,  /* Journal Async Commit */
        OCFS2_MOUNT_ERRORS_CONT = 1 << 16, /* Return EIO to the calling process on error */
@@ -5395,9 +5395,9 @@ diff -NurpP --minimal linux-4.9.135/fs/ocfs2/ocfs2.h linux-4.9.135-vs2.3.9.8/fs/
  };
  
  #define OCFS2_OSB_SOFT_RO     0x0001
  };
  
  #define OCFS2_OSB_SOFT_RO     0x0001
-diff -NurpP --minimal linux-4.9.135/fs/ocfs2/ocfs2_fs.h linux-4.9.135-vs2.3.9.8/fs/ocfs2/ocfs2_fs.h
---- linux-4.9.135/fs/ocfs2/ocfs2_fs.h  2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/fs/ocfs2/ocfs2_fs.h        2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/fs/ocfs2/ocfs2_fs.h linux-4.9/fs/ocfs2/ocfs2_fs.h
+--- linux-4.9/fs/ocfs2/ocfs2_fs.h      2021-02-24 15:47:32.317343277 +0100
++++ linux-4.9/fs/ocfs2/ocfs2_fs.h      2021-02-24 15:47:45.081075908 +0100
 @@ -275,6 +275,11 @@
  #define OCFS2_TOPDIR_FL                       FS_TOPDIR_FL    /* Top of directory hierarchies*/
  #define OCFS2_RESERVED_FL             FS_RESERVED_FL  /* reserved for ext2 lib */
 @@ -275,6 +275,11 @@
  #define OCFS2_TOPDIR_FL                       FS_TOPDIR_FL    /* Top of directory hierarchies*/
  #define OCFS2_RESERVED_FL             FS_RESERVED_FL  /* reserved for ext2 lib */
@@ -5410,9 +5410,9 @@ diff -NurpP --minimal linux-4.9.135/fs/ocfs2/ocfs2_fs.h linux-4.9.135-vs2.3.9.8/
  #define OCFS2_FL_VISIBLE              FS_FL_USER_VISIBLE      /* User visible flags */
  #define OCFS2_FL_MODIFIABLE           FS_FL_USER_MODIFIABLE   /* User modifiable flags */
  
  #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-4.9.135/fs/ocfs2/super.c linux-4.9.135-vs2.3.9.8/fs/ocfs2/super.c
---- linux-4.9.135/fs/ocfs2/super.c     2018-10-20 10:39:18.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/fs/ocfs2/super.c   2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/fs/ocfs2/super.c linux-4.9/fs/ocfs2/super.c
+--- linux-4.9/fs/ocfs2/super.c 2021-02-24 15:47:32.317343277 +0100
++++ linux-4.9/fs/ocfs2/super.c 2021-02-24 15:47:45.081075908 +0100
 @@ -188,6 +188,7 @@ enum {
        Opt_dir_resv_level,
        Opt_journal_async_commit,
 @@ -188,6 +188,7 @@ enum {
        Opt_dir_resv_level,
        Opt_journal_async_commit,
@@ -5476,9 +5476,9 @@ diff -NurpP --minimal linux-4.9.135/fs/ocfs2/super.c linux-4.9.135-vs2.3.9.8/fs/
                default:
                        mlog(ML_ERROR,
                             "Unrecognized mount option \"%s\" "
                default:
                        mlog(ML_ERROR,
                             "Unrecognized mount option \"%s\" "
-diff -NurpP --minimal linux-4.9.135/fs/open.c linux-4.9.135-vs2.3.9.8/fs/open.c
---- linux-4.9.135/fs/open.c    2018-10-20 10:39:18.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/fs/open.c  2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/fs/open.c linux-4.9/fs/open.c
+--- linux-4.9/fs/open.c        2021-02-24 15:47:32.320676715 +0100
++++ linux-4.9/fs/open.c        2021-02-24 15:47:45.081075908 +0100
 @@ -31,6 +31,11 @@
  #include <linux/ima.h>
  #include <linux/dnotify.h>
 @@ -31,6 +31,11 @@
  #include <linux/ima.h>
  #include <linux/dnotify.h>
@@ -5510,7 +5510,7 @@ diff -NurpP --minimal linux-4.9.135/fs/open.c linux-4.9.135-vs2.3.9.8/fs/open.c
        inode = path->dentry->d_inode;
  
        /* For directories it's -EISDIR, for other non-regulars - -EINVAL */
        inode = path->dentry->d_inode;
  
        /* For directories it's -EISDIR, for other non-regulars - -EINVAL */
-@@ -565,6 +575,13 @@ SYSCALL_DEFINE3(fchmodat, int, dfd, cons
+@@ -584,6 +594,13 @@ SYSCALL_DEFINE3(fchmodat, int, dfd, cons
        unsigned int lookup_flags = LOOKUP_FOLLOW;
  retry:
        error = user_path_at(dfd, filename, lookup_flags, &path);
        unsigned int lookup_flags = LOOKUP_FOLLOW;
  retry:
        error = user_path_at(dfd, filename, lookup_flags, &path);
@@ -5524,7 +5524,7 @@ diff -NurpP --minimal linux-4.9.135/fs/open.c linux-4.9.135-vs2.3.9.8/fs/open.c
        if (!error) {
                error = chmod_common(&path, mode);
                path_put(&path);
        if (!error) {
                error = chmod_common(&path, mode);
                path_put(&path);
-@@ -599,13 +616,15 @@ retry_deleg:
+@@ -618,13 +635,15 @@ retry_deleg:
                if (!uid_valid(uid))
                        return -EINVAL;
                newattrs.ia_valid |= ATTR_UID;
                if (!uid_valid(uid))
                        return -EINVAL;
                newattrs.ia_valid |= ATTR_UID;
@@ -5542,7 +5542,7 @@ diff -NurpP --minimal linux-4.9.135/fs/open.c linux-4.9.135-vs2.3.9.8/fs/open.c
        }
        if (!S_ISDIR(inode->i_mode))
                newattrs.ia_valid |=
        }
        if (!S_ISDIR(inode->i_mode))
                newattrs.ia_valid |=
-@@ -643,6 +662,10 @@ retry:
+@@ -662,6 +681,10 @@ retry:
        error = mnt_want_write(path.mnt);
        if (error)
                goto out_release;
        error = mnt_want_write(path.mnt);
        if (error)
                goto out_release;
@@ -5553,9 +5553,9 @@ diff -NurpP --minimal linux-4.9.135/fs/open.c linux-4.9.135-vs2.3.9.8/fs/open.c
        error = chown_common(&path, user, group);
        mnt_drop_write(path.mnt);
  out_release:
        error = chown_common(&path, user, group);
        mnt_drop_write(path.mnt);
  out_release:
-diff -NurpP --minimal linux-4.9.135/fs/proc/array.c linux-4.9.135-vs2.3.9.8/fs/proc/array.c
---- linux-4.9.135/fs/proc/array.c      2018-10-20 10:39:18.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/fs/proc/array.c    2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/fs/proc/array.c linux-4.9/fs/proc/array.c
+--- linux-4.9/fs/proc/array.c  2021-02-24 15:47:32.324010153 +0100
++++ linux-4.9/fs/proc/array.c  2021-02-24 15:47:45.081075908 +0100
 @@ -86,6 +86,8 @@
  #include <linux/string_helpers.h>
  #include <linux/user_namespace.h>
 @@ -86,6 +86,8 @@
  #include <linux/string_helpers.h>
  #include <linux/user_namespace.h>
@@ -5604,7 +5604,7 @@ diff -NurpP --minimal linux-4.9.135/fs/proc/array.c linux-4.9.135-vs2.3.9.8/fs/p
  }
  
  static inline void task_seccomp(struct seq_file *m, struct task_struct *p)
  }
  
  static inline void task_seccomp(struct seq_file *m, struct task_struct *p)
-@@ -390,6 +396,43 @@ static void task_cpus_allowed(struct seq
+@@ -391,6 +397,43 @@ static void task_cpus_allowed(struct seq
                   cpumask_pr_args(&task->cpus_allowed));
  }
  
                   cpumask_pr_args(&task->cpus_allowed));
  }
  
@@ -5648,7 +5648,7 @@ diff -NurpP --minimal linux-4.9.135/fs/proc/array.c linux-4.9.135-vs2.3.9.8/fs/p
  int proc_pid_status(struct seq_file *m, struct pid_namespace *ns,
                        struct pid *pid, struct task_struct *task)
  {
  int proc_pid_status(struct seq_file *m, struct pid_namespace *ns,
                        struct pid *pid, struct task_struct *task)
  {
-@@ -407,6 +450,7 @@ int proc_pid_status(struct seq_file *m,
+@@ -408,6 +451,7 @@ int proc_pid_status(struct seq_file *m,
        task_seccomp(m, task);
        task_cpus_allowed(m, task);
        cpuset_task_status_allowed(m, task);
        task_seccomp(m, task);
        task_cpus_allowed(m, task);
        cpuset_task_status_allowed(m, task);
@@ -5656,7 +5656,7 @@ diff -NurpP --minimal linux-4.9.135/fs/proc/array.c linux-4.9.135-vs2.3.9.8/fs/p
        task_context_switch_counts(m, task);
        return 0;
  }
        task_context_switch_counts(m, task);
        return 0;
  }
-@@ -522,6 +566,17 @@ static int do_task_stat(struct seq_file
+@@ -523,6 +567,17 @@ static int do_task_stat(struct seq_file
        /* convert nsec -> ticks */
        start_time = nsec_to_clock_t(task->real_start_time);
  
        /* convert nsec -> ticks */
        start_time = nsec_to_clock_t(task->real_start_time);
  
@@ -5674,9 +5674,9 @@ diff -NurpP --minimal linux-4.9.135/fs/proc/array.c linux-4.9.135-vs2.3.9.8/fs/p
        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);
        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-4.9.135/fs/proc/base.c linux-4.9.135-vs2.3.9.8/fs/proc/base.c
---- linux-4.9.135/fs/proc/base.c       2018-10-20 10:39:18.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/fs/proc/base.c     2018-10-20 05:55:43.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/fs/proc/base.c linux-4.9/fs/proc/base.c
+--- linux-4.9/fs/proc/base.c   2021-02-24 15:47:32.324010153 +0100
++++ linux-4.9/fs/proc/base.c   2021-02-24 15:47:45.081075908 +0100
 @@ -87,6 +87,8 @@
  #include <linux/slab.h>
  #include <linux/flex_array.h>
 @@ -87,6 +87,8 @@
  #include <linux/slab.h>
  #include <linux/flex_array.h>
@@ -5703,7 +5703,7 @@ diff -NurpP --minimal linux-4.9.135/fs/proc/base.c linux-4.9.135-vs2.3.9.8/fs/pr
                /*
                 * /proc/pid/oom_adj is provided for legacy purposes, ask users to use
                 * /proc/pid/oom_score_adj instead.
                /*
                 * /proc/pid/oom_adj is provided for legacy purposes, ask users to use
                 * /proc/pid/oom_score_adj instead.
-@@ -1712,6 +1719,8 @@ struct inode *proc_pid_make_inode(struct
+@@ -1708,6 +1715,8 @@ struct inode *proc_pid_make_inode(struct
                inode->i_gid = cred->egid;
                rcu_read_unlock();
        }
                inode->i_gid = cred->egid;
                rcu_read_unlock();
        }
@@ -5712,7 +5712,7 @@ diff -NurpP --minimal linux-4.9.135/fs/proc/base.c linux-4.9.135-vs2.3.9.8/fs/pr
        security_task_to_inode(task, inode);
  
  out:
        security_task_to_inode(task, inode);
  
  out:
-@@ -1757,6 +1766,8 @@ int pid_getattr(struct vfsmount *mnt, st
+@@ -1753,6 +1762,8 @@ int pid_getattr(struct vfsmount *mnt, st
  
  /* dentry stuff */
  
  
  /* dentry stuff */
  
@@ -5721,7 +5721,7 @@ diff -NurpP --minimal linux-4.9.135/fs/proc/base.c linux-4.9.135-vs2.3.9.8/fs/pr
  /*
   *    Exceptional case: normally we are not allowed to unhash a busy
   * directory. In this case, however, we can do it - no aliasing problems
  /*
   *    Exceptional case: normally we are not allowed to unhash a busy
   * directory. In this case, however, we can do it - no aliasing problems
-@@ -1785,6 +1796,19 @@ int pid_revalidate(struct dentry *dentry
+@@ -1781,6 +1792,19 @@ int pid_revalidate(struct dentry *dentry
        task = get_proc_task(inode);
  
        if (task) {
        task = get_proc_task(inode);
  
        if (task) {
@@ -5741,7 +5741,7 @@ diff -NurpP --minimal linux-4.9.135/fs/proc/base.c linux-4.9.135-vs2.3.9.8/fs/pr
                if ((inode->i_mode == (S_IFDIR|S_IRUGO|S_IXUGO)) ||
                    task_dumpable(task)) {
                        rcu_read_lock();
                if ((inode->i_mode == (S_IFDIR|S_IRUGO|S_IXUGO)) ||
                    task_dumpable(task)) {
                        rcu_read_lock();
-@@ -2449,6 +2473,13 @@ static struct dentry *proc_pident_lookup
+@@ -2445,6 +2469,13 @@ static struct dentry *proc_pident_lookup
        if (!task)
                goto out_no_task;
  
        if (!task)
                goto out_no_task;
  
@@ -5755,7 +5755,7 @@ diff -NurpP --minimal linux-4.9.135/fs/proc/base.c linux-4.9.135-vs2.3.9.8/fs/pr
        /*
         * Yes, it does not scale. And it should not. Don't add
         * new entries into /proc/<tgid>/ without very good reasons.
        /*
         * Yes, it does not scale. And it should not. Don't add
         * new entries into /proc/<tgid>/ without very good reasons.
-@@ -2888,6 +2919,11 @@ static int proc_pid_personality(struct s
+@@ -2884,6 +2915,11 @@ static int proc_pid_personality(struct s
  static const struct file_operations proc_task_operations;
  static const struct inode_operations proc_task_inode_operations;
  
  static const struct file_operations proc_task_operations;
  static const struct inode_operations proc_task_inode_operations;
  
@@ -5767,7 +5767,7 @@ diff -NurpP --minimal linux-4.9.135/fs/proc/base.c linux-4.9.135-vs2.3.9.8/fs/pr
  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),
  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),
-@@ -2952,6 +2988,8 @@ static const struct pid_entry tgid_base_
+@@ -2948,6 +2984,8 @@ static const struct pid_entry tgid_base_
  #ifdef CONFIG_CGROUPS
        ONE("cgroup",  S_IRUGO, proc_cgroup_show),
  #endif
  #ifdef CONFIG_CGROUPS
        ONE("cgroup",  S_IRUGO, proc_cgroup_show),
  #endif
@@ -5776,7 +5776,7 @@ diff -NurpP --minimal linux-4.9.135/fs/proc/base.c linux-4.9.135-vs2.3.9.8/fs/pr
        ONE("oom_score",  S_IRUGO, proc_oom_score),
        REG("oom_adj",    S_IRUGO|S_IWUSR, proc_oom_adj_operations),
        REG("oom_score_adj", S_IRUGO|S_IWUSR, proc_oom_score_adj_operations),
        ONE("oom_score",  S_IRUGO, proc_oom_score),
        REG("oom_adj",    S_IRUGO|S_IWUSR, proc_oom_adj_operations),
        REG("oom_score_adj", S_IRUGO|S_IWUSR, proc_oom_score_adj_operations),
-@@ -3167,7 +3205,7 @@ retry:
+@@ -3163,7 +3201,7 @@ retry:
        iter.task = NULL;
        pid = find_ge_pid(iter.tgid, ns);
        if (pid) {
        iter.task = NULL;
        pid = find_ge_pid(iter.tgid, ns);
        if (pid) {
@@ -5785,7 +5785,7 @@ diff -NurpP --minimal linux-4.9.135/fs/proc/base.c linux-4.9.135-vs2.3.9.8/fs/pr
                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
                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
-@@ -3227,8 +3265,10 @@ int proc_pid_readdir(struct file *file,
+@@ -3223,8 +3261,10 @@ int proc_pid_readdir(struct file *file,
                if (!has_pid_permissions(ns, iter.task, 2))
                        continue;
  
                if (!has_pid_permissions(ns, iter.task, 2))
                        continue;
  
@@ -5797,7 +5797,7 @@ diff -NurpP --minimal linux-4.9.135/fs/proc/base.c linux-4.9.135-vs2.3.9.8/fs/pr
                if (!proc_fill_cache(file, ctx, name, len,
                                     proc_pid_instantiate, iter.task, NULL)) {
                        put_task_struct(iter.task);
                if (!proc_fill_cache(file, ctx, name, len,
                                     proc_pid_instantiate, iter.task, NULL)) {
                        put_task_struct(iter.task);
-@@ -3365,6 +3405,7 @@ static const struct pid_entry tid_base_s
+@@ -3361,6 +3401,7 @@ static const struct pid_entry tid_base_s
        REG("projid_map", S_IRUGO|S_IWUSR, proc_projid_map_operations),
        REG("setgroups",  S_IRUGO|S_IWUSR, proc_setgroups_operations),
  #endif
        REG("projid_map", S_IRUGO|S_IWUSR, proc_projid_map_operations),
        REG("setgroups",  S_IRUGO|S_IWUSR, proc_setgroups_operations),
  #endif
@@ -5805,7 +5805,7 @@ diff -NurpP --minimal linux-4.9.135/fs/proc/base.c linux-4.9.135-vs2.3.9.8/fs/pr
  };
  
  static int proc_tid_base_readdir(struct file *file, struct dir_context *ctx)
  };
  
  static int proc_tid_base_readdir(struct file *file, struct dir_context *ctx)
-@@ -3431,6 +3472,8 @@ static struct dentry *proc_task_lookup(s
+@@ -3427,6 +3468,8 @@ static struct dentry *proc_task_lookup(s
        tid = name_to_int(&dentry->d_name);
        if (tid == ~0U)
                goto out;
        tid = name_to_int(&dentry->d_name);
        if (tid == ~0U)
                goto out;
@@ -5814,9 +5814,9 @@ diff -NurpP --minimal linux-4.9.135/fs/proc/base.c linux-4.9.135-vs2.3.9.8/fs/pr
  
        ns = dentry->d_sb->s_fs_info;
        rcu_read_lock();
  
        ns = dentry->d_sb->s_fs_info;
        rcu_read_lock();
-diff -NurpP --minimal linux-4.9.135/fs/proc/generic.c linux-4.9.135-vs2.3.9.8/fs/proc/generic.c
---- linux-4.9.135/fs/proc/generic.c    2018-10-20 10:39:18.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/fs/proc/generic.c  2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/fs/proc/generic.c linux-4.9/fs/proc/generic.c
+--- linux-4.9/fs/proc/generic.c        2021-02-24 15:47:32.324010153 +0100
++++ linux-4.9/fs/proc/generic.c        2021-02-24 15:47:45.081075908 +0100
 @@ -22,6 +22,7 @@
  #include <linux/bitops.h>
  #include <linux/spinlock.h>
 @@ -22,6 +22,7 @@
  #include <linux/bitops.h>
  #include <linux/spinlock.h>
@@ -5891,9 +5891,9 @@ diff -NurpP --minimal linux-4.9.135/fs/proc/generic.c linux-4.9.135-vs2.3.9.8/fs
                } else {
                        kfree(ent);
                        ent = NULL;
                } else {
                        kfree(ent);
                        ent = NULL;
-diff -NurpP --minimal linux-4.9.135/fs/proc/inode.c linux-4.9.135-vs2.3.9.8/fs/proc/inode.c
---- linux-4.9.135/fs/proc/inode.c      2018-10-20 10:39:18.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/fs/proc/inode.c    2018-10-20 05:55:43.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/fs/proc/inode.c linux-4.9/fs/proc/inode.c
+--- linux-4.9/fs/proc/inode.c  2021-02-24 15:47:32.324010153 +0100
++++ linux-4.9/fs/proc/inode.c  2021-02-24 15:47:45.081075908 +0100
 @@ -433,6 +433,8 @@ struct inode *proc_get_inode(struct supe
                        inode->i_uid = de->uid;
                        inode->i_gid = de->gid;
 @@ -433,6 +433,8 @@ struct inode *proc_get_inode(struct supe
                        inode->i_uid = de->uid;
                        inode->i_gid = de->gid;
@@ -5903,9 +5903,9 @@ diff -NurpP --minimal linux-4.9.135/fs/proc/inode.c linux-4.9.135-vs2.3.9.8/fs/p
                if (de->size)
                        inode->i_size = de->size;
                if (de->nlink)
                if (de->size)
                        inode->i_size = de->size;
                if (de->nlink)
-diff -NurpP --minimal linux-4.9.135/fs/proc/internal.h linux-4.9.135-vs2.3.9.8/fs/proc/internal.h
---- linux-4.9.135/fs/proc/internal.h   2018-10-20 10:39:18.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/fs/proc/internal.h 2018-10-20 05:55:43.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/fs/proc/internal.h linux-4.9/fs/proc/internal.h
+--- linux-4.9/fs/proc/internal.h       2021-02-24 15:47:32.324010153 +0100
++++ linux-4.9/fs/proc/internal.h       2021-02-24 15:47:45.084409345 +0100
 @@ -14,6 +14,7 @@
  #include <linux/spinlock.h>
  #include <linux/atomic.h>
 @@ -14,6 +14,7 @@
  #include <linux/spinlock.h>
  #include <linux/atomic.h>
@@ -5972,9 +5972,9 @@ diff -NurpP --minimal linux-4.9.135/fs/proc/internal.h linux-4.9.135-vs2.3.9.8/f
  
  /*
   * base.c
  
  /*
   * base.c
-diff -NurpP --minimal linux-4.9.135/fs/proc/loadavg.c linux-4.9.135-vs2.3.9.8/fs/proc/loadavg.c
---- linux-4.9.135/fs/proc/loadavg.c    2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/fs/proc/loadavg.c  2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/fs/proc/loadavg.c linux-4.9/fs/proc/loadavg.c
+--- linux-4.9/fs/proc/loadavg.c        2016-12-11 20:17:54.000000000 +0100
++++ linux-4.9/fs/proc/loadavg.c        2021-02-24 15:47:45.084409345 +0100
 @@ -12,15 +12,27 @@
  
  static int loadavg_proc_show(struct seq_file *m, void *v)
 @@ -12,15 +12,27 @@
  
  static int loadavg_proc_show(struct seq_file *m, void *v)
@@ -6004,9 +6004,9 @@ diff -NurpP --minimal linux-4.9.135/fs/proc/loadavg.c linux-4.9.135-vs2.3.9.8/fs
                task_active_pid_ns(current)->last_pid);
        return 0;
  }
                task_active_pid_ns(current)->last_pid);
        return 0;
  }
-diff -NurpP --minimal linux-4.9.135/fs/proc/meminfo.c linux-4.9.135-vs2.3.9.8/fs/proc/meminfo.c
---- linux-4.9.135/fs/proc/meminfo.c    2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/fs/proc/meminfo.c  2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/fs/proc/meminfo.c linux-4.9/fs/proc/meminfo.c
+--- linux-4.9/fs/proc/meminfo.c        2016-12-11 20:17:54.000000000 +0100
++++ linux-4.9/fs/proc/meminfo.c        2021-02-24 15:47:45.084409345 +0100
 @@ -55,7 +55,8 @@ static int meminfo_proc_show(struct seq_
        si_swapinfo(&i);
        committed = percpu_counter_read_positive(&vm_committed_as);
 @@ -55,7 +55,8 @@ static int meminfo_proc_show(struct seq_
        si_swapinfo(&i);
        committed = percpu_counter_read_positive(&vm_committed_as);
@@ -6017,9 +6017,9 @@ diff -NurpP --minimal linux-4.9.135/fs/proc/meminfo.c linux-4.9.135-vs2.3.9.8/fs
                        total_swapcache_pages() - i.bufferram;
        if (cached < 0)
                cached = 0;
                        total_swapcache_pages() - i.bufferram;
        if (cached < 0)
                cached = 0;
-diff -NurpP --minimal linux-4.9.135/fs/proc/root.c linux-4.9.135-vs2.3.9.8/fs/proc/root.c
---- linux-4.9.135/fs/proc/root.c       2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/fs/proc/root.c     2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/fs/proc/root.c linux-4.9/fs/proc/root.c
+--- linux-4.9/fs/proc/root.c   2016-12-11 20:17:54.000000000 +0100
++++ linux-4.9/fs/proc/root.c   2021-02-24 15:47:45.084409345 +0100
 @@ -20,9 +20,14 @@
  #include <linux/mount.h>
  #include <linux/pid_namespace.h>
 @@ -20,9 +20,14 @@
  #include <linux/mount.h>
  #include <linux/pid_namespace.h>
@@ -6051,9 +6051,9 @@ diff -NurpP --minimal linux-4.9.135/fs/proc/root.c linux-4.9.135-vs2.3.9.8/fs/pr
        .subdir         = RB_ROOT,
        .name           = "/proc",
  };
        .subdir         = RB_ROOT,
        .name           = "/proc",
  };
-diff -NurpP --minimal linux-4.9.135/fs/proc/self.c linux-4.9.135-vs2.3.9.8/fs/proc/self.c
---- linux-4.9.135/fs/proc/self.c       2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/fs/proc/self.c     2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/fs/proc/self.c linux-4.9/fs/proc/self.c
+--- linux-4.9/fs/proc/self.c   2021-02-24 15:47:32.324010153 +0100
++++ linux-4.9/fs/proc/self.c   2021-02-24 15:47:45.084409345 +0100
 @@ -1,6 +1,7 @@
  #include <linux/sched.h>
  #include <linux/slab.h>
 @@ -1,6 +1,7 @@
  #include <linux/sched.h>
  #include <linux/slab.h>
@@ -6062,18 +6062,18 @@ diff -NurpP --minimal linux-4.9.135/fs/proc/self.c linux-4.9.135-vs2.3.9.8/fs/pr
  #include "internal.h"
  
  /*
  #include "internal.h"
  
  /*
-@@ -54,6 +55,8 @@ int proc_setup_self(struct super_block *
+@@ -61,6 +62,8 @@ int proc_setup_self(struct super_block *
        self = d_alloc_name(s->s_root, "self");
        if (self) {
        self = d_alloc_name(s->s_root, "self");
        if (self) {
-               struct inode *inode = new_inode_pseudo(s);
+               struct inode *inode = new_inode(s);
 +
 +              // self->vx_flags = IATTR_PROC_SYMLINK;
                if (inode) {
                        inode->i_ino = self_inum;
                        inode->i_mtime = inode->i_atime = inode->i_ctime = current_time(inode);
 +
 +              // self->vx_flags = IATTR_PROC_SYMLINK;
                if (inode) {
                        inode->i_ino = self_inum;
                        inode->i_mtime = inode->i_atime = inode->i_ctime = current_time(inode);
-diff -NurpP --minimal linux-4.9.135/fs/proc/stat.c linux-4.9.135-vs2.3.9.8/fs/proc/stat.c
---- linux-4.9.135/fs/proc/stat.c       2018-10-20 10:39:18.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/fs/proc/stat.c     2018-10-20 11:46:17.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/fs/proc/stat.c linux-4.9/fs/proc/stat.c
+--- linux-4.9/fs/proc/stat.c   2021-02-24 15:47:32.324010153 +0100
++++ linux-4.9/fs/proc/stat.c   2021-02-24 15:47:45.084409345 +0100
 @@ -9,8 +9,10 @@
  #include <linux/slab.h>
  #include <linux/time.h>
 @@ -9,8 +9,10 @@
  #include <linux/slab.h>
  #include <linux/time.h>
@@ -6085,7 +6085,7 @@ diff -NurpP --minimal linux-4.9.135/fs/proc/stat.c linux-4.9.135-vs2.3.9.8/fs/pr
  
  #ifndef arch_irq_stat_cpu
  #define arch_irq_stat_cpu(cpu) 0
  
  #ifndef arch_irq_stat_cpu
  #define arch_irq_stat_cpu(cpu) 0
-@@ -86,13 +88,24 @@ static int show_stat(struct seq_file *p,
+@@ -86,13 +88,21 @@ static int show_stat(struct seq_file *p,
        u64 sum_softirq = 0;
        unsigned int per_softirq_sums[NR_SOFTIRQS] = {0};
        struct timespec64 boottime;
        u64 sum_softirq = 0;
        unsigned int per_softirq_sums[NR_SOFTIRQS] = {0};
        struct timespec64 boottime;
@@ -6097,9 +6097,6 @@ diff -NurpP --minimal linux-4.9.135/fs/proc/stat.c linux-4.9.135-vs2.3.9.8/fs/pr
        guest = guest_nice = 0;
        getboottime64(&boottime);
  
        guest = guest_nice = 0;
        getboottime64(&boottime);
  
-+      if (vx_flags(VXF_VIRT_UPTIME, 0))
-+              vx_vsi_boottime64(&boottime);
-+
 +      if (virt_cpu)
 +              cpuset_cpus_allowed(current, cpus_allowed);
 +
 +      if (virt_cpu)
 +              cpuset_cpus_allowed(current, cpus_allowed);
 +
@@ -6110,7 +6107,7 @@ diff -NurpP --minimal linux-4.9.135/fs/proc/stat.c linux-4.9.135-vs2.3.9.8/fs/pr
                user += kcpustat_cpu(i).cpustat[CPUTIME_USER];
                nice += kcpustat_cpu(i).cpustat[CPUTIME_NICE];
                system += kcpustat_cpu(i).cpustat[CPUTIME_SYSTEM];
                user += kcpustat_cpu(i).cpustat[CPUTIME_USER];
                nice += kcpustat_cpu(i).cpustat[CPUTIME_NICE];
                system += kcpustat_cpu(i).cpustat[CPUTIME_SYSTEM];
-@@ -128,6 +141,9 @@ static int show_stat(struct seq_file *p,
+@@ -128,6 +138,9 @@ static int show_stat(struct seq_file *p,
        seq_putc(p, '\n');
  
        for_each_online_cpu(i) {
        seq_putc(p, '\n');
  
        for_each_online_cpu(i) {
@@ -6120,9 +6117,9 @@ diff -NurpP --minimal linux-4.9.135/fs/proc/stat.c linux-4.9.135-vs2.3.9.8/fs/pr
                /* Copy values here to work around gcc-2.95.3, gcc-2.96 */
                user = kcpustat_cpu(i).cpustat[CPUTIME_USER];
                nice = kcpustat_cpu(i).cpustat[CPUTIME_NICE];
                /* Copy values here to work around gcc-2.95.3, gcc-2.96 */
                user = kcpustat_cpu(i).cpustat[CPUTIME_USER];
                nice = kcpustat_cpu(i).cpustat[CPUTIME_NICE];
-diff -NurpP --minimal linux-4.9.135/fs/proc/uptime.c linux-4.9.135-vs2.3.9.8/fs/proc/uptime.c
---- linux-4.9.135/fs/proc/uptime.c     2018-10-20 10:39:18.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/fs/proc/uptime.c   2018-10-20 11:47:26.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/fs/proc/uptime.c linux-4.9/fs/proc/uptime.c
+--- linux-4.9/fs/proc/uptime.c 2021-02-24 15:47:32.327343590 +0100
++++ linux-4.9/fs/proc/uptime.c 2021-02-24 15:47:45.084409345 +0100
 @@ -5,6 +5,7 @@
  #include <linux/seq_file.h>
  #include <linux/time.h>
 @@ -5,6 +5,7 @@
  #include <linux/seq_file.h>
  #include <linux/time.h>
@@ -6131,20 +6128,17 @@ diff -NurpP --minimal linux-4.9.135/fs/proc/uptime.c linux-4.9.135-vs2.3.9.8/fs/
  
  static int uptime_proc_show(struct seq_file *m, void *v)
  {
  
  static int uptime_proc_show(struct seq_file *m, void *v)
  {
-@@ -21,6 +22,10 @@ static int uptime_proc_show(struct seq_f
+@@ -21,6 +22,7 @@ static int uptime_proc_show(struct seq_f
        get_monotonic_boottime(&uptime);
        idle.tv_sec = div_u64_rem(nsec, NSEC_PER_SEC, &rem);
        idle.tv_nsec = rem;
        get_monotonic_boottime(&uptime);
        idle.tv_sec = div_u64_rem(nsec, NSEC_PER_SEC, &rem);
        idle.tv_nsec = rem;
-+
-+      if (vx_flags(VXF_VIRT_UPTIME, 0))
-+              vx_vsi_uptime(&uptime, &idle);
 +
        seq_printf(m, "%lu.%02lu %lu.%02lu\n",
                        (unsigned long) uptime.tv_sec,
                        (uptime.tv_nsec / (NSEC_PER_SEC / 100)),
 +
        seq_printf(m, "%lu.%02lu %lu.%02lu\n",
                        (unsigned long) uptime.tv_sec,
                        (uptime.tv_nsec / (NSEC_PER_SEC / 100)),
-diff -NurpP --minimal linux-4.9.135/fs/proc_namespace.c linux-4.9.135-vs2.3.9.8/fs/proc_namespace.c
---- linux-4.9.135/fs/proc_namespace.c  2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/fs/proc_namespace.c        2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/fs/proc_namespace.c linux-4.9/fs/proc_namespace.c
+--- linux-4.9/fs/proc_namespace.c      2016-12-11 20:17:54.000000000 +0100
++++ linux-4.9/fs/proc_namespace.c      2021-02-24 15:47:45.084409345 +0100
 @@ -46,6 +46,8 @@ static int show_sb_opts(struct seq_file
                { MS_DIRSYNC, ",dirsync" },
                { MS_MANDLOCK, ",mand" },
 @@ -46,6 +46,8 @@ static int show_sb_opts(struct seq_file
                { MS_DIRSYNC, ",dirsync" },
                { MS_MANDLOCK, ",mand" },
@@ -6258,10 +6252,10 @@ diff -NurpP --minimal linux-4.9.135/fs/proc_namespace.c linux-4.9.135-vs2.3.9.8/
        /* file system type */
        seq_puts(m, "with fstype ");
        show_type(m, sb);
        /* file system type */
        seq_puts(m, "with fstype ");
        show_type(m, sb);
-diff -NurpP --minimal linux-4.9.135/fs/quota/dquot.c linux-4.9.135-vs2.3.9.8/fs/quota/dquot.c
---- linux-4.9.135/fs/quota/dquot.c     2018-10-20 10:39:18.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/fs/quota/dquot.c   2018-10-20 04:58:14.000000000 +0000
-@@ -1658,6 +1658,9 @@ int __dquot_alloc_space(struct inode *in
+diff -urNp -x '*.orig' linux-4.9/fs/quota/dquot.c linux-4.9/fs/quota/dquot.c
+--- linux-4.9/fs/quota/dquot.c 2021-02-24 15:47:32.327343590 +0100
++++ linux-4.9/fs/quota/dquot.c 2021-02-24 15:47:45.084409345 +0100
+@@ -1659,6 +1659,9 @@ int __dquot_alloc_space(struct inode *in
        int reserve = flags & DQUOT_SPACE_RESERVE;
        struct dquot **dquots;
  
        int reserve = flags & DQUOT_SPACE_RESERVE;
        struct dquot **dquots;
  
@@ -6271,7 +6265,7 @@ diff -NurpP --minimal linux-4.9.135/fs/quota/dquot.c linux-4.9.135-vs2.3.9.8/fs/
        if (!dquot_active(inode)) {
                inode_incr_space(inode, number, reserve);
                goto out;
        if (!dquot_active(inode)) {
                inode_incr_space(inode, number, reserve);
                goto out;
-@@ -1710,6 +1713,9 @@ int dquot_alloc_inode(struct inode *inod
+@@ -1711,6 +1714,9 @@ int dquot_alloc_inode(struct inode *inod
        struct dquot_warn warn[MAXQUOTAS];
        struct dquot * const *dquots;
  
        struct dquot_warn warn[MAXQUOTAS];
        struct dquot * const *dquots;
  
@@ -6281,7 +6275,7 @@ diff -NurpP --minimal linux-4.9.135/fs/quota/dquot.c linux-4.9.135-vs2.3.9.8/fs/
        if (!dquot_active(inode))
                return 0;
        for (cnt = 0; cnt < MAXQUOTAS; cnt++)
        if (!dquot_active(inode))
                return 0;
        for (cnt = 0; cnt < MAXQUOTAS; cnt++)
-@@ -1812,6 +1818,8 @@ void __dquot_free_space(struct inode *in
+@@ -1813,6 +1819,8 @@ void __dquot_free_space(struct inode *in
        struct dquot **dquots;
        int reserve = flags & DQUOT_SPACE_RESERVE, index;
  
        struct dquot **dquots;
        int reserve = flags & DQUOT_SPACE_RESERVE, index;
  
@@ -6290,7 +6284,7 @@ diff -NurpP --minimal linux-4.9.135/fs/quota/dquot.c linux-4.9.135-vs2.3.9.8/fs/
        if (!dquot_active(inode)) {
                inode_decr_space(inode, number, reserve);
                return;
        if (!dquot_active(inode)) {
                inode_decr_space(inode, number, reserve);
                return;
-@@ -1856,6 +1864,8 @@ void dquot_free_inode(struct inode *inod
+@@ -1857,6 +1865,8 @@ void dquot_free_inode(struct inode *inod
        struct dquot * const *dquots;
        int index;
  
        struct dquot * const *dquots;
        int index;
  
@@ -6299,9 +6293,9 @@ diff -NurpP --minimal linux-4.9.135/fs/quota/dquot.c linux-4.9.135-vs2.3.9.8/fs/
        if (!dquot_active(inode))
                return;
  
        if (!dquot_active(inode))
                return;
  
-diff -NurpP --minimal linux-4.9.135/fs/quota/quota.c linux-4.9.135-vs2.3.9.8/fs/quota/quota.c
---- linux-4.9.135/fs/quota/quota.c     2018-10-20 10:39:18.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/fs/quota/quota.c   2018-10-20 05:55:43.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/fs/quota/quota.c linux-4.9/fs/quota/quota.c
+--- linux-4.9/fs/quota/quota.c 2021-02-24 15:47:32.327343590 +0100
++++ linux-4.9/fs/quota/quota.c 2021-02-24 15:47:45.084409345 +0100
 @@ -8,6 +8,7 @@
  #include <linux/fs.h>
  #include <linux/namei.h>
 @@ -8,6 +8,7 @@
  #include <linux/fs.h>
  #include <linux/namei.h>
@@ -6389,9 +6383,9 @@ diff -NurpP --minimal linux-4.9.135/fs/quota/quota.c linux-4.9.135-vs2.3.9.8/fs/
        if (quotactl_cmd_write(cmd))
                sb = get_super_thawed(bdev);
        else
        if (quotactl_cmd_write(cmd))
                sb = get_super_thawed(bdev);
        else
-diff -NurpP --minimal linux-4.9.135/fs/stat.c linux-4.9.135-vs2.3.9.8/fs/stat.c
---- linux-4.9.135/fs/stat.c    2018-10-20 10:39:18.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/fs/stat.c  2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/fs/stat.c linux-4.9/fs/stat.c
+--- linux-4.9/fs/stat.c        2021-02-24 15:47:32.334010466 +0100
++++ linux-4.9/fs/stat.c        2021-02-24 15:47:45.084409345 +0100
 @@ -26,6 +26,7 @@ void generic_fillattr(struct inode *inod
        stat->nlink = inode->i_nlink;
        stat->uid = inode->i_uid;
 @@ -26,6 +26,7 @@ void generic_fillattr(struct inode *inod
        stat->nlink = inode->i_nlink;
        stat->uid = inode->i_uid;
@@ -6400,9 +6394,9 @@ diff -NurpP --minimal linux-4.9.135/fs/stat.c linux-4.9.135-vs2.3.9.8/fs/stat.c
        stat->rdev = inode->i_rdev;
        stat->size = i_size_read(inode);
        stat->atime = inode->i_atime;
        stat->rdev = inode->i_rdev;
        stat->size = i_size_read(inode);
        stat->atime = inode->i_atime;
-diff -NurpP --minimal linux-4.9.135/fs/statfs.c linux-4.9.135-vs2.3.9.8/fs/statfs.c
---- linux-4.9.135/fs/statfs.c  2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/fs/statfs.c        2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/fs/statfs.c linux-4.9/fs/statfs.c
+--- linux-4.9/fs/statfs.c      2016-12-11 20:17:54.000000000 +0100
++++ linux-4.9/fs/statfs.c      2021-02-24 15:47:45.084409345 +0100
 @@ -7,6 +7,8 @@
  #include <linux/statfs.h>
  #include <linux/security.h>
 @@ -7,6 +7,8 @@
  #include <linux/statfs.h>
  #include <linux/security.h>
@@ -6421,9 +6415,9 @@ diff -NurpP --minimal linux-4.9.135/fs/statfs.c linux-4.9.135-vs2.3.9.8/fs/statf
        return retval;
  }
  
        return retval;
  }
  
-diff -NurpP --minimal linux-4.9.135/fs/super.c linux-4.9.135-vs2.3.9.8/fs/super.c
---- linux-4.9.135/fs/super.c   2018-10-20 10:39:18.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/fs/super.c 2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/fs/super.c linux-4.9/fs/super.c
+--- linux-4.9/fs/super.c       2021-02-24 15:47:32.334010466 +0100
++++ linux-4.9/fs/super.c       2021-02-24 15:47:45.084409345 +0100
 @@ -34,6 +34,8 @@
  #include <linux/fsnotify.h>
  #include <linux/lockdep.h>
 @@ -34,6 +34,8 @@
  #include <linux/fsnotify.h>
  #include <linux/lockdep.h>
@@ -6433,7 +6427,26 @@ diff -NurpP --minimal linux-4.9.135/fs/super.c linux-4.9.135-vs2.3.9.8/fs/super.
  #include "internal.h"
  
  
  #include "internal.h"
  
  
-@@ -985,7 +987,8 @@ struct dentry *mount_ns(struct file_syst
+@@ -482,7 +484,7 @@ struct super_block *sget_userns(struct f
+       if (!(flags & (MS_KERNMOUNT|MS_SUBMOUNT)) &&
+           !(type->fs_flags & FS_USERNS_MOUNT) &&
+-          !capable(CAP_SYS_ADMIN))
++          !vx_capable(CAP_SYS_ADMIN, VXC_SECURE_MOUNT))
+               return ERR_PTR(-EPERM);
+ retry:
+       spin_lock(&sb_lock);
+@@ -563,7 +565,8 @@ struct super_block *sget(struct file_sys
+               user_ns = &init_user_ns;
+       /* Ensure the requestor has permissions over the target filesystem */
+-      if (!(flags & (MS_KERNMOUNT|MS_SUBMOUNT)) && !ns_capable(user_ns, CAP_SYS_ADMIN))
++      if (!(flags & (MS_KERNMOUNT|MS_SUBMOUNT)) &&
++          !vx_ns_capable(user_ns, CAP_SYS_ADMIN, VXC_SECURE_MOUNT))
+               return ERR_PTR(-EPERM);
+       return sget_userns(type, test, set, flags, user_ns, data);
+@@ -995,7 +998,8 @@ struct dentry *mount_ns(struct file_syst
        /* Don't allow mounting unless the caller has CAP_SYS_ADMIN
         * over the namespace.
         */
        /* Don't allow mounting unless the caller has CAP_SYS_ADMIN
         * over the namespace.
         */
@@ -6443,8 +6456,8 @@ diff -NurpP --minimal linux-4.9.135/fs/super.c linux-4.9.135-vs2.3.9.8/fs/super.
                return ERR_PTR(-EPERM);
  
        sb = sget_userns(fs_type, ns_test_super, ns_set_super, flags,
                return ERR_PTR(-EPERM);
  
        sb = sget_userns(fs_type, ns_test_super, ns_set_super, flags,
-@@ -1195,6 +1198,13 @@ mount_fs(struct file_system_type *type,
-       WARN_ON(!sb->s_bdi);
+@@ -1213,6 +1217,13 @@ mount_fs(struct file_system_type *type,
+       smp_wmb();
        sb->s_flags |= MS_BORN;
  
 +      error = -EPERM;
        sb->s_flags |= MS_BORN;
  
 +      error = -EPERM;
@@ -6457,9 +6470,9 @@ diff -NurpP --minimal linux-4.9.135/fs/super.c linux-4.9.135-vs2.3.9.8/fs/super.
        error = security_sb_kern_mount(sb, flags, secdata);
        if (error)
                goto out_sb;
        error = security_sb_kern_mount(sb, flags, secdata);
        if (error)
                goto out_sb;
-diff -NurpP --minimal linux-4.9.135/fs/utimes.c linux-4.9.135-vs2.3.9.8/fs/utimes.c
---- linux-4.9.135/fs/utimes.c  2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/fs/utimes.c        2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/fs/utimes.c linux-4.9/fs/utimes.c
+--- linux-4.9/fs/utimes.c      2016-12-11 20:17:54.000000000 +0100
++++ linux-4.9/fs/utimes.c      2021-02-24 15:47:45.084409345 +0100
 @@ -8,6 +8,8 @@
  #include <linux/stat.h>
  #include <linux/utime.h>
 @@ -8,6 +8,8 @@
  #include <linux/stat.h>
  #include <linux/utime.h>
@@ -6490,9 +6503,9 @@ diff -NurpP --minimal linux-4.9.135/fs/utimes.c linux-4.9.135-vs2.3.9.8/fs/utime
        if (times && times[0].tv_nsec == UTIME_NOW &&
                     times[1].tv_nsec == UTIME_NOW)
                times = NULL;
        if (times && times[0].tv_nsec == UTIME_NOW &&
                     times[1].tv_nsec == UTIME_NOW)
                times = NULL;
-diff -NurpP --minimal linux-4.9.135/fs/xattr.c linux-4.9.135-vs2.3.9.8/fs/xattr.c
---- linux-4.9.135/fs/xattr.c   2018-10-20 10:39:18.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/fs/xattr.c 2018-10-20 05:55:43.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/fs/xattr.c linux-4.9/fs/xattr.c
+--- linux-4.9/fs/xattr.c       2021-02-24 15:47:32.340677341 +0100
++++ linux-4.9/fs/xattr.c       2021-02-24 15:47:45.084409345 +0100
 @@ -21,6 +21,7 @@
  #include <linux/audit.h>
  #include <linux/vmalloc.h>
 @@ -21,6 +21,7 @@
  #include <linux/audit.h>
  #include <linux/vmalloc.h>
@@ -6510,9 +6523,9 @@ diff -NurpP --minimal linux-4.9.135/fs/xattr.c linux-4.9.135-vs2.3.9.8/fs/xattr.
                        return (mask & MAY_WRITE) ? -EPERM : -ENODATA;
                return 0;
        }
                        return (mask & MAY_WRITE) ? -EPERM : -ENODATA;
                return 0;
        }
-diff -NurpP --minimal linux-4.9.135/include/linux/capability.h linux-4.9.135-vs2.3.9.8/include/linux/capability.h
---- linux-4.9.135/include/linux/capability.h   2018-10-20 10:39:19.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/linux/capability.h 2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/linux/capability.h linux-4.9/include/linux/capability.h
+--- linux-4.9/include/linux/capability.h       2021-02-24 15:47:32.377345154 +0100
++++ linux-4.9/include/linux/capability.h       2021-02-24 15:47:45.084409345 +0100
 @@ -78,7 +78,8 @@ extern const kernel_cap_t __cap_init_eff
  #else /* HAND-CODED capability initializers */
  
 @@ -78,7 +78,8 @@ extern const kernel_cap_t __cap_init_eff
  #else /* HAND-CODED capability initializers */
  
@@ -6523,10 +6536,10 @@ diff -NurpP --minimal linux-4.9.135/include/linux/capability.h linux-4.9.135-vs2
  
  # define CAP_EMPTY_SET    ((kernel_cap_t){{ 0, 0 }})
  # define CAP_FULL_SET     ((kernel_cap_t){{ ~0, CAP_LAST_U32_VALID_MASK }})
  
  # define CAP_EMPTY_SET    ((kernel_cap_t){{ 0, 0 }})
  # define CAP_FULL_SET     ((kernel_cap_t){{ ~0, CAP_LAST_U32_VALID_MASK }})
-diff -NurpP --minimal linux-4.9.135/include/linux/cred.h linux-4.9.135-vs2.3.9.8/include/linux/cred.h
---- linux-4.9.135/include/linux/cred.h 2018-10-20 10:39:19.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/linux/cred.h       2018-10-20 04:58:14.000000000 +0000
-@@ -152,6 +152,7 @@ extern void exit_creds(struct task_struc
+diff -urNp -x '*.orig' linux-4.9/include/linux/cred.h linux-4.9/include/linux/cred.h
+--- linux-4.9/include/linux/cred.h     2021-02-24 15:47:32.380678592 +0100
++++ linux-4.9/include/linux/cred.h     2021-02-24 15:47:45.087742783 +0100
+@@ -156,6 +156,7 @@ extern void exit_creds(struct task_struc
  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);
  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);
@@ -6534,7 +6547,7 @@ diff -NurpP --minimal linux-4.9.135/include/linux/cred.h linux-4.9.135-vs2.3.9.8
  extern struct cred *prepare_creds(void);
  extern struct cred *prepare_exec_creds(void);
  extern int commit_creds(struct cred *);
  extern struct cred *prepare_creds(void);
  extern struct cred *prepare_exec_creds(void);
  extern int commit_creds(struct cred *);
-@@ -212,6 +213,31 @@ static inline bool cap_ambient_invariant
+@@ -216,6 +217,31 @@ static inline bool cap_ambient_invariant
                                          cred->cap_inheritable));
  }
  
                                          cred->cap_inheritable));
  }
  
@@ -6566,9 +6579,9 @@ diff -NurpP --minimal linux-4.9.135/include/linux/cred.h linux-4.9.135-vs2.3.9.8
  /**
   * get_new_cred - Get a reference on a new set of credentials
   * @cred: The new credentials to reference
  /**
   * get_new_cred - Get a reference on a new set of credentials
   * @cred: The new credentials to reference
-diff -NurpP --minimal linux-4.9.135/include/linux/dcache.h linux-4.9.135-vs2.3.9.8/include/linux/dcache.h
---- linux-4.9.135/include/linux/dcache.h       2018-10-20 10:39:19.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/linux/dcache.h     2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/linux/dcache.h linux-4.9/include/linux/dcache.h
+--- linux-4.9/include/linux/dcache.h   2021-02-24 15:47:32.380678592 +0100
++++ linux-4.9/include/linux/dcache.h   2021-02-24 15:47:45.087742783 +0100
 @@ -308,8 +308,10 @@ extern char *dentry_path(struct dentry *
   */
  static inline struct dentry *dget_dlock(struct dentry *dentry)
 @@ -308,8 +308,10 @@ extern char *dentry_path(struct dentry *
   */
  static inline struct dentry *dget_dlock(struct dentry *dentry)
@@ -6581,19 +6594,19 @@ diff -NurpP --minimal linux-4.9.135/include/linux/dcache.h linux-4.9.135-vs2.3.9
        return dentry;
  }
  
        return dentry;
  }
  
-diff -NurpP --minimal linux-4.9.135/include/linux/devpts_fs.h linux-4.9.135-vs2.3.9.8/include/linux/devpts_fs.h
---- linux-4.9.135/include/linux/devpts_fs.h    2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/linux/devpts_fs.h  2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/linux/devpts_fs.h linux-4.9/include/linux/devpts_fs.h
+--- linux-4.9/include/linux/devpts_fs.h        2016-12-11 20:17:54.000000000 +0100
++++ linux-4.9/include/linux/devpts_fs.h        2021-02-24 15:47:45.087742783 +0100
 @@ -34,5 +34,4 @@ void devpts_pty_kill(struct dentry *);
  
  #endif
  
 -
  #endif /* _LINUX_DEVPTS_FS_H */
 @@ -34,5 +34,4 @@ void devpts_pty_kill(struct dentry *);
  
  #endif
  
 -
  #endif /* _LINUX_DEVPTS_FS_H */
-diff -NurpP --minimal linux-4.9.135/include/linux/fs.h linux-4.9.135-vs2.3.9.8/include/linux/fs.h
---- linux-4.9.135/include/linux/fs.h   2018-10-20 10:39:19.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/linux/fs.h 2018-10-20 04:58:14.000000000 +0000
-@@ -226,6 +226,7 @@ typedef int (dio_iodone_t)(struct kiocb
+diff -urNp -x '*.orig' linux-4.9/include/linux/fs.h linux-4.9/include/linux/fs.h
+--- linux-4.9/include/linux/fs.h       2021-02-24 15:47:32.384012030 +0100
++++ linux-4.9/include/linux/fs.h       2021-02-24 15:47:45.087742783 +0100
+@@ -231,6 +231,7 @@ typedef int (dio_iodone_t)(struct kiocb
  #define ATTR_OPEN     (1 << 15) /* Truncating from open(O_TRUNC) */
  #define ATTR_TIMES_SET        (1 << 16)
  #define ATTR_TOUCH    (1 << 17)
  #define ATTR_OPEN     (1 << 15) /* Truncating from open(O_TRUNC) */
  #define ATTR_TIMES_SET        (1 << 16)
  #define ATTR_TOUCH    (1 << 17)
@@ -6601,7 +6614,7 @@ diff -NurpP --minimal linux-4.9.135/include/linux/fs.h linux-4.9.135-vs2.3.9.8/i
  
  /*
   * Whiteout is represented by a char device.  The following constants define the
  
  /*
   * Whiteout is represented by a char device.  The following constants define the
-@@ -248,6 +249,7 @@ struct iattr {
+@@ -253,6 +254,7 @@ struct iattr {
        umode_t         ia_mode;
        kuid_t          ia_uid;
        kgid_t          ia_gid;
        umode_t         ia_mode;
        kuid_t          ia_uid;
        kgid_t          ia_gid;
@@ -6609,7 +6622,7 @@ diff -NurpP --minimal linux-4.9.135/include/linux/fs.h linux-4.9.135-vs2.3.9.8/i
        loff_t          ia_size;
        struct timespec ia_atime;
        struct timespec ia_mtime;
        loff_t          ia_size;
        struct timespec ia_atime;
        struct timespec ia_mtime;
-@@ -607,7 +609,9 @@ struct inode {
+@@ -612,7 +614,9 @@ struct inode {
        unsigned short          i_opflags;
        kuid_t                  i_uid;
        kgid_t                  i_gid;
        unsigned short          i_opflags;
        kuid_t                  i_uid;
        kgid_t                  i_gid;
@@ -6620,7 +6633,7 @@ diff -NurpP --minimal linux-4.9.135/include/linux/fs.h linux-4.9.135-vs2.3.9.8/i
  
  #ifdef CONFIG_FS_POSIX_ACL
        struct posix_acl        *i_acl;
  
  #ifdef CONFIG_FS_POSIX_ACL
        struct posix_acl        *i_acl;
-@@ -636,6 +640,7 @@ struct inode {
+@@ -641,6 +645,7 @@ struct inode {
                unsigned int __i_nlink;
        };
        dev_t                   i_rdev;
                unsigned int __i_nlink;
        };
        dev_t                   i_rdev;
@@ -6628,7 +6641,7 @@ diff -NurpP --minimal linux-4.9.135/include/linux/fs.h linux-4.9.135-vs2.3.9.8/i
        loff_t                  i_size;
        struct timespec         i_atime;
        struct timespec         i_mtime;
        loff_t                  i_size;
        struct timespec         i_atime;
        struct timespec         i_mtime;
-@@ -840,14 +845,19 @@ static inline void i_size_write(struct i
+@@ -846,14 +851,19 @@ static inline void i_size_write(struct i
  #endif
  }
  
  #endif
  }
  
@@ -6650,7 +6663,7 @@ diff -NurpP --minimal linux-4.9.135/include/linux/fs.h linux-4.9.135-vs2.3.9.8/i
  }
  
  extern struct block_device *I_BDEV(struct inode *inode);
  }
  
  extern struct block_device *I_BDEV(struct inode *inode);
-@@ -904,6 +914,7 @@ struct file {
+@@ -910,6 +920,7 @@ struct file {
        loff_t                  f_pos;
        struct fown_struct      f_owner;
        const struct cred       *f_cred;
        loff_t                  f_pos;
        struct fown_struct      f_owner;
        const struct cred       *f_cred;
@@ -6658,7 +6671,7 @@ diff -NurpP --minimal linux-4.9.135/include/linux/fs.h linux-4.9.135-vs2.3.9.8/i
        struct file_ra_state    f_ra;
  
        u64                     f_version;
        struct file_ra_state    f_ra;
  
        u64                     f_version;
-@@ -1038,6 +1049,7 @@ struct file_lock {
+@@ -1044,6 +1055,7 @@ struct file_lock {
        struct file *fl_file;
        loff_t fl_start;
        loff_t fl_end;
        struct file *fl_file;
        loff_t fl_start;
        loff_t fl_end;
@@ -6666,7 +6679,7 @@ diff -NurpP --minimal linux-4.9.135/include/linux/fs.h linux-4.9.135-vs2.3.9.8/i
  
        struct fasync_struct *  fl_fasync; /* for lease break notifications */
        /* for lease breaks: */
  
        struct fasync_struct *  fl_fasync; /* for lease break notifications */
        /* for lease breaks: */
-@@ -1471,6 +1483,11 @@ static inline gid_t i_gid_read(const str
+@@ -1477,6 +1489,11 @@ static inline gid_t i_gid_read(const str
        return from_kgid(inode->i_sb->s_user_ns, inode->i_gid);
  }
  
        return from_kgid(inode->i_sb->s_user_ns, inode->i_gid);
  }
  
@@ -6678,7 +6691,7 @@ diff -NurpP --minimal linux-4.9.135/include/linux/fs.h linux-4.9.135-vs2.3.9.8/i
  static inline void i_uid_write(struct inode *inode, uid_t uid)
  {
        inode->i_uid = make_kuid(inode->i_sb->s_user_ns, uid);
  static inline void i_uid_write(struct inode *inode, uid_t uid)
  {
        inode->i_uid = make_kuid(inode->i_sb->s_user_ns, uid);
-@@ -1760,6 +1777,7 @@ struct inode_operations {
+@@ -1766,6 +1783,7 @@ struct inode_operations {
        int (*setattr) (struct dentry *, struct iattr *);
        int (*getattr) (struct vfsmount *mnt, struct dentry *, struct kstat *);
        ssize_t (*listxattr) (struct dentry *, char *, size_t);
        int (*setattr) (struct dentry *, struct iattr *);
        int (*getattr) (struct vfsmount *mnt, struct dentry *, struct kstat *);
        ssize_t (*listxattr) (struct dentry *, char *, size_t);
@@ -6686,7 +6699,7 @@ diff -NurpP --minimal linux-4.9.135/include/linux/fs.h linux-4.9.135-vs2.3.9.8/i
        int (*fiemap)(struct inode *, struct fiemap_extent_info *, u64 start,
                      u64 len);
        int (*update_time)(struct inode *, struct timespec *, int);
        int (*fiemap)(struct inode *, struct fiemap_extent_info *, u64 start,
                      u64 len);
        int (*update_time)(struct inode *, struct timespec *, int);
-@@ -1774,6 +1792,7 @@ ssize_t rw_copy_check_uvector(int type,
+@@ -1780,6 +1798,7 @@ ssize_t rw_copy_check_uvector(int type,
                              unsigned long nr_segs, unsigned long fast_segs,
                              struct iovec *fast_pointer,
                              struct iovec **ret_pointer);
                              unsigned long nr_segs, unsigned long fast_segs,
                              struct iovec *fast_pointer,
                              struct iovec **ret_pointer);
@@ -6694,7 +6707,7 @@ diff -NurpP --minimal linux-4.9.135/include/linux/fs.h linux-4.9.135-vs2.3.9.8/i
  
  extern ssize_t __vfs_read(struct file *, char __user *, size_t, loff_t *);
  extern ssize_t __vfs_write(struct file *, const char __user *, size_t, loff_t *);
  
  extern ssize_t __vfs_read(struct file *, char __user *, size_t, loff_t *);
  extern ssize_t __vfs_write(struct file *, const char __user *, size_t, loff_t *);
-@@ -1845,6 +1864,14 @@ struct super_operations {
+@@ -1851,6 +1870,14 @@ struct super_operations {
  #else
  #define S_DAX         0       /* Make all the DAX code disappear */
  #endif
  #else
  #define S_DAX         0       /* Make all the DAX code disappear */
  #endif
@@ -6709,7 +6722,7 @@ diff -NurpP --minimal linux-4.9.135/include/linux/fs.h linux-4.9.135-vs2.3.9.8/i
  
  /*
   * Note that nosuid etc flags are inode-specific: setting some file-system
  
  /*
   * Note that nosuid etc flags are inode-specific: setting some file-system
-@@ -1869,10 +1896,13 @@ struct super_operations {
+@@ -1875,10 +1902,13 @@ struct super_operations {
  #define IS_MANDLOCK(inode)    __IS_FLG(inode, MS_MANDLOCK)
  #define IS_NOATIME(inode)     __IS_FLG(inode, MS_RDONLY|MS_NOATIME)
  #define IS_I_VERSION(inode)   __IS_FLG(inode, MS_I_VERSION)
  #define IS_MANDLOCK(inode)    __IS_FLG(inode, MS_MANDLOCK)
  #define IS_NOATIME(inode)     __IS_FLG(inode, MS_RDONLY|MS_NOATIME)
  #define IS_I_VERSION(inode)   __IS_FLG(inode, MS_I_VERSION)
@@ -6723,7 +6736,7 @@ diff -NurpP --minimal linux-4.9.135/include/linux/fs.h linux-4.9.135-vs2.3.9.8/i
  #define IS_POSIXACL(inode)    __IS_FLG(inode, MS_POSIXACL)
  
  #define IS_DEADDIR(inode)     ((inode)->i_flags & S_DEAD)
  #define IS_POSIXACL(inode)    __IS_FLG(inode, MS_POSIXACL)
  
  #define IS_DEADDIR(inode)     ((inode)->i_flags & S_DEAD)
-@@ -1892,6 +1922,16 @@ static inline bool HAS_UNMAPPED_ID(struc
+@@ -1898,6 +1928,16 @@ static inline bool HAS_UNMAPPED_ID(struc
        return !uid_valid(inode->i_uid) || !gid_valid(inode->i_gid);
  }
  
        return !uid_valid(inode->i_uid) || !gid_valid(inode->i_gid);
  }
  
@@ -6740,7 +6753,7 @@ diff -NurpP --minimal linux-4.9.135/include/linux/fs.h linux-4.9.135-vs2.3.9.8/i
  /*
   * Inode state bits.  Protected by inode->i_lock
   *
  /*
   * Inode state bits.  Protected by inode->i_lock
   *
-@@ -2157,6 +2197,9 @@ extern struct kobject *fs_kobj;
+@@ -2167,6 +2207,9 @@ extern struct kobject *fs_kobj;
  extern int locks_mandatory_locked(struct file *);
  extern int locks_mandatory_area(struct inode *, struct file *, loff_t, loff_t, unsigned char);
  
  extern int locks_mandatory_locked(struct file *);
  extern int locks_mandatory_area(struct inode *, struct file *, loff_t, loff_t, unsigned char);
  
@@ -6750,7 +6763,7 @@ diff -NurpP --minimal linux-4.9.135/include/linux/fs.h linux-4.9.135-vs2.3.9.8/i
  /*
   * Candidates for mandatory locking have the setgid bit set
   * but no group execute bit -  an otherwise meaningless combination.
  /*
   * Candidates for mandatory locking have the setgid bit set
   * but no group execute bit -  an otherwise meaningless combination.
-@@ -2337,7 +2380,7 @@ struct filename {
+@@ -2347,7 +2390,7 @@ struct filename {
        const char              iname[];
  };
  
        const char              iname[];
  };
  
@@ -6759,7 +6772,7 @@ diff -NurpP --minimal linux-4.9.135/include/linux/fs.h linux-4.9.135-vs2.3.9.8/i
  extern int do_truncate(struct dentry *, loff_t start, unsigned int time_attrs,
                       struct file *filp);
  extern int vfs_fallocate(struct file *file, int mode, loff_t offset,
  extern int do_truncate(struct dentry *, loff_t start, unsigned int time_attrs,
                       struct file *filp);
  extern int vfs_fallocate(struct file *file, int mode, loff_t offset,
-@@ -2967,6 +3010,7 @@ extern int dcache_dir_open(struct inode
+@@ -2978,6 +3021,7 @@ extern int dcache_dir_open(struct inode
  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 *, struct dir_context *);
  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 *, struct dir_context *);
@@ -6767,9 +6780,9 @@ diff -NurpP --minimal linux-4.9.135/include/linux/fs.h linux-4.9.135-vs2.3.9.8/i
  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 *);
  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-4.9.135/include/linux/init_task.h linux-4.9.135-vs2.3.9.8/include/linux/init_task.h
---- linux-4.9.135/include/linux/init_task.h    2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/linux/init_task.h  2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/linux/init_task.h linux-4.9/include/linux/init_task.h
+--- linux-4.9/include/linux/init_task.h        2016-12-11 20:17:54.000000000 +0100
++++ linux-4.9/include/linux/init_task.h        2021-02-24 15:47:45.087742783 +0100
 @@ -271,6 +271,10 @@ extern struct task_group root_task_group
        INIT_VTIME(tsk)                                                 \
        INIT_NUMA_BALANCING(tsk)                                        \
 @@ -271,6 +271,10 @@ extern struct task_group root_task_group
        INIT_VTIME(tsk)                                                 \
        INIT_NUMA_BALANCING(tsk)                                        \
@@ -6781,9 +6794,9 @@ diff -NurpP --minimal linux-4.9.135/include/linux/init_task.h linux-4.9.135-vs2.
  }
  
  
  }
  
  
-diff -NurpP --minimal linux-4.9.135/include/linux/ipc.h linux-4.9.135-vs2.3.9.8/include/linux/ipc.h
---- linux-4.9.135/include/linux/ipc.h  2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/linux/ipc.h        2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/linux/ipc.h linux-4.9/include/linux/ipc.h
+--- linux-4.9/include/linux/ipc.h      2016-12-11 20:17:54.000000000 +0100
++++ linux-4.9/include/linux/ipc.h      2021-02-24 15:47:45.087742783 +0100
 @@ -16,6 +16,7 @@ struct kern_ipc_perm
        key_t           key;
        kuid_t          uid;
 @@ -16,6 +16,7 @@ struct kern_ipc_perm
        key_t           key;
        kuid_t          uid;
@@ -6792,9 +6805,9 @@ diff -NurpP --minimal linux-4.9.135/include/linux/ipc.h linux-4.9.135-vs2.3.9.8/
        kuid_t          cuid;
        kgid_t          cgid;
        umode_t         mode; 
        kuid_t          cuid;
        kgid_t          cgid;
        umode_t         mode; 
-diff -NurpP --minimal linux-4.9.135/include/linux/memcontrol.h linux-4.9.135-vs2.3.9.8/include/linux/memcontrol.h
---- linux-4.9.135/include/linux/memcontrol.h   2018-10-20 10:39:19.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/linux/memcontrol.h 2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/linux/memcontrol.h linux-4.9/include/linux/memcontrol.h
+--- linux-4.9/include/linux/memcontrol.h       2021-02-24 15:47:32.397345780 +0100
++++ linux-4.9/include/linux/memcontrol.h       2021-02-24 15:47:45.087742783 +0100
 @@ -92,6 +92,7 @@ enum mem_cgroup_events_target {
        MEM_CGROUP_NTARGETS,
  };
 @@ -92,6 +92,7 @@ enum mem_cgroup_events_target {
        MEM_CGROUP_NTARGETS,
  };
@@ -6816,9 +6829,9 @@ diff -NurpP --minimal linux-4.9.135/include/linux/memcontrol.h linux-4.9.135-vs2
  static inline bool mm_match_cgroup(struct mm_struct *mm,
                                   struct mem_cgroup *memcg)
  {
  static inline bool mm_match_cgroup(struct mm_struct *mm,
                                   struct mem_cgroup *memcg)
  {
-diff -NurpP --minimal linux-4.9.135/include/linux/mount.h linux-4.9.135-vs2.3.9.8/include/linux/mount.h
---- linux-4.9.135/include/linux/mount.h        2018-10-20 10:39:19.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/linux/mount.h      2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/linux/mount.h linux-4.9/include/linux/mount.h
+--- linux-4.9/include/linux/mount.h    2021-02-24 15:47:32.400679218 +0100
++++ linux-4.9/include/linux/mount.h    2021-02-24 15:47:45.087742783 +0100
 @@ -63,6 +63,9 @@ struct mnt_namespace;
  #define MNT_MARKED            0x4000000
  #define MNT_UMOUNT            0x8000000
 @@ -63,6 +63,9 @@ struct mnt_namespace;
  #define MNT_MARKED            0x4000000
  #define MNT_UMOUNT            0x8000000
@@ -6829,9 +6842,9 @@ diff -NurpP --minimal linux-4.9.135/include/linux/mount.h linux-4.9.135-vs2.3.9.
  struct vfsmount {
        struct dentry *mnt_root;        /* root of the mounted tree */
        struct super_block *mnt_sb;     /* pointer to superblock */
  struct vfsmount {
        struct dentry *mnt_root;        /* root of the mounted tree */
        struct super_block *mnt_sb;     /* pointer to superblock */
-diff -NurpP --minimal linux-4.9.135/include/linux/net.h linux-4.9.135-vs2.3.9.8/include/linux/net.h
---- linux-4.9.135/include/linux/net.h  2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/linux/net.h        2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/linux/net.h linux-4.9/include/linux/net.h
+--- linux-4.9/include/linux/net.h      2021-02-24 15:47:32.400679218 +0100
++++ linux-4.9/include/linux/net.h      2021-02-24 15:47:45.091076220 +0100
 @@ -44,6 +44,7 @@ struct net;
  #define SOCK_NOSPACE          2
  #define SOCK_PASSCRED         3
 @@ -44,6 +44,7 @@ struct net;
  #define SOCK_NOSPACE          2
  #define SOCK_PASSCRED         3
@@ -6840,10 +6853,10 @@ diff -NurpP --minimal linux-4.9.135/include/linux/net.h linux-4.9.135-vs2.3.9.8/
  
  #ifndef ARCH_HAS_SOCKET_TYPES
  /**
  
  #ifndef ARCH_HAS_SOCKET_TYPES
  /**
-diff -NurpP --minimal linux-4.9.135/include/linux/netdevice.h linux-4.9.135-vs2.3.9.8/include/linux/netdevice.h
---- linux-4.9.135/include/linux/netdevice.h    2018-10-20 10:39:19.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/linux/netdevice.h  2018-10-20 05:55:43.000000000 +0000
-@@ -2481,6 +2481,7 @@ static inline int dev_recursion_level(vo
+diff -urNp -x '*.orig' linux-4.9/include/linux/netdevice.h linux-4.9/include/linux/netdevice.h
+--- linux-4.9/include/linux/netdevice.h        2021-02-24 15:47:33.074033615 +0100
++++ linux-4.9/include/linux/netdevice.h        2021-02-24 15:47:45.087742783 +0100
+@@ -2489,6 +2489,7 @@ static inline int dev_recursion_level(vo
  
  struct net_device *dev_get_by_index(struct net *net, int ifindex);
  struct net_device *__dev_get_by_index(struct net *net, int ifindex);
  
  struct net_device *dev_get_by_index(struct net *net, int ifindex);
  struct net_device *__dev_get_by_index(struct net *net, int ifindex);
@@ -6851,9 +6864,9 @@ diff -NurpP --minimal linux-4.9.135/include/linux/netdevice.h linux-4.9.135-vs2.
  struct net_device *dev_get_by_index_rcu(struct net *net, int ifindex);
  int netdev_get_name(struct net *net, char *name, int ifindex);
  int dev_restart(struct net_device *dev);
  struct net_device *dev_get_by_index_rcu(struct net *net, int ifindex);
  int netdev_get_name(struct net *net, char *name, int ifindex);
  int dev_restart(struct net_device *dev);
-diff -NurpP --minimal linux-4.9.135/include/linux/nsproxy.h linux-4.9.135-vs2.3.9.8/include/linux/nsproxy.h
---- linux-4.9.135/include/linux/nsproxy.h      2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/linux/nsproxy.h    2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/linux/nsproxy.h linux-4.9/include/linux/nsproxy.h
+--- linux-4.9/include/linux/nsproxy.h  2016-12-11 20:17:54.000000000 +0100
++++ linux-4.9/include/linux/nsproxy.h  2021-02-24 15:47:45.091076220 +0100
 @@ -3,6 +3,7 @@
  
  #include <linux/spinlock.h>
 @@ -3,6 +3,7 @@
  
  #include <linux/spinlock.h>
@@ -6903,9 +6916,9 @@ diff -NurpP --minimal linux-4.9.135/include/linux/nsproxy.h linux-4.9.135-vs2.3.
  }
  
  #endif
  }
  
  #endif
-diff -NurpP --minimal linux-4.9.135/include/linux/pid.h linux-4.9.135-vs2.3.9.8/include/linux/pid.h
---- linux-4.9.135/include/linux/pid.h  2018-10-20 10:39:20.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/linux/pid.h        2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/linux/pid.h linux-4.9/include/linux/pid.h
+--- linux-4.9/include/linux/pid.h      2021-02-24 15:47:32.407346093 +0100
++++ linux-4.9/include/linux/pid.h      2021-02-24 15:47:45.091076220 +0100
 @@ -10,7 +10,8 @@ enum pid_type
        PIDTYPE_SID,
        PIDTYPE_MAX,
 @@ -10,7 +10,8 @@ enum pid_type
        PIDTYPE_SID,
        PIDTYPE_MAX,
@@ -6924,9 +6937,9 @@ diff -NurpP --minimal linux-4.9.135/include/linux/pid.h linux-4.9.135-vs2.3.9.8/
  pid_t pid_vnr(struct pid *pid);
  
  #define do_each_pid_task(pid, type, task)                             \
  pid_t pid_vnr(struct pid *pid);
  
  #define do_each_pid_task(pid, type, task)                             \
-diff -NurpP --minimal linux-4.9.135/include/linux/quotaops.h linux-4.9.135-vs2.3.9.8/include/linux/quotaops.h
---- linux-4.9.135/include/linux/quotaops.h     2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/linux/quotaops.h   2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/linux/quotaops.h linux-4.9/include/linux/quotaops.h
+--- linux-4.9/include/linux/quotaops.h 2021-02-24 15:47:32.410679531 +0100
++++ linux-4.9/include/linux/quotaops.h 2021-02-24 15:47:45.091076220 +0100
 @@ -8,6 +8,7 @@
  #define _LINUX_QUOTAOPS_
  
 @@ -8,6 +8,7 @@
  #define _LINUX_QUOTAOPS_
  
@@ -6935,7 +6948,7 @@ diff -NurpP --minimal linux-4.9.135/include/linux/quotaops.h linux-4.9.135-vs2.3
  
  #define DQUOT_SPACE_WARN      0x1
  #define DQUOT_SPACE_RESERVE   0x2
  
  #define DQUOT_SPACE_WARN      0x1
  #define DQUOT_SPACE_RESERVE   0x2
-@@ -214,11 +215,12 @@ static inline void dquot_drop(struct ino
+@@ -224,11 +225,12 @@ static inline void dquot_drop(struct ino
  
  static inline int dquot_alloc_inode(struct inode *inode)
  {
  
  static inline int dquot_alloc_inode(struct inode *inode)
  {
@@ -6949,7 +6962,7 @@ diff -NurpP --minimal linux-4.9.135/include/linux/quotaops.h linux-4.9.135-vs2.3
  }
  
  static inline int dquot_transfer(struct inode *inode, struct iattr *iattr)
  }
  
  static inline int dquot_transfer(struct inode *inode, struct iattr *iattr)
-@@ -229,6 +231,10 @@ static inline int dquot_transfer(struct
+@@ -239,6 +241,10 @@ static inline int dquot_transfer(struct
  static inline int __dquot_alloc_space(struct inode *inode, qsize_t number,
                int flags)
  {
  static inline int __dquot_alloc_space(struct inode *inode, qsize_t number,
                int flags)
  {
@@ -6960,7 +6973,7 @@ diff -NurpP --minimal linux-4.9.135/include/linux/quotaops.h linux-4.9.135-vs2.3
        if (!(flags & DQUOT_SPACE_RESERVE))
                inode_add_bytes(inode, number);
        return 0;
        if (!(flags & DQUOT_SPACE_RESERVE))
                inode_add_bytes(inode, number);
        return 0;
-@@ -239,6 +245,7 @@ static inline void __dquot_free_space(st
+@@ -249,6 +255,7 @@ static inline void __dquot_free_space(st
  {
        if (!(flags & DQUOT_SPACE_RESERVE))
                inode_sub_bytes(inode, number);
  {
        if (!(flags & DQUOT_SPACE_RESERVE))
                inode_sub_bytes(inode, number);
@@ -6968,10 +6981,10 @@ diff -NurpP --minimal linux-4.9.135/include/linux/quotaops.h linux-4.9.135-vs2.3
  }
  
  static inline int dquot_claim_space_nodirty(struct inode *inode, qsize_t number)
  }
  
  static inline int dquot_claim_space_nodirty(struct inode *inode, qsize_t number)
-diff -NurpP --minimal linux-4.9.135/include/linux/sched.h linux-4.9.135-vs2.3.9.8/include/linux/sched.h
---- linux-4.9.135/include/linux/sched.h        2018-10-20 10:39:20.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/linux/sched.h      2018-10-20 05:55:43.000000000 +0000
-@@ -1718,6 +1718,14 @@ struct task_struct {
+diff -urNp -x '*.orig' linux-4.9/include/linux/sched.h linux-4.9/include/linux/sched.h
+--- linux-4.9/include/linux/sched.h    2021-02-24 15:47:32.414012968 +0100
++++ linux-4.9/include/linux/sched.h    2021-02-24 15:47:45.091076220 +0100
+@@ -1719,6 +1719,14 @@ struct task_struct {
  #endif
        struct seccomp seccomp;
  
  #endif
        struct seccomp seccomp;
  
@@ -6984,9 +6997,9 @@ diff -NurpP --minimal linux-4.9.135/include/linux/sched.h linux-4.9.135-vs2.3.9.
 +      vtag_t tag;
 +
  /* Thread group tracking */
 +      vtag_t tag;
 +
  /* Thread group tracking */
-       u32 parent_exec_id;
-       u32 self_exec_id;
-@@ -2111,6 +2119,11 @@ struct pid_namespace;
+       u64 parent_exec_id;
+       u64 self_exec_id;
+@@ -2114,6 +2122,11 @@ struct pid_namespace;
  pid_t __task_pid_nr_ns(struct task_struct *task, enum pid_type type,
                        struct pid_namespace *ns);
  
  pid_t __task_pid_nr_ns(struct task_struct *task, enum pid_type type,
                        struct pid_namespace *ns);
  
@@ -6998,7 +7011,7 @@ diff -NurpP --minimal linux-4.9.135/include/linux/sched.h linux-4.9.135-vs2.3.9.
  static inline pid_t task_pid_nr(struct task_struct *tsk)
  {
        return tsk->pid;
  static inline pid_t task_pid_nr(struct task_struct *tsk)
  {
        return tsk->pid;
-@@ -2124,7 +2137,8 @@ static inline pid_t task_pid_nr_ns(struc
+@@ -2127,7 +2140,8 @@ static inline pid_t task_pid_nr_ns(struc
  
  static inline pid_t task_pid_vnr(struct task_struct *tsk)
  {
  
  static inline pid_t task_pid_vnr(struct task_struct *tsk)
  {
@@ -7008,9 +7021,9 @@ diff -NurpP --minimal linux-4.9.135/include/linux/sched.h linux-4.9.135-vs2.3.9.
  }
  
  
  }
  
  
-diff -NurpP --minimal linux-4.9.135/include/linux/shmem_fs.h linux-4.9.135-vs2.3.9.8/include/linux/shmem_fs.h
---- linux-4.9.135/include/linux/shmem_fs.h     2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/linux/shmem_fs.h   2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/linux/shmem_fs.h linux-4.9/include/linux/shmem_fs.h
+--- linux-4.9/include/linux/shmem_fs.h 2016-12-11 20:17:54.000000000 +0100
++++ linux-4.9/include/linux/shmem_fs.h 2021-02-24 15:47:45.091076220 +0100
 @@ -10,6 +10,9 @@
  
  /* inode in-kernel data */
 @@ -10,6 +10,9 @@
  
  /* inode in-kernel data */
@@ -7021,9 +7034,9 @@ diff -NurpP --minimal linux-4.9.135/include/linux/shmem_fs.h linux-4.9.135-vs2.3
  struct shmem_inode_info {
        spinlock_t              lock;
        unsigned int            seals;          /* shmem seals */
  struct shmem_inode_info {
        spinlock_t              lock;
        unsigned int            seals;          /* shmem seals */
-diff -NurpP --minimal linux-4.9.135/include/linux/stat.h linux-4.9.135-vs2.3.9.8/include/linux/stat.h
---- linux-4.9.135/include/linux/stat.h 2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/linux/stat.h       2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/linux/stat.h linux-4.9/include/linux/stat.h
+--- linux-4.9/include/linux/stat.h     2016-12-11 20:17:54.000000000 +0100
++++ linux-4.9/include/linux/stat.h     2021-02-24 15:47:45.091076220 +0100
 @@ -25,6 +25,7 @@ struct kstat {
        unsigned int    nlink;
        kuid_t          uid;
 @@ -25,6 +25,7 @@ struct kstat {
        unsigned int    nlink;
        kuid_t          uid;
@@ -7032,9 +7045,9 @@ diff -NurpP --minimal linux-4.9.135/include/linux/stat.h linux-4.9.135-vs2.3.9.8
        dev_t           rdev;
        loff_t          size;
        struct timespec  atime;
        dev_t           rdev;
        loff_t          size;
        struct timespec  atime;
-diff -NurpP --minimal linux-4.9.135/include/linux/sunrpc/auth.h linux-4.9.135-vs2.3.9.8/include/linux/sunrpc/auth.h
---- linux-4.9.135/include/linux/sunrpc/auth.h  2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/linux/sunrpc/auth.h        2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/linux/sunrpc/auth.h linux-4.9/include/linux/sunrpc/auth.h
+--- linux-4.9/include/linux/sunrpc/auth.h      2016-12-11 20:17:54.000000000 +0100
++++ linux-4.9/include/linux/sunrpc/auth.h      2021-02-24 15:47:45.091076220 +0100
 @@ -46,6 +46,7 @@ enum {
  struct auth_cred {
        kuid_t  uid;
 @@ -46,6 +46,7 @@ enum {
  struct auth_cred {
        kuid_t  uid;
@@ -7043,9 +7056,9 @@ diff -NurpP --minimal linux-4.9.135/include/linux/sunrpc/auth.h linux-4.9.135-vs
        struct group_info *group_info;
        const char *principal;
        unsigned long ac_flags;
        struct group_info *group_info;
        const char *principal;
        unsigned long ac_flags;
-diff -NurpP --minimal linux-4.9.135/include/linux/sunrpc/clnt.h linux-4.9.135-vs2.3.9.8/include/linux/sunrpc/clnt.h
---- linux-4.9.135/include/linux/sunrpc/clnt.h  2018-10-20 10:39:20.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/linux/sunrpc/clnt.h        2018-10-20 05:55:43.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/linux/sunrpc/clnt.h linux-4.9/include/linux/sunrpc/clnt.h
+--- linux-4.9/include/linux/sunrpc/clnt.h      2021-02-24 15:47:32.417346405 +0100
++++ linux-4.9/include/linux/sunrpc/clnt.h      2021-02-24 15:47:45.091076220 +0100
 @@ -52,7 +52,8 @@ struct rpc_clnt {
                                cl_discrtry : 1,/* disconnect before retry */
                                cl_noretranstimeo: 1,/* No retransmit timeouts */
 @@ -52,7 +52,8 @@ struct rpc_clnt {
                                cl_discrtry : 1,/* disconnect before retry */
                                cl_noretranstimeo: 1,/* No retransmit timeouts */
@@ -7056,9 +7069,9 @@ diff -NurpP --minimal linux-4.9.135/include/linux/sunrpc/clnt.h linux-4.9.135-vs
  
        struct rpc_rtt *        cl_rtt;         /* RTO estimator data */
        const struct rpc_timeout *cl_timeout;   /* Timeout strategy */
  
        struct rpc_rtt *        cl_rtt;         /* RTO estimator data */
        const struct rpc_timeout *cl_timeout;   /* Timeout strategy */
-diff -NurpP --minimal linux-4.9.135/include/linux/types.h linux-4.9.135-vs2.3.9.8/include/linux/types.h
---- linux-4.9.135/include/linux/types.h        2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/linux/types.h      2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/linux/types.h linux-4.9/include/linux/types.h
+--- linux-4.9/include/linux/types.h    2016-12-11 20:17:54.000000000 +0100
++++ linux-4.9/include/linux/types.h    2021-02-24 15:47:45.091076220 +0100
 @@ -32,6 +32,9 @@ typedef __kernel_uid32_t     uid_t;
  typedef __kernel_gid32_t      gid_t;
  typedef __kernel_uid16_t        uid16_t;
 @@ -32,6 +32,9 @@ typedef __kernel_uid32_t     uid_t;
  typedef __kernel_gid32_t      gid_t;
  typedef __kernel_uid16_t        uid16_t;
@@ -7069,9 +7082,9 @@ diff -NurpP --minimal linux-4.9.135/include/linux/types.h linux-4.9.135-vs2.3.9.
  
  typedef unsigned long         uintptr_t;
  
  
  typedef unsigned long         uintptr_t;
  
-diff -NurpP --minimal linux-4.9.135/include/linux/uidgid.h linux-4.9.135-vs2.3.9.8/include/linux/uidgid.h
---- linux-4.9.135/include/linux/uidgid.h       2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/linux/uidgid.h     2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/linux/uidgid.h linux-4.9/include/linux/uidgid.h
+--- linux-4.9/include/linux/uidgid.h   2016-12-11 20:17:54.000000000 +0100
++++ linux-4.9/include/linux/uidgid.h   2021-02-24 15:47:45.091076220 +0100
 @@ -21,13 +21,17 @@ typedef struct {
        uid_t val;
  } kuid_t;
 @@ -21,13 +21,17 @@ typedef struct {
        uid_t val;
  } kuid_t;
@@ -7168,9 +7181,9 @@ diff -NurpP --minimal linux-4.9.135/include/linux/uidgid.h linux-4.9.135-vs2.3.9
  static inline uid_t from_kuid_munged(struct user_namespace *to, kuid_t kuid)
  {
        uid_t uid = from_kuid(to, kuid);
  static inline uid_t from_kuid_munged(struct user_namespace *to, kuid_t kuid)
  {
        uid_t uid = from_kuid(to, kuid);
-diff -NurpP --minimal linux-4.9.135/include/linux/vroot.h linux-4.9.135-vs2.3.9.8/include/linux/vroot.h
---- linux-4.9.135/include/linux/vroot.h        1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/linux/vroot.h      2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/linux/vroot.h linux-4.9/include/linux/vroot.h
+--- linux-4.9/include/linux/vroot.h    1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/include/linux/vroot.h    2021-02-24 15:47:45.091076220 +0100
 @@ -0,0 +1,51 @@
 +
 +/*
 @@ -0,0 +1,51 @@
 +
 +/*
@@ -7223,9 +7236,9 @@ diff -NurpP --minimal linux-4.9.135/include/linux/vroot.h linux-4.9.135-vs2.3.9.
 +#define VROOT_CLR_DEV         0x5601
 +
 +#endif /* _LINUX_VROOT_H */
 +#define VROOT_CLR_DEV         0x5601
 +
 +#endif /* _LINUX_VROOT_H */
-diff -NurpP --minimal linux-4.9.135/include/linux/vs_base.h linux-4.9.135-vs2.3.9.8/include/linux/vs_base.h
---- linux-4.9.135/include/linux/vs_base.h      1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/linux/vs_base.h    2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/linux/vs_base.h linux-4.9/include/linux/vs_base.h
+--- linux-4.9/include/linux/vs_base.h  1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/include/linux/vs_base.h  2021-02-24 15:47:45.091076220 +0100
 @@ -0,0 +1,10 @@
 +#ifndef _VS_BASE_H
 +#define _VS_BASE_H
 @@ -0,0 +1,10 @@
 +#ifndef _VS_BASE_H
 +#define _VS_BASE_H
@@ -7237,9 +7250,9 @@ diff -NurpP --minimal linux-4.9.135/include/linux/vs_base.h linux-4.9.135-vs2.3.
 +#else
 +#warning duplicate inclusion
 +#endif
 +#else
 +#warning duplicate inclusion
 +#endif
-diff -NurpP --minimal linux-4.9.135/include/linux/vs_context.h linux-4.9.135-vs2.3.9.8/include/linux/vs_context.h
---- linux-4.9.135/include/linux/vs_context.h   1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/linux/vs_context.h 2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/linux/vs_context.h linux-4.9/include/linux/vs_context.h
+--- linux-4.9/include/linux/vs_context.h       1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/include/linux/vs_context.h       2021-02-24 15:47:45.091076220 +0100
 @@ -0,0 +1,242 @@
 +#ifndef _VS_CONTEXT_H
 +#define _VS_CONTEXT_H
 @@ -0,0 +1,242 @@
 +#ifndef _VS_CONTEXT_H
 +#define _VS_CONTEXT_H
@@ -7483,9 +7496,9 @@ diff -NurpP --minimal linux-4.9.135/include/linux/vs_context.h linux-4.9.135-vs2
 +#else
 +#warning duplicate inclusion
 +#endif
 +#else
 +#warning duplicate inclusion
 +#endif
-diff -NurpP --minimal linux-4.9.135/include/linux/vs_cowbl.h linux-4.9.135-vs2.3.9.8/include/linux/vs_cowbl.h
---- linux-4.9.135/include/linux/vs_cowbl.h     1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/linux/vs_cowbl.h   2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/linux/vs_cowbl.h linux-4.9/include/linux/vs_cowbl.h
+--- linux-4.9/include/linux/vs_cowbl.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/include/linux/vs_cowbl.h 2021-02-24 15:47:45.094409658 +0100
 @@ -0,0 +1,48 @@
 +#ifndef _VS_COWBL_H
 +#define _VS_COWBL_H
 @@ -0,0 +1,48 @@
 +#ifndef _VS_COWBL_H
 +#define _VS_COWBL_H
@@ -7535,9 +7548,9 @@ diff -NurpP --minimal linux-4.9.135/include/linux/vs_cowbl.h linux-4.9.135-vs2.3
 +#else
 +#warning duplicate inclusion
 +#endif
 +#else
 +#warning duplicate inclusion
 +#endif
-diff -NurpP --minimal linux-4.9.135/include/linux/vs_cvirt.h linux-4.9.135-vs2.3.9.8/include/linux/vs_cvirt.h
---- linux-4.9.135/include/linux/vs_cvirt.h     1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/linux/vs_cvirt.h   2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/linux/vs_cvirt.h linux-4.9/include/linux/vs_cvirt.h
+--- linux-4.9/include/linux/vs_cvirt.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/include/linux/vs_cvirt.h 2021-02-24 15:47:45.094409658 +0100
 @@ -0,0 +1,50 @@
 +#ifndef _VS_CVIRT_H
 +#define _VS_CVIRT_H
 @@ -0,0 +1,50 @@
 +#ifndef _VS_CVIRT_H
 +#define _VS_CVIRT_H
@@ -7589,9 +7602,9 @@ diff -NurpP --minimal linux-4.9.135/include/linux/vs_cvirt.h linux-4.9.135-vs2.3
 +#else
 +#warning duplicate inclusion
 +#endif
 +#else
 +#warning duplicate inclusion
 +#endif
-diff -NurpP --minimal linux-4.9.135/include/linux/vs_device.h linux-4.9.135-vs2.3.9.8/include/linux/vs_device.h
---- linux-4.9.135/include/linux/vs_device.h    1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/linux/vs_device.h  2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/linux/vs_device.h linux-4.9/include/linux/vs_device.h
+--- linux-4.9/include/linux/vs_device.h        1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/include/linux/vs_device.h        2021-02-24 15:47:45.094409658 +0100
 @@ -0,0 +1,45 @@
 +#ifndef _VS_DEVICE_H
 +#define _VS_DEVICE_H
 @@ -0,0 +1,45 @@
 +#ifndef _VS_DEVICE_H
 +#define _VS_DEVICE_H
@@ -7638,9 +7651,9 @@ diff -NurpP --minimal linux-4.9.135/include/linux/vs_device.h linux-4.9.135-vs2.
 +#else
 +#warning duplicate inclusion
 +#endif
 +#else
 +#warning duplicate inclusion
 +#endif
-diff -NurpP --minimal linux-4.9.135/include/linux/vs_dlimit.h linux-4.9.135-vs2.3.9.8/include/linux/vs_dlimit.h
---- linux-4.9.135/include/linux/vs_dlimit.h    1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/linux/vs_dlimit.h  2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/linux/vs_dlimit.h linux-4.9/include/linux/vs_dlimit.h
+--- linux-4.9/include/linux/vs_dlimit.h        1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/include/linux/vs_dlimit.h        2021-02-24 15:47:45.094409658 +0100
 @@ -0,0 +1,215 @@
 +#ifndef _VS_DLIMIT_H
 +#define _VS_DLIMIT_H
 @@ -0,0 +1,215 @@
 +#ifndef _VS_DLIMIT_H
 +#define _VS_DLIMIT_H
@@ -7857,9 +7870,9 @@ diff -NurpP --minimal linux-4.9.135/include/linux/vs_dlimit.h linux-4.9.135-vs2.
 +#else
 +#warning duplicate inclusion
 +#endif
 +#else
 +#warning duplicate inclusion
 +#endif
-diff -NurpP --minimal linux-4.9.135/include/linux/vs_inet.h linux-4.9.135-vs2.3.9.8/include/linux/vs_inet.h
---- linux-4.9.135/include/linux/vs_inet.h      1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/linux/vs_inet.h    2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/linux/vs_inet.h linux-4.9/include/linux/vs_inet.h
+--- linux-4.9/include/linux/vs_inet.h  1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/include/linux/vs_inet.h  2021-02-24 15:47:45.097743096 +0100
 @@ -0,0 +1,364 @@
 +#ifndef _VS_INET_H
 +#define _VS_INET_H
 @@ -0,0 +1,364 @@
 +#ifndef _VS_INET_H
 +#define _VS_INET_H
@@ -8225,9 +8238,9 @@ diff -NurpP --minimal linux-4.9.135/include/linux/vs_inet.h linux-4.9.135-vs2.3.
 +#else
 +// #warning duplicate inclusion
 +#endif
 +#else
 +// #warning duplicate inclusion
 +#endif
-diff -NurpP --minimal linux-4.9.135/include/linux/vs_inet6.h linux-4.9.135-vs2.3.9.8/include/linux/vs_inet6.h
---- linux-4.9.135/include/linux/vs_inet6.h     1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/linux/vs_inet6.h   2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/linux/vs_inet6.h linux-4.9/include/linux/vs_inet6.h
+--- linux-4.9/include/linux/vs_inet6.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/include/linux/vs_inet6.h 2021-02-24 15:47:45.097743096 +0100
 @@ -0,0 +1,264 @@
 +#ifndef _VS_INET6_H
 +#define _VS_INET6_H
 @@ -0,0 +1,264 @@
 +#ifndef _VS_INET6_H
 +#define _VS_INET6_H
@@ -8493,9 +8506,9 @@ diff -NurpP --minimal linux-4.9.135/include/linux/vs_inet6.h linux-4.9.135-vs2.3
 +#else
 +#warning duplicate inclusion
 +#endif
 +#else
 +#warning duplicate inclusion
 +#endif
-diff -NurpP --minimal linux-4.9.135/include/linux/vs_limit.h linux-4.9.135-vs2.3.9.8/include/linux/vs_limit.h
---- linux-4.9.135/include/linux/vs_limit.h     1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/linux/vs_limit.h   2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/linux/vs_limit.h linux-4.9/include/linux/vs_limit.h
+--- linux-4.9/include/linux/vs_limit.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/include/linux/vs_limit.h 2021-02-24 15:47:45.101076533 +0100
 @@ -0,0 +1,140 @@
 +#ifndef _VS_LIMIT_H
 +#define _VS_LIMIT_H
 @@ -0,0 +1,140 @@
 +#ifndef _VS_LIMIT_H
 +#define _VS_LIMIT_H
@@ -8637,9 +8650,9 @@ diff -NurpP --minimal linux-4.9.135/include/linux/vs_limit.h linux-4.9.135-vs2.3
 +#else
 +#warning duplicate inclusion
 +#endif
 +#else
 +#warning duplicate inclusion
 +#endif
-diff -NurpP --minimal linux-4.9.135/include/linux/vs_network.h linux-4.9.135-vs2.3.9.8/include/linux/vs_network.h
---- linux-4.9.135/include/linux/vs_network.h   1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/linux/vs_network.h 2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/linux/vs_network.h linux-4.9/include/linux/vs_network.h
+--- linux-4.9/include/linux/vs_network.h       1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/include/linux/vs_network.h       2021-02-24 15:47:45.101076533 +0100
 @@ -0,0 +1,169 @@
 +#ifndef _NX_VS_NETWORK_H
 +#define _NX_VS_NETWORK_H
 @@ -0,0 +1,169 @@
 +#ifndef _NX_VS_NETWORK_H
 +#define _NX_VS_NETWORK_H
@@ -8810,9 +8823,9 @@ diff -NurpP --minimal linux-4.9.135/include/linux/vs_network.h linux-4.9.135-vs2
 +#else
 +#warning duplicate inclusion
 +#endif
 +#else
 +#warning duplicate inclusion
 +#endif
-diff -NurpP --minimal linux-4.9.135/include/linux/vs_pid.h linux-4.9.135-vs2.3.9.8/include/linux/vs_pid.h
---- linux-4.9.135/include/linux/vs_pid.h       1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/linux/vs_pid.h     2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/linux/vs_pid.h linux-4.9/include/linux/vs_pid.h
+--- linux-4.9/include/linux/vs_pid.h   1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/include/linux/vs_pid.h   2021-02-24 15:47:45.101076533 +0100
 @@ -0,0 +1,50 @@
 +#ifndef _VS_PID_H
 +#define _VS_PID_H
 @@ -0,0 +1,50 @@
 +#ifndef _VS_PID_H
 +#define _VS_PID_H
@@ -8864,9 +8877,9 @@ diff -NurpP --minimal linux-4.9.135/include/linux/vs_pid.h linux-4.9.135-vs2.3.9
 +#else
 +#warning duplicate inclusion
 +#endif
 +#else
 +#warning duplicate inclusion
 +#endif
-diff -NurpP --minimal linux-4.9.135/include/linux/vs_sched.h linux-4.9.135-vs2.3.9.8/include/linux/vs_sched.h
---- linux-4.9.135/include/linux/vs_sched.h     1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/linux/vs_sched.h   2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/linux/vs_sched.h linux-4.9/include/linux/vs_sched.h
+--- linux-4.9/include/linux/vs_sched.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/include/linux/vs_sched.h 2021-02-24 15:47:45.101076533 +0100
 @@ -0,0 +1,40 @@
 +#ifndef _VS_SCHED_H
 +#define _VS_SCHED_H
 @@ -0,0 +1,40 @@
 +#ifndef _VS_SCHED_H
 +#define _VS_SCHED_H
@@ -8908,9 +8921,9 @@ diff -NurpP --minimal linux-4.9.135/include/linux/vs_sched.h linux-4.9.135-vs2.3
 +#else
 +#warning duplicate inclusion
 +#endif
 +#else
 +#warning duplicate inclusion
 +#endif
-diff -NurpP --minimal linux-4.9.135/include/linux/vs_socket.h linux-4.9.135-vs2.3.9.8/include/linux/vs_socket.h
---- linux-4.9.135/include/linux/vs_socket.h    1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/linux/vs_socket.h  2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/linux/vs_socket.h linux-4.9/include/linux/vs_socket.h
+--- linux-4.9/include/linux/vs_socket.h        1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/include/linux/vs_socket.h        2021-02-24 15:47:45.101076533 +0100
 @@ -0,0 +1,67 @@
 +#ifndef _VS_SOCKET_H
 +#define _VS_SOCKET_H
 @@ -0,0 +1,67 @@
 +#ifndef _VS_SOCKET_H
 +#define _VS_SOCKET_H
@@ -8979,9 +8992,9 @@ diff -NurpP --minimal linux-4.9.135/include/linux/vs_socket.h linux-4.9.135-vs2.
 +#else
 +#warning duplicate inclusion
 +#endif
 +#else
 +#warning duplicate inclusion
 +#endif
-diff -NurpP --minimal linux-4.9.135/include/linux/vs_tag.h linux-4.9.135-vs2.3.9.8/include/linux/vs_tag.h
---- linux-4.9.135/include/linux/vs_tag.h       1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/linux/vs_tag.h     2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/linux/vs_tag.h linux-4.9/include/linux/vs_tag.h
+--- linux-4.9/include/linux/vs_tag.h   1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/include/linux/vs_tag.h   2021-02-24 15:47:45.101076533 +0100
 @@ -0,0 +1,47 @@
 +#ifndef _VS_TAG_H
 +#define _VS_TAG_H
 @@ -0,0 +1,47 @@
 +#ifndef _VS_TAG_H
 +#define _VS_TAG_H
@@ -9030,9 +9043,9 @@ diff -NurpP --minimal linux-4.9.135/include/linux/vs_tag.h linux-4.9.135-vs2.3.9
 +#else
 +#warning duplicate inclusion
 +#endif
 +#else
 +#warning duplicate inclusion
 +#endif
-diff -NurpP --minimal linux-4.9.135/include/linux/vs_time.h linux-4.9.135-vs2.3.9.8/include/linux/vs_time.h
---- linux-4.9.135/include/linux/vs_time.h      1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/linux/vs_time.h    2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/linux/vs_time.h linux-4.9/include/linux/vs_time.h
+--- linux-4.9/include/linux/vs_time.h  1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/include/linux/vs_time.h  2021-02-24 15:47:45.101076533 +0100
 @@ -0,0 +1,21 @@
 +#ifndef _VS_TIME_H
 +#define _VS_TIME_H
 @@ -0,0 +1,21 @@
 +#ifndef _VS_TIME_H
 +#define _VS_TIME_H
@@ -9055,9 +9068,9 @@ diff -NurpP --minimal linux-4.9.135/include/linux/vs_time.h linux-4.9.135-vs2.3.
 +#else
 +#warning duplicate inclusion
 +#endif
 +#else
 +#warning duplicate inclusion
 +#endif
-diff -NurpP --minimal linux-4.9.135/include/linux/vserver/base.h linux-4.9.135-vs2.3.9.8/include/linux/vserver/base.h
---- linux-4.9.135/include/linux/vserver/base.h 1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/linux/vserver/base.h       2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/linux/vserver/base.h linux-4.9/include/linux/vserver/base.h
+--- linux-4.9/include/linux/vserver/base.h     1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/include/linux/vserver/base.h     2021-02-24 15:47:45.094409658 +0100
 @@ -0,0 +1,184 @@
 +#ifndef _VSERVER_BASE_H
 +#define _VSERVER_BASE_H
 @@ -0,0 +1,184 @@
 +#ifndef _VSERVER_BASE_H
 +#define _VSERVER_BASE_H
@@ -9243,9 +9256,9 @@ diff -NurpP --minimal linux-4.9.135/include/linux/vserver/base.h linux-4.9.135-v
 +#define nx_info_state(n, m)   (__nx_state(n) & (m))
 +
 +#endif
 +#define nx_info_state(n, m)   (__nx_state(n) & (m))
 +
 +#endif
-diff -NurpP --minimal linux-4.9.135/include/linux/vserver/cacct.h linux-4.9.135-vs2.3.9.8/include/linux/vserver/cacct.h
---- linux-4.9.135/include/linux/vserver/cacct.h        1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/linux/vserver/cacct.h      2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/linux/vserver/cacct.h linux-4.9/include/linux/vserver/cacct.h
+--- linux-4.9/include/linux/vserver/cacct.h    1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/include/linux/vserver/cacct.h    2021-02-24 15:47:45.094409658 +0100
 @@ -0,0 +1,15 @@
 +#ifndef _VSERVER_CACCT_H
 +#define _VSERVER_CACCT_H
 @@ -0,0 +1,15 @@
 +#ifndef _VSERVER_CACCT_H
 +#define _VSERVER_CACCT_H
@@ -9262,9 +9275,9 @@ diff -NurpP --minimal linux-4.9.135/include/linux/vserver/cacct.h linux-4.9.135-
 +};
 +
 +#endif        /* _VSERVER_CACCT_H */
 +};
 +
 +#endif        /* _VSERVER_CACCT_H */
-diff -NurpP --minimal linux-4.9.135/include/linux/vserver/cacct_cmd.h linux-4.9.135-vs2.3.9.8/include/linux/vserver/cacct_cmd.h
---- linux-4.9.135/include/linux/vserver/cacct_cmd.h    1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/linux/vserver/cacct_cmd.h  2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/linux/vserver/cacct_cmd.h linux-4.9/include/linux/vserver/cacct_cmd.h
+--- linux-4.9/include/linux/vserver/cacct_cmd.h        1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/include/linux/vserver/cacct_cmd.h        2021-02-24 15:47:45.094409658 +0100
 @@ -0,0 +1,10 @@
 +#ifndef _VSERVER_CACCT_CMD_H
 +#define _VSERVER_CACCT_CMD_H
 @@ -0,0 +1,10 @@
 +#ifndef _VSERVER_CACCT_CMD_H
 +#define _VSERVER_CACCT_CMD_H
@@ -9276,9 +9289,9 @@ diff -NurpP --minimal linux-4.9.135/include/linux/vserver/cacct_cmd.h linux-4.9.
 +extern int vc_sock_stat(struct vx_info *, void __user *);
 +
 +#endif        /* _VSERVER_CACCT_CMD_H */
 +extern int vc_sock_stat(struct vx_info *, void __user *);
 +
 +#endif        /* _VSERVER_CACCT_CMD_H */
-diff -NurpP --minimal linux-4.9.135/include/linux/vserver/cacct_def.h linux-4.9.135-vs2.3.9.8/include/linux/vserver/cacct_def.h
---- linux-4.9.135/include/linux/vserver/cacct_def.h    1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/linux/vserver/cacct_def.h  2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/linux/vserver/cacct_def.h linux-4.9/include/linux/vserver/cacct_def.h
+--- linux-4.9/include/linux/vserver/cacct_def.h        1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/include/linux/vserver/cacct_def.h        2021-02-24 15:47:45.094409658 +0100
 @@ -0,0 +1,43 @@
 +#ifndef _VSERVER_CACCT_DEF_H
 +#define _VSERVER_CACCT_DEF_H
 @@ -0,0 +1,43 @@
 +#ifndef _VSERVER_CACCT_DEF_H
 +#define _VSERVER_CACCT_DEF_H
@@ -9323,9 +9336,9 @@ diff -NurpP --minimal linux-4.9.135/include/linux/vserver/cacct_def.h linux-4.9.
 +#endif
 +
 +#endif        /* _VSERVER_CACCT_DEF_H */
 +#endif
 +
 +#endif        /* _VSERVER_CACCT_DEF_H */
-diff -NurpP --minimal linux-4.9.135/include/linux/vserver/cacct_int.h linux-4.9.135-vs2.3.9.8/include/linux/vserver/cacct_int.h
---- linux-4.9.135/include/linux/vserver/cacct_int.h    1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/linux/vserver/cacct_int.h  2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/linux/vserver/cacct_int.h linux-4.9/include/linux/vserver/cacct_int.h
+--- linux-4.9/include/linux/vserver/cacct_int.h        1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/include/linux/vserver/cacct_int.h        2021-02-24 15:47:45.094409658 +0100
 @@ -0,0 +1,17 @@
 +#ifndef _VSERVER_CACCT_INT_H
 +#define _VSERVER_CACCT_INT_H
 @@ -0,0 +1,17 @@
 +#ifndef _VSERVER_CACCT_INT_H
 +#define _VSERVER_CACCT_INT_H
@@ -9344,9 +9357,9 @@ diff -NurpP --minimal linux-4.9.135/include/linux/vserver/cacct_int.h linux-4.9.
 +}
 +
 +#endif        /* _VSERVER_CACCT_INT_H */
 +}
 +
 +#endif        /* _VSERVER_CACCT_INT_H */
-diff -NurpP --minimal linux-4.9.135/include/linux/vserver/check.h linux-4.9.135-vs2.3.9.8/include/linux/vserver/check.h
---- linux-4.9.135/include/linux/vserver/check.h        1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/linux/vserver/check.h      2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/linux/vserver/check.h linux-4.9/include/linux/vserver/check.h
+--- linux-4.9/include/linux/vserver/check.h    1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/include/linux/vserver/check.h    2021-02-24 15:47:45.094409658 +0100
 @@ -0,0 +1,89 @@
 +#ifndef _VSERVER_CHECK_H
 +#define _VSERVER_CHECK_H
 @@ -0,0 +1,89 @@
 +#ifndef _VSERVER_CHECK_H
 +#define _VSERVER_CHECK_H
@@ -9437,9 +9450,9 @@ diff -NurpP --minimal linux-4.9.135/include/linux/vserver/check.h linux-4.9.135-
 +#define nx_weak_check(c, m)   ((m) ? nx_check(c, m) : 1)
 +
 +#endif
 +#define nx_weak_check(c, m)   ((m) ? nx_check(c, m) : 1)
 +
 +#endif
-diff -NurpP --minimal linux-4.9.135/include/linux/vserver/context.h linux-4.9.135-vs2.3.9.8/include/linux/vserver/context.h
---- linux-4.9.135/include/linux/vserver/context.h      1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/linux/vserver/context.h    2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/linux/vserver/context.h linux-4.9/include/linux/vserver/context.h
+--- linux-4.9/include/linux/vserver/context.h  1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/include/linux/vserver/context.h  2021-02-24 15:47:45.094409658 +0100
 @@ -0,0 +1,110 @@
 +#ifndef _VSERVER_CONTEXT_H
 +#define _VSERVER_CONTEXT_H
 @@ -0,0 +1,110 @@
 +#ifndef _VSERVER_CONTEXT_H
 +#define _VSERVER_CONTEXT_H
@@ -9551,9 +9564,9 @@ diff -NurpP --minimal linux-4.9.135/include/linux/vserver/context.h linux-4.9.13
 +
 +
 +#endif        /* _VSERVER_CONTEXT_H */
 +
 +
 +#endif        /* _VSERVER_CONTEXT_H */
-diff -NurpP --minimal linux-4.9.135/include/linux/vserver/context_cmd.h linux-4.9.135-vs2.3.9.8/include/linux/vserver/context_cmd.h
---- linux-4.9.135/include/linux/vserver/context_cmd.h  1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/linux/vserver/context_cmd.h        2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/linux/vserver/context_cmd.h linux-4.9/include/linux/vserver/context_cmd.h
+--- linux-4.9/include/linux/vserver/context_cmd.h      1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/include/linux/vserver/context_cmd.h      2021-02-24 15:47:45.094409658 +0100
 @@ -0,0 +1,33 @@
 +#ifndef _VSERVER_CONTEXT_CMD_H
 +#define _VSERVER_CONTEXT_CMD_H
 @@ -0,0 +1,33 @@
 +#ifndef _VSERVER_CONTEXT_CMD_H
 +#define _VSERVER_CONTEXT_CMD_H
@@ -9588,20 +9601,13 @@ diff -NurpP --minimal linux-4.9.135/include/linux/vserver/context_cmd.h linux-4.
 +extern int vc_set_badness(struct vx_info *, void __user *);
 +
 +#endif        /* _VSERVER_CONTEXT_CMD_H */
 +extern int vc_set_badness(struct vx_info *, void __user *);
 +
 +#endif        /* _VSERVER_CONTEXT_CMD_H */
-diff -NurpP --minimal linux-4.9.135/include/linux/vserver/cvirt.h linux-4.9.135-vs2.3.9.8/include/linux/vserver/cvirt.h
---- linux-4.9.135/include/linux/vserver/cvirt.h        1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/linux/vserver/cvirt.h      2018-10-20 04:58:14.000000000 +0000
-@@ -0,0 +1,18 @@
+diff -urNp -x '*.orig' linux-4.9/include/linux/vserver/cvirt.h linux-4.9/include/linux/vserver/cvirt.h
+--- linux-4.9/include/linux/vserver/cvirt.h    1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/include/linux/vserver/cvirt.h    2021-02-24 15:47:45.094409658 +0100
+@@ -0,0 +1,11 @@
 +#ifndef _VSERVER_CVIRT_H
 +#define _VSERVER_CVIRT_H
 +
 +#ifndef _VSERVER_CVIRT_H
 +#define _VSERVER_CVIRT_H
 +
-+struct timespec;
-+
-+void vx_vsi_boottime64(struct timespec64 *);
-+
-+void vx_vsi_uptime(struct timespec *, struct timespec *);
-+
-+
 +struct vx_info;
 +
 +void vx_update_load(struct vx_info *);
 +struct vx_info;
 +
 +void vx_update_load(struct vx_info *);
@@ -9610,9 +9616,9 @@ diff -NurpP --minimal linux-4.9.135/include/linux/vserver/cvirt.h linux-4.9.135-
 +int vx_do_syslog(int, char __user *, int);
 +
 +#endif        /* _VSERVER_CVIRT_H */
 +int vx_do_syslog(int, char __user *, int);
 +
 +#endif        /* _VSERVER_CVIRT_H */
-diff -NurpP --minimal linux-4.9.135/include/linux/vserver/cvirt_cmd.h linux-4.9.135-vs2.3.9.8/include/linux/vserver/cvirt_cmd.h
---- linux-4.9.135/include/linux/vserver/cvirt_cmd.h    1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/linux/vserver/cvirt_cmd.h  2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/linux/vserver/cvirt_cmd.h linux-4.9/include/linux/vserver/cvirt_cmd.h
+--- linux-4.9/include/linux/vserver/cvirt_cmd.h        1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/include/linux/vserver/cvirt_cmd.h        2021-02-24 15:47:45.094409658 +0100
 @@ -0,0 +1,13 @@
 +#ifndef _VSERVER_CVIRT_CMD_H
 +#define _VSERVER_CVIRT_CMD_H
 @@ -0,0 +1,13 @@
 +#ifndef _VSERVER_CVIRT_CMD_H
 +#define _VSERVER_CVIRT_CMD_H
@@ -9627,9 +9633,9 @@ diff -NurpP --minimal linux-4.9.135/include/linux/vserver/cvirt_cmd.h linux-4.9.
 +extern int vc_virt_stat(struct vx_info *, void __user *);
 +
 +#endif        /* _VSERVER_CVIRT_CMD_H */
 +extern int vc_virt_stat(struct vx_info *, void __user *);
 +
 +#endif        /* _VSERVER_CVIRT_CMD_H */
-diff -NurpP --minimal linux-4.9.135/include/linux/vserver/cvirt_def.h linux-4.9.135-vs2.3.9.8/include/linux/vserver/cvirt_def.h
---- linux-4.9.135/include/linux/vserver/cvirt_def.h    1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/linux/vserver/cvirt_def.h  2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/linux/vserver/cvirt_def.h linux-4.9/include/linux/vserver/cvirt_def.h
+--- linux-4.9/include/linux/vserver/cvirt_def.h        1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/include/linux/vserver/cvirt_def.h        2021-02-24 15:47:45.094409658 +0100
 @@ -0,0 +1,80 @@
 +#ifndef _VSERVER_CVIRT_DEF_H
 +#define _VSERVER_CVIRT_DEF_H
 @@ -0,0 +1,80 @@
 +#ifndef _VSERVER_CVIRT_DEF_H
 +#define _VSERVER_CVIRT_DEF_H
@@ -9711,9 +9717,9 @@ diff -NurpP --minimal linux-4.9.135/include/linux/vserver/cvirt_def.h linux-4.9.
 +#endif
 +
 +#endif        /* _VSERVER_CVIRT_DEF_H */
 +#endif
 +
 +#endif        /* _VSERVER_CVIRT_DEF_H */
-diff -NurpP --minimal linux-4.9.135/include/linux/vserver/debug.h linux-4.9.135-vs2.3.9.8/include/linux/vserver/debug.h
---- linux-4.9.135/include/linux/vserver/debug.h        1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/linux/vserver/debug.h      2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/linux/vserver/debug.h linux-4.9/include/linux/vserver/debug.h
+--- linux-4.9/include/linux/vserver/debug.h    1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/include/linux/vserver/debug.h    2021-02-24 15:47:45.094409658 +0100
 @@ -0,0 +1,146 @@
 +#ifndef _VSERVER_DEBUG_H
 +#define _VSERVER_DEBUG_H
 @@ -0,0 +1,146 @@
 +#ifndef _VSERVER_DEBUG_H
 +#define _VSERVER_DEBUG_H
@@ -9861,9 +9867,9 @@ diff -NurpP --minimal linux-4.9.135/include/linux/vserver/debug.h linux-4.9.135-
 +
 +
 +#endif /* _VSERVER_DEBUG_H */
 +
 +
 +#endif /* _VSERVER_DEBUG_H */
-diff -NurpP --minimal linux-4.9.135/include/linux/vserver/debug_cmd.h linux-4.9.135-vs2.3.9.8/include/linux/vserver/debug_cmd.h
---- linux-4.9.135/include/linux/vserver/debug_cmd.h    1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/linux/vserver/debug_cmd.h  2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/linux/vserver/debug_cmd.h linux-4.9/include/linux/vserver/debug_cmd.h
+--- linux-4.9/include/linux/vserver/debug_cmd.h        1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/include/linux/vserver/debug_cmd.h        2021-02-24 15:47:45.094409658 +0100
 @@ -0,0 +1,37 @@
 +#ifndef _VSERVER_DEBUG_CMD_H
 +#define _VSERVER_DEBUG_CMD_H
 @@ -0,0 +1,37 @@
 +#ifndef _VSERVER_DEBUG_CMD_H
 +#define _VSERVER_DEBUG_CMD_H
@@ -9902,9 +9908,9 @@ diff -NurpP --minimal linux-4.9.135/include/linux/vserver/debug_cmd.h linux-4.9.
 +#endif  /* CONFIG_COMPAT */
 +
 +#endif        /* _VSERVER_DEBUG_CMD_H */
 +#endif  /* CONFIG_COMPAT */
 +
 +#endif        /* _VSERVER_DEBUG_CMD_H */
-diff -NurpP --minimal linux-4.9.135/include/linux/vserver/device.h linux-4.9.135-vs2.3.9.8/include/linux/vserver/device.h
---- linux-4.9.135/include/linux/vserver/device.h       1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/linux/vserver/device.h     2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/linux/vserver/device.h linux-4.9/include/linux/vserver/device.h
+--- linux-4.9/include/linux/vserver/device.h   1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/include/linux/vserver/device.h   2021-02-24 15:47:45.094409658 +0100
 @@ -0,0 +1,9 @@
 +#ifndef _VSERVER_DEVICE_H
 +#define _VSERVER_DEVICE_H
 @@ -0,0 +1,9 @@
 +#ifndef _VSERVER_DEVICE_H
 +#define _VSERVER_DEVICE_H
@@ -9915,9 +9921,9 @@ diff -NurpP --minimal linux-4.9.135/include/linux/vserver/device.h linux-4.9.135
 +#else /* _VSERVER_DEVICE_H */
 +#warning duplicate inclusion
 +#endif        /* _VSERVER_DEVICE_H */
 +#else /* _VSERVER_DEVICE_H */
 +#warning duplicate inclusion
 +#endif        /* _VSERVER_DEVICE_H */
-diff -NurpP --minimal linux-4.9.135/include/linux/vserver/device_cmd.h linux-4.9.135-vs2.3.9.8/include/linux/vserver/device_cmd.h
---- linux-4.9.135/include/linux/vserver/device_cmd.h   1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/linux/vserver/device_cmd.h 2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/linux/vserver/device_cmd.h linux-4.9/include/linux/vserver/device_cmd.h
+--- linux-4.9/include/linux/vserver/device_cmd.h       1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/include/linux/vserver/device_cmd.h       2021-02-24 15:47:45.094409658 +0100
 @@ -0,0 +1,31 @@
 +#ifndef _VSERVER_DEVICE_CMD_H
 +#define _VSERVER_DEVICE_CMD_H
 @@ -0,0 +1,31 @@
 +#ifndef _VSERVER_DEVICE_CMD_H
 +#define _VSERVER_DEVICE_CMD_H
@@ -9950,9 +9956,9 @@ diff -NurpP --minimal linux-4.9.135/include/linux/vserver/device_cmd.h linux-4.9
 +#endif        /* CONFIG_COMPAT */
 +
 +#endif        /* _VSERVER_DEVICE_CMD_H */
 +#endif        /* CONFIG_COMPAT */
 +
 +#endif        /* _VSERVER_DEVICE_CMD_H */
-diff -NurpP --minimal linux-4.9.135/include/linux/vserver/device_def.h linux-4.9.135-vs2.3.9.8/include/linux/vserver/device_def.h
---- linux-4.9.135/include/linux/vserver/device_def.h   1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/linux/vserver/device_def.h 2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/linux/vserver/device_def.h linux-4.9/include/linux/vserver/device_def.h
+--- linux-4.9/include/linux/vserver/device_def.h       1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/include/linux/vserver/device_def.h       2021-02-24 15:47:45.094409658 +0100
 @@ -0,0 +1,17 @@
 +#ifndef _VSERVER_DEVICE_DEF_H
 +#define _VSERVER_DEVICE_DEF_H
 @@ -0,0 +1,17 @@
 +#ifndef _VSERVER_DEVICE_DEF_H
 +#define _VSERVER_DEVICE_DEF_H
@@ -9971,9 +9977,9 @@ diff -NurpP --minimal linux-4.9.135/include/linux/vserver/device_def.h linux-4.9
 +};
 +
 +#endif        /* _VSERVER_DEVICE_DEF_H */
 +};
 +
 +#endif        /* _VSERVER_DEVICE_DEF_H */
-diff -NurpP --minimal linux-4.9.135/include/linux/vserver/dlimit.h linux-4.9.135-vs2.3.9.8/include/linux/vserver/dlimit.h
---- linux-4.9.135/include/linux/vserver/dlimit.h       1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/linux/vserver/dlimit.h     2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/linux/vserver/dlimit.h linux-4.9/include/linux/vserver/dlimit.h
+--- linux-4.9/include/linux/vserver/dlimit.h   1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/include/linux/vserver/dlimit.h   2021-02-24 15:47:45.094409658 +0100
 @@ -0,0 +1,54 @@
 +#ifndef _VSERVER_DLIMIT_H
 +#define _VSERVER_DLIMIT_H
 @@ -0,0 +1,54 @@
 +#ifndef _VSERVER_DLIMIT_H
 +#define _VSERVER_DLIMIT_H
@@ -10029,9 +10035,9 @@ diff -NurpP --minimal linux-4.9.135/include/linux/vserver/dlimit.h linux-4.9.135
 +#else /* _VSERVER_DLIMIT_H */
 +#warning duplicate inclusion
 +#endif        /* _VSERVER_DLIMIT_H */
 +#else /* _VSERVER_DLIMIT_H */
 +#warning duplicate inclusion
 +#endif        /* _VSERVER_DLIMIT_H */
-diff -NurpP --minimal linux-4.9.135/include/linux/vserver/dlimit_cmd.h linux-4.9.135-vs2.3.9.8/include/linux/vserver/dlimit_cmd.h
---- linux-4.9.135/include/linux/vserver/dlimit_cmd.h   1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/linux/vserver/dlimit_cmd.h 2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/linux/vserver/dlimit_cmd.h linux-4.9/include/linux/vserver/dlimit_cmd.h
+--- linux-4.9/include/linux/vserver/dlimit_cmd.h       1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/include/linux/vserver/dlimit_cmd.h       2021-02-24 15:47:45.094409658 +0100
 @@ -0,0 +1,46 @@
 +#ifndef _VSERVER_DLIMIT_CMD_H
 +#define _VSERVER_DLIMIT_CMD_H
 @@ -0,0 +1,46 @@
 +#ifndef _VSERVER_DLIMIT_CMD_H
 +#define _VSERVER_DLIMIT_CMD_H
@@ -10079,9 +10085,9 @@ diff -NurpP --minimal linux-4.9.135/include/linux/vserver/dlimit_cmd.h linux-4.9
 +#endif        /* CONFIG_COMPAT */
 +
 +#endif        /* _VSERVER_DLIMIT_CMD_H */
 +#endif        /* CONFIG_COMPAT */
 +
 +#endif        /* _VSERVER_DLIMIT_CMD_H */
-diff -NurpP --minimal linux-4.9.135/include/linux/vserver/global.h linux-4.9.135-vs2.3.9.8/include/linux/vserver/global.h
---- linux-4.9.135/include/linux/vserver/global.h       1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/linux/vserver/global.h     2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/linux/vserver/global.h linux-4.9/include/linux/vserver/global.h
+--- linux-4.9/include/linux/vserver/global.h   1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/include/linux/vserver/global.h   2021-02-24 15:47:45.094409658 +0100
 @@ -0,0 +1,20 @@
 +#ifndef _VSERVER_GLOBAL_H
 +#define _VSERVER_GLOBAL_H
 @@ -0,0 +1,20 @@
 +#ifndef _VSERVER_GLOBAL_H
 +#define _VSERVER_GLOBAL_H
@@ -10103,9 +10109,9 @@ diff -NurpP --minimal linux-4.9.135/include/linux/vserver/global.h linux-4.9.135
 +
 +
 +#endif /* _VSERVER_GLOBAL_H */
 +
 +
 +#endif /* _VSERVER_GLOBAL_H */
-diff -NurpP --minimal linux-4.9.135/include/linux/vserver/history.h linux-4.9.135-vs2.3.9.8/include/linux/vserver/history.h
---- linux-4.9.135/include/linux/vserver/history.h      1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/linux/vserver/history.h    2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/linux/vserver/history.h linux-4.9/include/linux/vserver/history.h
+--- linux-4.9/include/linux/vserver/history.h  1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/include/linux/vserver/history.h  2021-02-24 15:47:45.094409658 +0100
 @@ -0,0 +1,197 @@
 +#ifndef _VSERVER_HISTORY_H
 +#define _VSERVER_HISTORY_H
 @@ -0,0 +1,197 @@
 +#ifndef _VSERVER_HISTORY_H
 +#define _VSERVER_HISTORY_H
@@ -10304,9 +10310,9 @@ diff -NurpP --minimal linux-4.9.135/include/linux/vserver/history.h linux-4.9.13
 +#endif /* CONFIG_VSERVER_HISTORY */
 +
 +#endif /* _VSERVER_HISTORY_H */
 +#endif /* CONFIG_VSERVER_HISTORY */
 +
 +#endif /* _VSERVER_HISTORY_H */
-diff -NurpP --minimal linux-4.9.135/include/linux/vserver/inode.h linux-4.9.135-vs2.3.9.8/include/linux/vserver/inode.h
---- linux-4.9.135/include/linux/vserver/inode.h        1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/linux/vserver/inode.h      2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/linux/vserver/inode.h linux-4.9/include/linux/vserver/inode.h
+--- linux-4.9/include/linux/vserver/inode.h    1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/include/linux/vserver/inode.h    2021-02-24 15:47:45.097743096 +0100
 @@ -0,0 +1,19 @@
 +#ifndef _VSERVER_INODE_H
 +#define _VSERVER_INODE_H
 @@ -0,0 +1,19 @@
 +#ifndef _VSERVER_INODE_H
 +#define _VSERVER_INODE_H
@@ -10327,9 +10333,9 @@ diff -NurpP --minimal linux-4.9.135/include/linux/vserver/inode.h linux-4.9.135-
 +#else /* _VSERVER_INODE_H */
 +#warning duplicate inclusion
 +#endif        /* _VSERVER_INODE_H */
 +#else /* _VSERVER_INODE_H */
 +#warning duplicate inclusion
 +#endif        /* _VSERVER_INODE_H */
-diff -NurpP --minimal linux-4.9.135/include/linux/vserver/inode_cmd.h linux-4.9.135-vs2.3.9.8/include/linux/vserver/inode_cmd.h
---- linux-4.9.135/include/linux/vserver/inode_cmd.h    1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/linux/vserver/inode_cmd.h  2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/linux/vserver/inode_cmd.h linux-4.9/include/linux/vserver/inode_cmd.h
+--- linux-4.9/include/linux/vserver/inode_cmd.h        1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/include/linux/vserver/inode_cmd.h        2021-02-24 15:47:45.097743096 +0100
 @@ -0,0 +1,36 @@
 +#ifndef _VSERVER_INODE_CMD_H
 +#define _VSERVER_INODE_CMD_H
 @@ -0,0 +1,36 @@
 +#ifndef _VSERVER_INODE_CMD_H
 +#define _VSERVER_INODE_CMD_H
@@ -10367,9 +10373,9 @@ diff -NurpP --minimal linux-4.9.135/include/linux/vserver/inode_cmd.h linux-4.9.
 +#endif        /* CONFIG_COMPAT */
 +
 +#endif        /* _VSERVER_INODE_CMD_H */
 +#endif        /* CONFIG_COMPAT */
 +
 +#endif        /* _VSERVER_INODE_CMD_H */
-diff -NurpP --minimal linux-4.9.135/include/linux/vserver/limit.h linux-4.9.135-vs2.3.9.8/include/linux/vserver/limit.h
---- linux-4.9.135/include/linux/vserver/limit.h        1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/linux/vserver/limit.h      2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/linux/vserver/limit.h linux-4.9/include/linux/vserver/limit.h
+--- linux-4.9/include/linux/vserver/limit.h    1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/include/linux/vserver/limit.h    2021-02-24 15:47:45.097743096 +0100
 @@ -0,0 +1,67 @@
 +#ifndef _VSERVER_LIMIT_H
 +#define _VSERVER_LIMIT_H
 @@ -0,0 +1,67 @@
 +#ifndef _VSERVER_LIMIT_H
 +#define _VSERVER_LIMIT_H
@@ -10438,9 +10444,9 @@ diff -NurpP --minimal linux-4.9.135/include/linux/vserver/limit.h linux-4.9.135-
 +#define NUM_LIMITS    24
 +
 +#endif        /* _VSERVER_LIMIT_H */
 +#define NUM_LIMITS    24
 +
 +#endif        /* _VSERVER_LIMIT_H */
-diff -NurpP --minimal linux-4.9.135/include/linux/vserver/limit_cmd.h linux-4.9.135-vs2.3.9.8/include/linux/vserver/limit_cmd.h
---- linux-4.9.135/include/linux/vserver/limit_cmd.h    1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/linux/vserver/limit_cmd.h  2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/linux/vserver/limit_cmd.h linux-4.9/include/linux/vserver/limit_cmd.h
+--- linux-4.9/include/linux/vserver/limit_cmd.h        1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/include/linux/vserver/limit_cmd.h        2021-02-24 15:47:45.097743096 +0100
 @@ -0,0 +1,35 @@
 +#ifndef _VSERVER_LIMIT_CMD_H
 +#define _VSERVER_LIMIT_CMD_H
 @@ -0,0 +1,35 @@
 +#ifndef _VSERVER_LIMIT_CMD_H
 +#define _VSERVER_LIMIT_CMD_H
@@ -10477,9 +10483,9 @@ diff -NurpP --minimal linux-4.9.135/include/linux/vserver/limit_cmd.h linux-4.9.
 +#endif        /* CONFIG_IA32_EMULATION */
 +
 +#endif        /* _VSERVER_LIMIT_CMD_H */
 +#endif        /* CONFIG_IA32_EMULATION */
 +
 +#endif        /* _VSERVER_LIMIT_CMD_H */
-diff -NurpP --minimal linux-4.9.135/include/linux/vserver/limit_def.h linux-4.9.135-vs2.3.9.8/include/linux/vserver/limit_def.h
---- linux-4.9.135/include/linux/vserver/limit_def.h    1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/linux/vserver/limit_def.h  2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/linux/vserver/limit_def.h linux-4.9/include/linux/vserver/limit_def.h
+--- linux-4.9/include/linux/vserver/limit_def.h        1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/include/linux/vserver/limit_def.h        2021-02-24 15:47:45.097743096 +0100
 @@ -0,0 +1,47 @@
 +#ifndef _VSERVER_LIMIT_DEF_H
 +#define _VSERVER_LIMIT_DEF_H
 @@ -0,0 +1,47 @@
 +#ifndef _VSERVER_LIMIT_DEF_H
 +#define _VSERVER_LIMIT_DEF_H
@@ -10528,9 +10534,9 @@ diff -NurpP --minimal linux-4.9.135/include/linux/vserver/limit_def.h linux-4.9.
 +#endif
 +
 +#endif        /* _VSERVER_LIMIT_DEF_H */
 +#endif
 +
 +#endif        /* _VSERVER_LIMIT_DEF_H */
-diff -NurpP --minimal linux-4.9.135/include/linux/vserver/limit_int.h linux-4.9.135-vs2.3.9.8/include/linux/vserver/limit_int.h
---- linux-4.9.135/include/linux/vserver/limit_int.h    1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/linux/vserver/limit_int.h  2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/linux/vserver/limit_int.h linux-4.9/include/linux/vserver/limit_int.h
+--- linux-4.9/include/linux/vserver/limit_int.h        1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/include/linux/vserver/limit_int.h        2021-02-24 15:47:45.097743096 +0100
 @@ -0,0 +1,193 @@
 +#ifndef _VSERVER_LIMIT_INT_H
 +#define _VSERVER_LIMIT_INT_H
 @@ -0,0 +1,193 @@
 +#ifndef _VSERVER_LIMIT_INT_H
 +#define _VSERVER_LIMIT_INT_H
@@ -10725,9 +10731,9 @@ diff -NurpP --minimal linux-4.9.135/include/linux/vserver/limit_int.h linux-4.9.
 +
 +
 +#endif        /* _VSERVER_LIMIT_INT_H */
 +
 +
 +#endif        /* _VSERVER_LIMIT_INT_H */
-diff -NurpP --minimal linux-4.9.135/include/linux/vserver/monitor.h linux-4.9.135-vs2.3.9.8/include/linux/vserver/monitor.h
---- linux-4.9.135/include/linux/vserver/monitor.h      1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/linux/vserver/monitor.h    2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/linux/vserver/monitor.h linux-4.9/include/linux/vserver/monitor.h
+--- linux-4.9/include/linux/vserver/monitor.h  1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/include/linux/vserver/monitor.h  2021-02-24 15:47:45.097743096 +0100
 @@ -0,0 +1,6 @@
 +#ifndef _VSERVER_MONITOR_H
 +#define _VSERVER_MONITOR_H
 @@ -0,0 +1,6 @@
 +#ifndef _VSERVER_MONITOR_H
 +#define _VSERVER_MONITOR_H
@@ -10735,9 +10741,9 @@ diff -NurpP --minimal linux-4.9.135/include/linux/vserver/monitor.h linux-4.9.13
 +#include <uapi/vserver/monitor.h>
 +
 +#endif /* _VSERVER_MONITOR_H */
 +#include <uapi/vserver/monitor.h>
 +
 +#endif /* _VSERVER_MONITOR_H */
-diff -NurpP --minimal linux-4.9.135/include/linux/vserver/network.h linux-4.9.135-vs2.3.9.8/include/linux/vserver/network.h
---- linux-4.9.135/include/linux/vserver/network.h      1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/linux/vserver/network.h    2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/linux/vserver/network.h linux-4.9/include/linux/vserver/network.h
+--- linux-4.9/include/linux/vserver/network.h  1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/include/linux/vserver/network.h  2021-02-24 15:47:45.097743096 +0100
 @@ -0,0 +1,76 @@
 +#ifndef _VSERVER_NETWORK_H
 +#define _VSERVER_NETWORK_H
 @@ -0,0 +1,76 @@
 +#ifndef _VSERVER_NETWORK_H
 +#define _VSERVER_NETWORK_H
@@ -10815,9 +10821,9 @@ diff -NurpP --minimal linux-4.9.135/include/linux/vserver/network.h linux-4.9.13
 +#endif
 +
 +#endif        /* _VSERVER_NETWORK_H */
 +#endif
 +
 +#endif        /* _VSERVER_NETWORK_H */
-diff -NurpP --minimal linux-4.9.135/include/linux/vserver/network_cmd.h linux-4.9.135-vs2.3.9.8/include/linux/vserver/network_cmd.h
---- linux-4.9.135/include/linux/vserver/network_cmd.h  1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/linux/vserver/network_cmd.h        2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/linux/vserver/network_cmd.h linux-4.9/include/linux/vserver/network_cmd.h
+--- linux-4.9/include/linux/vserver/network_cmd.h      1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/include/linux/vserver/network_cmd.h      2021-02-24 15:47:45.097743096 +0100
 @@ -0,0 +1,37 @@
 +#ifndef _VSERVER_NETWORK_CMD_H
 +#define _VSERVER_NETWORK_CMD_H
 @@ -0,0 +1,37 @@
 +#ifndef _VSERVER_NETWORK_CMD_H
 +#define _VSERVER_NETWORK_CMD_H
@@ -10856,9 +10862,9 @@ diff -NurpP --minimal linux-4.9.135/include/linux/vserver/network_cmd.h linux-4.
 +extern int vc_set_ncaps(struct nx_info *, void __user *);
 +
 +#endif        /* _VSERVER_CONTEXT_CMD_H */
 +extern int vc_set_ncaps(struct nx_info *, void __user *);
 +
 +#endif        /* _VSERVER_CONTEXT_CMD_H */
-diff -NurpP --minimal linux-4.9.135/include/linux/vserver/percpu.h linux-4.9.135-vs2.3.9.8/include/linux/vserver/percpu.h
---- linux-4.9.135/include/linux/vserver/percpu.h       1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/linux/vserver/percpu.h     2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/linux/vserver/percpu.h linux-4.9/include/linux/vserver/percpu.h
+--- linux-4.9/include/linux/vserver/percpu.h   1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/include/linux/vserver/percpu.h   2021-02-24 15:47:45.097743096 +0100
 @@ -0,0 +1,14 @@
 +#ifndef _VSERVER_PERCPU_H
 +#define _VSERVER_PERCPU_H
 @@ -0,0 +1,14 @@
 +#ifndef _VSERVER_PERCPU_H
 +#define _VSERVER_PERCPU_H
@@ -10874,9 +10880,9 @@ diff -NurpP --minimal linux-4.9.135/include/linux/vserver/percpu.h linux-4.9.135
 +#define       PERCPU_PERCTX   (sizeof(struct _vx_percpu))
 +
 +#endif        /* _VSERVER_PERCPU_H */
 +#define       PERCPU_PERCTX   (sizeof(struct _vx_percpu))
 +
 +#endif        /* _VSERVER_PERCPU_H */
-diff -NurpP --minimal linux-4.9.135/include/linux/vserver/pid.h linux-4.9.135-vs2.3.9.8/include/linux/vserver/pid.h
---- linux-4.9.135/include/linux/vserver/pid.h  1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/linux/vserver/pid.h        2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/linux/vserver/pid.h linux-4.9/include/linux/vserver/pid.h
+--- linux-4.9/include/linux/vserver/pid.h      1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/include/linux/vserver/pid.h      2021-02-24 15:47:45.097743096 +0100
 @@ -0,0 +1,51 @@
 +#ifndef _VSERVER_PID_H
 +#define _VSERVER_PID_H
 @@ -0,0 +1,51 @@
 +#ifndef _VSERVER_PID_H
 +#define _VSERVER_PID_H
@@ -10929,9 +10935,9 @@ diff -NurpP --minimal linux-4.9.135/include/linux/vserver/pid.h linux-4.9.135-vs
 +}
 +
 +#endif
 +}
 +
 +#endif
-diff -NurpP --minimal linux-4.9.135/include/linux/vserver/sched.h linux-4.9.135-vs2.3.9.8/include/linux/vserver/sched.h
---- linux-4.9.135/include/linux/vserver/sched.h        1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/linux/vserver/sched.h      2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/linux/vserver/sched.h linux-4.9/include/linux/vserver/sched.h
+--- linux-4.9/include/linux/vserver/sched.h    1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/include/linux/vserver/sched.h    2021-02-24 15:47:45.097743096 +0100
 @@ -0,0 +1,23 @@
 +#ifndef _VSERVER_SCHED_H
 +#define _VSERVER_SCHED_H
 @@ -0,0 +1,23 @@
 +#ifndef _VSERVER_SCHED_H
 +#define _VSERVER_SCHED_H
@@ -10956,9 +10962,9 @@ diff -NurpP --minimal linux-4.9.135/include/linux/vserver/sched.h linux-4.9.135-
 +#else /* _VSERVER_SCHED_H */
 +#warning duplicate inclusion
 +#endif        /* _VSERVER_SCHED_H */
 +#else /* _VSERVER_SCHED_H */
 +#warning duplicate inclusion
 +#endif        /* _VSERVER_SCHED_H */
-diff -NurpP --minimal linux-4.9.135/include/linux/vserver/sched_cmd.h linux-4.9.135-vs2.3.9.8/include/linux/vserver/sched_cmd.h
---- linux-4.9.135/include/linux/vserver/sched_cmd.h    1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/linux/vserver/sched_cmd.h  2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/linux/vserver/sched_cmd.h linux-4.9/include/linux/vserver/sched_cmd.h
+--- linux-4.9/include/linux/vserver/sched_cmd.h        1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/include/linux/vserver/sched_cmd.h        2021-02-24 15:47:45.097743096 +0100
 @@ -0,0 +1,11 @@
 +#ifndef _VSERVER_SCHED_CMD_H
 +#define _VSERVER_SCHED_CMD_H
 @@ -0,0 +1,11 @@
 +#ifndef _VSERVER_SCHED_CMD_H
 +#define _VSERVER_SCHED_CMD_H
@@ -10971,9 +10977,9 @@ diff -NurpP --minimal linux-4.9.135/include/linux/vserver/sched_cmd.h linux-4.9.
 +extern int vc_get_prio_bias(struct vx_info *, void __user *);
 +
 +#endif        /* _VSERVER_SCHED_CMD_H */
 +extern int vc_get_prio_bias(struct vx_info *, void __user *);
 +
 +#endif        /* _VSERVER_SCHED_CMD_H */
-diff -NurpP --minimal linux-4.9.135/include/linux/vserver/sched_def.h linux-4.9.135-vs2.3.9.8/include/linux/vserver/sched_def.h
---- linux-4.9.135/include/linux/vserver/sched_def.h    1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/linux/vserver/sched_def.h  2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/linux/vserver/sched_def.h linux-4.9/include/linux/vserver/sched_def.h
+--- linux-4.9/include/linux/vserver/sched_def.h        1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/include/linux/vserver/sched_def.h        2021-02-24 15:47:45.097743096 +0100
 @@ -0,0 +1,38 @@
 +#ifndef _VSERVER_SCHED_DEF_H
 +#define _VSERVER_SCHED_DEF_H
 @@ -0,0 +1,38 @@
 +#ifndef _VSERVER_SCHED_DEF_H
 +#define _VSERVER_SCHED_DEF_H
@@ -11013,9 +11019,9 @@ diff -NurpP --minimal linux-4.9.135/include/linux/vserver/sched_def.h linux-4.9.
 +#endif
 +
 +#endif        /* _VSERVER_SCHED_DEF_H */
 +#endif
 +
 +#endif        /* _VSERVER_SCHED_DEF_H */
-diff -NurpP --minimal linux-4.9.135/include/linux/vserver/signal.h linux-4.9.135-vs2.3.9.8/include/linux/vserver/signal.h
---- linux-4.9.135/include/linux/vserver/signal.h       1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/linux/vserver/signal.h     2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/linux/vserver/signal.h linux-4.9/include/linux/vserver/signal.h
+--- linux-4.9/include/linux/vserver/signal.h   1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/include/linux/vserver/signal.h   2021-02-24 15:47:45.097743096 +0100
 @@ -0,0 +1,14 @@
 +#ifndef _VSERVER_SIGNAL_H
 +#define _VSERVER_SIGNAL_H
 @@ -0,0 +1,14 @@
 +#ifndef _VSERVER_SIGNAL_H
 +#define _VSERVER_SIGNAL_H
@@ -11031,9 +11037,9 @@ diff -NurpP --minimal linux-4.9.135/include/linux/vserver/signal.h linux-4.9.135
 +#else /* _VSERVER_SIGNAL_H */
 +#warning duplicate inclusion
 +#endif        /* _VSERVER_SIGNAL_H */
 +#else /* _VSERVER_SIGNAL_H */
 +#warning duplicate inclusion
 +#endif        /* _VSERVER_SIGNAL_H */
-diff -NurpP --minimal linux-4.9.135/include/linux/vserver/signal_cmd.h linux-4.9.135-vs2.3.9.8/include/linux/vserver/signal_cmd.h
---- linux-4.9.135/include/linux/vserver/signal_cmd.h   1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/linux/vserver/signal_cmd.h 2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/linux/vserver/signal_cmd.h linux-4.9/include/linux/vserver/signal_cmd.h
+--- linux-4.9/include/linux/vserver/signal_cmd.h       1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/include/linux/vserver/signal_cmd.h       2021-02-24 15:47:45.097743096 +0100
 @@ -0,0 +1,14 @@
 +#ifndef _VSERVER_SIGNAL_CMD_H
 +#define _VSERVER_SIGNAL_CMD_H
 @@ -0,0 +1,14 @@
 +#ifndef _VSERVER_SIGNAL_CMD_H
 +#define _VSERVER_SIGNAL_CMD_H
@@ -11049,9 +11055,9 @@ diff -NurpP --minimal linux-4.9.135/include/linux/vserver/signal_cmd.h linux-4.9
 +extern int vc_set_pflags(uint32_t pid, void __user *);
 +
 +#endif        /* _VSERVER_SIGNAL_CMD_H */
 +extern int vc_set_pflags(uint32_t pid, void __user *);
 +
 +#endif        /* _VSERVER_SIGNAL_CMD_H */
-diff -NurpP --minimal linux-4.9.135/include/linux/vserver/space.h linux-4.9.135-vs2.3.9.8/include/linux/vserver/space.h
---- linux-4.9.135/include/linux/vserver/space.h        1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/linux/vserver/space.h      2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/linux/vserver/space.h linux-4.9/include/linux/vserver/space.h
+--- linux-4.9/include/linux/vserver/space.h    1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/include/linux/vserver/space.h    2021-02-24 15:47:45.097743096 +0100
 @@ -0,0 +1,12 @@
 +#ifndef _VSERVER_SPACE_H
 +#define _VSERVER_SPACE_H
 @@ -0,0 +1,12 @@
 +#ifndef _VSERVER_SPACE_H
 +#define _VSERVER_SPACE_H
@@ -11065,9 +11071,9 @@ diff -NurpP --minimal linux-4.9.135/include/linux/vserver/space.h linux-4.9.135-
 +#else /* _VSERVER_SPACE_H */
 +#warning duplicate inclusion
 +#endif        /* _VSERVER_SPACE_H */
 +#else /* _VSERVER_SPACE_H */
 +#warning duplicate inclusion
 +#endif        /* _VSERVER_SPACE_H */
-diff -NurpP --minimal linux-4.9.135/include/linux/vserver/space_cmd.h linux-4.9.135-vs2.3.9.8/include/linux/vserver/space_cmd.h
---- linux-4.9.135/include/linux/vserver/space_cmd.h    1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/linux/vserver/space_cmd.h  2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/linux/vserver/space_cmd.h linux-4.9/include/linux/vserver/space_cmd.h
+--- linux-4.9/include/linux/vserver/space_cmd.h        1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/include/linux/vserver/space_cmd.h        2021-02-24 15:47:45.097743096 +0100
 @@ -0,0 +1,13 @@
 +#ifndef _VSERVER_SPACE_CMD_H
 +#define _VSERVER_SPACE_CMD_H
 @@ -0,0 +1,13 @@
 +#ifndef _VSERVER_SPACE_CMD_H
 +#define _VSERVER_SPACE_CMD_H
@@ -11082,9 +11088,9 @@ diff -NurpP --minimal linux-4.9.135/include/linux/vserver/space_cmd.h linux-4.9.
 +extern int vc_get_space_mask(void __user *, int);
 +
 +#endif        /* _VSERVER_SPACE_CMD_H */
 +extern int vc_get_space_mask(void __user *, int);
 +
 +#endif        /* _VSERVER_SPACE_CMD_H */
-diff -NurpP --minimal linux-4.9.135/include/linux/vserver/switch.h linux-4.9.135-vs2.3.9.8/include/linux/vserver/switch.h
---- linux-4.9.135/include/linux/vserver/switch.h       1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/linux/vserver/switch.h     2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/linux/vserver/switch.h linux-4.9/include/linux/vserver/switch.h
+--- linux-4.9/include/linux/vserver/switch.h   1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/include/linux/vserver/switch.h   2021-02-24 15:47:45.097743096 +0100
 @@ -0,0 +1,8 @@
 +#ifndef _VSERVER_SWITCH_H
 +#define _VSERVER_SWITCH_H
 @@ -0,0 +1,8 @@
 +#ifndef _VSERVER_SWITCH_H
 +#define _VSERVER_SWITCH_H
@@ -11094,9 +11100,9 @@ diff -NurpP --minimal linux-4.9.135/include/linux/vserver/switch.h linux-4.9.135
 +#include <uapi/vserver/switch.h>
 +
 +#endif        /* _VSERVER_SWITCH_H */
 +#include <uapi/vserver/switch.h>
 +
 +#endif        /* _VSERVER_SWITCH_H */
-diff -NurpP --minimal linux-4.9.135/include/linux/vserver/tag.h linux-4.9.135-vs2.3.9.8/include/linux/vserver/tag.h
---- linux-4.9.135/include/linux/vserver/tag.h  1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/linux/vserver/tag.h        2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/linux/vserver/tag.h linux-4.9/include/linux/vserver/tag.h
+--- linux-4.9/include/linux/vserver/tag.h      1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/include/linux/vserver/tag.h      2021-02-24 15:47:45.097743096 +0100
 @@ -0,0 +1,160 @@
 +#ifndef _DX_TAG_H
 +#define _DX_TAG_H
 @@ -0,0 +1,160 @@
 +#ifndef _DX_TAG_H
 +#define _DX_TAG_H
@@ -11258,9 +11264,9 @@ diff -NurpP --minimal linux-4.9.135/include/linux/vserver/tag.h linux-4.9.135-vs
 +#endif
 +
 +#endif /* _DX_TAG_H */
 +#endif
 +
 +#endif /* _DX_TAG_H */
-diff -NurpP --minimal linux-4.9.135/include/linux/vserver/tag_cmd.h linux-4.9.135-vs2.3.9.8/include/linux/vserver/tag_cmd.h
---- linux-4.9.135/include/linux/vserver/tag_cmd.h      1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/linux/vserver/tag_cmd.h    2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/linux/vserver/tag_cmd.h linux-4.9/include/linux/vserver/tag_cmd.h
+--- linux-4.9/include/linux/vserver/tag_cmd.h  1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/include/linux/vserver/tag_cmd.h  2021-02-24 15:47:45.097743096 +0100
 @@ -0,0 +1,10 @@
 +#ifndef _VSERVER_TAG_CMD_H
 +#define _VSERVER_TAG_CMD_H
 @@ -0,0 +1,10 @@
 +#ifndef _VSERVER_TAG_CMD_H
 +#define _VSERVER_TAG_CMD_H
@@ -11272,9 +11278,9 @@ diff -NurpP --minimal linux-4.9.135/include/linux/vserver/tag_cmd.h linux-4.9.13
 +extern int vc_tag_migrate(uint32_t);
 +
 +#endif        /* _VSERVER_TAG_CMD_H */
 +extern int vc_tag_migrate(uint32_t);
 +
 +#endif        /* _VSERVER_TAG_CMD_H */
-diff -NurpP --minimal linux-4.9.135/include/net/addrconf.h linux-4.9.135-vs2.3.9.8/include/net/addrconf.h
---- linux-4.9.135/include/net/addrconf.h       2018-10-20 10:39:20.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/net/addrconf.h     2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/net/addrconf.h linux-4.9/include/net/addrconf.h
+--- linux-4.9/include/net/addrconf.h   2021-02-24 15:47:32.424013281 +0100
++++ linux-4.9/include/net/addrconf.h   2021-02-24 15:47:45.101076533 +0100
 @@ -85,7 +85,7 @@ struct inet6_ifaddr *ipv6_get_ifaddr(str
  
  int ipv6_dev_get_saddr(struct net *net, const struct net_device *dev,
 @@ -85,7 +85,7 @@ struct inet6_ifaddr *ipv6_get_ifaddr(str
  
  int ipv6_dev_get_saddr(struct net *net, const struct net_device *dev,
@@ -11284,9 +11290,9 @@ diff -NurpP --minimal linux-4.9.135/include/net/addrconf.h linux-4.9.135-vs2.3.9
  int __ipv6_get_lladdr(struct inet6_dev *idev, struct in6_addr *addr,
                      u32 banned_flags);
  int ipv6_get_lladdr(struct net_device *dev, struct in6_addr *addr,
  int __ipv6_get_lladdr(struct inet6_dev *idev, struct in6_addr *addr,
                      u32 banned_flags);
  int ipv6_get_lladdr(struct net_device *dev, struct in6_addr *addr,
-diff -NurpP --minimal linux-4.9.135/include/net/af_unix.h linux-4.9.135-vs2.3.9.8/include/net/af_unix.h
---- linux-4.9.135/include/net/af_unix.h        2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/net/af_unix.h      2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/net/af_unix.h linux-4.9/include/net/af_unix.h
+--- linux-4.9/include/net/af_unix.h    2016-12-11 20:17:54.000000000 +0100
++++ linux-4.9/include/net/af_unix.h    2021-02-24 15:47:45.101076533 +0100
 @@ -4,6 +4,7 @@
  #include <linux/socket.h>
  #include <linux/un.h>
 @@ -4,6 +4,7 @@
  #include <linux/socket.h>
  #include <linux/un.h>
@@ -11295,9 +11301,9 @@ diff -NurpP --minimal linux-4.9.135/include/net/af_unix.h linux-4.9.135-vs2.3.9.
  #include <net/sock.h>
  
  void unix_inflight(struct user_struct *user, struct file *fp);
  #include <net/sock.h>
  
  void unix_inflight(struct user_struct *user, struct file *fp);
-diff -NurpP --minimal linux-4.9.135/include/net/inet_timewait_sock.h linux-4.9.135-vs2.3.9.8/include/net/inet_timewait_sock.h
---- linux-4.9.135/include/net/inet_timewait_sock.h     2018-10-20 10:39:20.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/net/inet_timewait_sock.h   2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/net/inet_timewait_sock.h linux-4.9/include/net/inet_timewait_sock.h
+--- linux-4.9/include/net/inet_timewait_sock.h 2021-02-24 15:47:32.427346719 +0100
++++ linux-4.9/include/net/inet_timewait_sock.h 2021-02-24 15:47:45.101076533 +0100
 @@ -72,6 +72,10 @@ struct inet_timewait_sock {
  #define tw_num                        __tw_common.skc_num
  #define tw_cookie             __tw_common.skc_cookie
 @@ -72,6 +72,10 @@ struct inet_timewait_sock {
  #define tw_num                        __tw_common.skc_num
  #define tw_cookie             __tw_common.skc_cookie
@@ -11309,9 +11315,9 @@ diff -NurpP --minimal linux-4.9.135/include/net/inet_timewait_sock.h linux-4.9.1
  
        int                     tw_timeout;
        volatile unsigned char  tw_substate;
  
        int                     tw_timeout;
        volatile unsigned char  tw_substate;
-diff -NurpP --minimal linux-4.9.135/include/net/ip6_route.h linux-4.9.135-vs2.3.9.8/include/net/ip6_route.h
---- linux-4.9.135/include/net/ip6_route.h      2018-10-20 10:39:20.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/net/ip6_route.h    2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/net/ip6_route.h linux-4.9/include/net/ip6_route.h
+--- linux-4.9/include/net/ip6_route.h  2021-02-24 15:47:32.427346719 +0100
++++ linux-4.9/include/net/ip6_route.h  2021-02-24 15:47:45.101076533 +0100
 @@ -26,6 +26,7 @@ struct route_info {
  #include <linux/ip.h>
  #include <linux/ipv6.h>
 @@ -26,6 +26,7 @@ struct route_info {
  #include <linux/ip.h>
  #include <linux/ipv6.h>
@@ -11343,9 +11349,9 @@ diff -NurpP --minimal linux-4.9.135/include/net/ip6_route.h linux-4.9.135-vs2.3.
  
        return err;
  }
  
        return err;
  }
-diff -NurpP --minimal linux-4.9.135/include/net/route.h linux-4.9.135-vs2.3.9.8/include/net/route.h
---- linux-4.9.135/include/net/route.h  2018-10-20 10:39:20.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/net/route.h        2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/net/route.h linux-4.9/include/net/route.h
+--- linux-4.9/include/net/route.h      2021-02-24 15:47:32.434013594 +0100
++++ linux-4.9/include/net/route.h      2021-02-24 15:47:45.101076533 +0100
 @@ -226,6 +226,9 @@ static inline void ip_rt_put(struct rtab
        dst_release(&rt->dst);
  }
 @@ -226,6 +226,9 @@ static inline void ip_rt_put(struct rtab
        dst_release(&rt->dst);
  }
@@ -11393,9 +11399,9 @@ diff -NurpP --minimal linux-4.9.135/include/net/route.h linux-4.9.135-vs2.3.9.8/
                rt = __ip_route_output_key(net, fl4);
                if (IS_ERR(rt))
                        return rt;
                rt = __ip_route_output_key(net, fl4);
                if (IS_ERR(rt))
                        return rt;
-diff -NurpP --minimal linux-4.9.135/include/net/sock.h linux-4.9.135-vs2.3.9.8/include/net/sock.h
---- linux-4.9.135/include/net/sock.h   2018-10-20 10:39:20.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/net/sock.h 2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/net/sock.h linux-4.9/include/net/sock.h
+--- linux-4.9/include/net/sock.h       2021-02-24 15:47:32.434013594 +0100
++++ linux-4.9/include/net/sock.h       2021-02-24 15:47:45.101076533 +0100
 @@ -187,6 +187,10 @@ struct sock_common {
        struct in6_addr         skc_v6_daddr;
        struct in6_addr         skc_v6_rcv_saddr;
 @@ -187,6 +187,10 @@ struct sock_common {
        struct in6_addr         skc_v6_daddr;
        struct in6_addr         skc_v6_rcv_saddr;
@@ -11407,7 +11413,7 @@ diff -NurpP --minimal linux-4.9.135/include/net/sock.h linux-4.9.135-vs2.3.9.8/i
  
        atomic64_t              skc_cookie;
  
  
        atomic64_t              skc_cookie;
  
-@@ -336,8 +340,12 @@ struct sock {
+@@ -337,8 +341,12 @@ struct sock {
  #define sk_prot                       __sk_common.skc_prot
  #define sk_net                        __sk_common.skc_net
  #define sk_v6_daddr           __sk_common.skc_v6_daddr
  #define sk_prot                       __sk_common.skc_prot
  #define sk_net                        __sk_common.skc_net
  #define sk_v6_daddr           __sk_common.skc_v6_daddr
@@ -11421,18 +11427,18 @@ diff -NurpP --minimal linux-4.9.135/include/net/sock.h linux-4.9.135-vs2.3.9.8/i
  #define sk_incoming_cpu               __sk_common.skc_incoming_cpu
  #define sk_flags              __sk_common.skc_flags
  #define sk_rxhash             __sk_common.skc_rxhash
  #define sk_incoming_cpu               __sk_common.skc_incoming_cpu
  #define sk_flags              __sk_common.skc_flags
  #define sk_rxhash             __sk_common.skc_rxhash
-diff -NurpP --minimal linux-4.9.135/include/uapi/Kbuild linux-4.9.135-vs2.3.9.8/include/uapi/Kbuild
---- linux-4.9.135/include/uapi/Kbuild  2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/uapi/Kbuild        2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/uapi/Kbuild linux-4.9/include/uapi/Kbuild
+--- linux-4.9/include/uapi/Kbuild      2016-12-11 20:17:54.000000000 +0100
++++ linux-4.9/include/uapi/Kbuild      2021-02-24 15:47:45.101076533 +0100
 @@ -13,3 +13,4 @@ header-y += drm/
  header-y += xen/
  header-y += scsi/
  header-y += misc/
 +header-y += vserver/
 @@ -13,3 +13,4 @@ header-y += drm/
  header-y += xen/
  header-y += scsi/
  header-y += misc/
 +header-y += vserver/
-diff -NurpP --minimal linux-4.9.135/include/uapi/linux/btrfs_tree.h linux-4.9.135-vs2.3.9.8/include/uapi/linux/btrfs_tree.h
---- linux-4.9.135/include/uapi/linux/btrfs_tree.h      2018-10-20 10:39:20.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/uapi/linux/btrfs_tree.h    2018-10-20 04:58:14.000000000 +0000
-@@ -564,11 +564,14 @@ struct btrfs_inode_item {
+diff -urNp -x '*.orig' linux-4.9/include/uapi/linux/btrfs_tree.h linux-4.9/include/uapi/linux/btrfs_tree.h
+--- linux-4.9/include/uapi/linux/btrfs_tree.h  2021-02-24 15:47:32.444013907 +0100
++++ linux-4.9/include/uapi/linux/btrfs_tree.h  2021-02-24 15:47:45.101076533 +0100
+@@ -566,11 +566,14 @@ struct btrfs_inode_item {
        /* modification sequence number for NFS */
        __le64 sequence;
  
        /* modification sequence number for NFS */
        __le64 sequence;
  
@@ -11448,9 +11454,9 @@ diff -NurpP --minimal linux-4.9.135/include/uapi/linux/btrfs_tree.h linux-4.9.13
        struct btrfs_timespec atime;
        struct btrfs_timespec ctime;
        struct btrfs_timespec mtime;
        struct btrfs_timespec atime;
        struct btrfs_timespec ctime;
        struct btrfs_timespec mtime;
-diff -NurpP --minimal linux-4.9.135/include/uapi/linux/capability.h linux-4.9.135-vs2.3.9.8/include/uapi/linux/capability.h
---- linux-4.9.135/include/uapi/linux/capability.h      2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/uapi/linux/capability.h    2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/uapi/linux/capability.h linux-4.9/include/uapi/linux/capability.h
+--- linux-4.9/include/uapi/linux/capability.h  2016-12-11 20:17:54.000000000 +0100
++++ linux-4.9/include/uapi/linux/capability.h  2021-02-24 15:47:45.101076533 +0100
 @@ -257,6 +257,7 @@ struct vfs_cap_data {
     arbitrary SCSI commands */
  /* Allow setting encryption key on loopback filesystem */
 @@ -257,6 +257,7 @@ struct vfs_cap_data {
     arbitrary SCSI commands */
  /* Allow setting encryption key on loopback filesystem */
@@ -11473,9 +11479,9 @@ diff -NurpP --minimal linux-4.9.135/include/uapi/linux/capability.h linux-4.9.13
  
  /*
   * Bit location of each capability (used by user-space library and kernel)
  
  /*
   * Bit location of each capability (used by user-space library and kernel)
-diff -NurpP --minimal linux-4.9.135/include/uapi/linux/fs.h linux-4.9.135-vs2.3.9.8/include/uapi/linux/fs.h
---- linux-4.9.135/include/uapi/linux/fs.h      2018-10-20 10:39:20.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/uapi/linux/fs.h    2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/uapi/linux/fs.h linux-4.9/include/uapi/linux/fs.h
+--- linux-4.9/include/uapi/linux/fs.h  2021-02-24 15:47:32.444013907 +0100
++++ linux-4.9/include/uapi/linux/fs.h  2021-02-24 15:47:45.101076533 +0100
 @@ -130,6 +130,9 @@ struct inodes_stat_t {
  #define MS_I_VERSION  (1<<23) /* Update inode I_version field */
  #define MS_STRICTATIME        (1<<24) /* Always perform atime updates */
 @@ -130,6 +130,9 @@ struct inodes_stat_t {
  #define MS_I_VERSION  (1<<23) /* Update inode I_version field */
  #define MS_STRICTATIME        (1<<24) /* Always perform atime updates */
@@ -11505,9 +11511,9 @@ diff -NurpP --minimal linux-4.9.135/include/uapi/linux/fs.h linux-4.9.135-vs2.3.
  
  #define SYNC_FILE_RANGE_WAIT_BEFORE   1
  #define SYNC_FILE_RANGE_WRITE         2
  
  #define SYNC_FILE_RANGE_WAIT_BEFORE   1
  #define SYNC_FILE_RANGE_WRITE         2
-diff -NurpP --minimal linux-4.9.135/include/uapi/linux/gfs2_ondisk.h linux-4.9.135-vs2.3.9.8/include/uapi/linux/gfs2_ondisk.h
---- linux-4.9.135/include/uapi/linux/gfs2_ondisk.h     2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/uapi/linux/gfs2_ondisk.h   2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/uapi/linux/gfs2_ondisk.h linux-4.9/include/uapi/linux/gfs2_ondisk.h
+--- linux-4.9/include/uapi/linux/gfs2_ondisk.h 2016-12-11 20:17:54.000000000 +0100
++++ linux-4.9/include/uapi/linux/gfs2_ondisk.h 2021-02-24 15:47:45.104409971 +0100
 @@ -225,6 +225,9 @@ enum {
        gfs2fl_Sync             = 8,
        gfs2fl_System           = 9,
 @@ -225,6 +225,9 @@ enum {
        gfs2fl_Sync             = 8,
        gfs2fl_System           = 9,
@@ -11528,9 +11534,9 @@ diff -NurpP --minimal linux-4.9.135/include/uapi/linux/gfs2_ondisk.h linux-4.9.1
  #define GFS2_DIF_TRUNC_IN_PROG                0x20000000 /* New in gfs2 */
  #define GFS2_DIF_INHERIT_DIRECTIO     0x40000000 /* only in gfs1 */
  #define GFS2_DIF_INHERIT_JDATA                0x80000000
  #define GFS2_DIF_TRUNC_IN_PROG                0x20000000 /* New in gfs2 */
  #define GFS2_DIF_INHERIT_DIRECTIO     0x40000000 /* only in gfs1 */
  #define GFS2_DIF_INHERIT_JDATA                0x80000000
-diff -NurpP --minimal linux-4.9.135/include/uapi/linux/if_tun.h linux-4.9.135-vs2.3.9.8/include/uapi/linux/if_tun.h
---- linux-4.9.135/include/uapi/linux/if_tun.h  2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/uapi/linux/if_tun.h        2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/uapi/linux/if_tun.h linux-4.9/include/uapi/linux/if_tun.h
+--- linux-4.9/include/uapi/linux/if_tun.h      2016-12-11 20:17:54.000000000 +0100
++++ linux-4.9/include/uapi/linux/if_tun.h      2021-02-24 15:47:45.104409971 +0100
 @@ -56,6 +56,7 @@
   */
  #define TUNSETVNETBE _IOW('T', 222, int)
 @@ -56,6 +56,7 @@
   */
  #define TUNSETVNETBE _IOW('T', 222, int)
@@ -11539,9 +11545,9 @@ diff -NurpP --minimal linux-4.9.135/include/uapi/linux/if_tun.h linux-4.9.135-vs
  
  /* TUNSETIFF ifr flags */
  #define IFF_TUN               0x0001
  
  /* TUNSETIFF ifr flags */
  #define IFF_TUN               0x0001
-diff -NurpP --minimal linux-4.9.135/include/uapi/linux/major.h linux-4.9.135-vs2.3.9.8/include/uapi/linux/major.h
---- linux-4.9.135/include/uapi/linux/major.h   2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/uapi/linux/major.h 2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/uapi/linux/major.h linux-4.9/include/uapi/linux/major.h
+--- linux-4.9/include/uapi/linux/major.h       2016-12-11 20:17:54.000000000 +0100
++++ linux-4.9/include/uapi/linux/major.h       2021-02-24 15:47:45.104409971 +0100
 @@ -15,6 +15,7 @@
  #define HD_MAJOR              IDE0_MAJOR
  #define PTY_SLAVE_MAJOR               3
 @@ -15,6 +15,7 @@
  #define HD_MAJOR              IDE0_MAJOR
  #define PTY_SLAVE_MAJOR               3
@@ -11550,9 +11556,9 @@ diff -NurpP --minimal linux-4.9.135/include/uapi/linux/major.h linux-4.9.135-vs2
  #define TTYAUX_MAJOR          5
  #define LP_MAJOR              6
  #define VCS_MAJOR             7
  #define TTYAUX_MAJOR          5
  #define LP_MAJOR              6
  #define VCS_MAJOR             7
-diff -NurpP --minimal linux-4.9.135/include/uapi/linux/nfs_mount.h linux-4.9.135-vs2.3.9.8/include/uapi/linux/nfs_mount.h
---- linux-4.9.135/include/uapi/linux/nfs_mount.h       2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/uapi/linux/nfs_mount.h     2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/uapi/linux/nfs_mount.h linux-4.9/include/uapi/linux/nfs_mount.h
+--- linux-4.9/include/uapi/linux/nfs_mount.h   2016-12-11 20:17:54.000000000 +0100
++++ linux-4.9/include/uapi/linux/nfs_mount.h   2021-02-24 15:47:45.104409971 +0100
 @@ -63,7 +63,8 @@ struct nfs_mount_data {
  #define NFS_MOUNT_SECFLAVOUR  0x2000  /* 5 non-text parsed mount data only */
  #define NFS_MOUNT_NORDIRPLUS  0x4000  /* 5 */
 @@ -63,7 +63,8 @@ struct nfs_mount_data {
  #define NFS_MOUNT_SECFLAVOUR  0x2000  /* 5 non-text parsed mount data only */
  #define NFS_MOUNT_NORDIRPLUS  0x4000  /* 5 */
@@ -11563,9 +11569,9 @@ diff -NurpP --minimal linux-4.9.135/include/uapi/linux/nfs_mount.h linux-4.9.135
  
  /* The following are for internal use only */
  #define NFS_MOUNT_LOOKUP_CACHE_NONEG  0x10000
  
  /* The following are for internal use only */
  #define NFS_MOUNT_LOOKUP_CACHE_NONEG  0x10000
-diff -NurpP --minimal linux-4.9.135/include/uapi/linux/reboot.h linux-4.9.135-vs2.3.9.8/include/uapi/linux/reboot.h
---- linux-4.9.135/include/uapi/linux/reboot.h  2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/uapi/linux/reboot.h        2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/uapi/linux/reboot.h linux-4.9/include/uapi/linux/reboot.h
+--- linux-4.9/include/uapi/linux/reboot.h      2016-12-11 20:17:54.000000000 +0100
++++ linux-4.9/include/uapi/linux/reboot.h      2021-02-24 15:47:45.104409971 +0100
 @@ -33,7 +33,7 @@
  #define       LINUX_REBOOT_CMD_RESTART2       0xA1B2C3D4
  #define       LINUX_REBOOT_CMD_SW_SUSPEND     0xD000FCE2
 @@ -33,7 +33,7 @@
  #define       LINUX_REBOOT_CMD_RESTART2       0xA1B2C3D4
  #define       LINUX_REBOOT_CMD_SW_SUSPEND     0xD000FCE2
@@ -11575,9 +11581,9 @@ diff -NurpP --minimal linux-4.9.135/include/uapi/linux/reboot.h linux-4.9.135-vs
  
  
  #endif /* _UAPI_LINUX_REBOOT_H */
  
  
  #endif /* _UAPI_LINUX_REBOOT_H */
-diff -NurpP --minimal linux-4.9.135/include/uapi/linux/sysctl.h linux-4.9.135-vs2.3.9.8/include/uapi/linux/sysctl.h
---- linux-4.9.135/include/uapi/linux/sysctl.h  2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/uapi/linux/sysctl.h        2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/uapi/linux/sysctl.h linux-4.9/include/uapi/linux/sysctl.h
+--- linux-4.9/include/uapi/linux/sysctl.h      2021-02-24 15:47:32.450680782 +0100
++++ linux-4.9/include/uapi/linux/sysctl.h      2021-02-24 15:47:45.104409971 +0100
 @@ -58,6 +58,7 @@ enum
        CTL_ABI=9,              /* Binary emulation */
        CTL_CPU=10,             /* CPU stuff (speed scaling, etc) */
 @@ -58,6 +58,7 @@ enum
        CTL_ABI=9,              /* Binary emulation */
        CTL_CPU=10,             /* CPU stuff (speed scaling, etc) */
@@ -11594,9 +11600,9 @@ diff -NurpP --minimal linux-4.9.135/include/uapi/linux/sysctl.h linux-4.9.135-vs
  
        KERN_SPARC_REBOOT=21,   /* reboot command on Sparc */
        KERN_CTLALTDEL=22,      /* int: allow ctl-alt-del to reboot */
  
        KERN_SPARC_REBOOT=21,   /* reboot command on Sparc */
        KERN_CTLALTDEL=22,      /* int: allow ctl-alt-del to reboot */
-diff -NurpP --minimal linux-4.9.135/include/uapi/vserver/Kbuild linux-4.9.135-vs2.3.9.8/include/uapi/vserver/Kbuild
---- linux-4.9.135/include/uapi/vserver/Kbuild  1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/uapi/vserver/Kbuild        2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/uapi/vserver/Kbuild linux-4.9/include/uapi/vserver/Kbuild
+--- linux-4.9/include/uapi/vserver/Kbuild      1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/include/uapi/vserver/Kbuild      2021-02-24 15:47:45.104409971 +0100
 @@ -0,0 +1,9 @@
 +
 +header-y += context_cmd.h network_cmd.h space_cmd.h \
 @@ -0,0 +1,9 @@
 +
 +header-y += context_cmd.h network_cmd.h space_cmd.h \
@@ -11607,9 +11613,9 @@ diff -NurpP --minimal linux-4.9.135/include/uapi/vserver/Kbuild linux-4.9.135-vs
 +header-y += switch.h context.h network.h monitor.h \
 +      limit.h inode.h device.h
 +
 +header-y += switch.h context.h network.h monitor.h \
 +      limit.h inode.h device.h
 +
-diff -NurpP --minimal linux-4.9.135/include/uapi/vserver/cacct_cmd.h linux-4.9.135-vs2.3.9.8/include/uapi/vserver/cacct_cmd.h
---- linux-4.9.135/include/uapi/vserver/cacct_cmd.h     1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/uapi/vserver/cacct_cmd.h   2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/uapi/vserver/cacct_cmd.h linux-4.9/include/uapi/vserver/cacct_cmd.h
+--- linux-4.9/include/uapi/vserver/cacct_cmd.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/include/uapi/vserver/cacct_cmd.h 2021-02-24 15:47:45.104409971 +0100
 @@ -0,0 +1,15 @@
 +#ifndef _UAPI_VS_CACCT_CMD_H
 +#define _UAPI_VS_CACCT_CMD_H
 @@ -0,0 +1,15 @@
 +#ifndef _UAPI_VS_CACCT_CMD_H
 +#define _UAPI_VS_CACCT_CMD_H
@@ -11626,9 +11632,9 @@ diff -NurpP --minimal linux-4.9.135/include/uapi/vserver/cacct_cmd.h linux-4.9.1
 +};
 +
 +#endif /* _UAPI_VS_CACCT_CMD_H */
 +};
 +
 +#endif /* _UAPI_VS_CACCT_CMD_H */
-diff -NurpP --minimal linux-4.9.135/include/uapi/vserver/context.h linux-4.9.135-vs2.3.9.8/include/uapi/vserver/context.h
---- linux-4.9.135/include/uapi/vserver/context.h       1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/uapi/vserver/context.h     2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/uapi/vserver/context.h linux-4.9/include/uapi/vserver/context.h
+--- linux-4.9/include/uapi/vserver/context.h   1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/include/uapi/vserver/context.h   2021-02-24 15:47:45.104409971 +0100
 @@ -0,0 +1,81 @@
 +#ifndef _UAPI_VS_CONTEXT_H
 +#define _UAPI_VS_CONTEXT_H
 @@ -0,0 +1,81 @@
 +#ifndef _UAPI_VS_CONTEXT_H
 +#define _UAPI_VS_CONTEXT_H
@@ -11711,9 +11717,9 @@ diff -NurpP --minimal linux-4.9.135/include/uapi/vserver/context.h linux-4.9.135
 +#define VXC_NAMESPACE         0x02000000
 +
 +#endif /* _UAPI_VS_CONTEXT_H */
 +#define VXC_NAMESPACE         0x02000000
 +
 +#endif /* _UAPI_VS_CONTEXT_H */
-diff -NurpP --minimal linux-4.9.135/include/uapi/vserver/context_cmd.h linux-4.9.135-vs2.3.9.8/include/uapi/vserver/context_cmd.h
---- linux-4.9.135/include/uapi/vserver/context_cmd.h   1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/uapi/vserver/context_cmd.h 2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/uapi/vserver/context_cmd.h linux-4.9/include/uapi/vserver/context_cmd.h
+--- linux-4.9/include/uapi/vserver/context_cmd.h       1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/include/uapi/vserver/context_cmd.h       2021-02-24 15:47:45.104409971 +0100
 @@ -0,0 +1,115 @@
 +#ifndef _UAPI_VS_CONTEXT_CMD_H
 +#define _UAPI_VS_CONTEXT_CMD_H
 @@ -0,0 +1,115 @@
 +#ifndef _UAPI_VS_CONTEXT_CMD_H
 +#define _UAPI_VS_CONTEXT_CMD_H
@@ -11830,9 +11836,9 @@ diff -NurpP --minimal linux-4.9.135/include/uapi/vserver/context_cmd.h linux-4.9
 +};
 +
 +#endif /* _UAPI_VS_CONTEXT_CMD_H */
 +};
 +
 +#endif /* _UAPI_VS_CONTEXT_CMD_H */
-diff -NurpP --minimal linux-4.9.135/include/uapi/vserver/cvirt_cmd.h linux-4.9.135-vs2.3.9.8/include/uapi/vserver/cvirt_cmd.h
---- linux-4.9.135/include/uapi/vserver/cvirt_cmd.h     1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/uapi/vserver/cvirt_cmd.h   2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/uapi/vserver/cvirt_cmd.h linux-4.9/include/uapi/vserver/cvirt_cmd.h
+--- linux-4.9/include/uapi/vserver/cvirt_cmd.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/include/uapi/vserver/cvirt_cmd.h 2021-02-24 15:47:45.104409971 +0100
 @@ -0,0 +1,41 @@
 +#ifndef _UAPI_VS_CVIRT_CMD_H
 +#define _UAPI_VS_CVIRT_CMD_H
 @@ -0,0 +1,41 @@
 +#ifndef _UAPI_VS_CVIRT_CMD_H
 +#define _UAPI_VS_CVIRT_CMD_H
@@ -11875,9 +11881,9 @@ diff -NurpP --minimal linux-4.9.135/include/uapi/vserver/cvirt_cmd.h linux-4.9.1
 +};
 +
 +#endif /* _UAPI_VS_CVIRT_CMD_H */
 +};
 +
 +#endif /* _UAPI_VS_CVIRT_CMD_H */
-diff -NurpP --minimal linux-4.9.135/include/uapi/vserver/debug_cmd.h linux-4.9.135-vs2.3.9.8/include/uapi/vserver/debug_cmd.h
---- linux-4.9.135/include/uapi/vserver/debug_cmd.h     1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/uapi/vserver/debug_cmd.h   2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/uapi/vserver/debug_cmd.h linux-4.9/include/uapi/vserver/debug_cmd.h
+--- linux-4.9/include/uapi/vserver/debug_cmd.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/include/uapi/vserver/debug_cmd.h 2021-02-24 15:47:45.104409971 +0100
 @@ -0,0 +1,24 @@
 +#ifndef _UAPI_VS_DEBUG_CMD_H
 +#define _UAPI_VS_DEBUG_CMD_H
 @@ -0,0 +1,24 @@
 +#ifndef _UAPI_VS_DEBUG_CMD_H
 +#define _UAPI_VS_DEBUG_CMD_H
@@ -11903,9 +11909,9 @@ diff -NurpP --minimal linux-4.9.135/include/uapi/vserver/debug_cmd.h linux-4.9.1
 +};
 +
 +#endif /* _UAPI_VS_DEBUG_CMD_H */
 +};
 +
 +#endif /* _UAPI_VS_DEBUG_CMD_H */
-diff -NurpP --minimal linux-4.9.135/include/uapi/vserver/device.h linux-4.9.135-vs2.3.9.8/include/uapi/vserver/device.h
---- linux-4.9.135/include/uapi/vserver/device.h        1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/uapi/vserver/device.h      2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/uapi/vserver/device.h linux-4.9/include/uapi/vserver/device.h
+--- linux-4.9/include/uapi/vserver/device.h    1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/include/uapi/vserver/device.h    2021-02-24 15:47:45.104409971 +0100
 @@ -0,0 +1,12 @@
 +#ifndef _UAPI_VS_DEVICE_H
 +#define _UAPI_VS_DEVICE_H
 @@ -0,0 +1,12 @@
 +#ifndef _UAPI_VS_DEVICE_H
 +#define _UAPI_VS_DEVICE_H
@@ -11919,9 +11925,9 @@ diff -NurpP --minimal linux-4.9.135/include/uapi/vserver/device.h linux-4.9.135-
 +#define DATTR_MASK    0x00000013
 +
 +#endif        /* _UAPI_VS_DEVICE_H */
 +#define DATTR_MASK    0x00000013
 +
 +#endif        /* _UAPI_VS_DEVICE_H */
-diff -NurpP --minimal linux-4.9.135/include/uapi/vserver/device_cmd.h linux-4.9.135-vs2.3.9.8/include/uapi/vserver/device_cmd.h
---- linux-4.9.135/include/uapi/vserver/device_cmd.h    1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/uapi/vserver/device_cmd.h  2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/uapi/vserver/device_cmd.h linux-4.9/include/uapi/vserver/device_cmd.h
+--- linux-4.9/include/uapi/vserver/device_cmd.h        1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/include/uapi/vserver/device_cmd.h        2021-02-24 15:47:45.104409971 +0100
 @@ -0,0 +1,16 @@
 +#ifndef _UAPI_VS_DEVICE_CMD_H
 +#define _UAPI_VS_DEVICE_CMD_H
 @@ -0,0 +1,16 @@
 +#ifndef _UAPI_VS_DEVICE_CMD_H
 +#define _UAPI_VS_DEVICE_CMD_H
@@ -11939,9 +11945,9 @@ diff -NurpP --minimal linux-4.9.135/include/uapi/vserver/device_cmd.h linux-4.9.
 +};
 +
 +#endif /* _UAPI_VS_DEVICE_CMD_H */
 +};
 +
 +#endif /* _UAPI_VS_DEVICE_CMD_H */
-diff -NurpP --minimal linux-4.9.135/include/uapi/vserver/dlimit_cmd.h linux-4.9.135-vs2.3.9.8/include/uapi/vserver/dlimit_cmd.h
---- linux-4.9.135/include/uapi/vserver/dlimit_cmd.h    1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/uapi/vserver/dlimit_cmd.h  2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/uapi/vserver/dlimit_cmd.h linux-4.9/include/uapi/vserver/dlimit_cmd.h
+--- linux-4.9/include/uapi/vserver/dlimit_cmd.h        1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/include/uapi/vserver/dlimit_cmd.h        2021-02-24 15:47:45.104409971 +0100
 @@ -0,0 +1,67 @@
 +#ifndef _UAPI_VS_DLIMIT_CMD_H
 +#define _UAPI_VS_DLIMIT_CMD_H
 @@ -0,0 +1,67 @@
 +#ifndef _UAPI_VS_DLIMIT_CMD_H
 +#define _UAPI_VS_DLIMIT_CMD_H
@@ -12010,9 +12016,9 @@ diff -NurpP --minimal linux-4.9.135/include/uapi/vserver/dlimit_cmd.h linux-4.9.
 +}
 +
 +#endif /* _UAPI_VS_DLIMIT_CMD_H */
 +}
 +
 +#endif /* _UAPI_VS_DLIMIT_CMD_H */
-diff -NurpP --minimal linux-4.9.135/include/uapi/vserver/inode.h linux-4.9.135-vs2.3.9.8/include/uapi/vserver/inode.h
---- linux-4.9.135/include/uapi/vserver/inode.h 1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/uapi/vserver/inode.h       2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/uapi/vserver/inode.h linux-4.9/include/uapi/vserver/inode.h
+--- linux-4.9/include/uapi/vserver/inode.h     1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/include/uapi/vserver/inode.h     2021-02-24 15:47:45.104409971 +0100
 @@ -0,0 +1,23 @@
 +#ifndef _UAPI_VS_INODE_H
 +#define _UAPI_VS_INODE_H
 @@ -0,0 +1,23 @@
 +#ifndef _UAPI_VS_INODE_H
 +#define _UAPI_VS_INODE_H
@@ -12037,9 +12043,9 @@ diff -NurpP --minimal linux-4.9.135/include/uapi/vserver/inode.h linux-4.9.135-v
 +#define FIOC_SETXFLG  _IOW('x', 6, long)
 +
 +#endif        /* _UAPI_VS_INODE_H */
 +#define FIOC_SETXFLG  _IOW('x', 6, long)
 +
 +#endif        /* _UAPI_VS_INODE_H */
-diff -NurpP --minimal linux-4.9.135/include/uapi/vserver/inode_cmd.h linux-4.9.135-vs2.3.9.8/include/uapi/vserver/inode_cmd.h
---- linux-4.9.135/include/uapi/vserver/inode_cmd.h     1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/uapi/vserver/inode_cmd.h   2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/uapi/vserver/inode_cmd.h linux-4.9/include/uapi/vserver/inode_cmd.h
+--- linux-4.9/include/uapi/vserver/inode_cmd.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/include/uapi/vserver/inode_cmd.h 2021-02-24 15:47:45.104409971 +0100
 @@ -0,0 +1,26 @@
 +#ifndef _UAPI_VS_INODE_CMD_H
 +#define _UAPI_VS_INODE_CMD_H
 @@ -0,0 +1,26 @@
 +#ifndef _UAPI_VS_INODE_CMD_H
 +#define _UAPI_VS_INODE_CMD_H
@@ -12067,9 +12073,9 @@ diff -NurpP --minimal linux-4.9.135/include/uapi/vserver/inode_cmd.h linux-4.9.1
 +};
 +
 +#endif /* _UAPI_VS_INODE_CMD_H */
 +};
 +
 +#endif /* _UAPI_VS_INODE_CMD_H */
-diff -NurpP --minimal linux-4.9.135/include/uapi/vserver/limit.h linux-4.9.135-vs2.3.9.8/include/uapi/vserver/limit.h
---- linux-4.9.135/include/uapi/vserver/limit.h 1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/uapi/vserver/limit.h       2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/uapi/vserver/limit.h linux-4.9/include/uapi/vserver/limit.h
+--- linux-4.9/include/uapi/vserver/limit.h     1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/include/uapi/vserver/limit.h     2021-02-24 15:47:45.104409971 +0100
 @@ -0,0 +1,14 @@
 +#ifndef _UAPI_VS_LIMIT_H
 +#define _UAPI_VS_LIMIT_H
 @@ -0,0 +1,14 @@
 +#ifndef _UAPI_VS_LIMIT_H
 +#define _UAPI_VS_LIMIT_H
@@ -12085,9 +12091,9 @@ diff -NurpP --minimal linux-4.9.135/include/uapi/vserver/limit.h linux-4.9.135-v
 +#define VLIMIT_MAPPED 23
 +
 +#endif /* _UAPI_VS_LIMIT_H */
 +#define VLIMIT_MAPPED 23
 +
 +#endif /* _UAPI_VS_LIMIT_H */
-diff -NurpP --minimal linux-4.9.135/include/uapi/vserver/limit_cmd.h linux-4.9.135-vs2.3.9.8/include/uapi/vserver/limit_cmd.h
---- linux-4.9.135/include/uapi/vserver/limit_cmd.h     1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/uapi/vserver/limit_cmd.h   2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/uapi/vserver/limit_cmd.h linux-4.9/include/uapi/vserver/limit_cmd.h
+--- linux-4.9/include/uapi/vserver/limit_cmd.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/include/uapi/vserver/limit_cmd.h 2021-02-24 15:47:45.104409971 +0100
 @@ -0,0 +1,40 @@
 +#ifndef _UAPI_VS_LIMIT_CMD_H
 +#define _UAPI_VS_LIMIT_CMD_H
 @@ -0,0 +1,40 @@
 +#ifndef _UAPI_VS_LIMIT_CMD_H
 +#define _UAPI_VS_LIMIT_CMD_H
@@ -12129,9 +12135,9 @@ diff -NurpP --minimal linux-4.9.135/include/uapi/vserver/limit_cmd.h linux-4.9.1
 +#define CRLIM_KEEP            (~1ULL)
 +
 +#endif /* _UAPI_VS_LIMIT_CMD_H */
 +#define CRLIM_KEEP            (~1ULL)
 +
 +#endif /* _UAPI_VS_LIMIT_CMD_H */
-diff -NurpP --minimal linux-4.9.135/include/uapi/vserver/monitor.h linux-4.9.135-vs2.3.9.8/include/uapi/vserver/monitor.h
---- linux-4.9.135/include/uapi/vserver/monitor.h       1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/uapi/vserver/monitor.h     2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/uapi/vserver/monitor.h linux-4.9/include/uapi/vserver/monitor.h
+--- linux-4.9/include/uapi/vserver/monitor.h   1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/include/uapi/vserver/monitor.h   2021-02-24 15:47:45.104409971 +0100
 @@ -0,0 +1,96 @@
 +#ifndef _UAPI_VS_MONITOR_H
 +#define _UAPI_VS_MONITOR_H
 @@ -0,0 +1,96 @@
 +#ifndef _UAPI_VS_MONITOR_H
 +#define _UAPI_VS_MONITOR_H
@@ -12229,9 +12235,9 @@ diff -NurpP --minimal linux-4.9.135/include/uapi/vserver/monitor.h linux-4.9.135
 +};
 +
 +#endif /* _UAPI_VS_MONITOR_H */
 +};
 +
 +#endif /* _UAPI_VS_MONITOR_H */
-diff -NurpP --minimal linux-4.9.135/include/uapi/vserver/network.h linux-4.9.135-vs2.3.9.8/include/uapi/vserver/network.h
---- linux-4.9.135/include/uapi/vserver/network.h       1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/uapi/vserver/network.h     2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/uapi/vserver/network.h linux-4.9/include/uapi/vserver/network.h
+--- linux-4.9/include/uapi/vserver/network.h   1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/include/uapi/vserver/network.h   2021-02-24 15:47:45.104409971 +0100
 @@ -0,0 +1,76 @@
 +#ifndef _UAPI_VS_NETWORK_H
 +#define _UAPI_VS_NETWORK_H
 @@ -0,0 +1,76 @@
 +#ifndef _UAPI_VS_NETWORK_H
 +#define _UAPI_VS_NETWORK_H
@@ -12309,9 +12315,9 @@ diff -NurpP --minimal linux-4.9.135/include/uapi/vserver/network.h linux-4.9.135
 +#define NXA_MASK_SHOW         (NXA_MASK_ALL | NXA_LOOPBACK)
 +
 +#endif /* _UAPI_VS_NETWORK_H */
 +#define NXA_MASK_SHOW         (NXA_MASK_ALL | NXA_LOOPBACK)
 +
 +#endif /* _UAPI_VS_NETWORK_H */
-diff -NurpP --minimal linux-4.9.135/include/uapi/vserver/network_cmd.h linux-4.9.135-vs2.3.9.8/include/uapi/vserver/network_cmd.h
---- linux-4.9.135/include/uapi/vserver/network_cmd.h   1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/uapi/vserver/network_cmd.h 2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/uapi/vserver/network_cmd.h linux-4.9/include/uapi/vserver/network_cmd.h
+--- linux-4.9/include/uapi/vserver/network_cmd.h       1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/include/uapi/vserver/network_cmd.h       2021-02-24 15:47:45.104409971 +0100
 @@ -0,0 +1,123 @@
 +#ifndef _UAPI_VS_NETWORK_CMD_H
 +#define _UAPI_VS_NETWORK_CMD_H
 @@ -0,0 +1,123 @@
 +#ifndef _UAPI_VS_NETWORK_CMD_H
 +#define _UAPI_VS_NETWORK_CMD_H
@@ -12436,9 +12442,9 @@ diff -NurpP --minimal linux-4.9.135/include/uapi/vserver/network_cmd.h linux-4.9
 +};
 +
 +#endif /* _UAPI_VS_NETWORK_CMD_H */
 +};
 +
 +#endif /* _UAPI_VS_NETWORK_CMD_H */
-diff -NurpP --minimal linux-4.9.135/include/uapi/vserver/sched_cmd.h linux-4.9.135-vs2.3.9.8/include/uapi/vserver/sched_cmd.h
---- linux-4.9.135/include/uapi/vserver/sched_cmd.h     1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/uapi/vserver/sched_cmd.h   2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/uapi/vserver/sched_cmd.h linux-4.9/include/uapi/vserver/sched_cmd.h
+--- linux-4.9/include/uapi/vserver/sched_cmd.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/include/uapi/vserver/sched_cmd.h 2021-02-24 15:47:45.104409971 +0100
 @@ -0,0 +1,13 @@
 +#ifndef _UAPI_VS_SCHED_CMD_H
 +#define _UAPI_VS_SCHED_CMD_H
 @@ -0,0 +1,13 @@
 +#ifndef _UAPI_VS_SCHED_CMD_H
 +#define _UAPI_VS_SCHED_CMD_H
@@ -12453,9 +12459,9 @@ diff -NurpP --minimal linux-4.9.135/include/uapi/vserver/sched_cmd.h linux-4.9.1
 +#define VCMD_get_prio_bias    VC_CMD(SCHED, 5, 0)
 +
 +#endif /* _UAPI_VS_SCHED_CMD_H */
 +#define VCMD_get_prio_bias    VC_CMD(SCHED, 5, 0)
 +
 +#endif /* _UAPI_VS_SCHED_CMD_H */
-diff -NurpP --minimal linux-4.9.135/include/uapi/vserver/signal_cmd.h linux-4.9.135-vs2.3.9.8/include/uapi/vserver/signal_cmd.h
---- linux-4.9.135/include/uapi/vserver/signal_cmd.h    1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/uapi/vserver/signal_cmd.h  2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/uapi/vserver/signal_cmd.h linux-4.9/include/uapi/vserver/signal_cmd.h
+--- linux-4.9/include/uapi/vserver/signal_cmd.h        1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/include/uapi/vserver/signal_cmd.h        2021-02-24 15:47:45.107743409 +0100
 @@ -0,0 +1,31 @@
 +#ifndef _UAPI_VS_SIGNAL_CMD_H
 +#define _UAPI_VS_SIGNAL_CMD_H
 @@ -0,0 +1,31 @@
 +#ifndef _UAPI_VS_SIGNAL_CMD_H
 +#define _UAPI_VS_SIGNAL_CMD_H
@@ -12488,9 +12494,9 @@ diff -NurpP --minimal linux-4.9.135/include/uapi/vserver/signal_cmd.h linux-4.9.
 +};
 +
 +#endif /* _UAPI_VS_SIGNAL_CMD_H */
 +};
 +
 +#endif /* _UAPI_VS_SIGNAL_CMD_H */
-diff -NurpP --minimal linux-4.9.135/include/uapi/vserver/space_cmd.h linux-4.9.135-vs2.3.9.8/include/uapi/vserver/space_cmd.h
---- linux-4.9.135/include/uapi/vserver/space_cmd.h     1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/uapi/vserver/space_cmd.h   2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/uapi/vserver/space_cmd.h linux-4.9/include/uapi/vserver/space_cmd.h
+--- linux-4.9/include/uapi/vserver/space_cmd.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/include/uapi/vserver/space_cmd.h 2021-02-24 15:47:45.107743409 +0100
 @@ -0,0 +1,28 @@
 +#ifndef _UAPI_VS_SPACE_CMD_H
 +#define _UAPI_VS_SPACE_CMD_H
 @@ -0,0 +1,28 @@
 +#ifndef _UAPI_VS_SPACE_CMD_H
 +#define _UAPI_VS_SPACE_CMD_H
@@ -12520,9 +12526,9 @@ diff -NurpP --minimal linux-4.9.135/include/uapi/vserver/space_cmd.h linux-4.9.1
 +};
 +
 +#endif /* _UAPI_VS_SPACE_CMD_H */
 +};
 +
 +#endif /* _UAPI_VS_SPACE_CMD_H */
-diff -NurpP --minimal linux-4.9.135/include/uapi/vserver/switch.h linux-4.9.135-vs2.3.9.8/include/uapi/vserver/switch.h
---- linux-4.9.135/include/uapi/vserver/switch.h        1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/uapi/vserver/switch.h      2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/uapi/vserver/switch.h linux-4.9/include/uapi/vserver/switch.h
+--- linux-4.9/include/uapi/vserver/switch.h    1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/include/uapi/vserver/switch.h    2021-02-24 15:47:45.107743409 +0100
 @@ -0,0 +1,90 @@
 +#ifndef _UAPI_VS_SWITCH_H
 +#define _UAPI_VS_SWITCH_H
 @@ -0,0 +1,90 @@
 +#ifndef _UAPI_VS_SWITCH_H
 +#define _UAPI_VS_SWITCH_H
@@ -12614,9 +12620,9 @@ diff -NurpP --minimal linux-4.9.135/include/uapi/vserver/switch.h linux-4.9.135-
 +#define VCMD_get_vci          VC_CMD(VERSION, 1, 0)
 +
 +#endif /* _UAPI_VS_SWITCH_H */
 +#define VCMD_get_vci          VC_CMD(VERSION, 1, 0)
 +
 +#endif /* _UAPI_VS_SWITCH_H */
-diff -NurpP --minimal linux-4.9.135/include/uapi/vserver/tag_cmd.h linux-4.9.135-vs2.3.9.8/include/uapi/vserver/tag_cmd.h
---- linux-4.9.135/include/uapi/vserver/tag_cmd.h       1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/include/uapi/vserver/tag_cmd.h     2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/include/uapi/vserver/tag_cmd.h linux-4.9/include/uapi/vserver/tag_cmd.h
+--- linux-4.9/include/uapi/vserver/tag_cmd.h   1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/include/uapi/vserver/tag_cmd.h   2021-02-24 15:47:45.107743409 +0100
 @@ -0,0 +1,14 @@
 +#ifndef _UAPI_VS_TAG_CMD_H
 +#define _UAPI_VS_TAG_CMD_H
 @@ -0,0 +1,14 @@
 +#ifndef _UAPI_VS_TAG_CMD_H
 +#define _UAPI_VS_TAG_CMD_H
@@ -12632,10 +12638,10 @@ diff -NurpP --minimal linux-4.9.135/include/uapi/vserver/tag_cmd.h linux-4.9.135
 +#define VCMD_tag_migrate      VC_CMD(TAGMIG, 1, 0)
 +
 +#endif /* _UAPI_VS_TAG_CMD_H */
 +#define VCMD_tag_migrate      VC_CMD(TAGMIG, 1, 0)
 +
 +#endif /* _UAPI_VS_TAG_CMD_H */
-diff -NurpP --minimal linux-4.9.135/init/Kconfig linux-4.9.135-vs2.3.9.8/init/Kconfig
---- linux-4.9.135/init/Kconfig 2018-10-20 10:39:20.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/init/Kconfig       2018-10-20 04:58:14.000000000 +0000
-@@ -958,6 +958,7 @@ config NUMA_BALANCING_DEFAULT_ENABLED
+diff -urNp -x '*.orig' linux-4.9/init/Kconfig linux-4.9/init/Kconfig
+--- linux-4.9/init/Kconfig     2021-02-24 15:47:32.454014219 +0100
++++ linux-4.9/init/Kconfig     2021-02-24 15:47:45.107743409 +0100
+@@ -959,6 +959,7 @@ config NUMA_BALANCING_DEFAULT_ENABLED
  menuconfig CGROUPS
        bool "Control Group support"
        select KERNFS
  menuconfig CGROUPS
        bool "Control Group support"
        select KERNFS
@@ -12643,9 +12649,9 @@ diff -NurpP --minimal linux-4.9.135/init/Kconfig linux-4.9.135-vs2.3.9.8/init/Kc
        help
          This option adds support for grouping sets of processes together, for
          use with process control subsystems such as Cpusets, CFS, memory
        help
          This option adds support for grouping sets of processes together, for
          use with process control subsystems such as Cpusets, CFS, memory
-diff -NurpP --minimal linux-4.9.135/init/main.c linux-4.9.135-vs2.3.9.8/init/main.c
---- linux-4.9.135/init/main.c  2018-10-20 10:39:20.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/init/main.c        2018-10-20 05:55:43.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/init/main.c linux-4.9/init/main.c
+--- linux-4.9/init/main.c      2021-02-24 15:47:32.454014219 +0100
++++ linux-4.9/init/main.c      2021-02-24 15:47:45.107743409 +0100
 @@ -82,6 +82,7 @@
  #include <linux/io.h>
  #include <linux/kaiser.h>
 @@ -82,6 +82,7 @@
  #include <linux/io.h>
  #include <linux/kaiser.h>
@@ -12654,9 +12660,9 @@ diff -NurpP --minimal linux-4.9.135/init/main.c linux-4.9.135-vs2.3.9.8/init/mai
  
  #include <asm/io.h>
  #include <asm/bugs.h>
  
  #include <asm/io.h>
  #include <asm/bugs.h>
-diff -NurpP --minimal linux-4.9.135/ipc/mqueue.c linux-4.9.135-vs2.3.9.8/ipc/mqueue.c
---- linux-4.9.135/ipc/mqueue.c 2018-10-20 10:39:20.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/ipc/mqueue.c       2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/ipc/mqueue.c linux-4.9/ipc/mqueue.c
+--- linux-4.9/ipc/mqueue.c     2021-02-24 15:47:32.454014219 +0100
++++ linux-4.9/ipc/mqueue.c     2021-02-24 15:47:45.107743409 +0100
 @@ -35,6 +35,8 @@
  #include <linux/ipc_namespace.h>
  #include <linux/user_namespace.h>
 @@ -35,6 +35,8 @@
  #include <linux/ipc_namespace.h>
  #include <linux/user_namespace.h>
@@ -12712,19 +12718,23 @@ diff -NurpP --minimal linux-4.9.135/ipc/mqueue.c linux-4.9.135-vs2.3.9.8/ipc/mqu
        } else if (S_ISDIR(mode)) {
                inc_nlink(inode);
                /* Some things misbehave if size == 0 on a directory */
        } else if (S_ISDIR(mode)) {
                inc_nlink(inode);
                /* Some things misbehave if size == 0 on a directory */
-@@ -396,8 +404,11 @@ static void mqueue_evict_inode(struct in
+@@ -393,6 +401,7 @@ static void mqueue_evict_inode(struct in
  
        user = info->user;
        if (user) {
 +              struct vx_info *vxi = info->vxi;
  
        user = info->user;
        if (user) {
 +              struct vx_info *vxi = info->vxi;
-+
+               unsigned long mq_bytes, mq_treesize;
+               /* Total amount of bytes accounted for the mqueue */
+@@ -405,6 +414,7 @@ static void mqueue_evict_inode(struct in
                spin_lock(&mq_lock);
                user->mq_bytes -= mq_bytes;
 +              vx_ipcmsg_sub(vxi, user, mq_bytes);
                /*
                 * get_ns_from_inode() ensures that the
                 * (ipc_ns = sb->s_fs_info) is either a valid ipc_ns
                spin_lock(&mq_lock);
                user->mq_bytes -= mq_bytes;
 +              vx_ipcmsg_sub(vxi, user, mq_bytes);
                /*
                 * get_ns_from_inode() ensures that the
                 * (ipc_ns = sb->s_fs_info) is either a valid ipc_ns
-@@ -407,6 +418,7 @@ static void mqueue_evict_inode(struct in
+@@ -414,6 +424,7 @@ static void mqueue_evict_inode(struct in
                if (ipc_ns)
                        ipc_ns->mq_queues_count--;
                spin_unlock(&mq_lock);
                if (ipc_ns)
                        ipc_ns->mq_queues_count--;
                spin_unlock(&mq_lock);
@@ -12732,9 +12742,9 @@ diff -NurpP --minimal linux-4.9.135/ipc/mqueue.c linux-4.9.135-vs2.3.9.8/ipc/mqu
                free_uid(user);
        }
        if (ipc_ns)
                free_uid(user);
        }
        if (ipc_ns)
-diff -NurpP --minimal linux-4.9.135/ipc/msg.c linux-4.9.135-vs2.3.9.8/ipc/msg.c
---- linux-4.9.135/ipc/msg.c    2018-10-20 10:39:20.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/ipc/msg.c  2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/ipc/msg.c linux-4.9/ipc/msg.c
+--- linux-4.9/ipc/msg.c        2021-02-24 15:47:32.454014219 +0100
++++ linux-4.9/ipc/msg.c        2021-02-24 15:47:45.107743409 +0100
 @@ -37,6 +37,7 @@
  #include <linux/rwsem.h>
  #include <linux/nsproxy.h>
 @@ -37,6 +37,7 @@
  #include <linux/rwsem.h>
  #include <linux/nsproxy.h>
@@ -12751,9 +12761,9 @@ diff -NurpP --minimal linux-4.9.135/ipc/msg.c linux-4.9.135-vs2.3.9.8/ipc/msg.c
  
        msq->q_perm.security = NULL;
        retval = security_msg_queue_alloc(msq);
  
        msq->q_perm.security = NULL;
        retval = security_msg_queue_alloc(msq);
-diff -NurpP --minimal linux-4.9.135/ipc/namespace.c linux-4.9.135-vs2.3.9.8/ipc/namespace.c
---- linux-4.9.135/ipc/namespace.c      2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/ipc/namespace.c    2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/ipc/namespace.c linux-4.9/ipc/namespace.c
+--- linux-4.9/ipc/namespace.c  2016-12-11 20:17:54.000000000 +0100
++++ linux-4.9/ipc/namespace.c  2021-02-24 15:47:45.107743409 +0100
 @@ -13,6 +13,7 @@
  #include <linux/mount.h>
  #include <linux/user_namespace.h>
 @@ -13,6 +13,7 @@
  #include <linux/mount.h>
  #include <linux/user_namespace.h>
@@ -12778,9 +12788,9 @@ diff -NurpP --minimal linux-4.9.135/ipc/namespace.c linux-4.9.135-vs2.3.9.8/ipc/
        kfree(ns);
  }
  
        kfree(ns);
  }
  
-diff -NurpP --minimal linux-4.9.135/ipc/sem.c linux-4.9.135-vs2.3.9.8/ipc/sem.c
---- linux-4.9.135/ipc/sem.c    2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/ipc/sem.c  2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/ipc/sem.c linux-4.9/ipc/sem.c
+--- linux-4.9/ipc/sem.c        2021-02-24 15:47:32.454014219 +0100
++++ linux-4.9/ipc/sem.c        2021-02-24 15:47:45.107743409 +0100
 @@ -85,6 +85,8 @@
  #include <linux/rwsem.h>
  #include <linux/nsproxy.h>
 @@ -85,6 +85,8 @@
  #include <linux/rwsem.h>
  #include <linux/nsproxy.h>
@@ -12818,9 +12828,9 @@ diff -NurpP --minimal linux-4.9.135/ipc/sem.c linux-4.9.135-vs2.3.9.8/ipc/sem.c
        ipc_rcu_putref(sma, sem_rcu_free);
  }
  
        ipc_rcu_putref(sma, sem_rcu_free);
  }
  
-diff -NurpP --minimal linux-4.9.135/ipc/shm.c linux-4.9.135-vs2.3.9.8/ipc/shm.c
---- linux-4.9.135/ipc/shm.c    2018-10-20 10:39:20.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/ipc/shm.c  2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/ipc/shm.c linux-4.9/ipc/shm.c
+--- linux-4.9/ipc/shm.c        2021-02-24 15:47:32.454014219 +0100
++++ linux-4.9/ipc/shm.c        2021-02-24 15:47:45.107743409 +0100
 @@ -42,6 +42,8 @@
  #include <linux/nsproxy.h>
  #include <linux/mount.h>
 @@ -42,6 +42,8 @@
  #include <linux/nsproxy.h>
  #include <linux/mount.h>
@@ -12878,10 +12888,10 @@ diff -NurpP --minimal linux-4.9.135/ipc/shm.c linux-4.9.135-vs2.3.9.8/ipc/shm.c
        return error;
  
  no_id:
        return error;
  
  no_id:
-diff -NurpP --minimal linux-4.9.135/kernel/Makefile linux-4.9.135-vs2.3.9.8/kernel/Makefile
---- linux-4.9.135/kernel/Makefile      2018-10-20 10:39:20.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/kernel/Makefile    2018-10-20 04:58:14.000000000 +0000
-@@ -39,6 +39,7 @@ obj-y += printk/
+diff -urNp -x '*.orig' linux-4.9/kernel/Makefile linux-4.9/kernel/Makefile
+--- linux-4.9/kernel/Makefile  2021-02-24 15:47:32.454014219 +0100
++++ linux-4.9/kernel/Makefile  2021-02-24 15:47:45.111076846 +0100
+@@ -40,6 +40,7 @@ obj-y += printk/
  obj-y += irq/
  obj-y += rcu/
  obj-y += livepatch/
  obj-y += irq/
  obj-y += rcu/
  obj-y += livepatch/
@@ -12889,9 +12899,9 @@ diff -NurpP --minimal linux-4.9.135/kernel/Makefile linux-4.9.135-vs2.3.9.8/kern
  
  obj-$(CONFIG_CHECKPOINT_RESTORE) += kcmp.o
  obj-$(CONFIG_FREEZER) += freezer.o
  
  obj-$(CONFIG_CHECKPOINT_RESTORE) += kcmp.o
  obj-$(CONFIG_FREEZER) += freezer.o
-diff -NurpP --minimal linux-4.9.135/kernel/auditsc.c linux-4.9.135-vs2.3.9.8/kernel/auditsc.c
---- linux-4.9.135/kernel/auditsc.c     2018-10-20 10:39:21.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/kernel/auditsc.c   2018-10-20 05:55:43.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/kernel/auditsc.c linux-4.9/kernel/auditsc.c
+--- linux-4.9/kernel/auditsc.c 2021-02-24 15:47:32.457347657 +0100
++++ linux-4.9/kernel/auditsc.c 2021-02-24 15:47:45.107743409 +0100
 @@ -1967,7 +1967,7 @@ static int audit_set_loginuid_perm(kuid_
        if (is_audit_feature_set(AUDIT_FEATURE_LOGINUID_IMMUTABLE))
                return -EPERM;
 @@ -1967,7 +1967,7 @@ static int audit_set_loginuid_perm(kuid_
        if (is_audit_feature_set(AUDIT_FEATURE_LOGINUID_IMMUTABLE))
                return -EPERM;
@@ -12901,9 +12911,9 @@ diff -NurpP --minimal linux-4.9.135/kernel/auditsc.c linux-4.9.135-vs2.3.9.8/ker
                return -EPERM;
        /* reject if this is not an unset and we don't allow that */
        if (is_audit_feature_set(AUDIT_FEATURE_ONLY_UNSET_LOGINUID) && uid_valid(loginuid))
                return -EPERM;
        /* reject if this is not an unset and we don't allow that */
        if (is_audit_feature_set(AUDIT_FEATURE_ONLY_UNSET_LOGINUID) && uid_valid(loginuid))
-diff -NurpP --minimal linux-4.9.135/kernel/capability.c linux-4.9.135-vs2.3.9.8/kernel/capability.c
---- linux-4.9.135/kernel/capability.c  2018-10-20 10:39:21.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/kernel/capability.c        2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/kernel/capability.c linux-4.9/kernel/capability.c
+--- linux-4.9/kernel/capability.c      2021-02-24 15:47:32.460681095 +0100
++++ linux-4.9/kernel/capability.c      2021-02-24 15:47:45.111076846 +0100
 @@ -17,6 +17,7 @@
  #include <linux/syscalls.h>
  #include <linux/pid_namespace.h>
 @@ -17,6 +17,7 @@
  #include <linux/syscalls.h>
  #include <linux/pid_namespace.h>
@@ -12929,9 +12939,9 @@ diff -NurpP --minimal linux-4.9.135/kernel/capability.c linux-4.9.135-vs2.3.9.8/
  /**
   * has_capability_noaudit - Does a task have a capability (unaudited) in the
   * initial user ns
  /**
   * has_capability_noaudit - Does a task have a capability (unaudited) in the
   * initial user ns
-diff -NurpP --minimal linux-4.9.135/kernel/compat.c linux-4.9.135-vs2.3.9.8/kernel/compat.c
---- linux-4.9.135/kernel/compat.c      2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/kernel/compat.c    2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/kernel/compat.c linux-4.9/kernel/compat.c
+--- linux-4.9/kernel/compat.c  2016-12-11 20:17:54.000000000 +0100
++++ linux-4.9/kernel/compat.c  2021-02-24 15:47:45.111076846 +0100
 @@ -27,6 +27,7 @@
  #include <linux/times.h>
  #include <linux/ptrace.h>
 @@ -27,6 +27,7 @@
  #include <linux/times.h>
  #include <linux/ptrace.h>
@@ -12949,9 +12959,9 @@ diff -NurpP --minimal linux-4.9.135/kernel/compat.c linux-4.9.135-vs2.3.9.8/kern
        return 0;
  }
  
        return 0;
  }
  
-diff -NurpP --minimal linux-4.9.135/kernel/cred.c linux-4.9.135-vs2.3.9.8/kernel/cred.c
---- linux-4.9.135/kernel/cred.c        2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/kernel/cred.c      2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/kernel/cred.c linux-4.9/kernel/cred.c
+--- linux-4.9/kernel/cred.c    2021-02-24 15:47:32.460681095 +0100
++++ linux-4.9/kernel/cred.c    2021-02-24 15:47:45.111076846 +0100
 @@ -64,31 +64,6 @@ struct cred init_cred = {
        .group_info             = &init_groups,
  };
 @@ -64,31 +64,6 @@ struct cred init_cred = {
        .group_info             = &init_groups,
  };
@@ -12984,7 +12994,7 @@ diff -NurpP --minimal linux-4.9.135/kernel/cred.c linux-4.9.135-vs2.3.9.8/kernel
  /*
   * The RCU callback to actually dispose of a set of credentials
   */
  /*
   * The RCU callback to actually dispose of a set of credentials
   */
-@@ -240,21 +215,16 @@ error:
+@@ -243,21 +218,16 @@ error:
   *
   * Call commit_creds() or abort_creds() to clean up.
   */
   *
   * Call commit_creds() or abort_creds() to clean up.
   */
@@ -13006,8 +13016,8 @@ diff -NurpP --minimal linux-4.9.135/kernel/cred.c linux-4.9.135-vs2.3.9.8/kernel
 -      old = task->cred;
        memcpy(new, old, sizeof(struct cred));
  
 -      old = task->cred;
        memcpy(new, old, sizeof(struct cred));
  
-       atomic_set(&new->usage, 1);
-@@ -283,6 +253,13 @@ error:
+       new->non_rcu = 0;
+@@ -287,6 +257,13 @@ error:
        abort_creds(new);
        return NULL;
  }
        abort_creds(new);
        return NULL;
  }
@@ -13021,9 +13031,9 @@ diff -NurpP --minimal linux-4.9.135/kernel/cred.c linux-4.9.135-vs2.3.9.8/kernel
  EXPORT_SYMBOL(prepare_creds);
  
  /*
  EXPORT_SYMBOL(prepare_creds);
  
  /*
-diff -NurpP --minimal linux-4.9.135/kernel/exit.c linux-4.9.135-vs2.3.9.8/kernel/exit.c
---- linux-4.9.135/kernel/exit.c        2018-10-20 10:39:21.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/kernel/exit.c      2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/kernel/exit.c linux-4.9/kernel/exit.c
+--- linux-4.9/kernel/exit.c    2021-02-24 15:47:32.467347970 +0100
++++ linux-4.9/kernel/exit.c    2021-02-24 15:47:45.111076846 +0100
 @@ -48,6 +48,10 @@
  #include <linux/fs_struct.h>
  #include <linux/init_task.h>
 @@ -48,6 +48,10 @@
  #include <linux/fs_struct.h>
  #include <linux/init_task.h>
@@ -13035,12 +13045,13 @@ diff -NurpP --minimal linux-4.9.135/kernel/exit.c linux-4.9.135-vs2.3.9.8/kernel
  #include <trace/events/sched.h>
  #include <linux/hw_breakpoint.h>
  #include <linux/oom.h>
  #include <trace/events/sched.h>
  #include <linux/hw_breakpoint.h>
  #include <linux/oom.h>
-@@ -531,14 +535,24 @@ static struct task_struct *find_child_re
+@@ -535,15 +539,25 @@ static struct task_struct *find_child_re
  {
        struct pid_namespace *pid_ns = task_active_pid_ns(father);
        struct task_struct *reaper = pid_ns->child_reaper;
 +      struct vx_info *vxi = task_get_vx_info(father);
  {
        struct pid_namespace *pid_ns = task_active_pid_ns(father);
        struct task_struct *reaper = pid_ns->child_reaper;
 +      struct vx_info *vxi = task_get_vx_info(father);
-+
+       struct task_struct *p, *n;
 +      if (vxi) {
 +              BUG_ON(!vxi->vx_reaper);
 +              if (vxi->vx_reaper != init_pid_ns.child_reaper &&
 +      if (vxi) {
 +              BUG_ON(!vxi->vx_reaper);
 +              if (vxi->vx_reaper != init_pid_ns.child_reaper &&
@@ -13049,7 +13060,7 @@ diff -NurpP --minimal linux-4.9.135/kernel/exit.c linux-4.9.135-vs2.3.9.8/kernel
 +                      goto out_put;
 +              }
 +      }
 +                      goto out_put;
 +              }
 +      }
++
        if (likely(reaper != father))
 -              return reaper;
 +              goto out_put;
        if (likely(reaper != father))
 -              return reaper;
 +              goto out_put;
@@ -13062,7 +13073,7 @@ diff -NurpP --minimal linux-4.9.135/kernel/exit.c linux-4.9.135-vs2.3.9.8/kernel
        }
  
        write_unlock_irq(&tasklist_lock);
        }
  
        write_unlock_irq(&tasklist_lock);
-@@ -549,7 +563,10 @@ static struct task_struct *find_child_re
+@@ -560,7 +574,10 @@ static struct task_struct *find_child_re
        zap_pid_ns_processes(pid_ns);
        write_lock_irq(&tasklist_lock);
  
        zap_pid_ns_processes(pid_ns);
        write_lock_irq(&tasklist_lock);
  
@@ -13074,7 +13085,7 @@ diff -NurpP --minimal linux-4.9.135/kernel/exit.c linux-4.9.135-vs2.3.9.8/kernel
  }
  
  /*
  }
  
  /*
-@@ -637,9 +654,13 @@ static void forget_original_parent(struc
+@@ -648,9 +665,13 @@ static void forget_original_parent(struc
                return;
  
        reaper = find_new_reaper(father, reaper);
                return;
  
        reaper = find_new_reaper(father, reaper);
@@ -13090,7 +13101,7 @@ diff -NurpP --minimal linux-4.9.135/kernel/exit.c linux-4.9.135-vs2.3.9.8/kernel
                        BUG_ON((!t->ptrace) != (t->parent == father));
                        if (likely(!t->ptrace))
                                t->parent = t->real_parent;
                        BUG_ON((!t->ptrace) != (t->parent == father));
                        if (likely(!t->ptrace))
                                t->parent = t->real_parent;
-@@ -651,10 +672,13 @@ static void forget_original_parent(struc
+@@ -662,10 +683,13 @@ static void forget_original_parent(struc
                 * If this is a threaded reparent there is no need to
                 * notify anyone anything has happened.
                 */
                 * If this is a threaded reparent there is no need to
                 * notify anyone anything has happened.
                 */
@@ -13106,7 +13117,7 @@ diff -NurpP --minimal linux-4.9.135/kernel/exit.c linux-4.9.135-vs2.3.9.8/kernel
  }
  
  /*
  }
  
  /*
-@@ -844,6 +868,9 @@ void __noreturn do_exit(long code)
+@@ -843,6 +867,9 @@ void __noreturn do_exit(long code)
         */
        flush_ptrace_hw_breakpoint(tsk);
  
         */
        flush_ptrace_hw_breakpoint(tsk);
  
@@ -13116,7 +13127,7 @@ diff -NurpP --minimal linux-4.9.135/kernel/exit.c linux-4.9.135-vs2.3.9.8/kernel
        TASKS_RCU(preempt_disable());
        TASKS_RCU(tasks_rcu_i = __srcu_read_lock(&tasks_rcu_exit_srcu));
        TASKS_RCU(preempt_enable());
        TASKS_RCU(preempt_disable());
        TASKS_RCU(tasks_rcu_i = __srcu_read_lock(&tasks_rcu_exit_srcu));
        TASKS_RCU(preempt_enable());
-@@ -876,6 +903,10 @@ void __noreturn do_exit(long code)
+@@ -869,6 +896,10 @@ void __noreturn do_exit(long code)
  
        validate_creds_for_do_exit(tsk);
  
  
        validate_creds_for_do_exit(tsk);
  
@@ -13127,9 +13138,9 @@ diff -NurpP --minimal linux-4.9.135/kernel/exit.c linux-4.9.135-vs2.3.9.8/kernel
        check_stack_usage();
        preempt_disable();
        if (tsk->nr_dirtied)
        check_stack_usage();
        preempt_disable();
        if (tsk->nr_dirtied)
-diff -NurpP --minimal linux-4.9.135/kernel/fork.c linux-4.9.135-vs2.3.9.8/kernel/fork.c
---- linux-4.9.135/kernel/fork.c        2018-10-20 10:39:21.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/kernel/fork.c      2018-10-20 05:55:43.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/kernel/fork.c linux-4.9/kernel/fork.c
+--- linux-4.9/kernel/fork.c    2021-02-24 15:47:32.467347970 +0100
++++ linux-4.9/kernel/fork.c    2021-02-24 15:47:45.111076846 +0100
 @@ -77,6 +77,9 @@
  #include <linux/compiler.h>
  #include <linux/sysctl.h>
 @@ -77,6 +77,9 @@
  #include <linux/compiler.h>
  #include <linux/sysctl.h>
@@ -13149,7 +13160,7 @@ diff -NurpP --minimal linux-4.9.135/kernel/fork.c linux-4.9.135-vs2.3.9.8/kernel
        ftrace_graph_exit_task(tsk);
        put_seccomp_filter(tsk);
        arch_release_task_struct(tsk);
        ftrace_graph_exit_task(tsk);
        put_seccomp_filter(tsk);
        arch_release_task_struct(tsk);
-@@ -1480,6 +1485,8 @@ static __latent_entropy struct task_stru
+@@ -1476,6 +1481,8 @@ static __latent_entropy struct task_stru
  {
        int retval;
        struct task_struct *p;
  {
        int retval;
        struct task_struct *p;
@@ -13158,7 +13169,7 @@ diff -NurpP --minimal linux-4.9.135/kernel/fork.c linux-4.9.135-vs2.3.9.8/kernel
  
        if ((clone_flags & (CLONE_NEWNS|CLONE_FS)) == (CLONE_NEWNS|CLONE_FS))
                return ERR_PTR(-EINVAL);
  
        if ((clone_flags & (CLONE_NEWNS|CLONE_FS)) == (CLONE_NEWNS|CLONE_FS))
                return ERR_PTR(-EINVAL);
-@@ -1552,7 +1559,12 @@ static __latent_entropy struct task_stru
+@@ -1548,7 +1555,12 @@ static __latent_entropy struct task_stru
        DEBUG_LOCKS_WARN_ON(!p->hardirqs_enabled);
        DEBUG_LOCKS_WARN_ON(!p->softirqs_enabled);
  #endif
        DEBUG_LOCKS_WARN_ON(!p->hardirqs_enabled);
        DEBUG_LOCKS_WARN_ON(!p->softirqs_enabled);
  #endif
@@ -13171,7 +13182,7 @@ diff -NurpP --minimal linux-4.9.135/kernel/fork.c linux-4.9.135-vs2.3.9.8/kernel
        if (atomic_read(&p->real_cred->user->processes) >=
                        task_rlimit(p, RLIMIT_NPROC)) {
                if (p->real_cred->user != INIT_USER &&
        if (atomic_read(&p->real_cred->user->processes) >=
                        task_rlimit(p, RLIMIT_NPROC)) {
                if (p->real_cred->user != INIT_USER &&
-@@ -1844,6 +1856,18 @@ static __latent_entropy struct task_stru
+@@ -1843,6 +1855,18 @@ static __latent_entropy struct task_stru
        total_forks++;
        spin_unlock(&current->sighand->siglock);
        syscall_tracepoint_update(p);
        total_forks++;
        spin_unlock(&current->sighand->siglock);
        syscall_tracepoint_update(p);
@@ -13190,9 +13201,9 @@ diff -NurpP --minimal linux-4.9.135/kernel/fork.c linux-4.9.135-vs2.3.9.8/kernel
        write_unlock_irq(&tasklist_lock);
  
        proc_fork_connector(p);
        write_unlock_irq(&tasklist_lock);
  
        proc_fork_connector(p);
-diff -NurpP --minimal linux-4.9.135/kernel/kthread.c linux-4.9.135-vs2.3.9.8/kernel/kthread.c
---- linux-4.9.135/kernel/kthread.c     2018-10-20 10:39:21.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/kernel/kthread.c   2018-10-20 05:55:43.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/kernel/kthread.c linux-4.9/kernel/kthread.c
+--- linux-4.9/kernel/kthread.c 2021-02-24 15:47:32.474014845 +0100
++++ linux-4.9/kernel/kthread.c 2021-02-24 15:47:45.111076846 +0100
 @@ -19,6 +19,7 @@
  #include <linux/ptrace.h>
  #include <linux/uaccess.h>
 @@ -19,6 +19,7 @@
  #include <linux/ptrace.h>
  #include <linux/uaccess.h>
@@ -13201,9 +13212,9 @@ diff -NurpP --minimal linux-4.9.135/kernel/kthread.c linux-4.9.135-vs2.3.9.8/ker
  #include <trace/events/sched.h>
  
  static DEFINE_SPINLOCK(kthread_create_lock);
  #include <trace/events/sched.h>
  
  static DEFINE_SPINLOCK(kthread_create_lock);
-diff -NurpP --minimal linux-4.9.135/kernel/nsproxy.c linux-4.9.135-vs2.3.9.8/kernel/nsproxy.c
---- linux-4.9.135/kernel/nsproxy.c     2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/kernel/nsproxy.c   2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/kernel/nsproxy.c linux-4.9/kernel/nsproxy.c
+--- linux-4.9/kernel/nsproxy.c 2016-12-11 20:17:54.000000000 +0100
++++ linux-4.9/kernel/nsproxy.c 2021-02-24 15:47:45.111076846 +0100
 @@ -20,12 +20,15 @@
  #include <linux/mnt_namespace.h>
  #include <linux/utsname.h>
 @@ -20,12 +20,15 @@
  #include <linux/mnt_namespace.h>
  #include <linux/utsname.h>
@@ -13400,9 +13411,9 @@ diff -NurpP --minimal linux-4.9.135/kernel/nsproxy.c linux-4.9.135-vs2.3.9.8/ker
                return -EPERM;
  
        *new_nsp = create_new_namespaces(unshare_flags, current, user_ns,
                return -EPERM;
  
        *new_nsp = create_new_namespaces(unshare_flags, current, user_ns,
-diff -NurpP --minimal linux-4.9.135/kernel/pid.c linux-4.9.135-vs2.3.9.8/kernel/pid.c
---- linux-4.9.135/kernel/pid.c 2018-10-20 10:39:21.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/kernel/pid.c       2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/kernel/pid.c linux-4.9/kernel/pid.c
+--- linux-4.9/kernel/pid.c     2021-02-24 15:47:32.477348283 +0100
++++ linux-4.9/kernel/pid.c     2021-02-24 15:47:45.111076846 +0100
 @@ -38,6 +38,7 @@
  #include <linux/syscalls.h>
  #include <linux/proc_ns.h>
 @@ -38,6 +38,7 @@
  #include <linux/syscalls.h>
  #include <linux/proc_ns.h>
@@ -13460,9 +13471,9 @@ diff -NurpP --minimal linux-4.9.135/kernel/pid.c linux-4.9.135-vs2.3.9.8/kernel/
  pid_t pid_vnr(struct pid *pid)
  {
        return pid_nr_ns(pid, task_active_pid_ns(current));
  pid_t pid_vnr(struct pid *pid)
  {
        return pid_nr_ns(pid, task_active_pid_ns(current));
-diff -NurpP --minimal linux-4.9.135/kernel/pid_namespace.c linux-4.9.135-vs2.3.9.8/kernel/pid_namespace.c
---- linux-4.9.135/kernel/pid_namespace.c       2018-10-20 10:39:21.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/kernel/pid_namespace.c     2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/kernel/pid_namespace.c linux-4.9/kernel/pid_namespace.c
+--- linux-4.9/kernel/pid_namespace.c   2021-02-24 15:47:32.477348283 +0100
++++ linux-4.9/kernel/pid_namespace.c   2021-02-24 15:47:45.111076846 +0100
 @@ -18,6 +18,7 @@
  #include <linux/proc_ns.h>
  #include <linux/reboot.h>
 @@ -18,6 +18,7 @@
  #include <linux/proc_ns.h>
  #include <linux/reboot.h>
@@ -13487,9 +13498,9 @@ diff -NurpP --minimal linux-4.9.135/kernel/pid_namespace.c linux-4.9.135-vs2.3.9
        kmem_cache_free(pid_ns_cachep, ns);
  out_dec:
        dec_pid_namespaces(ucounts);
        kmem_cache_free(pid_ns_cachep, ns);
  out_dec:
        dec_pid_namespaces(ucounts);
-diff -NurpP --minimal linux-4.9.135/kernel/printk/printk.c linux-4.9.135-vs2.3.9.8/kernel/printk/printk.c
---- linux-4.9.135/kernel/printk/printk.c       2018-10-20 10:39:21.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/kernel/printk/printk.c     2018-10-20 04:58:14.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/kernel/printk/printk.c linux-4.9/kernel/printk/printk.c
+--- linux-4.9/kernel/printk/printk.c   2021-02-24 15:47:32.480681720 +0100
++++ linux-4.9/kernel/printk/printk.c   2021-02-24 15:47:45.114410284 +0100
 @@ -45,6 +45,7 @@
  #include <linux/utsname.h>
  #include <linux/ctype.h>
 @@ -45,6 +45,7 @@
  #include <linux/utsname.h>
  #include <linux/ctype.h>
@@ -13498,7 +13509,7 @@ diff -NurpP --minimal linux-4.9.135/kernel/printk/printk.c linux-4.9.135-vs2.3.9
  
  #include <asm/uaccess.h>
  #include <asm/sections.h>
  
  #include <asm/uaccess.h>
  #include <asm/sections.h>
-@@ -612,7 +613,7 @@ int check_syslog_permissions(int type, i
+@@ -611,7 +612,7 @@ int check_syslog_permissions(int type, i
                goto ok;
  
        if (syslog_action_restricted(type)) {
                goto ok;
  
        if (syslog_action_restricted(type)) {
@@ -13507,7 +13518,7 @@ diff -NurpP --minimal linux-4.9.135/kernel/printk/printk.c linux-4.9.135-vs2.3.9
                        goto ok;
                /*
                 * For historical reasons, accept CAP_SYS_ADMIN too, with
                        goto ok;
                /*
                 * For historical reasons, accept CAP_SYS_ADMIN too, with
-@@ -1432,12 +1433,9 @@ int do_syslog(int type, char __user *buf
+@@ -1398,12 +1399,9 @@ int do_syslog(int type, char __user *buf
        if (error)
                goto out;
  
        if (error)
                goto out;
  
@@ -13523,7 +13534,7 @@ diff -NurpP --minimal linux-4.9.135/kernel/printk/printk.c linux-4.9.135-vs2.3.9
                error = -EINVAL;
                if (!buf || len < 0)
                        goto out;
                error = -EINVAL;
                if (!buf || len < 0)
                        goto out;
-@@ -1448,6 +1446,16 @@ int do_syslog(int type, char __user *buf
+@@ -1414,6 +1412,16 @@ int do_syslog(int type, char __user *buf
                        error = -EFAULT;
                        goto out;
                }
                        error = -EFAULT;
                        goto out;
                }
@@ -13540,7 +13551,7 @@ diff -NurpP --minimal linux-4.9.135/kernel/printk/printk.c linux-4.9.135-vs2.3.9
                error = wait_event_interruptible(log_wait,
                                                 syslog_seq != log_next_seq);
                if (error)
                error = wait_event_interruptible(log_wait,
                                                 syslog_seq != log_next_seq);
                if (error)
-@@ -1460,16 +1468,6 @@ int do_syslog(int type, char __user *buf
+@@ -1426,16 +1434,6 @@ int do_syslog(int type, char __user *buf
                /* FALL THRU */
        /* Read last kernel messages */
        case SYSLOG_ACTION_READ_ALL:
                /* FALL THRU */
        /* Read last kernel messages */
        case SYSLOG_ACTION_READ_ALL:
@@ -13557,9 +13568,9 @@ diff -NurpP --minimal linux-4.9.135/kernel/printk/printk.c linux-4.9.135-vs2.3.9
                error = syslog_print_all(buf, len, clear);
                break;
        /* Clear ring buffer */
                error = syslog_print_all(buf, len, clear);
                break;
        /* Clear ring buffer */
-diff -NurpP --minimal linux-4.9.135/kernel/ptrace.c linux-4.9.135-vs2.3.9.8/kernel/ptrace.c
---- linux-4.9.135/kernel/ptrace.c      2018-10-20 10:39:21.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/kernel/ptrace.c    2018-10-20 04:58:15.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/kernel/ptrace.c linux-4.9/kernel/ptrace.c
+--- linux-4.9/kernel/ptrace.c  2021-02-24 15:47:32.480681720 +0100
++++ linux-4.9/kernel/ptrace.c  2021-02-24 15:47:45.114410284 +0100
 @@ -23,6 +23,7 @@
  #include <linux/syscalls.h>
  #include <linux/uaccess.h>
 @@ -23,6 +23,7 @@
  #include <linux/syscalls.h>
  #include <linux/uaccess.h>
@@ -13568,7 +13579,7 @@ diff -NurpP --minimal linux-4.9.135/kernel/ptrace.c linux-4.9.135-vs2.3.9.8/kern
  #include <linux/hw_breakpoint.h>
  #include <linux/cn_proc.h>
  #include <linux/compat.h>
  #include <linux/hw_breakpoint.h>
  #include <linux/cn_proc.h>
  #include <linux/compat.h>
-@@ -325,6 +326,11 @@ ok:
+@@ -336,6 +337,11 @@ ok:
             !ptrace_has_cap(mm->user_ns, mode)))
            return -EPERM;
  
             !ptrace_has_cap(mm->user_ns, mode)))
            return -EPERM;
  
@@ -13577,12 +13588,12 @@ diff -NurpP --minimal linux-4.9.135/kernel/ptrace.c linux-4.9.135-vs2.3.9.8/kern
 +      if (!vx_check(task->xid, VS_IDENT) &&
 +              !task_vx_flags(task, VXF_STATE_ADMIN, 0))
 +              return -EACCES;
 +      if (!vx_check(task->xid, VS_IDENT) &&
 +              !task_vx_flags(task, VXF_STATE_ADMIN, 0))
 +              return -EACCES;
+       if (mode & PTRACE_MODE_SCHED)
+               return 0;
        return security_ptrace_access_check(task, mode);
        return security_ptrace_access_check(task, mode);
- }
-diff -NurpP --minimal linux-4.9.135/kernel/reboot.c linux-4.9.135-vs2.3.9.8/kernel/reboot.c
---- linux-4.9.135/kernel/reboot.c      2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/kernel/reboot.c    2018-10-20 04:58:15.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/kernel/reboot.c linux-4.9/kernel/reboot.c
+--- linux-4.9/kernel/reboot.c  2021-02-24 15:47:32.484015158 +0100
++++ linux-4.9/kernel/reboot.c  2021-02-24 15:47:45.114410284 +0100
 @@ -16,6 +16,7 @@
  #include <linux/syscalls.h>
  #include <linux/syscore_ops.h>
 @@ -16,6 +16,7 @@
  #include <linux/syscalls.h>
  #include <linux/syscore_ops.h>
@@ -13610,9 +13621,9 @@ diff -NurpP --minimal linux-4.9.135/kernel/reboot.c linux-4.9.135-vs2.3.9.8/kern
        mutex_lock(&reboot_mutex);
        switch (cmd) {
        case LINUX_REBOOT_CMD_RESTART:
        mutex_lock(&reboot_mutex);
        switch (cmd) {
        case LINUX_REBOOT_CMD_RESTART:
-diff -NurpP --minimal linux-4.9.135/kernel/sched/core.c linux-4.9.135-vs2.3.9.8/kernel/sched/core.c
---- linux-4.9.135/kernel/sched/core.c  2018-10-20 10:39:21.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/kernel/sched/core.c        2018-10-20 04:58:15.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/kernel/sched/core.c linux-4.9/kernel/sched/core.c
+--- linux-4.9/kernel/sched/core.c      2021-02-24 15:47:32.484015158 +0100
++++ linux-4.9/kernel/sched/core.c      2021-02-24 15:47:45.114410284 +0100
 @@ -75,6 +75,8 @@
  #include <linux/compiler.h>
  #include <linux/frame.h>
 @@ -75,6 +75,8 @@
  #include <linux/compiler.h>
  #include <linux/frame.h>
@@ -13630,7 +13641,7 @@ diff -NurpP --minimal linux-4.9.135/kernel/sched/core.c linux-4.9.135-vs2.3.9.8/
        BUG();
        /* Avoid "noreturn function does return".  */
        for (;;)
        BUG();
        /* Avoid "noreturn function does return".  */
        for (;;)
-@@ -3824,7 +3827,7 @@ SYSCALL_DEFINE1(nice, int, increment)
+@@ -3825,7 +3828,7 @@ SYSCALL_DEFINE1(nice, int, increment)
  
        nice = clamp_val(nice, MIN_NICE, MAX_NICE);
        if (increment < 0 && !can_nice(current, nice))
  
        nice = clamp_val(nice, MIN_NICE, MAX_NICE);
        if (increment < 0 && !can_nice(current, nice))
@@ -13639,9 +13650,9 @@ diff -NurpP --minimal linux-4.9.135/kernel/sched/core.c linux-4.9.135-vs2.3.9.8/
  
        retval = security_task_setnice(current, nice);
        if (retval)
  
        retval = security_task_setnice(current, nice);
        if (retval)
-diff -NurpP --minimal linux-4.9.135/kernel/sched/cputime.c linux-4.9.135-vs2.3.9.8/kernel/sched/cputime.c
---- linux-4.9.135/kernel/sched/cputime.c       2018-10-20 10:39:21.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/kernel/sched/cputime.c     2018-10-20 11:46:17.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/kernel/sched/cputime.c linux-4.9/kernel/sched/cputime.c
+--- linux-4.9/kernel/sched/cputime.c   2021-02-24 15:47:32.484015158 +0100
++++ linux-4.9/kernel/sched/cputime.c   2021-02-24 15:47:45.114410284 +0100
 @@ -4,6 +4,7 @@
  #include <linux/kernel_stat.h>
  #include <linux/static_key.h>
 @@ -4,6 +4,7 @@
  #include <linux/kernel_stat.h>
  #include <linux/static_key.h>
@@ -13682,9 +13693,9 @@ diff -NurpP --minimal linux-4.9.135/kernel/sched/cputime.c linux-4.9.135-vs2.3.9
        account_group_system_time(p, cputime);
  
        /* Add system time to cpustat. */
        account_group_system_time(p, cputime);
  
        /* Add system time to cpustat. */
-diff -NurpP --minimal linux-4.9.135/kernel/sched/fair.c linux-4.9.135-vs2.3.9.8/kernel/sched/fair.c
---- linux-4.9.135/kernel/sched/fair.c  2018-10-20 10:39:21.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/kernel/sched/fair.c        2018-10-20 05:55:43.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/kernel/sched/fair.c linux-4.9/kernel/sched/fair.c
+--- linux-4.9/kernel/sched/fair.c      2021-02-24 15:47:32.487348596 +0100
++++ linux-4.9/kernel/sched/fair.c      2021-02-24 15:47:45.117743722 +0100
 @@ -30,6 +30,7 @@
  #include <linux/mempolicy.h>
  #include <linux/migrate.h>
 @@ -30,6 +30,7 @@
  #include <linux/mempolicy.h>
  #include <linux/migrate.h>
@@ -13693,7 +13704,7 @@ diff -NurpP --minimal linux-4.9.135/kernel/sched/fair.c linux-4.9.135-vs2.3.9.8/
  
  #include <trace/events/sched.h>
  
  
  #include <trace/events/sched.h>
  
-@@ -3411,6 +3412,8 @@ enqueue_entity(struct cfs_rq *cfs_rq, st
+@@ -3431,6 +3432,8 @@ enqueue_entity(struct cfs_rq *cfs_rq, st
                __enqueue_entity(cfs_rq, se);
        se->on_rq = 1;
  
                __enqueue_entity(cfs_rq, se);
        se->on_rq = 1;
  
@@ -13702,7 +13713,7 @@ diff -NurpP --minimal linux-4.9.135/kernel/sched/fair.c linux-4.9.135-vs2.3.9.8/
        if (cfs_rq->nr_running == 1) {
                list_add_leaf_cfs_rq(cfs_rq);
                check_enqueue_throttle(cfs_rq);
        if (cfs_rq->nr_running == 1) {
                list_add_leaf_cfs_rq(cfs_rq);
                check_enqueue_throttle(cfs_rq);
-@@ -3480,6 +3483,8 @@ dequeue_entity(struct cfs_rq *cfs_rq, st
+@@ -3500,6 +3503,8 @@ dequeue_entity(struct cfs_rq *cfs_rq, st
        if (se != cfs_rq->curr)
                __dequeue_entity(cfs_rq, se);
        se->on_rq = 0;
        if (se != cfs_rq->curr)
                __dequeue_entity(cfs_rq, se);
        se->on_rq = 0;
@@ -13711,9 +13722,9 @@ diff -NurpP --minimal linux-4.9.135/kernel/sched/fair.c linux-4.9.135-vs2.3.9.8/
        account_entity_dequeue(cfs_rq, se);
  
        /*
        account_entity_dequeue(cfs_rq, se);
  
        /*
-diff -NurpP --minimal linux-4.9.135/kernel/sched/loadavg.c linux-4.9.135-vs2.3.9.8/kernel/sched/loadavg.c
---- linux-4.9.135/kernel/sched/loadavg.c       2018-10-20 10:39:21.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/kernel/sched/loadavg.c     2018-10-20 04:58:15.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/kernel/sched/loadavg.c linux-4.9/kernel/sched/loadavg.c
+--- linux-4.9/kernel/sched/loadavg.c   2021-02-24 15:47:32.487348596 +0100
++++ linux-4.9/kernel/sched/loadavg.c   2021-02-24 15:47:45.117743722 +0100
 @@ -73,9 +73,16 @@ EXPORT_SYMBOL(avenrun); /* should be rem
   */
  void get_avenrun(unsigned long *loads, unsigned long offset, int shift)
 @@ -73,9 +73,16 @@ EXPORT_SYMBOL(avenrun); /* should be rem
   */
  void get_avenrun(unsigned long *loads, unsigned long offset, int shift)
@@ -13734,9 +13745,9 @@ diff -NurpP --minimal linux-4.9.135/kernel/sched/loadavg.c linux-4.9.135-vs2.3.9
  }
  
  long calc_load_fold_active(struct rq *this_rq, long adjust)
  }
  
  long calc_load_fold_active(struct rq *this_rq, long adjust)
-diff -NurpP --minimal linux-4.9.135/kernel/signal.c linux-4.9.135-vs2.3.9.8/kernel/signal.c
---- linux-4.9.135/kernel/signal.c      2018-10-20 10:39:21.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/kernel/signal.c    2018-10-20 04:58:15.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/kernel/signal.c linux-4.9/kernel/signal.c
+--- linux-4.9/kernel/signal.c  2021-02-24 15:47:32.490682033 +0100
++++ linux-4.9/kernel/signal.c  2021-02-24 15:47:45.117743722 +0100
 @@ -34,6 +34,8 @@
  #include <linux/compat.h>
  #include <linux/cn_proc.h>
 @@ -34,6 +34,8 @@
  #include <linux/compat.h>
  #include <linux/cn_proc.h>
@@ -13746,7 +13757,7 @@ diff -NurpP --minimal linux-4.9.135/kernel/signal.c linux-4.9.135-vs2.3.9.8/kern
  
  #define CREATE_TRACE_POINTS
  #include <trace/events/signal.h>
  
  #define CREATE_TRACE_POINTS
  #include <trace/events/signal.h>
-@@ -726,9 +728,18 @@ static int check_kill_permission(int sig
+@@ -782,9 +784,18 @@ static int check_kill_permission(int sig
        struct pid *sid;
        int error;
  
        struct pid *sid;
        int error;
  
@@ -13765,7 +13776,7 @@ diff -NurpP --minimal linux-4.9.135/kernel/signal.c linux-4.9.135-vs2.3.9.8/kern
        if (!si_fromuser(info))
                return 0;
  
        if (!si_fromuser(info))
                return 0;
  
-@@ -752,6 +763,20 @@ static int check_kill_permission(int sig
+@@ -808,6 +819,20 @@ static int check_kill_permission(int sig
                }
        }
  
                }
        }
  
@@ -13786,7 +13797,7 @@ diff -NurpP --minimal linux-4.9.135/kernel/signal.c linux-4.9.135-vs2.3.9.8/kern
        return security_task_kill(t, info, sig, 0);
  }
  
        return security_task_kill(t, info, sig, 0);
  }
  
-@@ -1303,8 +1328,14 @@ int kill_pid_info(int sig, struct siginf
+@@ -1359,8 +1384,14 @@ int kill_pid_info(int sig, struct siginf
        for (;;) {
                rcu_read_lock();
                p = pid_task(pid, PIDTYPE_PID);
        for (;;) {
                rcu_read_lock();
                p = pid_task(pid, PIDTYPE_PID);
@@ -13803,7 +13814,7 @@ diff -NurpP --minimal linux-4.9.135/kernel/signal.c linux-4.9.135-vs2.3.9.8/kern
                rcu_read_unlock();
                if (likely(!p || error != -ESRCH))
                        return error;
                rcu_read_unlock();
                if (likely(!p || error != -ESRCH))
                        return error;
-@@ -1349,7 +1380,7 @@ int kill_pid_info_as_cred(int sig, struc
+@@ -1405,7 +1436,7 @@ int kill_pid_info_as_cred(int sig, struc
  
        rcu_read_lock();
        p = pid_task(pid, PIDTYPE_PID);
  
        rcu_read_lock();
        p = pid_task(pid, PIDTYPE_PID);
@@ -13812,7 +13823,7 @@ diff -NurpP --minimal linux-4.9.135/kernel/signal.c linux-4.9.135-vs2.3.9.8/kern
                ret = -ESRCH;
                goto out_unlock;
        }
                ret = -ESRCH;
                goto out_unlock;
        }
-@@ -1405,8 +1436,10 @@ static int kill_something_info(int sig,
+@@ -1461,8 +1492,10 @@ static int kill_something_info(int sig,
                struct task_struct * p;
  
                for_each_process(p) {
                struct task_struct * p;
  
                for_each_process(p) {
@@ -13825,7 +13836,7 @@ diff -NurpP --minimal linux-4.9.135/kernel/signal.c linux-4.9.135-vs2.3.9.8/kern
                                int err = group_send_sig_info(sig, info, p);
                                ++count;
                                if (err != -EPERM)
                                int err = group_send_sig_info(sig, info, p);
                                ++count;
                                if (err != -EPERM)
-@@ -2259,6 +2292,11 @@ relock:
+@@ -2333,6 +2366,11 @@ relock:
                                !sig_kernel_only(signr))
                        continue;
  
                                !sig_kernel_only(signr))
                        continue;
  
@@ -13837,9 +13848,9 @@ diff -NurpP --minimal linux-4.9.135/kernel/signal.c linux-4.9.135-vs2.3.9.8/kern
                if (sig_kernel_stop(signr)) {
                        /*
                         * The default action is to stop all threads in
                if (sig_kernel_stop(signr)) {
                        /*
                         * The default action is to stop all threads in
-diff -NurpP --minimal linux-4.9.135/kernel/softirq.c linux-4.9.135-vs2.3.9.8/kernel/softirq.c
---- linux-4.9.135/kernel/softirq.c     2018-10-20 10:39:21.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/kernel/softirq.c   2018-10-20 05:55:43.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/kernel/softirq.c linux-4.9/kernel/softirq.c
+--- linux-4.9/kernel/softirq.c 2021-02-24 15:47:32.490682033 +0100
++++ linux-4.9/kernel/softirq.c 2021-02-24 15:47:45.117743722 +0100
 @@ -26,6 +26,7 @@
  #include <linux/smpboot.h>
  #include <linux/tick.h>
 @@ -26,6 +26,7 @@
  #include <linux/smpboot.h>
  #include <linux/tick.h>
@@ -13848,9 +13859,9 @@ diff -NurpP --minimal linux-4.9.135/kernel/softirq.c linux-4.9.135-vs2.3.9.8/ker
  
  #define CREATE_TRACE_POINTS
  #include <trace/events/irq.h>
  
  #define CREATE_TRACE_POINTS
  #include <trace/events/irq.h>
-diff -NurpP --minimal linux-4.9.135/kernel/sys.c linux-4.9.135-vs2.3.9.8/kernel/sys.c
---- linux-4.9.135/kernel/sys.c 2018-10-20 10:39:21.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/kernel/sys.c       2018-10-20 05:55:43.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/kernel/sys.c linux-4.9/kernel/sys.c
+--- linux-4.9/kernel/sys.c     2021-02-24 15:47:32.490682033 +0100
++++ linux-4.9/kernel/sys.c     2021-02-24 15:47:45.117743722 +0100
 @@ -56,6 +56,7 @@
  #include <linux/nospec.h>
  
 @@ -56,6 +56,7 @@
  #include <linux/nospec.h>
  
@@ -13898,7 +13909,7 @@ diff -NurpP --minimal linux-4.9.135/kernel/sys.c linux-4.9.135-vs2.3.9.8/kernel/
                        if (uid_eq(task_uid(p), uid) && task_pid_vnr(p)) {
                                niceval = nice_to_rlimit(task_nice(p));
                                if (niceval > retval)
                        if (uid_eq(task_uid(p), uid) && task_pid_vnr(p)) {
                                niceval = nice_to_rlimit(task_nice(p));
                                if (niceval > retval)
-@@ -1211,7 +1221,8 @@ SYSCALL_DEFINE2(sethostname, char __user
+@@ -1213,7 +1223,8 @@ SYSCALL_DEFINE2(sethostname, char __user
        int errno;
        char tmp[__NEW_UTS_LEN];
  
        int errno;
        char tmp[__NEW_UTS_LEN];
  
@@ -13908,7 +13919,7 @@ diff -NurpP --minimal linux-4.9.135/kernel/sys.c linux-4.9.135-vs2.3.9.8/kernel/
                return -EPERM;
  
        if (len < 0 || len > __NEW_UTS_LEN)
                return -EPERM;
  
        if (len < 0 || len > __NEW_UTS_LEN)
-@@ -1264,7 +1275,8 @@ SYSCALL_DEFINE2(setdomainname, char __us
+@@ -1266,7 +1277,8 @@ SYSCALL_DEFINE2(setdomainname, char __us
        int errno;
        char tmp[__NEW_UTS_LEN];
  
        int errno;
        char tmp[__NEW_UTS_LEN];
  
@@ -13918,7 +13929,7 @@ diff -NurpP --minimal linux-4.9.135/kernel/sys.c linux-4.9.135-vs2.3.9.8/kernel/
                return -EPERM;
        if (len < 0 || len > __NEW_UTS_LEN)
                return -EINVAL;
                return -EPERM;
        if (len < 0 || len > __NEW_UTS_LEN)
                return -EINVAL;
-@@ -1384,7 +1396,7 @@ int do_prlimit(struct task_struct *tsk,
+@@ -1386,7 +1398,7 @@ int do_prlimit(struct task_struct *tsk,
                /* Keep the capable check against init_user_ns until
                   cgroups can contain all limits */
                if (new_rlim->rlim_max > rlim->rlim_max &&
                /* Keep the capable check against init_user_ns until
                   cgroups can contain all limits */
                if (new_rlim->rlim_max > rlim->rlim_max &&
@@ -13927,7 +13938,7 @@ diff -NurpP --minimal linux-4.9.135/kernel/sys.c linux-4.9.135-vs2.3.9.8/kernel/
                        retval = -EPERM;
                if (!retval)
                        retval = security_task_setrlimit(tsk->group_leader,
                        retval = -EPERM;
                if (!retval)
                        retval = security_task_setrlimit(tsk->group_leader,
-@@ -1437,7 +1449,8 @@ static int check_prlimit_permission(stru
+@@ -1439,7 +1451,8 @@ static int check_prlimit_permission(stru
            gid_eq(cred->gid, tcred->sgid) &&
            gid_eq(cred->gid, tcred->gid))
                return 0;
            gid_eq(cred->gid, tcred->sgid) &&
            gid_eq(cred->gid, tcred->gid))
                return 0;
@@ -13937,9 +13948,23 @@ diff -NurpP --minimal linux-4.9.135/kernel/sys.c linux-4.9.135-vs2.3.9.8/kernel/
                return 0;
  
        return -EPERM;
                return 0;
  
        return -EPERM;
-diff -NurpP --minimal linux-4.9.135/kernel/sysctl.c linux-4.9.135-vs2.3.9.8/kernel/sysctl.c
---- linux-4.9.135/kernel/sysctl.c      2018-10-20 10:39:21.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/kernel/sysctl.c    2018-10-20 05:55:43.000000000 +0000
+@@ -2328,7 +2341,12 @@ static int do_sysinfo(struct sysinfo *in
+       get_avenrun(info->loads, 0, SI_LOAD_SHIFT - FSHIFT);
+-      info->procs = nr_threads;
++      if (vx_flags(VXF_VIRT_LOAD, 0)) {
++              struct vx_info *vxi = current_vx_info();
++              info->procs = atomic_read(&vxi->cvirt.nr_threads);
++      } else {
++              info->procs = nr_threads;
++      }
+       si_meminfo(info);
+       si_swapinfo(info);
+diff -urNp -x '*.orig' linux-4.9/kernel/sysctl.c linux-4.9/kernel/sysctl.c
+--- linux-4.9/kernel/sysctl.c  2021-02-24 15:47:32.490682033 +0100
++++ linux-4.9/kernel/sysctl.c  2021-02-24 15:47:45.117743722 +0100
 @@ -87,6 +87,7 @@
  #if defined(CONFIG_PROVE_LOCKING) || defined(CONFIG_LOCK_STAT)
  #include <linux/lockdep.h>
 @@ -87,6 +87,7 @@
  #if defined(CONFIG_PROVE_LOCKING) || defined(CONFIG_LOCK_STAT)
  #include <linux/lockdep.h>
@@ -13948,7 +13973,7 @@ diff -NurpP --minimal linux-4.9.135/kernel/sysctl.c linux-4.9.135-vs2.3.9.8/kern
  #ifdef CONFIG_CHR_DEV_SG
  #include <scsi/sg.h>
  #endif
  #ifdef CONFIG_CHR_DEV_SG
  #include <scsi/sg.h>
  #endif
-@@ -282,6 +283,13 @@ static int max_extfrag_threshold = 1000;
+@@ -284,6 +285,13 @@ static int max_extfrag_threshold = 1000;
  
  static struct ctl_table kern_table[] = {
        {
  
  static struct ctl_table kern_table[] = {
        {
@@ -13962,7 +13987,7 @@ diff -NurpP --minimal linux-4.9.135/kernel/sysctl.c linux-4.9.135-vs2.3.9.8/kern
                .procname       = "sched_child_runs_first",
                .data           = &sysctl_sched_child_runs_first,
                .maxlen         = sizeof(unsigned int),
                .procname       = "sched_child_runs_first",
                .data           = &sysctl_sched_child_runs_first,
                .maxlen         = sizeof(unsigned int),
-@@ -1427,7 +1435,6 @@ static struct ctl_table vm_table[] = {
+@@ -1429,7 +1437,6 @@ static struct ctl_table vm_table[] = {
                .extra1         = &zero,
                .extra2         = &one,
        },
                .extra1         = &zero,
                .extra2         = &one,
        },
@@ -13970,9 +13995,9 @@ diff -NurpP --minimal linux-4.9.135/kernel/sysctl.c linux-4.9.135-vs2.3.9.8/kern
  #endif /* CONFIG_COMPACTION */
        {
                .procname       = "min_free_kbytes",
  #endif /* CONFIG_COMPACTION */
        {
                .procname       = "min_free_kbytes",
-diff -NurpP --minimal linux-4.9.135/kernel/sysctl_binary.c linux-4.9.135-vs2.3.9.8/kernel/sysctl_binary.c
---- linux-4.9.135/kernel/sysctl_binary.c       2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/kernel/sysctl_binary.c     2018-10-20 04:58:15.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/kernel/sysctl_binary.c linux-4.9/kernel/sysctl_binary.c
+--- linux-4.9/kernel/sysctl_binary.c   2016-12-11 20:17:54.000000000 +0100
++++ linux-4.9/kernel/sysctl_binary.c   2021-02-24 15:47:45.117743722 +0100
 @@ -74,6 +74,7 @@ static const struct bin_table bin_kern_t
  
        { CTL_INT,      KERN_PANIC,                     "panic" },
 @@ -74,6 +74,7 @@ static const struct bin_table bin_kern_t
  
        { CTL_INT,      KERN_PANIC,                     "panic" },
@@ -13981,9 +14006,9 @@ diff -NurpP --minimal linux-4.9.135/kernel/sysctl_binary.c linux-4.9.135-vs2.3.9
  
        { CTL_STR,      KERN_SPARC_REBOOT,              "reboot-cmd" },
        { CTL_INT,      KERN_CTLALTDEL,                 "ctrl-alt-del" },
  
        { CTL_STR,      KERN_SPARC_REBOOT,              "reboot-cmd" },
        { CTL_INT,      KERN_CTLALTDEL,                 "ctrl-alt-del" },
-diff -NurpP --minimal linux-4.9.135/kernel/time/posix-timers.c linux-4.9.135-vs2.3.9.8/kernel/time/posix-timers.c
---- linux-4.9.135/kernel/time/posix-timers.c   2018-10-20 10:39:21.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/kernel/time/posix-timers.c 2018-10-20 04:58:15.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/kernel/time/posix-timers.c linux-4.9/kernel/time/posix-timers.c
+--- linux-4.9/kernel/time/posix-timers.c       2021-02-24 15:47:32.494015471 +0100
++++ linux-4.9/kernel/time/posix-timers.c       2021-02-24 15:47:45.117743722 +0100
 @@ -48,6 +48,7 @@
  #include <linux/workqueue.h>
  #include <linux/export.h>
 @@ -48,6 +48,7 @@
  #include <linux/workqueue.h>
  #include <linux/export.h>
@@ -13992,7 +14017,7 @@ diff -NurpP --minimal linux-4.9.135/kernel/time/posix-timers.c linux-4.9.135-vs2
  
  #include "timekeeping.h"
  
  
  #include "timekeeping.h"
  
-@@ -407,6 +408,7 @@ int posix_timer_event(struct k_itimer *t
+@@ -417,6 +418,7 @@ int posix_timer_event(struct k_itimer *t
  {
        struct task_struct *task;
        int shared, ret = -1;
  {
        struct task_struct *task;
        int shared, ret = -1;
@@ -14000,7 +14025,7 @@ diff -NurpP --minimal linux-4.9.135/kernel/time/posix-timers.c linux-4.9.135-vs2
        /*
         * FIXME: if ->sigq is queued we can race with
         * dequeue_signal()->do_schedule_next_timer().
        /*
         * FIXME: if ->sigq is queued we can race with
         * dequeue_signal()->do_schedule_next_timer().
-@@ -423,10 +425,18 @@ int posix_timer_event(struct k_itimer *t
+@@ -433,10 +435,18 @@ int posix_timer_event(struct k_itimer *t
        rcu_read_lock();
        task = pid_task(timr->it_pid, PIDTYPE_PID);
        if (task) {
        rcu_read_lock();
        task = pid_task(timr->it_pid, PIDTYPE_PID);
        if (task) {
@@ -14019,9 +14044,9 @@ diff -NurpP --minimal linux-4.9.135/kernel/time/posix-timers.c linux-4.9.135-vs2
        /* If we failed to send the signal the timer stops. */
        return ret > 0;
  }
        /* If we failed to send the signal the timer stops. */
        return ret > 0;
  }
-diff -NurpP --minimal linux-4.9.135/kernel/time/time.c linux-4.9.135-vs2.3.9.8/kernel/time/time.c
---- linux-4.9.135/kernel/time/time.c   2018-10-20 10:39:21.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/kernel/time/time.c 2018-10-20 05:55:43.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/kernel/time/time.c linux-4.9/kernel/time/time.c
+--- linux-4.9/kernel/time/time.c       2021-02-24 15:47:32.494015471 +0100
++++ linux-4.9/kernel/time/time.c       2021-02-24 15:47:45.117743722 +0100
 @@ -38,6 +38,7 @@
  #include <linux/fs.h>
  #include <linux/math64.h>
 @@ -38,6 +38,7 @@
  #include <linux/fs.h>
  #include <linux/math64.h>
@@ -14048,24 +14073,41 @@ diff -NurpP --minimal linux-4.9.135/kernel/time/time.c linux-4.9.135-vs2.3.9.8/k
        return 0;
  }
  
        return 0;
  }
  
-diff -NurpP --minimal linux-4.9.135/kernel/time/timekeeping.c linux-4.9.135-vs2.3.9.8/kernel/time/timekeeping.c
---- linux-4.9.135/kernel/time/timekeeping.c    2018-10-20 10:39:21.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/kernel/time/timekeeping.c  2018-10-20 04:58:15.000000000 +0000
-@@ -23,6 +23,7 @@
+diff -urNp -x '*.orig' linux-4.9/kernel/time/timekeeping.c linux-4.9/kernel/time/timekeeping.c
+--- linux-4.9/kernel/time/timekeeping.c        2021-02-24 15:47:32.494015471 +0100
++++ linux-4.9/kernel/time/timekeeping.c        2021-02-24 15:47:45.121077159 +0100
+@@ -23,6 +23,8 @@
  #include <linux/stop_machine.h>
  #include <linux/pvclock_gtod.h>
  #include <linux/compiler.h>
 +#include <linux/vs_time.h>
  #include <linux/stop_machine.h>
  #include <linux/pvclock_gtod.h>
  #include <linux/compiler.h>
 +#include <linux/vs_time.h>
++#include <linux/vs_base.h>
  
  #include "tick-internal.h"
  #include "ntp_internal.h"
  
  #include "tick-internal.h"
  #include "ntp_internal.h"
-diff -NurpP --minimal linux-4.9.135/kernel/time/timer.c linux-4.9.135-vs2.3.9.8/kernel/time/timer.c
---- linux-4.9.135/kernel/time/timer.c  2018-10-20 10:39:21.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/kernel/time/timer.c        2018-10-20 05:55:43.000000000 +0000
-@@ -42,6 +42,10 @@
- #include <linux/sched/sysctl.h>
+@@ -768,6 +770,15 @@ ktime_t ktime_get_with_offset(enum tk_of
+       } while (read_seqcount_retry(&tk_core.seq, seq));
++#ifdef CONFIG_VSERVER_VTIME
++      if ((offs == TK_OFFS_BOOT) &&
++              vx_flags(VXF_VIRT_UPTIME, 0) &&
++              !vx_check(0, VS_ADMIN|VS_WATCH)) {
++              struct vx_info *vxi = current_vx_info();
++              ktime_t bias_uptime = timespec64_to_ktime(vxi->cvirt.bias_uptime);
++              base = ktime_sub(base, bias_uptime);
++      }
++#endif
+       return ktime_add_ns(base, nsecs);
+ }
+diff -urNp -x '*.orig' linux-4.9/kernel/time/timer.c linux-4.9/kernel/time/timer.c
+--- linux-4.9/kernel/time/timer.c      2021-02-24 15:47:32.494015471 +0100
++++ linux-4.9/kernel/time/timer.c      2021-02-24 15:47:45.121077159 +0100
+@@ -43,6 +43,10 @@
  #include <linux/slab.h>
  #include <linux/compat.h>
  #include <linux/slab.h>
  #include <linux/compat.h>
+ #include <linux/random.h>
 +#include <linux/vs_base.h>
 +#include <linux/vs_cvirt.h>
 +#include <linux/vs_pid.h>
 +#include <linux/vs_base.h>
 +#include <linux/vs_cvirt.h>
 +#include <linux/vs_pid.h>
@@ -14073,9 +14115,9 @@ diff -NurpP --minimal linux-4.9.135/kernel/time/timer.c linux-4.9.135-vs2.3.9.8/
  
  #include <asm/uaccess.h>
  #include <asm/unistd.h>
  
  #include <asm/uaccess.h>
  #include <asm/unistd.h>
-diff -NurpP --minimal linux-4.9.135/kernel/user_namespace.c linux-4.9.135-vs2.3.9.8/kernel/user_namespace.c
---- linux-4.9.135/kernel/user_namespace.c      2018-10-20 10:39:23.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/kernel/user_namespace.c    2018-10-20 05:55:43.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/kernel/user_namespace.c linux-4.9/kernel/user_namespace.c
+--- linux-4.9/kernel/user_namespace.c  2021-02-24 15:47:32.504015783 +0100
++++ linux-4.9/kernel/user_namespace.c  2021-02-24 15:47:45.121077159 +0100
 @@ -22,6 +22,7 @@
  #include <linux/ctype.h>
  #include <linux/projid.h>
 @@ -22,6 +22,7 @@
  #include <linux/ctype.h>
  #include <linux/projid.h>
@@ -14119,9 +14161,9 @@ diff -NurpP --minimal linux-4.9.135/kernel/user_namespace.c linux-4.9.135-vs2.3.
  /**
   *    make_kprojid - Map a user-namespace projid pair into a kprojid.
   *    @ns:  User namespace that the projid is in
  /**
   *    make_kprojid - Map a user-namespace projid pair into a kprojid.
   *    @ns:  User namespace that the projid is in
-diff -NurpP --minimal linux-4.9.135/kernel/utsname.c linux-4.9.135-vs2.3.9.8/kernel/utsname.c
---- linux-4.9.135/kernel/utsname.c     2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/kernel/utsname.c   2018-10-20 04:58:15.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/kernel/utsname.c linux-4.9/kernel/utsname.c
+--- linux-4.9/kernel/utsname.c 2016-12-11 20:17:54.000000000 +0100
++++ linux-4.9/kernel/utsname.c 2021-02-24 15:47:45.121077159 +0100
 @@ -16,6 +16,7 @@
  #include <linux/slab.h>
  #include <linux/user_namespace.h>
 @@ -16,6 +16,7 @@
  #include <linux/slab.h>
  #include <linux/user_namespace.h>
@@ -14150,9 +14192,9 @@ diff -NurpP --minimal linux-4.9.135/kernel/utsname.c linux-4.9.135-vs2.3.9.8/ker
        kfree(ns);
  }
  
        kfree(ns);
  }
  
-diff -NurpP --minimal linux-4.9.135/kernel/vserver/Kconfig linux-4.9.135-vs2.3.9.8/kernel/vserver/Kconfig
---- linux-4.9.135/kernel/vserver/Kconfig       1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/kernel/vserver/Kconfig     2018-10-20 04:58:15.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/kernel/vserver/Kconfig linux-4.9/kernel/vserver/Kconfig
+--- linux-4.9/kernel/vserver/Kconfig   1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/kernel/vserver/Kconfig   2021-02-24 15:47:45.124410596 +0100
 @@ -0,0 +1,230 @@
 +#
 +# Linux VServer configuration
 @@ -0,0 +1,230 @@
 +#
 +# Linux VServer configuration
@@ -14384,9 +14426,9 @@ diff -NurpP --minimal linux-4.9.135/kernel/vserver/Kconfig linux-4.9.135-vs2.3.9
 +      bool
 +      default n
 +
 +      bool
 +      default n
 +
-diff -NurpP --minimal linux-4.9.135/kernel/vserver/Makefile linux-4.9.135-vs2.3.9.8/kernel/vserver/Makefile
---- linux-4.9.135/kernel/vserver/Makefile      1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/kernel/vserver/Makefile    2018-10-20 04:58:15.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/kernel/vserver/Makefile linux-4.9/kernel/vserver/Makefile
+--- linux-4.9/kernel/vserver/Makefile  1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/kernel/vserver/Makefile  2021-02-24 15:47:45.124410596 +0100
 @@ -0,0 +1,18 @@
 +#
 +# Makefile for the Linux vserver routines.
 @@ -0,0 +1,18 @@
 +#
 +# Makefile for the Linux vserver routines.
@@ -14406,9 +14448,9 @@ diff -NurpP --minimal linux-4.9.135/kernel/vserver/Makefile linux-4.9.135-vs2.3.
 +vserver-$(CONFIG_VSERVER_MONITOR) += monitor.o
 +vserver-$(CONFIG_VSERVER_DEVICE) += device.o
 +
 +vserver-$(CONFIG_VSERVER_MONITOR) += monitor.o
 +vserver-$(CONFIG_VSERVER_DEVICE) += device.o
 +
-diff -NurpP --minimal linux-4.9.135/kernel/vserver/cacct.c linux-4.9.135-vs2.3.9.8/kernel/vserver/cacct.c
---- linux-4.9.135/kernel/vserver/cacct.c       1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/kernel/vserver/cacct.c     2018-10-20 04:58:15.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/kernel/vserver/cacct.c linux-4.9/kernel/vserver/cacct.c
+--- linux-4.9/kernel/vserver/cacct.c   1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/kernel/vserver/cacct.c   2021-02-24 15:47:45.121077159 +0100
 @@ -0,0 +1,42 @@
 +/*
 + *  linux/kernel/vserver/cacct.c
 @@ -0,0 +1,42 @@
 +/*
 + *  linux/kernel/vserver/cacct.c
@@ -14452,9 +14494,9 @@ diff -NurpP --minimal linux-4.9.135/kernel/vserver/cacct.c linux-4.9.135-vs2.3.9
 +      return 0;
 +}
 +
 +      return 0;
 +}
 +
-diff -NurpP --minimal linux-4.9.135/kernel/vserver/cacct_init.h linux-4.9.135-vs2.3.9.8/kernel/vserver/cacct_init.h
---- linux-4.9.135/kernel/vserver/cacct_init.h  1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/kernel/vserver/cacct_init.h        2018-10-20 04:58:15.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/kernel/vserver/cacct_init.h linux-4.9/kernel/vserver/cacct_init.h
+--- linux-4.9/kernel/vserver/cacct_init.h      1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/kernel/vserver/cacct_init.h      2021-02-24 15:47:45.121077159 +0100
 @@ -0,0 +1,25 @@
 +
 +
 @@ -0,0 +1,25 @@
 +
 +
@@ -14481,9 +14523,9 @@ diff -NurpP --minimal linux-4.9.135/kernel/vserver/cacct_init.h linux-4.9.135-vs
 +      return;
 +}
 +
 +      return;
 +}
 +
-diff -NurpP --minimal linux-4.9.135/kernel/vserver/cacct_proc.h linux-4.9.135-vs2.3.9.8/kernel/vserver/cacct_proc.h
---- linux-4.9.135/kernel/vserver/cacct_proc.h  1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/kernel/vserver/cacct_proc.h        2018-10-20 04:58:15.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/kernel/vserver/cacct_proc.h linux-4.9/kernel/vserver/cacct_proc.h
+--- linux-4.9/kernel/vserver/cacct_proc.h      1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/kernel/vserver/cacct_proc.h      2021-02-24 15:47:45.121077159 +0100
 @@ -0,0 +1,53 @@
 +#ifndef _VX_CACCT_PROC_H
 +#define _VX_CACCT_PROC_H
 @@ -0,0 +1,53 @@
 +#ifndef _VX_CACCT_PROC_H
 +#define _VX_CACCT_PROC_H
@@ -14538,9 +14580,9 @@ diff -NurpP --minimal linux-4.9.135/kernel/vserver/cacct_proc.h linux-4.9.135-vs
 +}
 +
 +#endif        /* _VX_CACCT_PROC_H */
 +}
 +
 +#endif        /* _VX_CACCT_PROC_H */
-diff -NurpP --minimal linux-4.9.135/kernel/vserver/context.c linux-4.9.135-vs2.3.9.8/kernel/vserver/context.c
---- linux-4.9.135/kernel/vserver/context.c     1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/kernel/vserver/context.c   2018-10-20 04:58:15.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/kernel/vserver/context.c linux-4.9/kernel/vserver/context.c
+--- linux-4.9/kernel/vserver/context.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/kernel/vserver/context.c 2021-02-24 15:47:45.121077159 +0100
 @@ -0,0 +1,1119 @@
 +/*
 + *  linux/kernel/vserver/context.c
 @@ -0,0 +1,1119 @@
 +/*
 + *  linux/kernel/vserver/context.c
@@ -15661,9 +15703,9 @@ diff -NurpP --minimal linux-4.9.135/kernel/vserver/context.c linux-4.9.135-vs2.3
 +
 +EXPORT_SYMBOL_GPL(free_vx_info);
 +
 +
 +EXPORT_SYMBOL_GPL(free_vx_info);
 +
-diff -NurpP --minimal linux-4.9.135/kernel/vserver/cvirt.c linux-4.9.135-vs2.3.9.8/kernel/vserver/cvirt.c
---- linux-4.9.135/kernel/vserver/cvirt.c       1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/kernel/vserver/cvirt.c     2018-10-20 04:58:15.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/kernel/vserver/cvirt.c linux-4.9/kernel/vserver/cvirt.c
+--- linux-4.9/kernel/vserver/cvirt.c   1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/kernel/vserver/cvirt.c   2021-02-24 15:47:45.121077159 +0100
 @@ -0,0 +1,350 @@
 +/*
 + *  linux/kernel/vserver/cvirt.c
 @@ -0,0 +1,350 @@
 +/*
 + *  linux/kernel/vserver/cvirt.c
@@ -16015,9 +16057,9 @@ diff -NurpP --minimal linux-4.9.135/kernel/vserver/cvirt.c linux-4.9.135-vs2.3.9
 +
 +#endif
 +
 +
 +#endif
 +
-diff -NurpP --minimal linux-4.9.135/kernel/vserver/cvirt_init.h linux-4.9.135-vs2.3.9.8/kernel/vserver/cvirt_init.h
---- linux-4.9.135/kernel/vserver/cvirt_init.h  1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/kernel/vserver/cvirt_init.h        2018-10-20 04:58:15.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/kernel/vserver/cvirt_init.h linux-4.9/kernel/vserver/cvirt_init.h
+--- linux-4.9/kernel/vserver/cvirt_init.h      1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/kernel/vserver/cvirt_init.h      2021-02-24 15:47:45.121077159 +0100
 @@ -0,0 +1,70 @@
 +
 +
 @@ -0,0 +1,70 @@
 +
 +
@@ -16089,9 +16131,9 @@ diff -NurpP --minimal linux-4.9.135/kernel/vserver/cvirt_init.h linux-4.9.135-vs
 +      return;
 +}
 +
 +      return;
 +}
 +
-diff -NurpP --minimal linux-4.9.135/kernel/vserver/cvirt_proc.h linux-4.9.135-vs2.3.9.8/kernel/vserver/cvirt_proc.h
---- linux-4.9.135/kernel/vserver/cvirt_proc.h  1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/kernel/vserver/cvirt_proc.h        2018-10-20 04:58:15.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/kernel/vserver/cvirt_proc.h linux-4.9/kernel/vserver/cvirt_proc.h
+--- linux-4.9/kernel/vserver/cvirt_proc.h      1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/kernel/vserver/cvirt_proc.h      2021-02-24 15:47:45.121077159 +0100
 @@ -0,0 +1,123 @@
 +#ifndef _VX_CVIRT_PROC_H
 +#define _VX_CVIRT_PROC_H
 @@ -0,0 +1,123 @@
 +#ifndef _VX_CVIRT_PROC_H
 +#define _VX_CVIRT_PROC_H
@@ -16216,9 +16258,9 @@ diff -NurpP --minimal linux-4.9.135/kernel/vserver/cvirt_proc.h linux-4.9.135-vs
 +}
 +
 +#endif        /* _VX_CVIRT_PROC_H */
 +}
 +
 +#endif        /* _VX_CVIRT_PROC_H */
-diff -NurpP --minimal linux-4.9.135/kernel/vserver/debug.c linux-4.9.135-vs2.3.9.8/kernel/vserver/debug.c
---- linux-4.9.135/kernel/vserver/debug.c       1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/kernel/vserver/debug.c     2018-10-20 04:58:15.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/kernel/vserver/debug.c linux-4.9/kernel/vserver/debug.c
+--- linux-4.9/kernel/vserver/debug.c   1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/kernel/vserver/debug.c   2021-02-24 15:47:45.121077159 +0100
 @@ -0,0 +1,32 @@
 +/*
 + *  kernel/vserver/debug.c
 @@ -0,0 +1,32 @@
 +/*
 + *  kernel/vserver/debug.c
@@ -16252,9 +16294,9 @@ diff -NurpP --minimal linux-4.9.135/kernel/vserver/debug.c linux-4.9.135-vs2.3.9
 +
 +EXPORT_SYMBOL_GPL(dump_vx_info);
 +
 +
 +EXPORT_SYMBOL_GPL(dump_vx_info);
 +
-diff -NurpP --minimal linux-4.9.135/kernel/vserver/device.c linux-4.9.135-vs2.3.9.8/kernel/vserver/device.c
---- linux-4.9.135/kernel/vserver/device.c      1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/kernel/vserver/device.c    2018-10-20 04:58:15.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/kernel/vserver/device.c linux-4.9/kernel/vserver/device.c
+--- linux-4.9/kernel/vserver/device.c  1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/kernel/vserver/device.c  2021-02-24 15:47:45.121077159 +0100
 @@ -0,0 +1,443 @@
 +/*
 + *  linux/kernel/vserver/device.c
 @@ -0,0 +1,443 @@
 +/*
 + *  linux/kernel/vserver/device.c
@@ -16699,9 +16741,9 @@ diff -NurpP --minimal linux-4.9.135/kernel/vserver/device.c linux-4.9.135-vs2.3.
 +#endif        /* CONFIG_COMPAT */
 +
 +
 +#endif        /* CONFIG_COMPAT */
 +
 +
-diff -NurpP --minimal linux-4.9.135/kernel/vserver/dlimit.c linux-4.9.135-vs2.3.9.8/kernel/vserver/dlimit.c
---- linux-4.9.135/kernel/vserver/dlimit.c      1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/kernel/vserver/dlimit.c    2018-10-20 04:58:15.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/kernel/vserver/dlimit.c linux-4.9/kernel/vserver/dlimit.c
+--- linux-4.9/kernel/vserver/dlimit.c  1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/kernel/vserver/dlimit.c  2021-02-24 15:47:45.121077159 +0100
 @@ -0,0 +1,528 @@
 +/*
 + *  linux/kernel/vserver/dlimit.c
 @@ -0,0 +1,528 @@
 +/*
 + *  linux/kernel/vserver/dlimit.c
@@ -17231,9 +17273,9 @@ diff -NurpP --minimal linux-4.9.135/kernel/vserver/dlimit.c linux-4.9.135-vs2.3.
 +EXPORT_SYMBOL_GPL(locate_dl_info);
 +EXPORT_SYMBOL_GPL(rcu_free_dl_info);
 +
 +EXPORT_SYMBOL_GPL(locate_dl_info);
 +EXPORT_SYMBOL_GPL(rcu_free_dl_info);
 +
-diff -NurpP --minimal linux-4.9.135/kernel/vserver/helper.c linux-4.9.135-vs2.3.9.8/kernel/vserver/helper.c
---- linux-4.9.135/kernel/vserver/helper.c      1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/kernel/vserver/helper.c    2018-10-20 04:58:15.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/kernel/vserver/helper.c linux-4.9/kernel/vserver/helper.c
+--- linux-4.9/kernel/vserver/helper.c  1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/kernel/vserver/helper.c  2021-02-24 15:47:45.124410596 +0100
 @@ -0,0 +1,242 @@
 +/*
 + *  linux/kernel/vserver/helper.c
 @@ -0,0 +1,242 @@
 +/*
 + *  linux/kernel/vserver/helper.c
@@ -17477,9 +17519,9 @@ diff -NurpP --minimal linux-4.9.135/kernel/vserver/helper.c linux-4.9.135-vs2.3.
 +      return do_vshelper(vshelper_path, argv, envp, 1);
 +}
 +
 +      return do_vshelper(vshelper_path, argv, envp, 1);
 +}
 +
-diff -NurpP --minimal linux-4.9.135/kernel/vserver/history.c linux-4.9.135-vs2.3.9.8/kernel/vserver/history.c
---- linux-4.9.135/kernel/vserver/history.c     1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/kernel/vserver/history.c   2018-10-20 04:58:15.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/kernel/vserver/history.c linux-4.9/kernel/vserver/history.c
+--- linux-4.9/kernel/vserver/history.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/kernel/vserver/history.c 2021-02-24 15:47:45.124410596 +0100
 @@ -0,0 +1,258 @@
 +/*
 + *  kernel/vserver/history.c
 @@ -0,0 +1,258 @@
 +/*
 + *  kernel/vserver/history.c
@@ -17739,9 +17781,9 @@ diff -NurpP --minimal linux-4.9.135/kernel/vserver/history.c linux-4.9.135-vs2.3
 +
 +#endif        /* CONFIG_COMPAT */
 +
 +
 +#endif        /* CONFIG_COMPAT */
 +
-diff -NurpP --minimal linux-4.9.135/kernel/vserver/inet.c linux-4.9.135-vs2.3.9.8/kernel/vserver/inet.c
---- linux-4.9.135/kernel/vserver/inet.c        1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/kernel/vserver/inet.c      2018-10-20 04:58:15.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/kernel/vserver/inet.c linux-4.9/kernel/vserver/inet.c
+--- linux-4.9/kernel/vserver/inet.c    1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/kernel/vserver/inet.c    2021-02-24 15:47:45.124410596 +0100
 @@ -0,0 +1,236 @@
 +
 +#include <linux/in.h>
 @@ -0,0 +1,236 @@
 +
 +#include <linux/in.h>
@@ -17979,9 +18021,9 @@ diff -NurpP --minimal linux-4.9.135/kernel/vserver/inet.c linux-4.9.135-vs2.3.9.
 +
 +EXPORT_SYMBOL_GPL(ip_v4_find_src);
 +
 +
 +EXPORT_SYMBOL_GPL(ip_v4_find_src);
 +
-diff -NurpP --minimal linux-4.9.135/kernel/vserver/init.c linux-4.9.135-vs2.3.9.8/kernel/vserver/init.c
---- linux-4.9.135/kernel/vserver/init.c        1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/kernel/vserver/init.c      2018-10-20 04:58:15.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/kernel/vserver/init.c linux-4.9/kernel/vserver/init.c
+--- linux-4.9/kernel/vserver/init.c    1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/kernel/vserver/init.c    2021-02-24 15:47:45.124410596 +0100
 @@ -0,0 +1,46 @@
 +/*
 + *  linux/kernel/init.c
 @@ -0,0 +1,46 @@
 +/*
 + *  linux/kernel/init.c
@@ -18029,9 +18071,9 @@ diff -NurpP --minimal linux-4.9.135/kernel/vserver/init.c linux-4.9.135-vs2.3.9.
 +module_init(init_vserver);
 +module_exit(exit_vserver);
 +
 +module_init(init_vserver);
 +module_exit(exit_vserver);
 +
-diff -NurpP --minimal linux-4.9.135/kernel/vserver/inode.c linux-4.9.135-vs2.3.9.8/kernel/vserver/inode.c
---- linux-4.9.135/kernel/vserver/inode.c       1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/kernel/vserver/inode.c     2018-10-20 04:58:15.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/kernel/vserver/inode.c linux-4.9/kernel/vserver/inode.c
+--- linux-4.9/kernel/vserver/inode.c   1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/kernel/vserver/inode.c   2021-02-24 15:47:45.124410596 +0100
 @@ -0,0 +1,440 @@
 +/*
 + *  linux/kernel/vserver/inode.c
 @@ -0,0 +1,440 @@
 +/*
 + *  linux/kernel/vserver/inode.c
@@ -18473,9 +18515,9 @@ diff -NurpP --minimal linux-4.9.135/kernel/vserver/inode.c linux-4.9.135-vs2.3.9
 +
 +#endif        /* CONFIG_PROPAGATE */
 +
 +
 +#endif        /* CONFIG_PROPAGATE */
 +
-diff -NurpP --minimal linux-4.9.135/kernel/vserver/limit.c linux-4.9.135-vs2.3.9.8/kernel/vserver/limit.c
---- linux-4.9.135/kernel/vserver/limit.c       1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/kernel/vserver/limit.c     2018-10-20 04:58:15.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/kernel/vserver/limit.c linux-4.9/kernel/vserver/limit.c
+--- linux-4.9/kernel/vserver/limit.c   1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/kernel/vserver/limit.c   2021-02-24 15:47:45.124410596 +0100
 @@ -0,0 +1,386 @@
 +/*
 + *  linux/kernel/vserver/limit.c
 @@ -0,0 +1,386 @@
 +/*
 + *  linux/kernel/vserver/limit.c
@@ -18863,9 +18905,9 @@ diff -NurpP --minimal linux-4.9.135/kernel/vserver/limit.c linux-4.9.135-vs2.3.9
 +}
 +#endif        /* !CONFIG_MEMCG */
 +
 +}
 +#endif        /* !CONFIG_MEMCG */
 +
-diff -NurpP --minimal linux-4.9.135/kernel/vserver/limit_init.h linux-4.9.135-vs2.3.9.8/kernel/vserver/limit_init.h
---- linux-4.9.135/kernel/vserver/limit_init.h  1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/kernel/vserver/limit_init.h        2018-10-20 04:58:15.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/kernel/vserver/limit_init.h linux-4.9/kernel/vserver/limit_init.h
+--- linux-4.9/kernel/vserver/limit_init.h      1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/kernel/vserver/limit_init.h      2021-02-24 15:47:45.124410596 +0100
 @@ -0,0 +1,31 @@
 +
 +
 @@ -0,0 +1,31 @@
 +
 +
@@ -18898,9 +18940,9 @@ diff -NurpP --minimal linux-4.9.135/kernel/vserver/limit_init.h linux-4.9.135-vs
 +      }
 +}
 +
 +      }
 +}
 +
-diff -NurpP --minimal linux-4.9.135/kernel/vserver/limit_proc.h linux-4.9.135-vs2.3.9.8/kernel/vserver/limit_proc.h
---- linux-4.9.135/kernel/vserver/limit_proc.h  1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/kernel/vserver/limit_proc.h        2018-10-20 04:58:15.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/kernel/vserver/limit_proc.h linux-4.9/kernel/vserver/limit_proc.h
+--- linux-4.9/kernel/vserver/limit_proc.h      1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/kernel/vserver/limit_proc.h      2021-02-24 15:47:45.124410596 +0100
 @@ -0,0 +1,57 @@
 +#ifndef _VX_LIMIT_PROC_H
 +#define _VX_LIMIT_PROC_H
 @@ -0,0 +1,57 @@
 +#ifndef _VX_LIMIT_PROC_H
 +#define _VX_LIMIT_PROC_H
@@ -18959,9 +19001,9 @@ diff -NurpP --minimal linux-4.9.135/kernel/vserver/limit_proc.h linux-4.9.135-vs
 +#endif        /* _VX_LIMIT_PROC_H */
 +
 +
 +#endif        /* _VX_LIMIT_PROC_H */
 +
 +
-diff -NurpP --minimal linux-4.9.135/kernel/vserver/network.c linux-4.9.135-vs2.3.9.8/kernel/vserver/network.c
---- linux-4.9.135/kernel/vserver/network.c     1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/kernel/vserver/network.c   2018-10-20 04:58:15.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/kernel/vserver/network.c linux-4.9/kernel/vserver/network.c
+--- linux-4.9/kernel/vserver/network.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/kernel/vserver/network.c 2021-02-24 15:47:45.124410596 +0100
 @@ -0,0 +1,1053 @@
 +/*
 + *  linux/kernel/vserver/network.c
 @@ -0,0 +1,1053 @@
 +/*
 + *  linux/kernel/vserver/network.c
@@ -20016,9 +20058,9 @@ diff -NurpP --minimal linux-4.9.135/kernel/vserver/network.c linux-4.9.135-vs2.3
 +EXPORT_SYMBOL_GPL(free_nx_info);
 +EXPORT_SYMBOL_GPL(unhash_nx_info);
 +
 +EXPORT_SYMBOL_GPL(free_nx_info);
 +EXPORT_SYMBOL_GPL(unhash_nx_info);
 +
-diff -NurpP --minimal linux-4.9.135/kernel/vserver/proc.c linux-4.9.135-vs2.3.9.8/kernel/vserver/proc.c
---- linux-4.9.135/kernel/vserver/proc.c        1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/kernel/vserver/proc.c      2018-10-20 04:58:15.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/kernel/vserver/proc.c linux-4.9/kernel/vserver/proc.c
+--- linux-4.9/kernel/vserver/proc.c    1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/kernel/vserver/proc.c    2021-02-24 15:47:45.124410596 +0100
 @@ -0,0 +1,1040 @@
 +/*
 + *  linux/kernel/vserver/proc.c
 @@ -0,0 +1,1040 @@
 +/*
 + *  linux/kernel/vserver/proc.c
@@ -21060,9 +21102,9 @@ diff -NurpP --minimal linux-4.9.135/kernel/vserver/proc.c linux-4.9.135-vs2.3.9.
 +      return 0;
 +}
 +
 +      return 0;
 +}
 +
-diff -NurpP --minimal linux-4.9.135/kernel/vserver/sched.c linux-4.9.135-vs2.3.9.8/kernel/vserver/sched.c
---- linux-4.9.135/kernel/vserver/sched.c       1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/kernel/vserver/sched.c     2018-10-20 04:58:15.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/kernel/vserver/sched.c linux-4.9/kernel/vserver/sched.c
+--- linux-4.9/kernel/vserver/sched.c   1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/kernel/vserver/sched.c   2021-02-24 15:47:45.124410596 +0100
 @@ -0,0 +1,83 @@
 +/*
 + *  linux/kernel/vserver/sched.c
 @@ -0,0 +1,83 @@
 +/*
 + *  linux/kernel/vserver/sched.c
@@ -21147,9 +21189,9 @@ diff -NurpP --minimal linux-4.9.135/kernel/vserver/sched.c linux-4.9.135-vs2.3.9
 +      return 0;
 +}
 +
 +      return 0;
 +}
 +
-diff -NurpP --minimal linux-4.9.135/kernel/vserver/sched_init.h linux-4.9.135-vs2.3.9.8/kernel/vserver/sched_init.h
---- linux-4.9.135/kernel/vserver/sched_init.h  1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/kernel/vserver/sched_init.h        2018-10-20 04:58:15.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/kernel/vserver/sched_init.h linux-4.9/kernel/vserver/sched_init.h
+--- linux-4.9/kernel/vserver/sched_init.h      1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/kernel/vserver/sched_init.h      2021-02-24 15:47:45.124410596 +0100
 @@ -0,0 +1,27 @@
 +
 +static inline void vx_info_init_sched(struct _vx_sched *sched)
 @@ -0,0 +1,27 @@
 +
 +static inline void vx_info_init_sched(struct _vx_sched *sched)
@@ -21178,9 +21220,9 @@ diff -NurpP --minimal linux-4.9.135/kernel/vserver/sched_init.h linux-4.9.135-vs
 +{
 +      return;
 +}
 +{
 +      return;
 +}
-diff -NurpP --minimal linux-4.9.135/kernel/vserver/sched_proc.h linux-4.9.135-vs2.3.9.8/kernel/vserver/sched_proc.h
---- linux-4.9.135/kernel/vserver/sched_proc.h  1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/kernel/vserver/sched_proc.h        2018-10-20 04:58:15.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/kernel/vserver/sched_proc.h linux-4.9/kernel/vserver/sched_proc.h
+--- linux-4.9/kernel/vserver/sched_proc.h      1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/kernel/vserver/sched_proc.h      2021-02-24 15:47:45.124410596 +0100
 @@ -0,0 +1,32 @@
 +#ifndef _VX_SCHED_PROC_H
 +#define _VX_SCHED_PROC_H
 @@ -0,0 +1,32 @@
 +#ifndef _VX_SCHED_PROC_H
 +#define _VX_SCHED_PROC_H
@@ -21214,9 +21256,9 @@ diff -NurpP --minimal linux-4.9.135/kernel/vserver/sched_proc.h linux-4.9.135-vs
 +}
 +
 +#endif        /* _VX_SCHED_PROC_H */
 +}
 +
 +#endif        /* _VX_SCHED_PROC_H */
-diff -NurpP --minimal linux-4.9.135/kernel/vserver/signal.c linux-4.9.135-vs2.3.9.8/kernel/vserver/signal.c
---- linux-4.9.135/kernel/vserver/signal.c      1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/kernel/vserver/signal.c    2018-10-20 04:58:15.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/kernel/vserver/signal.c linux-4.9/kernel/vserver/signal.c
+--- linux-4.9/kernel/vserver/signal.c  1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/kernel/vserver/signal.c  2021-02-24 15:47:45.124410596 +0100
 @@ -0,0 +1,134 @@
 +/*
 + *  linux/kernel/vserver/signal.c
 @@ -0,0 +1,134 @@
 +/*
 + *  linux/kernel/vserver/signal.c
@@ -21352,9 +21394,9 @@ diff -NurpP --minimal linux-4.9.135/kernel/vserver/signal.c linux-4.9.135-vs2.3.
 +      return ret;
 +}
 +
 +      return ret;
 +}
 +
-diff -NurpP --minimal linux-4.9.135/kernel/vserver/space.c linux-4.9.135-vs2.3.9.8/kernel/vserver/space.c
---- linux-4.9.135/kernel/vserver/space.c       1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/kernel/vserver/space.c     2018-10-20 04:58:15.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/kernel/vserver/space.c linux-4.9/kernel/vserver/space.c
+--- linux-4.9/kernel/vserver/space.c   1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/kernel/vserver/space.c   2021-02-24 15:47:45.124410596 +0100
 @@ -0,0 +1,437 @@
 +/*
 + *  linux/kernel/vserver/space.c
 @@ -0,0 +1,437 @@
 +/*
 + *  linux/kernel/vserver/space.c
@@ -21793,9 +21835,9 @@ diff -NurpP --minimal linux-4.9.135/kernel/vserver/space.c linux-4.9.135-vs2.3.9
 +      return 0;
 +}
 +
 +      return 0;
 +}
 +
-diff -NurpP --minimal linux-4.9.135/kernel/vserver/switch.c linux-4.9.135-vs2.3.9.8/kernel/vserver/switch.c
---- linux-4.9.135/kernel/vserver/switch.c      1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/kernel/vserver/switch.c    2018-10-20 04:58:15.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/kernel/vserver/switch.c linux-4.9/kernel/vserver/switch.c
+--- linux-4.9/kernel/vserver/switch.c  1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/kernel/vserver/switch.c  2021-02-24 15:47:45.124410596 +0100
 @@ -0,0 +1,556 @@
 +/*
 + *  linux/kernel/vserver/switch.c
 @@ -0,0 +1,556 @@
 +/*
 + *  linux/kernel/vserver/switch.c
@@ -22353,9 +22395,9 @@ diff -NurpP --minimal linux-4.9.135/kernel/vserver/switch.c linux-4.9.135-vs2.3.
 +}
 +
 +#endif        /* CONFIG_COMPAT */
 +}
 +
 +#endif        /* CONFIG_COMPAT */
-diff -NurpP --minimal linux-4.9.135/kernel/vserver/sysctl.c linux-4.9.135-vs2.3.9.8/kernel/vserver/sysctl.c
---- linux-4.9.135/kernel/vserver/sysctl.c      1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/kernel/vserver/sysctl.c    2018-10-20 04:58:15.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/kernel/vserver/sysctl.c linux-4.9/kernel/vserver/sysctl.c
+--- linux-4.9/kernel/vserver/sysctl.c  1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/kernel/vserver/sysctl.c  2021-02-24 15:47:45.127744035 +0100
 @@ -0,0 +1,249 @@
 +/*
 + *  kernel/vserver/sysctl.c
 @@ -0,0 +1,249 @@
 +/*
 + *  kernel/vserver/sysctl.c
@@ -22606,9 +22648,9 @@ diff -NurpP --minimal linux-4.9.135/kernel/vserver/sysctl.c linux-4.9.135-vs2.3.
 +EXPORT_SYMBOL_GPL(vs_debug_perm);
 +EXPORT_SYMBOL_GPL(vs_debug_misc);
 +
 +EXPORT_SYMBOL_GPL(vs_debug_perm);
 +EXPORT_SYMBOL_GPL(vs_debug_misc);
 +
-diff -NurpP --minimal linux-4.9.135/kernel/vserver/tag.c linux-4.9.135-vs2.3.9.8/kernel/vserver/tag.c
---- linux-4.9.135/kernel/vserver/tag.c 1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/kernel/vserver/tag.c       2018-10-20 04:58:15.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/kernel/vserver/tag.c linux-4.9/kernel/vserver/tag.c
+--- linux-4.9/kernel/vserver/tag.c     1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/kernel/vserver/tag.c     2021-02-24 15:47:45.127744035 +0100
 @@ -0,0 +1,63 @@
 +/*
 + *  linux/kernel/vserver/tag.c
 @@ -0,0 +1,63 @@
 +/*
 + *  linux/kernel/vserver/tag.c
@@ -22673,9 +22715,9 @@ diff -NurpP --minimal linux-4.9.135/kernel/vserver/tag.c linux-4.9.135-vs2.3.9.8
 +}
 +
 +
 +}
 +
 +
-diff -NurpP --minimal linux-4.9.135/kernel/vserver/vci_config.h linux-4.9.135-vs2.3.9.8/kernel/vserver/vci_config.h
---- linux-4.9.135/kernel/vserver/vci_config.h  1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/kernel/vserver/vci_config.h        2018-10-20 04:58:15.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/kernel/vserver/vci_config.h linux-4.9/kernel/vserver/vci_config.h
+--- linux-4.9/kernel/vserver/vci_config.h      1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/kernel/vserver/vci_config.h      2021-02-24 15:47:45.127744035 +0100
 @@ -0,0 +1,80 @@
 +
 +/*  interface version */
 @@ -0,0 +1,80 @@
 +
 +/*  interface version */
@@ -22757,10 +22799,10 @@ diff -NurpP --minimal linux-4.9.135/kernel/vserver/vci_config.h linux-4.9.135-vs
 +      0;
 +}
 +
 +      0;
 +}
 +
-diff -NurpP --minimal linux-4.9.135/mm/memcontrol.c linux-4.9.135-vs2.3.9.8/mm/memcontrol.c
---- linux-4.9.135/mm/memcontrol.c      2018-10-20 10:39:23.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/mm/memcontrol.c    2018-10-20 05:55:43.000000000 +0000
-@@ -2825,6 +2825,41 @@ static u64 mem_cgroup_read_u64(struct cg
+diff -urNp -x '*.orig' linux-4.9/mm/memcontrol.c linux-4.9/mm/memcontrol.c
+--- linux-4.9/mm/memcontrol.c  2021-02-24 15:47:32.527349847 +0100
++++ linux-4.9/mm/memcontrol.c  2021-02-24 15:47:45.127744035 +0100
+@@ -2873,6 +2873,41 @@ static u64 mem_cgroup_read_u64(struct cg
        }
  }
  
        }
  }
  
@@ -22802,9 +22844,9 @@ diff -NurpP --minimal linux-4.9.135/mm/memcontrol.c linux-4.9.135-vs2.3.9.8/mm/m
  #ifndef CONFIG_SLOB
  static int memcg_online_kmem(struct mem_cgroup *memcg)
  {
  #ifndef CONFIG_SLOB
  static int memcg_online_kmem(struct mem_cgroup *memcg)
  {
-diff -NurpP --minimal linux-4.9.135/mm/oom_kill.c linux-4.9.135-vs2.3.9.8/mm/oom_kill.c
---- linux-4.9.135/mm/oom_kill.c        2018-10-20 10:39:23.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/mm/oom_kill.c      2018-10-20 04:58:15.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/mm/oom_kill.c linux-4.9/mm/oom_kill.c
+--- linux-4.9/mm/oom_kill.c    2021-02-24 15:47:32.534016722 +0100
++++ linux-4.9/mm/oom_kill.c    2021-02-24 15:47:45.127744035 +0100
 @@ -38,6 +38,8 @@
  #include <linux/kthread.h>
  #include <linux/init.h>
 @@ -38,6 +38,8 @@
  #include <linux/kthread.h>
  #include <linux/init.h>
@@ -22845,7 +22887,7 @@ diff -NurpP --minimal linux-4.9.135/mm/oom_kill.c linux-4.9.135-vs2.3.9.8/mm/oom
  
        /*
         * If any of p's children has a different mm and is eligible for kill,
  
        /*
         * If any of p's children has a different mm and is eligible for kill,
-@@ -902,8 +911,8 @@ static void oom_kill_process(struct oom_
+@@ -910,8 +919,8 @@ static void oom_kill_process(struct oom_
         */
        do_send_sig_info(SIGKILL, SEND_SIG_FORCED, victim, true);
        mark_oom_victim(victim);
         */
        do_send_sig_info(SIGKILL, SEND_SIG_FORCED, victim, true);
        mark_oom_victim(victim);
@@ -22856,7 +22898,7 @@ diff -NurpP --minimal linux-4.9.135/mm/oom_kill.c linux-4.9.135-vs2.3.9.8/mm/oom
                K(get_mm_counter(victim->mm, MM_ANONPAGES)),
                K(get_mm_counter(victim->mm, MM_FILEPAGES)),
                K(get_mm_counter(victim->mm, MM_SHMEMPAGES)));
                K(get_mm_counter(victim->mm, MM_ANONPAGES)),
                K(get_mm_counter(victim->mm, MM_FILEPAGES)),
                K(get_mm_counter(victim->mm, MM_SHMEMPAGES)));
-@@ -950,6 +959,8 @@ static void oom_kill_process(struct oom_
+@@ -958,6 +967,8 @@ static void oom_kill_process(struct oom_
  }
  #undef K
  
  }
  #undef K
  
@@ -22865,7 +22907,7 @@ diff -NurpP --minimal linux-4.9.135/mm/oom_kill.c linux-4.9.135-vs2.3.9.8/mm/oom
  /*
   * Determines whether the kernel must panic because of the panic_on_oom sysctl.
   */
  /*
   * Determines whether the kernel must panic because of the panic_on_oom sysctl.
   */
-@@ -1055,7 +1066,12 @@ bool out_of_memory(struct oom_control *o
+@@ -1063,7 +1074,12 @@ bool out_of_memory(struct oom_control *o
        /* Found nothing?!?! Either we hang forever, or we panic. */
        if (!oc->chosen && !is_sysrq_oom(oc) && !is_memcg_oom(oc)) {
                dump_header(oc, NULL);
        /* Found nothing?!?! Either we hang forever, or we panic. */
        if (!oc->chosen && !is_sysrq_oom(oc) && !is_memcg_oom(oc)) {
                dump_header(oc, NULL);
@@ -22879,19 +22921,40 @@ diff -NurpP --minimal linux-4.9.135/mm/oom_kill.c linux-4.9.135-vs2.3.9.8/mm/oom
        }
        if (oc->chosen && oc->chosen != (void *)-1UL) {
                oom_kill_process(oc, !is_memcg_oom(oc) ? "Out of memory" :
        }
        if (oc->chosen && oc->chosen != (void *)-1UL) {
                oom_kill_process(oc, !is_memcg_oom(oc) ? "Out of memory" :
-diff -NurpP --minimal linux-4.9.135/mm/page_alloc.c linux-4.9.135-vs2.3.9.8/mm/page_alloc.c
---- linux-4.9.135/mm/page_alloc.c      2018-10-20 10:39:23.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/mm/page_alloc.c    2018-10-20 04:58:15.000000000 +0000
-@@ -64,6 +64,8 @@
- #include <linux/page_owner.h>
+diff -urNp -x '*.orig' linux-4.9/mm/page_alloc.c linux-4.9/mm/page_alloc.c
+--- linux-4.9/mm/page_alloc.c  2021-02-24 15:47:32.534016722 +0100
++++ linux-4.9/mm/page_alloc.c  2021-02-24 15:47:45.127744035 +0100
+@@ -65,6 +65,8 @@
  #include <linux/kthread.h>
  #include <linux/memcontrol.h>
  #include <linux/kthread.h>
  #include <linux/memcontrol.h>
+ #include <linux/khugepaged.h>
 +#include <linux/vs_base.h>
 +#include <linux/vs_limit.h>
  
  #include <asm/sections.h>
  #include <asm/tlbflush.h>
 +#include <linux/vs_base.h>
 +#include <linux/vs_limit.h>
  
  #include <asm/sections.h>
  #include <asm/tlbflush.h>
-@@ -4198,6 +4200,9 @@ void si_meminfo(struct sysinfo *val)
+@@ -4171,14 +4173,17 @@ long si_mem_available(void)
+        */
+       pagecache = pages[LRU_ACTIVE_FILE] + pages[LRU_INACTIVE_FILE];
+       pagecache -= min(pagecache / 2, wmark_low);
+-      available += pagecache;
++      if (!vx_flags(VXF_VIRT_MEM, 0))
++              available += pagecache;
+       /*
+        * Part of the reclaimable slab consists of items that are in use,
+        * and cannot be freed. Cap this estimate at the low watermark.
+        */
+-      available += global_page_state(NR_SLAB_RECLAIMABLE) -
+-                   min(global_page_state(NR_SLAB_RECLAIMABLE) / 2, wmark_low);
++      if (!vx_flags(VXF_VIRT_MEM, 0))
++              available += global_page_state(NR_SLAB_RECLAIMABLE) -
++                           min(global_page_state(NR_SLAB_RECLAIMABLE) / 2,
++                               wmark_low);
+       if (available < 0)
+               available = 0;
+@@ -4195,6 +4200,9 @@ void si_meminfo(struct sysinfo *val)
        val->totalhigh = totalhigh_pages;
        val->freehigh = nr_free_highpages();
        val->mem_unit = PAGE_SIZE;
        val->totalhigh = totalhigh_pages;
        val->freehigh = nr_free_highpages();
        val->mem_unit = PAGE_SIZE;
@@ -22901,7 +22964,7 @@ diff -NurpP --minimal linux-4.9.135/mm/page_alloc.c linux-4.9.135-vs2.3.9.8/mm/p
  }
  
  EXPORT_SYMBOL(si_meminfo);
  }
  
  EXPORT_SYMBOL(si_meminfo);
-@@ -4232,6 +4237,9 @@ void si_meminfo_node(struct sysinfo *val
+@@ -4229,6 +4237,9 @@ void si_meminfo_node(struct sysinfo *val
        val->freehigh = free_highpages;
  #endif
        val->mem_unit = PAGE_SIZE;
        val->freehigh = free_highpages;
  #endif
        val->mem_unit = PAGE_SIZE;
@@ -22911,9 +22974,9 @@ diff -NurpP --minimal linux-4.9.135/mm/page_alloc.c linux-4.9.135-vs2.3.9.8/mm/p
  }
  #endif
  
  }
  #endif
  
-diff -NurpP --minimal linux-4.9.135/mm/pgtable-generic.c linux-4.9.135-vs2.3.9.8/mm/pgtable-generic.c
---- linux-4.9.135/mm/pgtable-generic.c 2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/mm/pgtable-generic.c       2018-10-20 04:58:15.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/mm/pgtable-generic.c linux-4.9/mm/pgtable-generic.c
+--- linux-4.9/mm/pgtable-generic.c     2016-12-11 20:17:54.000000000 +0100
++++ linux-4.9/mm/pgtable-generic.c     2021-02-24 15:47:45.127744035 +0100
 @@ -6,6 +6,8 @@
   *  Copyright (C) 2010  Linus Torvalds
   */
 @@ -6,6 +6,8 @@
   *  Copyright (C) 2010  Linus Torvalds
   */
@@ -22923,10 +22986,10 @@ diff -NurpP --minimal linux-4.9.135/mm/pgtable-generic.c linux-4.9.135-vs2.3.9.8
  #include <linux/pagemap.h>
  #include <asm/tlb.h>
  #include <asm-generic/pgtable.h>
  #include <linux/pagemap.h>
  #include <asm/tlb.h>
  #include <asm-generic/pgtable.h>
-diff -NurpP --minimal linux-4.9.135/mm/shmem.c linux-4.9.135-vs2.3.9.8/mm/shmem.c
---- linux-4.9.135/mm/shmem.c   2018-10-20 10:39:23.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/mm/shmem.c 2018-10-20 05:55:43.000000000 +0000
-@@ -2796,7 +2796,7 @@ static int shmem_statfs(struct dentry *d
+diff -urNp -x '*.orig' linux-4.9/mm/shmem.c linux-4.9/mm/shmem.c
+--- linux-4.9/mm/shmem.c       2021-02-24 15:47:32.537350160 +0100
++++ linux-4.9/mm/shmem.c       2021-02-24 15:47:45.127744035 +0100
+@@ -2806,7 +2806,7 @@ static int shmem_statfs(struct dentry *d
  {
        struct shmem_sb_info *sbinfo = SHMEM_SB(dentry->d_sb);
  
  {
        struct shmem_sb_info *sbinfo = SHMEM_SB(dentry->d_sb);
  
@@ -22935,7 +22998,7 @@ diff -NurpP --minimal linux-4.9.135/mm/shmem.c linux-4.9.135-vs2.3.9.8/mm/shmem.
        buf->f_bsize = PAGE_SIZE;
        buf->f_namelen = NAME_MAX;
        if (sbinfo->max_blocks) {
        buf->f_bsize = PAGE_SIZE;
        buf->f_namelen = NAME_MAX;
        if (sbinfo->max_blocks) {
-@@ -3617,7 +3617,7 @@ int shmem_fill_super(struct super_block
+@@ -3631,7 +3631,7 @@ int shmem_fill_super(struct super_block
        sb->s_maxbytes = MAX_LFS_FILESIZE;
        sb->s_blocksize = PAGE_SIZE;
        sb->s_blocksize_bits = PAGE_SHIFT;
        sb->s_maxbytes = MAX_LFS_FILESIZE;
        sb->s_blocksize = PAGE_SIZE;
        sb->s_blocksize_bits = PAGE_SHIFT;
@@ -22944,9 +23007,9 @@ diff -NurpP --minimal linux-4.9.135/mm/shmem.c linux-4.9.135-vs2.3.9.8/mm/shmem.
        sb->s_op = &shmem_ops;
        sb->s_time_gran = 1;
  #ifdef CONFIG_TMPFS_XATTR
        sb->s_op = &shmem_ops;
        sb->s_time_gran = 1;
  #ifdef CONFIG_TMPFS_XATTR
-diff -NurpP --minimal linux-4.9.135/mm/slab.c linux-4.9.135-vs2.3.9.8/mm/slab.c
---- linux-4.9.135/mm/slab.c    2018-10-20 10:39:23.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/mm/slab.c  2018-10-20 04:58:15.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/mm/slab.c linux-4.9/mm/slab.c
+--- linux-4.9/mm/slab.c        2021-02-24 15:47:32.537350160 +0100
++++ linux-4.9/mm/slab.c        2021-02-24 15:47:45.131077472 +0100
 @@ -307,6 +307,8 @@ static void kmem_cache_node_init(struct
  #define STATS_INC_FREEMISS(x) do { } while (0)
  #endif
 @@ -307,6 +307,8 @@ static void kmem_cache_node_init(struct
  #define STATS_INC_FREEMISS(x) do { } while (0)
  #endif
@@ -22956,7 +23019,7 @@ diff -NurpP --minimal linux-4.9.135/mm/slab.c linux-4.9.135-vs2.3.9.8/mm/slab.c
  #if DEBUG
  
  /*
  #if DEBUG
  
  /*
-@@ -3341,6 +3343,7 @@ slab_alloc_node(struct kmem_cache *cache
+@@ -3344,6 +3346,7 @@ slab_alloc_node(struct kmem_cache *cache
        /* ___cache_alloc_node can fall back to other nodes */
        ptr = ____cache_alloc_node(cachep, flags, nodeid);
    out:
        /* ___cache_alloc_node can fall back to other nodes */
        ptr = ____cache_alloc_node(cachep, flags, nodeid);
    out:
@@ -22964,7 +23027,7 @@ diff -NurpP --minimal linux-4.9.135/mm/slab.c linux-4.9.135-vs2.3.9.8/mm/slab.c
        local_irq_restore(save_flags);
        ptr = cache_alloc_debugcheck_after(cachep, flags, ptr, caller);
  
        local_irq_restore(save_flags);
        ptr = cache_alloc_debugcheck_after(cachep, flags, ptr, caller);
  
-@@ -3522,6 +3525,7 @@ void ___cache_free(struct kmem_cache *ca
+@@ -3525,6 +3528,7 @@ void ___cache_free(struct kmem_cache *ca
        check_irq_off();
        kmemleak_free_recursive(objp, cachep->flags);
        objp = cache_free_debugcheck(cachep, objp, caller);
        check_irq_off();
        kmemleak_free_recursive(objp, cachep->flags);
        objp = cache_free_debugcheck(cachep, objp, caller);
@@ -22972,9 +23035,9 @@ diff -NurpP --minimal linux-4.9.135/mm/slab.c linux-4.9.135-vs2.3.9.8/mm/slab.c
  
        kmemcheck_slab_free(cachep, objp, cachep->object_size);
  
  
        kmemcheck_slab_free(cachep, objp, cachep->object_size);
  
-diff -NurpP --minimal linux-4.9.135/mm/slab_vs.h linux-4.9.135-vs2.3.9.8/mm/slab_vs.h
---- linux-4.9.135/mm/slab_vs.h 1970-01-01 00:00:00.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/mm/slab_vs.h       2018-10-20 04:58:15.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/mm/slab_vs.h linux-4.9/mm/slab_vs.h
+--- linux-4.9/mm/slab_vs.h     1970-01-01 01:00:00.000000000 +0100
++++ linux-4.9/mm/slab_vs.h     2021-02-24 15:47:45.131077472 +0100
 @@ -0,0 +1,29 @@
 +
 +#include <linux/vserver/context.h>
 @@ -0,0 +1,29 @@
 +
 +#include <linux/vserver/context.h>
@@ -23005,9 +23068,9 @@ diff -NurpP --minimal linux-4.9.135/mm/slab_vs.h linux-4.9.135-vs2.3.9.8/mm/slab
 +      atomic_sub(cachep->size, &vxi->cacct.slab[what]);
 +}
 +
 +      atomic_sub(cachep->size, &vxi->cacct.slab[what]);
 +}
 +
-diff -NurpP --minimal linux-4.9.135/mm/swapfile.c linux-4.9.135-vs2.3.9.8/mm/swapfile.c
---- linux-4.9.135/mm/swapfile.c        2018-10-20 10:39:23.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/mm/swapfile.c      2018-10-20 05:55:43.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/mm/swapfile.c linux-4.9/mm/swapfile.c
+--- linux-4.9/mm/swapfile.c    2021-02-24 15:47:32.540683597 +0100
++++ linux-4.9/mm/swapfile.c    2021-02-24 15:47:45.131077472 +0100
 @@ -39,6 +39,7 @@
  #include <asm/tlbflush.h>
  #include <linux/swapops.h>
 @@ -39,6 +39,7 @@
  #include <asm/tlbflush.h>
  #include <linux/swapops.h>
@@ -23042,9 +23105,9 @@ diff -NurpP --minimal linux-4.9.135/mm/swapfile.c linux-4.9.135-vs2.3.9.8/mm/swa
  }
  
  /*
  }
  
  /*
-diff -NurpP --minimal linux-4.9.135/net/bridge/br_multicast.c linux-4.9.135-vs2.3.9.8/net/bridge/br_multicast.c
---- linux-4.9.135/net/bridge/br_multicast.c    2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/net/bridge/br_multicast.c  2018-10-20 04:58:15.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/net/bridge/br_multicast.c linux-4.9/net/bridge/br_multicast.c
+--- linux-4.9/net/bridge/br_multicast.c        2021-02-24 15:47:32.564017661 +0100
++++ linux-4.9/net/bridge/br_multicast.c        2021-02-24 15:47:45.131077472 +0100
 @@ -465,7 +465,7 @@ static struct sk_buff *br_ip6_multicast_
        ip6h->hop_limit = 1;
        ipv6_addr_set(&ip6h->daddr, htonl(0xff020000), 0, 0, htonl(1));
 @@ -465,7 +465,7 @@ static struct sk_buff *br_ip6_multicast_
        ip6h->hop_limit = 1;
        ipv6_addr_set(&ip6h->daddr, htonl(0xff020000), 0, 0, htonl(1));
@@ -23054,10 +23117,10 @@ diff -NurpP --minimal linux-4.9.135/net/bridge/br_multicast.c linux-4.9.135-vs2.
                kfree_skb(skb);
                br->has_ipv6_addr = 0;
                return NULL;
                kfree_skb(skb);
                br->has_ipv6_addr = 0;
                return NULL;
-diff -NurpP --minimal linux-4.9.135/net/core/dev.c linux-4.9.135-vs2.3.9.8/net/core/dev.c
---- linux-4.9.135/net/core/dev.c       2018-10-20 10:39:24.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/net/core/dev.c     2018-10-20 05:55:44.000000000 +0000
-@@ -126,6 +126,7 @@
+diff -urNp -x '*.orig' linux-4.9/net/core/dev.c linux-4.9/net/core/dev.c
+--- linux-4.9/net/core/dev.c   2021-02-24 15:47:33.077367054 +0100
++++ linux-4.9/net/core/dev.c   2021-02-24 15:47:45.131077472 +0100
+@@ -127,6 +127,7 @@
  #include <linux/in.h>
  #include <linux/jhash.h>
  #include <linux/random.h>
  #include <linux/in.h>
  #include <linux/jhash.h>
  #include <linux/random.h>
@@ -23065,7 +23128,7 @@ diff -NurpP --minimal linux-4.9.135/net/core/dev.c linux-4.9.135-vs2.3.9.8/net/c
  #include <trace/events/napi.h>
  #include <trace/events/net.h>
  #include <trace/events/skb.h>
  #include <trace/events/napi.h>
  #include <trace/events/net.h>
  #include <trace/events/skb.h>
-@@ -730,7 +731,8 @@ struct net_device *__dev_get_by_name(str
+@@ -734,7 +735,8 @@ struct net_device *__dev_get_by_name(str
        struct hlist_head *head = dev_name_hash(net, name);
  
        hlist_for_each_entry(dev, head, name_hlist)
        struct hlist_head *head = dev_name_hash(net, name);
  
        hlist_for_each_entry(dev, head, name_hlist)
@@ -23075,7 +23138,7 @@ diff -NurpP --minimal linux-4.9.135/net/core/dev.c linux-4.9.135-vs2.3.9.8/net/c
                        return dev;
  
        return NULL;
                        return dev;
  
        return NULL;
-@@ -755,7 +757,8 @@ struct net_device *dev_get_by_name_rcu(s
+@@ -759,7 +761,8 @@ struct net_device *dev_get_by_name_rcu(s
        struct hlist_head *head = dev_name_hash(net, name);
  
        hlist_for_each_entry_rcu(dev, head, name_hlist)
        struct hlist_head *head = dev_name_hash(net, name);
  
        hlist_for_each_entry_rcu(dev, head, name_hlist)
@@ -23085,7 +23148,7 @@ diff -NurpP --minimal linux-4.9.135/net/core/dev.c linux-4.9.135-vs2.3.9.8/net/c
                        return dev;
  
        return NULL;
                        return dev;
  
        return NULL;
-@@ -805,7 +808,8 @@ struct net_device *__dev_get_by_index(st
+@@ -809,7 +812,8 @@ struct net_device *__dev_get_by_index(st
        struct hlist_head *head = dev_index_hash(net, ifindex);
  
        hlist_for_each_entry(dev, head, index_hlist)
        struct hlist_head *head = dev_index_hash(net, ifindex);
  
        hlist_for_each_entry(dev, head, index_hlist)
@@ -23095,7 +23158,7 @@ diff -NurpP --minimal linux-4.9.135/net/core/dev.c linux-4.9.135-vs2.3.9.8/net/c
                        return dev;
  
        return NULL;
                        return dev;
  
        return NULL;
-@@ -823,7 +827,7 @@ EXPORT_SYMBOL(__dev_get_by_index);
+@@ -827,7 +831,7 @@ EXPORT_SYMBOL(__dev_get_by_index);
   *    about locking. The caller must hold RCU lock.
   */
  
   *    about locking. The caller must hold RCU lock.
   */
  
@@ -23104,7 +23167,7 @@ diff -NurpP --minimal linux-4.9.135/net/core/dev.c linux-4.9.135-vs2.3.9.8/net/c
  {
        struct net_device *dev;
        struct hlist_head *head = dev_index_hash(net, ifindex);
  {
        struct net_device *dev;
        struct hlist_head *head = dev_index_hash(net, ifindex);
-@@ -834,6 +838,16 @@ struct net_device *dev_get_by_index_rcu(
+@@ -838,6 +842,16 @@ struct net_device *dev_get_by_index_rcu(
  
        return NULL;
  }
  
        return NULL;
  }
@@ -23121,7 +23184,7 @@ diff -NurpP --minimal linux-4.9.135/net/core/dev.c linux-4.9.135-vs2.3.9.8/net/c
  EXPORT_SYMBOL(dev_get_by_index_rcu);
  
  
  EXPORT_SYMBOL(dev_get_by_index_rcu);
  
  
-@@ -916,7 +930,8 @@ struct net_device *dev_getbyhwaddr_rcu(s
+@@ -915,7 +929,8 @@ struct net_device *dev_getbyhwaddr_rcu(s
  
        for_each_netdev_rcu(net, dev)
                if (dev->type == type &&
  
        for_each_netdev_rcu(net, dev)
                if (dev->type == type &&
@@ -23131,7 +23194,7 @@ diff -NurpP --minimal linux-4.9.135/net/core/dev.c linux-4.9.135-vs2.3.9.8/net/c
                        return dev;
  
        return NULL;
                        return dev;
  
        return NULL;
-@@ -928,9 +943,11 @@ struct net_device *__dev_getfirstbyhwtyp
+@@ -927,9 +942,11 @@ struct net_device *__dev_getfirstbyhwtyp
        struct net_device *dev;
  
        ASSERT_RTNL();
        struct net_device *dev;
  
        ASSERT_RTNL();
@@ -23145,7 +23208,7 @@ diff -NurpP --minimal linux-4.9.135/net/core/dev.c linux-4.9.135-vs2.3.9.8/net/c
  
        return NULL;
  }
  
        return NULL;
  }
-@@ -942,7 +959,8 @@ struct net_device *dev_getfirstbyhwtype(
+@@ -941,7 +958,8 @@ struct net_device *dev_getfirstbyhwtype(
  
        rcu_read_lock();
        for_each_netdev_rcu(net, dev)
  
        rcu_read_lock();
        for_each_netdev_rcu(net, dev)
@@ -23155,7 +23218,7 @@ diff -NurpP --minimal linux-4.9.135/net/core/dev.c linux-4.9.135-vs2.3.9.8/net/c
                        dev_hold(dev);
                        ret = dev;
                        break;
                        dev_hold(dev);
                        ret = dev;
                        break;
-@@ -972,7 +990,8 @@ struct net_device *__dev_get_by_flags(st
+@@ -971,7 +989,8 @@ struct net_device *__dev_get_by_flags(st
  
        ret = NULL;
        for_each_netdev(net, dev) {
  
        ret = NULL;
        for_each_netdev(net, dev) {
@@ -23165,7 +23228,7 @@ diff -NurpP --minimal linux-4.9.135/net/core/dev.c linux-4.9.135-vs2.3.9.8/net/c
                        ret = dev;
                        break;
                }
                        ret = dev;
                        break;
                }
-@@ -1050,6 +1069,8 @@ static int __dev_alloc_name(struct net *
+@@ -1049,6 +1068,8 @@ static int __dev_alloc_name(struct net *
                                continue;
                        if (i < 0 || i >= max_netdevices)
                                continue;
                                continue;
                        if (i < 0 || i >= max_netdevices)
                                continue;
@@ -23174,9 +23237,9 @@ diff -NurpP --minimal linux-4.9.135/net/core/dev.c linux-4.9.135-vs2.3.9.8/net/c
  
                        /*  avoid cases where sscanf is not exact inverse of printf */
                        snprintf(buf, IFNAMSIZ, name, i);
  
                        /*  avoid cases where sscanf is not exact inverse of printf */
                        snprintf(buf, IFNAMSIZ, name, i);
-diff -NurpP --minimal linux-4.9.135/net/core/net-procfs.c linux-4.9.135-vs2.3.9.8/net/core/net-procfs.c
---- linux-4.9.135/net/core/net-procfs.c        2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/net/core/net-procfs.c      2018-10-20 04:58:15.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/net/core/net-procfs.c linux-4.9/net/core/net-procfs.c
+--- linux-4.9/net/core/net-procfs.c    2016-12-11 20:17:54.000000000 +0100
++++ linux-4.9/net/core/net-procfs.c    2021-02-24 15:47:45.131077472 +0100
 @@ -1,6 +1,7 @@
  #include <linux/netdevice.h>
  #include <linux/proc_fs.h>
 @@ -1,6 +1,7 @@
  #include <linux/netdevice.h>
  #include <linux/proc_fs.h>
@@ -23191,18 +23254,18 @@ diff -NurpP --minimal linux-4.9.135/net/core/net-procfs.c linux-4.9.135-vs2.3.9.
        struct rtnl_link_stats64 temp;
 -      const struct rtnl_link_stats64 *stats = dev_get_stats(dev, &temp);
 +      const struct rtnl_link_stats64 *stats;
        struct rtnl_link_stats64 temp;
 -      const struct rtnl_link_stats64 *stats = dev_get_stats(dev, &temp);
 +      const struct rtnl_link_stats64 *stats;
-+
 +      /* device visible inside network context? */
 +      if (!nx_dev_visible(current_nx_info(), dev))
 +              return;
 +      /* device visible inside network context? */
 +      if (!nx_dev_visible(current_nx_info(), dev))
 +              return;
++
 +      stats = dev_get_stats(dev, &temp);
        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,
 +      stats = dev_get_stats(dev, &temp);
        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-4.9.135/net/core/rtnetlink.c linux-4.9.135-vs2.3.9.8/net/core/rtnetlink.c
---- linux-4.9.135/net/core/rtnetlink.c 2018-10-20 10:39:24.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/net/core/rtnetlink.c       2018-10-20 05:55:44.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/net/core/rtnetlink.c linux-4.9/net/core/rtnetlink.c
+--- linux-4.9/net/core/rtnetlink.c     2021-02-24 15:47:32.577351411 +0100
++++ linux-4.9/net/core/rtnetlink.c     2021-02-24 15:47:45.134410910 +0100
 @@ -1615,6 +1615,8 @@ static int rtnl_dump_ifinfo(struct sk_bu
                                goto cont;
                        if (idx < s_idx)
 @@ -1615,6 +1615,8 @@ static int rtnl_dump_ifinfo(struct sk_bu
                                goto cont;
                        if (idx < s_idx)
@@ -23212,7 +23275,7 @@ diff -NurpP --minimal linux-4.9.135/net/core/rtnetlink.c linux-4.9.135-vs2.3.9.8
                        err = rtnl_fill_ifinfo(skb, dev, RTM_NEWLINK,
                                               NETLINK_CB(cb->skb).portid,
                                               cb->nlh->nlmsg_seq, 0,
                        err = rtnl_fill_ifinfo(skb, dev, RTM_NEWLINK,
                                               NETLINK_CB(cb->skb).portid,
                                               cb->nlh->nlmsg_seq, 0,
-@@ -2820,6 +2822,9 @@ void rtmsg_ifinfo(int type, struct net_d
+@@ -2841,6 +2843,9 @@ void rtmsg_ifinfo(int type, struct net_d
  {
        struct sk_buff *skb;
  
  {
        struct sk_buff *skb;
  
@@ -23222,9 +23285,9 @@ diff -NurpP --minimal linux-4.9.135/net/core/rtnetlink.c linux-4.9.135-vs2.3.9.8
        if (dev->reg_state != NETREG_REGISTERED)
                return;
  
        if (dev->reg_state != NETREG_REGISTERED)
                return;
  
-diff -NurpP --minimal linux-4.9.135/net/core/sock.c linux-4.9.135-vs2.3.9.8/net/core/sock.c
---- linux-4.9.135/net/core/sock.c      2018-10-20 10:39:24.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/net/core/sock.c    2018-10-20 04:58:15.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/net/core/sock.c linux-4.9/net/core/sock.c
+--- linux-4.9/net/core/sock.c  2021-02-24 15:47:32.580684849 +0100
++++ linux-4.9/net/core/sock.c  2021-02-24 15:47:45.134410910 +0100
 @@ -135,6 +135,10 @@
  
  #include <linux/filter.h>
 @@ -135,6 +135,10 @@
  
  #include <linux/filter.h>
@@ -23236,16 +23299,17 @@ diff -NurpP --minimal linux-4.9.135/net/core/sock.c linux-4.9.135-vs2.3.9.8/net/
  
  #include <trace/events/sock.h>
  
  
  #include <trace/events/sock.h>
  
-@@ -1339,6 +1343,8 @@ static struct sock *sk_prot_alloc(struct
+@@ -1339,6 +1343,9 @@ static struct sock *sk_prot_alloc(struct
+               if (!try_module_get(prot->owner))
                        goto out_free_sec;
                sk_tx_queue_clear(sk);
                        goto out_free_sec;
                sk_tx_queue_clear(sk);
-       }
++
 +              sock_vx_init(sk);
 +              sock_nx_init(sk);
 +              sock_vx_init(sk);
 +              sock_nx_init(sk);
+       }
  
        return sk;
  
        return sk;
-@@ -1444,6 +1450,11 @@ static void __sk_destruct(struct rcu_hea
+@@ -1444,6 +1451,11 @@ static void __sk_destruct(struct rcu_hea
        put_pid(sk->sk_peer_pid);
        if (likely(sk->sk_net_refcnt))
                put_net(sock_net(sk));
        put_pid(sk->sk_peer_pid);
        if (likely(sk->sk_net_refcnt))
                put_net(sock_net(sk));
@@ -23257,7 +23321,7 @@ diff -NurpP --minimal linux-4.9.135/net/core/sock.c linux-4.9.135-vs2.3.9.8/net/
        sk_prot_free(sk->sk_prot_creator, sk);
  }
  
        sk_prot_free(sk->sk_prot_creator, sk);
  }
  
-@@ -1498,6 +1509,8 @@ struct sock *sk_clone_lock(const struct
+@@ -1505,6 +1517,8 @@ struct sock *sk_clone_lock(const struct
                /* SANITY */
                if (likely(newsk->sk_net_refcnt))
                        get_net(sock_net(newsk));
                /* SANITY */
                if (likely(newsk->sk_net_refcnt))
                        get_net(sock_net(newsk));
@@ -23266,7 +23330,7 @@ diff -NurpP --minimal linux-4.9.135/net/core/sock.c linux-4.9.135-vs2.3.9.8/net/
                sk_node_init(&newsk->sk_node);
                sock_lock_init(newsk);
                bh_lock_sock(newsk);
                sk_node_init(&newsk->sk_node);
                sock_lock_init(newsk);
                bh_lock_sock(newsk);
-@@ -1568,6 +1581,12 @@ struct sock *sk_clone_lock(const struct
+@@ -1575,6 +1589,12 @@ struct sock *sk_clone_lock(const struct
                smp_wmb();
                atomic_set(&newsk->sk_refcnt, 2);
  
                smp_wmb();
                atomic_set(&newsk->sk_refcnt, 2);
  
@@ -23279,9 +23343,9 @@ diff -NurpP --minimal linux-4.9.135/net/core/sock.c linux-4.9.135-vs2.3.9.8/net/
                /*
                 * Increment the counter in the same struct proto as the master
                 * sock (sk_refcnt_debug_inc uses newsk->sk_prot->socks, that
                /*
                 * Increment the counter in the same struct proto as the master
                 * sock (sk_refcnt_debug_inc uses newsk->sk_prot->socks, that
-@@ -2468,6 +2487,12 @@ void sock_init_data(struct socket *sock,
-       sk->sk_stamp = ktime_set(-1L, 0);
+@@ -2500,6 +2520,12 @@ void sock_init_data(struct socket *sock,
+       seqlock_init(&sk->sk_stamp_seq);
+ #endif
  
 +      set_vx_info(&sk->sk_vx_info, current_vx_info());
 +      sk->sk_xid = vx_current_xid();
  
 +      set_vx_info(&sk->sk_vx_info, current_vx_info());
 +      sk->sk_xid = vx_current_xid();
@@ -23292,9 +23356,9 @@ diff -NurpP --minimal linux-4.9.135/net/core/sock.c linux-4.9.135-vs2.3.9.8/net/
  #ifdef CONFIG_NET_RX_BUSY_POLL
        sk->sk_napi_id          =       0;
        sk->sk_ll_usec          =       sysctl_net_busy_read;
  #ifdef CONFIG_NET_RX_BUSY_POLL
        sk->sk_napi_id          =       0;
        sk->sk_ll_usec          =       sysctl_net_busy_read;
-diff -NurpP --minimal linux-4.9.135/net/ipv4/af_inet.c linux-4.9.135-vs2.3.9.8/net/ipv4/af_inet.c
---- linux-4.9.135/net/ipv4/af_inet.c   2018-10-20 10:39:24.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/net/ipv4/af_inet.c 2018-10-20 05:55:44.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/net/ipv4/af_inet.c linux-4.9/net/ipv4/af_inet.c
+--- linux-4.9/net/ipv4/af_inet.c       2021-02-24 15:47:32.587351724 +0100
++++ linux-4.9/net/ipv4/af_inet.c       2021-02-24 15:47:45.134410910 +0100
 @@ -303,10 +303,15 @@ lookup_protocol:
        }
  
 @@ -303,10 +303,15 @@ lookup_protocol:
        }
  
@@ -23373,9 +23437,9 @@ diff -NurpP --minimal linux-4.9.135/net/ipv4/af_inet.c linux-4.9.135-vs2.3.9.8/n
  
  const struct proto_ops inet_stream_ops = {
        .family            = PF_INET,
  
  const struct proto_ops inet_stream_ops = {
        .family            = PF_INET,
-diff -NurpP --minimal linux-4.9.135/net/ipv4/arp.c linux-4.9.135-vs2.3.9.8/net/ipv4/arp.c
---- linux-4.9.135/net/ipv4/arp.c       2018-10-20 10:39:24.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/net/ipv4/arp.c     2018-10-20 04:58:15.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/net/ipv4/arp.c linux-4.9/net/ipv4/arp.c
+--- linux-4.9/net/ipv4/arp.c   2021-02-24 15:47:32.587351724 +0100
++++ linux-4.9/net/ipv4/arp.c   2021-02-24 15:47:45.134410910 +0100
 @@ -1320,6 +1320,7 @@ static void arp_format_neigh_entry(struc
        struct net_device *dev = n->dev;
        int hatype = dev->type;
 @@ -1320,6 +1320,7 @@ static void arp_format_neigh_entry(struc
        struct net_device *dev = n->dev;
        int hatype = dev->type;
@@ -23392,10 +23456,10 @@ diff -NurpP --minimal linux-4.9.135/net/ipv4/arp.c linux-4.9.135-vs2.3.9.8/net/i
        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",
        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-4.9.135/net/ipv4/devinet.c linux-4.9.135-vs2.3.9.8/net/ipv4/devinet.c
---- linux-4.9.135/net/ipv4/devinet.c   2018-10-20 10:39:24.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/net/ipv4/devinet.c 2018-10-20 04:58:15.000000000 +0000
-@@ -538,6 +538,7 @@ struct in_device *inetdev_by_index(struc
+diff -urNp -x '*.orig' linux-4.9/net/ipv4/devinet.c linux-4.9/net/ipv4/devinet.c
+--- linux-4.9/net/ipv4/devinet.c       2021-02-24 15:47:32.587351724 +0100
++++ linux-4.9/net/ipv4/devinet.c       2021-02-24 15:47:45.134410910 +0100
+@@ -547,6 +547,7 @@ struct in_device *inetdev_by_index(struc
  }
  EXPORT_SYMBOL(inetdev_by_index);
  
  }
  EXPORT_SYMBOL(inetdev_by_index);
  
@@ -23403,7 +23467,7 @@ diff -NurpP --minimal linux-4.9.135/net/ipv4/devinet.c linux-4.9.135-vs2.3.9.8/n
  /* Called only from RTNL semaphored context. No locks. */
  
  struct in_ifaddr *inet_ifa_byprefix(struct in_device *in_dev, __be32 prefix,
  /* Called only from RTNL semaphored context. No locks. */
  
  struct in_ifaddr *inet_ifa_byprefix(struct in_device *in_dev, __be32 prefix,
-@@ -992,6 +993,8 @@ int devinet_ioctl(struct net *net, unsig
+@@ -1006,6 +1007,8 @@ int devinet_ioctl(struct net *net, unsig
  
        in_dev = __in_dev_get_rtnl(dev);
        if (in_dev) {
  
        in_dev = __in_dev_get_rtnl(dev);
        if (in_dev) {
@@ -23412,7 +23476,7 @@ diff -NurpP --minimal linux-4.9.135/net/ipv4/devinet.c linux-4.9.135-vs2.3.9.8/n
                if (tryaddrmatch) {
                        /* Matthias Andree */
                        /* compare label and address (4.4BSD style) */
                if (tryaddrmatch) {
                        /* Matthias Andree */
                        /* compare label and address (4.4BSD style) */
-@@ -1000,6 +1003,8 @@ int devinet_ioctl(struct net *net, unsig
+@@ -1014,6 +1017,8 @@ int devinet_ioctl(struct net *net, unsig
                           This is checked above. */
                        for (ifap = &in_dev->ifa_list; (ifa = *ifap) != NULL;
                             ifap = &ifa->ifa_next) {
                           This is checked above. */
                        for (ifap = &in_dev->ifa_list; (ifa = *ifap) != NULL;
                             ifap = &ifa->ifa_next) {
@@ -23421,7 +23485,7 @@ diff -NurpP --minimal linux-4.9.135/net/ipv4/devinet.c linux-4.9.135-vs2.3.9.8/n
                                if (!strcmp(ifr.ifr_name, ifa->ifa_label) &&
                                    sin_orig.sin_addr.s_addr ==
                                                        ifa->ifa_local) {
                                if (!strcmp(ifr.ifr_name, ifa->ifa_label) &&
                                    sin_orig.sin_addr.s_addr ==
                                                        ifa->ifa_local) {
-@@ -1012,9 +1017,12 @@ int devinet_ioctl(struct net *net, unsig
+@@ -1026,9 +1031,12 @@ int devinet_ioctl(struct net *net, unsig
                   comparing just the label */
                if (!ifa) {
                        for (ifap = &in_dev->ifa_list; (ifa = *ifap) != NULL;
                   comparing just the label */
                if (!ifa) {
                        for (ifap = &in_dev->ifa_list; (ifa = *ifap) != NULL;
@@ -23435,7 +23499,7 @@ diff -NurpP --minimal linux-4.9.135/net/ipv4/devinet.c linux-4.9.135-vs2.3.9.8/n
                }
        }
  
                }
        }
  
-@@ -1168,6 +1176,8 @@ static int inet_gifconf(struct net_devic
+@@ -1182,6 +1190,8 @@ static int inet_gifconf(struct net_devic
                goto out;
  
        for (ifa = in_dev->ifa_list; ifa; ifa = ifa->ifa_next) {
                goto out;
  
        for (ifa = in_dev->ifa_list; ifa; ifa = ifa->ifa_next) {
@@ -23444,7 +23508,7 @@ diff -NurpP --minimal linux-4.9.135/net/ipv4/devinet.c linux-4.9.135-vs2.3.9.8/n
                if (!buf) {
                        done += sizeof(ifr);
                        continue;
                if (!buf) {
                        done += sizeof(ifr);
                        continue;
-@@ -1595,6 +1605,7 @@ static int inet_dump_ifaddr(struct sk_bu
+@@ -1604,6 +1614,7 @@ static int inet_dump_ifaddr(struct sk_bu
        struct net_device *dev;
        struct in_device *in_dev;
        struct in_ifaddr *ifa;
        struct net_device *dev;
        struct in_device *in_dev;
        struct in_ifaddr *ifa;
@@ -23452,7 +23516,7 @@ diff -NurpP --minimal linux-4.9.135/net/ipv4/devinet.c linux-4.9.135-vs2.3.9.8/n
        struct hlist_head *head;
  
        s_h = cb->args[0];
        struct hlist_head *head;
  
        s_h = cb->args[0];
-@@ -1618,6 +1629,8 @@ static int inet_dump_ifaddr(struct sk_bu
+@@ -1627,6 +1638,8 @@ static int inet_dump_ifaddr(struct sk_bu
  
                        for (ifa = in_dev->ifa_list, ip_idx = 0; ifa;
                             ifa = ifa->ifa_next, ip_idx++) {
  
                        for (ifa = in_dev->ifa_list, ip_idx = 0; ifa;
                             ifa = ifa->ifa_next, ip_idx++) {
@@ -23461,10 +23525,10 @@ diff -NurpP --minimal linux-4.9.135/net/ipv4/devinet.c linux-4.9.135-vs2.3.9.8/n
                                if (ip_idx < s_ip_idx)
                                        continue;
                                if (inet_fill_ifaddr(skb, ifa,
                                if (ip_idx < s_ip_idx)
                                        continue;
                                if (inet_fill_ifaddr(skb, ifa,
-diff -NurpP --minimal linux-4.9.135/net/ipv4/fib_trie.c linux-4.9.135-vs2.3.9.8/net/ipv4/fib_trie.c
---- linux-4.9.135/net/ipv4/fib_trie.c  2018-10-20 10:39:24.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/net/ipv4/fib_trie.c        2018-10-20 04:58:15.000000000 +0000
-@@ -2617,6 +2617,7 @@ static int fib_route_seq_show(struct seq
+diff -urNp -x '*.orig' linux-4.9/net/ipv4/fib_trie.c linux-4.9/net/ipv4/fib_trie.c
+--- linux-4.9/net/ipv4/fib_trie.c      2021-02-24 15:47:32.590685161 +0100
++++ linux-4.9/net/ipv4/fib_trie.c      2021-02-24 15:47:45.134410910 +0100
+@@ -2630,6 +2630,7 @@ static int fib_route_seq_show(struct seq
  
                seq_setwidth(seq, 127);
  
  
                seq_setwidth(seq, 127);
  
@@ -23472,9 +23536,9 @@ diff -NurpP --minimal linux-4.9.135/net/ipv4/fib_trie.c linux-4.9.135-vs2.3.9.8/
                if (fi)
                        seq_printf(seq,
                                   "%s\t%08X\t%08X\t%04X\t%d\t%u\t"
                if (fi)
                        seq_printf(seq,
                                   "%s\t%08X\t%08X\t%04X\t%d\t%u\t"
-diff -NurpP --minimal linux-4.9.135/net/ipv4/inet_connection_sock.c linux-4.9.135-vs2.3.9.8/net/ipv4/inet_connection_sock.c
---- linux-4.9.135/net/ipv4/inet_connection_sock.c      2018-10-20 10:39:24.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/net/ipv4/inet_connection_sock.c    2018-10-20 05:55:44.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/net/ipv4/inet_connection_sock.c linux-4.9/net/ipv4/inet_connection_sock.c
+--- linux-4.9/net/ipv4/inet_connection_sock.c  2021-02-24 15:47:32.590685161 +0100
++++ linux-4.9/net/ipv4/inet_connection_sock.c  2021-02-24 15:47:45.134410910 +0100
 @@ -16,6 +16,7 @@
  #include <linux/module.h>
  #include <linux/jhash.h>
 @@ -16,6 +16,7 @@
  #include <linux/module.h>
  #include <linux/jhash.h>
@@ -23509,9 +23573,9 @@ diff -NurpP --minimal linux-4.9.135/net/ipv4/inet_connection_sock.c linux-4.9.13
                                        break;
                        }
                }
                                        break;
                        }
                }
-diff -NurpP --minimal linux-4.9.135/net/ipv4/inet_diag.c linux-4.9.135-vs2.3.9.8/net/ipv4/inet_diag.c
---- linux-4.9.135/net/ipv4/inet_diag.c 2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/net/ipv4/inet_diag.c       2018-10-20 06:33:52.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/net/ipv4/inet_diag.c linux-4.9/net/ipv4/inet_diag.c
+--- linux-4.9/net/ipv4/inet_diag.c     2021-02-24 15:47:32.590685161 +0100
++++ linux-4.9/net/ipv4/inet_diag.c     2021-02-24 15:47:45.134410910 +0100
 @@ -31,6 +31,8 @@
  
  #include <linux/inet.h>
 @@ -31,6 +31,8 @@
  
  #include <linux/inet.h>
@@ -23532,7 +23596,7 @@ diff -NurpP --minimal linux-4.9.135/net/ipv4/inet_diag.c linux-4.9.135-vs2.3.9.8
        }
  }
  EXPORT_SYMBOL_GPL(inet_diag_msg_common_fill);
        }
  }
  EXPORT_SYMBOL_GPL(inet_diag_msg_common_fill);
-@@ -879,6 +881,9 @@ void inet_diag_dump_icsk(struct inet_has
+@@ -882,6 +884,9 @@ void inet_diag_dump_icsk(struct inet_has
                                if (!net_eq(sock_net(sk), net))
                                        continue;
  
                                if (!net_eq(sock_net(sk), net))
                                        continue;
  
@@ -23542,7 +23606,7 @@ diff -NurpP --minimal linux-4.9.135/net/ipv4/inet_diag.c linux-4.9.135-vs2.3.9.8
                                if (num < s_num) {
                                        num++;
                                        continue;
                                if (num < s_num) {
                                        num++;
                                        continue;
-@@ -941,6 +946,8 @@ skip_listen_ht:
+@@ -944,6 +949,8 @@ skip_listen_ht:
  
                        if (!net_eq(sock_net(sk), net))
                                continue;
  
                        if (!net_eq(sock_net(sk), net))
                                continue;
@@ -23551,9 +23615,9 @@ diff -NurpP --minimal linux-4.9.135/net/ipv4/inet_diag.c linux-4.9.135-vs2.3.9.8
                        if (num < s_num)
                                goto next_normal;
                        state = (sk->sk_state == TCP_TIME_WAIT) ?
                        if (num < s_num)
                                goto next_normal;
                        state = (sk->sk_state == TCP_TIME_WAIT) ?
-diff -NurpP --minimal linux-4.9.135/net/ipv4/inet_hashtables.c linux-4.9.135-vs2.3.9.8/net/ipv4/inet_hashtables.c
---- linux-4.9.135/net/ipv4/inet_hashtables.c   2018-10-20 10:39:24.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/net/ipv4/inet_hashtables.c 2018-10-20 04:58:15.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/net/ipv4/inet_hashtables.c linux-4.9/net/ipv4/inet_hashtables.c
+--- linux-4.9/net/ipv4/inet_hashtables.c       2021-02-24 15:47:32.594018600 +0100
++++ linux-4.9/net/ipv4/inet_hashtables.c       2021-02-24 15:47:45.134410910 +0100
 @@ -24,6 +24,7 @@
  #include <net/inet_connection_sock.h>
  #include <net/inet_hashtables.h>
 @@ -24,6 +24,7 @@
  #include <net/inet_connection_sock.h>
  #include <net/inet_hashtables.h>
@@ -23562,7 +23626,7 @@ diff -NurpP --minimal linux-4.9.135/net/ipv4/inet_hashtables.c linux-4.9.135-vs2
  #include <net/ip.h>
  #include <net/tcp.h>
  #include <net/sock_reuseport.h>
  #include <net/ip.h>
  #include <net/tcp.h>
  #include <net/sock_reuseport.h>
-@@ -186,6 +187,11 @@ static inline int compute_score(struct s
+@@ -187,6 +188,11 @@ static inline int compute_score(struct s
                        if (rcv_saddr != daddr)
                                return -1;
                        score += 4;
                        if (rcv_saddr != daddr)
                                return -1;
                        score += 4;
@@ -23574,7 +23638,7 @@ diff -NurpP --minimal linux-4.9.135/net/ipv4/inet_hashtables.c linux-4.9.135-vs2
                }
                if (sk->sk_bound_dev_if || exact_dif) {
                        if (sk->sk_bound_dev_if != dif)
                }
                if (sk->sk_bound_dev_if || exact_dif) {
                        if (sk->sk_bound_dev_if != dif)
-@@ -300,6 +306,7 @@ begin:
+@@ -302,6 +308,7 @@ begin:
                        goto found;
                }
        }
                        goto found;
                }
        }
@@ -23582,9 +23646,9 @@ diff -NurpP --minimal linux-4.9.135/net/ipv4/inet_hashtables.c linux-4.9.135-vs2
        /*
         * if the nulls value we got at the end of this lookup is
         * not the expected one, we must restart lookup.
        /*
         * 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-4.9.135/net/ipv4/netfilter.c linux-4.9.135-vs2.3.9.8/net/ipv4/netfilter.c
---- linux-4.9.135/net/ipv4/netfilter.c 2018-10-20 10:39:24.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/net/ipv4/netfilter.c       2018-10-20 04:58:15.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/net/ipv4/netfilter.c linux-4.9/net/ipv4/netfilter.c
+--- linux-4.9/net/ipv4/netfilter.c     2021-02-24 15:47:32.597352037 +0100
++++ linux-4.9/net/ipv4/netfilter.c     2021-02-24 15:47:45.134410910 +0100
 @@ -11,7 +11,7 @@
  #include <linux/skbuff.h>
  #include <linux/gfp.h>
 @@ -11,7 +11,7 @@
  #include <linux/skbuff.h>
  #include <linux/gfp.h>
@@ -23594,9 +23658,9 @@ diff -NurpP --minimal linux-4.9.135/net/ipv4/netfilter.c linux-4.9.135-vs2.3.9.8
  #include <net/xfrm.h>
  #include <net/ip.h>
  #include <net/netfilter/nf_queue.h>
  #include <net/xfrm.h>
  #include <net/ip.h>
  #include <net/netfilter/nf_queue.h>
-diff -NurpP --minimal linux-4.9.135/net/ipv4/raw.c linux-4.9.135-vs2.3.9.8/net/ipv4/raw.c
---- linux-4.9.135/net/ipv4/raw.c       2018-10-20 10:39:25.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/net/ipv4/raw.c     2018-10-20 04:58:15.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/net/ipv4/raw.c linux-4.9/net/ipv4/raw.c
+--- linux-4.9/net/ipv4/raw.c   2021-02-24 15:47:32.600685475 +0100
++++ linux-4.9/net/ipv4/raw.c   2021-02-24 15:47:45.137744347 +0100
 @@ -128,7 +128,7 @@ static struct sock *__raw_v4_lookup(stru
  
                if (net_eq(sock_net(sk), net) && inet->inet_num == num  &&
 @@ -128,7 +128,7 @@ static struct sock *__raw_v4_lookup(stru
  
                if (net_eq(sock_net(sk), net) && inet->inet_num == num  &&
@@ -23619,7 +23683,7 @@ diff -NurpP --minimal linux-4.9.135/net/ipv4/raw.c linux-4.9.135-vs2.3.9.8/net/i
        err = NF_HOOK(NFPROTO_IPV4, NF_INET_LOCAL_OUT,
                      net, sk, skb, NULL, rt->dst.dev,
                      dst_output);
        err = NF_HOOK(NFPROTO_IPV4, NF_INET_LOCAL_OUT,
                      net, sk, skb, NULL, rt->dst.dev,
                      dst_output);
-@@ -623,6 +629,16 @@ static int raw_sendmsg(struct sock *sk,
+@@ -625,6 +631,16 @@ static int raw_sendmsg(struct sock *sk,
                        goto done;
        }
  
                        goto done;
        }
  
@@ -23636,7 +23700,7 @@ diff -NurpP --minimal linux-4.9.135/net/ipv4/raw.c linux-4.9.135-vs2.3.9.8/net/i
        security_sk_classify_flow(sk, flowi4_to_flowi(&fl4));
        rt = ip_route_output_flow(net, &fl4, sk);
        if (IS_ERR(rt)) {
        security_sk_classify_flow(sk, flowi4_to_flowi(&fl4));
        rt = ip_route_output_flow(net, &fl4, sk);
        if (IS_ERR(rt)) {
-@@ -701,17 +717,19 @@ static int raw_bind(struct sock *sk, str
+@@ -703,17 +719,19 @@ static int raw_bind(struct sock *sk, str
  {
        struct inet_sock *inet = inet_sk(sk);
        struct sockaddr_in *addr = (struct sockaddr_in *) uaddr;
  {
        struct inet_sock *inet = inet_sk(sk);
        struct sockaddr_in *addr = (struct sockaddr_in *) uaddr;
@@ -23659,7 +23723,7 @@ diff -NurpP --minimal linux-4.9.135/net/ipv4/raw.c linux-4.9.135-vs2.3.9.8/net/i
        if (chk_addr_ret == RTN_MULTICAST || chk_addr_ret == RTN_BROADCAST)
                inet->inet_saddr = 0;  /* Use device */
        sk_dst_reset(sk);
        if (chk_addr_ret == RTN_MULTICAST || chk_addr_ret == RTN_BROADCAST)
                inet->inet_saddr = 0;  /* Use device */
        sk_dst_reset(sk);
-@@ -760,7 +778,8 @@ static int raw_recvmsg(struct sock *sk,
+@@ -762,7 +780,8 @@ static int raw_recvmsg(struct sock *sk,
        /* Copy the address. */
        if (sin) {
                sin->sin_family = AF_INET;
        /* Copy the address. */
        if (sin) {
                sin->sin_family = AF_INET;
@@ -23669,7 +23733,7 @@ diff -NurpP --minimal linux-4.9.135/net/ipv4/raw.c linux-4.9.135-vs2.3.9.8/net/i
                sin->sin_port = 0;
                memset(&sin->sin_zero, 0, sizeof(sin->sin_zero));
                *addr_len = sizeof(*sin);
                sin->sin_port = 0;
                memset(&sin->sin_zero, 0, sizeof(sin->sin_zero));
                *addr_len = sizeof(*sin);
-@@ -956,7 +975,8 @@ static struct sock *raw_get_first(struct
+@@ -958,7 +977,8 @@ static struct sock *raw_get_first(struct
        for (state->bucket = 0; state->bucket < RAW_HTABLE_SIZE;
                        ++state->bucket) {
                sk_for_each(sk, &state->h->ht[state->bucket])
        for (state->bucket = 0; state->bucket < RAW_HTABLE_SIZE;
                        ++state->bucket) {
                sk_for_each(sk, &state->h->ht[state->bucket])
@@ -23679,7 +23743,7 @@ diff -NurpP --minimal linux-4.9.135/net/ipv4/raw.c linux-4.9.135-vs2.3.9.8/net/i
                                goto found;
        }
        sk = NULL;
                                goto found;
        }
        sk = NULL;
-@@ -972,7 +992,8 @@ static struct sock *raw_get_next(struct
+@@ -974,7 +994,8 @@ static struct sock *raw_get_next(struct
                sk = sk_next(sk);
  try_again:
                ;
                sk = sk_next(sk);
  try_again:
                ;
@@ -23689,10 +23753,10 @@ diff -NurpP --minimal linux-4.9.135/net/ipv4/raw.c linux-4.9.135-vs2.3.9.8/net/i
  
        if (!sk && ++state->bucket < RAW_HTABLE_SIZE) {
                sk = sk_head(&state->h->ht[state->bucket]);
  
        if (!sk && ++state->bucket < RAW_HTABLE_SIZE) {
                sk = sk_head(&state->h->ht[state->bucket]);
-diff -NurpP --minimal linux-4.9.135/net/ipv4/route.c linux-4.9.135-vs2.3.9.8/net/ipv4/route.c
---- linux-4.9.135/net/ipv4/route.c     2018-10-20 10:39:25.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/net/ipv4/route.c   2018-10-20 04:58:15.000000000 +0000
-@@ -2250,7 +2250,7 @@ struct rtable *__ip_route_output_key_has
+diff -urNp -x '*.orig' linux-4.9/net/ipv4/route.c linux-4.9/net/ipv4/route.c
+--- linux-4.9/net/ipv4/route.c 2021-02-24 15:47:32.600685475 +0100
++++ linux-4.9/net/ipv4/route.c 2021-02-24 15:47:45.137744347 +0100
+@@ -2287,7 +2287,7 @@ struct rtable *__ip_route_output_key_has
  
  
        if (fl4->flowi4_oif) {
  
  
        if (fl4->flowi4_oif) {
@@ -23701,9 +23765,9 @@ diff -NurpP --minimal linux-4.9.135/net/ipv4/route.c linux-4.9.135-vs2.3.9.8/net
                rth = ERR_PTR(-ENODEV);
                if (!dev_out)
                        goto out;
                rth = ERR_PTR(-ENODEV);
                if (!dev_out)
                        goto out;
-diff -NurpP --minimal linux-4.9.135/net/ipv4/tcp.c linux-4.9.135-vs2.3.9.8/net/ipv4/tcp.c
---- linux-4.9.135/net/ipv4/tcp.c       2018-10-20 10:39:25.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/net/ipv4/tcp.c     2018-10-20 05:55:44.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/net/ipv4/tcp.c linux-4.9/net/ipv4/tcp.c
+--- linux-4.9/net/ipv4/tcp.c   2021-02-24 15:47:32.600685475 +0100
++++ linux-4.9/net/ipv4/tcp.c   2021-02-24 15:47:45.137744347 +0100
 @@ -269,6 +269,7 @@
  #include <linux/err.h>
  #include <linux/time.h>
 @@ -269,6 +269,7 @@
  #include <linux/err.h>
  #include <linux/time.h>
@@ -23712,13 +23776,13 @@ diff -NurpP --minimal linux-4.9.135/net/ipv4/tcp.c linux-4.9.135-vs2.3.9.8/net/i
  
  #include <net/icmp.h>
  #include <net/inet_common.h>
  
  #include <net/icmp.h>
  #include <net/inet_common.h>
-diff -NurpP --minimal linux-4.9.135/net/ipv4/tcp_ipv4.c linux-4.9.135-vs2.3.9.8/net/ipv4/tcp_ipv4.c
---- linux-4.9.135/net/ipv4/tcp_ipv4.c  2018-10-20 10:39:25.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/net/ipv4/tcp_ipv4.c        2018-10-20 05:55:44.000000000 +0000
-@@ -1933,8 +1933,12 @@ get_head:
-       sk = sk_next(sk);
+diff -urNp -x '*.orig' linux-4.9/net/ipv4/tcp_ipv4.c linux-4.9/net/ipv4/tcp_ipv4.c
+--- linux-4.9/net/ipv4/tcp_ipv4.c      2021-02-24 15:47:32.604018912 +0100
++++ linux-4.9/net/ipv4/tcp_ipv4.c      2021-02-24 15:47:45.137744347 +0100
+@@ -1944,8 +1944,12 @@ get_head:
+       sk = sk_nulls_next(sk);
  get_sk:
  get_sk:
-       sk_for_each_from(sk) {
+       sk_nulls_for_each_from(sk, node) {
 +              vxdprintk(VXD_CBIT(net, 6), "sk: %p [#%d] (from %d)",
 +                      sk, sk->sk_nid, nx_current_nid());
                if (!net_eq(sock_net(sk), net))
 +              vxdprintk(VXD_CBIT(net, 6), "sk: %p [#%d] (from %d)",
 +                      sk, sk->sk_nid, nx_current_nid());
                if (!net_eq(sock_net(sk), net))
@@ -23728,7 +23792,7 @@ diff -NurpP --minimal linux-4.9.135/net/ipv4/tcp_ipv4.c linux-4.9.135-vs2.3.9.8/
                if (sk->sk_family == st->family)
                        return sk;
        }
                if (sk->sk_family == st->family)
                        return sk;
        }
-@@ -1988,6 +1992,11 @@ static void *established_get_first(struc
+@@ -1999,6 +2003,11 @@ static void *established_get_first(struc
  
                spin_lock_bh(lock);
                sk_nulls_for_each(sk, node, &tcp_hashinfo.ehash[st->bucket].chain) {
  
                spin_lock_bh(lock);
                sk_nulls_for_each(sk, node, &tcp_hashinfo.ehash[st->bucket].chain) {
@@ -23740,7 +23804,7 @@ diff -NurpP --minimal linux-4.9.135/net/ipv4/tcp_ipv4.c linux-4.9.135-vs2.3.9.8/
                        if (sk->sk_family != st->family ||
                            !net_eq(sock_net(sk), net)) {
                                continue;
                        if (sk->sk_family != st->family ||
                            !net_eq(sock_net(sk), net)) {
                                continue;
-@@ -2014,6 +2023,11 @@ static void *established_get_next(struct
+@@ -2025,6 +2034,11 @@ static void *established_get_next(struct
        sk = sk_nulls_next(sk);
  
        sk_nulls_for_each_from(sk, node) {
        sk = sk_nulls_next(sk);
  
        sk_nulls_for_each_from(sk, node) {
@@ -23752,7 +23816,7 @@ diff -NurpP --minimal linux-4.9.135/net/ipv4/tcp_ipv4.c linux-4.9.135-vs2.3.9.8/
                if (sk->sk_family == st->family && net_eq(sock_net(sk), net))
                        return sk;
        }
                if (sk->sk_family == st->family && net_eq(sock_net(sk), net))
                        return sk;
        }
-@@ -2205,9 +2219,9 @@ static void get_openreq4(const struct re
+@@ -2216,9 +2230,9 @@ static void get_openreq4(const struct re
        seq_printf(f, "%4d: %08X:%04X %08X:%04X"
                " %02X %08X:%08X %02X:%08lX %08X %5u %8d %u %d %pK",
                i,
        seq_printf(f, "%4d: %08X:%04X %08X:%04X"
                " %02X %08X:%08X %02X:%08lX %08X %5u %8d %u %d %pK",
                i,
@@ -23764,7 +23828,7 @@ diff -NurpP --minimal linux-4.9.135/net/ipv4/tcp_ipv4.c linux-4.9.135-vs2.3.9.8/
                ntohs(ireq->ir_rmt_port),
                TCP_SYN_RECV,
                0, 0, /* could print option size, but that is af dependent. */
                ntohs(ireq->ir_rmt_port),
                TCP_SYN_RECV,
                0, 0, /* could print option size, but that is af dependent. */
-@@ -2230,8 +2244,8 @@ static void get_tcp4_sock(struct sock *s
+@@ -2241,8 +2255,8 @@ static void get_tcp4_sock(struct sock *s
        const struct inet_connection_sock *icsk = inet_csk(sk);
        const struct inet_sock *inet = inet_sk(sk);
        const struct fastopen_queue *fastopenq = &icsk->icsk_accept_queue.fastopenq;
        const struct inet_connection_sock *icsk = inet_csk(sk);
        const struct inet_sock *inet = inet_sk(sk);
        const struct fastopen_queue *fastopenq = &icsk->icsk_accept_queue.fastopenq;
@@ -23775,7 +23839,7 @@ diff -NurpP --minimal linux-4.9.135/net/ipv4/tcp_ipv4.c linux-4.9.135-vs2.3.9.8/
        __u16 destp = ntohs(inet->inet_dport);
        __u16 srcp = ntohs(inet->inet_sport);
        int rx_queue;
        __u16 destp = ntohs(inet->inet_dport);
        __u16 srcp = ntohs(inet->inet_sport);
        int rx_queue;
-@@ -2290,8 +2304,8 @@ static void get_timewait4_sock(const str
+@@ -2301,8 +2315,8 @@ static void get_timewait4_sock(const str
        __be32 dest, src;
        __u16 destp, srcp;
  
        __be32 dest, src;
        __u16 destp, srcp;
  
@@ -23786,9 +23850,9 @@ diff -NurpP --minimal linux-4.9.135/net/ipv4/tcp_ipv4.c linux-4.9.135-vs2.3.9.8/
        destp = ntohs(tw->tw_dport);
        srcp  = ntohs(tw->tw_sport);
  
        destp = ntohs(tw->tw_dport);
        srcp  = ntohs(tw->tw_sport);
  
-diff -NurpP --minimal linux-4.9.135/net/ipv4/tcp_minisocks.c linux-4.9.135-vs2.3.9.8/net/ipv4/tcp_minisocks.c
---- linux-4.9.135/net/ipv4/tcp_minisocks.c     2018-10-20 10:39:25.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/net/ipv4/tcp_minisocks.c   2018-10-20 05:55:44.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/net/ipv4/tcp_minisocks.c linux-4.9/net/ipv4/tcp_minisocks.c
+--- linux-4.9/net/ipv4/tcp_minisocks.c 2021-02-24 15:47:32.604018912 +0100
++++ linux-4.9/net/ipv4/tcp_minisocks.c 2021-02-24 15:47:45.137744347 +0100
 @@ -23,6 +23,9 @@
  #include <linux/slab.h>
  #include <linux/sysctl.h>
 @@ -23,6 +23,9 @@
  #include <linux/slab.h>
  #include <linux/sysctl.h>
@@ -23811,9 +23875,9 @@ diff -NurpP --minimal linux-4.9.135/net/ipv4/tcp_minisocks.c linux-4.9.135-vs2.3
  #if IS_ENABLED(CONFIG_IPV6)
                if (tw->tw_family == PF_INET6) {
                        struct ipv6_pinfo *np = inet6_sk(sk);
  #if IS_ENABLED(CONFIG_IPV6)
                if (tw->tw_family == PF_INET6) {
                        struct ipv6_pinfo *np = inet6_sk(sk);
-diff -NurpP --minimal linux-4.9.135/net/ipv4/udp.c linux-4.9.135-vs2.3.9.8/net/ipv4/udp.c
---- linux-4.9.135/net/ipv4/udp.c       2018-10-20 10:39:25.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/net/ipv4/udp.c     2018-10-20 05:55:44.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/net/ipv4/udp.c linux-4.9/net/ipv4/udp.c
+--- linux-4.9/net/ipv4/udp.c   2021-02-24 15:47:32.607352350 +0100
++++ linux-4.9/net/ipv4/udp.c   2021-02-24 15:47:45.137744347 +0100
 @@ -361,12 +361,26 @@ int ipv4_rcv_saddr_equal(const struct so
                         bool match_wildcard)
  {
 @@ -361,12 +361,26 @@ int ipv4_rcv_saddr_equal(const struct so
                         bool match_wildcard)
  {
@@ -23866,7 +23930,7 @@ diff -NurpP --minimal linux-4.9.135/net/ipv4/udp.c linux-4.9.135-vs2.3.9.8/net/i
  /* UDP is nearly always wildcards out the wazoo, it makes no sense to try
   * harder than this. -DaveM
   */
  /* UDP is nearly always wildcards out the wazoo, it makes no sense to try
   * harder than this. -DaveM
   */
-@@ -603,7 +623,7 @@ static inline bool __udp_is_mcast_sock(s
+@@ -607,7 +627,7 @@ static inline bool __udp_is_mcast_sock(s
            udp_sk(sk)->udp_port_hash != hnum ||
            (inet->inet_daddr && inet->inet_daddr != rmt_addr) ||
            (inet->inet_dport != rmt_port && inet->inet_dport) ||
            udp_sk(sk)->udp_port_hash != hnum ||
            (inet->inet_daddr && inet->inet_daddr != rmt_addr) ||
            (inet->inet_dport != rmt_port && inet->inet_dport) ||
@@ -23875,7 +23939,7 @@ diff -NurpP --minimal linux-4.9.135/net/ipv4/udp.c linux-4.9.135-vs2.3.9.8/net/i
            ipv6_only_sock(sk) ||
            (sk->sk_bound_dev_if && sk->sk_bound_dev_if != dif))
                return false;
            ipv6_only_sock(sk) ||
            (sk->sk_bound_dev_if && sk->sk_bound_dev_if != dif))
                return false;
-@@ -1020,6 +1040,16 @@ int udp_sendmsg(struct sock *sk, struct
+@@ -1024,6 +1044,16 @@ int udp_sendmsg(struct sock *sk, struct
                                   flow_flags,
                                   faddr, saddr, dport, inet->inet_sport);
  
                                   flow_flags,
                                   faddr, saddr, dport, inet->inet_sport);
  
@@ -23892,7 +23956,7 @@ diff -NurpP --minimal linux-4.9.135/net/ipv4/udp.c linux-4.9.135-vs2.3.9.8/net/i
                security_sk_classify_flow(sk, flowi4_to_flowi(fl4));
                rt = ip_route_output_flow(net, fl4, sk);
                if (IS_ERR(rt)) {
                security_sk_classify_flow(sk, flowi4_to_flowi(fl4));
                rt = ip_route_output_flow(net, fl4, sk);
                if (IS_ERR(rt)) {
-@@ -1317,7 +1347,8 @@ try_again:
+@@ -1321,7 +1351,8 @@ try_again:
        if (sin) {
                sin->sin_family = AF_INET;
                sin->sin_port = udp_hdr(skb)->source;
        if (sin) {
                sin->sin_family = AF_INET;
                sin->sin_port = udp_hdr(skb)->source;
@@ -23902,7 +23966,7 @@ diff -NurpP --minimal linux-4.9.135/net/ipv4/udp.c linux-4.9.135-vs2.3.9.8/net/i
                memset(sin->sin_zero, 0, sizeof(sin->sin_zero));
                *addr_len = sizeof(*sin);
        }
                memset(sin->sin_zero, 0, sizeof(sin->sin_zero));
                *addr_len = sizeof(*sin);
        }
-@@ -2271,6 +2302,8 @@ static struct sock *udp_get_first(struct
+@@ -2291,6 +2322,8 @@ static struct sock *udp_get_first(struct
                sk_for_each(sk, &hslot->head) {
                        if (!net_eq(sock_net(sk), net))
                                continue;
                sk_for_each(sk, &hslot->head) {
                        if (!net_eq(sock_net(sk), net))
                                continue;
@@ -23911,7 +23975,7 @@ diff -NurpP --minimal linux-4.9.135/net/ipv4/udp.c linux-4.9.135-vs2.3.9.8/net/i
                        if (sk->sk_family == state->family)
                                goto found;
                }
                        if (sk->sk_family == state->family)
                                goto found;
                }
-@@ -2288,7 +2321,9 @@ static struct sock *udp_get_next(struct
+@@ -2308,7 +2341,9 @@ static struct sock *udp_get_next(struct
  
        do {
                sk = sk_next(sk);
  
        do {
                sk = sk_next(sk);
@@ -23922,7 +23986,7 @@ diff -NurpP --minimal linux-4.9.135/net/ipv4/udp.c linux-4.9.135-vs2.3.9.8/net/i
  
        if (!sk) {
                if (state->bucket <= state->udp_table->mask)
  
        if (!sk) {
                if (state->bucket <= state->udp_table->mask)
-@@ -2384,8 +2419,8 @@ static void udp4_format_sock(struct sock
+@@ -2404,8 +2439,8 @@ static void udp4_format_sock(struct sock
                int bucket)
  {
        struct inet_sock *inet = inet_sk(sp);
                int bucket)
  {
        struct inet_sock *inet = inet_sk(sp);
@@ -23933,9 +23997,9 @@ diff -NurpP --minimal linux-4.9.135/net/ipv4/udp.c linux-4.9.135-vs2.3.9.8/net/i
        __u16 destp       = ntohs(inet->inet_dport);
        __u16 srcp        = ntohs(inet->inet_sport);
  
        __u16 destp       = ntohs(inet->inet_dport);
        __u16 srcp        = ntohs(inet->inet_sport);
  
-diff -NurpP --minimal linux-4.9.135/net/ipv4/udp_diag.c linux-4.9.135-vs2.3.9.8/net/ipv4/udp_diag.c
---- linux-4.9.135/net/ipv4/udp_diag.c  2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/net/ipv4/udp_diag.c        2018-10-20 06:31:18.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/net/ipv4/udp_diag.c linux-4.9/net/ipv4/udp_diag.c
+--- linux-4.9/net/ipv4/udp_diag.c      2016-12-11 20:17:54.000000000 +0100
++++ linux-4.9/net/ipv4/udp_diag.c      2021-02-24 15:47:45.137744347 +0100
 @@ -120,6 +120,8 @@ static void udp_dump(struct udp_table *t
  
                        if (!net_eq(sock_net(sk), net))
 @@ -120,6 +120,8 @@ static void udp_dump(struct udp_table *t
  
                        if (!net_eq(sock_net(sk), net))
@@ -23945,9 +24009,9 @@ diff -NurpP --minimal linux-4.9.135/net/ipv4/udp_diag.c linux-4.9.135-vs2.3.9.8/
                        if (num < s_num)
                                goto next;
                        if (!(r->idiag_states & (1 << sk->sk_state)))
                        if (num < s_num)
                                goto next;
                        if (!(r->idiag_states & (1 << sk->sk_state)))
-diff -NurpP --minimal linux-4.9.135/net/ipv6/addrconf.c linux-4.9.135-vs2.3.9.8/net/ipv6/addrconf.c
---- linux-4.9.135/net/ipv6/addrconf.c  2018-10-20 10:39:25.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/net/ipv6/addrconf.c        2018-10-20 05:55:44.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/net/ipv6/addrconf.c linux-4.9/net/ipv6/addrconf.c
+--- linux-4.9/net/ipv6/addrconf.c      2021-02-24 15:47:32.607352350 +0100
++++ linux-4.9/net/ipv6/addrconf.c      2021-02-24 15:47:45.141077785 +0100
 @@ -92,6 +92,7 @@
  #include <linux/proc_fs.h>
  #include <linux/seq_file.h>
 @@ -92,6 +92,7 @@
  #include <linux/proc_fs.h>
  #include <linux/seq_file.h>
@@ -23956,7 +24020,7 @@ diff -NurpP --minimal linux-4.9.135/net/ipv6/addrconf.c linux-4.9.135-vs2.3.9.8/
  
  /* Set to 3 to get tracing... */
  #define ACONF_DEBUG 2
  
  /* Set to 3 to get tracing... */
  #define ACONF_DEBUG 2
-@@ -1497,7 +1498,8 @@ static int __ipv6_dev_get_saddr(struct n
+@@ -1498,7 +1499,8 @@ static int __ipv6_dev_get_saddr(struct n
                                struct ipv6_saddr_dst *dst,
                                struct inet6_dev *idev,
                                struct ipv6_saddr_score *scores,
                                struct ipv6_saddr_dst *dst,
                                struct inet6_dev *idev,
                                struct ipv6_saddr_score *scores,
@@ -23966,7 +24030,7 @@ diff -NurpP --minimal linux-4.9.135/net/ipv6/addrconf.c linux-4.9.135-vs2.3.9.8/
  {
        struct ipv6_saddr_score *score = &scores[1 - hiscore_idx], *hiscore = &scores[hiscore_idx];
  
  {
        struct ipv6_saddr_score *score = &scores[1 - hiscore_idx], *hiscore = &scores[hiscore_idx];
  
-@@ -1527,6 +1529,8 @@ static int __ipv6_dev_get_saddr(struct n
+@@ -1528,6 +1530,8 @@ static int __ipv6_dev_get_saddr(struct n
                                            idev->dev->name);
                        continue;
                }
                                            idev->dev->name);
                        continue;
                }
@@ -23975,7 +24039,7 @@ diff -NurpP --minimal linux-4.9.135/net/ipv6/addrconf.c linux-4.9.135-vs2.3.9.8/
  
                score->rule = -1;
                bitmap_zero(score->scorebits, IPV6_SADDR_RULE_MAX);
  
                score->rule = -1;
                bitmap_zero(score->scorebits, IPV6_SADDR_RULE_MAX);
-@@ -1577,26 +1581,27 @@ static int ipv6_get_saddr_master(struct
+@@ -1578,26 +1582,27 @@ static int ipv6_get_saddr_master(struct
                                 const struct net_device *master,
                                 struct ipv6_saddr_dst *dst,
                                 struct ipv6_saddr_score *scores,
                                 const struct net_device *master,
                                 struct ipv6_saddr_dst *dst,
                                 struct ipv6_saddr_score *scores,
@@ -24009,7 +24073,7 @@ diff -NurpP --minimal linux-4.9.135/net/ipv6/addrconf.c linux-4.9.135-vs2.3.9.8/
  {
        struct ipv6_saddr_score scores[2], *hiscore;
        struct ipv6_saddr_dst dst;
  {
        struct ipv6_saddr_score scores[2], *hiscore;
        struct ipv6_saddr_dst dst;
-@@ -1645,7 +1650,8 @@ int ipv6_dev_get_saddr(struct net *net,
+@@ -1646,7 +1651,8 @@ int ipv6_dev_get_saddr(struct net *net,
  
        if (use_oif_addr) {
                if (idev)
  
        if (use_oif_addr) {
                if (idev)
@@ -24019,7 +24083,7 @@ diff -NurpP --minimal linux-4.9.135/net/ipv6/addrconf.c linux-4.9.135-vs2.3.9.8/
        } else {
                const struct net_device *master;
                int master_idx = 0;
        } else {
                const struct net_device *master;
                int master_idx = 0;
-@@ -1659,8 +1665,8 @@ int ipv6_dev_get_saddr(struct net *net,
+@@ -1660,8 +1666,8 @@ int ipv6_dev_get_saddr(struct net *net,
                        master_idx = master->ifindex;
  
                        hiscore_idx = ipv6_get_saddr_master(net, dst_dev,
                        master_idx = master->ifindex;
  
                        hiscore_idx = ipv6_get_saddr_master(net, dst_dev,
@@ -24030,7 +24094,7 @@ diff -NurpP --minimal linux-4.9.135/net/ipv6/addrconf.c linux-4.9.135-vs2.3.9.8/
  
                        if (scores[hiscore_idx].ifa)
                                goto out;
  
                        if (scores[hiscore_idx].ifa)
                                goto out;
-@@ -1675,7 +1681,8 @@ int ipv6_dev_get_saddr(struct net *net,
+@@ -1676,7 +1682,8 @@ int ipv6_dev_get_saddr(struct net *net,
                        idev = __in6_dev_get(dev);
                        if (!idev)
                                continue;
                        idev = __in6_dev_get(dev);
                        if (!idev)
                                continue;
@@ -24040,7 +24104,7 @@ diff -NurpP --minimal linux-4.9.135/net/ipv6/addrconf.c linux-4.9.135-vs2.3.9.8/
                }
        }
  
                }
        }
  
-@@ -4129,7 +4136,10 @@ static void if6_seq_stop(struct seq_file
+@@ -4135,7 +4142,10 @@ static void if6_seq_stop(struct seq_file
  static int if6_seq_show(struct seq_file *seq, void *v)
  {
        struct inet6_ifaddr *ifp = (struct inet6_ifaddr *)v;
  static int if6_seq_show(struct seq_file *seq, void *v)
  {
        struct inet6_ifaddr *ifp = (struct inet6_ifaddr *)v;
@@ -24052,7 +24116,7 @@ diff -NurpP --minimal linux-4.9.135/net/ipv6/addrconf.c linux-4.9.135-vs2.3.9.8/
                   &ifp->addr,
                   ifp->idev->dev->ifindex,
                   ifp->prefix_len,
                   &ifp->addr,
                   ifp->idev->dev->ifindex,
                   ifp->prefix_len,
-@@ -4713,6 +4723,11 @@ static int in6_dump_addrs(struct inet6_d
+@@ -4719,6 +4729,11 @@ static int in6_dump_addrs(struct inet6_d
        struct ifacaddr6 *ifaca;
        int err = 1;
        int ip_idx = *p_ip_idx;
        struct ifacaddr6 *ifaca;
        int err = 1;
        int ip_idx = *p_ip_idx;
@@ -24064,7 +24128,7 @@ diff -NurpP --minimal linux-4.9.135/net/ipv6/addrconf.c linux-4.9.135-vs2.3.9.8/
  
        read_lock_bh(&idev->lock);
        switch (type) {
  
        read_lock_bh(&idev->lock);
        switch (type) {
-@@ -4723,6 +4738,8 @@ static int in6_dump_addrs(struct inet6_d
+@@ -4729,6 +4744,8 @@ static int in6_dump_addrs(struct inet6_d
                list_for_each_entry(ifa, &idev->addr_list, if_list) {
                        if (ip_idx < s_ip_idx)
                                goto next;
                list_for_each_entry(ifa, &idev->addr_list, if_list) {
                        if (ip_idx < s_ip_idx)
                                goto next;
@@ -24073,7 +24137,7 @@ diff -NurpP --minimal linux-4.9.135/net/ipv6/addrconf.c linux-4.9.135-vs2.3.9.8/
                        err = inet6_fill_ifaddr(skb, ifa,
                                                NETLINK_CB(cb->skb).portid,
                                                cb->nlh->nlmsg_seq,
                        err = inet6_fill_ifaddr(skb, ifa,
                                                NETLINK_CB(cb->skb).portid,
                                                cb->nlh->nlmsg_seq,
-@@ -4740,6 +4757,8 @@ static int in6_dump_addrs(struct inet6_d
+@@ -4748,6 +4765,8 @@ next:
                     ifmca = ifmca->next, ip_idx++) {
                        if (ip_idx < s_ip_idx)
                                continue;
                     ifmca = ifmca->next, ip_idx++) {
                        if (ip_idx < s_ip_idx)
                                continue;
@@ -24082,7 +24146,7 @@ diff -NurpP --minimal linux-4.9.135/net/ipv6/addrconf.c linux-4.9.135-vs2.3.9.8/
                        err = inet6_fill_ifmcaddr(skb, ifmca,
                                                  NETLINK_CB(cb->skb).portid,
                                                  cb->nlh->nlmsg_seq,
                        err = inet6_fill_ifmcaddr(skb, ifmca,
                                                  NETLINK_CB(cb->skb).portid,
                                                  cb->nlh->nlmsg_seq,
-@@ -4755,6 +4774,8 @@ static int in6_dump_addrs(struct inet6_d
+@@ -4763,6 +4782,8 @@ next:
                     ifaca = ifaca->aca_next, ip_idx++) {
                        if (ip_idx < s_ip_idx)
                                continue;
                     ifaca = ifaca->aca_next, ip_idx++) {
                        if (ip_idx < s_ip_idx)
                                continue;
@@ -24091,7 +24155,7 @@ diff -NurpP --minimal linux-4.9.135/net/ipv6/addrconf.c linux-4.9.135-vs2.3.9.8/
                        err = inet6_fill_ifacaddr(skb, ifaca,
                                                  NETLINK_CB(cb->skb).portid,
                                                  cb->nlh->nlmsg_seq,
                        err = inet6_fill_ifacaddr(skb, ifaca,
                                                  NETLINK_CB(cb->skb).portid,
                                                  cb->nlh->nlmsg_seq,
-@@ -4783,6 +4804,10 @@ static int inet6_dump_addr(struct sk_buf
+@@ -4791,6 +4812,10 @@ static int inet6_dump_addr(struct sk_buf
        struct inet6_dev *idev;
        struct hlist_head *head;
  
        struct inet6_dev *idev;
        struct hlist_head *head;
  
@@ -24102,7 +24166,7 @@ diff -NurpP --minimal linux-4.9.135/net/ipv6/addrconf.c linux-4.9.135-vs2.3.9.8/
        s_h = cb->args[0];
        s_idx = idx = cb->args[1];
        s_ip_idx = ip_idx = cb->args[2];
        s_h = cb->args[0];
        s_idx = idx = cb->args[1];
        s_ip_idx = ip_idx = cb->args[2];
-@@ -5301,6 +5326,7 @@ static int inet6_dump_ifinfo(struct sk_b
+@@ -5309,6 +5334,7 @@ static int inet6_dump_ifinfo(struct sk_b
        struct net_device *dev;
        struct inet6_dev *idev;
        struct hlist_head *head;
        struct net_device *dev;
        struct inet6_dev *idev;
        struct hlist_head *head;
@@ -24110,7 +24174,7 @@ diff -NurpP --minimal linux-4.9.135/net/ipv6/addrconf.c linux-4.9.135-vs2.3.9.8/
  
        s_h = cb->args[0];
        s_idx = cb->args[1];
  
        s_h = cb->args[0];
        s_idx = cb->args[1];
-@@ -5312,6 +5338,8 @@ static int inet6_dump_ifinfo(struct sk_b
+@@ -5320,6 +5346,8 @@ static int inet6_dump_ifinfo(struct sk_b
                hlist_for_each_entry_rcu(dev, head, index_hlist) {
                        if (idx < s_idx)
                                goto cont;
                hlist_for_each_entry_rcu(dev, head, index_hlist) {
                        if (idx < s_idx)
                                goto cont;
@@ -24119,9 +24183,9 @@ diff -NurpP --minimal linux-4.9.135/net/ipv6/addrconf.c linux-4.9.135-vs2.3.9.8/
                        idev = __in6_dev_get(dev);
                        if (!idev)
                                goto cont;
                        idev = __in6_dev_get(dev);
                        if (!idev)
                                goto cont;
-diff -NurpP --minimal linux-4.9.135/net/ipv6/af_inet6.c linux-4.9.135-vs2.3.9.8/net/ipv6/af_inet6.c
---- linux-4.9.135/net/ipv6/af_inet6.c  2018-10-20 10:39:25.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/net/ipv6/af_inet6.c        2018-10-20 04:58:15.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/net/ipv6/af_inet6.c linux-4.9/net/ipv6/af_inet6.c
+--- linux-4.9/net/ipv6/af_inet6.c      2021-02-24 15:47:32.607352350 +0100
++++ linux-4.9/net/ipv6/af_inet6.c      2021-02-24 15:47:45.141077785 +0100
 @@ -43,6 +43,7 @@
  #include <linux/netdevice.h>
  #include <linux/icmpv6.h>
 @@ -43,6 +43,7 @@
  #include <linux/netdevice.h>
  #include <linux/icmpv6.h>
@@ -24164,7 +24228,7 @@ diff -NurpP --minimal linux-4.9.135/net/ipv6/af_inet6.c linux-4.9.135-vs2.3.9.8/
        addr_type = ipv6_addr_type(&addr->sin6_addr);
        if ((addr_type & IPV6_ADDR_MULTICAST) && sock->type == SOCK_STREAM)
                return -EINVAL;
        addr_type = ipv6_addr_type(&addr->sin6_addr);
        if ((addr_type & IPV6_ADDR_MULTICAST) && sock->type == SOCK_STREAM)
                return -EINVAL;
-@@ -328,6 +337,10 @@ int inet6_bind(struct socket *sock, stru
+@@ -340,6 +349,10 @@ int inet6_bind(struct socket *sock, stru
                        err = -EADDRNOTAVAIL;
                        goto out;
                }
                        err = -EADDRNOTAVAIL;
                        goto out;
                }
@@ -24175,7 +24239,7 @@ diff -NurpP --minimal linux-4.9.135/net/ipv6/af_inet6.c linux-4.9.135-vs2.3.9.8/
        } else {
                if (addr_type != IPV6_ADDR_ANY) {
                        struct net_device *dev = NULL;
        } else {
                if (addr_type != IPV6_ADDR_ANY) {
                        struct net_device *dev = NULL;
-@@ -354,6 +367,11 @@ int inet6_bind(struct socket *sock, stru
+@@ -369,6 +382,11 @@ int inet6_bind(struct socket *sock, stru
                                }
                        }
  
                                }
                        }
  
@@ -24187,7 +24251,7 @@ diff -NurpP --minimal linux-4.9.135/net/ipv6/af_inet6.c linux-4.9.135-vs2.3.9.8/
                        /* ipv4 addr of the socket is invalid.  Only the
                         * unspecified and mapped address have a v4 equivalent.
                         */
                        /* ipv4 addr of the socket is invalid.  Only the
                         * unspecified and mapped address have a v4 equivalent.
                         */
-@@ -371,6 +389,9 @@ int inet6_bind(struct socket *sock, stru
+@@ -386,6 +404,9 @@ int inet6_bind(struct socket *sock, stru
                }
        }
  
                }
        }
  
@@ -24197,7 +24261,7 @@ diff -NurpP --minimal linux-4.9.135/net/ipv6/af_inet6.c linux-4.9.135-vs2.3.9.8/
        inet->inet_rcv_saddr = v4addr;
        inet->inet_saddr = v4addr;
  
        inet->inet_rcv_saddr = v4addr;
        inet->inet_saddr = v4addr;
  
-@@ -477,9 +498,11 @@ int inet6_getname(struct socket *sock, s
+@@ -492,9 +513,11 @@ int inet6_getname(struct socket *sock, s
                        return -ENOTCONN;
                sin->sin6_port = inet->inet_dport;
                sin->sin6_addr = sk->sk_v6_daddr;
                        return -ENOTCONN;
                sin->sin6_port = inet->inet_dport;
                sin->sin6_addr = sk->sk_v6_daddr;
@@ -24209,10 +24273,10 @@ diff -NurpP --minimal linux-4.9.135/net/ipv6/af_inet6.c linux-4.9.135-vs2.3.9.8/
                if (ipv6_addr_any(&sk->sk_v6_rcv_saddr))
                        sin->sin6_addr = np->saddr;
                else
                if (ipv6_addr_any(&sk->sk_v6_rcv_saddr))
                        sin->sin6_addr = np->saddr;
                else
-diff -NurpP --minimal linux-4.9.135/net/ipv6/datagram.c linux-4.9.135-vs2.3.9.8/net/ipv6/datagram.c
---- linux-4.9.135/net/ipv6/datagram.c  2018-10-20 10:39:25.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/net/ipv6/datagram.c        2018-10-20 05:55:44.000000000 +0000
-@@ -780,7 +780,7 @@ int ip6_datagram_send_ctl(struct net *ne
+diff -urNp -x '*.orig' linux-4.9/net/ipv6/datagram.c linux-4.9/net/ipv6/datagram.c
+--- linux-4.9/net/ipv6/datagram.c      2021-02-24 15:47:32.610685787 +0100
++++ linux-4.9/net/ipv6/datagram.c      2021-02-24 15:47:45.141077785 +0100
+@@ -792,7 +792,7 @@ int ip6_datagram_send_ctl(struct net *ne
  
                        rcu_read_lock();
                        if (fl6->flowi6_oif) {
  
                        rcu_read_lock();
                        if (fl6->flowi6_oif) {
@@ -24221,9 +24285,9 @@ diff -NurpP --minimal linux-4.9.135/net/ipv6/datagram.c linux-4.9.135-vs2.3.9.8/
                                if (!dev) {
                                        rcu_read_unlock();
                                        return -ENODEV;
                                if (!dev) {
                                        rcu_read_unlock();
                                        return -ENODEV;
-diff -NurpP --minimal linux-4.9.135/net/ipv6/fib6_rules.c linux-4.9.135-vs2.3.9.8/net/ipv6/fib6_rules.c
---- linux-4.9.135/net/ipv6/fib6_rules.c        2018-10-20 10:39:25.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/net/ipv6/fib6_rules.c      2018-10-20 04:58:15.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/net/ipv6/fib6_rules.c linux-4.9/net/ipv6/fib6_rules.c
+--- linux-4.9/net/ipv6/fib6_rules.c    2021-02-24 15:47:32.610685787 +0100
++++ linux-4.9/net/ipv6/fib6_rules.c    2021-02-24 15:47:45.141077785 +0100
 @@ -102,7 +102,7 @@ static int fib6_rule_action(struct fib_r
                                               ip6_dst_idev(&rt->dst)->dev,
                                               &flp6->daddr,
 @@ -102,7 +102,7 @@ static int fib6_rule_action(struct fib_r
                                               ip6_dst_idev(&rt->dst)->dev,
                                               &flp6->daddr,
@@ -24233,9 +24297,9 @@ diff -NurpP --minimal linux-4.9.135/net/ipv6/fib6_rules.c linux-4.9.135-vs2.3.9.
                                goto again;
                        if (!ipv6_prefix_equal(&saddr, &r->src.addr,
                                               r->src.plen))
                                goto again;
                        if (!ipv6_prefix_equal(&saddr, &r->src.addr,
                                               r->src.plen))
-diff -NurpP --minimal linux-4.9.135/net/ipv6/inet6_hashtables.c linux-4.9.135-vs2.3.9.8/net/ipv6/inet6_hashtables.c
---- linux-4.9.135/net/ipv6/inet6_hashtables.c  2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/net/ipv6/inet6_hashtables.c        2018-10-20 04:58:15.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/net/ipv6/inet6_hashtables.c linux-4.9/net/ipv6/inet6_hashtables.c
+--- linux-4.9/net/ipv6/inet6_hashtables.c      2021-02-24 15:47:32.610685787 +0100
++++ linux-4.9/net/ipv6/inet6_hashtables.c      2021-02-24 15:47:45.141077785 +0100
 @@ -16,6 +16,7 @@
  
  #include <linux/module.h>
 @@ -16,6 +16,7 @@
  
  #include <linux/module.h>
@@ -24254,7 +24318,7 @@ diff -NurpP --minimal linux-4.9.135/net/ipv6/inet6_hashtables.c linux-4.9.135-vs
                }
                if (sk->sk_bound_dev_if || exact_dif) {
                        if (sk->sk_bound_dev_if != dif)
                }
                if (sk->sk_bound_dev_if || exact_dif) {
                        if (sk->sk_bound_dev_if != dif)
-@@ -282,39 +286,71 @@ EXPORT_SYMBOL_GPL(inet6_hash);
+@@ -283,39 +287,71 @@ EXPORT_SYMBOL_GPL(inet6_hash);
   *                          IPV6_ADDR_ANY only equals to IPV6_ADDR_ANY,
   *                          and 0.0.0.0 equals to 0.0.0.0 only
   */
   *                          IPV6_ADDR_ANY only equals to IPV6_ADDR_ANY,
   *                          and 0.0.0.0 equals to 0.0.0.0 only
   */
@@ -24297,20 +24361,17 @@ diff -NurpP --minimal linux-4.9.135/net/ipv6/inet6_hashtables.c linux-4.9.135-vs
        }
  
 -      if (addr_type == IPV6_ADDR_ANY && addr_type2 == IPV6_ADDR_ANY)
        }
  
 -      if (addr_type == IPV6_ADDR_ANY && addr_type2 == IPV6_ADDR_ANY)
--              return 1;
 +      /* if both are wildcards, check for overlap */
 +      if (addr_type1 == IPV6_ADDR_ANY && addr_type2 == IPV6_ADDR_ANY)
 +              return nx_v6_addr_conflict(sk1->sk_nx_info, sk2->sk_nx_info);
 +      /* if both are wildcards, check for overlap */
 +      if (addr_type1 == IPV6_ADDR_ANY && addr_type2 == IPV6_ADDR_ANY)
 +              return nx_v6_addr_conflict(sk1->sk_nx_info, sk2->sk_nx_info);
--      if (addr_type2 == IPV6_ADDR_ANY && match_wildcard &&
--          !(sk2_ipv6only && addr_type == IPV6_ADDR_MAPPED))
++
 +      /* if both are valid ipv6 addresses, mapped handled above */
 +      if (addr_type1 != IPV6_ADDR_ANY && addr_type2 != IPV6_ADDR_ANY &&
 +          sk2_rcv_saddr6 && ipv6_addr_equal(sk1_rcv_saddr6, sk2_rcv_saddr6))
                return 1;
  
 +      /* if both are valid ipv6 addresses, mapped handled above */
 +      if (addr_type1 != IPV6_ADDR_ANY && addr_type2 != IPV6_ADDR_ANY &&
 +          sk2_rcv_saddr6 && ipv6_addr_equal(sk1_rcv_saddr6, sk2_rcv_saddr6))
                return 1;
  
--      if (addr_type == IPV6_ADDR_ANY && match_wildcard &&
--          !(ipv6_only_sock(sk) && addr_type2 == IPV6_ADDR_MAPPED))
+-      if (addr_type2 == IPV6_ADDR_ANY && match_wildcard &&
+-          !(sk2_ipv6only && addr_type == IPV6_ADDR_MAPPED))
 -              return 1;
 +      if (addr_type1 == IPV6_ADDR_ANY && match_wildcard) {
 +              /* ipv6only case handled above */
 -              return 1;
 +      if (addr_type1 == IPV6_ADDR_ANY && match_wildcard) {
 +              /* ipv6only case handled above */
@@ -24320,8 +24381,8 @@ diff -NurpP --minimal linux-4.9.135/net/ipv6/inet6_hashtables.c linux-4.9.135-vs
 +                      return v6_addr_in_nx_info(sk1->sk_nx_info, sk2_rcv_saddr6, -1);
 +      }
  
 +                      return v6_addr_in_nx_info(sk1->sk_nx_info, sk2_rcv_saddr6, -1);
 +      }
  
--      if (sk2_rcv_saddr6 &&
--          ipv6_addr_equal(&sk->sk_v6_rcv_saddr, sk2_rcv_saddr6))
+-      if (addr_type == IPV6_ADDR_ANY && match_wildcard &&
+-          !(ipv6_only_sock(sk) && addr_type2 == IPV6_ADDR_MAPPED))
 -              return 1;
 +      if (addr_type2 == IPV6_ADDR_ANY && match_wildcard) {
 +              /* ipv6only case handled above */
 -              return 1;
 +      if (addr_type2 == IPV6_ADDR_ANY && match_wildcard) {
 +              /* ipv6only case handled above */
@@ -24330,7 +24391,10 @@ diff -NurpP --minimal linux-4.9.135/net/ipv6/inet6_hashtables.c linux-4.9.135-vs
 +              else
 +                      return v6_addr_in_nx_info(sk2->sk_nx_info, sk1_rcv_saddr6, -1);
 +      }
 +              else
 +                      return v6_addr_in_nx_info(sk2->sk_nx_info, sk1_rcv_saddr6, -1);
 +      }
-+
+-      if (sk2_rcv_saddr6 &&
+-          ipv6_addr_equal(&sk->sk_v6_rcv_saddr, sk2_rcv_saddr6))
+-              return 1;
 +      return 0;
 +
 +vs_v4:
 +      return 0;
 +
 +vs_v4:
@@ -24345,10 +24409,10 @@ diff -NurpP --minimal linux-4.9.135/net/ipv6/inet6_hashtables.c linux-4.9.135-vs
  
        return 0;
  }
  
        return 0;
  }
-diff -NurpP --minimal linux-4.9.135/net/ipv6/ip6_fib.c linux-4.9.135-vs2.3.9.8/net/ipv6/ip6_fib.c
---- linux-4.9.135/net/ipv6/ip6_fib.c   2018-10-20 10:39:25.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/net/ipv6/ip6_fib.c 2018-10-20 04:58:15.000000000 +0000
-@@ -1976,6 +1976,7 @@ static int ipv6_route_seq_show(struct se
+diff -urNp -x '*.orig' linux-4.9/net/ipv6/ip6_fib.c linux-4.9/net/ipv6/ip6_fib.c
+--- linux-4.9/net/ipv6/ip6_fib.c       2021-02-24 15:47:32.610685787 +0100
++++ linux-4.9/net/ipv6/ip6_fib.c       2021-02-24 15:47:45.141077785 +0100
+@@ -1977,6 +1977,7 @@ static int ipv6_route_seq_show(struct se
        struct rt6_info *rt = v;
        struct ipv6_route_iter *iter = seq->private;
  
        struct rt6_info *rt = v;
        struct ipv6_route_iter *iter = seq->private;
  
@@ -24356,10 +24420,10 @@ diff -NurpP --minimal linux-4.9.135/net/ipv6/ip6_fib.c linux-4.9.135-vs2.3.9.8/n
        seq_printf(seq, "%pi6 %02x ", &rt->rt6i_dst.addr, rt->rt6i_dst.plen);
  
  #ifdef CONFIG_IPV6_SUBTREES
        seq_printf(seq, "%pi6 %02x ", &rt->rt6i_dst.addr, rt->rt6i_dst.plen);
  
  #ifdef CONFIG_IPV6_SUBTREES
-diff -NurpP --minimal linux-4.9.135/net/ipv6/ip6_output.c linux-4.9.135-vs2.3.9.8/net/ipv6/ip6_output.c
---- linux-4.9.135/net/ipv6/ip6_output.c        2018-10-20 10:39:25.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/net/ipv6/ip6_output.c      2018-10-20 05:55:44.000000000 +0000
-@@ -960,7 +960,8 @@ static int ip6_dst_lookup_tail(struct ne
+diff -urNp -x '*.orig' linux-4.9/net/ipv6/ip6_output.c linux-4.9/net/ipv6/ip6_output.c
+--- linux-4.9/net/ipv6/ip6_output.c    2021-02-24 15:47:33.077367054 +0100
++++ linux-4.9/net/ipv6/ip6_output.c    2021-02-24 15:47:45.141077785 +0100
+@@ -966,7 +966,8 @@ static int ip6_dst_lookup_tail(struct ne
                rt = (*dst)->error ? NULL : (struct rt6_info *)*dst;
                err = ip6_route_get_saddr(net, rt, &fl6->daddr,
                                          sk ? inet6_sk(sk)->srcprefs : 0,
                rt = (*dst)->error ? NULL : (struct rt6_info *)*dst;
                err = ip6_route_get_saddr(net, rt, &fl6->daddr,
                                          sk ? inet6_sk(sk)->srcprefs : 0,
@@ -24369,10 +24433,10 @@ diff -NurpP --minimal linux-4.9.135/net/ipv6/ip6_output.c linux-4.9.135-vs2.3.9.
                if (err)
                        goto out_err_release;
  
                if (err)
                        goto out_err_release;
  
-diff -NurpP --minimal linux-4.9.135/net/ipv6/ip6_tunnel.c linux-4.9.135-vs2.3.9.8/net/ipv6/ip6_tunnel.c
---- linux-4.9.135/net/ipv6/ip6_tunnel.c        2018-10-20 10:39:25.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/net/ipv6/ip6_tunnel.c      2018-10-20 05:55:44.000000000 +0000
-@@ -1115,7 +1115,7 @@ route_lookup:
+diff -urNp -x '*.orig' linux-4.9/net/ipv6/ip6_tunnel.c linux-4.9/net/ipv6/ip6_tunnel.c
+--- linux-4.9/net/ipv6/ip6_tunnel.c    2021-02-24 15:47:32.614019225 +0100
++++ linux-4.9/net/ipv6/ip6_tunnel.c    2021-02-24 15:47:45.141077785 +0100
+@@ -1124,7 +1124,7 @@ route_lookup:
                }
                if (t->parms.collect_md &&
                    ipv6_dev_get_saddr(net, ip6_dst_idev(dst)->dev,
                }
                if (t->parms.collect_md &&
                    ipv6_dev_get_saddr(net, ip6_dst_idev(dst)->dev,
@@ -24381,9 +24445,9 @@ diff -NurpP --minimal linux-4.9.135/net/ipv6/ip6_tunnel.c linux-4.9.135-vs2.3.9.
                        goto tx_err_link_failure;
                ndst = dst;
        }
                        goto tx_err_link_failure;
                ndst = dst;
        }
-diff -NurpP --minimal linux-4.9.135/net/ipv6/ndisc.c linux-4.9.135-vs2.3.9.8/net/ipv6/ndisc.c
---- linux-4.9.135/net/ipv6/ndisc.c     2018-10-20 10:39:25.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/net/ipv6/ndisc.c   2018-10-20 04:58:15.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/net/ipv6/ndisc.c linux-4.9/net/ipv6/ndisc.c
+--- linux-4.9/net/ipv6/ndisc.c 2021-02-24 15:47:32.614019225 +0100
++++ linux-4.9/net/ipv6/ndisc.c 2021-02-24 15:47:45.141077785 +0100
 @@ -512,7 +512,7 @@ void ndisc_send_na(struct net_device *de
        } else {
                if (ipv6_dev_get_saddr(dev_net(dev), dev, daddr,
 @@ -512,7 +512,7 @@ void ndisc_send_na(struct net_device *de
        } else {
                if (ipv6_dev_get_saddr(dev_net(dev), dev, daddr,
@@ -24393,9 +24457,9 @@ diff -NurpP --minimal linux-4.9.135/net/ipv6/ndisc.c linux-4.9.135-vs2.3.9.8/net
                        return;
                src_addr = &tmpaddr;
        }
                        return;
                src_addr = &tmpaddr;
        }
-diff -NurpP --minimal linux-4.9.135/net/ipv6/netfilter/nf_nat_masquerade_ipv6.c linux-4.9.135-vs2.3.9.8/net/ipv6/netfilter/nf_nat_masquerade_ipv6.c
---- linux-4.9.135/net/ipv6/netfilter/nf_nat_masquerade_ipv6.c  2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/net/ipv6/netfilter/nf_nat_masquerade_ipv6.c        2018-10-20 04:58:15.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/net/ipv6/netfilter/nf_nat_masquerade_ipv6.c linux-4.9/net/ipv6/netfilter/nf_nat_masquerade_ipv6.c
+--- linux-4.9/net/ipv6/netfilter/nf_nat_masquerade_ipv6.c      2016-12-11 20:17:54.000000000 +0100
++++ linux-4.9/net/ipv6/netfilter/nf_nat_masquerade_ipv6.c      2021-02-24 15:47:45.141077785 +0100
 @@ -39,7 +39,7 @@ nf_nat_masquerade_ipv6(struct sk_buff *s
                            ctinfo == IP_CT_RELATED_REPLY));
  
 @@ -39,7 +39,7 @@ nf_nat_masquerade_ipv6(struct sk_buff *s
                            ctinfo == IP_CT_RELATED_REPLY));
  
@@ -24405,10 +24469,10 @@ diff -NurpP --minimal linux-4.9.135/net/ipv6/netfilter/nf_nat_masquerade_ipv6.c
                return NF_DROP;
  
        nfct_nat(ct)->masq_index = out->ifindex;
                return NF_DROP;
  
        nfct_nat(ct)->masq_index = out->ifindex;
-diff -NurpP --minimal linux-4.9.135/net/ipv6/raw.c linux-4.9.135-vs2.3.9.8/net/ipv6/raw.c
---- linux-4.9.135/net/ipv6/raw.c       2018-10-20 10:39:25.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/net/ipv6/raw.c     2018-10-20 05:55:44.000000000 +0000
-@@ -291,6 +291,13 @@ static int rawv6_bind(struct sock *sk, s
+diff -urNp -x '*.orig' linux-4.9/net/ipv6/raw.c linux-4.9/net/ipv6/raw.c
+--- linux-4.9/net/ipv6/raw.c   2021-02-24 15:47:32.617352663 +0100
++++ linux-4.9/net/ipv6/raw.c   2021-02-24 15:47:45.141077785 +0100
+@@ -293,6 +293,13 @@ static int rawv6_bind(struct sock *sk, s
                                goto out_unlock;
                }
  
                                goto out_unlock;
                }
  
@@ -24422,10 +24486,10 @@ diff -NurpP --minimal linux-4.9.135/net/ipv6/raw.c linux-4.9.135-vs2.3.9.8/net/i
                /* ipv4 addr of the socket is invalid.  Only the
                 * unspecified and mapped address have a v4 equivalent.
                 */
                /* ipv4 addr of the socket is invalid.  Only the
                 * unspecified and mapped address have a v4 equivalent.
                 */
-diff -NurpP --minimal linux-4.9.135/net/ipv6/route.c linux-4.9.135-vs2.3.9.8/net/ipv6/route.c
---- linux-4.9.135/net/ipv6/route.c     2018-10-20 10:39:25.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/net/ipv6/route.c   2018-10-20 04:58:15.000000000 +0000
-@@ -3291,7 +3291,8 @@ static int rt6_fill_node(struct net *net
+diff -urNp -x '*.orig' linux-4.9/net/ipv6/route.c linux-4.9/net/ipv6/route.c
+--- linux-4.9/net/ipv6/route.c 2021-02-24 15:47:32.617352663 +0100
++++ linux-4.9/net/ipv6/route.c 2021-02-24 15:47:45.144411223 +0100
+@@ -3297,7 +3297,8 @@ static int rt6_fill_node(struct net *net
                                goto nla_put_failure;
        } else if (dst) {
                struct in6_addr saddr_buf;
                                goto nla_put_failure;
        } else if (dst) {
                struct in6_addr saddr_buf;
@@ -24435,9 +24499,9 @@ diff -NurpP --minimal linux-4.9.135/net/ipv6/route.c linux-4.9.135-vs2.3.9.8/net
                    nla_put_in6_addr(skb, RTA_PREFSRC, &saddr_buf))
                        goto nla_put_failure;
        }
                    nla_put_in6_addr(skb, RTA_PREFSRC, &saddr_buf))
                        goto nla_put_failure;
        }
-diff -NurpP --minimal linux-4.9.135/net/ipv6/tcp_ipv6.c linux-4.9.135-vs2.3.9.8/net/ipv6/tcp_ipv6.c
---- linux-4.9.135/net/ipv6/tcp_ipv6.c  2018-10-20 10:39:25.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/net/ipv6/tcp_ipv6.c        2018-10-20 04:58:15.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/net/ipv6/tcp_ipv6.c linux-4.9/net/ipv6/tcp_ipv6.c
+--- linux-4.9/net/ipv6/tcp_ipv6.c      2021-02-24 15:47:32.620686100 +0100
++++ linux-4.9/net/ipv6/tcp_ipv6.c      2021-02-24 15:47:45.144411223 +0100
 @@ -149,11 +149,18 @@ static int tcp_v6_connect(struct sock *s
         */
  
 @@ -149,11 +149,18 @@ static int tcp_v6_connect(struct sock *s
         */
  
@@ -24462,9 +24526,9 @@ diff -NurpP --minimal linux-4.9.135/net/ipv6/tcp_ipv6.c linux-4.9.135-vs2.3.9.8/
        }
  
        addr_type = ipv6_addr_type(&usin->sin6_addr);
        }
  
        addr_type = ipv6_addr_type(&usin->sin6_addr);
-diff -NurpP --minimal linux-4.9.135/net/ipv6/udp.c linux-4.9.135-vs2.3.9.8/net/ipv6/udp.c
---- linux-4.9.135/net/ipv6/udp.c       2018-10-20 10:39:25.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/net/ipv6/udp.c     2018-10-20 04:58:15.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/net/ipv6/udp.c linux-4.9/net/ipv6/udp.c
+--- linux-4.9/net/ipv6/udp.c   2021-02-24 15:47:32.620686100 +0100
++++ linux-4.9/net/ipv6/udp.c   2021-02-24 15:47:45.144411223 +0100
 @@ -135,6 +135,10 @@ static int compute_score(struct sock *sk
                if (inet->inet_dport != sport)
                        return -1;
 @@ -135,6 +135,10 @@ static int compute_score(struct sock *sk
                if (inet->inet_dport != sport)
                        return -1;
@@ -24476,9 +24540,9 @@ diff -NurpP --minimal linux-4.9.135/net/ipv6/udp.c linux-4.9.135-vs2.3.9.8/net/i
        }
  
        if (!ipv6_addr_any(&sk->sk_v6_rcv_saddr)) {
        }
  
        if (!ipv6_addr_any(&sk->sk_v6_rcv_saddr)) {
-diff -NurpP --minimal linux-4.9.135/net/ipv6/xfrm6_policy.c linux-4.9.135-vs2.3.9.8/net/ipv6/xfrm6_policy.c
---- linux-4.9.135/net/ipv6/xfrm6_policy.c      2018-10-20 10:39:25.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/net/ipv6/xfrm6_policy.c    2018-10-20 04:58:15.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/net/ipv6/xfrm6_policy.c linux-4.9/net/ipv6/xfrm6_policy.c
+--- linux-4.9/net/ipv6/xfrm6_policy.c  2021-02-24 15:47:32.620686100 +0100
++++ linux-4.9/net/ipv6/xfrm6_policy.c  2021-02-24 15:47:45.144411223 +0100
 @@ -64,7 +64,8 @@ static int xfrm6_get_saddr(struct net *n
                return -EHOSTUNREACH;
  
 @@ -64,7 +64,8 @@ static int xfrm6_get_saddr(struct net *n
                return -EHOSTUNREACH;
  
@@ -24489,9 +24553,9 @@ diff -NurpP --minimal linux-4.9.135/net/ipv6/xfrm6_policy.c linux-4.9.135-vs2.3.
        dst_release(dst);
        return 0;
  }
        dst_release(dst);
        return 0;
  }
-diff -NurpP --minimal linux-4.9.135/net/netfilter/ipvs/ip_vs_xmit.c linux-4.9.135-vs2.3.9.8/net/netfilter/ipvs/ip_vs_xmit.c
---- linux-4.9.135/net/netfilter/ipvs/ip_vs_xmit.c      2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/net/netfilter/ipvs/ip_vs_xmit.c    2018-10-20 04:58:15.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/net/netfilter/ipvs/ip_vs_xmit.c linux-4.9/net/netfilter/ipvs/ip_vs_xmit.c
+--- linux-4.9/net/netfilter/ipvs/ip_vs_xmit.c  2016-12-11 20:17:54.000000000 +0100
++++ linux-4.9/net/netfilter/ipvs/ip_vs_xmit.c  2021-02-24 15:47:45.144411223 +0100
 @@ -381,7 +381,7 @@ __ip_vs_route_output_v6(struct net *net,
                return dst;
        if (ipv6_addr_any(&fl6.saddr) &&
 @@ -381,7 +381,7 @@ __ip_vs_route_output_v6(struct net *net,
                return dst;
        if (ipv6_addr_any(&fl6.saddr) &&
@@ -24501,9 +24565,9 @@ diff -NurpP --minimal linux-4.9.135/net/netfilter/ipvs/ip_vs_xmit.c linux-4.9.13
                goto out_err;
        if (do_xfrm) {
                dst = xfrm_lookup(net, dst, flowi6_to_flowi(&fl6), NULL, 0);
                goto out_err;
        if (do_xfrm) {
                dst = xfrm_lookup(net, dst, flowi6_to_flowi(&fl6), NULL, 0);
-diff -NurpP --minimal linux-4.9.135/net/netlink/af_netlink.c linux-4.9.135-vs2.3.9.8/net/netlink/af_netlink.c
---- linux-4.9.135/net/netlink/af_netlink.c     2018-10-20 10:39:25.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/net/netlink/af_netlink.c   2018-10-20 05:56:16.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/net/netlink/af_netlink.c linux-4.9/net/netlink/af_netlink.c
+--- linux-4.9/net/netlink/af_netlink.c 2021-02-24 15:47:32.654020476 +0100
++++ linux-4.9/net/netlink/af_netlink.c 2021-02-24 15:47:45.144411223 +0100
 @@ -63,6 +63,8 @@
  #include <linux/hash.h>
  #include <linux/genetlink.h>
 @@ -63,6 +63,8 @@
  #include <linux/hash.h>
  #include <linux/genetlink.h>
@@ -24513,7 +24577,7 @@ diff -NurpP --minimal linux-4.9.135/net/netlink/af_netlink.c linux-4.9.135-vs2.3
  
  #include <net/net_namespace.h>
  #include <net/sock.h>
  
  #include <net/net_namespace.h>
  #include <net/sock.h>
-@@ -2477,7 +2479,8 @@ static void *__netlink_seq_next(struct s
+@@ -2478,7 +2480,8 @@ static void *__netlink_seq_next(struct s
                        if (err)
                                return ERR_PTR(err);
                }
                        if (err)
                                return ERR_PTR(err);
                }
@@ -24523,9 +24587,9 @@ diff -NurpP --minimal linux-4.9.135/net/netlink/af_netlink.c linux-4.9.135-vs2.3
  
        return nlk;
  }
  
        return nlk;
  }
-diff -NurpP --minimal linux-4.9.135/net/packet/diag.c linux-4.9.135-vs2.3.9.8/net/packet/diag.c
---- linux-4.9.135/net/packet/diag.c    2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/net/packet/diag.c  2018-10-20 06:31:18.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/net/packet/diag.c linux-4.9/net/packet/diag.c
+--- linux-4.9/net/packet/diag.c        2016-12-11 20:17:54.000000000 +0100
++++ linux-4.9/net/packet/diag.c        2021-02-24 15:47:45.144411223 +0100
 @@ -4,6 +4,7 @@
  #include <linux/netdevice.h>
  #include <linux/packet_diag.h>
 @@ -4,6 +4,7 @@
  #include <linux/netdevice.h>
  #include <linux/packet_diag.h>
@@ -24543,9 +24607,9 @@ diff -NurpP --minimal linux-4.9.135/net/packet/diag.c linux-4.9.135-vs2.3.9.8/ne
                if (num < s_num)
                        goto next;
  
                if (num < s_num)
                        goto next;
  
-diff -NurpP --minimal linux-4.9.135/net/socket.c linux-4.9.135-vs2.3.9.8/net/socket.c
---- linux-4.9.135/net/socket.c 2018-10-20 10:39:26.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/net/socket.c       2018-10-20 05:55:45.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/net/socket.c linux-4.9/net/socket.c
+--- linux-4.9/net/socket.c     2021-02-24 15:47:32.680687977 +0100
++++ linux-4.9/net/socket.c     2021-02-24 15:47:45.144411223 +0100
 @@ -100,10 +100,12 @@
  
  #include <net/sock.h>
 @@ -100,10 +100,12 @@
  
  #include <net/sock.h>
@@ -24622,9 +24686,9 @@ diff -NurpP --minimal linux-4.9.135/net/socket.c linux-4.9.135-vs2.3.9.8/net/soc
  
        err = sock1->ops->socketpair(sock1, sock2);
        if (err < 0)
  
        err = sock1->ops->socketpair(sock1, sock2);
        if (err < 0)
-diff -NurpP --minimal linux-4.9.135/net/sunrpc/auth.c linux-4.9.135-vs2.3.9.8/net/sunrpc/auth.c
---- linux-4.9.135/net/sunrpc/auth.c    2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/net/sunrpc/auth.c  2018-10-20 04:58:15.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/net/sunrpc/auth.c linux-4.9/net/sunrpc/auth.c
+--- linux-4.9/net/sunrpc/auth.c        2016-12-11 20:17:54.000000000 +0100
++++ linux-4.9/net/sunrpc/auth.c        2021-02-24 15:47:45.144411223 +0100
 @@ -15,6 +15,7 @@
  #include <linux/sunrpc/clnt.h>
  #include <linux/sunrpc/gss_api.h>
 @@ -15,6 +15,7 @@
  #include <linux/sunrpc/clnt.h>
  #include <linux/sunrpc/gss_api.h>
@@ -24649,9 +24713,9 @@ diff -NurpP --minimal linux-4.9.135/net/sunrpc/auth.c linux-4.9.135-vs2.3.9.8/ne
        };
  
        dprintk("RPC: %5u looking up %s cred\n",
        };
  
        dprintk("RPC: %5u looking up %s cred\n",
-diff -NurpP --minimal linux-4.9.135/net/sunrpc/auth_unix.c linux-4.9.135-vs2.3.9.8/net/sunrpc/auth_unix.c
---- linux-4.9.135/net/sunrpc/auth_unix.c       2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/net/sunrpc/auth_unix.c     2018-10-20 04:58:15.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/net/sunrpc/auth_unix.c linux-4.9/net/sunrpc/auth_unix.c
+--- linux-4.9/net/sunrpc/auth_unix.c   2016-12-11 20:17:54.000000000 +0100
++++ linux-4.9/net/sunrpc/auth_unix.c   2021-02-24 15:47:45.144411223 +0100
 @@ -13,11 +13,13 @@
  #include <linux/sunrpc/clnt.h>
  #include <linux/sunrpc/auth.h>
 @@ -13,11 +13,13 @@
  #include <linux/sunrpc/clnt.h>
  #include <linux/sunrpc/auth.h>
@@ -24708,9 +24772,9 @@ diff -NurpP --minimal linux-4.9.135/net/sunrpc/auth_unix.c linux-4.9.135-vs2.3.9
        hold = p++;
        for (i = 0; i < 16 && gid_valid(cred->uc_gids[i]); i++)
                *p++ = htonl((u32) from_kgid(&init_user_ns, cred->uc_gids[i]));
        hold = p++;
        for (i = 0; i < 16 && gid_valid(cred->uc_gids[i]); i++)
                *p++ = htonl((u32) from_kgid(&init_user_ns, cred->uc_gids[i]));
-diff -NurpP --minimal linux-4.9.135/net/sunrpc/clnt.c linux-4.9.135-vs2.3.9.8/net/sunrpc/clnt.c
---- linux-4.9.135/net/sunrpc/clnt.c    2018-10-20 10:39:26.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/net/sunrpc/clnt.c  2018-10-20 05:55:45.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/net/sunrpc/clnt.c linux-4.9/net/sunrpc/clnt.c
+--- linux-4.9/net/sunrpc/clnt.c        2021-02-24 15:47:32.684021415 +0100
++++ linux-4.9/net/sunrpc/clnt.c        2021-02-24 15:47:45.147744660 +0100
 @@ -31,6 +31,7 @@
  #include <linux/in.h>
  #include <linux/in6.h>
 @@ -31,6 +31,7 @@
  #include <linux/in.h>
  #include <linux/in6.h>
@@ -24729,9 +24793,9 @@ diff -NurpP --minimal linux-4.9.135/net/sunrpc/clnt.c linux-4.9.135-vs2.3.9.8/ne
        return clnt;
  }
  
        return clnt;
  }
  
-diff -NurpP --minimal linux-4.9.135/net/unix/af_unix.c linux-4.9.135-vs2.3.9.8/net/unix/af_unix.c
---- linux-4.9.135/net/unix/af_unix.c   2018-10-20 10:39:26.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/net/unix/af_unix.c 2018-10-20 04:58:15.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/net/unix/af_unix.c linux-4.9/net/unix/af_unix.c
+--- linux-4.9/net/unix/af_unix.c       2021-02-24 15:47:32.694021728 +0100
++++ linux-4.9/net/unix/af_unix.c       2021-02-24 15:47:45.147744660 +0100
 @@ -117,6 +117,8 @@
  #include <net/checksum.h>
  #include <linux/security.h>
 @@ -117,6 +117,8 @@
  #include <net/checksum.h>
  #include <linux/security.h>
@@ -24741,7 +24805,7 @@ diff -NurpP --minimal linux-4.9.135/net/unix/af_unix.c linux-4.9.135-vs2.3.9.8/n
  
  struct hlist_head unix_socket_table[2 * UNIX_HASH_SIZE];
  EXPORT_SYMBOL_GPL(unix_socket_table);
  
  struct hlist_head unix_socket_table[2 * UNIX_HASH_SIZE];
  EXPORT_SYMBOL_GPL(unix_socket_table);
-@@ -282,6 +284,8 @@ static struct sock *__unix_find_socket_b
+@@ -290,6 +292,8 @@ static struct sock *__unix_find_socket_b
                if (!net_eq(sock_net(s), net))
                        continue;
  
                if (!net_eq(sock_net(s), net))
                        continue;
  
@@ -24750,7 +24814,7 @@ diff -NurpP --minimal linux-4.9.135/net/unix/af_unix.c linux-4.9.135-vs2.3.9.8/n
                if (u->addr->len == len &&
                    !memcmp(u->addr->name, sunname, len))
                        goto found;
                if (u->addr->len == len &&
                    !memcmp(u->addr->name, sunname, len))
                        goto found;
-@@ -2732,6 +2736,8 @@ static struct sock *unix_from_bucket(str
+@@ -2751,6 +2755,8 @@ static struct sock *unix_from_bucket(str
        for (sk = sk_head(&unix_socket_table[bucket]); sk; sk = sk_next(sk)) {
                if (sock_net(sk) != seq_file_net(seq))
                        continue;
        for (sk = sk_head(&unix_socket_table[bucket]); sk; sk = sk_next(sk)) {
                if (sock_net(sk) != seq_file_net(seq))
                        continue;
@@ -24759,7 +24823,7 @@ diff -NurpP --minimal linux-4.9.135/net/unix/af_unix.c linux-4.9.135-vs2.3.9.8/n
                if (++count == offset)
                        break;
        }
                if (++count == offset)
                        break;
        }
-@@ -2749,6 +2755,8 @@ static struct sock *unix_next_socket(str
+@@ -2768,6 +2774,8 @@ static struct sock *unix_next_socket(str
                sk = sk_next(sk);
                if (!sk)
                        goto next_bucket;
                sk = sk_next(sk);
                if (!sk)
                        goto next_bucket;
@@ -24768,9 +24832,9 @@ diff -NurpP --minimal linux-4.9.135/net/unix/af_unix.c linux-4.9.135-vs2.3.9.8/n
                if (sock_net(sk) == seq_file_net(seq))
                        return sk;
        }
                if (sock_net(sk) == seq_file_net(seq))
                        return sk;
        }
-diff -NurpP --minimal linux-4.9.135/net/unix/diag.c linux-4.9.135-vs2.3.9.8/net/unix/diag.c
---- linux-4.9.135/net/unix/diag.c      2018-10-20 10:39:26.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/net/unix/diag.c    2018-10-20 06:31:18.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/net/unix/diag.c linux-4.9/net/unix/diag.c
+--- linux-4.9/net/unix/diag.c  2021-02-24 15:47:32.694021728 +0100
++++ linux-4.9/net/unix/diag.c  2021-02-24 15:47:45.147744660 +0100
 @@ -4,6 +4,7 @@
  #include <linux/unix_diag.h>
  #include <linux/skbuff.h>
 @@ -4,6 +4,7 @@
  #include <linux/unix_diag.h>
  #include <linux/skbuff.h>
@@ -24779,7 +24843,7 @@ diff -NurpP --minimal linux-4.9.135/net/unix/diag.c linux-4.9.135-vs2.3.9.8/net/
  #include <net/netlink.h>
  #include <net/af_unix.h>
  #include <net/tcp_states.h>
  #include <net/netlink.h>
  #include <net/af_unix.h>
  #include <net/tcp_states.h>
-@@ -199,6 +200,8 @@ static int unix_diag_dump(struct sk_buff
+@@ -200,6 +201,8 @@ static int unix_diag_dump(struct sk_buff
                sk_for_each(sk, &unix_socket_table[slot]) {
                        if (!net_eq(sock_net(sk), net))
                                continue;
                sk_for_each(sk, &unix_socket_table[slot]) {
                        if (!net_eq(sock_net(sk), net))
                                continue;
@@ -24788,9 +24852,9 @@ diff -NurpP --minimal linux-4.9.135/net/unix/diag.c linux-4.9.135-vs2.3.9.8/net/
                        if (num < s_num)
                                goto next;
                        if (!(req->udiag_states & (1 << sk->sk_state)))
                        if (num < s_num)
                                goto next;
                        if (!(req->udiag_states & (1 << sk->sk_state)))
-diff -NurpP --minimal linux-4.9.135/scripts/checksyscalls.sh linux-4.9.135-vs2.3.9.8/scripts/checksyscalls.sh
---- linux-4.9.135/scripts/checksyscalls.sh     2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/scripts/checksyscalls.sh   2018-10-20 04:58:15.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/scripts/checksyscalls.sh linux-4.9/scripts/checksyscalls.sh
+--- linux-4.9/scripts/checksyscalls.sh 2016-12-11 20:17:54.000000000 +0100
++++ linux-4.9/scripts/checksyscalls.sh 2021-02-24 15:47:45.147744660 +0100
 @@ -196,7 +196,6 @@ cat << EOF
  #define __IGNORE_afs_syscall
  #define __IGNORE_getpmsg
 @@ -196,7 +196,6 @@ cat << EOF
  #define __IGNORE_afs_syscall
  #define __IGNORE_getpmsg
@@ -24799,9 +24863,9 @@ diff -NurpP --minimal linux-4.9.135/scripts/checksyscalls.sh linux-4.9.135-vs2.3
  EOF
  }
  
  EOF
  }
  
-diff -NurpP --minimal linux-4.9.135/security/commoncap.c linux-4.9.135-vs2.3.9.8/security/commoncap.c
---- linux-4.9.135/security/commoncap.c 2016-12-11 19:17:54.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/security/commoncap.c       2018-10-20 04:58:15.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/security/commoncap.c linux-4.9/security/commoncap.c
+--- linux-4.9/security/commoncap.c     2021-02-24 15:47:32.714022353 +0100
++++ linux-4.9/security/commoncap.c     2021-02-24 15:47:45.147744660 +0100
 @@ -71,6 +71,7 @@ static void warn_setuid_and_fcaps_mixed(
  int cap_capable(const struct cred *cred, struct user_namespace *targ_ns,
                int cap, int audit)
 @@ -71,6 +71,7 @@ static void warn_setuid_and_fcaps_mixed(
  int cap_capable(const struct cred *cred, struct user_namespace *targ_ns,
                int cap, int audit)
@@ -24825,7 +24889,7 @@ diff -NurpP --minimal linux-4.9.135/security/commoncap.c linux-4.9.135-vs2.3.9.8
  
                /* Have we tried all of the parent namespaces? */
                if (ns == &init_user_ns)
  
                /* Have we tried all of the parent namespaces? */
                if (ns == &init_user_ns)
-@@ -667,7 +672,7 @@ int cap_inode_setxattr(struct dentry *de
+@@ -668,7 +673,7 @@ int cap_inode_setxattr(struct dentry *de
  
        if (!strncmp(name, XATTR_SECURITY_PREFIX,
                     sizeof(XATTR_SECURITY_PREFIX) - 1) &&
  
        if (!strncmp(name, XATTR_SECURITY_PREFIX,
                     sizeof(XATTR_SECURITY_PREFIX) - 1) &&
@@ -24834,7 +24898,7 @@ diff -NurpP --minimal linux-4.9.135/security/commoncap.c linux-4.9.135-vs2.3.9.8
                return -EPERM;
        return 0;
  }
                return -EPERM;
        return 0;
  }
-@@ -693,7 +698,7 @@ int cap_inode_removexattr(struct dentry
+@@ -694,7 +699,7 @@ int cap_inode_removexattr(struct dentry
  
        if (!strncmp(name, XATTR_SECURITY_PREFIX,
                     sizeof(XATTR_SECURITY_PREFIX) - 1) &&
  
        if (!strncmp(name, XATTR_SECURITY_PREFIX,
                     sizeof(XATTR_SECURITY_PREFIX) - 1) &&
@@ -24843,9 +24907,9 @@ diff -NurpP --minimal linux-4.9.135/security/commoncap.c linux-4.9.135-vs2.3.9.8
                return -EPERM;
        return 0;
  }
                return -EPERM;
        return 0;
  }
-diff -NurpP --minimal linux-4.9.135/security/selinux/hooks.c linux-4.9.135-vs2.3.9.8/security/selinux/hooks.c
---- linux-4.9.135/security/selinux/hooks.c     2018-10-20 10:39:26.000000000 +0000
-+++ linux-4.9.135-vs2.3.9.8/security/selinux/hooks.c   2018-10-20 04:58:15.000000000 +0000
+diff -urNp -x '*.orig' linux-4.9/security/selinux/hooks.c linux-4.9/security/selinux/hooks.c
+--- linux-4.9/security/selinux/hooks.c 2021-02-24 15:47:32.720689229 +0100
++++ linux-4.9/security/selinux/hooks.c 2021-02-24 15:47:45.147744660 +0100
 @@ -67,7 +67,6 @@
  #include <linux/dccp.h>
  #include <linux/quota.h>
 @@ -67,7 +67,6 @@
  #include <linux/dccp.h>
  #include <linux/quota.h>
This page took 0.518654 seconds and 4 git commands to generate.