summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--4.8.17/1016_linux-4.8.17.patch3229
-rw-r--r--4.9.9/0000_README (renamed from 4.8.17/0000_README)10
-rw-r--r--4.9.9/1007_linux-4.9.8.patch2048
-rw-r--r--4.9.9/1008_linux-4.9.9.patch2333
-rw-r--r--4.9.9/4420_grsecurity-3.1-4.9.9-201702122044.patch (renamed from 4.8.17/4420_grsecurity-3.1-4.8.17-201701151620.patch)34503
-rw-r--r--4.9.9/4425_grsec_remove_EI_PAX.patch (renamed from 4.8.17/4425_grsec_remove_EI_PAX.patch)0
-rw-r--r--4.9.9/4426_default_XATTR_PAX_FLAGS.patch (renamed from 4.8.17/4426_default_XATTR_PAX_FLAGS.patch)0
-rw-r--r--4.9.9/4427_force_XATTR_PAX_tmpfs.patch (renamed from 4.8.17/4427_force_XATTR_PAX_tmpfs.patch)8
-rw-r--r--4.9.9/4430_grsec-remove-localversion-grsec.patch (renamed from 4.8.17/4430_grsec-remove-localversion-grsec.patch)0
-rw-r--r--4.9.9/4435_grsec-mute-warnings.patch (renamed from 4.8.17/4435_grsec-mute-warnings.patch)0
-rw-r--r--4.9.9/4440_grsec-remove-protected-paths.patch (renamed from 4.8.17/4440_grsec-remove-protected-paths.patch)0
-rw-r--r--4.9.9/4450_grsec-kconfig-default-gids.patch (renamed from 4.8.17/4450_grsec-kconfig-default-gids.patch)0
-rw-r--r--4.9.9/4465_selinux-avc_audit-log-curr_ip.patch (renamed from 4.8.17/4465_selinux-avc_audit-log-curr_ip.patch)0
-rw-r--r--4.9.9/4470_disable-compat_vdso.patch (renamed from 4.8.17/4470_disable-compat_vdso.patch)2
-rw-r--r--4.9.9/4475_emutramp_default_on.patch (renamed from 4.8.17/4475_emutramp_default_on.patch)0
15 files changed, 23742 insertions, 18391 deletions
diff --git a/4.8.17/1016_linux-4.8.17.patch b/4.8.17/1016_linux-4.8.17.patch
deleted file mode 100644
index 0b240d8..0000000
--- a/4.8.17/1016_linux-4.8.17.patch
+++ /dev/null
@@ -1,3229 +0,0 @@
-diff --git a/Documentation/sphinx/rstFlatTable.py b/Documentation/sphinx/rstFlatTable.py
-index 26db852..9916359 100644
---- a/Documentation/sphinx/rstFlatTable.py
-+++ b/Documentation/sphinx/rstFlatTable.py
-@@ -151,6 +151,11 @@ class ListTableBuilder(object):
- def buildTableNode(self):
-
- colwidths = self.directive.get_column_widths(self.max_cols)
-+ if isinstance(colwidths, tuple):
-+ # Since docutils 0.13, get_column_widths returns a (widths,
-+ # colwidths) tuple, where widths is a string (i.e. 'auto').
-+ # See https://sourceforge.net/p/docutils/patches/120/.
-+ colwidths = colwidths[1]
- stub_columns = self.directive.options.get('stub-columns', 0)
- header_rows = self.directive.options.get('header-rows', 0)
-
-diff --git a/Documentation/virtual/kvm/api.txt b/Documentation/virtual/kvm/api.txt
-index 739db9a..a7596e9 100644
---- a/Documentation/virtual/kvm/api.txt
-+++ b/Documentation/virtual/kvm/api.txt
-@@ -2039,6 +2039,7 @@ registers, find a list below:
- PPC | KVM_REG_PPC_TM_VSCR | 32
- PPC | KVM_REG_PPC_TM_DSCR | 64
- PPC | KVM_REG_PPC_TM_TAR | 64
-+ PPC | KVM_REG_PPC_TM_XER | 64
- | |
- MIPS | KVM_REG_MIPS_R0 | 64
- ...
-diff --git a/Makefile b/Makefile
-index 50f6864..ace32d3 100644
---- a/Makefile
-+++ b/Makefile
-@@ -1,6 +1,6 @@
- VERSION = 4
- PATCHLEVEL = 8
--SUBLEVEL = 16
-+SUBLEVEL = 17
- EXTRAVERSION =
- NAME = Psychotic Stoned Sheep
-
-diff --git a/arch/arc/include/asm/cacheflush.h b/arch/arc/include/asm/cacheflush.h
-index a093adb..fc662f4 100644
---- a/arch/arc/include/asm/cacheflush.h
-+++ b/arch/arc/include/asm/cacheflush.h
-@@ -85,6 +85,10 @@ void flush_anon_page(struct vm_area_struct *vma,
- */
- #define PG_dc_clean PG_arch_1
-
-+#define CACHE_COLORS_NUM 4
-+#define CACHE_COLORS_MSK (CACHE_COLORS_NUM - 1)
-+#define CACHE_COLOR(addr) (((unsigned long)(addr) >> (PAGE_SHIFT)) & CACHE_COLORS_MSK)
-+
- /*
- * Simple wrapper over config option
- * Bootup code ensures that hardware matches kernel configuration
-@@ -94,8 +98,6 @@ static inline int cache_is_vipt_aliasing(void)
- return IS_ENABLED(CONFIG_ARC_CACHE_VIPT_ALIASING);
- }
-
--#define CACHE_COLOR(addr) (((unsigned long)(addr) >> (PAGE_SHIFT)) & 1)
--
- /*
- * checks if two addresses (after page aligning) index into same cache set
- */
-diff --git a/arch/arc/mm/cache.c b/arch/arc/mm/cache.c
-index 0b10efe..ab1aaf2 100644
---- a/arch/arc/mm/cache.c
-+++ b/arch/arc/mm/cache.c
-@@ -967,11 +967,16 @@ void arc_cache_init(void)
- /* check for D-Cache aliasing on ARCompact: ARCv2 has PIPT */
- if (is_isa_arcompact()) {
- int handled = IS_ENABLED(CONFIG_ARC_CACHE_VIPT_ALIASING);
--
-- if (dc->alias && !handled)
-- panic("Enable CONFIG_ARC_CACHE_VIPT_ALIASING\n");
-- else if (!dc->alias && handled)
-+ int num_colors = dc->sz_k/dc->assoc/TO_KB(PAGE_SIZE);
-+
-+ if (dc->alias) {
-+ if (!handled)
-+ panic("Enable CONFIG_ARC_CACHE_VIPT_ALIASING\n");
-+ if (CACHE_COLORS_NUM != num_colors)
-+ panic("CACHE_COLORS_NUM not optimized for config\n");
-+ } else if (!dc->alias && handled) {
- panic("Disable CONFIG_ARC_CACHE_VIPT_ALIASING\n");
-+ }
- }
- }
-
-diff --git a/arch/arm64/boot/dts/nvidia/tegra210-p2180.dtsi b/arch/arm64/boot/dts/nvidia/tegra210-p2180.dtsi
-index 5fda583..906fb83 100644
---- a/arch/arm64/boot/dts/nvidia/tegra210-p2180.dtsi
-+++ b/arch/arm64/boot/dts/nvidia/tegra210-p2180.dtsi
-@@ -21,6 +21,10 @@
- reg = <0x0 0x80000000 0x1 0x0>;
- };
-
-+ gpu@57000000 {
-+ vdd-supply = <&vdd_gpu>;
-+ };
-+
- /* debug port */
- serial@70006000 {
- status = "okay";
-@@ -291,4 +295,18 @@
- clock-frequency = <32768>;
- };
- };
-+
-+ regulators {
-+ vdd_gpu: regulator@100 {
-+ compatible = "pwm-regulator";
-+ reg = <100>;
-+ pwms = <&pwm 1 4880>;
-+ regulator-name = "VDD_GPU";
-+ regulator-min-microvolt = <710000>;
-+ regulator-max-microvolt = <1320000>;
-+ enable-gpios = <&pmic 6 GPIO_ACTIVE_HIGH>;
-+ regulator-ramp-delay = <80>;
-+ regulator-enable-ramp-delay = <1000>;
-+ };
-+ };
- };
-diff --git a/arch/arm64/kvm/hyp/switch.c b/arch/arm64/kvm/hyp/switch.c
-index 5a84b45..03498c8 100644
---- a/arch/arm64/kvm/hyp/switch.c
-+++ b/arch/arm64/kvm/hyp/switch.c
-@@ -82,7 +82,13 @@ static void __hyp_text __activate_traps(struct kvm_vcpu *vcpu)
- write_sysreg(val, hcr_el2);
- /* Trap on AArch32 cp15 c15 accesses (EL1 or EL0) */
- write_sysreg(1 << 15, hstr_el2);
-- /* Make sure we trap PMU access from EL0 to EL2 */
-+ /*
-+ * Make sure we trap PMU access from EL0 to EL2. Also sanitize
-+ * PMSELR_EL0 to make sure it never contains the cycle
-+ * counter, which could make a PMXEVCNTR_EL0 access UNDEF at
-+ * EL1 instead of being trapped to EL2.
-+ */
-+ write_sysreg(0, pmselr_el0);
- write_sysreg(ARMV8_PMU_USERENR_MASK, pmuserenr_el0);
- write_sysreg(vcpu->arch.mdcr_el2, mdcr_el2);
- __activate_traps_arch()();
-diff --git a/arch/powerpc/boot/ps3-head.S b/arch/powerpc/boot/ps3-head.S
-index b6fcbaf..3dc44b0 100644
---- a/arch/powerpc/boot/ps3-head.S
-+++ b/arch/powerpc/boot/ps3-head.S
-@@ -57,11 +57,6 @@ __system_reset_overlay:
- bctr
-
- 1:
-- /* Save the value at addr zero for a null pointer write check later. */
--
-- li r4, 0
-- lwz r3, 0(r4)
--
- /* Primary delays then goes to _zimage_start in wrapper. */
-
- or 31, 31, 31 /* db16cyc */
-diff --git a/arch/powerpc/boot/ps3.c b/arch/powerpc/boot/ps3.c
-index 4ec2d86..a05558a 100644
---- a/arch/powerpc/boot/ps3.c
-+++ b/arch/powerpc/boot/ps3.c
-@@ -119,13 +119,12 @@ void ps3_copy_vectors(void)
- flush_cache((void *)0x100, 512);
- }
-
--void platform_init(unsigned long null_check)
-+void platform_init(void)
- {
- const u32 heapsize = 0x1000000 - (u32)_end; /* 16MiB */
- void *chosen;
- unsigned long ft_addr;
- u64 rm_size;
-- unsigned long val;
-
- console_ops.write = ps3_console_write;
- platform_ops.exit = ps3_exit;
-@@ -153,11 +152,6 @@ void platform_init(unsigned long null_check)
-
- printf(" flat tree at 0x%lx\n\r", ft_addr);
-
-- val = *(unsigned long *)0;
--
-- if (val != null_check)
-- printf("null check failed: %lx != %lx\n\r", val, null_check);
--
- ((kernel_entry_t)0)(ft_addr, 0, NULL);
-
- ps3_exit();
-diff --git a/arch/powerpc/include/asm/kvm_host.h b/arch/powerpc/include/asm/kvm_host.h
-index ec35af3..f2c5dde 100644
---- a/arch/powerpc/include/asm/kvm_host.h
-+++ b/arch/powerpc/include/asm/kvm_host.h
-@@ -555,6 +555,7 @@ struct kvm_vcpu_arch {
- u64 tfiar;
-
- u32 cr_tm;
-+ u64 xer_tm;
- u64 lr_tm;
- u64 ctr_tm;
- u64 amr_tm;
-diff --git a/arch/powerpc/include/uapi/asm/kvm.h b/arch/powerpc/include/uapi/asm/kvm.h
-index c93cf35..0fb1326 100644
---- a/arch/powerpc/include/uapi/asm/kvm.h
-+++ b/arch/powerpc/include/uapi/asm/kvm.h
-@@ -596,6 +596,7 @@ struct kvm_get_htab_header {
- #define KVM_REG_PPC_TM_VSCR (KVM_REG_PPC_TM | KVM_REG_SIZE_U32 | 0x67)
- #define KVM_REG_PPC_TM_DSCR (KVM_REG_PPC_TM | KVM_REG_SIZE_U64 | 0x68)
- #define KVM_REG_PPC_TM_TAR (KVM_REG_PPC_TM | KVM_REG_SIZE_U64 | 0x69)
-+#define KVM_REG_PPC_TM_XER (KVM_REG_PPC_TM | KVM_REG_SIZE_U64 | 0x6a)
-
- /* PPC64 eXternal Interrupt Controller Specification */
- #define KVM_DEV_XICS_GRP_SOURCES 1 /* 64-bit source attributes */
-diff --git a/arch/powerpc/kernel/asm-offsets.c b/arch/powerpc/kernel/asm-offsets.c
-index b89d14c..6ba221c 100644
---- a/arch/powerpc/kernel/asm-offsets.c
-+++ b/arch/powerpc/kernel/asm-offsets.c
-@@ -569,6 +569,7 @@ int main(void)
- DEFINE(VCPU_VRS_TM, offsetof(struct kvm_vcpu, arch.vr_tm.vr));
- DEFINE(VCPU_VRSAVE_TM, offsetof(struct kvm_vcpu, arch.vrsave_tm));
- DEFINE(VCPU_CR_TM, offsetof(struct kvm_vcpu, arch.cr_tm));
-+ DEFINE(VCPU_XER_TM, offsetof(struct kvm_vcpu, arch.xer_tm));
- DEFINE(VCPU_LR_TM, offsetof(struct kvm_vcpu, arch.lr_tm));
- DEFINE(VCPU_CTR_TM, offsetof(struct kvm_vcpu, arch.ctr_tm));
- DEFINE(VCPU_AMR_TM, offsetof(struct kvm_vcpu, arch.amr_tm));
-diff --git a/arch/powerpc/kernel/head_64.S b/arch/powerpc/kernel/head_64.S
-index f765b04..8825789 100644
---- a/arch/powerpc/kernel/head_64.S
-+++ b/arch/powerpc/kernel/head_64.S
-@@ -201,9 +201,9 @@ booting_thread_hwid:
- */
- _GLOBAL(book3e_start_thread)
- LOAD_REG_IMMEDIATE(r5, MSR_KERNEL)
-- cmpi 0, r3, 0
-+ cmpwi r3, 0
- beq 10f
-- cmpi 0, r3, 1
-+ cmpwi r3, 1
- beq 11f
- /* If the thread id is invalid, just exit. */
- b 13f
-@@ -228,9 +228,9 @@ _GLOBAL(book3e_start_thread)
- * r3 = the thread physical id
- */
- _GLOBAL(book3e_stop_thread)
-- cmpi 0, r3, 0
-+ cmpwi r3, 0
- beq 10f
-- cmpi 0, r3, 1
-+ cmpwi r3, 1
- beq 10f
- /* If the thread id is invalid, just exit. */
- b 13f
-diff --git a/arch/powerpc/kvm/book3s_hv.c b/arch/powerpc/kvm/book3s_hv.c
-index 2fd5580..4c8d344 100644
---- a/arch/powerpc/kvm/book3s_hv.c
-+++ b/arch/powerpc/kvm/book3s_hv.c
-@@ -1235,6 +1235,9 @@ static int kvmppc_get_one_reg_hv(struct kvm_vcpu *vcpu, u64 id,
- case KVM_REG_PPC_TM_CR:
- *val = get_reg_val(id, vcpu->arch.cr_tm);
- break;
-+ case KVM_REG_PPC_TM_XER:
-+ *val = get_reg_val(id, vcpu->arch.xer_tm);
-+ break;
- case KVM_REG_PPC_TM_LR:
- *val = get_reg_val(id, vcpu->arch.lr_tm);
- break;
-@@ -1442,6 +1445,9 @@ static int kvmppc_set_one_reg_hv(struct kvm_vcpu *vcpu, u64 id,
- case KVM_REG_PPC_TM_CR:
- vcpu->arch.cr_tm = set_reg_val(id, *val);
- break;
-+ case KVM_REG_PPC_TM_XER:
-+ vcpu->arch.xer_tm = set_reg_val(id, *val);
-+ break;
- case KVM_REG_PPC_TM_LR:
- vcpu->arch.lr_tm = set_reg_val(id, *val);
- break;
-diff --git a/arch/powerpc/kvm/book3s_hv_rm_mmu.c b/arch/powerpc/kvm/book3s_hv_rm_mmu.c
-index 99b4e9d..5420d06 100644
---- a/arch/powerpc/kvm/book3s_hv_rm_mmu.c
-+++ b/arch/powerpc/kvm/book3s_hv_rm_mmu.c
-@@ -653,6 +653,8 @@ long kvmppc_h_protect(struct kvm_vcpu *vcpu, unsigned long flags,
- HPTE_V_ABSENT);
- do_tlbies(kvm, &rb, 1, global_invalidates(kvm, flags),
- true);
-+ /* Don't lose R/C bit updates done by hardware */
-+ r |= be64_to_cpu(hpte[1]) & (HPTE_R_R | HPTE_R_C);
- hpte[1] = cpu_to_be64(r);
- }
- }
-diff --git a/arch/powerpc/kvm/book3s_hv_rmhandlers.S b/arch/powerpc/kvm/book3s_hv_rmhandlers.S
-index 9756555..bf243a4 100644
---- a/arch/powerpc/kvm/book3s_hv_rmhandlers.S
-+++ b/arch/powerpc/kvm/book3s_hv_rmhandlers.S
-@@ -2579,11 +2579,13 @@ kvmppc_save_tm:
- mfctr r7
- mfspr r8, SPRN_AMR
- mfspr r10, SPRN_TAR
-+ mfxer r11
- std r5, VCPU_LR_TM(r9)
- stw r6, VCPU_CR_TM(r9)
- std r7, VCPU_CTR_TM(r9)
- std r8, VCPU_AMR_TM(r9)
- std r10, VCPU_TAR_TM(r9)
-+ std r11, VCPU_XER_TM(r9)
-
- /* Restore r12 as trap number. */
- lwz r12, VCPU_TRAP(r9)
-@@ -2676,11 +2678,13 @@ kvmppc_restore_tm:
- ld r7, VCPU_CTR_TM(r4)
- ld r8, VCPU_AMR_TM(r4)
- ld r9, VCPU_TAR_TM(r4)
-+ ld r10, VCPU_XER_TM(r4)
- mtlr r5
- mtcr r6
- mtctr r7
- mtspr SPRN_AMR, r8
- mtspr SPRN_TAR, r9
-+ mtxer r10
-
- /*
- * Load up PPR and DSCR values but don't put them in the actual SPRs
-diff --git a/arch/s390/kernel/setup.c b/arch/s390/kernel/setup.c
-index 7f7ba5f2..d027f2e 100644
---- a/arch/s390/kernel/setup.c
-+++ b/arch/s390/kernel/setup.c
-@@ -445,7 +445,7 @@ static void __init setup_resources(void)
- * part of the System RAM resource.
- */
- if (crashk_res.end) {
-- memblock_add(crashk_res.start, resource_size(&crashk_res));
-+ memblock_add_node(crashk_res.start, resource_size(&crashk_res), 0);
- memblock_reserve(crashk_res.start, resource_size(&crashk_res));
- insert_resource(&iomem_resource, &crashk_res);
- }
-diff --git a/arch/x86/entry/entry_32.S b/arch/x86/entry/entry_32.S
-index 0b56666..b84a349 100644
---- a/arch/x86/entry/entry_32.S
-+++ b/arch/x86/entry/entry_32.S
-@@ -852,8 +852,8 @@ ftrace_graph_call:
- jmp ftrace_stub
- #endif
-
--.globl ftrace_stub
--ftrace_stub:
-+/* This is weak to keep gas from relaxing the jumps */
-+WEAK(ftrace_stub)
- ret
- END(ftrace_caller)
-
-diff --git a/arch/x86/events/core.c b/arch/x86/events/core.c
-index 8c925ec..7b0f1d9 100644
---- a/arch/x86/events/core.c
-+++ b/arch/x86/events/core.c
-@@ -364,7 +364,11 @@ int x86_add_exclusive(unsigned int what)
- {
- int i;
-
-- if (x86_pmu.lbr_pt_coexist)
-+ /*
-+ * When lbr_pt_coexist we allow PT to coexist with either LBR or BTS.
-+ * LBR and BTS are still mutually exclusive.
-+ */
-+ if (x86_pmu.lbr_pt_coexist && what == x86_lbr_exclusive_pt)
- return 0;
-
- if (!atomic_inc_not_zero(&x86_pmu.lbr_exclusive[what])) {
-@@ -387,7 +391,7 @@ int x86_add_exclusive(unsigned int what)
-
- void x86_del_exclusive(unsigned int what)
- {
-- if (x86_pmu.lbr_pt_coexist)
-+ if (x86_pmu.lbr_pt_coexist && what == x86_lbr_exclusive_pt)
- return;
-
- atomic_dec(&x86_pmu.lbr_exclusive[what]);
-diff --git a/arch/x86/events/intel/cstate.c b/arch/x86/events/intel/cstate.c
-index 3ca87b5..834262a 100644
---- a/arch/x86/events/intel/cstate.c
-+++ b/arch/x86/events/intel/cstate.c
-@@ -571,6 +571,9 @@ static int __init cstate_probe(const struct cstate_model *cm)
-
- static inline void cstate_cleanup(void)
- {
-+ cpuhp_remove_state_nocalls(CPUHP_AP_PERF_X86_CSTATE_ONLINE);
-+ cpuhp_remove_state_nocalls(CPUHP_AP_PERF_X86_CSTATE_STARTING);
-+
- if (has_cstate_core)
- perf_pmu_unregister(&cstate_core_pmu);
-
-@@ -583,16 +586,16 @@ static int __init cstate_init(void)
- int err;
-
- cpuhp_setup_state(CPUHP_AP_PERF_X86_CSTATE_STARTING,
-- "AP_PERF_X86_CSTATE_STARTING", cstate_cpu_init,
-- NULL);
-+ "perf/x86/cstate:starting", cstate_cpu_init, NULL);
- cpuhp_setup_state(CPUHP_AP_PERF_X86_CSTATE_ONLINE,
-- "AP_PERF_X86_CSTATE_ONLINE", NULL, cstate_cpu_exit);
-+ "perf/x86/cstate:online", NULL, cstate_cpu_exit);
-
- if (has_cstate_core) {
- err = perf_pmu_register(&cstate_core_pmu, cstate_core_pmu.name, -1);
- if (err) {
- has_cstate_core = false;
- pr_info("Failed to register cstate core pmu\n");
-+ cstate_cleanup();
- return err;
- }
- }
-@@ -606,8 +609,7 @@ static int __init cstate_init(void)
- return err;
- }
- }
--
-- return err;
-+ return 0;
- }
-
- static int __init cstate_pmu_init(void)
-@@ -632,8 +634,6 @@ module_init(cstate_pmu_init);
-
- static void __exit cstate_pmu_exit(void)
- {
-- cpuhp_remove_state_nocalls(CPUHP_AP_PERF_X86_CSTATE_ONLINE);
-- cpuhp_remove_state_nocalls(CPUHP_AP_PERF_X86_CSTATE_STARTING);
- cstate_cleanup();
- }
- module_exit(cstate_pmu_exit);
-diff --git a/arch/x86/events/perf_event.h b/arch/x86/events/perf_event.h
-index 181c238..4ab002d 100644
---- a/arch/x86/events/perf_event.h
-+++ b/arch/x86/events/perf_event.h
-@@ -601,7 +601,7 @@ struct x86_pmu {
- u64 lbr_sel_mask; /* LBR_SELECT valid bits */
- const int *lbr_sel_map; /* lbr_select mappings */
- bool lbr_double_abort; /* duplicated lbr aborts */
-- bool lbr_pt_coexist; /* LBR may coexist with PT */
-+ bool lbr_pt_coexist; /* (LBR|BTS) may coexist with PT */
-
- /*
- * Intel PT/LBR/BTS are exclusive
-diff --git a/arch/x86/kvm/vmx.c b/arch/x86/kvm/vmx.c
-index 5cede40..7a72db5 100644
---- a/arch/x86/kvm/vmx.c
-+++ b/arch/x86/kvm/vmx.c
-@@ -1336,10 +1336,10 @@ static inline bool nested_cpu_has_posted_intr(struct vmcs12 *vmcs12)
- return vmcs12->pin_based_vm_exec_control & PIN_BASED_POSTED_INTR;
- }
-
--static inline bool is_exception(u32 intr_info)
-+static inline bool is_nmi(u32 intr_info)
- {
- return (intr_info & (INTR_INFO_INTR_TYPE_MASK | INTR_INFO_VALID_MASK))
-- == (INTR_TYPE_HARD_EXCEPTION | INTR_INFO_VALID_MASK);
-+ == (INTR_TYPE_NMI_INTR | INTR_INFO_VALID_MASK);
- }
-
- static void nested_vmx_vmexit(struct kvm_vcpu *vcpu, u32 exit_reason,
-@@ -5467,7 +5467,7 @@ static int handle_exception(struct kvm_vcpu *vcpu)
- if (is_machine_check(intr_info))
- return handle_machine_check(vcpu);
-
-- if ((intr_info & INTR_INFO_INTR_TYPE_MASK) == INTR_TYPE_NMI_INTR)
-+ if (is_nmi(intr_info))
- return 1; /* already handled by vmx_vcpu_run() */
-
- if (is_no_device(intr_info)) {
-@@ -7974,7 +7974,7 @@ static bool nested_vmx_exit_handled(struct kvm_vcpu *vcpu)
-
- switch (exit_reason) {
- case EXIT_REASON_EXCEPTION_NMI:
-- if (!is_exception(intr_info))
-+ if (is_nmi(intr_info))
- return false;
- else if (is_page_fault(intr_info))
- return enable_ept;
-@@ -8572,8 +8572,7 @@ static void vmx_complete_atomic_exit(struct vcpu_vmx *vmx)
- kvm_machine_check();
-
- /* We need to handle NMIs before interrupts are enabled */
-- if ((exit_intr_info & INTR_INFO_INTR_TYPE_MASK) == INTR_TYPE_NMI_INTR &&
-- (exit_intr_info & INTR_INFO_VALID_MASK)) {
-+ if (is_nmi(exit_intr_info)) {
- kvm_before_handle_nmi(&vmx->vcpu);
- asm("int $2");
- kvm_after_handle_nmi(&vmx->vcpu);
-diff --git a/block/bsg.c b/block/bsg.c
-index d214e92..b9a5361 100644
---- a/block/bsg.c
-+++ b/block/bsg.c
-@@ -655,6 +655,9 @@ bsg_write(struct file *file, const char __user *buf, size_t count, loff_t *ppos)
-
- dprintk("%s: write %Zd bytes\n", bd->name, count);
-
-+ if (unlikely(segment_eq(get_fs(), KERNEL_DS)))
-+ return -EINVAL;
-+
- bsg_set_block(bd, file);
-
- bytes_written = 0;
-diff --git a/drivers/acpi/video_detect.c b/drivers/acpi/video_detect.c
-index a6b36fc..02ded25 100644
---- a/drivers/acpi/video_detect.c
-+++ b/drivers/acpi/video_detect.c
-@@ -296,6 +296,26 @@ static const struct dmi_system_id video_detect_dmi_table[] = {
- DMI_MATCH(DMI_PRODUCT_NAME, "Vostro V131"),
- },
- },
-+ {
-+ /* https://bugzilla.redhat.com/show_bug.cgi?id=1123661 */
-+ .callback = video_detect_force_native,
-+ .ident = "Dell XPS 17 L702X",
-+ .matches = {
-+ DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
-+ DMI_MATCH(DMI_PRODUCT_NAME, "Dell System XPS L702X"),
-+ },
-+ },
-+ {
-+ /* https://bugzilla.redhat.com/show_bug.cgi?id=1204476 */
-+ /* https://bugs.launchpad.net/ubuntu/+source/linux-lts-trusty/+bug/1416940 */
-+ .callback = video_detect_force_native,
-+ .ident = "HP Pavilion dv6",
-+ .matches = {
-+ DMI_MATCH(DMI_SYS_VENDOR, "Hewlett-Packard"),
-+ DMI_MATCH(DMI_PRODUCT_NAME, "HP Pavilion dv6 Notebook PC"),
-+ },
-+ },
-+
- { },
- };
-
-diff --git a/drivers/base/firmware_class.c b/drivers/base/firmware_class.c
-index 22d1760..a95e1e5 100644
---- a/drivers/base/firmware_class.c
-+++ b/drivers/base/firmware_class.c
-@@ -955,13 +955,14 @@ static int _request_firmware_load(struct firmware_priv *fw_priv,
- timeout = MAX_JIFFY_OFFSET;
- }
-
-- retval = wait_for_completion_interruptible_timeout(&buf->completion,
-+ timeout = wait_for_completion_interruptible_timeout(&buf->completion,
- timeout);
-- if (retval == -ERESTARTSYS || !retval) {
-+ if (timeout == -ERESTARTSYS || !timeout) {
-+ retval = timeout;
- mutex_lock(&fw_lock);
- fw_load_abort(fw_priv);
- mutex_unlock(&fw_lock);
-- } else if (retval > 0) {
-+ } else if (timeout > 0) {
- retval = 0;
- }
-
-diff --git a/drivers/clk/bcm/clk-bcm2835.c b/drivers/clk/bcm/clk-bcm2835.c
-index 0fc71cb..3250694 100644
---- a/drivers/clk/bcm/clk-bcm2835.c
-+++ b/drivers/clk/bcm/clk-bcm2835.c
-@@ -751,7 +751,9 @@ static void bcm2835_pll_divider_off(struct clk_hw *hw)
- cprman_write(cprman, data->cm_reg,
- (cprman_read(cprman, data->cm_reg) &
- ~data->load_mask) | data->hold_mask);
-- cprman_write(cprman, data->a2w_reg, A2W_PLL_CHANNEL_DISABLE);
-+ cprman_write(cprman, data->a2w_reg,
-+ cprman_read(cprman, data->a2w_reg) |
-+ A2W_PLL_CHANNEL_DISABLE);
- spin_unlock(&cprman->regs_lock);
- }
-
-diff --git a/drivers/gpio/gpiolib.c b/drivers/gpio/gpiolib.c
-index 15704aa..a8eea8a 100644
---- a/drivers/gpio/gpiolib.c
-+++ b/drivers/gpio/gpiolib.c
-@@ -984,7 +984,8 @@ static int gpio_chrdev_open(struct inode *inode, struct file *filp)
- return -ENODEV;
- get_device(&gdev->dev);
- filp->private_data = gdev;
-- return 0;
-+
-+ return nonseekable_open(inode, filp);
- }
-
- /**
-@@ -1009,7 +1010,7 @@ static const struct file_operations gpio_fileops = {
- .release = gpio_chrdev_release,
- .open = gpio_chrdev_open,
- .owner = THIS_MODULE,
-- .llseek = noop_llseek,
-+ .llseek = no_llseek,
- .unlocked_ioctl = gpio_ioctl,
- #ifdef CONFIG_COMPAT
- .compat_ioctl = gpio_ioctl_compat,
-diff --git a/drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c b/drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c
-index b818461..8199232 100644
---- a/drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c
-+++ b/drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c
-@@ -3798,8 +3798,12 @@ static int gfx_v8_0_init_save_restore_list(struct amdgpu_device *adev)
- temp = mmRLC_SRM_INDEX_CNTL_ADDR_0;
- data = mmRLC_SRM_INDEX_CNTL_DATA_0;
- for (i = 0; i < sizeof(unique_indices) / sizeof(int); i++) {
-- amdgpu_mm_wreg(adev, temp + i, unique_indices[i] & 0x3FFFF, false);
-- amdgpu_mm_wreg(adev, data + i, unique_indices[i] >> 20, false);
-+ if (unique_indices[i] != 0) {
-+ amdgpu_mm_wreg(adev, temp + i,
-+ unique_indices[i] & 0x3FFFF, false);
-+ amdgpu_mm_wreg(adev, data + i,
-+ unique_indices[i] >> 20, false);
-+ }
- }
- kfree(register_list_format);
-
-@@ -5735,29 +5739,24 @@ static void gfx_v8_0_update_coarse_grain_clock_gating(struct amdgpu_device *adev
- adev->gfx.rlc.funcs->enter_safe_mode(adev);
-
- if (enable && (adev->cg_flags & AMD_CG_SUPPORT_GFX_CGCG)) {
-- /* 1 enable cntx_empty_int_enable/cntx_busy_int_enable/
-- * Cmp_busy/GFX_Idle interrupts
-- */
-- gfx_v8_0_enable_gui_idle_interrupt(adev, true);
--
- temp1 = data1 = RREG32(mmRLC_CGTT_MGCG_OVERRIDE);
- data1 &= ~RLC_CGTT_MGCG_OVERRIDE__CGCG_MASK;
- if (temp1 != data1)
- WREG32(mmRLC_CGTT_MGCG_OVERRIDE, data1);
-
-- /* 2 wait for RLC_SERDES_CU_MASTER & RLC_SERDES_NONCU_MASTER idle */
-+ /* : wait for RLC_SERDES_CU_MASTER & RLC_SERDES_NONCU_MASTER idle */
- gfx_v8_0_wait_for_rlc_serdes(adev);
-
-- /* 3 - clear cgcg override */
-+ /* 2 - clear cgcg override */
- gfx_v8_0_send_serdes_cmd(adev, BPM_REG_CGCG_OVERRIDE, CLE_BPM_SERDES_CMD);
-
- /* wait for RLC_SERDES_CU_MASTER & RLC_SERDES_NONCU_MASTER idle */
- gfx_v8_0_wait_for_rlc_serdes(adev);
-
-- /* 4 - write cmd to set CGLS */
-+ /* 3 - write cmd to set CGLS */
- gfx_v8_0_send_serdes_cmd(adev, BPM_REG_CGLS_EN, SET_BPM_SERDES_CMD);
-
-- /* 5 - enable cgcg */
-+ /* 4 - enable cgcg */
- data |= RLC_CGCG_CGLS_CTRL__CGCG_EN_MASK;
-
- if (adev->cg_flags & AMD_CG_SUPPORT_GFX_CGLS) {
-@@ -5775,6 +5774,11 @@ static void gfx_v8_0_update_coarse_grain_clock_gating(struct amdgpu_device *adev
-
- if (temp != data)
- WREG32(mmRLC_CGCG_CGLS_CTRL, data);
-+
-+ /* 5 enable cntx_empty_int_enable/cntx_busy_int_enable/
-+ * Cmp_busy/GFX_Idle interrupts
-+ */
-+ gfx_v8_0_enable_gui_idle_interrupt(adev, true);
- } else {
- /* disable cntx_empty_int_enable & GFX Idle interrupt */
- gfx_v8_0_enable_gui_idle_interrupt(adev, false);
-diff --git a/drivers/gpu/drm/ast/ast_main.c b/drivers/gpu/drm/ast/ast_main.c
-index 904beaa..f75c642 100644
---- a/drivers/gpu/drm/ast/ast_main.c
-+++ b/drivers/gpu/drm/ast/ast_main.c
-@@ -223,7 +223,8 @@ static int ast_get_dram_info(struct drm_device *dev)
- ast_write32(ast, 0x10000, 0xfc600309);
-
- do {
-- ;
-+ if (pci_channel_offline(dev->pdev))
-+ return -EIO;
- } while (ast_read32(ast, 0x10000) != 0x01);
- data = ast_read32(ast, 0x10004);
-
-@@ -428,7 +429,9 @@ int ast_driver_load(struct drm_device *dev, unsigned long flags)
- ast_detect_chip(dev, &need_post);
-
- if (ast->chip != AST1180) {
-- ast_get_dram_info(dev);
-+ ret = ast_get_dram_info(dev);
-+ if (ret)
-+ goto out_free;
- ast->vram_size = ast_get_vram_info(dev);
- DRM_INFO("dram %d %d %d %08x\n", ast->mclk, ast->dram_type, ast->dram_bus_width, ast->vram_size);
- }
-diff --git a/drivers/gpu/drm/gma500/psb_drv.c b/drivers/gpu/drm/gma500/psb_drv.c
-index 50eb944f..8f3ca52 100644
---- a/drivers/gpu/drm/gma500/psb_drv.c
-+++ b/drivers/gpu/drm/gma500/psb_drv.c
-@@ -473,6 +473,9 @@ static const struct file_operations psb_gem_fops = {
- .open = drm_open,
- .release = drm_release,
- .unlocked_ioctl = psb_unlocked_ioctl,
-+#ifdef CONFIG_COMPAT
-+ .compat_ioctl = drm_compat_ioctl,
-+#endif
- .mmap = drm_gem_mmap,
- .poll = drm_poll,
- .read = drm_read,
-diff --git a/drivers/gpu/drm/i915/i915_gem_stolen.c b/drivers/gpu/drm/i915/i915_gem_stolen.c
-index 2bb69f3..b386b31 100644
---- a/drivers/gpu/drm/i915/i915_gem_stolen.c
-+++ b/drivers/gpu/drm/i915/i915_gem_stolen.c
-@@ -55,10 +55,9 @@ int i915_gem_stolen_insert_node_in_range(struct drm_i915_private *dev_priv,
- return -ENODEV;
-
- /* See the comment at the drm_mm_init() call for more about this check.
-- * WaSkipStolenMemoryFirstPage:bdw,chv,kbl (incomplete)
-+ * WaSkipStolenMemoryFirstPage:bdw+ (incomplete)
- */
-- if (start < 4096 && (IS_GEN8(dev_priv) ||
-- IS_KBL_REVID(dev_priv, 0, KBL_REVID_A0)))
-+ if (start < 4096 && INTEL_GEN(dev_priv) >= 8)
- start = 4096;
-
- mutex_lock(&dev_priv->mm.stolen_lock);
-diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
-index 35d385d..6bc93ba 100644
---- a/drivers/gpu/drm/i915/intel_display.c
-+++ b/drivers/gpu/drm/i915/intel_display.c
-@@ -13494,8 +13494,9 @@ static int intel_modeset_checks(struct drm_atomic_state *state)
-
- DRM_DEBUG_KMS("New cdclk calculated to be atomic %u, actual %u\n",
- intel_state->cdclk, intel_state->dev_cdclk);
-- } else
-+ } else {
- to_intel_atomic_state(state)->cdclk = dev_priv->atomic_cdclk_freq;
-+ }
-
- intel_modeset_clear_plls(state);
-
-@@ -13596,8 +13597,9 @@ static int intel_atomic_check(struct drm_device *dev,
-
- if (ret)
- return ret;
-- } else
-- intel_state->cdclk = dev_priv->cdclk_freq;
-+ } else {
-+ intel_state->cdclk = dev_priv->atomic_cdclk_freq;
-+ }
-
- ret = drm_atomic_helper_check_planes(dev, state);
- if (ret)
-@@ -15902,6 +15904,7 @@ void intel_modeset_init(struct drm_device *dev)
-
- intel_update_czclk(dev_priv);
- intel_update_cdclk(dev);
-+ dev_priv->atomic_cdclk_freq = dev_priv->cdclk_freq;
-
- intel_shared_dpll_init(dev);
-
-diff --git a/drivers/gpu/drm/i915/intel_dsi_panel_vbt.c b/drivers/gpu/drm/i915/intel_dsi_panel_vbt.c
-index cd154ce..3460157 100644
---- a/drivers/gpu/drm/i915/intel_dsi_panel_vbt.c
-+++ b/drivers/gpu/drm/i915/intel_dsi_panel_vbt.c
-@@ -296,7 +296,8 @@ static void chv_exec_gpio(struct drm_i915_private *dev_priv,
- mutex_lock(&dev_priv->sb_lock);
- vlv_iosf_sb_write(dev_priv, port, cfg1, 0);
- vlv_iosf_sb_write(dev_priv, port, cfg0,
-- CHV_GPIO_GPIOCFG_GPO | CHV_GPIO_GPIOTXSTATE(value));
-+ CHV_GPIO_GPIOEN | CHV_GPIO_GPIOCFG_GPO |
-+ CHV_GPIO_GPIOTXSTATE(value));
- mutex_unlock(&dev_priv->sb_lock);
- }
-
-diff --git a/drivers/gpu/drm/i915/intel_runtime_pm.c b/drivers/gpu/drm/i915/intel_runtime_pm.c
-index 1c603bb..07a7cc0 100644
---- a/drivers/gpu/drm/i915/intel_runtime_pm.c
-+++ b/drivers/gpu/drm/i915/intel_runtime_pm.c
-@@ -1062,7 +1062,18 @@ static bool vlv_power_well_enabled(struct drm_i915_private *dev_priv,
-
- static void vlv_init_display_clock_gating(struct drm_i915_private *dev_priv)
- {
-- I915_WRITE(DSPCLK_GATE_D, VRHUNIT_CLOCK_GATE_DISABLE);
-+ u32 val;
-+
-+ /*
-+ * On driver load, a pipe may be active and driving a DSI display.
-+ * Preserve DPOUNIT_CLOCK_GATE_DISABLE to avoid the pipe getting stuck
-+ * (and never recovering) in this case. intel_dsi_post_disable() will
-+ * clear it when we turn off the display.
-+ */
-+ val = I915_READ(DSPCLK_GATE_D);
-+ val &= DPOUNIT_CLOCK_GATE_DISABLE;
-+ val |= VRHUNIT_CLOCK_GATE_DISABLE;
-+ I915_WRITE(DSPCLK_GATE_D, val);
-
- /*
- * Disable trickle feed and enable pnd deadline calculation
-diff --git a/drivers/gpu/drm/nouveau/nouveau_bios.c b/drivers/gpu/drm/nouveau/nouveau_bios.c
-index a1570b1..23ffe85 100644
---- a/drivers/gpu/drm/nouveau/nouveau_bios.c
-+++ b/drivers/gpu/drm/nouveau/nouveau_bios.c
-@@ -333,6 +333,9 @@ get_fp_strap(struct drm_device *dev, struct nvbios *bios)
- if (bios->major_version < 5 && bios->data[0x48] & 0x4)
- return NVReadVgaCrtc5758(dev, 0, 0xf) & 0xf;
-
-+ if (drm->device.info.family >= NV_DEVICE_INFO_V0_MAXWELL)
-+ return nvif_rd32(device, 0x001800) & 0x0000000f;
-+ else
- if (drm->device.info.family >= NV_DEVICE_INFO_V0_TESLA)
- return (nvif_rd32(device, NV_PEXTDEV_BOOT_0) >> 24) & 0xf;
- else
-diff --git a/drivers/gpu/drm/nouveau/nouveau_bo.c b/drivers/gpu/drm/nouveau/nouveau_bo.c
-index 864323b..fad263b 100644
---- a/drivers/gpu/drm/nouveau/nouveau_bo.c
-+++ b/drivers/gpu/drm/nouveau/nouveau_bo.c
-@@ -1209,6 +1209,7 @@ nouveau_bo_move_ntfy(struct ttm_buffer_object *bo, struct ttm_mem_reg *new_mem)
- nvbo->page_shift != vma->vm->mmu->lpg_shift)) {
- nvkm_vm_map(vma, new_mem->mm_node);
- } else {
-+ WARN_ON(ttm_bo_wait(bo, false, false));
- nvkm_vm_unmap(vma);
- }
- }
-diff --git a/drivers/gpu/drm/nouveau/nvkm/engine/device/base.c b/drivers/gpu/drm/nouveau/nvkm/engine/device/base.c
-index 7218a06..e0d7f84 100644
---- a/drivers/gpu/drm/nouveau/nvkm/engine/device/base.c
-+++ b/drivers/gpu/drm/nouveau/nvkm/engine/device/base.c
-@@ -1851,7 +1851,7 @@ nvf1_chipset = {
- .fb = gk104_fb_new,
- .fuse = gf100_fuse_new,
- .gpio = gk104_gpio_new,
-- .i2c = gf119_i2c_new,
-+ .i2c = gk104_i2c_new,
- .ibus = gk104_ibus_new,
- .iccsense = gf100_iccsense_new,
- .imem = nv50_instmem_new,
-@@ -1965,7 +1965,7 @@ nv117_chipset = {
- .fb = gm107_fb_new,
- .fuse = gm107_fuse_new,
- .gpio = gk104_gpio_new,
-- .i2c = gf119_i2c_new,
-+ .i2c = gk104_i2c_new,
- .ibus = gk104_ibus_new,
- .iccsense = gf100_iccsense_new,
- .imem = nv50_instmem_new,
-@@ -1999,7 +1999,7 @@ nv118_chipset = {
- .fb = gm107_fb_new,
- .fuse = gm107_fuse_new,
- .gpio = gk104_gpio_new,
-- .i2c = gf119_i2c_new,
-+ .i2c = gk104_i2c_new,
- .ibus = gk104_ibus_new,
- .iccsense = gf100_iccsense_new,
- .imem = nv50_instmem_new,
-diff --git a/drivers/gpu/drm/nouveau/nvkm/engine/fifo/gpfifogf100.c b/drivers/gpu/drm/nouveau/nvkm/engine/fifo/gpfifogf100.c
-index cbc67f2..12d96426 100644
---- a/drivers/gpu/drm/nouveau/nvkm/engine/fifo/gpfifogf100.c
-+++ b/drivers/gpu/drm/nouveau/nvkm/engine/fifo/gpfifogf100.c
-@@ -60,6 +60,7 @@ gf100_fifo_gpfifo_engine_fini(struct nvkm_fifo_chan *base,
- struct nvkm_gpuobj *inst = chan->base.inst;
- int ret = 0;
-
-+ mutex_lock(&subdev->mutex);
- nvkm_wr32(device, 0x002634, chan->base.chid);
- if (nvkm_msec(device, 2000,
- if (nvkm_rd32(device, 0x002634) == chan->base.chid)
-@@ -67,10 +68,12 @@ gf100_fifo_gpfifo_engine_fini(struct nvkm_fifo_chan *base,
- ) < 0) {
- nvkm_error(subdev, "channel %d [%s] kick timeout\n",
- chan->base.chid, chan->base.object.client->name);
-- ret = -EBUSY;
-- if (suspend)
-- return ret;
-+ ret = -ETIMEDOUT;
- }
-+ mutex_unlock(&subdev->mutex);
-+
-+ if (ret && suspend)
-+ return ret;
-
- if (offset) {
- nvkm_kmap(inst);
-diff --git a/drivers/gpu/drm/nouveau/nvkm/engine/fifo/gpfifogk104.c b/drivers/gpu/drm/nouveau/nvkm/engine/fifo/gpfifogk104.c
-index ed43510..a2df4f3 100644
---- a/drivers/gpu/drm/nouveau/nvkm/engine/fifo/gpfifogk104.c
-+++ b/drivers/gpu/drm/nouveau/nvkm/engine/fifo/gpfifogk104.c
-@@ -40,7 +40,9 @@ gk104_fifo_gpfifo_kick(struct gk104_fifo_chan *chan)
- struct nvkm_subdev *subdev = &fifo->base.engine.subdev;
- struct nvkm_device *device = subdev->device;
- struct nvkm_client *client = chan->base.object.client;
-+ int ret = 0;
-
-+ mutex_lock(&subdev->mutex);
- nvkm_wr32(device, 0x002634, chan->base.chid);
- if (nvkm_msec(device, 2000,
- if (!(nvkm_rd32(device, 0x002634) & 0x00100000))
-@@ -48,10 +50,10 @@ gk104_fifo_gpfifo_kick(struct gk104_fifo_chan *chan)
- ) < 0) {
- nvkm_error(subdev, "channel %d [%s] kick timeout\n",
- chan->base.chid, client->name);
-- return -EBUSY;
-+ ret = -ETIMEDOUT;
- }
--
-- return 0;
-+ mutex_unlock(&subdev->mutex);
-+ return ret;
- }
-
- static u32
-diff --git a/drivers/gpu/drm/nouveau/nvkm/engine/gr/gf100.c b/drivers/gpu/drm/nouveau/nvkm/engine/gr/gf100.c
-index 157919c..6584d50 100644
---- a/drivers/gpu/drm/nouveau/nvkm/engine/gr/gf100.c
-+++ b/drivers/gpu/drm/nouveau/nvkm/engine/gr/gf100.c
-@@ -1756,6 +1756,50 @@ gf100_gr_ = {
- };
-
- int
-+gf100_gr_ctor_fw_legacy(struct gf100_gr *gr, const char *fwname,
-+ struct gf100_gr_fuc *fuc, int ret)
-+{
-+ struct nvkm_subdev *subdev = &gr->base.engine.subdev;
-+ struct nvkm_device *device = subdev->device;
-+ const struct firmware *fw;
-+ char f[32];
-+
-+ /* see if this firmware has a legacy path */
-+ if (!strcmp(fwname, "fecs_inst"))
-+ fwname = "fuc409c";
-+ else if (!strcmp(fwname, "fecs_data"))
-+ fwname = "fuc409d";
-+ else if (!strcmp(fwname, "gpccs_inst"))
-+ fwname = "fuc41ac";
-+ else if (!strcmp(fwname, "gpccs_data"))
-+ fwname = "fuc41ad";
-+ else {
-+ /* nope, let's just return the error we got */
-+ nvkm_error(subdev, "failed to load %s\n", fwname);
-+ return ret;
-+ }
-+
-+ /* yes, try to load from the legacy path */
-+ nvkm_debug(subdev, "%s: falling back to legacy path\n", fwname);
-+
-+ snprintf(f, sizeof(f), "nouveau/nv%02x_%s", device->chipset, fwname);
-+ ret = request_firmware(&fw, f, device->dev);
-+ if (ret) {
-+ snprintf(f, sizeof(f), "nouveau/%s", fwname);
-+ ret = request_firmware(&fw, f, device->dev);
-+ if (ret) {
-+ nvkm_error(subdev, "failed to load %s\n", fwname);
-+ return ret;
-+ }
-+ }
-+
-+ fuc->size = fw->size;
-+ fuc->data = kmemdup(fw->data, fuc->size, GFP_KERNEL);
-+ release_firmware(fw);
-+ return (fuc->data != NULL) ? 0 : -ENOMEM;
-+}
-+
-+int
- gf100_gr_ctor_fw(struct gf100_gr *gr, const char *fwname,
- struct gf100_gr_fuc *fuc)
- {
-@@ -1765,10 +1809,8 @@ gf100_gr_ctor_fw(struct gf100_gr *gr, const char *fwname,
- int ret;
-
- ret = nvkm_firmware_get(device, fwname, &fw);
-- if (ret) {
-- nvkm_error(subdev, "failed to load %s\n", fwname);
-- return ret;
-- }
-+ if (ret)
-+ return gf100_gr_ctor_fw_legacy(gr, fwname, fuc, ret);
-
- fuc->size = fw->size;
- fuc->data = kmemdup(fw->data, fuc->size, GFP_KERNEL);
-diff --git a/drivers/gpu/drm/nouveau/nvkm/subdev/bios/priv.h b/drivers/gpu/drm/nouveau/nvkm/subdev/bios/priv.h
-index 212800e..7d1d3c6 100644
---- a/drivers/gpu/drm/nouveau/nvkm/subdev/bios/priv.h
-+++ b/drivers/gpu/drm/nouveau/nvkm/subdev/bios/priv.h
-@@ -12,6 +12,7 @@ struct nvbios_source {
- bool rw;
- bool ignore_checksum;
- bool no_pcir;
-+ bool require_checksum;
- };
-
- int nvbios_extend(struct nvkm_bios *, u32 length);
-diff --git a/drivers/gpu/drm/nouveau/nvkm/subdev/bios/shadow.c b/drivers/gpu/drm/nouveau/nvkm/subdev/bios/shadow.c
-index b2557e8..7deb81b 100644
---- a/drivers/gpu/drm/nouveau/nvkm/subdev/bios/shadow.c
-+++ b/drivers/gpu/drm/nouveau/nvkm/subdev/bios/shadow.c
-@@ -86,9 +86,12 @@ shadow_image(struct nvkm_bios *bios, int idx, u32 offset, struct shadow *mthd)
- nvbios_checksum(&bios->data[image.base], image.size)) {
- nvkm_debug(subdev, "%08x: checksum failed\n",
- image.base);
-- if (mthd->func->rw)
-+ if (!mthd->func->require_checksum) {
-+ if (mthd->func->rw)
-+ score += 1;
- score += 1;
-- score += 1;
-+ } else
-+ return 0;
- } else {
- score += 3;
- }
-diff --git a/drivers/gpu/drm/nouveau/nvkm/subdev/bios/shadowacpi.c b/drivers/gpu/drm/nouveau/nvkm/subdev/bios/shadowacpi.c
-index 8fecb5f..06572f8 100644
---- a/drivers/gpu/drm/nouveau/nvkm/subdev/bios/shadowacpi.c
-+++ b/drivers/gpu/drm/nouveau/nvkm/subdev/bios/shadowacpi.c
-@@ -99,6 +99,7 @@ nvbios_acpi_fast = {
- .init = acpi_init,
- .read = acpi_read_fast,
- .rw = false,
-+ .require_checksum = true,
- };
-
- const struct nvbios_source
-diff --git a/drivers/gpu/drm/nouveau/nvkm/subdev/ltc/base.c b/drivers/gpu/drm/nouveau/nvkm/subdev/ltc/base.c
-index 39c2a38..0c7ef25 100644
---- a/drivers/gpu/drm/nouveau/nvkm/subdev/ltc/base.c
-+++ b/drivers/gpu/drm/nouveau/nvkm/subdev/ltc/base.c
-@@ -47,8 +47,10 @@ nvkm_ltc_tags_clear(struct nvkm_ltc *ltc, u32 first, u32 count)
-
- BUG_ON((first > limit) || (limit >= ltc->num_tags));
-
-+ mutex_lock(&ltc->subdev.mutex);
- ltc->func->cbc_clear(ltc, first, limit);
- ltc->func->cbc_wait(ltc);
-+ mutex_unlock(&ltc->subdev.mutex);
- }
-
- int
-diff --git a/drivers/gpu/drm/radeon/radeon_cursor.c b/drivers/gpu/drm/radeon/radeon_cursor.c
-index 2a10e24..87a7247 100644
---- a/drivers/gpu/drm/radeon/radeon_cursor.c
-+++ b/drivers/gpu/drm/radeon/radeon_cursor.c
-@@ -90,6 +90,9 @@ static void radeon_show_cursor(struct drm_crtc *crtc)
- struct radeon_crtc *radeon_crtc = to_radeon_crtc(crtc);
- struct radeon_device *rdev = crtc->dev->dev_private;
-
-+ if (radeon_crtc->cursor_out_of_bounds)
-+ return;
-+
- if (ASIC_IS_DCE4(rdev)) {
- WREG32(EVERGREEN_CUR_SURFACE_ADDRESS_HIGH + radeon_crtc->crtc_offset,
- upper_32_bits(radeon_crtc->cursor_addr));
-@@ -148,16 +151,17 @@ static int radeon_cursor_move_locked(struct drm_crtc *crtc, int x, int y)
- x += crtc->x;
- y += crtc->y;
- }
-- DRM_DEBUG("x %d y %d c->x %d c->y %d\n", x, y, crtc->x, crtc->y);
-
-- if (x < 0) {
-+ if (x < 0)
- xorigin = min(-x, radeon_crtc->max_cursor_width - 1);
-- x = 0;
-- }
-- if (y < 0) {
-+ if (y < 0)
- yorigin = min(-y, radeon_crtc->max_cursor_height - 1);
-- y = 0;
-+
-+ if (!ASIC_IS_AVIVO(rdev)) {
-+ x += crtc->x;
-+ y += crtc->y;
- }
-+ DRM_DEBUG("x %d y %d c->x %d c->y %d\n", x, y, crtc->x, crtc->y);
-
- /* fixed on DCE6 and newer */
- if (ASIC_IS_AVIVO(rdev) && !ASIC_IS_DCE6(rdev)) {
-@@ -180,27 +184,31 @@ static int radeon_cursor_move_locked(struct drm_crtc *crtc, int x, int y)
- if (i > 1) {
- int cursor_end, frame_end;
-
-- cursor_end = x - xorigin + w;
-+ cursor_end = x + w;
- frame_end = crtc->x + crtc->mode.crtc_hdisplay;
- if (cursor_end >= frame_end) {
- w = w - (cursor_end - frame_end);
- if (!(frame_end & 0x7f))
- w--;
-- } else {
-- if (!(cursor_end & 0x7f))
-- w--;
-+ } else if (cursor_end <= 0) {
-+ goto out_of_bounds;
-+ } else if (!(cursor_end & 0x7f)) {
-+ w--;
- }
- if (w <= 0) {
-- w = 1;
-- cursor_end = x - xorigin + w;
-- if (!(cursor_end & 0x7f)) {
-- x--;
-- WARN_ON_ONCE(x < 0);
-- }
-+ goto out_of_bounds;
- }
- }
- }
-
-+ if (x <= (crtc->x - w) || y <= (crtc->y - radeon_crtc->cursor_height) ||
-+ x >= (crtc->x + crtc->mode.crtc_hdisplay) ||
-+ y >= (crtc->y + crtc->mode.crtc_vdisplay))
-+ goto out_of_bounds;
-+
-+ x += xorigin;
-+ y += yorigin;
-+
- if (ASIC_IS_DCE4(rdev)) {
- WREG32(EVERGREEN_CUR_POSITION + radeon_crtc->crtc_offset, (x << 16) | y);
- WREG32(EVERGREEN_CUR_HOT_SPOT + radeon_crtc->crtc_offset, (xorigin << 16) | yorigin);
-@@ -212,6 +220,9 @@ static int radeon_cursor_move_locked(struct drm_crtc *crtc, int x, int y)
- WREG32(AVIVO_D1CUR_SIZE + radeon_crtc->crtc_offset,
- ((w - 1) << 16) | (radeon_crtc->cursor_height - 1));
- } else {
-+ x -= crtc->x;
-+ y -= crtc->y;
-+
- if (crtc->mode.flags & DRM_MODE_FLAG_DBLSCAN)
- y *= 2;
-
-@@ -232,6 +243,19 @@ static int radeon_cursor_move_locked(struct drm_crtc *crtc, int x, int y)
- radeon_crtc->cursor_x = x;
- radeon_crtc->cursor_y = y;
-
-+ if (radeon_crtc->cursor_out_of_bounds) {
-+ radeon_crtc->cursor_out_of_bounds = false;
-+ if (radeon_crtc->cursor_bo)
-+ radeon_show_cursor(crtc);
-+ }
-+
-+ return 0;
-+
-+ out_of_bounds:
-+ if (!radeon_crtc->cursor_out_of_bounds) {
-+ radeon_hide_cursor(crtc);
-+ radeon_crtc->cursor_out_of_bounds = true;
-+ }
- return 0;
- }
-
-@@ -297,22 +321,23 @@ int radeon_crtc_cursor_set2(struct drm_crtc *crtc,
- return ret;
- }
-
-- radeon_crtc->cursor_width = width;
-- radeon_crtc->cursor_height = height;
--
- radeon_lock_cursor(crtc, true);
-
-- if (hot_x != radeon_crtc->cursor_hot_x ||
-+ if (width != radeon_crtc->cursor_width ||
-+ height != radeon_crtc->cursor_height ||
-+ hot_x != radeon_crtc->cursor_hot_x ||
- hot_y != radeon_crtc->cursor_hot_y) {
- int x, y;
-
- x = radeon_crtc->cursor_x + radeon_crtc->cursor_hot_x - hot_x;
- y = radeon_crtc->cursor_y + radeon_crtc->cursor_hot_y - hot_y;
-
-- radeon_cursor_move_locked(crtc, x, y);
--
-+ radeon_crtc->cursor_width = width;
-+ radeon_crtc->cursor_height = height;
- radeon_crtc->cursor_hot_x = hot_x;
- radeon_crtc->cursor_hot_y = hot_y;
-+
-+ radeon_cursor_move_locked(crtc, x, y);
- }
-
- radeon_show_cursor(crtc);
-diff --git a/drivers/gpu/drm/radeon/radeon_mode.h b/drivers/gpu/drm/radeon/radeon_mode.h
-index bb75201a..f1da484 100644
---- a/drivers/gpu/drm/radeon/radeon_mode.h
-+++ b/drivers/gpu/drm/radeon/radeon_mode.h
-@@ -330,6 +330,7 @@ struct radeon_crtc {
- u16 lut_r[256], lut_g[256], lut_b[256];
- bool enabled;
- bool can_tile;
-+ bool cursor_out_of_bounds;
- uint32_t crtc_offset;
- struct drm_gem_object *cursor_bo;
- uint64_t cursor_addr;
-diff --git a/drivers/gpu/drm/radeon/si.c b/drivers/gpu/drm/radeon/si.c
-index 2523ca9..2297ec7 100644
---- a/drivers/gpu/drm/radeon/si.c
-+++ b/drivers/gpu/drm/radeon/si.c
-@@ -1722,6 +1722,7 @@ static int si_init_microcode(struct radeon_device *rdev)
- (rdev->pdev->revision == 0x80) ||
- (rdev->pdev->revision == 0x81) ||
- (rdev->pdev->revision == 0x83) ||
-+ (rdev->pdev->revision == 0x87) ||
- (rdev->pdev->device == 0x6604) ||
- (rdev->pdev->device == 0x6605))
- new_smc = true;
-diff --git a/drivers/gpu/drm/radeon/si_dpm.c b/drivers/gpu/drm/radeon/si_dpm.c
-index c4993452..8b5e697 100644
---- a/drivers/gpu/drm/radeon/si_dpm.c
-+++ b/drivers/gpu/drm/radeon/si_dpm.c
-@@ -3026,6 +3026,7 @@ static void si_apply_state_adjust_rules(struct radeon_device *rdev,
- (rdev->pdev->revision == 0x80) ||
- (rdev->pdev->revision == 0x81) ||
- (rdev->pdev->revision == 0x83) ||
-+ (rdev->pdev->revision == 0x87) ||
- (rdev->pdev->device == 0x6604) ||
- (rdev->pdev->device == 0x6605)) {
- max_sclk = 75000;
-diff --git a/drivers/hv/channel_mgmt.c b/drivers/hv/channel_mgmt.c
-index b6c1211..0450852 100644
---- a/drivers/hv/channel_mgmt.c
-+++ b/drivers/hv/channel_mgmt.c
-@@ -348,6 +348,7 @@ void vmbus_free_channels(void)
- {
- struct vmbus_channel *channel, *tmp;
-
-+ mutex_lock(&vmbus_connection.channel_mutex);
- list_for_each_entry_safe(channel, tmp, &vmbus_connection.chn_list,
- listentry) {
- /* hv_process_channel_removal() needs this */
-@@ -355,6 +356,7 @@ void vmbus_free_channels(void)
-
- vmbus_device_unregister(channel->device_obj);
- }
-+ mutex_unlock(&vmbus_connection.channel_mutex);
- }
-
- /*
-diff --git a/drivers/hwtracing/stm/core.c b/drivers/hwtracing/stm/core.c
-index 51f81d6..a6ea387 100644
---- a/drivers/hwtracing/stm/core.c
-+++ b/drivers/hwtracing/stm/core.c
-@@ -361,7 +361,7 @@ static int stm_char_open(struct inode *inode, struct file *file)
- struct stm_file *stmf;
- struct device *dev;
- unsigned int major = imajor(inode);
-- int err = -ENODEV;
-+ int err = -ENOMEM;
-
- dev = class_find_device(&stm_class, NULL, &major, major_match);
- if (!dev)
-@@ -369,8 +369,9 @@ static int stm_char_open(struct inode *inode, struct file *file)
-
- stmf = kzalloc(sizeof(*stmf), GFP_KERNEL);
- if (!stmf)
-- return -ENOMEM;
-+ goto err_put_device;
-
-+ err = -ENODEV;
- stm_output_init(&stmf->output);
- stmf->stm = to_stm_device(dev);
-
-@@ -382,9 +383,10 @@ static int stm_char_open(struct inode *inode, struct file *file)
- return nonseekable_open(inode, file);
-
- err_free:
-+ kfree(stmf);
-+err_put_device:
- /* matches class_find_device() above */
- put_device(dev);
-- kfree(stmf);
-
- return err;
- }
-diff --git a/drivers/infiniband/core/mad.c b/drivers/infiniband/core/mad.c
-index 2d49228..85b2bfe 100644
---- a/drivers/infiniband/core/mad.c
-+++ b/drivers/infiniband/core/mad.c
-@@ -1746,7 +1746,7 @@ find_mad_agent(struct ib_mad_port_private *port_priv,
- if (!class)
- goto out;
- if (convert_mgmt_class(mad_hdr->mgmt_class) >=
-- IB_MGMT_MAX_METHODS)
-+ ARRAY_SIZE(class->method_table))
- goto out;
- method = class->method_table[convert_mgmt_class(
- mad_hdr->mgmt_class)];
-diff --git a/drivers/infiniband/core/multicast.c b/drivers/infiniband/core/multicast.c
-index 51c79b2..45523cf 100644
---- a/drivers/infiniband/core/multicast.c
-+++ b/drivers/infiniband/core/multicast.c
-@@ -518,8 +518,11 @@ static void join_handler(int status, struct ib_sa_mcmember_rec *rec,
- process_join_error(group, status);
- else {
- int mgids_changed, is_mgid0;
-- ib_find_pkey(group->port->dev->device, group->port->port_num,
-- be16_to_cpu(rec->pkey), &pkey_index);
-+
-+ if (ib_find_pkey(group->port->dev->device,
-+ group->port->port_num, be16_to_cpu(rec->pkey),
-+ &pkey_index))
-+ pkey_index = MCAST_INVALID_PKEY_INDEX;
-
- spin_lock_irq(&group->port->lock);
- if (group->state == MCAST_BUSY &&
-diff --git a/drivers/infiniband/hw/i40iw/i40iw_verbs.c b/drivers/infiniband/hw/i40iw/i40iw_verbs.c
-index 6329c97..4b892ca 100644
---- a/drivers/infiniband/hw/i40iw/i40iw_verbs.c
-+++ b/drivers/infiniband/hw/i40iw/i40iw_verbs.c
-@@ -2501,7 +2501,7 @@ static int i40iw_get_hw_stats(struct ib_device *ibdev,
- return -ENOSYS;
- }
-
-- memcpy(&stats->value[0], &hw_stats, sizeof(*hw_stats));
-+ memcpy(&stats->value[0], hw_stats, sizeof(*hw_stats));
-
- return stats->num_counters;
- }
-diff --git a/drivers/infiniband/sw/rxe/rxe_qp.c b/drivers/infiniband/sw/rxe/rxe_qp.c
-index f724a7e..979e445 100644
---- a/drivers/infiniband/sw/rxe/rxe_qp.c
-+++ b/drivers/infiniband/sw/rxe/rxe_qp.c
-@@ -850,4 +850,5 @@ void rxe_qp_cleanup(void *arg)
- free_rd_atomic_resources(qp);
-
- kernel_sock_shutdown(qp->sk, SHUT_RDWR);
-+ sock_release(qp->sk);
- }
-diff --git a/drivers/infiniband/ulp/ipoib/ipoib_multicast.c b/drivers/infiniband/ulp/ipoib/ipoib_multicast.c
-index 1909dd2..fddff40 100644
---- a/drivers/infiniband/ulp/ipoib/ipoib_multicast.c
-+++ b/drivers/infiniband/ulp/ipoib/ipoib_multicast.c
-@@ -575,8 +575,11 @@ void ipoib_mcast_join_task(struct work_struct *work)
- if (!test_bit(IPOIB_FLAG_OPER_UP, &priv->flags))
- return;
-
-- if (ib_query_port(priv->ca, priv->port, &port_attr) ||
-- port_attr.state != IB_PORT_ACTIVE) {
-+ if (ib_query_port(priv->ca, priv->port, &port_attr)) {
-+ ipoib_dbg(priv, "ib_query_port() failed\n");
-+ return;
-+ }
-+ if (port_attr.state != IB_PORT_ACTIVE) {
- ipoib_dbg(priv, "port state is not ACTIVE (state = %d) suspending join task\n",
- port_attr.state);
- return;
-diff --git a/drivers/input/misc/drv260x.c b/drivers/input/misc/drv260x.c
-index 2adfd86c..930424e 100644
---- a/drivers/input/misc/drv260x.c
-+++ b/drivers/input/misc/drv260x.c
-@@ -592,7 +592,6 @@ static int drv260x_probe(struct i2c_client *client,
- }
-
- haptics->input_dev->name = "drv260x:haptics";
-- haptics->input_dev->dev.parent = client->dev.parent;
- haptics->input_dev->close = drv260x_close;
- input_set_drvdata(haptics->input_dev, haptics);
- input_set_capability(haptics->input_dev, EV_FF, FF_RUMBLE);
-diff --git a/drivers/md/raid5.c b/drivers/md/raid5.c
-index ee7fc37..a87549b 100644
---- a/drivers/md/raid5.c
-+++ b/drivers/md/raid5.c
-@@ -7017,6 +7017,15 @@ static int raid5_run(struct mddev *mddev)
- stripe = (stripe | (stripe-1)) + 1;
- mddev->queue->limits.discard_alignment = stripe;
- mddev->queue->limits.discard_granularity = stripe;
-+
-+ /*
-+ * We use 16-bit counter of active stripes in bi_phys_segments
-+ * (minus one for over-loaded initialization)
-+ */
-+ blk_queue_max_hw_sectors(mddev->queue, 0xfffe * STRIPE_SECTORS);
-+ blk_queue_max_discard_sectors(mddev->queue,
-+ 0xfffe * STRIPE_SECTORS);
-+
- /*
- * unaligned part of discard request will be ignored, so can't
- * guarantee discard_zeroes_data
-diff --git a/drivers/media/dvb-frontends/mn88472.c b/drivers/media/dvb-frontends/mn88472.c
-index 18fb2df..7265011 100644
---- a/drivers/media/dvb-frontends/mn88472.c
-+++ b/drivers/media/dvb-frontends/mn88472.c
-@@ -488,18 +488,6 @@ static int mn88472_probe(struct i2c_client *client,
- goto err_kfree;
- }
-
-- /* Check demod answers with correct chip id */
-- ret = regmap_read(dev->regmap[0], 0xff, &utmp);
-- if (ret)
-- goto err_regmap_0_regmap_exit;
--
-- dev_dbg(&client->dev, "chip id=%02x\n", utmp);
--
-- if (utmp != 0x02) {
-- ret = -ENODEV;
-- goto err_regmap_0_regmap_exit;
-- }
--
- /*
- * Chip has three I2C addresses for different register banks. Used
- * addresses are 0x18, 0x1a and 0x1c. We register two dummy clients,
-@@ -536,6 +524,18 @@ static int mn88472_probe(struct i2c_client *client,
- }
- i2c_set_clientdata(dev->client[2], dev);
-
-+ /* Check demod answers with correct chip id */
-+ ret = regmap_read(dev->regmap[2], 0xff, &utmp);
-+ if (ret)
-+ goto err_regmap_2_regmap_exit;
-+
-+ dev_dbg(&client->dev, "chip id=%02x\n", utmp);
-+
-+ if (utmp != 0x02) {
-+ ret = -ENODEV;
-+ goto err_regmap_2_regmap_exit;
-+ }
-+
- /* Sleep because chip is active by default */
- ret = regmap_write(dev->regmap[2], 0x05, 0x3e);
- if (ret)
-diff --git a/drivers/media/dvb-frontends/mn88473.c b/drivers/media/dvb-frontends/mn88473.c
-index 451974a..2932bdc 100644
---- a/drivers/media/dvb-frontends/mn88473.c
-+++ b/drivers/media/dvb-frontends/mn88473.c
-@@ -485,18 +485,6 @@ static int mn88473_probe(struct i2c_client *client,
- goto err_kfree;
- }
-
-- /* Check demod answers with correct chip id */
-- ret = regmap_read(dev->regmap[0], 0xff, &uitmp);
-- if (ret)
-- goto err_regmap_0_regmap_exit;
--
-- dev_dbg(&client->dev, "chip id=%02x\n", uitmp);
--
-- if (uitmp != 0x03) {
-- ret = -ENODEV;
-- goto err_regmap_0_regmap_exit;
-- }
--
- /*
- * Chip has three I2C addresses for different register banks. Used
- * addresses are 0x18, 0x1a and 0x1c. We register two dummy clients,
-@@ -533,6 +521,18 @@ static int mn88473_probe(struct i2c_client *client,
- }
- i2c_set_clientdata(dev->client[2], dev);
-
-+ /* Check demod answers with correct chip id */
-+ ret = regmap_read(dev->regmap[2], 0xff, &uitmp);
-+ if (ret)
-+ goto err_regmap_2_regmap_exit;
-+
-+ dev_dbg(&client->dev, "chip id=%02x\n", uitmp);
-+
-+ if (uitmp != 0x03) {
-+ ret = -ENODEV;
-+ goto err_regmap_2_regmap_exit;
-+ }
-+
- /* Sleep because chip is active by default */
- ret = regmap_write(dev->regmap[2], 0x05, 0x3e);
- if (ret)
-diff --git a/drivers/media/i2c/tvp5150.c b/drivers/media/i2c/tvp5150.c
-index 0b6d46c..02a8f51 100644
---- a/drivers/media/i2c/tvp5150.c
-+++ b/drivers/media/i2c/tvp5150.c
-@@ -815,6 +815,7 @@ static int tvp5150_s_ctrl(struct v4l2_ctrl *ctrl)
- return 0;
- case V4L2_CID_HUE:
- tvp5150_write(sd, TVP5150_HUE_CTL, ctrl->val);
-+ break;
- case V4L2_CID_TEST_PATTERN:
- decoder->enable = ctrl->val ? false : true;
- tvp5150_selmux(sd);
-diff --git a/drivers/media/pci/solo6x10/solo6x10.h b/drivers/media/pci/solo6x10/solo6x10.h
-index 5bd4987..3f8da5e 100644
---- a/drivers/media/pci/solo6x10/solo6x10.h
-+++ b/drivers/media/pci/solo6x10/solo6x10.h
-@@ -284,7 +284,10 @@ static inline u32 solo_reg_read(struct solo_dev *solo_dev, int reg)
- static inline void solo_reg_write(struct solo_dev *solo_dev, int reg,
- u32 data)
- {
-+ u16 val;
-+
- writel(data, solo_dev->reg_base + reg);
-+ pci_read_config_word(solo_dev->pdev, PCI_STATUS, &val);
- }
-
- static inline void solo_irq_on(struct solo_dev *dev, u32 mask)
-diff --git a/drivers/media/platform/s5p-mfc/s5p_mfc.c b/drivers/media/platform/s5p-mfc/s5p_mfc.c
-index e3f104f..9e88c2f 100644
---- a/drivers/media/platform/s5p-mfc/s5p_mfc.c
-+++ b/drivers/media/platform/s5p-mfc/s5p_mfc.c
-@@ -1073,6 +1073,7 @@ static struct device *s5p_mfc_alloc_memdev(struct device *dev,
- idx);
- if (ret == 0)
- return child;
-+ device_del(child);
- }
-
- put_device(child);
-diff --git a/drivers/misc/mei/client.c b/drivers/misc/mei/client.c
-index 641c1a5..75be3d5 100644
---- a/drivers/misc/mei/client.c
-+++ b/drivers/misc/mei/client.c
-@@ -675,7 +675,7 @@ void mei_host_client_init(struct mei_device *dev)
-
- pm_runtime_mark_last_busy(dev->dev);
- dev_dbg(dev->dev, "rpm: autosuspend\n");
-- pm_runtime_autosuspend(dev->dev);
-+ pm_request_autosuspend(dev->dev);
- }
-
- /**
-diff --git a/drivers/misc/mei/hw-me-regs.h b/drivers/misc/mei/hw-me-regs.h
-index 7ad15d6..c8307e8 100644
---- a/drivers/misc/mei/hw-me-regs.h
-+++ b/drivers/misc/mei/hw-me-regs.h
-@@ -122,6 +122,8 @@
- #define MEI_DEV_ID_SPT_H 0xA13A /* Sunrise Point H */
- #define MEI_DEV_ID_SPT_H_2 0xA13B /* Sunrise Point H 2 */
-
-+#define MEI_DEV_ID_LBG 0xA1BA /* Lewisburg (SPT) */
-+
- #define MEI_DEV_ID_BXT_M 0x1A9A /* Broxton M */
- #define MEI_DEV_ID_APL_I 0x5A9A /* Apollo Lake I */
-
-diff --git a/drivers/misc/mei/pci-me.c b/drivers/misc/mei/pci-me.c
-index 5eb9b75..69fca9b 100644
---- a/drivers/misc/mei/pci-me.c
-+++ b/drivers/misc/mei/pci-me.c
-@@ -87,6 +87,7 @@ static const struct pci_device_id mei_me_pci_tbl[] = {
- {MEI_PCI_DEVICE(MEI_DEV_ID_SPT_2, mei_me_pch8_cfg)},
- {MEI_PCI_DEVICE(MEI_DEV_ID_SPT_H, mei_me_pch8_sps_cfg)},
- {MEI_PCI_DEVICE(MEI_DEV_ID_SPT_H_2, mei_me_pch8_sps_cfg)},
-+ {MEI_PCI_DEVICE(MEI_DEV_ID_LBG, mei_me_pch8_cfg)},
-
- {MEI_PCI_DEVICE(MEI_DEV_ID_BXT_M, mei_me_pch8_cfg)},
- {MEI_PCI_DEVICE(MEI_DEV_ID_APL_I, mei_me_pch8_cfg)},
-diff --git a/drivers/mmc/host/sdhci.c b/drivers/mmc/host/sdhci.c
-index 6eb8f07..1f6205c 100644
---- a/drivers/mmc/host/sdhci.c
-+++ b/drivers/mmc/host/sdhci.c
-@@ -2074,7 +2074,27 @@ static int sdhci_execute_tuning(struct mmc_host *mmc, u32 opcode)
- ctrl &= ~SDHCI_CTRL_EXEC_TUNING;
- sdhci_writew(host, ctrl, SDHCI_HOST_CONTROL2);
-
-+ sdhci_do_reset(host, SDHCI_RESET_CMD);
-+ sdhci_do_reset(host, SDHCI_RESET_DATA);
-+
- err = -EIO;
-+
-+ if (cmd.opcode != MMC_SEND_TUNING_BLOCK_HS200)
-+ goto out;
-+
-+ sdhci_writel(host, host->ier, SDHCI_INT_ENABLE);
-+ sdhci_writel(host, host->ier, SDHCI_SIGNAL_ENABLE);
-+
-+ spin_unlock_irqrestore(&host->lock, flags);
-+
-+ memset(&cmd, 0, sizeof(cmd));
-+ cmd.opcode = MMC_STOP_TRANSMISSION;
-+ cmd.flags = MMC_RSP_SPI_R1B | MMC_RSP_R1B | MMC_CMD_AC;
-+ cmd.busy_timeout = 50;
-+ mmc_wait_for_cmd(mmc, &cmd, 0);
-+
-+ spin_lock_irqsave(&host->lock, flags);
-+
- goto out;
- }
-
-diff --git a/drivers/net/ethernet/marvell/mvpp2.c b/drivers/net/ethernet/marvell/mvpp2.c
-index 60227a3..5588c56 100644
---- a/drivers/net/ethernet/marvell/mvpp2.c
-+++ b/drivers/net/ethernet/marvell/mvpp2.c
-@@ -770,6 +770,17 @@ struct mvpp2_rx_desc {
- u32 reserved8;
- };
-
-+struct mvpp2_txq_pcpu_buf {
-+ /* Transmitted SKB */
-+ struct sk_buff *skb;
-+
-+ /* Physical address of transmitted buffer */
-+ dma_addr_t phys;
-+
-+ /* Size transmitted */
-+ size_t size;
-+};
-+
- /* Per-CPU Tx queue control */
- struct mvpp2_txq_pcpu {
- int cpu;
-@@ -785,11 +796,8 @@ struct mvpp2_txq_pcpu {
- /* Number of Tx DMA descriptors reserved for each CPU */
- int reserved_num;
-
-- /* Array of transmitted skb */
-- struct sk_buff **tx_skb;
--
-- /* Array of transmitted buffers' physical addresses */
-- dma_addr_t *tx_buffs;
-+ /* Infos about transmitted buffers */
-+ struct mvpp2_txq_pcpu_buf *buffs;
-
- /* Index of last TX DMA descriptor that was inserted */
- int txq_put_index;
-@@ -979,10 +987,11 @@ static void mvpp2_txq_inc_put(struct mvpp2_txq_pcpu *txq_pcpu,
- struct sk_buff *skb,
- struct mvpp2_tx_desc *tx_desc)
- {
-- txq_pcpu->tx_skb[txq_pcpu->txq_put_index] = skb;
-- if (skb)
-- txq_pcpu->tx_buffs[txq_pcpu->txq_put_index] =
-- tx_desc->buf_phys_addr;
-+ struct mvpp2_txq_pcpu_buf *tx_buf =
-+ txq_pcpu->buffs + txq_pcpu->txq_put_index;
-+ tx_buf->skb = skb;
-+ tx_buf->size = tx_desc->data_size;
-+ tx_buf->phys = tx_desc->buf_phys_addr;
- txq_pcpu->txq_put_index++;
- if (txq_pcpu->txq_put_index == txq_pcpu->size)
- txq_pcpu->txq_put_index = 0;
-@@ -4401,17 +4410,16 @@ static void mvpp2_txq_bufs_free(struct mvpp2_port *port,
- int i;
-
- for (i = 0; i < num; i++) {
-- dma_addr_t buf_phys_addr =
-- txq_pcpu->tx_buffs[txq_pcpu->txq_get_index];
-- struct sk_buff *skb = txq_pcpu->tx_skb[txq_pcpu->txq_get_index];
-+ struct mvpp2_txq_pcpu_buf *tx_buf =
-+ txq_pcpu->buffs + txq_pcpu->txq_get_index;
-
- mvpp2_txq_inc_get(txq_pcpu);
-
-- dma_unmap_single(port->dev->dev.parent, buf_phys_addr,
-- skb_headlen(skb), DMA_TO_DEVICE);
-- if (!skb)
-+ dma_unmap_single(port->dev->dev.parent, tx_buf->phys,
-+ tx_buf->size, DMA_TO_DEVICE);
-+ if (!tx_buf->skb)
- continue;
-- dev_kfree_skb_any(skb);
-+ dev_kfree_skb_any(tx_buf->skb);
- }
- }
-
-@@ -4651,15 +4659,10 @@ static int mvpp2_txq_init(struct mvpp2_port *port,
- for_each_present_cpu(cpu) {
- txq_pcpu = per_cpu_ptr(txq->pcpu, cpu);
- txq_pcpu->size = txq->size;
-- txq_pcpu->tx_skb = kmalloc(txq_pcpu->size *
-- sizeof(*txq_pcpu->tx_skb),
-- GFP_KERNEL);
-- if (!txq_pcpu->tx_skb)
-- goto error;
--
-- txq_pcpu->tx_buffs = kmalloc(txq_pcpu->size *
-- sizeof(dma_addr_t), GFP_KERNEL);
-- if (!txq_pcpu->tx_buffs)
-+ txq_pcpu->buffs = kmalloc(txq_pcpu->size *
-+ sizeof(struct mvpp2_txq_pcpu_buf),
-+ GFP_KERNEL);
-+ if (!txq_pcpu->buffs)
- goto error;
-
- txq_pcpu->count = 0;
-@@ -4673,8 +4676,7 @@ static int mvpp2_txq_init(struct mvpp2_port *port,
- error:
- for_each_present_cpu(cpu) {
- txq_pcpu = per_cpu_ptr(txq->pcpu, cpu);
-- kfree(txq_pcpu->tx_skb);
-- kfree(txq_pcpu->tx_buffs);
-+ kfree(txq_pcpu->buffs);
- }
-
- dma_free_coherent(port->dev->dev.parent,
-@@ -4693,8 +4695,7 @@ static void mvpp2_txq_deinit(struct mvpp2_port *port,
-
- for_each_present_cpu(cpu) {
- txq_pcpu = per_cpu_ptr(txq->pcpu, cpu);
-- kfree(txq_pcpu->tx_skb);
-- kfree(txq_pcpu->tx_buffs);
-+ kfree(txq_pcpu->buffs);
- }
-
- if (txq->descs)
-diff --git a/drivers/net/wireless/ath/ath9k/hw.c b/drivers/net/wireless/ath/ath9k/hw.c
-index 14b13f0..a35f78b 100644
---- a/drivers/net/wireless/ath/ath9k/hw.c
-+++ b/drivers/net/wireless/ath/ath9k/hw.c
-@@ -2792,7 +2792,7 @@ u32 ath9k_hw_gpio_get(struct ath_hw *ah, u32 gpio)
- WARN_ON(1);
- }
-
-- return val;
-+ return !!val;
- }
- EXPORT_SYMBOL(ath9k_hw_gpio_get);
-
-diff --git a/drivers/net/wireless/ath/ath9k/pci.c b/drivers/net/wireless/ath/ath9k/pci.c
-index 0dd454a..aff473d 100644
---- a/drivers/net/wireless/ath/ath9k/pci.c
-+++ b/drivers/net/wireless/ath/ath9k/pci.c
-@@ -26,7 +26,6 @@ static const struct pci_device_id ath_pci_id_table[] = {
- { PCI_VDEVICE(ATHEROS, 0x0023) }, /* PCI */
- { PCI_VDEVICE(ATHEROS, 0x0024) }, /* PCI-E */
- { PCI_VDEVICE(ATHEROS, 0x0027) }, /* PCI */
-- { PCI_VDEVICE(ATHEROS, 0x0029) }, /* PCI */
-
- #ifdef CONFIG_ATH9K_PCOEM
- /* Mini PCI AR9220 MB92 cards: Compex WLM200NX, Wistron DNMA-92 */
-@@ -37,7 +36,7 @@ static const struct pci_device_id ath_pci_id_table[] = {
- .driver_data = ATH9K_PCI_LED_ACT_HI },
- #endif
-
-- { PCI_VDEVICE(ATHEROS, 0x002A) }, /* PCI-E */
-+ { PCI_VDEVICE(ATHEROS, 0x0029) }, /* PCI */
-
- #ifdef CONFIG_ATH9K_PCOEM
- { PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
-@@ -85,7 +84,11 @@ static const struct pci_device_id ath_pci_id_table[] = {
- 0x10CF, /* Fujitsu */
- 0x1536),
- .driver_data = ATH9K_PCI_D3_L1_WAR },
-+#endif
-
-+ { PCI_VDEVICE(ATHEROS, 0x002A) }, /* PCI-E */
-+
-+#ifdef CONFIG_ATH9K_PCOEM
- /* AR9285 card for Asus */
- { PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
- 0x002B,
-diff --git a/drivers/net/wireless/realtek/rtl8xxxu/rtl8xxxu_core.c b/drivers/net/wireless/realtek/rtl8xxxu/rtl8xxxu_core.c
-index c6b246a..4b78079 100644
---- a/drivers/net/wireless/realtek/rtl8xxxu/rtl8xxxu_core.c
-+++ b/drivers/net/wireless/realtek/rtl8xxxu/rtl8xxxu_core.c
-@@ -4401,6 +4401,13 @@ void rtl8xxxu_gen1_report_connect(struct rtl8xxxu_priv *priv,
- void rtl8xxxu_gen2_report_connect(struct rtl8xxxu_priv *priv,
- u8 macid, bool connect)
- {
-+#ifdef RTL8XXXU_GEN2_REPORT_CONNECT
-+ /*
-+ * Barry Day reports this causes issues with 8192eu and 8723bu
-+ * devices reconnecting. The reason for this is unclear, but
-+ * until it is better understood, leave the code in place but
-+ * disabled, so it is not lost.
-+ */
- struct h2c_cmd h2c;
-
- memset(&h2c, 0, sizeof(struct h2c_cmd));
-@@ -4412,6 +4419,7 @@ void rtl8xxxu_gen2_report_connect(struct rtl8xxxu_priv *priv,
- h2c.media_status_rpt.parm &= ~BIT(0);
-
- rtl8xxxu_gen2_h2c_cmd(priv, &h2c, sizeof(h2c.media_status_rpt));
-+#endif
- }
-
- void rtl8xxxu_gen1_init_aggregation(struct rtl8xxxu_priv *priv)
-diff --git a/drivers/net/wireless/realtek/rtlwifi/base.c b/drivers/net/wireless/realtek/rtlwifi/base.c
-index 264466f..4ac928b 100644
---- a/drivers/net/wireless/realtek/rtlwifi/base.c
-+++ b/drivers/net/wireless/realtek/rtlwifi/base.c
-@@ -1303,12 +1303,13 @@ EXPORT_SYMBOL_GPL(rtl_action_proc);
-
- static void setup_arp_tx(struct rtl_priv *rtlpriv, struct rtl_ps_ctl *ppsc)
- {
-+ struct ieee80211_hw *hw = rtlpriv->hw;
-+
- rtlpriv->ra.is_special_data = true;
- if (rtlpriv->cfg->ops->get_btc_status())
- rtlpriv->btcoexist.btc_ops->btc_special_packet_notify(
- rtlpriv, 1);
-- rtlpriv->enter_ps = false;
-- schedule_work(&rtlpriv->works.lps_change_work);
-+ rtl_lps_leave(hw);
- ppsc->last_delaylps_stamp_jiffies = jiffies;
- }
-
-@@ -1381,8 +1382,7 @@ u8 rtl_is_special_data(struct ieee80211_hw *hw, struct sk_buff *skb, u8 is_tx,
-
- if (is_tx) {
- rtlpriv->ra.is_special_data = true;
-- rtlpriv->enter_ps = false;
-- schedule_work(&rtlpriv->works.lps_change_work);
-+ rtl_lps_leave(hw);
- ppsc->last_delaylps_stamp_jiffies = jiffies;
- }
-
-diff --git a/drivers/net/wireless/realtek/rtlwifi/core.c b/drivers/net/wireless/realtek/rtlwifi/core.c
-index 41f77f8..8f783ef 100644
---- a/drivers/net/wireless/realtek/rtlwifi/core.c
-+++ b/drivers/net/wireless/realtek/rtlwifi/core.c
-@@ -1149,10 +1149,8 @@ static void rtl_op_bss_info_changed(struct ieee80211_hw *hw,
- } else {
- mstatus = RT_MEDIA_DISCONNECT;
-
-- if (mac->link_state == MAC80211_LINKED) {
-- rtlpriv->enter_ps = false;
-- schedule_work(&rtlpriv->works.lps_change_work);
-- }
-+ if (mac->link_state == MAC80211_LINKED)
-+ rtl_lps_leave(hw);
- if (ppsc->p2p_ps_info.p2p_ps_mode > P2P_PS_NONE)
- rtl_p2p_ps_cmd(hw, P2P_PS_DISABLE);
- mac->link_state = MAC80211_NOLINK;
-@@ -1430,8 +1428,7 @@ static void rtl_op_sw_scan_start(struct ieee80211_hw *hw,
- }
-
- if (mac->link_state == MAC80211_LINKED) {
-- rtlpriv->enter_ps = false;
-- schedule_work(&rtlpriv->works.lps_change_work);
-+ rtl_lps_leave(hw);
- mac->link_state = MAC80211_LINKED_SCANNING;
- } else {
- rtl_ips_nic_on(hw);
-diff --git a/drivers/net/wireless/realtek/rtlwifi/pci.c b/drivers/net/wireless/realtek/rtlwifi/pci.c
-index d12586d..e538e23 100644
---- a/drivers/net/wireless/realtek/rtlwifi/pci.c
-+++ b/drivers/net/wireless/realtek/rtlwifi/pci.c
-@@ -662,11 +662,9 @@ static void _rtl_pci_tx_isr(struct ieee80211_hw *hw, int prio)
- }
-
- if (((rtlpriv->link_info.num_rx_inperiod +
-- rtlpriv->link_info.num_tx_inperiod) > 8) ||
-- (rtlpriv->link_info.num_rx_inperiod > 2)) {
-- rtlpriv->enter_ps = false;
-- schedule_work(&rtlpriv->works.lps_change_work);
-- }
-+ rtlpriv->link_info.num_tx_inperiod) > 8) ||
-+ (rtlpriv->link_info.num_rx_inperiod > 2))
-+ rtl_lps_leave(hw);
- }
-
- static int _rtl_pci_init_one_rxdesc(struct ieee80211_hw *hw,
-@@ -917,10 +915,8 @@ static void _rtl_pci_rx_interrupt(struct ieee80211_hw *hw)
- }
- if (((rtlpriv->link_info.num_rx_inperiod +
- rtlpriv->link_info.num_tx_inperiod) > 8) ||
-- (rtlpriv->link_info.num_rx_inperiod > 2)) {
-- rtlpriv->enter_ps = false;
-- schedule_work(&rtlpriv->works.lps_change_work);
-- }
-+ (rtlpriv->link_info.num_rx_inperiod > 2))
-+ rtl_lps_leave(hw);
- skb = new_skb;
- no_new:
- if (rtlpriv->use_new_trx_flow) {
-diff --git a/drivers/net/wireless/realtek/rtlwifi/ps.c b/drivers/net/wireless/realtek/rtlwifi/ps.c
-index 9a64f9b..424e262 100644
---- a/drivers/net/wireless/realtek/rtlwifi/ps.c
-+++ b/drivers/net/wireless/realtek/rtlwifi/ps.c
-@@ -407,8 +407,8 @@ void rtl_lps_set_psmode(struct ieee80211_hw *hw, u8 rt_psmode)
- }
- }
-
--/*Enter the leisure power save mode.*/
--void rtl_lps_enter(struct ieee80211_hw *hw)
-+/* Interrupt safe routine to enter the leisure power save mode.*/
-+static void rtl_lps_enter_core(struct ieee80211_hw *hw)
- {
- struct rtl_mac *mac = rtl_mac(rtl_priv(hw));
- struct rtl_ps_ctl *ppsc = rtl_psc(rtl_priv(hw));
-@@ -444,10 +444,9 @@ void rtl_lps_enter(struct ieee80211_hw *hw)
-
- spin_unlock_irqrestore(&rtlpriv->locks.lps_lock, flag);
- }
--EXPORT_SYMBOL(rtl_lps_enter);
-
--/*Leave the leisure power save mode.*/
--void rtl_lps_leave(struct ieee80211_hw *hw)
-+/* Interrupt safe routine to leave the leisure power save mode.*/
-+static void rtl_lps_leave_core(struct ieee80211_hw *hw)
- {
- struct rtl_priv *rtlpriv = rtl_priv(hw);
- struct rtl_ps_ctl *ppsc = rtl_psc(rtl_priv(hw));
-@@ -477,7 +476,6 @@ void rtl_lps_leave(struct ieee80211_hw *hw)
- }
- spin_unlock_irqrestore(&rtlpriv->locks.lps_lock, flag);
- }
--EXPORT_SYMBOL(rtl_lps_leave);
-
- /* For sw LPS*/
- void rtl_swlps_beacon(struct ieee80211_hw *hw, void *data, unsigned int len)
-@@ -670,12 +668,34 @@ void rtl_lps_change_work_callback(struct work_struct *work)
- struct rtl_priv *rtlpriv = rtl_priv(hw);
-
- if (rtlpriv->enter_ps)
-- rtl_lps_enter(hw);
-+ rtl_lps_enter_core(hw);
- else
-- rtl_lps_leave(hw);
-+ rtl_lps_leave_core(hw);
- }
- EXPORT_SYMBOL_GPL(rtl_lps_change_work_callback);
-
-+void rtl_lps_enter(struct ieee80211_hw *hw)
-+{
-+ struct rtl_priv *rtlpriv = rtl_priv(hw);
-+
-+ if (!in_interrupt())
-+ return rtl_lps_enter_core(hw);
-+ rtlpriv->enter_ps = true;
-+ schedule_work(&rtlpriv->works.lps_change_work);
-+}
-+EXPORT_SYMBOL_GPL(rtl_lps_enter);
-+
-+void rtl_lps_leave(struct ieee80211_hw *hw)
-+{
-+ struct rtl_priv *rtlpriv = rtl_priv(hw);
-+
-+ if (!in_interrupt())
-+ return rtl_lps_leave_core(hw);
-+ rtlpriv->enter_ps = false;
-+ schedule_work(&rtlpriv->works.lps_change_work);
-+}
-+EXPORT_SYMBOL_GPL(rtl_lps_leave);
-+
- void rtl_swlps_wq_callback(void *data)
- {
- struct rtl_works *rtlworks = container_of_dwork_rtl(data,
-diff --git a/drivers/nvdimm/pfn_devs.c b/drivers/nvdimm/pfn_devs.c
-index cea8350..a2ac9e6 100644
---- a/drivers/nvdimm/pfn_devs.c
-+++ b/drivers/nvdimm/pfn_devs.c
-@@ -108,7 +108,7 @@ static ssize_t align_show(struct device *dev,
- {
- struct nd_pfn *nd_pfn = to_nd_pfn_safe(dev);
-
-- return sprintf(buf, "%lx\n", nd_pfn->align);
-+ return sprintf(buf, "%ld\n", nd_pfn->align);
- }
-
- static ssize_t __align_store(struct nd_pfn *nd_pfn, const char *buf)
-diff --git a/drivers/pci/pci.c b/drivers/pci/pci.c
-index aab9d51..24db77e 100644
---- a/drivers/pci/pci.c
-+++ b/drivers/pci/pci.c
-@@ -2064,6 +2064,10 @@ bool pci_dev_run_wake(struct pci_dev *dev)
- if (!dev->pme_support)
- return false;
-
-+ /* PME-capable in principle, but not from the intended sleep state */
-+ if (!pci_pme_capable(dev, pci_target_state(dev)))
-+ return false;
-+
- while (bus->parent) {
- struct pci_dev *bridge = bus->self;
-
-diff --git a/drivers/platform/x86/asus-nb-wmi.c b/drivers/platform/x86/asus-nb-wmi.c
-index adecc1c..c4ed3e5 100644
---- a/drivers/platform/x86/asus-nb-wmi.c
-+++ b/drivers/platform/x86/asus-nb-wmi.c
-@@ -137,6 +137,15 @@ static const struct dmi_system_id asus_quirks[] = {
- },
- {
- .callback = dmi_matched,
-+ .ident = "ASUSTeK COMPUTER INC. X45U",
-+ .matches = {
-+ DMI_MATCH(DMI_SYS_VENDOR, "ASUSTeK COMPUTER INC."),
-+ DMI_MATCH(DMI_PRODUCT_NAME, "X45U"),
-+ },
-+ .driver_data = &quirk_asus_wapf4,
-+ },
-+ {
-+ .callback = dmi_matched,
- .ident = "ASUSTeK COMPUTER INC. X456UA",
- .matches = {
- DMI_MATCH(DMI_SYS_VENDOR, "ASUSTeK COMPUTER INC."),
-diff --git a/drivers/regulator/stw481x-vmmc.c b/drivers/regulator/stw481x-vmmc.c
-index 7d2ae3e..342f5da 100644
---- a/drivers/regulator/stw481x-vmmc.c
-+++ b/drivers/regulator/stw481x-vmmc.c
-@@ -47,7 +47,8 @@ static struct regulator_desc vmmc_regulator = {
- .volt_table = stw481x_vmmc_voltages,
- .enable_time = 200, /* FIXME: look this up */
- .enable_reg = STW_CONF1,
-- .enable_mask = STW_CONF1_PDN_VMMC,
-+ .enable_mask = STW_CONF1_PDN_VMMC | STW_CONF1_MMC_LS_STATUS,
-+ .enable_val = STW_CONF1_PDN_VMMC,
- .vsel_reg = STW_CONF1,
- .vsel_mask = STW_CONF1_VMMC_MASK,
- };
-diff --git a/drivers/s390/char/vmlogrdr.c b/drivers/s390/char/vmlogrdr.c
-index e883063..3167e85 100644
---- a/drivers/s390/char/vmlogrdr.c
-+++ b/drivers/s390/char/vmlogrdr.c
-@@ -870,7 +870,7 @@ static int __init vmlogrdr_init(void)
- goto cleanup;
-
- for (i=0; i < MAXMINOR; ++i ) {
-- sys_ser[i].buffer = (char *) get_zeroed_page(GFP_KERNEL);
-+ sys_ser[i].buffer = (char *) get_zeroed_page(GFP_KERNEL | GFP_DMA);
- if (!sys_ser[i].buffer) {
- rc = -ENOMEM;
- break;
-diff --git a/drivers/s390/scsi/zfcp_dbf.c b/drivers/s390/scsi/zfcp_dbf.c
-index 5810019..d5bf36e 100644
---- a/drivers/s390/scsi/zfcp_dbf.c
-+++ b/drivers/s390/scsi/zfcp_dbf.c
-@@ -289,11 +289,12 @@ void zfcp_dbf_rec_trig(char *tag, struct zfcp_adapter *adapter,
-
-
- /**
-- * zfcp_dbf_rec_run - trace event related to running recovery
-+ * zfcp_dbf_rec_run_lvl - trace event related to running recovery
-+ * @level: trace level to be used for event
- * @tag: identifier for event
- * @erp: erp_action running
- */
--void zfcp_dbf_rec_run(char *tag, struct zfcp_erp_action *erp)
-+void zfcp_dbf_rec_run_lvl(int level, char *tag, struct zfcp_erp_action *erp)
- {
- struct zfcp_dbf *dbf = erp->adapter->dbf;
- struct zfcp_dbf_rec *rec = &dbf->rec_buf;
-@@ -319,11 +320,21 @@ void zfcp_dbf_rec_run(char *tag, struct zfcp_erp_action *erp)
- else
- rec->u.run.rec_count = atomic_read(&erp->adapter->erp_counter);
-
-- debug_event(dbf->rec, 1, rec, sizeof(*rec));
-+ debug_event(dbf->rec, level, rec, sizeof(*rec));
- spin_unlock_irqrestore(&dbf->rec_lock, flags);
- }
-
- /**
-+ * zfcp_dbf_rec_run - trace event related to running recovery
-+ * @tag: identifier for event
-+ * @erp: erp_action running
-+ */
-+void zfcp_dbf_rec_run(char *tag, struct zfcp_erp_action *erp)
-+{
-+ zfcp_dbf_rec_run_lvl(1, tag, erp);
-+}
-+
-+/**
- * zfcp_dbf_rec_run_wka - trace wka port event with info like running recovery
- * @tag: identifier for event
- * @wka_port: well known address port
-diff --git a/drivers/s390/scsi/zfcp_dbf.h b/drivers/s390/scsi/zfcp_dbf.h
-index 36d0758..db186d4 100644
---- a/drivers/s390/scsi/zfcp_dbf.h
-+++ b/drivers/s390/scsi/zfcp_dbf.h
-@@ -2,7 +2,7 @@
- * zfcp device driver
- * debug feature declarations
- *
-- * Copyright IBM Corp. 2008, 2015
-+ * Copyright IBM Corp. 2008, 2016
- */
-
- #ifndef ZFCP_DBF_H
-@@ -283,6 +283,30 @@ struct zfcp_dbf {
- struct zfcp_dbf_scsi scsi_buf;
- };
-
-+/**
-+ * zfcp_dbf_hba_fsf_resp_suppress - true if we should not trace by default
-+ * @req: request that has been completed
-+ *
-+ * Returns true if FCP response with only benign residual under count.
-+ */
-+static inline
-+bool zfcp_dbf_hba_fsf_resp_suppress(struct zfcp_fsf_req *req)
-+{
-+ struct fsf_qtcb *qtcb = req->qtcb;
-+ u32 fsf_stat = qtcb->header.fsf_status;
-+ struct fcp_resp *fcp_rsp;
-+ u8 rsp_flags, fr_status;
-+
-+ if (qtcb->prefix.qtcb_type != FSF_IO_COMMAND)
-+ return false; /* not an FCP response */
-+ fcp_rsp = (struct fcp_resp *)&qtcb->bottom.io.fcp_rsp;
-+ rsp_flags = fcp_rsp->fr_flags;
-+ fr_status = fcp_rsp->fr_status;
-+ return (fsf_stat == FSF_FCP_RSP_AVAILABLE) &&
-+ (rsp_flags == FCP_RESID_UNDER) &&
-+ (fr_status == SAM_STAT_GOOD);
-+}
-+
- static inline
- void zfcp_dbf_hba_fsf_resp(char *tag, int level, struct zfcp_fsf_req *req)
- {
-@@ -304,7 +328,9 @@ void zfcp_dbf_hba_fsf_response(struct zfcp_fsf_req *req)
- zfcp_dbf_hba_fsf_resp("fs_perr", 1, req);
-
- } else if (qtcb->header.fsf_status != FSF_GOOD) {
-- zfcp_dbf_hba_fsf_resp("fs_ferr", 1, req);
-+ zfcp_dbf_hba_fsf_resp("fs_ferr",
-+ zfcp_dbf_hba_fsf_resp_suppress(req)
-+ ? 5 : 1, req);
-
- } else if ((req->fsf_command == FSF_QTCB_OPEN_PORT_WITH_DID) ||
- (req->fsf_command == FSF_QTCB_OPEN_LUN)) {
-@@ -388,4 +414,15 @@ void zfcp_dbf_scsi_devreset(char *tag, struct scsi_cmnd *scmnd, u8 flag)
- _zfcp_dbf_scsi(tmp_tag, 1, scmnd, NULL);
- }
-
-+/**
-+ * zfcp_dbf_scsi_nullcmnd() - trace NULLify of SCSI command in dev/tgt-reset.
-+ * @scmnd: SCSI command that was NULLified.
-+ * @fsf_req: request that owned @scmnd.
-+ */
-+static inline void zfcp_dbf_scsi_nullcmnd(struct scsi_cmnd *scmnd,
-+ struct zfcp_fsf_req *fsf_req)
-+{
-+ _zfcp_dbf_scsi("scfc__1", 3, scmnd, fsf_req);
-+}
-+
- #endif /* ZFCP_DBF_H */
-diff --git a/drivers/s390/scsi/zfcp_erp.c b/drivers/s390/scsi/zfcp_erp.c
-index a59d678..7ccfce5 100644
---- a/drivers/s390/scsi/zfcp_erp.c
-+++ b/drivers/s390/scsi/zfcp_erp.c
-@@ -3,7 +3,7 @@
- *
- * Error Recovery Procedures (ERP).
- *
-- * Copyright IBM Corp. 2002, 2015
-+ * Copyright IBM Corp. 2002, 2016
- */
-
- #define KMSG_COMPONENT "zfcp"
-@@ -1204,6 +1204,62 @@ static void zfcp_erp_action_dequeue(struct zfcp_erp_action *erp_action)
- }
- }
-
-+/**
-+ * zfcp_erp_try_rport_unblock - unblock rport if no more/new recovery
-+ * @port: zfcp_port whose fc_rport we should try to unblock
-+ */
-+static void zfcp_erp_try_rport_unblock(struct zfcp_port *port)
-+{
-+ unsigned long flags;
-+ struct zfcp_adapter *adapter = port->adapter;
-+ int port_status;
-+ struct Scsi_Host *shost = adapter->scsi_host;
-+ struct scsi_device *sdev;
-+
-+ write_lock_irqsave(&adapter->erp_lock, flags);
-+ port_status = atomic_read(&port->status);
-+ if ((port_status & ZFCP_STATUS_COMMON_UNBLOCKED) == 0 ||
-+ (port_status & (ZFCP_STATUS_COMMON_ERP_INUSE |
-+ ZFCP_STATUS_COMMON_ERP_FAILED)) != 0) {
-+ /* new ERP of severity >= port triggered elsewhere meanwhile or
-+ * local link down (adapter erp_failed but not clear unblock)
-+ */
-+ zfcp_dbf_rec_run_lvl(4, "ertru_p", &port->erp_action);
-+ write_unlock_irqrestore(&adapter->erp_lock, flags);
-+ return;
-+ }
-+ spin_lock(shost->host_lock);
-+ __shost_for_each_device(sdev, shost) {
-+ struct zfcp_scsi_dev *zsdev = sdev_to_zfcp(sdev);
-+ int lun_status;
-+
-+ if (zsdev->port != port)
-+ continue;
-+ /* LUN under port of interest */
-+ lun_status = atomic_read(&zsdev->status);
-+ if ((lun_status & ZFCP_STATUS_COMMON_ERP_FAILED) != 0)
-+ continue; /* unblock rport despite failed LUNs */
-+ /* LUN recovery not given up yet [maybe follow-up pending] */
-+ if ((lun_status & ZFCP_STATUS_COMMON_UNBLOCKED) == 0 ||
-+ (lun_status & ZFCP_STATUS_COMMON_ERP_INUSE) != 0) {
-+ /* LUN blocked:
-+ * not yet unblocked [LUN recovery pending]
-+ * or meanwhile blocked [new LUN recovery triggered]
-+ */
-+ zfcp_dbf_rec_run_lvl(4, "ertru_l", &zsdev->erp_action);
-+ spin_unlock(shost->host_lock);
-+ write_unlock_irqrestore(&adapter->erp_lock, flags);
-+ return;
-+ }
-+ }
-+ /* now port has no child or all children have completed recovery,
-+ * and no ERP of severity >= port was meanwhile triggered elsewhere
-+ */
-+ zfcp_scsi_schedule_rport_register(port);
-+ spin_unlock(shost->host_lock);
-+ write_unlock_irqrestore(&adapter->erp_lock, flags);
-+}
-+
- static void zfcp_erp_action_cleanup(struct zfcp_erp_action *act, int result)
- {
- struct zfcp_adapter *adapter = act->adapter;
-@@ -1214,6 +1270,7 @@ static void zfcp_erp_action_cleanup(struct zfcp_erp_action *act, int result)
- case ZFCP_ERP_ACTION_REOPEN_LUN:
- if (!(act->status & ZFCP_STATUS_ERP_NO_REF))
- scsi_device_put(sdev);
-+ zfcp_erp_try_rport_unblock(port);
- break;
-
- case ZFCP_ERP_ACTION_REOPEN_PORT:
-@@ -1224,7 +1281,7 @@ static void zfcp_erp_action_cleanup(struct zfcp_erp_action *act, int result)
- */
- if (act->step != ZFCP_ERP_STEP_UNINITIALIZED)
- if (result == ZFCP_ERP_SUCCEEDED)
-- zfcp_scsi_schedule_rport_register(port);
-+ zfcp_erp_try_rport_unblock(port);
- /* fall through */
- case ZFCP_ERP_ACTION_REOPEN_PORT_FORCED:
- put_device(&port->dev);
-diff --git a/drivers/s390/scsi/zfcp_ext.h b/drivers/s390/scsi/zfcp_ext.h
-index c8fed9f..21c8c68 100644
---- a/drivers/s390/scsi/zfcp_ext.h
-+++ b/drivers/s390/scsi/zfcp_ext.h
-@@ -3,7 +3,7 @@
- *
- * External function declarations.
- *
-- * Copyright IBM Corp. 2002, 2015
-+ * Copyright IBM Corp. 2002, 2016
- */
-
- #ifndef ZFCP_EXT_H
-@@ -35,6 +35,8 @@ extern void zfcp_dbf_adapter_unregister(struct zfcp_adapter *);
- extern void zfcp_dbf_rec_trig(char *, struct zfcp_adapter *,
- struct zfcp_port *, struct scsi_device *, u8, u8);
- extern void zfcp_dbf_rec_run(char *, struct zfcp_erp_action *);
-+extern void zfcp_dbf_rec_run_lvl(int level, char *tag,
-+ struct zfcp_erp_action *erp);
- extern void zfcp_dbf_rec_run_wka(char *, struct zfcp_fc_wka_port *, u64);
- extern void zfcp_dbf_hba_fsf_uss(char *, struct zfcp_fsf_req *);
- extern void zfcp_dbf_hba_fsf_res(char *, int, struct zfcp_fsf_req *);
-diff --git a/drivers/s390/scsi/zfcp_fsf.h b/drivers/s390/scsi/zfcp_fsf.h
-index be1c04b..ea3c76a 100644
---- a/drivers/s390/scsi/zfcp_fsf.h
-+++ b/drivers/s390/scsi/zfcp_fsf.h
-@@ -3,7 +3,7 @@
- *
- * Interface to the FSF support functions.
- *
-- * Copyright IBM Corp. 2002, 2015
-+ * Copyright IBM Corp. 2002, 2016
- */
-
- #ifndef FSF_H
-@@ -78,6 +78,7 @@
- #define FSF_APP_TAG_CHECK_FAILURE 0x00000082
- #define FSF_REF_TAG_CHECK_FAILURE 0x00000083
- #define FSF_ADAPTER_STATUS_AVAILABLE 0x000000AD
-+#define FSF_FCP_RSP_AVAILABLE 0x000000AF
- #define FSF_UNKNOWN_COMMAND 0x000000E2
- #define FSF_UNKNOWN_OP_SUBTYPE 0x000000E3
- #define FSF_INVALID_COMMAND_OPTION 0x000000E5
-diff --git a/drivers/s390/scsi/zfcp_reqlist.h b/drivers/s390/scsi/zfcp_reqlist.h
-index 7c2c619..703fce5 100644
---- a/drivers/s390/scsi/zfcp_reqlist.h
-+++ b/drivers/s390/scsi/zfcp_reqlist.h
-@@ -4,7 +4,7 @@
- * Data structure and helper functions for tracking pending FSF
- * requests.
- *
-- * Copyright IBM Corp. 2009
-+ * Copyright IBM Corp. 2009, 2016
- */
-
- #ifndef ZFCP_REQLIST_H
-@@ -180,4 +180,32 @@ static inline void zfcp_reqlist_move(struct zfcp_reqlist *rl,
- spin_unlock_irqrestore(&rl->lock, flags);
- }
-
-+/**
-+ * zfcp_reqlist_apply_for_all() - apply a function to every request.
-+ * @rl: the requestlist that contains the target requests.
-+ * @f: the function to apply to each request; the first parameter of the
-+ * function will be the target-request; the second parameter is the same
-+ * pointer as given with the argument @data.
-+ * @data: freely chosen argument; passed through to @f as second parameter.
-+ *
-+ * Uses :c:macro:`list_for_each_entry` to iterate over the lists in the hash-
-+ * table (not a 'safe' variant, so don't modify the list).
-+ *
-+ * Holds @rl->lock over the entire request-iteration.
-+ */
-+static inline void
-+zfcp_reqlist_apply_for_all(struct zfcp_reqlist *rl,
-+ void (*f)(struct zfcp_fsf_req *, void *), void *data)
-+{
-+ struct zfcp_fsf_req *req;
-+ unsigned long flags;
-+ unsigned int i;
-+
-+ spin_lock_irqsave(&rl->lock, flags);
-+ for (i = 0; i < ZFCP_REQ_LIST_BUCKETS; i++)
-+ list_for_each_entry(req, &rl->buckets[i], list)
-+ f(req, data);
-+ spin_unlock_irqrestore(&rl->lock, flags);
-+}
-+
- #endif /* ZFCP_REQLIST_H */
-diff --git a/drivers/s390/scsi/zfcp_scsi.c b/drivers/s390/scsi/zfcp_scsi.c
-index 9069f98..07ffdbb 100644
---- a/drivers/s390/scsi/zfcp_scsi.c
-+++ b/drivers/s390/scsi/zfcp_scsi.c
-@@ -3,7 +3,7 @@
- *
- * Interface to Linux SCSI midlayer.
- *
-- * Copyright IBM Corp. 2002, 2015
-+ * Copyright IBM Corp. 2002, 2016
- */
-
- #define KMSG_COMPONENT "zfcp"
-@@ -88,9 +88,7 @@ int zfcp_scsi_queuecommand(struct Scsi_Host *shost, struct scsi_cmnd *scpnt)
- }
-
- if (unlikely(!(status & ZFCP_STATUS_COMMON_UNBLOCKED))) {
-- /* This could be either
-- * open LUN pending: this is temporary, will result in
-- * open LUN or ERP_FAILED, so retry command
-+ /* This could be
- * call to rport_delete pending: mimic retry from
- * fc_remote_port_chkready until rport is BLOCKED
- */
-@@ -209,6 +207,57 @@ static int zfcp_scsi_eh_abort_handler(struct scsi_cmnd *scpnt)
- return retval;
- }
-
-+struct zfcp_scsi_req_filter {
-+ u8 tmf_scope;
-+ u32 lun_handle;
-+ u32 port_handle;
-+};
-+
-+static void zfcp_scsi_forget_cmnd(struct zfcp_fsf_req *old_req, void *data)
-+{
-+ struct zfcp_scsi_req_filter *filter =
-+ (struct zfcp_scsi_req_filter *)data;
-+
-+ /* already aborted - prevent side-effects - or not a SCSI command */
-+ if (old_req->data == NULL || old_req->fsf_command != FSF_QTCB_FCP_CMND)
-+ return;
-+
-+ /* (tmf_scope == FCP_TMF_TGT_RESET || tmf_scope == FCP_TMF_LUN_RESET) */
-+ if (old_req->qtcb->header.port_handle != filter->port_handle)
-+ return;
-+
-+ if (filter->tmf_scope == FCP_TMF_LUN_RESET &&
-+ old_req->qtcb->header.lun_handle != filter->lun_handle)
-+ return;
-+
-+ zfcp_dbf_scsi_nullcmnd((struct scsi_cmnd *)old_req->data, old_req);
-+ old_req->data = NULL;
-+}
-+
-+static void zfcp_scsi_forget_cmnds(struct zfcp_scsi_dev *zsdev, u8 tm_flags)
-+{
-+ struct zfcp_adapter *adapter = zsdev->port->adapter;
-+ struct zfcp_scsi_req_filter filter = {
-+ .tmf_scope = FCP_TMF_TGT_RESET,
-+ .port_handle = zsdev->port->handle,
-+ };
-+ unsigned long flags;
-+
-+ if (tm_flags == FCP_TMF_LUN_RESET) {
-+ filter.tmf_scope = FCP_TMF_LUN_RESET;
-+ filter.lun_handle = zsdev->lun_handle;
-+ }
-+
-+ /*
-+ * abort_lock secures against other processings - in the abort-function
-+ * and normal cmnd-handler - of (struct zfcp_fsf_req *)->data
-+ */
-+ write_lock_irqsave(&adapter->abort_lock, flags);
-+ zfcp_reqlist_apply_for_all(adapter->req_list, zfcp_scsi_forget_cmnd,
-+ &filter);
-+ write_unlock_irqrestore(&adapter->abort_lock, flags);
-+}
-+
- static int zfcp_task_mgmt_function(struct scsi_cmnd *scpnt, u8 tm_flags)
- {
- struct zfcp_scsi_dev *zfcp_sdev = sdev_to_zfcp(scpnt->device);
-@@ -241,8 +290,10 @@ static int zfcp_task_mgmt_function(struct scsi_cmnd *scpnt, u8 tm_flags)
- if (fsf_req->status & ZFCP_STATUS_FSFREQ_TMFUNCFAILED) {
- zfcp_dbf_scsi_devreset("fail", scpnt, tm_flags);
- retval = FAILED;
-- } else
-+ } else {
- zfcp_dbf_scsi_devreset("okay", scpnt, tm_flags);
-+ zfcp_scsi_forget_cmnds(zfcp_sdev, tm_flags);
-+ }
-
- zfcp_fsf_req_free(fsf_req);
- return retval;
-diff --git a/drivers/scsi/aacraid/linit.c b/drivers/scsi/aacraid/linit.c
-index 79871f3..d5b26fa 100644
---- a/drivers/scsi/aacraid/linit.c
-+++ b/drivers/scsi/aacraid/linit.c
-@@ -160,7 +160,6 @@ static const struct pci_device_id aac_pci_tbl[] = {
- { 0x9005, 0x028b, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 62 }, /* Adaptec PMC Series 6 (Tupelo) */
- { 0x9005, 0x028c, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 63 }, /* Adaptec PMC Series 7 (Denali) */
- { 0x9005, 0x028d, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 64 }, /* Adaptec PMC Series 8 */
-- { 0x9005, 0x028f, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 65 }, /* Adaptec PMC Series 9 */
- { 0,}
- };
- MODULE_DEVICE_TABLE(pci, aac_pci_tbl);
-@@ -239,7 +238,6 @@ static struct aac_driver_ident aac_drivers[] = {
- { aac_src_init, "aacraid", "ADAPTEC ", "RAID ", 2, AAC_QUIRK_SRC }, /* Adaptec PMC Series 6 (Tupelo) */
- { aac_srcv_init, "aacraid", "ADAPTEC ", "RAID ", 2, AAC_QUIRK_SRC }, /* Adaptec PMC Series 7 (Denali) */
- { aac_srcv_init, "aacraid", "ADAPTEC ", "RAID ", 2, AAC_QUIRK_SRC }, /* Adaptec PMC Series 8 */
-- { aac_srcv_init, "aacraid", "ADAPTEC ", "RAID ", 2, AAC_QUIRK_SRC } /* Adaptec PMC Series 9 */
- };
-
- /**
-diff --git a/drivers/scsi/megaraid/megaraid_sas_fusion.c b/drivers/scsi/megaraid/megaraid_sas_fusion.c
-index 52d8bbf..bd04bd0 100644
---- a/drivers/scsi/megaraid/megaraid_sas_fusion.c
-+++ b/drivers/scsi/megaraid/megaraid_sas_fusion.c
-@@ -2000,6 +2000,8 @@ megasas_build_syspd_fusion(struct megasas_instance *instance,
- io_request->DevHandle = pd_sync->seq[pd_index].devHandle;
- pRAID_Context->regLockFlags |=
- (MR_RL_FLAGS_SEQ_NUM_ENABLE|MR_RL_FLAGS_GRANT_DESTINATION_CUDA);
-+ pRAID_Context->Type = MPI2_TYPE_CUDA;
-+ pRAID_Context->nseg = 0x1;
- } else if (fusion->fast_path_io) {
- pRAID_Context->VirtualDiskTgtId = cpu_to_le16(device_id);
- pRAID_Context->configSeqNum = 0;
-@@ -2035,12 +2037,10 @@ megasas_build_syspd_fusion(struct megasas_instance *instance,
- pRAID_Context->timeoutValue =
- cpu_to_le16((os_timeout_value > timeout_limit) ?
- timeout_limit : os_timeout_value);
-- if (fusion->adapter_type == INVADER_SERIES) {
-- pRAID_Context->Type = MPI2_TYPE_CUDA;
-- pRAID_Context->nseg = 0x1;
-+ if (fusion->adapter_type == INVADER_SERIES)
- io_request->IoFlags |=
- cpu_to_le16(MPI25_SAS_DEVICE0_FLAGS_ENABLED_FAST_PATH);
-- }
-+
- cmd->request_desc->SCSIIO.RequestFlags =
- (MPI2_REQ_DESCRIPT_FLAGS_FP_IO <<
- MEGASAS_REQ_DESCRIPT_FLAGS_TYPE_SHIFT);
-@@ -2823,6 +2823,7 @@ int megasas_wait_for_outstanding_fusion(struct megasas_instance *instance,
- dev_err(&instance->pdev->dev, "pending commands remain after waiting, "
- "will reset adapter scsi%d.\n",
- instance->host->host_no);
-+ *convert = 1;
- retval = 1;
- }
- out:
-diff --git a/drivers/scsi/scsi_sysfs.c b/drivers/scsi/scsi_sysfs.c
-index 0734927..82dfe07 100644
---- a/drivers/scsi/scsi_sysfs.c
-+++ b/drivers/scsi/scsi_sysfs.c
-@@ -1204,10 +1204,6 @@ int scsi_sysfs_add_sdev(struct scsi_device *sdev)
- struct request_queue *rq = sdev->request_queue;
- struct scsi_target *starget = sdev->sdev_target;
-
-- error = scsi_device_set_state(sdev, SDEV_RUNNING);
-- if (error)
-- return error;
--
- error = scsi_target_add(starget);
- if (error)
- return error;
-diff --git a/drivers/scsi/sg.c b/drivers/scsi/sg.c
-index ae7d9bd..a1c29b0 100644
---- a/drivers/scsi/sg.c
-+++ b/drivers/scsi/sg.c
-@@ -592,6 +592,9 @@ sg_write(struct file *filp, const char __user *buf, size_t count, loff_t * ppos)
- sg_io_hdr_t *hp;
- unsigned char cmnd[SG_MAX_CDB_SIZE];
-
-+ if (unlikely(segment_eq(get_fs(), KERNEL_DS)))
-+ return -EINVAL;
-+
- if ((!(sfp = (Sg_fd *) filp->private_data)) || (!(sdp = sfp->parentdp)))
- return -ENXIO;
- SCSI_LOG_TIMEOUT(3, sg_printk(KERN_INFO, sdp,
-diff --git a/drivers/ssb/pci.c b/drivers/ssb/pci.c
-index 0f28c08..77b551d 100644
---- a/drivers/ssb/pci.c
-+++ b/drivers/ssb/pci.c
-@@ -909,6 +909,7 @@ static int ssb_pci_sprom_get(struct ssb_bus *bus,
- if (err) {
- ssb_warn("WARNING: Using fallback SPROM failed (err %d)\n",
- err);
-+ goto out_free;
- } else {
- ssb_dbg("Using SPROM revision %d provided by platform\n",
- sprom->revision);
-diff --git a/drivers/staging/comedi/drivers/ni_mio_common.c b/drivers/staging/comedi/drivers/ni_mio_common.c
-index 0f97d7b..1c967c3 100644
---- a/drivers/staging/comedi/drivers/ni_mio_common.c
-+++ b/drivers/staging/comedi/drivers/ni_mio_common.c
-@@ -1832,7 +1832,7 @@ static int ni_ai_insn_read(struct comedi_device *dev,
- unsigned int *data)
- {
- struct ni_private *devpriv = dev->private;
-- unsigned int mask = (s->maxdata + 1) >> 1;
-+ unsigned int mask = s->maxdata;
- int i, n;
- unsigned int signbits;
- unsigned int d;
-@@ -1875,7 +1875,7 @@ static int ni_ai_insn_read(struct comedi_device *dev,
- return -ETIME;
- }
- d += signbits;
-- data[n] = d;
-+ data[n] = d & 0xffff;
- }
- } else if (devpriv->is_6143) {
- for (n = 0; n < insn->n; n++) {
-@@ -1924,9 +1924,8 @@ static int ni_ai_insn_read(struct comedi_device *dev,
- data[n] = dl;
- } else {
- d = ni_readw(dev, NI_E_AI_FIFO_DATA_REG);
-- /* subtle: needs to be short addition */
- d += signbits;
-- data[n] = d;
-+ data[n] = d & 0xffff;
- }
- }
- }
-diff --git a/drivers/target/iscsi/iscsi_target_configfs.c b/drivers/target/iscsi/iscsi_target_configfs.c
-index 923c032..e980e2d 100644
---- a/drivers/target/iscsi/iscsi_target_configfs.c
-+++ b/drivers/target/iscsi/iscsi_target_configfs.c
-@@ -100,8 +100,10 @@ static ssize_t lio_target_np_driver_store(struct config_item *item,
-
- tpg_np_new = iscsit_tpg_add_network_portal(tpg,
- &np->np_sockaddr, tpg_np, type);
-- if (IS_ERR(tpg_np_new))
-+ if (IS_ERR(tpg_np_new)) {
-+ rc = PTR_ERR(tpg_np_new);
- goto out;
-+ }
- } else {
- tpg_np_new = iscsit_tpg_locate_child_np(tpg_np, type);
- if (tpg_np_new) {
-diff --git a/drivers/target/target_core_user.c b/drivers/target/target_core_user.c
-index 62bf4fe..b8a986c 100644
---- a/drivers/target/target_core_user.c
-+++ b/drivers/target/target_core_user.c
-@@ -682,8 +682,6 @@ static int tcmu_check_expired_cmd(int id, void *p, void *data)
- target_complete_cmd(cmd->se_cmd, SAM_STAT_CHECK_CONDITION);
- cmd->se_cmd = NULL;
-
-- kmem_cache_free(tcmu_cmd_cache, cmd);
--
- return 0;
- }
-
-diff --git a/drivers/thermal/thermal_hwmon.c b/drivers/thermal/thermal_hwmon.c
-index c41c774..2dcd419 100644
---- a/drivers/thermal/thermal_hwmon.c
-+++ b/drivers/thermal/thermal_hwmon.c
-@@ -98,7 +98,7 @@ temp_crit_show(struct device *dev, struct device_attribute *attr, char *buf)
- int temperature;
- int ret;
-
-- ret = tz->ops->get_trip_temp(tz, 0, &temperature);
-+ ret = tz->ops->get_crit_temp(tz, &temperature);
- if (ret)
- return ret;
-
-diff --git a/drivers/tty/serial/sc16is7xx.c b/drivers/tty/serial/sc16is7xx.c
-index f36e6df..e086ea4 100644
---- a/drivers/tty/serial/sc16is7xx.c
-+++ b/drivers/tty/serial/sc16is7xx.c
-@@ -1240,7 +1240,7 @@ static int sc16is7xx_probe(struct device *dev,
-
- /* Setup interrupt */
- ret = devm_request_irq(dev, irq, sc16is7xx_irq,
-- IRQF_ONESHOT | flags, dev_name(dev), s);
-+ flags, dev_name(dev), s);
- if (!ret)
- return 0;
-
-diff --git a/drivers/tty/vt/keyboard.c b/drivers/tty/vt/keyboard.c
-index 0f8caae..ece10e6 100644
---- a/drivers/tty/vt/keyboard.c
-+++ b/drivers/tty/vt/keyboard.c
-@@ -982,7 +982,7 @@ static void kbd_led_trigger_activate(struct led_classdev *cdev)
- KBD_LED_TRIGGER((_led_bit) + 8, _name)
-
- static struct kbd_led_trigger kbd_led_triggers[] = {
-- KBD_LED_TRIGGER(VC_SCROLLOCK, "kbd-scrollock"),
-+ KBD_LED_TRIGGER(VC_SCROLLOCK, "kbd-scrolllock"),
- KBD_LED_TRIGGER(VC_NUMLOCK, "kbd-numlock"),
- KBD_LED_TRIGGER(VC_CAPSLOCK, "kbd-capslock"),
- KBD_LED_TRIGGER(VC_KANALOCK, "kbd-kanalock"),
-diff --git a/fs/block_dev.c b/fs/block_dev.c
-index b010242..496d99b 100644
---- a/fs/block_dev.c
-+++ b/fs/block_dev.c
-@@ -1885,6 +1885,7 @@ void iterate_bdevs(void (*func)(struct block_device *, void *), void *arg)
- spin_lock(&blockdev_superblock->s_inode_list_lock);
- list_for_each_entry(inode, &blockdev_superblock->s_inodes, i_sb_list) {
- struct address_space *mapping = inode->i_mapping;
-+ struct block_device *bdev;
-
- spin_lock(&inode->i_lock);
- if (inode->i_state & (I_FREEING|I_WILL_FREE|I_NEW) ||
-@@ -1905,8 +1906,12 @@ void iterate_bdevs(void (*func)(struct block_device *, void *), void *arg)
- */
- iput(old_inode);
- old_inode = inode;
-+ bdev = I_BDEV(inode);
-
-- func(I_BDEV(inode), arg);
-+ mutex_lock(&bdev->bd_mutex);
-+ if (bdev->bd_openers)
-+ func(bdev, arg);
-+ mutex_unlock(&bdev->bd_mutex);
-
- spin_lock(&blockdev_superblock->s_inode_list_lock);
- }
-diff --git a/fs/nfs/file.c b/fs/nfs/file.c
-index ca699dd..e6a0d22 100644
---- a/fs/nfs/file.c
-+++ b/fs/nfs/file.c
-@@ -397,7 +397,7 @@ static int nfs_write_end(struct file *file, struct address_space *mapping,
- */
- if (!PageUptodate(page)) {
- unsigned pglen = nfs_page_length(page);
-- unsigned end = offset + len;
-+ unsigned end = offset + copied;
-
- if (pglen == 0) {
- zero_user_segments(page, 0, offset,
-diff --git a/fs/nfs/flexfilelayout/flexfilelayout.c b/fs/nfs/flexfilelayout/flexfilelayout.c
-index 51b5136..dcc21f9 100644
---- a/fs/nfs/flexfilelayout/flexfilelayout.c
-+++ b/fs/nfs/flexfilelayout/flexfilelayout.c
-@@ -28,6 +28,9 @@
-
- static struct group_info *ff_zero_group;
-
-+static void ff_layout_read_record_layoutstats_done(struct rpc_task *task,
-+ struct nfs_pgio_header *hdr);
-+
- static struct pnfs_layout_hdr *
- ff_layout_alloc_layout_hdr(struct inode *inode, gfp_t gfp_flags)
- {
-@@ -1293,6 +1296,7 @@ static int ff_layout_read_done_cb(struct rpc_task *task,
- hdr->pgio_mirror_idx + 1,
- &hdr->pgio_mirror_idx))
- goto out_eagain;
-+ ff_layout_read_record_layoutstats_done(task, hdr);
- pnfs_read_resend_pnfs(hdr);
- return task->tk_status;
- case -NFS4ERR_RESET_TO_MDS:
-diff --git a/fs/nfs/pnfs.c b/fs/nfs/pnfs.c
-index 2c93a85..eb8edb3 100644
---- a/fs/nfs/pnfs.c
-+++ b/fs/nfs/pnfs.c
-@@ -252,6 +252,14 @@ pnfs_put_layout_hdr(struct pnfs_layout_hdr *lo)
- }
- }
-
-+static void
-+pnfs_clear_layoutreturn_info(struct pnfs_layout_hdr *lo)
-+{
-+ lo->plh_return_iomode = 0;
-+ lo->plh_return_seq = 0;
-+ clear_bit(NFS_LAYOUT_RETURN_REQUESTED, &lo->plh_flags);
-+}
-+
- /*
- * Mark a pnfs_layout_hdr and all associated layout segments as invalid
- *
-@@ -270,6 +278,7 @@ pnfs_mark_layout_stateid_invalid(struct pnfs_layout_hdr *lo,
- };
-
- set_bit(NFS_LAYOUT_INVALID_STID, &lo->plh_flags);
-+ pnfs_clear_layoutreturn_info(lo);
- return pnfs_mark_matching_lsegs_invalid(lo, lseg_list, &range, 0);
- }
-
-@@ -364,7 +373,9 @@ pnfs_layout_remove_lseg(struct pnfs_layout_hdr *lo,
- list_del_init(&lseg->pls_list);
- /* Matched by pnfs_get_layout_hdr in pnfs_layout_insert_lseg */
- atomic_dec(&lo->plh_refcount);
-- if (list_empty(&lo->plh_segs)) {
-+ if (list_empty(&lo->plh_segs) &&
-+ !test_bit(NFS_LAYOUT_RETURN_REQUESTED, &lo->plh_flags) &&
-+ !test_bit(NFS_LAYOUT_RETURN, &lo->plh_flags)) {
- if (atomic_read(&lo->plh_outstanding) == 0)
- set_bit(NFS_LAYOUT_INVALID_STID, &lo->plh_flags);
- clear_bit(NFS_LAYOUT_BULK_RECALL, &lo->plh_flags);
-@@ -769,14 +780,6 @@ pnfs_destroy_all_layouts(struct nfs_client *clp)
- pnfs_destroy_layouts_byclid(clp, false);
- }
-
--static void
--pnfs_clear_layoutreturn_info(struct pnfs_layout_hdr *lo)
--{
-- lo->plh_return_iomode = 0;
-- lo->plh_return_seq = 0;
-- clear_bit(NFS_LAYOUT_RETURN_REQUESTED, &lo->plh_flags);
--}
--
- /* update lo->plh_stateid with new if is more recent */
- void
- pnfs_set_layout_stateid(struct pnfs_layout_hdr *lo, const nfs4_stateid *new,
-@@ -897,6 +900,7 @@ static void pnfs_clear_layoutcommit(struct inode *inode,
- void pnfs_clear_layoutreturn_waitbit(struct pnfs_layout_hdr *lo)
- {
- clear_bit_unlock(NFS_LAYOUT_RETURN, &lo->plh_flags);
-+ clear_bit(NFS_LAYOUT_RETURN_LOCK, &lo->plh_flags);
- smp_mb__after_atomic();
- wake_up_bit(&lo->plh_flags, NFS_LAYOUT_RETURN);
- rpc_wake_up(&NFS_SERVER(lo->plh_inode)->roc_rpcwaitq);
-@@ -910,8 +914,9 @@ pnfs_prepare_layoutreturn(struct pnfs_layout_hdr *lo,
- /* Serialise LAYOUTGET/LAYOUTRETURN */
- if (atomic_read(&lo->plh_outstanding) != 0)
- return false;
-- if (test_and_set_bit(NFS_LAYOUT_RETURN, &lo->plh_flags))
-+ if (test_and_set_bit(NFS_LAYOUT_RETURN_LOCK, &lo->plh_flags))
- return false;
-+ set_bit(NFS_LAYOUT_RETURN, &lo->plh_flags);
- pnfs_get_layout_hdr(lo);
- if (test_bit(NFS_LAYOUT_RETURN_REQUESTED, &lo->plh_flags)) {
- if (stateid != NULL) {
-@@ -1903,6 +1908,8 @@ void pnfs_error_mark_layout_for_return(struct inode *inode,
-
- spin_lock(&inode->i_lock);
- pnfs_set_plh_return_info(lo, range.iomode, 0);
-+ /* Block LAYOUTGET */
-+ set_bit(NFS_LAYOUT_RETURN, &lo->plh_flags);
- /*
- * mark all matching lsegs so that we are sure to have no live
- * segments at hand when sending layoutreturn. See pnfs_put_lseg()
-@@ -2241,6 +2248,10 @@ void pnfs_read_resend_pnfs(struct nfs_pgio_header *hdr)
- struct nfs_pageio_descriptor pgio;
-
- if (!test_and_set_bit(NFS_IOHDR_REDO, &hdr->flags)) {
-+ /* Prevent deadlocks with layoutreturn! */
-+ pnfs_put_lseg(hdr->lseg);
-+ hdr->lseg = NULL;
-+
- nfs_pageio_init_read(&pgio, hdr->inode, false,
- hdr->completion_ops);
- hdr->task.tk_status = nfs_pageio_resend(&pgio, hdr);
-diff --git a/fs/nfs/pnfs.h b/fs/nfs/pnfs.h
-index 31d99b2..98dbb51 100644
---- a/fs/nfs/pnfs.h
-+++ b/fs/nfs/pnfs.h
-@@ -96,6 +96,7 @@ enum {
- NFS_LAYOUT_RW_FAILED, /* get rw layout failed stop trying */
- NFS_LAYOUT_BULK_RECALL, /* bulk recall affecting layout */
- NFS_LAYOUT_RETURN, /* layoutreturn in progress */
-+ NFS_LAYOUT_RETURN_LOCK, /* Serialise layoutreturn */
- NFS_LAYOUT_RETURN_REQUESTED, /* Return this layout ASAP */
- NFS_LAYOUT_INVALID_STID, /* layout stateid id is invalid */
- NFS_LAYOUT_FIRST_LAYOUTGET, /* Serialize first layoutget */
-diff --git a/fs/notify/inode_mark.c b/fs/notify/inode_mark.c
-index 741077d..a364524 100644
---- a/fs/notify/inode_mark.c
-+++ b/fs/notify/inode_mark.c
-@@ -150,12 +150,10 @@ int fsnotify_add_inode_mark(struct fsnotify_mark *mark,
- */
- void fsnotify_unmount_inodes(struct super_block *sb)
- {
-- struct inode *inode, *next_i, *need_iput = NULL;
-+ struct inode *inode, *iput_inode = NULL;
-
- spin_lock(&sb->s_inode_list_lock);
-- list_for_each_entry_safe(inode, next_i, &sb->s_inodes, i_sb_list) {
-- struct inode *need_iput_tmp;
--
-+ list_for_each_entry(inode, &sb->s_inodes, i_sb_list) {
- /*
- * We cannot __iget() an inode in state I_FREEING,
- * I_WILL_FREE, or I_NEW which is fine because by that point
-@@ -178,49 +176,24 @@ void fsnotify_unmount_inodes(struct super_block *sb)
- continue;
- }
-
-- need_iput_tmp = need_iput;
-- need_iput = NULL;
--
-- /* In case fsnotify_inode_delete() drops a reference. */
-- if (inode != need_iput_tmp)
-- __iget(inode);
-- else
-- need_iput_tmp = NULL;
-+ __iget(inode);
- spin_unlock(&inode->i_lock);
--
-- /* In case the dropping of a reference would nuke next_i. */
-- while (&next_i->i_sb_list != &sb->s_inodes) {
-- spin_lock(&next_i->i_lock);
-- if (!(next_i->i_state & (I_FREEING | I_WILL_FREE)) &&
-- atomic_read(&next_i->i_count)) {
-- __iget(next_i);
-- need_iput = next_i;
-- spin_unlock(&next_i->i_lock);
-- break;
-- }
-- spin_unlock(&next_i->i_lock);
-- next_i = list_next_entry(next_i, i_sb_list);
-- }
--
-- /*
-- * We can safely drop s_inode_list_lock here because either
-- * we actually hold references on both inode and next_i or
-- * end of list. Also no new inodes will be added since the
-- * umount has begun.
-- */
- spin_unlock(&sb->s_inode_list_lock);
-
-- if (need_iput_tmp)
-- iput(need_iput_tmp);
-+ if (iput_inode)
-+ iput(iput_inode);
-
- /* for each watch, send FS_UNMOUNT and then remove it */
- fsnotify(inode, FS_UNMOUNT, inode, FSNOTIFY_EVENT_INODE, NULL, 0);
-
- fsnotify_inode_delete(inode);
-
-- iput(inode);
-+ iput_inode = inode;
-
- spin_lock(&sb->s_inode_list_lock);
- }
- spin_unlock(&sb->s_inode_list_lock);
-+
-+ if (iput_inode)
-+ iput(iput_inode);
- }
-diff --git a/include/net/cfg80211.h b/include/net/cfg80211.h
-index beb7610..95b1b57b 100644
---- a/include/net/cfg80211.h
-+++ b/include/net/cfg80211.h
-@@ -4393,6 +4393,17 @@ void cfg80211_rx_assoc_resp(struct net_device *dev,
- void cfg80211_assoc_timeout(struct net_device *dev, struct cfg80211_bss *bss);
-
- /**
-+ * cfg80211_abandon_assoc - notify cfg80211 of abandoned association attempt
-+ * @dev: network device
-+ * @bss: The BSS entry with which association was abandoned.
-+ *
-+ * Call this whenever - for reasons reported through other API, like deauth RX,
-+ * an association attempt was abandoned.
-+ * This function may sleep. The caller must hold the corresponding wdev's mutex.
-+ */
-+void cfg80211_abandon_assoc(struct net_device *dev, struct cfg80211_bss *bss);
-+
-+/**
- * cfg80211_tx_mlme_mgmt - notification of transmitted deauth/disassoc frame
- * @dev: network device
- * @buf: 802.11 frame (header + body)
-diff --git a/include/rdma/ib_addr.h b/include/rdma/ib_addr.h
-index 931a47b..1beab55 100644
---- a/include/rdma/ib_addr.h
-+++ b/include/rdma/ib_addr.h
-@@ -205,10 +205,12 @@ static inline void iboe_addr_get_sgid(struct rdma_dev_addr *dev_addr,
-
- dev = dev_get_by_index(&init_net, dev_addr->bound_dev_if);
- if (dev) {
-- ip4 = (struct in_device *)dev->ip_ptr;
-- if (ip4 && ip4->ifa_list && ip4->ifa_list->ifa_address)
-+ ip4 = in_dev_get(dev);
-+ if (ip4 && ip4->ifa_list && ip4->ifa_list->ifa_address) {
- ipv6_addr_set_v4mapped(ip4->ifa_list->ifa_address,
- (struct in6_addr *)gid);
-+ in_dev_put(ip4);
-+ }
- dev_put(dev);
- }
- }
-diff --git a/kernel/time/timekeeping.c b/kernel/time/timekeeping.c
-index 37dec7e..46e312e 100644
---- a/kernel/time/timekeeping.c
-+++ b/kernel/time/timekeeping.c
-@@ -299,10 +299,10 @@ u32 (*arch_gettimeoffset)(void) = default_arch_gettimeoffset;
- static inline u32 arch_gettimeoffset(void) { return 0; }
- #endif
-
--static inline s64 timekeeping_delta_to_ns(struct tk_read_base *tkr,
-+static inline u64 timekeeping_delta_to_ns(struct tk_read_base *tkr,
- cycle_t delta)
- {
-- s64 nsec;
-+ u64 nsec;
-
- nsec = delta * tkr->mult + tkr->xtime_nsec;
- nsec >>= tkr->shift;
-diff --git a/kernel/trace/trace_functions_graph.c b/kernel/trace/trace_functions_graph.c
-index 7363ccf..16047a8 100644
---- a/kernel/trace/trace_functions_graph.c
-+++ b/kernel/trace/trace_functions_graph.c
-@@ -780,6 +780,10 @@ print_graph_entry_leaf(struct trace_iterator *iter,
-
- cpu_data = per_cpu_ptr(data->cpu_data, cpu);
-
-+ /* If a graph tracer ignored set_graph_notrace */
-+ if (call->depth < -1)
-+ call->depth += FTRACE_NOTRACE_DEPTH;
-+
- /*
- * Comments display at + 1 to depth. Since
- * this is a leaf function, keep the comments
-@@ -788,7 +792,8 @@ print_graph_entry_leaf(struct trace_iterator *iter,
- cpu_data->depth = call->depth - 1;
-
- /* No need to keep this function around for this depth */
-- if (call->depth < FTRACE_RETFUNC_DEPTH)
-+ if (call->depth < FTRACE_RETFUNC_DEPTH &&
-+ !WARN_ON_ONCE(call->depth < 0))
- cpu_data->enter_funcs[call->depth] = 0;
- }
-
-@@ -818,11 +823,16 @@ print_graph_entry_nested(struct trace_iterator *iter,
- struct fgraph_cpu_data *cpu_data;
- int cpu = iter->cpu;
-
-+ /* If a graph tracer ignored set_graph_notrace */
-+ if (call->depth < -1)
-+ call->depth += FTRACE_NOTRACE_DEPTH;
-+
- cpu_data = per_cpu_ptr(data->cpu_data, cpu);
- cpu_data->depth = call->depth;
-
- /* Save this function pointer to see if the exit matches */
-- if (call->depth < FTRACE_RETFUNC_DEPTH)
-+ if (call->depth < FTRACE_RETFUNC_DEPTH &&
-+ !WARN_ON_ONCE(call->depth < 0))
- cpu_data->enter_funcs[call->depth] = call->func;
- }
-
-@@ -1052,7 +1062,8 @@ print_graph_return(struct ftrace_graph_ret *trace, struct trace_seq *s,
- */
- cpu_data->depth = trace->depth - 1;
-
-- if (trace->depth < FTRACE_RETFUNC_DEPTH) {
-+ if (trace->depth < FTRACE_RETFUNC_DEPTH &&
-+ !WARN_ON_ONCE(trace->depth < 0)) {
- if (cpu_data->enter_funcs[trace->depth] != trace->func)
- func_match = 0;
- cpu_data->enter_funcs[trace->depth] = 0;
-diff --git a/net/ceph/messenger.c b/net/ceph/messenger.c
-index a550289..2efb335 100644
---- a/net/ceph/messenger.c
-+++ b/net/ceph/messenger.c
-@@ -2027,6 +2027,19 @@ static int process_connect(struct ceph_connection *con)
-
- dout("process_connect on %p tag %d\n", con, (int)con->in_tag);
-
-+ if (con->auth_reply_buf) {
-+ /*
-+ * Any connection that defines ->get_authorizer()
-+ * should also define ->verify_authorizer_reply().
-+ * See get_connect_authorizer().
-+ */
-+ ret = con->ops->verify_authorizer_reply(con, 0);
-+ if (ret < 0) {
-+ con->error_msg = "bad authorize reply";
-+ return ret;
-+ }
-+ }
-+
- switch (con->in_reply.tag) {
- case CEPH_MSGR_TAG_FEATURES:
- pr_err("%s%lld %s feature set mismatch,"
-diff --git a/net/mac80211/mlme.c b/net/mac80211/mlme.c
-index 8d426f6..b2e3c32 100644
---- a/net/mac80211/mlme.c
-+++ b/net/mac80211/mlme.c
-@@ -2506,7 +2506,7 @@ static void ieee80211_destroy_auth_data(struct ieee80211_sub_if_data *sdata,
- }
-
- static void ieee80211_destroy_assoc_data(struct ieee80211_sub_if_data *sdata,
-- bool assoc)
-+ bool assoc, bool abandon)
- {
- struct ieee80211_mgd_assoc_data *assoc_data = sdata->u.mgd.assoc_data;
-
-@@ -2529,6 +2529,9 @@ static void ieee80211_destroy_assoc_data(struct ieee80211_sub_if_data *sdata,
- mutex_lock(&sdata->local->mtx);
- ieee80211_vif_release_channel(sdata);
- mutex_unlock(&sdata->local->mtx);
-+
-+ if (abandon)
-+ cfg80211_abandon_assoc(sdata->dev, assoc_data->bss);
- }
-
- kfree(assoc_data);
-@@ -2758,7 +2761,7 @@ static void ieee80211_rx_mgmt_deauth(struct ieee80211_sub_if_data *sdata,
- bssid, reason_code,
- ieee80211_get_reason_code_string(reason_code));
-
-- ieee80211_destroy_assoc_data(sdata, false);
-+ ieee80211_destroy_assoc_data(sdata, false, true);
-
- cfg80211_rx_mlme_mgmt(sdata->dev, (u8 *)mgmt, len);
- return;
-@@ -3163,14 +3166,14 @@ static void ieee80211_rx_mgmt_assoc_resp(struct ieee80211_sub_if_data *sdata,
- if (status_code != WLAN_STATUS_SUCCESS) {
- sdata_info(sdata, "%pM denied association (code=%d)\n",
- mgmt->sa, status_code);
-- ieee80211_destroy_assoc_data(sdata, false);
-+ ieee80211_destroy_assoc_data(sdata, false, false);
- event.u.mlme.status = MLME_DENIED;
- event.u.mlme.reason = status_code;
- drv_event_callback(sdata->local, sdata, &event);
- } else {
- if (!ieee80211_assoc_success(sdata, bss, mgmt, len)) {
- /* oops -- internal error -- send timeout for now */
-- ieee80211_destroy_assoc_data(sdata, false);
-+ ieee80211_destroy_assoc_data(sdata, false, false);
- cfg80211_assoc_timeout(sdata->dev, bss);
- return;
- }
-@@ -3183,7 +3186,7 @@ static void ieee80211_rx_mgmt_assoc_resp(struct ieee80211_sub_if_data *sdata,
- * recalc after assoc_data is NULL but before associated
- * is set can cause the interface to go idle
- */
-- ieee80211_destroy_assoc_data(sdata, true);
-+ ieee80211_destroy_assoc_data(sdata, true, false);
-
- /* get uapsd queues configuration */
- uapsd_queues = 0;
-@@ -3882,7 +3885,7 @@ void ieee80211_sta_work(struct ieee80211_sub_if_data *sdata)
- .u.mlme.status = MLME_TIMEOUT,
- };
-
-- ieee80211_destroy_assoc_data(sdata, false);
-+ ieee80211_destroy_assoc_data(sdata, false, false);
- cfg80211_assoc_timeout(sdata->dev, bss);
- drv_event_callback(sdata->local, sdata, &event);
- }
-@@ -4021,7 +4024,7 @@ void ieee80211_mgd_quiesce(struct ieee80211_sub_if_data *sdata)
- WLAN_REASON_DEAUTH_LEAVING,
- false, frame_buf);
- if (ifmgd->assoc_data)
-- ieee80211_destroy_assoc_data(sdata, false);
-+ ieee80211_destroy_assoc_data(sdata, false, true);
- if (ifmgd->auth_data)
- ieee80211_destroy_auth_data(sdata, false);
- cfg80211_tx_mlme_mgmt(sdata->dev, frame_buf,
-@@ -4903,7 +4906,7 @@ int ieee80211_mgd_deauth(struct ieee80211_sub_if_data *sdata,
- IEEE80211_STYPE_DEAUTH,
- req->reason_code, tx,
- frame_buf);
-- ieee80211_destroy_assoc_data(sdata, false);
-+ ieee80211_destroy_assoc_data(sdata, false, true);
- ieee80211_report_disconnect(sdata, frame_buf,
- sizeof(frame_buf), true,
- req->reason_code);
-@@ -4978,7 +4981,7 @@ void ieee80211_mgd_stop(struct ieee80211_sub_if_data *sdata)
- sdata_lock(sdata);
- if (ifmgd->assoc_data) {
- struct cfg80211_bss *bss = ifmgd->assoc_data->bss;
-- ieee80211_destroy_assoc_data(sdata, false);
-+ ieee80211_destroy_assoc_data(sdata, false, false);
- cfg80211_assoc_timeout(sdata->dev, bss);
- }
- if (ifmgd->auth_data)
-diff --git a/net/sunrpc/auth_gss/auth_gss.c b/net/sunrpc/auth_gss/auth_gss.c
-index 976c781..a0110c2 100644
---- a/net/sunrpc/auth_gss/auth_gss.c
-+++ b/net/sunrpc/auth_gss/auth_gss.c
-@@ -541,9 +541,13 @@ gss_setup_upcall(struct gss_auth *gss_auth, struct rpc_cred *cred)
- return gss_new;
- gss_msg = gss_add_msg(gss_new);
- if (gss_msg == gss_new) {
-- int res = rpc_queue_upcall(gss_new->pipe, &gss_new->msg);
-+ int res;
-+ atomic_inc(&gss_msg->count);
-+ res = rpc_queue_upcall(gss_new->pipe, &gss_new->msg);
- if (res) {
- gss_unhash_msg(gss_new);
-+ atomic_dec(&gss_msg->count);
-+ gss_release_msg(gss_new);
- gss_msg = ERR_PTR(res);
- }
- } else
-@@ -836,6 +840,7 @@ gss_pipe_destroy_msg(struct rpc_pipe_msg *msg)
- warn_gssd();
- gss_release_msg(gss_msg);
- }
-+ gss_release_msg(gss_msg);
- }
-
- static void gss_pipe_dentry_destroy(struct dentry *dir,
-diff --git a/net/vmw_vsock/virtio_transport_common.c b/net/vmw_vsock/virtio_transport_common.c
-index a53b3a1..62c056e 100644
---- a/net/vmw_vsock/virtio_transport_common.c
-+++ b/net/vmw_vsock/virtio_transport_common.c
-@@ -606,9 +606,9 @@ static int virtio_transport_reset_no_sock(struct virtio_vsock_pkt *pkt)
- return 0;
-
- pkt = virtio_transport_alloc_pkt(&info, 0,
-- le32_to_cpu(pkt->hdr.dst_cid),
-+ le64_to_cpu(pkt->hdr.dst_cid),
- le32_to_cpu(pkt->hdr.dst_port),
-- le32_to_cpu(pkt->hdr.src_cid),
-+ le64_to_cpu(pkt->hdr.src_cid),
- le32_to_cpu(pkt->hdr.src_port));
- if (!pkt)
- return -ENOMEM;
-@@ -823,7 +823,7 @@ virtio_transport_send_response(struct vsock_sock *vsk,
- struct virtio_vsock_pkt_info info = {
- .op = VIRTIO_VSOCK_OP_RESPONSE,
- .type = VIRTIO_VSOCK_TYPE_STREAM,
-- .remote_cid = le32_to_cpu(pkt->hdr.src_cid),
-+ .remote_cid = le64_to_cpu(pkt->hdr.src_cid),
- .remote_port = le32_to_cpu(pkt->hdr.src_port),
- .reply = true,
- };
-@@ -863,9 +863,9 @@ virtio_transport_recv_listen(struct sock *sk, struct virtio_vsock_pkt *pkt)
- child->sk_state = SS_CONNECTED;
-
- vchild = vsock_sk(child);
-- vsock_addr_init(&vchild->local_addr, le32_to_cpu(pkt->hdr.dst_cid),
-+ vsock_addr_init(&vchild->local_addr, le64_to_cpu(pkt->hdr.dst_cid),
- le32_to_cpu(pkt->hdr.dst_port));
-- vsock_addr_init(&vchild->remote_addr, le32_to_cpu(pkt->hdr.src_cid),
-+ vsock_addr_init(&vchild->remote_addr, le64_to_cpu(pkt->hdr.src_cid),
- le32_to_cpu(pkt->hdr.src_port));
-
- vsock_insert_connected(vchild);
-@@ -904,9 +904,9 @@ void virtio_transport_recv_pkt(struct virtio_vsock_pkt *pkt)
- struct sock *sk;
- bool space_available;
-
-- vsock_addr_init(&src, le32_to_cpu(pkt->hdr.src_cid),
-+ vsock_addr_init(&src, le64_to_cpu(pkt->hdr.src_cid),
- le32_to_cpu(pkt->hdr.src_port));
-- vsock_addr_init(&dst, le32_to_cpu(pkt->hdr.dst_cid),
-+ vsock_addr_init(&dst, le64_to_cpu(pkt->hdr.dst_cid),
- le32_to_cpu(pkt->hdr.dst_port));
-
- trace_virtio_transport_recv_pkt(src.svm_cid, src.svm_port,
-diff --git a/net/wireless/core.h b/net/wireless/core.h
-index 66f2a11..b5cf218 100644
---- a/net/wireless/core.h
-+++ b/net/wireless/core.h
-@@ -410,6 +410,7 @@ void cfg80211_sme_disassoc(struct wireless_dev *wdev);
- void cfg80211_sme_deauth(struct wireless_dev *wdev);
- void cfg80211_sme_auth_timeout(struct wireless_dev *wdev);
- void cfg80211_sme_assoc_timeout(struct wireless_dev *wdev);
-+void cfg80211_sme_abandon_assoc(struct wireless_dev *wdev);
-
- /* internal helpers */
- bool cfg80211_supported_cipher_suite(struct wiphy *wiphy, u32 cipher);
-diff --git a/net/wireless/mlme.c b/net/wireless/mlme.c
-index c284d88..2a62ef6 100644
---- a/net/wireless/mlme.c
-+++ b/net/wireless/mlme.c
-@@ -149,6 +149,18 @@ void cfg80211_assoc_timeout(struct net_device *dev, struct cfg80211_bss *bss)
- }
- EXPORT_SYMBOL(cfg80211_assoc_timeout);
-
-+void cfg80211_abandon_assoc(struct net_device *dev, struct cfg80211_bss *bss)
-+{
-+ struct wireless_dev *wdev = dev->ieee80211_ptr;
-+ struct wiphy *wiphy = wdev->wiphy;
-+
-+ cfg80211_sme_abandon_assoc(wdev);
-+
-+ cfg80211_unhold_bss(bss_from_pub(bss));
-+ cfg80211_put_bss(wiphy, bss);
-+}
-+EXPORT_SYMBOL(cfg80211_abandon_assoc);
-+
- void cfg80211_tx_mlme_mgmt(struct net_device *dev, const u8 *buf, size_t len)
- {
- struct wireless_dev *wdev = dev->ieee80211_ptr;
-diff --git a/net/wireless/sme.c b/net/wireless/sme.c
-index add6824..95c713c 100644
---- a/net/wireless/sme.c
-+++ b/net/wireless/sme.c
-@@ -39,6 +39,7 @@ struct cfg80211_conn {
- CFG80211_CONN_ASSOCIATING,
- CFG80211_CONN_ASSOC_FAILED,
- CFG80211_CONN_DEAUTH,
-+ CFG80211_CONN_ABANDON,
- CFG80211_CONN_CONNECTED,
- } state;
- u8 bssid[ETH_ALEN], prev_bssid[ETH_ALEN];
-@@ -206,6 +207,8 @@ static int cfg80211_conn_do_work(struct wireless_dev *wdev)
- cfg80211_mlme_deauth(rdev, wdev->netdev, params->bssid,
- NULL, 0,
- WLAN_REASON_DEAUTH_LEAVING, false);
-+ /* fall through */
-+ case CFG80211_CONN_ABANDON:
- /* free directly, disconnected event already sent */
- cfg80211_sme_free(wdev);
- return 0;
-@@ -423,6 +426,17 @@ void cfg80211_sme_assoc_timeout(struct wireless_dev *wdev)
- schedule_work(&rdev->conn_work);
- }
-
-+void cfg80211_sme_abandon_assoc(struct wireless_dev *wdev)
-+{
-+ struct cfg80211_registered_device *rdev = wiphy_to_rdev(wdev->wiphy);
-+
-+ if (!wdev->conn)
-+ return;
-+
-+ wdev->conn->state = CFG80211_CONN_ABANDON;
-+ schedule_work(&rdev->conn_work);
-+}
-+
- static int cfg80211_sme_get_conn_ies(struct wireless_dev *wdev,
- const u8 *ies, size_t ies_len,
- const u8 **out_ies, size_t *out_ies_len)
-diff --git a/scripts/kconfig/nconf.gui.c b/scripts/kconfig/nconf.gui.c
-index 8275f0e5..4b2f44c 100644
---- a/scripts/kconfig/nconf.gui.c
-+++ b/scripts/kconfig/nconf.gui.c
-@@ -364,12 +364,14 @@ int dialog_inputbox(WINDOW *main_window,
- WINDOW *prompt_win;
- WINDOW *form_win;
- PANEL *panel;
-- int i, x, y;
-+ int i, x, y, lines, columns, win_lines, win_cols;
- int res = -1;
- int cursor_position = strlen(init);
- int cursor_form_win;
- char *result = *resultp;
-
-+ getmaxyx(stdscr, lines, columns);
-+
- if (strlen(init)+1 > *result_len) {
- *result_len = strlen(init)+1;
- *resultp = result = realloc(result, *result_len);
-@@ -386,14 +388,19 @@ int dialog_inputbox(WINDOW *main_window,
- if (title)
- prompt_width = max(prompt_width, strlen(title));
-
-+ win_lines = min(prompt_lines+6, lines-2);
-+ win_cols = min(prompt_width+7, columns-2);
-+ prompt_lines = max(win_lines-6, 0);
-+ prompt_width = max(win_cols-7, 0);
-+
- /* place dialog in middle of screen */
-- y = (getmaxy(stdscr)-(prompt_lines+4))/2;
-- x = (getmaxx(stdscr)-(prompt_width+4))/2;
-+ y = (lines-win_lines)/2;
-+ x = (columns-win_cols)/2;
-
- strncpy(result, init, *result_len);
-
- /* create the windows */
-- win = newwin(prompt_lines+6, prompt_width+7, y, x);
-+ win = newwin(win_lines, win_cols, y, x);
- prompt_win = derwin(win, prompt_lines+1, prompt_width, 2, 2);
- form_win = derwin(win, 1, prompt_width, prompt_lines+3, 2);
- keypad(form_win, TRUE);
diff --git a/4.8.17/0000_README b/4.9.9/0000_README
index 96fd06a..e2a9385 100644
--- a/4.8.17/0000_README
+++ b/4.9.9/0000_README
@@ -2,11 +2,15 @@ README
-----------------------------------------------------------------------------
Individual Patch Descriptions:
-----------------------------------------------------------------------------
-Patch: 1016_linux-4.8.17.patch
+Patch: 1007_linux-4.9.8.patch
From: http://www.kernel.org
-Desc: Linux 4.8.17
+Desc: Linux 4.9.8
-Patch: 4420_grsecurity-3.1-4.8.17-201701151620.patch
+Patch: 1008_linux-4.9.9.patch
+From: http://www.kernel.org
+Desc: Linux 4.9.9
+
+Patch: 4420_grsecurity-3.1-4.9.9-201702122044.patch
From: http://www.grsecurity.net
Desc: hardened-sources base patch from upstream grsecurity
diff --git a/4.9.9/1007_linux-4.9.8.patch b/4.9.9/1007_linux-4.9.8.patch
new file mode 100644
index 0000000..a93aab4
--- /dev/null
+++ b/4.9.9/1007_linux-4.9.8.patch
@@ -0,0 +1,2048 @@
+diff --git a/Makefile b/Makefile
+index da704d9..1130803 100644
+--- a/Makefile
++++ b/Makefile
+@@ -1,6 +1,6 @@
+ VERSION = 4
+ PATCHLEVEL = 9
+-SUBLEVEL = 7
++SUBLEVEL = 8
+ EXTRAVERSION =
+ NAME = Roaring Lionus
+
+diff --git a/drivers/net/ethernet/broadcom/bcmsysport.c b/drivers/net/ethernet/broadcom/bcmsysport.c
+index 25d1eb4..be7ec5a 100644
+--- a/drivers/net/ethernet/broadcom/bcmsysport.c
++++ b/drivers/net/ethernet/broadcom/bcmsysport.c
+@@ -710,11 +710,8 @@ static unsigned int __bcm_sysport_tx_reclaim(struct bcm_sysport_priv *priv,
+ unsigned int c_index, last_c_index, last_tx_cn, num_tx_cbs;
+ unsigned int pkts_compl = 0, bytes_compl = 0;
+ struct bcm_sysport_cb *cb;
+- struct netdev_queue *txq;
+ u32 hw_ind;
+
+- txq = netdev_get_tx_queue(ndev, ring->index);
+-
+ /* Compute how many descriptors have been processed since last call */
+ hw_ind = tdma_readl(priv, TDMA_DESC_RING_PROD_CONS_INDEX(ring->index));
+ c_index = (hw_ind >> RING_CONS_INDEX_SHIFT) & RING_CONS_INDEX_MASK;
+@@ -745,9 +742,6 @@ static unsigned int __bcm_sysport_tx_reclaim(struct bcm_sysport_priv *priv,
+
+ ring->c_index = c_index;
+
+- if (netif_tx_queue_stopped(txq) && pkts_compl)
+- netif_tx_wake_queue(txq);
+-
+ netif_dbg(priv, tx_done, ndev,
+ "ring=%d c_index=%d pkts_compl=%d, bytes_compl=%d\n",
+ ring->index, ring->c_index, pkts_compl, bytes_compl);
+@@ -759,16 +753,33 @@ static unsigned int __bcm_sysport_tx_reclaim(struct bcm_sysport_priv *priv,
+ static unsigned int bcm_sysport_tx_reclaim(struct bcm_sysport_priv *priv,
+ struct bcm_sysport_tx_ring *ring)
+ {
++ struct netdev_queue *txq;
+ unsigned int released;
+ unsigned long flags;
+
++ txq = netdev_get_tx_queue(priv->netdev, ring->index);
++
+ spin_lock_irqsave(&ring->lock, flags);
+ released = __bcm_sysport_tx_reclaim(priv, ring);
++ if (released)
++ netif_tx_wake_queue(txq);
++
+ spin_unlock_irqrestore(&ring->lock, flags);
+
+ return released;
+ }
+
++/* Locked version of the per-ring TX reclaim, but does not wake the queue */
++static void bcm_sysport_tx_clean(struct bcm_sysport_priv *priv,
++ struct bcm_sysport_tx_ring *ring)
++{
++ unsigned long flags;
++
++ spin_lock_irqsave(&ring->lock, flags);
++ __bcm_sysport_tx_reclaim(priv, ring);
++ spin_unlock_irqrestore(&ring->lock, flags);
++}
++
+ static int bcm_sysport_tx_poll(struct napi_struct *napi, int budget)
+ {
+ struct bcm_sysport_tx_ring *ring =
+@@ -1253,7 +1264,7 @@ static void bcm_sysport_fini_tx_ring(struct bcm_sysport_priv *priv,
+ napi_disable(&ring->napi);
+ netif_napi_del(&ring->napi);
+
+- bcm_sysport_tx_reclaim(priv, ring);
++ bcm_sysport_tx_clean(priv, ring);
+
+ kfree(ring->cbs);
+ ring->cbs = NULL;
+diff --git a/drivers/net/ethernet/mellanox/mlx4/en_netdev.c b/drivers/net/ethernet/mellanox/mlx4/en_netdev.c
+index fb8bb02..d223e7c 100644
+--- a/drivers/net/ethernet/mellanox/mlx4/en_netdev.c
++++ b/drivers/net/ethernet/mellanox/mlx4/en_netdev.c
+@@ -1740,8 +1740,11 @@ int mlx4_en_start_port(struct net_device *dev)
+ /* Process all completions if exist to prevent
+ * the queues freezing if they are full
+ */
+- for (i = 0; i < priv->rx_ring_num; i++)
++ for (i = 0; i < priv->rx_ring_num; i++) {
++ local_bh_disable();
+ napi_schedule(&priv->rx_cq[i]->napi);
++ local_bh_enable();
++ }
+
+ netif_tx_start_all_queues(dev);
+ netif_device_attach(dev);
+diff --git a/drivers/net/ethernet/mellanox/mlx5/core/en_rx.c b/drivers/net/ethernet/mellanox/mlx5/core/en_rx.c
+index 33495d8..e7b2158 100644
+--- a/drivers/net/ethernet/mellanox/mlx5/core/en_rx.c
++++ b/drivers/net/ethernet/mellanox/mlx5/core/en_rx.c
+@@ -193,6 +193,9 @@ static inline bool mlx5e_rx_cache_put(struct mlx5e_rq *rq,
+ return false;
+ }
+
++ if (unlikely(page_is_pfmemalloc(dma_info->page)))
++ return false;
++
+ cache->page_cache[cache->tail] = *dma_info;
+ cache->tail = tail_next;
+ return true;
+diff --git a/drivers/net/ethernet/mellanox/mlxsw/pci.h b/drivers/net/ethernet/mellanox/mlxsw/pci.h
+index d942a3e..846fd4d 100644
+--- a/drivers/net/ethernet/mellanox/mlxsw/pci.h
++++ b/drivers/net/ethernet/mellanox/mlxsw/pci.h
+@@ -211,21 +211,21 @@ MLXSW_ITEM32(pci, eqe, owner, 0x0C, 0, 1);
+ /* pci_eqe_cmd_token
+ * Command completion event - token
+ */
+-MLXSW_ITEM32(pci, eqe, cmd_token, 0x08, 16, 16);
++MLXSW_ITEM32(pci, eqe, cmd_token, 0x00, 16, 16);
+
+ /* pci_eqe_cmd_status
+ * Command completion event - status
+ */
+-MLXSW_ITEM32(pci, eqe, cmd_status, 0x08, 0, 8);
++MLXSW_ITEM32(pci, eqe, cmd_status, 0x00, 0, 8);
+
+ /* pci_eqe_cmd_out_param_h
+ * Command completion event - output parameter - higher part
+ */
+-MLXSW_ITEM32(pci, eqe, cmd_out_param_h, 0x0C, 0, 32);
++MLXSW_ITEM32(pci, eqe, cmd_out_param_h, 0x04, 0, 32);
+
+ /* pci_eqe_cmd_out_param_l
+ * Command completion event - output parameter - lower part
+ */
+-MLXSW_ITEM32(pci, eqe, cmd_out_param_l, 0x10, 0, 32);
++MLXSW_ITEM32(pci, eqe, cmd_out_param_l, 0x08, 0, 32);
+
+ #endif
+diff --git a/drivers/net/ethernet/mellanox/mlxsw/spectrum.c b/drivers/net/ethernet/mellanox/mlxsw/spectrum.c
+index dda5761..f902c4d 100644
+--- a/drivers/net/ethernet/mellanox/mlxsw/spectrum.c
++++ b/drivers/net/ethernet/mellanox/mlxsw/spectrum.c
+@@ -684,6 +684,7 @@ static netdev_tx_t mlxsw_sp_port_xmit(struct sk_buff *skb,
+ dev_kfree_skb_any(skb_orig);
+ return NETDEV_TX_OK;
+ }
++ dev_consume_skb_any(skb_orig);
+ }
+
+ if (eth_skb_pad(skb)) {
+diff --git a/drivers/net/ethernet/mellanox/mlxsw/switchx2.c b/drivers/net/ethernet/mellanox/mlxsw/switchx2.c
+index 92bda87..d548f0a 100644
+--- a/drivers/net/ethernet/mellanox/mlxsw/switchx2.c
++++ b/drivers/net/ethernet/mellanox/mlxsw/switchx2.c
+@@ -314,6 +314,7 @@ static netdev_tx_t mlxsw_sx_port_xmit(struct sk_buff *skb,
+ dev_kfree_skb_any(skb_orig);
+ return NETDEV_TX_OK;
+ }
++ dev_consume_skb_any(skb_orig);
+ }
+ mlxsw_sx_txhdr_construct(skb, &tx_info);
+ /* TX header is consumed by HW on the way so we shouldn't count its
+diff --git a/drivers/net/ethernet/renesas/ravb_main.c b/drivers/net/ethernet/renesas/ravb_main.c
+index d6a2178..862f18e 100644
+--- a/drivers/net/ethernet/renesas/ravb_main.c
++++ b/drivers/net/ethernet/renesas/ravb_main.c
+@@ -1508,6 +1508,19 @@ static netdev_tx_t ravb_start_xmit(struct sk_buff *skb, struct net_device *ndev)
+ buffer = PTR_ALIGN(priv->tx_align[q], DPTR_ALIGN) +
+ entry / NUM_TX_DESC * DPTR_ALIGN;
+ len = PTR_ALIGN(skb->data, DPTR_ALIGN) - skb->data;
++ /* Zero length DMA descriptors are problematic as they seem to
++ * terminate DMA transfers. Avoid them by simply using a length of
++ * DPTR_ALIGN (4) when skb data is aligned to DPTR_ALIGN.
++ *
++ * As skb is guaranteed to have at least ETH_ZLEN (60) bytes of
++ * data by the call to skb_put_padto() above this is safe with
++ * respect to both the length of the first DMA descriptor (len)
++ * overflowing the available data and the length of the second DMA
++ * descriptor (skb->len - len) being negative.
++ */
++ if (len == 0)
++ len = DPTR_ALIGN;
++
+ memcpy(buffer, skb->data, len);
+ dma_addr = dma_map_single(ndev->dev.parent, buffer, len, DMA_TO_DEVICE);
+ if (dma_mapping_error(ndev->dev.parent, dma_addr))
+diff --git a/drivers/net/hyperv/netvsc_drv.c b/drivers/net/hyperv/netvsc_drv.c
+index c9140c3..ff038e5 100644
+--- a/drivers/net/hyperv/netvsc_drv.c
++++ b/drivers/net/hyperv/netvsc_drv.c
+@@ -659,6 +659,7 @@ int netvsc_recv_callback(struct hv_device *device_obj,
+ * policy filters on the host). Deliver these via the VF
+ * interface in the guest.
+ */
++ rcu_read_lock();
+ vf_netdev = rcu_dereference(net_device_ctx->vf_netdev);
+ if (vf_netdev && (vf_netdev->flags & IFF_UP))
+ net = vf_netdev;
+@@ -667,6 +668,7 @@ int netvsc_recv_callback(struct hv_device *device_obj,
+ skb = netvsc_alloc_recv_skb(net, packet, csum_info, *data, vlan_tci);
+ if (unlikely(!skb)) {
+ ++net->stats.rx_dropped;
++ rcu_read_unlock();
+ return NVSP_STAT_FAIL;
+ }
+
+@@ -696,6 +698,7 @@ int netvsc_recv_callback(struct hv_device *device_obj,
+ * TODO - use NAPI?
+ */
+ netif_rx(skb);
++ rcu_read_unlock();
+
+ return 0;
+ }
+diff --git a/drivers/net/macvtap.c b/drivers/net/macvtap.c
+index 7869b06..6f38daf 100644
+--- a/drivers/net/macvtap.c
++++ b/drivers/net/macvtap.c
+@@ -827,7 +827,7 @@ static ssize_t macvtap_put_user(struct macvtap_queue *q,
+ return -EINVAL;
+
+ ret = virtio_net_hdr_from_skb(skb, &vnet_hdr,
+- macvtap_is_little_endian(q));
++ macvtap_is_little_endian(q), true);
+ if (ret)
+ BUG();
+
+diff --git a/drivers/net/phy/bcm63xx.c b/drivers/net/phy/bcm63xx.c
+index e741bf6..b0492ef 100644
+--- a/drivers/net/phy/bcm63xx.c
++++ b/drivers/net/phy/bcm63xx.c
+@@ -21,6 +21,23 @@ MODULE_DESCRIPTION("Broadcom 63xx internal PHY driver");
+ MODULE_AUTHOR("Maxime Bizon <mbizon@freebox.fr>");
+ MODULE_LICENSE("GPL");
+
++static int bcm63xx_config_intr(struct phy_device *phydev)
++{
++ int reg, err;
++
++ reg = phy_read(phydev, MII_BCM63XX_IR);
++ if (reg < 0)
++ return reg;
++
++ if (phydev->interrupts == PHY_INTERRUPT_ENABLED)
++ reg &= ~MII_BCM63XX_IR_GMASK;
++ else
++ reg |= MII_BCM63XX_IR_GMASK;
++
++ err = phy_write(phydev, MII_BCM63XX_IR, reg);
++ return err;
++}
++
+ static int bcm63xx_config_init(struct phy_device *phydev)
+ {
+ int reg, err;
+@@ -55,7 +72,7 @@ static struct phy_driver bcm63xx_driver[] = {
+ .config_aneg = genphy_config_aneg,
+ .read_status = genphy_read_status,
+ .ack_interrupt = bcm_phy_ack_intr,
+- .config_intr = bcm_phy_config_intr,
++ .config_intr = bcm63xx_config_intr,
+ }, {
+ /* same phy as above, with just a different OUI */
+ .phy_id = 0x002bdc00,
+@@ -67,7 +84,7 @@ static struct phy_driver bcm63xx_driver[] = {
+ .config_aneg = genphy_config_aneg,
+ .read_status = genphy_read_status,
+ .ack_interrupt = bcm_phy_ack_intr,
+- .config_intr = bcm_phy_config_intr,
++ .config_intr = bcm63xx_config_intr,
+ } };
+
+ module_phy_driver(bcm63xx_driver);
+diff --git a/drivers/net/tun.c b/drivers/net/tun.c
+index db6acec..18402d7 100644
+--- a/drivers/net/tun.c
++++ b/drivers/net/tun.c
+@@ -1374,7 +1374,7 @@ static ssize_t tun_put_user(struct tun_struct *tun,
+ return -EINVAL;
+
+ ret = virtio_net_hdr_from_skb(skb, &gso,
+- tun_is_little_endian(tun));
++ tun_is_little_endian(tun), true);
+ if (ret) {
+ struct skb_shared_info *sinfo = skb_shinfo(skb);
+ pr_err("unexpected GSO type: "
+diff --git a/drivers/net/usb/cdc_ether.c b/drivers/net/usb/cdc_ether.c
+index dd623f6..b82be81 100644
+--- a/drivers/net/usb/cdc_ether.c
++++ b/drivers/net/usb/cdc_ether.c
+@@ -531,6 +531,7 @@ static const struct driver_info wwan_info = {
+ #define SAMSUNG_VENDOR_ID 0x04e8
+ #define LENOVO_VENDOR_ID 0x17ef
+ #define NVIDIA_VENDOR_ID 0x0955
++#define HP_VENDOR_ID 0x03f0
+
+ static const struct usb_device_id products[] = {
+ /* BLACKLIST !!
+@@ -677,6 +678,13 @@ static const struct usb_device_id products[] = {
+ .driver_info = 0,
+ },
+
++/* HP lt2523 (Novatel E371) - handled by qmi_wwan */
++{
++ USB_DEVICE_AND_INTERFACE_INFO(HP_VENDOR_ID, 0x421d, USB_CLASS_COMM,
++ USB_CDC_SUBCLASS_ETHERNET, USB_CDC_PROTO_NONE),
++ .driver_info = 0,
++},
++
+ /* AnyDATA ADU960S - handled by qmi_wwan */
+ {
+ USB_DEVICE_AND_INTERFACE_INFO(0x16d5, 0x650a, USB_CLASS_COMM,
+diff --git a/drivers/net/usb/qmi_wwan.c b/drivers/net/usb/qmi_wwan.c
+index 6fe1cdb..24d5272 100644
+--- a/drivers/net/usb/qmi_wwan.c
++++ b/drivers/net/usb/qmi_wwan.c
+@@ -654,6 +654,13 @@ static const struct usb_device_id products[] = {
+ USB_CDC_PROTO_NONE),
+ .driver_info = (unsigned long)&qmi_wwan_info,
+ },
++ { /* HP lt2523 (Novatel E371) */
++ USB_DEVICE_AND_INTERFACE_INFO(0x03f0, 0x421d,
++ USB_CLASS_COMM,
++ USB_CDC_SUBCLASS_ETHERNET,
++ USB_CDC_PROTO_NONE),
++ .driver_info = (unsigned long)&qmi_wwan_info,
++ },
+ { /* HP lt4112 LTE/HSPA+ Gobi 4G Module (Huawei me906e) */
+ USB_DEVICE_AND_INTERFACE_INFO(0x03f0, 0x581d, USB_CLASS_VENDOR_SPEC, 1, 7),
+ .driver_info = (unsigned long)&qmi_wwan_info,
+diff --git a/drivers/net/usb/r8152.c b/drivers/net/usb/r8152.c
+index 4b5cb16..90b426c 100644
+--- a/drivers/net/usb/r8152.c
++++ b/drivers/net/usb/r8152.c
+@@ -32,7 +32,7 @@
+ #define NETNEXT_VERSION "08"
+
+ /* Information for net */
+-#define NET_VERSION "6"
++#define NET_VERSION "7"
+
+ #define DRIVER_VERSION "v1." NETNEXT_VERSION "." NET_VERSION
+ #define DRIVER_AUTHOR "Realtek linux nic maintainers <nic_swsd@realtek.com>"
+@@ -1730,7 +1730,7 @@ static u8 r8152_rx_csum(struct r8152 *tp, struct rx_desc *rx_desc)
+ u8 checksum = CHECKSUM_NONE;
+ u32 opts2, opts3;
+
+- if (tp->version == RTL_VER_01 || tp->version == RTL_VER_02)
++ if (!(tp->netdev->features & NETIF_F_RXCSUM))
+ goto return_result;
+
+ opts2 = le32_to_cpu(rx_desc->opts2);
+@@ -3572,6 +3572,8 @@ static bool delay_autosuspend(struct r8152 *tp)
+ */
+ if (!sw_linking && tp->rtl_ops.in_nway(tp))
+ return true;
++ else if (!skb_queue_empty(&tp->tx_queue))
++ return true;
+ else
+ return false;
+ }
+@@ -4358,6 +4360,11 @@ static int rtl8152_probe(struct usb_interface *intf,
+ NETIF_F_HIGHDMA | NETIF_F_FRAGLIST |
+ NETIF_F_IPV6_CSUM | NETIF_F_TSO6;
+
++ if (tp->version == RTL_VER_01) {
++ netdev->features &= ~NETIF_F_RXCSUM;
++ netdev->hw_features &= ~NETIF_F_RXCSUM;
++ }
++
+ netdev->ethtool_ops = &ops;
+ netif_set_gso_max_size(netdev, RTL_LIMITED_TSO_SIZE);
+
+diff --git a/drivers/net/virtio_net.c b/drivers/net/virtio_net.c
+index cbf1c61..51fc0c3 100644
+--- a/drivers/net/virtio_net.c
++++ b/drivers/net/virtio_net.c
+@@ -840,7 +840,7 @@ static int xmit_skb(struct send_queue *sq, struct sk_buff *skb)
+ hdr = skb_vnet_hdr(skb);
+
+ if (virtio_net_hdr_from_skb(skb, &hdr->hdr,
+- virtio_is_little_endian(vi->vdev)))
++ virtio_is_little_endian(vi->vdev), false))
+ BUG();
+
+ if (vi->mergeable_rx_bufs)
+diff --git a/drivers/net/vxlan.c b/drivers/net/vxlan.c
+index 2ba01ca..0fafaa9 100644
+--- a/drivers/net/vxlan.c
++++ b/drivers/net/vxlan.c
+@@ -2887,7 +2887,7 @@ static int vxlan_dev_configure(struct net *src_net, struct net_device *dev,
+ memcpy(&vxlan->cfg, conf, sizeof(*conf));
+ if (!vxlan->cfg.dst_port) {
+ if (conf->flags & VXLAN_F_GPE)
+- vxlan->cfg.dst_port = 4790; /* IANA assigned VXLAN-GPE port */
++ vxlan->cfg.dst_port = htons(4790); /* IANA VXLAN-GPE port */
+ else
+ vxlan->cfg.dst_port = default_port;
+ }
+diff --git a/fs/xfs/libxfs/xfs_alloc.c b/fs/xfs/libxfs/xfs_alloc.c
+index 5050056..9f06a21 100644
+--- a/fs/xfs/libxfs/xfs_alloc.c
++++ b/fs/xfs/libxfs/xfs_alloc.c
+@@ -95,10 +95,7 @@ unsigned int
+ xfs_alloc_set_aside(
+ struct xfs_mount *mp)
+ {
+- unsigned int blocks;
+-
+- blocks = 4 + (mp->m_sb.sb_agcount * XFS_ALLOC_AGFL_RESERVE);
+- return blocks;
++ return mp->m_sb.sb_agcount * (XFS_ALLOC_AGFL_RESERVE + 4);
+ }
+
+ /*
+@@ -365,36 +362,12 @@ xfs_alloc_fix_len(
+ return;
+ ASSERT(rlen >= args->minlen && rlen <= args->maxlen);
+ ASSERT(rlen % args->prod == args->mod);
++ ASSERT(args->pag->pagf_freeblks + args->pag->pagf_flcount >=
++ rlen + args->minleft);
+ args->len = rlen;
+ }
+
+ /*
+- * Fix up length if there is too little space left in the a.g.
+- * Return 1 if ok, 0 if too little, should give up.
+- */
+-STATIC int
+-xfs_alloc_fix_minleft(
+- xfs_alloc_arg_t *args) /* allocation argument structure */
+-{
+- xfs_agf_t *agf; /* a.g. freelist header */
+- int diff; /* free space difference */
+-
+- if (args->minleft == 0)
+- return 1;
+- agf = XFS_BUF_TO_AGF(args->agbp);
+- diff = be32_to_cpu(agf->agf_freeblks)
+- - args->len - args->minleft;
+- if (diff >= 0)
+- return 1;
+- args->len += diff; /* shrink the allocated space */
+- /* casts to (int) catch length underflows */
+- if ((int)args->len >= (int)args->minlen)
+- return 1;
+- args->agbno = NULLAGBLOCK;
+- return 0;
+-}
+-
+-/*
+ * Update the two btrees, logically removing from freespace the extent
+ * starting at rbno, rlen blocks. The extent is contained within the
+ * actual (current) free extent fbno for flen blocks.
+@@ -689,8 +662,6 @@ xfs_alloc_ag_vextent(
+ xfs_alloc_arg_t *args) /* argument structure for allocation */
+ {
+ int error=0;
+- xfs_extlen_t reservation;
+- xfs_extlen_t oldmax;
+
+ ASSERT(args->minlen > 0);
+ ASSERT(args->maxlen > 0);
+@@ -699,20 +670,6 @@ xfs_alloc_ag_vextent(
+ ASSERT(args->alignment > 0);
+
+ /*
+- * Clamp maxlen to the amount of free space minus any reservations
+- * that have been made.
+- */
+- oldmax = args->maxlen;
+- reservation = xfs_ag_resv_needed(args->pag, args->resv);
+- if (args->maxlen > args->pag->pagf_freeblks - reservation)
+- args->maxlen = args->pag->pagf_freeblks - reservation;
+- if (args->maxlen == 0) {
+- args->agbno = NULLAGBLOCK;
+- args->maxlen = oldmax;
+- return 0;
+- }
+-
+- /*
+ * Branch to correct routine based on the type.
+ */
+ args->wasfromfl = 0;
+@@ -731,8 +688,6 @@ xfs_alloc_ag_vextent(
+ /* NOTREACHED */
+ }
+
+- args->maxlen = oldmax;
+-
+ if (error || args->agbno == NULLAGBLOCK)
+ return error;
+
+@@ -841,9 +796,6 @@ xfs_alloc_ag_vextent_exact(
+ args->len = XFS_AGBLOCK_MIN(tend, args->agbno + args->maxlen)
+ - args->agbno;
+ xfs_alloc_fix_len(args);
+- if (!xfs_alloc_fix_minleft(args))
+- goto not_found;
+-
+ ASSERT(args->agbno + args->len <= tend);
+
+ /*
+@@ -1149,12 +1101,7 @@ xfs_alloc_ag_vextent_near(
+ XFS_WANT_CORRUPTED_GOTO(args->mp, i == 1, error0);
+ ASSERT(ltbno + ltlen <= be32_to_cpu(XFS_BUF_TO_AGF(args->agbp)->agf_length));
+ args->len = blen;
+- if (!xfs_alloc_fix_minleft(args)) {
+- xfs_btree_del_cursor(cnt_cur, XFS_BTREE_NOERROR);
+- trace_xfs_alloc_near_nominleft(args);
+- return 0;
+- }
+- blen = args->len;
++
+ /*
+ * We are allocating starting at bnew for blen blocks.
+ */
+@@ -1346,12 +1293,6 @@ xfs_alloc_ag_vextent_near(
+ */
+ args->len = XFS_EXTLEN_MIN(ltlena, args->maxlen);
+ xfs_alloc_fix_len(args);
+- if (!xfs_alloc_fix_minleft(args)) {
+- trace_xfs_alloc_near_nominleft(args);
+- xfs_btree_del_cursor(bno_cur_lt, XFS_BTREE_NOERROR);
+- xfs_btree_del_cursor(cnt_cur, XFS_BTREE_NOERROR);
+- return 0;
+- }
+ rlen = args->len;
+ (void)xfs_alloc_compute_diff(args->agbno, rlen, args->alignment,
+ args->datatype, ltbnoa, ltlena, &ltnew);
+@@ -1553,8 +1494,6 @@ xfs_alloc_ag_vextent_size(
+ }
+ xfs_alloc_fix_len(args);
+
+- if (!xfs_alloc_fix_minleft(args))
+- goto out_nominleft;
+ rlen = args->len;
+ XFS_WANT_CORRUPTED_GOTO(args->mp, rlen <= flen, error0);
+ /*
+@@ -2056,7 +1995,7 @@ xfs_alloc_space_available(
+ int flags)
+ {
+ struct xfs_perag *pag = args->pag;
+- xfs_extlen_t longest;
++ xfs_extlen_t alloc_len, longest;
+ xfs_extlen_t reservation; /* blocks that are still reserved */
+ int available;
+
+@@ -2066,17 +2005,28 @@ xfs_alloc_space_available(
+ reservation = xfs_ag_resv_needed(pag, args->resv);
+
+ /* do we have enough contiguous free space for the allocation? */
++ alloc_len = args->minlen + (args->alignment - 1) + args->minalignslop;
+ longest = xfs_alloc_longest_free_extent(args->mp, pag, min_free,
+ reservation);
+- if ((args->minlen + args->alignment + args->minalignslop - 1) > longest)
++ if (longest < alloc_len)
+ return false;
+
+ /* do we have enough free space remaining for the allocation? */
+ available = (int)(pag->pagf_freeblks + pag->pagf_flcount -
+- reservation - min_free - args->total);
+- if (available < (int)args->minleft || available <= 0)
++ reservation - min_free - args->minleft);
++ if (available < (int)max(args->total, alloc_len))
+ return false;
+
++ /*
++ * Clamp maxlen to the amount of free space available for the actual
++ * extent allocation.
++ */
++ if (available < (int)args->maxlen && !(flags & XFS_ALLOC_FLAG_CHECK)) {
++ args->maxlen = available;
++ ASSERT(args->maxlen > 0);
++ ASSERT(args->maxlen >= args->minlen);
++ }
++
+ return true;
+ }
+
+@@ -2122,7 +2072,8 @@ xfs_alloc_fix_freelist(
+ }
+
+ need = xfs_alloc_min_freelist(mp, pag);
+- if (!xfs_alloc_space_available(args, need, flags))
++ if (!xfs_alloc_space_available(args, need, flags |
++ XFS_ALLOC_FLAG_CHECK))
+ goto out_agbp_relse;
+
+ /*
+@@ -2638,12 +2589,10 @@ xfs_alloc_vextent(
+ xfs_agblock_t agsize; /* allocation group size */
+ int error;
+ int flags; /* XFS_ALLOC_FLAG_... locking flags */
+- xfs_extlen_t minleft;/* minimum left value, temp copy */
+ xfs_mount_t *mp; /* mount structure pointer */
+ xfs_agnumber_t sagno; /* starting allocation group number */
+ xfs_alloctype_t type; /* input allocation type */
+ int bump_rotor = 0;
+- int no_min = 0;
+ xfs_agnumber_t rotorstep = xfs_rotorstep; /* inode32 agf stepper */
+
+ mp = args->mp;
+@@ -2672,7 +2621,6 @@ xfs_alloc_vextent(
+ trace_xfs_alloc_vextent_badargs(args);
+ return 0;
+ }
+- minleft = args->minleft;
+
+ switch (type) {
+ case XFS_ALLOCTYPE_THIS_AG:
+@@ -2683,9 +2631,7 @@ xfs_alloc_vextent(
+ */
+ args->agno = XFS_FSB_TO_AGNO(mp, args->fsbno);
+ args->pag = xfs_perag_get(mp, args->agno);
+- args->minleft = 0;
+ error = xfs_alloc_fix_freelist(args, 0);
+- args->minleft = minleft;
+ if (error) {
+ trace_xfs_alloc_vextent_nofix(args);
+ goto error0;
+@@ -2750,9 +2696,7 @@ xfs_alloc_vextent(
+ */
+ for (;;) {
+ args->pag = xfs_perag_get(mp, args->agno);
+- if (no_min) args->minleft = 0;
+ error = xfs_alloc_fix_freelist(args, flags);
+- args->minleft = minleft;
+ if (error) {
+ trace_xfs_alloc_vextent_nofix(args);
+ goto error0;
+@@ -2792,20 +2736,17 @@ xfs_alloc_vextent(
+ * or switch to non-trylock mode.
+ */
+ if (args->agno == sagno) {
+- if (no_min == 1) {
++ if (flags == 0) {
+ args->agbno = NULLAGBLOCK;
+ trace_xfs_alloc_vextent_allfailed(args);
+ break;
+ }
+- if (flags == 0) {
+- no_min = 1;
+- } else {
+- flags = 0;
+- if (type == XFS_ALLOCTYPE_START_BNO) {
+- args->agbno = XFS_FSB_TO_AGBNO(mp,
+- args->fsbno);
+- args->type = XFS_ALLOCTYPE_NEAR_BNO;
+- }
++
++ flags = 0;
++ if (type == XFS_ALLOCTYPE_START_BNO) {
++ args->agbno = XFS_FSB_TO_AGBNO(mp,
++ args->fsbno);
++ args->type = XFS_ALLOCTYPE_NEAR_BNO;
+ }
+ }
+ xfs_perag_put(args->pag);
+diff --git a/fs/xfs/libxfs/xfs_alloc.h b/fs/xfs/libxfs/xfs_alloc.h
+index 7c404a6..1d0f48a 100644
+--- a/fs/xfs/libxfs/xfs_alloc.h
++++ b/fs/xfs/libxfs/xfs_alloc.h
+@@ -56,7 +56,7 @@ typedef unsigned int xfs_alloctype_t;
+ #define XFS_ALLOC_FLAG_FREEING 0x00000002 /* indicate caller is freeing extents*/
+ #define XFS_ALLOC_FLAG_NORMAP 0x00000004 /* don't modify the rmapbt */
+ #define XFS_ALLOC_FLAG_NOSHRINK 0x00000008 /* don't shrink the freelist */
+-
++#define XFS_ALLOC_FLAG_CHECK 0x00000010 /* test only, don't modify args */
+
+ /*
+ * Argument structure for xfs_alloc routines.
+diff --git a/fs/xfs/libxfs/xfs_attr.c b/fs/xfs/libxfs/xfs_attr.c
+index af1ecb1..6622d46 100644
+--- a/fs/xfs/libxfs/xfs_attr.c
++++ b/fs/xfs/libxfs/xfs_attr.c
+@@ -131,9 +131,6 @@ xfs_attr_get(
+ if (XFS_FORCED_SHUTDOWN(ip->i_mount))
+ return -EIO;
+
+- if (!xfs_inode_hasattr(ip))
+- return -ENOATTR;
+-
+ error = xfs_attr_args_init(&args, ip, name, flags);
+ if (error)
+ return error;
+@@ -392,9 +389,6 @@ xfs_attr_remove(
+ if (XFS_FORCED_SHUTDOWN(dp->i_mount))
+ return -EIO;
+
+- if (!xfs_inode_hasattr(dp))
+- return -ENOATTR;
+-
+ error = xfs_attr_args_init(&args, dp, name, flags);
+ if (error)
+ return error;
+diff --git a/fs/xfs/libxfs/xfs_bmap.c b/fs/xfs/libxfs/xfs_bmap.c
+index 89d727b..f52fd63 100644
+--- a/fs/xfs/libxfs/xfs_bmap.c
++++ b/fs/xfs/libxfs/xfs_bmap.c
+@@ -3720,7 +3720,7 @@ xfs_bmap_btalloc(
+ align = xfs_get_cowextsz_hint(ap->ip);
+ else if (xfs_alloc_is_userdata(ap->datatype))
+ align = xfs_get_extsz_hint(ap->ip);
+- if (unlikely(align)) {
++ if (align) {
+ error = xfs_bmap_extsize_align(mp, &ap->got, &ap->prev,
+ align, 0, ap->eof, 0, ap->conv,
+ &ap->offset, &ap->length);
+@@ -3792,7 +3792,7 @@ xfs_bmap_btalloc(
+ args.minlen = ap->minlen;
+ }
+ /* apply extent size hints if obtained earlier */
+- if (unlikely(align)) {
++ if (align) {
+ args.prod = align;
+ if ((args.mod = (xfs_extlen_t)do_mod(ap->offset, args.prod)))
+ args.mod = (xfs_extlen_t)(args.prod - args.mod);
+@@ -3903,7 +3903,6 @@ xfs_bmap_btalloc(
+ args.fsbno = 0;
+ args.type = XFS_ALLOCTYPE_FIRST_AG;
+ args.total = ap->minlen;
+- args.minleft = 0;
+ if ((error = xfs_alloc_vextent(&args)))
+ return error;
+ ap->dfops->dop_low = true;
+@@ -4437,8 +4436,6 @@ xfs_bmapi_allocate(
+ if (error)
+ return error;
+
+- if (bma->dfops->dop_low)
+- bma->minleft = 0;
+ if (bma->cur)
+ bma->cur->bc_private.b.firstblock = *bma->firstblock;
+ if (bma->blkno == NULLFSBLOCK)
+@@ -4610,8 +4607,6 @@ xfs_bmapi_write(
+ int n; /* current extent index */
+ xfs_fileoff_t obno; /* old block number (offset) */
+ int whichfork; /* data or attr fork */
+- char inhole; /* current location is hole in file */
+- char wasdelay; /* old extent was delayed */
+
+ #ifdef DEBUG
+ xfs_fileoff_t orig_bno; /* original block number value */
+@@ -4697,22 +4692,44 @@ xfs_bmapi_write(
+ bma.firstblock = firstblock;
+
+ while (bno < end && n < *nmap) {
+- inhole = eof || bma.got.br_startoff > bno;
+- wasdelay = !inhole && isnullstartblock(bma.got.br_startblock);
++ bool need_alloc = false, wasdelay = false;
+
+- /*
+- * Make sure we only reflink into a hole.
+- */
+- if (flags & XFS_BMAPI_REMAP)
+- ASSERT(inhole);
+- if (flags & XFS_BMAPI_COWFORK)
+- ASSERT(!inhole);
++ /* in hole or beyoned EOF? */
++ if (eof || bma.got.br_startoff > bno) {
++ if (flags & XFS_BMAPI_DELALLOC) {
++ /*
++ * For the COW fork we can reasonably get a
++ * request for converting an extent that races
++ * with other threads already having converted
++ * part of it, as there converting COW to
++ * regular blocks is not protected using the
++ * IOLOCK.
++ */
++ ASSERT(flags & XFS_BMAPI_COWFORK);
++ if (!(flags & XFS_BMAPI_COWFORK)) {
++ error = -EIO;
++ goto error0;
++ }
++
++ if (eof || bno >= end)
++ break;
++ } else {
++ need_alloc = true;
++ }
++ } else {
++ /*
++ * Make sure we only reflink into a hole.
++ */
++ ASSERT(!(flags & XFS_BMAPI_REMAP));
++ if (isnullstartblock(bma.got.br_startblock))
++ wasdelay = true;
++ }
+
+ /*
+ * First, deal with the hole before the allocated space
+ * that we found, if any.
+ */
+- if (inhole || wasdelay) {
++ if (need_alloc || wasdelay) {
+ bma.eof = eof;
+ bma.conv = !!(flags & XFS_BMAPI_CONVERT);
+ bma.wasdel = wasdelay;
+diff --git a/fs/xfs/libxfs/xfs_bmap.h b/fs/xfs/libxfs/xfs_bmap.h
+index d6d175a..e7d40b3 100644
+--- a/fs/xfs/libxfs/xfs_bmap.h
++++ b/fs/xfs/libxfs/xfs_bmap.h
+@@ -110,6 +110,9 @@ struct xfs_extent_free_item
+ /* Map something in the CoW fork. */
+ #define XFS_BMAPI_COWFORK 0x200
+
++/* Only convert delalloc space, don't allocate entirely new extents */
++#define XFS_BMAPI_DELALLOC 0x400
++
+ #define XFS_BMAPI_FLAGS \
+ { XFS_BMAPI_ENTIRE, "ENTIRE" }, \
+ { XFS_BMAPI_METADATA, "METADATA" }, \
+@@ -120,7 +123,8 @@ struct xfs_extent_free_item
+ { XFS_BMAPI_CONVERT, "CONVERT" }, \
+ { XFS_BMAPI_ZERO, "ZERO" }, \
+ { XFS_BMAPI_REMAP, "REMAP" }, \
+- { XFS_BMAPI_COWFORK, "COWFORK" }
++ { XFS_BMAPI_COWFORK, "COWFORK" }, \
++ { XFS_BMAPI_DELALLOC, "DELALLOC" }
+
+
+ static inline int xfs_bmapi_aflag(int w)
+diff --git a/fs/xfs/libxfs/xfs_bmap_btree.c b/fs/xfs/libxfs/xfs_bmap_btree.c
+index 049fa59..f76c169 100644
+--- a/fs/xfs/libxfs/xfs_bmap_btree.c
++++ b/fs/xfs/libxfs/xfs_bmap_btree.c
+@@ -502,12 +502,11 @@ xfs_bmbt_alloc_block(
+ if (args.fsbno == NULLFSBLOCK && args.minleft) {
+ /*
+ * Could not find an AG with enough free space to satisfy
+- * a full btree split. Try again without minleft and if
++ * a full btree split. Try again and if
+ * successful activate the lowspace algorithm.
+ */
+ args.fsbno = 0;
+ args.type = XFS_ALLOCTYPE_FIRST_AG;
+- args.minleft = 0;
+ error = xfs_alloc_vextent(&args);
+ if (error)
+ goto error0;
+diff --git a/fs/xfs/libxfs/xfs_dir2.c b/fs/xfs/libxfs/xfs_dir2.c
+index 20a96dd..7825d78 100644
+--- a/fs/xfs/libxfs/xfs_dir2.c
++++ b/fs/xfs/libxfs/xfs_dir2.c
+@@ -36,21 +36,29 @@
+ struct xfs_name xfs_name_dotdot = { (unsigned char *)"..", 2, XFS_DIR3_FT_DIR };
+
+ /*
+- * @mode, if set, indicates that the type field needs to be set up.
+- * This uses the transformation from file mode to DT_* as defined in linux/fs.h
+- * for file type specification. This will be propagated into the directory
+- * structure if appropriate for the given operation and filesystem config.
++ * Convert inode mode to directory entry filetype
+ */
+-const unsigned char xfs_mode_to_ftype[S_IFMT >> S_SHIFT] = {
+- [0] = XFS_DIR3_FT_UNKNOWN,
+- [S_IFREG >> S_SHIFT] = XFS_DIR3_FT_REG_FILE,
+- [S_IFDIR >> S_SHIFT] = XFS_DIR3_FT_DIR,
+- [S_IFCHR >> S_SHIFT] = XFS_DIR3_FT_CHRDEV,
+- [S_IFBLK >> S_SHIFT] = XFS_DIR3_FT_BLKDEV,
+- [S_IFIFO >> S_SHIFT] = XFS_DIR3_FT_FIFO,
+- [S_IFSOCK >> S_SHIFT] = XFS_DIR3_FT_SOCK,
+- [S_IFLNK >> S_SHIFT] = XFS_DIR3_FT_SYMLINK,
+-};
++unsigned char xfs_mode_to_ftype(int mode)
++{
++ switch (mode & S_IFMT) {
++ case S_IFREG:
++ return XFS_DIR3_FT_REG_FILE;
++ case S_IFDIR:
++ return XFS_DIR3_FT_DIR;
++ case S_IFCHR:
++ return XFS_DIR3_FT_CHRDEV;
++ case S_IFBLK:
++ return XFS_DIR3_FT_BLKDEV;
++ case S_IFIFO:
++ return XFS_DIR3_FT_FIFO;
++ case S_IFSOCK:
++ return XFS_DIR3_FT_SOCK;
++ case S_IFLNK:
++ return XFS_DIR3_FT_SYMLINK;
++ default:
++ return XFS_DIR3_FT_UNKNOWN;
++ }
++}
+
+ /*
+ * ASCII case-insensitive (ie. A-Z) support for directories that was
+@@ -631,7 +639,8 @@ xfs_dir2_isblock(
+ if ((rval = xfs_bmap_last_offset(args->dp, &last, XFS_DATA_FORK)))
+ return rval;
+ rval = XFS_FSB_TO_B(args->dp->i_mount, last) == args->geo->blksize;
+- ASSERT(rval == 0 || args->dp->i_d.di_size == args->geo->blksize);
++ if (rval != 0 && args->dp->i_d.di_size != args->geo->blksize)
++ return -EFSCORRUPTED;
+ *vp = rval;
+ return 0;
+ }
+diff --git a/fs/xfs/libxfs/xfs_dir2.h b/fs/xfs/libxfs/xfs_dir2.h
+index becc926..ae0d55b 100644
+--- a/fs/xfs/libxfs/xfs_dir2.h
++++ b/fs/xfs/libxfs/xfs_dir2.h
+@@ -18,6 +18,9 @@
+ #ifndef __XFS_DIR2_H__
+ #define __XFS_DIR2_H__
+
++#include "xfs_da_format.h"
++#include "xfs_da_btree.h"
++
+ struct xfs_defer_ops;
+ struct xfs_da_args;
+ struct xfs_inode;
+@@ -32,10 +35,9 @@ struct xfs_dir2_data_unused;
+ extern struct xfs_name xfs_name_dotdot;
+
+ /*
+- * directory filetype conversion tables.
++ * Convert inode mode to directory entry filetype
+ */
+-#define S_SHIFT 12
+-extern const unsigned char xfs_mode_to_ftype[];
++extern unsigned char xfs_mode_to_ftype(int mode);
+
+ /*
+ * directory operations vector for encode/decode routines
+diff --git a/fs/xfs/libxfs/xfs_inode_buf.c b/fs/xfs/libxfs/xfs_inode_buf.c
+index c906e50..37ee7f0 100644
+--- a/fs/xfs/libxfs/xfs_inode_buf.c
++++ b/fs/xfs/libxfs/xfs_inode_buf.c
+@@ -29,6 +29,7 @@
+ #include "xfs_icache.h"
+ #include "xfs_trans.h"
+ #include "xfs_ialloc.h"
++#include "xfs_dir2.h"
+
+ /*
+ * Check that none of the inode's in the buffer have a next
+@@ -386,6 +387,7 @@ xfs_dinode_verify(
+ struct xfs_inode *ip,
+ struct xfs_dinode *dip)
+ {
++ uint16_t mode;
+ uint16_t flags;
+ uint64_t flags2;
+
+@@ -396,8 +398,12 @@ xfs_dinode_verify(
+ if (be64_to_cpu(dip->di_size) & (1ULL << 63))
+ return false;
+
+- /* No zero-length symlinks. */
+- if (S_ISLNK(be16_to_cpu(dip->di_mode)) && dip->di_size == 0)
++ mode = be16_to_cpu(dip->di_mode);
++ if (mode && xfs_mode_to_ftype(mode) == XFS_DIR3_FT_UNKNOWN)
++ return false;
++
++ /* No zero-length symlinks/dirs. */
++ if ((S_ISLNK(mode) || S_ISDIR(mode)) && dip->di_size == 0)
+ return false;
+
+ /* only version 3 or greater inodes are extensively verified here */
+diff --git a/fs/xfs/libxfs/xfs_sb.c b/fs/xfs/libxfs/xfs_sb.c
+index 2580262..584ec89 100644
+--- a/fs/xfs/libxfs/xfs_sb.c
++++ b/fs/xfs/libxfs/xfs_sb.c
+@@ -242,7 +242,7 @@ xfs_mount_validate_sb(
+ sbp->sb_blocklog < XFS_MIN_BLOCKSIZE_LOG ||
+ sbp->sb_blocklog > XFS_MAX_BLOCKSIZE_LOG ||
+ sbp->sb_blocksize != (1 << sbp->sb_blocklog) ||
+- sbp->sb_dirblklog > XFS_MAX_BLOCKSIZE_LOG ||
++ sbp->sb_dirblklog + sbp->sb_blocklog > XFS_MAX_BLOCKSIZE_LOG ||
+ sbp->sb_inodesize < XFS_DINODE_MIN_SIZE ||
+ sbp->sb_inodesize > XFS_DINODE_MAX_SIZE ||
+ sbp->sb_inodelog < XFS_DINODE_MIN_LOG ||
+diff --git a/fs/xfs/xfs_bmap_util.c b/fs/xfs/xfs_bmap_util.c
+index 0670a8b..efb8ccd 100644
+--- a/fs/xfs/xfs_bmap_util.c
++++ b/fs/xfs/xfs_bmap_util.c
+@@ -528,7 +528,6 @@ xfs_getbmap(
+ xfs_bmbt_irec_t *map; /* buffer for user's data */
+ xfs_mount_t *mp; /* file system mount point */
+ int nex; /* # of user extents can do */
+- int nexleft; /* # of user extents left */
+ int subnex; /* # of bmapi's can do */
+ int nmap; /* number of map entries */
+ struct getbmapx *out; /* output structure */
+@@ -686,10 +685,8 @@ xfs_getbmap(
+ goto out_free_map;
+ }
+
+- nexleft = nex;
+-
+ do {
+- nmap = (nexleft > subnex) ? subnex : nexleft;
++ nmap = (nex> subnex) ? subnex : nex;
+ error = xfs_bmapi_read(ip, XFS_BB_TO_FSBT(mp, bmv->bmv_offset),
+ XFS_BB_TO_FSB(mp, bmv->bmv_length),
+ map, &nmap, bmapi_flags);
+@@ -697,8 +694,8 @@ xfs_getbmap(
+ goto out_free_map;
+ ASSERT(nmap <= subnex);
+
+- for (i = 0; i < nmap && nexleft && bmv->bmv_length &&
+- cur_ext < bmv->bmv_count; i++) {
++ for (i = 0; i < nmap && bmv->bmv_length &&
++ cur_ext < bmv->bmv_count - 1; i++) {
+ out[cur_ext].bmv_oflags = 0;
+ if (map[i].br_state == XFS_EXT_UNWRITTEN)
+ out[cur_ext].bmv_oflags |= BMV_OF_PREALLOC;
+@@ -760,16 +757,27 @@ xfs_getbmap(
+ continue;
+ }
+
++ /*
++ * In order to report shared extents accurately,
++ * we report each distinct shared/unshared part
++ * of a single bmbt record using multiple bmap
++ * extents. To make that happen, we iterate the
++ * same map array item multiple times, each
++ * time trimming out the subextent that we just
++ * reported.
++ *
++ * Because of this, we must check the out array
++ * index (cur_ext) directly against bmv_count-1
++ * to avoid overflows.
++ */
+ if (inject_map.br_startblock != NULLFSBLOCK) {
+ map[i] = inject_map;
+ i--;
+- } else
+- nexleft--;
++ }
+ bmv->bmv_entries++;
+ cur_ext++;
+ }
+- } while (nmap && nexleft && bmv->bmv_length &&
+- cur_ext < bmv->bmv_count);
++ } while (nmap && bmv->bmv_length && cur_ext < bmv->bmv_count - 1);
+
+ out_free_map:
+ kmem_free(map);
+diff --git a/fs/xfs/xfs_buf.c b/fs/xfs/xfs_buf.c
+index b5b9bff..d7a67d7 100644
+--- a/fs/xfs/xfs_buf.c
++++ b/fs/xfs/xfs_buf.c
+@@ -423,6 +423,7 @@ xfs_buf_allocate_memory(
+ out_free_pages:
+ for (i = 0; i < bp->b_page_count; i++)
+ __free_page(bp->b_pages[i]);
++ bp->b_flags &= ~_XBF_PAGES;
+ return error;
+ }
+
+diff --git a/fs/xfs/xfs_dquot.c b/fs/xfs/xfs_dquot.c
+index 7a30b8f..9d06cc3 100644
+--- a/fs/xfs/xfs_dquot.c
++++ b/fs/xfs/xfs_dquot.c
+@@ -710,6 +710,10 @@ xfs_dq_get_next_id(
+ /* Simple advance */
+ next_id = *id + 1;
+
++ /* If we'd wrap past the max ID, stop */
++ if (next_id < *id)
++ return -ENOENT;
++
+ /* If new ID is within the current chunk, advancing it sufficed */
+ if (next_id % mp->m_quotainfo->qi_dqperchunk) {
+ *id = next_id;
+diff --git a/fs/xfs/xfs_iomap.c b/fs/xfs/xfs_iomap.c
+index 15a83813..cdc6bdd 100644
+--- a/fs/xfs/xfs_iomap.c
++++ b/fs/xfs/xfs_iomap.c
+@@ -681,7 +681,7 @@ xfs_iomap_write_allocate(
+ xfs_trans_t *tp;
+ int nimaps;
+ int error = 0;
+- int flags = 0;
++ int flags = XFS_BMAPI_DELALLOC;
+ int nres;
+
+ if (whichfork == XFS_COW_FORK)
+diff --git a/fs/xfs/xfs_iops.c b/fs/xfs/xfs_iops.c
+index 405a65c..f5e0f60 100644
+--- a/fs/xfs/xfs_iops.c
++++ b/fs/xfs/xfs_iops.c
+@@ -98,12 +98,27 @@ xfs_init_security(
+ static void
+ xfs_dentry_to_name(
+ struct xfs_name *namep,
++ struct dentry *dentry)
++{
++ namep->name = dentry->d_name.name;
++ namep->len = dentry->d_name.len;
++ namep->type = XFS_DIR3_FT_UNKNOWN;
++}
++
++static int
++xfs_dentry_mode_to_name(
++ struct xfs_name *namep,
+ struct dentry *dentry,
+ int mode)
+ {
+ namep->name = dentry->d_name.name;
+ namep->len = dentry->d_name.len;
+- namep->type = xfs_mode_to_ftype[(mode & S_IFMT) >> S_SHIFT];
++ namep->type = xfs_mode_to_ftype(mode);
++
++ if (unlikely(namep->type == XFS_DIR3_FT_UNKNOWN))
++ return -EFSCORRUPTED;
++
++ return 0;
+ }
+
+ STATIC void
+@@ -119,7 +134,7 @@ xfs_cleanup_inode(
+ * xfs_init_security we must back out.
+ * ENOSPC can hit here, among other things.
+ */
+- xfs_dentry_to_name(&teardown, dentry, 0);
++ xfs_dentry_to_name(&teardown, dentry);
+
+ xfs_remove(XFS_I(dir), &teardown, XFS_I(inode));
+ }
+@@ -154,8 +169,12 @@ xfs_generic_create(
+ if (error)
+ return error;
+
++ /* Verify mode is valid also for tmpfile case */
++ error = xfs_dentry_mode_to_name(&name, dentry, mode);
++ if (unlikely(error))
++ goto out_free_acl;
++
+ if (!tmpfile) {
+- xfs_dentry_to_name(&name, dentry, mode);
+ error = xfs_create(XFS_I(dir), &name, mode, rdev, &ip);
+ } else {
+ error = xfs_create_tmpfile(XFS_I(dir), dentry, mode, &ip);
+@@ -248,7 +267,7 @@ xfs_vn_lookup(
+ if (dentry->d_name.len >= MAXNAMELEN)
+ return ERR_PTR(-ENAMETOOLONG);
+
+- xfs_dentry_to_name(&name, dentry, 0);
++ xfs_dentry_to_name(&name, dentry);
+ error = xfs_lookup(XFS_I(dir), &name, &cip, NULL);
+ if (unlikely(error)) {
+ if (unlikely(error != -ENOENT))
+@@ -275,7 +294,7 @@ xfs_vn_ci_lookup(
+ if (dentry->d_name.len >= MAXNAMELEN)
+ return ERR_PTR(-ENAMETOOLONG);
+
+- xfs_dentry_to_name(&xname, dentry, 0);
++ xfs_dentry_to_name(&xname, dentry);
+ error = xfs_lookup(XFS_I(dir), &xname, &ip, &ci_name);
+ if (unlikely(error)) {
+ if (unlikely(error != -ENOENT))
+@@ -310,7 +329,9 @@ xfs_vn_link(
+ struct xfs_name name;
+ int error;
+
+- xfs_dentry_to_name(&name, dentry, inode->i_mode);
++ error = xfs_dentry_mode_to_name(&name, dentry, inode->i_mode);
++ if (unlikely(error))
++ return error;
+
+ error = xfs_link(XFS_I(dir), XFS_I(inode), &name);
+ if (unlikely(error))
+@@ -329,7 +350,7 @@ xfs_vn_unlink(
+ struct xfs_name name;
+ int error;
+
+- xfs_dentry_to_name(&name, dentry, 0);
++ xfs_dentry_to_name(&name, dentry);
+
+ error = xfs_remove(XFS_I(dir), &name, XFS_I(d_inode(dentry)));
+ if (error)
+@@ -359,7 +380,9 @@ xfs_vn_symlink(
+
+ mode = S_IFLNK |
+ (irix_symlink_mode ? 0777 & ~current_umask() : S_IRWXUGO);
+- xfs_dentry_to_name(&name, dentry, mode);
++ error = xfs_dentry_mode_to_name(&name, dentry, mode);
++ if (unlikely(error))
++ goto out;
+
+ error = xfs_symlink(XFS_I(dir), &name, symname, mode, &cip);
+ if (unlikely(error))
+@@ -395,6 +418,7 @@ xfs_vn_rename(
+ {
+ struct inode *new_inode = d_inode(ndentry);
+ int omode = 0;
++ int error;
+ struct xfs_name oname;
+ struct xfs_name nname;
+
+@@ -405,8 +429,14 @@ xfs_vn_rename(
+ if (flags & RENAME_EXCHANGE)
+ omode = d_inode(ndentry)->i_mode;
+
+- xfs_dentry_to_name(&oname, odentry, omode);
+- xfs_dentry_to_name(&nname, ndentry, d_inode(odentry)->i_mode);
++ error = xfs_dentry_mode_to_name(&oname, odentry, omode);
++ if (omode && unlikely(error))
++ return error;
++
++ error = xfs_dentry_mode_to_name(&nname, ndentry,
++ d_inode(odentry)->i_mode);
++ if (unlikely(error))
++ return error;
+
+ return xfs_rename(XFS_I(odir), &oname, XFS_I(d_inode(odentry)),
+ XFS_I(ndir), &nname,
+diff --git a/fs/xfs/xfs_linux.h b/fs/xfs/xfs_linux.h
+index 68640fb..1455b2520 100644
+--- a/fs/xfs/xfs_linux.h
++++ b/fs/xfs/xfs_linux.h
+@@ -330,11 +330,11 @@ static inline __uint64_t howmany_64(__uint64_t x, __uint32_t y)
+ }
+
+ #define ASSERT_ALWAYS(expr) \
+- (unlikely(expr) ? (void)0 : assfail(#expr, __FILE__, __LINE__))
++ (likely(expr) ? (void)0 : assfail(#expr, __FILE__, __LINE__))
+
+ #ifdef DEBUG
+ #define ASSERT(expr) \
+- (unlikely(expr) ? (void)0 : assfail(#expr, __FILE__, __LINE__))
++ (likely(expr) ? (void)0 : assfail(#expr, __FILE__, __LINE__))
+
+ #ifndef STATIC
+ # define STATIC noinline
+@@ -345,7 +345,7 @@ static inline __uint64_t howmany_64(__uint64_t x, __uint32_t y)
+ #ifdef XFS_WARN
+
+ #define ASSERT(expr) \
+- (unlikely(expr) ? (void)0 : asswarn(#expr, __FILE__, __LINE__))
++ (likely(expr) ? (void)0 : asswarn(#expr, __FILE__, __LINE__))
+
+ #ifndef STATIC
+ # define STATIC static noinline
+diff --git a/fs/xfs/xfs_log.c b/fs/xfs/xfs_log.c
+index 3b74fa0..4017aa9 100644
+--- a/fs/xfs/xfs_log.c
++++ b/fs/xfs/xfs_log.c
+@@ -3324,12 +3324,8 @@ xfs_log_force(
+ xfs_mount_t *mp,
+ uint flags)
+ {
+- int error;
+-
+ trace_xfs_log_force(mp, 0, _RET_IP_);
+- error = _xfs_log_force(mp, flags, NULL);
+- if (error)
+- xfs_warn(mp, "%s: error %d returned.", __func__, error);
++ _xfs_log_force(mp, flags, NULL);
+ }
+
+ /*
+@@ -3473,12 +3469,8 @@ xfs_log_force_lsn(
+ xfs_lsn_t lsn,
+ uint flags)
+ {
+- int error;
+-
+ trace_xfs_log_force(mp, lsn, _RET_IP_);
+- error = _xfs_log_force_lsn(mp, lsn, flags, NULL);
+- if (error)
+- xfs_warn(mp, "%s: error %d returned.", __func__, error);
++ _xfs_log_force_lsn(mp, lsn, flags, NULL);
+ }
+
+ /*
+diff --git a/include/linux/tcp.h b/include/linux/tcp.h
+index a17ae7b..647532b 100644
+--- a/include/linux/tcp.h
++++ b/include/linux/tcp.h
+@@ -62,8 +62,13 @@ static inline unsigned int tcp_optlen(const struct sk_buff *skb)
+
+ /* TCP Fast Open Cookie as stored in memory */
+ struct tcp_fastopen_cookie {
++ union {
++ u8 val[TCP_FASTOPEN_COOKIE_MAX];
++#if IS_ENABLED(CONFIG_IPV6)
++ struct in6_addr addr;
++#endif
++ };
+ s8 len;
+- u8 val[TCP_FASTOPEN_COOKIE_MAX];
+ bool exp; /* In RFC6994 experimental option format */
+ };
+
+diff --git a/include/linux/virtio_net.h b/include/linux/virtio_net.h
+index 1c912f8..f211c34 100644
+--- a/include/linux/virtio_net.h
++++ b/include/linux/virtio_net.h
+@@ -56,7 +56,8 @@ static inline int virtio_net_hdr_to_skb(struct sk_buff *skb,
+
+ static inline int virtio_net_hdr_from_skb(const struct sk_buff *skb,
+ struct virtio_net_hdr *hdr,
+- bool little_endian)
++ bool little_endian,
++ bool has_data_valid)
+ {
+ memset(hdr, 0, sizeof(*hdr));
+
+@@ -91,7 +92,8 @@ static inline int virtio_net_hdr_from_skb(const struct sk_buff *skb,
+ skb_checksum_start_offset(skb));
+ hdr->csum_offset = __cpu_to_virtio16(little_endian,
+ skb->csum_offset);
+- } else if (skb->ip_summed == CHECKSUM_UNNECESSARY) {
++ } else if (has_data_valid &&
++ skb->ip_summed == CHECKSUM_UNNECESSARY) {
+ hdr->flags = VIRTIO_NET_HDR_F_DATA_VALID;
+ } /* else everything is zero */
+
+diff --git a/include/net/lwtunnel.h b/include/net/lwtunnel.h
+index ea3f80f..fc7c0db 100644
+--- a/include/net/lwtunnel.h
++++ b/include/net/lwtunnel.h
+@@ -43,13 +43,12 @@ struct lwtunnel_encap_ops {
+ int (*get_encap_size)(struct lwtunnel_state *lwtstate);
+ int (*cmp_encap)(struct lwtunnel_state *a, struct lwtunnel_state *b);
+ int (*xmit)(struct sk_buff *skb);
++
++ struct module *owner;
+ };
+
+ #ifdef CONFIG_LWTUNNEL
+-static inline void lwtstate_free(struct lwtunnel_state *lws)
+-{
+- kfree(lws);
+-}
++void lwtstate_free(struct lwtunnel_state *lws);
+
+ static inline struct lwtunnel_state *
+ lwtstate_get(struct lwtunnel_state *lws)
+@@ -106,6 +105,8 @@ int lwtunnel_encap_add_ops(const struct lwtunnel_encap_ops *op,
+ unsigned int num);
+ int lwtunnel_encap_del_ops(const struct lwtunnel_encap_ops *op,
+ unsigned int num);
++int lwtunnel_valid_encap_type(u16 encap_type);
++int lwtunnel_valid_encap_type_attr(struct nlattr *attr, int len);
+ int lwtunnel_build_state(struct net_device *dev, u16 encap_type,
+ struct nlattr *encap,
+ unsigned int family, const void *cfg,
+@@ -169,6 +170,15 @@ static inline int lwtunnel_encap_del_ops(const struct lwtunnel_encap_ops *op,
+ return -EOPNOTSUPP;
+ }
+
++static inline int lwtunnel_valid_encap_type(u16 encap_type)
++{
++ return -EOPNOTSUPP;
++}
++static inline int lwtunnel_valid_encap_type_attr(struct nlattr *attr, int len)
++{
++ return -EOPNOTSUPP;
++}
++
+ static inline int lwtunnel_build_state(struct net_device *dev, u16 encap_type,
+ struct nlattr *encap,
+ unsigned int family, const void *cfg,
+diff --git a/net/ax25/ax25_subr.c b/net/ax25/ax25_subr.c
+index 655a7d4..983f0b5 100644
+--- a/net/ax25/ax25_subr.c
++++ b/net/ax25/ax25_subr.c
+@@ -264,7 +264,7 @@ void ax25_disconnect(ax25_cb *ax25, int reason)
+ {
+ ax25_clear_queues(ax25);
+
+- if (!sock_flag(ax25->sk, SOCK_DESTROY))
++ if (!ax25->sk || !sock_flag(ax25->sk, SOCK_DESTROY))
+ ax25_stop_heartbeat(ax25);
+ ax25_stop_t1timer(ax25);
+ ax25_stop_t2timer(ax25);
+diff --git a/net/bridge/br_netlink.c b/net/bridge/br_netlink.c
+index e99037c..0474106 100644
+--- a/net/bridge/br_netlink.c
++++ b/net/bridge/br_netlink.c
+@@ -781,20 +781,6 @@ static int br_validate(struct nlattr *tb[], struct nlattr *data[])
+ return 0;
+ }
+
+-static int br_dev_newlink(struct net *src_net, struct net_device *dev,
+- struct nlattr *tb[], struct nlattr *data[])
+-{
+- struct net_bridge *br = netdev_priv(dev);
+-
+- if (tb[IFLA_ADDRESS]) {
+- spin_lock_bh(&br->lock);
+- br_stp_change_bridge_id(br, nla_data(tb[IFLA_ADDRESS]));
+- spin_unlock_bh(&br->lock);
+- }
+-
+- return register_netdevice(dev);
+-}
+-
+ static int br_port_slave_changelink(struct net_device *brdev,
+ struct net_device *dev,
+ struct nlattr *tb[],
+@@ -1093,6 +1079,25 @@ static int br_changelink(struct net_device *brdev, struct nlattr *tb[],
+ return 0;
+ }
+
++static int br_dev_newlink(struct net *src_net, struct net_device *dev,
++ struct nlattr *tb[], struct nlattr *data[])
++{
++ struct net_bridge *br = netdev_priv(dev);
++ int err;
++
++ if (tb[IFLA_ADDRESS]) {
++ spin_lock_bh(&br->lock);
++ br_stp_change_bridge_id(br, nla_data(tb[IFLA_ADDRESS]));
++ spin_unlock_bh(&br->lock);
++ }
++
++ err = br_changelink(dev, tb, data);
++ if (err)
++ return err;
++
++ return register_netdevice(dev);
++}
++
+ static size_t br_get_size(const struct net_device *brdev)
+ {
+ return nla_total_size(sizeof(u32)) + /* IFLA_BR_FORWARD_DELAY */
+diff --git a/net/core/dev.c b/net/core/dev.c
+index e1d731f..df51c50 100644
+--- a/net/core/dev.c
++++ b/net/core/dev.c
+@@ -2815,9 +2815,9 @@ static netdev_features_t harmonize_features(struct sk_buff *skb,
+ if (skb->ip_summed != CHECKSUM_NONE &&
+ !can_checksum_protocol(features, type)) {
+ features &= ~(NETIF_F_CSUM_MASK | NETIF_F_GSO_MASK);
+- } else if (illegal_highdma(skb->dev, skb)) {
+- features &= ~NETIF_F_SG;
+ }
++ if (illegal_highdma(skb->dev, skb))
++ features &= ~NETIF_F_SG;
+
+ return features;
+ }
+diff --git a/net/core/lwtunnel.c b/net/core/lwtunnel.c
+index e5f84c2..afa64f0 100644
+--- a/net/core/lwtunnel.c
++++ b/net/core/lwtunnel.c
+@@ -26,6 +26,7 @@
+ #include <net/lwtunnel.h>
+ #include <net/rtnetlink.h>
+ #include <net/ip6_fib.h>
++#include <net/nexthop.h>
+
+ #ifdef CONFIG_MODULES
+
+@@ -65,6 +66,15 @@ EXPORT_SYMBOL(lwtunnel_state_alloc);
+ static const struct lwtunnel_encap_ops __rcu *
+ lwtun_encaps[LWTUNNEL_ENCAP_MAX + 1] __read_mostly;
+
++void lwtstate_free(struct lwtunnel_state *lws)
++{
++ const struct lwtunnel_encap_ops *ops = lwtun_encaps[lws->type];
++
++ kfree(lws);
++ module_put(ops->owner);
++}
++EXPORT_SYMBOL(lwtstate_free);
++
+ int lwtunnel_encap_add_ops(const struct lwtunnel_encap_ops *ops,
+ unsigned int num)
+ {
+@@ -110,25 +120,77 @@ int lwtunnel_build_state(struct net_device *dev, u16 encap_type,
+ ret = -EOPNOTSUPP;
+ rcu_read_lock();
+ ops = rcu_dereference(lwtun_encaps[encap_type]);
++ if (likely(ops && ops->build_state && try_module_get(ops->owner))) {
++ ret = ops->build_state(dev, encap, family, cfg, lws);
++ if (ret)
++ module_put(ops->owner);
++ }
++ rcu_read_unlock();
++
++ return ret;
++}
++EXPORT_SYMBOL(lwtunnel_build_state);
++
++int lwtunnel_valid_encap_type(u16 encap_type)
++{
++ const struct lwtunnel_encap_ops *ops;
++ int ret = -EINVAL;
++
++ if (encap_type == LWTUNNEL_ENCAP_NONE ||
++ encap_type > LWTUNNEL_ENCAP_MAX)
++ return ret;
++
++ rcu_read_lock();
++ ops = rcu_dereference(lwtun_encaps[encap_type]);
++ rcu_read_unlock();
+ #ifdef CONFIG_MODULES
+ if (!ops) {
+ const char *encap_type_str = lwtunnel_encap_str(encap_type);
+
+ if (encap_type_str) {
+- rcu_read_unlock();
++ __rtnl_unlock();
+ request_module("rtnl-lwt-%s", encap_type_str);
++ rtnl_lock();
++
+ rcu_read_lock();
+ ops = rcu_dereference(lwtun_encaps[encap_type]);
++ rcu_read_unlock();
+ }
+ }
+ #endif
+- if (likely(ops && ops->build_state))
+- ret = ops->build_state(dev, encap, family, cfg, lws);
+- rcu_read_unlock();
++ return ops ? 0 : -EOPNOTSUPP;
++}
++EXPORT_SYMBOL(lwtunnel_valid_encap_type);
+
+- return ret;
++int lwtunnel_valid_encap_type_attr(struct nlattr *attr, int remaining)
++{
++ struct rtnexthop *rtnh = (struct rtnexthop *)attr;
++ struct nlattr *nla_entype;
++ struct nlattr *attrs;
++ struct nlattr *nla;
++ u16 encap_type;
++ int attrlen;
++
++ while (rtnh_ok(rtnh, remaining)) {
++ attrlen = rtnh_attrlen(rtnh);
++ if (attrlen > 0) {
++ attrs = rtnh_attrs(rtnh);
++ nla = nla_find(attrs, attrlen, RTA_ENCAP);
++ nla_entype = nla_find(attrs, attrlen, RTA_ENCAP_TYPE);
++
++ if (nla_entype) {
++ encap_type = nla_get_u16(nla_entype);
++
++ if (lwtunnel_valid_encap_type(encap_type) != 0)
++ return -EOPNOTSUPP;
++ }
++ }
++ rtnh = rtnh_next(rtnh, &remaining);
++ }
++
++ return 0;
+ }
+-EXPORT_SYMBOL(lwtunnel_build_state);
++EXPORT_SYMBOL(lwtunnel_valid_encap_type_attr);
+
+ int lwtunnel_fill_encap(struct sk_buff *skb, struct lwtunnel_state *lwtstate)
+ {
+diff --git a/net/dsa/slave.c b/net/dsa/slave.c
+index 30e2e21..3ff9d97 100644
+--- a/net/dsa/slave.c
++++ b/net/dsa/slave.c
+@@ -1201,6 +1201,8 @@ int dsa_slave_suspend(struct net_device *slave_dev)
+ {
+ struct dsa_slave_priv *p = netdev_priv(slave_dev);
+
++ netif_device_detach(slave_dev);
++
+ if (p->phy) {
+ phy_stop(p->phy);
+ p->old_pause = -1;
+diff --git a/net/ipv4/fib_frontend.c b/net/ipv4/fib_frontend.c
+index 3e4f183..5b03d7f 100644
+--- a/net/ipv4/fib_frontend.c
++++ b/net/ipv4/fib_frontend.c
+@@ -46,6 +46,7 @@
+ #include <net/rtnetlink.h>
+ #include <net/xfrm.h>
+ #include <net/l3mdev.h>
++#include <net/lwtunnel.h>
+ #include <trace/events/fib.h>
+
+ #ifndef CONFIG_IP_MULTIPLE_TABLES
+@@ -676,6 +677,10 @@ static int rtm_to_fib_config(struct net *net, struct sk_buff *skb,
+ cfg->fc_mx_len = nla_len(attr);
+ break;
+ case RTA_MULTIPATH:
++ err = lwtunnel_valid_encap_type_attr(nla_data(attr),
++ nla_len(attr));
++ if (err < 0)
++ goto errout;
+ cfg->fc_mp = nla_data(attr);
+ cfg->fc_mp_len = nla_len(attr);
+ break;
+@@ -690,6 +695,9 @@ static int rtm_to_fib_config(struct net *net, struct sk_buff *skb,
+ break;
+ case RTA_ENCAP_TYPE:
+ cfg->fc_encap_type = nla_get_u16(attr);
++ err = lwtunnel_valid_encap_type(cfg->fc_encap_type);
++ if (err < 0)
++ goto errout;
+ break;
+ }
+ }
+diff --git a/net/ipv4/fib_semantics.c b/net/ipv4/fib_semantics.c
+index a8508b7..6a40680 100644
+--- a/net/ipv4/fib_semantics.c
++++ b/net/ipv4/fib_semantics.c
+@@ -1278,8 +1278,9 @@ int fib_dump_info(struct sk_buff *skb, u32 portid, u32 seq, int event,
+ nla_put_u32(skb, RTA_FLOW, fi->fib_nh[0].nh_tclassid))
+ goto nla_put_failure;
+ #endif
+- if (fi->fib_nh->nh_lwtstate)
+- lwtunnel_fill_encap(skb, fi->fib_nh->nh_lwtstate);
++ if (fi->fib_nh->nh_lwtstate &&
++ lwtunnel_fill_encap(skb, fi->fib_nh->nh_lwtstate) < 0)
++ goto nla_put_failure;
+ }
+ #ifdef CONFIG_IP_ROUTE_MULTIPATH
+ if (fi->fib_nhs > 1) {
+@@ -1315,8 +1316,10 @@ int fib_dump_info(struct sk_buff *skb, u32 portid, u32 seq, int event,
+ nla_put_u32(skb, RTA_FLOW, nh->nh_tclassid))
+ goto nla_put_failure;
+ #endif
+- if (nh->nh_lwtstate)
+- lwtunnel_fill_encap(skb, nh->nh_lwtstate);
++ if (nh->nh_lwtstate &&
++ lwtunnel_fill_encap(skb, nh->nh_lwtstate) < 0)
++ goto nla_put_failure;
++
+ /* length of rtnetlink header + attributes */
+ rtnh->rtnh_len = nlmsg_get_pos(skb) - (void *) rtnh;
+ } endfor_nexthops(fi);
+diff --git a/net/ipv4/ip_tunnel_core.c b/net/ipv4/ip_tunnel_core.c
+index fed3d29..0fd1976 100644
+--- a/net/ipv4/ip_tunnel_core.c
++++ b/net/ipv4/ip_tunnel_core.c
+@@ -313,6 +313,7 @@ static const struct lwtunnel_encap_ops ip_tun_lwt_ops = {
+ .fill_encap = ip_tun_fill_encap_info,
+ .get_encap_size = ip_tun_encap_nlsize,
+ .cmp_encap = ip_tun_cmp_encap,
++ .owner = THIS_MODULE,
+ };
+
+ static const struct nla_policy ip6_tun_policy[LWTUNNEL_IP6_MAX + 1] = {
+@@ -403,6 +404,7 @@ static const struct lwtunnel_encap_ops ip6_tun_lwt_ops = {
+ .fill_encap = ip6_tun_fill_encap_info,
+ .get_encap_size = ip6_tun_encap_nlsize,
+ .cmp_encap = ip_tun_cmp_encap,
++ .owner = THIS_MODULE,
+ };
+
+ void __init ip_tunnel_core_init(void)
+diff --git a/net/ipv4/route.c b/net/ipv4/route.c
+index 8197b06..d851cae 100644
+--- a/net/ipv4/route.c
++++ b/net/ipv4/route.c
+@@ -2440,7 +2440,7 @@ static int rt_fill_info(struct net *net, __be32 dst, __be32 src, u32 table_id,
+ r->rtm_dst_len = 32;
+ r->rtm_src_len = 0;
+ r->rtm_tos = fl4->flowi4_tos;
+- r->rtm_table = table_id;
++ r->rtm_table = table_id < 256 ? table_id : RT_TABLE_COMPAT;
+ if (nla_put_u32(skb, RTA_TABLE, table_id))
+ goto nla_put_failure;
+ r->rtm_type = rt->rt_type;
+diff --git a/net/ipv4/tcp_fastopen.c b/net/ipv4/tcp_fastopen.c
+index 4e777a3..dd2560c 100644
+--- a/net/ipv4/tcp_fastopen.c
++++ b/net/ipv4/tcp_fastopen.c
+@@ -113,7 +113,7 @@ static bool tcp_fastopen_cookie_gen(struct request_sock *req,
+ struct tcp_fastopen_cookie tmp;
+
+ if (__tcp_fastopen_cookie_gen(&ip6h->saddr, &tmp)) {
+- struct in6_addr *buf = (struct in6_addr *) tmp.val;
++ struct in6_addr *buf = &tmp.addr;
+ int i;
+
+ for (i = 0; i < 4; i++)
+@@ -205,6 +205,7 @@ static struct sock *tcp_fastopen_create_child(struct sock *sk,
+ * scaled. So correct it appropriately.
+ */
+ tp->snd_wnd = ntohs(tcp_hdr(skb)->window);
++ tp->max_window = tp->snd_wnd;
+
+ /* Activate the retrans timer so that SYNACK can be retransmitted.
+ * The request socket is not added to the ehash
+diff --git a/net/ipv6/addrconf.c b/net/ipv6/addrconf.c
+index 4bc5ba3..95dfcba 100644
+--- a/net/ipv6/addrconf.c
++++ b/net/ipv6/addrconf.c
+@@ -5515,8 +5515,7 @@ static void addrconf_disable_change(struct net *net, __s32 newf)
+ struct net_device *dev;
+ struct inet6_dev *idev;
+
+- rcu_read_lock();
+- for_each_netdev_rcu(net, dev) {
++ for_each_netdev(net, dev) {
+ idev = __in6_dev_get(dev);
+ if (idev) {
+ int changed = (!idev->cnf.disable_ipv6) ^ (!newf);
+@@ -5525,7 +5524,6 @@ static void addrconf_disable_change(struct net *net, __s32 newf)
+ dev_disable_change(idev);
+ }
+ }
+- rcu_read_unlock();
+ }
+
+ static int addrconf_disable_ipv6(struct ctl_table *table, int *p, int newf)
+diff --git a/net/ipv6/ila/ila_lwt.c b/net/ipv6/ila/ila_lwt.c
+index e50c27a..f3db364 100644
+--- a/net/ipv6/ila/ila_lwt.c
++++ b/net/ipv6/ila/ila_lwt.c
+@@ -164,6 +164,7 @@ static const struct lwtunnel_encap_ops ila_encap_ops = {
+ .fill_encap = ila_fill_encap_info,
+ .get_encap_size = ila_encap_nlsize,
+ .cmp_encap = ila_encap_cmp,
++ .owner = THIS_MODULE,
+ };
+
+ int ila_lwt_init(void)
+diff --git a/net/ipv6/ip6_tunnel.c b/net/ipv6/ip6_tunnel.c
+index d76674e..f95437f 100644
+--- a/net/ipv6/ip6_tunnel.c
++++ b/net/ipv6/ip6_tunnel.c
+@@ -1108,7 +1108,7 @@ int ip6_tnl_xmit(struct sk_buff *skb, struct net_device *dev, __u8 dsfield,
+ t->parms.name);
+ goto tx_err_dst_release;
+ }
+- mtu = dst_mtu(dst) - psh_hlen;
++ mtu = dst_mtu(dst) - psh_hlen - t->tun_hlen;
+ if (encap_limit >= 0) {
+ max_headroom += 8;
+ mtu -= 8;
+@@ -1117,7 +1117,7 @@ int ip6_tnl_xmit(struct sk_buff *skb, struct net_device *dev, __u8 dsfield,
+ mtu = IPV6_MIN_MTU;
+ if (skb_dst(skb) && !t->parms.collect_md)
+ skb_dst(skb)->ops->update_pmtu(skb_dst(skb), NULL, skb, mtu);
+- if (skb->len > mtu && !skb_is_gso(skb)) {
++ if (skb->len - t->tun_hlen > mtu && !skb_is_gso(skb)) {
+ *pmtu = mtu;
+ err = -EMSGSIZE;
+ goto tx_err_dst_release;
+diff --git a/net/ipv6/route.c b/net/ipv6/route.c
+index 1b57e11..bff4460 100644
+--- a/net/ipv6/route.c
++++ b/net/ipv6/route.c
+@@ -2885,6 +2885,11 @@ static int rtm_to_fib6_config(struct sk_buff *skb, struct nlmsghdr *nlh,
+ if (tb[RTA_MULTIPATH]) {
+ cfg->fc_mp = nla_data(tb[RTA_MULTIPATH]);
+ cfg->fc_mp_len = nla_len(tb[RTA_MULTIPATH]);
++
++ err = lwtunnel_valid_encap_type_attr(cfg->fc_mp,
++ cfg->fc_mp_len);
++ if (err < 0)
++ goto errout;
+ }
+
+ if (tb[RTA_PREF]) {
+@@ -2898,9 +2903,14 @@ static int rtm_to_fib6_config(struct sk_buff *skb, struct nlmsghdr *nlh,
+ if (tb[RTA_ENCAP])
+ cfg->fc_encap = tb[RTA_ENCAP];
+
+- if (tb[RTA_ENCAP_TYPE])
++ if (tb[RTA_ENCAP_TYPE]) {
+ cfg->fc_encap_type = nla_get_u16(tb[RTA_ENCAP_TYPE]);
+
++ err = lwtunnel_valid_encap_type(cfg->fc_encap_type);
++ if (err < 0)
++ goto errout;
++ }
++
+ if (tb[RTA_EXPIRES]) {
+ unsigned long timeout = addrconf_timeout_fixup(nla_get_u32(tb[RTA_EXPIRES]), HZ);
+
+@@ -3306,7 +3316,8 @@ static int rt6_fill_node(struct net *net,
+ if (nla_put_u8(skb, RTA_PREF, IPV6_EXTRACT_PREF(rt->rt6i_flags)))
+ goto nla_put_failure;
+
+- lwtunnel_fill_encap(skb, rt->dst.lwtstate);
++ if (lwtunnel_fill_encap(skb, rt->dst.lwtstate) < 0)
++ goto nla_put_failure;
+
+ nlmsg_end(skb, nlh);
+ return 0;
+diff --git a/net/mpls/af_mpls.c b/net/mpls/af_mpls.c
+index 15fe976..5b77377 100644
+--- a/net/mpls/af_mpls.c
++++ b/net/mpls/af_mpls.c
+@@ -98,18 +98,19 @@ bool mpls_pkt_too_big(const struct sk_buff *skb, unsigned int mtu)
+ }
+ EXPORT_SYMBOL_GPL(mpls_pkt_too_big);
+
+-static u32 mpls_multipath_hash(struct mpls_route *rt,
+- struct sk_buff *skb, bool bos)
++static u32 mpls_multipath_hash(struct mpls_route *rt, struct sk_buff *skb)
+ {
+ struct mpls_entry_decoded dec;
++ unsigned int mpls_hdr_len = 0;
+ struct mpls_shim_hdr *hdr;
+ bool eli_seen = false;
+ int label_index;
+ u32 hash = 0;
+
+- for (label_index = 0; label_index < MAX_MP_SELECT_LABELS && !bos;
++ for (label_index = 0; label_index < MAX_MP_SELECT_LABELS;
+ label_index++) {
+- if (!pskb_may_pull(skb, sizeof(*hdr) * label_index))
++ mpls_hdr_len += sizeof(*hdr);
++ if (!pskb_may_pull(skb, mpls_hdr_len))
+ break;
+
+ /* Read and decode the current label */
+@@ -134,37 +135,38 @@ static u32 mpls_multipath_hash(struct mpls_route *rt,
+ eli_seen = true;
+ }
+
+- bos = dec.bos;
+- if (bos && pskb_may_pull(skb, sizeof(*hdr) * label_index +
+- sizeof(struct iphdr))) {
++ if (!dec.bos)
++ continue;
++
++ /* found bottom label; does skb have room for a header? */
++ if (pskb_may_pull(skb, mpls_hdr_len + sizeof(struct iphdr))) {
+ const struct iphdr *v4hdr;
+
+- v4hdr = (const struct iphdr *)(mpls_hdr(skb) +
+- label_index);
++ v4hdr = (const struct iphdr *)(hdr + 1);
+ if (v4hdr->version == 4) {
+ hash = jhash_3words(ntohl(v4hdr->saddr),
+ ntohl(v4hdr->daddr),
+ v4hdr->protocol, hash);
+ } else if (v4hdr->version == 6 &&
+- pskb_may_pull(skb, sizeof(*hdr) * label_index +
+- sizeof(struct ipv6hdr))) {
++ pskb_may_pull(skb, mpls_hdr_len +
++ sizeof(struct ipv6hdr))) {
+ const struct ipv6hdr *v6hdr;
+
+- v6hdr = (const struct ipv6hdr *)(mpls_hdr(skb) +
+- label_index);
+-
++ v6hdr = (const struct ipv6hdr *)(hdr + 1);
+ hash = __ipv6_addr_jhash(&v6hdr->saddr, hash);
+ hash = __ipv6_addr_jhash(&v6hdr->daddr, hash);
+ hash = jhash_1word(v6hdr->nexthdr, hash);
+ }
+ }
++
++ break;
+ }
+
+ return hash;
+ }
+
+ static struct mpls_nh *mpls_select_multipath(struct mpls_route *rt,
+- struct sk_buff *skb, bool bos)
++ struct sk_buff *skb)
+ {
+ int alive = ACCESS_ONCE(rt->rt_nhn_alive);
+ u32 hash = 0;
+@@ -180,7 +182,7 @@ static struct mpls_nh *mpls_select_multipath(struct mpls_route *rt,
+ if (alive <= 0)
+ return NULL;
+
+- hash = mpls_multipath_hash(rt, skb, bos);
++ hash = mpls_multipath_hash(rt, skb);
+ nh_index = hash % alive;
+ if (alive == rt->rt_nhn)
+ goto out;
+@@ -278,17 +280,11 @@ static int mpls_forward(struct sk_buff *skb, struct net_device *dev,
+ hdr = mpls_hdr(skb);
+ dec = mpls_entry_decode(hdr);
+
+- /* Pop the label */
+- skb_pull(skb, sizeof(*hdr));
+- skb_reset_network_header(skb);
+-
+- skb_orphan(skb);
+-
+ rt = mpls_route_input_rcu(net, dec.label);
+ if (!rt)
+ goto drop;
+
+- nh = mpls_select_multipath(rt, skb, dec.bos);
++ nh = mpls_select_multipath(rt, skb);
+ if (!nh)
+ goto drop;
+
+@@ -297,6 +293,12 @@ static int mpls_forward(struct sk_buff *skb, struct net_device *dev,
+ if (!mpls_output_possible(out_dev))
+ goto drop;
+
++ /* Pop the label */
++ skb_pull(skb, sizeof(*hdr));
++ skb_reset_network_header(skb);
++
++ skb_orphan(skb);
++
+ if (skb_warn_if_lro(skb))
+ goto drop;
+
+diff --git a/net/mpls/mpls_iptunnel.c b/net/mpls/mpls_iptunnel.c
+index cf52cf3..bc9aaf5 100644
+--- a/net/mpls/mpls_iptunnel.c
++++ b/net/mpls/mpls_iptunnel.c
+@@ -218,6 +218,7 @@ static const struct lwtunnel_encap_ops mpls_iptun_ops = {
+ .fill_encap = mpls_fill_encap_info,
+ .get_encap_size = mpls_encap_nlsize,
+ .cmp_encap = mpls_encap_cmp,
++ .owner = THIS_MODULE,
+ };
+
+ static int __init mpls_iptunnel_init(void)
+diff --git a/net/openvswitch/conntrack.c b/net/openvswitch/conntrack.c
+index fecefa2..eab210b 100644
+--- a/net/openvswitch/conntrack.c
++++ b/net/openvswitch/conntrack.c
+@@ -514,7 +514,7 @@ static int ovs_ct_nat_execute(struct sk_buff *skb, struct nf_conn *ct,
+ int hooknum, nh_off, err = NF_ACCEPT;
+
+ nh_off = skb_network_offset(skb);
+- skb_pull(skb, nh_off);
++ skb_pull_rcsum(skb, nh_off);
+
+ /* See HOOK2MANIP(). */
+ if (maniptype == NF_NAT_MANIP_SRC)
+@@ -579,6 +579,7 @@ static int ovs_ct_nat_execute(struct sk_buff *skb, struct nf_conn *ct,
+ err = nf_nat_packet(ct, ctinfo, hooknum, skb);
+ push:
+ skb_push(skb, nh_off);
++ skb_postpush_rcsum(skb, skb->data, nh_off);
+
+ return err;
+ }
+@@ -890,7 +891,7 @@ int ovs_ct_execute(struct net *net, struct sk_buff *skb,
+
+ /* The conntrack module expects to be working at L3. */
+ nh_ofs = skb_network_offset(skb);
+- skb_pull(skb, nh_ofs);
++ skb_pull_rcsum(skb, nh_ofs);
+
+ if (key->ip.frag != OVS_FRAG_TYPE_NONE) {
+ err = handle_fragments(net, key, info->zone.id, skb);
+@@ -904,6 +905,7 @@ int ovs_ct_execute(struct net *net, struct sk_buff *skb,
+ err = ovs_ct_lookup(net, key, info, skb);
+
+ skb_push(skb, nh_ofs);
++ skb_postpush_rcsum(skb, skb->data, nh_ofs);
+ if (err)
+ kfree_skb(skb);
+ return err;
+diff --git a/net/packet/af_packet.c b/net/packet/af_packet.c
+index dd23323..94e4a59 100644
+--- a/net/packet/af_packet.c
++++ b/net/packet/af_packet.c
+@@ -1972,7 +1972,7 @@ static int __packet_rcv_vnet(const struct sk_buff *skb,
+ {
+ *vnet_hdr = (const struct virtio_net_hdr) { 0 };
+
+- if (virtio_net_hdr_from_skb(skb, vnet_hdr, vio_le()))
++ if (virtio_net_hdr_from_skb(skb, vnet_hdr, vio_le(), true))
+ BUG();
+
+ return 0;
+diff --git a/net/sched/act_api.c b/net/sched/act_api.c
+index f893d18..c6c2a93 100644
+--- a/net/sched/act_api.c
++++ b/net/sched/act_api.c
+@@ -903,8 +903,6 @@ tca_action_gd(struct net *net, struct nlattr *nla, struct nlmsghdr *n,
+ goto err;
+ }
+ act->order = i;
+- if (event == RTM_GETACTION)
+- act->tcfa_refcnt++;
+ list_add_tail(&act->list, &actions);
+ }
+
+@@ -917,7 +915,8 @@ tca_action_gd(struct net *net, struct nlattr *nla, struct nlmsghdr *n,
+ return ret;
+ }
+ err:
+- tcf_action_destroy(&actions, 0);
++ if (event != RTM_GETACTION)
++ tcf_action_destroy(&actions, 0);
+ return ret;
+ }
+
+diff --git a/net/unix/af_unix.c b/net/unix/af_unix.c
+index 2358f26..2d03d5b 100644
+--- a/net/unix/af_unix.c
++++ b/net/unix/af_unix.c
+@@ -995,6 +995,7 @@ static int unix_bind(struct socket *sock, struct sockaddr *uaddr, int addr_len)
+ unsigned int hash;
+ struct unix_address *addr;
+ struct hlist_head *list;
++ struct path path = { NULL, NULL };
+
+ err = -EINVAL;
+ if (sunaddr->sun_family != AF_UNIX)
+@@ -1010,9 +1011,20 @@ static int unix_bind(struct socket *sock, struct sockaddr *uaddr, int addr_len)
+ goto out;
+ addr_len = err;
+
++ if (sun_path[0]) {
++ umode_t mode = S_IFSOCK |
++ (SOCK_INODE(sock)->i_mode & ~current_umask());
++ err = unix_mknod(sun_path, mode, &path);
++ if (err) {
++ if (err == -EEXIST)
++ err = -EADDRINUSE;
++ goto out;
++ }
++ }
++
+ err = mutex_lock_interruptible(&u->bindlock);
+ if (err)
+- goto out;
++ goto out_put;
+
+ err = -EINVAL;
+ if (u->addr)
+@@ -1029,16 +1041,6 @@ static int unix_bind(struct socket *sock, struct sockaddr *uaddr, int addr_len)
+ atomic_set(&addr->refcnt, 1);
+
+ if (sun_path[0]) {
+- struct path path;
+- umode_t mode = S_IFSOCK |
+- (SOCK_INODE(sock)->i_mode & ~current_umask());
+- err = unix_mknod(sun_path, mode, &path);
+- if (err) {
+- if (err == -EEXIST)
+- err = -EADDRINUSE;
+- unix_release_addr(addr);
+- goto out_up;
+- }
+ addr->hash = UNIX_HASH_SIZE;
+ hash = d_real_inode(path.dentry)->i_ino & (UNIX_HASH_SIZE - 1);
+ spin_lock(&unix_table_lock);
+@@ -1065,6 +1067,9 @@ static int unix_bind(struct socket *sock, struct sockaddr *uaddr, int addr_len)
+ spin_unlock(&unix_table_lock);
+ out_up:
+ mutex_unlock(&u->bindlock);
++out_put:
++ if (err)
++ path_put(&path);
+ out:
+ return err;
+ }
diff --git a/4.9.9/1008_linux-4.9.9.patch b/4.9.9/1008_linux-4.9.9.patch
new file mode 100644
index 0000000..411ce9b
--- /dev/null
+++ b/4.9.9/1008_linux-4.9.9.patch
@@ -0,0 +1,2333 @@
+diff --git a/Makefile b/Makefile
+index 1130803..c0c41c9 100644
+--- a/Makefile
++++ b/Makefile
+@@ -1,6 +1,6 @@
+ VERSION = 4
+ PATCHLEVEL = 9
+-SUBLEVEL = 8
++SUBLEVEL = 9
+ EXTRAVERSION =
+ NAME = Roaring Lionus
+
+diff --git a/arch/arm64/crypto/aes-modes.S b/arch/arm64/crypto/aes-modes.S
+index c53dbea..838dad5 100644
+--- a/arch/arm64/crypto/aes-modes.S
++++ b/arch/arm64/crypto/aes-modes.S
+@@ -193,15 +193,16 @@ AES_ENTRY(aes_cbc_encrypt)
+ cbz w6, .Lcbcencloop
+
+ ld1 {v0.16b}, [x5] /* get iv */
+- enc_prepare w3, x2, x5
++ enc_prepare w3, x2, x6
+
+ .Lcbcencloop:
+ ld1 {v1.16b}, [x1], #16 /* get next pt block */
+ eor v0.16b, v0.16b, v1.16b /* ..and xor with iv */
+- encrypt_block v0, w3, x2, x5, w6
++ encrypt_block v0, w3, x2, x6, w7
+ st1 {v0.16b}, [x0], #16
+ subs w4, w4, #1
+ bne .Lcbcencloop
++ st1 {v0.16b}, [x5] /* return iv */
+ ret
+ AES_ENDPROC(aes_cbc_encrypt)
+
+@@ -211,7 +212,7 @@ AES_ENTRY(aes_cbc_decrypt)
+ cbz w6, .LcbcdecloopNx
+
+ ld1 {v7.16b}, [x5] /* get iv */
+- dec_prepare w3, x2, x5
++ dec_prepare w3, x2, x6
+
+ .LcbcdecloopNx:
+ #if INTERLEAVE >= 2
+@@ -248,7 +249,7 @@ AES_ENTRY(aes_cbc_decrypt)
+ .Lcbcdecloop:
+ ld1 {v1.16b}, [x1], #16 /* get next ct block */
+ mov v0.16b, v1.16b /* ...and copy to v0 */
+- decrypt_block v0, w3, x2, x5, w6
++ decrypt_block v0, w3, x2, x6, w7
+ eor v0.16b, v0.16b, v7.16b /* xor with iv => pt */
+ mov v7.16b, v1.16b /* ct is next iv */
+ st1 {v0.16b}, [x0], #16
+@@ -256,6 +257,7 @@ AES_ENTRY(aes_cbc_decrypt)
+ bne .Lcbcdecloop
+ .Lcbcdecout:
+ FRAME_POP
++ st1 {v7.16b}, [x5] /* return iv */
+ ret
+ AES_ENDPROC(aes_cbc_decrypt)
+
+@@ -267,24 +269,15 @@ AES_ENDPROC(aes_cbc_decrypt)
+
+ AES_ENTRY(aes_ctr_encrypt)
+ FRAME_PUSH
+- cbnz w6, .Lctrfirst /* 1st time around? */
+- umov x5, v4.d[1] /* keep swabbed ctr in reg */
+- rev x5, x5
+-#if INTERLEAVE >= 2
+- cmn w5, w4 /* 32 bit overflow? */
+- bcs .Lctrinc
+- add x5, x5, #1 /* increment BE ctr */
+- b .LctrincNx
+-#else
+- b .Lctrinc
+-#endif
+-.Lctrfirst:
++ cbz w6, .Lctrnotfirst /* 1st time around? */
+ enc_prepare w3, x2, x6
+ ld1 {v4.16b}, [x5]
+- umov x5, v4.d[1] /* keep swabbed ctr in reg */
+- rev x5, x5
++
++.Lctrnotfirst:
++ umov x8, v4.d[1] /* keep swabbed ctr in reg */
++ rev x8, x8
+ #if INTERLEAVE >= 2
+- cmn w5, w4 /* 32 bit overflow? */
++ cmn w8, w4 /* 32 bit overflow? */
+ bcs .Lctrloop
+ .LctrloopNx:
+ subs w4, w4, #INTERLEAVE
+@@ -292,11 +285,11 @@ AES_ENTRY(aes_ctr_encrypt)
+ #if INTERLEAVE == 2
+ mov v0.8b, v4.8b
+ mov v1.8b, v4.8b
+- rev x7, x5
+- add x5, x5, #1
++ rev x7, x8
++ add x8, x8, #1
+ ins v0.d[1], x7
+- rev x7, x5
+- add x5, x5, #1
++ rev x7, x8
++ add x8, x8, #1
+ ins v1.d[1], x7
+ ld1 {v2.16b-v3.16b}, [x1], #32 /* get 2 input blocks */
+ do_encrypt_block2x
+@@ -305,7 +298,7 @@ AES_ENTRY(aes_ctr_encrypt)
+ st1 {v0.16b-v1.16b}, [x0], #32
+ #else
+ ldr q8, =0x30000000200000001 /* addends 1,2,3[,0] */
+- dup v7.4s, w5
++ dup v7.4s, w8
+ mov v0.16b, v4.16b
+ add v7.4s, v7.4s, v8.4s
+ mov v1.16b, v4.16b
+@@ -323,18 +316,12 @@ AES_ENTRY(aes_ctr_encrypt)
+ eor v2.16b, v7.16b, v2.16b
+ eor v3.16b, v5.16b, v3.16b
+ st1 {v0.16b-v3.16b}, [x0], #64
+- add x5, x5, #INTERLEAVE
++ add x8, x8, #INTERLEAVE
+ #endif
+- cbz w4, .LctroutNx
+-.LctrincNx:
+- rev x7, x5
++ rev x7, x8
+ ins v4.d[1], x7
++ cbz w4, .Lctrout
+ b .LctrloopNx
+-.LctroutNx:
+- sub x5, x5, #1
+- rev x7, x5
+- ins v4.d[1], x7
+- b .Lctrout
+ .Lctr1x:
+ adds w4, w4, #INTERLEAVE
+ beq .Lctrout
+@@ -342,30 +329,39 @@ AES_ENTRY(aes_ctr_encrypt)
+ .Lctrloop:
+ mov v0.16b, v4.16b
+ encrypt_block v0, w3, x2, x6, w7
++
++ adds x8, x8, #1 /* increment BE ctr */
++ rev x7, x8
++ ins v4.d[1], x7
++ bcs .Lctrcarry /* overflow? */
++
++.Lctrcarrydone:
+ subs w4, w4, #1
+ bmi .Lctrhalfblock /* blocks < 0 means 1/2 block */
+ ld1 {v3.16b}, [x1], #16
+ eor v3.16b, v0.16b, v3.16b
+ st1 {v3.16b}, [x0], #16
+- beq .Lctrout
+-.Lctrinc:
+- adds x5, x5, #1 /* increment BE ctr */
+- rev x7, x5
+- ins v4.d[1], x7
+- bcc .Lctrloop /* no overflow? */
+- umov x7, v4.d[0] /* load upper word of ctr */
+- rev x7, x7 /* ... to handle the carry */
+- add x7, x7, #1
+- rev x7, x7
+- ins v4.d[0], x7
+- b .Lctrloop
++ bne .Lctrloop
++
++.Lctrout:
++ st1 {v4.16b}, [x5] /* return next CTR value */
++ FRAME_POP
++ ret
++
+ .Lctrhalfblock:
+ ld1 {v3.8b}, [x1]
+ eor v3.8b, v0.8b, v3.8b
+ st1 {v3.8b}, [x0]
+-.Lctrout:
+ FRAME_POP
+ ret
++
++.Lctrcarry:
++ umov x7, v4.d[0] /* load upper word of ctr */
++ rev x7, x7 /* ... to handle the carry */
++ add x7, x7, #1
++ rev x7, x7
++ ins v4.d[0], x7
++ b .Lctrcarrydone
+ AES_ENDPROC(aes_ctr_encrypt)
+ .ltorg
+
+diff --git a/arch/powerpc/include/asm/cpu_has_feature.h b/arch/powerpc/include/asm/cpu_has_feature.h
+index b312b15..6e834ca 100644
+--- a/arch/powerpc/include/asm/cpu_has_feature.h
++++ b/arch/powerpc/include/asm/cpu_has_feature.h
+@@ -23,7 +23,9 @@ static __always_inline bool cpu_has_feature(unsigned long feature)
+ {
+ int i;
+
++#ifndef __clang__ /* clang can't cope with this */
+ BUILD_BUG_ON(!__builtin_constant_p(feature));
++#endif
+
+ #ifdef CONFIG_JUMP_LABEL_FEATURE_CHECK_DEBUG
+ if (!static_key_initialized) {
+diff --git a/arch/powerpc/include/asm/mmu.h b/arch/powerpc/include/asm/mmu.h
+index e311c25..a244e09 100644
+--- a/arch/powerpc/include/asm/mmu.h
++++ b/arch/powerpc/include/asm/mmu.h
+@@ -160,7 +160,9 @@ static __always_inline bool mmu_has_feature(unsigned long feature)
+ {
+ int i;
+
++#ifndef __clang__ /* clang can't cope with this */
+ BUILD_BUG_ON(!__builtin_constant_p(feature));
++#endif
+
+ #ifdef CONFIG_JUMP_LABEL_FEATURE_CHECK_DEBUG
+ if (!static_key_initialized) {
+diff --git a/arch/powerpc/kernel/eeh_driver.c b/arch/powerpc/kernel/eeh_driver.c
+index 5c31369..a5dd493 100644
+--- a/arch/powerpc/kernel/eeh_driver.c
++++ b/arch/powerpc/kernel/eeh_driver.c
+@@ -545,7 +545,7 @@ static void *eeh_pe_detach_dev(void *data, void *userdata)
+ static void *__eeh_clear_pe_frozen_state(void *data, void *flag)
+ {
+ struct eeh_pe *pe = (struct eeh_pe *)data;
+- bool *clear_sw_state = flag;
++ bool clear_sw_state = *(bool *)flag;
+ int i, rc = 1;
+
+ for (i = 0; rc && i < 3; i++)
+diff --git a/arch/powerpc/kernel/prom_init.c b/arch/powerpc/kernel/prom_init.c
+index 88ac964..1e8c572 100644
+--- a/arch/powerpc/kernel/prom_init.c
++++ b/arch/powerpc/kernel/prom_init.c
+@@ -2747,6 +2747,9 @@ static void __init prom_find_boot_cpu(void)
+
+ cpu_pkg = call_prom("instance-to-package", 1, 1, prom_cpu);
+
++ if (!PHANDLE_VALID(cpu_pkg))
++ return;
++
+ prom_getprop(cpu_pkg, "reg", &rval, sizeof(rval));
+ prom.cpu = be32_to_cpu(rval);
+
+diff --git a/arch/powerpc/mm/pgtable-radix.c b/arch/powerpc/mm/pgtable-radix.c
+index ebb7f46..9a25dce 100644
+--- a/arch/powerpc/mm/pgtable-radix.c
++++ b/arch/powerpc/mm/pgtable-radix.c
+@@ -65,7 +65,7 @@ int radix__map_kernel_page(unsigned long ea, unsigned long pa,
+ if (!pmdp)
+ return -ENOMEM;
+ if (map_page_size == PMD_SIZE) {
+- ptep = (pte_t *)pudp;
++ ptep = pmdp_ptep(pmdp);
+ goto set_the_pte;
+ }
+ ptep = pte_alloc_kernel(pmdp, ea);
+@@ -90,7 +90,7 @@ int radix__map_kernel_page(unsigned long ea, unsigned long pa,
+ }
+ pmdp = pmd_offset(pudp, ea);
+ if (map_page_size == PMD_SIZE) {
+- ptep = (pte_t *)pudp;
++ ptep = pmdp_ptep(pmdp);
+ goto set_the_pte;
+ }
+ if (!pmd_present(*pmdp)) {
+diff --git a/arch/x86/events/intel/uncore.c b/arch/x86/events/intel/uncore.c
+index dbaaf7dc..19d646a 100644
+--- a/arch/x86/events/intel/uncore.c
++++ b/arch/x86/events/intel/uncore.c
+@@ -763,30 +763,6 @@ static void uncore_pmu_unregister(struct intel_uncore_pmu *pmu)
+ pmu->registered = false;
+ }
+
+-static void __uncore_exit_boxes(struct intel_uncore_type *type, int cpu)
+-{
+- struct intel_uncore_pmu *pmu = type->pmus;
+- struct intel_uncore_box *box;
+- int i, pkg;
+-
+- if (pmu) {
+- pkg = topology_physical_package_id(cpu);
+- for (i = 0; i < type->num_boxes; i++, pmu++) {
+- box = pmu->boxes[pkg];
+- if (box)
+- uncore_box_exit(box);
+- }
+- }
+-}
+-
+-static void uncore_exit_boxes(void *dummy)
+-{
+- struct intel_uncore_type **types;
+-
+- for (types = uncore_msr_uncores; *types; types++)
+- __uncore_exit_boxes(*types++, smp_processor_id());
+-}
+-
+ static void uncore_free_boxes(struct intel_uncore_pmu *pmu)
+ {
+ int pkg;
+@@ -1077,22 +1053,12 @@ static int uncore_cpu_dying(unsigned int cpu)
+ return 0;
+ }
+
+-static int first_init;
+-
+ static int uncore_cpu_starting(unsigned int cpu)
+ {
+ struct intel_uncore_type *type, **types = uncore_msr_uncores;
+ struct intel_uncore_pmu *pmu;
+ struct intel_uncore_box *box;
+- int i, pkg, ncpus = 1;
+-
+- if (first_init) {
+- /*
+- * On init we get the number of online cpus in the package
+- * and set refcount for all of them.
+- */
+- ncpus = cpumask_weight(topology_core_cpumask(cpu));
+- }
++ int i, pkg;
+
+ pkg = topology_logical_package_id(cpu);
+ for (; *types; types++) {
+@@ -1103,7 +1069,7 @@ static int uncore_cpu_starting(unsigned int cpu)
+ if (!box)
+ continue;
+ /* The first cpu on a package activates the box */
+- if (atomic_add_return(ncpus, &box->refcnt) == ncpus)
++ if (atomic_inc_return(&box->refcnt) == 1)
+ uncore_box_init(box);
+ }
+ }
+@@ -1407,19 +1373,17 @@ static int __init intel_uncore_init(void)
+ "PERF_X86_UNCORE_PREP",
+ uncore_cpu_prepare, NULL);
+ }
+- first_init = 1;
++
+ cpuhp_setup_state(CPUHP_AP_PERF_X86_UNCORE_STARTING,
+ "AP_PERF_X86_UNCORE_STARTING",
+ uncore_cpu_starting, uncore_cpu_dying);
+- first_init = 0;
++
+ cpuhp_setup_state(CPUHP_AP_PERF_X86_UNCORE_ONLINE,
+ "AP_PERF_X86_UNCORE_ONLINE",
+ uncore_event_cpu_online, uncore_event_cpu_offline);
+ return 0;
+
+ err:
+- /* Undo box->init_box() */
+- on_each_cpu_mask(&uncore_cpu_mask, uncore_exit_boxes, NULL, 1);
+ uncore_types_exit(uncore_msr_uncores);
+ uncore_pci_exit();
+ return ret;
+diff --git a/arch/x86/kernel/apic/io_apic.c b/arch/x86/kernel/apic/io_apic.c
+index 3d8ff40..7249f15 100644
+--- a/arch/x86/kernel/apic/io_apic.c
++++ b/arch/x86/kernel/apic/io_apic.c
+@@ -2118,6 +2118,7 @@ static inline void __init check_timer(void)
+ if (idx != -1 && irq_trigger(idx))
+ unmask_ioapic_irq(irq_get_chip_data(0));
+ }
++ irq_domain_deactivate_irq(irq_data);
+ irq_domain_activate_irq(irq_data);
+ if (timer_irq_works()) {
+ if (disable_timer_pin_1 > 0)
+@@ -2139,6 +2140,7 @@ static inline void __init check_timer(void)
+ * legacy devices should be connected to IO APIC #0
+ */
+ replace_pin_at_irq_node(data, node, apic1, pin1, apic2, pin2);
++ irq_domain_deactivate_irq(irq_data);
+ irq_domain_activate_irq(irq_data);
+ legacy_pic->unmask(0);
+ if (timer_irq_works()) {
+diff --git a/arch/x86/kernel/hpet.c b/arch/x86/kernel/hpet.c
+index 274fab9..932348fb 100644
+--- a/arch/x86/kernel/hpet.c
++++ b/arch/x86/kernel/hpet.c
+@@ -352,6 +352,7 @@ static int hpet_resume(struct clock_event_device *evt, int timer)
+ } else {
+ struct hpet_dev *hdev = EVT_TO_HPET_DEV(evt);
+
++ irq_domain_deactivate_irq(irq_get_irq_data(hdev->irq));
+ irq_domain_activate_irq(irq_get_irq_data(hdev->irq));
+ disable_irq(hdev->irq);
+ irq_set_affinity(hdev->irq, cpumask_of(hdev->cpu));
+diff --git a/arch/x86/kvm/x86.c b/arch/x86/kvm/x86.c
+index 487b957..731044e 100644
+--- a/arch/x86/kvm/x86.c
++++ b/arch/x86/kvm/x86.c
+@@ -3148,6 +3148,7 @@ static void fill_xsave(u8 *dest, struct kvm_vcpu *vcpu)
+ memcpy(dest, xsave, XSAVE_HDR_OFFSET);
+
+ /* Set XSTATE_BV */
++ xstate_bv &= vcpu->arch.guest_supported_xcr0 | XFEATURE_MASK_FPSSE;
+ *(u64 *)(dest + XSAVE_HDR_OFFSET) = xstate_bv;
+
+ /*
+diff --git a/arch/x86/platform/efi/efi_64.c b/arch/x86/platform/efi/efi_64.c
+index 319148b..2f25a36 100644
+--- a/arch/x86/platform/efi/efi_64.c
++++ b/arch/x86/platform/efi/efi_64.c
+@@ -269,6 +269,22 @@ int __init efi_setup_page_tables(unsigned long pa_memmap, unsigned num_pages)
+ efi_scratch.use_pgd = true;
+
+ /*
++ * Certain firmware versions are way too sentimential and still believe
++ * they are exclusive and unquestionable owners of the first physical page,
++ * even though they explicitly mark it as EFI_CONVENTIONAL_MEMORY
++ * (but then write-access it later during SetVirtualAddressMap()).
++ *
++ * Create a 1:1 mapping for this page, to avoid triple faults during early
++ * boot with such firmware. We are free to hand this page to the BIOS,
++ * as trim_bios_range() will reserve the first page and isolate it away
++ * from memory allocators anyway.
++ */
++ if (kernel_map_pages_in_pgd(pgd, 0x0, 0x0, 1, _PAGE_RW)) {
++ pr_err("Failed to create 1:1 mapping for the first page!\n");
++ return 1;
++ }
++
++ /*
+ * When making calls to the firmware everything needs to be 1:1
+ * mapped and addressable with 32-bit pointers. Map the kernel
+ * text and allocate a new stack because we can't rely on the
+diff --git a/arch/xtensa/kernel/setup.c b/arch/xtensa/kernel/setup.c
+index 88a044a..32cdc2c 100644
+--- a/arch/xtensa/kernel/setup.c
++++ b/arch/xtensa/kernel/setup.c
+@@ -540,7 +540,7 @@ subsys_initcall(topology_init);
+
+ void cpu_reset(void)
+ {
+-#if XCHAL_HAVE_PTP_MMU
++#if XCHAL_HAVE_PTP_MMU && IS_ENABLED(CONFIG_MMU)
+ local_irq_disable();
+ /*
+ * We have full MMU: all autoload ways, ways 7, 8 and 9 of DTLB must
+diff --git a/crypto/algapi.c b/crypto/algapi.c
+index df939b5..1fad2a6 100644
+--- a/crypto/algapi.c
++++ b/crypto/algapi.c
+@@ -356,6 +356,7 @@ int crypto_register_alg(struct crypto_alg *alg)
+ struct crypto_larval *larval;
+ int err;
+
++ alg->cra_flags &= ~CRYPTO_ALG_DEAD;
+ err = crypto_check_alg(alg);
+ if (err)
+ return err;
+diff --git a/drivers/ata/libata-core.c b/drivers/ata/libata-core.c
+index 223a770..33e363d 100644
+--- a/drivers/ata/libata-core.c
++++ b/drivers/ata/libata-core.c
+@@ -1695,6 +1695,8 @@ unsigned ata_exec_internal_sg(struct ata_device *dev,
+
+ if (qc->err_mask & ~AC_ERR_OTHER)
+ qc->err_mask &= ~AC_ERR_OTHER;
++ } else if (qc->tf.command == ATA_CMD_REQ_SENSE_DATA) {
++ qc->result_tf.command |= ATA_SENSE;
+ }
+
+ /* finish up */
+@@ -4316,10 +4318,10 @@ static const struct ata_blacklist_entry ata_device_blacklist [] = {
+ { "ST380013AS", "3.20", ATA_HORKAGE_MAX_SEC_1024 },
+
+ /*
+- * Device times out with higher max sects.
++ * These devices time out with higher max sects.
+ * https://bugzilla.kernel.org/show_bug.cgi?id=121671
+ */
+- { "LITEON CX1-JB256-HP", NULL, ATA_HORKAGE_MAX_SEC_1024 },
++ { "LITEON CX1-JB*-HP", NULL, ATA_HORKAGE_MAX_SEC_1024 },
+
+ /* Devices we expect to fail diagnostics */
+
+diff --git a/drivers/ata/sata_mv.c b/drivers/ata/sata_mv.c
+index 823e938..2f32782 100644
+--- a/drivers/ata/sata_mv.c
++++ b/drivers/ata/sata_mv.c
+@@ -4132,6 +4132,9 @@ static int mv_platform_probe(struct platform_device *pdev)
+ host->iomap = NULL;
+ hpriv->base = devm_ioremap(&pdev->dev, res->start,
+ resource_size(res));
++ if (!hpriv->base)
++ return -ENOMEM;
++
+ hpriv->base -= SATAHC0_REG_BASE;
+
+ hpriv->clk = clk_get(&pdev->dev, NULL);
+diff --git a/drivers/base/memory.c b/drivers/base/memory.c
+index e7f86a8..c5cdd19 100644
+--- a/drivers/base/memory.c
++++ b/drivers/base/memory.c
+@@ -391,33 +391,33 @@ static ssize_t show_valid_zones(struct device *dev,
+ {
+ struct memory_block *mem = to_memory_block(dev);
+ unsigned long start_pfn, end_pfn;
++ unsigned long valid_start, valid_end, valid_pages;
+ unsigned long nr_pages = PAGES_PER_SECTION * sections_per_block;
+- struct page *first_page;
+ struct zone *zone;
+ int zone_shift = 0;
+
+ start_pfn = section_nr_to_pfn(mem->start_section_nr);
+ end_pfn = start_pfn + nr_pages;
+- first_page = pfn_to_page(start_pfn);
+
+ /* The block contains more than one zone can not be offlined. */
+- if (!test_pages_in_a_zone(start_pfn, end_pfn))
++ if (!test_pages_in_a_zone(start_pfn, end_pfn, &valid_start, &valid_end))
+ return sprintf(buf, "none\n");
+
+- zone = page_zone(first_page);
++ zone = page_zone(pfn_to_page(valid_start));
++ valid_pages = valid_end - valid_start;
+
+ /* MMOP_ONLINE_KEEP */
+ sprintf(buf, "%s", zone->name);
+
+ /* MMOP_ONLINE_KERNEL */
+- zone_can_shift(start_pfn, nr_pages, ZONE_NORMAL, &zone_shift);
++ zone_can_shift(valid_start, valid_pages, ZONE_NORMAL, &zone_shift);
+ if (zone_shift) {
+ strcat(buf, " ");
+ strcat(buf, (zone + zone_shift)->name);
+ }
+
+ /* MMOP_ONLINE_MOVABLE */
+- zone_can_shift(start_pfn, nr_pages, ZONE_MOVABLE, &zone_shift);
++ zone_can_shift(valid_start, valid_pages, ZONE_MOVABLE, &zone_shift);
+ if (zone_shift) {
+ strcat(buf, " ");
+ strcat(buf, (zone + zone_shift)->name);
+diff --git a/drivers/bcma/bcma_private.h b/drivers/bcma/bcma_private.h
+index f642c42..168fa17 100644
+--- a/drivers/bcma/bcma_private.h
++++ b/drivers/bcma/bcma_private.h
+@@ -45,6 +45,9 @@ int bcma_sprom_get(struct bcma_bus *bus);
+ void bcma_core_chipcommon_early_init(struct bcma_drv_cc *cc);
+ void bcma_core_chipcommon_init(struct bcma_drv_cc *cc);
+ void bcma_chipco_bcm4331_ext_pa_lines_ctl(struct bcma_drv_cc *cc, bool enable);
++#ifdef CONFIG_BCMA_DRIVER_MIPS
++void bcma_chipco_serial_init(struct bcma_drv_cc *cc);
++#endif /* CONFIG_BCMA_DRIVER_MIPS */
+
+ /* driver_chipcommon_b.c */
+ int bcma_core_chipcommon_b_init(struct bcma_drv_cc_b *ccb);
+diff --git a/drivers/bcma/driver_chipcommon.c b/drivers/bcma/driver_chipcommon.c
+index b4f6520..62f5bfa 100644
+--- a/drivers/bcma/driver_chipcommon.c
++++ b/drivers/bcma/driver_chipcommon.c
+@@ -15,8 +15,6 @@
+ #include <linux/platform_device.h>
+ #include <linux/bcma/bcma.h>
+
+-static void bcma_chipco_serial_init(struct bcma_drv_cc *cc);
+-
+ static inline u32 bcma_cc_write32_masked(struct bcma_drv_cc *cc, u16 offset,
+ u32 mask, u32 value)
+ {
+@@ -186,9 +184,6 @@ void bcma_core_chipcommon_early_init(struct bcma_drv_cc *cc)
+ if (cc->capabilities & BCMA_CC_CAP_PMU)
+ bcma_pmu_early_init(cc);
+
+- if (IS_BUILTIN(CONFIG_BCM47XX) && bus->hosttype == BCMA_HOSTTYPE_SOC)
+- bcma_chipco_serial_init(cc);
+-
+ if (bus->hosttype == BCMA_HOSTTYPE_SOC)
+ bcma_core_chipcommon_flash_detect(cc);
+
+@@ -378,9 +373,9 @@ u32 bcma_chipco_gpio_pulldown(struct bcma_drv_cc *cc, u32 mask, u32 value)
+ return res;
+ }
+
+-static void bcma_chipco_serial_init(struct bcma_drv_cc *cc)
++#ifdef CONFIG_BCMA_DRIVER_MIPS
++void bcma_chipco_serial_init(struct bcma_drv_cc *cc)
+ {
+-#if IS_BUILTIN(CONFIG_BCM47XX)
+ unsigned int irq;
+ u32 baud_base;
+ u32 i;
+@@ -422,5 +417,5 @@ static void bcma_chipco_serial_init(struct bcma_drv_cc *cc)
+ ports[i].baud_base = baud_base;
+ ports[i].reg_shift = 0;
+ }
+-#endif /* CONFIG_BCM47XX */
+ }
++#endif /* CONFIG_BCMA_DRIVER_MIPS */
+diff --git a/drivers/bcma/driver_mips.c b/drivers/bcma/driver_mips.c
+index 96f1713..89af807 100644
+--- a/drivers/bcma/driver_mips.c
++++ b/drivers/bcma/driver_mips.c
+@@ -278,9 +278,12 @@ static void bcma_core_mips_nvram_init(struct bcma_drv_mips *mcore)
+
+ void bcma_core_mips_early_init(struct bcma_drv_mips *mcore)
+ {
++ struct bcma_bus *bus = mcore->core->bus;
++
+ if (mcore->early_setup_done)
+ return;
+
++ bcma_chipco_serial_init(&bus->drv_cc);
+ bcma_core_mips_nvram_init(mcore);
+
+ mcore->early_setup_done = true;
+diff --git a/drivers/dma/cppi41.c b/drivers/dma/cppi41.c
+index d5ba43a..55c1782 100644
+--- a/drivers/dma/cppi41.c
++++ b/drivers/dma/cppi41.c
+@@ -153,6 +153,8 @@ struct cppi41_dd {
+
+ /* context for suspend/resume */
+ unsigned int dma_tdfdq;
++
++ bool is_suspended;
+ };
+
+ #define FIST_COMPLETION_QUEUE 93
+@@ -257,6 +259,10 @@ static struct cppi41_channel *desc_to_chan(struct cppi41_dd *cdd, u32 desc)
+ BUG_ON(desc_num >= ALLOC_DECS_NUM);
+ c = cdd->chan_busy[desc_num];
+ cdd->chan_busy[desc_num] = NULL;
++
++ /* Usecount for chan_busy[], paired with push_desc_queue() */
++ pm_runtime_put(cdd->ddev.dev);
++
+ return c;
+ }
+
+@@ -447,6 +453,15 @@ static void push_desc_queue(struct cppi41_channel *c)
+ */
+ __iowmb();
+
++ /*
++ * DMA transfers can take at least 200ms to complete with USB mass
++ * storage connected. To prevent autosuspend timeouts, we must use
++ * pm_runtime_get/put() when chan_busy[] is modified. This will get
++ * cleared in desc_to_chan() or cppi41_stop_chan() depending on the
++ * outcome of the transfer.
++ */
++ pm_runtime_get(cdd->ddev.dev);
++
+ desc_phys = lower_32_bits(c->desc_phys);
+ desc_num = (desc_phys - cdd->descs_phys) / sizeof(struct cppi41_desc);
+ WARN_ON(cdd->chan_busy[desc_num]);
+@@ -457,20 +472,26 @@ static void push_desc_queue(struct cppi41_channel *c)
+ cppi_writel(reg, cdd->qmgr_mem + QMGR_QUEUE_D(c->q_num));
+ }
+
+-static void pending_desc(struct cppi41_channel *c)
++/*
++ * Caller must hold cdd->lock to prevent push_desc_queue()
++ * getting called out of order. We have both cppi41_dma_issue_pending()
++ * and cppi41_runtime_resume() call this function.
++ */
++static void cppi41_run_queue(struct cppi41_dd *cdd)
+ {
+- struct cppi41_dd *cdd = c->cdd;
+- unsigned long flags;
++ struct cppi41_channel *c, *_c;
+
+- spin_lock_irqsave(&cdd->lock, flags);
+- list_add_tail(&c->node, &cdd->pending);
+- spin_unlock_irqrestore(&cdd->lock, flags);
++ list_for_each_entry_safe(c, _c, &cdd->pending, node) {
++ push_desc_queue(c);
++ list_del(&c->node);
++ }
+ }
+
+ static void cppi41_dma_issue_pending(struct dma_chan *chan)
+ {
+ struct cppi41_channel *c = to_cpp41_chan(chan);
+ struct cppi41_dd *cdd = c->cdd;
++ unsigned long flags;
+ int error;
+
+ error = pm_runtime_get(cdd->ddev.dev);
+@@ -482,10 +503,11 @@ static void cppi41_dma_issue_pending(struct dma_chan *chan)
+ return;
+ }
+
+- if (likely(pm_runtime_active(cdd->ddev.dev)))
+- push_desc_queue(c);
+- else
+- pending_desc(c);
++ spin_lock_irqsave(&cdd->lock, flags);
++ list_add_tail(&c->node, &cdd->pending);
++ if (!cdd->is_suspended)
++ cppi41_run_queue(cdd);
++ spin_unlock_irqrestore(&cdd->lock, flags);
+
+ pm_runtime_mark_last_busy(cdd->ddev.dev);
+ pm_runtime_put_autosuspend(cdd->ddev.dev);
+@@ -705,6 +727,9 @@ static int cppi41_stop_chan(struct dma_chan *chan)
+ WARN_ON(!cdd->chan_busy[desc_num]);
+ cdd->chan_busy[desc_num] = NULL;
+
++ /* Usecount for chan_busy[], paired with push_desc_queue() */
++ pm_runtime_put(cdd->ddev.dev);
++
+ return 0;
+ }
+
+@@ -1150,8 +1175,12 @@ static int __maybe_unused cppi41_resume(struct device *dev)
+ static int __maybe_unused cppi41_runtime_suspend(struct device *dev)
+ {
+ struct cppi41_dd *cdd = dev_get_drvdata(dev);
++ unsigned long flags;
+
++ spin_lock_irqsave(&cdd->lock, flags);
++ cdd->is_suspended = true;
+ WARN_ON(!list_empty(&cdd->pending));
++ spin_unlock_irqrestore(&cdd->lock, flags);
+
+ return 0;
+ }
+@@ -1159,14 +1188,11 @@ static int __maybe_unused cppi41_runtime_suspend(struct device *dev)
+ static int __maybe_unused cppi41_runtime_resume(struct device *dev)
+ {
+ struct cppi41_dd *cdd = dev_get_drvdata(dev);
+- struct cppi41_channel *c, *_c;
+ unsigned long flags;
+
+ spin_lock_irqsave(&cdd->lock, flags);
+- list_for_each_entry_safe(c, _c, &cdd->pending, node) {
+- push_desc_queue(c);
+- list_del(&c->node);
+- }
++ cdd->is_suspended = false;
++ cppi41_run_queue(cdd);
+ spin_unlock_irqrestore(&cdd->lock, flags);
+
+ return 0;
+diff --git a/drivers/firmware/efi/libstub/fdt.c b/drivers/firmware/efi/libstub/fdt.c
+index 921dfa0..260c4b4 100644
+--- a/drivers/firmware/efi/libstub/fdt.c
++++ b/drivers/firmware/efi/libstub/fdt.c
+@@ -187,6 +187,7 @@ static efi_status_t update_fdt_memmap(void *fdt, struct efi_boot_memmap *map)
+ struct exit_boot_struct {
+ efi_memory_desc_t *runtime_map;
+ int *runtime_entry_count;
++ void *new_fdt_addr;
+ };
+
+ static efi_status_t exit_boot_func(efi_system_table_t *sys_table_arg,
+@@ -202,7 +203,7 @@ static efi_status_t exit_boot_func(efi_system_table_t *sys_table_arg,
+ efi_get_virtmap(*map->map, *map->map_size, *map->desc_size,
+ p->runtime_map, p->runtime_entry_count);
+
+- return EFI_SUCCESS;
++ return update_fdt_memmap(p->new_fdt_addr, map);
+ }
+
+ /*
+@@ -300,22 +301,13 @@ efi_status_t allocate_new_fdt_and_exit_boot(efi_system_table_t *sys_table,
+
+ priv.runtime_map = runtime_map;
+ priv.runtime_entry_count = &runtime_entry_count;
++ priv.new_fdt_addr = (void *)*new_fdt_addr;
+ status = efi_exit_boot_services(sys_table, handle, &map, &priv,
+ exit_boot_func);
+
+ if (status == EFI_SUCCESS) {
+ efi_set_virtual_address_map_t *svam;
+
+- status = update_fdt_memmap((void *)*new_fdt_addr, &map);
+- if (status != EFI_SUCCESS) {
+- /*
+- * The kernel won't get far without the memory map, but
+- * may still be able to print something meaningful so
+- * return success here.
+- */
+- return EFI_SUCCESS;
+- }
+-
+ /* Install the new virtual address map */
+ svam = sys_table->runtime->set_virtual_address_map;
+ status = svam(runtime_entry_count * desc_size, desc_size,
+diff --git a/drivers/gpu/drm/amd/amdgpu/gmc_v6_0.c b/drivers/gpu/drm/amd/amdgpu/gmc_v6_0.c
+index b13c8aa..6df924f 100644
+--- a/drivers/gpu/drm/amd/amdgpu/gmc_v6_0.c
++++ b/drivers/gpu/drm/amd/amdgpu/gmc_v6_0.c
+@@ -227,6 +227,9 @@ static void gmc_v6_0_mc_program(struct amdgpu_device *adev)
+ }
+ WREG32(HDP_REG_COHERENCY_FLUSH_CNTL, 0);
+
++ if (adev->mode_info.num_crtc)
++ amdgpu_display_set_vga_render_state(adev, false);
++
+ gmc_v6_0_mc_stop(adev, &save);
+
+ if (gmc_v6_0_wait_for_idle((void *)adev)) {
+@@ -256,7 +259,6 @@ static void gmc_v6_0_mc_program(struct amdgpu_device *adev)
+ dev_warn(adev->dev, "Wait for MC idle timedout !\n");
+ }
+ gmc_v6_0_mc_resume(adev, &save);
+- amdgpu_display_set_vga_render_state(adev, false);
+ }
+
+ static int gmc_v6_0_mc_init(struct amdgpu_device *adev)
+diff --git a/drivers/gpu/drm/i915/intel_lrc.c b/drivers/gpu/drm/i915/intel_lrc.c
+index 67db157..4147e51 100644
+--- a/drivers/gpu/drm/i915/intel_lrc.c
++++ b/drivers/gpu/drm/i915/intel_lrc.c
+@@ -2152,30 +2152,42 @@ static int execlists_context_deferred_alloc(struct i915_gem_context *ctx,
+
+ void intel_lr_context_resume(struct drm_i915_private *dev_priv)
+ {
+- struct i915_gem_context *ctx = dev_priv->kernel_context;
+ struct intel_engine_cs *engine;
++ struct i915_gem_context *ctx;
++
++ /* Because we emit WA_TAIL_DWORDS there may be a disparity
++ * between our bookkeeping in ce->ring->head and ce->ring->tail and
++ * that stored in context. As we only write new commands from
++ * ce->ring->tail onwards, everything before that is junk. If the GPU
++ * starts reading from its RING_HEAD from the context, it may try to
++ * execute that junk and die.
++ *
++ * So to avoid that we reset the context images upon resume. For
++ * simplicity, we just zero everything out.
++ */
++ list_for_each_entry(ctx, &dev_priv->context_list, link) {
++ for_each_engine(engine, dev_priv) {
++ struct intel_context *ce = &ctx->engine[engine->id];
++ u32 *reg;
+
+- for_each_engine(engine, dev_priv) {
+- struct intel_context *ce = &ctx->engine[engine->id];
+- void *vaddr;
+- uint32_t *reg_state;
+-
+- if (!ce->state)
+- continue;
+-
+- vaddr = i915_gem_object_pin_map(ce->state->obj, I915_MAP_WB);
+- if (WARN_ON(IS_ERR(vaddr)))
+- continue;
++ if (!ce->state)
++ continue;
+
+- reg_state = vaddr + LRC_STATE_PN * PAGE_SIZE;
++ reg = i915_gem_object_pin_map(ce->state->obj,
++ I915_MAP_WB);
++ if (WARN_ON(IS_ERR(reg)))
++ continue;
+
+- reg_state[CTX_RING_HEAD+1] = 0;
+- reg_state[CTX_RING_TAIL+1] = 0;
++ reg += LRC_STATE_PN * PAGE_SIZE / sizeof(*reg);
++ reg[CTX_RING_HEAD+1] = 0;
++ reg[CTX_RING_TAIL+1] = 0;
+
+- ce->state->obj->dirty = true;
+- i915_gem_object_unpin_map(ce->state->obj);
++ ce->state->obj->dirty = true;
++ i915_gem_object_unpin_map(ce->state->obj);
+
+- ce->ring->head = 0;
+- ce->ring->tail = 0;
++ ce->ring->head = ce->ring->tail = 0;
++ ce->ring->last_retired_head = -1;
++ intel_ring_update_space(ce->ring);
++ }
+ }
+ }
+diff --git a/drivers/gpu/drm/nouveau/dispnv04/hw.c b/drivers/gpu/drm/nouveau/dispnv04/hw.c
+index 74856a8..e64f524 100644
+--- a/drivers/gpu/drm/nouveau/dispnv04/hw.c
++++ b/drivers/gpu/drm/nouveau/dispnv04/hw.c
+@@ -222,6 +222,7 @@ nouveau_hw_get_clock(struct drm_device *dev, enum nvbios_pll_type plltype)
+ uint32_t mpllP;
+
+ pci_read_config_dword(pci_get_bus_and_slot(0, 3), 0x6c, &mpllP);
++ mpllP = (mpllP >> 8) & 0xf;
+ if (!mpllP)
+ mpllP = 4;
+
+@@ -232,7 +233,7 @@ nouveau_hw_get_clock(struct drm_device *dev, enum nvbios_pll_type plltype)
+ uint32_t clock;
+
+ pci_read_config_dword(pci_get_bus_and_slot(0, 5), 0x4c, &clock);
+- return clock;
++ return clock / 1000;
+ }
+
+ ret = nouveau_hw_get_pllvals(dev, plltype, &pllvals);
+diff --git a/drivers/gpu/drm/nouveau/nvkm/engine/disp/hdagt215.c b/drivers/gpu/drm/nouveau/nvkm/engine/disp/hdagt215.c
+index 6f0436d..f8f2f16 100644
+--- a/drivers/gpu/drm/nouveau/nvkm/engine/disp/hdagt215.c
++++ b/drivers/gpu/drm/nouveau/nvkm/engine/disp/hdagt215.c
+@@ -59,7 +59,7 @@ gt215_hda_eld(NV50_DISP_MTHD_V1)
+ );
+ }
+ for (i = 0; i < size; i++)
+- nvkm_wr32(device, 0x61c440 + soff, (i << 8) | args->v0.data[0]);
++ nvkm_wr32(device, 0x61c440 + soff, (i << 8) | args->v0.data[i]);
+ for (; i < 0x60; i++)
+ nvkm_wr32(device, 0x61c440 + soff, (i << 8));
+ nvkm_mask(device, 0x61c448 + soff, 0x80000003, 0x80000003);
+diff --git a/drivers/hid/hid-cp2112.c b/drivers/hid/hid-cp2112.c
+index 60d3020..e06c134 100644
+--- a/drivers/hid/hid-cp2112.c
++++ b/drivers/hid/hid-cp2112.c
+@@ -167,7 +167,7 @@ struct cp2112_device {
+ atomic_t xfer_avail;
+ struct gpio_chip gc;
+ u8 *in_out_buffer;
+- spinlock_t lock;
++ struct mutex lock;
+ };
+
+ static int gpio_push_pull = 0xFF;
+@@ -179,10 +179,9 @@ static int cp2112_gpio_direction_input(struct gpio_chip *chip, unsigned offset)
+ struct cp2112_device *dev = gpiochip_get_data(chip);
+ struct hid_device *hdev = dev->hdev;
+ u8 *buf = dev->in_out_buffer;
+- unsigned long flags;
+ int ret;
+
+- spin_lock_irqsave(&dev->lock, flags);
++ mutex_lock(&dev->lock);
+
+ ret = hid_hw_raw_request(hdev, CP2112_GPIO_CONFIG, buf,
+ CP2112_GPIO_CONFIG_LENGTH, HID_FEATURE_REPORT,
+@@ -206,8 +205,8 @@ static int cp2112_gpio_direction_input(struct gpio_chip *chip, unsigned offset)
+ ret = 0;
+
+ exit:
+- spin_unlock_irqrestore(&dev->lock, flags);
+- return ret <= 0 ? ret : -EIO;
++ mutex_unlock(&dev->lock);
++ return ret < 0 ? ret : -EIO;
+ }
+
+ static void cp2112_gpio_set(struct gpio_chip *chip, unsigned offset, int value)
+@@ -215,10 +214,9 @@ static void cp2112_gpio_set(struct gpio_chip *chip, unsigned offset, int value)
+ struct cp2112_device *dev = gpiochip_get_data(chip);
+ struct hid_device *hdev = dev->hdev;
+ u8 *buf = dev->in_out_buffer;
+- unsigned long flags;
+ int ret;
+
+- spin_lock_irqsave(&dev->lock, flags);
++ mutex_lock(&dev->lock);
+
+ buf[0] = CP2112_GPIO_SET;
+ buf[1] = value ? 0xff : 0;
+@@ -230,7 +228,7 @@ static void cp2112_gpio_set(struct gpio_chip *chip, unsigned offset, int value)
+ if (ret < 0)
+ hid_err(hdev, "error setting GPIO values: %d\n", ret);
+
+- spin_unlock_irqrestore(&dev->lock, flags);
++ mutex_unlock(&dev->lock);
+ }
+
+ static int cp2112_gpio_get(struct gpio_chip *chip, unsigned offset)
+@@ -238,10 +236,9 @@ static int cp2112_gpio_get(struct gpio_chip *chip, unsigned offset)
+ struct cp2112_device *dev = gpiochip_get_data(chip);
+ struct hid_device *hdev = dev->hdev;
+ u8 *buf = dev->in_out_buffer;
+- unsigned long flags;
+ int ret;
+
+- spin_lock_irqsave(&dev->lock, flags);
++ mutex_lock(&dev->lock);
+
+ ret = hid_hw_raw_request(hdev, CP2112_GPIO_GET, buf,
+ CP2112_GPIO_GET_LENGTH, HID_FEATURE_REPORT,
+@@ -255,7 +252,7 @@ static int cp2112_gpio_get(struct gpio_chip *chip, unsigned offset)
+ ret = (buf[1] >> offset) & 1;
+
+ exit:
+- spin_unlock_irqrestore(&dev->lock, flags);
++ mutex_unlock(&dev->lock);
+
+ return ret;
+ }
+@@ -266,10 +263,9 @@ static int cp2112_gpio_direction_output(struct gpio_chip *chip,
+ struct cp2112_device *dev = gpiochip_get_data(chip);
+ struct hid_device *hdev = dev->hdev;
+ u8 *buf = dev->in_out_buffer;
+- unsigned long flags;
+ int ret;
+
+- spin_lock_irqsave(&dev->lock, flags);
++ mutex_lock(&dev->lock);
+
+ ret = hid_hw_raw_request(hdev, CP2112_GPIO_CONFIG, buf,
+ CP2112_GPIO_CONFIG_LENGTH, HID_FEATURE_REPORT,
+@@ -290,7 +286,7 @@ static int cp2112_gpio_direction_output(struct gpio_chip *chip,
+ goto fail;
+ }
+
+- spin_unlock_irqrestore(&dev->lock, flags);
++ mutex_unlock(&dev->lock);
+
+ /*
+ * Set gpio value when output direction is already set,
+@@ -301,7 +297,7 @@ static int cp2112_gpio_direction_output(struct gpio_chip *chip,
+ return 0;
+
+ fail:
+- spin_unlock_irqrestore(&dev->lock, flags);
++ mutex_unlock(&dev->lock);
+ return ret < 0 ? ret : -EIO;
+ }
+
+@@ -1057,7 +1053,7 @@ static int cp2112_probe(struct hid_device *hdev, const struct hid_device_id *id)
+ if (!dev->in_out_buffer)
+ return -ENOMEM;
+
+- spin_lock_init(&dev->lock);
++ mutex_init(&dev->lock);
+
+ ret = hid_parse(hdev);
+ if (ret) {
+diff --git a/drivers/hid/hid-ids.h b/drivers/hid/hid-ids.h
+index 575aa65..9845189 100644
+--- a/drivers/hid/hid-ids.h
++++ b/drivers/hid/hid-ids.h
+@@ -76,6 +76,9 @@
+ #define USB_VENDOR_ID_ALPS_JP 0x044E
+ #define HID_DEVICE_ID_ALPS_U1_DUAL 0x120B
+
++#define USB_VENDOR_ID_AMI 0x046b
++#define USB_DEVICE_ID_AMI_VIRT_KEYBOARD_AND_MOUSE 0xff10
++
+ #define USB_VENDOR_ID_ANTON 0x1130
+ #define USB_DEVICE_ID_ANTON_TOUCH_PAD 0x3101
+
+diff --git a/drivers/hid/hid-lg.c b/drivers/hid/hid-lg.c
+index c5c5fbe..52026dc 100644
+--- a/drivers/hid/hid-lg.c
++++ b/drivers/hid/hid-lg.c
+@@ -872,7 +872,7 @@ static const struct hid_device_id lg_devices[] = {
+ { HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_LOGITECH_WINGMAN_FFG),
+ .driver_data = LG_NOGET | LG_FF4 },
+ { HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_LOGITECH_RUMBLEPAD2),
+- .driver_data = LG_FF2 },
++ .driver_data = LG_NOGET | LG_FF2 },
+ { HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_LOGITECH_FLIGHT_SYSTEM_G940),
+ .driver_data = LG_FF3 },
+ { HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_SPACENAVIGATOR),
+diff --git a/drivers/hid/usbhid/hid-quirks.c b/drivers/hid/usbhid/hid-quirks.c
+index e6cfd32..cde060f 100644
+--- a/drivers/hid/usbhid/hid-quirks.c
++++ b/drivers/hid/usbhid/hid-quirks.c
+@@ -57,6 +57,7 @@ static const struct hid_blacklist {
+ { USB_VENDOR_ID_AIREN, USB_DEVICE_ID_AIREN_SLIMPLUS, HID_QUIRK_NOGET },
+ { USB_VENDOR_ID_AKAI, USB_DEVICE_ID_AKAI_MPKMINI2, HID_QUIRK_NO_INIT_REPORTS },
+ { USB_VENDOR_ID_AKAI_09E8, USB_DEVICE_ID_AKAI_09E8_MIDIMIX, HID_QUIRK_NO_INIT_REPORTS },
++ { USB_VENDOR_ID_AMI, USB_DEVICE_ID_AMI_VIRT_KEYBOARD_AND_MOUSE, HID_QUIRK_ALWAYS_POLL },
+ { USB_VENDOR_ID_ATEN, USB_DEVICE_ID_ATEN_UC100KM, HID_QUIRK_NOGET },
+ { USB_VENDOR_ID_ATEN, USB_DEVICE_ID_ATEN_CS124U, HID_QUIRK_NOGET },
+ { USB_VENDOR_ID_ATEN, USB_DEVICE_ID_ATEN_2PORTKVM, HID_QUIRK_NOGET },
+diff --git a/drivers/hid/wacom_wac.c b/drivers/hid/wacom_wac.c
+index 1cb7992..623be90 100644
+--- a/drivers/hid/wacom_wac.c
++++ b/drivers/hid/wacom_wac.c
+@@ -164,19 +164,21 @@ static int wacom_pl_irq(struct wacom_wac *wacom)
+ wacom->id[0] = STYLUS_DEVICE_ID;
+ }
+
+- pressure = (signed char)((data[7] << 1) | ((data[4] >> 2) & 1));
+- if (features->pressure_max > 255)
+- pressure = (pressure << 1) | ((data[4] >> 6) & 1);
+- pressure += (features->pressure_max + 1) / 2;
+-
+- input_report_abs(input, ABS_X, data[3] | (data[2] << 7) | ((data[1] & 0x03) << 14));
+- input_report_abs(input, ABS_Y, data[6] | (data[5] << 7) | ((data[4] & 0x03) << 14));
+- input_report_abs(input, ABS_PRESSURE, pressure);
+-
+- input_report_key(input, BTN_TOUCH, data[4] & 0x08);
+- input_report_key(input, BTN_STYLUS, data[4] & 0x10);
+- /* Only allow the stylus2 button to be reported for the pen tool. */
+- input_report_key(input, BTN_STYLUS2, (wacom->tool[0] == BTN_TOOL_PEN) && (data[4] & 0x20));
++ if (prox) {
++ pressure = (signed char)((data[7] << 1) | ((data[4] >> 2) & 1));
++ if (features->pressure_max > 255)
++ pressure = (pressure << 1) | ((data[4] >> 6) & 1);
++ pressure += (features->pressure_max + 1) / 2;
++
++ input_report_abs(input, ABS_X, data[3] | (data[2] << 7) | ((data[1] & 0x03) << 14));
++ input_report_abs(input, ABS_Y, data[6] | (data[5] << 7) | ((data[4] & 0x03) << 14));
++ input_report_abs(input, ABS_PRESSURE, pressure);
++
++ input_report_key(input, BTN_TOUCH, data[4] & 0x08);
++ input_report_key(input, BTN_STYLUS, data[4] & 0x10);
++ /* Only allow the stylus2 button to be reported for the pen tool. */
++ input_report_key(input, BTN_STYLUS2, (wacom->tool[0] == BTN_TOOL_PEN) && (data[4] & 0x20));
++ }
+
+ if (!prox)
+ wacom->id[0] = 0;
+diff --git a/drivers/iio/adc/palmas_gpadc.c b/drivers/iio/adc/palmas_gpadc.c
+index 2bbf0c5..7d61b56 100644
+--- a/drivers/iio/adc/palmas_gpadc.c
++++ b/drivers/iio/adc/palmas_gpadc.c
+@@ -775,7 +775,7 @@ static int palmas_adc_wakeup_reset(struct palmas_gpadc *adc)
+
+ static int palmas_gpadc_suspend(struct device *dev)
+ {
+- struct iio_dev *indio_dev = dev_to_iio_dev(dev);
++ struct iio_dev *indio_dev = dev_get_drvdata(dev);
+ struct palmas_gpadc *adc = iio_priv(indio_dev);
+ int wakeup = adc->wakeup1_enable || adc->wakeup2_enable;
+ int ret;
+@@ -798,7 +798,7 @@ static int palmas_gpadc_suspend(struct device *dev)
+
+ static int palmas_gpadc_resume(struct device *dev)
+ {
+- struct iio_dev *indio_dev = dev_to_iio_dev(dev);
++ struct iio_dev *indio_dev = dev_get_drvdata(dev);
+ struct palmas_gpadc *adc = iio_priv(indio_dev);
+ int wakeup = adc->wakeup1_enable || adc->wakeup2_enable;
+ int ret;
+diff --git a/drivers/iio/health/afe4403.c b/drivers/iio/health/afe4403.c
+index 9a08146..6bb23a4 100644
+--- a/drivers/iio/health/afe4403.c
++++ b/drivers/iio/health/afe4403.c
+@@ -422,7 +422,7 @@ MODULE_DEVICE_TABLE(of, afe4403_of_match);
+
+ static int __maybe_unused afe4403_suspend(struct device *dev)
+ {
+- struct iio_dev *indio_dev = dev_to_iio_dev(dev);
++ struct iio_dev *indio_dev = spi_get_drvdata(to_spi_device(dev));
+ struct afe4403_data *afe = iio_priv(indio_dev);
+ int ret;
+
+@@ -443,7 +443,7 @@ static int __maybe_unused afe4403_suspend(struct device *dev)
+
+ static int __maybe_unused afe4403_resume(struct device *dev)
+ {
+- struct iio_dev *indio_dev = dev_to_iio_dev(dev);
++ struct iio_dev *indio_dev = spi_get_drvdata(to_spi_device(dev));
+ struct afe4403_data *afe = iio_priv(indio_dev);
+ int ret;
+
+diff --git a/drivers/iio/health/afe4404.c b/drivers/iio/health/afe4404.c
+index 4526640..964f523 100644
+--- a/drivers/iio/health/afe4404.c
++++ b/drivers/iio/health/afe4404.c
+@@ -428,7 +428,7 @@ MODULE_DEVICE_TABLE(of, afe4404_of_match);
+
+ static int __maybe_unused afe4404_suspend(struct device *dev)
+ {
+- struct iio_dev *indio_dev = dev_to_iio_dev(dev);
++ struct iio_dev *indio_dev = i2c_get_clientdata(to_i2c_client(dev));
+ struct afe4404_data *afe = iio_priv(indio_dev);
+ int ret;
+
+@@ -449,7 +449,7 @@ static int __maybe_unused afe4404_suspend(struct device *dev)
+
+ static int __maybe_unused afe4404_resume(struct device *dev)
+ {
+- struct iio_dev *indio_dev = dev_to_iio_dev(dev);
++ struct iio_dev *indio_dev = i2c_get_clientdata(to_i2c_client(dev));
+ struct afe4404_data *afe = iio_priv(indio_dev);
+ int ret;
+
+diff --git a/drivers/iio/health/max30100.c b/drivers/iio/health/max30100.c
+index 90ab8a2d..183c143 100644
+--- a/drivers/iio/health/max30100.c
++++ b/drivers/iio/health/max30100.c
+@@ -238,7 +238,7 @@ static irqreturn_t max30100_interrupt_handler(int irq, void *private)
+
+ mutex_lock(&data->lock);
+
+- while (cnt || (cnt = max30100_fifo_count(data) > 0)) {
++ while (cnt || (cnt = max30100_fifo_count(data)) > 0) {
+ ret = max30100_read_measurement(data);
+ if (ret)
+ break;
+diff --git a/drivers/iio/humidity/dht11.c b/drivers/iio/humidity/dht11.c
+index 9c47bc9..2a22ad9 100644
+--- a/drivers/iio/humidity/dht11.c
++++ b/drivers/iio/humidity/dht11.c
+@@ -71,7 +71,8 @@
+ * a) select an implementation using busy loop polling on those systems
+ * b) use the checksum to do some probabilistic decoding
+ */
+-#define DHT11_START_TRANSMISSION 18 /* ms */
++#define DHT11_START_TRANSMISSION_MIN 18000 /* us */
++#define DHT11_START_TRANSMISSION_MAX 20000 /* us */
+ #define DHT11_MIN_TIMERES 34000 /* ns */
+ #define DHT11_THRESHOLD 49000 /* ns */
+ #define DHT11_AMBIG_LOW 23000 /* ns */
+@@ -228,7 +229,8 @@ static int dht11_read_raw(struct iio_dev *iio_dev,
+ ret = gpio_direction_output(dht11->gpio, 0);
+ if (ret)
+ goto err;
+- msleep(DHT11_START_TRANSMISSION);
++ usleep_range(DHT11_START_TRANSMISSION_MIN,
++ DHT11_START_TRANSMISSION_MAX);
+ ret = gpio_direction_input(dht11->gpio);
+ if (ret)
+ goto err;
+diff --git a/drivers/infiniband/hw/cxgb4/qp.c b/drivers/infiniband/hw/cxgb4/qp.c
+index bb0fde6..cc2243f 100644
+--- a/drivers/infiniband/hw/cxgb4/qp.c
++++ b/drivers/infiniband/hw/cxgb4/qp.c
+@@ -321,7 +321,8 @@ static int create_qp(struct c4iw_rdev *rdev, struct t4_wq *wq,
+ FW_RI_RES_WR_DCAEN_V(0) |
+ FW_RI_RES_WR_DCACPU_V(0) |
+ FW_RI_RES_WR_FBMIN_V(2) |
+- FW_RI_RES_WR_FBMAX_V(2) |
++ (t4_sq_onchip(&wq->sq) ? FW_RI_RES_WR_FBMAX_V(2) :
++ FW_RI_RES_WR_FBMAX_V(3)) |
+ FW_RI_RES_WR_CIDXFTHRESHO_V(0) |
+ FW_RI_RES_WR_CIDXFTHRESH_V(0) |
+ FW_RI_RES_WR_EQSIZE_V(eqsize));
+@@ -345,7 +346,7 @@ static int create_qp(struct c4iw_rdev *rdev, struct t4_wq *wq,
+ FW_RI_RES_WR_DCAEN_V(0) |
+ FW_RI_RES_WR_DCACPU_V(0) |
+ FW_RI_RES_WR_FBMIN_V(2) |
+- FW_RI_RES_WR_FBMAX_V(2) |
++ FW_RI_RES_WR_FBMAX_V(3) |
+ FW_RI_RES_WR_CIDXFTHRESHO_V(0) |
+ FW_RI_RES_WR_CIDXFTHRESH_V(0) |
+ FW_RI_RES_WR_EQSIZE_V(eqsize));
+diff --git a/drivers/mmc/host/sdhci.c b/drivers/mmc/host/sdhci.c
+index e1e274a..ba637ff 100644
+--- a/drivers/mmc/host/sdhci.c
++++ b/drivers/mmc/host/sdhci.c
+@@ -2719,7 +2719,8 @@ static irqreturn_t sdhci_irq(int irq, void *dev_id)
+ if (intmask & SDHCI_INT_RETUNE)
+ mmc_retune_needed(host->mmc);
+
+- if (intmask & SDHCI_INT_CARD_INT) {
++ if ((intmask & SDHCI_INT_CARD_INT) &&
++ (host->ier & SDHCI_INT_CARD_INT)) {
+ sdhci_enable_sdio_irq_nolock(host, false);
+ host->thread_isr |= SDHCI_INT_CARD_INT;
+ result = IRQ_WAKE_THREAD;
+diff --git a/drivers/net/wireless/intel/iwlwifi/iwl-8000.c b/drivers/net/wireless/intel/iwlwifi/iwl-8000.c
+index d02ca14..8d3e53f 100644
+--- a/drivers/net/wireless/intel/iwlwifi/iwl-8000.c
++++ b/drivers/net/wireless/intel/iwlwifi/iwl-8000.c
+@@ -91,7 +91,7 @@
+
+ #define IWL8000_FW_PRE "iwlwifi-8000C-"
+ #define IWL8000_MODULE_FIRMWARE(api) \
+- IWL8000_FW_PRE "-" __stringify(api) ".ucode"
++ IWL8000_FW_PRE __stringify(api) ".ucode"
+
+ #define IWL8265_FW_PRE "iwlwifi-8265-"
+ #define IWL8265_MODULE_FIRMWARE(api) \
+diff --git a/drivers/net/wireless/intel/iwlwifi/mvm/sta.c b/drivers/net/wireless/intel/iwlwifi/mvm/sta.c
+index fc77188..52de3c6 100644
+--- a/drivers/net/wireless/intel/iwlwifi/mvm/sta.c
++++ b/drivers/net/wireless/intel/iwlwifi/mvm/sta.c
+@@ -1144,9 +1144,10 @@ static void iwl_mvm_realloc_queues_after_restart(struct iwl_mvm *mvm,
+ .frame_limit = IWL_FRAME_LIMIT,
+ };
+
+- /* Make sure reserved queue is still marked as such (or allocated) */
+- mvm->queue_info[mvm_sta->reserved_queue].status =
+- IWL_MVM_QUEUE_RESERVED;
++ /* Make sure reserved queue is still marked as such (if allocated) */
++ if (mvm_sta->reserved_queue != IEEE80211_INVAL_HW_QUEUE)
++ mvm->queue_info[mvm_sta->reserved_queue].status =
++ IWL_MVM_QUEUE_RESERVED;
+
+ for (i = 0; i <= IWL_MAX_TID_COUNT; i++) {
+ struct iwl_mvm_tid_data *tid_data = &mvm_sta->tid_data[i];
+diff --git a/drivers/pci/pcie/aspm.c b/drivers/pci/pcie/aspm.c
+index 0ec649d..b0916b1 100644
+--- a/drivers/pci/pcie/aspm.c
++++ b/drivers/pci/pcie/aspm.c
+@@ -518,25 +518,32 @@ static struct pcie_link_state *alloc_pcie_link_state(struct pci_dev *pdev)
+ link = kzalloc(sizeof(*link), GFP_KERNEL);
+ if (!link)
+ return NULL;
++
+ INIT_LIST_HEAD(&link->sibling);
+ INIT_LIST_HEAD(&link->children);
+ INIT_LIST_HEAD(&link->link);
+ link->pdev = pdev;
+- if (pci_pcie_type(pdev) != PCI_EXP_TYPE_ROOT_PORT) {
++
++ /*
++ * Root Ports and PCI/PCI-X to PCIe Bridges are roots of PCIe
++ * hierarchies.
++ */
++ if (pci_pcie_type(pdev) == PCI_EXP_TYPE_ROOT_PORT ||
++ pci_pcie_type(pdev) == PCI_EXP_TYPE_PCIE_BRIDGE) {
++ link->root = link;
++ } else {
+ struct pcie_link_state *parent;
++
+ parent = pdev->bus->parent->self->link_state;
+ if (!parent) {
+ kfree(link);
+ return NULL;
+ }
++
+ link->parent = parent;
++ link->root = link->parent->root;
+ list_add(&link->link, &parent->children);
+ }
+- /* Setup a pointer to the root port link */
+- if (!link->parent)
+- link->root = link;
+- else
+- link->root = link->parent->root;
+
+ list_add(&link->sibling, &link_list);
+ pdev->link_state = link;
+diff --git a/drivers/pinctrl/intel/pinctrl-baytrail.c b/drivers/pinctrl/intel/pinctrl-baytrail.c
+index 0790153..583ae3f 100644
+--- a/drivers/pinctrl/intel/pinctrl-baytrail.c
++++ b/drivers/pinctrl/intel/pinctrl-baytrail.c
+@@ -731,16 +731,23 @@ static void __iomem *byt_gpio_reg(struct byt_gpio *vg, unsigned int offset,
+ int reg)
+ {
+ struct byt_community *comm = byt_get_community(vg, offset);
+- u32 reg_offset = 0;
++ u32 reg_offset;
+
+ if (!comm)
+ return NULL;
+
+ offset -= comm->pin_base;
+- if (reg == BYT_INT_STAT_REG)
++ switch (reg) {
++ case BYT_INT_STAT_REG:
+ reg_offset = (offset / 32) * 4;
+- else
++ break;
++ case BYT_DEBOUNCE_REG:
++ reg_offset = 0;
++ break;
++ default:
+ reg_offset = comm->pad_map[offset] * 16;
++ break;
++ }
+
+ return comm->reg_base + reg_offset + reg;
+ }
+@@ -1612,7 +1619,9 @@ static void byt_gpio_irq_handler(struct irq_desc *desc)
+ continue;
+ }
+
++ raw_spin_lock(&vg->lock);
+ pending = readl(reg);
++ raw_spin_unlock(&vg->lock);
+ for_each_set_bit(pin, &pending, 32) {
+ virq = irq_find_mapping(vg->chip.irqdomain, base + pin);
+ generic_handle_irq(virq);
+diff --git a/drivers/pinctrl/intel/pinctrl-merrifield.c b/drivers/pinctrl/intel/pinctrl-merrifield.c
+index 7826c7f..9931be6 100644
+--- a/drivers/pinctrl/intel/pinctrl-merrifield.c
++++ b/drivers/pinctrl/intel/pinctrl-merrifield.c
+@@ -794,6 +794,9 @@ static int mrfld_config_set(struct pinctrl_dev *pctldev, unsigned int pin,
+ unsigned int i;
+ int ret;
+
++ if (!mrfld_buf_available(mp, pin))
++ return -ENOTSUPP;
++
+ for (i = 0; i < nconfigs; i++) {
+ switch (pinconf_to_config_param(configs[i])) {
+ case PIN_CONFIG_BIAS_DISABLE:
+diff --git a/drivers/regulator/axp20x-regulator.c b/drivers/regulator/axp20x-regulator.c
+index e6a512e..a3ade9e 100644
+--- a/drivers/regulator/axp20x-regulator.c
++++ b/drivers/regulator/axp20x-regulator.c
+@@ -272,7 +272,7 @@ static const struct regulator_desc axp806_regulators[] = {
+ 64, AXP806_DCDCD_V_CTRL, 0x3f, AXP806_PWR_OUT_CTRL1,
+ BIT(3)),
+ AXP_DESC(AXP806, DCDCE, "dcdce", "vine", 1100, 3400, 100,
+- AXP806_DCDCB_V_CTRL, 0x1f, AXP806_PWR_OUT_CTRL1, BIT(4)),
++ AXP806_DCDCE_V_CTRL, 0x1f, AXP806_PWR_OUT_CTRL1, BIT(4)),
+ AXP_DESC(AXP806, ALDO1, "aldo1", "aldoin", 700, 3300, 100,
+ AXP806_ALDO1_V_CTRL, 0x1f, AXP806_PWR_OUT_CTRL1, BIT(5)),
+ AXP_DESC(AXP806, ALDO2, "aldo2", "aldoin", 700, 3400, 100,
+diff --git a/drivers/staging/greybus/timesync_platform.c b/drivers/staging/greybus/timesync_platform.c
+index 113f3d6..27f75b1 100644
+--- a/drivers/staging/greybus/timesync_platform.c
++++ b/drivers/staging/greybus/timesync_platform.c
+@@ -45,12 +45,18 @@ u32 gb_timesync_platform_get_clock_rate(void)
+
+ int gb_timesync_platform_lock_bus(struct gb_timesync_svc *pdata)
+ {
++ if (!arche_platform_change_state_cb)
++ return 0;
++
+ return arche_platform_change_state_cb(ARCHE_PLATFORM_STATE_TIME_SYNC,
+ pdata);
+ }
+
+ void gb_timesync_platform_unlock_bus(void)
+ {
++ if (!arche_platform_change_state_cb)
++ return;
++
+ arche_platform_change_state_cb(ARCHE_PLATFORM_STATE_ACTIVE, NULL);
+ }
+
+diff --git a/drivers/usb/core/quirks.c b/drivers/usb/core/quirks.c
+index d2e50a2..24f9f98 100644
+--- a/drivers/usb/core/quirks.c
++++ b/drivers/usb/core/quirks.c
+@@ -37,6 +37,10 @@ static const struct usb_device_id usb_quirk_list[] = {
+ /* CBM - Flash disk */
+ { USB_DEVICE(0x0204, 0x6025), .driver_info = USB_QUIRK_RESET_RESUME },
+
++ /* WORLDE easy key (easykey.25) MIDI controller */
++ { USB_DEVICE(0x0218, 0x0401), .driver_info =
++ USB_QUIRK_CONFIG_INTF_STRINGS },
++
+ /* HP 5300/5370C scanner */
+ { USB_DEVICE(0x03f0, 0x0701), .driver_info =
+ USB_QUIRK_STRING_FETCH_255 },
+diff --git a/drivers/usb/gadget/function/f_fs.c b/drivers/usb/gadget/function/f_fs.c
+index 17989b7..8d412d8 100644
+--- a/drivers/usb/gadget/function/f_fs.c
++++ b/drivers/usb/gadget/function/f_fs.c
+@@ -2269,6 +2269,8 @@ static int __ffs_data_do_os_desc(enum ffs_os_desc_type type,
+ if (len < sizeof(*d) || h->interface >= ffs->interfaces_count)
+ return -EINVAL;
+ length = le32_to_cpu(d->dwSize);
++ if (len < length)
++ return -EINVAL;
+ type = le32_to_cpu(d->dwPropertyDataType);
+ if (type < USB_EXT_PROP_UNICODE ||
+ type > USB_EXT_PROP_UNICODE_MULTI) {
+@@ -2277,6 +2279,11 @@ static int __ffs_data_do_os_desc(enum ffs_os_desc_type type,
+ return -EINVAL;
+ }
+ pnl = le16_to_cpu(d->wPropertyNameLength);
++ if (length < 14 + pnl) {
++ pr_vdebug("invalid os descriptor length: %d pnl:%d (descriptor %d)\n",
++ length, pnl, type);
++ return -EINVAL;
++ }
+ pdl = le32_to_cpu(*(u32 *)((u8 *)data + 10 + pnl));
+ if (length != 14 + pnl + pdl) {
+ pr_vdebug("invalid os descriptor length: %d pnl:%d pdl:%d (descriptor %d)\n",
+@@ -2363,6 +2370,9 @@ static int __ffs_data_got_descs(struct ffs_data *ffs,
+ }
+ }
+ if (flags & (1 << i)) {
++ if (len < 4) {
++ goto error;
++ }
+ os_descs_count = get_unaligned_le32(data);
+ data += 4;
+ len -= 4;
+@@ -2435,7 +2445,8 @@ static int __ffs_data_got_strings(struct ffs_data *ffs,
+
+ ENTER();
+
+- if (unlikely(get_unaligned_le32(data) != FUNCTIONFS_STRINGS_MAGIC ||
++ if (unlikely(len < 16 ||
++ get_unaligned_le32(data) != FUNCTIONFS_STRINGS_MAGIC ||
+ get_unaligned_le32(data + 4) != len))
+ goto error;
+ str_count = get_unaligned_le32(data + 8);
+diff --git a/drivers/usb/musb/musb_core.c b/drivers/usb/musb/musb_core.c
+index c3e172e..338575f 100644
+--- a/drivers/usb/musb/musb_core.c
++++ b/drivers/usb/musb/musb_core.c
+@@ -578,11 +578,11 @@ static irqreturn_t musb_stage0_irq(struct musb *musb, u8 int_usb,
+ | MUSB_PORT_STAT_RESUME;
+ musb->rh_timer = jiffies
+ + msecs_to_jiffies(USB_RESUME_TIMEOUT);
+- musb->need_finish_resume = 1;
+-
+ musb->xceiv->otg->state = OTG_STATE_A_HOST;
+ musb->is_active = 1;
+ musb_host_resume_root_hub(musb);
++ schedule_delayed_work(&musb->finish_resume_work,
++ msecs_to_jiffies(USB_RESUME_TIMEOUT));
+ break;
+ case OTG_STATE_B_WAIT_ACON:
+ musb->xceiv->otg->state = OTG_STATE_B_PERIPHERAL;
+@@ -2691,11 +2691,6 @@ static int musb_resume(struct device *dev)
+ mask = MUSB_DEVCTL_BDEVICE | MUSB_DEVCTL_FSDEV | MUSB_DEVCTL_LSDEV;
+ if ((devctl & mask) != (musb->context.devctl & mask))
+ musb->port1_status = 0;
+- if (musb->need_finish_resume) {
+- musb->need_finish_resume = 0;
+- schedule_delayed_work(&musb->finish_resume_work,
+- msecs_to_jiffies(USB_RESUME_TIMEOUT));
+- }
+
+ /*
+ * The USB HUB code expects the device to be in RPM_ACTIVE once it came
+@@ -2747,12 +2742,6 @@ static int musb_runtime_resume(struct device *dev)
+
+ musb_restore_context(musb);
+
+- if (musb->need_finish_resume) {
+- musb->need_finish_resume = 0;
+- schedule_delayed_work(&musb->finish_resume_work,
+- msecs_to_jiffies(USB_RESUME_TIMEOUT));
+- }
+-
+ spin_lock_irqsave(&musb->lock, flags);
+ error = musb_run_resume_work(musb);
+ if (error)
+diff --git a/drivers/usb/musb/musb_core.h b/drivers/usb/musb/musb_core.h
+index 47331db..854fbf7 100644
+--- a/drivers/usb/musb/musb_core.h
++++ b/drivers/usb/musb/musb_core.h
+@@ -410,7 +410,6 @@ struct musb {
+
+ /* is_suspended means USB B_PERIPHERAL suspend */
+ unsigned is_suspended:1;
+- unsigned need_finish_resume :1;
+
+ /* may_wakeup means remote wakeup is enabled */
+ unsigned may_wakeup:1;
+diff --git a/drivers/usb/serial/option.c b/drivers/usb/serial/option.c
+index 7ce31a4..42cc72e 100644
+--- a/drivers/usb/serial/option.c
++++ b/drivers/usb/serial/option.c
+@@ -2007,6 +2007,7 @@ static const struct usb_device_id option_ids[] = {
+ { USB_DEVICE_AND_INTERFACE_INFO(WETELECOM_VENDOR_ID, WETELECOM_PRODUCT_WMD200, 0xff, 0xff, 0xff) },
+ { USB_DEVICE_AND_INTERFACE_INFO(WETELECOM_VENDOR_ID, WETELECOM_PRODUCT_6802, 0xff, 0xff, 0xff) },
+ { USB_DEVICE_AND_INTERFACE_INFO(WETELECOM_VENDOR_ID, WETELECOM_PRODUCT_WMD300, 0xff, 0xff, 0xff) },
++ { USB_DEVICE_AND_INTERFACE_INFO(0x03f0, 0x421d, 0xff, 0xff, 0xff) }, /* HP lt2523 (Novatel E371) */
+ { } /* Terminating entry */
+ };
+ MODULE_DEVICE_TABLE(usb, option_ids);
+diff --git a/drivers/usb/serial/pl2303.c b/drivers/usb/serial/pl2303.c
+index 46fca6b..1db4b61 100644
+--- a/drivers/usb/serial/pl2303.c
++++ b/drivers/usb/serial/pl2303.c
+@@ -49,6 +49,7 @@ static const struct usb_device_id id_table[] = {
+ { USB_DEVICE(IODATA_VENDOR_ID, IODATA_PRODUCT_ID) },
+ { USB_DEVICE(IODATA_VENDOR_ID, IODATA_PRODUCT_ID_RSAQ5) },
+ { USB_DEVICE(ATEN_VENDOR_ID, ATEN_PRODUCT_ID) },
++ { USB_DEVICE(ATEN_VENDOR_ID, ATEN_PRODUCT_ID2) },
+ { USB_DEVICE(ATEN_VENDOR_ID2, ATEN_PRODUCT_ID) },
+ { USB_DEVICE(ELCOM_VENDOR_ID, ELCOM_PRODUCT_ID) },
+ { USB_DEVICE(ELCOM_VENDOR_ID, ELCOM_PRODUCT_ID_UCSGT) },
+diff --git a/drivers/usb/serial/pl2303.h b/drivers/usb/serial/pl2303.h
+index e3b7af8..09d9be8 100644
+--- a/drivers/usb/serial/pl2303.h
++++ b/drivers/usb/serial/pl2303.h
+@@ -27,6 +27,7 @@
+ #define ATEN_VENDOR_ID 0x0557
+ #define ATEN_VENDOR_ID2 0x0547
+ #define ATEN_PRODUCT_ID 0x2008
++#define ATEN_PRODUCT_ID2 0x2118
+
+ #define IODATA_VENDOR_ID 0x04bb
+ #define IODATA_PRODUCT_ID 0x0a03
+diff --git a/drivers/usb/serial/qcserial.c b/drivers/usb/serial/qcserial.c
+index 1bc6089..696458d 100644
+--- a/drivers/usb/serial/qcserial.c
++++ b/drivers/usb/serial/qcserial.c
+@@ -124,6 +124,7 @@ static const struct usb_device_id id_table[] = {
+ {USB_DEVICE(0x1410, 0xa021)}, /* Novatel Gobi 3000 Composite */
+ {USB_DEVICE(0x413c, 0x8193)}, /* Dell Gobi 3000 QDL */
+ {USB_DEVICE(0x413c, 0x8194)}, /* Dell Gobi 3000 Composite */
++ {USB_DEVICE(0x413c, 0x81a6)}, /* Dell DW5570 QDL (MC8805) */
+ {USB_DEVICE(0x1199, 0x68a4)}, /* Sierra Wireless QDL */
+ {USB_DEVICE(0x1199, 0x68a5)}, /* Sierra Wireless Modem */
+ {USB_DEVICE(0x1199, 0x68a8)}, /* Sierra Wireless QDL */
+diff --git a/drivers/vhost/vhost.c b/drivers/vhost/vhost.c
+index c6f2d89..64613fb 100644
+--- a/drivers/vhost/vhost.c
++++ b/drivers/vhost/vhost.c
+@@ -130,14 +130,14 @@ static long vhost_get_vring_endian(struct vhost_virtqueue *vq, u32 idx,
+
+ static void vhost_init_is_le(struct vhost_virtqueue *vq)
+ {
+- if (vhost_has_feature(vq, VIRTIO_F_VERSION_1))
+- vq->is_le = true;
++ vq->is_le = vhost_has_feature(vq, VIRTIO_F_VERSION_1)
++ || virtio_legacy_is_little_endian();
+ }
+ #endif /* CONFIG_VHOST_CROSS_ENDIAN_LEGACY */
+
+ static void vhost_reset_is_le(struct vhost_virtqueue *vq)
+ {
+- vq->is_le = virtio_legacy_is_little_endian();
++ vhost_init_is_le(vq);
+ }
+
+ struct vhost_flush_struct {
+@@ -1713,10 +1713,8 @@ int vhost_vq_init_access(struct vhost_virtqueue *vq)
+ int r;
+ bool is_le = vq->is_le;
+
+- if (!vq->private_data) {
+- vhost_reset_is_le(vq);
++ if (!vq->private_data)
+ return 0;
+- }
+
+ vhost_init_is_le(vq);
+
+diff --git a/drivers/virtio/virtio_ring.c b/drivers/virtio/virtio_ring.c
+index f136048..489bfc6 100644
+--- a/drivers/virtio/virtio_ring.c
++++ b/drivers/virtio/virtio_ring.c
+@@ -159,13 +159,6 @@ static bool vring_use_dma_api(struct virtio_device *vdev)
+ if (xen_domain())
+ return true;
+
+- /*
+- * On ARM-based machines, the DMA ops will do the right thing,
+- * so always use them with legacy devices.
+- */
+- if (IS_ENABLED(CONFIG_ARM) || IS_ENABLED(CONFIG_ARM64))
+- return !virtio_has_feature(vdev, VIRTIO_F_VERSION_1);
+-
+ return false;
+ }
+
+diff --git a/fs/cifs/readdir.c b/fs/cifs/readdir.c
+index 8f6a2a5..a27fc87 100644
+--- a/fs/cifs/readdir.c
++++ b/fs/cifs/readdir.c
+@@ -285,6 +285,7 @@ initiate_cifs_search(const unsigned int xid, struct file *file)
+ rc = -ENOMEM;
+ goto error_exit;
+ }
++ spin_lock_init(&cifsFile->file_info_lock);
+ file->private_data = cifsFile;
+ cifsFile->tlink = cifs_get_tlink(tlink);
+ tcon = tlink_tcon(tlink);
+diff --git a/fs/dax.c b/fs/dax.c
+index 014defd..bf6218d 100644
+--- a/fs/dax.c
++++ b/fs/dax.c
+@@ -1270,6 +1270,11 @@ iomap_dax_actor(struct inode *inode, loff_t pos, loff_t length, void *data,
+ struct blk_dax_ctl dax = { 0 };
+ ssize_t map_len;
+
++ if (fatal_signal_pending(current)) {
++ ret = -EINTR;
++ break;
++ }
++
+ dax.sector = iomap->blkno +
+ (((pos & PAGE_MASK) - iomap->offset) >> 9);
+ dax.size = (length + offset + PAGE_SIZE - 1) & PAGE_MASK;
+diff --git a/fs/ext4/super.c b/fs/ext4/super.c
+index 478630a..bbc316d 100644
+--- a/fs/ext4/super.c
++++ b/fs/ext4/super.c
+@@ -3827,6 +3827,15 @@ static int ext4_fill_super(struct super_block *sb, void *data, int silent)
+ (EXT4_MAX_BLOCK_FILE_PHYS / EXT4_BLOCKS_PER_GROUP(sb)));
+ db_count = (sbi->s_groups_count + EXT4_DESC_PER_BLOCK(sb) - 1) /
+ EXT4_DESC_PER_BLOCK(sb);
++ if (ext4_has_feature_meta_bg(sb)) {
++ if (le32_to_cpu(es->s_first_meta_bg) >= db_count) {
++ ext4_msg(sb, KERN_WARNING,
++ "first meta block group too large: %u "
++ "(group descriptor block count %u)",
++ le32_to_cpu(es->s_first_meta_bg), db_count);
++ goto failed_mount;
++ }
++ }
+ sbi->s_group_desc = ext4_kvmalloc(db_count *
+ sizeof(struct buffer_head *),
+ GFP_KERNEL);
+diff --git a/fs/iomap.c b/fs/iomap.c
+index a8ee8c3..814ae8f 100644
+--- a/fs/iomap.c
++++ b/fs/iomap.c
+@@ -113,6 +113,9 @@ iomap_write_begin(struct inode *inode, loff_t pos, unsigned len, unsigned flags,
+
+ BUG_ON(pos + len > iomap->offset + iomap->length);
+
++ if (fatal_signal_pending(current))
++ return -EINTR;
++
+ page = grab_cache_page_write_begin(inode->i_mapping, index, flags);
+ if (!page)
+ return -ENOMEM;
+diff --git a/fs/nfsd/nfs4layouts.c b/fs/nfsd/nfs4layouts.c
+index 42aace4..6481369 100644
+--- a/fs/nfsd/nfs4layouts.c
++++ b/fs/nfsd/nfs4layouts.c
+@@ -223,10 +223,11 @@ nfsd4_alloc_layout_stateid(struct nfsd4_compound_state *cstate,
+ struct nfs4_layout_stateid *ls;
+ struct nfs4_stid *stp;
+
+- stp = nfs4_alloc_stid(cstate->clp, nfs4_layout_stateid_cache);
++ stp = nfs4_alloc_stid(cstate->clp, nfs4_layout_stateid_cache,
++ nfsd4_free_layout_stateid);
+ if (!stp)
+ return NULL;
+- stp->sc_free = nfsd4_free_layout_stateid;
++
+ get_nfs4_file(fp);
+ stp->sc_file = fp;
+
+diff --git a/fs/nfsd/nfs4state.c b/fs/nfsd/nfs4state.c
+index 4b4beaa..a0dee8a 100644
+--- a/fs/nfsd/nfs4state.c
++++ b/fs/nfsd/nfs4state.c
+@@ -633,8 +633,8 @@ find_or_hash_clnt_odstate(struct nfs4_file *fp, struct nfs4_clnt_odstate *new)
+ return co;
+ }
+
+-struct nfs4_stid *nfs4_alloc_stid(struct nfs4_client *cl,
+- struct kmem_cache *slab)
++struct nfs4_stid *nfs4_alloc_stid(struct nfs4_client *cl, struct kmem_cache *slab,
++ void (*sc_free)(struct nfs4_stid *))
+ {
+ struct nfs4_stid *stid;
+ int new_id;
+@@ -650,6 +650,8 @@ struct nfs4_stid *nfs4_alloc_stid(struct nfs4_client *cl,
+ idr_preload_end();
+ if (new_id < 0)
+ goto out_free;
++
++ stid->sc_free = sc_free;
+ stid->sc_client = cl;
+ stid->sc_stateid.si_opaque.so_id = new_id;
+ stid->sc_stateid.si_opaque.so_clid = cl->cl_clientid;
+@@ -675,15 +677,12 @@ struct nfs4_stid *nfs4_alloc_stid(struct nfs4_client *cl,
+ static struct nfs4_ol_stateid * nfs4_alloc_open_stateid(struct nfs4_client *clp)
+ {
+ struct nfs4_stid *stid;
+- struct nfs4_ol_stateid *stp;
+
+- stid = nfs4_alloc_stid(clp, stateid_slab);
++ stid = nfs4_alloc_stid(clp, stateid_slab, nfs4_free_ol_stateid);
+ if (!stid)
+ return NULL;
+
+- stp = openlockstateid(stid);
+- stp->st_stid.sc_free = nfs4_free_ol_stateid;
+- return stp;
++ return openlockstateid(stid);
+ }
+
+ static void nfs4_free_deleg(struct nfs4_stid *stid)
+@@ -781,11 +780,10 @@ alloc_init_deleg(struct nfs4_client *clp, struct svc_fh *current_fh,
+ goto out_dec;
+ if (delegation_blocked(&current_fh->fh_handle))
+ goto out_dec;
+- dp = delegstateid(nfs4_alloc_stid(clp, deleg_slab));
++ dp = delegstateid(nfs4_alloc_stid(clp, deleg_slab, nfs4_free_deleg));
+ if (dp == NULL)
+ goto out_dec;
+
+- dp->dl_stid.sc_free = nfs4_free_deleg;
+ /*
+ * delegation seqid's are never incremented. The 4.1 special
+ * meaning of seqid 0 isn't meaningful, really, but let's avoid
+@@ -5580,7 +5578,6 @@ init_lock_stateid(struct nfs4_ol_stateid *stp, struct nfs4_lockowner *lo,
+ stp->st_stateowner = nfs4_get_stateowner(&lo->lo_owner);
+ get_nfs4_file(fp);
+ stp->st_stid.sc_file = fp;
+- stp->st_stid.sc_free = nfs4_free_lock_stateid;
+ stp->st_access_bmap = 0;
+ stp->st_deny_bmap = open_stp->st_deny_bmap;
+ stp->st_openstp = open_stp;
+@@ -5623,7 +5620,7 @@ find_or_create_lock_stateid(struct nfs4_lockowner *lo, struct nfs4_file *fi,
+ lst = find_lock_stateid(lo, fi);
+ if (lst == NULL) {
+ spin_unlock(&clp->cl_lock);
+- ns = nfs4_alloc_stid(clp, stateid_slab);
++ ns = nfs4_alloc_stid(clp, stateid_slab, nfs4_free_lock_stateid);
+ if (ns == NULL)
+ return NULL;
+
+diff --git a/fs/nfsd/state.h b/fs/nfsd/state.h
+index c939936..4516e8b 100644
+--- a/fs/nfsd/state.h
++++ b/fs/nfsd/state.h
+@@ -603,8 +603,8 @@ extern __be32 nfs4_preprocess_stateid_op(struct svc_rqst *rqstp,
+ __be32 nfsd4_lookup_stateid(struct nfsd4_compound_state *cstate,
+ stateid_t *stateid, unsigned char typemask,
+ struct nfs4_stid **s, struct nfsd_net *nn);
+-struct nfs4_stid *nfs4_alloc_stid(struct nfs4_client *cl,
+- struct kmem_cache *slab);
++struct nfs4_stid *nfs4_alloc_stid(struct nfs4_client *cl, struct kmem_cache *slab,
++ void (*sc_free)(struct nfs4_stid *));
+ void nfs4_unhash_stid(struct nfs4_stid *s);
+ void nfs4_put_stid(struct nfs4_stid *s);
+ void nfs4_inc_and_copy_stateid(stateid_t *dst, struct nfs4_stid *stid);
+diff --git a/include/linux/irq.h b/include/linux/irq.h
+index e798755..39e3254 100644
+--- a/include/linux/irq.h
++++ b/include/linux/irq.h
+@@ -184,6 +184,7 @@ struct irq_data {
+ *
+ * IRQD_TRIGGER_MASK - Mask for the trigger type bits
+ * IRQD_SETAFFINITY_PENDING - Affinity setting is pending
++ * IRQD_ACTIVATED - Interrupt has already been activated
+ * IRQD_NO_BALANCING - Balancing disabled for this IRQ
+ * IRQD_PER_CPU - Interrupt is per cpu
+ * IRQD_AFFINITY_SET - Interrupt affinity was set
+@@ -202,6 +203,7 @@ struct irq_data {
+ enum {
+ IRQD_TRIGGER_MASK = 0xf,
+ IRQD_SETAFFINITY_PENDING = (1 << 8),
++ IRQD_ACTIVATED = (1 << 9),
+ IRQD_NO_BALANCING = (1 << 10),
+ IRQD_PER_CPU = (1 << 11),
+ IRQD_AFFINITY_SET = (1 << 12),
+@@ -312,6 +314,21 @@ static inline bool irqd_affinity_is_managed(struct irq_data *d)
+ return __irqd_to_state(d) & IRQD_AFFINITY_MANAGED;
+ }
+
++static inline bool irqd_is_activated(struct irq_data *d)
++{
++ return __irqd_to_state(d) & IRQD_ACTIVATED;
++}
++
++static inline void irqd_set_activated(struct irq_data *d)
++{
++ __irqd_to_state(d) |= IRQD_ACTIVATED;
++}
++
++static inline void irqd_clr_activated(struct irq_data *d)
++{
++ __irqd_to_state(d) &= ~IRQD_ACTIVATED;
++}
++
+ #undef __irqd_to_state
+
+ static inline irq_hw_number_t irqd_to_hwirq(struct irq_data *d)
+diff --git a/include/linux/memory_hotplug.h b/include/linux/memory_hotplug.h
+index c1784c0..134a2f6 100644
+--- a/include/linux/memory_hotplug.h
++++ b/include/linux/memory_hotplug.h
+@@ -85,7 +85,8 @@ extern int zone_grow_waitqueues(struct zone *zone, unsigned long nr_pages);
+ extern int add_one_highpage(struct page *page, int pfn, int bad_ppro);
+ /* VM interface that may be used by firmware interface */
+ extern int online_pages(unsigned long, unsigned long, int);
+-extern int test_pages_in_a_zone(unsigned long, unsigned long);
++extern int test_pages_in_a_zone(unsigned long start_pfn, unsigned long end_pfn,
++ unsigned long *valid_start, unsigned long *valid_end);
+ extern void __offline_isolated_pages(unsigned long, unsigned long);
+
+ typedef void (*online_page_callback_t)(struct page *page);
+diff --git a/include/linux/percpu-refcount.h b/include/linux/percpu-refcount.h
+index 1c7eec0..3a481a4 100644
+--- a/include/linux/percpu-refcount.h
++++ b/include/linux/percpu-refcount.h
+@@ -204,7 +204,7 @@ static inline void percpu_ref_get(struct percpu_ref *ref)
+ static inline bool percpu_ref_tryget(struct percpu_ref *ref)
+ {
+ unsigned long __percpu *percpu_count;
+- int ret;
++ bool ret;
+
+ rcu_read_lock_sched();
+
+@@ -238,7 +238,7 @@ static inline bool percpu_ref_tryget(struct percpu_ref *ref)
+ static inline bool percpu_ref_tryget_live(struct percpu_ref *ref)
+ {
+ unsigned long __percpu *percpu_count;
+- int ret = false;
++ bool ret = false;
+
+ rcu_read_lock_sched();
+
+diff --git a/kernel/cgroup.c b/kernel/cgroup.c
+index 85bc9be..4e2f3de 100644
+--- a/kernel/cgroup.c
++++ b/kernel/cgroup.c
+@@ -5219,6 +5219,11 @@ static struct cgroup_subsys_state *css_create(struct cgroup *cgrp,
+ return ERR_PTR(err);
+ }
+
++/*
++ * The returned cgroup is fully initialized including its control mask, but
++ * it isn't associated with its kernfs_node and doesn't have the control
++ * mask applied.
++ */
+ static struct cgroup *cgroup_create(struct cgroup *parent)
+ {
+ struct cgroup_root *root = parent->root;
+@@ -5283,11 +5288,6 @@ static struct cgroup *cgroup_create(struct cgroup *parent)
+
+ cgroup_propagate_control(cgrp);
+
+- /* @cgrp doesn't have dir yet so the following will only create csses */
+- ret = cgroup_apply_control_enable(cgrp);
+- if (ret)
+- goto out_destroy;
+-
+ return cgrp;
+
+ out_cancel_ref:
+@@ -5295,9 +5295,6 @@ static struct cgroup *cgroup_create(struct cgroup *parent)
+ out_free_cgrp:
+ kfree(cgrp);
+ return ERR_PTR(ret);
+-out_destroy:
+- cgroup_destroy_locked(cgrp);
+- return ERR_PTR(ret);
+ }
+
+ static int cgroup_mkdir(struct kernfs_node *parent_kn, const char *name,
+diff --git a/kernel/events/core.c b/kernel/events/core.c
+index e5a8839..b1cfd74 100644
+--- a/kernel/events/core.c
++++ b/kernel/events/core.c
+@@ -1469,7 +1469,6 @@ ctx_group_list(struct perf_event *event, struct perf_event_context *ctx)
+ static void
+ list_add_event(struct perf_event *event, struct perf_event_context *ctx)
+ {
+-
+ lockdep_assert_held(&ctx->lock);
+
+ WARN_ON_ONCE(event->attach_state & PERF_ATTACH_CONTEXT);
+@@ -1624,6 +1623,8 @@ static void perf_group_attach(struct perf_event *event)
+ {
+ struct perf_event *group_leader = event->group_leader, *pos;
+
++ lockdep_assert_held(&event->ctx->lock);
++
+ /*
+ * We can have double attach due to group movement in perf_event_open.
+ */
+@@ -1697,6 +1698,8 @@ static void perf_group_detach(struct perf_event *event)
+ struct perf_event *sibling, *tmp;
+ struct list_head *list = NULL;
+
++ lockdep_assert_held(&event->ctx->lock);
++
+ /*
+ * We can have double detach due to exit/hot-unplug + close.
+ */
+@@ -1895,9 +1898,29 @@ __perf_remove_from_context(struct perf_event *event,
+ */
+ static void perf_remove_from_context(struct perf_event *event, unsigned long flags)
+ {
+- lockdep_assert_held(&event->ctx->mutex);
++ struct perf_event_context *ctx = event->ctx;
++
++ lockdep_assert_held(&ctx->mutex);
+
+ event_function_call(event, __perf_remove_from_context, (void *)flags);
++
++ /*
++ * The above event_function_call() can NO-OP when it hits
++ * TASK_TOMBSTONE. In that case we must already have been detached
++ * from the context (by perf_event_exit_event()) but the grouping
++ * might still be in-tact.
++ */
++ WARN_ON_ONCE(event->attach_state & PERF_ATTACH_CONTEXT);
++ if ((flags & DETACH_GROUP) &&
++ (event->attach_state & PERF_ATTACH_GROUP)) {
++ /*
++ * Since in that case we cannot possibly be scheduled, simply
++ * detach now.
++ */
++ raw_spin_lock_irq(&ctx->lock);
++ perf_group_detach(event);
++ raw_spin_unlock_irq(&ctx->lock);
++ }
+ }
+
+ /*
+@@ -6583,6 +6606,27 @@ static void perf_event_mmap_event(struct perf_mmap_event *mmap_event)
+ char *buf = NULL;
+ char *name;
+
++ if (vma->vm_flags & VM_READ)
++ prot |= PROT_READ;
++ if (vma->vm_flags & VM_WRITE)
++ prot |= PROT_WRITE;
++ if (vma->vm_flags & VM_EXEC)
++ prot |= PROT_EXEC;
++
++ if (vma->vm_flags & VM_MAYSHARE)
++ flags = MAP_SHARED;
++ else
++ flags = MAP_PRIVATE;
++
++ if (vma->vm_flags & VM_DENYWRITE)
++ flags |= MAP_DENYWRITE;
++ if (vma->vm_flags & VM_MAYEXEC)
++ flags |= MAP_EXECUTABLE;
++ if (vma->vm_flags & VM_LOCKED)
++ flags |= MAP_LOCKED;
++ if (vma->vm_flags & VM_HUGETLB)
++ flags |= MAP_HUGETLB;
++
+ if (file) {
+ struct inode *inode;
+ dev_t dev;
+@@ -6609,27 +6653,6 @@ static void perf_event_mmap_event(struct perf_mmap_event *mmap_event)
+ maj = MAJOR(dev);
+ min = MINOR(dev);
+
+- if (vma->vm_flags & VM_READ)
+- prot |= PROT_READ;
+- if (vma->vm_flags & VM_WRITE)
+- prot |= PROT_WRITE;
+- if (vma->vm_flags & VM_EXEC)
+- prot |= PROT_EXEC;
+-
+- if (vma->vm_flags & VM_MAYSHARE)
+- flags = MAP_SHARED;
+- else
+- flags = MAP_PRIVATE;
+-
+- if (vma->vm_flags & VM_DENYWRITE)
+- flags |= MAP_DENYWRITE;
+- if (vma->vm_flags & VM_MAYEXEC)
+- flags |= MAP_EXECUTABLE;
+- if (vma->vm_flags & VM_LOCKED)
+- flags |= MAP_LOCKED;
+- if (vma->vm_flags & VM_HUGETLB)
+- flags |= MAP_HUGETLB;
+-
+ goto got_name;
+ } else {
+ if (vma->vm_ops && vma->vm_ops->name) {
+diff --git a/kernel/irq/irqdomain.c b/kernel/irq/irqdomain.c
+index 8c0a0ae..b59e676 100644
+--- a/kernel/irq/irqdomain.c
++++ b/kernel/irq/irqdomain.c
+@@ -1346,6 +1346,30 @@ void irq_domain_free_irqs_parent(struct irq_domain *domain,
+ }
+ EXPORT_SYMBOL_GPL(irq_domain_free_irqs_parent);
+
++static void __irq_domain_activate_irq(struct irq_data *irq_data)
++{
++ if (irq_data && irq_data->domain) {
++ struct irq_domain *domain = irq_data->domain;
++
++ if (irq_data->parent_data)
++ __irq_domain_activate_irq(irq_data->parent_data);
++ if (domain->ops->activate)
++ domain->ops->activate(domain, irq_data);
++ }
++}
++
++static void __irq_domain_deactivate_irq(struct irq_data *irq_data)
++{
++ if (irq_data && irq_data->domain) {
++ struct irq_domain *domain = irq_data->domain;
++
++ if (domain->ops->deactivate)
++ domain->ops->deactivate(domain, irq_data);
++ if (irq_data->parent_data)
++ __irq_domain_deactivate_irq(irq_data->parent_data);
++ }
++}
++
+ /**
+ * irq_domain_activate_irq - Call domain_ops->activate recursively to activate
+ * interrupt
+@@ -1356,13 +1380,9 @@ EXPORT_SYMBOL_GPL(irq_domain_free_irqs_parent);
+ */
+ void irq_domain_activate_irq(struct irq_data *irq_data)
+ {
+- if (irq_data && irq_data->domain) {
+- struct irq_domain *domain = irq_data->domain;
+-
+- if (irq_data->parent_data)
+- irq_domain_activate_irq(irq_data->parent_data);
+- if (domain->ops->activate)
+- domain->ops->activate(domain, irq_data);
++ if (!irqd_is_activated(irq_data)) {
++ __irq_domain_activate_irq(irq_data);
++ irqd_set_activated(irq_data);
+ }
+ }
+
+@@ -1376,13 +1396,9 @@ void irq_domain_activate_irq(struct irq_data *irq_data)
+ */
+ void irq_domain_deactivate_irq(struct irq_data *irq_data)
+ {
+- if (irq_data && irq_data->domain) {
+- struct irq_domain *domain = irq_data->domain;
+-
+- if (domain->ops->deactivate)
+- domain->ops->deactivate(domain, irq_data);
+- if (irq_data->parent_data)
+- irq_domain_deactivate_irq(irq_data->parent_data);
++ if (irqd_is_activated(irq_data)) {
++ __irq_domain_deactivate_irq(irq_data);
++ irqd_clr_activated(irq_data);
+ }
+ }
+
+diff --git a/kernel/trace/trace_hwlat.c b/kernel/trace/trace_hwlat.c
+index b97286c..f00b013 100644
+--- a/kernel/trace/trace_hwlat.c
++++ b/kernel/trace/trace_hwlat.c
+@@ -266,7 +266,7 @@ static int get_sample(void)
+ static struct cpumask save_cpumask;
+ static bool disable_migrate;
+
+-static void move_to_next_cpu(void)
++static void move_to_next_cpu(bool initmask)
+ {
+ static struct cpumask *current_mask;
+ int next_cpu;
+@@ -275,7 +275,7 @@ static void move_to_next_cpu(void)
+ return;
+
+ /* Just pick the first CPU on first iteration */
+- if (!current_mask) {
++ if (initmask) {
+ current_mask = &save_cpumask;
+ get_online_cpus();
+ cpumask_and(current_mask, cpu_online_mask, tracing_buffer_mask);
+@@ -330,10 +330,12 @@ static void move_to_next_cpu(void)
+ static int kthread_fn(void *data)
+ {
+ u64 interval;
++ bool initmask = true;
+
+ while (!kthread_should_stop()) {
+
+- move_to_next_cpu();
++ move_to_next_cpu(initmask);
++ initmask = false;
+
+ local_irq_disable();
+ get_sample();
+diff --git a/mm/filemap.c b/mm/filemap.c
+index 7798010..d8d7df8 100644
+--- a/mm/filemap.c
++++ b/mm/filemap.c
+@@ -1703,6 +1703,11 @@ static ssize_t do_generic_file_read(struct file *filp, loff_t *ppos,
+
+ cond_resched();
+ find_page:
++ if (fatal_signal_pending(current)) {
++ error = -EINTR;
++ goto out;
++ }
++
+ page = find_get_page(mapping, index);
+ if (!page) {
+ page_cache_sync_readahead(mapping,
+diff --git a/mm/memory_hotplug.c b/mm/memory_hotplug.c
+index c3a8141..ede13734 100644
+--- a/mm/memory_hotplug.c
++++ b/mm/memory_hotplug.c
+@@ -1483,17 +1483,20 @@ bool is_mem_section_removable(unsigned long start_pfn, unsigned long nr_pages)
+ }
+
+ /*
+- * Confirm all pages in a range [start, end) is belongs to the same zone.
++ * Confirm all pages in a range [start, end) belong to the same zone.
++ * When true, return its valid [start, end).
+ */
+-int test_pages_in_a_zone(unsigned long start_pfn, unsigned long end_pfn)
++int test_pages_in_a_zone(unsigned long start_pfn, unsigned long end_pfn,
++ unsigned long *valid_start, unsigned long *valid_end)
+ {
+ unsigned long pfn, sec_end_pfn;
++ unsigned long start, end;
+ struct zone *zone = NULL;
+ struct page *page;
+ int i;
+- for (pfn = start_pfn, sec_end_pfn = SECTION_ALIGN_UP(start_pfn);
++ for (pfn = start_pfn, sec_end_pfn = SECTION_ALIGN_UP(start_pfn + 1);
+ pfn < end_pfn;
+- pfn = sec_end_pfn + 1, sec_end_pfn += PAGES_PER_SECTION) {
++ pfn = sec_end_pfn, sec_end_pfn += PAGES_PER_SECTION) {
+ /* Make sure the memory section is present first */
+ if (!present_section_nr(pfn_to_section_nr(pfn)))
+ continue;
+@@ -1509,10 +1512,20 @@ int test_pages_in_a_zone(unsigned long start_pfn, unsigned long end_pfn)
+ page = pfn_to_page(pfn + i);
+ if (zone && page_zone(page) != zone)
+ return 0;
++ if (!zone)
++ start = pfn + i;
+ zone = page_zone(page);
++ end = pfn + MAX_ORDER_NR_PAGES;
+ }
+ }
+- return 1;
++
++ if (zone) {
++ *valid_start = start;
++ *valid_end = end;
++ return 1;
++ } else {
++ return 0;
++ }
+ }
+
+ /*
+@@ -1859,6 +1872,7 @@ static int __ref __offline_pages(unsigned long start_pfn,
+ long offlined_pages;
+ int ret, drain, retry_max, node;
+ unsigned long flags;
++ unsigned long valid_start, valid_end;
+ struct zone *zone;
+ struct memory_notify arg;
+
+@@ -1869,10 +1883,10 @@ static int __ref __offline_pages(unsigned long start_pfn,
+ return -EINVAL;
+ /* This makes hotplug much easier...and readable.
+ we assume this for now. .*/
+- if (!test_pages_in_a_zone(start_pfn, end_pfn))
++ if (!test_pages_in_a_zone(start_pfn, end_pfn, &valid_start, &valid_end))
+ return -EINVAL;
+
+- zone = page_zone(pfn_to_page(start_pfn));
++ zone = page_zone(pfn_to_page(valid_start));
+ node = zone_to_nid(zone);
+ nr_pages = end_pfn - start_pfn;
+
+diff --git a/mm/zswap.c b/mm/zswap.c
+index 275b22c..dbef278 100644
+--- a/mm/zswap.c
++++ b/mm/zswap.c
+@@ -78,7 +78,13 @@ static u64 zswap_duplicate_entry;
+
+ /* Enable/disable zswap (disabled by default) */
+ static bool zswap_enabled;
+-module_param_named(enabled, zswap_enabled, bool, 0644);
++static int zswap_enabled_param_set(const char *,
++ const struct kernel_param *);
++static struct kernel_param_ops zswap_enabled_param_ops = {
++ .set = zswap_enabled_param_set,
++ .get = param_get_bool,
++};
++module_param_cb(enabled, &zswap_enabled_param_ops, &zswap_enabled, 0644);
+
+ /* Crypto compressor to use */
+ #define ZSWAP_COMPRESSOR_DEFAULT "lzo"
+@@ -176,6 +182,9 @@ static atomic_t zswap_pools_count = ATOMIC_INIT(0);
+ /* used by param callback function */
+ static bool zswap_init_started;
+
++/* fatal error during init */
++static bool zswap_init_failed;
++
+ /*********************************
+ * helpers and fwd declarations
+ **********************************/
+@@ -706,6 +715,11 @@ static int __zswap_param_set(const char *val, const struct kernel_param *kp,
+ char *s = strstrip((char *)val);
+ int ret;
+
++ if (zswap_init_failed) {
++ pr_err("can't set param, initialization failed\n");
++ return -ENODEV;
++ }
++
+ /* no change required */
+ if (!strcmp(s, *(char **)kp->arg))
+ return 0;
+@@ -785,6 +799,17 @@ static int zswap_zpool_param_set(const char *val,
+ return __zswap_param_set(val, kp, NULL, zswap_compressor);
+ }
+
++static int zswap_enabled_param_set(const char *val,
++ const struct kernel_param *kp)
++{
++ if (zswap_init_failed) {
++ pr_err("can't enable, initialization failed\n");
++ return -ENODEV;
++ }
++
++ return param_set_bool(val, kp);
++}
++
+ /*********************************
+ * writeback code
+ **********************************/
+@@ -1271,6 +1296,9 @@ static int __init init_zswap(void)
+ dstmem_fail:
+ zswap_entry_cache_destroy();
+ cache_fail:
++ /* if built-in, we aren't unloaded on failure; don't allow use */
++ zswap_init_failed = true;
++ zswap_enabled = false;
+ return -ENOMEM;
+ }
+ /* must be late so crypto has time to come up */
+diff --git a/net/can/bcm.c b/net/can/bcm.c
+index 436a753..5e9ed5e 100644
+--- a/net/can/bcm.c
++++ b/net/can/bcm.c
+@@ -734,14 +734,23 @@ static struct bcm_op *bcm_find_op(struct list_head *ops,
+
+ static void bcm_remove_op(struct bcm_op *op)
+ {
+- hrtimer_cancel(&op->timer);
+- hrtimer_cancel(&op->thrtimer);
+-
+- if (op->tsklet.func)
+- tasklet_kill(&op->tsklet);
++ if (op->tsklet.func) {
++ while (test_bit(TASKLET_STATE_SCHED, &op->tsklet.state) ||
++ test_bit(TASKLET_STATE_RUN, &op->tsklet.state) ||
++ hrtimer_active(&op->timer)) {
++ hrtimer_cancel(&op->timer);
++ tasklet_kill(&op->tsklet);
++ }
++ }
+
+- if (op->thrtsklet.func)
+- tasklet_kill(&op->thrtsklet);
++ if (op->thrtsklet.func) {
++ while (test_bit(TASKLET_STATE_SCHED, &op->thrtsklet.state) ||
++ test_bit(TASKLET_STATE_RUN, &op->thrtsklet.state) ||
++ hrtimer_active(&op->thrtimer)) {
++ hrtimer_cancel(&op->thrtimer);
++ tasklet_kill(&op->thrtsklet);
++ }
++ }
+
+ if ((op->frames) && (op->frames != &op->sframe))
+ kfree(op->frames);
+diff --git a/net/sunrpc/auth_gss/gss_rpc_xdr.c b/net/sunrpc/auth_gss/gss_rpc_xdr.c
+index dc6fb79..25d9a9c 100644
+--- a/net/sunrpc/auth_gss/gss_rpc_xdr.c
++++ b/net/sunrpc/auth_gss/gss_rpc_xdr.c
+@@ -260,7 +260,7 @@ static int gssx_dec_option_array(struct xdr_stream *xdr,
+ if (!oa->data)
+ return -ENOMEM;
+
+- creds = kmalloc(sizeof(struct svc_cred), GFP_KERNEL);
++ creds = kzalloc(sizeof(struct svc_cred), GFP_KERNEL);
+ if (!creds) {
+ kfree(oa->data);
+ return -ENOMEM;
diff --git a/4.8.17/4420_grsecurity-3.1-4.8.17-201701151620.patch b/4.9.9/4420_grsecurity-3.1-4.9.9-201702122044.patch
index 147c250..32e3834 100644
--- a/4.8.17/4420_grsecurity-3.1-4.8.17-201701151620.patch
+++ b/4.9.9/4420_grsecurity-3.1-4.9.9-201702122044.patch
@@ -232,7 +232,7 @@ index 5385cba..607c6a0 100644
+zconf.lex.c
zoffset.h
diff --git a/Documentation/kbuild/makefiles.txt b/Documentation/kbuild/makefiles.txt
-index 385a5ef..51d7fba 100644
+index 9b9c479..5a635ff 100644
--- a/Documentation/kbuild/makefiles.txt
+++ b/Documentation/kbuild/makefiles.txt
@@ -23,10 +23,11 @@ This document describes the Linux kernel Makefiles.
@@ -251,7 +251,7 @@ index 385a5ef..51d7fba 100644
=== 5 Kbuild clean infrastructure
-@@ -644,7 +645,29 @@ Both possibilities are described in the following.
+@@ -645,7 +646,29 @@ Both possibilities are described in the following.
Finally, the two .o files are linked to the executable, lxdialog.
Note: The syntax <executable>-y is not permitted for host-programs.
@@ -282,7 +282,7 @@ index 385a5ef..51d7fba 100644
kbuild offers support for host programs written in C++. This was
introduced solely to support kconfig, and is not recommended
-@@ -667,7 +690,7 @@ Both possibilities are described in the following.
+@@ -668,7 +691,7 @@ Both possibilities are described in the following.
qconf-cxxobjs := qconf.o
qconf-objs := check.o
@@ -291,7 +291,7 @@ index 385a5ef..51d7fba 100644
When compiling host programs, it is possible to set specific flags.
The programs will always be compiled utilising $(HOSTCC) passed
-@@ -695,7 +718,7 @@ Both possibilities are described in the following.
+@@ -696,7 +719,7 @@ Both possibilities are described in the following.
When linking qconf, it will be passed the extra option
"-L$(QTDIR)/lib".
@@ -300,7 +300,7 @@ index 385a5ef..51d7fba 100644
Kbuild will only build host-programs when they are referenced
as a prerequisite.
-@@ -726,7 +749,7 @@ Both possibilities are described in the following.
+@@ -727,7 +750,7 @@ Both possibilities are described in the following.
This will tell kbuild to build lxdialog even if not referenced in
any rule.
@@ -310,10 +310,10 @@ index 385a5ef..51d7fba 100644
A typical pattern in a Kbuild file looks like this:
diff --git a/Documentation/kernel-parameters.txt b/Documentation/kernel-parameters.txt
-index 46726d4..36138ff 100644
+index 922dec8..a45d4a2 100644
--- a/Documentation/kernel-parameters.txt
+++ b/Documentation/kernel-parameters.txt
-@@ -1368,6 +1368,12 @@ bytes respectively. Such letter suffixes can also be entirely omitted.
+@@ -1422,6 +1422,12 @@ bytes respectively. Such letter suffixes can also be entirely omitted.
[KNL] Should the hard-lockup detector generate
backtraces on all cpus.
Format: <integer>
@@ -326,7 +326,7 @@ index 46726d4..36138ff 100644
hashdist= [KNL,NUMA] Large hashes allocated during boot
are distributed across NUMA nodes. Defaults on
-@@ -2591,6 +2597,10 @@ bytes respectively. Such letter suffixes can also be entirely omitted.
+@@ -2651,6 +2657,10 @@ bytes respectively. Such letter suffixes can also be entirely omitted.
noexec=on: enable non-executable mappings (default)
noexec=off: disable non-executable mappings
@@ -337,7 +337,7 @@ index 46726d4..36138ff 100644
nosmap [X86]
Disable SMAP (Supervisor Mode Access Prevention)
even if it is supported by processor.
-@@ -2895,6 +2905,35 @@ bytes respectively. Such letter suffixes can also be entirely omitted.
+@@ -2959,6 +2969,35 @@ bytes respectively. Such letter suffixes can also be entirely omitted.
the specified number of seconds. This is to be used if
your oopses keep scrolling off the screen.
@@ -406,8 +406,20 @@ index ffab8b5..b8fcd61 100644
modules_disabled:
A toggle value indicating if modules are allowed to be loaded
+diff --git a/Kbuild b/Kbuild
+index 3d0ae15..84e5412 100644
+--- a/Kbuild
++++ b/Kbuild
+@@ -91,6 +91,7 @@ $(obj)/$(offsets-file): arch/$(SRCARCH)/kernel/asm-offsets.s FORCE
+ always += missing-syscalls
+ targets += missing-syscalls
+
++GCC_PLUGINS_missing-syscalls := n
+ quiet_cmd_syscalls = CALL $<
+ cmd_syscalls = $(CONFIG_SHELL) $< $(CC) $(c_flags) $(missing_syscalls_flags)
+
diff --git a/Makefile b/Makefile
-index ace32d3..f21d750 100644
+index c0c41c9..630adc4 100644
--- a/Makefile
+++ b/Makefile
@@ -302,7 +302,9 @@ CONFIG_SHELL := $(shell if [ -x "$$BASH" ]; then echo $$BASH; \
@@ -421,7 +433,7 @@ index ace32d3..f21d750 100644
ifeq ($(shell $(HOSTCC) -v 2>&1 | grep -c "clang version"), 1)
HOSTCFLAGS += -Wno-unused-value -Wno-unused-parameter \
-@@ -717,7 +719,7 @@ KBUILD_CFLAGS += $(call cc-option, -gsplit-dwarf, -g)
+@@ -731,7 +733,7 @@ KBUILD_CFLAGS += $(call cc-option, -gsplit-dwarf, -g)
else
KBUILD_CFLAGS += -g
endif
@@ -430,7 +442,7 @@ index ace32d3..f21d750 100644
endif
ifdef CONFIG_DEBUG_INFO_DWARF4
KBUILD_CFLAGS += $(call cc-option, -gdwarf-4,)
-@@ -892,7 +894,7 @@ export mod_sign_cmd
+@@ -910,7 +912,7 @@ export mod_sign_cmd
ifeq ($(KBUILD_EXTMOD),)
@@ -439,7 +451,7 @@ index ace32d3..f21d750 100644
vmlinux-dirs := $(patsubst %/,%,$(filter %/, $(init-y) $(init-m) \
$(core-y) $(core-m) $(drivers-y) $(drivers-m) \
-@@ -1258,7 +1260,10 @@ MRPROPER_FILES += .config .config.old .version .old_version \
+@@ -1274,7 +1276,10 @@ MRPROPER_FILES += .config .config.old .version .old_version \
Module.symvers tags TAGS cscope* GPATH GTAGS GRTAGS GSYMS \
signing_key.pem signing_key.priv signing_key.x509 \
x509.genkey extra_certificates signing_key.x509.keyid \
@@ -451,7 +463,7 @@ index ace32d3..f21d750 100644
# clean - Delete most, but leave enough to build external modules
#
-@@ -1297,7 +1302,7 @@ distclean: mrproper
+@@ -1314,7 +1319,7 @@ distclean: mrproper
@find $(srctree) $(RCS_FIND_IGNORE) \
\( -name '*.orig' -o -name '*.rej' -o -name '*~' \
-o -name '*.bak' -o -name '#*#' -o -name '.*.orig' \
@@ -461,10 +473,18 @@ index ace32d3..f21d750 100644
diff --git a/arch/Kconfig b/arch/Kconfig
-index fd6e971..35d7bbf 100644
+index 659bdd0..4179181 100644
--- a/arch/Kconfig
+++ b/arch/Kconfig
-@@ -355,7 +355,7 @@ config HAVE_GCC_PLUGINS
+@@ -164,6 +164,7 @@ config ARCH_USE_BUILTIN_BSWAP
+ config KRETPROBES
+ def_bool y
+ depends on KPROBES && HAVE_KRETPROBES
++ depends on !PAX_RAP
+
+ config USER_RETURN_NOTIFIER
+ bool
+@@ -355,7 +356,7 @@ config HAVE_GCC_PLUGINS
menuconfig GCC_PLUGINS
bool "GCC plugins"
depends on HAVE_GCC_PLUGINS
@@ -473,6 +493,14 @@ index fd6e971..35d7bbf 100644
help
GCC plugins are loadable modules that provide extra features to the
compiler. They are useful for runtime instrumentation and static analysis.
+@@ -759,6 +760,7 @@ config VMAP_STACK
+ default y
+ bool "Use a virtually-mapped stack"
+ depends on HAVE_ARCH_VMAP_STACK && !KASAN
++ depends on !GRKERNSEC_KSTACKOVERFLOW
+ ---help---
+ Enable this if you want the use virtually-mapped kernel stacks
+ with guard pages. This causes kernel stack overflows to be
diff --git a/arch/alpha/include/asm/atomic.h b/arch/alpha/include/asm/atomic.h
index 498933a..78d2b22 100644
--- a/arch/alpha/include/asm/atomic.h
@@ -772,7 +800,7 @@ index 83e9eee..db02682 100644
/*
* This routine handles page faults. It determines the address,
-@@ -132,8 +250,29 @@ retry:
+@@ -132,8 +250,29 @@ do_page_fault(unsigned long address, unsigned long mmcsr,
good_area:
si_code = SEGV_ACCERR;
if (cause < 0) {
@@ -803,23 +831,47 @@ index 83e9eee..db02682 100644
} else if (!cause) {
/* Allow reads even for write-only mappings */
if (!(vma->vm_flags & (VM_READ | VM_WRITE)))
-diff --git a/arch/arc/Kconfig b/arch/arc/Kconfig
-index 0d3e59f..4418d65 100644
---- a/arch/arc/Kconfig
-+++ b/arch/arc/Kconfig
-@@ -541,6 +541,7 @@ config ARC_DBG_TLB_MISS_COUNT
- bool "Profile TLB Misses"
- default n
- select DEBUG_FS
-+ depends on !GRKERNSEC_KMEM
- help
- Counts number of I and D TLB Misses and exports them via Debugfs
- The counters can be cleared via Debugfs as well
+diff --git a/arch/arc/kernel/kprobes.c b/arch/arc/kernel/kprobes.c
+index 42b0504..6013221 100644
+--- a/arch/arc/kernel/kprobes.c
++++ b/arch/arc/kernel/kprobes.c
+@@ -424,6 +424,7 @@ static void __used kretprobe_trampoline_holder(void)
+ "kretprobe_trampoline:\n" "nop\n");
+ }
+
++#ifdef CONFIG_KRETPROBES
+ void __kprobes arch_prepare_kretprobe(struct kretprobe_instance *ri,
+ struct pt_regs *regs)
+ {
+@@ -433,6 +434,7 @@ void __kprobes arch_prepare_kretprobe(struct kretprobe_instance *ri,
+ /* Replace the return addr with trampoline addr */
+ regs->blink = (unsigned long)&kretprobe_trampoline;
+ }
++#endif
+
+ static int __kprobes trampoline_probe_handler(struct kprobe *p,
+ struct pt_regs *regs)
+@@ -509,6 +511,7 @@ int __init arch_init_kprobes(void)
+ return register_kprobe(&trampoline_p);
+ }
+
++#ifdef CONFIG_KRETPROBES
+ int __kprobes arch_trampoline_kprobe(struct kprobe *p)
+ {
+ if (p->addr == (kprobe_opcode_t *) &kretprobe_trampoline)
+@@ -516,6 +519,7 @@ int __kprobes arch_trampoline_kprobe(struct kprobe *p)
+
+ return 0;
+ }
++#endif
+
+ void trap_is_kprobe(unsigned long address, struct pt_regs *regs)
+ {
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
-index a9c4e48..75bc9c9 100644
+index b5d529f..0bb4d4f 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
-@@ -1621,6 +1621,7 @@ config AEABI
+@@ -1622,6 +1622,7 @@ config AEABI
config OABI_COMPAT
bool "Allow old ABI binaries to run with this kernel (EXPERIMENTAL)"
depends on AEABI && !THUMB2_KERNEL
@@ -827,7 +879,7 @@ index a9c4e48..75bc9c9 100644
help
This option preserves the old syscall interface along with the
new (ARM EABI) one. It also provides a compatibility layer to
-@@ -1689,6 +1690,7 @@ config HIGHPTE
+@@ -1690,6 +1691,7 @@ config HIGHPTE
config CPU_SW_DOMAIN_PAN
bool "Enable use of CPU domains to implement privileged no-access"
depends on MMU && !ARM_LPAE
@@ -835,7 +887,7 @@ index a9c4e48..75bc9c9 100644
default y
help
Increase kernel security by ensuring that normal kernel accesses
-@@ -1765,7 +1767,7 @@ config ALIGNMENT_TRAP
+@@ -1766,7 +1768,7 @@ config ALIGNMENT_TRAP
config UACCESS_WITH_MEMCPY
bool "Use kernel mem{cpy,set}() for {copy_to,clear}_user()"
@@ -844,7 +896,7 @@ index a9c4e48..75bc9c9 100644
default y if CPU_FEROCEON
help
Implement faster copy_to_user and clear_user methods for CPU
-@@ -2020,6 +2022,7 @@ config KEXEC
+@@ -2021,6 +2023,7 @@ config KEXEC
depends on (!SMP || PM_SLEEP_SMP)
depends on !CPU_V7M
select KEXEC_CORE
@@ -852,7 +904,7 @@ index a9c4e48..75bc9c9 100644
help
kexec is a system call that implements the ability to shutdown your
current kernel, and to start another kernel. It is like a reboot
-@@ -2064,7 +2067,7 @@ config EFI_STUB
+@@ -2065,7 +2068,7 @@ config EFI_STUB
config EFI
bool "UEFI runtime support"
@@ -862,7 +914,7 @@ index a9c4e48..75bc9c9 100644
select EFI_PARAMS_FROM_FDT
select EFI_STUB
diff --git a/arch/arm/Kconfig.debug b/arch/arm/Kconfig.debug
-index a9693b6..87d8936 100644
+index d83f7c3..a6aba4c 100644
--- a/arch/arm/Kconfig.debug
+++ b/arch/arm/Kconfig.debug
@@ -7,6 +7,7 @@ config ARM_PTDUMP
@@ -874,18 +926,18 @@ index a9693b6..87d8936 100644
Say Y here if you want to show the kernel pagetable layout in a
debugfs file. This information is only useful for kernel developers
diff --git a/arch/arm/boot/compressed/Makefile b/arch/arm/boot/compressed/Makefile
-index d50430c..01cc53b 100644
+index d50430c..39509a6 100644
--- a/arch/arm/boot/compressed/Makefile
+++ b/arch/arm/boot/compressed/Makefile
-@@ -103,6 +103,8 @@ ORIG_CFLAGS := $(KBUILD_CFLAGS)
- KBUILD_CFLAGS = $(subst -pg, , $(ORIG_CFLAGS))
- endif
+@@ -24,6 +24,8 @@ endif
+
+ GCOV_PROFILE := n
-+KBUILD_CFLAGS := $(filter-out $(GCC_PLUGINS_CFLAGS),$(KBUILD_CFLAGS))
++GCC_PLUGINS := n
+
- # -fstack-protector-strong triggers protection checks in this code,
- # but it is being used too early to link to meaningful stack_chk logic.
- nossp_flags := $(call cc-option, -fno-stack-protector)
+ #
+ # Architecture dependencies
+ #
diff --git a/arch/arm/crypto/sha1_glue.c b/arch/arm/crypto/sha1_glue.c
index 6fc73bf..d0af3c7b 100644
--- a/arch/arm/crypto/sha1_glue.c
@@ -1688,7 +1740,7 @@ index 75fe66b..2255c86 100644
/*
* Memory returned by kmalloc() may be used for DMA, so we must make
diff --git a/arch/arm/include/asm/cacheflush.h b/arch/arm/include/asm/cacheflush.h
-index 9156fc3..0521e3e 100644
+index bdd283b..e66fb83 100644
--- a/arch/arm/include/asm/cacheflush.h
+++ b/arch/arm/include/asm/cacheflush.h
@@ -116,7 +116,7 @@ struct cpu_cache_fns {
@@ -2307,7 +2359,7 @@ index 5f833f7..76e6644 100644
}
diff --git a/arch/arm/include/asm/uaccess.h b/arch/arm/include/asm/uaccess.h
-index a93c0f9..5c31bbb 100644
+index 1f59ea05..81245f0 100644
--- a/arch/arm/include/asm/uaccess.h
+++ b/arch/arm/include/asm/uaccess.h
@@ -18,6 +18,7 @@
@@ -2469,17 +2521,18 @@ index a93c0f9..5c31bbb 100644
__clear_user_std(void __user *addr, unsigned long n);
static inline unsigned long __must_check
-@@ -533,6 +565,9 @@ __clear_user(void __user *addr, unsigned long n)
-
+@@ -534,6 +566,10 @@ __clear_user(void __user *addr, unsigned long n)
static inline unsigned long __must_check copy_from_user(void *to, const void __user *from, unsigned long n)
{
+ unsigned long res = n;
++
+ if ((long)n < 0)
+ return n;
+
- if (access_ok(VERIFY_READ, from, n))
- n = __copy_from_user(to, from, n);
- else /* security hole - plug it */
-@@ -542,6 +577,9 @@ static inline unsigned long __must_check copy_from_user(void *to, const void __u
+ if (likely(access_ok(VERIFY_READ, from, n)))
+ res = __copy_from_user(to, from, n);
+ if (unlikely(res))
+@@ -543,6 +579,9 @@ static inline unsigned long __must_check copy_from_user(void *to, const void __u
static inline unsigned long __must_check copy_to_user(void __user *to, const void *from, unsigned long n)
{
@@ -2515,19 +2568,6 @@ index 7e45f69..2c047db 100644
EXPORT_SYMBOL(csum_partial_copy_nocheck);
EXPORT_SYMBOL(__csum_ipv6_magic);
-diff --git a/arch/arm/kernel/cpuidle.c b/arch/arm/kernel/cpuidle.c
-index 7dccc96..84da243 100644
---- a/arch/arm/kernel/cpuidle.c
-+++ b/arch/arm/kernel/cpuidle.c
-@@ -19,7 +19,7 @@ extern struct of_cpuidle_method __cpuidle_method_of_table[];
- static const struct of_cpuidle_method __cpuidle_method_of_table_sentinel
- __used __section(__cpuidle_method_of_table_end);
-
--static struct cpuidle_ops cpuidle_ops[NR_CPUS];
-+static struct cpuidle_ops cpuidle_ops[NR_CPUS] __read_only;
-
- /**
- * arm_cpuidle_simple_enter() - a wrapper to cpu_do_idle()
diff --git a/arch/arm/kernel/efi.c b/arch/arm/kernel/efi.c
index 9f43ba0..1cee475 100644
--- a/arch/arm/kernel/efi.c
@@ -2916,29 +2956,6 @@ index 059c3da..8e45cfc 100644
if (!cache_is_vipt_nonaliasing())
flush_icache_range((unsigned long)base + offset, offset +
length);
-diff --git a/arch/arm/kernel/module-plts.c b/arch/arm/kernel/module-plts.c
-index 0c7efc3..3927085 100644
---- a/arch/arm/kernel/module-plts.c
-+++ b/arch/arm/kernel/module-plts.c
-@@ -30,17 +30,12 @@ struct plt_entries {
- u32 lit[PLT_ENT_COUNT];
- };
-
--static bool in_init(const struct module *mod, u32 addr)
--{
-- return addr - (u32)mod->init_layout.base < mod->init_layout.size;
--}
--
- u32 get_module_plt(struct module *mod, unsigned long loc, Elf32_Addr val)
- {
- struct plt_entries *plt, *plt_end;
- int c, *count;
-
-- if (in_init(mod, loc)) {
-+ if (within_module_init(loc, mod)) {
- plt = (void *)mod->arch.init_plt->sh_addr;
- plt_end = (void *)plt + mod->arch.init_plt->sh_size;
- count = &mod->arch.init_plt_count;
diff --git a/arch/arm/kernel/module.c b/arch/arm/kernel/module.c
index 4f14b5c..91ff261 100644
--- a/arch/arm/kernel/module.c
@@ -3016,7 +3033,7 @@ index 69bda1a..755113a 100644
if (waddr != addr) {
flush_kernel_vmap_range(waddr, twopage ? size / 2 : size);
diff --git a/arch/arm/kernel/process.c b/arch/arm/kernel/process.c
-index 612eb53..5a44c8c 100644
+index 91d2d5b..042c26e 100644
--- a/arch/arm/kernel/process.c
+++ b/arch/arm/kernel/process.c
@@ -118,8 +118,8 @@ void __show_regs(struct pt_regs *regs)
@@ -3039,7 +3056,7 @@ index 612eb53..5a44c8c 100644
/*
* Copy the initial value of the domain access control register
* from the current thread: thread->addr_limit will have been
-@@ -337,7 +337,7 @@ static struct vm_area_struct gate_vma = {
+@@ -336,7 +336,7 @@ static struct vm_area_struct gate_vma = {
static int __init gate_vma_init(void)
{
@@ -3048,7 +3065,7 @@ index 612eb53..5a44c8c 100644
return 0;
}
arch_initcall(gate_vma_init);
-@@ -366,92 +366,14 @@ const char *arch_vma_name(struct vm_area_struct *vma)
+@@ -365,92 +365,14 @@ const char *arch_vma_name(struct vm_area_struct *vma)
return is_gate_vma(vma) ? "[vectors]" : NULL;
}
@@ -3180,10 +3197,10 @@ index 3fa867a..d610607 100644
/*
diff --git a/arch/arm/kernel/setup.c b/arch/arm/kernel/setup.c
-index df7f2a7..d9d2bc1 100644
+index 34e3f3c..3d2dada 100644
--- a/arch/arm/kernel/setup.c
+++ b/arch/arm/kernel/setup.c
-@@ -112,21 +112,23 @@ EXPORT_SYMBOL(elf_hwcap);
+@@ -112,6 +112,8 @@ EXPORT_SYMBOL(elf_hwcap);
unsigned int elf_hwcap2 __read_mostly;
EXPORT_SYMBOL(elf_hwcap2);
@@ -3191,27 +3208,7 @@ index df7f2a7..d9d2bc1 100644
+pmdval_t __supported_pmd_mask __read_only;
#ifdef MULTI_CPU
--struct processor processor __read_mostly;
-+struct processor processor __read_only;
- #endif
- #ifdef MULTI_TLB
--struct cpu_tlb_fns cpu_tlb __read_mostly;
-+struct cpu_tlb_fns cpu_tlb __read_only;
- #endif
- #ifdef MULTI_USER
--struct cpu_user_fns cpu_user __read_mostly;
-+struct cpu_user_fns cpu_user __read_only;
- #endif
- #ifdef MULTI_CACHE
--struct cpu_cache_fns cpu_cache __read_mostly;
-+struct cpu_cache_fns cpu_cache __read_only;
- #endif
- #ifdef CONFIG_OUTER_CACHE
--struct outer_cache_fns outer_cache __read_mostly;
-+struct outer_cache_fns outer_cache __read_only;
- EXPORT_SYMBOL(outer_cache);
- #endif
-
+ struct processor processor __ro_after_init;
@@ -257,9 +259,13 @@ static int __get_cpu_architecture(void)
* Register 0 and check for VMSAv7 or PMSAv7 */
unsigned int mmfr0 = read_cpuid_ext(CPUID_EXT_MMFR0);
@@ -3285,19 +3282,6 @@ index 7b8f214..ece8e28 100644
-
- return page;
-}
-diff --git a/arch/arm/kernel/smp.c b/arch/arm/kernel/smp.c
-index 8615216..f5be307 100644
---- a/arch/arm/kernel/smp.c
-+++ b/arch/arm/kernel/smp.c
-@@ -82,7 +82,7 @@ enum ipi_msg_type {
-
- static DECLARE_COMPLETION(cpu_running);
-
--static struct smp_operations smp_ops;
-+static struct smp_operations smp_ops __read_only;
-
- void __init smp_set_ops(const struct smp_operations *ops)
- {
diff --git a/arch/arm/kernel/tcm.c b/arch/arm/kernel/tcm.c
index b10e136..cb5edf9 100644
--- a/arch/arm/kernel/tcm.c
@@ -3311,7 +3295,7 @@ index b10e136..cb5edf9 100644
}
};
-@@ -362,7 +362,9 @@ no_dtcm:
+@@ -362,7 +362,9 @@ void __init tcm_init(void)
start = &__sitcm_text;
end = &__eitcm_text;
ram = &__itcm_start;
@@ -3322,7 +3306,7 @@ index b10e136..cb5edf9 100644
start, end);
itcm_present = true;
diff --git a/arch/arm/kernel/traps.c b/arch/arm/kernel/traps.c
-index bc69838..e5dfdd4 100644
+index 9688ec0..dd072c0 100644
--- a/arch/arm/kernel/traps.c
+++ b/arch/arm/kernel/traps.c
@@ -65,7 +65,7 @@ static void dump_mem(const char *, const char *, unsigned long, unsigned long);
@@ -3334,7 +3318,7 @@ index bc69838..e5dfdd4 100644
#else
printk("Function entered at [<%08lx>] from [<%08lx>]\n", where, from);
#endif
-@@ -267,6 +267,8 @@ static arch_spinlock_t die_lock = __ARCH_SPIN_LOCK_UNLOCKED;
+@@ -287,6 +287,8 @@ static arch_spinlock_t die_lock = __ARCH_SPIN_LOCK_UNLOCKED;
static int die_owner = -1;
static unsigned int die_nest_count;
@@ -3343,7 +3327,7 @@ index bc69838..e5dfdd4 100644
static unsigned long oops_begin(void)
{
int cpu;
-@@ -309,6 +311,9 @@ static void oops_end(unsigned long flags, struct pt_regs *regs, int signr)
+@@ -329,6 +331,9 @@ static void oops_end(unsigned long flags, struct pt_regs *regs, int signr)
panic("Fatal exception in interrupt");
if (panic_on_oops)
panic("Fatal exception");
@@ -3354,7 +3338,7 @@ index bc69838..e5dfdd4 100644
do_exit(signr);
}
diff --git a/arch/arm/kernel/vmlinux.lds.S b/arch/arm/kernel/vmlinux.lds.S
-index d24e5dd..77cf6cf 100644
+index f7f55df..49c9f9e 100644
--- a/arch/arm/kernel/vmlinux.lds.S
+++ b/arch/arm/kernel/vmlinux.lds.S
@@ -44,7 +44,8 @@
@@ -3368,7 +3352,7 @@ index d24e5dd..77cf6cf 100644
#define ARM_EXIT_DISCARD(x)
#else
diff --git a/arch/arm/kvm/arm.c b/arch/arm/kvm/arm.c
-index c94b90d..0cc6830 100644
+index 19b5f5c..9aa8e58 100644
--- a/arch/arm/kvm/arm.c
+++ b/arch/arm/kvm/arm.c
@@ -59,7 +59,7 @@ static unsigned long hyp_default_vectors;
@@ -3380,7 +3364,7 @@ index c94b90d..0cc6830 100644
static u32 kvm_next_vmid;
static unsigned int kvm_vmid_bits __read_mostly;
static DEFINE_SPINLOCK(kvm_vmid_lock);
-@@ -388,7 +388,7 @@ void force_vm_exit(const cpumask_t *mask)
+@@ -423,7 +423,7 @@ void force_vm_exit(const cpumask_t *mask)
*/
static bool need_new_vmid_gen(struct kvm *kvm)
{
@@ -3389,7 +3373,7 @@ index c94b90d..0cc6830 100644
}
/**
-@@ -421,7 +421,7 @@ static void update_vttbr(struct kvm *kvm)
+@@ -456,7 +456,7 @@ static void update_vttbr(struct kvm *kvm)
/* First user of a new VMID generation? */
if (unlikely(kvm_next_vmid == 0)) {
@@ -3398,7 +3382,7 @@ index c94b90d..0cc6830 100644
kvm_next_vmid = 1;
/*
-@@ -438,7 +438,7 @@ static void update_vttbr(struct kvm *kvm)
+@@ -473,7 +473,7 @@ static void update_vttbr(struct kvm *kvm)
kvm_call_hyp(__kvm_flush_vm_context);
}
@@ -3434,19 +3418,6 @@ index 1712f13..a3165dc 100644
#include "csumpartialcopygeneric.S"
-diff --git a/arch/arm/lib/delay.c b/arch/arm/lib/delay.c
-index 8044591..c9b2609 100644
---- a/arch/arm/lib/delay.c
-+++ b/arch/arm/lib/delay.c
-@@ -29,7 +29,7 @@
- /*
- * Default to the loop-based delay implementation.
- */
--struct arm_delay_ops arm_delay_ops = {
-+struct arm_delay_ops arm_delay_ops __read_only = {
- .delay = __loop_delay,
- .const_udelay = __loop_const_udelay,
- .udelay = __loop_udelay,
diff --git a/arch/arm/lib/uaccess_with_memcpy.c b/arch/arm/lib/uaccess_with_memcpy.c
index 6bd1089..e999400 100644
--- a/arch/arm/lib/uaccess_with_memcpy.c
@@ -3520,7 +3491,7 @@ diff --git a/arch/arm/mach-mvebu/coherency.c b/arch/arm/mach-mvebu/coherency.c
index ae2a018..297ad08 100644
--- a/arch/arm/mach-mvebu/coherency.c
+++ b/arch/arm/mach-mvebu/coherency.c
-@@ -156,7 +156,7 @@ exit:
+@@ -156,7 +156,7 @@ static void __init armada_370_coherency_init(struct device_node *np)
/*
* This ioremap hook is used on Armada 375/38x to ensure that all MMIO
@@ -3561,10 +3532,10 @@ index f39bd51..866c780 100644
extern void armada_370_xp_cpu_resume(void);
extern void armada_38x_cpu_resume(void);
diff --git a/arch/arm/mach-omap2/board-n8x0.c b/arch/arm/mach-omap2/board-n8x0.c
-index b6443a4..20a0b74 100644
+index 6b6fda6..232df1e 100644
--- a/arch/arm/mach-omap2/board-n8x0.c
+++ b/arch/arm/mach-omap2/board-n8x0.c
-@@ -569,7 +569,7 @@ static int n8x0_menelaus_late_init(struct device *dev)
+@@ -568,7 +568,7 @@ static int n8x0_menelaus_late_init(struct device *dev)
}
#endif
@@ -3574,10 +3545,10 @@ index b6443a4..20a0b74 100644
};
diff --git a/arch/arm/mach-omap2/omap-mpuss-lowpower.c b/arch/arm/mach-omap2/omap-mpuss-lowpower.c
-index ad98246..69437a8 100644
+index 7d62ad4..97774b1 100644
--- a/arch/arm/mach-omap2/omap-mpuss-lowpower.c
+++ b/arch/arm/mach-omap2/omap-mpuss-lowpower.c
-@@ -88,7 +88,7 @@ struct cpu_pm_ops {
+@@ -89,7 +89,7 @@ struct cpu_pm_ops {
void (*resume)(void);
void (*scu_prepare)(unsigned int cpu_id, unsigned int cpu_state);
void (*hotplug_restart)(void);
@@ -3586,7 +3557,7 @@ index ad98246..69437a8 100644
static DEFINE_PER_CPU(struct omap4_cpu_pm_info, omap4_pm_info);
static struct powerdomain *mpuss_pd;
-@@ -106,7 +106,7 @@ static void dummy_cpu_resume(void)
+@@ -107,7 +107,7 @@ static void dummy_cpu_resume(void)
static void dummy_scu_prepare(unsigned int cpu_id, unsigned int cpu_state)
{}
@@ -3773,7 +3744,7 @@ index a69b22d..8523a03 100644
#include <linux/irq.h>
#include <linux/kernel.h>
diff --git a/arch/arm/mach-ux500/pm.c b/arch/arm/mach-ux500/pm.c
-index 8538910..2f39bc4 100644
+index a970e7f..6f2bf9a 100644
--- a/arch/arm/mach-ux500/pm.c
+++ b/arch/arm/mach-ux500/pm.c
@@ -10,6 +10,7 @@
@@ -3797,10 +3768,10 @@ index 7cd9865..a00b6ab 100644
#include "common.h"
diff --git a/arch/arm/mm/Kconfig b/arch/arm/mm/Kconfig
-index d15a7fe..6cc4fc9 100644
+index c1799dd..9111dcc 100644
--- a/arch/arm/mm/Kconfig
+++ b/arch/arm/mm/Kconfig
-@@ -445,6 +445,7 @@ config CPU_32v5
+@@ -446,6 +446,7 @@ config CPU_32v5
config CPU_32v6
bool
@@ -3808,7 +3779,7 @@ index d15a7fe..6cc4fc9 100644
select TLS_REG_EMUL if !CPU_32v6K && !MMU
config CPU_32v6K
-@@ -599,6 +600,7 @@ config CPU_CP15_MPU
+@@ -603,6 +604,7 @@ config CPU_CP15_MPU
config CPU_USE_DOMAINS
bool
@@ -3816,7 +3787,7 @@ index d15a7fe..6cc4fc9 100644
help
This option enables or disables the use of domain switching
via the set_fs() function.
-@@ -809,7 +811,7 @@ config NEED_KUSER_HELPERS
+@@ -813,7 +815,7 @@ config NEED_KUSER_HELPERS
config KUSER_HELPERS
bool "Enable kuser helpers in vector page" if !NEED_KUSER_HELPERS
@@ -3825,7 +3796,7 @@ index d15a7fe..6cc4fc9 100644
default y
help
Warning: disabling this option may break user programs.
-@@ -823,7 +825,7 @@ config KUSER_HELPERS
+@@ -827,7 +829,7 @@ config KUSER_HELPERS
See Documentation/arm/kernel_user_helpers.txt for details.
However, the fixed address nature of these helpers can be used
@@ -3834,7 +3805,7 @@ index d15a7fe..6cc4fc9 100644
exploits.
If all of the binaries and libraries which run on your platform
-@@ -838,7 +840,7 @@ config KUSER_HELPERS
+@@ -842,7 +844,7 @@ config KUSER_HELPERS
config VDSO
bool "Enable VDSO for acceleration of some system calls"
@@ -3906,7 +3877,7 @@ index 7d5f4c7..c6a0816 100644
ai_sys += 1;
diff --git a/arch/arm/mm/cache-l2x0.c b/arch/arm/mm/cache-l2x0.c
-index cc12905..88463b3 100644
+index d1870c7..36d500f 100644
--- a/arch/arm/mm/cache-l2x0.c
+++ b/arch/arm/mm/cache-l2x0.c
@@ -44,7 +44,7 @@ struct l2c_init_data {
@@ -4201,7 +4172,7 @@ index 3a2e678..ebdbf80 100644
inf->name, ifsr, addr);
diff --git a/arch/arm/mm/fault.h b/arch/arm/mm/fault.h
-index 05ec5e0..0b70277 100644
+index 67532f2..10b646e 100644
--- a/arch/arm/mm/fault.h
+++ b/arch/arm/mm/fault.h
@@ -3,6 +3,7 @@
@@ -4228,8 +4199,8 @@ index 05ec5e0..0b70277 100644
+}
+
void do_bad_area(unsigned long addr, unsigned int fsr, struct pt_regs *regs);
- unsigned long search_exception_table(unsigned long addr);
void early_abt_enable(void);
+
diff --git a/arch/arm/mm/init.c b/arch/arm/mm/init.c
index 370581a..b985cc1 100644
--- a/arch/arm/mm/init.c
@@ -4416,14 +4387,13 @@ index 66353ca..8aad9f8 100644
}
}
diff --git a/arch/arm/mm/mmu.c b/arch/arm/mm/mmu.c
-index 30fe03f..738d54e 100644
+index 4001dd1..c6dce7b 100644
--- a/arch/arm/mm/mmu.c
+++ b/arch/arm/mm/mmu.c
-@@ -243,7 +243,15 @@ __setup("noalign", noalign_setup);
+@@ -243,6 +243,14 @@ __setup("noalign", noalign_setup);
#define PROT_PTE_S2_DEVICE PROT_PTE_DEVICE
#define PROT_SECT_DEVICE PMD_TYPE_SECT|PMD_SECT_AP_WRITE
--static struct mem_type mem_types[] = {
+#ifdef CONFIG_PAX_KERNEXEC
+#define L_PTE_KERNEXEC L_PTE_RDONLY
+#define PMD_SECT_KERNEXEC PMD_SECT_RDONLY
@@ -4432,11 +4402,10 @@ index 30fe03f..738d54e 100644
+#define PMD_SECT_KERNEXEC PMD_SECT_AP_WRITE
+#endif
+
-+static struct mem_type mem_types[] __read_only = {
+ static struct mem_type mem_types[] __ro_after_init = {
[MT_DEVICE] = { /* Strongly ordered / ARMv6 shared device */
.prot_pte = PROT_PTE_DEVICE | L_PTE_MT_DEV_SHARED |
- L_PTE_SHARED,
-@@ -272,19 +280,19 @@ static struct mem_type mem_types[] = {
+@@ -272,19 +280,19 @@ static struct mem_type mem_types[] __ro_after_init = {
.prot_sect = PROT_SECT_DEVICE,
.domain = DOMAIN_IO,
},
@@ -4461,7 +4430,7 @@ index 30fe03f..738d54e 100644
.domain = DOMAIN_KERNEL,
},
#endif
-@@ -300,7 +308,7 @@ static struct mem_type mem_types[] = {
+@@ -300,7 +308,7 @@ static struct mem_type mem_types[] __ro_after_init = {
.prot_l1 = PMD_TYPE_TABLE,
.domain = DOMAIN_VECTORS,
},
@@ -4470,7 +4439,7 @@ index 30fe03f..738d54e 100644
.prot_pte = L_PTE_PRESENT | L_PTE_YOUNG | L_PTE_DIRTY,
.prot_l1 = PMD_TYPE_TABLE,
.prot_sect = PMD_TYPE_SECT | PMD_SECT_AP_WRITE,
-@@ -313,17 +321,30 @@ static struct mem_type mem_types[] = {
+@@ -313,17 +321,30 @@ static struct mem_type mem_types[] __ro_after_init = {
.prot_sect = PMD_TYPE_SECT | PMD_SECT_AP_WRITE,
.domain = DOMAIN_KERNEL,
},
@@ -4504,7 +4473,7 @@ index 30fe03f..738d54e 100644
[MT_MEMORY_RW_DTCM] = {
.prot_pte = L_PTE_PRESENT | L_PTE_YOUNG | L_PTE_DIRTY |
L_PTE_XN,
-@@ -331,9 +352,10 @@ static struct mem_type mem_types[] = {
+@@ -331,9 +352,10 @@ static struct mem_type mem_types[] __ro_after_init = {
.prot_sect = PMD_TYPE_SECT | PMD_SECT_XN,
.domain = DOMAIN_KERNEL,
},
@@ -4868,7 +4837,7 @@ index 93d0b6d..2db6d99 100644
emit_mov_i(r_off, k, ctx);
load_common:
ctx->seen |= SEEN_DATA | SEEN_CALL;
-@@ -568,18 +558,6 @@ load_common:
+@@ -568,18 +558,6 @@ static int build_body(struct jit_ctx *ctx)
condt = ARM_COND_HI;
}
@@ -4913,11 +4882,44 @@ index a5bc92d..0bb4730 100644
omap_sram_size - omap_sram_skip);
+ pax_close_kernel();
}
+diff --git a/arch/arm/probes/kprobes/core.c b/arch/arm/probes/kprobes/core.c
+index a4ec240..96faf9b 100644
+--- a/arch/arm/probes/kprobes/core.c
++++ b/arch/arm/probes/kprobes/core.c
+@@ -485,6 +485,7 @@ static __used __kprobes void *trampoline_handler(struct pt_regs *regs)
+ return (void *)orig_ret_address;
+ }
+
++#ifdef CONFIG_KRETPROBES
+ void __kprobes arch_prepare_kretprobe(struct kretprobe_instance *ri,
+ struct pt_regs *regs)
+ {
+@@ -493,6 +494,7 @@ void __kprobes arch_prepare_kretprobe(struct kretprobe_instance *ri,
+ /* Replace the return addr with trampoline addr. */
+ regs->ARM_lr = (unsigned long)&kretprobe_trampoline;
+ }
++#endif
+
+ int __kprobes setjmp_pre_handler(struct kprobe *p, struct pt_regs *regs)
+ {
+@@ -605,10 +607,12 @@ int __kprobes longjmp_break_handler(struct kprobe *p, struct pt_regs *regs)
+ return 0;
+ }
+
++#ifdef CONFIG_KRETPROBES
+ int __kprobes arch_trampoline_kprobe(struct kprobe *p)
+ {
+ return 0;
+ }
++#endif
+
+ #ifdef CONFIG_THUMB2_KERNEL
+
diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
-index bc3f00f..88ded6a 100644
+index 969ef88..305b856 100644
--- a/arch/arm64/Kconfig
+++ b/arch/arm64/Kconfig
-@@ -891,6 +891,7 @@ config RELOCATABLE
+@@ -896,6 +896,7 @@ config RELOCATABLE
config RANDOMIZE_BASE
bool "Randomize the address of the kernel image"
@@ -4926,7 +4928,7 @@ index bc3f00f..88ded6a 100644
select RELOCATABLE
help
diff --git a/arch/arm64/Kconfig.debug b/arch/arm64/Kconfig.debug
-index 0cc758c..de67415 100644
+index b661fe7..6d124fc 100644
--- a/arch/arm64/Kconfig.debug
+++ b/arch/arm64/Kconfig.debug
@@ -6,6 +6,7 @@ config ARM64_PTDUMP
@@ -5100,7 +5102,7 @@ index d25f4f1..61d52da 100644
static inline void __pgd_populate(pgd_t *pgdp, phys_addr_t pud, pgdval_t prot)
{
diff --git a/arch/arm64/include/asm/pgtable.h b/arch/arm64/include/asm/pgtable.h
-index e20bd43..7e476da 100644
+index ffbb9a5..d8b49ff 100644
--- a/arch/arm64/include/asm/pgtable.h
+++ b/arch/arm64/include/asm/pgtable.h
@@ -23,6 +23,9 @@
@@ -5113,7 +5115,7 @@ index e20bd43..7e476da 100644
/*
* VMALLOC range.
*
-@@ -718,6 +721,9 @@ static inline void update_mmu_cache(struct vm_area_struct *vma,
+@@ -728,6 +731,9 @@ static inline void update_mmu_cache(struct vm_area_struct *vma,
#define kc_vaddr_to_offset(v) ((v) & ~VA_START)
#define kc_offset_to_vaddr(o) ((o) | VA_START)
@@ -5181,7 +5183,7 @@ index 2eb714c..3a10471 100644
#if defined(CONFIG_KASAN) && !defined(__SANITIZE_ADDRESS__)
diff --git a/arch/arm64/include/asm/uaccess.h b/arch/arm64/include/asm/uaccess.h
-index db84983..d256a3edc 100644
+index 55d0adb..b986918 100644
--- a/arch/arm64/include/asm/uaccess.h
+++ b/arch/arm64/include/asm/uaccess.h
@@ -110,6 +110,7 @@ static inline void set_fs(mm_segment_t fs)
@@ -5202,17 +5204,18 @@ index db84983..d256a3edc 100644
kasan_check_read(from, n);
check_object_size(from, n, true);
return __arch_copy_to_user(to, from, n);
-@@ -286,6 +290,9 @@ static inline unsigned long __must_check __copy_to_user(void __user *to, const v
-
+@@ -287,6 +291,10 @@ static inline unsigned long __must_check __copy_to_user(void __user *to, const v
static inline unsigned long __must_check copy_from_user(void *to, const void __user *from, unsigned long n)
{
+ unsigned long res = n;
++
+ if ((long)n < 0)
+ return n;
+
kasan_check_write(to, n);
if (access_ok(VERIFY_READ, from, n)) {
-@@ -298,6 +305,9 @@ static inline unsigned long __must_check copy_from_user(void *to, const void __u
+@@ -300,6 +308,9 @@ static inline unsigned long __must_check copy_from_user(void *to, const void __u
static inline unsigned long __must_check copy_to_user(void __user *to, const void *from, unsigned long n)
{
@@ -5223,10 +5226,10 @@ index db84983..d256a3edc 100644
if (access_ok(VERIFY_WRITE, to, n)) {
diff --git a/arch/arm64/kernel/hibernate.c b/arch/arm64/kernel/hibernate.c
-index 65d81f9..6a46f09 100644
+index d55a7b0..d8dbd8a 100644
--- a/arch/arm64/kernel/hibernate.c
+++ b/arch/arm64/kernel/hibernate.c
-@@ -166,7 +166,7 @@ EXPORT_SYMBOL(arch_hibernation_header_restore);
+@@ -198,7 +198,7 @@ EXPORT_SYMBOL(arch_hibernation_header_restore);
static int create_safe_exec_page(void *src_start, size_t length,
unsigned long dst_addr,
phys_addr_t *phys_dst_addr,
@@ -5235,7 +5238,7 @@ index 65d81f9..6a46f09 100644
gfp_t mask)
{
int rc = 0;
-@@ -174,7 +174,7 @@ static int create_safe_exec_page(void *src_start, size_t length,
+@@ -206,7 +206,7 @@ static int create_safe_exec_page(void *src_start, size_t length,
pud_t *pud;
pmd_t *pmd;
pte_t *pte;
@@ -5244,7 +5247,7 @@ index 65d81f9..6a46f09 100644
if (!dst) {
rc = -ENOMEM;
-@@ -184,9 +184,9 @@ static int create_safe_exec_page(void *src_start, size_t length,
+@@ -216,9 +216,9 @@ static int create_safe_exec_page(void *src_start, size_t length,
memcpy((void *)dst, src_start, length);
flush_icache_range(dst, dst + length);
@@ -5256,7 +5259,7 @@ index 65d81f9..6a46f09 100644
if (!pud) {
rc = -ENOMEM;
goto out;
-@@ -196,7 +196,7 @@ static int create_safe_exec_page(void *src_start, size_t length,
+@@ -228,7 +228,7 @@ static int create_safe_exec_page(void *src_start, size_t length,
pud = pud_offset(pgd, dst_addr);
if (pud_none(*pud)) {
@@ -5265,7 +5268,7 @@ index 65d81f9..6a46f09 100644
if (!pmd) {
rc = -ENOMEM;
goto out;
-@@ -206,7 +206,7 @@ static int create_safe_exec_page(void *src_start, size_t length,
+@@ -238,7 +238,7 @@ static int create_safe_exec_page(void *src_start, size_t length,
pmd = pmd_offset(pud, dst_addr);
if (pmd_none(*pmd)) {
@@ -5274,7 +5277,7 @@ index 65d81f9..6a46f09 100644
if (!pte) {
rc = -ENOMEM;
goto out;
-@@ -449,7 +449,7 @@ int swsusp_arch_resume(void)
+@@ -510,7 +510,7 @@ int swsusp_arch_resume(void)
rc = create_safe_exec_page(__hibernate_exit_text_start, exit_size,
(unsigned long)hibernate_exit,
&phys_hibernate_exit,
@@ -5283,25 +5286,28 @@ index 65d81f9..6a46f09 100644
if (rc) {
pr_err("Failed to create safe executable page for hibernate_exit code.");
goto out;
-diff --git a/arch/arm64/kernel/probes/decode-insn.c b/arch/arm64/kernel/probes/decode-insn.c
-index 37e47a9..f8597fc 100644
---- a/arch/arm64/kernel/probes/decode-insn.c
-+++ b/arch/arm64/kernel/probes/decode-insn.c
-@@ -157,10 +157,10 @@ arm_kprobe_decode_insn(kprobe_opcode_t *addr, struct arch_specific_insn *asi)
- mod = __module_address((unsigned long)addr);
- if (mod && within_module_init((unsigned long)addr, mod) &&
- !within_module_init((unsigned long)scan_end, mod))
-- scan_end = (kprobe_opcode_t *)mod->init_layout.base;
-+ scan_end = (kprobe_opcode_t *)mod->init_layout.base_rx;
- else if (mod && within_module_core((unsigned long)addr, mod) &&
- !within_module_core((unsigned long)scan_end, mod))
-- scan_end = (kprobe_opcode_t *)mod->core_layout.base;
-+ scan_end = (kprobe_opcode_t *)mod->core_layout.base_rx;
- preempt_enable();
- }
- #endif
+diff --git a/arch/arm64/kernel/probes/kprobes.c b/arch/arm64/kernel/probes/kprobes.c
+index f5077ea..46b4664 100644
+--- a/arch/arm64/kernel/probes/kprobes.c
++++ b/arch/arm64/kernel/probes/kprobes.c
+@@ -639,6 +639,7 @@ void __kprobes __used *trampoline_probe_handler(struct pt_regs *regs)
+ return (void *)orig_ret_address;
+ }
+
++#ifdef CONFIG_KRETPROBES
+ void __kprobes arch_prepare_kretprobe(struct kretprobe_instance *ri,
+ struct pt_regs *regs)
+ {
+@@ -652,6 +653,7 @@ int __kprobes arch_trampoline_kprobe(struct kprobe *p)
+ {
+ return 0;
+ }
++#endif
+
+ int __init arch_init_kprobes(void)
+ {
diff --git a/arch/arm64/kernel/process.c b/arch/arm64/kernel/process.c
-index 9cc8667..5edbcff 100644
+index 01753cd..b65d17a 100644
--- a/arch/arm64/kernel/process.c
+++ b/arch/arm64/kernel/process.c
@@ -64,7 +64,7 @@ EXPORT_SYMBOL(__stack_chk_guard);
@@ -5347,7 +5353,7 @@ index 9cc8667..5edbcff 100644
/* Disable interrupts first */
local_irq_disable();
diff --git a/arch/arm64/kernel/stacktrace.c b/arch/arm64/kernel/stacktrace.c
-index d34fd72..8b6faee 100644
+index c2efddf..c58e0a2 100644
--- a/arch/arm64/kernel/stacktrace.c
+++ b/arch/arm64/kernel/stacktrace.c
@@ -95,8 +95,8 @@ int notrace unwind_frame(struct task_struct *tsk, struct stackframe *frame)
@@ -5362,10 +5368,10 @@ index d34fd72..8b6faee 100644
/* orig_sp is the saved pt_regs, find the elr */
diff --git a/arch/arm64/kernel/traps.c b/arch/arm64/kernel/traps.c
-index 9595d3d..7ee5abb 100644
+index 11e5eae..d8cdfa7 100644
--- a/arch/arm64/kernel/traps.c
+++ b/arch/arm64/kernel/traps.c
-@@ -512,7 +512,7 @@ asmlinkage long do_ni_syscall(struct pt_regs *regs)
+@@ -547,7 +547,7 @@ asmlinkage long do_ni_syscall(struct pt_regs *regs)
__show_regs(regs);
}
@@ -5427,7 +5433,7 @@ index 479330b..53717a8 100644
#endif /* __ASM_AVR32_KMAP_TYPES_H */
diff --git a/arch/avr32/mm/fault.c b/arch/avr32/mm/fault.c
-index a4b7eda..d057f9e 100644
+index b3977e9..4230c51a 100644
--- a/arch/avr32/mm/fault.c
+++ b/arch/avr32/mm/fault.c
@@ -41,6 +41,23 @@ static inline int notify_page_fault(struct pt_regs *regs, int trap)
@@ -5454,7 +5460,7 @@ index a4b7eda..d057f9e 100644
/*
* This routine handles page faults. It determines the address and the
* problem, and then passes it off to one of the appropriate routines.
-@@ -178,6 +195,16 @@ bad_area:
+@@ -178,6 +195,16 @@ asmlinkage void do_page_fault(unsigned long ecr, struct pt_regs *regs)
up_read(&mm->mmap_sem);
if (user_mode(regs)) {
@@ -5648,21 +5654,21 @@ index 18ca6a9..77b0e0d 100644
kexec is a system call that implements the ability to shutdown your
current kernel, and to start another kernel. It is like a reboot
diff --git a/arch/ia64/Makefile b/arch/ia64/Makefile
-index c100d78..07538cc 100644
+index c100d78..c44d46d 100644
--- a/arch/ia64/Makefile
+++ b/arch/ia64/Makefile
@@ -98,5 +98,6 @@ endef
archprepare: make_nr_irqs_h
PHONY += make_nr_irqs_h
-+make_nr_irqs_h: KBUILD_CFLAGS := $(filter-out $(GCC_PLUGINS_CFLAGS),$(KBUILD_CFLAGS))
++GCC_PLUGINS_make_nr_irqs_h := n
make_nr_irqs_h:
$(Q)$(MAKE) $(build)=arch/ia64/kernel include/generated/nr-irqs.h
diff --git a/arch/ia64/include/asm/atomic.h b/arch/ia64/include/asm/atomic.h
-index f565ad3..484af46 100644
+index 65d4bb2..8b2e661 100644
--- a/arch/ia64/include/asm/atomic.h
+++ b/arch/ia64/include/asm/atomic.h
-@@ -307,4 +307,14 @@ atomic64_add_negative (__s64 i, atomic64_t *v)
+@@ -323,4 +323,14 @@ atomic64_add_negative (__s64 i, atomic64_t *v)
#define atomic64_inc(v) atomic64_add(1, (v))
#define atomic64_dec(v) atomic64_sub(1, (v))
@@ -5859,6 +5865,39 @@ index bfe1319..da0014b 100644
memset(to, 0, n);
return n;
}
+diff --git a/arch/ia64/kernel/kprobes.c b/arch/ia64/kernel/kprobes.c
+index c7c5144..7e31461 100644
+--- a/arch/ia64/kernel/kprobes.c
++++ b/arch/ia64/kernel/kprobes.c
+@@ -499,6 +499,7 @@ int __kprobes trampoline_probe_handler(struct kprobe *p, struct pt_regs *regs)
+ return 1;
+ }
+
++#ifdef CONFIG_KRETPROBES
+ void __kprobes arch_prepare_kretprobe(struct kretprobe_instance *ri,
+ struct pt_regs *regs)
+ {
+@@ -507,6 +508,7 @@ void __kprobes arch_prepare_kretprobe(struct kretprobe_instance *ri,
+ /* Replace the return addr with trampoline addr */
+ regs->b0 = ((struct fnptr *)kretprobe_trampoline)->ip;
+ }
++#endif
+
+ /* Check the instruction in the slot is break */
+ static int __kprobes __is_ia64_break_inst(bundle_t *bundle, uint slot)
+@@ -1119,6 +1121,7 @@ int __init arch_init_kprobes(void)
+ return register_kprobe(&trampoline_p);
+ }
+
++#ifdef CONFIG_KRETPROBES
+ int __kprobes arch_trampoline_kprobe(struct kprobe *p)
+ {
+ if (p->addr ==
+@@ -1127,3 +1130,4 @@ int __kprobes arch_trampoline_kprobe(struct kprobe *p)
+
+ return 0;
+ }
++#endif
diff --git a/arch/ia64/kernel/module.c b/arch/ia64/kernel/module.c
index 6ab0ae7..88f1b60 100644
--- a/arch/ia64/kernel/module.c
@@ -5962,10 +6001,10 @@ index 41e33f8..65180b2a 100644
}
diff --git a/arch/ia64/kernel/vmlinux.lds.S b/arch/ia64/kernel/vmlinux.lds.S
-index dc506b0..39baade 100644
+index f89d20c..410a1b1 100644
--- a/arch/ia64/kernel/vmlinux.lds.S
+++ b/arch/ia64/kernel/vmlinux.lds.S
-@@ -171,7 +171,7 @@ SECTIONS {
+@@ -172,7 +172,7 @@ SECTIONS {
/* Per-cpu data: */
. = ALIGN(PERCPU_PAGE_SIZE);
PERCPU_VADDR(SMP_CACHE_BYTES, PERCPU_ADDR, :percpu)
@@ -6002,7 +6041,7 @@ index fa6ad95..b46bd89 100644
# define VM_READ_BIT 0
# define VM_WRITE_BIT 1
# define VM_EXEC_BIT 2
-@@ -151,8 +168,21 @@ retry:
+@@ -151,8 +168,21 @@ ia64_do_page_fault (unsigned long address, unsigned long isr, struct pt_regs *re
if (((isr >> IA64_ISR_R_BIT) & 1UL) && (!(vma->vm_flags & (VM_READ | VM_WRITE))))
goto bad_area;
@@ -6191,10 +6230,10 @@ index 5c3f688..f8cc1b3 100644
# platform specific definitions
include arch/mips/Kbuild.platforms
diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig
-index 212ff92..36b3437 100644
+index b3c5bde..d6b5104 100644
--- a/arch/mips/Kconfig
+++ b/arch/mips/Kconfig
-@@ -50,6 +50,7 @@ config MIPS
+@@ -49,6 +49,7 @@ config MIPS
select HAVE_MOD_ARCH_SPECIFIC
select HAVE_NMI
select VIRT_TO_BUS
@@ -6202,7 +6241,7 @@ index 212ff92..36b3437 100644
select MODULES_USE_ELF_REL if MODULES
select MODULES_USE_ELF_RELA if MODULES && 64BIT
select CLONE_BACKWARDS
-@@ -2561,7 +2562,7 @@ config RELOCATION_TABLE_SIZE
+@@ -2595,7 +2596,7 @@ config RELOCATION_TABLE_SIZE
config RANDOMIZE_BASE
bool "Randomize the address of the kernel image"
@@ -6211,7 +6250,7 @@ index 212ff92..36b3437 100644
---help---
Randomizes the physical and virtual address at which the
kernel image is loaded, as a security feature that
-@@ -2777,6 +2778,7 @@ source "kernel/Kconfig.preempt"
+@@ -2811,6 +2812,7 @@ source "kernel/Kconfig.preempt"
config KEXEC
bool "Kexec system call"
select KEXEC_CORE
@@ -6949,7 +6988,7 @@ index 9e8ef59..1139d6b 100644
/*
* interrupt-retrigger: NOP for now. This may not be appropriate for all
diff --git a/arch/mips/include/asm/irq.h b/arch/mips/include/asm/irq.h
-index 15e0fec..3ee3eec 100644
+index 6bf10e7..3c0b52f 100644
--- a/arch/mips/include/asm/irq.h
+++ b/arch/mips/include/asm/irq.h
@@ -11,7 +11,6 @@
@@ -7065,7 +7104,7 @@ index 5f98759..a3a7cb2 100644
typedef struct { unsigned long long pte; } pte_t;
#define pte_val(x) ((x).pte)
diff --git a/arch/mips/include/asm/pgalloc.h b/arch/mips/include/asm/pgalloc.h
-index 93c079a..1d6bf7c 100644
+index a03e869..e1928f5 100644
--- a/arch/mips/include/asm/pgalloc.h
+++ b/arch/mips/include/asm/pgalloc.h
@@ -37,6 +37,11 @@ static inline void pud_populate(struct mm_struct *mm, pud_t *pud, pmd_t *pmd)
@@ -7081,7 +7120,7 @@ index 93c079a..1d6bf7c 100644
/*
diff --git a/arch/mips/include/asm/pgtable.h b/arch/mips/include/asm/pgtable.h
-index 70128d3..471bc25 100644
+index 9e9e94415..43354f5 100644
--- a/arch/mips/include/asm/pgtable.h
+++ b/arch/mips/include/asm/pgtable.h
@@ -20,6 +20,9 @@
@@ -7137,10 +7176,10 @@ index e309d8f..20eefec 100644
/*
* We stash processor id into a COP0 register to retrieve it fast
diff --git a/arch/mips/include/asm/uaccess.h b/arch/mips/include/asm/uaccess.h
-index 21a2aab..c00b80d 100644
+index 89fa5c0b..9409cea 100644
--- a/arch/mips/include/asm/uaccess.h
+++ b/arch/mips/include/asm/uaccess.h
-@@ -147,6 +147,7 @@ static inline bool eva_kernel_access(void)
+@@ -148,6 +148,7 @@ static inline bool eva_kernel_access(void)
__ok == 0; \
})
@@ -7149,10 +7188,10 @@ index 21a2aab..c00b80d 100644
likely(__access_ok((addr), (size), __access_mask))
diff --git a/arch/mips/kernel/binfmt_elfn32.c b/arch/mips/kernel/binfmt_elfn32.c
-index 58ad63d..051b4b7 100644
+index 9c7f3e1..ed42bda 100644
--- a/arch/mips/kernel/binfmt_elfn32.c
+++ b/arch/mips/kernel/binfmt_elfn32.c
-@@ -36,6 +36,13 @@ typedef elf_fpreg_t elf_fpregset_t[ELF_NFPREG];
+@@ -37,6 +37,13 @@ typedef elf_fpreg_t elf_fpregset_t[ELF_NFPREG];
#undef ELF_ET_DYN_BASE
#define ELF_ET_DYN_BASE (TASK32_SIZE / 3 * 2)
@@ -7164,13 +7203,13 @@ index 58ad63d..051b4b7 100644
+#endif
+
#include <asm/processor.h>
- #include <linux/module.h>
#include <linux/elfcore.h>
+ #include <linux/compat.h>
diff --git a/arch/mips/kernel/binfmt_elfo32.c b/arch/mips/kernel/binfmt_elfo32.c
-index 49fb881..b9ab7c2 100644
+index 1ab3432..0e66879 100644
--- a/arch/mips/kernel/binfmt_elfo32.c
+++ b/arch/mips/kernel/binfmt_elfo32.c
-@@ -40,6 +40,13 @@ typedef elf_fpreg_t elf_fpregset_t[ELF_NFPREG];
+@@ -41,6 +41,13 @@ typedef elf_fpreg_t elf_fpregset_t[ELF_NFPREG];
#undef ELF_ET_DYN_BASE
#define ELF_ET_DYN_BASE (TASK32_SIZE / 3 * 2)
@@ -7183,7 +7222,7 @@ index 49fb881..b9ab7c2 100644
+
#include <asm/processor.h>
- #include <linux/module.h>
+ #include <linux/elfcore.h>
diff --git a/arch/mips/kernel/irq-gt641xx.c b/arch/mips/kernel/irq-gt641xx.c
index 44a1f79..2bd6aa3 100644
--- a/arch/mips/kernel/irq-gt641xx.c
@@ -7239,11 +7278,47 @@ index f25f7ea..19e1c62 100644
}
}
#else
+diff --git a/arch/mips/kernel/kprobes.c b/arch/mips/kernel/kprobes.c
+index f5c8bce..b06a560 100644
+--- a/arch/mips/kernel/kprobes.c
++++ b/arch/mips/kernel/kprobes.c
+@@ -535,6 +535,7 @@ static void __used kretprobe_trampoline_holder(void)
+
+ void kretprobe_trampoline(void);
+
++#ifdef CONFIG_KRETPROBES
+ void __kprobes arch_prepare_kretprobe(struct kretprobe_instance *ri,
+ struct pt_regs *regs)
+ {
+@@ -543,6 +544,7 @@ void __kprobes arch_prepare_kretprobe(struct kretprobe_instance *ri,
+ /* Replace the return addr with trampoline addr */
+ regs->regs[31] = (unsigned long)kretprobe_trampoline;
+ }
++#endif
+
+ /*
+ * Called when the probe at kretprobe trampoline is hit
+@@ -611,6 +613,7 @@ static int __kprobes trampoline_probe_handler(struct kprobe *p,
+ return 1;
+ }
+
++#ifdef CONFIG_KRETPROBES
+ int __kprobes arch_trampoline_kprobe(struct kprobe *p)
+ {
+ if (p->addr == (kprobe_opcode_t *)kretprobe_trampoline)
+@@ -618,6 +621,7 @@ int __kprobes arch_trampoline_kprobe(struct kprobe *p)
+
+ return 0;
+ }
++#endif
+
+ static struct kprobe trampoline_p = {
+ .addr = (kprobe_opcode_t *)kretprobe_trampoline,
diff --git a/arch/mips/kernel/pm-cps.c b/arch/mips/kernel/pm-cps.c
-index 5b31a94..15ac4a1 100644
+index 7cf653e..7df52f6 100644
--- a/arch/mips/kernel/pm-cps.c
+++ b/arch/mips/kernel/pm-cps.c
-@@ -172,7 +172,7 @@ int cps_pm_enter_state(enum cps_pm_state state)
+@@ -168,7 +168,7 @@ int cps_pm_enter_state(enum cps_pm_state state)
nc_core_ready_count = nc_addr;
/* Ensure ready_count is zero-initialised before the assembly runs */
@@ -7253,10 +7328,10 @@ index 5b31a94..15ac4a1 100644
/* Run the generated entry code */
diff --git a/arch/mips/kernel/process.c b/arch/mips/kernel/process.c
-index d2d0615..46c1803 100644
+index 9514e5f..a3fc550 100644
--- a/arch/mips/kernel/process.c
+++ b/arch/mips/kernel/process.c
-@@ -545,18 +545,6 @@ out:
+@@ -545,18 +545,6 @@ unsigned long get_wchan(struct task_struct *task)
return pc;
}
@@ -7276,7 +7351,7 @@ index d2d0615..46c1803 100644
{
struct pt_regs *regs;
diff --git a/arch/mips/kernel/ptrace.c b/arch/mips/kernel/ptrace.c
-index 6103b24..8253315 100644
+index a92994d..e389b11 100644
--- a/arch/mips/kernel/ptrace.c
+++ b/arch/mips/kernel/ptrace.c
@@ -882,6 +882,10 @@ long arch_ptrace(struct task_struct *child, long request,
@@ -7372,10 +7447,10 @@ index 4472a7f..c5905e6 100644
}
/* Arrange for an interrupt in a short while */
diff --git a/arch/mips/kernel/traps.c b/arch/mips/kernel/traps.c
-index 3de85be..73560ec 100644
+index 3905003..7c0cc88 100644
--- a/arch/mips/kernel/traps.c
+++ b/arch/mips/kernel/traps.c
-@@ -695,7 +695,18 @@ asmlinkage void do_ov(struct pt_regs *regs)
+@@ -702,7 +702,18 @@ asmlinkage void do_ov(struct pt_regs *regs)
};
prev_state = exception_enter();
@@ -7396,7 +7471,7 @@ index 3de85be..73560ec 100644
force_sig_info(SIGFPE, &info, current);
exception_exit(prev_state);
diff --git a/arch/mips/lib/ashldi3.c b/arch/mips/lib/ashldi3.c
-index 927dc94..27269ee 100644
+index c3e2205..b4302f8 100644
--- a/arch/mips/lib/ashldi3.c
+++ b/arch/mips/lib/ashldi3.c
@@ -2,7 +2,11 @@
@@ -7442,7 +7517,7 @@ index 927dc94..27269ee 100644
EXPORT_SYMBOL(__ashldi3);
+#endif
diff --git a/arch/mips/lib/ashrdi3.c b/arch/mips/lib/ashrdi3.c
-index 9fdf1a5..6741f0e 100644
+index 1745602..d20aabf 100644
--- a/arch/mips/lib/ashrdi3.c
+++ b/arch/mips/lib/ashrdi3.c
@@ -2,7 +2,11 @@
@@ -7524,10 +7599,10 @@ index 05909d58..b03284b 100644
#endif /* __ASM_LIBGCC_H */
diff --git a/arch/mips/mm/fault.c b/arch/mips/mm/fault.c
-index 9560ad7..da27540 100644
+index 3bef306..fcec133 100644
--- a/arch/mips/mm/fault.c
+++ b/arch/mips/mm/fault.c
-@@ -31,6 +31,23 @@
+@@ -30,6 +30,23 @@
int show_unhandled_signals = 1;
@@ -7551,7 +7626,7 @@ index 9560ad7..da27540 100644
/*
* This routine handles page faults. It determines the address,
* and the problem, and then passes it off to one of the appropriate
-@@ -205,6 +222,14 @@ bad_area:
+@@ -204,6 +221,14 @@ static void __kprobes __do_page_fault(struct pt_regs *regs, unsigned long write,
bad_area_nosemaphore:
/* User mode accesses just cause a SIGSEGV */
if (user_mode(regs)) {
@@ -7567,7 +7642,7 @@ index 9560ad7..da27540 100644
tsk->thread.error_code = write;
if (show_unhandled_signals &&
diff --git a/arch/mips/mm/init.c b/arch/mips/mm/init.c
-index 72f7478..06abd2a 100644
+index e86ebcf..7a78a07 100644
--- a/arch/mips/mm/init.c
+++ b/arch/mips/mm/init.c
@@ -474,10 +474,10 @@ void __init mem_init(void)
@@ -7584,7 +7659,7 @@ index 72f7478..06abd2a 100644
}
#endif /* !CONFIG_NEED_MULTIPLE_NODES */
diff --git a/arch/mips/mm/mmap.c b/arch/mips/mm/mmap.c
-index 3530376..754dde3 100644
+index d08ea3f..66bb13d 100644
--- a/arch/mips/mm/mmap.c
+++ b/arch/mips/mm/mmap.c
@@ -59,6 +59,7 @@ static unsigned long arch_get_unmapped_area_common(struct file *filp,
@@ -7684,7 +7759,7 @@ diff --git a/arch/mips/sni/rm200.c b/arch/mips/sni/rm200.c
index 160b880..3b53fdc 100644
--- a/arch/mips/sni/rm200.c
+++ b/arch/mips/sni/rm200.c
-@@ -270,7 +270,7 @@ spurious_8259A_irq:
+@@ -270,7 +270,7 @@ void sni_rm200_mask_and_ack_8259A(struct irq_data *d)
"spurious RM200 8259A interrupt: IRQ%d.\n", irq);
spurious_irq_mask |= irqmask;
}
@@ -7770,10 +7845,10 @@ index bcb5df2..84fabd2 100644
#define L1_CACHE_TAG_VALID 0x00000001 /* cache tag valid bit */
diff --git a/arch/openrisc/include/asm/cache.h b/arch/openrisc/include/asm/cache.h
-index 4ce7a01..449202a 100644
+index 5f55da9..7ce9437 100644
--- a/arch/openrisc/include/asm/cache.h
+++ b/arch/openrisc/include/asm/cache.h
-@@ -19,11 +19,13 @@
+@@ -19,13 +19,15 @@
#ifndef __ASM_OPENRISC_CACHE_H
#define __ASM_OPENRISC_CACHE_H
@@ -7783,6 +7858,8 @@ index 4ce7a01..449202a 100644
* they shouldn't be hard-coded!
*/
+ #define __ro_after_init __read_mostly
+
-#define L1_CACHE_BYTES 16
#define L1_CACHE_SHIFT 4
+#define L1_CACHE_BYTES (_AC(1,UL) << L1_CACHE_SHIFT)
@@ -7895,30 +7972,43 @@ index 3a4ed9f..29b7218 100644
#define PAGE_KERNEL_EXEC __pgprot(_PAGE_KERNEL_EXEC)
#define PAGE_KERNEL_RWX __pgprot(_PAGE_KERNEL_RWX)
diff --git a/arch/parisc/include/asm/uaccess.h b/arch/parisc/include/asm/uaccess.h
-index 4828478..89b1fbe 100644
+index 9a2aee1..a8e588f 100644
--- a/arch/parisc/include/asm/uaccess.h
+++ b/arch/parisc/include/asm/uaccess.h
-@@ -221,17 +221,17 @@ static inline unsigned long __must_check copy_from_user(void *to,
- const void __user *from,
- unsigned long n)
- {
-- int sz = __compiletime_object_size(to);
-+ size_t sz = __compiletime_object_size(to);
- unsigned long ret = n;
-
-- if (likely(sz == -1 || sz >= n))
-+ if (likely(sz == (size_t)-1 || sz >= n))
- ret = __copy_from_user(to, from, n);
- else if (!__builtin_constant_p(n))
- copy_user_overflow(sz, n);
+@@ -223,10 +223,10 @@ static inline void copy_user_overflow(int size, unsigned long count)
+ static __always_inline unsigned long __must_check
+ copy_from_user(void *to, const void __user *from, unsigned long n)
+ {
+- int sz = __compiletime_object_size(to);
++ size_t sz = __compiletime_object_size(to);
+ unsigned long ret = n;
+
+- if (likely(sz < 0 || sz >= n)) {
++ if (likely(sz == (size_t)-1 || sz >= n)) {
+ check_object_size(to, n, false);
+ ret = __copy_from_user(to, from, n);
+ } else if (!__builtin_constant_p(n))
+@@ -234,7 +234,7 @@ copy_from_user(void *to, const void __user *from, unsigned long n)
else
- __bad_copy_user();
+ __bad_copy_user();
- if (unlikely(ret))
+ if (unlikely(ret && (long)ret > 0))
memset(to + (n - ret), 0, ret);
- return ret;
- }
+
+ return ret;
+@@ -243,9 +243,9 @@ copy_from_user(void *to, const void __user *from, unsigned long n)
+ static __always_inline unsigned long __must_check
+ copy_to_user(void __user *to, const void *from, unsigned long n)
+ {
+- int sz = __compiletime_object_size(from);
++ size_t sz = __compiletime_object_size(to);
+
+- if (likely(sz < 0 || sz >= n)) {
++ if (likely(sz == (size_t)-1 || sz >= n)) {
+ check_object_size(from, n, true);
+ n = __copy_to_user(to, from, n);
+ } else if (!__builtin_constant_p(n))
diff --git a/arch/parisc/kernel/module.c b/arch/parisc/kernel/module.c
index a0ecdb4a..71d2069 100644
--- a/arch/parisc/kernel/module.c
@@ -8069,7 +8159,7 @@ index 0a393a0..5b3199e0 100644
mm->mmap_base = mm->mmap_legacy_base;
mm->get_unmapped_area = arch_get_unmapped_area;
diff --git a/arch/parisc/kernel/traps.c b/arch/parisc/kernel/traps.c
-index 97d6b20..2ab0232 100644
+index 378df92..9b2ab51 100644
--- a/arch/parisc/kernel/traps.c
+++ b/arch/parisc/kernel/traps.c
@@ -719,9 +719,7 @@ void notrace handle_interruption(int code, struct pt_regs *regs)
@@ -8084,12 +8174,12 @@ index 97d6b20..2ab0232 100644
fault_space = regs->iasq[0];
diff --git a/arch/parisc/mm/fault.c b/arch/parisc/mm/fault.c
-index 163af2c..ed77b14 100644
+index 1a0b4f6..f9d326d 100644
--- a/arch/parisc/mm/fault.c
+++ b/arch/parisc/mm/fault.c
@@ -16,6 +16,7 @@
#include <linux/interrupt.h>
- #include <linux/module.h>
+ #include <linux/extable.h>
#include <linux/uaccess.h>
+#include <linux/unistd.h>
@@ -8221,7 +8311,7 @@ index 163af2c..ed77b14 100644
int fixup_exception(struct pt_regs *regs)
{
const struct exception_table_entry *fix;
-@@ -230,8 +341,33 @@ retry:
+@@ -281,8 +392,33 @@ void do_page_fault(struct pt_regs *regs, unsigned long code,
good_area:
@@ -8257,10 +8347,10 @@ index 163af2c..ed77b14 100644
/*
* If for any reason at all we couldn't handle the fault, make
diff --git a/arch/powerpc/Kconfig b/arch/powerpc/Kconfig
-index 792cb17..1a96a22 100644
+index 65fba4c..3cfec12 100644
--- a/arch/powerpc/Kconfig
+++ b/arch/powerpc/Kconfig
-@@ -146,6 +146,7 @@ config PPC
+@@ -140,6 +140,7 @@ config PPC
select ARCH_USE_BUILTIN_BSWAP
select OLD_SIGSUSPEND
select OLD_SIGACTION if PPC32
@@ -8268,7 +8358,7 @@ index 792cb17..1a96a22 100644
select HAVE_DEBUG_STACKOVERFLOW
select HAVE_IRQ_EXIT_ON_IRQ_STACK
select ARCH_USE_CMPXCHG_LOCKREF if PPC64
-@@ -446,6 +447,7 @@ config KEXEC
+@@ -441,6 +442,7 @@ config KEXEC
bool "kexec system call"
depends on (PPC_BOOK3S || FSL_BOOKE || (44x && !SMP)) || PPC_BOOK3E
select KEXEC_CORE
@@ -8277,7 +8367,7 @@ index 792cb17..1a96a22 100644
kexec is a system call that implements the ability to shutdown your
current kernel, and to start another kernel. It is like a reboot
diff --git a/arch/powerpc/include/asm/atomic.h b/arch/powerpc/include/asm/atomic.h
-index f08d567..94e5497 100644
+index 2b90335..5e1a3d6 100644
--- a/arch/powerpc/include/asm/atomic.h
+++ b/arch/powerpc/include/asm/atomic.h
@@ -12,6 +12,11 @@
@@ -8522,9 +8612,9 @@ index f08d567..94e5497 100644
PPC_ATOMIC_ENTRY_BARRIER
"1: lwarx %0,0,%1 # __atomic_add_unless\n\
cmpw 0,%0,%3 \n\
-- beq- 2f \n\
+- beq 2f \n\
- add %0,%2,%0 \n"
-+ beq- 5f \n"
++ beq 5f \n"
+
+ __OVERFLOW_PRE
+ __REFCOUNT_OP(add) " %0,%2,%0 \n"
@@ -8746,9 +8836,9 @@ index f08d567..94e5497 100644
-"1: ldarx %0,0,%1 # __atomic_add_unless\n\
+"1: ldarx %0,0,%1 # atomic64_add_unless\n\
cmpd 0,%0,%3 \n\
-- beq- 2f \n\
+- beq 2f \n\
- add %0,%2,%0 \n"
-+ beq- 5f \n"
++ beq 5f \n"
+
+ __OVERFLOW_PRE
+ __REFCOUNT_OP(add) " %0,%2,%0 \n"
@@ -8779,11 +8869,11 @@ index 880db13..bb4ed4a 100644
#define _PAGE_NO_CACHE 0x020 /* I: cache inhibit */
#define _PAGE_WRITETHRU 0x040 /* W: cache write-through */
diff --git a/arch/powerpc/include/asm/book3s/32/pgtable.h b/arch/powerpc/include/asm/book3s/32/pgtable.h
-index 38b33dc..945d1f1 100644
+index 6b8b2d5..cf17a29 100644
--- a/arch/powerpc/include/asm/book3s/32/pgtable.h
+++ b/arch/powerpc/include/asm/book3s/32/pgtable.h
-@@ -226,7 +226,7 @@ static inline void huge_ptep_set_wrprotect(struct mm_struct *mm,
- static inline void __ptep_set_access_flags(pte_t *ptep, pte_t entry)
+@@ -227,7 +227,7 @@ static inline void __ptep_set_access_flags(struct mm_struct *mm,
+ pte_t *ptep, pte_t entry)
{
unsigned long set = pte_val(entry) &
- (_PAGE_DIRTY | _PAGE_ACCESSED | _PAGE_RW | _PAGE_EXEC);
@@ -9144,7 +9234,7 @@ index 4ba26dd..2d1137d 100644
#define PAGE_KERNEL_RO __pgprot(_PAGE_BASE | _PAGE_KERNEL_RO)
#define PAGE_KERNEL_ROX __pgprot(_PAGE_BASE | _PAGE_KERNEL_ROX)
diff --git a/arch/powerpc/include/asm/reg.h b/arch/powerpc/include/asm/reg.h
-index 52cbf04..c41eb7e 100644
+index 9e1499f..4e03a24 100644
--- a/arch/powerpc/include/asm/reg.h
+++ b/arch/powerpc/include/asm/reg.h
@@ -270,6 +270,7 @@
@@ -9428,22 +9518,19 @@ index c266227..f3dc6bb 100644
static inline unsigned long clear_user(void __user *addr, unsigned long size)
diff --git a/arch/powerpc/kernel/Makefile b/arch/powerpc/kernel/Makefile
-index fe4c075..fcb4600 100644
+index 1925341..a1841ac 100644
--- a/arch/powerpc/kernel/Makefile
+++ b/arch/powerpc/kernel/Makefile
-@@ -14,6 +14,11 @@ CFLAGS_prom_init.o += -fPIC
- CFLAGS_btext.o += -fPIC
+@@ -15,7 +15,7 @@ CFLAGS_btext.o += -fPIC
endif
-+CFLAGS_cputable.o += $(DISABLE_LATENT_ENTROPY_PLUGIN)
+ CFLAGS_cputable.o += $(DISABLE_LATENT_ENTROPY_PLUGIN)
+-CFLAGS_init.o += $(DISABLE_LATENT_ENTROPY_PLUGIN)
+CFLAGS_prom_init.o += $(DISABLE_LATENT_ENTROPY_PLUGIN)
-+CFLAGS_btext.o += $(DISABLE_LATENT_ENTROPY_PLUGIN)
-+CFLAGS_prom.o += $(DISABLE_LATENT_ENTROPY_PLUGIN)
-+
- ifdef CONFIG_FUNCTION_TRACER
- # Do not trace early boot code
- CFLAGS_REMOVE_cputable.o = -mno-sched-epilog $(CC_FLAGS_FTRACE)
-@@ -26,6 +31,8 @@ CFLAGS_REMOVE_ftrace.o = -mno-sched-epilog $(CC_FLAGS_FTRACE)
+ CFLAGS_btext.o += $(DISABLE_LATENT_ENTROPY_PLUGIN)
+ CFLAGS_prom.o += $(DISABLE_LATENT_ENTROPY_PLUGIN)
+
+@@ -31,6 +31,8 @@ CFLAGS_REMOVE_ftrace.o = -mno-sched-epilog $(CC_FLAGS_FTRACE)
CFLAGS_REMOVE_time.o = -mno-sched-epilog $(CC_FLAGS_FTRACE)
endif
@@ -9475,10 +9562,10 @@ index 38a1f96..ed94e42 100644
ld r4,_DAR(r1)
bl bad_page_fault
diff --git a/arch/powerpc/kernel/exceptions-64s.S b/arch/powerpc/kernel/exceptions-64s.S
-index bffec73..9cc5a35 100644
+index 1ba82ea..f78bd700 100644
--- a/arch/powerpc/kernel/exceptions-64s.S
+++ b/arch/powerpc/kernel/exceptions-64s.S
-@@ -1520,10 +1520,10 @@ handle_page_fault:
+@@ -1445,10 +1445,10 @@ handle_page_fault:
11: ld r4,_DAR(r1)
ld r5,_DSISR(r1)
addi r3,r1,STACK_FRAME_OVERHEAD
@@ -9491,10 +9578,10 @@ index bffec73..9cc5a35 100644
addi r3,r1,STACK_FRAME_OVERHEAD
lwz r4,_DAR(r1)
diff --git a/arch/powerpc/kernel/irq.c b/arch/powerpc/kernel/irq.c
-index 08887cf..0c98725 100644
+index 3c05c31..a8e6888 100644
--- a/arch/powerpc/kernel/irq.c
+++ b/arch/powerpc/kernel/irq.c
-@@ -477,6 +477,8 @@ void migrate_irqs(void)
+@@ -482,6 +482,8 @@ void migrate_irqs(void)
}
#endif
@@ -9503,7 +9590,7 @@ index 08887cf..0c98725 100644
static inline void check_stack_overflow(void)
{
#ifdef CONFIG_DEBUG_STACKOVERFLOW
-@@ -489,6 +491,7 @@ static inline void check_stack_overflow(void)
+@@ -494,6 +496,7 @@ static inline void check_stack_overflow(void)
pr_err("do_IRQ: stack overflow: %ld\n",
sp - sizeof(struct thread_info));
dump_stack();
@@ -9511,6 +9598,39 @@ index 08887cf..0c98725 100644
}
#endif
}
+diff --git a/arch/powerpc/kernel/kprobes.c b/arch/powerpc/kernel/kprobes.c
+index e785cc9..514488c 100644
+--- a/arch/powerpc/kernel/kprobes.c
++++ b/arch/powerpc/kernel/kprobes.c
+@@ -131,6 +131,7 @@ static void __kprobes set_current_kprobe(struct kprobe *p, struct pt_regs *regs,
+ kcb->kprobe_saved_msr = regs->msr;
+ }
+
++#ifdef CONFIG_KRETPROBES
+ void __kprobes arch_prepare_kretprobe(struct kretprobe_instance *ri,
+ struct pt_regs *regs)
+ {
+@@ -139,6 +140,7 @@ void __kprobes arch_prepare_kretprobe(struct kretprobe_instance *ri,
+ /* Replace the return addr with trampoline addr */
+ regs->link = (unsigned long)kretprobe_trampoline;
+ }
++#endif
+
+ static int __kprobes kprobe_handler(struct pt_regs *regs)
+ {
+@@ -547,6 +549,7 @@ int __init arch_init_kprobes(void)
+ return register_kprobe(&trampoline_p);
+ }
+
++#ifdef CONFIG_KRETPROBES
+ int __kprobes arch_trampoline_kprobe(struct kprobe *p)
+ {
+ if (p->addr == (kprobe_opcode_t *)&kretprobe_trampoline)
+@@ -554,3 +557,4 @@ int __kprobes arch_trampoline_kprobe(struct kprobe *p)
+
+ return 0;
+ }
++#endif
diff --git a/arch/powerpc/kernel/module_32.c b/arch/powerpc/kernel/module_32.c
index 5a7a78f..c0e4207 100644
--- a/arch/powerpc/kernel/module_32.c
@@ -9554,10 +9674,10 @@ index 5a7a78f..c0e4207 100644
sechdrs, module);
if (!module->arch.tramp)
diff --git a/arch/powerpc/kernel/process.c b/arch/powerpc/kernel/process.c
-index ad37aa1..51da6c4 100644
+index 49a680d..2514bbcb 100644
--- a/arch/powerpc/kernel/process.c
+++ b/arch/powerpc/kernel/process.c
-@@ -1360,8 +1360,8 @@ void show_regs(struct pt_regs * regs)
+@@ -1375,8 +1375,8 @@ void show_regs(struct pt_regs * regs)
* Lookup NIP late so we have the best change of getting the
* above info out without failing
*/
@@ -9568,7 +9688,7 @@ index ad37aa1..51da6c4 100644
#endif
show_stack(current, (unsigned long *) regs->gpr[1]);
if (!user_mode(regs))
-@@ -1882,10 +1882,10 @@ void show_stack(struct task_struct *tsk, unsigned long *stack)
+@@ -1897,10 +1897,10 @@ void show_stack(struct task_struct *tsk, unsigned long *stack)
newsp = stack[0];
ip = stack[STACK_FRAME_LR_SAVE];
if (!firstframe || ip != lr) {
@@ -9576,12 +9696,12 @@ index ad37aa1..51da6c4 100644
+ printk("["REG"] ["REG"] %pA", sp, ip, (void *)ip);
#ifdef CONFIG_FUNCTION_GRAPH_TRACER
if ((ip == rth) && curr_frame >= 0) {
-- printk(" (%pS)",
-+ printk(" (%pA)",
+- pr_cont(" (%pS)",
++ pr_cont(" (%pA)",
(void *)current->ret_stack[curr_frame].ret);
curr_frame--;
}
-@@ -1905,7 +1905,7 @@ void show_stack(struct task_struct *tsk, unsigned long *stack)
+@@ -1920,7 +1920,7 @@ void show_stack(struct task_struct *tsk, unsigned long *stack)
struct pt_regs *regs = (struct pt_regs *)
(sp + STACK_FRAME_OVERHEAD);
lr = regs->link;
@@ -9590,7 +9710,7 @@ index ad37aa1..51da6c4 100644
regs->trap, (void *)regs->nip, (void *)lr);
firstframe = 1;
}
-@@ -1942,13 +1942,6 @@ void notrace __ppc64_runlatch_off(void)
+@@ -1957,13 +1957,6 @@ void notrace __ppc64_runlatch_off(void)
}
#endif /* CONFIG_PPC64 */
@@ -9605,10 +9725,19 @@ index ad37aa1..51da6c4 100644
{
unsigned long rnd = 0;
diff --git a/arch/powerpc/kernel/ptrace.c b/arch/powerpc/kernel/ptrace.c
-index bf91658..edd21f8 100644
+index 5c8f12f..98047fb 100644
--- a/arch/powerpc/kernel/ptrace.c
+++ b/arch/powerpc/kernel/ptrace.c
-@@ -3312,6 +3312,10 @@ static int do_seccomp(struct pt_regs *regs)
+@@ -3151,7 +3151,7 @@ static int do_seccomp(struct pt_regs *regs)
+ * have already loaded -ENOSYS into r3, or seccomp has put
+ * something else in r3 (via SECCOMP_RET_ERRNO/TRACE).
+ */
+- if (__secure_computing(NULL))
++ if (secure_computing(NULL))
+ return -1;
+
+ /*
+@@ -3169,6 +3169,10 @@ static int do_seccomp(struct pt_regs *regs)
static inline int do_seccomp(struct pt_regs *regs) { return 0; }
#endif /* CONFIG_SECCOMP */
@@ -9619,7 +9748,7 @@ index bf91658..edd21f8 100644
/**
* do_syscall_trace_enter() - Do syscall tracing on kernel entry.
* @regs: the pt_regs of the task to trace (current)
-@@ -3335,6 +3339,11 @@ long do_syscall_trace_enter(struct pt_regs *regs)
+@@ -3192,6 +3196,11 @@ long do_syscall_trace_enter(struct pt_regs *regs)
{
user_exit();
@@ -9631,7 +9760,7 @@ index bf91658..edd21f8 100644
/*
* The tracer may decide to abort the syscall, if so tracehook
* will return !0. Note that the tracer may also just change
-@@ -3353,6 +3362,7 @@ long do_syscall_trace_enter(struct pt_regs *regs)
+@@ -3210,6 +3219,7 @@ long do_syscall_trace_enter(struct pt_regs *regs)
if (regs->gpr[0] >= NR_syscalls)
goto skip;
@@ -9639,7 +9768,7 @@ index bf91658..edd21f8 100644
if (unlikely(test_thread_flag(TIF_SYSCALL_TRACEPOINT)))
trace_sys_enter(regs, regs->gpr[0]);
-@@ -3384,6 +3394,11 @@ void do_syscall_trace_leave(struct pt_regs *regs)
+@@ -3241,6 +3251,11 @@ void do_syscall_trace_leave(struct pt_regs *regs)
{
int step;
@@ -9652,33 +9781,33 @@ index bf91658..edd21f8 100644
if (unlikely(test_thread_flag(TIF_SYSCALL_TRACEPOINT)))
diff --git a/arch/powerpc/kernel/signal_32.c b/arch/powerpc/kernel/signal_32.c
-index a7daf74..d8159e5 100644
+index 27aa913..dc0d9f5 100644
--- a/arch/powerpc/kernel/signal_32.c
+++ b/arch/powerpc/kernel/signal_32.c
-@@ -1000,7 +1000,7 @@ int handle_rt_signal32(struct ksignal *ksig, sigset_t *oldset,
+@@ -1006,7 +1006,7 @@ int handle_rt_signal32(struct ksignal *ksig, sigset_t *oldset,
/* Save user registers on the stack */
frame = &rt_sf->uc.uc_mcontext;
addr = frame;
-- if (vdso32_rt_sigtramp && current->mm->context.vdso_base) {
-+ if (vdso32_rt_sigtramp && current->mm->context.vdso_base != ~0UL) {
+- if (vdso32_rt_sigtramp && tsk->mm->context.vdso_base) {
++ if (vdso32_rt_sigtramp && tsk->mm->context.vdso_base != ~0UL) {
sigret = 0;
- tramp = current->mm->context.vdso_base + vdso32_rt_sigtramp;
+ tramp = tsk->mm->context.vdso_base + vdso32_rt_sigtramp;
} else {
diff --git a/arch/powerpc/kernel/signal_64.c b/arch/powerpc/kernel/signal_64.c
-index 70409bb..6cc6990 100644
+index 96698fd..fe57485 100644
--- a/arch/powerpc/kernel/signal_64.c
+++ b/arch/powerpc/kernel/signal_64.c
-@@ -770,7 +770,7 @@ int handle_rt_signal64(struct ksignal *ksig, sigset_t *set, struct pt_regs *regs
- current->thread.fp_state.fpscr = 0;
+@@ -791,7 +791,7 @@ int handle_rt_signal64(struct ksignal *ksig, sigset_t *set,
+ tsk->thread.fp_state.fpscr = 0;
/* Set up to return from userspace. */
-- if (vdso64_rt_sigtramp && current->mm->context.vdso_base) {
-+ if (vdso64_rt_sigtramp && current->mm->context.vdso_base != ~0UL) {
- regs->link = current->mm->context.vdso_base + vdso64_rt_sigtramp;
+- if (vdso64_rt_sigtramp && tsk->mm->context.vdso_base) {
++ if (vdso64_rt_sigtramp && tsk->mm->context.vdso_base != ~0UL) {
+ regs->link = tsk->mm->context.vdso_base + vdso64_rt_sigtramp;
} else {
err |= setup_trampoline(__NR_rt_sigreturn, &frame->tramp[0]);
diff --git a/arch/powerpc/kernel/traps.c b/arch/powerpc/kernel/traps.c
-index 62859eb..035955d 100644
+index 023a462..9d940854 100644
--- a/arch/powerpc/kernel/traps.c
+++ b/arch/powerpc/kernel/traps.c
@@ -37,6 +37,7 @@
@@ -9689,16 +9818,16 @@ index 62859eb..035955d 100644
#include <asm/emulated_ops.h>
#include <asm/pgtable.h>
-@@ -145,6 +146,8 @@ static unsigned __kprobes long oops_begin(struct pt_regs *regs)
- return flags;
+@@ -146,6 +147,8 @@ static unsigned long oops_begin(struct pt_regs *regs)
}
+ NOKPROBE_SYMBOL(oops_begin);
+extern void gr_handle_kernel_exploit(void);
+
- static void __kprobes oops_end(unsigned long flags, struct pt_regs *regs,
+ static void oops_end(unsigned long flags, struct pt_regs *regs,
int signr)
{
-@@ -194,6 +197,9 @@ static void __kprobes oops_end(unsigned long flags, struct pt_regs *regs,
+@@ -195,6 +198,9 @@ static void oops_end(unsigned long flags, struct pt_regs *regs,
panic("Fatal exception in interrupt");
if (panic_on_oops)
panic("Fatal exception");
@@ -9707,8 +9836,8 @@ index 62859eb..035955d 100644
+
do_exit(signr);
}
-
-@@ -1145,6 +1151,26 @@ void __kprobes program_check_exception(struct pt_regs *regs)
+ NOKPROBE_SYMBOL(oops_end);
+@@ -1162,6 +1168,26 @@ void program_check_exception(struct pt_regs *regs)
enum ctx_state prev_state = exception_enter();
unsigned int reason = get_reason(regs);
@@ -9801,7 +9930,7 @@ index 5eea6f3..5d10396 100644
EXPORT_SYMBOL(copy_in_user);
diff --git a/arch/powerpc/mm/fault.c b/arch/powerpc/mm/fault.c
-index bb1ffc5..9ae5cb6 100644
+index d0b137d..af92bde 100644
--- a/arch/powerpc/mm/fault.c
+++ b/arch/powerpc/mm/fault.c
@@ -34,6 +34,10 @@
@@ -9849,7 +9978,7 @@ index bb1ffc5..9ae5cb6 100644
/*
* Check whether the instruction at regs->nip is a store using
* an update addressing form which will update r1.
-@@ -227,7 +258,7 @@ int __kprobes do_page_fault(struct pt_regs *regs, unsigned long address,
+@@ -227,7 +258,7 @@ int do_page_fault(struct pt_regs *regs, unsigned long address,
* indicate errors in DSISR but can validly be set in SRR1.
*/
if (trap == 0x400)
@@ -9858,7 +9987,7 @@ index bb1ffc5..9ae5cb6 100644
else
is_write = error_code & DSISR_ISSTORE;
#else
-@@ -384,12 +415,16 @@ good_area:
+@@ -384,12 +415,16 @@ int do_page_fault(struct pt_regs *regs, unsigned long address,
* "undefined". Of those that can be set, this is the only
* one which seems bad.
*/
@@ -9876,7 +10005,7 @@ index bb1ffc5..9ae5cb6 100644
/*
* Allow execution from readable areas if the MMU does not
* provide separate controls over reading and executing.
-@@ -484,6 +519,23 @@ bad_area:
+@@ -484,6 +519,23 @@ int do_page_fault(struct pt_regs *regs, unsigned long address,
bad_area_nosemaphore:
/* User mode accesses cause a SIGSEGV */
if (user_mode(regs)) {
@@ -10123,6 +10252,37 @@ index 52d7c87..577d292 100644
if (!__builtin_constant_p(n))
copy_user_overflow(sz, n);
else
+diff --git a/arch/s390/kernel/kprobes.c b/arch/s390/kernel/kprobes.c
+index fdb4042..b72ae72 100644
+--- a/arch/s390/kernel/kprobes.c
++++ b/arch/s390/kernel/kprobes.c
+@@ -269,6 +269,7 @@ static void pop_kprobe(struct kprobe_ctlblk *kcb)
+ }
+ NOKPROBE_SYMBOL(pop_kprobe);
+
++#ifdef CONFIG_KRETPROBES
+ void arch_prepare_kretprobe(struct kretprobe_instance *ri, struct pt_regs *regs)
+ {
+ ri->ret_addr = (kprobe_opcode_t *) regs->gprs[14];
+@@ -277,6 +278,7 @@ void arch_prepare_kretprobe(struct kretprobe_instance *ri, struct pt_regs *regs)
+ regs->gprs[14] = (unsigned long) &kretprobe_trampoline;
+ }
+ NOKPROBE_SYMBOL(arch_prepare_kretprobe);
++#endif
+
+ static void kprobe_reenter_check(struct kprobe_ctlblk *kcb, struct kprobe *p)
+ {
+@@ -740,8 +742,10 @@ int __init arch_init_kprobes(void)
+ return register_kprobe(&trampoline);
+ }
+
++#ifdef CONFIG_KRETPROBES
+ int arch_trampoline_kprobe(struct kprobe *p)
+ {
+ return p->addr == (kprobe_opcode_t *) &kretprobe_trampoline;
+ }
+ NOKPROBE_SYMBOL(arch_trampoline_kprobe);
++#endif
diff --git a/arch/s390/kernel/module.c b/arch/s390/kernel/module.c
index fbc0789..e7962a1 100644
--- a/arch/s390/kernel/module.c
@@ -10323,6 +10483,42 @@ index ef9e555..331bd29 100644
#define __read_mostly __attribute__((__section__(".data..read_mostly")))
+diff --git a/arch/sh/kernel/kprobes.c b/arch/sh/kernel/kprobes.c
+index 83acbf3..fa67491 100644
+--- a/arch/sh/kernel/kprobes.c
++++ b/arch/sh/kernel/kprobes.c
+@@ -72,6 +72,7 @@ void __kprobes arch_disarm_kprobe(struct kprobe *p)
+ (unsigned long)p->addr + sizeof(kprobe_opcode_t));
+ }
+
++#ifdef CONFIG_KRETPROBES
+ int __kprobes arch_trampoline_kprobe(struct kprobe *p)
+ {
+ if (*p->addr == BREAKPOINT_INSTRUCTION)
+@@ -79,6 +80,7 @@ int __kprobes arch_trampoline_kprobe(struct kprobe *p)
+
+ return 0;
+ }
++#endif
+
+ /**
+ * If an illegal slot instruction exception occurs for an address
+@@ -203,6 +205,7 @@ static void __kprobes prepare_singlestep(struct kprobe *p, struct pt_regs *regs)
+ }
+
+ /* Called with kretprobe_lock held */
++#ifdef CONFIG_KRETPROBES
+ void __kprobes arch_prepare_kretprobe(struct kretprobe_instance *ri,
+ struct pt_regs *regs)
+ {
+@@ -211,6 +214,7 @@ void __kprobes arch_prepare_kretprobe(struct kretprobe_instance *ri,
+ /* Replace the return addr with trampoline addr */
+ regs->pr = (unsigned long)kretprobe_trampoline;
+ }
++#endif
+
+ static int __kprobes kprobe_handler(struct pt_regs *regs)
+ {
diff --git a/arch/sh/mm/mmap.c b/arch/sh/mm/mmap.c
index 6777177..d44b592 100644
--- a/arch/sh/mm/mmap.c
@@ -10417,10 +10613,10 @@ index 6777177..d44b592 100644
addr = vm_unmapped_area(&info);
}
diff --git a/arch/sparc/Kconfig b/arch/sparc/Kconfig
-index 59b0960..75a8bcb 100644
+index 165ecdd..2bac5bf 100644
--- a/arch/sparc/Kconfig
+++ b/arch/sparc/Kconfig
-@@ -39,6 +39,7 @@ config SPARC
+@@ -38,6 +38,7 @@ config SPARC
select GENERIC_STRNCPY_FROM_USER
select GENERIC_STRNLEN_USER
select MODULES_USE_ELF_RELA
@@ -10660,7 +10856,7 @@ index a24e41f..47677ff 100644
instruction set this cpu supports. This can NOT be done in userspace
on Sparc. */
diff --git a/arch/sparc/include/asm/elf_64.h b/arch/sparc/include/asm/elf_64.h
-index 9331083..59c0499 100644
+index 3f2d403..4385ed9 100644
--- a/arch/sparc/include/asm/elf_64.h
+++ b/arch/sparc/include/asm/elf_64.h
@@ -190,6 +190,13 @@ typedef struct {
@@ -10793,18 +10989,10 @@ index 29d64b1..4272fe8 100644
extern int sysctl_tsb_ratio;
#endif
diff --git a/arch/sparc/include/asm/spinlock_64.h b/arch/sparc/include/asm/spinlock_64.h
-index 87990b7..352fff0 100644
+index 07c9f2e..352fff0 100644
--- a/arch/sparc/include/asm/spinlock_64.h
+++ b/arch/sparc/include/asm/spinlock_64.h
-@@ -96,14 +96,19 @@ static inline void arch_spin_lock_flags(arch_spinlock_t *lock, unsigned long fla
-
- /* Multi-reader locks, these are much saner than the 32-bit Sparc ones... */
-
--static void inline arch_read_lock(arch_rwlock_t *lock)
-+static inline void arch_read_lock(arch_rwlock_t *lock)
- {
- unsigned long tmp1, tmp2;
-
+@@ -103,7 +103,12 @@ static inline void arch_read_lock(arch_rwlock_t *lock)
__asm__ __volatile__ (
"1: ldsw [%2], %0\n"
" brlz,pn %0, 2f\n"
@@ -10818,7 +11006,7 @@ index 87990b7..352fff0 100644
" cas [%2], %0, %1\n"
" cmp %0, %1\n"
" bne,pn %%icc, 1b\n"
-@@ -116,10 +121,10 @@ static void inline arch_read_lock(arch_rwlock_t *lock)
+@@ -116,7 +121,7 @@ static inline void arch_read_lock(arch_rwlock_t *lock)
" .previous"
: "=&r" (tmp1), "=&r" (tmp2)
: "r" (lock)
@@ -10826,12 +11014,8 @@ index 87990b7..352fff0 100644
+ : "memory", "cc");
}
--static int inline arch_read_trylock(arch_rwlock_t *lock)
-+static inline int arch_read_trylock(arch_rwlock_t *lock)
- {
- int tmp1, tmp2;
-
-@@ -127,7 +132,12 @@ static int inline arch_read_trylock(arch_rwlock_t *lock)
+ static inline int arch_read_trylock(arch_rwlock_t *lock)
+@@ -127,7 +132,12 @@ static inline int arch_read_trylock(arch_rwlock_t *lock)
"1: ldsw [%2], %0\n"
" brlz,a,pn %0, 2f\n"
" mov 0, %0\n"
@@ -10845,14 +11029,7 @@ index 87990b7..352fff0 100644
" cas [%2], %0, %1\n"
" cmp %0, %1\n"
" bne,pn %%icc, 1b\n"
-@@ -140,13 +150,18 @@ static int inline arch_read_trylock(arch_rwlock_t *lock)
- return tmp1;
- }
-
--static void inline arch_read_unlock(arch_rwlock_t *lock)
-+static inline void arch_read_unlock(arch_rwlock_t *lock)
- {
- unsigned long tmp1, tmp2;
+@@ -146,7 +156,12 @@ static inline void arch_read_unlock(arch_rwlock_t *lock)
__asm__ __volatile__(
"1: lduw [%2], %0\n"
@@ -10866,33 +11043,6 @@ index 87990b7..352fff0 100644
" cas [%2], %0, %1\n"
" cmp %0, %1\n"
" bne,pn %%xcc, 1b\n"
-@@ -156,7 +171,7 @@ static void inline arch_read_unlock(arch_rwlock_t *lock)
- : "memory");
- }
-
--static void inline arch_write_lock(arch_rwlock_t *lock)
-+static inline void arch_write_lock(arch_rwlock_t *lock)
- {
- unsigned long mask, tmp1, tmp2;
-
-@@ -181,7 +196,7 @@ static void inline arch_write_lock(arch_rwlock_t *lock)
- : "memory");
- }
-
--static void inline arch_write_unlock(arch_rwlock_t *lock)
-+static inline void arch_write_unlock(arch_rwlock_t *lock)
- {
- __asm__ __volatile__(
- " stw %%g0, [%0]"
-@@ -190,7 +205,7 @@ static void inline arch_write_unlock(arch_rwlock_t *lock)
- : "memory");
- }
-
--static int inline arch_write_trylock(arch_rwlock_t *lock)
-+static inline int arch_write_trylock(arch_rwlock_t *lock)
- {
- unsigned long mask, tmp1, tmp2, result;
-
diff --git a/arch/sparc/include/asm/thread_info_32.h b/arch/sparc/include/asm/thread_info_32.h
index 229475f..2fca9163 100644
--- a/arch/sparc/include/asm/thread_info_32.h
@@ -11014,7 +11164,7 @@ index ea55f86..dbf15cf 100644
}
diff --git a/arch/sparc/include/asm/uaccess_64.h b/arch/sparc/include/asm/uaccess_64.h
-index a6847fc..a5ac14a 100644
+index 5373136..c528f7e 100644
--- a/arch/sparc/include/asm/uaccess_64.h
+++ b/arch/sparc/include/asm/uaccess_64.h
@@ -10,6 +10,7 @@
@@ -11025,7 +11175,7 @@ index a6847fc..a5ac14a 100644
#include <asm/asi.h>
#include <asm/spitfire.h>
#include <asm-generic/uaccess-unaligned.h>
-@@ -76,6 +77,11 @@ static inline int __access_ok(const void __user * addr, unsigned long size)
+@@ -77,6 +78,11 @@ static inline int __access_ok(const void __user * addr, unsigned long size)
return 1;
}
@@ -11037,7 +11187,7 @@ index a6847fc..a5ac14a 100644
static inline int access_ok(int type, const void __user * addr, unsigned long size)
{
return 1;
-@@ -207,6 +213,9 @@ unsigned long __must_check ___copy_from_user(void *to,
+@@ -191,6 +197,9 @@ unsigned long __must_check ___copy_from_user(void *to,
static inline unsigned long __must_check
copy_from_user(void *to, const void __user *from, unsigned long size)
{
@@ -11047,7 +11197,7 @@ index a6847fc..a5ac14a 100644
check_object_size(to, size, false);
return ___copy_from_user(to, from, size);
-@@ -219,6 +228,9 @@ unsigned long __must_check ___copy_to_user(void __user *to,
+@@ -203,6 +212,9 @@ unsigned long __must_check ___copy_to_user(void __user *to,
static inline unsigned long __must_check
copy_to_user(void __user *to, const void *from, unsigned long size)
{
@@ -11058,7 +11208,7 @@ index a6847fc..a5ac14a 100644
return ___copy_to_user(to, from, size);
diff --git a/arch/sparc/kernel/Makefile b/arch/sparc/kernel/Makefile
-index fdb1332..1b10f89 100644
+index fa3c02d..c9a6309 100644
--- a/arch/sparc/kernel/Makefile
+++ b/arch/sparc/kernel/Makefile
@@ -4,7 +4,7 @@
@@ -11070,6 +11220,26 @@ index fdb1332..1b10f89 100644
extra-y := head_$(BITS).o
+diff --git a/arch/sparc/kernel/kprobes.c b/arch/sparc/kernel/kprobes.c
+index b0377db..1da3b53 100644
+--- a/arch/sparc/kernel/kprobes.c
++++ b/arch/sparc/kernel/kprobes.c
+@@ -499,6 +499,7 @@ int __kprobes longjmp_break_handler(struct kprobe *p, struct pt_regs *regs)
+ * value kept in ri->ret_addr so we don't need to keep adjusting it
+ * back and forth.
+ */
++#ifdef CONFIG_KRETPROBES
+ void __kprobes arch_prepare_kretprobe(struct kretprobe_instance *ri,
+ struct pt_regs *regs)
+ {
+@@ -508,6 +509,7 @@ void __kprobes arch_prepare_kretprobe(struct kretprobe_instance *ri,
+ regs->u_regs[UREG_RETPC] =
+ ((unsigned long)kretprobe_trampoline) - 8;
+ }
++#endif
+
+ /*
+ * Called when the probe at kretprobe trampoline is hit
diff --git a/arch/sparc/kernel/process_32.c b/arch/sparc/kernel/process_32.c
index b7780a5..28315f0 100644
--- a/arch/sparc/kernel/process_32.c
@@ -11101,7 +11271,7 @@ index b7780a5..28315f0 100644
} while (++count < 16);
printk("\n");
diff --git a/arch/sparc/kernel/process_64.c b/arch/sparc/kernel/process_64.c
-index fa14402..b2a7408 100644
+index 47ff558..2333c8a 100644
--- a/arch/sparc/kernel/process_64.c
+++ b/arch/sparc/kernel/process_64.c
@@ -161,7 +161,7 @@ static void show_regwindow(struct pt_regs *regs)
@@ -11131,7 +11301,7 @@ index fa14402..b2a7408 100644
show_regwindow(regs);
show_stack(current, (unsigned long *) regs->u_regs[UREG_FP]);
}
-@@ -278,7 +278,7 @@ void arch_trigger_all_cpu_backtrace(bool include_self)
+@@ -278,7 +278,7 @@ void arch_trigger_cpumask_backtrace(const cpumask_t *mask, bool exclude_self)
((tp && tp->task) ? tp->task->pid : -1));
if (gp->tstate & TSTATE_PRIV) {
@@ -11154,10 +11324,10 @@ index 79cc0d1..46d6233 100644
.getproplen = prom_getproplen,
.getproperty = prom_getproperty,
diff --git a/arch/sparc/kernel/ptrace_64.c b/arch/sparc/kernel/ptrace_64.c
-index 9ddc492..27a5619 100644
+index ac082dd..7170942 100644
--- a/arch/sparc/kernel/ptrace_64.c
+++ b/arch/sparc/kernel/ptrace_64.c
-@@ -1060,6 +1060,10 @@ long arch_ptrace(struct task_struct *child, long request,
+@@ -1068,6 +1068,10 @@ long arch_ptrace(struct task_struct *child, long request,
return ret;
}
@@ -11168,7 +11338,7 @@ index 9ddc492..27a5619 100644
asmlinkage int syscall_trace_enter(struct pt_regs *regs)
{
int ret = 0;
-@@ -1070,6 +1074,11 @@ asmlinkage int syscall_trace_enter(struct pt_regs *regs)
+@@ -1078,6 +1082,11 @@ asmlinkage int syscall_trace_enter(struct pt_regs *regs)
if (test_thread_flag(TIF_NOHZ))
user_exit();
@@ -11180,7 +11350,7 @@ index 9ddc492..27a5619 100644
if (test_thread_flag(TIF_SYSCALL_TRACE))
ret = tracehook_report_syscall_entry(regs);
-@@ -1088,6 +1097,11 @@ asmlinkage void syscall_trace_leave(struct pt_regs *regs)
+@@ -1096,6 +1105,11 @@ asmlinkage void syscall_trace_leave(struct pt_regs *regs)
if (test_thread_flag(TIF_NOHZ))
user_exit();
@@ -11193,10 +11363,10 @@ index 9ddc492..27a5619 100644
if (unlikely(test_thread_flag(TIF_SYSCALL_TRACEPOINT)))
diff --git a/arch/sparc/kernel/smp_64.c b/arch/sparc/kernel/smp_64.c
-index d3035ba..40683bd 100644
+index 8182f7c..a5ab37f 100644
--- a/arch/sparc/kernel/smp_64.c
+++ b/arch/sparc/kernel/smp_64.c
-@@ -891,7 +891,7 @@ void smp_flush_dcache_page_impl(struct page *page, int cpu)
+@@ -895,7 +895,7 @@ void smp_flush_dcache_page_impl(struct page *page, int cpu)
return;
#ifdef CONFIG_DEBUG_DCFLUSH
@@ -11205,7 +11375,7 @@ index d3035ba..40683bd 100644
#endif
this_cpu = get_cpu();
-@@ -915,7 +915,7 @@ void smp_flush_dcache_page_impl(struct page *page, int cpu)
+@@ -919,7 +919,7 @@ void smp_flush_dcache_page_impl(struct page *page, int cpu)
xcall_deliver(data0, __pa(pg_addr),
(u64) pg_addr, cpumask_of(cpu));
#ifdef CONFIG_DEBUG_DCFLUSH
@@ -11214,7 +11384,7 @@ index d3035ba..40683bd 100644
#endif
}
}
-@@ -934,7 +934,7 @@ void flush_dcache_page_all(struct mm_struct *mm, struct page *page)
+@@ -938,7 +938,7 @@ void flush_dcache_page_all(struct mm_struct *mm, struct page *page)
preempt_disable();
#ifdef CONFIG_DEBUG_DCFLUSH
@@ -11223,7 +11393,7 @@ index d3035ba..40683bd 100644
#endif
data0 = 0;
pg_addr = page_address(page);
-@@ -951,7 +951,7 @@ void flush_dcache_page_all(struct mm_struct *mm, struct page *page)
+@@ -955,7 +955,7 @@ void flush_dcache_page_all(struct mm_struct *mm, struct page *page)
xcall_deliver(data0, __pa(pg_addr),
(u64) pg_addr, cpu_online_mask);
#ifdef CONFIG_DEBUG_DCFLUSH
@@ -11504,7 +11674,7 @@ index 4f21df7..0a374da 100644
}
diff --git a/arch/sparc/kernel/traps_64.c b/arch/sparc/kernel/traps_64.c
-index d21cd62..4e2ca86 100644
+index 4094a51..4a360da 100644
--- a/arch/sparc/kernel/traps_64.c
+++ b/arch/sparc/kernel/traps_64.c
@@ -79,7 +79,7 @@ static void dump_tl1_traplog(struct tl1_traplog *p)
@@ -11605,7 +11775,7 @@ index d21cd62..4e2ca86 100644
wmb();
printk("%s: Queue overflowed %d times.\n",
pfx, cnt);
-@@ -2048,7 +2059,7 @@ out:
+@@ -2048,7 +2059,7 @@ void sun4v_resum_error(struct pt_regs *regs, unsigned long offset)
*/
void sun4v_resum_overflow(struct pt_regs *regs)
{
@@ -11694,7 +11864,7 @@ index d21cd62..4e2ca86 100644
}
EXPORT_SYMBOL(die_if_kernel);
diff --git a/arch/sparc/kernel/unaligned_64.c b/arch/sparc/kernel/unaligned_64.c
-index 9aacb91..6415c82 100644
+index 52c00d9..6f8aa4e 100644
--- a/arch/sparc/kernel/unaligned_64.c
+++ b/arch/sparc/kernel/unaligned_64.c
@@ -297,7 +297,7 @@ static void log_unaligned(struct pt_regs *regs)
@@ -11707,7 +11877,7 @@ index 9aacb91..6415c82 100644
}
}
diff --git a/arch/sparc/lib/Makefile b/arch/sparc/lib/Makefile
-index 4f2384a..4e88949 100644
+index 69912d2..6c0c227 100644
--- a/arch/sparc/lib/Makefile
+++ b/arch/sparc/lib/Makefile
@@ -2,7 +2,7 @@
@@ -11720,10 +11890,10 @@ index 4f2384a..4e88949 100644
lib-$(CONFIG_SPARC32) += ashrdi3.o
lib-$(CONFIG_SPARC32) += memcpy.o memset.o
diff --git a/arch/sparc/lib/atomic_64.S b/arch/sparc/lib/atomic_64.S
-index a5c5a02..47db32c 100644
+index 1c6a1bd..93e9698 100644
--- a/arch/sparc/lib/atomic_64.S
+++ b/arch/sparc/lib/atomic_64.S
-@@ -16,11 +16,22 @@
+@@ -17,11 +17,22 @@
* barriers.
*/
@@ -11749,12 +11919,14 @@ index a5c5a02..47db32c 100644
cas [%o1], %g1, %g7; \
cmp %g1, %g7; \
bne,pn %icc, BACKOFF_LABEL(2f, 1b); \
-@@ -28,13 +39,17 @@ ENTRY(atomic_##op) /* %o0 = increment, %o1 = atomic_ptr */ \
+@@ -29,14 +40,18 @@ ENTRY(atomic_##op) /* %o0 = increment, %o1 = atomic_ptr */ \
retl; \
nop; \
2: BACKOFF_SPIN(%o2, %o3, 1b); \
-ENDPROC(atomic_##op); \
-+ENDPROC(atomic_##op##suffix);
+-EXPORT_SYMBOL(atomic_##op);
++ENDPROC(atomic_##op##suffix); \
++EXPORT_SYMBOL(atomic_##op##suffix);
-#define ATOMIC_OP_RETURN(op) \
-ENTRY(atomic_##op##_return) /* %o0 = increment, %o1 = atomic_ptr */ \
@@ -11771,19 +11943,21 @@ index a5c5a02..47db32c 100644
cas [%o1], %g1, %g7; \
cmp %g1, %g7; \
bne,pn %icc, BACKOFF_LABEL(2f, 1b); \
-@@ -42,7 +57,10 @@ ENTRY(atomic_##op##_return) /* %o0 = increment, %o1 = atomic_ptr */ \
+@@ -44,8 +59,11 @@ ENTRY(atomic_##op##_return) /* %o0 = increment, %o1 = atomic_ptr */ \
retl; \
sra %g1, 0, %o0; \
2: BACKOFF_SPIN(%o2, %o3, 1b); \
--ENDPROC(atomic_##op##_return);
-+ENDPROC(atomic_##op##_return##suffix);
+-ENDPROC(atomic_##op##_return); \
+-EXPORT_SYMBOL(atomic_##op##_return);
++ENDPROC(atomic_##op##_return##suffix); \
++EXPORT_SYMBOL(atomic_##op##_return##suffix)
+
+#define ATOMIC_OP_RETURN(op) __ATOMIC_OP_RETURN(op, , op, ) \
+ __ATOMIC_OP_RETURN(op, _unchecked, __REFCOUNT_OP(op), __OVERFLOW_IOP)
#define ATOMIC_FETCH_OP(op) \
ENTRY(atomic_fetch_##op) /* %o0 = increment, %o1 = atomic_ptr */ \
-@@ -73,13 +91,16 @@ ATOMIC_OPS(xor)
+@@ -77,13 +95,16 @@ ATOMIC_OPS(xor)
#undef ATOMIC_OPS
#undef ATOMIC_FETCH_OP
#undef ATOMIC_OP_RETURN
@@ -11803,12 +11977,14 @@ index a5c5a02..47db32c 100644
casx [%o1], %g1, %g7; \
cmp %g1, %g7; \
bne,pn %xcc, BACKOFF_LABEL(2f, 1b); \
-@@ -87,13 +108,17 @@ ENTRY(atomic64_##op) /* %o0 = increment, %o1 = atomic_ptr */ \
+@@ -91,14 +112,18 @@ ENTRY(atomic64_##op) /* %o0 = increment, %o1 = atomic_ptr */ \
retl; \
nop; \
2: BACKOFF_SPIN(%o2, %o3, 1b); \
-ENDPROC(atomic64_##op); \
-+ENDPROC(atomic64_##op##suffix);
+-EXPORT_SYMBOL(atomic64_##op);
++ENDPROC(atomic64_##op##suffix); \
++EXPORT_SYMBOL(atomic64_##op##suffix);
-#define ATOMIC64_OP_RETURN(op) \
-ENTRY(atomic64_##op##_return) /* %o0 = increment, %o1 = atomic_ptr */ \
@@ -11825,19 +12001,21 @@ index a5c5a02..47db32c 100644
casx [%o1], %g1, %g7; \
cmp %g1, %g7; \
bne,pn %xcc, BACKOFF_LABEL(2f, 1b); \
-@@ -101,7 +126,10 @@ ENTRY(atomic64_##op##_return) /* %o0 = increment, %o1 = atomic_ptr */ \
+@@ -106,8 +131,11 @@ ENTRY(atomic64_##op##_return) /* %o0 = increment, %o1 = atomic_ptr */ \
retl; \
op %g1, %o0, %o0; \
2: BACKOFF_SPIN(%o2, %o3, 1b); \
--ENDPROC(atomic64_##op##_return);
-+ENDPROC(atomic64_##op##_return##suffix);
+-ENDPROC(atomic64_##op##_return); \
+-EXPORT_SYMBOL(atomic64_##op##_return);
++ENDPROC(atomic64_##op##_return##suffix); \
++EXPORT_SYMBOL(atomic64_##op##_return##suffix);
+
+#define ATOMIC64_OP_RETURN(op) __ATOMIC64_OP_RETURN(op, , op, ) \
+ __ATOMIC64_OP_RETURN(op, _unchecked, __REFCOUNT_OP(op), __OVERFLOW_XOP)
#define ATOMIC64_FETCH_OP(op) \
ENTRY(atomic64_fetch_##op) /* %o0 = increment, %o1 = atomic_ptr */ \
-@@ -132,7 +160,12 @@ ATOMIC64_OPS(xor)
+@@ -139,7 +167,12 @@ ATOMIC64_OPS(xor)
#undef ATOMIC64_OPS
#undef ATOMIC64_FETCH_OP
#undef ATOMIC64_OP_RETURN
@@ -11850,30 +12028,6 @@ index a5c5a02..47db32c 100644
ENTRY(atomic64_dec_if_positive) /* %o0 = atomic_ptr */
BACKOFF_SETUP(%o2)
-diff --git a/arch/sparc/lib/ksyms.c b/arch/sparc/lib/ksyms.c
-index de5e978..cf48854 100644
---- a/arch/sparc/lib/ksyms.c
-+++ b/arch/sparc/lib/ksyms.c
-@@ -101,7 +101,9 @@ EXPORT_SYMBOL(__clear_user);
- /* Atomic counter implementation. */
- #define ATOMIC_OP(op) \
- EXPORT_SYMBOL(atomic_##op); \
--EXPORT_SYMBOL(atomic64_##op);
-+EXPORT_SYMBOL(atomic_##op##_unchecked); \
-+EXPORT_SYMBOL(atomic64_##op); \
-+EXPORT_SYMBOL(atomic64_##op##_unchecked);
-
- #define ATOMIC_OP_RETURN(op) \
- EXPORT_SYMBOL(atomic_##op##_return); \
-@@ -114,6 +116,8 @@ EXPORT_SYMBOL(atomic64_fetch_##op);
- #define ATOMIC_OPS(op) ATOMIC_OP(op) ATOMIC_OP_RETURN(op) ATOMIC_FETCH_OP(op)
-
- ATOMIC_OPS(add)
-+EXPORT_SYMBOL(atomic_add_return_unchecked);
-+EXPORT_SYMBOL(atomic64_add_return_unchecked);
- ATOMIC_OPS(sub)
-
- #undef ATOMIC_OPS
diff --git a/arch/sparc/mm/Makefile b/arch/sparc/mm/Makefile
index 30c3ecc..736f015 100644
--- a/arch/sparc/mm/Makefile
@@ -12179,7 +12333,7 @@ index 4714061..bad7f9a 100644
static noinline void do_fault_siginfo(int code, int sig, struct pt_regs *regs,
int text_fault)
{
-@@ -226,6 +500,24 @@ good_area:
+@@ -226,6 +500,24 @@ asmlinkage void do_sparc_fault(struct pt_regs *regs, int text_fault, int write,
if (!(vma->vm_flags & VM_WRITE))
goto bad_area;
} else {
@@ -12205,7 +12359,7 @@ index 4714061..bad7f9a 100644
if (!(vma->vm_flags & (VM_READ | VM_EXEC)))
goto bad_area;
diff --git a/arch/sparc/mm/fault_64.c b/arch/sparc/mm/fault_64.c
-index 3f291d8..b335338 100644
+index 643c149..845c113 100644
--- a/arch/sparc/mm/fault_64.c
+++ b/arch/sparc/mm/fault_64.c
@@ -23,6 +23,9 @@
@@ -12694,7 +12848,7 @@ index 3f291d8..b335338 100644
asmlinkage void __kprobes do_sparc64_fault(struct pt_regs *regs)
{
enum ctx_state prev_state = exception_enter();
-@@ -350,6 +813,29 @@ retry:
+@@ -350,6 +813,29 @@ asmlinkage void __kprobes do_sparc64_fault(struct pt_regs *regs)
if (!vma)
goto bad_area;
@@ -12837,7 +12991,7 @@ index 988acc8b..f26345c 100644
pte_t *huge_pte_alloc(struct mm_struct *mm,
diff --git a/arch/sparc/mm/init_64.c b/arch/sparc/mm/init_64.c
-index 05c7708..222a546 100644
+index 37aa537..06b756c 100644
--- a/arch/sparc/mm/init_64.c
+++ b/arch/sparc/mm/init_64.c
@@ -189,9 +189,9 @@ unsigned long sparc64_kern_sec_context __read_mostly;
@@ -12875,10 +13029,10 @@ index 05c7708..222a546 100644
#endif /* CONFIG_DEBUG_DCFLUSH */
}
diff --git a/arch/tile/Kconfig b/arch/tile/Kconfig
-index 78da75b..264302d 100644
+index 4583c03..5e074bb 100644
--- a/arch/tile/Kconfig
+++ b/arch/tile/Kconfig
-@@ -193,6 +193,7 @@ source "kernel/Kconfig.hz"
+@@ -192,6 +192,7 @@ source "kernel/Kconfig.hz"
config KEXEC
bool "kexec system call"
select KEXEC_CORE
@@ -12908,7 +13062,7 @@ index 4cefa0c..98d8b83 100644
#endif /* _ASM_TILE_ATOMIC_64_H */
diff --git a/arch/tile/include/asm/cache.h b/arch/tile/include/asm/cache.h
-index 6160761..00cac88 100644
+index 4810e48..08b733b 100644
--- a/arch/tile/include/asm/cache.h
+++ b/arch/tile/include/asm/cache.h
@@ -15,11 +15,12 @@
@@ -12941,6 +13095,42 @@ index a77369e..7ba6ecd 100644
n = _copy_from_user(to, from, n);
else if (!__builtin_constant_p(n))
copy_user_overflow(sz, n);
+diff --git a/arch/tile/kernel/kprobes.c b/arch/tile/kernel/kprobes.c
+index c68694b..12bf0cb 100644
+--- a/arch/tile/kernel/kprobes.c
++++ b/arch/tile/kernel/kprobes.c
+@@ -430,6 +430,7 @@ static void __used kretprobe_trampoline_holder(void)
+
+ void kretprobe_trampoline(void);
+
++#ifdef CONFIG_KRETPROBES
+ void __kprobes arch_prepare_kretprobe(struct kretprobe_instance *ri,
+ struct pt_regs *regs)
+ {
+@@ -438,6 +439,7 @@ void __kprobes arch_prepare_kretprobe(struct kretprobe_instance *ri,
+ /* Replace the return addr with trampoline addr */
+ regs->lr = (unsigned long)kretprobe_trampoline;
+ }
++#endif
+
+ /*
+ * Called when the probe at kretprobe trampoline is hit.
+@@ -507,6 +509,7 @@ static int __kprobes trampoline_probe_handler(struct kprobe *p,
+ return 1;
+ }
+
++#ifdef CONFIG_KRETPROBES
+ int __kprobes arch_trampoline_kprobe(struct kprobe *p)
+ {
+ if (p->addr == (kprobe_opcode_t *)kretprobe_trampoline)
+@@ -514,6 +517,7 @@ int __kprobes arch_trampoline_kprobe(struct kprobe *p)
+
+ return 0;
+ }
++#endif
+
+ static struct kprobe trampoline_p = {
+ .addr = (kprobe_opcode_t *)kretprobe_trampoline,
diff --git a/arch/tile/mm/hugetlbpage.c b/arch/tile/mm/hugetlbpage.c
index 77ceaa3..3630dea 100644
--- a/arch/tile/mm/hugetlbpage.c
@@ -12974,6 +13164,19 @@ index 0ca46ede..8d7fd38 100644
#This will adjust *FLAGS accordingly to the platform.
include $(ARCH_DIR)/Makefile-os-$(OS)
+diff --git a/arch/um/drivers/line.c b/arch/um/drivers/line.c
+index 6208702..00292c8 100644
+--- a/arch/um/drivers/line.c
++++ b/arch/um/drivers/line.c
+@@ -377,7 +377,7 @@ int setup_one_line(struct line *lines, int n, char *init,
+ struct tty_driver *driver = line->driver->driver;
+ int err = -EINVAL;
+
+- if (line->port.count) {
++ if (atomic_read(&line->port.count)) {
+ *error_out = "Device is already open";
+ goto out;
+ }
diff --git a/arch/um/include/asm/cache.h b/arch/um/include/asm/cache.h
index 19e1bdd..3665b77 100644
--- a/arch/um/include/asm/cache.h
@@ -13077,7 +13280,7 @@ index ad8f795..2c7eec6 100644
/*
* Memory returned by kmalloc() may be used for DMA, so we must make
diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig
-index 2a1f0ce..ca2cc51 100644
+index bada636..1775eac 100644
--- a/arch/x86/Kconfig
+++ b/arch/x86/Kconfig
@@ -39,14 +39,13 @@ config X86
@@ -13096,10 +13299,10 @@ index 2a1f0ce..ca2cc51 100644
select ARCH_WANT_FRAME_POINTERS
select ARCH_WANT_IPC_PARSE_VERSION if X86_32
select BUILDTIME_EXTABLE_SORT
-@@ -93,7 +92,7 @@ config X86
- select HAVE_ARCH_TRANSPARENT_HUGEPAGE
+@@ -94,7 +93,7 @@ config X86
select HAVE_ARCH_WITHIN_STACK_FRAMES
select HAVE_EBPF_JIT if X86_64
+ select HAVE_ARCH_VMAP_STACK if X86_64
- select HAVE_CC_STACKPROTECTOR
+ select HAVE_CC_STACKPROTECTOR if X86_64 || !PAX_MEMORY_UDEREF
select HAVE_CMPXCHG_DOUBLE
@@ -13113,7 +13316,7 @@ index 2a1f0ce..ca2cc51 100644
select HAVE_PCSPKR_PLATFORM
select HAVE_PERF_EVENTS
select HAVE_PERF_EVENTS_NMI
-@@ -189,11 +189,13 @@ config MMU
+@@ -190,11 +190,13 @@ config MMU
def_bool y
config ARCH_MMAP_RND_BITS_MIN
@@ -13129,7 +13332,7 @@ index 2a1f0ce..ca2cc51 100644
default 16
config ARCH_MMAP_RND_COMPAT_BITS_MIN
-@@ -295,7 +297,7 @@ config X86_64_SMP
+@@ -296,7 +298,7 @@ config X86_64_SMP
config X86_32_LAZY_GS
def_bool y
@@ -13138,7 +13341,7 @@ index 2a1f0ce..ca2cc51 100644
config ARCH_SUPPORTS_UPROBES
def_bool y
-@@ -677,6 +679,7 @@ config SCHED_OMIT_FRAME_POINTER
+@@ -690,6 +692,7 @@ config SCHED_OMIT_FRAME_POINTER
menuconfig HYPERVISOR_GUEST
bool "Linux guest support"
@@ -13146,7 +13349,7 @@ index 2a1f0ce..ca2cc51 100644
---help---
Say Y here to enable options for running Linux under various hyper-
visors. This option enables basic hypervisor detection and platform
-@@ -1078,6 +1081,7 @@ config VM86
+@@ -1090,6 +1093,7 @@ config VM86
config X86_16BIT
bool "Enable support for 16-bit segments" if EXPERT
@@ -13154,7 +13357,7 @@ index 2a1f0ce..ca2cc51 100644
default y
depends on MODIFY_LDT_SYSCALL
---help---
-@@ -1232,6 +1236,7 @@ choice
+@@ -1244,6 +1248,7 @@ choice
config NOHIGHMEM
bool "off"
@@ -13162,7 +13365,7 @@ index 2a1f0ce..ca2cc51 100644
---help---
Linux can use up to 64 Gigabytes of physical memory on x86 systems.
However, the address space of 32-bit x86 processors is only 4
-@@ -1268,6 +1273,7 @@ config NOHIGHMEM
+@@ -1280,6 +1285,7 @@ config NOHIGHMEM
config HIGHMEM4G
bool "4GB"
@@ -13170,7 +13373,7 @@ index 2a1f0ce..ca2cc51 100644
---help---
Select this if you have a 32-bit processor and between 1 and 4
gigabytes of physical RAM.
-@@ -1320,7 +1326,7 @@ config PAGE_OFFSET
+@@ -1332,7 +1338,7 @@ config PAGE_OFFSET
hex
default 0xB0000000 if VMSPLIT_3G_OPT
default 0x80000000 if VMSPLIT_2G
@@ -13179,7 +13382,7 @@ index 2a1f0ce..ca2cc51 100644
default 0x40000000 if VMSPLIT_1G
default 0xC0000000
depends on X86_32
-@@ -1341,7 +1347,6 @@ config X86_PAE
+@@ -1353,7 +1359,6 @@ config X86_PAE
config ARCH_PHYS_ADDR_T_64BIT
def_bool y
@@ -13187,7 +13390,7 @@ index 2a1f0ce..ca2cc51 100644
config ARCH_DMA_ADDR_T_64BIT
def_bool y
-@@ -1472,7 +1477,7 @@ config ARCH_PROC_KCORE_TEXT
+@@ -1484,7 +1489,7 @@ config ARCH_PROC_KCORE_TEXT
config ILLEGAL_POINTER_VALUE
hex
@@ -13196,7 +13399,7 @@ index 2a1f0ce..ca2cc51 100644
default 0xdead000000000000 if X86_64
source "mm/Kconfig"
-@@ -1795,6 +1800,7 @@ source kernel/Kconfig.hz
+@@ -1807,6 +1812,7 @@ source kernel/Kconfig.hz
config KEXEC
bool "kexec system call"
select KEXEC_CORE
@@ -13204,7 +13407,7 @@ index 2a1f0ce..ca2cc51 100644
---help---
kexec is a system call that implements the ability to shutdown your
current kernel, and to start another kernel. It is like a reboot
-@@ -1922,7 +1928,7 @@ config RELOCATABLE
+@@ -1934,7 +1940,7 @@ config RELOCATABLE
config RANDOMIZE_BASE
bool "Randomize the address of the kernel image (KASLR)"
@@ -13213,7 +13416,7 @@ index 2a1f0ce..ca2cc51 100644
default n
---help---
In support of Kernel Address Space Layout Randomization (KASLR),
-@@ -1966,7 +1972,9 @@ config X86_NEED_RELOCS
+@@ -1978,7 +1984,9 @@ config X86_NEED_RELOCS
config PHYSICAL_ALIGN
hex "Alignment value to which kernel should be aligned"
@@ -13224,7 +13427,7 @@ index 2a1f0ce..ca2cc51 100644
range 0x2000 0x1000000 if X86_32
range 0x200000 0x1000000 if X86_64
---help---
-@@ -2081,6 +2089,7 @@ config COMPAT_VDSO
+@@ -2093,6 +2101,7 @@ config COMPAT_VDSO
def_bool n
prompt "Disable the 32-bit vDSO (needed for glibc 2.3.3)"
depends on X86_32 || IA32_EMULATION
@@ -13232,7 +13435,7 @@ index 2a1f0ce..ca2cc51 100644
---help---
Certain buggy versions of glibc will crash if they are
presented with a 32-bit vDSO that is not mapped at the address
-@@ -2121,15 +2130,6 @@ choice
+@@ -2133,15 +2142,6 @@ choice
If unsure, select "Emulate".
@@ -13248,7 +13451,7 @@ index 2a1f0ce..ca2cc51 100644
config LEGACY_VSYSCALL_EMULATE
bool "Emulate"
help
-@@ -2210,6 +2210,22 @@ config MODIFY_LDT_SYSCALL
+@@ -2222,6 +2222,22 @@ config MODIFY_LDT_SYSCALL
Saying 'N' here may make sense for embedded or server kernels.
@@ -13340,7 +13543,7 @@ index 67eec55..1a5c1ab 100644
---help---
This is a debug driver, which gets the power states
diff --git a/arch/x86/Makefile b/arch/x86/Makefile
-index 830ed39..56602a5 100644
+index 2d44933..86ecceb 100644
--- a/arch/x86/Makefile
+++ b/arch/x86/Makefile
@@ -75,9 +75,6 @@ ifeq ($(CONFIG_X86_32),y)
@@ -13363,7 +13566,7 @@ index 830ed39..56602a5 100644
ifdef CONFIG_X86_X32
x32_ld_ok := $(call try-run,\
/bin/echo -e '1: .quad 1b' | \
-@@ -191,6 +191,7 @@ archheaders:
+@@ -192,6 +192,7 @@ archheaders:
$(Q)$(MAKE) $(build)=arch/x86/entry/syscalls all
archprepare:
@@ -13371,7 +13574,7 @@ index 830ed39..56602a5 100644
ifeq ($(CONFIG_KEXEC_FILE),y)
$(Q)$(MAKE) $(build)=arch/x86/purgatory arch/x86/purgatory/kexec-purgatory.c
endif
-@@ -277,3 +278,9 @@ define archhelp
+@@ -278,3 +279,9 @@ define archhelp
echo ' FDARGS="..." arguments for the booted kernel'
echo ' FDINITRD=file initrd for the booted kernel'
endef
@@ -13381,6 +13584,18 @@ index 830ed39..56602a5 100644
+*** ${VERSION}.${PATCHLEVEL} PaX kernels no longer build correctly with old versions of binutils.
+*** Please upgrade your binutils to 2.18 or newer
+endef
+diff --git a/arch/x86/boot/Makefile b/arch/x86/boot/Makefile
+index 12ea8f8..46969be 100644
+--- a/arch/x86/boot/Makefile
++++ b/arch/x86/boot/Makefile
+@@ -11,6 +11,7 @@
+
+ KASAN_SANITIZE := n
+ OBJECT_FILES_NON_STANDARD := y
++GCC_PLUGINS := n
+
+ # Kernel does not boot with kcov instrumentation here.
+ # One of the problems observed was insertion of __sanitizer_cov_trace_pc()
diff --git a/arch/x86/boot/bitops.h b/arch/x86/boot/bitops.h
index 0d41d68..2d6120c 100644
--- a/arch/x86/boot/bitops.h
@@ -13417,10 +13632,18 @@ index e5612f3..e755d05 100644
}
diff --git a/arch/x86/boot/compressed/Makefile b/arch/x86/boot/compressed/Makefile
-index 536ccfc..1295cc1f 100644
+index 34d9e15..c26e047 100644
--- a/arch/x86/boot/compressed/Makefile
+++ b/arch/x86/boot/compressed/Makefile
-@@ -35,6 +35,23 @@ KBUILD_CFLAGS += -mno-mmx -mno-sse
+@@ -18,6 +18,7 @@
+
+ KASAN_SANITIZE := n
+ OBJECT_FILES_NON_STANDARD := y
++GCC_PLUGINS := n
+
+ # Prevents link failures: __sanitizer_cov_trace_pc() is not linked in.
+ KCOV_INSTRUMENT := n
+@@ -35,6 +36,23 @@ KBUILD_CFLAGS += -mno-mmx -mno-sse
KBUILD_CFLAGS += $(call cc-option,-ffreestanding)
KBUILD_CFLAGS += $(call cc-option,-fno-stack-protector)
@@ -13486,6 +13709,16 @@ index a53440e..c3dbf1e 100644
ENDPROC(efi_call_phys)
.previous
+diff --git a/arch/x86/boot/compressed/efi_stub_64.S b/arch/x86/boot/compressed/efi_stub_64.S
+index 99494dff..7fa59bf 100644
+--- a/arch/x86/boot/compressed/efi_stub_64.S
++++ b/arch/x86/boot/compressed/efi_stub_64.S
+@@ -2,4 +2,5 @@
+ #include <asm/msr.h>
+ #include <asm/processor-flags.h>
+
++#define efi_call efi_call_early
+ #include "../../platform/efi/efi_stub_64.S"
diff --git a/arch/x86/boot/compressed/efi_thunk_64.S b/arch/x86/boot/compressed/efi_thunk_64.S
index 630384a..278e788 100644
--- a/arch/x86/boot/compressed/efi_thunk_64.S
@@ -13502,7 +13735,7 @@ index 630384a..278e788 100644
.quad 0x0000000000000000 /* TS continued */
efi_gdt64_end:
diff --git a/arch/x86/boot/compressed/head_32.S b/arch/x86/boot/compressed/head_32.S
-index 1038524..b6acc21 100644
+index fd0b6a2..7206864 100644
--- a/arch/x86/boot/compressed/head_32.S
+++ b/arch/x86/boot/compressed/head_32.S
@@ -169,10 +169,10 @@ preferred_addr:
@@ -13519,7 +13752,7 @@ index 1038524..b6acc21 100644
/* Target address to relocate to for decompression */
diff --git a/arch/x86/boot/compressed/head_64.S b/arch/x86/boot/compressed/head_64.S
-index 0d80a7a..ed3e0ff 100644
+index efdfba2..af6d962 100644
--- a/arch/x86/boot/compressed/head_64.S
+++ b/arch/x86/boot/compressed/head_64.S
@@ -103,10 +103,10 @@ ENTRY(startup_32)
@@ -13559,6 +13792,15 @@ index 0d80a7a..ed3e0ff 100644
.quad 0x0080890000000000 /* TS descriptor */
.quad 0x0000000000000000 /* TS continued */
gdt_end:
+@@ -465,7 +465,7 @@ efi32_config:
+ .global efi64_config
+ efi64_config:
+ .fill 4,8,0
+- .quad efi_call
++ .quad efi_call_early
+ .byte 1
+ #endif /* CONFIG_EFI_STUB */
+
diff --git a/arch/x86/boot/compressed/misc.c b/arch/x86/boot/compressed/misc.c
index b3c5a5f0..596115e 100644
--- a/arch/x86/boot/compressed/misc.c
@@ -13758,8 +14000,36 @@ index 77780e3..86be0cb 100644
int key;
unsigned int v;
+diff --git a/arch/x86/crypto/aes-i586-asm_32.S b/arch/x86/crypto/aes-i586-asm_32.S
+index 2849dbc..d7ff39c 100644
+--- a/arch/x86/crypto/aes-i586-asm_32.S
++++ b/arch/x86/crypto/aes-i586-asm_32.S
+@@ -38,6 +38,7 @@
+
+ #include <linux/linkage.h>
+ #include <asm/asm-offsets.h>
++#include <asm/alternative-asm.h>
+
+ #define tlen 1024 // length of each of 4 'xor' arrays (256 32-bit words)
+
+@@ -286,7 +287,7 @@ ENTRY(aes_enc_blk)
+ pop %ebx
+ mov %r0,(%ebp)
+ pop %ebp
+- ret
++ pax_ret aes_enc_blk
+ ENDPROC(aes_enc_blk)
+
+ // AES (Rijndael) Decryption Subroutine
+@@ -358,5 +359,5 @@ ENTRY(aes_dec_blk)
+ pop %ebx
+ mov %r0,(%ebp)
+ pop %ebp
+- ret
++ pax_ret aes_dec_blk
+ ENDPROC(aes_dec_blk)
diff --git a/arch/x86/crypto/aes-x86_64-asm_64.S b/arch/x86/crypto/aes-x86_64-asm_64.S
-index 9105655..41779c1 100644
+index 9105655..cf81747 100644
--- a/arch/x86/crypto/aes-x86_64-asm_64.S
+++ b/arch/x86/crypto/aes-x86_64-asm_64.S
@@ -8,6 +8,8 @@
@@ -13771,17 +14041,73 @@ index 9105655..41779c1 100644
.extern crypto_ft_tab
.extern crypto_it_tab
.extern crypto_fl_tab
-@@ -70,6 +72,8 @@
- je B192; \
- leaq 32(r9),r9;
+@@ -77,7 +79,7 @@
+ movl r6 ## E,4(r9); \
+ movl r7 ## E,8(r9); \
+ movl r8 ## E,12(r9); \
+- ret; \
++ pax_ret FUNC; \
+ ENDPROC(FUNC);
+
+ #define round(TAB,OFFSET,r1,r2,r3,r4,r5,r6,r7,r8,ra,rb,rc,rd) \
+diff --git a/arch/x86/crypto/aes_ctrby8_avx-x86_64.S b/arch/x86/crypto/aes_ctrby8_avx-x86_64.S
+index a916c4a..7e7b7cf 100644
+--- a/arch/x86/crypto/aes_ctrby8_avx-x86_64.S
++++ b/arch/x86/crypto/aes_ctrby8_avx-x86_64.S
+@@ -64,6 +64,7 @@
-+#define ret pax_force_retaddr; ret
-+
- #define epilogue(FUNC,r1,r2,r3,r4,r5,r6,r7,r8,r9) \
- movq r1,r2; \
- movq r3,r4; \
+ #include <linux/linkage.h>
+ #include <asm/inst.h>
++#include <asm/alternative-asm.h>
+
+ #define CONCAT(a,b) a##b
+ #define VMOVDQ vmovdqu
+@@ -436,7 +437,7 @@ ddq_add_8:
+
+ /* main body of aes ctr load */
+
+-.macro do_aes_ctrmain key_len
++.macro do_aes_ctrmain func key_len
+ cmp $16, num_bytes
+ jb .Ldo_return2\key_len
+
+@@ -537,7 +538,7 @@ ddq_add_8:
+ /* return updated IV */
+ vpshufb xbyteswap, xcounter, xcounter
+ vmovdqu xcounter, (p_iv)
+- ret
++ pax_ret \func
+ .endm
+
+ /*
+@@ -549,7 +550,7 @@ ddq_add_8:
+ */
+ ENTRY(aes_ctr_enc_128_avx_by8)
+ /* call the aes main loop */
+- do_aes_ctrmain KEY_128
++ do_aes_ctrmain aes_ctr_enc_128_avx_by8 KEY_128
+
+ ENDPROC(aes_ctr_enc_128_avx_by8)
+
+@@ -562,7 +563,7 @@ ENDPROC(aes_ctr_enc_128_avx_by8)
+ */
+ ENTRY(aes_ctr_enc_192_avx_by8)
+ /* call the aes main loop */
+- do_aes_ctrmain KEY_192
++ do_aes_ctrmain aes_ctr_enc_192_avx_by8 KEY_192
+
+ ENDPROC(aes_ctr_enc_192_avx_by8)
+
+@@ -575,6 +576,6 @@ ENDPROC(aes_ctr_enc_192_avx_by8)
+ */
+ ENTRY(aes_ctr_enc_256_avx_by8)
+ /* call the aes main loop */
+- do_aes_ctrmain KEY_256
++ do_aes_ctrmain aes_ctr_enc_256_avx_by8 KEY_256
+
+ ENDPROC(aes_ctr_enc_256_avx_by8)
diff --git a/arch/x86/crypto/aesni-intel_asm.S b/arch/x86/crypto/aesni-intel_asm.S
-index 383a6f8..a4db591 100644
+index 383a6f8..dc7f45d 100644
--- a/arch/x86/crypto/aesni-intel_asm.S
+++ b/arch/x86/crypto/aesni-intel_asm.S
@@ -32,6 +32,7 @@
@@ -13944,17 +14270,18 @@ index 383a6f8..a4db591 100644
shl $3, %arg4 # len(C) in bits (*128)
MOVQ_R64_XMM %arg4, %xmm1
pslldq $8, %xmm15 # %xmm15 = len(A)||0x0000000000000000
-@@ -1452,7 +1453,8 @@ _return_T_done_decrypt:
+@@ -1452,8 +1453,8 @@ _return_T_done_decrypt:
mov %r14, %rsp
pop %r14
pop %r13
- pop %r12
+- ret
+ pop %r15
-+ pax_force_retaddr
- ret
++ pax_ret aesni_gcm_dec
ENDPROC(aesni_gcm_dec)
-@@ -1540,8 +1542,8 @@ ENDPROC(aesni_gcm_dec)
+
+@@ -1540,8 +1541,8 @@ ENDPROC(aesni_gcm_dec)
*
* poly = x^128 + x^127 + x^126 + x^121 + 1
***************************************************************************/
@@ -13965,7 +14292,7 @@ index 383a6f8..a4db591 100644
push %r13
push %r14
mov %rsp, %r14
-@@ -1551,8 +1553,8 @@ ENTRY(aesni_gcm_enc)
+@@ -1551,8 +1552,8 @@ ENTRY(aesni_gcm_enc)
#
sub $VARIABLE_OFFSET, %rsp
and $~63, %rsp
@@ -13976,7 +14303,7 @@ index 383a6f8..a4db591 100644
movdqa SHUF_MASK(%rip), %xmm2
PSHUFB_XMM %xmm2, %xmm13
-@@ -1576,13 +1578,13 @@ ENTRY(aesni_gcm_enc)
+@@ -1576,13 +1577,13 @@ ENTRY(aesni_gcm_enc)
movdqa %xmm13, HashKey(%rsp)
mov %arg4, %r13 # %xmm13 holds HashKey<<1 (mod poly)
and $-16, %r13
@@ -13993,7 +14320,7 @@ index 383a6f8..a4db591 100644
jb _initial_num_blocks_is_1_encrypt
je _initial_num_blocks_is_2_encrypt
_initial_num_blocks_is_3_encrypt:
-@@ -1635,14 +1637,14 @@ _zero_cipher_left_encrypt:
+@@ -1635,14 +1636,14 @@ _zero_cipher_left_encrypt:
sub $16, %r11
add %r13, %r11
movdqu (%arg3,%r11,1), %xmm1 # receive the last <16 byte blocks
@@ -14012,7 +14339,7 @@ index 383a6f8..a4db591 100644
# get the appropriate mask to mask out top 16-r13 bytes of xmm0
pand %xmm1, %xmm0 # mask out top 16-r13 bytes of xmm0
movdqa SHUF_MASK(%rip), %xmm10
-@@ -1675,9 +1677,9 @@ _less_than_8_bytes_left_encrypt:
+@@ -1675,9 +1676,9 @@ _less_than_8_bytes_left_encrypt:
sub $1, %r13
jne _less_than_8_bytes_left_encrypt
_multiple_of_16_bytes_encrypt:
@@ -14025,54 +14352,163 @@ index 383a6f8..a4db591 100644
shl $3, %arg4 # len(C) in bits (*128)
MOVQ_R64_XMM %arg4, %xmm1
pslldq $8, %xmm15 # %xmm15 = len(A)||0x0000000000000000
-@@ -1716,7 +1718,8 @@ _return_T_done_encrypt:
+@@ -1716,8 +1717,8 @@ _return_T_done_encrypt:
mov %r14, %rsp
pop %r14
pop %r13
- pop %r12
+- ret
+ pop %r15
-+ pax_force_retaddr
- ret
++ pax_ret aesni_gcm_enc
ENDPROC(aesni_gcm_enc)
-@@ -1734,6 +1737,7 @@ _key_expansion_256a:
+ #endif
+@@ -1734,7 +1735,7 @@ _key_expansion_256a:
pxor %xmm1, %xmm0
movaps %xmm0, (TKEYP)
add $0x10, TKEYP
-+ pax_force_retaddr
- ret
+- ret
++ pax_ret _key_expansion_128
ENDPROC(_key_expansion_128)
ENDPROC(_key_expansion_256a)
-@@ -1760,6 +1764,7 @@ _key_expansion_192a:
+
+@@ -1760,7 +1761,7 @@ _key_expansion_192a:
shufps $0b01001110, %xmm2, %xmm1
movaps %xmm1, 0x10(TKEYP)
add $0x20, TKEYP
-+ pax_force_retaddr
- ret
+- ret
++ pax_ret _key_expansion_192a
ENDPROC(_key_expansion_192a)
-@@ -1780,6 +1785,7 @@ _key_expansion_192b:
+ .align 4
+@@ -1780,7 +1781,7 @@ _key_expansion_192b:
movaps %xmm0, (TKEYP)
add $0x10, TKEYP
-+ pax_force_retaddr
- ret
+- ret
++ pax_ret _key_expansion_192b
ENDPROC(_key_expansion_192b)
-@@ -1793,6 +1799,7 @@ _key_expansion_256b:
+ .align 4
+@@ -1793,7 +1794,7 @@ _key_expansion_256b:
pxor %xmm1, %xmm2
movaps %xmm2, (TKEYP)
add $0x10, TKEYP
-+ pax_force_retaddr
- ret
+- ret
++ pax_ret _key_expansion_256b
ENDPROC(_key_expansion_256b)
-@@ -1908,13 +1915,14 @@ ENTRY(aesni_set_key)
+ /*
+@@ -1820,72 +1821,72 @@ ENTRY(aesni_set_key)
+ movaps %xmm2, (TKEYP)
+ add $0x10, TKEYP
+ AESKEYGENASSIST 0x1 %xmm2 %xmm1 # round 1
+- call _key_expansion_256a
++ pax_direct_call _key_expansion_256a
+ AESKEYGENASSIST 0x1 %xmm0 %xmm1
+- call _key_expansion_256b
++ pax_direct_call _key_expansion_256b
+ AESKEYGENASSIST 0x2 %xmm2 %xmm1 # round 2
+- call _key_expansion_256a
++ pax_direct_call _key_expansion_256a
+ AESKEYGENASSIST 0x2 %xmm0 %xmm1
+- call _key_expansion_256b
++ pax_direct_call _key_expansion_256b
+ AESKEYGENASSIST 0x4 %xmm2 %xmm1 # round 3
+- call _key_expansion_256a
++ pax_direct_call _key_expansion_256a
+ AESKEYGENASSIST 0x4 %xmm0 %xmm1
+- call _key_expansion_256b
++ pax_direct_call _key_expansion_256b
+ AESKEYGENASSIST 0x8 %xmm2 %xmm1 # round 4
+- call _key_expansion_256a
++ pax_direct_call _key_expansion_256a
+ AESKEYGENASSIST 0x8 %xmm0 %xmm1
+- call _key_expansion_256b
++ pax_direct_call _key_expansion_256b
+ AESKEYGENASSIST 0x10 %xmm2 %xmm1 # round 5
+- call _key_expansion_256a
++ pax_direct_call _key_expansion_256a
+ AESKEYGENASSIST 0x10 %xmm0 %xmm1
+- call _key_expansion_256b
++ pax_direct_call _key_expansion_256b
+ AESKEYGENASSIST 0x20 %xmm2 %xmm1 # round 6
+- call _key_expansion_256a
++ pax_direct_call _key_expansion_256a
+ AESKEYGENASSIST 0x20 %xmm0 %xmm1
+- call _key_expansion_256b
++ pax_direct_call _key_expansion_256b
+ AESKEYGENASSIST 0x40 %xmm2 %xmm1 # round 7
+- call _key_expansion_256a
++ pax_direct_call _key_expansion_256a
+ jmp .Ldec_key
+ .Lenc_key192:
+ movq 0x10(UKEYP), %xmm2 # other user key
+ AESKEYGENASSIST 0x1 %xmm2 %xmm1 # round 1
+- call _key_expansion_192a
++ pax_direct_call _key_expansion_192a
+ AESKEYGENASSIST 0x2 %xmm2 %xmm1 # round 2
+- call _key_expansion_192b
++ pax_direct_call _key_expansion_192b
+ AESKEYGENASSIST 0x4 %xmm2 %xmm1 # round 3
+- call _key_expansion_192a
++ pax_direct_call _key_expansion_192a
+ AESKEYGENASSIST 0x8 %xmm2 %xmm1 # round 4
+- call _key_expansion_192b
++ pax_direct_call _key_expansion_192b
+ AESKEYGENASSIST 0x10 %xmm2 %xmm1 # round 5
+- call _key_expansion_192a
++ pax_direct_call _key_expansion_192a
+ AESKEYGENASSIST 0x20 %xmm2 %xmm1 # round 6
+- call _key_expansion_192b
++ pax_direct_call _key_expansion_192b
+ AESKEYGENASSIST 0x40 %xmm2 %xmm1 # round 7
+- call _key_expansion_192a
++ pax_direct_call _key_expansion_192a
+ AESKEYGENASSIST 0x80 %xmm2 %xmm1 # round 8
+- call _key_expansion_192b
++ pax_direct_call _key_expansion_192b
+ jmp .Ldec_key
+ .Lenc_key128:
+ AESKEYGENASSIST 0x1 %xmm0 %xmm1 # round 1
+- call _key_expansion_128
++ pax_direct_call _key_expansion_128
+ AESKEYGENASSIST 0x2 %xmm0 %xmm1 # round 2
+- call _key_expansion_128
++ pax_direct_call _key_expansion_128
+ AESKEYGENASSIST 0x4 %xmm0 %xmm1 # round 3
+- call _key_expansion_128
++ pax_direct_call _key_expansion_128
+ AESKEYGENASSIST 0x8 %xmm0 %xmm1 # round 4
+- call _key_expansion_128
++ pax_direct_call _key_expansion_128
+ AESKEYGENASSIST 0x10 %xmm0 %xmm1 # round 5
+- call _key_expansion_128
++ pax_direct_call _key_expansion_128
+ AESKEYGENASSIST 0x20 %xmm0 %xmm1 # round 6
+- call _key_expansion_128
++ pax_direct_call _key_expansion_128
+ AESKEYGENASSIST 0x40 %xmm0 %xmm1 # round 7
+- call _key_expansion_128
++ pax_direct_call _key_expansion_128
+ AESKEYGENASSIST 0x80 %xmm0 %xmm1 # round 8
+- call _key_expansion_128
++ pax_direct_call _key_expansion_128
+ AESKEYGENASSIST 0x1b %xmm0 %xmm1 # round 9
+- call _key_expansion_128
++ pax_direct_call _key_expansion_128
+ AESKEYGENASSIST 0x36 %xmm0 %xmm1 # round 10
+- call _key_expansion_128
++ pax_direct_call _key_expansion_128
+ .Ldec_key:
+ sub $0x10, TKEYP
+ movaps (KEYP), %xmm0
+@@ -1908,13 +1909,13 @@ ENTRY(aesni_set_key)
popl KEYP
#endif
FRAME_END
-+ pax_force_retaddr
- ret
+- ret
++ pax_ret aesni_set_key
ENDPROC(aesni_set_key)
/*
@@ -14083,28 +14519,38 @@ index 383a6f8..a4db591 100644
FRAME_BEGIN
#ifndef __x86_64__
pushl KEYP
-@@ -1932,6 +1940,7 @@ ENTRY(aesni_enc)
+@@ -1925,14 +1926,14 @@ ENTRY(aesni_enc)
+ #endif
+ movl 480(KEYP), KLEN # key length
+ movups (INP), STATE # input
+- call _aesni_enc1
++ pax_direct_call _aesni_enc1
+ movups STATE, (OUTP) # output
+ #ifndef __x86_64__
+ popl KLEN
popl KEYP
#endif
FRAME_END
-+ pax_force_retaddr
- ret
+- ret
++ pax_ret aesni_enc
ENDPROC(aesni_enc)
-@@ -1990,6 +1999,7 @@ _aesni_enc1:
+ /*
+@@ -1990,7 +1991,7 @@ _aesni_enc1:
AESENC KEY STATE
movaps 0x70(TKEYP), KEY
AESENCLAST KEY STATE
-+ pax_force_retaddr
- ret
+- ret
++ pax_ret _aesni_enc1
ENDPROC(_aesni_enc1)
-@@ -2099,13 +2109,14 @@ _aesni_enc4:
+ /*
+@@ -2099,13 +2100,13 @@ _aesni_enc4:
AESENCLAST KEY STATE2
AESENCLAST KEY STATE3
AESENCLAST KEY STATE4
-+ pax_force_retaddr
- ret
+- ret
++ pax_ret _aesni_enc4
ENDPROC(_aesni_enc4)
/*
@@ -14115,79 +14561,158 @@ index 383a6f8..a4db591 100644
FRAME_BEGIN
#ifndef __x86_64__
pushl KEYP
-@@ -2124,6 +2135,7 @@ ENTRY(aesni_dec)
+@@ -2117,14 +2118,14 @@ ENTRY(aesni_dec)
+ mov 480(KEYP), KLEN # key length
+ add $240, KEYP
+ movups (INP), STATE # input
+- call _aesni_dec1
++ pax_direct_call _aesni_dec1
+ movups STATE, (OUTP) #output
+ #ifndef __x86_64__
+ popl KLEN
popl KEYP
#endif
FRAME_END
-+ pax_force_retaddr
- ret
+- ret
++ pax_ret aesni_dec
ENDPROC(aesni_dec)
-@@ -2182,6 +2194,7 @@ _aesni_dec1:
+ /*
+@@ -2182,7 +2183,7 @@ _aesni_dec1:
AESDEC KEY STATE
movaps 0x70(TKEYP), KEY
AESDECLAST KEY STATE
-+ pax_force_retaddr
- ret
+- ret
++ pax_ret _aesni_dec1
ENDPROC(_aesni_dec1)
-@@ -2291,6 +2304,7 @@ _aesni_dec4:
+ /*
+@@ -2291,7 +2292,7 @@ _aesni_dec4:
AESDECLAST KEY STATE2
AESDECLAST KEY STATE3
AESDECLAST KEY STATE4
-+ pax_force_retaddr
- ret
+- ret
++ pax_ret _aesni_dec4
ENDPROC(_aesni_dec4)
-@@ -2351,6 +2365,7 @@ ENTRY(aesni_ecb_enc)
+ /*
+@@ -2322,7 +2323,7 @@ ENTRY(aesni_ecb_enc)
+ movups 0x10(INP), STATE2
+ movups 0x20(INP), STATE3
+ movups 0x30(INP), STATE4
+- call _aesni_enc4
++ pax_direct_call _aesni_enc4
+ movups STATE1, (OUTP)
+ movups STATE2, 0x10(OUTP)
+ movups STATE3, 0x20(OUTP)
+@@ -2337,7 +2338,7 @@ ENTRY(aesni_ecb_enc)
+ .align 4
+ .Lecb_enc_loop1:
+ movups (INP), STATE1
+- call _aesni_enc1
++ pax_direct_call _aesni_enc1
+ movups STATE1, (OUTP)
+ sub $16, LEN
+ add $16, INP
+@@ -2351,7 +2352,7 @@ ENTRY(aesni_ecb_enc)
popl LEN
#endif
FRAME_END
-+ pax_force_retaddr
- ret
+- ret
++ pax_ret aesni_ecb_enc
ENDPROC(aesni_ecb_enc)
-@@ -2412,6 +2427,7 @@ ENTRY(aesni_ecb_dec)
+ /*
+@@ -2383,7 +2384,7 @@ ENTRY(aesni_ecb_dec)
+ movups 0x10(INP), STATE2
+ movups 0x20(INP), STATE3
+ movups 0x30(INP), STATE4
+- call _aesni_dec4
++ pax_direct_call _aesni_dec4
+ movups STATE1, (OUTP)
+ movups STATE2, 0x10(OUTP)
+ movups STATE3, 0x20(OUTP)
+@@ -2398,7 +2399,7 @@ ENTRY(aesni_ecb_dec)
+ .align 4
+ .Lecb_dec_loop1:
+ movups (INP), STATE1
+- call _aesni_dec1
++ pax_direct_call _aesni_dec1
+ movups STATE1, (OUTP)
+ sub $16, LEN
+ add $16, INP
+@@ -2412,7 +2413,7 @@ ENTRY(aesni_ecb_dec)
popl LEN
#endif
FRAME_END
-+ pax_force_retaddr
- ret
+- ret
++ pax_ret aesni_ecb_dec
ENDPROC(aesni_ecb_dec)
-@@ -2456,6 +2472,7 @@ ENTRY(aesni_cbc_enc)
+ /*
+@@ -2440,7 +2441,7 @@ ENTRY(aesni_cbc_enc)
+ .Lcbc_enc_loop:
+ movups (INP), IN # load input
+ pxor IN, STATE
+- call _aesni_enc1
++ pax_direct_call _aesni_enc1
+ movups STATE, (OUTP) # store output
+ sub $16, LEN
+ add $16, INP
+@@ -2456,7 +2457,7 @@ ENTRY(aesni_cbc_enc)
popl IVP
#endif
FRAME_END
-+ pax_force_retaddr
- ret
+- ret
++ pax_ret aesni_cbc_enc
ENDPROC(aesni_cbc_enc)
-@@ -2549,6 +2566,7 @@ ENTRY(aesni_cbc_dec)
+ /*
+@@ -2500,7 +2501,7 @@ ENTRY(aesni_cbc_dec)
+ movups 0x30(INP), IN2
+ movaps IN2, STATE4
+ #endif
+- call _aesni_dec4
++ pax_direct_call _aesni_dec4
+ pxor IV, STATE1
+ #ifdef __x86_64__
+ pxor IN1, STATE2
+@@ -2530,7 +2531,7 @@ ENTRY(aesni_cbc_dec)
+ .Lcbc_dec_loop1:
+ movups (INP), IN
+ movaps IN, STATE
+- call _aesni_dec1
++ pax_direct_call _aesni_dec1
+ pxor IV, STATE
+ movups STATE, (OUTP)
+ movaps IN, IV
+@@ -2549,7 +2550,7 @@ ENTRY(aesni_cbc_dec)
popl IVP
#endif
FRAME_END
-+ pax_force_retaddr
- ret
+- ret
++ pax_ret aesni_cbc_dec
ENDPROC(aesni_cbc_dec)
-@@ -2578,6 +2596,7 @@ _aesni_inc_init:
+ #ifdef __x86_64__
+@@ -2578,7 +2579,7 @@ _aesni_inc_init:
mov $1, TCTR_LOW
MOVQ_R64_XMM TCTR_LOW INC
MOVQ_R64_XMM CTR TCTR_LOW
-+ pax_force_retaddr
- ret
+- ret
++ pax_ret _aesni_inc_init
ENDPROC(_aesni_inc_init)
-@@ -2607,6 +2626,7 @@ _aesni_inc:
+ /*
+@@ -2607,37 +2608,37 @@ _aesni_inc:
.Linc_low:
movaps CTR, IV
PSHUFB_XMM BSWAP_MASK IV
-+ pax_force_retaddr
- ret
+- ret
++ pax_ret _aesni_inc
ENDPROC(_aesni_inc)
-@@ -2614,7 +2634,7 @@ ENDPROC(_aesni_inc)
+ /*
* void aesni_ctr_enc(struct crypto_aes_ctx *ctx, const u8 *dst, u8 *src,
* size_t len, u8 *iv)
*/
@@ -14196,24 +14721,151 @@ index 383a6f8..a4db591 100644
FRAME_BEGIN
cmp $16, LEN
jb .Lctr_enc_just_ret
-@@ -2670,6 +2690,7 @@ ENTRY(aesni_ctr_enc)
+ mov 480(KEYP), KLEN
+ movups (IVP), IV
+- call _aesni_inc_init
++ pax_direct_call _aesni_inc_init
+ cmp $64, LEN
+ jb .Lctr_enc_loop1
+ .align 4
+ .Lctr_enc_loop4:
+ movaps IV, STATE1
+- call _aesni_inc
++ pax_direct_call _aesni_inc
+ movups (INP), IN1
+ movaps IV, STATE2
+- call _aesni_inc
++ pax_direct_call _aesni_inc
+ movups 0x10(INP), IN2
+ movaps IV, STATE3
+- call _aesni_inc
++ pax_direct_call _aesni_inc
+ movups 0x20(INP), IN3
+ movaps IV, STATE4
+- call _aesni_inc
++ pax_direct_call _aesni_inc
+ movups 0x30(INP), IN4
+- call _aesni_enc4
++ pax_direct_call _aesni_enc4
+ pxor IN1, STATE1
+ movups STATE1, (OUTP)
+ pxor IN2, STATE2
+@@ -2656,9 +2657,9 @@ ENTRY(aesni_ctr_enc)
+ .align 4
+ .Lctr_enc_loop1:
+ movaps IV, STATE
+- call _aesni_inc
++ pax_direct_call _aesni_inc
+ movups (INP), IN
+- call _aesni_enc1
++ pax_direct_call _aesni_enc1
+ pxor IN, STATE
+ movups STATE, (OUTP)
+ sub $16, LEN
+@@ -2670,7 +2671,7 @@ ENTRY(aesni_ctr_enc)
movups IV, (IVP)
.Lctr_enc_just_ret:
FRAME_END
-+ pax_force_retaddr
- ret
+- ret
++ pax_ret aesni_ctr_enc
ENDPROC(aesni_ctr_enc)
-@@ -2798,6 +2819,7 @@ ENTRY(aesni_xts_crypt8)
+ /*
+@@ -2734,7 +2735,7 @@ ENTRY(aesni_xts_crypt8)
+ pxor INC, STATE4
+ movdqu IV, 0x30(OUTP)
+
+- call *%r11
++ pax_indirect_call "%r11", _aesni_enc4
+
+ movdqu 0x00(OUTP), INC
+ pxor INC, STATE1
+@@ -2779,7 +2780,7 @@ ENTRY(aesni_xts_crypt8)
+ _aesni_gf128mul_x_ble()
+ movups IV, (IVP)
+
+- call *%r11
++ pax_indirect_call "%r11", _aesni_enc4
+
+ movdqu 0x40(OUTP), INC
+ pxor INC, STATE1
+@@ -2798,7 +2799,7 @@ ENTRY(aesni_xts_crypt8)
movdqu STATE4, 0x70(OUTP)
FRAME_END
-+ pax_force_retaddr
- ret
+- ret
++ pax_ret aesni_xts_crypt8
ENDPROC(aesni_xts_crypt8)
+ #endif
+diff --git a/arch/x86/crypto/aesni-intel_avx-x86_64.S b/arch/x86/crypto/aesni-intel_avx-x86_64.S
+index 522ab68..782ae42 100644
+--- a/arch/x86/crypto/aesni-intel_avx-x86_64.S
++++ b/arch/x86/crypto/aesni-intel_avx-x86_64.S
+@@ -121,6 +121,7 @@
+
+ #include <linux/linkage.h>
+ #include <asm/inst.h>
++#include <asm/alternative-asm.h>
+
+ .data
+ .align 16
+@@ -1486,7 +1487,7 @@ ENTRY(aesni_gcm_precomp_avx_gen2)
+ pop %r14
+ pop %r13
+ pop %r12
+- ret
++ pax_ret aesni_gcm_precomp_avx_gen2
+ ENDPROC(aesni_gcm_precomp_avx_gen2)
+
+ ###############################################################################
+@@ -1507,7 +1508,7 @@ ENDPROC(aesni_gcm_precomp_avx_gen2)
+ ###############################################################################
+ ENTRY(aesni_gcm_enc_avx_gen2)
+ GCM_ENC_DEC_AVX ENC
+- ret
++ pax_ret aesni_gcm_enc_avx_gen2
+ ENDPROC(aesni_gcm_enc_avx_gen2)
+
+ ###############################################################################
+@@ -1528,7 +1529,7 @@ ENDPROC(aesni_gcm_enc_avx_gen2)
+ ###############################################################################
+ ENTRY(aesni_gcm_dec_avx_gen2)
+ GCM_ENC_DEC_AVX DEC
+- ret
++ pax_ret aesni_gcm_dec_avx_gen2
+ ENDPROC(aesni_gcm_dec_avx_gen2)
+ #endif /* CONFIG_AS_AVX */
+
+@@ -2762,7 +2763,7 @@ ENTRY(aesni_gcm_precomp_avx_gen4)
+ pop %r14
+ pop %r13
+ pop %r12
+- ret
++ pax_ret aesni_gcm_precomp_avx_gen4
+ ENDPROC(aesni_gcm_precomp_avx_gen4)
+
+
+@@ -2784,7 +2785,7 @@ ENDPROC(aesni_gcm_precomp_avx_gen4)
+ ###############################################################################
+ ENTRY(aesni_gcm_enc_avx_gen4)
+ GCM_ENC_DEC_AVX2 ENC
+- ret
++ pax_ret aesni_gcm_enc_avx_gen4
+ ENDPROC(aesni_gcm_enc_avx_gen4)
+
+ ###############################################################################
+@@ -2805,7 +2806,7 @@ ENDPROC(aesni_gcm_enc_avx_gen4)
+ ###############################################################################
+ ENTRY(aesni_gcm_dec_avx_gen4)
+ GCM_ENC_DEC_AVX2 DEC
+- ret
++ pax_ret aesni_gcm_dec_avx_gen4
+ ENDPROC(aesni_gcm_dec_avx_gen4)
+
+ #endif /* CONFIG_AS_AVX2 */
diff --git a/arch/x86/crypto/aesni-intel_glue.c b/arch/x86/crypto/aesni-intel_glue.c
-index 0ab5ee1..a5d431f 100644
+index aa8b067..f9da224 100644
--- a/arch/x86/crypto/aesni-intel_glue.c
+++ b/arch/x86/crypto/aesni-intel_glue.c
@@ -71,9 +71,9 @@ struct aesni_xts_ctx {
@@ -14228,8 +14880,33 @@ index 0ab5ee1..a5d431f 100644
const u8 *in);
asmlinkage void aesni_ecb_enc(struct crypto_aes_ctx *ctx, u8 *out,
const u8 *in, unsigned int len);
+@@ -83,6 +83,15 @@ asmlinkage void aesni_cbc_enc(struct crypto_aes_ctx *ctx, u8 *out,
+ const u8 *in, unsigned int len, u8 *iv);
+ asmlinkage void aesni_cbc_dec(struct crypto_aes_ctx *ctx, u8 *out,
+ const u8 *in, unsigned int len, u8 *iv);
++int _key_expansion_128(struct crypto_aes_ctx *ctx, const u8 *in_key, unsigned int key_len) __rap_hash;
++int _key_expansion_192a(struct crypto_aes_ctx *ctx, const u8 *in_key, unsigned int key_len) __rap_hash;
++int _key_expansion_192b(struct crypto_aes_ctx *ctx, const u8 *in_key, unsigned int key_len) __rap_hash;
++int _key_expansion_256a(struct crypto_aes_ctx *ctx, const u8 *in_key, unsigned int key_len) __rap_hash;
++int _key_expansion_256b(struct crypto_aes_ctx *ctx, const u8 *in_key, unsigned int key_len) __rap_hash;
++void _aesni_enc1(void *ctx, u8 *out, const u8 *in) __rap_hash;
++void _aesni_enc4(void *ctx, u8 *out, const u8 *in) __rap_hash;
++void _aesni_dec1(void *ctx, u8 *out, const u8 *in) __rap_hash;
++void _aesni_dec4(void *ctx, u8 *out, const u8 *in) __rap_hash;
+
+ int crypto_fpu_init(void);
+ void crypto_fpu_exit(void);
+@@ -96,6 +105,8 @@ static void (*aesni_ctr_enc_tfm)(struct crypto_aes_ctx *ctx, u8 *out,
+ const u8 *in, unsigned int len, u8 *iv);
+ asmlinkage void aesni_ctr_enc(struct crypto_aes_ctx *ctx, u8 *out,
+ const u8 *in, unsigned int len, u8 *iv);
++void _aesni_inc(struct crypto_aes_ctx *ctx, u8 *out, const u8 *in, unsigned int len, u8 *iv) __rap_hash;
++void _aesni_inc_init(struct crypto_aes_ctx *ctx, u8 *out, const u8 *in, unsigned int len, u8 *iv) __rap_hash;
+
+ asmlinkage void aesni_xts_crypt8(struct crypto_aes_ctx *ctx, u8 *out,
+ const u8 *in, bool enc, u8 *iv);
diff --git a/arch/x86/crypto/blowfish-x86_64-asm_64.S b/arch/x86/crypto/blowfish-x86_64-asm_64.S
-index 246c670..4fb7603 100644
+index 246c670..d4e1aa5 100644
--- a/arch/x86/crypto/blowfish-x86_64-asm_64.S
+++ b/arch/x86/crypto/blowfish-x86_64-asm_64.S
@@ -21,6 +21,7 @@
@@ -14240,16 +14917,16 @@ index 246c670..4fb7603 100644
.file "blowfish-x86_64-asm.S"
.text
-@@ -149,13 +150,15 @@ ENTRY(__blowfish_enc_blk)
+@@ -149,13 +150,13 @@ ENTRY(__blowfish_enc_blk)
jnz .L__enc_xor;
write_block();
-+ pax_force_retaddr
- ret;
+- ret;
++ pax_ret __blowfish_enc_blk;
.L__enc_xor:
xor_block();
-+ pax_force_retaddr
- ret;
+- ret;
++ pax_ret __blowfish_enc_blk;
ENDPROC(__blowfish_enc_blk)
-ENTRY(blowfish_dec_blk)
@@ -14257,28 +14934,29 @@ index 246c670..4fb7603 100644
/* input:
* %rdi: ctx, CTX
* %rsi: dst
-@@ -183,6 +186,7 @@ ENTRY(blowfish_dec_blk)
+@@ -183,7 +184,7 @@ ENTRY(blowfish_dec_blk)
movq %r11, %rbp;
-+ pax_force_retaddr
- ret;
+- ret;
++ pax_ret blowfish_dec_blk;
ENDPROC(blowfish_dec_blk)
-@@ -334,6 +338,7 @@ ENTRY(__blowfish_enc_blk_4way)
+ /**********************************************************************
+@@ -334,17 +335,17 @@ ENTRY(__blowfish_enc_blk_4way)
popq %rbx;
popq %rbp;
-+ pax_force_retaddr
- ret;
+- ret;
++ pax_ret __blowfish_enc_blk_4way;
.L__enc_xor4:
-@@ -341,10 +346,11 @@ ENTRY(__blowfish_enc_blk_4way)
+ xor_block4();
popq %rbx;
popq %rbp;
-+ pax_force_retaddr
- ret;
+- ret;
++ pax_ret __blowfish_enc_blk_4way;
ENDPROC(__blowfish_enc_blk_4way)
-ENTRY(blowfish_dec_blk_4way)
@@ -14286,15 +14964,15 @@ index 246c670..4fb7603 100644
/* input:
* %rdi: ctx, CTX
* %rsi: dst
-@@ -375,5 +381,6 @@ ENTRY(blowfish_dec_blk_4way)
+@@ -375,5 +376,5 @@ ENTRY(blowfish_dec_blk_4way)
popq %rbx;
popq %rbp;
-+ pax_force_retaddr
- ret;
+- ret;
++ pax_ret blowfish_dec_blk_4way;
ENDPROC(blowfish_dec_blk_4way)
diff --git a/arch/x86/crypto/camellia-aesni-avx-asm_64.S b/arch/x86/crypto/camellia-aesni-avx-asm_64.S
-index aa9e8bd..0b8def4 100644
+index aa9e8bd..7e68f75 100644
--- a/arch/x86/crypto/camellia-aesni-avx-asm_64.S
+++ b/arch/x86/crypto/camellia-aesni-avx-asm_64.S
@@ -17,6 +17,7 @@
@@ -14305,39 +14983,61 @@ index aa9e8bd..0b8def4 100644
#define CAMELLIA_TABLE_BYTE_LEN 272
-@@ -192,6 +193,7 @@ roundsm16_x0_x1_x2_x3_x4_x5_x6_x7_y0_y1_y2_y3_y4_y5_y6_y7_cd:
+@@ -192,7 +193,7 @@ roundsm16_x0_x1_x2_x3_x4_x5_x6_x7_y0_y1_y2_y3_y4_y5_y6_y7_cd:
roundsm16(%xmm0, %xmm1, %xmm2, %xmm3, %xmm4, %xmm5, %xmm6, %xmm7,
%xmm8, %xmm9, %xmm10, %xmm11, %xmm12, %xmm13, %xmm14, %xmm15,
%rcx, (%r9));
-+ pax_force_retaddr
- ret;
+- ret;
++ pax_ret roundsm16_x0_x1_x2_x3_x4_x5_x6_x7_y0_y1_y2_y3_y4_y5_y6_y7_cd;
ENDPROC(roundsm16_x0_x1_x2_x3_x4_x5_x6_x7_y0_y1_y2_y3_y4_y5_y6_y7_cd)
-@@ -200,6 +202,7 @@ roundsm16_x4_x5_x6_x7_x0_x1_x2_x3_y4_y5_y6_y7_y0_y1_y2_y3_ab:
+ .align 8
+@@ -200,7 +201,7 @@ roundsm16_x4_x5_x6_x7_x0_x1_x2_x3_y4_y5_y6_y7_y0_y1_y2_y3_ab:
roundsm16(%xmm4, %xmm5, %xmm6, %xmm7, %xmm0, %xmm1, %xmm2, %xmm3,
%xmm12, %xmm13, %xmm14, %xmm15, %xmm8, %xmm9, %xmm10, %xmm11,
%rax, (%r9));
-+ pax_force_retaddr
- ret;
+- ret;
++ pax_ret roundsm16_x4_x5_x6_x7_x0_x1_x2_x3_y4_y5_y6_y7_y0_y1_y2_y3_ab;
ENDPROC(roundsm16_x4_x5_x6_x7_x0_x1_x2_x3_y4_y5_y6_y7_y0_y1_y2_y3_ab)
-@@ -783,6 +786,7 @@ __camellia_enc_blk16:
+ /*
+@@ -212,7 +213,7 @@ ENDPROC(roundsm16_x4_x5_x6_x7_x0_x1_x2_x3_y4_y5_y6_y7_y0_y1_y2_y3_ab)
+ #define two_roundsm16(x0, x1, x2, x3, x4, x5, x6, x7, y0, y1, y2, y3, y4, y5, \
+ y6, y7, mem_ab, mem_cd, i, dir, store_ab) \
+ leaq (key_table + (i) * 8)(CTX), %r9; \
+- call roundsm16_x0_x1_x2_x3_x4_x5_x6_x7_y0_y1_y2_y3_y4_y5_y6_y7_cd; \
++ pax_direct_call roundsm16_x0_x1_x2_x3_x4_x5_x6_x7_y0_y1_y2_y3_y4_y5_y6_y7_cd; \
+ \
+ vmovdqu x4, 0 * 16(mem_cd); \
+ vmovdqu x5, 1 * 16(mem_cd); \
+@@ -224,7 +225,7 @@ ENDPROC(roundsm16_x4_x5_x6_x7_x0_x1_x2_x3_y4_y5_y6_y7_y0_y1_y2_y3_ab)
+ vmovdqu x3, 7 * 16(mem_cd); \
+ \
+ leaq (key_table + ((i) + (dir)) * 8)(CTX), %r9; \
+- call roundsm16_x4_x5_x6_x7_x0_x1_x2_x3_y4_y5_y6_y7_y0_y1_y2_y3_ab; \
++ pax_direct_call roundsm16_x4_x5_x6_x7_x0_x1_x2_x3_y4_y5_y6_y7_y0_y1_y2_y3_ab; \
+ \
+ store_ab(x0, x1, x2, x3, x4, x5, x6, x7, mem_ab);
+
+@@ -783,7 +784,7 @@ __camellia_enc_blk16:
%xmm15, (key_table)(CTX, %r8, 8), (%rax), 1 * 16(%rax));
FRAME_END
-+ pax_force_retaddr
- ret;
+- ret;
++ pax_ret camellia_xts_enc_16way;
.align 8
-@@ -870,6 +874,7 @@ __camellia_dec_blk16:
+ .Lenc_max32:
+@@ -870,7 +871,7 @@ __camellia_dec_blk16:
%xmm15, (key_table)(CTX), (%rax), 1 * 16(%rax));
FRAME_END
-+ pax_force_retaddr
- ret;
+- ret;
++ pax_ret camellia_xts_dec_16way;
.align 8
-@@ -889,7 +894,7 @@ __camellia_dec_blk16:
+ .Ldec_max32:
+@@ -889,7 +890,7 @@ __camellia_dec_blk16:
jmp .Ldec_max24;
ENDPROC(__camellia_dec_blk16)
@@ -14346,12 +15046,20 @@ index aa9e8bd..0b8def4 100644
/* input:
* %rdi: ctx, CTX
* %rsi: dst (16 blocks)
-@@ -911,10 +916,11 @@ ENTRY(camellia_ecb_enc_16way)
+@@ -904,17 +905,17 @@ ENTRY(camellia_ecb_enc_16way)
+ /* now dst can be used as temporary buffer (even in src == dst case) */
+ movq %rsi, %rax;
+
+- call __camellia_enc_blk16;
++ pax_direct_call __camellia_enc_blk16;
+
+ write_output(%xmm7, %xmm6, %xmm5, %xmm4, %xmm3, %xmm2, %xmm1, %xmm0,
+ %xmm15, %xmm14, %xmm13, %xmm12, %xmm11, %xmm10, %xmm9,
%xmm8, %rsi);
FRAME_END
-+ pax_force_retaddr
- ret;
+- ret;
++ pax_ret camellia_ecb_enc_16way;
ENDPROC(camellia_ecb_enc_16way)
-ENTRY(camellia_ecb_dec_16way)
@@ -14359,12 +15067,20 @@ index aa9e8bd..0b8def4 100644
/* input:
* %rdi: ctx, CTX
* %rsi: dst (16 blocks)
-@@ -941,10 +947,11 @@ ENTRY(camellia_ecb_dec_16way)
+@@ -934,17 +935,17 @@ ENTRY(camellia_ecb_dec_16way)
+ /* now dst can be used as temporary buffer (even in src == dst case) */
+ movq %rsi, %rax;
+
+- call __camellia_dec_blk16;
++ pax_direct_call __camellia_dec_blk16;
+
+ write_output(%xmm7, %xmm6, %xmm5, %xmm4, %xmm3, %xmm2, %xmm1, %xmm0,
+ %xmm15, %xmm14, %xmm13, %xmm12, %xmm11, %xmm10, %xmm9,
%xmm8, %rsi);
FRAME_END
-+ pax_force_retaddr
- ret;
+- ret;
++ pax_ret camellia_ecb_dec_16way;
ENDPROC(camellia_ecb_dec_16way)
-ENTRY(camellia_cbc_dec_16way)
@@ -14372,15 +15088,25 @@ index aa9e8bd..0b8def4 100644
/* input:
* %rdi: ctx, CTX
* %rsi: dst (16 blocks)
-@@ -992,6 +999,7 @@ ENTRY(camellia_cbc_dec_16way)
+@@ -968,7 +969,7 @@ ENTRY(camellia_cbc_dec_16way)
+ subq $(16 * 16), %rsp;
+ movq %rsp, %rax;
+
+- call __camellia_dec_blk16;
++ pax_direct_call __camellia_dec_blk16;
+
+ addq $(16 * 16), %rsp;
+
+@@ -992,7 +993,7 @@ ENTRY(camellia_cbc_dec_16way)
%xmm8, %rsi);
FRAME_END
-+ pax_force_retaddr
- ret;
+- ret;
++ pax_ret camellia_cbc_dec_16way;
ENDPROC(camellia_cbc_dec_16way)
-@@ -1001,7 +1009,7 @@ ENDPROC(camellia_cbc_dec_16way)
+ #define inc_le128(x, minus_one, tmp) \
+@@ -1001,7 +1002,7 @@ ENDPROC(camellia_cbc_dec_16way)
vpslldq $8, tmp, tmp; \
vpsubq tmp, x, x;
@@ -14389,20 +15115,39 @@ index aa9e8bd..0b8def4 100644
/* input:
* %rdi: ctx, CTX
* %rsi: dst (16 blocks)
-@@ -1105,6 +1113,7 @@ ENTRY(camellia_ctr_16way)
+@@ -1080,7 +1081,7 @@ ENTRY(camellia_ctr_16way)
+ vpxor 14 * 16(%rax), %xmm15, %xmm14;
+ vpxor 15 * 16(%rax), %xmm15, %xmm15;
+
+- call __camellia_enc_blk16;
++ pax_direct_call __camellia_enc_blk16;
+
+ addq $(16 * 16), %rsp;
+
+@@ -1105,7 +1106,7 @@ ENTRY(camellia_ctr_16way)
%xmm8, %rsi);
FRAME_END
-+ pax_force_retaddr
- ret;
+- ret;
++ pax_ret camellia_ctr_16way;
ENDPROC(camellia_ctr_16way)
-@@ -1249,10 +1258,11 @@ camellia_xts_crypt_16way:
+ #define gf128mul_x_ble(iv, mask, tmp) \
+@@ -1224,7 +1225,7 @@ camellia_xts_crypt_16way:
+ vpxor 14 * 16(%rax), %xmm15, %xmm14;
+ vpxor 15 * 16(%rax), %xmm15, %xmm15;
+
+- call *%r9;
++ pax_indirect_call "%r9", camellia_xts_enc_16way;
+
+ addq $(16 * 16), %rsp;
+
+@@ -1249,10 +1250,10 @@ camellia_xts_crypt_16way:
%xmm8, %rsi);
FRAME_END
-+ pax_force_retaddr
- ret;
+- ret;
++ pax_ret camellia_xts_crypt_16way;
ENDPROC(camellia_xts_crypt_16way)
-ENTRY(camellia_xts_enc_16way)
@@ -14410,7 +15155,7 @@ index aa9e8bd..0b8def4 100644
/* input:
* %rdi: ctx, CTX
* %rsi: dst (16 blocks)
-@@ -1266,7 +1276,7 @@ ENTRY(camellia_xts_enc_16way)
+@@ -1266,7 +1267,7 @@ ENTRY(camellia_xts_enc_16way)
jmp camellia_xts_crypt_16way;
ENDPROC(camellia_xts_enc_16way)
@@ -14420,7 +15165,7 @@ index aa9e8bd..0b8def4 100644
* %rdi: ctx, CTX
* %rsi: dst (16 blocks)
diff --git a/arch/x86/crypto/camellia-aesni-avx2-asm_64.S b/arch/x86/crypto/camellia-aesni-avx2-asm_64.S
-index 16186c1..3468f83 100644
+index 16186c1..a751452 100644
--- a/arch/x86/crypto/camellia-aesni-avx2-asm_64.S
+++ b/arch/x86/crypto/camellia-aesni-avx2-asm_64.S
@@ -12,6 +12,7 @@
@@ -14431,39 +15176,61 @@ index 16186c1..3468f83 100644
#define CAMELLIA_TABLE_BYTE_LEN 272
-@@ -231,6 +232,7 @@ roundsm32_x0_x1_x2_x3_x4_x5_x6_x7_y0_y1_y2_y3_y4_y5_y6_y7_cd:
+@@ -231,7 +232,7 @@ roundsm32_x0_x1_x2_x3_x4_x5_x6_x7_y0_y1_y2_y3_y4_y5_y6_y7_cd:
roundsm32(%ymm0, %ymm1, %ymm2, %ymm3, %ymm4, %ymm5, %ymm6, %ymm7,
%ymm8, %ymm9, %ymm10, %ymm11, %ymm12, %ymm13, %ymm14, %ymm15,
%rcx, (%r9));
-+ pax_force_retaddr
- ret;
+- ret;
++ pax_ret roundsm32_x0_x1_x2_x3_x4_x5_x6_x7_y0_y1_y2_y3_y4_y5_y6_y7_cd;
ENDPROC(roundsm32_x0_x1_x2_x3_x4_x5_x6_x7_y0_y1_y2_y3_y4_y5_y6_y7_cd)
-@@ -239,6 +241,7 @@ roundsm32_x4_x5_x6_x7_x0_x1_x2_x3_y4_y5_y6_y7_y0_y1_y2_y3_ab:
+ .align 8
+@@ -239,7 +240,7 @@ roundsm32_x4_x5_x6_x7_x0_x1_x2_x3_y4_y5_y6_y7_y0_y1_y2_y3_ab:
roundsm32(%ymm4, %ymm5, %ymm6, %ymm7, %ymm0, %ymm1, %ymm2, %ymm3,
%ymm12, %ymm13, %ymm14, %ymm15, %ymm8, %ymm9, %ymm10, %ymm11,
%rax, (%r9));
-+ pax_force_retaddr
- ret;
+- ret;
++ pax_ret roundsm32_x4_x5_x6_x7_x0_x1_x2_x3_y4_y5_y6_y7_y0_y1_y2_y3_ab;
ENDPROC(roundsm32_x4_x5_x6_x7_x0_x1_x2_x3_y4_y5_y6_y7_y0_y1_y2_y3_ab)
-@@ -823,6 +826,7 @@ __camellia_enc_blk32:
+ /*
+@@ -251,7 +252,7 @@ ENDPROC(roundsm32_x4_x5_x6_x7_x0_x1_x2_x3_y4_y5_y6_y7_y0_y1_y2_y3_ab)
+ #define two_roundsm32(x0, x1, x2, x3, x4, x5, x6, x7, y0, y1, y2, y3, y4, y5, \
+ y6, y7, mem_ab, mem_cd, i, dir, store_ab) \
+ leaq (key_table + (i) * 8)(CTX), %r9; \
+- call roundsm32_x0_x1_x2_x3_x4_x5_x6_x7_y0_y1_y2_y3_y4_y5_y6_y7_cd; \
++ pax_direct_call roundsm32_x0_x1_x2_x3_x4_x5_x6_x7_y0_y1_y2_y3_y4_y5_y6_y7_cd; \
+ \
+ vmovdqu x0, 4 * 32(mem_cd); \
+ vmovdqu x1, 5 * 32(mem_cd); \
+@@ -263,7 +264,7 @@ ENDPROC(roundsm32_x4_x5_x6_x7_x0_x1_x2_x3_y4_y5_y6_y7_y0_y1_y2_y3_ab)
+ vmovdqu x7, 3 * 32(mem_cd); \
+ \
+ leaq (key_table + ((i) + (dir)) * 8)(CTX), %r9; \
+- call roundsm32_x4_x5_x6_x7_x0_x1_x2_x3_y4_y5_y6_y7_y0_y1_y2_y3_ab; \
++ pax_direct_call roundsm32_x4_x5_x6_x7_x0_x1_x2_x3_y4_y5_y6_y7_y0_y1_y2_y3_ab; \
+ \
+ store_ab(x0, x1, x2, x3, x4, x5, x6, x7, mem_ab);
+
+@@ -823,7 +824,7 @@ __camellia_enc_blk32:
%ymm15, (key_table)(CTX, %r8, 8), (%rax), 1 * 32(%rax));
FRAME_END
-+ pax_force_retaddr
- ret;
+- ret;
++ pax_ret __camellia_enc_blk32;
.align 8
-@@ -910,6 +914,7 @@ __camellia_dec_blk32:
+ .Lenc_max32:
+@@ -910,7 +911,7 @@ __camellia_dec_blk32:
%ymm15, (key_table)(CTX), (%rax), 1 * 32(%rax));
FRAME_END
-+ pax_force_retaddr
- ret;
+- ret;
++ pax_ret __camellia_dec_blk32;
.align 8
-@@ -929,7 +934,7 @@ __camellia_dec_blk32:
+ .Ldec_max32:
+@@ -929,7 +930,7 @@ __camellia_dec_blk32:
jmp .Ldec_max24;
ENDPROC(__camellia_dec_blk32)
@@ -14472,12 +15239,21 @@ index 16186c1..3468f83 100644
/* input:
* %rdi: ctx, CTX
* %rsi: dst (32 blocks)
-@@ -955,10 +960,11 @@ ENTRY(camellia_ecb_enc_32way)
+@@ -946,7 +947,7 @@ ENTRY(camellia_ecb_enc_32way)
+ /* now dst can be used as temporary buffer (even in src == dst case) */
+ movq %rsi, %rax;
+
+- call __camellia_enc_blk32;
++ pax_direct_call __camellia_enc_blk32;
+
+ write_output(%ymm7, %ymm6, %ymm5, %ymm4, %ymm3, %ymm2, %ymm1, %ymm0,
+ %ymm15, %ymm14, %ymm13, %ymm12, %ymm11, %ymm10, %ymm9,
+@@ -955,10 +956,10 @@ ENTRY(camellia_ecb_enc_32way)
vzeroupper;
FRAME_END
-+ pax_force_retaddr
- ret;
+- ret;
++ pax_ret camellia_ecb_enc_32way;
ENDPROC(camellia_ecb_enc_32way)
-ENTRY(camellia_ecb_dec_32way)
@@ -14485,12 +15261,21 @@ index 16186c1..3468f83 100644
/* input:
* %rdi: ctx, CTX
* %rsi: dst (32 blocks)
-@@ -989,10 +995,11 @@ ENTRY(camellia_ecb_dec_32way)
+@@ -980,7 +981,7 @@ ENTRY(camellia_ecb_dec_32way)
+ /* now dst can be used as temporary buffer (even in src == dst case) */
+ movq %rsi, %rax;
+
+- call __camellia_dec_blk32;
++ pax_direct_call __camellia_dec_blk32;
+
+ write_output(%ymm7, %ymm6, %ymm5, %ymm4, %ymm3, %ymm2, %ymm1, %ymm0,
+ %ymm15, %ymm14, %ymm13, %ymm12, %ymm11, %ymm10, %ymm9,
+@@ -989,10 +990,10 @@ ENTRY(camellia_ecb_dec_32way)
vzeroupper;
FRAME_END
-+ pax_force_retaddr
- ret;
+- ret;
++ pax_ret camellia_ecb_dec_32way;
ENDPROC(camellia_ecb_dec_32way)
-ENTRY(camellia_cbc_dec_32way)
@@ -14498,15 +15283,25 @@ index 16186c1..3468f83 100644
/* input:
* %rdi: ctx, CTX
* %rsi: dst (32 blocks)
-@@ -1057,6 +1064,7 @@ ENTRY(camellia_cbc_dec_32way)
+@@ -1028,7 +1029,7 @@ ENTRY(camellia_cbc_dec_32way)
+ movq %rsp, %rax;
+
+ .Lcbc_dec_continue:
+- call __camellia_dec_blk32;
++ pax_direct_call __camellia_dec_blk32;
+
+ vmovdqu %ymm7, (%rax);
+ vpxor %ymm7, %ymm7, %ymm7;
+@@ -1057,7 +1058,7 @@ ENTRY(camellia_cbc_dec_32way)
vzeroupper;
FRAME_END
-+ pax_force_retaddr
- ret;
+- ret;
++ pax_ret camellia_cbc_dec_32way;
ENDPROC(camellia_cbc_dec_32way)
-@@ -1074,7 +1082,7 @@ ENDPROC(camellia_cbc_dec_32way)
+ #define inc_le128(x, minus_one, tmp) \
+@@ -1074,7 +1075,7 @@ ENDPROC(camellia_cbc_dec_32way)
vpslldq $8, tmp1, tmp1; \
vpsubq tmp1, x, x;
@@ -14515,20 +15310,39 @@ index 16186c1..3468f83 100644
/* input:
* %rdi: ctx, CTX
* %rsi: dst (32 blocks)
-@@ -1197,6 +1205,7 @@ ENTRY(camellia_ctr_32way)
+@@ -1170,7 +1171,7 @@ ENTRY(camellia_ctr_32way)
+ vpxor 14 * 32(%rax), %ymm15, %ymm14;
+ vpxor 15 * 32(%rax), %ymm15, %ymm15;
+
+- call __camellia_enc_blk32;
++ pax_direct_call __camellia_enc_blk32;
+
+ movq %r10, %rsp;
+
+@@ -1197,7 +1198,7 @@ ENTRY(camellia_ctr_32way)
vzeroupper;
FRAME_END
-+ pax_force_retaddr
- ret;
+- ret;
++ pax_ret camellia_ctr_32way;
ENDPROC(camellia_ctr_32way)
-@@ -1364,10 +1373,11 @@ camellia_xts_crypt_32way:
+ #define gf128mul_x_ble(iv, mask, tmp) \
+@@ -1337,7 +1338,7 @@ camellia_xts_crypt_32way:
+ vpxor 14 * 32(%rax), %ymm15, %ymm14;
+ vpxor 15 * 32(%rax), %ymm15, %ymm15;
+
+- call *%r9;
++ pax_indirect_call "%r9", __camellia_enc_blk32;
+
+ addq $(16 * 32), %rsp;
+
+@@ -1364,10 +1365,10 @@ camellia_xts_crypt_32way:
vzeroupper;
FRAME_END
-+ pax_force_retaddr
- ret;
+- ret;
++ pax_ret camellia_xts_crypt_32way;
ENDPROC(camellia_xts_crypt_32way)
-ENTRY(camellia_xts_enc_32way)
@@ -14536,7 +15350,7 @@ index 16186c1..3468f83 100644
/* input:
* %rdi: ctx, CTX
* %rsi: dst (32 blocks)
-@@ -1382,7 +1392,7 @@ ENTRY(camellia_xts_enc_32way)
+@@ -1382,7 +1383,7 @@ ENTRY(camellia_xts_enc_32way)
jmp camellia_xts_crypt_32way;
ENDPROC(camellia_xts_enc_32way)
@@ -14546,7 +15360,7 @@ index 16186c1..3468f83 100644
* %rdi: ctx, CTX
* %rsi: dst (32 blocks)
diff --git a/arch/x86/crypto/camellia-x86_64-asm_64.S b/arch/x86/crypto/camellia-x86_64-asm_64.S
-index 310319c..9253a8f 100644
+index 310319c..4fa639a 100644
--- a/arch/x86/crypto/camellia-x86_64-asm_64.S
+++ b/arch/x86/crypto/camellia-x86_64-asm_64.S
@@ -21,6 +21,7 @@
@@ -14557,19 +15371,19 @@ index 310319c..9253a8f 100644
.file "camellia-x86_64-asm_64.S"
.text
-@@ -228,16 +229,18 @@ ENTRY(__camellia_enc_blk)
+@@ -228,16 +229,16 @@ ENTRY(__camellia_enc_blk)
enc_outunpack(mov, RT1);
movq RRBP, %rbp;
-+ pax_force_retaddr
- ret;
+- ret;
++ pax_ret __camellia_enc_blk;
.L__enc_xor:
enc_outunpack(xor, RT1);
movq RRBP, %rbp;
-+ pax_force_retaddr
- ret;
+- ret;
++ pax_ret __camellia_enc_blk;
ENDPROC(__camellia_enc_blk)
-ENTRY(camellia_dec_blk)
@@ -14577,28 +15391,29 @@ index 310319c..9253a8f 100644
/* input:
* %rdi: ctx, CTX
* %rsi: dst
-@@ -272,6 +275,7 @@ ENTRY(camellia_dec_blk)
+@@ -272,7 +273,7 @@ ENTRY(camellia_dec_blk)
dec_outunpack();
movq RRBP, %rbp;
-+ pax_force_retaddr
- ret;
+- ret;
++ pax_ret camellia_dec_blk;
ENDPROC(camellia_dec_blk)
-@@ -463,6 +467,7 @@ ENTRY(__camellia_enc_blk_2way)
+ /**********************************************************************
+@@ -463,17 +464,17 @@ ENTRY(__camellia_enc_blk_2way)
movq RRBP, %rbp;
popq %rbx;
-+ pax_force_retaddr
- ret;
+- ret;
++ pax_ret __camellia_enc_blk_2way;
.L__enc2_xor:
-@@ -470,10 +475,11 @@ ENTRY(__camellia_enc_blk_2way)
+ enc_outunpack2(xor, RT2);
movq RRBP, %rbp;
popq %rbx;
-+ pax_force_retaddr
- ret;
+- ret;
++ pax_ret __camellia_enc_blk_2way;
ENDPROC(__camellia_enc_blk_2way)
-ENTRY(camellia_dec_blk_2way)
@@ -14606,18 +15421,18 @@ index 310319c..9253a8f 100644
/* input:
* %rdi: ctx, CTX
* %rsi: dst
-@@ -510,5 +516,6 @@ ENTRY(camellia_dec_blk_2way)
+@@ -510,5 +511,5 @@ ENTRY(camellia_dec_blk_2way)
movq RRBP, %rbp;
movq RXOR, %rbx;
-+ pax_force_retaddr
- ret;
+- ret;
++ pax_ret camellia_dec_blk_2way;
ENDPROC(camellia_dec_blk_2way)
diff --git a/arch/x86/crypto/camellia_aesni_avx2_glue.c b/arch/x86/crypto/camellia_aesni_avx2_glue.c
-index 60907c1..fe8638d 100644
+index 60907c1..3fc99c4 100644
--- a/arch/x86/crypto/camellia_aesni_avx2_glue.c
+++ b/arch/x86/crypto/camellia_aesni_avx2_glue.c
-@@ -27,20 +27,20 @@
+@@ -27,20 +27,22 @@
#define CAMELLIA_AESNI_AVX2_PARALLEL_BLOCKS 32
/* 32-way AVX2/AES-NI parallel cipher functions */
@@ -14627,6 +15442,8 @@ index 60907c1..fe8638d 100644
-asmlinkage void camellia_ecb_dec_32way(struct camellia_ctx *ctx, u8 *dst,
+asmlinkage void camellia_ecb_dec_32way(void *ctx, u8 *dst,
const u8 *src);
++void __camellia_enc_blk32(void *ctx, u8 *dst, const u8 *src) __rap_hash;
++void __camellia_dec_blk32(void *ctx, u8 *dst, const u8 *src) __rap_hash;
-asmlinkage void camellia_cbc_dec_32way(struct camellia_ctx *ctx, u8 *dst,
+asmlinkage void camellia_cbc_dec_32way(void *ctx, u8 *dst,
@@ -14724,7 +15541,7 @@ index aa76cad..ffd8808 100644
camellia_dec_blk_2way(ctx, (u8 *)dst, (u8 *)src);
diff --git a/arch/x86/crypto/cast5-avx-x86_64-asm_64.S b/arch/x86/crypto/cast5-avx-x86_64-asm_64.S
-index 14fa196..5de8a4a 100644
+index 14fa196..80d99b6 100644
--- a/arch/x86/crypto/cast5-avx-x86_64-asm_64.S
+++ b/arch/x86/crypto/cast5-avx-x86_64-asm_64.S
@@ -25,6 +25,7 @@
@@ -14735,23 +15552,24 @@ index 14fa196..5de8a4a 100644
.file "cast5-avx-x86_64-asm_64.S"
-@@ -282,6 +283,7 @@ __cast5_enc_blk16:
+@@ -282,7 +283,7 @@ __cast5_enc_blk16:
outunpack_blocks(RR3, RL3, RTMP, RX, RKM);
outunpack_blocks(RR4, RL4, RTMP, RX, RKM);
-+ pax_force_retaddr
- ret;
+- ret;
++ pax_ret __cast5_enc_blk16;
ENDPROC(__cast5_enc_blk16)
-@@ -353,6 +355,7 @@ __cast5_dec_blk16:
+ .align 16
+@@ -353,14 +354,14 @@ __cast5_dec_blk16:
outunpack_blocks(RR3, RL3, RTMP, RX, RKM);
outunpack_blocks(RR4, RL4, RTMP, RX, RKM);
-+ pax_force_retaddr
- ret;
+- ret;
++ pax_ret __cast5_dec_blk16;
.L__skip_dec:
-@@ -360,7 +363,7 @@ __cast5_dec_blk16:
+ vpsrldq $4, RKR, RKR;
jmp .L__dec_tail;
ENDPROC(__cast5_dec_blk16)
@@ -14760,12 +15578,21 @@ index 14fa196..5de8a4a 100644
/* input:
* %rdi: ctx, CTX
* %rsi: dst
-@@ -391,10 +394,11 @@ ENTRY(cast5_ecb_enc_16way)
+@@ -379,7 +380,7 @@ ENTRY(cast5_ecb_enc_16way)
+ vmovdqu (6*4*4)(%rdx), RL4;
+ vmovdqu (7*4*4)(%rdx), RR4;
+
+- call __cast5_enc_blk16;
++ pax_direct_call __cast5_enc_blk16;
+
+ vmovdqu RR1, (0*4*4)(%r11);
+ vmovdqu RL1, (1*4*4)(%r11);
+@@ -391,10 +392,10 @@ ENTRY(cast5_ecb_enc_16way)
vmovdqu RL4, (7*4*4)(%r11);
FRAME_END
-+ pax_force_retaddr
- ret;
+- ret;
++ pax_ret cast5_ecb_enc_16way;
ENDPROC(cast5_ecb_enc_16way)
-ENTRY(cast5_ecb_dec_16way)
@@ -14773,15 +15600,25 @@ index 14fa196..5de8a4a 100644
/* input:
* %rdi: ctx, CTX
* %rsi: dst
-@@ -425,6 +429,7 @@ ENTRY(cast5_ecb_dec_16way)
+@@ -413,7 +414,7 @@ ENTRY(cast5_ecb_dec_16way)
+ vmovdqu (6*4*4)(%rdx), RL4;
+ vmovdqu (7*4*4)(%rdx), RR4;
+
+- call __cast5_dec_blk16;
++ pax_direct_call __cast5_dec_blk16;
+
+ vmovdqu RR1, (0*4*4)(%r11);
+ vmovdqu RL1, (1*4*4)(%r11);
+@@ -425,7 +426,7 @@ ENTRY(cast5_ecb_dec_16way)
vmovdqu RL4, (7*4*4)(%r11);
FRAME_END
-+ pax_force_retaddr
- ret;
+- ret;
++ pax_ret cast5_ecb_dec_16way;
ENDPROC(cast5_ecb_dec_16way)
-@@ -436,10 +441,10 @@ ENTRY(cast5_cbc_dec_16way)
+ ENTRY(cast5_cbc_dec_16way)
+@@ -436,10 +437,10 @@ ENTRY(cast5_cbc_dec_16way)
*/
FRAME_BEGIN
@@ -14794,8 +15631,12 @@ index 14fa196..5de8a4a 100644
vmovdqu (0*16)(%rdx), RL1;
vmovdqu (1*16)(%rdx), RR1;
-@@ -453,16 +458,16 @@ ENTRY(cast5_cbc_dec_16way)
- call __cast5_dec_blk16;
+@@ -450,19 +451,19 @@ ENTRY(cast5_cbc_dec_16way)
+ vmovdqu (6*16)(%rdx), RL4;
+ vmovdqu (7*16)(%rdx), RR4;
+
+- call __cast5_dec_blk16;
++ pax_direct_call __cast5_dec_blk16;
/* xor with src */
- vmovq (%r12), RX;
@@ -14819,7 +15660,7 @@ index 14fa196..5de8a4a 100644
vmovdqu RR1, (0*16)(%r11);
vmovdqu RL1, (1*16)(%r11);
-@@ -473,9 +478,10 @@ ENTRY(cast5_cbc_dec_16way)
+@@ -473,10 +474,10 @@ ENTRY(cast5_cbc_dec_16way)
vmovdqu RR4, (6*16)(%r11);
vmovdqu RL4, (7*16)(%r11);
@@ -14827,11 +15668,12 @@ index 14fa196..5de8a4a 100644
+ popq %r14;
FRAME_END
-+ pax_force_retaddr
- ret;
+- ret;
++ pax_ret cast5_cbc_dec_16way;
ENDPROC(cast5_cbc_dec_16way)
-@@ -488,10 +494,10 @@ ENTRY(cast5_ctr_16way)
+ ENTRY(cast5_ctr_16way)
+@@ -488,10 +489,10 @@ ENTRY(cast5_ctr_16way)
*/
FRAME_BEGIN
@@ -14844,8 +15686,12 @@ index 14fa196..5de8a4a 100644
vpcmpeqd RTMP, RTMP, RTMP;
vpsrldq $8, RTMP, RTMP; /* low: -1, high: 0 */
-@@ -531,14 +537,14 @@ ENTRY(cast5_ctr_16way)
- call __cast5_enc_blk16;
+@@ -528,17 +529,17 @@ ENTRY(cast5_ctr_16way)
+ vpshufb R1ST, RX, RX; /* be: IV16, IV16 */
+ vmovq RX, (%rcx);
+
+- call __cast5_enc_blk16;
++ pax_direct_call __cast5_enc_blk16;
/* dst = src ^ iv */
- vpxor (0*16)(%r12), RR1, RR1;
@@ -14867,7 +15713,7 @@ index 14fa196..5de8a4a 100644
vmovdqu RR1, (0*16)(%r11);
vmovdqu RL1, (1*16)(%r11);
vmovdqu RR2, (2*16)(%r11);
-@@ -548,8 +554,9 @@ ENTRY(cast5_ctr_16way)
+@@ -548,8 +549,8 @@ ENTRY(cast5_ctr_16way)
vmovdqu RR4, (6*16)(%r11);
vmovdqu RL4, (7*16)(%r11);
@@ -14875,11 +15721,24 @@ index 14fa196..5de8a4a 100644
+ popq %r14;
FRAME_END
-+ pax_force_retaddr
- ret;
+- ret;
++ pax_ret cast5_ctr_16way;
ENDPROC(cast5_ctr_16way)
+diff --git a/arch/x86/crypto/cast5_avx_glue.c b/arch/x86/crypto/cast5_avx_glue.c
+index 8648158..b56922a 100644
+--- a/arch/x86/crypto/cast5_avx_glue.c
++++ b/arch/x86/crypto/cast5_avx_glue.c
+@@ -44,6 +44,8 @@ asmlinkage void cast5_cbc_dec_16way(struct cast5_ctx *ctx, u8 *dst,
+ const u8 *src);
+ asmlinkage void cast5_ctr_16way(struct cast5_ctx *ctx, u8 *dst, const u8 *src,
+ __be64 *iv);
++void __cast5_enc_blk16(struct cast5_ctx *ctx, u8 *dst, const u8 *src) __rap_hash;
++void __cast5_dec_blk16(struct cast5_ctx *ctx, u8 *dst, const u8 *src) __rap_hash;
+
+ static inline bool cast5_fpu_begin(bool fpu_enabled, unsigned int nbytes)
+ {
diff --git a/arch/x86/crypto/cast6-avx-x86_64-asm_64.S b/arch/x86/crypto/cast6-avx-x86_64-asm_64.S
-index c419389..b853452 100644
+index c419389..7e2ed7c 100644
--- a/arch/x86/crypto/cast6-avx-x86_64-asm_64.S
+++ b/arch/x86/crypto/cast6-avx-x86_64-asm_64.S
@@ -25,6 +25,7 @@
@@ -14890,20 +15749,21 @@ index c419389..b853452 100644
#include "glue_helper-asm-avx.S"
.file "cast6-avx-x86_64-asm_64.S"
-@@ -296,6 +297,7 @@ __cast6_enc_blk8:
+@@ -296,7 +297,7 @@ __cast6_enc_blk8:
outunpack_blocks(RA1, RB1, RC1, RD1, RTMP, RX, RKRF, RKM);
outunpack_blocks(RA2, RB2, RC2, RD2, RTMP, RX, RKRF, RKM);
-+ pax_force_retaddr
- ret;
+- ret;
++ pax_ret __cast6_enc_blk8;
ENDPROC(__cast6_enc_blk8)
-@@ -341,10 +343,11 @@ __cast6_dec_blk8:
+ .align 8
+@@ -341,10 +342,10 @@ __cast6_dec_blk8:
outunpack_blocks(RA1, RB1, RC1, RD1, RTMP, RX, RKRF, RKM);
outunpack_blocks(RA2, RB2, RC2, RD2, RTMP, RX, RKRF, RKM);
-+ pax_force_retaddr
- ret;
+- ret;
++ pax_ret __cast6_dec_blk8;
ENDPROC(__cast6_dec_blk8)
-ENTRY(cast6_ecb_enc_8way)
@@ -14911,12 +15771,18 @@ index c419389..b853452 100644
/* input:
* %rdi: ctx, CTX
* %rsi: dst
-@@ -361,10 +364,11 @@ ENTRY(cast6_ecb_enc_8way)
+@@ -356,15 +357,15 @@ ENTRY(cast6_ecb_enc_8way)
+
+ load_8way(%rdx, RA1, RB1, RC1, RD1, RA2, RB2, RC2, RD2);
+
+- call __cast6_enc_blk8;
++ pax_direct_call __cast6_enc_blk8;
+
store_8way(%r11, RA1, RB1, RC1, RD1, RA2, RB2, RC2, RD2);
FRAME_END
-+ pax_force_retaddr
- ret;
+- ret;
++ pax_ret cast6_ecb_enc_8way;
ENDPROC(cast6_ecb_enc_8way)
-ENTRY(cast6_ecb_dec_8way)
@@ -14924,12 +15790,18 @@ index c419389..b853452 100644
/* input:
* %rdi: ctx, CTX
* %rsi: dst
-@@ -381,10 +385,11 @@ ENTRY(cast6_ecb_dec_8way)
+@@ -376,15 +377,15 @@ ENTRY(cast6_ecb_dec_8way)
+
+ load_8way(%rdx, RA1, RB1, RC1, RD1, RA2, RB2, RC2, RD2);
+
+- call __cast6_dec_blk8;
++ pax_direct_call __cast6_dec_blk8;
+
store_8way(%r11, RA1, RB1, RC1, RD1, RA2, RB2, RC2, RD2);
FRAME_END
-+ pax_force_retaddr
- ret;
+- ret;
++ pax_ret cast6_ecb_dec_8way;
ENDPROC(cast6_ecb_dec_8way)
-ENTRY(cast6_cbc_dec_8way)
@@ -14937,7 +15809,7 @@ index c419389..b853452 100644
/* input:
* %rdi: ctx, CTX
* %rsi: dst
-@@ -392,24 +397,25 @@ ENTRY(cast6_cbc_dec_8way)
+@@ -392,24 +393,24 @@ ENTRY(cast6_cbc_dec_8way)
*/
FRAME_BEGIN
@@ -14950,7 +15822,8 @@ index c419389..b853452 100644
load_8way(%rdx, RA1, RB1, RC1, RD1, RA2, RB2, RC2, RD2);
- call __cast6_dec_blk8;
+- call __cast6_dec_blk8;
++ pax_direct_call __cast6_dec_blk8;
- store_cbc_8way(%r12, %r11, RA1, RB1, RC1, RD1, RA2, RB2, RC2, RD2);
+ store_cbc_8way(%r14, %r11, RA1, RB1, RC1, RD1, RA2, RB2, RC2, RD2);
@@ -14959,8 +15832,8 @@ index c419389..b853452 100644
+ popq %r14;
FRAME_END
-+ pax_force_retaddr
- ret;
+- ret;
++ pax_ret cast6_cbc_dec_8way;
ENDPROC(cast6_cbc_dec_8way)
-ENTRY(cast6_ctr_8way)
@@ -14968,7 +15841,7 @@ index c419389..b853452 100644
/* input:
* %rdi: ctx, CTX
* %rsi: dst
-@@ -418,25 +424,26 @@ ENTRY(cast6_ctr_8way)
+@@ -418,25 +419,25 @@ ENTRY(cast6_ctr_8way)
*/
FRAME_BEGIN
@@ -14982,7 +15855,8 @@ index c419389..b853452 100644
load_ctr_8way(%rcx, .Lbswap128_mask, RA1, RB1, RC1, RD1, RA2, RB2, RC2,
RD2, RX, RKR, RKM);
- call __cast6_enc_blk8;
+- call __cast6_enc_blk8;
++ pax_direct_call __cast6_enc_blk8;
- store_ctr_8way(%r12, %r11, RA1, RB1, RC1, RD1, RA2, RB2, RC2, RD2);
+ store_ctr_8way(%r14, %r11, RA1, RB1, RC1, RD1, RA2, RB2, RC2, RD2);
@@ -14991,8 +15865,8 @@ index c419389..b853452 100644
+ popq %r14;
FRAME_END
-+ pax_force_retaddr
- ret;
+- ret;
++ pax_ret cast6_ctr_8way;
ENDPROC(cast6_ctr_8way)
-ENTRY(cast6_xts_enc_8way)
@@ -15000,12 +15874,19 @@ index c419389..b853452 100644
/* input:
* %rdi: ctx, CTX
* %rsi: dst
-@@ -457,10 +464,11 @@ ENTRY(cast6_xts_enc_8way)
+@@ -451,16 +452,16 @@ ENTRY(cast6_xts_enc_8way)
+ load_xts_8way(%rcx, %rdx, %rsi, RA1, RB1, RC1, RD1, RA2, RB2, RC2, RD2,
+ RX, RKR, RKM, .Lxts_gf128mul_and_shl1_mask);
+
+- call __cast6_enc_blk8;
++ pax_direct_call __cast6_enc_blk8;
+
+ /* dst <= regs xor IVs(in dst) */
store_xts_8way(%r11, RA1, RB1, RC1, RD1, RA2, RB2, RC2, RD2);
FRAME_END
-+ pax_force_retaddr
- ret;
+- ret;
++ pax_ret cast6_xts_enc_8way;
ENDPROC(cast6_xts_enc_8way)
-ENTRY(cast6_xts_dec_8way)
@@ -15013,18 +15894,25 @@ index c419389..b853452 100644
/* input:
* %rdi: ctx, CTX
* %rsi: dst
-@@ -481,5 +489,6 @@ ENTRY(cast6_xts_dec_8way)
+@@ -475,11 +476,11 @@ ENTRY(cast6_xts_dec_8way)
+ load_xts_8way(%rcx, %rdx, %rsi, RA1, RB1, RC1, RD1, RA2, RB2, RC2, RD2,
+ RX, RKR, RKM, .Lxts_gf128mul_and_shl1_mask);
+
+- call __cast6_dec_blk8;
++ pax_direct_call __cast6_dec_blk8;
+
+ /* dst <= regs xor IVs(in dst) */
store_xts_8way(%r11, RA1, RB1, RC1, RD1, RA2, RB2, RC2, RD2);
FRAME_END
-+ pax_force_retaddr
- ret;
+- ret;
++ pax_ret cast6_xts_dec_8way;
ENDPROC(cast6_xts_dec_8way)
diff --git a/arch/x86/crypto/cast6_avx_glue.c b/arch/x86/crypto/cast6_avx_glue.c
-index 50e6847..bf7c2d8 100644
+index 50e6847..593d632 100644
--- a/arch/x86/crypto/cast6_avx_glue.c
+++ b/arch/x86/crypto/cast6_avx_glue.c
-@@ -41,20 +41,20 @@
+@@ -41,20 +41,23 @@
#define CAST6_PARALLEL_BLOCKS 8
@@ -15050,14 +15938,72 @@ index 50e6847..bf7c2d8 100644
+ const u128 *src, le128 *iv);
+asmlinkage void cast6_xts_dec_8way(void *ctx, u128 *dst,
+ const u128 *src, le128 *iv);
++
++void __cast6_enc_blk8(void *ctx, u8 *dst, const u8 *src) __rap_hash;
++void __cast6_dec_blk8(void *ctx, u8 *dst, const u8 *src) __rap_hash;
static void cast6_xts_enc(void *ctx, u128 *dst, const u128 *src, le128 *iv)
{
+diff --git a/arch/x86/crypto/chacha20-avx2-x86_64.S b/arch/x86/crypto/chacha20-avx2-x86_64.S
+index 16694e6..4675b5e 100644
+--- a/arch/x86/crypto/chacha20-avx2-x86_64.S
++++ b/arch/x86/crypto/chacha20-avx2-x86_64.S
+@@ -10,6 +10,7 @@
+ */
+
+ #include <linux/linkage.h>
++#include <asm/alternative-asm.h>
+
+ .data
+ .align 32
+@@ -439,5 +440,5 @@ ENTRY(chacha20_8block_xor_avx2)
+
+ vzeroupper
+ mov %r8,%rsp
+- ret
++ pax_ret chacha20_8block_xor_avx2
+ ENDPROC(chacha20_8block_xor_avx2)
+diff --git a/arch/x86/crypto/chacha20-ssse3-x86_64.S b/arch/x86/crypto/chacha20-ssse3-x86_64.S
+index 3a33124..ba21c6f 100644
+--- a/arch/x86/crypto/chacha20-ssse3-x86_64.S
++++ b/arch/x86/crypto/chacha20-ssse3-x86_64.S
+@@ -10,6 +10,7 @@
+ */
+
+ #include <linux/linkage.h>
++#include <asm/alternative-asm.h>
+
+ .data
+ .align 16
+@@ -139,7 +140,7 @@ ENTRY(chacha20_block_xor_ssse3)
+ pxor %xmm7,%xmm3
+ movdqu %xmm3,0x30(%rsi)
+
+- ret
++ pax_ret chacha20_block_xor_ssse3
+ ENDPROC(chacha20_block_xor_ssse3)
+
+ ENTRY(chacha20_4block_xor_ssse3)
+@@ -623,5 +624,5 @@ ENTRY(chacha20_4block_xor_ssse3)
+ movdqu %xmm15,0xf0(%rsi)
+
+ mov %r11,%rsp
+- ret
++ pax_ret chacha20_4block_xor_ssse3
+ ENDPROC(chacha20_4block_xor_ssse3)
diff --git a/arch/x86/crypto/crc32-pclmul_asm.S b/arch/x86/crypto/crc32-pclmul_asm.S
-index f247304..b500391 100644
+index f247304..d253bd1 100644
--- a/arch/x86/crypto/crc32-pclmul_asm.S
+++ b/arch/x86/crypto/crc32-pclmul_asm.S
-@@ -102,6 +102,12 @@
+@@ -39,6 +39,7 @@
+
+ #include <linux/linkage.h>
+ #include <asm/inst.h>
++#include <asm/alternative-asm.h>
+
+
+ .align 16
+@@ -102,6 +103,12 @@
* size_t len, uint crc32)
*/
@@ -15070,7 +16016,7 @@ index f247304..b500391 100644
ENTRY(crc32_pclmul_le_16) /* buffer and buffer size are 16 bytes aligned */
movdqa (BUF), %xmm1
movdqa 0x10(BUF), %xmm2
-@@ -113,9 +119,8 @@ ENTRY(crc32_pclmul_le_16) /* buffer and buffer size are 16 bytes aligned */
+@@ -113,9 +120,8 @@ ENTRY(crc32_pclmul_le_16) /* buffer and buffer size are 16 bytes aligned */
add $0x40, BUF
#ifndef __x86_64__
/* This is for position independent code(-fPIC) support for 32bit */
@@ -15081,7 +16027,7 @@ index f247304..b500391 100644
#endif
cmp $0x40, LEN
jb less_64
-@@ -123,7 +128,7 @@ delta:
+@@ -123,7 +129,7 @@ delta:
#ifdef __x86_64__
movdqa .Lconstant_R2R1(%rip), CONSTANT
#else
@@ -15090,7 +16036,7 @@ index f247304..b500391 100644
#endif
loop_64:/* 64 bytes Full cache line folding */
-@@ -172,7 +177,7 @@ less_64:/* Folding cache line into 128bit */
+@@ -172,7 +178,7 @@ less_64:/* Folding cache line into 128bit */
#ifdef __x86_64__
movdqa .Lconstant_R4R3(%rip), CONSTANT
#else
@@ -15099,7 +16045,7 @@ index f247304..b500391 100644
#endif
prefetchnta (BUF)
-@@ -220,8 +225,8 @@ fold_64:
+@@ -220,8 +226,8 @@ fold_64:
movdqa .Lconstant_R5(%rip), CONSTANT
movdqa .Lconstant_mask32(%rip), %xmm3
#else
@@ -15110,7 +16056,7 @@ index f247304..b500391 100644
#endif
psrldq $0x04, %xmm2
pand %xmm3, %xmm1
-@@ -232,7 +237,7 @@ fold_64:
+@@ -232,7 +238,7 @@ fold_64:
#ifdef __x86_64__
movdqa .Lconstant_RUpoly(%rip), CONSTANT
#else
@@ -15119,8 +16065,15 @@ index f247304..b500391 100644
#endif
movdqa %xmm1, %xmm2
pand %xmm3, %xmm1
+@@ -242,5 +248,5 @@ fold_64:
+ pxor %xmm2, %xmm1
+ PEXTRD 0x01, %xmm1, %eax
+
+- ret
++ pax_ret crc32_pclmul_le_16
+ ENDPROC(crc32_pclmul_le_16)
diff --git a/arch/x86/crypto/crc32c-pcl-intel-asm_64.S b/arch/x86/crypto/crc32c-pcl-intel-asm_64.S
-index dc05f010..23c8bfd 100644
+index dc05f010..83302a8 100644
--- a/arch/x86/crypto/crc32c-pcl-intel-asm_64.S
+++ b/arch/x86/crypto/crc32c-pcl-intel-asm_64.S
@@ -45,6 +45,7 @@
@@ -15131,16 +16084,68 @@ index dc05f010..23c8bfd 100644
## ISCSI CRC 32 Implementation with crc32 and pclmulqdq Instruction
-@@ -309,6 +310,7 @@ do_return:
+@@ -309,7 +310,7 @@ do_return:
popq %rsi
popq %rdi
popq %rbx
-+ pax_force_retaddr
- ret
+- ret
++ pax_ret crc_pcl
ENDPROC(crc_pcl)
+ .section .rodata, "a", %progbits
+diff --git a/arch/x86/crypto/crct10dif-pcl-asm_64.S b/arch/x86/crypto/crct10dif-pcl-asm_64.S
+index 35e9756..5048353 100644
+--- a/arch/x86/crypto/crct10dif-pcl-asm_64.S
++++ b/arch/x86/crypto/crct10dif-pcl-asm_64.S
+@@ -59,6 +59,7 @@
+ #
+
+ #include <linux/linkage.h>
++#include <asm/alternative-asm.h>
+
+ .text
+
+@@ -367,7 +368,7 @@ _cleanup:
+ # scale the result back to 16 bits
+ shr $16, %eax
+ mov %rcx, %rsp
+- ret
++ pax_ret crc_t10dif_pcl
+
+ ########################################################################
+
+diff --git a/arch/x86/crypto/des3_ede-asm_64.S b/arch/x86/crypto/des3_ede-asm_64.S
+index 038f6ae..ec7142bf 100644
+--- a/arch/x86/crypto/des3_ede-asm_64.S
++++ b/arch/x86/crypto/des3_ede-asm_64.S
+@@ -15,6 +15,7 @@
+ */
+
+ #include <linux/linkage.h>
++#include <asm/alternative-asm.h>
+
+ .file "des3_ede-asm_64.S"
+ .text
+@@ -250,7 +251,7 @@ ENTRY(des3_ede_x86_64_crypt_blk)
+ popq %rbx;
+ popq %rbp;
+
+- ret;
++ pax_ret des3_ede_x86_64_crypt_blk;
+ ENDPROC(des3_ede_x86_64_crypt_blk)
+
+ /***********************************************************************
+@@ -534,7 +535,7 @@ ENTRY(des3_ede_x86_64_crypt_blk_3way)
+ popq %rbx;
+ popq %rbp;
+
+- ret;
++ pax_ret des3_ede_x86_64_crypt_blk_3way;
+ ENDPROC(des3_ede_x86_64_crypt_blk_3way)
+
+ .data
diff --git a/arch/x86/crypto/ghash-clmulni-intel_asm.S b/arch/x86/crypto/ghash-clmulni-intel_asm.S
-index eed55c8..b354187 100644
+index eed55c8..18f64dc 100644
--- a/arch/x86/crypto/ghash-clmulni-intel_asm.S
+++ b/arch/x86/crypto/ghash-clmulni-intel_asm.S
@@ -19,6 +19,7 @@
@@ -15151,29 +16156,57 @@ index eed55c8..b354187 100644
.data
-@@ -90,6 +91,7 @@ __clmul_gf128mul_ble:
+@@ -90,7 +91,7 @@ __clmul_gf128mul_ble:
psrlq $1, T2
pxor T2, T1
pxor T1, DATA
-+ pax_force_retaddr
- ret
+- ret
++ pax_ret __clmul_gf128mul_ble
ENDPROC(__clmul_gf128mul_ble)
-@@ -104,6 +106,7 @@ ENTRY(clmul_ghash_mul)
+ /* void clmul_ghash_mul(char *dst, const u128 *shash) */
+@@ -100,11 +101,11 @@ ENTRY(clmul_ghash_mul)
+ movups (%rsi), SHASH
+ movaps .Lbswap_mask, BSWAP
+ PSHUFB_XMM BSWAP DATA
+- call __clmul_gf128mul_ble
++ pax_direct_call __clmul_gf128mul_ble
PSHUFB_XMM BSWAP DATA
movups DATA, (%rdi)
FRAME_END
-+ pax_force_retaddr
- ret
+- ret
++ pax_ret clmul_ghash_mul
ENDPROC(clmul_ghash_mul)
-@@ -133,5 +136,6 @@ ENTRY(clmul_ghash_update)
+ /*
+@@ -124,7 +125,7 @@ ENTRY(clmul_ghash_update)
+ movups (%rsi), IN1
+ PSHUFB_XMM BSWAP IN1
+ pxor IN1, DATA
+- call __clmul_gf128mul_ble
++ pax_direct_call __clmul_gf128mul_ble
+ sub $16, %rdx
+ add $16, %rsi
+ cmp $16, %rdx
+@@ -133,5 +134,5 @@ ENTRY(clmul_ghash_update)
movups DATA, (%rdi)
.Lupdate_just_ret:
FRAME_END
-+ pax_force_retaddr
- ret
+- ret
++ pax_ret clmul_ghash_update
ENDPROC(clmul_ghash_update)
+diff --git a/arch/x86/crypto/ghash-clmulni-intel_glue.c b/arch/x86/crypto/ghash-clmulni-intel_glue.c
+index 0420bab..590ca78 100644
+--- a/arch/x86/crypto/ghash-clmulni-intel_glue.c
++++ b/arch/x86/crypto/ghash-clmulni-intel_glue.c
+@@ -26,6 +26,7 @@
+ #define GHASH_DIGEST_SIZE 16
+
+ void clmul_ghash_mul(char *dst, const u128 *shash);
++void __clmul_gf128mul_ble(char *dst, const u128 *shash) __rap_hash;
+
+ void clmul_ghash_update(char *dst, const char *src, unsigned int srclen,
+ const u128 *shash);
diff --git a/arch/x86/crypto/glue_helper.c b/arch/x86/crypto/glue_helper.c
index 6a85598..fed2ada 100644
--- a/arch/x86/crypto/glue_helper.c
@@ -15187,8 +16220,92 @@ index 6a85598..fed2ada 100644
nbytes -= bsize;
if (nbytes < bsize)
+diff --git a/arch/x86/crypto/poly1305-avx2-x86_64.S b/arch/x86/crypto/poly1305-avx2-x86_64.S
+index eff2f41..932718e 100644
+--- a/arch/x86/crypto/poly1305-avx2-x86_64.S
++++ b/arch/x86/crypto/poly1305-avx2-x86_64.S
+@@ -10,6 +10,7 @@
+ */
+
+ #include <linux/linkage.h>
++#include <asm/alternative-asm.h>
+
+ .data
+ .align 32
+@@ -382,5 +383,5 @@ ENTRY(poly1305_4block_avx2)
+ pop %r13
+ pop %r12
+ pop %rbx
+- ret
++ pax_ret poly1305_4block_avx2
+ ENDPROC(poly1305_4block_avx2)
+diff --git a/arch/x86/crypto/poly1305-sse2-x86_64.S b/arch/x86/crypto/poly1305-sse2-x86_64.S
+index 338c748..497359c 100644
+--- a/arch/x86/crypto/poly1305-sse2-x86_64.S
++++ b/arch/x86/crypto/poly1305-sse2-x86_64.S
+@@ -10,6 +10,7 @@
+ */
+
+ #include <linux/linkage.h>
++#include <asm/alternative-asm.h>
+
+ .data
+ .align 16
+@@ -273,7 +274,7 @@ ENTRY(poly1305_block_sse2)
+ add $0x10,%rsp
+ pop %r12
+ pop %rbx
+- ret
++ pax_ret poly1305_block_sse2
+ ENDPROC(poly1305_block_sse2)
+
+
+@@ -578,5 +579,5 @@ ENTRY(poly1305_2block_sse2)
+ pop %r13
+ pop %r12
+ pop %rbx
+- ret
++ pax_ret poly1305_2block_sse2
+ ENDPROC(poly1305_2block_sse2)
+diff --git a/arch/x86/crypto/salsa20-i586-asm_32.S b/arch/x86/crypto/salsa20-i586-asm_32.S
+index 329452b8..f136500 100644
+--- a/arch/x86/crypto/salsa20-i586-asm_32.S
++++ b/arch/x86/crypto/salsa20-i586-asm_32.S
+@@ -3,6 +3,7 @@
+ # Public domain.
+
+ #include <linux/linkage.h>
++#include <asm/alternative-asm.h>
+
+ .text
+
+@@ -924,7 +925,7 @@ ENTRY(salsa20_encrypt_bytes)
+ movl 96(%esp),%ebp
+ # leave
+ add %eax,%esp
+- ret
++ pax_ret salsa20_encrypt_bytes
+ ._bytesatleast65:
+ # bytes -= 64
+ sub $64,%ebx
+@@ -1059,7 +1060,7 @@ ENTRY(salsa20_keysetup)
+ movl 80(%esp),%ebp
+ # leave
+ add %eax,%esp
+- ret
++ pax_ret salsa20_keysetup
+ ENDPROC(salsa20_keysetup)
+
+ # enter salsa20_ivsetup
+@@ -1110,5 +1111,5 @@ ENTRY(salsa20_ivsetup)
+ movl 80(%esp),%ebp
+ # leave
+ add %eax,%esp
+- ret
++ pax_ret salsa20_ivsetup
+ ENDPROC(salsa20_ivsetup)
diff --git a/arch/x86/crypto/salsa20-x86_64-asm_64.S b/arch/x86/crypto/salsa20-x86_64-asm_64.S
-index 9279e0b..c4b3d2c 100644
+index 9279e0b..6745d48 100644
--- a/arch/x86/crypto/salsa20-x86_64-asm_64.S
+++ b/arch/x86/crypto/salsa20-x86_64-asm_64.S
@@ -1,4 +1,5 @@
@@ -15197,31 +16314,33 @@ index 9279e0b..c4b3d2c 100644
# enter salsa20_encrypt_bytes
ENTRY(salsa20_encrypt_bytes)
-@@ -789,6 +790,7 @@ ENTRY(salsa20_encrypt_bytes)
+@@ -789,7 +790,7 @@ ENTRY(salsa20_encrypt_bytes)
add %r11,%rsp
mov %rdi,%rax
mov %rsi,%rdx
-+ pax_force_retaddr
- ret
+- ret
++ pax_ret salsa20_encrypt_bytes
# bytesatleast65:
._bytesatleast65:
-@@ -889,6 +891,7 @@ ENTRY(salsa20_keysetup)
+ # bytes -= 64
+@@ -889,7 +890,7 @@ ENTRY(salsa20_keysetup)
add %r11,%rsp
mov %rdi,%rax
mov %rsi,%rdx
-+ pax_force_retaddr
- ret
+- ret
++ pax_ret salsa20_keysetup
ENDPROC(salsa20_keysetup)
-@@ -914,5 +917,6 @@ ENTRY(salsa20_ivsetup)
+ # enter salsa20_ivsetup
+@@ -914,5 +915,5 @@ ENTRY(salsa20_ivsetup)
add %r11,%rsp
mov %rdi,%rax
mov %rsi,%rdx
-+ pax_force_retaddr
- ret
+- ret
++ pax_ret salsa20_ivsetup
ENDPROC(salsa20_ivsetup)
diff --git a/arch/x86/crypto/serpent-avx-x86_64-asm_64.S b/arch/x86/crypto/serpent-avx-x86_64-asm_64.S
-index 8be5718..d2bcbcd 100644
+index 8be5718..c5a9956 100644
--- a/arch/x86/crypto/serpent-avx-x86_64-asm_64.S
+++ b/arch/x86/crypto/serpent-avx-x86_64-asm_64.S
@@ -25,6 +25,7 @@
@@ -15232,20 +16351,21 @@ index 8be5718..d2bcbcd 100644
#include "glue_helper-asm-avx.S"
.file "serpent-avx-x86_64-asm_64.S"
-@@ -619,6 +620,7 @@ __serpent_enc_blk8_avx:
+@@ -619,7 +620,7 @@ __serpent_enc_blk8_avx:
write_blocks(RA1, RB1, RC1, RD1, RK0, RK1, RK2);
write_blocks(RA2, RB2, RC2, RD2, RK0, RK1, RK2);
-+ pax_force_retaddr
- ret;
+- ret;
++ pax_ret __serpent_enc_blk8_avx;
ENDPROC(__serpent_enc_blk8_avx)
-@@ -673,10 +675,11 @@ __serpent_dec_blk8_avx:
+ .align 8
+@@ -673,10 +674,10 @@ __serpent_dec_blk8_avx:
write_blocks(RC1, RD1, RB1, RE1, RK0, RK1, RK2);
write_blocks(RC2, RD2, RB2, RE2, RK0, RK1, RK2);
-+ pax_force_retaddr
- ret;
+- ret;
++ pax_ret __serpent_dec_blk8_avx;
ENDPROC(__serpent_dec_blk8_avx)
-ENTRY(serpent_ecb_enc_8way_avx)
@@ -15253,12 +16373,18 @@ index 8be5718..d2bcbcd 100644
/* input:
* %rdi: ctx, CTX
* %rsi: dst
-@@ -691,10 +694,11 @@ ENTRY(serpent_ecb_enc_8way_avx)
+@@ -686,15 +687,15 @@ ENTRY(serpent_ecb_enc_8way_avx)
+
+ load_8way(%rdx, RA1, RB1, RC1, RD1, RA2, RB2, RC2, RD2);
+
+- call __serpent_enc_blk8_avx;
++ pax_direct_call __serpent_enc_blk8_avx;
+
store_8way(%rsi, RA1, RB1, RC1, RD1, RA2, RB2, RC2, RD2);
FRAME_END
-+ pax_force_retaddr
- ret;
+- ret;
++ pax_ret serpent_ecb_enc_8way_avx;
ENDPROC(serpent_ecb_enc_8way_avx)
-ENTRY(serpent_ecb_dec_8way_avx)
@@ -15266,12 +16392,18 @@ index 8be5718..d2bcbcd 100644
/* input:
* %rdi: ctx, CTX
* %rsi: dst
-@@ -709,10 +713,11 @@ ENTRY(serpent_ecb_dec_8way_avx)
+@@ -704,15 +705,15 @@ ENTRY(serpent_ecb_dec_8way_avx)
+
+ load_8way(%rdx, RA1, RB1, RC1, RD1, RA2, RB2, RC2, RD2);
+
+- call __serpent_dec_blk8_avx;
++ pax_direct_call __serpent_dec_blk8_avx;
+
store_8way(%rsi, RC1, RD1, RB1, RE1, RC2, RD2, RB2, RE2);
FRAME_END
-+ pax_force_retaddr
- ret;
+- ret;
++ pax_ret serpent_ecb_dec_8way_avx;
ENDPROC(serpent_ecb_dec_8way_avx)
-ENTRY(serpent_cbc_dec_8way_avx)
@@ -15279,12 +16411,18 @@ index 8be5718..d2bcbcd 100644
/* input:
* %rdi: ctx, CTX
* %rsi: dst
-@@ -727,10 +732,11 @@ ENTRY(serpent_cbc_dec_8way_avx)
+@@ -722,15 +723,15 @@ ENTRY(serpent_cbc_dec_8way_avx)
+
+ load_8way(%rdx, RA1, RB1, RC1, RD1, RA2, RB2, RC2, RD2);
+
+- call __serpent_dec_blk8_avx;
++ pax_direct_call __serpent_dec_blk8_avx;
+
store_cbc_8way(%rdx, %rsi, RC1, RD1, RB1, RE1, RC2, RD2, RB2, RE2);
FRAME_END
-+ pax_force_retaddr
- ret;
+- ret;
++ pax_ret serpent_cbc_dec_8way_avx;
ENDPROC(serpent_cbc_dec_8way_avx)
-ENTRY(serpent_ctr_8way_avx)
@@ -15292,12 +16430,18 @@ index 8be5718..d2bcbcd 100644
/* input:
* %rdi: ctx, CTX
* %rsi: dst
-@@ -747,10 +753,11 @@ ENTRY(serpent_ctr_8way_avx)
+@@ -742,15 +743,15 @@ ENTRY(serpent_ctr_8way_avx)
+ load_ctr_8way(%rcx, .Lbswap128_mask, RA1, RB1, RC1, RD1, RA2, RB2, RC2,
+ RD2, RK0, RK1, RK2);
+
+- call __serpent_enc_blk8_avx;
++ pax_direct_call __serpent_enc_blk8_avx;
+
store_ctr_8way(%rdx, %rsi, RA1, RB1, RC1, RD1, RA2, RB2, RC2, RD2);
FRAME_END
-+ pax_force_retaddr
- ret;
+- ret;
++ pax_ret serpent_ctr_8way_avx;
ENDPROC(serpent_ctr_8way_avx)
-ENTRY(serpent_xts_enc_8way_avx)
@@ -15305,12 +16449,19 @@ index 8be5718..d2bcbcd 100644
/* input:
* %rdi: ctx, CTX
* %rsi: dst
-@@ -769,10 +776,11 @@ ENTRY(serpent_xts_enc_8way_avx)
+@@ -763,16 +764,16 @@ ENTRY(serpent_xts_enc_8way_avx)
+ load_xts_8way(%rcx, %rdx, %rsi, RA1, RB1, RC1, RD1, RA2, RB2, RC2, RD2,
+ RK0, RK1, RK2, .Lxts_gf128mul_and_shl1_mask);
+
+- call __serpent_enc_blk8_avx;
++ pax_direct_call __serpent_enc_blk8_avx;
+
+ /* dst <= regs xor IVs(in dst) */
store_xts_8way(%rsi, RA1, RB1, RC1, RD1, RA2, RB2, RC2, RD2);
FRAME_END
-+ pax_force_retaddr
- ret;
+- ret;
++ pax_ret serpent_xts_enc_8way_avx;
ENDPROC(serpent_xts_enc_8way_avx)
-ENTRY(serpent_xts_dec_8way_avx)
@@ -15318,15 +16469,22 @@ index 8be5718..d2bcbcd 100644
/* input:
* %rdi: ctx, CTX
* %rsi: dst
-@@ -791,5 +799,6 @@ ENTRY(serpent_xts_dec_8way_avx)
+@@ -785,11 +786,11 @@ ENTRY(serpent_xts_dec_8way_avx)
+ load_xts_8way(%rcx, %rdx, %rsi, RA1, RB1, RC1, RD1, RA2, RB2, RC2, RD2,
+ RK0, RK1, RK2, .Lxts_gf128mul_and_shl1_mask);
+
+- call __serpent_dec_blk8_avx;
++ pax_direct_call __serpent_dec_blk8_avx;
+
+ /* dst <= regs xor IVs(in dst) */
store_xts_8way(%rsi, RC1, RD1, RB1, RE1, RC2, RD2, RB2, RE2);
FRAME_END
-+ pax_force_retaddr
- ret;
+- ret;
++ pax_ret serpent_xts_dec_8way_avx;
ENDPROC(serpent_xts_dec_8way_avx)
diff --git a/arch/x86/crypto/serpent-avx2-asm_64.S b/arch/x86/crypto/serpent-avx2-asm_64.S
-index 97c48ad..25416de 100644
+index 97c48ad..541b03c 100644
--- a/arch/x86/crypto/serpent-avx2-asm_64.S
+++ b/arch/x86/crypto/serpent-avx2-asm_64.S
@@ -16,6 +16,7 @@
@@ -15337,20 +16495,21 @@ index 97c48ad..25416de 100644
#include "glue_helper-asm-avx2.S"
.file "serpent-avx2-asm_64.S"
-@@ -611,6 +612,7 @@ __serpent_enc_blk16:
+@@ -611,7 +612,7 @@ __serpent_enc_blk16:
write_blocks(RA1, RB1, RC1, RD1, RK0, RK1, RK2);
write_blocks(RA2, RB2, RC2, RD2, RK0, RK1, RK2);
-+ pax_force_retaddr
- ret;
+- ret;
++ pax_ret __serpent_enc_blk16;
ENDPROC(__serpent_enc_blk16)
-@@ -665,10 +667,11 @@ __serpent_dec_blk16:
+ .align 8
+@@ -665,10 +666,10 @@ __serpent_dec_blk16:
write_blocks(RC1, RD1, RB1, RE1, RK0, RK1, RK2);
write_blocks(RC2, RD2, RB2, RE2, RK0, RK1, RK2);
-+ pax_force_retaddr
- ret;
+- ret;
++ pax_ret __serpent_dec_blk16;
ENDPROC(__serpent_dec_blk16)
-ENTRY(serpent_ecb_enc_16way)
@@ -15358,12 +16517,20 @@ index 97c48ad..25416de 100644
/* input:
* %rdi: ctx, CTX
* %rsi: dst
-@@ -687,10 +690,11 @@ ENTRY(serpent_ecb_enc_16way)
+@@ -680,17 +681,17 @@ ENTRY(serpent_ecb_enc_16way)
+
+ load_16way(%rdx, RA1, RB1, RC1, RD1, RA2, RB2, RC2, RD2);
+
+- call __serpent_enc_blk16;
++ pax_direct_call __serpent_enc_blk16;
+
+ store_16way(%rsi, RA1, RB1, RC1, RD1, RA2, RB2, RC2, RD2);
+
vzeroupper;
FRAME_END
-+ pax_force_retaddr
- ret;
+- ret;
++ pax_ret serpent_ecb_enc_16way;
ENDPROC(serpent_ecb_enc_16way)
-ENTRY(serpent_ecb_dec_16way)
@@ -15371,12 +16538,20 @@ index 97c48ad..25416de 100644
/* input:
* %rdi: ctx, CTX
* %rsi: dst
-@@ -709,10 +713,11 @@ ENTRY(serpent_ecb_dec_16way)
+@@ -702,17 +703,17 @@ ENTRY(serpent_ecb_dec_16way)
+
+ load_16way(%rdx, RA1, RB1, RC1, RD1, RA2, RB2, RC2, RD2);
+
+- call __serpent_dec_blk16;
++ pax_direct_call __serpent_dec_blk16;
+
+ store_16way(%rsi, RC1, RD1, RB1, RE1, RC2, RD2, RB2, RE2);
+
vzeroupper;
FRAME_END
-+ pax_force_retaddr
- ret;
+- ret;
++ pax_ret serpent_ecb_dec_16way;
ENDPROC(serpent_ecb_dec_16way)
-ENTRY(serpent_cbc_dec_16way)
@@ -15384,12 +16559,21 @@ index 97c48ad..25416de 100644
/* input:
* %rdi: ctx, CTX
* %rsi: dst
-@@ -732,10 +737,11 @@ ENTRY(serpent_cbc_dec_16way)
+@@ -724,7 +725,7 @@ ENTRY(serpent_cbc_dec_16way)
+
+ load_16way(%rdx, RA1, RB1, RC1, RD1, RA2, RB2, RC2, RD2);
+
+- call __serpent_dec_blk16;
++ pax_direct_call __serpent_dec_blk16;
+
+ store_cbc_16way(%rdx, %rsi, RC1, RD1, RB1, RE1, RC2, RD2, RB2, RE2,
+ RK0);
+@@ -732,10 +733,10 @@ ENTRY(serpent_cbc_dec_16way)
vzeroupper;
FRAME_END
-+ pax_force_retaddr
- ret;
+- ret;
++ pax_ret serpent_cbc_dec_16way;
ENDPROC(serpent_cbc_dec_16way)
-ENTRY(serpent_ctr_16way)
@@ -15397,12 +16581,20 @@ index 97c48ad..25416de 100644
/* input:
* %rdi: ctx, CTX
* %rsi: dst (16 blocks)
-@@ -757,10 +763,11 @@ ENTRY(serpent_ctr_16way)
+@@ -750,17 +751,17 @@ ENTRY(serpent_ctr_16way)
+ RD2, RK0, RK0x, RK1, RK1x, RK2, RK2x, RK3, RK3x, RNOT,
+ tp);
+
+- call __serpent_enc_blk16;
++ pax_direct_call __serpent_enc_blk16;
+
+ store_ctr_16way(%rdx, %rsi, RA1, RB1, RC1, RD1, RA2, RB2, RC2, RD2);
+
vzeroupper;
FRAME_END
-+ pax_force_retaddr
- ret;
+- ret;
++ pax_ret serpent_ctr_16way;
ENDPROC(serpent_ctr_16way)
-ENTRY(serpent_xts_enc_16way)
@@ -15410,12 +16602,20 @@ index 97c48ad..25416de 100644
/* input:
* %rdi: ctx, CTX
* %rsi: dst (16 blocks)
-@@ -783,10 +790,11 @@ ENTRY(serpent_xts_enc_16way)
+@@ -776,17 +777,17 @@ ENTRY(serpent_xts_enc_16way)
+ .Lxts_gf128mul_and_shl1_mask_0,
+ .Lxts_gf128mul_and_shl1_mask_1);
+
+- call __serpent_enc_blk16;
++ pax_direct_call __serpent_enc_blk16;
+
+ store_xts_16way(%rsi, RA1, RB1, RC1, RD1, RA2, RB2, RC2, RD2);
+
vzeroupper;
FRAME_END
-+ pax_force_retaddr
- ret;
+- ret;
++ pax_ret serpent_xts_enc_16way;
ENDPROC(serpent_xts_enc_16way)
-ENTRY(serpent_xts_dec_16way)
@@ -15423,15 +16623,57 @@ index 97c48ad..25416de 100644
/* input:
* %rdi: ctx, CTX
* %rsi: dst (16 blocks)
-@@ -809,5 +817,6 @@ ENTRY(serpent_xts_dec_16way)
+@@ -802,12 +803,12 @@ ENTRY(serpent_xts_dec_16way)
+ .Lxts_gf128mul_and_shl1_mask_0,
+ .Lxts_gf128mul_and_shl1_mask_1);
+
+- call __serpent_dec_blk16;
++ pax_direct_call __serpent_dec_blk16;
+
+ store_xts_16way(%rsi, RC1, RD1, RB1, RE1, RC2, RD2, RB2, RE2);
+
vzeroupper;
FRAME_END
-+ pax_force_retaddr
- ret;
+- ret;
++ pax_ret serpent_xts_dec_16way;
ENDPROC(serpent_xts_dec_16way)
+diff --git a/arch/x86/crypto/serpent-sse2-i586-asm_32.S b/arch/x86/crypto/serpent-sse2-i586-asm_32.S
+index d348f15..48aa0c3 100644
+--- a/arch/x86/crypto/serpent-sse2-i586-asm_32.S
++++ b/arch/x86/crypto/serpent-sse2-i586-asm_32.S
+@@ -25,6 +25,7 @@
+ */
+
+ #include <linux/linkage.h>
++#include <asm/alternative-asm.h>
+
+ .file "serpent-sse2-i586-asm_32.S"
+ .text
+@@ -568,12 +569,12 @@ ENTRY(__serpent_enc_blk_4way)
+
+ write_blocks(%eax, RA, RB, RC, RD, RT0, RT1, RE);
+
+- ret;
++ pax_ret __serpent_enc_blk_4way;
+
+ .L__enc_xor4:
+ xor_blocks(%eax, RA, RB, RC, RD, RT0, RT1, RE);
+
+- ret;
++ pax_ret __serpent_enc_blk_4way;
+ ENDPROC(__serpent_enc_blk_4way)
+
+ ENTRY(serpent_dec_blk_4way)
+@@ -627,5 +628,5 @@ ENTRY(serpent_dec_blk_4way)
+ movl arg_dst(%esp), %eax;
+ write_blocks(%eax, RC, RD, RB, RE, RT0, RT1, RA);
+
+- ret;
++ pax_ret serpent_dec_blk_4way;
+ ENDPROC(serpent_dec_blk_4way)
diff --git a/arch/x86/crypto/serpent-sse2-x86_64-asm_64.S b/arch/x86/crypto/serpent-sse2-x86_64-asm_64.S
-index acc066c..1559cc4 100644
+index acc066c..d96c7c2 100644
--- a/arch/x86/crypto/serpent-sse2-x86_64-asm_64.S
+++ b/arch/x86/crypto/serpent-sse2-x86_64-asm_64.S
@@ -25,6 +25,7 @@
@@ -15442,33 +16684,34 @@ index acc066c..1559cc4 100644
.file "serpent-sse2-x86_64-asm_64.S"
.text
-@@ -690,12 +691,14 @@ ENTRY(__serpent_enc_blk_8way)
+@@ -690,13 +691,13 @@ ENTRY(__serpent_enc_blk_8way)
write_blocks(%rsi, RA1, RB1, RC1, RD1, RK0, RK1, RK2);
write_blocks(%rax, RA2, RB2, RC2, RD2, RK0, RK1, RK2);
-+ pax_force_retaddr
- ret;
+- ret;
++ pax_ret __serpent_enc_blk_8way;
.L__enc_xor8:
xor_blocks(%rsi, RA1, RB1, RC1, RD1, RK0, RK1, RK2);
xor_blocks(%rax, RA2, RB2, RC2, RD2, RK0, RK1, RK2);
-+ pax_force_retaddr
- ret;
+- ret;
++ pax_ret __serpent_enc_blk_8way;
ENDPROC(__serpent_enc_blk_8way)
-@@ -750,5 +753,6 @@ ENTRY(serpent_dec_blk_8way)
+ ENTRY(serpent_dec_blk_8way)
+@@ -750,5 +751,5 @@ ENTRY(serpent_dec_blk_8way)
write_blocks(%rsi, RC1, RD1, RB1, RE1, RK0, RK1, RK2);
write_blocks(%rax, RC2, RD2, RB2, RE2, RK0, RK1, RK2);
-+ pax_force_retaddr
- ret;
+- ret;
++ pax_ret serpent_dec_blk_8way;
ENDPROC(serpent_dec_blk_8way)
diff --git a/arch/x86/crypto/serpent_avx2_glue.c b/arch/x86/crypto/serpent_avx2_glue.c
-index 870f6d8..9fed18e 100644
+index 870f6d8..aaf38de 100644
--- a/arch/x86/crypto/serpent_avx2_glue.c
+++ b/arch/x86/crypto/serpent_avx2_glue.c
-@@ -27,18 +27,18 @@
+@@ -27,18 +27,20 @@
#define SERPENT_AVX2_PARALLEL_BLOCKS 16
/* 16-way AVX2 parallel cipher functions */
@@ -15480,6 +16723,8 @@ index 870f6d8..9fed18e 100644
const u8 *src);
-asmlinkage void serpent_cbc_dec_16way(void *ctx, u128 *dst, const u128 *src);
+asmlinkage void serpent_cbc_dec_16way(void *ctx, u8 *dst, const u8 *src);
++void __serpent_enc_blk16(void *ctx, u8 *dst, const u8 *src) __rap_hash;
++void __serpent_dec_blk16(void *ctx, u8 *dst, const u8 *src) __rap_hash;
asmlinkage void serpent_ctr_16way(void *ctx, u128 *dst, const u128 *src,
le128 *iv);
@@ -15552,11 +16797,30 @@ index 644f97a..4d069a1 100644
u128 ivs[SERPENT_PARALLEL_BLOCKS - 1];
unsigned int j;
+diff --git a/arch/x86/crypto/sha1-mb/sha1_mb_mgr.h b/arch/x86/crypto/sha1-mb/sha1_mb_mgr.h
+index 08ad1a9..293bc9e 100644
+--- a/arch/x86/crypto/sha1-mb/sha1_mb_mgr.h
++++ b/arch/x86/crypto/sha1-mb/sha1_mb_mgr.h
+@@ -106,5 +106,6 @@ struct job_sha1 *sha1_mb_mgr_submit_avx2(struct sha1_mb_mgr *state,
+ struct job_sha1 *job);
+ struct job_sha1 *sha1_mb_mgr_flush_avx2(struct sha1_mb_mgr *state);
+ struct job_sha1 *sha1_mb_mgr_get_comp_job_avx2(struct sha1_mb_mgr *state);
++struct job_sha1 *sha1_x8_avx2(struct sha1_mb_mgr *state) __rap_hash;
+
+ #endif
diff --git a/arch/x86/crypto/sha1-mb/sha1_mb_mgr_flush_avx2.S b/arch/x86/crypto/sha1-mb/sha1_mb_mgr_flush_avx2.S
-index 96df6a3..8519a8f 100644
+index 96df6a3..f5f561f 100644
--- a/arch/x86/crypto/sha1-mb/sha1_mb_mgr_flush_avx2.S
+++ b/arch/x86/crypto/sha1-mb/sha1_mb_mgr_flush_avx2.S
-@@ -103,7 +103,7 @@ offset = \_offset
+@@ -53,6 +53,7 @@
+ */
+ #include <linux/linkage.h>
+ #include <asm/frame.h>
++#include <asm/alternative-asm.h>
+ #include "sha1_mb_mgr_datastruct.S"
+
+
+@@ -103,7 +104,7 @@ offset = \_offset
# JOB* sha1_mb_mgr_flush_avx2(MB_MGR *state)
# arg 1 : rcx : state
@@ -15565,7 +16829,25 @@ index 96df6a3..8519a8f 100644
FRAME_BEGIN
push %rbx
-@@ -226,7 +226,7 @@ ENDPROC(sha1_mb_mgr_flush_avx2)
+@@ -183,7 +184,7 @@ LABEL skip_ %I
+
+ # "state" and "args" are the same address, arg1
+ # len is arg2
+- call sha1_x8_avx2
++ pax_direct_call sha1_x8_avx2
+ # state and idx are intact
+
+
+@@ -215,7 +216,7 @@ len_is_0:
+ return:
+ pop %rbx
+ FRAME_END
+- ret
++ pax_ret sha1_mb_mgr_flush_avx2
+
+ return_null:
+ xor job_rax, job_rax
+@@ -226,7 +227,7 @@ ENDPROC(sha1_mb_mgr_flush_avx2)
#################################################################
.align 16
@@ -15574,11 +16856,34 @@ index 96df6a3..8519a8f 100644
push %rbx
## if bit 32+3 is set, then all lanes are empty
+@@ -273,12 +274,12 @@ ENTRY(sha1_mb_mgr_get_comp_job_avx2)
+
+ pop %rbx
+
+- ret
++ pax_ret sha1_mb_mgr_get_comp_job_avx2
+
+ .return_null:
+ xor job_rax, job_rax
+ pop %rbx
+- ret
++ pax_ret sha1_mb_mgr_get_comp_job_avx2
+ ENDPROC(sha1_mb_mgr_get_comp_job_avx2)
+
+ .data
diff --git a/arch/x86/crypto/sha1-mb/sha1_mb_mgr_submit_avx2.S b/arch/x86/crypto/sha1-mb/sha1_mb_mgr_submit_avx2.S
-index 63a0d9c..a6038fd 100644
+index 63a0d9c..53b60ac 100644
--- a/arch/x86/crypto/sha1-mb/sha1_mb_mgr_submit_avx2.S
+++ b/arch/x86/crypto/sha1-mb/sha1_mb_mgr_submit_avx2.S
-@@ -98,7 +98,7 @@ lane_data = %r10
+@@ -54,6 +54,7 @@
+
+ #include <linux/linkage.h>
+ #include <asm/frame.h>
++#include <asm/alternative-asm.h>
+ #include "sha1_mb_mgr_datastruct.S"
+
+
+@@ -98,7 +99,7 @@ lane_data = %r10
# JOB* submit_mb_mgr_submit_avx2(MB_MGR *state, job_sha1 *job)
# arg 1 : rcx : state
# arg 2 : rdx : job
@@ -15587,8 +16892,89 @@ index 63a0d9c..a6038fd 100644
FRAME_BEGIN
push %rbx
push %r12
+@@ -163,7 +164,7 @@ start_loop:
+
+ # "state" and "args" are the same address, arg1
+ # len is arg2
+- call sha1_x8_avx2
++ pax_direct_call sha1_x8_avx2
+
+ # state and idx are intact
+
+@@ -195,7 +196,7 @@ return:
+ pop %r12
+ pop %rbx
+ FRAME_END
+- ret
++ pax_ret sha1_mb_mgr_submit_avx2
+
+ return_null:
+ xor job_rax, job_rax
+diff --git a/arch/x86/crypto/sha1-mb/sha1_x8_avx2.S b/arch/x86/crypto/sha1-mb/sha1_x8_avx2.S
+index c9dae1c..6055141 100644
+--- a/arch/x86/crypto/sha1-mb/sha1_x8_avx2.S
++++ b/arch/x86/crypto/sha1-mb/sha1_x8_avx2.S
+@@ -53,6 +53,7 @@
+ */
+
+ #include <linux/linkage.h>
++#include <asm/alternative-asm.h>
+ #include "sha1_mb_mgr_datastruct.S"
+
+ ## code to compute oct SHA1 using SSE-256
+@@ -457,7 +458,7 @@ lloop:
+ pop %r13
+ pop %r12
+
+- ret
++ pax_ret sha1_x8_avx2
+ ENDPROC(sha1_x8_avx2)
+
+
+diff --git a/arch/x86/crypto/sha1_avx2_x86_64_asm.S b/arch/x86/crypto/sha1_avx2_x86_64_asm.S
+index 1cd792d..2236003 100644
+--- a/arch/x86/crypto/sha1_avx2_x86_64_asm.S
++++ b/arch/x86/crypto/sha1_avx2_x86_64_asm.S
+@@ -70,6 +70,7 @@
+ */
+
+ #include <linux/linkage.h>
++#include <asm/alternative-asm.h>
+
+ #define CTX %rdi /* arg1 */
+ #define BUF %rsi /* arg2 */
+@@ -671,7 +672,7 @@ _loop3:
+ pop %rbp
+ pop %rbx
+
+- ret
++ pax_ret \name
+
+ ENDPROC(\name)
+ .endm
+diff --git a/arch/x86/crypto/sha1_ni_asm.S b/arch/x86/crypto/sha1_ni_asm.S
+index 874a651..aa3d201 100644
+--- a/arch/x86/crypto/sha1_ni_asm.S
++++ b/arch/x86/crypto/sha1_ni_asm.S
+@@ -54,6 +54,7 @@
+ */
+
+ #include <linux/linkage.h>
++#include <asm/alternative-asm.h>
+
+ #define DIGEST_PTR %rdi /* 1st arg */
+ #define DATA_PTR %rsi /* 2nd arg */
+@@ -290,7 +291,7 @@ ENTRY(sha1_ni_transform)
+ .Ldone_hash:
+ mov RSPSAVE, %rsp
+
+- ret
++ pax_ret sha1_ni_transform
+ ENDPROC(sha1_ni_transform)
+
+ .data
diff --git a/arch/x86/crypto/sha1_ssse3_asm.S b/arch/x86/crypto/sha1_ssse3_asm.S
-index a410950..02d2056 100644
+index a410950..f0fefc3 100644
--- a/arch/x86/crypto/sha1_ssse3_asm.S
+++ b/arch/x86/crypto/sha1_ssse3_asm.S
@@ -29,6 +29,7 @@
@@ -15617,7 +17003,7 @@ index a410950..02d2056 100644
sub $64, %rsp # allocate workspace
and $~15, %rsp # align stack
-@@ -99,11 +101,12 @@
+@@ -99,12 +101,12 @@
xor %rax, %rax
rep stosq
@@ -15628,10 +17014,11 @@ index a410950..02d2056 100644
+ pop %r14
pop %rbp
pop %rbx
-+ pax_force_retaddr
- ret
+- ret
++ pax_ret \name
ENDPROC(\name)
+ .endm
diff --git a/arch/x86/crypto/sha1_ssse3_glue.c b/arch/x86/crypto/sha1_ssse3_glue.c
index fc61739..03f7efe 100644
--- a/arch/x86/crypto/sha1_ssse3_glue.c
@@ -15786,7 +17173,7 @@ index fc61739..03f7efe 100644
static int sha1_ni_final(struct shash_desc *desc, u8 *out)
diff --git a/arch/x86/crypto/sha256-avx-asm.S b/arch/x86/crypto/sha256-avx-asm.S
-index 92b3b5d..8732479 100644
+index 92b3b5d..47aadd7 100644
--- a/arch/x86/crypto/sha256-avx-asm.S
+++ b/arch/x86/crypto/sha256-avx-asm.S
@@ -49,6 +49,7 @@
@@ -15807,16 +17194,17 @@ index 92b3b5d..8732479 100644
pushq %rbx
pushq %rbp
pushq %r13
-@@ -460,6 +460,7 @@ done_hash:
+@@ -460,7 +460,7 @@ done_hash:
popq %r13
popq %rbp
popq %rbx
-+ pax_force_retaddr
- ret
+- ret
++ pax_ret sha256_transform_avx
ENDPROC(sha256_transform_avx)
+ .data
diff --git a/arch/x86/crypto/sha256-avx2-asm.S b/arch/x86/crypto/sha256-avx2-asm.S
-index 570ec5e..9bcfa25 100644
+index 570ec5e..6c7f33c 100644
--- a/arch/x86/crypto/sha256-avx2-asm.S
+++ b/arch/x86/crypto/sha256-avx2-asm.S
@@ -50,6 +50,7 @@
@@ -15837,19 +17225,39 @@ index 570ec5e..9bcfa25 100644
pushq %rbx
pushq %rbp
pushq %r12
-@@ -720,6 +720,7 @@ done_hash:
+@@ -720,7 +720,7 @@ done_hash:
popq %r12
popq %rbp
popq %rbx
-+ pax_force_retaddr
- ret
+- ret
++ pax_ret sha256_transform_rorx
ENDPROC(sha256_transform_rorx)
+ .data
+diff --git a/arch/x86/crypto/sha256-mb/sha256_mb_mgr.h b/arch/x86/crypto/sha256-mb/sha256_mb_mgr.h
+index b01ae40..880e1d4 100644
+--- a/arch/x86/crypto/sha256-mb/sha256_mb_mgr.h
++++ b/arch/x86/crypto/sha256-mb/sha256_mb_mgr.h
+@@ -104,5 +104,6 @@ struct job_sha256 *sha256_mb_mgr_submit_avx2(struct sha256_mb_mgr *state,
+ struct job_sha256 *job);
+ struct job_sha256 *sha256_mb_mgr_flush_avx2(struct sha256_mb_mgr *state);
+ struct job_sha256 *sha256_mb_mgr_get_comp_job_avx2(struct sha256_mb_mgr *state);
++struct job_sha256 *sha256_x8_avx2(struct sha256_mb_mgr *state) __rap_hash;
+
+ #endif
diff --git a/arch/x86/crypto/sha256-mb/sha256_mb_mgr_flush_avx2.S b/arch/x86/crypto/sha256-mb/sha256_mb_mgr_flush_avx2.S
-index a78a069..127cb66 100644
+index a78a069..3919641 100644
--- a/arch/x86/crypto/sha256-mb/sha256_mb_mgr_flush_avx2.S
+++ b/arch/x86/crypto/sha256-mb/sha256_mb_mgr_flush_avx2.S
-@@ -101,7 +101,7 @@ offset = \_offset
+@@ -52,6 +52,7 @@
+ */
+ #include <linux/linkage.h>
+ #include <asm/frame.h>
++#include <asm/alternative-asm.h>
+ #include "sha256_mb_mgr_datastruct.S"
+
+ .extern sha256_x8_avx2
+@@ -101,7 +102,7 @@ offset = \_offset
# JOB_SHA256* sha256_mb_mgr_flush_avx2(MB_MGR *state)
# arg 1 : rcx : state
@@ -15858,7 +17266,25 @@ index a78a069..127cb66 100644
FRAME_BEGIN
push %rbx
-@@ -225,7 +225,7 @@ ENDPROC(sha256_mb_mgr_flush_avx2)
+@@ -181,7 +182,7 @@ LABEL skip_ %I
+
+ # "state" and "args" are the same address, arg1
+ # len is arg2
+- call sha256_x8_avx2
++ pax_direct_call sha256_x8_avx2
+ # state and idx are intact
+
+ len_is_0:
+@@ -215,7 +216,7 @@ len_is_0:
+ return:
+ pop %rbx
+ FRAME_END
+- ret
++ pax_ret sha256_mb_mgr_flush_avx2
+
+ return_null:
+ xor job_rax, job_rax
+@@ -225,7 +226,7 @@ ENDPROC(sha256_mb_mgr_flush_avx2)
##############################################################################
.align 16
@@ -15867,11 +17293,34 @@ index a78a069..127cb66 100644
push %rbx
## if bit 32+3 is set, then all lanes are empty
+@@ -276,12 +277,12 @@ ENTRY(sha256_mb_mgr_get_comp_job_avx2)
+
+ pop %rbx
+
+- ret
++ pax_ret sha256_mb_mgr_get_comp_job_avx2
+
+ .return_null:
+ xor job_rax, job_rax
+ pop %rbx
+- ret
++ pax_ret sha256_mb_mgr_get_comp_job_avx2
+ ENDPROC(sha256_mb_mgr_get_comp_job_avx2)
+
+ .data
diff --git a/arch/x86/crypto/sha256-mb/sha256_mb_mgr_submit_avx2.S b/arch/x86/crypto/sha256-mb/sha256_mb_mgr_submit_avx2.S
-index 7ea670e..5aa297a 100644
+index 7ea670e..835723c 100644
--- a/arch/x86/crypto/sha256-mb/sha256_mb_mgr_submit_avx2.S
+++ b/arch/x86/crypto/sha256-mb/sha256_mb_mgr_submit_avx2.S
-@@ -96,7 +96,7 @@ lane_data = %r10
+@@ -53,6 +53,7 @@
+
+ #include <linux/linkage.h>
+ #include <asm/frame.h>
++#include <asm/alternative-asm.h>
+ #include "sha256_mb_mgr_datastruct.S"
+
+ .extern sha256_x8_avx2
+@@ -96,7 +97,7 @@ lane_data = %r10
# JOB* sha256_mb_mgr_submit_avx2(MB_MGR *state, JOB_SHA256 *job)
# arg 1 : rcx : state
# arg 2 : rdx : job
@@ -15880,8 +17329,47 @@ index 7ea670e..5aa297a 100644
FRAME_BEGIN
push %rbx
push %r12
+@@ -164,7 +165,7 @@ start_loop:
+
+ # "state" and "args" are the same address, arg1
+ # len is arg2
+- call sha256_x8_avx2
++ pax_direct_call sha256_x8_avx2
+
+ # state and idx are intact
+
+@@ -200,7 +201,7 @@ return:
+ pop %r12
+ pop %rbx
+ FRAME_END
+- ret
++ pax_ret sha256_mb_mgr_submit_avx2
+
+ return_null:
+ xor job_rax, job_rax
+diff --git a/arch/x86/crypto/sha256-mb/sha256_x8_avx2.S b/arch/x86/crypto/sha256-mb/sha256_x8_avx2.S
+index aa21aea..cb35a6e 100644
+--- a/arch/x86/crypto/sha256-mb/sha256_x8_avx2.S
++++ b/arch/x86/crypto/sha256-mb/sha256_x8_avx2.S
+@@ -52,6 +52,7 @@
+ */
+
+ #include <linux/linkage.h>
++#include <asm/alternative-asm.h>
+ #include "sha256_mb_mgr_datastruct.S"
+
+ ## code to compute oct SHA256 using SSE-256
+@@ -435,7 +436,7 @@ Lrounds_16_xx:
+ pop %r13
+ pop %r12
+
+- ret
++ pax_ret sha256_x8_avx2
+ ENDPROC(sha256_x8_avx2)
+ .data
+ .align 64
diff --git a/arch/x86/crypto/sha256-ssse3-asm.S b/arch/x86/crypto/sha256-ssse3-asm.S
-index 2cedc44..6fb8582 100644
+index 2cedc44..35ed999 100644
--- a/arch/x86/crypto/sha256-ssse3-asm.S
+++ b/arch/x86/crypto/sha256-ssse3-asm.S
@@ -47,6 +47,7 @@
@@ -15903,19 +17391,28 @@ index 2cedc44..6fb8582 100644
pushq %rbx
pushq %rbp
pushq %r13
-@@ -471,6 +470,7 @@ done_hash:
+@@ -471,7 +470,7 @@ done_hash:
popq %rbp
popq %rbx
-+ pax_force_retaddr
- ret
+- ret
++ pax_ret sha256_transform_ssse3
ENDPROC(sha256_transform_ssse3)
+ .data
diff --git a/arch/x86/crypto/sha256_ni_asm.S b/arch/x86/crypto/sha256_ni_asm.S
-index 748cdf2..959bb4d 100644
+index 748cdf2..cd2180d 100644
--- a/arch/x86/crypto/sha256_ni_asm.S
+++ b/arch/x86/crypto/sha256_ni_asm.S
-@@ -97,7 +97,7 @@
+@@ -54,6 +54,7 @@
+ */
+
+ #include <linux/linkage.h>
++#include <asm/alternative-asm.h>
+
+ #define DIGEST_PTR %rdi /* 1st arg */
+ #define DATA_PTR %rsi /* 2nd arg */
+@@ -97,7 +98,7 @@
.text
.align 32
@@ -15924,6 +17421,15 @@ index 748cdf2..959bb4d 100644
shl $6, NUM_BLKS /* convert to bytes */
jz .Ldone_hash
+@@ -326,7 +327,7 @@ ENTRY(sha256_ni_transform)
+
+ .Ldone_hash:
+
+- ret
++ pax_ret sha256_ni_transform
+ ENDPROC(sha256_ni_transform)
+
+ .data
diff --git a/arch/x86/crypto/sha256_ssse3_glue.c b/arch/x86/crypto/sha256_ssse3_glue.c
index 9e79baf..c5186c74 100644
--- a/arch/x86/crypto/sha256_ssse3_glue.c
@@ -15997,7 +17503,7 @@ index 9e79baf..c5186c74 100644
static int sha256_ni_update(struct shash_desc *desc, const u8 *data,
unsigned int len)
diff --git a/arch/x86/crypto/sha512-avx-asm.S b/arch/x86/crypto/sha512-avx-asm.S
-index 565274d..779d34a 100644
+index 565274d..106c3dc 100644
--- a/arch/x86/crypto/sha512-avx-asm.S
+++ b/arch/x86/crypto/sha512-avx-asm.S
@@ -49,6 +49,7 @@
@@ -16018,16 +17524,17 @@ index 565274d..779d34a 100644
cmp $0, msglen
je nowork
-@@ -364,6 +366,7 @@ updateblock:
+@@ -364,7 +366,7 @@ updateblock:
mov frame_RSPSAVE(%rsp), %rsp
nowork:
-+ pax_force_retaddr
- ret
+- ret
++ pax_ret sha512_transform_avx
ENDPROC(sha512_transform_avx)
+ ########################################################################
diff --git a/arch/x86/crypto/sha512-avx2-asm.S b/arch/x86/crypto/sha512-avx2-asm.S
-index 1f20b35..ab1f3a8 100644
+index 1f20b35..f12df89 100644
--- a/arch/x86/crypto/sha512-avx2-asm.S
+++ b/arch/x86/crypto/sha512-avx2-asm.S
@@ -51,6 +51,7 @@
@@ -16048,19 +17555,39 @@ index 1f20b35..ab1f3a8 100644
# Allocate Stack Space
mov %rsp, %rax
sub $frame_size, %rsp
-@@ -678,6 +680,7 @@ done_hash:
+@@ -678,7 +680,7 @@ done_hash:
# Restore Stack Pointer
mov frame_RSPSAVE(%rsp), %rsp
-+ pax_force_retaddr
- ret
+- ret
++ pax_ret sha512_transform_rorx
ENDPROC(sha512_transform_rorx)
+ ########################################################################
+diff --git a/arch/x86/crypto/sha512-mb/sha512_mb_mgr.h b/arch/x86/crypto/sha512-mb/sha512_mb_mgr.h
+index 178f17e..88a59c6 100644
+--- a/arch/x86/crypto/sha512-mb/sha512_mb_mgr.h
++++ b/arch/x86/crypto/sha512-mb/sha512_mb_mgr.h
+@@ -100,5 +100,6 @@ struct job_sha512 *sha512_mb_mgr_submit_avx2(struct sha512_mb_mgr *state,
+ struct job_sha512 *job);
+ struct job_sha512 *sha512_mb_mgr_flush_avx2(struct sha512_mb_mgr *state);
+ struct job_sha512 *sha512_mb_mgr_get_comp_job_avx2(struct sha512_mb_mgr *state);
++struct job_sha512 *sha512_x4_avx2(struct sha512_mb_mgr *state) __rap_hash;
+
+ #endif
diff --git a/arch/x86/crypto/sha512-mb/sha512_mb_mgr_flush_avx2.S b/arch/x86/crypto/sha512-mb/sha512_mb_mgr_flush_avx2.S
-index 3ddba19..2d3abc7 100644
+index 3ddba19..392d6a1 100644
--- a/arch/x86/crypto/sha512-mb/sha512_mb_mgr_flush_avx2.S
+++ b/arch/x86/crypto/sha512-mb/sha512_mb_mgr_flush_avx2.S
-@@ -107,7 +107,7 @@ offset = \_offset
+@@ -53,6 +53,7 @@
+
+ #include <linux/linkage.h>
+ #include <asm/frame.h>
++#include <asm/alternative-asm.h>
+ #include "sha512_mb_mgr_datastruct.S"
+
+ .extern sha512_x4_avx2
+@@ -107,7 +108,7 @@ offset = \_offset
# JOB* sha512_mb_mgr_flush_avx2(MB_MGR *state)
# arg 1 : rcx : state
@@ -16069,7 +17596,25 @@ index 3ddba19..2d3abc7 100644
FRAME_BEGIN
push %rbx
-@@ -220,7 +220,7 @@ return_null:
+@@ -177,7 +178,7 @@ LABEL skip_ %I
+
+ # "state" and "args" are the same address, arg1
+ # len is arg2
+- call sha512_x4_avx2
++ pax_direct_call sha512_x4_avx2
+ # state and idx are intact
+
+ len_is_0:
+@@ -212,7 +213,7 @@ len_is_0:
+ return:
+ pop %rbx
+ FRAME_END
+- ret
++ pax_ret sha512_mb_mgr_flush_avx2
+
+ return_null:
+ xor job_rax, job_rax
+@@ -220,7 +221,7 @@ return_null:
ENDPROC(sha512_mb_mgr_flush_avx2)
.align 16
@@ -16078,11 +17623,34 @@ index 3ddba19..2d3abc7 100644
push %rbx
mov _unused_lanes(state), unused_lanes
+@@ -273,12 +274,12 @@ ENTRY(sha512_mb_mgr_get_comp_job_avx2)
+
+ pop %rbx
+
+- ret
++ pax_ret sha512_mb_mgr_get_comp_job_avx2
+
+ .return_null:
+ xor job_rax, job_rax
+ pop %rbx
+- ret
++ pax_ret sha512_mb_mgr_get_comp_job_avx2
+ ENDPROC(sha512_mb_mgr_get_comp_job_avx2)
+ .data
+
diff --git a/arch/x86/crypto/sha512-mb/sha512_mb_mgr_submit_avx2.S b/arch/x86/crypto/sha512-mb/sha512_mb_mgr_submit_avx2.S
-index 815f07b..70fbc7b 100644
+index 815f07b..a1f961a 100644
--- a/arch/x86/crypto/sha512-mb/sha512_mb_mgr_submit_avx2.S
+++ b/arch/x86/crypto/sha512-mb/sha512_mb_mgr_submit_avx2.S
-@@ -98,7 +98,7 @@
+@@ -53,6 +53,7 @@
+
+ #include <linux/linkage.h>
+ #include <asm/frame.h>
++#include <asm/alternative-asm.h>
+ #include "sha512_mb_mgr_datastruct.S"
+
+ .extern sha512_x4_avx2
+@@ -98,7 +99,7 @@
# JOB* sha512_mb_mgr_submit_avx2(MB_MGR *state, JOB *job)
# arg 1 : rcx : state
# arg 2 : rdx : job
@@ -16091,8 +17659,47 @@ index 815f07b..70fbc7b 100644
FRAME_BEGIN
push %rbx
push %r12
+@@ -167,7 +168,7 @@ start_loop:
+
+ # "state" and "args" are the same address, arg1
+ # len is arg2
+- call sha512_x4_avx2
++ pax_direct_call sha512_x4_avx2
+ # state and idx are intact
+
+ len_is_0:
+@@ -203,7 +204,7 @@ return:
+ pop %r12
+ pop %rbx
+ FRAME_END
+- ret
++ pax_ret sha512_mb_mgr_submit_avx2
+
+ return_null:
+ xor job_rax, job_rax
+diff --git a/arch/x86/crypto/sha512-mb/sha512_x4_avx2.S b/arch/x86/crypto/sha512-mb/sha512_x4_avx2.S
+index 31ab1ef..da5a002 100644
+--- a/arch/x86/crypto/sha512-mb/sha512_x4_avx2.S
++++ b/arch/x86/crypto/sha512-mb/sha512_x4_avx2.S
+@@ -63,6 +63,7 @@
+ # clobbers ymm0-15
+
+ #include <linux/linkage.h>
++#include <asm/alternative-asm.h>
+ #include "sha512_mb_mgr_datastruct.S"
+
+ arg1 = %rdi
+@@ -358,7 +359,7 @@ Lrounds_16_xx:
+ pop %r12
+
+ # outer calling routine restores XMM and other GP registers
+- ret
++ pax_ret sha512_x4_avx2
+ ENDPROC(sha512_x4_avx2)
+
+ .data
diff --git a/arch/x86/crypto/sha512-ssse3-asm.S b/arch/x86/crypto/sha512-ssse3-asm.S
-index e610e29..83f1cde 100644
+index e610e29..6b3848e 100644
--- a/arch/x86/crypto/sha512-ssse3-asm.S
+++ b/arch/x86/crypto/sha512-ssse3-asm.S
@@ -48,6 +48,7 @@
@@ -16113,14 +17720,15 @@ index e610e29..83f1cde 100644
cmp $0, msglen
je nowork
-@@ -363,6 +365,7 @@ updateblock:
+@@ -363,7 +365,7 @@ updateblock:
mov frame_RSPSAVE(%rsp), %rsp
nowork:
-+ pax_force_retaddr
- ret
+- ret
++ pax_ret sha512_transform_ssse3
ENDPROC(sha512_transform_ssse3)
+ ########################################################################
diff --git a/arch/x86/crypto/sha512_ssse3_glue.c b/arch/x86/crypto/sha512_ssse3_glue.c
index 2b0e2a6..59a1f94 100644
--- a/arch/x86/crypto/sha512_ssse3_glue.c
@@ -16184,7 +17792,7 @@ index 2b0e2a6..59a1f94 100644
static int sha512_avx2_update(struct shash_desc *desc, const u8 *data,
unsigned int len)
diff --git a/arch/x86/crypto/twofish-avx-x86_64-asm_64.S b/arch/x86/crypto/twofish-avx-x86_64-asm_64.S
-index dc66273..30aba4b 100644
+index dc66273..91dc734b 100644
--- a/arch/x86/crypto/twofish-avx-x86_64-asm_64.S
+++ b/arch/x86/crypto/twofish-avx-x86_64-asm_64.S
@@ -25,6 +25,7 @@
@@ -16195,20 +17803,21 @@ index dc66273..30aba4b 100644
#include "glue_helper-asm-avx.S"
.file "twofish-avx-x86_64-asm_64.S"
-@@ -285,6 +286,7 @@ __twofish_enc_blk8:
+@@ -285,7 +286,7 @@ __twofish_enc_blk8:
outunpack_blocks(RC1, RD1, RA1, RB1, RK1, RX0, RY0, RK2);
outunpack_blocks(RC2, RD2, RA2, RB2, RK1, RX0, RY0, RK2);
-+ pax_force_retaddr
- ret;
+- ret;
++ pax_ret __twofish_enc_blk8;
ENDPROC(__twofish_enc_blk8)
-@@ -325,10 +327,11 @@ __twofish_dec_blk8:
+ .align 8
+@@ -325,10 +326,10 @@ __twofish_dec_blk8:
outunpack_blocks(RA1, RB1, RC1, RD1, RK1, RX0, RY0, RK2);
outunpack_blocks(RA2, RB2, RC2, RD2, RK1, RX0, RY0, RK2);
-+ pax_force_retaddr
- ret;
+- ret;
++ pax_ret __twofish_dec_blk8;
ENDPROC(__twofish_dec_blk8)
-ENTRY(twofish_ecb_enc_8way)
@@ -16216,12 +17825,18 @@ index dc66273..30aba4b 100644
/* input:
* %rdi: ctx, CTX
* %rsi: dst
-@@ -345,10 +348,11 @@ ENTRY(twofish_ecb_enc_8way)
+@@ -340,15 +341,15 @@ ENTRY(twofish_ecb_enc_8way)
+
+ load_8way(%rdx, RA1, RB1, RC1, RD1, RA2, RB2, RC2, RD2);
+
+- call __twofish_enc_blk8;
++ pax_direct_call __twofish_enc_blk8;
+
store_8way(%r11, RC1, RD1, RA1, RB1, RC2, RD2, RA2, RB2);
FRAME_END
-+ pax_force_retaddr
- ret;
+- ret;
++ pax_ret twofish_ecb_enc_8way;
ENDPROC(twofish_ecb_enc_8way)
-ENTRY(twofish_ecb_dec_8way)
@@ -16229,12 +17844,18 @@ index dc66273..30aba4b 100644
/* input:
* %rdi: ctx, CTX
* %rsi: dst
-@@ -365,10 +369,11 @@ ENTRY(twofish_ecb_dec_8way)
+@@ -360,15 +361,15 @@ ENTRY(twofish_ecb_dec_8way)
+
+ load_8way(%rdx, RC1, RD1, RA1, RB1, RC2, RD2, RA2, RB2);
+
+- call __twofish_dec_blk8;
++ pax_direct_call __twofish_dec_blk8;
+
store_8way(%r11, RA1, RB1, RC1, RD1, RA2, RB2, RC2, RD2);
FRAME_END
-+ pax_force_retaddr
- ret;
+- ret;
++ pax_ret twofish_ecb_dec_8way;
ENDPROC(twofish_ecb_dec_8way)
-ENTRY(twofish_cbc_dec_8way)
@@ -16242,7 +17863,7 @@ index dc66273..30aba4b 100644
/* input:
* %rdi: ctx, CTX
* %rsi: dst
-@@ -376,24 +381,25 @@ ENTRY(twofish_cbc_dec_8way)
+@@ -376,24 +377,24 @@ ENTRY(twofish_cbc_dec_8way)
*/
FRAME_BEGIN
@@ -16255,7 +17876,8 @@ index dc66273..30aba4b 100644
load_8way(%rdx, RC1, RD1, RA1, RB1, RC2, RD2, RA2, RB2);
- call __twofish_dec_blk8;
+- call __twofish_dec_blk8;
++ pax_direct_call __twofish_dec_blk8;
- store_cbc_8way(%r12, %r11, RA1, RB1, RC1, RD1, RA2, RB2, RC2, RD2);
+ store_cbc_8way(%r14, %r11, RA1, RB1, RC1, RD1, RA2, RB2, RC2, RD2);
@@ -16264,8 +17886,8 @@ index dc66273..30aba4b 100644
+ popq %r14;
FRAME_END
-+ pax_force_retaddr
- ret;
+- ret;
++ pax_ret twofish_cbc_dec_8way;
ENDPROC(twofish_cbc_dec_8way)
-ENTRY(twofish_ctr_8way)
@@ -16273,7 +17895,7 @@ index dc66273..30aba4b 100644
/* input:
* %rdi: ctx, CTX
* %rsi: dst
-@@ -402,25 +408,26 @@ ENTRY(twofish_ctr_8way)
+@@ -402,25 +403,25 @@ ENTRY(twofish_ctr_8way)
*/
FRAME_BEGIN
@@ -16287,7 +17909,8 @@ index dc66273..30aba4b 100644
load_ctr_8way(%rcx, .Lbswap128_mask, RA1, RB1, RC1, RD1, RA2, RB2, RC2,
RD2, RX0, RX1, RY0);
- call __twofish_enc_blk8;
+- call __twofish_enc_blk8;
++ pax_direct_call __twofish_enc_blk8;
- store_ctr_8way(%r12, %r11, RC1, RD1, RA1, RB1, RC2, RD2, RA2, RB2);
+ store_ctr_8way(%r14, %r11, RC1, RD1, RA1, RB1, RC2, RD2, RA2, RB2);
@@ -16296,8 +17919,8 @@ index dc66273..30aba4b 100644
+ popq %r14;
FRAME_END
-+ pax_force_retaddr
- ret;
+- ret;
++ pax_ret twofish_ctr_8way;
ENDPROC(twofish_ctr_8way)
-ENTRY(twofish_xts_enc_8way)
@@ -16305,12 +17928,19 @@ index dc66273..30aba4b 100644
/* input:
* %rdi: ctx, CTX
* %rsi: dst
-@@ -441,10 +448,11 @@ ENTRY(twofish_xts_enc_8way)
+@@ -435,16 +436,16 @@ ENTRY(twofish_xts_enc_8way)
+ load_xts_8way(%rcx, %rdx, %rsi, RA1, RB1, RC1, RD1, RA2, RB2, RC2, RD2,
+ RX0, RX1, RY0, .Lxts_gf128mul_and_shl1_mask);
+
+- call __twofish_enc_blk8;
++ pax_direct_call __twofish_enc_blk8;
+
+ /* dst <= regs xor IVs(in dst) */
store_xts_8way(%r11, RC1, RD1, RA1, RB1, RC2, RD2, RA2, RB2);
FRAME_END
-+ pax_force_retaddr
- ret;
+- ret;
++ pax_ret twofish_xts_enc_8way;
ENDPROC(twofish_xts_enc_8way)
-ENTRY(twofish_xts_dec_8way)
@@ -16318,18 +17948,33 @@ index dc66273..30aba4b 100644
/* input:
* %rdi: ctx, CTX
* %rsi: dst
-@@ -465,5 +473,6 @@ ENTRY(twofish_xts_dec_8way)
+@@ -459,11 +460,11 @@ ENTRY(twofish_xts_dec_8way)
+ load_xts_8way(%rcx, %rdx, %rsi, RC1, RD1, RA1, RB1, RC2, RD2, RA2, RB2,
+ RX0, RX1, RY0, .Lxts_gf128mul_and_shl1_mask);
+
+- call __twofish_dec_blk8;
++ pax_direct_call __twofish_dec_blk8;
+
+ /* dst <= regs xor IVs(in dst) */
store_xts_8way(%r11, RA1, RB1, RC1, RD1, RA2, RB2, RC2, RD2);
FRAME_END
-+ pax_force_retaddr
- ret;
+- ret;
++ pax_ret twofish_xts_dec_8way;
ENDPROC(twofish_xts_dec_8way)
diff --git a/arch/x86/crypto/twofish-i586-asm_32.S b/arch/x86/crypto/twofish-i586-asm_32.S
-index 694ea45..f2c1418 100644
+index 694ea45..91b9a8d 100644
--- a/arch/x86/crypto/twofish-i586-asm_32.S
+++ b/arch/x86/crypto/twofish-i586-asm_32.S
-@@ -220,7 +220,7 @@
+@@ -22,6 +22,7 @@
+
+ #include <linux/linkage.h>
+ #include <asm/asm-offsets.h>
++#include <asm/alternative-asm.h>
+
+ /* return address at 0 */
+
+@@ -220,7 +221,7 @@
xor %esi, d ## D;\
ror $1, d ## D;
@@ -16338,8 +17983,12 @@ index 694ea45..f2c1418 100644
push %ebp /* save registers according to calling convention*/
push %ebx
push %esi
-@@ -276,7 +276,7 @@ ENTRY(twofish_enc_blk)
- ret
+@@ -273,10 +274,10 @@ ENTRY(twofish_enc_blk)
+ pop %ebx
+ pop %ebp
+ mov $1, %eax
+- ret
++ pax_ret twofish_enc_blk
ENDPROC(twofish_enc_blk)
-ENTRY(twofish_dec_blk)
@@ -16347,8 +17996,15 @@ index 694ea45..f2c1418 100644
push %ebp /* save registers according to calling convention*/
push %ebx
push %esi
+@@ -330,5 +331,5 @@ ENTRY(twofish_dec_blk)
+ pop %ebx
+ pop %ebp
+ mov $1, %eax
+- ret
++ pax_ret twofish_dec_blk
+ ENDPROC(twofish_dec_blk)
diff --git a/arch/x86/crypto/twofish-x86_64-asm_64-3way.S b/arch/x86/crypto/twofish-x86_64-asm_64-3way.S
-index 1c3b7ce..c9912c7 100644
+index 1c3b7ce..9a65a0b 100644
--- a/arch/x86/crypto/twofish-x86_64-asm_64-3way.S
+++ b/arch/x86/crypto/twofish-x86_64-asm_64-3way.S
@@ -21,6 +21,7 @@
@@ -16359,20 +18015,21 @@ index 1c3b7ce..c9912c7 100644
.file "twofish-x86_64-asm-3way.S"
.text
-@@ -258,6 +259,7 @@ ENTRY(__twofish_enc_blk_3way)
+@@ -258,7 +259,7 @@ ENTRY(__twofish_enc_blk_3way)
popq %r13;
popq %r14;
popq %r15;
-+ pax_force_retaddr
- ret;
+- ret;
++ pax_ret __twofish_enc_blk_3way;
.L__enc_xor3:
-@@ -269,10 +271,11 @@ ENTRY(__twofish_enc_blk_3way)
+ outunpack_enc3(xor);
+@@ -269,10 +270,10 @@ ENTRY(__twofish_enc_blk_3way)
popq %r13;
popq %r14;
popq %r15;
-+ pax_force_retaddr
- ret;
+- ret;
++ pax_ret __twofish_enc_blk_3way;
ENDPROC(__twofish_enc_blk_3way)
-ENTRY(twofish_dec_blk_3way)
@@ -16380,15 +18037,15 @@ index 1c3b7ce..c9912c7 100644
/* input:
* %rdi: ctx, CTX
* %rsi: dst
-@@ -308,5 +311,6 @@ ENTRY(twofish_dec_blk_3way)
+@@ -308,5 +309,5 @@ ENTRY(twofish_dec_blk_3way)
popq %r13;
popq %r14;
popq %r15;
-+ pax_force_retaddr
- ret;
+- ret;
++ pax_ret twofish_dec_blk_3way;
ENDPROC(twofish_dec_blk_3way)
diff --git a/arch/x86/crypto/twofish-x86_64-asm_64.S b/arch/x86/crypto/twofish-x86_64-asm_64.S
-index a350c99..080c5ab 100644
+index a350c99..b59af9f 100644
--- a/arch/x86/crypto/twofish-x86_64-asm_64.S
+++ b/arch/x86/crypto/twofish-x86_64-asm_64.S
@@ -22,6 +22,7 @@
@@ -16408,12 +18065,12 @@ index a350c99..080c5ab 100644
pushq R1
/* %rdi contains the ctx address */
-@@ -265,10 +266,11 @@ ENTRY(twofish_enc_blk)
+@@ -265,10 +266,10 @@ ENTRY(twofish_enc_blk)
popq R1
movl $1,%eax
-+ pax_force_retaddr
- ret
+- ret
++ pax_ret twofish_enc_blk
ENDPROC(twofish_enc_blk)
-ENTRY(twofish_dec_blk)
@@ -16421,18 +18078,18 @@ index a350c99..080c5ab 100644
pushq R1
/* %rdi contains the ctx address */
-@@ -317,5 +319,6 @@ ENTRY(twofish_dec_blk)
+@@ -317,5 +318,5 @@ ENTRY(twofish_dec_blk)
popq R1
movl $1,%eax
-+ pax_force_retaddr
- ret
+- ret
++ pax_ret twofish_dec_blk
ENDPROC(twofish_dec_blk)
diff --git a/arch/x86/crypto/twofish_avx_glue.c b/arch/x86/crypto/twofish_avx_glue.c
-index b7a3904b..3e4d0d6 100644
+index b7a3904b..0d8bc60 100644
--- a/arch/x86/crypto/twofish_avx_glue.c
+++ b/arch/x86/crypto/twofish_avx_glue.c
-@@ -46,24 +46,25 @@
+@@ -46,24 +46,27 @@
#define TWOFISH_PARALLEL_BLOCKS 8
/* 8-way parallel cipher functions */
@@ -16442,6 +18099,8 @@ index b7a3904b..3e4d0d6 100644
-asmlinkage void twofish_ecb_dec_8way(struct twofish_ctx *ctx, u8 *dst,
+asmlinkage void twofish_ecb_dec_8way(void *ctx, u8 *dst,
const u8 *src);
++void __twofish_enc_blk8(void *ctx, u8 *dst, const u8 *src) __rap_hash;
++void __twofish_dec_blk8(void *ctx, u8 *dst, const u8 *src) __rap_hash;
-asmlinkage void twofish_cbc_dec_8way(struct twofish_ctx *ctx, u8 *dst,
+asmlinkage void twofish_cbc_dec_8way(void *ctx, u8 *dst,
@@ -16529,17 +18188,16 @@ index 2ebb5e9..a0b0aa9 100644
};
diff --git a/arch/x86/entry/Makefile b/arch/x86/entry/Makefile
-index 9976fce..bf5f3e0 100644
+index 9976fce..4c336fd0 100644
--- a/arch/x86/entry/Makefile
+++ b/arch/x86/entry/Makefile
-@@ -15,3 +15,5 @@ obj-y += vsyscall/
+@@ -14,4 +14,3 @@ obj-y += vdso/
+ obj-y += vsyscall/
obj-$(CONFIG_IA32_EMULATION) += entry_64_compat.o syscall_32.o
-
-+CFLAGS_REMOVE_syscall_32.o = $(RAP_PLUGIN_ABS_CFLAGS)
-+CFLAGS_REMOVE_syscall_64.o = $(RAP_PLUGIN_ABS_CFLAGS)
+-
diff --git a/arch/x86/entry/calling.h b/arch/x86/entry/calling.h
-index 9a9e588..b900d1c 100644
+index 9a9e588..4f8115a 100644
--- a/arch/x86/entry/calling.h
+++ b/arch/x86/entry/calling.h
@@ -95,23 +95,26 @@ For 32-bit we have the following conventions - kernel is built with
@@ -16684,27 +18342,34 @@ index 9a9e588..b900d1c 100644
.endm
.macro REMOVE_PT_GPREGS_FROM_STACK addskip=0
+@@ -212,7 +226,7 @@ For 32-bit we have the following conventions - kernel is built with
+ #ifdef HAVE_JUMP_LABEL
+ STATIC_JUMP_IF_FALSE .Lafter_call_\@, context_tracking_enabled, def=0
+ #endif
+- call enter_from_user_mode
++ pax_direct_call enter_from_user_mode
+ .Lafter_call_\@:
+ #endif
+ .endm
diff --git a/arch/x86/entry/common.c b/arch/x86/entry/common.c
-index 1433f6b..dac4cbe 100644
+index bdd9cc5..486d4bf 100644
--- a/arch/x86/entry/common.c
+++ b/arch/x86/entry/common.c
-@@ -33,9 +33,7 @@
-
- static struct thread_info *pt_regs_to_thread_info(struct pt_regs *regs)
- {
-- unsigned long top_of_stack =
-- (unsigned long)(regs + 1) + TOP_OF_KERNEL_STACK_PADDING;
-- return (struct thread_info *)(top_of_stack - THREAD_SIZE);
-+ return current_thread_info();
- }
-
- #ifdef CONFIG_CONTEXT_TRACKING
-@@ -49,6 +47,12 @@ __visible inline void enter_from_user_mode(void)
+@@ -42,6 +42,21 @@ __visible inline void enter_from_user_mode(void)
static inline void enter_from_user_mode(void) {}
#endif
++void pax_enter_kernel(void) __rap_hash;
++void pax_enter_kernel_user(void) __rap_hash;
++void pax_exit_kernel(void) __rap_hash;
++void pax_exit_kernel_user(void) __rap_hash;
++
++void paranoid_entry(void) __rap_hash;
++void paranoid_entry_nmi(void) __rap_hash;
++void error_entry(void) __rap_hash;
++
+#ifdef CONFIG_PAX_MEMORY_STACKLEAK
-+asmlinkage void pax_erase_kstack(void);
++asmlinkage void pax_erase_kstack(void) __rap_hash;
+#else
+static void pax_erase_kstack(void) {}
+#endif
@@ -16712,7 +18377,7 @@ index 1433f6b..dac4cbe 100644
static void do_audit_syscall_entry(struct pt_regs *regs, u32 arch)
{
#ifdef CONFIG_X86_64
-@@ -63,6 +67,10 @@ static void do_audit_syscall_entry(struct pt_regs *regs, u32 arch)
+@@ -56,6 +71,10 @@ static void do_audit_syscall_entry(struct pt_regs *regs, u32 arch)
}
}
@@ -16723,7 +18388,7 @@ index 1433f6b..dac4cbe 100644
/*
* Returns the syscall nr to run (which should match regs->orig_ax) or -1
* to skip the syscall.
-@@ -81,12 +89,19 @@ static long syscall_trace_enter(struct pt_regs *regs)
+@@ -74,12 +93,19 @@ static long syscall_trace_enter(struct pt_regs *regs)
work = ACCESS_ONCE(ti->flags) & _TIF_WORK_SYSCALL_ENTRY;
@@ -16744,11 +18409,13 @@ index 1433f6b..dac4cbe 100644
if (emulated)
return -1L;
-@@ -121,8 +136,10 @@ static long syscall_trace_enter(struct pt_regs *regs)
+@@ -113,9 +139,11 @@ static long syscall_trace_enter(struct pt_regs *regs)
+ sd.args[5] = regs->bp;
}
- ret = __secure_computing(&sd);
+- ret = __secure_computing(&sd);
- if (ret == -1)
++ ret = secure_computing(&sd);
+ if (ret == -1) {
+ pax_erase_kstack();
return ret;
@@ -16756,7 +18423,7 @@ index 1433f6b..dac4cbe 100644
}
#endif
-@@ -131,6 +148,7 @@ static long syscall_trace_enter(struct pt_regs *regs)
+@@ -124,6 +152,7 @@ static long syscall_trace_enter(struct pt_regs *regs)
do_audit_syscall_entry(regs, arch);
@@ -16764,7 +18431,7 @@ index 1433f6b..dac4cbe 100644
return ret ?: regs->orig_ax;
}
-@@ -237,7 +255,7 @@ static void syscall_slow_exit_work(struct pt_regs *regs, u32 cached_flags)
+@@ -229,7 +258,7 @@ static void syscall_slow_exit_work(struct pt_regs *regs, u32 cached_flags)
step = unlikely(
(cached_flags & (_TIF_SINGLESTEP | _TIF_SYSCALL_EMU))
== _TIF_SINGLESTEP);
@@ -16773,7 +18440,7 @@ index 1433f6b..dac4cbe 100644
tracehook_report_syscall_exit(regs, step);
}
-@@ -256,6 +274,11 @@ __visible inline void syscall_return_slowpath(struct pt_regs *regs)
+@@ -248,6 +277,11 @@ __visible inline void syscall_return_slowpath(struct pt_regs *regs)
WARN(irqs_disabled(), "syscall %ld left IRQs disabled", regs->orig_ax))
local_irq_enable();
@@ -16785,89 +18452,7 @@ index 1433f6b..dac4cbe 100644
/*
* First do one-time work. If these work items are enabled, we
* want to run them exactly once per syscall exit with IRQs on.
-@@ -285,9 +308,29 @@ __visible void do_syscall_64(struct pt_regs *regs)
- * regs->orig_ax, which changes the behavior of some syscalls.
- */
- if (likely((nr & __SYSCALL_MASK) < NR_syscalls)) {
-+#ifdef CONFIG_PAX_RAP
-+ asm volatile("movq %[param1],%%rdi\n\t"
-+ "movq %[param2],%%rsi\n\t"
-+ "movq %[param3],%%rdx\n\t"
-+ "movq %[param4],%%rcx\n\t"
-+ "movq %[param5],%%r8\n\t"
-+ "movq %[param6],%%r9\n\t"
-+ "call *%P[syscall]\n\t"
-+ "mov %%rax,%[result]\n\t"
-+ : [result] "=m" (regs->ax)
-+ : [syscall] "m" (sys_call_table[nr & __SYSCALL_MASK]),
-+ [param1] "m" (regs->di),
-+ [param2] "m" (regs->si),
-+ [param3] "m" (regs->dx),
-+ [param4] "m" (regs->r10),
-+ [param5] "m" (regs->r8),
-+ [param6] "m" (regs->r9)
-+ : "ax", "di", "si", "dx", "cx", "r8", "r9", "r10", "r11", "memory");
-+#else
- regs->ax = sys_call_table[nr & __SYSCALL_MASK](
- regs->di, regs->si, regs->dx,
- regs->r10, regs->r8, regs->r9);
-+#endif
- }
-
- syscall_return_slowpath(regs);
-@@ -327,10 +370,51 @@ static __always_inline void do_syscall_32_irqs_on(struct pt_regs *regs)
- * the high bits are zero. Make sure we zero-extend all
- * of the args.
- */
-+#ifdef CONFIG_PAX_RAP
-+#ifdef CONFIG_X86_64
-+ asm volatile("movl %[param1],%%edi\n\t"
-+ "movl %[param2],%%esi\n\t"
-+ "movl %[param3],%%edx\n\t"
-+ "movl %[param4],%%ecx\n\t"
-+ "movl %[param5],%%r8d\n\t"
-+ "movl %[param6],%%r9d\n\t"
-+ "call *%P[syscall]\n\t"
-+ "mov %%rax,%[result]\n\t"
-+ : [result] "=m" (regs->ax)
-+ : [syscall] "m" (ia32_sys_call_table[nr]),
-+ [param1] "m" (regs->bx),
-+ [param2] "m" (regs->cx),
-+ [param3] "m" (regs->dx),
-+ [param4] "m" (regs->si),
-+ [param5] "m" (regs->di),
-+ [param6] "m" (regs->bp)
-+ : "ax", "di", "si", "dx", "cx", "r8", "r9", "r10", "r11", "memory");
-+#else
-+ asm volatile("pushl %[param6]\n\t"
-+ "pushl %[param5]\n\t"
-+ "pushl %[param4]\n\t"
-+ "pushl %[param3]\n\t"
-+ "pushl %[param2]\n\t"
-+ "pushl %[param1]\n\t"
-+ "call *%P[syscall]\n\t"
-+ "addl $6*8,%%esp\n\t"
-+ "mov %%eax,%[result]\n\t"
-+ : [result] "=m" (regs->ax)
-+ : [syscall] "m" (ia32_sys_call_table[nr]),
-+ [param1] "m" (regs->bx),
-+ [param2] "m" (regs->cx),
-+ [param3] "m" (regs->dx),
-+ [param4] "m" (regs->si),
-+ [param5] "m" (regs->di),
-+ [param6] "m" (regs->bp)
-+ : "ax", "dx", "cx", "memory");
-+#endif
-+#else
- regs->ax = ia32_sys_call_table[nr](
- (unsigned int)regs->bx, (unsigned int)regs->cx,
- (unsigned int)regs->dx, (unsigned int)regs->si,
- (unsigned int)regs->di, (unsigned int)regs->bp);
-+#endif
- }
-
- syscall_return_slowpath(regs);
-@@ -354,6 +438,7 @@ __visible long do_fast_syscall_32(struct pt_regs *regs)
+@@ -346,6 +380,7 @@ __visible long do_fast_syscall_32(struct pt_regs *regs)
unsigned long landing_pad = (unsigned long)current->mm->context.vdso +
vdso_image_32.sym_int80_landing_pad;
@@ -16875,7 +18460,7 @@ index 1433f6b..dac4cbe 100644
/*
* SYSENTER loses EIP, and even SYSCALL32 needs us to skip forward
-@@ -373,11 +458,9 @@ __visible long do_fast_syscall_32(struct pt_regs *regs)
+@@ -365,11 +400,9 @@ __visible long do_fast_syscall_32(struct pt_regs *regs)
* Micro-optimization: the pointer we're following is explicitly
* 32 bits, so it can't be out of range.
*/
@@ -16890,10 +18475,18 @@ index 1433f6b..dac4cbe 100644
) {
diff --git a/arch/x86/entry/entry_32.S b/arch/x86/entry/entry_32.S
-index b84a349..7ed55b6 100644
+index edba860..d684e0f 100644
--- a/arch/x86/entry/entry_32.S
+++ b/arch/x86/entry/entry_32.S
-@@ -147,13 +147,157 @@
+@@ -45,6 +45,7 @@
+ #include <asm/asm.h>
+ #include <asm/smap.h>
+ #include <asm/export.h>
++#include <asm/current.h>
+
+ .section .entry.text, "ax"
+
+@@ -148,13 +149,157 @@
movl \reg, PT_GS(%esp)
.endm
.macro SET_KERNEL_GS reg
@@ -16914,13 +18507,13 @@ index b84a349..7ed55b6 100644
-.macro SAVE_ALL pt_regs_ax=%eax
+.macro pax_enter_kernel
+#ifdef CONFIG_PAX_KERNEXEC
-+ call pax_enter_kernel
++ pax_direct_call pax_enter_kernel
+#endif
+.endm
+
+.macro pax_exit_kernel
+#ifdef CONFIG_PAX_KERNEXEC
-+ call pax_exit_kernel
++ pax_direct_call pax_exit_kernel
+#endif
+.endm
+
@@ -16929,7 +18522,7 @@ index b84a349..7ed55b6 100644
+#ifdef CONFIG_PARAVIRT
+ pushl %eax
+ pushl %ecx
-+ call PARA_INDIRECT(pv_cpu_ops+PV_CPU_read_cr0)
++ pax_indirect_call PARA_INDIRECT(pv_cpu_ops+PV_CPU_read_cr0), read_cr0
+ mov %eax, %esi
+#else
+ mov %cr0, %esi
@@ -16944,7 +18537,7 @@ index b84a349..7ed55b6 100644
+2:
+#ifdef CONFIG_PARAVIRT
+ mov %esi, %eax
-+ call PARA_INDIRECT(pv_cpu_ops+PV_CPU_write_cr0)
++ pax_indirect_call PARA_INDIRECT(pv_cpu_ops+PV_CPU_write_cr0), write_cr0
+#else
+ mov %esi, %cr0
+#endif
@@ -16953,7 +18546,7 @@ index b84a349..7ed55b6 100644
+ popl %ecx
+ popl %eax
+#endif
-+ ret
++ pax_ret pax_enter_kernel
+ENDPROC(pax_enter_kernel)
+
+ENTRY(pax_exit_kernel)
@@ -16965,7 +18558,7 @@ index b84a349..7ed55b6 100644
+ cmp $__KERNEXEC_KERNEL_CS, %esi
+ jnz 2f
+#ifdef CONFIG_PARAVIRT
-+ call PARA_INDIRECT(pv_cpu_ops+PV_CPU_read_cr0);
++ pax_indirect_call PARA_INDIRECT(pv_cpu_ops+PV_CPU_read_cr0), read_cr0
+ mov %eax, %esi
+#else
+ mov %cr0, %esi
@@ -16975,7 +18568,7 @@ index b84a349..7ed55b6 100644
+1:
+#ifdef CONFIG_PARAVIRT
+ mov %esi, %eax
-+ call PARA_INDIRECT(pv_cpu_ops+PV_CPU_write_cr0);
++ pax_indirect_call PARA_INDIRECT(pv_cpu_ops+PV_CPU_write_cr0), write_cr0
+#else
+ mov %esi, %cr0
+#endif
@@ -16984,13 +18577,13 @@ index b84a349..7ed55b6 100644
+ popl %ecx
+ popl %eax
+#endif
-+ ret
++ pax_ret pax_exit_kernel
+ENDPROC(pax_exit_kernel)
+#endif
+
+ .macro pax_erase_kstack
+#ifdef CONFIG_PAX_MEMORY_STACKLEAK
-+ call pax_erase_kstack
++ pax_direct_call pax_erase_kstack
+#endif
+ .endm
+
@@ -17004,8 +18597,8 @@ index b84a349..7ed55b6 100644
+ pushl %eax
+ pushl %ebp
+
-+ GET_THREAD_INFO(%ebp)
-+ mov TI_lowest_stack(%ebp), %edi
++ GET_CURRENT(%ebp)
++ mov TASK_lowest_stack(%ebp), %edi
+ mov $-0xBEEF, %eax
+ std
+
@@ -17036,15 +18629,15 @@ index b84a349..7ed55b6 100644
+ shr $2, %ecx
+ rep stosl
+
-+ mov TI_task_thread_sp0(%ebp), %edi
++ mov TASK_thread_sp0(%ebp), %edi
+ sub $128, %edi
-+ mov %edi, TI_lowest_stack(%ebp)
++ mov %edi, TASK_lowest_stack(%ebp)
+
+ popl %ebp
+ popl %eax
+ popl %ecx
+ popl %edi
-+ ret
++ pax_ret pax_erase_kstack
+ENDPROC(pax_erase_kstack)
+#endif
+
@@ -17052,7 +18645,7 @@ index b84a349..7ed55b6 100644
cld
PUSH_GS
pushl %fs
-@@ -166,7 +310,7 @@
+@@ -167,7 +312,7 @@
pushl %edx
pushl %ecx
pushl %ebx
@@ -17061,7 +18654,7 @@ index b84a349..7ed55b6 100644
movl %edx, %ds
movl %edx, %es
movl $(__KERNEL_PERCPU), %edx
-@@ -174,6 +318,15 @@
+@@ -175,6 +320,15 @@
SET_KERNEL_GS %edx
.endm
@@ -17077,16 +18670,49 @@ index b84a349..7ed55b6 100644
.macro RESTORE_INT_REGS
popl %ebx
popl %ecx
-@@ -213,7 +366,7 @@ ENTRY(ret_from_fork)
+@@ -235,7 +389,7 @@ ENTRY(__switch_to_asm)
+ popl %ebp
+
+ jmp __switch_to
+-END(__switch_to_asm)
++ENDPROC(__switch_to_asm)
+
+ /*
+ * A newly forked process directly context switches into this address.
+@@ -246,7 +400,7 @@ END(__switch_to_asm)
+ */
+ ENTRY(ret_from_fork)
+ pushl %eax
+- call schedule_tail
++ pax_direct_call schedule_tail
+ popl %eax
+
+ testl %ebx, %ebx
+@@ -255,12 +409,12 @@ ENTRY(ret_from_fork)
+ 2:
+ /* When we fork, we trace the syscall return in the child, too. */
movl %esp, %eax
- call syscall_return_slowpath
+- call syscall_return_slowpath
++ pax_direct_call syscall_return_slowpath
jmp restore_all
+
+ /* kernel thread */
+ 1: movl %edi, %eax
+- call *%ebx
++ pax_indirect_call "%ebx", kthreadd
+ /*
+ * A kernel thread is allowed to return here after successfully
+ * calling do_execve(). Exit to userspace to complete the execve()
+@@ -268,7 +422,7 @@ ENTRY(ret_from_fork)
+ */
+ movl $0, PT_EAX(%esp)
+ jmp 2b
-END(ret_from_fork)
+ENDPROC(ret_from_fork)
- ENTRY(ret_from_kernel_thread)
- pushl %eax
-@@ -257,15 +410,23 @@ ret_from_intr:
+ /*
+ * Return to user mode is not as complex as all this looks,
+@@ -294,15 +448,23 @@ ret_from_intr:
andl $SEGMENT_RPL_MASK, %eax
#endif
cmpl $USER_RPL, %eax
@@ -17104,24 +18730,28 @@ index b84a349..7ed55b6 100644
DISABLE_INTERRUPTS(CLBR_ANY)
TRACE_IRQS_OFF
movl %esp, %eax
- call prepare_exit_to_usermode
+- call prepare_exit_to_usermode
- jmp restore_all
-END(ret_from_exception)
++ pax_direct_call prepare_exit_to_usermode
+ jmp .Lsyscall_32_done
+ENDPROC(ret_from_exception)
#ifdef CONFIG_PREEMPT
ENTRY(resume_kernel)
-@@ -277,7 +438,7 @@ need_resched:
+@@ -312,9 +474,9 @@ need_resched:
+ jnz restore_all
+ testl $X86_EFLAGS_IF, PT_EFLAGS(%esp) # interrupts off (exception path) ?
jz restore_all
- call preempt_schedule_irq
+- call preempt_schedule_irq
++ pax_direct_call preempt_schedule_irq
jmp need_resched
-END(resume_kernel)
+ENDPROC(resume_kernel)
#endif
GLOBAL(__begin_SYSENTER_singlestep_region)
-@@ -344,6 +505,10 @@ sysenter_past_esp:
+@@ -381,6 +543,10 @@ sysenter_past_esp:
pushl %eax /* pt_regs->orig_ax */
SAVE_ALL pt_regs_ax=$-ENOSYS /* save rest */
@@ -17132,13 +18762,19 @@ index b84a349..7ed55b6 100644
/*
* SYSENTER doesn't filter flags, so we need to clear NT, AC
* and TF ourselves. To save a few cycles, we can check whether
-@@ -379,11 +544,20 @@ sysenter_past_esp:
+@@ -411,16 +577,25 @@ sysenter_past_esp:
+ TRACE_IRQS_OFF
+
+ movl %esp, %eax
+- call do_fast_syscall_32
++ pax_direct_call do_fast_syscall_32
+ /* XEN PV guests always use IRET path */
ALTERNATIVE "testl %eax, %eax; jz .Lsyscall_32_done", \
"jmp .Lsyscall_32_done", X86_FEATURE_XENPV
+#ifdef CONFIG_PAX_RANDKSTACK
+ movl %esp, %eax
-+ call pax_randomize_kstack
++ pax_direct_call pax_randomize_kstack
+#endif
+
+ pax_erase_kstack
@@ -17153,7 +18789,7 @@ index b84a349..7ed55b6 100644
PTGS_TO_GS
popl %ebx /* pt_regs->bx */
addl $2*4, %esp /* skip pt_regs->cx and pt_regs->dx */
-@@ -409,10 +583,16 @@ sysenter_past_esp:
+@@ -446,10 +621,16 @@ sysenter_past_esp:
sysexit
.pushsection .fixup, "ax"
@@ -17172,7 +18808,7 @@ index b84a349..7ed55b6 100644
PTGS_TO_GS_EX
.Lsysenter_fix_flags:
-@@ -455,6 +635,10 @@ ENTRY(entry_INT80_32)
+@@ -492,6 +673,10 @@ ENTRY(entry_INT80_32)
pushl %eax /* pt_regs->orig_ax */
SAVE_ALL pt_regs_ax=$-ENOSYS /* save rest */
@@ -17183,13 +18819,17 @@ index b84a349..7ed55b6 100644
/*
* User mode is traced as though IRQs are on, and the interrupt gate
* turned them off.
-@@ -465,6 +649,13 @@ ENTRY(entry_INT80_32)
- call do_int80_syscall_32
+@@ -499,9 +684,16 @@ ENTRY(entry_INT80_32)
+ TRACE_IRQS_OFF
+
+ movl %esp, %eax
+- call do_int80_syscall_32
++ pax_direct_call do_int80_syscall_32
.Lsyscall_32_done:
+#ifdef CONFIG_PAX_RANDKSTACK
+ movl %esp, %eax
-+ call pax_randomize_kstack
++ pax_direct_call pax_randomize_kstack
+#endif
+
+ pax_erase_kstack
@@ -17197,7 +18837,7 @@ index b84a349..7ed55b6 100644
restore_all:
TRACE_IRQS_IRET
restore_all_notrace:
-@@ -508,14 +699,34 @@ ldt_ss:
+@@ -545,14 +737,34 @@ ldt_ss:
* compensating for the offset by changing to the ESPFIX segment with
* a base address that matches for the difference.
*/
@@ -17235,7 +18875,7 @@ index b84a349..7ed55b6 100644
pushl $__ESPFIX_SS
pushl %eax /* new kernel esp */
/*
-@@ -539,8 +750,15 @@ ENDPROC(entry_INT80_32)
+@@ -576,8 +788,15 @@ ENDPROC(entry_INT80_32)
*/
#ifdef CONFIG_X86_ESPFIX32
/* fixup the stack */
@@ -17253,7 +18893,7 @@ index b84a349..7ed55b6 100644
shl $16, %eax
addl %esp, %eax /* the adjusted stack pointer */
pushl $__KERNEL_DS
-@@ -576,7 +794,7 @@ ENTRY(irq_entries_start)
+@@ -613,7 +832,7 @@ ENTRY(irq_entries_start)
jmp common_interrupt
.align 8
.endr
@@ -17262,7 +18902,25 @@ index b84a349..7ed55b6 100644
/*
* the CPU automatically disables interrupts when executing an IRQ vector,
-@@ -623,7 +841,7 @@ ENTRY(coprocessor_error)
+@@ -626,7 +845,7 @@ common_interrupt:
+ SAVE_ALL
+ TRACE_IRQS_OFF
+ movl %esp, %eax
+- call do_IRQ
++ pax_direct_call do_IRQ
+ jmp ret_from_intr
+ ENDPROC(common_interrupt)
+
+@@ -637,7 +856,7 @@ ENTRY(name) \
+ SAVE_ALL; \
+ TRACE_IRQS_OFF \
+ movl %esp, %eax; \
+- call fn; \
++ pax_direct_call fn; \
+ jmp ret_from_intr; \
+ ENDPROC(name)
+
+@@ -660,7 +879,7 @@ ENTRY(coprocessor_error)
pushl $0
pushl $do_coprocessor_error
jmp error_code
@@ -17271,7 +18929,7 @@ index b84a349..7ed55b6 100644
ENTRY(simd_coprocessor_error)
ASM_CLAC
-@@ -637,20 +855,20 @@ ENTRY(simd_coprocessor_error)
+@@ -674,20 +893,20 @@ ENTRY(simd_coprocessor_error)
pushl $do_simd_coprocessor_error
#endif
jmp error_code
@@ -17295,7 +18953,7 @@ index b84a349..7ed55b6 100644
#endif
ENTRY(overflow)
-@@ -658,59 +876,59 @@ ENTRY(overflow)
+@@ -695,59 +914,59 @@ ENTRY(overflow)
pushl $0
pushl $do_overflow
jmp error_code
@@ -17364,7 +19022,7 @@ index b84a349..7ed55b6 100644
#ifdef CONFIG_X86_MCE
ENTRY(machine_check)
-@@ -718,7 +936,7 @@ ENTRY(machine_check)
+@@ -755,7 +974,7 @@ ENTRY(machine_check)
pushl $0
pushl machine_check_vector
jmp error_code
@@ -17373,7 +19031,7 @@ index b84a349..7ed55b6 100644
#endif
ENTRY(spurious_interrupt_bug)
-@@ -726,7 +944,16 @@ ENTRY(spurious_interrupt_bug)
+@@ -763,7 +982,32 @@ ENTRY(spurious_interrupt_bug)
pushl $0
pushl $do_spurious_interrupt_bug
jmp error_code
@@ -17388,46 +19046,127 @@ index b84a349..7ed55b6 100644
+ jmp error_code
+ENDPROC(refcount_error)
+#endif
++
++#ifdef CONFIG_PAX_RAP
++ENTRY(rap_call_error)
++ ASM_CLAC
++ pushl $0
++ pushl $do_rap_call_error
++ jmp error_code
++ENDPROC(rap_call_error)
++
++ENTRY(rap_ret_error)
++ ASM_CLAC
++ pushl $0
++ pushl $do_rap_ret_error
++ jmp error_code
++ENDPROC(rap_ret_error)
++#endif
#ifdef CONFIG_XEN
ENTRY(xen_hypervisor_callback)
-@@ -825,7 +1052,7 @@ BUILD_INTERRUPT3(hyperv_callback_vector, HYPERVISOR_CALLBACK_VECTOR,
+@@ -788,9 +1032,9 @@ ENTRY(xen_hypervisor_callback)
+
+ ENTRY(xen_do_upcall)
+ 1: mov %esp, %eax
+- call xen_evtchn_do_upcall
++ pax_direct_call xen_evtchn_do_upcall
+ #ifndef CONFIG_PREEMPT
+- call xen_maybe_preempt_hcall
++ pax_direct_call xen_maybe_preempt_hcall
+ #endif
+ jmp ret_from_intr
+ ENDPROC(xen_hypervisor_callback)
+@@ -861,8 +1105,8 @@ BUILD_INTERRUPT3(hyperv_callback_vector, HYPERVISOR_CALLBACK_VECTOR,
+ #ifdef CONFIG_DYNAMIC_FTRACE
ENTRY(mcount)
- ret
+- ret
-END(mcount)
++ pax_ret mcount
+ENDPROC(mcount)
ENTRY(ftrace_caller)
pushl %eax
-@@ -855,7 +1082,7 @@ ftrace_graph_call:
+@@ -876,7 +1120,7 @@ ENTRY(ftrace_caller)
+
+ .globl ftrace_call
+ ftrace_call:
+- call ftrace_stub
++ pax_direct_call ftrace_stub
+
+ addl $4, %esp /* skip NULL pointer */
+ popl %edx
+@@ -891,8 +1135,8 @@ ftrace_graph_call:
+
/* This is weak to keep gas from relaxing the jumps */
WEAK(ftrace_stub)
- ret
+- ret
-END(ftrace_caller)
++ pax_ret ftrace_caller
+ENDPROC(ftrace_caller)
ENTRY(ftrace_regs_caller)
pushf /* push flags before compare (in cs location) */
-@@ -953,7 +1180,7 @@ trace:
+@@ -931,7 +1175,7 @@ ENTRY(ftrace_regs_caller)
+ pushl %esp /* Save pt_regs as 4th parameter */
+
+ GLOBAL(ftrace_regs_call)
+- call ftrace_stub
++ pax_direct_call ftrace_stub
+
+ addl $4, %esp /* Skip pt_regs */
+ movl 14*4(%esp), %eax /* Move flags back into cs */
+@@ -973,7 +1217,7 @@ ENTRY(mcount)
+ #endif
+ .globl ftrace_stub
+ ftrace_stub:
+- ret
++ pax_ret ftrace_stub
+
+ /* taken from glibc */
+ trace:
+@@ -984,13 +1228,13 @@ trace:
+ movl 0x4(%ebp), %edx
+ subl $MCOUNT_INSN_SIZE, %eax
+
+- call *ftrace_trace_function
++ pax_indirect_call "ftrace_trace_function", ftrace_stub
+
+ popl %edx
popl %ecx
popl %eax
jmp ftrace_stub
-END(mcount)
+ENDPROC(mcount)
#endif /* CONFIG_DYNAMIC_FTRACE */
+ EXPORT_SYMBOL(mcount)
#endif /* CONFIG_FUNCTION_TRACER */
-
-@@ -971,7 +1198,7 @@ ENTRY(ftrace_graph_caller)
+@@ -1004,19 +1248,19 @@ ENTRY(ftrace_graph_caller)
+ lea 0x4(%ebp), %edx
+ movl (%ebp), %ecx
+ subl $MCOUNT_INSN_SIZE, %eax
+- call prepare_ftrace_return
++ pax_direct_call prepare_ftrace_return
+ popl %edx
popl %ecx
popl %eax
- ret
+- ret
-END(ftrace_graph_caller)
++ pax_ret ftrace_graph_caller
+ENDPROC(ftrace_graph_caller)
.globl return_to_handler
return_to_handler:
-@@ -990,7 +1217,7 @@ ENTRY(trace_page_fault)
+ pushl %eax
+ pushl %edx
+ movl %ebp, %eax
+- call ftrace_return_to_handler
++ pax_direct_call ftrace_return_to_handler
+ movl %eax, %ecx
+ popl %edx
+ popl %eax
+@@ -1028,7 +1272,7 @@ ENTRY(trace_page_fault)
ASM_CLAC
pushl $trace_do_page_fault
jmp error_code
@@ -17436,7 +19175,7 @@ index b84a349..7ed55b6 100644
#endif
ENTRY(page_fault)
-@@ -1019,16 +1246,19 @@ error_code:
+@@ -1057,16 +1301,19 @@ error_code:
movl $-1, PT_ORIG_EAX(%esp) # no syscall to restart
REG_TO_PTGS %ecx
SET_KERNEL_GS %ecx
@@ -17449,7 +19188,8 @@ index b84a349..7ed55b6 100644
+
TRACE_IRQS_OFF
movl %esp, %eax # pt_regs pointer
- call *%edi
+- call *%edi
++ pax_indirect_call "%edi", do_page_fault
jmp ret_from_exception
-END(page_fault)
+ENDPROC(page_fault)
@@ -17459,7 +19199,7 @@ index b84a349..7ed55b6 100644
/*
* #DB can happen at the first instruction of
* entry_SYSENTER_32 or in Xen's SYSENTER prologue. If this
-@@ -1045,7 +1275,13 @@ ENTRY(debug)
+@@ -1083,13 +1330,19 @@ ENTRY(debug)
movl %esp, %eax # pt_regs pointer
/* Are we currently on the SYSENTER stack? */
@@ -17474,8 +19214,19 @@ index b84a349..7ed55b6 100644
subl %eax, %ecx /* ecx = (end of SYSENTER_stack) - esp */
cmpl $SIZEOF_SYSENTER_stack, %ecx
jb .Ldebug_from_sysenter_stack
-@@ -1062,7 +1298,7 @@ ENTRY(debug)
- call do_debug
+
+ TRACE_IRQS_OFF
+- call do_debug
++ pax_direct_call do_debug
+ jmp ret_from_exception
+
+ .Ldebug_from_sysenter_stack:
+@@ -1097,10 +1350,10 @@ ENTRY(debug)
+ movl %esp, %ebp
+ movl PER_CPU_VAR(cpu_current_top_of_stack), %esp
+ TRACE_IRQS_OFF
+- call do_debug
++ pax_direct_call do_debug
movl %ebp, %esp
jmp ret_from_exception
-END(debug)
@@ -17483,7 +19234,7 @@ index b84a349..7ed55b6 100644
/*
* NMI is doubly nasty. It can happen on the first instruction of
-@@ -1087,13 +1323,22 @@ ENTRY(nmi)
+@@ -1125,13 +1378,22 @@ ENTRY(nmi)
movl %esp, %eax # pt_regs pointer
/* Are we currently on the SYSENTER stack? */
@@ -17500,16 +19251,20 @@ index b84a349..7ed55b6 100644
jb .Lnmi_from_sysenter_stack
/* Not on SYSENTER stack. */
- call do_nmi
+- call do_nmi
++ pax_direct_call do_nmi
+
+ pax_exit_kernel
+
jmp restore_all_notrace
.Lnmi_from_sysenter_stack:
-@@ -1105,6 +1350,9 @@ ENTRY(nmi)
+@@ -1141,8 +1403,11 @@ ENTRY(nmi)
+ */
+ movl %esp, %ebp
movl PER_CPU_VAR(cpu_current_top_of_stack), %esp
- call do_nmi
+- call do_nmi
++ pax_direct_call do_nmi
movl %ebp, %esp
+
+ pax_exit_kernel
@@ -17517,10 +19272,12 @@ index b84a349..7ed55b6 100644
jmp restore_all_notrace
#ifdef CONFIG_X86_ESPFIX32
-@@ -1124,11 +1372,14 @@ nmi_espfix_stack:
+@@ -1161,12 +1426,15 @@ nmi_espfix_stack:
+ SAVE_ALL
FIXUP_ESPFIX_STACK # %eax == %esp
xorl %edx, %edx # zero error code
- call do_nmi
+- call do_nmi
++ pax_direct_call do_nmi
+
+ pax_exit_kernel
+
@@ -17533,9 +19290,12 @@ index b84a349..7ed55b6 100644
ENTRY(int3)
ASM_CLAC
-@@ -1139,19 +1390,19 @@ ENTRY(int3)
+@@ -1175,21 +1443,21 @@ ENTRY(int3)
+ TRACE_IRQS_OFF
+ xorl %edx, %edx # zero error code
movl %esp, %eax # pt_regs pointer
- call do_int3
+- call do_int3
++ pax_direct_call do_int3
jmp ret_from_exception
-END(int3)
+ENDPROC(int3)
@@ -17556,29 +19316,30 @@ index b84a349..7ed55b6 100644
#endif
ENTRY(rewind_stack_do_exit)
-@@ -1161,6 +1412,6 @@ ENTRY(rewind_stack_do_exit)
+@@ -1199,6 +1467,6 @@ ENTRY(rewind_stack_do_exit)
movl PER_CPU_VAR(cpu_current_top_of_stack), %esi
leal -TOP_OF_KERNEL_STACK_PADDING-PTREGS_SIZE(%esi), %esp
- call do_exit
-+ call do_group_exit
++ pax_direct_call do_group_exit
1: jmp 1b
-END(rewind_stack_do_exit)
+ENDPROC(rewind_stack_do_exit)
diff --git a/arch/x86/entry/entry_64.S b/arch/x86/entry/entry_64.S
-index 02fff3e..c6685ec 100644
+index ef766a3..d3f0e59 100644
--- a/arch/x86/entry/entry_64.S
+++ b/arch/x86/entry/entry_64.S
-@@ -36,6 +36,8 @@
- #include <asm/smap.h>
+@@ -37,6 +37,9 @@
#include <asm/pgtable_types.h>
+ #include <asm/export.h>
#include <linux/err.h>
+#include <asm/pgtable.h>
+#include <asm/alternative-asm.h>
++#include <asm/current.h>
/* Avoid __ASSEMBLER__'ifying <linux/audit.h> just for this. */
#include <linux/elf-em.h>
-@@ -53,6 +55,395 @@ ENTRY(native_usergs_sysret64)
+@@ -54,6 +57,392 @@ ENTRY(native_usergs_sysret64)
ENDPROC(native_usergs_sysret64)
#endif /* CONFIG_PARAVIRT */
@@ -17599,13 +19360,13 @@ index 02fff3e..c6685ec 100644
+ .macro pax_enter_kernel
+ pax_set_fptr_mask
+#if defined(CONFIG_PAX_KERNEXEC) || defined(CONFIG_PAX_MEMORY_UDEREF)
-+ call pax_enter_kernel
++ pax_direct_call pax_enter_kernel
+#endif
+ .endm
+
+ .macro pax_exit_kernel
+#if defined(CONFIG_PAX_KERNEXEC) || defined(CONFIG_PAX_MEMORY_UDEREF)
-+ call pax_exit_kernel
++ pax_direct_call pax_exit_kernel
+#endif
+ .endm
+
@@ -17651,8 +19412,7 @@ index 02fff3e..c6685ec 100644
+#endif
+
+ popq %rdi
-+ pax_force_retaddr
-+ retq
++ pax_ret pax_enter_kernel
+
+#ifdef CONFIG_PAX_KERNEXEC
+2: ljmpq __KERNEL_CS,1b
@@ -17701,8 +19461,7 @@ index 02fff3e..c6685ec 100644
+#endif
+
+ popq %rdi
-+ pax_force_retaddr
-+ retq
++ pax_ret pax_exit_kernel
+
+#ifdef CONFIG_PAX_KERNEXEC
+2: GET_CR0_INTO_RDI
@@ -17720,18 +19479,18 @@ index 02fff3e..c6685ec 100644
+ .macro pax_enter_kernel_user
+ pax_set_fptr_mask
+#ifdef CONFIG_PAX_MEMORY_UDEREF
-+ call pax_enter_kernel_user
++ pax_direct_call pax_enter_kernel_user
+#endif
+ .endm
+
+ .macro pax_exit_kernel_user
+#ifdef CONFIG_PAX_MEMORY_UDEREF
-+ call pax_exit_kernel_user
++ pax_direct_call pax_exit_kernel_user
+#endif
+#ifdef CONFIG_PAX_RANDKSTACK
+ pushq %rax
+ pushq %r11
-+ call pax_randomize_kstack
++ pax_direct_call pax_randomize_kstack
+ popq %r11
+ popq %rax
+#endif
@@ -17739,6 +19498,7 @@ index 02fff3e..c6685ec 100644
+
+#ifdef CONFIG_PAX_MEMORY_UDEREF
+ENTRY(pax_enter_kernel_user)
++GLOBAL(patch_pax_enter_kernel_user)
+ pushq %rdi
+ pushq %rbx
+
@@ -17768,7 +19528,7 @@ index 02fff3e..c6685ec 100644
+ mov i*8(%rbx),%rsi
+ mov $0,%sil
+ lea i*8(%rbx),%rdi
-+ call PARA_INDIRECT(pv_mmu_ops+PV_MMU_set_pgd_batched)
++ pax_indirect_call PARA_INDIRECT(pv_mmu_ops+PV_MMU_set_pgd_batched), pv_mmu_ops.set_pgd_batched
+ i = i + 1
+ .endr
+ popq %rdi
@@ -17796,12 +19556,12 @@ index 02fff3e..c6685ec 100644
+
+ popq %rbx
+ popq %rdi
-+ pax_force_retaddr
-+ retq
++ pax_ret pax_enter_kernel_user
+4: ud2
+ENDPROC(pax_enter_kernel_user)
+
+ENTRY(pax_exit_kernel_user)
++GLOBAL(patch_pax_exit_kernel_user)
+ pushq %rdi
+ pushq %rbx
+
@@ -17837,7 +19597,7 @@ index 02fff3e..c6685ec 100644
+ mov i*8(%rbx),%rsi
+ mov $0x67,%sil
+ lea i*8(%rbx),%rdi
-+ call PARA_INDIRECT(pv_mmu_ops+PV_MMU_set_pgd_batched)
++ pax_indirect_call PARA_INDIRECT(pv_mmu_ops+PV_MMU_set_pgd_batched), pv_mmu_ops.set_pgd_batched
+ i = i + 1
+ .endr
+#else
@@ -17856,8 +19616,7 @@ index 02fff3e..c6685ec 100644
+
+ popq %rbx
+ popq %rdi
-+ pax_force_retaddr
-+ retq
++ pax_ret pax_exit_kernel_user
+3: ud2
+ENDPROC(pax_exit_kernel_user)
+#endif
@@ -17915,7 +19674,7 @@ index 02fff3e..c6685ec 100644
+
+ .macro pax_erase_kstack
+#ifdef CONFIG_PAX_MEMORY_STACKLEAK
-+ call pax_erase_kstack
++ pax_direct_call pax_erase_kstack
+#endif
+ .endm
+
@@ -17926,8 +19685,8 @@ index 02fff3e..c6685ec 100644
+ pushq %rax
+ pushq %r11
+
-+ GET_THREAD_INFO(%r11)
-+ mov TI_lowest_stack(%r11), %rdi
++ GET_CURRENT(%r11)
++ mov TASK_lowest_stack(%r11), %rdi
+ mov $-0xBEEF, %rax
+ std
+
@@ -17958,23 +19717,38 @@ index 02fff3e..c6685ec 100644
+ shr $3, %ecx
+ rep stosq
+
-+ mov TI_task_thread_sp0(%r11), %rdi
++ mov TASK_thread_sp0(%r11), %rdi
+ sub $256, %rdi
-+ mov %rdi, TI_lowest_stack(%r11)
++ mov %rdi, TASK_lowest_stack(%r11)
+
+ popq %r11
+ popq %rax
+ popq %rcx
+ popq %rdi
-+ pax_force_retaddr
-+ ret
++ pax_ret pax_erase_kstack
+ENDPROC(pax_erase_kstack)
+#endif
+
.macro TRACE_IRQS_IRETQ
#ifdef CONFIG_TRACE_IRQFLAGS
bt $9, EFLAGS(%rsp) /* interrupts off? */
-@@ -88,7 +479,7 @@ ENDPROC(native_usergs_sysret64)
+@@ -77,19 +466,19 @@ ENDPROC(native_usergs_sysret64)
+ #if defined(CONFIG_DYNAMIC_FTRACE) && defined(CONFIG_TRACE_IRQFLAGS)
+
+ .macro TRACE_IRQS_OFF_DEBUG
+- call debug_stack_set_zero
++ pax_direct_call debug_stack_set_zero
+ TRACE_IRQS_OFF
+- call debug_stack_reset
++ pax_direct_call debug_stack_reset
+ .endm
+
+ .macro TRACE_IRQS_ON_DEBUG
+- call debug_stack_set_zero
++ pax_direct_call debug_stack_set_zero
+ TRACE_IRQS_ON
+- call debug_stack_reset
++ pax_direct_call debug_stack_reset
.endm
.macro TRACE_IRQS_IRETQ_DEBUG
@@ -17983,7 +19757,7 @@ index 02fff3e..c6685ec 100644
jnc 1f
TRACE_IRQS_ON_DEBUG
1:
-@@ -175,11 +566,22 @@ GLOBAL(entry_SYSCALL_64_after_swapgs)
+@@ -176,6 +565,16 @@ GLOBAL(entry_SYSCALL_64_after_swapgs)
pushq %r11 /* pt_regs->r11 */
sub $(6*8), %rsp /* pt_regs->bp, bx, r12-15 not saved */
@@ -18000,20 +19774,17 @@ index 02fff3e..c6685ec 100644
/*
* If we need to do entry work or if we guess we'll need to do
* exit work, go straight to the slow path.
+@@ -206,7 +605,7 @@ entry_SYSCALL_64_fastpath:
+ * It might end up jumping to the slow path. If it jumps, RAX
+ * and all argument registers are clobbered.
*/
-- testl $_TIF_WORK_SYSCALL_ENTRY|_TIF_ALLWORK_MASK, ASM_THREAD_INFO(TI_flags, %rsp, SIZEOF_PTREGS)
-+ GET_THREAD_INFO(%rcx)
-+ testl $_TIF_WORK_SYSCALL_ENTRY|_TIF_ALLWORK_MASK, TI_flags(%rcx)
- jnz entry_SYSCALL64_slow_path
+- call *sys_call_table(, %rax, 8)
++ pax_indirect_call "sys_call_table(, %rax, 8)", sys_ni_syscall
+ .Lentry_SYSCALL_64_after_fastpath_call:
- entry_SYSCALL_64_fastpath:
-@@ -217,9 +619,13 @@ entry_SYSCALL_64_fastpath:
- */
- DISABLE_INTERRUPTS(CLBR_NONE)
- TRACE_IRQS_OFF
-- testl $_TIF_ALLWORK_MASK, ASM_THREAD_INFO(TI_flags, %rsp, SIZEOF_PTREGS)
-+ GET_THREAD_INFO(%rcx)
-+ testl $_TIF_ALLWORK_MASK, TI_flags(%rcx)
+ movq %rax, RAX(%rsp)
+@@ -223,6 +622,9 @@ entry_SYSCALL_64_fastpath:
+ testl $_TIF_ALLWORK_MASK, TASK_TI_flags(%r11)
jnz 1f
+ pax_exit_kernel_user
@@ -18022,8 +19793,20 @@ index 02fff3e..c6685ec 100644
LOCKDEP_SYS_EXIT
TRACE_IRQS_ON /* user mode is traced as IRQs on */
movq RIP(%rsp), %rcx
-@@ -248,6 +654,9 @@ entry_SYSCALL64_slow_path:
- call do_syscall_64 /* returns with IRQs disabled */
+@@ -241,16 +643,19 @@ entry_SYSCALL_64_fastpath:
+ ENABLE_INTERRUPTS(CLBR_NONE)
+ SAVE_EXTRA_REGS
+ movq %rsp, %rdi
+- call syscall_return_slowpath /* returns with IRQs disabled */
++ pax_direct_call syscall_return_slowpath /* returns with IRQs disabled */
+ jmp return_from_SYSCALL_64
+
+ entry_SYSCALL64_slow_path:
+ /* IRQs are off. */
+ SAVE_EXTRA_REGS
+ movq %rsp, %rdi
+- call do_syscall_64 /* returns with IRQs disabled */
++ pax_direct_call do_syscall_64 /* returns with IRQs disabled */
return_from_SYSCALL_64:
+ pax_exit_kernel_user
@@ -18032,7 +19815,7 @@ index 02fff3e..c6685ec 100644
RESTORE_EXTRA_REGS
TRACE_IRQS_IRETQ /* we're about to change IF */
-@@ -272,13 +681,12 @@ return_from_SYSCALL_64:
+@@ -275,13 +680,12 @@ return_from_SYSCALL_64:
.error "virtual address width changed -- SYSRET checks need update"
.endif
@@ -18052,7 +19835,7 @@ index 02fff3e..c6685ec 100644
cmpq $__USER_CS, CS(%rsp) /* CS must match SYSRET */
jne opportunistic_sysret_failed
-@@ -326,7 +734,7 @@ syscall_return_via_sysret:
+@@ -329,7 +733,7 @@ syscall_return_via_sysret:
opportunistic_sysret_failed:
SWAPGS
jmp restore_c_regs_and_iret
@@ -18061,37 +19844,103 @@ index 02fff3e..c6685ec 100644
ENTRY(stub_ptregs_64)
/*
-@@ -353,13 +761,13 @@ ENTRY(stub_ptregs_64)
+@@ -355,13 +759,17 @@ ENTRY(stub_ptregs_64)
+
1:
- /* Called from C */
- jmp *%rax /* called from C */
+ jmp *%rax /* Called from C */
-END(stub_ptregs_64)
+ENDPROC(stub_ptregs_64)
.macro ptregs_stub func
- ENTRY(ptregs_\func)
+-ENTRY(ptregs_\func)
++RAP_ENTRY(ptregs_\func)
++#ifdef CONFIG_PAX_RAP
++ leaq rap_\func(%rip), %rax
++#else
leaq \func(%rip), %rax
++#endif
jmp stub_ptregs_64
-END(ptregs_\func)
+ENDPROC(ptregs_\func)
.endm
/* Instantiate ptregs_stub for each ptregs-using syscall */
-@@ -401,10 +809,12 @@ ENTRY(ret_from_fork)
- 1:
+@@ -381,7 +789,9 @@ ENTRY(__switch_to_asm)
+ */
+ pushq %rbp
+ pushq %rbx
++#ifndef CONFIG_PAX_KERNEXEC_PLUGIN_METHOD_OR
+ pushq %r12
++#endif
+ pushq %r13
+ pushq %r14
+ pushq %r15
+@@ -399,38 +809,49 @@ ENTRY(__switch_to_asm)
+ popq %r15
+ popq %r14
+ popq %r13
++#ifndef CONFIG_PAX_KERNEXEC_PLUGIN_METHOD_OR
+ popq %r12
++#endif
+ popq %rbx
+ popq %rbp
+
+ jmp __switch_to
+-END(__switch_to_asm)
++ENDPROC(__switch_to_asm)
+
+ /*
+ * A newly forked process directly context switches into this address.
+ *
+ * rax: prev task we switched from
+ * rbx: kernel thread func (NULL for user thread)
+- * r12: kernel thread arg
++ * r13: kernel thread arg
+ */
++#ifdef CONFIG_PAX_RAP
++ __ALIGN
++ pax_retloc __switch_to
++ .globl ret_from_fork
++ret_from_fork:
++#else
+ ENTRY(ret_from_fork)
++#endif
+ movq %rax, %rdi
+- call schedule_tail /* rdi: 'prev' task parameter */
++ pax_direct_call schedule_tail /* rdi: 'prev' task parameter */
+
+ testq %rbx, %rbx /* from kernel_thread? */
+ jnz 1f /* kernel threads are uncommon */
+
+ 2:
movq %rsp, %rdi
- call syscall_return_slowpath /* returns with IRQs disabled */
+- call syscall_return_slowpath /* returns with IRQs disabled */
++ pax_direct_call syscall_return_slowpath /* returns with IRQs disabled */
+ pax_exit_kernel_user
+ pax_erase_kstack
TRACE_IRQS_ON /* user mode is traced as IRQS on */
SWAPGS
jmp restore_regs_and_iret
+
+ 1:
+ /* kernel thread */
+- movq %r12, %rdi
+- call *%rbx
++ movq %r13, %rdi
++ pax_indirect_call %rbx, kthreadd
+ /*
+ * A kernel thread is allowed to return here after successfully
+ * calling do_execve(). Exit to userspace to complete the execve()
+@@ -438,7 +859,7 @@ ENTRY(ret_from_fork)
+ */
+ movq $0, RAX(%rsp)
+ jmp 2b
-END(ret_from_fork)
+ENDPROC(ret_from_fork)
/*
* Build the entry stubs with some assembler magic.
-@@ -419,7 +829,7 @@ ENTRY(irq_entries_start)
+@@ -453,7 +874,7 @@ ENTRY(irq_entries_start)
jmp common_interrupt
.align 8
.endr
@@ -18100,7 +19949,7 @@ index 02fff3e..c6685ec 100644
/*
* Interrupt entry/exit.
-@@ -445,6 +855,12 @@ END(irq_entries_start)
+@@ -479,6 +900,12 @@ END(irq_entries_start)
*/
SWAPGS
@@ -18113,7 +19962,7 @@ index 02fff3e..c6685ec 100644
/*
* We need to tell lockdep that IRQs are off. We can't do this until
* we fix gsbase, and we should do it before enter_from_user_mode
-@@ -457,7 +873,9 @@ END(irq_entries_start)
+@@ -491,7 +918,9 @@ END(irq_entries_start)
CALL_enter_from_user_mode
@@ -18124,7 +19973,7 @@ index 02fff3e..c6685ec 100644
/*
* Save previous stack pointer, optionally switch to interrupt stack.
* irq_count is used to check if a CPU is already on an interrupt stack
-@@ -469,6 +887,7 @@ END(irq_entries_start)
+@@ -503,10 +932,11 @@ END(irq_entries_start)
incl PER_CPU_VAR(irq_count)
cmovzq PER_CPU_VAR(irq_stack_ptr), %rsp
pushq %rdi
@@ -18132,16 +19981,28 @@ index 02fff3e..c6685ec 100644
/* We entered an interrupt context - irqs are off: */
TRACE_IRQS_OFF
-@@ -500,6 +919,8 @@ ret_from_intr:
+- call \func /* rdi points to pt_regs */
++ pax_direct_call \func /* rdi points to pt_regs */
+ .endm
+
+ /*
+@@ -533,7 +963,9 @@ ret_from_intr:
+ /* Interrupt came from user space */
GLOBAL(retint_user)
mov %rsp,%rdi
- call prepare_exit_to_usermode
+- call prepare_exit_to_usermode
++ pax_direct_call prepare_exit_to_usermode
+ pax_exit_kernel_user
+# pax_erase_kstack
TRACE_IRQS_IRETQ
SWAPGS
jmp restore_regs_and_iret
-@@ -517,6 +938,21 @@ retint_kernel:
+@@ -547,10 +979,25 @@ retint_kernel:
+ jnc 1f
+ 0: cmpl $0, PER_CPU_VAR(__preempt_count)
+ jnz 1f
+- call preempt_schedule_irq
++ pax_direct_call preempt_schedule_irq
jmp 0b
1:
#endif
@@ -18163,29 +20024,29 @@ index 02fff3e..c6685ec 100644
/*
* The iretq could re-enable interrupts:
*/
-@@ -560,15 +996,15 @@ native_irq_return_ldt:
+@@ -614,15 +1061,15 @@ native_irq_return_ldt:
SWAPGS
movq PER_CPU_VAR(espfix_waddr), %rdi
- movq %rax, (0*8)(%rdi) /* RAX */
-- movq (2*8)(%rsp), %rax /* RIP */
-+ movq (2*8 + RIP-RIP)(%rsp), %rax /* RIP */
+ movq %rax, (0*8)(%rdi) /* user RAX */
+- movq (1*8)(%rsp), %rax /* user RIP */
++ movq (8 + RIP-RIP)(%rsp), %rax /* user RIP */
movq %rax, (1*8)(%rdi)
-- movq (3*8)(%rsp), %rax /* CS */
-+ movq (2*8 + CS-RIP)(%rsp), %rax /* CS */
+- movq (2*8)(%rsp), %rax /* user CS */
++ movq (8 + CS-RIP)(%rsp), %rax /* user CS */
movq %rax, (2*8)(%rdi)
-- movq (4*8)(%rsp), %rax /* RFLAGS */
-+ movq (2*8 + EFLAGS-RIP)(%rsp), %rax /* RFLAGS */
+- movq (3*8)(%rsp), %rax /* user RFLAGS */
++ movq (8 + EFLAGS-RIP)(%rsp), %rax /* user RFLAGS */
movq %rax, (3*8)(%rdi)
-- movq (6*8)(%rsp), %rax /* SS */
-+ movq (2*8 + SS-RIP)(%rsp), %rax /* SS */
+- movq (5*8)(%rsp), %rax /* user SS */
++ movq (8 + SS-RIP)(%rsp), %rax /* user SS */
movq %rax, (5*8)(%rdi)
-- movq (5*8)(%rsp), %rax /* RSP */
-+ movq (2*8 + RSP-RIP)(%rsp), %rax /* RSP */
+- movq (4*8)(%rsp), %rax /* user RSP */
++ movq (8 + RSP-RIP)(%rsp), %rax /* user RSP */
movq %rax, (4*8)(%rdi)
- andl $0xffff0000, %eax
- popq %rdi
-@@ -578,7 +1014,7 @@ native_irq_return_ldt:
- popq %rax
+ /* Now RAX == RSP. */
+
+@@ -654,7 +1101,7 @@ native_irq_return_ldt:
+ */
jmp native_irq_return_iret
#endif
-END(common_interrupt)
@@ -18193,7 +20054,7 @@ index 02fff3e..c6685ec 100644
/*
* APIC interrupts.
-@@ -590,7 +1026,7 @@ ENTRY(\sym)
+@@ -666,7 +1113,7 @@ ENTRY(\sym)
.Lcommon_\sym:
interrupt \do_sym
jmp ret_from_intr
@@ -18202,16 +20063,41 @@ index 02fff3e..c6685ec 100644
.endm
#ifdef CONFIG_TRACING
-@@ -666,7 +1102,7 @@ apicinterrupt IRQ_WORK_VECTOR irq_work_interrupt smp_irq_work_interrupt
+@@ -742,15 +1189,19 @@ apicinterrupt IRQ_WORK_VECTOR irq_work_interrupt smp_irq_work_interrupt
/*
* Exception entry points.
*/
-#define CPU_TSS_IST(x) PER_CPU_VAR(cpu_tss) + (TSS_ist + ((x) - 1) * 8)
+#define CPU_TSS_IST(x) (TSS_ist + ((x) - 1) * 8)(%r13)
- .macro idtentry sym do_sym has_error_code:req paranoid=0 shift_ist=-1
+-.macro idtentry sym do_sym has_error_code:req paranoid=0 shift_ist=-1
++.macro idtentry sym do_sym has_error_code:req paranoid=0 shift_ist=-1 rap_hash=0
ENTRY(\sym)
-@@ -713,6 +1149,12 @@ ENTRY(\sym)
+ /* Sanity check */
+ .if \shift_ist != -1 && \paranoid == 0
+ .error "using shift_ist requires paranoid=1"
+ .endif
+
++ .if \paranoid != 0 && \rap_hash==tailcall
++ .error "tail called idt entry cannot be paranoid"
++ .endif
++
+ ASM_CLAC
+ PARAVIRT_ADJUST_EXCEPTION_FRAME
+
+@@ -765,9 +1216,9 @@ ENTRY(\sym)
+ testb $3, CS(%rsp) /* If coming from userspace, switch stacks */
+ jnz 1f
+ .endif
+- call paranoid_entry
++ pax_direct_call paranoid_entry
+ .else
+- call error_entry
++ pax_direct_call error_entry
+ .endif
+ /* returned flag: ebx=0: need swapgs on exit, ebx=1: don't need it */
+
+@@ -789,10 +1240,23 @@ ENTRY(\sym)
.endif
.if \shift_ist != -1
@@ -18224,7 +20110,42 @@ index 02fff3e..c6685ec 100644
subq $EXCEPTION_STKSZ, CPU_TSS_IST(\shift_ist)
.endif
-@@ -756,7 +1198,7 @@ ENTRY(\sym)
+- call \do_sym
++ .ifc \rap_hash,tailcall
++ jmp \do_sym
++ .exitm
++ .elseif \rap_hash == 0
++ pax_direct_call \do_sym
++ .else
++ pax_indirect_call \do_sym, \rap_hash
++ .endif
+
+ .if \shift_ist != -1
+ addq $EXCEPTION_STKSZ, CPU_TSS_IST(\shift_ist)
+@@ -812,11 +1276,11 @@ ENTRY(\sym)
+ * run in real process context if user_mode(regs).
+ */
+ 1:
+- call error_entry
++ pax_direct_call error_entry
+
+
+ movq %rsp, %rdi /* pt_regs pointer */
+- call sync_regs
++ pax_direct_call sync_regs
+ movq %rax, %rsp /* switch stack */
+
+ movq %rsp, %rdi /* pt_regs pointer */
+@@ -828,11 +1292,15 @@ ENTRY(\sym)
+ xorl %esi, %esi /* no error code */
+ .endif
+
+- call \do_sym
++ .if \rap_hash == 0
++ pax_direct_call \do_sym
++ .else
++ pax_indirect_call \do_sym, \rap_hash
++ .endif
jmp error_exit /* %ebx: no swapgs flag */
.endif
@@ -18233,40 +20154,67 @@ index 02fff3e..c6685ec 100644
.endm
#ifdef CONFIG_TRACING
-@@ -784,6 +1226,9 @@ idtentry coprocessor_error do_coprocessor_error has_error_code=0
+@@ -860,6 +1328,14 @@ idtentry coprocessor_error do_coprocessor_error has_error_code=0
idtentry alignment_check do_alignment_check has_error_code=1
idtentry simd_coprocessor_error do_simd_coprocessor_error has_error_code=0
+#ifdef CONFIG_PAX_REFCOUNT
+idtentry refcount_error do_refcount_error has_error_code=0
+#endif
++
++#ifdef CONFIG_PAX_RAP
++idtentry rap_call_error do_rap_call_error has_error_code=0
++idtentry rap_ret_error do_rap_ret_error has_error_code=0
++#endif
/*
* Reload gs selector with exception handling
-@@ -798,8 +1243,9 @@ ENTRY(native_load_gs_index)
+@@ -874,8 +1350,8 @@ ENTRY(native_load_gs_index)
2: ALTERNATIVE "", "mfence", X86_BUG_SWAPGS_FENCE
SWAPGS
popfq
-+ pax_force_retaddr
- ret
+- ret
-END(native_load_gs_index)
++ pax_ret native_load_gs_index
+ENDPROC(native_load_gs_index)
+ EXPORT_SYMBOL(native_load_gs_index)
_ASM_EXTABLE(.Lgs_change, bad_gs)
- .section .fixup, "ax"
-@@ -827,8 +1273,9 @@ ENTRY(do_softirq_own_stack)
- call __do_softirq
+@@ -901,14 +1377,14 @@ ENTRY(do_softirq_own_stack)
+ incl PER_CPU_VAR(irq_count)
+ cmove PER_CPU_VAR(irq_stack_ptr), %rsp
+ push %rbp /* frame pointer backlink */
+- call __do_softirq
++ pax_direct_call __do_softirq
leaveq
decl PER_CPU_VAR(irq_count)
-+ pax_force_retaddr
- ret
+- ret
-END(do_softirq_own_stack)
++ pax_ret do_softirq_own_stack
+ENDPROC(do_softirq_own_stack)
#ifdef CONFIG_XEN
- idtentry xen_hypervisor_callback xen_do_hypervisor_callback has_error_code=0
-@@ -864,7 +1311,7 @@ ENTRY(xen_do_hypervisor_callback) /* do_hypervisor_callback(struct *pt_regs) */
- call xen_maybe_preempt_hcall
+-idtentry xen_hypervisor_callback xen_do_hypervisor_callback has_error_code=0
++idtentry xen_hypervisor_callback xen_do_hypervisor_callback has_error_code=0 rap_hash=tailcall
+
+ /*
+ * A note on the "critical region" in our callback handler.
+@@ -929,19 +1405,18 @@ ENTRY(xen_do_hypervisor_callback) /* do_hypervisor_callback(struct *pt_regs) */
+ * Since we don't modify %rdi, evtchn_do_upall(struct *pt_regs) will
+ * see the correct pointer to the pt_regs
+ */
+- movq %rdi, %rsp /* we don't return, adjust the stack frame */
+ 11: incl PER_CPU_VAR(irq_count)
+ movq %rsp, %rbp
+ cmovzq PER_CPU_VAR(irq_stack_ptr), %rsp
+ pushq %rbp /* frame pointer backlink */
+- call xen_evtchn_do_upcall
++ pax_direct_call xen_evtchn_do_upcall
+ popq %rsp
+ decl PER_CPU_VAR(irq_count)
+ #ifndef CONFIG_PREEMPT
+- call xen_maybe_preempt_hcall
++ pax_direct_call xen_maybe_preempt_hcall
#endif
jmp error_exit
-END(xen_do_hypervisor_callback)
@@ -18274,7 +20222,7 @@ index 02fff3e..c6685ec 100644
/*
* Hypervisor uses this for application faults while it executes.
-@@ -909,7 +1356,7 @@ ENTRY(xen_failsafe_callback)
+@@ -986,7 +1461,7 @@ ENTRY(xen_failsafe_callback)
SAVE_C_REGS
SAVE_EXTRA_REGS
jmp error_exit
@@ -18283,7 +20231,7 @@ index 02fff3e..c6685ec 100644
apicinterrupt3 HYPERVISOR_CALLBACK_VECTOR \
xen_hvm_callback_vector xen_evtchn_do_upcall
-@@ -921,7 +1368,7 @@ apicinterrupt3 HYPERVISOR_CALLBACK_VECTOR \
+@@ -998,7 +1473,7 @@ apicinterrupt3 HYPERVISOR_CALLBACK_VECTOR \
hyperv_callback_vector hyperv_vector_handler
#endif /* CONFIG_HYPERV */
@@ -18292,7 +20240,16 @@ index 02fff3e..c6685ec 100644
idtentry int3 do_int3 has_error_code=0 paranoid=1 shift_ist=DEBUG_STACK
idtentry stack_segment do_stack_segment has_error_code=1
-@@ -958,8 +1405,34 @@ ENTRY(paranoid_entry)
+@@ -1016,7 +1491,7 @@ idtentry async_page_fault do_async_page_fault has_error_code=1
+ #endif
+
+ #ifdef CONFIG_X86_MCE
+-idtentry machine_check has_error_code=0 paranoid=1 do_sym=*machine_check_vector(%rip)
++idtentry machine_check has_error_code=0 paranoid=1 do_sym="machine_check_vector(%rip)" rap_hash=do_machine_check
+ #endif
+
+ /*
+@@ -1035,8 +1510,32 @@ ENTRY(paranoid_entry)
js 1f /* negative -> in kernel */
SWAPGS
xorl %ebx, %ebx
@@ -18307,8 +20264,7 @@ index 02fff3e..c6685ec 100644
+#endif
+1: pax_enter_kernel
+2:
-+ pax_force_retaddr
-+ ret
++ pax_ret paranoid_entry
+ENDPROC(paranoid_entry)
+
+ENTRY(paranoid_entry_nmi)
@@ -18323,13 +20279,12 @@ index 02fff3e..c6685ec 100644
+ SWAPGS
+ xorl %ebx, %ebx
+1: pax_enter_kernel_nmi
-+ pax_force_retaddr
-+ ret
++ pax_ret paranoid_entry_nmi
+ENDPROC(paranoid_entry_nmi)
/*
* "Paranoid" exit path from exception stack. This is invoked
-@@ -976,19 +1449,26 @@ END(paranoid_entry)
+@@ -1053,19 +1552,26 @@ END(paranoid_entry)
ENTRY(paranoid_exit)
DISABLE_INTERRUPTS(CLBR_NONE)
TRACE_IRQS_OFF_DEBUG
@@ -18358,7 +20313,7 @@ index 02fff3e..c6685ec 100644
/*
* Save all registers in pt_regs, and switch gs if needed.
-@@ -1008,6 +1488,12 @@ ENTRY(error_entry)
+@@ -1085,6 +1591,12 @@ ENTRY(error_entry)
*/
SWAPGS
@@ -18371,20 +20326,21 @@ index 02fff3e..c6685ec 100644
.Lerror_entry_from_usermode_after_swapgs:
/*
* We need to tell lockdep that IRQs are off. We can't do this until
-@@ -1016,10 +1502,12 @@ ENTRY(error_entry)
+@@ -1093,11 +1605,11 @@ ENTRY(error_entry)
*/
TRACE_IRQS_OFF
CALL_enter_from_user_mode
-+ pax_force_retaddr
- ret
+- ret
++ pax_ret error_entry
.Lerror_entry_done:
TRACE_IRQS_OFF
-+ pax_force_retaddr
- ret
+- ret
++ pax_ret error_entry
/*
-@@ -1037,7 +1525,7 @@ ENTRY(error_entry)
+ * There are two places in the kernel that can potentially fault with
+@@ -1114,7 +1626,7 @@ ENTRY(error_entry)
cmpq %rax, RIP+8(%rsp)
je .Lbstep_iret
cmpq $.Lgs_change, RIP+8(%rsp)
@@ -18393,7 +20349,7 @@ index 02fff3e..c6685ec 100644
/*
* hack: .Lgs_change can fail with user gsbase. If this happens, fix up
-@@ -1045,7 +1533,8 @@ ENTRY(error_entry)
+@@ -1122,7 +1634,8 @@ ENTRY(error_entry)
* .Lgs_change's error handler with kernel gsbase.
*/
SWAPGS
@@ -18403,7 +20359,7 @@ index 02fff3e..c6685ec 100644
.Lbstep_iret:
/* Fix truncated RIP */
-@@ -1059,6 +1548,12 @@ ENTRY(error_entry)
+@@ -1136,17 +1649,23 @@ ENTRY(error_entry)
*/
SWAPGS
@@ -18416,7 +20372,11 @@ index 02fff3e..c6685ec 100644
/*
* Pretend that the exception came from user mode: set up pt_regs
* as if we faulted immediately after IRET and clear EBX so that
-@@ -1069,11 +1564,11 @@ ENTRY(error_entry)
+ * error_exit knows that we will be returning to user mode.
+ */
+ mov %rsp, %rdi
+- call fixup_bad_iret
++ pax_direct_call fixup_bad_iret
mov %rax, %rsp
decl %ebx
jmp .Lerror_entry_from_usermode_after_swapgs
@@ -18425,12 +20385,7 @@ index 02fff3e..c6685ec 100644
/*
-- * On entry, EBS is a "return to kernel mode" flag:
-+ * On entry, EBX is a "return to kernel mode" flag:
- * 1: already in kernel mode, don't need SWAPGS
- * 0: user gsbase is loaded, we need SWAPGS and standard preparation for return to usermode
- */
-@@ -1081,10 +1576,10 @@ ENTRY(error_exit)
+@@ -1158,10 +1677,10 @@ ENTRY(error_exit)
movl %ebx, %eax
DISABLE_INTERRUPTS(CLBR_NONE)
TRACE_IRQS_OFF
@@ -18443,7 +20398,7 @@ index 02fff3e..c6685ec 100644
/* Runs on exception stack */
ENTRY(nmi)
-@@ -1138,6 +1633,8 @@ ENTRY(nmi)
+@@ -1215,6 +1734,8 @@ ENTRY(nmi)
* other IST entries.
*/
@@ -18452,7 +20407,7 @@ index 02fff3e..c6685ec 100644
/* Use %rdx as our temp variable throughout */
pushq %rdx
-@@ -1181,6 +1678,12 @@ ENTRY(nmi)
+@@ -1258,6 +1779,12 @@ ENTRY(nmi)
pushq %r14 /* pt_regs->r14 */
pushq %r15 /* pt_regs->r15 */
@@ -18465,15 +20420,18 @@ index 02fff3e..c6685ec 100644
/*
* At this point we no longer need to worry about stack damage
* due to nesting -- we're on the normal thread stack and we're
-@@ -1191,12 +1694,19 @@ ENTRY(nmi)
- movq $-1, %rsi
- call do_nmi
+@@ -1266,7 +1793,9 @@ ENTRY(nmi)
-+ pax_exit_kernel_nmi
+ movq %rsp, %rdi
+ movq $-1, %rsi
+- call do_nmi
++ pax_direct_call do_nmi
+
++ pax_exit_kernel_nmi
+
/*
* Return back to user mode. We must *not* do the normal exit
- * work, because we don't want to enable interrupts. Fortunately,
+@@ -1274,6 +1803,11 @@ ENTRY(nmi)
* do_nmi doesn't modify pt_regs.
*/
SWAPGS
@@ -18485,7 +20443,7 @@ index 02fff3e..c6685ec 100644
jmp restore_c_regs_and_iret
.Lnmi_from_kernel:
-@@ -1318,6 +1828,7 @@ nested_nmi_out:
+@@ -1395,6 +1929,7 @@ nested_nmi_out:
popq %rdx
/* We are returning to kernel mode, so this cannot result in a fault. */
@@ -18493,7 +20451,7 @@ index 02fff3e..c6685ec 100644
INTERRUPT_RETURN
first_nmi:
-@@ -1346,7 +1857,7 @@ first_nmi:
+@@ -1423,7 +1958,7 @@ first_nmi:
pushq %rsp /* RSP (minus 8 because of the previous push) */
addq $8, (%rsp) /* Fix up RSP */
pushfq /* RFLAGS */
@@ -18502,7 +20460,7 @@ index 02fff3e..c6685ec 100644
pushq $1f /* RIP */
INTERRUPT_RETURN /* continues at repeat_nmi below */
1:
-@@ -1391,20 +1902,22 @@ end_repeat_nmi:
+@@ -1468,20 +2003,22 @@ end_repeat_nmi:
ALLOC_PT_GPREGS_ON_STACK
/*
@@ -18514,12 +20472,13 @@ index 02fff3e..c6685ec 100644
* exceptions might do.
*/
- call paranoid_entry
-+ call paranoid_entry_nmi
++ pax_direct_call paranoid_entry_nmi
/* paranoidentry do_nmi, 0; without TRACE_IRQS_OFF */
movq %rsp, %rdi
movq $-1, %rsi
- call do_nmi
+- call do_nmi
++ pax_direct_call do_nmi
- testl %ebx, %ebx /* swapgs needed? */
+ pax_exit_kernel_nmi
@@ -18528,7 +20487,7 @@ index 02fff3e..c6685ec 100644
jnz nmi_restore
nmi_swapgs:
SWAPGS_UNSAFE_STACK
-@@ -1415,6 +1928,8 @@ nmi_restore:
+@@ -1492,6 +2029,8 @@ nmi_restore:
/* Point RSP at the "iret" frame. */
REMOVE_PT_GPREGS_FROM_STACK 6*8
@@ -18537,7 +20496,7 @@ index 02fff3e..c6685ec 100644
/*
* Clear "NMI executing". Set DF first so that we can easily
* distinguish the remaining code between here and IRET from
-@@ -1432,12 +1947,12 @@ nmi_restore:
+@@ -1509,12 +2048,12 @@ nmi_restore:
* mode, so this cannot result in a fault.
*/
INTERRUPT_RETURN
@@ -18552,17 +20511,17 @@ index 02fff3e..c6685ec 100644
ENTRY(rewind_stack_do_exit)
/* Prevent any naive code from trying to unwind to our caller. */
-@@ -1446,6 +1961,6 @@ ENTRY(rewind_stack_do_exit)
+@@ -1523,6 +2062,6 @@ ENTRY(rewind_stack_do_exit)
movq PER_CPU_VAR(cpu_current_top_of_stack), %rax
leaq -TOP_OF_KERNEL_STACK_PADDING-PTREGS_SIZE(%rax), %rsp
- call do_exit
-+ call do_group_exit
++ pax_direct_call do_group_exit
1: jmp 1b
-END(rewind_stack_do_exit)
+ENDPROC(rewind_stack_do_exit)
diff --git a/arch/x86/entry/entry_64_compat.S b/arch/x86/entry/entry_64_compat.S
-index e1721da..83f2c49 100644
+index e1721da..28b685f 100644
--- a/arch/x86/entry/entry_64_compat.S
+++ b/arch/x86/entry/entry_64_compat.S
@@ -13,11 +13,39 @@
@@ -18579,18 +20538,18 @@ index e1721da..83f2c49 100644
+ .macro pax_enter_kernel_user
+ pax_set_fptr_mask
+#ifdef CONFIG_PAX_MEMORY_UDEREF
-+ call pax_enter_kernel_user
++ pax_direct_call pax_enter_kernel_user
+#endif
+ .endm
+
+ .macro pax_exit_kernel_user
+#ifdef CONFIG_PAX_MEMORY_UDEREF
-+ call pax_exit_kernel_user
++ pax_direct_call pax_exit_kernel_user
+#endif
+#ifdef CONFIG_PAX_RANDKSTACK
+ pushq %rax
+ pushq %r11
-+ call pax_randomize_kstack
++ pax_direct_call pax_randomize_kstack
+ popq %r11
+ popq %rax
+#endif
@@ -18598,7 +20557,7 @@ index e1721da..83f2c49 100644
+
+ .macro pax_erase_kstack
+#ifdef CONFIG_PAX_MEMORY_STACKLEAK
-+ call pax_erase_kstack
++ pax_direct_call pax_erase_kstack
+#endif
+ .endm
+
@@ -18648,6 +20607,15 @@ index e1721da..83f2c49 100644
/*
* SYSENTER doesn't filter flags, so we need to clear NT and AC
* ourselves. To save a few cycles, we can check whether
+@@ -121,7 +160,7 @@ ENTRY(entry_SYSENTER_compat)
+ TRACE_IRQS_OFF
+
+ movq %rsp, %rdi
+- call do_fast_syscall_32
++ pax_direct_call do_fast_syscall_32
+ /* XEN PV guests always use IRET path */
+ ALTERNATIVE "testl %eax, %eax; jz .Lsyscall_32_done", \
+ "jmp .Lsyscall_32_done", X86_FEATURE_XENPV
@@ -204,16 +243,27 @@ ENTRY(entry_SYSCALL_compat)
pushq %rdx /* pt_regs->dx */
pushq %rbp /* pt_regs->cx (stashed in bp) */
@@ -18684,7 +20652,15 @@ index e1721da..83f2c49 100644
/*
* User mode is traced as though IRQs are on, and SYSENTER
-@@ -229,11 +279,18 @@ ENTRY(entry_SYSCALL_compat)
+@@ -222,18 +272,25 @@ ENTRY(entry_SYSCALL_compat)
+ TRACE_IRQS_OFF
+
+ movq %rsp, %rdi
+- call do_fast_syscall_32
++ pax_direct_call do_fast_syscall_32
+ /* XEN PV guests always use IRET path */
+ ALTERNATIVE "testl %eax, %eax; jz .Lsyscall_32_done", \
+ "jmp .Lsyscall_32_done", X86_FEATURE_XENPV
/* Opportunistic SYSRET */
sysret32_from_system_call:
@@ -18741,7 +20717,12 @@ index e1721da..83f2c49 100644
/*
* User mode is traced as though IRQs are on, and the interrupt
* gate turned them off.
-@@ -337,10 +401,12 @@ ENTRY(entry_INT80_compat)
+@@ -333,17 +397,23 @@ ENTRY(entry_INT80_compat)
+ TRACE_IRQS_OFF
+
+ movq %rsp, %rdi
+- call do_int80_syscall_32
++ pax_direct_call do_int80_syscall_32
.Lsyscall_32_done:
/* Go back to user mode. */
@@ -18754,32 +20735,178 @@ index e1721da..83f2c49 100644
+ENDPROC(entry_INT80_compat)
ALIGN
++#ifdef CONFIG_PAX_RAP
++RAP_ENTRY(rap_stub32_clone)
++#else
GLOBAL(stub32_clone)
++#endif
+ /*
+ * The 32-bit clone ABI is: clone(..., int tls_val, int *child_tidptr).
+ * The 64-bit clone ABI is: clone(..., int *child_tidptr, int tls_val).
+@@ -352,4 +422,8 @@ GLOBAL(stub32_clone)
+ * so we need to swap arguments here before calling it:
+ */
+ xchg %r8, %rcx
++#ifdef CONFIG_PAX_RAP
++ jmp rap_sys_clone
++#else
+ jmp sys_clone
++#endif
+diff --git a/arch/x86/entry/syscall_32.c b/arch/x86/entry/syscall_32.c
+index 8f895ee..5cc22ed 100644
+--- a/arch/x86/entry/syscall_32.c
++++ b/arch/x86/entry/syscall_32.c
+@@ -6,11 +6,19 @@
+ #include <asm/asm-offsets.h>
+ #include <asm/syscall.h>
+
++#ifdef CONFIG_PAX_RAP
++#define __SYSCALL_I386(nr, sym, qual) extern asmlinkage long rap_##sym(unsigned long, unsigned long, unsigned long, unsigned long, unsigned long, unsigned long) ;
++#else
+ #define __SYSCALL_I386(nr, sym, qual) extern asmlinkage long sym(unsigned long, unsigned long, unsigned long, unsigned long, unsigned long, unsigned long) ;
++#endif
+ #include <asm/syscalls_32.h>
+ #undef __SYSCALL_I386
+
++#ifdef CONFIG_PAX_RAP
++#define __SYSCALL_I386(nr, sym, qual) [nr] = rap_##sym,
++#else
+ #define __SYSCALL_I386(nr, sym, qual) [nr] = sym,
++#endif
+
+ extern asmlinkage long sys_ni_syscall(unsigned long, unsigned long, unsigned long, unsigned long, unsigned long, unsigned long);
+
+diff --git a/arch/x86/entry/syscall_64.c b/arch/x86/entry/syscall_64.c
+index 9dbc5ab..b2d64fb 100644
+--- a/arch/x86/entry/syscall_64.c
++++ b/arch/x86/entry/syscall_64.c
+@@ -6,7 +6,11 @@
+ #include <asm/asm-offsets.h>
+ #include <asm/syscall.h>
+
++#ifdef CONFIG_PAX_RAP
++#define __SYSCALL_64_QUAL_(sym) rap_##sym
++#else
+ #define __SYSCALL_64_QUAL_(sym) sym
++#endif
+ #define __SYSCALL_64_QUAL_ptregs(sym) ptregs_##sym
+
+ #define __SYSCALL_64(nr, sym, qual) extern asmlinkage long __SYSCALL_64_QUAL_##qual(sym)(unsigned long, unsigned long, unsigned long, unsigned long, unsigned long, unsigned long);
+diff --git a/arch/x86/entry/thunk_32.S b/arch/x86/entry/thunk_32.S
+index fee6bc7..02a69fb 100644
+--- a/arch/x86/entry/thunk_32.S
++++ b/arch/x86/entry/thunk_32.S
+@@ -5,7 +5,7 @@
+ * Subject to the GNU public license, v.2. No warranty of any kind.
+ */
+ #include <linux/linkage.h>
+- #include <asm/asm.h>
++ #include <asm/alternative-asm.h>
+ #include <asm/export.h>
+
+ /* put return address in eax (arg1) */
+@@ -21,11 +21,11 @@
+ movl 3*4(%esp), %eax
+ .endif
+
+- call \func
++ pax_direct_call \func
+ popl %edx
+ popl %ecx
+ popl %eax
+- ret
++ pax_ret \name
+ _ASM_NOKPROBE(\name)
+ .endm
+
diff --git a/arch/x86/entry/thunk_64.S b/arch/x86/entry/thunk_64.S
-index 627ecbc..6490d11 100644
+index be36bf4..a22f673 100644
--- a/arch/x86/entry/thunk_64.S
+++ b/arch/x86/entry/thunk_64.S
-@@ -8,6 +8,7 @@
- #include <linux/linkage.h>
+@@ -9,6 +9,7 @@
#include "calling.h"
#include <asm/asm.h>
+ #include <asm/export.h>
+#include <asm/alternative-asm.h>
/* rdi: arg1 ... normal C conventions. rax is saved/restored. */
.macro THUNK name, func, put_ret_addr_in_rdi=0
-@@ -65,6 +66,7 @@
- popq %rsi
- popq %rdi
- popq %rbp
-+ pax_force_retaddr
- ret
- _ASM_NOKPROBE(.L_restore)
+@@ -33,8 +34,19 @@
+ movq 8(%rbp), %rdi
+ .endif
+
+- call \func
+- jmp .L_restore
++ pax_direct_call \func
++
++ popq %r11
++ popq %r10
++ popq %r9
++ popq %r8
++ popq %rax
++ popq %rcx
++ popq %rdx
++ popq %rsi
++ popq %rdi
++ popq %rbp
++ pax_ret \name
+ _ASM_NOKPROBE(\name)
+ .endm
+
+@@ -53,21 +65,3 @@
+ EXPORT_SYMBOL(___preempt_schedule)
+ EXPORT_SYMBOL(___preempt_schedule_notrace)
#endif
+-
+-#if defined(CONFIG_TRACE_IRQFLAGS) \
+- || defined(CONFIG_DEBUG_LOCK_ALLOC) \
+- || defined(CONFIG_PREEMPT)
+-.L_restore:
+- popq %r11
+- popq %r10
+- popq %r9
+- popq %r8
+- popq %rax
+- popq %rcx
+- popq %rdx
+- popq %rsi
+- popq %rdi
+- popq %rbp
+- ret
+- _ASM_NOKPROBE(.L_restore)
+-#endif
diff --git a/arch/x86/entry/vdso/Makefile b/arch/x86/entry/vdso/Makefile
-index d540966..443f0d7 100644
+index d540966..3ea2a6a 100644
--- a/arch/x86/entry/vdso/Makefile
+++ b/arch/x86/entry/vdso/Makefile
-@@ -170,7 +170,7 @@ quiet_cmd_vdso = VDSO $@
+@@ -17,6 +17,9 @@ VDSO32-$(CONFIG_IA32_EMULATION) := y
+
+ # files to link into the vdso
+ vobjs-y := vdso-note.o vclock_gettime.o vgetcpu.o
++GCC_PLUGINS_vdso-note.o := n
++GCC_PLUGINS_vclock_gettime.o := n
++GCC_PLUGINS_vgetcpu.o := n
+
+ # files to link into kernel
+ obj-y += vma.o
+@@ -75,7 +78,7 @@ CFL := $(PROFILING) -mcmodel=small -fPIC -O2 -fasynchronous-unwind-tables -m64 \
+ -fno-omit-frame-pointer -foptimize-sibling-calls \
+ -DDISABLE_BRANCH_PROFILING -DBUILD_VDSO
+
+-$(vobjs): KBUILD_CFLAGS := $(filter-out $(GCC_PLUGINS_CFLAGS),$(KBUILD_CFLAGS)) $(CFL)
++$(vobjs): KBUILD_CFLAGS := $(KBUILD_CFLAGS) $(CFL)
+
+ #
+ # vDSO code runs in userspace and -pg doesn't help with profiling anyway.
+@@ -145,7 +148,6 @@ KBUILD_CFLAGS_32 := $(filter-out -m64,$(KBUILD_CFLAGS))
+ KBUILD_CFLAGS_32 := $(filter-out -mcmodel=kernel,$(KBUILD_CFLAGS_32))
+ KBUILD_CFLAGS_32 := $(filter-out -fno-pic,$(KBUILD_CFLAGS_32))
+ KBUILD_CFLAGS_32 := $(filter-out -mfentry,$(KBUILD_CFLAGS_32))
+-KBUILD_CFLAGS_32 := $(filter-out $(GCC_PLUGINS_CFLAGS),$(KBUILD_CFLAGS_32))
+ KBUILD_CFLAGS_32 += -m32 -msoft-float -mregparm=0 -fpic
+ KBUILD_CFLAGS_32 += $(call cc-option, -fno-stack-protector)
+ KBUILD_CFLAGS_32 += $(call cc-option, -foptimize-sibling-calls)
+@@ -170,7 +172,7 @@ quiet_cmd_vdso = VDSO $@
-Wl,-T,$(filter %.lds,$^) $(filter %.o,$^) && \
sh $(srctree)/$(src)/checkundef.sh '$(NM)' '$@'
@@ -18789,7 +20916,7 @@ index d540966..443f0d7 100644
GCOV_PROFILE := n
diff --git a/arch/x86/entry/vdso/vclock_gettime.c b/arch/x86/entry/vdso/vclock_gettime.c
-index 94d54d0..390dce1 100644
+index 02223cb..84f10fc 100644
--- a/arch/x86/entry/vdso/vclock_gettime.c
+++ b/arch/x86/entry/vdso/vclock_gettime.c
@@ -300,5 +300,5 @@ notrace time_t __vdso_time(time_t *t)
@@ -18822,7 +20949,7 @@ index 3dab75f..2c439d0 100644
GET_LE(&symtab_hdr->sh_entsize) * i;
const char *name = raw_addr + GET_LE(&strtab_hdr->sh_offset) +
diff --git a/arch/x86/entry/vdso/vma.c b/arch/x86/entry/vdso/vma.c
-index f840766..222abb1 100644
+index 23c881c..e4808fc 100644
--- a/arch/x86/entry/vdso/vma.c
+++ b/arch/x86/entry/vdso/vma.c
@@ -21,10 +21,7 @@
@@ -18837,7 +20964,7 @@ index f840766..222abb1 100644
void __init init_vdso_image(const struct vdso_image *image)
{
-@@ -90,7 +87,7 @@ static int vdso_fault(const struct vm_special_mapping *sm,
+@@ -42,7 +39,7 @@ static int vdso_fault(const struct vm_special_mapping *sm,
{
const struct vdso_image *image = vma->vm_mm->context.vdso_image;
@@ -18846,7 +20973,7 @@ index f840766..222abb1 100644
return VM_FAULT_SIGBUS;
vmf->page = virt_to_page(image->data + (vmf->pgoff << PAGE_SHIFT));
-@@ -128,7 +125,7 @@ static int vdso_mremap(const struct vm_special_mapping *sm,
+@@ -80,7 +77,7 @@ static int vdso_mremap(const struct vm_special_mapping *sm,
return -EFAULT;
vdso_fix_landing(image, new_vma);
@@ -18855,19 +20982,7 @@ index f840766..222abb1 100644
return 0;
}
-@@ -193,6 +190,11 @@ static int map_vdso(const struct vdso_image *image, bool calculate_addr)
- .fault = vvar_fault,
- };
-
-+#ifdef CONFIG_PAX_RANDMMAP
-+ if (mm->pax_flags & MF_PAX_RANDMMAP)
-+ calculate_addr = false;
-+#endif
-+
- if (calculate_addr) {
- addr = vdso_addr(current->mm->start_stack,
- image->size - image->sym_vvar_start);
-@@ -204,15 +206,15 @@ static int map_vdso(const struct vdso_image *image, bool calculate_addr)
+@@ -154,15 +151,15 @@ static int map_vdso(const struct vdso_image *image, unsigned long addr)
return -EINTR;
addr = get_unmapped_area(NULL, addr,
@@ -18886,48 +21001,56 @@ index f840766..222abb1 100644
/*
* MAYWRITE to allow gdb to COW and set breakpoints
-@@ -236,14 +238,12 @@ static int map_vdso(const struct vdso_image *image, bool calculate_addr)
- VM_PFNMAP,
- &vvar_mapping);
-
-- if (IS_ERR(vma)) {
-+ if (IS_ERR(vma))
- ret = PTR_ERR(vma);
-- goto up_fail;
-- }
+@@ -193,8 +190,8 @@ static int map_vdso(const struct vdso_image *image, unsigned long addr)
up_fail:
- if (ret)
+ if (ret) {
- current->mm->context.vdso = NULL;
+- current->mm->context.vdso_image = NULL;
+ mm->context.vdso = 0;
++ mm->context.vdso_image = NULL;
+ }
up_write(&mm->mmap_sem);
- return ret;
-@@ -262,9 +262,6 @@ static int load_vdso32(void)
+@@ -248,7 +245,14 @@ static unsigned long vdso_addr(unsigned long start, unsigned len)
+
+ static int map_vdso_randomized(const struct vdso_image *image)
+ {
+- unsigned long addr = vdso_addr(current->mm->start_stack, image->size-image->sym_vvar_start);
++ unsigned long addr;
++
++#ifdef CONFIG_PAX_RANDMMAP
++ if (current->mm->pax_flags & MF_PAX_RANDMMAP)
++ addr = 0;
++ else
++#endif
++ addr = vdso_addr(current->mm->start_stack, image->size-image->sym_vvar_start);
+
+ return map_vdso(image, addr);
+ }
+@@ -292,8 +296,6 @@ static int load_vdso32(void)
#ifdef CONFIG_X86_64
int arch_setup_additional_pages(struct linux_binprm *bprm, int uses_interp)
{
- if (!vdso64_enabled)
- return 0;
--
- return map_vdso(&vdso_image_64, true);
- }
-@@ -273,12 +270,8 @@ int compat_arch_setup_additional_pages(struct linux_binprm *bprm,
+ return map_vdso_randomized(&vdso_image_64);
+ }
+@@ -303,11 +305,8 @@ int compat_arch_setup_additional_pages(struct linux_binprm *bprm,
int uses_interp)
{
#ifdef CONFIG_X86_X32_ABI
- if (test_thread_flag(TIF_X32)) {
- if (!vdso64_enabled)
- return 0;
--
+ if (test_thread_flag(TIF_X32))
- return map_vdso(&vdso_image_x32, true);
+ return map_vdso_randomized(&vdso_image_x32);
- }
#endif
#ifdef CONFIG_IA32_EMULATION
return load_vdso32();
-@@ -295,15 +288,6 @@ int arch_setup_additional_pages(struct linux_binprm *bprm, int uses_interp)
+@@ -324,15 +323,6 @@ int arch_setup_additional_pages(struct linux_binprm *bprm, int uses_interp)
#endif
#ifdef CONFIG_X86_64
@@ -18969,7 +21092,7 @@ index 636c4b3..666991b 100644
else if (!strcmp("none", str))
vsyscall_mode = NONE;
else
-@@ -271,8 +267,7 @@ do_ret:
+@@ -271,8 +267,7 @@ bool emulate_vsyscall(struct pt_regs *regs, unsigned long address)
return true;
sigsegv:
@@ -19051,10 +21174,10 @@ index b28200d..e93e14d 100644
while (amd_iommu_v2_event_descs[i].attr.attr.name)
diff --git a/arch/x86/events/core.c b/arch/x86/events/core.c
-index 7b0f1d9..09c8710 100644
+index 7fe88bb..afd1630 100644
--- a/arch/x86/events/core.c
+++ b/arch/x86/events/core.c
-@@ -1549,7 +1549,7 @@ static void __init pmu_check_apic(void)
+@@ -1570,7 +1570,7 @@ static void __init pmu_check_apic(void)
}
@@ -19063,7 +21186,7 @@ index 7b0f1d9..09c8710 100644
.name = "format",
.attrs = NULL,
};
-@@ -1680,7 +1680,7 @@ static struct attribute *events_attr[] = {
+@@ -1701,7 +1701,7 @@ static struct attribute *events_attr[] = {
NULL,
};
@@ -19072,7 +21195,7 @@ index 7b0f1d9..09c8710 100644
.name = "events",
.attrs = events_attr,
};
-@@ -2317,7 +2317,7 @@ static unsigned long get_segment_base(unsigned int segment)
+@@ -2325,7 +2325,7 @@ static unsigned long get_segment_base(unsigned int segment)
if (idx > GDT_ENTRIES)
return 0;
@@ -19081,7 +21204,7 @@ index 7b0f1d9..09c8710 100644
}
return get_desc_base(desc);
-@@ -2417,7 +2417,7 @@ perf_callchain_user(struct perf_callchain_entry_ctx *entry, struct pt_regs *regs
+@@ -2425,7 +2425,7 @@ perf_callchain_user(struct perf_callchain_entry_ctx *entry, struct pt_regs *regs
break;
perf_callchain_store(entry, frame.return_address);
@@ -19091,10 +21214,10 @@ index 7b0f1d9..09c8710 100644
pagefault_enable();
}
diff --git a/arch/x86/events/intel/core.c b/arch/x86/events/intel/core.c
-index 3ef34c6..166e15a 100644
+index cb85222..bebbc92 100644
--- a/arch/x86/events/intel/core.c
+++ b/arch/x86/events/intel/core.c
-@@ -2408,6 +2408,8 @@ __intel_get_event_constraints(struct cpu_hw_events *cpuc, int idx,
+@@ -2411,6 +2411,8 @@ __intel_get_event_constraints(struct cpu_hw_events *cpuc, int idx,
}
static void
@@ -19103,7 +21226,7 @@ index 3ef34c6..166e15a 100644
intel_start_scheduling(struct cpu_hw_events *cpuc)
{
struct intel_excl_cntrs *excl_cntrs = cpuc->excl_cntrs;
-@@ -2417,14 +2419,18 @@ intel_start_scheduling(struct cpu_hw_events *cpuc)
+@@ -2420,14 +2422,18 @@ intel_start_scheduling(struct cpu_hw_events *cpuc)
/*
* nothing needed if in group validation mode
*/
@@ -19124,7 +21247,7 @@ index 3ef34c6..166e15a 100644
xl = &excl_cntrs->states[tid];
-@@ -2464,6 +2470,8 @@ static void intel_commit_scheduling(struct cpu_hw_events *cpuc, int idx, int cnt
+@@ -2467,6 +2473,8 @@ static void intel_commit_scheduling(struct cpu_hw_events *cpuc, int idx, int cnt
}
static void
@@ -19133,7 +21256,7 @@ index 3ef34c6..166e15a 100644
intel_stop_scheduling(struct cpu_hw_events *cpuc)
{
struct intel_excl_cntrs *excl_cntrs = cpuc->excl_cntrs;
-@@ -2473,13 +2481,18 @@ intel_stop_scheduling(struct cpu_hw_events *cpuc)
+@@ -2476,13 +2484,18 @@ intel_stop_scheduling(struct cpu_hw_events *cpuc)
/*
* nothing needed if in group validation mode
*/
@@ -19154,7 +21277,7 @@ index 3ef34c6..166e15a 100644
xl = &excl_cntrs->states[tid];
-@@ -2662,19 +2675,22 @@ static void intel_put_excl_constraints(struct cpu_hw_events *cpuc,
+@@ -2665,19 +2678,22 @@ static void intel_put_excl_constraints(struct cpu_hw_events *cpuc,
* unused now.
*/
if (hwc->idx >= 0) {
@@ -19179,8 +21302,8 @@ index 3ef34c6..166e15a 100644
raw_spin_unlock(&excl_cntrs->lock);
}
}
-@@ -3608,10 +3624,10 @@ __init int intel_pmu_init(void)
- x86_pmu.num_counters_fixed = max((int)edx.split.num_counters_fixed, 3);
+@@ -3617,10 +3633,10 @@ __init int intel_pmu_init(void)
+ }
if (boot_cpu_has(X86_FEATURE_PDCM)) {
- u64 capabilities;
@@ -19236,10 +21359,10 @@ index 8f82b02..b10c4b0 100644
ret = perf_pmu_register(&intel_cqm_pmu, "intel_cqm", -1);
if (ret) {
diff --git a/arch/x86/events/intel/cstate.c b/arch/x86/events/intel/cstate.c
-index 834262a..a1fc484 100644
+index fec8a46..0cc43ca 100644
--- a/arch/x86/events/intel/cstate.c
+++ b/arch/x86/events/intel/cstate.c
-@@ -95,14 +95,14 @@
+@@ -97,14 +97,14 @@
MODULE_LICENSE("GPL");
#define DEFINE_CSTATE_FORMAT_ATTR(_var, _name, _format) \
@@ -19258,10 +21381,10 @@ index 834262a..a1fc484 100644
static ssize_t cstate_get_attr_cpumask(struct device *dev,
diff --git a/arch/x86/events/intel/ds.c b/arch/x86/events/intel/ds.c
-index 8fc714b..0ce11c3 100644
+index be20239..99d75dd 100644
--- a/arch/x86/events/intel/ds.c
+++ b/arch/x86/events/intel/ds.c
-@@ -601,7 +601,7 @@ unlock:
+@@ -601,7 +601,7 @@ int intel_pmu_drain_bts_buffer(void)
static inline void intel_pmu_drain_pebs_buffer(void)
{
@@ -19270,7 +21393,7 @@ index 8fc714b..0ce11c3 100644
x86_pmu.drain_pebs(&regs);
}
-@@ -909,7 +909,7 @@ static int intel_pmu_pebs_fixup_ip(struct pt_regs *regs)
+@@ -947,7 +947,7 @@ static int intel_pmu_pebs_fixup_ip(struct pt_regs *regs)
struct cpu_hw_events *cpuc = this_cpu_ptr(&cpu_hw_events);
unsigned long from = cpuc->lbr_entries[0].from;
unsigned long old_to, to = cpuc->lbr_entries[0].to;
@@ -19279,7 +21402,7 @@ index 8fc714b..0ce11c3 100644
int is_64bit = 0;
void *kaddr;
int size;
-@@ -961,6 +961,7 @@ static int intel_pmu_pebs_fixup_ip(struct pt_regs *regs)
+@@ -999,6 +999,7 @@ static int intel_pmu_pebs_fixup_ip(struct pt_regs *regs)
} else {
kaddr = (void *)to;
}
@@ -19287,7 +21410,7 @@ index 8fc714b..0ce11c3 100644
do {
struct insn insn;
-@@ -1120,7 +1121,7 @@ static void setup_pebs_sample_data(struct perf_event *event,
+@@ -1158,7 +1159,7 @@ static void setup_pebs_sample_data(struct perf_event *event,
}
if (event->attr.precise_ip > 1 && x86_pmu.intel_cap.pebs_format >= 2) {
@@ -19297,10 +21420,10 @@ index 8fc714b..0ce11c3 100644
} else if (event->attr.precise_ip > 1 && intel_pmu_pebs_fixup_ip(regs))
regs->flags |= PERF_EFLAGS_EXACT;
diff --git a/arch/x86/events/intel/lbr.c b/arch/x86/events/intel/lbr.c
-index 707d358..9eb1c4f 100644
+index 81b321a..ef54593 100644
--- a/arch/x86/events/intel/lbr.c
+++ b/arch/x86/events/intel/lbr.c
-@@ -811,7 +811,7 @@ static int branch_type(unsigned long from, unsigned long to, int abort)
+@@ -805,7 +805,7 @@ static int branch_type(unsigned long from, unsigned long to, int abort)
* Ensure we don't blindy read any address by validating it is
* a known text address.
*/
@@ -19309,7 +21432,7 @@ index 707d358..9eb1c4f 100644
addr = (void *)from;
/*
* Assume we can get the maximum possible size
-@@ -833,7 +833,7 @@ static int branch_type(unsigned long from, unsigned long to, int abort)
+@@ -827,7 +827,7 @@ static int branch_type(unsigned long from, unsigned long to, int abort)
#ifdef CONFIG_X86_64
is64 = kernel_ip((unsigned long)addr) || !test_thread_flag(TIF_IA32);
#endif
@@ -19319,10 +21442,10 @@ index 707d358..9eb1c4f 100644
if (!insn.opcode.got)
return X86_BR_ABORT;
diff --git a/arch/x86/events/intel/pt.c b/arch/x86/events/intel/pt.c
-index 861a7d9..2ff89b2 100644
+index c5047b8..7297def 100644
--- a/arch/x86/events/intel/pt.c
+++ b/arch/x86/events/intel/pt.c
-@@ -172,11 +172,9 @@ static const struct attribute_group *pt_attr_groups[] = {
+@@ -174,11 +174,9 @@ static const struct attribute_group *pt_attr_groups[] = {
static int __init pt_pmu_hw_init(void)
{
@@ -19336,7 +21459,7 @@ index 861a7d9..2ff89b2 100644
long i;
rdmsrl(MSR_PLATFORM_INFO, reg);
-@@ -207,8 +205,6 @@ static int __init pt_pmu_hw_init(void)
+@@ -209,8 +207,6 @@ static int __init pt_pmu_hw_init(void)
pt_pmu.vmx = true;
}
@@ -19345,7 +21468,7 @@ index 861a7d9..2ff89b2 100644
for (i = 0; i < PT_CPUID_LEAVES; i++) {
cpuid_count(20, i,
&pt_pmu.caps[CR_EAX + i*PT_CPUID_REGS_NUM],
-@@ -217,39 +213,25 @@ static int __init pt_pmu_hw_init(void)
+@@ -219,39 +215,25 @@ static int __init pt_pmu_hw_init(void)
&pt_pmu.caps[CR_EDX + i*PT_CPUID_REGS_NUM]);
}
@@ -19394,7 +21517,7 @@ index 861a7d9..2ff89b2 100644
#define RTIT_CTL_CYC_PSB (RTIT_CTL_CYCLEACC | \
diff --git a/arch/x86/events/intel/rapl.c b/arch/x86/events/intel/rapl.c
-index 2886593..f191122 100644
+index 0a535ce..b8d9b16 100644
--- a/arch/x86/events/intel/rapl.c
+++ b/arch/x86/events/intel/rapl.c
@@ -117,14 +117,14 @@ static const char *const rapl_domain_names[NR_RAPL_DOMAINS] __initconst = {
@@ -19415,7 +21538,7 @@ index 2886593..f191122 100644
__ATTR(_name, 0444, __rapl_##_var##_show, NULL)
#define RAPL_CNTR_WIDTH 32
-@@ -533,7 +533,7 @@ static struct attribute *rapl_events_knl_attr[] = {
+@@ -535,7 +535,7 @@ static struct attribute *rapl_events_knl_attr[] = {
NULL,
};
@@ -19425,10 +21548,10 @@ index 2886593..f191122 100644
.attrs = NULL, /* patched at runtime */
};
diff --git a/arch/x86/events/intel/uncore.c b/arch/x86/events/intel/uncore.c
-index 463dc7a..4c8d08b 100644
+index 19d646a..e20a9b2 100644
--- a/arch/x86/events/intel/uncore.c
+++ b/arch/x86/events/intel/uncore.c
-@@ -90,8 +90,8 @@ end:
+@@ -90,8 +90,8 @@ struct pci2phy_map *__find_pci2phy_map(int segment)
return map;
}
@@ -19439,7 +21562,7 @@ index 463dc7a..4c8d08b 100644
{
struct uncore_event_desc *event =
container_of(attr, struct uncore_event_desc, attr);
-@@ -819,7 +819,7 @@ static void uncore_types_exit(struct intel_uncore_type **types)
+@@ -798,7 +798,7 @@ static void uncore_types_exit(struct intel_uncore_type **types)
static int __init uncore_type_init(struct intel_uncore_type *type, bool setid)
{
struct intel_uncore_pmu *pmus;
@@ -19449,11 +21572,11 @@ index 463dc7a..4c8d08b 100644
size_t size;
int i, j;
diff --git a/arch/x86/events/intel/uncore.h b/arch/x86/events/intel/uncore.h
-index 78b9c23..2f5c61e 100644
+index ad986c1..9bb7016 100644
--- a/arch/x86/events/intel/uncore.h
+++ b/arch/x86/events/intel/uncore.h
-@@ -122,9 +122,9 @@ struct intel_uncore_box {
- #define UNCORE_BOX_FLAG_INITIATED 0
+@@ -124,9 +124,9 @@ struct intel_uncore_box {
+ #define UNCORE_BOX_FLAG_CTL_OFFS8 1 /* event config registers are 8-byte apart */
struct uncore_event_desc {
- struct kobj_attribute attr;
@@ -19464,7 +21587,7 @@ index 78b9c23..2f5c61e 100644
struct pci2phy_map {
struct list_head list;
-@@ -134,8 +134,8 @@ struct pci2phy_map {
+@@ -136,8 +136,8 @@ struct pci2phy_map {
struct pci2phy_map *__find_pci2phy_map(int segment);
@@ -19475,7 +21598,7 @@ index 78b9c23..2f5c61e 100644
#define INTEL_UNCORE_EVENT_DESC(_name, _config) \
{ \
-@@ -144,14 +144,14 @@ ssize_t uncore_event_show(struct kobject *kobj,
+@@ -146,14 +146,14 @@ ssize_t uncore_event_show(struct kobject *kobj,
}
#define DEFINE_UNCORE_FORMAT_ATTR(_var, _name, _format) \
@@ -19494,10 +21617,10 @@ index 78b9c23..2f5c61e 100644
static inline unsigned uncore_pci_box_ctl(struct intel_uncore_box *box)
diff --git a/arch/x86/events/perf_event.h b/arch/x86/events/perf_event.h
-index 4ab002d..5a30205 100644
+index bcbb1d2..d2511bf 100644
--- a/arch/x86/events/perf_event.h
+++ b/arch/x86/events/perf_event.h
-@@ -801,7 +801,7 @@ static inline void set_linear_ip(struct pt_regs *regs, unsigned long ip)
+@@ -804,7 +804,7 @@ static inline void set_linear_ip(struct pt_regs *regs, unsigned long ip)
regs->cs = kernel_ip(ip) ? __KERNEL_CS : __USER_CS;
if (regs->flags & X86_VM_MASK)
regs->flags ^= (PERF_EFLAGS_VM | X86_VM_MASK);
@@ -19520,9 +21643,18 @@ index cb26f18..4f43f23 100644
set_fs(KERNEL_DS);
has_dumped = 1;
diff --git a/arch/x86/ia32/ia32_signal.c b/arch/x86/ia32/ia32_signal.c
-index 2f29f4e..ac453b4 100644
+index cb13c05..d63fa1e 100644
--- a/arch/x86/ia32/ia32_signal.c
+++ b/arch/x86/ia32/ia32_signal.c
+@@ -112,7 +112,7 @@ static int ia32_restore_sigcontext(struct pt_regs *regs,
+ return err;
+ }
+
+-asmlinkage long sys32_sigreturn(void)
++SYS32_SYSCALL_DEFINE0(sigreturn)
+ {
+ struct pt_regs *regs = current_pt_regs();
+ struct sigframe_ia32 __user *frame = (struct sigframe_ia32 __user *)(regs->sp-8);
@@ -123,7 +123,7 @@ asmlinkage long sys32_sigreturn(void)
if (__get_user(set.sig[0], &frame->sc.oldmask)
|| (_COMPAT_NSIG_WORDS > 1
@@ -19532,6 +21664,15 @@ index 2f29f4e..ac453b4 100644
sizeof(frame->extramask))))
goto badframe;
+@@ -138,7 +138,7 @@ asmlinkage long sys32_sigreturn(void)
+ return 0;
+ }
+
+-asmlinkage long sys32_rt_sigreturn(void)
++SYS32_SYSCALL_DEFINE0(rt_sigreturn)
+ {
+ struct pt_regs *regs = current_pt_regs();
+ struct rt_sigframe_ia32 __user *frame;
@@ -243,7 +243,7 @@ static void __user *get_sigframe(struct ksignal *ksig, struct pt_regs *regs,
sp -= frame_size;
/* Align the stack pointer according to the i386 ABI,
@@ -19595,12 +21736,12 @@ index 2f29f4e..ac453b4 100644
+ put_user_ex(*((const u64 *)&code), (u64 __user *)frame->retcode);
} put_user_catch(err);
- err |= copy_siginfo_to_user32(&frame->info, &ksig->info);
+ err |= __copy_siginfo_to_user32(&frame->info, &ksig->info, false);
diff --git a/arch/x86/ia32/sys_ia32.c b/arch/x86/ia32/sys_ia32.c
-index 719cd70..72af944 100644
+index 719cd70..113980a 100644
--- a/arch/x86/ia32/sys_ia32.c
+++ b/arch/x86/ia32/sys_ia32.c
-@@ -49,18 +49,26 @@
+@@ -49,18 +49,27 @@
#define AA(__x) ((unsigned long)(__x))
@@ -19612,12 +21753,14 @@ index 719cd70..72af944 100644
+ __builtin_memcpy((unsigned char *)&retval + sizeof low, &high, sizeof high);
+ return retval;
+}
++
- asmlinkage long sys32_truncate64(const char __user *filename,
+-asmlinkage long sys32_truncate64(const char __user *filename,
- unsigned long offset_low,
- unsigned long offset_high)
-+ unsigned int offset_low,
-+ unsigned int offset_high)
++SYS32_SYSCALL_DEFINE3(truncate64, const char __user *, filename,
++ unsigned int, offset_low,
++ unsigned int, offset_high)
{
- return sys_truncate(filename, ((loff_t) offset_high << 32) | offset_low);
+ return sys_truncate(filename, compose_loff(offset_high, offset_low));
@@ -19625,15 +21768,15 @@ index 719cd70..72af944 100644
-asmlinkage long sys32_ftruncate64(unsigned int fd, unsigned long offset_low,
- unsigned long offset_high)
-+asmlinkage long sys32_ftruncate64(unsigned int fd, unsigned int offset_low,
-+ unsigned int offset_high)
++SYS32_SYSCALL_DEFINE3(ftruncate64, unsigned int, fd, unsigned int, offset_low,
++ unsigned int, offset_high)
{
- return sys_ftruncate(fd, ((loff_t) offset_high << 32) | offset_low);
+ return sys_ftruncate(fd, ((unsigned long) offset_high << 32) | offset_low);
}
/*
-@@ -69,8 +77,8 @@ asmlinkage long sys32_ftruncate64(unsigned int fd, unsigned long offset_low,
+@@ -69,8 +78,8 @@ asmlinkage long sys32_ftruncate64(unsigned int fd, unsigned long offset_low,
*/
static int cp_stat64(struct stat64 __user *ubuf, struct kstat *stat)
{
@@ -19644,8 +21787,94 @@ index 719cd70..72af944 100644
SET_UID(uid, from_kuid_munged(current_user_ns(), stat->uid));
SET_GID(gid, from_kgid_munged(current_user_ns(), stat->gid));
if (!access_ok(VERIFY_WRITE, ubuf, sizeof(struct stat64)) ||
-@@ -196,29 +204,29 @@ long sys32_fadvise64_64(int fd, __u32 offset_low, __u32 offset_high,
- __u32 len_low, __u32 len_high, int advice)
+@@ -95,8 +104,8 @@ static int cp_stat64(struct stat64 __user *ubuf, struct kstat *stat)
+ return 0;
+ }
+
+-asmlinkage long sys32_stat64(const char __user *filename,
+- struct stat64 __user *statbuf)
++SYS32_SYSCALL_DEFINE2(stat64, const char __user *, filename,
++ struct stat64 __user *, statbuf)
+ {
+ struct kstat stat;
+ int ret = vfs_stat(filename, &stat);
+@@ -106,8 +115,8 @@ asmlinkage long sys32_stat64(const char __user *filename,
+ return ret;
+ }
+
+-asmlinkage long sys32_lstat64(const char __user *filename,
+- struct stat64 __user *statbuf)
++SYS32_SYSCALL_DEFINE2(lstat64, const char __user *, filename,
++ struct stat64 __user *, statbuf)
+ {
+ struct kstat stat;
+ int ret = vfs_lstat(filename, &stat);
+@@ -116,7 +125,7 @@ asmlinkage long sys32_lstat64(const char __user *filename,
+ return ret;
+ }
+
+-asmlinkage long sys32_fstat64(unsigned int fd, struct stat64 __user *statbuf)
++SYS32_SYSCALL_DEFINE2(fstat64, unsigned int, fd, struct stat64 __user *, statbuf)
+ {
+ struct kstat stat;
+ int ret = vfs_fstat(fd, &stat);
+@@ -125,8 +134,8 @@ asmlinkage long sys32_fstat64(unsigned int fd, struct stat64 __user *statbuf)
+ return ret;
+ }
+
+-asmlinkage long sys32_fstatat(unsigned int dfd, const char __user *filename,
+- struct stat64 __user *statbuf, int flag)
++SYS32_SYSCALL_DEFINE4(fstatat, unsigned int, dfd, const char __user *, filename,
++ struct stat64 __user *, statbuf, int, flag)
+ {
+ struct kstat stat;
+ int error;
+@@ -152,7 +161,7 @@ struct mmap_arg_struct32 {
+ unsigned int offset;
+ };
+
+-asmlinkage long sys32_mmap(struct mmap_arg_struct32 __user *arg)
++SYS32_SYSCALL_DEFINE1(mmap, struct mmap_arg_struct32 __user *, arg)
+ {
+ struct mmap_arg_struct32 a;
+
+@@ -166,22 +175,22 @@ asmlinkage long sys32_mmap(struct mmap_arg_struct32 __user *arg)
+ a.offset>>PAGE_SHIFT);
+ }
+
+-asmlinkage long sys32_waitpid(compat_pid_t pid, unsigned int __user *stat_addr,
+- int options)
++SYS32_SYSCALL_DEFINE3(waitpid, compat_pid_t, pid, unsigned int __user *, stat_addr,
++ int, options)
+ {
+ return compat_sys_wait4(pid, stat_addr, options, NULL);
+ }
+
+ /* warning: next two assume little endian */
+-asmlinkage long sys32_pread(unsigned int fd, char __user *ubuf, u32 count,
+- u32 poslo, u32 poshi)
++SYS32_SYSCALL_DEFINE5(pread, unsigned int, fd, char __user *, ubuf, u32, count,
++ u32, poslo, u32, poshi)
+ {
+ return sys_pread64(fd, ubuf, count,
+ ((loff_t)AA(poshi) << 32) | AA(poslo));
+ }
+
+-asmlinkage long sys32_pwrite(unsigned int fd, const char __user *ubuf,
+- u32 count, u32 poslo, u32 poshi)
++SYS32_SYSCALL_DEFINE5(pwrite, unsigned int, fd, const char __user *, ubuf,
++ u32, count, u32, poslo, u32, poshi)
+ {
+ return sys_pwrite64(fd, ubuf, count,
+ ((loff_t)AA(poshi) << 32) | AA(poslo));
+@@ -192,40 +201,40 @@ asmlinkage long sys32_pwrite(unsigned int fd, const char __user *ubuf,
+ * Some system calls that need sign extended arguments. This could be
+ * done by a generic wrapper.
+ */
+-long sys32_fadvise64_64(int fd, __u32 offset_low, __u32 offset_high,
+- __u32 len_low, __u32 len_high, int advice)
++SYS32_SYSCALL_DEFINE6(fadvise64_64, int, fd, __u32, offset_low, __u32, offset_high,
++ __u32, len_low, __u32, len_high, int, advice)
{
return sys_fadvise64_64(fd,
- (((u64)offset_high)<<32) | offset_low,
@@ -19655,15 +21884,19 @@ index 719cd70..72af944 100644
advice);
}
- asmlinkage ssize_t sys32_readahead(int fd, unsigned off_lo, unsigned off_hi,
- size_t count)
+-asmlinkage ssize_t sys32_readahead(int fd, unsigned off_lo, unsigned off_hi,
+- size_t count)
++SYS32_SYSCALL_DEFINE4(readahead, int, fd, unsigned, off_lo, unsigned, off_hi,
++ size_t, count)
{
- return sys_readahead(fd, ((u64)off_hi << 32) | off_lo, count);
+ return sys_readahead(fd, compose_loff(off_hi, off_lo), count);
}
- asmlinkage long sys32_sync_file_range(int fd, unsigned off_low, unsigned off_hi,
- unsigned n_low, unsigned n_hi, int flags)
+-asmlinkage long sys32_sync_file_range(int fd, unsigned off_low, unsigned off_hi,
+- unsigned n_low, unsigned n_hi, int flags)
++SYS32_SYSCALL_DEFINE6(sync_file_range, int, fd, unsigned, off_low, unsigned, off_hi,
++ unsigned, n_low, unsigned, n_hi, int, flags)
{
return sys_sync_file_range(fd,
- ((u64)off_hi << 32) | off_low,
@@ -19672,18 +21905,22 @@ index 719cd70..72af944 100644
+ compose_loff(n_hi, n_low), flags);
}
- asmlinkage long sys32_fadvise64(int fd, unsigned offset_lo, unsigned offset_hi,
+-asmlinkage long sys32_fadvise64(int fd, unsigned offset_lo, unsigned offset_hi,
- size_t len, int advice)
-+ int len, int advice)
++SYS32_SYSCALL_DEFINE5(fadvise64, int, fd, unsigned, offset_lo, unsigned, offset_hi,
++ int, len, int, advice)
{
- return sys_fadvise64_64(fd, ((u64)offset_hi << 32) | offset_lo,
+ return sys_fadvise64_64(fd, compose_loff(offset_hi, offset_lo),
len, advice);
}
-@@ -226,6 +234,6 @@ asmlinkage long sys32_fallocate(int fd, int mode, unsigned offset_lo,
- unsigned offset_hi, unsigned len_lo,
- unsigned len_hi)
+-asmlinkage long sys32_fallocate(int fd, int mode, unsigned offset_lo,
+- unsigned offset_hi, unsigned len_lo,
+- unsigned len_hi)
++SYS32_SYSCALL_DEFINE6(fallocate, int, fd, int, mode, unsigned, offset_lo,
++ unsigned, offset_hi, unsigned, len_lo,
++ unsigned, len_hi)
{
- return sys_fallocate(fd, mode, ((u64)offset_hi << 32) | offset_lo,
- ((u64)len_hi << 32) | len_lo);
@@ -19691,64 +21928,135 @@ index 719cd70..72af944 100644
+ compose_loff(len_hi, len_lo));
}
diff --git a/arch/x86/include/asm/alternative-asm.h b/arch/x86/include/asm/alternative-asm.h
-index e7636ba..b9d3a6d 100644
+index e7636ba..f5c86c4 100644
--- a/arch/x86/include/asm/alternative-asm.h
+++ b/arch/x86/include/asm/alternative-asm.h
-@@ -4,6 +4,7 @@
+@@ -3,7 +3,9 @@
+
#ifdef __ASSEMBLY__
++#include <linux/linkage.h>
#include <asm/asm.h>
+#include <asm/irq_vectors.h>
#ifdef CONFIG_SMP
.macro LOCK_PREFIX
-@@ -18,6 +19,45 @@
+@@ -18,6 +20,114 @@
.endm
#endif
++.macro pax_force_retaddr_bts rip=0
+#ifdef KERNEXEC_PLUGIN
-+ .macro pax_force_retaddr_bts rip=0
+ btsq $63,\rip(%rsp)
-+ .endm
++#endif
++.endm
++
++#if defined(CONFIG_PAX_KERNEXEC_PLUGIN_METHOD_BTS) && defined(CONFIG_PAX_KERNEXEC_PLUGIN_METHOD_OR)
++#error PAX: the KERNEXEC BTS and OR methods must not be enabled at once
++#endif
++
++.macro pax_force_retaddr rip=0
+#ifdef CONFIG_PAX_KERNEXEC_PLUGIN_METHOD_BTS
-+ .macro pax_force_retaddr rip=0, reload=0
+ btsq $63,\rip(%rsp)
-+ .endm
-+ .macro pax_force_fptr ptr
-+ btsq $63,\ptr
-+ .endm
-+ .macro pax_set_fptr_mask
-+ .endm
+#endif
+#ifdef CONFIG_PAX_KERNEXEC_PLUGIN_METHOD_OR
-+ .macro pax_force_retaddr rip=0, reload=0
-+ .if \reload
-+ pax_set_fptr_mask
-+ .endif
+ orq %r12,\rip(%rsp)
-+ .endm
-+ .macro pax_force_fptr ptr
++#endif
++.endm
++
++.macro pax_force_fptr ptr
++#ifdef CONFIG_PAX_KERNEXEC_PLUGIN_METHOD_BTS
++ btsq $63,\ptr
++#endif
++#ifdef CONFIG_PAX_KERNEXEC_PLUGIN_METHOD_OR
+ orq %r12,\ptr
-+ .endm
-+ .macro pax_set_fptr_mask
++#endif
++.endm
++
++.macro pax_set_fptr_mask
++#ifdef CONFIG_PAX_KERNEXEC_PLUGIN_METHOD_OR
+ movabs $0x8000000000000000,%r12
-+ .endm
+#endif
++.endm
++
++#ifdef CONFIG_PAX_RAP
++.macro rap_call target hash="" sym=""
++
++ jmp 2001f
++ .ifb \hash
++ __ASM_RAP_RET_HASH(__rap_hash_ret_\target)
++ .else
++ __ASM_RAP_RET_HASH(__rap_hash_ret_\hash)
++ .endif
++ .skip 8-(2002f-2001f),0xcc
++
++ .ifnb \sym
++ .globl \sym
++\sym :
++ .endif
++
++2001: call \target
++2002:
++.endm
++
++.macro rap_retloc caller
++ __ASM_RAP_RET_HASH(__rap_hash_ret_\caller)
++ .skip 8-(2002f-2001f),0xcc
++2001: call \caller
++2002:
++.endm
++
++.macro rap_ret func
++ ret
++.endm
++#endif
++
++.macro pax_direct_call_global target sym
++#ifdef CONFIG_PAX_RAP
++ rap_call \target, , \sym
+#else
-+ .macro pax_force_retaddr rip=0, reload=0
-+ .endm
-+ .macro pax_force_fptr ptr
-+ .endm
-+ .macro pax_force_retaddr_bts rip=0
-+ .endm
-+ .macro pax_set_fptr_mask
-+ .endm
++ .globl \sym
++\sym :
++ call \target
+#endif
++.endm
++
++.macro pax_indirect_call target extra
++#ifdef CONFIG_PAX_RAP
++ rap_call "*\target" hash=\extra
++#else
++ call *\target
++#endif
++.endm
++
++.macro pax_direct_call target
++#ifdef CONFIG_PAX_RAP
++ rap_call \target
++#else
++ call \target
++#endif
++.endm
++
++.macro pax_retloc caller
++#ifdef CONFIG_PAX_RAP
++ rap_retloc \caller
++#else
++#endif
++.endm
++
++.macro pax_ret func
++ pax_force_retaddr
++#ifdef CONFIG_PAX_RAP
++ rap_ret \func
++#else
++ ret
++#endif
++.endm
+
/*
* Issue one struct alt_instr descriptor entry (need to put it into
* the section .altinstructions, see below). This entry contains
-@@ -50,7 +90,7 @@
+@@ -50,7 +160,7 @@
altinstruction_entry 140b,143f,\feature,142b-140b,144f-143f,142b-141b
.popsection
@@ -19757,7 +22065,7 @@ index e7636ba..b9d3a6d 100644
143:
\newinstr
144:
-@@ -86,7 +126,7 @@
+@@ -86,7 +196,7 @@
altinstruction_entry 140b,144f,\feature2,142b-140b,145f-144f,142b-141b
.popsection
@@ -19766,7 +22074,7 @@ index e7636ba..b9d3a6d 100644
143:
\newinstr1
144:
-@@ -95,6 +135,26 @@
+@@ -95,6 +205,26 @@
.popsection
.endm
@@ -19794,7 +22102,7 @@ index e7636ba..b9d3a6d 100644
#endif /* _ASM_X86_ALTERNATIVE_ASM_H */
diff --git a/arch/x86/include/asm/alternative.h b/arch/x86/include/asm/alternative.h
-index e77a644..6bbec6f 100644
+index 1b02038..d42eaf6 100644
--- a/arch/x86/include/asm/alternative.h
+++ b/arch/x86/include/asm/alternative.h
@@ -7,6 +7,7 @@
@@ -19805,7 +22113,26 @@ index e77a644..6bbec6f 100644
/*
* Alternative inline assembly for SMP.
-@@ -137,7 +138,7 @@ static inline int alternatives_text_reserved(void *start, void *end)
+@@ -84,6 +85,18 @@ static inline int alternatives_text_reserved(void *start, void *end)
+ }
+ #endif /* CONFIG_SMP */
+
++#ifdef CONFIG_PAX_RAP
++#define PAX_DIRECT_CALL(target) "rap_direct_call " target
++#define PAX_DIRECT_CALL_HASH(target, hash) "rap_direct_call " target " " hash
++#define PAX_INDIRECT_CALL(target, extra) "rap_indirect_call " target " " extra
++#define PAX_RET(extra) "rap_ret " extra
++#else
++#define PAX_DIRECT_CALL(target) "call " target
++#define PAX_DIRECT_CALL_HASH(target, hash) "call " target
++#define PAX_INDIRECT_CALL(target, extra) "call " target
++#define PAX_RET(extra) "ret"
++#endif
++
+ #define b_replacement(num) "664"#num
+ #define e_replacement(num) "665"#num
+
+@@ -137,7 +150,7 @@ static inline int alternatives_text_reserved(void *start, void *end)
".pushsection .altinstructions,\"a\"\n" \
ALTINSTR_ENTRY(feature, 1) \
".popsection\n" \
@@ -19814,7 +22141,7 @@ index e77a644..6bbec6f 100644
ALTINSTR_REPLACEMENT(newinstr, feature, 1) \
".popsection"
-@@ -147,7 +148,7 @@ static inline int alternatives_text_reserved(void *start, void *end)
+@@ -147,7 +160,7 @@ static inline int alternatives_text_reserved(void *start, void *end)
ALTINSTR_ENTRY(feature1, 1) \
ALTINSTR_ENTRY(feature2, 2) \
".popsection\n" \
@@ -19823,7 +22150,27 @@ index e77a644..6bbec6f 100644
ALTINSTR_REPLACEMENT(newinstr1, feature1, 1) \
ALTINSTR_REPLACEMENT(newinstr2, feature2, 2) \
".popsection"
-@@ -234,6 +235,35 @@ static inline int alternatives_text_reserved(void *start, void *end)
+@@ -206,7 +219,7 @@ static inline int alternatives_text_reserved(void *start, void *end)
+
+ /* Like alternative_io, but for replacing a direct call with another one. */
+ #define alternative_call(oldfunc, newfunc, feature, output, input...) \
+- asm volatile (ALTERNATIVE("call %P[old]", "call %P[new]", feature) \
++ asm volatile (ALTERNATIVE(PAX_DIRECT_CALL("%P[old]"), PAX_DIRECT_CALL("%P[new]"), feature) \
+ : output : [old] "i" (oldfunc), [new] "i" (newfunc), ## input)
+
+ /*
+@@ -219,8 +232,8 @@ static inline int alternatives_text_reserved(void *start, void *end)
+ output, input...) \
+ { \
+ register void *__sp asm(_ASM_SP); \
+- asm volatile (ALTERNATIVE_2("call %P[old]", "call %P[new1]", feature1,\
+- "call %P[new2]", feature2) \
++ asm volatile (ALTERNATIVE_2(PAX_DIRECT_CALL("%P[old]"), PAX_DIRECT_CALL("%P[new1]"), feature1,\
++ PAX_DIRECT_CALL("%P[new2]"), feature2) \
+ : output, "+r" (__sp) \
+ : [old] "i" (oldfunc), [new1] "i" (newfunc1), \
+ [new2] "i" (newfunc2), ## input); \
+@@ -238,6 +251,35 @@ static inline int alternatives_text_reserved(void *start, void *end)
*/
#define ASM_NO_INPUT_CLOBBER(clbr...) "i" (0) : clbr
@@ -19860,7 +22207,7 @@ index e77a644..6bbec6f 100644
#endif /* _ASM_X86_ALTERNATIVE_H */
diff --git a/arch/x86/include/asm/apic.h b/arch/x86/include/asm/apic.h
-index 1243577..302ac39 100644
+index f5aaf6c..6f23982 100644
--- a/arch/x86/include/asm/apic.h
+++ b/arch/x86/include/asm/apic.h
@@ -49,7 +49,7 @@ static inline void generic_apic_probe(void)
@@ -19894,6 +22241,19 @@ index 93eebc63..6a64395 100644
"setc %%bl\n\t"
"popl %%ebp\n\t"
"popl %%edi\n\t"
+diff --git a/arch/x86/include/asm/asm-prototypes.h b/arch/x86/include/asm/asm-prototypes.h
+index 44b8762..59e9d90 100644
+--- a/arch/x86/include/asm/asm-prototypes.h
++++ b/arch/x86/include/asm/asm-prototypes.h
+@@ -11,6 +11,8 @@
+ #include <asm/special_insns.h>
+ #include <asm/preempt.h>
+
++#include <asm/desc.h>
++
+ #ifndef CONFIG_X86_CMPXCHG64
+ extern void cmpxchg8b_emu(void);
+ #endif
diff --git a/arch/x86/include/asm/asm.h b/arch/x86/include/asm/asm.h
index 7acb51c..46ba0b3 100644
--- a/arch/x86/include/asm/asm.h
@@ -20329,7 +22689,7 @@ index 14635c5..199ea31 100644
* @v: pointer to type int
*
diff --git a/arch/x86/include/asm/atomic64_32.h b/arch/x86/include/asm/atomic64_32.h
-index 71d7705..99a1fe8 100644
+index 71d7705..02bb244 100644
--- a/arch/x86/include/asm/atomic64_32.h
+++ b/arch/x86/include/asm/atomic64_32.h
@@ -8,9 +8,17 @@
@@ -20351,6 +22711,15 @@ index 71d7705..99a1fe8 100644
#define ATOMIC64_INIT(val) { (val) }
#define __ATOMIC64_DECL(sym) void atomic64_##sym(atomic64_t *, ...)
+@@ -23,7 +31,7 @@ typedef struct {
+
+ #ifdef CONFIG_X86_CMPXCHG64
+ #define __alternative_atomic64(f, g, out, in...) \
+- asm volatile("call %P[func]" \
++ asm volatile(PAX_DIRECT_CALL("%P[func]") \
+ : out : [func] "i" (atomic64_##g##_cx8), ## in)
+
+ #define ATOMIC64_DECL(sym) ATOMIC64_DECL_ONE(sym##_cx8)
@@ -36,21 +44,31 @@ typedef struct {
ATOMIC64_DECL_ONE(sym##_386)
@@ -20935,16 +23304,25 @@ index 48f99f1..26ab08a 100644
#ifdef CONFIG_X86_VSMP
#ifdef CONFIG_SMP
diff --git a/arch/x86/include/asm/checksum_32.h b/arch/x86/include/asm/checksum_32.h
-index 7b53743..5f207d2 100644
+index 7b53743..5745aa1 100644
--- a/arch/x86/include/asm/checksum_32.h
+++ b/arch/x86/include/asm/checksum_32.h
+@@ -16,7 +16,7 @@
+ *
+ * it's best to have buff aligned on a 32-bit boundary
+ */
+-asmlinkage __wsum csum_partial(const void *buff, int len, __wsum sum);
++asmlinkage __wsum csum_partial(const void *buff, int len, __wsum sum) __rap_hash;
+
+ /*
+ * the same as csum_partial, but copies from src while it
@@ -30,6 +30,14 @@ asmlinkage __wsum csum_partial_copy_generic(const void *src, void *dst,
int len, __wsum sum,
int *src_err_ptr, int *dst_err_ptr);
+asmlinkage __wsum csum_partial_copy_generic_to_user(const void *src, void *dst,
+ int len, __wsum sum,
-+ int *src_err_ptr, int *dst_err_ptr);
++ int *src_err_ptr, int *dst_err_ptr) __rap_hash;
+
+asmlinkage __wsum csum_partial_copy_generic_from_user(const void *src, void *dst,
+ int len, __wsum sum,
@@ -20972,7 +23350,7 @@ index 7b53743..5f207d2 100644
clac();
return ret;
diff --git a/arch/x86/include/asm/cmpxchg.h b/arch/x86/include/asm/cmpxchg.h
-index 9733361..49bda42 100644
+index 97848cd..9ccfae9 100644
--- a/arch/x86/include/asm/cmpxchg.h
+++ b/arch/x86/include/asm/cmpxchg.h
@@ -15,8 +15,12 @@ extern void __cmpxchg_wrong_size(void)
@@ -21021,18 +23399,40 @@ index 9733361..49bda42 100644
/*
* Note: no "lock" prefix even on SMP: xchg always implies lock anyway.
* Since this is generally used to protect other memory information, we
-@@ -166,6 +196,9 @@ extern void __add_wrong_size(void)
- #define xadd_sync(ptr, inc) __xadd((ptr), (inc), "lock; ")
- #define xadd_local(ptr, inc) __xadd((ptr), (inc), "")
+@@ -162,6 +192,9 @@ extern void __add_wrong_size(void)
+ #define __xadd(ptr, inc, lock) __xchg_op((ptr), (inc), xadd, lock)
+ #define xadd(ptr, inc) __xadd((ptr), (inc), LOCK_PREFIX)
+#define __xadd_check_overflow(ptr, inc, lock) __xchg_op_check_overflow((ptr), (inc), xadd, lock)
+#define xadd_check_overflow(ptr, inc) __xadd_check_overflow((ptr), (inc), LOCK_PREFIX)
+
- #define __add(ptr, inc, lock) \
- ({ \
- __typeof__ (*(ptr)) __ret = (inc); \
+ #define __cmpxchg_double(pfx, p1, p2, o1, o2, n1, n2) \
+ ({ \
+ bool __ret; \
+diff --git a/arch/x86/include/asm/cmpxchg_32.h b/arch/x86/include/asm/cmpxchg_32.h
+index e4959d0..c62dbc2 100644
+--- a/arch/x86/include/asm/cmpxchg_32.h
++++ b/arch/x86/include/asm/cmpxchg_32.h
+@@ -81,7 +81,7 @@ static inline u64 __cmpxchg64_local(volatile u64 *ptr, u64 old, u64 new)
+ __typeof__(*(ptr)) __old = (o); \
+ __typeof__(*(ptr)) __new = (n); \
+ alternative_io(LOCK_PREFIX_HERE \
+- "call cmpxchg8b_emu", \
++ PAX_DIRECT_CALL("cmpxchg8b_emu"), \
+ "lock; cmpxchg8b (%%esi)" , \
+ X86_FEATURE_CX8, \
+ "=A" (__ret), \
+@@ -97,7 +97,7 @@ static inline u64 __cmpxchg64_local(volatile u64 *ptr, u64 old, u64 new)
+ __typeof__(*(ptr)) __ret; \
+ __typeof__(*(ptr)) __old = (o); \
+ __typeof__(*(ptr)) __new = (n); \
+- alternative_io("call cmpxchg8b_emu", \
++ alternative_io(PAX_DIRECT_CALL("cmpxchg8b_emu"), \
+ "cmpxchg8b (%%esi)" , \
+ X86_FEATURE_CX8, \
+ "=A" (__ret), \
diff --git a/arch/x86/include/asm/compat.h b/arch/x86/include/asm/compat.h
-index a188061..280d840 100644
+index 24118c0..55d73de 100644
--- a/arch/x86/include/asm/compat.h
+++ b/arch/x86/include/asm/compat.h
@@ -42,7 +42,11 @@ typedef u32 compat_uint_t;
@@ -21061,10 +23461,10 @@ index 1d2b69f..8ca35d6 100644
"5:\n"
".previous\n"
diff --git a/arch/x86/include/asm/cpufeatures.h b/arch/x86/include/asm/cpufeatures.h
-index 92a8308..4e44144 100644
+index ed10b5b..95be661 100644
--- a/arch/x86/include/asm/cpufeatures.h
+++ b/arch/x86/include/asm/cpufeatures.h
-@@ -205,7 +205,8 @@
+@@ -206,7 +206,8 @@
#define X86_FEATURE_VMMCALL ( 8*32+15) /* Prefer vmmcall to vmcall */
#define X86_FEATURE_XENPV ( 8*32+16) /* "" Xen paravirtual guest */
@@ -21074,7 +23474,7 @@ index 92a8308..4e44144 100644
/* Intel-defined CPU features, CPUID level 0x00000007:0 (ebx), word 9 */
#define X86_FEATURE_FSGSBASE ( 9*32+ 0) /* {RD/WR}{FS/GS}BASE instructions*/
-@@ -213,7 +214,7 @@
+@@ -214,7 +215,7 @@
#define X86_FEATURE_BMI1 ( 9*32+ 3) /* 1st group bit manipulation extensions */
#define X86_FEATURE_HLE ( 9*32+ 4) /* Hardware Lock Elision */
#define X86_FEATURE_AVX2 ( 9*32+ 5) /* AVX2 instructions */
@@ -21084,10 +23484,10 @@ index 92a8308..4e44144 100644
#define X86_FEATURE_ERMS ( 9*32+ 9) /* Enhanced REP MOVSB/STOSB */
#define X86_FEATURE_INVPCID ( 9*32+10) /* Invalidate Processor Context ID */
diff --git a/arch/x86/include/asm/crypto/camellia.h b/arch/x86/include/asm/crypto/camellia.h
-index bb93333..e3d3d57 100644
+index bb93333..ee113c0 100644
--- a/arch/x86/include/asm/crypto/camellia.h
+++ b/arch/x86/include/asm/crypto/camellia.h
-@@ -39,34 +39,35 @@ extern int xts_camellia_setkey(struct crypto_tfm *tfm, const u8 *key,
+@@ -39,34 +39,41 @@ extern int xts_camellia_setkey(struct crypto_tfm *tfm, const u8 *key,
/* regular block cipher functions */
asmlinkage void __camellia_enc_blk(struct camellia_ctx *ctx, u8 *dst,
const u8 *src, bool xor);
@@ -21109,6 +23509,12 @@ index bb93333..e3d3d57 100644
-asmlinkage void camellia_ecb_dec_16way(struct camellia_ctx *ctx, u8 *dst,
+asmlinkage void camellia_ecb_dec_16way(void *ctx, u8 *dst,
const u8 *src);
++void roundsm16_x0_x1_x2_x3_x4_x5_x6_x7_y0_y1_y2_y3_y4_y5_y6_y7_cd(void *ctx, u8 *dst, const u8 *src) __rap_hash;
++void roundsm16_x4_x5_x6_x7_x0_x1_x2_x3_y4_y5_y6_y7_y0_y1_y2_y3_ab(void *ctx, u8 *dst, const u8 *src) __rap_hash;
++void roundsm32_x0_x1_x2_x3_x4_x5_x6_x7_y0_y1_y2_y3_y4_y5_y6_y7_cd(void *ctx, u8 *dst, const u8 *src) __rap_hash;
++void roundsm32_x4_x5_x6_x7_x0_x1_x2_x3_y4_y5_y6_y7_y0_y1_y2_y3_ab(void *ctx, u8 *dst, const u8 *src) __rap_hash;
++void __camellia_enc_blk16(void *ctx, u8 *dst, const u8 *src) __rap_hash;
++void __camellia_dec_blk16(void *ctx, u8 *dst, const u8 *src) __rap_hash;
-asmlinkage void camellia_cbc_dec_16way(struct camellia_ctx *ctx, u8 *dst,
+asmlinkage void camellia_cbc_dec_16way(void *ctx, u8 *dst,
@@ -21135,7 +23541,7 @@ index bb93333..e3d3d57 100644
__camellia_enc_blk(ctx, dst, src, false);
}
-@@ -76,9 +77,10 @@ static inline void camellia_enc_blk_xor(struct camellia_ctx *ctx, u8 *dst,
+@@ -76,9 +83,10 @@ static inline void camellia_enc_blk_xor(struct camellia_ctx *ctx, u8 *dst,
__camellia_enc_blk(ctx, dst, src, true);
}
@@ -21147,7 +23553,7 @@ index bb93333..e3d3d57 100644
__camellia_enc_blk_2way(ctx, dst, src, false);
}
-@@ -89,7 +91,7 @@ static inline void camellia_enc_blk_xor_2way(struct camellia_ctx *ctx, u8 *dst,
+@@ -89,7 +97,7 @@ static inline void camellia_enc_blk_xor_2way(struct camellia_ctx *ctx, u8 *dst,
}
/* glue helpers */
@@ -21183,10 +23589,10 @@ index 03bb106..9e7a45c 100644
struct common_glue_func_entry {
unsigned int num_blocks; /* number of blocks that @fn will process */
diff --git a/arch/x86/include/asm/crypto/serpent-avx.h b/arch/x86/include/asm/crypto/serpent-avx.h
-index 33c2b8a..586871f 100644
+index 33c2b8a..21976b7 100644
--- a/arch/x86/include/asm/crypto/serpent-avx.h
+++ b/arch/x86/include/asm/crypto/serpent-avx.h
-@@ -16,20 +16,20 @@ struct serpent_xts_ctx {
+@@ -16,20 +16,22 @@ struct serpent_xts_ctx {
struct serpent_ctx crypt_ctx;
};
@@ -21196,6 +23602,8 @@ index 33c2b8a..586871f 100644
-asmlinkage void serpent_ecb_dec_8way_avx(struct serpent_ctx *ctx, u8 *dst,
+asmlinkage void serpent_ecb_dec_8way_avx(void *ctx, u8 *dst,
const u8 *src);
++void __serpent_enc_blk8_avx(void *ctx, u8 *dst, const u8 *src) __rap_hash;
++void __serpent_dec_blk8_avx(void *ctx, u8 *dst, const u8 *src) __rap_hash;
-asmlinkage void serpent_cbc_dec_8way_avx(struct serpent_ctx *ctx, u8 *dst,
+asmlinkage void serpent_cbc_dec_8way_avx(void *ctx, u8 *dst,
@@ -21285,8 +23693,24 @@ index 878c51c..86fc65f 100644
extern void twofish_enc_blk_ctr(void *ctx, u128 *dst, const u128 *src,
le128 *iv);
extern void twofish_enc_blk_ctr_3way(void *ctx, u128 *dst, const u128 *src,
+diff --git a/arch/x86/include/asm/current.h b/arch/x86/include/asm/current.h
+index 9476c04..8d1cda4 100644
+--- a/arch/x86/include/asm/current.h
++++ b/arch/x86/include/asm/current.h
+@@ -16,6 +16,11 @@ static __always_inline struct task_struct *get_current(void)
+
+ #define current get_current()
+
++#else
++
++#define GET_CURRENT(reg) \
++ _ASM_MOV PER_CPU_VAR(current_task),reg ;
++
+ #endif /* __ASSEMBLY__ */
+
+ #endif /* _ASM_X86_CURRENT_H */
diff --git a/arch/x86/include/asm/desc.h b/arch/x86/include/asm/desc.h
-index 4e10d73..7319a47 100644
+index 12080d8..7319a47 100644
--- a/arch/x86/include/asm/desc.h
+++ b/arch/x86/include/asm/desc.h
@@ -4,6 +4,7 @@
@@ -21310,7 +23734,8 @@ index 4e10d73..7319a47 100644
extern struct desc_ptr idt_descr;
-extern gate_desc idt_table[];
--extern struct desc_ptr debug_idt_descr;
++extern gate_desc idt_table[IDT_ENTRIES];
+ extern const struct desc_ptr debug_idt_descr;
-extern gate_desc debug_idt_table[];
-
-struct gdt_page {
@@ -21318,8 +23743,6 @@ index 4e10d73..7319a47 100644
-} __attribute__((aligned(PAGE_SIZE)));
-
-DECLARE_PER_CPU_PAGE_ALIGNED(struct gdt_page, gdt_page);
-+extern gate_desc idt_table[IDT_ENTRIES];
-+extern const struct desc_ptr debug_idt_descr;
+extern gate_desc debug_idt_table[IDT_ENTRIES];
+extern struct desc_struct cpu_gdt_table[NR_CPUS][PAGE_SIZE / sizeof(struct desc_struct)];
@@ -21569,10 +23992,10 @@ index fe884e1..46149ae 100644
{
spin_unlock_irqrestore(&dma_spin_lock, flags);
diff --git a/arch/x86/include/asm/efi.h b/arch/x86/include/asm/efi.h
-index d0bb76d..bb192fc 100644
+index 389d700..fa51266 100644
--- a/arch/x86/include/asm/efi.h
+++ b/arch/x86/include/asm/efi.h
-@@ -151,6 +151,11 @@ static inline bool efi_is_native(void)
+@@ -150,6 +150,11 @@ static inline bool efi_is_native(void)
static inline bool efi_runtime_supported(void)
{
@@ -21948,7 +24371,7 @@ index 48df486..e32babd 100644
#endif /* _ASM_X86_FPU_H */
diff --git a/arch/x86/include/asm/fpu/xstate.h b/arch/x86/include/asm/fpu/xstate.h
-index 19f30a8..d0561c13 100644
+index 430bacf..d0fbcf0 100644
--- a/arch/x86/include/asm/fpu/xstate.h
+++ b/arch/x86/include/asm/fpu/xstate.h
@@ -43,6 +43,7 @@
@@ -22046,13 +24469,13 @@ index b90e105..30a5950 100644
extern void elcr_set_level_irq(unsigned int irq);
diff --git a/arch/x86/include/asm/hypervisor.h b/arch/x86/include/asm/hypervisor.h
-index 055ea99..7dabb68 100644
+index 67942b6..176a8b4 100644
--- a/arch/x86/include/asm/hypervisor.h
+++ b/arch/x86/include/asm/hypervisor.h
-@@ -43,7 +43,7 @@ struct hypervisor_x86 {
+@@ -46,7 +46,7 @@ struct hypervisor_x86 {
- /* X2APIC detection (run once per boot) */
- bool (*x2apic_available)(void);
+ /* pin current vcpu to specified physical cpu (run rarely) */
+ void (*pin_vcpu)(int);
-};
+} __do_const;
@@ -22072,7 +24495,7 @@ index 39bcefc..272d904 100644
extern struct legacy_pic *legacy_pic;
extern struct legacy_pic null_legacy_pic;
diff --git a/arch/x86/include/asm/io.h b/arch/x86/include/asm/io.h
-index de25aad..dc04476 100644
+index d34bd37..08f3231 100644
--- a/arch/x86/include/asm/io.h
+++ b/arch/x86/include/asm/io.h
@@ -42,6 +42,7 @@
@@ -22137,23 +24560,34 @@ index de25aad..dc04476 100644
* Convert a virtual cached pointer to an uncached pointer
*/
diff --git a/arch/x86/include/asm/irq_vectors.h b/arch/x86/include/asm/irq_vectors.h
-index 6ca9fd6..4c0aa55 100644
+index 6ca9fd6..4dbd5e2 100644
--- a/arch/x86/include/asm/irq_vectors.h
+++ b/arch/x86/include/asm/irq_vectors.h
-@@ -48,6 +48,8 @@
+@@ -48,6 +48,10 @@
#define IA32_SYSCALL_VECTOR 0x80
+#define X86_REFCOUNT_VECTOR 0x81 /* Refcount Overflow or Underflow Exception */
++//#define X86_RAP_CALL_VECTOR 0x82 /* RAP Indirect Call Violation Exception */
++//#define X86_RAP_RET_VECTOR 0x83 /* RAP Function Return Violation Exception */
+
/*
* Vectors 0x30-0x3f are used for ISA interrupts.
* round up to the next 16-vector boundary
diff --git a/arch/x86/include/asm/irqflags.h b/arch/x86/include/asm/irqflags.h
-index b77f5ed..cbf5ec6 100644
+index ac7692d..90e119c 100644
--- a/arch/x86/include/asm/irqflags.h
+++ b/arch/x86/include/asm/irqflags.h
-@@ -23,11 +23,17 @@ static inline unsigned long native_save_fl(void)
+@@ -12,7 +12,7 @@
+ * Interrupt control:
+ */
+
+-static inline unsigned long native_save_fl(void)
++static inline asmlinkage unsigned long native_save_fl(void)
+ {
+ unsigned long flags;
+
+@@ -27,23 +27,29 @@ static inline unsigned long native_save_fl(void)
: /* no input */
: "memory");
@@ -22171,7 +24605,21 @@ index b77f5ed..cbf5ec6 100644
asm volatile("push %0 ; popf"
: /* no output */
:"g" (flags)
-@@ -137,6 +143,11 @@ static inline notrace unsigned long arch_local_irq_save(void)
+ :"memory", "cc");
+ }
+
+-static inline void native_irq_disable(void)
++static inline asmlinkage void native_irq_disable(void)
+ {
+ asm volatile("cli": : :"memory");
+ }
+
+-static inline void native_irq_enable(void)
++static inline asmlinkage void native_irq_enable(void)
+ {
+ asm volatile("sti": : :"memory");
+ }
+@@ -141,6 +147,11 @@ static inline notrace unsigned long arch_local_irq_save(void)
swapgs; \
sysretl
@@ -22183,6 +24631,21 @@ index b77f5ed..cbf5ec6 100644
#else
#define INTERRUPT_RETURN iret
#define ENABLE_INTERRUPTS_SYSEXIT sti; sysexit
+@@ -197,6 +208,14 @@ static inline int arch_irqs_disabled(void)
+ # define LOCKDEP_SYS_EXIT
+ # define LOCKDEP_SYS_EXIT_IRQ
+ #endif
++#else
++#ifdef CONFIG_TRACE_IRQFLAGS
++void trace_hardirqs_on_thunk(void);
++void trace_hardirqs_off_thunk(void);
++#endif
++#ifdef CONFIG_DEBUG_LOCK_ALLOC
++void lockdep_sys_exit_thunk(void);
++#endif
+ #endif /* __ASSEMBLY__ */
+
+ #endif
diff --git a/arch/x86/include/asm/kprobes.h b/arch/x86/include/asm/kprobes.h
index d1d1e50..5bacb6d 100644
--- a/arch/x86/include/asm/kprobes.h
@@ -22373,10 +24836,10 @@ index 7511978..cf52573 100644
#define local_xchg(l, n) (xchg(&((l)->a.counter), (n)))
diff --git a/arch/x86/include/asm/mce.h b/arch/x86/include/asm/mce.h
-index 8bf766e..d800b61 100644
+index 9bd7ff5..d9c8715 100644
--- a/arch/x86/include/asm/mce.h
+++ b/arch/x86/include/asm/mce.h
-@@ -184,7 +184,7 @@ struct mca_msr_regs {
+@@ -187,7 +187,7 @@ struct mca_msr_regs {
u32 (*status) (int bank);
u32 (*addr) (int bank);
u32 (*misc) (int bank);
@@ -22407,7 +24870,7 @@ index 0000000..2bfd3ba
+
+#endif /* X86_MMAN_H */
diff --git a/arch/x86/include/asm/mmu.h b/arch/x86/include/asm/mmu.h
-index 1ea0bae..25de747 100644
+index 72198c6..2049a36 100644
--- a/arch/x86/include/asm/mmu.h
+++ b/arch/x86/include/asm/mmu.h
@@ -19,7 +19,19 @@ typedef struct {
@@ -22432,10 +24895,10 @@ index 1ea0bae..25de747 100644
atomic_t perf_rdpmc_allowed; /* nonzero if rdpmc is allowed */
diff --git a/arch/x86/include/asm/mmu_context.h b/arch/x86/include/asm/mmu_context.h
-index d8abfcf..721da30 100644
+index 8e0a9fe..2473467 100644
--- a/arch/x86/include/asm/mmu_context.h
+++ b/arch/x86/include/asm/mmu_context.h
-@@ -46,7 +46,7 @@ struct ldt_struct {
+@@ -47,7 +47,7 @@ struct ldt_struct {
* allocations, but it's not worth trying to optimize.
*/
struct desc_struct *entries;
@@ -22444,7 +24907,7 @@ index d8abfcf..721da30 100644
};
/*
-@@ -58,6 +58,23 @@ void destroy_context_ldt(struct mm_struct *mm);
+@@ -59,6 +59,23 @@ void destroy_context_ldt(struct mm_struct *mm);
static inline int init_new_context_ldt(struct task_struct *tsk,
struct mm_struct *mm)
{
@@ -22468,7 +24931,7 @@ index d8abfcf..721da30 100644
return 0;
}
static inline void destroy_context_ldt(struct mm_struct *mm) {}
-@@ -98,6 +115,20 @@ static inline void load_mm_ldt(struct mm_struct *mm)
+@@ -99,6 +116,20 @@ static inline void load_mm_ldt(struct mm_struct *mm)
static inline void enter_lazy_tlb(struct mm_struct *mm, struct task_struct *tsk)
{
@@ -22530,6 +24993,50 @@ index e3b7819..ba128ec 100644
+#define MODULE_ARCH_VERMAGIC MODULE_PROC_FAMILY MODULE_PAX_KERNEXEC MODULE_PAX_UDEREF MODULE_PAX_RAP
+
#endif /* _ASM_X86_MODULE_H */
+diff --git a/arch/x86/include/asm/mutex_32.h b/arch/x86/include/asm/mutex_32.h
+index e9355a8..f031759 100644
+--- a/arch/x86/include/asm/mutex_32.h
++++ b/arch/x86/include/asm/mutex_32.h
+@@ -30,7 +30,7 @@ do { \
+ \
+ asm volatile(LOCK_PREFIX " decl (%%eax)\n" \
+ " jns 1f \n" \
+- " call " #fail_fn "\n" \
++ PAX_DIRECT_CALL(#fail_fn)"\n" \
+ "1:\n" \
+ : "=a" (dummy) \
+ : "a" (count) \
+@@ -76,7 +76,7 @@ do { \
+ \
+ asm volatile(LOCK_PREFIX " incl (%%eax)\n" \
+ " jg 1f\n" \
+- " call " #fail_fn "\n" \
++ PAX_DIRECT_CALL(#fail_fn)"\n" \
+ "1:\n" \
+ : "=a" (dummy) \
+ : "a" (count) \
+diff --git a/arch/x86/include/asm/mutex_64.h b/arch/x86/include/asm/mutex_64.h
+index d985075..d2fc470 100644
+--- a/arch/x86/include/asm/mutex_64.h
++++ b/arch/x86/include/asm/mutex_64.h
+@@ -39,7 +39,7 @@ do { \
+ \
+ asm volatile(LOCK_PREFIX " decl (%%rdi)\n" \
+ " jns 1f \n" \
+- " call " #fail_fn "\n" \
++ PAX_DIRECT_CALL(#fail_fn)"\n" \
+ "1:" \
+ : "=D" (dummy) \
+ : "D" (v) \
+@@ -94,7 +94,7 @@ do { \
+ \
+ asm volatile(LOCK_PREFIX " incl (%%rdi)\n" \
+ " jg 1f\n" \
+- " call " #fail_fn "\n" \
++ PAX_DIRECT_CALL(#fail_fn)"\n" \
+ "1:" \
+ : "=D" (dummy) \
+ : "D" (v) \
diff --git a/arch/x86/include/asm/nmi.h b/arch/x86/include/asm/nmi.h
index 5f2fc44..106caa6 100644
--- a/arch/x86/include/asm/nmi.h
@@ -22672,10 +25179,74 @@ index b3bebf9..2c3570f 100644
#define __phys_reloc_hide(x) (x)
diff --git a/arch/x86/include/asm/paravirt.h b/arch/x86/include/asm/paravirt.h
-index 2970d22..fce32bd 100644
+index ce93281..17b0fda 100644
--- a/arch/x86/include/asm/paravirt.h
+++ b/arch/x86/include/asm/paravirt.h
-@@ -509,7 +509,7 @@ static inline pmd_t __pmd(pmdval_t val)
+@@ -374,11 +374,11 @@ static inline pte_t __pte(pteval_t val)
+
+ if (sizeof(pteval_t) > sizeof(long))
+ ret = PVOP_CALLEE2(pteval_t,
+- pv_mmu_ops.make_pte,
++ pv_mmu_ops, make_pte,
+ val, (u64)val >> 32);
+ else
+ ret = PVOP_CALLEE1(pteval_t,
+- pv_mmu_ops.make_pte,
++ pv_mmu_ops, make_pte,
+ val);
+
+ return (pte_t) { .pte = ret };
+@@ -389,10 +389,10 @@ static inline pteval_t pte_val(pte_t pte)
+ pteval_t ret;
+
+ if (sizeof(pteval_t) > sizeof(long))
+- ret = PVOP_CALLEE2(pteval_t, pv_mmu_ops.pte_val,
++ ret = PVOP_CALLEE2(pteval_t, pv_mmu_ops, pte_val,
+ pte.pte, (u64)pte.pte >> 32);
+ else
+- ret = PVOP_CALLEE1(pteval_t, pv_mmu_ops.pte_val,
++ ret = PVOP_CALLEE1(pteval_t, pv_mmu_ops, pte_val,
+ pte.pte);
+
+ return ret;
+@@ -403,10 +403,10 @@ static inline pgd_t __pgd(pgdval_t val)
+ pgdval_t ret;
+
+ if (sizeof(pgdval_t) > sizeof(long))
+- ret = PVOP_CALLEE2(pgdval_t, pv_mmu_ops.make_pgd,
++ ret = PVOP_CALLEE2(pgdval_t, pv_mmu_ops, make_pgd,
+ val, (u64)val >> 32);
+ else
+- ret = PVOP_CALLEE1(pgdval_t, pv_mmu_ops.make_pgd,
++ ret = PVOP_CALLEE1(pgdval_t, pv_mmu_ops, make_pgd,
+ val);
+
+ return (pgd_t) { ret };
+@@ -417,10 +417,10 @@ static inline pgdval_t pgd_val(pgd_t pgd)
+ pgdval_t ret;
+
+ if (sizeof(pgdval_t) > sizeof(long))
+- ret = PVOP_CALLEE2(pgdval_t, pv_mmu_ops.pgd_val,
++ ret = PVOP_CALLEE2(pgdval_t, pv_mmu_ops, pgd_val,
+ pgd.pgd, (u64)pgd.pgd >> 32);
+ else
+- ret = PVOP_CALLEE1(pgdval_t, pv_mmu_ops.pgd_val,
++ ret = PVOP_CALLEE1(pgdval_t, pv_mmu_ops, pgd_val,
+ pgd.pgd);
+
+ return ret;
+@@ -496,24 +496,24 @@ static inline pmd_t __pmd(pmdval_t val)
+ pmdval_t ret;
+
+ if (sizeof(pmdval_t) > sizeof(long))
+- ret = PVOP_CALLEE2(pmdval_t, pv_mmu_ops.make_pmd,
++ ret = PVOP_CALLEE2(pmdval_t, pv_mmu_ops, make_pmd,
+ val, (u64)val >> 32);
+ else
+- ret = PVOP_CALLEE1(pmdval_t, pv_mmu_ops.make_pmd,
++ ret = PVOP_CALLEE1(pmdval_t, pv_mmu_ops, make_pmd,
+ val);
+
return (pmd_t) { ret };
}
@@ -22684,7 +25255,43 @@ index 2970d22..fce32bd 100644
{
pmdval_t ret;
-@@ -575,6 +575,18 @@ static inline void set_pgd(pgd_t *pgdp, pgd_t pgd)
+ if (sizeof(pmdval_t) > sizeof(long))
+- ret = PVOP_CALLEE2(pmdval_t, pv_mmu_ops.pmd_val,
++ ret = PVOP_CALLEE2(pmdval_t, pv_mmu_ops, pmd_val,
+ pmd.pmd, (u64)pmd.pmd >> 32);
+ else
+- ret = PVOP_CALLEE1(pmdval_t, pv_mmu_ops.pmd_val,
++ ret = PVOP_CALLEE1(pmdval_t, pv_mmu_ops, pmd_val,
+ pmd.pmd);
+
+ return ret;
+@@ -536,10 +536,10 @@ static inline pud_t __pud(pudval_t val)
+ pudval_t ret;
+
+ if (sizeof(pudval_t) > sizeof(long))
+- ret = PVOP_CALLEE2(pudval_t, pv_mmu_ops.make_pud,
++ ret = PVOP_CALLEE2(pudval_t, pv_mmu_ops, make_pud,
+ val, (u64)val >> 32);
+ else
+- ret = PVOP_CALLEE1(pudval_t, pv_mmu_ops.make_pud,
++ ret = PVOP_CALLEE1(pudval_t, pv_mmu_ops, make_pud,
+ val);
+
+ return (pud_t) { ret };
+@@ -550,10 +550,10 @@ static inline pudval_t pud_val(pud_t pud)
+ pudval_t ret;
+
+ if (sizeof(pudval_t) > sizeof(long))
+- ret = PVOP_CALLEE2(pudval_t, pv_mmu_ops.pud_val,
++ ret = PVOP_CALLEE2(pudval_t, pv_mmu_ops, pud_val,
+ pud.pud, (u64)pud.pud >> 32);
+ else
+- ret = PVOP_CALLEE1(pudval_t, pv_mmu_ops.pud_val,
++ ret = PVOP_CALLEE1(pudval_t, pv_mmu_ops, pud_val,
+ pud.pud);
+
+ return ret;
+@@ -571,6 +571,18 @@ static inline void set_pgd(pgd_t *pgdp, pgd_t pgd)
val);
}
@@ -22703,7 +25310,7 @@ index 2970d22..fce32bd 100644
static inline void pgd_clear(pgd_t *pgdp)
{
set_pgd(pgdp, __pgd(0));
-@@ -659,6 +671,21 @@ static inline void __set_fixmap(unsigned /* enum fixed_addresses */ idx,
+@@ -655,6 +667,21 @@ static inline void __set_fixmap(unsigned /* enum fixed_addresses */ idx,
pv_mmu_ops.set_fixmap(idx, phys, flags);
}
@@ -22724,43 +25331,230 @@ index 2970d22..fce32bd 100644
+
#if defined(CONFIG_SMP) && defined(CONFIG_PARAVIRT_SPINLOCKS)
- #ifdef CONFIG_QUEUED_SPINLOCKS
-@@ -886,7 +913,7 @@ extern void default_banner(void);
+ static __always_inline void pv_queued_spin_lock_slowpath(struct qspinlock *lock,
+@@ -665,7 +692,7 @@ static __always_inline void pv_queued_spin_lock_slowpath(struct qspinlock *lock,
+
+ static __always_inline void pv_queued_spin_unlock(struct qspinlock *lock)
+ {
+- PVOP_VCALLEE1(pv_lock_ops.queued_spin_unlock, lock);
++ PVOP_VCALLEE1(pv_lock_ops, queued_spin_unlock, lock);
+ }
+
+ static __always_inline void pv_wait(u8 *ptr, u8 val)
+@@ -735,7 +762,7 @@ static __always_inline void pv_kick(int cpu)
+ */
+ #define PV_THUNK_NAME(func) "__raw_callee_save_" #func
+ #define PV_CALLEE_SAVE_REGS_THUNK(func) \
+- extern typeof(func) __raw_callee_save_##func; \
++ extern typeof(func) __raw_callee_save_##func __rap_hash; \
+ \
+ asm(".pushsection .text;" \
+ ".globl " PV_THUNK_NAME(func) ";" \
+@@ -743,38 +770,42 @@ static __always_inline void pv_kick(int cpu)
+ PV_THUNK_NAME(func) ":" \
+ FRAME_BEGIN \
+ PV_SAVE_ALL_CALLER_REGS \
+- "call " #func ";" \
++ PAX_DIRECT_CALL_HASH(#func, PV_THUNK_NAME(func)) ";" \
+ PV_RESTORE_ALL_CALLER_REGS \
+ FRAME_END \
+- "ret;" \
++ PAX_RET(PV_THUNK_NAME(func))";" \
+ ".popsection")
+
+ /* Get a reference to a callee-save function */
+-#define PV_CALLEE_SAVE(func) \
+- ((struct paravirt_callee_save) { __raw_callee_save_##func })
++#define PV_CALLEE_SAVE(field, func) \
++ ((union paravirt_callee_save) { .field = __raw_callee_save_##func })
+
++#ifdef CONFIG_PAX_RAP
++#define __PV_IS_CALLEE_SAVE(field, func) PV_CALLEE_SAVE(field, func)
++#else
+ /* Promise that "func" already uses the right calling convention */
+-#define __PV_IS_CALLEE_SAVE(func) \
+- ((struct paravirt_callee_save) { func })
++#define __PV_IS_CALLEE_SAVE(field, func) \
++ ((union paravirt_callee_save) { .field = func })
++#endif
+
+ static inline notrace unsigned long arch_local_save_flags(void)
+ {
+- return PVOP_CALLEE0(unsigned long, pv_irq_ops.save_fl);
++ return PVOP_CALLEE0(unsigned long, pv_irq_ops, save_fl);
+ }
+
+ static inline notrace void arch_local_irq_restore(unsigned long f)
+ {
+- PVOP_VCALLEE1(pv_irq_ops.restore_fl, f);
++ PVOP_VCALLEE1(pv_irq_ops, restore_fl, f);
+ }
+
+ static inline notrace void arch_local_irq_disable(void)
+ {
+- PVOP_VCALLEE0(pv_irq_ops.irq_disable);
++ PVOP_VCALLEE0(pv_irq_ops, irq_disable);
+ }
+
+ static inline notrace void arch_local_irq_enable(void)
+ {
+- PVOP_VCALLEE0(pv_irq_ops.irq_enable);
++ PVOP_VCALLEE0(pv_irq_ops, irq_enable);
+ }
+
+ static inline notrace unsigned long arch_local_irq_save(void)
+@@ -806,9 +837,9 @@ extern void default_banner(void);
+
+ #else /* __ASSEMBLY__ */
+
+-#define _PVSITE(ptype, clobbers, ops, word, algn) \
++#define _PVSITE(ptype, clobbers, word, algn, ...)\
+ 771:; \
+- ops; \
++ __VA_ARGS__; \
+ 772:; \
+ .pushsection .parainstructions,"a"; \
+ .align algn; \
+@@ -848,8 +879,10 @@ extern void default_banner(void);
+ COND_POP(set, CLBR_RAX, rax)
+
+ #define PARA_PATCH(struct, off) ((PARAVIRT_PATCH_##struct + (off)) / 8)
+-#define PARA_SITE(ptype, clobbers, ops) _PVSITE(ptype, clobbers, ops, .quad, 8)
+-#define PARA_INDIRECT(addr) *addr(%rip)
++#define PARA_SITE(ptype, clobbers, ...) _PVSITE(ptype, clobbers, .quad, 8, __VA_ARGS__)
++#define PARA_INDIRECT(addr) addr(%rip)
++#define PV_INDIRECT_CALL(ops, OPS, addr) pax_indirect_call PARA_INDIRECT(pv_##ops##_ops+PV_##OPS##_##addr), pv_##ops##_ops.##addr
++#define PV_INDIRECT_CALL_CALLEE_SAVE(ops, OPS, addr) pax_indirect_call PARA_INDIRECT(pv_##ops##_ops+PV_##OPS##_##addr), pv_##ops##_ops.##addr##.##addr
+ #else
+ #define PV_SAVE_REGS(set) \
+ COND_PUSH(set, CLBR_EAX, eax); \
+@@ -863,30 +896,32 @@ extern void default_banner(void);
+ COND_POP(set, CLBR_EAX, eax)
#define PARA_PATCH(struct, off) ((PARAVIRT_PATCH_##struct + (off)) / 4)
- #define PARA_SITE(ptype, clobbers, ops) _PVSITE(ptype, clobbers, ops, .long, 4)
+-#define PARA_SITE(ptype, clobbers, ops) _PVSITE(ptype, clobbers, ops, .long, 4)
-#define PARA_INDIRECT(addr) *%cs:addr
-+#define PARA_INDIRECT(addr) *%ss:addr
++#define PARA_SITE(ptype, clobbers, ...) _PVSITE(ptype, clobbers, .long, 4, __VA_ARGS__)
++#define PARA_INDIRECT(addr) %ss:addr
++#define PV_INDIRECT_CALL(ops, OPS, addr) pax_indirect_call PARA_INDIRECT(pv_##ops##_ops+PV_##OPS##_##addr), pv_##ops##_ops.##addr
++#define PV_INDIRECT_CALL_CALLEE_SAVE(ops, OPS, addr) pax_indirect_call PARA_INDIRECT(pv_##ops##_ops+PV_##OPS##_##addr), pv_##ops##_ops.##addr##.##addr
#endif
#define INTERRUPT_RETURN \
-@@ -944,6 +971,21 @@ extern void default_banner(void);
+ PARA_SITE(PARA_PATCH(pv_cpu_ops, PV_CPU_iret), CLBR_NONE, \
+- jmp PARA_INDIRECT(pv_cpu_ops+PV_CPU_iret))
++ jmp *PARA_INDIRECT(pv_cpu_ops+PV_CPU_iret))
+
+ #define DISABLE_INTERRUPTS(clobbers) \
+ PARA_SITE(PARA_PATCH(pv_irq_ops, PV_IRQ_irq_disable), clobbers, \
+ PV_SAVE_REGS(clobbers | CLBR_CALLEE_SAVE); \
+- call PARA_INDIRECT(pv_irq_ops+PV_IRQ_irq_disable); \
++ PV_INDIRECT_CALL_CALLEE_SAVE(irq,IRQ,irq_disable); \
+ PV_RESTORE_REGS(clobbers | CLBR_CALLEE_SAVE);)
+
+ #define ENABLE_INTERRUPTS(clobbers) \
+ PARA_SITE(PARA_PATCH(pv_irq_ops, PV_IRQ_irq_enable), clobbers, \
+ PV_SAVE_REGS(clobbers | CLBR_CALLEE_SAVE); \
+- call PARA_INDIRECT(pv_irq_ops+PV_IRQ_irq_enable); \
++ PV_INDIRECT_CALL_CALLEE_SAVE(irq,IRQ,irq_enable); \
+ PV_RESTORE_REGS(clobbers | CLBR_CALLEE_SAVE);)
+
+ #ifdef CONFIG_X86_32
+ #define GET_CR0_INTO_EAX \
+ push %ecx; push %edx; \
+- call PARA_INDIRECT(pv_cpu_ops+PV_CPU_read_cr0); \
++ PV_INDIRECT_CALL(cpu,CPU,read_cr0); \
+ pop %edx; pop %ecx
+ #else /* !CONFIG_X86_32 */
+
+@@ -907,21 +942,36 @@ extern void default_banner(void);
+ */
+ #define SWAPGS \
+ PARA_SITE(PARA_PATCH(pv_cpu_ops, PV_CPU_swapgs), CLBR_NONE, \
+- call PARA_INDIRECT(pv_cpu_ops+PV_CPU_swapgs) \
++ PV_INDIRECT_CALL(cpu,CPU,swapgs) \
+ )
+
+ #define GET_CR2_INTO_RAX \
+- call PARA_INDIRECT(pv_mmu_ops+PV_MMU_read_cr2)
++ PV_INDIRECT_CALL(mmu,MMU,read_cr2)
+
+ #define PARAVIRT_ADJUST_EXCEPTION_FRAME \
+ PARA_SITE(PARA_PATCH(pv_irq_ops, PV_IRQ_adjust_exception_frame), \
+ CLBR_NONE, \
+- call PARA_INDIRECT(pv_irq_ops+PV_IRQ_adjust_exception_frame))
++ PV_INDIRECT_CALL(irq,IRQ,adjust_exception_frame))
+
+ #define USERGS_SYSRET64 \
PARA_SITE(PARA_PATCH(pv_cpu_ops, PV_CPU_usergs_sysret64), \
CLBR_NONE, \
- jmp PARA_INDIRECT(pv_cpu_ops+PV_CPU_usergs_sysret64))
+- jmp PARA_INDIRECT(pv_cpu_ops+PV_CPU_usergs_sysret64))
++ jmp *PARA_INDIRECT(pv_cpu_ops+PV_CPU_usergs_sysret64))
+
+#define GET_CR0_INTO_RDI \
-+ call PARA_INDIRECT(pv_cpu_ops+PV_CPU_read_cr0); \
++ PV_INDIRECT_CALL(cpu,CPU,read_cr0); \
+ mov %rax,%rdi
+
+#define SET_RDI_INTO_CR0 \
-+ call PARA_INDIRECT(pv_cpu_ops+PV_CPU_write_cr0)
++ PV_INDIRECT_CALL(cpu,CPU,write_cr0)
+
+#define GET_CR3_INTO_RDI \
-+ call PARA_INDIRECT(pv_mmu_ops+PV_MMU_read_cr3); \
++ PV_INDIRECT_CALL(mmu,MMU,read_cr3); \
+ mov %rax,%rdi
+
+#define SET_RDI_INTO_CR3 \
-+ call PARA_INDIRECT(pv_mmu_ops+PV_MMU_write_cr3)
++ PV_INDIRECT_CALL(mmu,MMU,write_cr3)
+
#endif /* CONFIG_X86_32 */
#endif /* __ASSEMBLY__ */
diff --git a/arch/x86/include/asm/paravirt_types.h b/arch/x86/include/asm/paravirt_types.h
-index 7fa9e77..aa09e68 100644
+index 0f400c0..3e5329e 100644
--- a/arch/x86/include/asm/paravirt_types.h
+++ b/arch/x86/include/asm/paravirt_types.h
-@@ -83,7 +83,7 @@ struct pv_init_ops {
+@@ -39,6 +39,7 @@
+
+ #ifndef __ASSEMBLY__
+
++#include <linux/linkage.h>
+ #include <asm/desc_defs.h>
+ #include <asm/kmap_types.h>
+ #include <asm/pgtable_types.h>
+@@ -51,14 +52,29 @@ struct mm_struct;
+ struct desc_struct;
+ struct task_struct;
+ struct cpumask;
++struct qspinlock;
+
+ /*
+ * Wrapper type for pointers to code which uses the non-standard
+- * calling convention. See PV_CALL_SAVE_REGS_THUNK below.
++ * calling convention. See PV_CALLEE_SAVE_REGS_THUNK below.
+ */
+-struct paravirt_callee_save {
+- void *func;
+-};
++union paravirt_callee_save {
++ void (*queued_spin_unlock)(struct qspinlock *);
++
++ asmlinkage unsigned long (*save_fl)(void);
++ void (*restore_fl)(unsigned long);
++ asmlinkage void (*irq_disable)(void);
++ asmlinkage void (*irq_enable)(void);
++
++ pteval_t (*pte_val)(pte_t);
++ pte_t (*make_pte)(pteval_t);
++ pmdval_t (*pmd_val)(pmd_t);
++ pmd_t (*make_pmd)(pmdval_t);
++ pudval_t (*pud_val)(pud_t);
++ pud_t (*make_pud)(pmdval_t);
++ pgdval_t (*pgd_val)(pgd_t);
++ pgd_t (*make_pgd)(pgdval_t);
++} __no_const;
+
+ /* general info */
+ struct pv_info {
+@@ -83,7 +99,7 @@ struct pv_init_ops {
*/
unsigned (*patch)(u8 type, u16 clobber, void *insnbuf,
unsigned long addr, unsigned len);
@@ -22769,48 +25563,91 @@ index 7fa9e77..aa09e68 100644
struct pv_lazy_ops {
-@@ -91,12 +91,12 @@ struct pv_lazy_ops {
+@@ -91,12 +107,12 @@ struct pv_lazy_ops {
void (*enter)(void);
void (*leave)(void);
void (*flush)(void);
-};
-+} __no_randomize_layout;
++} __no_const __no_randomize_layout;
struct pv_time_ops {
unsigned long long (*sched_clock)(void);
unsigned long long (*steal_clock)(int cpu);
-};
-+} __no_const __no_randomize_layout;
++} __rap_hash __no_const __no_randomize_layout;
struct pv_cpu_ops {
/* hooks for various privileged instructions */
-@@ -178,7 +178,7 @@ struct pv_cpu_ops {
+@@ -177,7 +193,7 @@ struct pv_cpu_ops {
void (*start_context_switch)(struct task_struct *prev);
void (*end_context_switch)(struct task_struct *next);
-};
-+} __no_const __no_randomize_layout;
++} __rap_hash __no_const __no_randomize_layout;
struct pv_irq_ops {
/*
-@@ -201,7 +201,7 @@ struct pv_irq_ops {
+@@ -189,10 +205,10 @@ struct pv_irq_ops {
+ * NOTE: These functions callers expect the callee to preserve
+ * more registers than the standard C calling convention.
+ */
+- struct paravirt_callee_save save_fl;
+- struct paravirt_callee_save restore_fl;
+- struct paravirt_callee_save irq_disable;
+- struct paravirt_callee_save irq_enable;
++ union paravirt_callee_save save_fl;
++ union paravirt_callee_save restore_fl;
++ union paravirt_callee_save irq_disable;
++ union paravirt_callee_save irq_enable;
+
+ void (*safe_halt)(void);
+ void (*halt)(void);
+@@ -200,7 +216,7 @@ struct pv_irq_ops {
#ifdef CONFIG_X86_64
void (*adjust_exception_frame)(void);
#endif
-};
-+} __no_randomize_layout;
++} __rap_hash __no_randomize_layout;
struct pv_mmu_ops {
unsigned long (*read_cr2)(void);
-@@ -285,6 +285,7 @@ struct pv_mmu_ops {
- struct paravirt_callee_save make_pud;
+@@ -259,11 +275,11 @@ struct pv_mmu_ops {
+ void (*ptep_modify_prot_commit)(struct mm_struct *mm, unsigned long addr,
+ pte_t *ptep, pte_t pte);
+
+- struct paravirt_callee_save pte_val;
+- struct paravirt_callee_save make_pte;
++ union paravirt_callee_save pte_val;
++ union paravirt_callee_save make_pte;
+
+- struct paravirt_callee_save pgd_val;
+- struct paravirt_callee_save make_pgd;
++ union paravirt_callee_save pgd_val;
++ union paravirt_callee_save make_pgd;
+
+ #if CONFIG_PGTABLE_LEVELS >= 3
+ #ifdef CONFIG_X86_PAE
+@@ -276,14 +292,15 @@ struct pv_mmu_ops {
+
+ void (*set_pud)(pud_t *pudp, pud_t pudval);
+
+- struct paravirt_callee_save pmd_val;
+- struct paravirt_callee_save make_pmd;
++ union paravirt_callee_save pmd_val;
++ union paravirt_callee_save make_pmd;
+
+ #if CONFIG_PGTABLE_LEVELS == 4
+- struct paravirt_callee_save pud_val;
+- struct paravirt_callee_save make_pud;
++ union paravirt_callee_save pud_val;
++ union paravirt_callee_save make_pud;
void (*set_pgd)(pgd_t *pudp, pgd_t pgdval);
+ void (*set_pgd_batched)(pgd_t *pudp, pgd_t pgdval);
#endif /* CONFIG_PGTABLE_LEVELS == 4 */
#endif /* CONFIG_PGTABLE_LEVELS >= 3 */
-@@ -296,7 +297,13 @@ struct pv_mmu_ops {
+@@ -295,7 +312,13 @@ struct pv_mmu_ops {
an mfn. We can tell which is which from the index. */
void (*set_fixmap)(unsigned /* enum fixed_addresses */ idx,
phys_addr_t phys, pgprot_t flags);
@@ -22821,16 +25658,21 @@ index 7fa9e77..aa09e68 100644
+ unsigned long (*pax_close_kernel)(void);
+#endif
+
-+} __no_randomize_layout;
++} __rap_hash __no_randomize_layout;
struct arch_spinlock;
#ifdef CONFIG_SMP
-@@ -318,11 +325,14 @@ struct pv_lock_ops {
- struct paravirt_callee_save lock_spinning;
- void (*unlock_kick)(struct arch_spinlock *lock, __ticket_t ticket);
- #endif /* !CONFIG_QUEUED_SPINLOCKS */
+@@ -306,15 +329,18 @@ struct qspinlock;
+
+ struct pv_lock_ops {
+ void (*queued_spin_lock_slowpath)(struct qspinlock *lock, u32 val);
+- struct paravirt_callee_save queued_spin_unlock;
++ union paravirt_callee_save queued_spin_unlock;
+
+ void (*wait)(u8 *ptr, u8 val);
+ void (*kick)(int cpu);
-};
-+} __no_randomize_layout;
++} __rap_hash __no_randomize_layout;
/* This contains all the paravirt structures: we get a convenient
* number for each function using the offset which we use to indicate
@@ -22842,7 +25684,7 @@ index 7fa9e77..aa09e68 100644
struct paravirt_patch_template {
struct pv_init_ops pv_init_ops;
struct pv_time_ops pv_time_ops;
-@@ -330,7 +340,7 @@ struct paravirt_patch_template {
+@@ -322,7 +348,7 @@ struct paravirt_patch_template {
struct pv_irq_ops pv_irq_ops;
struct pv_mmu_ops pv_mmu_ops;
struct pv_lock_ops pv_lock_ops;
@@ -22851,6 +25693,131 @@ index 7fa9e77..aa09e68 100644
extern struct pv_info pv_info;
extern struct pv_init_ops pv_init_ops;
+@@ -391,7 +417,7 @@ int paravirt_disable_iospace(void);
+ * offset into the paravirt_patch_template structure, and can therefore be
+ * freely converted back into a structure offset.
+ */
+-#define PARAVIRT_CALL "call *%c[paravirt_opptr];"
++#define PARAVIRT_CALL(op) PAX_INDIRECT_CALL("*%c[paravirt_opptr]", #op) ";"
+
+ /*
+ * These macros are intended to wrap calls through one of the paravirt
+@@ -518,7 +544,7 @@ int paravirt_disable_iospace(void);
+ /* since this condition will never hold */ \
+ if (sizeof(rettype) > sizeof(unsigned long)) { \
+ asm volatile(pre \
+- paravirt_alt(PARAVIRT_CALL) \
++ paravirt_alt(PARAVIRT_CALL(op)) \
+ post \
+ : call_clbr, "+r" (__sp) \
+ : paravirt_type(op), \
+@@ -528,7 +554,7 @@ int paravirt_disable_iospace(void);
+ __ret = (rettype)((((u64)__edx) << 32) | __eax); \
+ } else { \
+ asm volatile(pre \
+- paravirt_alt(PARAVIRT_CALL) \
++ paravirt_alt(PARAVIRT_CALL(op)) \
+ post \
+ : call_clbr, "+r" (__sp) \
+ : paravirt_type(op), \
+@@ -544,8 +570,8 @@ int paravirt_disable_iospace(void);
+ ____PVOP_CALL(rettype, op, CLBR_ANY, PVOP_CALL_CLOBBERS, \
+ EXTRA_CLOBBERS, pre, post, ##__VA_ARGS__)
+
+-#define __PVOP_CALLEESAVE(rettype, op, pre, post, ...) \
+- ____PVOP_CALL(rettype, op.func, CLBR_RET_REG, \
++#define __PVOP_CALLEESAVE(rettype, op, func, pre, post, ...) \
++ ____PVOP_CALL(rettype, op.func.func, CLBR_RET_REG, \
+ PVOP_CALLEE_CLOBBERS, , \
+ pre, post, ##__VA_ARGS__)
+
+@@ -555,7 +581,7 @@ int paravirt_disable_iospace(void);
+ PVOP_VCALL_ARGS; \
+ PVOP_TEST_NULL(op); \
+ asm volatile(pre \
+- paravirt_alt(PARAVIRT_CALL) \
++ paravirt_alt(PARAVIRT_CALL(op)) \
+ post \
+ : call_clbr, "+r" (__sp) \
+ : paravirt_type(op), \
+@@ -569,8 +595,8 @@ int paravirt_disable_iospace(void);
+ VEXTRA_CLOBBERS, \
+ pre, post, ##__VA_ARGS__)
+
+-#define __PVOP_VCALLEESAVE(op, pre, post, ...) \
+- ____PVOP_VCALL(op.func, CLBR_RET_REG, \
++#define __PVOP_VCALLEESAVE(op, func, pre, post, ...) \
++ ____PVOP_VCALL(op.func.func, CLBR_RET_REG, \
+ PVOP_VCALLEE_CLOBBERS, , \
+ pre, post, ##__VA_ARGS__)
+
+@@ -581,10 +607,10 @@ int paravirt_disable_iospace(void);
+ #define PVOP_VCALL0(op) \
+ __PVOP_VCALL(op, "", "")
+
+-#define PVOP_CALLEE0(rettype, op) \
+- __PVOP_CALLEESAVE(rettype, op, "", "")
+-#define PVOP_VCALLEE0(op) \
+- __PVOP_VCALLEESAVE(op, "", "")
++#define PVOP_CALLEE0(rettype, op, func) \
++ __PVOP_CALLEESAVE(rettype, op, func, "", "")
++#define PVOP_VCALLEE0(op, func) \
++ __PVOP_VCALLEESAVE(op, func, "", "")
+
+
+ #define PVOP_CALL1(rettype, op, arg1) \
+@@ -592,10 +618,10 @@ int paravirt_disable_iospace(void);
+ #define PVOP_VCALL1(op, arg1) \
+ __PVOP_VCALL(op, "", "", PVOP_CALL_ARG1(arg1))
+
+-#define PVOP_CALLEE1(rettype, op, arg1) \
+- __PVOP_CALLEESAVE(rettype, op, "", "", PVOP_CALL_ARG1(arg1))
+-#define PVOP_VCALLEE1(op, arg1) \
+- __PVOP_VCALLEESAVE(op, "", "", PVOP_CALL_ARG1(arg1))
++#define PVOP_CALLEE1(rettype, op, func, arg1) \
++ __PVOP_CALLEESAVE(rettype, op, func, "", "", PVOP_CALL_ARG1(arg1))
++#define PVOP_VCALLEE1(op, func, arg1) \
++ __PVOP_VCALLEESAVE(op, func, "", "", PVOP_CALL_ARG1(arg1))
+
+
+ #define PVOP_CALL2(rettype, op, arg1, arg2) \
+@@ -605,11 +631,11 @@ int paravirt_disable_iospace(void);
+ __PVOP_VCALL(op, "", "", PVOP_CALL_ARG1(arg1), \
+ PVOP_CALL_ARG2(arg2))
+
+-#define PVOP_CALLEE2(rettype, op, arg1, arg2) \
+- __PVOP_CALLEESAVE(rettype, op, "", "", PVOP_CALL_ARG1(arg1), \
++#define PVOP_CALLEE2(rettype, op, func, arg1, arg2) \
++ __PVOP_CALLEESAVE(rettype, op, func, "", "", PVOP_CALL_ARG1(arg1),\
+ PVOP_CALL_ARG2(arg2))
+-#define PVOP_VCALLEE2(op, arg1, arg2) \
+- __PVOP_VCALLEESAVE(op, "", "", PVOP_CALL_ARG1(arg1), \
++#define PVOP_VCALLEE2(op, func, arg1, arg2) \
++ __PVOP_VCALLEESAVE(op, func, "", "", PVOP_CALL_ARG1(arg1), \
+ PVOP_CALL_ARG2(arg2))
+
+
+diff --git a/arch/x86/include/asm/percpu.h b/arch/x86/include/asm/percpu.h
+index 84f58de..610576f 100644
+--- a/arch/x86/include/asm/percpu.h
++++ b/arch/x86/include/asm/percpu.h
+@@ -493,7 +493,7 @@ do { \
+ bool __ret; \
+ typeof(pcp1) __o1 = (o1), __n1 = (n1); \
+ typeof(pcp2) __o2 = (o2), __n2 = (n2); \
+- alternative_io("leaq %P1,%%rsi\n\tcall this_cpu_cmpxchg16b_emu\n\t", \
++ alternative_io("leaq %P1,%%rsi\n\t" PAX_DIRECT_CALL("this_cpu_cmpxchg16b_emu")"\n\t", \
+ "cmpxchg16b " __percpu_arg(1) "\n\tsetz %0\n\t", \
+ X86_FEATURE_CX16, \
+ ASM_OUTPUT2("=a" (__ret), "+m" (pcp1), \
+@@ -501,6 +501,7 @@ do { \
+ "b" (__n1), "c" (__n2), "a" (__o1) : "rsi"); \
+ __ret; \
+ })
++bool this_cpu_cmpxchg16b_emu(void *, void*, long, long, long, long) __rap_hash;
+
+ #define raw_cpu_cmpxchg_double_8 percpu_cmpxchg16b_double
+ #define this_cpu_cmpxchg_double_8 percpu_cmpxchg16b_double
diff --git a/arch/x86/include/asm/pgalloc.h b/arch/x86/include/asm/pgalloc.h
index b6d4259..da6324e 100644
--- a/arch/x86/include/asm/pgalloc.h
@@ -23320,10 +26287,10 @@ index 1cc82ec..ba29fd8 100644
}
diff --git a/arch/x86/include/asm/pgtable_64_types.h b/arch/x86/include/asm/pgtable_64_types.h
-index 6fdef9e..7cda9d5 100644
+index 3a26420..ad31bde 100644
--- a/arch/x86/include/asm/pgtable_64_types.h
+++ b/arch/x86/include/asm/pgtable_64_types.h
-@@ -67,11 +67,16 @@ typedef struct { pteval_t pte; } pte_t;
+@@ -69,11 +69,16 @@ typedef struct { pteval_t pte; } pte_t;
#define MODULES_VADDR (__START_KERNEL_map + KERNEL_IMAGE_SIZE)
#define MODULES_END _AC(0xffffffffff000000, UL)
#define MODULES_LEN (MODULES_END - MODULES_VADDR)
@@ -23341,7 +26308,7 @@ index 6fdef9e..7cda9d5 100644
#endif /* _ASM_X86_PGTABLE_64_DEFS_H */
diff --git a/arch/x86/include/asm/pgtable_types.h b/arch/x86/include/asm/pgtable_types.h
-index f1218f5..b0cafcd 100644
+index 8b4de22..eaf50b8 100644
--- a/arch/x86/include/asm/pgtable_types.h
+++ b/arch/x86/include/asm/pgtable_types.h
@@ -112,10 +112,14 @@
@@ -23433,7 +26400,7 @@ index f1218f5..b0cafcd 100644
#define pgprot_writecombine pgprot_writecombine
extern pgprot_t pgprot_writecombine(pgprot_t prot);
diff --git a/arch/x86/include/asm/pmem.h b/arch/x86/include/asm/pmem.h
-index 643eba4..0dbfcf5 100644
+index 2c1ebeb..69c4605 100644
--- a/arch/x86/include/asm/pmem.h
+++ b/arch/x86/include/asm/pmem.h
@@ -38,7 +38,7 @@ static inline void arch_memcpy_to_pmem(void *dst, const void *src, size_t n)
@@ -23459,7 +26426,7 @@ index 17f2186..f394307 100644
/*
diff --git a/arch/x86/include/asm/processor.h b/arch/x86/include/asm/processor.h
-index 63def95..3d8c203 100644
+index 984a7bf..c3e410d 100644
--- a/arch/x86/include/asm/processor.h
+++ b/arch/x86/include/asm/processor.h
@@ -135,7 +135,7 @@ struct cpuinfo_x86 {
@@ -23471,6 +26438,15 @@ index 63def95..3d8c203 100644
#define X86_VENDOR_INTEL 0
#define X86_VENDOR_CYRIX 1
+@@ -159,7 +159,7 @@ extern __u32 cpu_caps_cleared[NCAPINTS];
+ extern __u32 cpu_caps_set[NCAPINTS];
+
+ #ifdef CONFIG_SMP
+-DECLARE_PER_CPU_READ_MOSTLY(struct cpuinfo_x86, cpu_info);
++DECLARE_PER_CPU_READ_ONLY(struct cpuinfo_x86, cpu_info);
+ #define cpu_data(cpu) per_cpu(cpu_info, cpu)
+ #else
+ #define cpu_info boot_cpu_data
@@ -205,9 +205,21 @@ static inline void native_cpuid(unsigned int *eax, unsigned int *ebx,
: "memory");
}
@@ -23507,15 +26483,23 @@ index 63def95..3d8c203 100644
/*
* Save the original ist values for checking stack pointers during debugging
-@@ -388,6 +398,7 @@ struct thread_struct {
+@@ -340,6 +350,7 @@ DECLARE_PER_CPU_FIRST(union irq_stack_union, irq_stack_union) __visible;
+ DECLARE_INIT_PER_CPU(irq_stack_union);
+
+ DECLARE_PER_CPU(char *, irq_stack_ptr);
++DECLARE_PER_CPU(char *, irq_stack_ptr_lowmem);
+ DECLARE_PER_CPU(unsigned int, irq_count);
+ extern asmlinkage void ignore_sysret(void);
+ #else /* X86_64 */
+@@ -388,6 +399,7 @@ struct thread_struct {
unsigned short ds;
unsigned short fsindex;
unsigned short gsindex;
+ unsigned short ss;
#endif
- #ifdef CONFIG_X86_32
- unsigned long ip;
-@@ -404,6 +415,9 @@ struct thread_struct {
+
+ u32 status; /* thread synchronous flags */
+@@ -404,6 +416,9 @@ struct thread_struct {
unsigned long gs;
#endif
@@ -23525,12 +26509,12 @@ index 63def95..3d8c203 100644
/* Save middle states of ptrace breakpoints */
struct perf_event *ptrace_bps[HBP_NUM];
/* Debug status used for traps, single steps, etc... */
-@@ -424,18 +438,9 @@ struct thread_struct {
- /* Max allowed port in the bitmap, in bytes: */
+@@ -425,17 +440,11 @@ struct thread_struct {
unsigned io_bitmap_max;
-- mm_segment_t addr_limit;
--
+ mm_segment_t addr_limit;
++ unsigned long lowest_stack;
+
unsigned int sig_on_uaccess_err:1;
unsigned int uaccess_err:1; /* uaccess failed */
-
@@ -23544,8 +26528,8 @@ index 63def95..3d8c203 100644
+} __randomize_layout;
/*
- * Set IOPL bits in EFLAGS from given mask
-@@ -478,12 +483,8 @@ static inline void native_swapgs(void)
+ * Thread-synchronous status.
+@@ -487,12 +496,8 @@ static inline void native_swapgs(void)
static inline unsigned long current_top_of_stack(void)
{
@@ -23558,7 +26542,7 @@ index 63def95..3d8c203 100644
}
#ifdef CONFIG_PARAVIRT
-@@ -708,20 +709,29 @@ static inline void spin_lock_prefetch(const void *x)
+@@ -717,20 +722,30 @@ static inline void spin_lock_prefetch(const void *x)
#define TOP_OF_INIT_STACK ((unsigned long)&init_stack + sizeof(init_stack) - \
TOP_OF_KERNEL_STACK_PADDING)
@@ -23585,12 +26569,12 @@ index 63def95..3d8c203 100644
.sp0 = TOP_OF_INIT_STACK, \
.sysenter_cs = __KERNEL_CS, \
.io_bitmap_ptr = NULL, \
-- .addr_limit = KERNEL_DS, \
+ .addr_limit = KERNEL_DS, \
+ .fpu.state = &init_fpregs_state, \
}
- extern unsigned long thread_saved_pc(struct task_struct *tsk);
-@@ -736,12 +746,7 @@ extern unsigned long thread_saved_pc(struct task_struct *tsk);
+ /*
+@@ -743,12 +758,7 @@ static inline void spin_lock_prefetch(const void *x)
* "struct pt_regs" is possible, but they may contain the
* completely wrong values.
*/
@@ -23604,7 +26588,7 @@ index 63def95..3d8c203 100644
#define KSTK_ESP(task) (task_pt_regs(task)->sp)
-@@ -755,13 +760,13 @@ extern unsigned long thread_saved_pc(struct task_struct *tsk);
+@@ -762,13 +772,13 @@ static inline void spin_lock_prefetch(const void *x)
* particular problem by preventing anything from being mapped
* at the maximum canonical address.
*/
@@ -23620,16 +26604,15 @@ index 63def95..3d8c203 100644
#define TASK_SIZE (test_thread_flag(TIF_ADDR32) ? \
IA32_PAGE_OFFSET : TASK_SIZE_MAX)
-@@ -773,7 +778,7 @@ extern unsigned long thread_saved_pc(struct task_struct *tsk);
-
+@@ -781,6 +791,7 @@ static inline void spin_lock_prefetch(const void *x)
#define INIT_THREAD { \
.sp0 = TOP_OF_INIT_STACK, \
-- .addr_limit = KERNEL_DS, \
+ .addr_limit = KERNEL_DS, \
+ .fpu.state = &init_fpregs_state, \
}
- /*
-@@ -796,6 +801,10 @@ extern void start_thread(struct pt_regs *regs, unsigned long new_ip,
+ #define task_pt_regs(tsk) ((struct pt_regs *)(tsk)->thread.sp0 - 1)
+@@ -799,6 +810,10 @@ extern void start_thread(struct pt_regs *regs, unsigned long new_ip,
*/
#define TASK_UNMAPPED_BASE (PAGE_ALIGN(TASK_SIZE / 3))
@@ -23640,7 +26623,7 @@ index 63def95..3d8c203 100644
#define KSTK_EIP(task) (task_pt_regs(task)->ip)
/* Get/set a process' ability to use the timestamp counter instruction */
-@@ -841,7 +850,7 @@ static inline uint32_t hypervisor_cpuid_base(const char *sig, uint32_t leaves)
+@@ -844,7 +859,7 @@ static inline uint32_t hypervisor_cpuid_base(const char *sig, uint32_t leaves)
return 0;
}
@@ -23649,7 +26632,7 @@ index 63def95..3d8c203 100644
extern void free_init_pages(char *what, unsigned long begin, unsigned long end);
void default_idle(void);
-@@ -851,6 +860,6 @@ bool xen_set_default_idle(void);
+@@ -854,6 +869,6 @@ bool xen_set_default_idle(void);
#define xen_set_default_idle 0
#endif
@@ -23695,8 +26678,31 @@ index 2b5d686..8693ed0 100644
#endif
return *(unsigned long *)((unsigned long)regs + offset);
}
+diff --git a/arch/x86/include/asm/qspinlock_paravirt.h b/arch/x86/include/asm/qspinlock_paravirt.h
+index 9d55f9b..84e9a58 100644
+--- a/arch/x86/include/asm/qspinlock_paravirt.h
++++ b/arch/x86/include/asm/qspinlock_paravirt.h
+@@ -48,15 +48,15 @@ asm (".pushsection .text;"
+ "jne .slowpath;"
+ "pop %rdx;"
+ FRAME_END
+- "ret;"
++ PAX_RET(PV_UNLOCK)";"
+ ".slowpath: "
+ "push %rsi;"
+ "movzbl %al,%esi;"
+- "call " PV_UNLOCK_SLOWPATH ";"
++ PAX_DIRECT_CALL(PV_UNLOCK_SLOWPATH)";"
+ "pop %rsi;"
+ "pop %rdx;"
+ FRAME_END
+- "ret;"
++ PAX_RET(PV_UNLOCK)";"
+ ".size " PV_UNLOCK ", .-" PV_UNLOCK ";"
+ ".popsection");
+
diff --git a/arch/x86/include/asm/realmode.h b/arch/x86/include/asm/realmode.h
-index b2988c0..421f625 100644
+index 230e190..400b14c 100644
--- a/arch/x86/include/asm/realmode.h
+++ b/arch/x86/include/asm/realmode.h
@@ -22,16 +22,14 @@ struct real_mode_header {
@@ -23828,7 +26834,7 @@ index 661dd30..e804f84 100644
#endif /* defined(__GCC_ASM_FLAG_OUTPUTS__) || !defined(CC_HAVE_ASM_GOTO) */
diff --git a/arch/x86/include/asm/rwsem.h b/arch/x86/include/asm/rwsem.h
-index 8dbc762..5ff77d9 100644
+index a34e0d4..5708ff7 100644
--- a/arch/x86/include/asm/rwsem.h
+++ b/arch/x86/include/asm/rwsem.h
@@ -64,14 +64,15 @@ static inline void __down_read(struct rw_semaphore *sem)
@@ -23867,27 +26873,28 @@ index 8dbc762..5ff77d9 100644
return result >= 0;
}
-@@ -105,6 +107,7 @@ static inline bool __down_read_trylock(struct rw_semaphore *sem)
- struct rw_semaphore* ret; \
+@@ -107,16 +109,17 @@ static inline bool __down_read_trylock(struct rw_semaphore *sem)
+ \
asm volatile("# beginning down_write\n\t" \
- LOCK_PREFIX " xadd %1,(%3)\n\t" \
+ LOCK_PREFIX " xadd %1,(%4)\n\t" \
+ PAX_REFCOUNT_OVERFLOW(BITS_PER_LONG/8)\
/* adds 0xffff0001, returns the old value */ \
" test " __ASM_SEL(%w1,%k1) "," __ASM_SEL(%w1,%k1) "\n\t" \
/* was the active mask 0 before? */\
-@@ -112,9 +115,9 @@ static inline bool __down_read_trylock(struct rw_semaphore *sem)
- " call " slow_path "\n" \
+ " jz 1f\n" \
+- " call " slow_path "\n" \
++ PAX_DIRECT_CALL(slow_path)"\n" \
"1:\n" \
"# ending down_write" \
-- : "+m" (sem->count), "=d" (tmp), "=a" (ret) \
-+ : [counter] "+m" (sem->count), "=d" (tmp), "=a" (ret)\
+- : "+m" (sem->count), "=d" (tmp), "=a" (ret), "+r" (__sp) \
++ : [counter] "+m" (sem->count), "=d" (tmp), "=a" (ret), "+r" (__sp) \
: "a" (sem), "1" (RWSEM_ACTIVE_WRITE_BIAS) \
- : "memory", "cc"); \
+ : "memory", "cc", "cx"); \
ret; \
})
-@@ -146,15 +149,16 @@ static inline bool __down_write_trylock(struct rw_semaphore *sem)
+@@ -148,15 +151,16 @@ static inline bool __down_write_trylock(struct rw_semaphore *sem)
" jnz 2f\n\t"
" mov %1,%2\n\t"
" add %4,%2\n\t"
@@ -23901,12 +26908,12 @@ index 8dbc762..5ff77d9 100644
+ : [counter] "+m" (sem->count), "=&a" (tmp0), "=&r" (tmp1),
CC_OUT(e) (result)
: "er" (RWSEM_ACTIVE_WRITE_BIAS)
-- : "memory", "cc");
-+ : "memory", "cc", "cx");
+- : "memory");
++ : "memory", "cx");
return result;
}
-@@ -166,14 +170,15 @@ static inline void __up_read(struct rw_semaphore *sem)
+@@ -168,14 +172,15 @@ static inline void __up_read(struct rw_semaphore *sem)
long tmp;
asm volatile("# beginning __up_read\n\t"
LOCK_PREFIX " xadd %1,(%2)\n\t"
@@ -23924,7 +26931,7 @@ index 8dbc762..5ff77d9 100644
}
/*
-@@ -184,14 +189,15 @@ static inline void __up_write(struct rw_semaphore *sem)
+@@ -186,14 +191,15 @@ static inline void __up_write(struct rw_semaphore *sem)
long tmp;
asm volatile("# beginning __up_write\n\t"
LOCK_PREFIX " xadd %1,(%2)\n\t"
@@ -23942,7 +26949,7 @@ index 8dbc762..5ff77d9 100644
}
/*
-@@ -201,6 +207,7 @@ static inline void __downgrade_write(struct rw_semaphore *sem)
+@@ -203,6 +209,7 @@ static inline void __downgrade_write(struct rw_semaphore *sem)
{
asm volatile("# beginning __downgrade_write\n\t"
LOCK_PREFIX _ASM_ADD "%2,(%1)\n\t"
@@ -23950,7 +26957,7 @@ index 8dbc762..5ff77d9 100644
/*
* transitions 0xZZZZ0001 -> 0xYYYY0001 (i386)
* 0xZZZZZZZZ00000001 -> 0xYYYYYYYY00000001 (x86_64)
-@@ -209,9 +216,9 @@ static inline void __downgrade_write(struct rw_semaphore *sem)
+@@ -211,9 +218,9 @@ static inline void __downgrade_write(struct rw_semaphore *sem)
" call call_rwsem_downgrade_wake\n"
"1:\n\t"
"# ending __downgrade_write\n"
@@ -24074,7 +27081,7 @@ index ac1d5da..6c4be50 100644
/*
diff --git a/arch/x86/include/asm/smap.h b/arch/x86/include/asm/smap.h
-index db33330..fa80df3 100644
+index db33330..9356a63 100644
--- a/arch/x86/include/asm/smap.h
+++ b/arch/x86/include/asm/smap.h
@@ -25,6 +25,18 @@
@@ -24083,10 +27090,10 @@ index db33330..fa80df3 100644
+#if defined(CONFIG_X86_64) && defined(CONFIG_PAX_MEMORY_UDEREF)
+#define ASM_PAX_OPEN_USERLAND \
-+ ALTERNATIVE "", "call __pax_open_userland", X86_FEATURE_STRONGUDEREF
++ ALTERNATIVE "", "pax_direct_call __pax_open_userland", X86_FEATURE_STRONGUDEREF
+
+#define ASM_PAX_CLOSE_USERLAND \
-+ ALTERNATIVE "", "call __pax_close_userland", X86_FEATURE_STRONGUDEREF
++ ALTERNATIVE "", "pax_direct_call __pax_close_userland", X86_FEATURE_STRONGUDEREF
+
+#else
+#define ASM_PAX_OPEN_USERLAND
@@ -24115,7 +27122,7 @@ index db33330..fa80df3 100644
+{
+
+#if defined(CONFIG_X86_64) && defined(CONFIG_PAX_MEMORY_UDEREF)
-+ asm volatile(ALTERNATIVE("", "call %P[open]", X86_FEATURE_STRONGUDEREF)
++ asm volatile(ALTERNATIVE("", PAX_DIRECT_CALL("%P[open]"), X86_FEATURE_STRONGUDEREF)
+ :
+ : [open] "i" (__pax_open_userland)
+ : "memory", "rax");
@@ -24129,7 +27136,7 @@ index db33330..fa80df3 100644
+{
+
+#if defined(CONFIG_X86_64) && defined(CONFIG_PAX_MEMORY_UDEREF)
-+ asm volatile(ALTERNATIVE("", "call %P[close]", X86_FEATURE_STRONGUDEREF)
++ asm volatile(ALTERNATIVE("", PAX_DIRECT_CALL("%P[close]"), X86_FEATURE_STRONGUDEREF)
+ :
+ : [close] "i" (__pax_close_userland)
+ : "memory", "rax");
@@ -24142,7 +27149,7 @@ index db33330..fa80df3 100644
static __always_inline void clac(void)
diff --git a/arch/x86/include/asm/smp.h b/arch/x86/include/asm/smp.h
-index ebd0c16..ff7f35d 100644
+index 026ea82..31a5b19 100644
--- a/arch/x86/include/asm/smp.h
+++ b/arch/x86/include/asm/smp.h
@@ -25,7 +25,7 @@ DECLARE_PER_CPU_READ_MOSTLY(cpumask_var_t, cpu_core_map);
@@ -24154,7 +27161,7 @@ index ebd0c16..ff7f35d 100644
static inline struct cpumask *cpu_llc_shared_mask(int cpu)
{
-@@ -59,7 +59,7 @@ struct smp_ops {
+@@ -57,7 +57,7 @@ struct smp_ops {
void (*send_call_func_ipi)(const struct cpumask *mask);
void (*send_call_func_single_ipi)(int cpu);
@@ -24185,59 +27192,6 @@ index 58505f0..bff3b5b 100644
asm volatile ("mov %0, %%gs" : : "r" (0));
#endif
}
-diff --git a/arch/x86/include/asm/stacktrace.h b/arch/x86/include/asm/stacktrace.h
-index 0944218..2f17b1b 100644
---- a/arch/x86/include/asm/stacktrace.h
-+++ b/arch/x86/include/asm/stacktrace.h
-@@ -11,28 +11,20 @@
-
- extern int kstack_depth_to_print;
-
--struct thread_info;
-+struct task_struct;
- struct stacktrace_ops;
-
--typedef unsigned long (*walk_stack_t)(struct task_struct *task,
-- unsigned long *stack,
-- unsigned long bp,
-- const struct stacktrace_ops *ops,
-- void *data,
-- unsigned long *end,
-- int *graph);
-+typedef unsigned long walk_stack_t(struct task_struct *task,
-+ void *stack_start,
-+ unsigned long *stack,
-+ unsigned long bp,
-+ const struct stacktrace_ops *ops,
-+ void *data,
-+ unsigned long *end,
-+ int *graph);
-
--extern unsigned long
--print_context_stack(struct task_struct *task,
-- unsigned long *stack, unsigned long bp,
-- const struct stacktrace_ops *ops, void *data,
-- unsigned long *end, int *graph);
--
--extern unsigned long
--print_context_stack_bp(struct task_struct *task,
-- unsigned long *stack, unsigned long bp,
-- const struct stacktrace_ops *ops, void *data,
-- unsigned long *end, int *graph);
-+extern walk_stack_t print_context_stack;
-+extern walk_stack_t print_context_stack_bp;
-
- /* Generic stack tracer with callbacks */
-
-@@ -40,7 +32,7 @@ struct stacktrace_ops {
- int (*address)(void *data, unsigned long address, int reliable);
- /* On negative return stop dumping */
- int (*stack)(void *data, char *name);
-- walk_stack_t walk_stack;
-+ walk_stack_t *walk_stack;
- };
-
- void dump_trace(struct task_struct *tsk, struct pt_regs *regs,
diff --git a/arch/x86/include/asm/string_32.h b/arch/x86/include/asm/string_32.h
index 3d3e835..50b64b1 100644
--- a/arch/x86/include/asm/string_32.h
@@ -24309,10 +27263,10 @@ index 3d3e835..50b64b1 100644
/*
* This looks horribly ugly, but the compiler can optimize it totally,
diff --git a/arch/x86/include/asm/string_64.h b/arch/x86/include/asm/string_64.h
-index 90dbbd9..607d3ba 100644
+index a164862..a902568 100644
--- a/arch/x86/include/asm/string_64.h
+++ b/arch/x86/include/asm/string_64.h
-@@ -27,8 +27,8 @@ static __always_inline void *__inline_memcpy(void *to, const void *from, size_t
+@@ -28,8 +28,8 @@ static __always_inline void *__inline_memcpy(void *to, const void *from, size_t
function. */
#define __HAVE_ARCH_MEMCPY 1
@@ -24323,7 +27277,7 @@ index 90dbbd9..607d3ba 100644
#ifndef CONFIG_KMEMCHECK
#if (__GNUC__ == 4 && __GNUC_MINOR__ < 3) || __GNUC__ < 4
-@@ -56,14 +56,14 @@ void *memset(void *s, int c, size_t n);
+@@ -57,14 +57,14 @@ void *memset(void *s, int c, size_t n);
void *__memset(void *s, int c, size_t n);
#define __HAVE_ARCH_MEMMOVE
@@ -24345,37 +27299,41 @@ index 90dbbd9..607d3ba 100644
#if defined(CONFIG_KASAN) && !defined(__SANITIZE_ADDRESS__)
-@@ -89,7 +89,7 @@ int strcmp(const char *cs, const char *ct);
+@@ -96,7 +96,7 @@ DECLARE_STATIC_KEY_FALSE(mcsafe_key);
*
* Return 0 for success, -EFAULT for fail
*/
--int memcpy_mcsafe(void *dst, const void *src, size_t cnt);
-+int memcpy_mcsafe(void *dst, const void *src, size_t cnt) __nocapture(2);
-
- #endif /* __KERNEL__ */
-
+-static __always_inline __must_check int
++static __always_inline __must_check __nocapture(2) int
+ memcpy_mcsafe(void *dst, const void *src, size_t cnt)
+ {
+ #ifdef CONFIG_X86_MCE
+diff --git a/arch/x86/include/asm/suspend_64.h b/arch/x86/include/asm/suspend_64.h
+index 6136a18..585dcbd 100644
+--- a/arch/x86/include/asm/suspend_64.h
++++ b/arch/x86/include/asm/suspend_64.h
+@@ -44,6 +44,6 @@ struct saved_context {
+ /* routines for saving/restoring kernel state */
+ extern int acpi_save_state_mem(void);
+ extern char core_restore_code;
+-extern char restore_registers;
++extern int restore_registers(void);
+
+ #endif /* _ASM_X86_SUSPEND_64_H */
diff --git a/arch/x86/include/asm/switch_to.h b/arch/x86/include/asm/switch_to.h
-index 8f321a1..6207183 100644
+index 5cb436a..aba17e1 100644
--- a/arch/x86/include/asm/switch_to.h
+++ b/arch/x86/include/asm/switch_to.h
-@@ -110,7 +110,7 @@ do { \
- "call __switch_to\n\t" \
- "movq "__percpu_arg([current_task])",%%rsi\n\t" \
- __switch_canary \
-- "movq %P[thread_info](%%rsi),%%r8\n\t" \
-+ "movq "__percpu_arg([thread_info])",%%r8\n\t" \
- "movq %%rax,%%rdi\n\t" \
- "testl %[_tif_fork],%P[ti_flags](%%r8)\n\t" \
- "jnz ret_from_fork\n\t" \
-@@ -121,7 +121,7 @@ do { \
- [threadrsp] "i" (offsetof(struct task_struct, thread.sp)), \
- [ti_flags] "i" (offsetof(struct thread_info, flags)), \
- [_tif_fork] "i" (_TIF_FORK), \
-- [thread_info] "i" (offsetof(struct task_struct, stack)), \
-+ [thread_info] "m" (current_tinfo), \
- [current_task] "m" (current_task) \
- __switch_canary_iparam \
- : "memory", "cc" __EXTRA_CLOBBER)
+@@ -42,7 +42,9 @@ struct inactive_task_frame {
+ unsigned long r15;
+ unsigned long r14;
+ unsigned long r13;
++#ifndef CONFIG_PAX_KERNEXEC_PLUGIN_METHOD_OR
+ unsigned long r12;
++#endif
+ #else
+ unsigned long si;
+ unsigned long di;
diff --git a/arch/x86/include/asm/sys_ia32.h b/arch/x86/include/asm/sys_ia32.h
index 82c34ee..940fa40 100644
--- a/arch/x86/include/asm/sys_ia32.h
@@ -24400,8 +27358,30 @@ index 82c34ee..940fa40 100644
asmlinkage long sys32_fallocate(int, int, unsigned,
unsigned, unsigned, unsigned);
+diff --git a/arch/x86/include/asm/syscalls.h b/arch/x86/include/asm/syscalls.h
+index 91dfcaf..8fda9d0 100644
+--- a/arch/x86/include/asm/syscalls.h
++++ b/arch/x86/include/asm/syscalls.h
+@@ -21,7 +21,7 @@ asmlinkage long sys_ioperm(unsigned long, unsigned long, int);
+ asmlinkage long sys_iopl(unsigned int);
+
+ /* kernel/ldt.c */
+-asmlinkage int sys_modify_ldt(int, void __user *, unsigned long);
++asmlinkage long sys_modify_ldt(int, void __user *, unsigned long);
+
+ /* kernel/signal.c */
+ asmlinkage long sys_rt_sigreturn(void);
+@@ -34,7 +34,7 @@ asmlinkage long sys_get_thread_area(struct user_desc __user *);
+ #ifdef CONFIG_X86_32
+
+ /* kernel/signal.c */
+-asmlinkage unsigned long sys_sigreturn(void);
++asmlinkage long sys_sigreturn(void);
+
+ /* kernel/vm86_32.c */
+ struct vm86_struct;
diff --git a/arch/x86/include/asm/thread_info.h b/arch/x86/include/asm/thread_info.h
-index 8b7c8d8e..a60b006 100644
+index ad6f5eb0..1b4909d 100644
--- a/arch/x86/include/asm/thread_info.h
+++ b/arch/x86/include/asm/thread_info.h
@@ -39,7 +39,7 @@
@@ -24413,33 +27393,7 @@ index 8b7c8d8e..a60b006 100644
#endif
/*
-@@ -53,20 +53,21 @@ struct task_struct;
- #include <linux/atomic.h>
-
- struct thread_info {
-- struct task_struct *task; /* main task structure */
- __u32 flags; /* low level flags */
- __u32 status; /* thread synchronous flags */
- __u32 cpu; /* current CPU */
-+ mm_segment_t addr_limit;
-+ unsigned long lowest_stack;
- };
-
--#define INIT_THREAD_INFO(tsk) \
-+#define INIT_THREAD_INFO \
- { \
-- .task = &tsk, \
- .flags = 0, \
- .cpu = 0, \
-+ .addr_limit = KERNEL_DS, \
- }
-
--#define init_thread_info (init_thread_union.thread_info)
-+#define init_thread_info (init_thread_union.stack)
- #define init_stack (init_thread_union.stack)
-
- #else /* !__ASSEMBLY__ */
-@@ -106,6 +107,7 @@ struct thread_info {
+@@ -99,6 +99,7 @@ struct thread_info {
#define TIF_SYSCALL_TRACEPOINT 28 /* syscall tracepoint instrumentation */
#define TIF_ADDR32 29 /* 32-bit address space on 64 bits */
#define TIF_X32 30 /* 32-bit native x86-64 binary */
@@ -24447,7 +27401,7 @@ index 8b7c8d8e..a60b006 100644
#define _TIF_SYSCALL_TRACE (1 << TIF_SYSCALL_TRACE)
#define _TIF_NOTIFY_RESUME (1 << TIF_NOTIFY_RESUME)
-@@ -129,6 +131,7 @@ struct thread_info {
+@@ -121,6 +122,7 @@ struct thread_info {
#define _TIF_SYSCALL_TRACEPOINT (1 << TIF_SYSCALL_TRACEPOINT)
#define _TIF_ADDR32 (1 << TIF_ADDR32)
#define _TIF_X32 (1 << TIF_X32)
@@ -24455,7 +27409,7 @@ index 8b7c8d8e..a60b006 100644
/*
* work to do in syscall_trace_enter(). Also includes TIF_NOHZ for
-@@ -137,12 +140,12 @@ struct thread_info {
+@@ -129,12 +131,12 @@ struct thread_info {
#define _TIF_WORK_SYSCALL_ENTRY \
(_TIF_SYSCALL_TRACE | _TIF_SYSCALL_EMU | _TIF_SYSCALL_AUDIT | \
_TIF_SECCOMP | _TIF_SYSCALL_TRACEPOINT | \
@@ -24470,20 +27424,7 @@ index 8b7c8d8e..a60b006 100644
/* flags to check in __switch_to() */
#define _TIF_WORK_CTXSW \
-@@ -160,9 +163,11 @@ struct thread_info {
- */
- #ifndef __ASSEMBLY__
-
-+DECLARE_PER_CPU(struct thread_info *, current_tinfo);
-+
- static inline struct thread_info *current_thread_info(void)
- {
-- return (struct thread_info *)(current_top_of_stack() - THREAD_SIZE);
-+ return this_cpu_read_stable(current_tinfo);
- }
-
- static inline unsigned long current_stack_pointer(void)
-@@ -181,21 +186,21 @@ static inline unsigned long current_stack_pointer(void)
+@@ -168,21 +170,21 @@ static inline unsigned long current_stack_pointer(void)
* entirely contained by a single stack frame.
*
* Returns:
@@ -24515,7 +27456,7 @@ index 8b7c8d8e..a60b006 100644
/*
* low ----------------------------------------------> high
* [saved bp][saved ip][args][local vars][saved bp][saved ip]
-@@ -210,48 +215,21 @@ static inline int arch_within_stack_frames(const void * const stack,
+@@ -197,22 +199,16 @@ static inline int arch_within_stack_frames(const void * const stack,
* the copy as invalid.
*/
if (obj + len <= frame)
@@ -24533,60 +27474,17 @@ index 8b7c8d8e..a60b006 100644
#endif
}
- #else /* !__ASSEMBLY__ */
-
+-#else /* !__ASSEMBLY__ */
+-
-#ifdef CONFIG_X86_64
-# define cpu_current_top_of_stack (cpu_tss + TSS_sp0)
-#endif
-
--/*
-- * ASM operand which evaluates to a 'thread_info' address of
-- * the current task, if it is known that "reg" is exactly "off"
-- * bytes below the top of the stack currently.
-- *
-- * ( The kernel stack's size is known at build time, it is usually
-- * 2 or 4 pages, and the bottom of the kernel stack contains
-- * the thread_info structure. So to access the thread_info very
-- * quickly from assembly code we can calculate down from the
-- * top of the kernel stack to the bottom, using constant,
-- * build-time calculations only. )
-- *
-- * For example, to fetch the current thread_info->flags value into %eax
-- * on x86-64 defconfig kernels, in syscall entry code where RSP is
-- * currently at exactly SIZEOF_PTREGS bytes away from the top of the
-- * stack:
-- *
-- * mov ASM_THREAD_INFO(TI_flags, %rsp, SIZEOF_PTREGS), %eax
-- *
-- * will translate to:
-- *
-- * 8b 84 24 b8 c0 ff ff mov -0x3f48(%rsp), %eax
-- *
-- * which is below the current RSP by almost 16K.
-- */
--#define ASM_THREAD_INFO(field, reg, off) ((field)+(off)-THREAD_SIZE)(reg)
-+/* Load thread_info address into "reg" */
-+#define GET_THREAD_INFO(reg) \
-+ _ASM_MOV PER_CPU_VAR(current_tinfo),reg ;
-
#endif
-@@ -293,6 +271,13 @@ static inline bool in_ia32_syscall(void)
- extern void arch_task_cache_init(void);
- extern int arch_dup_task_struct(struct task_struct *dst, struct task_struct *src);
- extern void arch_release_task_struct(struct task_struct *tsk);
-+
-+#define __HAVE_THREAD_FUNCTIONS
-+#define task_thread_info(task) (&(task)->tinfo)
-+#define task_stack_page(task) ((task)->stack)
-+#define setup_thread_stack(p, org) do {} while (0)
-+#define end_of_stack(p) ((unsigned long *)task_stack_page(p) + 1)
-+
- #endif /* !__ASSEMBLY__ */
-
- #endif /* _ASM_X86_THREAD_INFO_H */
+ #ifdef CONFIG_COMPAT
diff --git a/arch/x86/include/asm/tlbflush.h b/arch/x86/include/asm/tlbflush.h
-index dee8a70..270877a 100644
+index 6fa8594..30950f3 100644
--- a/arch/x86/include/asm/tlbflush.h
+++ b/arch/x86/include/asm/tlbflush.h
@@ -89,7 +89,9 @@ static inline void cr4_set_bits(unsigned long mask)
@@ -24731,7 +27629,7 @@ index 9217ab1..90c91bf 100644
),
TP_printk("x86/fpu: %p fpregs_active: %d fpstate_active: %d counter: %d xfeatures: %llx xcomp_bv: %llx",
diff --git a/arch/x86/include/asm/traps.h b/arch/x86/include/asm/traps.h
-index c3496619..9b914af 100644
+index 01fd0a7..0ad067b 100644
--- a/arch/x86/include/asm/traps.h
+++ b/arch/x86/include/asm/traps.h
@@ -10,7 +10,7 @@
@@ -24759,15 +27657,17 @@ index c3496619..9b914af 100644
#ifdef CONFIG_TRACING
asmlinkage void trace_page_fault(void);
#define trace_stack_segment stack_segment
-@@ -54,6 +63,7 @@ asmlinkage void trace_page_fault(void);
+@@ -54,6 +63,9 @@ asmlinkage void trace_page_fault(void);
#define trace_alignment_check alignment_check
#define trace_simd_coprocessor_error simd_coprocessor_error
#define trace_async_page_fault async_page_fault
+#define trace_refcount_error refcount_error
++#define trace_rap_call_error rap_call_error
++#define trace_rap_ret_error rap_ret_error
#endif
dotraplinkage void do_divide_error(struct pt_regs *, long);
-@@ -107,7 +117,7 @@ extern int panic_on_unrecovered_nmi;
+@@ -107,7 +119,7 @@ extern int panic_on_unrecovered_nmi;
void math_emulate(struct math_emu_info *);
#ifndef CONFIG_X86_32
@@ -24776,7 +27676,16 @@ index c3496619..9b914af 100644
asmlinkage void smp_threshold_interrupt(void);
asmlinkage void smp_deferred_error_interrupt(void);
#endif
-@@ -139,6 +149,9 @@ enum {
+@@ -117,7 +129,7 @@ extern void ist_exit(struct pt_regs *regs);
+ extern void ist_begin_non_atomic(struct pt_regs *regs);
+ extern void ist_end_non_atomic(void);
+
+-#ifdef CONFIG_VMAP_STACK
++#if defined(CONFIG_VMAP_STACK) || defined(CONFIG_GRKERNSEC_KSTACKOVERFLOW)
+ void __noreturn handle_stack_overflow(const char *message,
+ struct pt_regs *regs,
+ unsigned long fault_address);
+@@ -145,6 +157,9 @@ enum {
X86_TRAP_AC, /* 17, Alignment Check */
X86_TRAP_MC, /* 18, Machine Check */
X86_TRAP_XF, /* 19, SIMD Floating-Point Exception */
@@ -24787,78 +27696,44 @@ index c3496619..9b914af 100644
};
diff --git a/arch/x86/include/asm/uaccess.h b/arch/x86/include/asm/uaccess.h
-index 2131c4c..120dcaa 100644
+index faf3687..7624c7a 100644
--- a/arch/x86/include/asm/uaccess.h
+++ b/arch/x86/include/asm/uaccess.h
-@@ -8,6 +8,7 @@
+@@ -8,6 +8,8 @@
#include <linux/kasan-checks.h>
#include <linux/thread_info.h>
#include <linux/string.h>
+#include <linux/spinlock.h>
++#include <linux/sched.h>
#include <asm/asm.h>
#include <asm/page.h>
#include <asm/smap.h>
-@@ -29,12 +30,17 @@
- #define USER_DS MAKE_MM_SEG(TASK_SIZE_MAX)
+@@ -31,7 +33,12 @@
#define get_ds() (KERNEL_DS)
--#define get_fs() (current->thread.addr_limit)
--#define set_fs(x) (current->thread.addr_limit = (x))
-+#define get_fs() (current_thread_info()->addr_limit)
+ #define get_fs() (current->thread.addr_limit)
+#if defined(CONFIG_X86_32) && defined(CONFIG_PAX_MEMORY_UDEREF)
+void __set_fs(mm_segment_t x);
+void set_fs(mm_segment_t x);
+#else
-+#define set_fs(x) (current_thread_info()->addr_limit = (x))
+ #define set_fs(x) (current->thread.addr_limit = (x))
+#endif
#define segment_eq(a, b) ((a).seg == (b).seg)
--#define user_addr_max() (current->thread.addr_limit.seg)
-+#define user_addr_max() (current_thread_info()->addr_limit.seg)
- #define __addr_ok(addr) \
- ((unsigned long __force)(addr) < user_addr_max())
-
-@@ -87,8 +93,36 @@ static inline bool __chk_range_not_ok(unsigned long addr, unsigned long size, un
+@@ -88,8 +95,10 @@ static inline bool __chk_range_not_ok(unsigned long addr, unsigned long size, un
* checks that the pointer is in the user space range - after calling
* this function, memory access functions may still return -EFAULT.
*/
--#define access_ok(type, addr, size) \
++#define access_ok_noprefault(type, addr, size) \
++ likely(!__range_not_ok((addr), (size), user_addr_max()))
+ #define access_ok(type, addr, size) \
- likely(!__range_not_ok(addr, size, user_addr_max()))
-+extern int _cond_resched(void);
-+#define access_ok_noprefault(type, addr, size) (likely(!__range_not_ok(addr, size, user_addr_max())))
-+#define access_ok(type, addr, size) \
-+({ \
-+ unsigned long __size = size; \
-+ unsigned long __addr = (unsigned long)addr; \
-+ bool __ret_ao = __range_not_ok(__addr, __size, user_addr_max()) == 0;\
-+ if (__ret_ao && __size < 256 * PAGE_SIZE) { \
-+ unsigned long __addr_ao = __addr & PAGE_MASK; \
-+ unsigned long __end_ao = __addr + __size - 1; \
-+ if (unlikely((__end_ao ^ __addr_ao) & PAGE_MASK)) { \
-+ while (__addr_ao <= __end_ao) { \
-+ char __c_ao; \
-+ __addr_ao += PAGE_SIZE; \
-+ if (__size > PAGE_SIZE) \
-+ _cond_resched(); \
-+ if (__get_user(__c_ao, (char __user *)__addr)) \
-+ break; \
-+ if ((type) != VERIFY_WRITE) { \
-+ __addr = __addr_ao; \
-+ continue; \
-+ } \
-+ if (__put_user(__c_ao, (char __user *)__addr)) \
-+ break; \
-+ __addr = __addr_ao; \
-+ } \
-+ } \
-+ } \
-+ __ret_ao; \
-+})
++ __access_ok(type, (unsigned long)(addr), (size_t)(size))
/*
- * The exception table consists of triples of addresses relative to the
-@@ -142,15 +176,27 @@ extern int __get_user_4(void);
+ * These are the main single-value transfer routines. They automatically
+@@ -112,15 +121,27 @@ extern int __get_user_4(void);
extern int __get_user_8(void);
extern int __get_user_bad(void);
@@ -24891,7 +27766,7 @@ index 2131c4c..120dcaa 100644
/**
* get_user: - Get a simple variable from user space.
-@@ -201,14 +247,12 @@ __typeof__(__builtin_choose_expr(sizeof(x) > sizeof(0UL), 0ULL, 0UL))
+@@ -171,14 +192,12 @@ __typeof__(__builtin_choose_expr(sizeof(x) > sizeof(0UL), 0ULL, 0UL))
asm volatile("call __put_user_" #size : "=a" (__ret_pu) \
: "0" ((typeof(*(ptr)))(x)), "c" (ptr) : "ebx")
@@ -24909,7 +27784,7 @@ index 2131c4c..120dcaa 100644
".section .fixup,\"ax\"\n" \
"4: movl %3,%0\n" \
" jmp 3b\n" \
-@@ -220,9 +264,9 @@ __typeof__(__builtin_choose_expr(sizeof(x) > sizeof(0UL), 0ULL, 0UL))
+@@ -190,9 +209,9 @@ __typeof__(__builtin_choose_expr(sizeof(x) > sizeof(0UL), 0ULL, 0UL))
#define __put_user_asm_ex_u64(x, addr) \
asm volatile("\n" \
@@ -24922,7 +27797,7 @@ index 2131c4c..120dcaa 100644
_ASM_EXTABLE_EX(1b, 2b) \
_ASM_EXTABLE_EX(2b, 3b) \
: : "A" (x), "r" (addr))
-@@ -269,10 +313,10 @@ extern void __put_user_8(void);
+@@ -239,10 +258,10 @@ extern void __put_user_8(void);
#define put_user(x, ptr) \
({ \
int __ret_pu; \
@@ -24935,7 +27810,7 @@ index 2131c4c..120dcaa 100644
switch (sizeof(*(ptr))) { \
case 1: \
__put_user_x(1, __pu_val, ptr, __ret_pu); \
-@@ -345,10 +389,9 @@ do { \
+@@ -315,10 +334,9 @@ do { \
#define __get_user_asm_u64(x, ptr, retval, errret) \
({ \
__typeof__(ptr) __ptr = (ptr); \
@@ -24948,7 +27823,7 @@ index 2131c4c..120dcaa 100644
".section .fixup,\"ax\"\n" \
"4: mov %4,%0\n" \
" xorl %%eax,%%eax\n" \
-@@ -376,10 +419,10 @@ do { \
+@@ -346,10 +364,10 @@ do { \
__chk_user_ptr(ptr); \
switch (size) { \
case 1: \
@@ -24961,7 +27836,7 @@ index 2131c4c..120dcaa 100644
break; \
case 4: \
__get_user_asm(x, ptr, retval, "l", "k", "=r", errret); \
-@@ -393,17 +436,19 @@ do { \
+@@ -363,17 +381,19 @@ do { \
} while (0)
#define __get_user_asm(x, addr, err, itype, rtype, ltype, errret) \
@@ -24985,7 +27860,7 @@ index 2131c4c..120dcaa 100644
/*
* This doesn't do __uaccess_begin/end - the exception handling
-@@ -414,10 +459,10 @@ do { \
+@@ -384,10 +404,10 @@ do { \
__chk_user_ptr(ptr); \
switch (size) { \
case 1: \
@@ -24998,7 +27873,7 @@ index 2131c4c..120dcaa 100644
break; \
case 4: \
__get_user_asm_ex(x, ptr, "l", "k", "=r"); \
-@@ -431,10 +476,10 @@ do { \
+@@ -401,10 +421,10 @@ do { \
} while (0)
#define __get_user_asm_ex(x, addr, itype, rtype, ltype) \
@@ -25011,7 +27886,7 @@ index 2131c4c..120dcaa 100644
" jmp 2b\n" \
".previous\n" \
_ASM_EXTABLE_EX(1b, 3b) \
-@@ -456,13 +501,24 @@ do { \
+@@ -426,13 +446,24 @@ do { \
__uaccess_begin(); \
__get_user_size(__gu_val, (ptr), (size), __gu_err, -EFAULT); \
__uaccess_end(); \
@@ -25038,7 +27913,7 @@ index 2131c4c..120dcaa 100644
/*
* Tell gcc we read from memory instead of writing: this is because
-@@ -470,8 +526,9 @@ struct __large_struct { unsigned long buf[100]; };
+@@ -440,8 +471,9 @@ struct __large_struct { unsigned long buf[100]; };
* aliasing issues.
*/
#define __put_user_asm(x, addr, err, itype, rtype, ltype, errret) \
@@ -25049,7 +27924,7 @@ index 2131c4c..120dcaa 100644
"2:\n" \
".section .fixup,\"ax\"\n" \
"3: mov %3,%0\n" \
-@@ -479,10 +536,11 @@ struct __large_struct { unsigned long buf[100]; };
+@@ -449,10 +481,11 @@ struct __large_struct { unsigned long buf[100]; };
".previous\n" \
_ASM_EXTABLE(1b, 3b) \
: "=r"(err) \
@@ -25063,7 +27938,7 @@ index 2131c4c..120dcaa 100644
"2:\n" \
_ASM_EXTABLE_EX(1b, 2b) \
: : ltype(x), "m" (__m(addr)))
-@@ -522,8 +580,12 @@ struct __large_struct { unsigned long buf[100]; };
+@@ -492,8 +525,12 @@ struct __large_struct { unsigned long buf[100]; };
* On error, the variable @x is set to zero.
*/
@@ -25076,7 +27951,7 @@ index 2131c4c..120dcaa 100644
/**
* __put_user: - Write a simple value into user space, with less checking.
-@@ -546,8 +608,12 @@ struct __large_struct { unsigned long buf[100]; };
+@@ -516,8 +553,12 @@ struct __large_struct { unsigned long buf[100]; };
* Returns zero on success, or -EFAULT on error.
*/
@@ -25089,7 +27964,7 @@ index 2131c4c..120dcaa 100644
#define __get_user_unaligned __get_user
#define __put_user_unaligned __put_user
-@@ -565,7 +631,7 @@ struct __large_struct { unsigned long buf[100]; };
+@@ -535,7 +576,7 @@ struct __large_struct { unsigned long buf[100]; };
#define get_user_ex(x, ptr) do { \
unsigned long __gue_val; \
__get_user_size_ex((__gue_val), (ptr), (sizeof(*(ptr)))); \
@@ -25098,7 +27973,7 @@ index 2131c4c..120dcaa 100644
} while (0)
#define put_user_try uaccess_try
-@@ -583,7 +649,7 @@ extern __must_check long strlen_user(const char __user *str);
+@@ -553,7 +594,7 @@ extern __must_check long strlen_user(const char __user *str);
extern __must_check long strnlen_user(const char __user *str, long n);
unsigned long __must_check clear_user(void __user *mem, unsigned long len);
@@ -25107,7 +27982,7 @@ index 2131c4c..120dcaa 100644
extern void __cmpxchg_wrong_size(void)
__compiletime_error("Bad argument size for cmpxchg");
-@@ -591,22 +657,22 @@ extern void __cmpxchg_wrong_size(void)
+@@ -561,22 +602,22 @@ extern void __cmpxchg_wrong_size(void)
#define __user_atomic_cmpxchg_inatomic(uval, ptr, old, new, size) \
({ \
int __ret = 0; \
@@ -25135,7 +28010,7 @@ index 2131c4c..120dcaa 100644
: "i" (-EFAULT), "q" (__new), "1" (__old) \
: "memory" \
); \
-@@ -615,14 +681,14 @@ extern void __cmpxchg_wrong_size(void)
+@@ -585,14 +626,14 @@ extern void __cmpxchg_wrong_size(void)
case 2: \
{ \
asm volatile("\n" \
@@ -25152,7 +28027,7 @@ index 2131c4c..120dcaa 100644
: "i" (-EFAULT), "r" (__new), "1" (__old) \
: "memory" \
); \
-@@ -631,14 +697,14 @@ extern void __cmpxchg_wrong_size(void)
+@@ -601,14 +642,14 @@ extern void __cmpxchg_wrong_size(void)
case 4: \
{ \
asm volatile("\n" \
@@ -25169,7 +28044,7 @@ index 2131c4c..120dcaa 100644
: "i" (-EFAULT), "r" (__new), "1" (__old) \
: "memory" \
); \
-@@ -650,14 +716,14 @@ extern void __cmpxchg_wrong_size(void)
+@@ -620,14 +661,14 @@ extern void __cmpxchg_wrong_size(void)
__cmpxchg_wrong_size(); \
\
asm volatile("\n" \
@@ -25186,7 +28061,7 @@ index 2131c4c..120dcaa 100644
: "i" (-EFAULT), "r" (__new), "1" (__old) \
: "memory" \
); \
-@@ -690,17 +756,6 @@ extern struct movsl_mask {
+@@ -660,17 +701,6 @@ extern struct movsl_mask {
#define ARCH_HAS_NOCACHE_UACCESS 1
@@ -25204,7 +28079,7 @@ index 2131c4c..120dcaa 100644
extern void __compiletime_error("usercopy buffer size is too small")
__bad_copy_user(void);
-@@ -709,22 +764,30 @@ static inline void copy_user_overflow(int size, unsigned long count)
+@@ -679,22 +709,30 @@ static inline void copy_user_overflow(int size, unsigned long count)
WARN(1, "Buffer overflow detected (%d < %lu)!\n", size, count);
}
@@ -25243,7 +28118,7 @@ index 2131c4c..120dcaa 100644
return n;
}
-@@ -732,19 +795,19 @@ copy_from_user(void *to, const void __user *from, unsigned long n)
+@@ -702,19 +740,19 @@ copy_from_user(void *to, const void __user *from, unsigned long n)
static __always_inline unsigned long __must_check
copy_to_user(void __user *to, const void *from, unsigned long n)
{
@@ -25345,7 +28220,7 @@ index 7d3bdd1..67d81f6 100644
#endif /* _ASM_X86_UACCESS_32_H */
diff --git a/arch/x86/include/asm/uaccess_64.h b/arch/x86/include/asm/uaccess_64.h
-index 673059a..286a5bf 100644
+index 673059a..0ec8310 100644
--- a/arch/x86/include/asm/uaccess_64.h
+++ b/arch/x86/include/asm/uaccess_64.h
@@ -11,6 +11,7 @@
@@ -25356,9 +28231,18 @@ index 673059a..286a5bf 100644
/*
* Copy To/From Userspace
-@@ -24,8 +25,8 @@ copy_user_generic_string(void *to, const void *from, unsigned len);
+@@ -18,14 +19,14 @@
+
+ /* Handles exceptions in both to and from, but doesn't do access_ok */
+ __must_check unsigned long
+-copy_user_enhanced_fast_string(void *to, const void *from, unsigned len);
++copy_user_enhanced_fast_string(void *to, const void *from, unsigned long len);
__must_check unsigned long
- copy_user_generic_unrolled(void *to, const void *from, unsigned len);
+-copy_user_generic_string(void *to, const void *from, unsigned len);
++copy_user_generic_string(void *to, const void *from, unsigned long len);
+ __must_check unsigned long
+-copy_user_generic_unrolled(void *to, const void *from, unsigned len);
++copy_user_generic_unrolled(void *to, const void *from, unsigned long len);
-static __always_inline __must_check unsigned long
-copy_user_generic(void *to, const void *from, unsigned len)
@@ -25708,7 +28592,7 @@ index 673059a..286a5bf 100644
unsigned long
-copy_user_handle_tail(char *to, char *from, unsigned len);
-+copy_user_handle_tail(char __user *to, char __user *from, unsigned long len) __size_overflow(3);
++copy_user_handle_tail(void __user *to, const void __user *from, unsigned long len) __size_overflow(3);
#endif /* _ASM_X86_UACCESS_64_H */
diff --git a/arch/x86/include/asm/word-at-a-time.h b/arch/x86/include/asm/word-at-a-time.h
@@ -25788,23 +28672,22 @@ index 9dafe59..0293c1d 100644
#define BIOS_ROM_BASE 0xffe00000
diff --git a/arch/x86/kernel/Makefile b/arch/x86/kernel/Makefile
-index 0503f5b..f00b6e8 100644
+index 79076d7..76acc70 100644
--- a/arch/x86/kernel/Makefile
+++ b/arch/x86/kernel/Makefile
-@@ -46,7 +46,7 @@ obj-$(CONFIG_MODIFY_LDT_SYSCALL) += ldt.o
+@@ -46,6 +46,7 @@ obj-$(CONFIG_MODIFY_LDT_SYSCALL) += ldt.o
obj-y += setup.o x86_init.o i8259.o irqinit.o jump_label.o
obj-$(CONFIG_IRQ_WORK) += irq_work.o
obj-y += probe_roms.o
--obj-$(CONFIG_X86_32) += i386_ksyms_32.o
-+obj-$(CONFIG_X86_32) += sys_i386_32.o i386_ksyms_32.o
- obj-$(CONFIG_X86_64) += sys_x86_64.o x8664_ksyms_64.o
- obj-$(CONFIG_X86_64) += mcount_64.o
++obj-$(CONFIG_X86_32) += sys_i386_32.o
+ obj-$(CONFIG_X86_64) += sys_x86_64.o mcount_64.o
obj-$(CONFIG_X86_ESPFIX64) += espfix_64.o
+ obj-$(CONFIG_SYSFS) += ksysfs.o
diff --git a/arch/x86/kernel/acpi/boot.c b/arch/x86/kernel/acpi/boot.c
-index d99ca57..b63aafc 100644
+index 931ced8..6268c62 100644
--- a/arch/x86/kernel/acpi/boot.c
+++ b/arch/x86/kernel/acpi/boot.c
-@@ -1358,7 +1358,7 @@ static void __init acpi_reduced_hw_init(void)
+@@ -1345,7 +1345,7 @@ static void __init acpi_reduced_hw_init(void)
* If your system is blacklisted here, but you find that acpi=force
* works for you, please contact linux-acpi@vger.kernel.org
*/
@@ -25813,7 +28696,7 @@ index d99ca57..b63aafc 100644
/*
* Boxes that need ACPI disabled
*/
-@@ -1433,7 +1433,7 @@ static struct dmi_system_id __initdata acpi_dmi_table[] = {
+@@ -1420,7 +1420,7 @@ static struct dmi_system_id __initdata acpi_dmi_table[] = {
};
/* second table for DMI checks that should run after early-quirks */
@@ -25823,13 +28706,13 @@ index d99ca57..b63aafc 100644
* HP laptops which use a DSDT reporting as HP/SB400/10000,
* which includes some code which overrides all temperature
diff --git a/arch/x86/kernel/acpi/sleep.c b/arch/x86/kernel/acpi/sleep.c
-index adb3eaf..0eb666c 100644
+index 4858733..3353d988 100644
--- a/arch/x86/kernel/acpi/sleep.c
+++ b/arch/x86/kernel/acpi/sleep.c
@@ -100,8 +100,12 @@ int x86_acpi_suspend_lowlevel(void)
#else /* CONFIG_64BIT */
#ifdef CONFIG_SMP
- stack_start = (unsigned long)temp_stack + sizeof(temp_stack);
+ initial_stack = (unsigned long)temp_stack + sizeof(temp_stack);
+
+ pax_open_kernel();
early_gdt_descr.address =
@@ -25840,7 +28723,7 @@ index adb3eaf..0eb666c 100644
#endif
initial_code = (unsigned long)wakeup_long64;
diff --git a/arch/x86/kernel/acpi/wakeup_32.S b/arch/x86/kernel/acpi/wakeup_32.S
-index 0c26b1b..9120e26 100644
+index 0c26b1b..dcc0a4f 100644
--- a/arch/x86/kernel/acpi/wakeup_32.S
+++ b/arch/x86/kernel/acpi/wakeup_32.S
@@ -2,6 +2,7 @@
@@ -25867,16 +28750,49 @@ index 0c26b1b..9120e26 100644
bogus_magic:
jmp bogus_magic
-@@ -69,6 +68,7 @@ restore_registers:
+@@ -59,7 +58,7 @@ save_registers:
+ popl saved_context_eflags
+
+ movl $ret_point, saved_eip
+- ret
++ pax_ret save_registers
+
+
+ restore_registers:
+@@ -69,13 +68,14 @@ restore_registers:
movl saved_context_edi, %edi
pushl saved_context_eflags
popfl
+- ret
+ ASM_CLAC
- ret
++ pax_ret restore_registers
ENTRY(do_suspend_lowlevel)
+- call save_processor_state
+- call save_registers
++ pax_direct_call save_processor_state
++ pax_direct_call save_registers
+ pushl $3
+- call x86_acpi_enter_sleep_state
++ pax_direct_call x86_acpi_enter_sleep_state
+ addl $4, %esp
+
+ # In case of S3 failure, we'll emerge here. Jump
+@@ -83,9 +83,9 @@ ENTRY(do_suspend_lowlevel)
+ jmp ret_point
+ .p2align 4,,7
+ ret_point:
+- call restore_registers
+- call restore_processor_state
+- ret
++ pax_direct_call restore_registers
++ pax_direct_call restore_processor_state
++ pax_ret do_suspend_lowlevel
+
+ .data
+ ALIGN
diff --git a/arch/x86/kernel/acpi/wakeup_64.S b/arch/x86/kernel/acpi/wakeup_64.S
-index 169963f..d5caf11 100644
+index 169963f..55a72f5 100644
--- a/arch/x86/kernel/acpi/wakeup_64.S
+++ b/arch/x86/kernel/acpi/wakeup_64.S
@@ -6,6 +6,7 @@
@@ -25887,6 +28803,24 @@ index 169963f..d5caf11 100644
# Copyright 2003 Pavel Machek <pavel@suse.cz>, distribute under GPLv2
+@@ -43,7 +44,7 @@ ENTRY(do_suspend_lowlevel)
+ FRAME_BEGIN
+ subq $8, %rsp
+ xorl %eax, %eax
+- call save_processor_state
++ pax_direct_call save_processor_state
+
+ movq $saved_context, %rax
+ movq %rsp, pt_regs_sp(%rax)
+@@ -75,7 +76,7 @@ ENTRY(do_suspend_lowlevel)
+ addq $8, %rsp
+ movl $3, %edi
+ xorl %eax, %eax
+- call x86_acpi_enter_sleep_state
++ pax_direct_call x86_acpi_enter_sleep_state
+ /* in case something went wrong, restore the machine status and go on */
+ jmp .Lresume_point
+
@@ -93,6 +94,7 @@ ENTRY(do_suspend_lowlevel)
movq %rbx, %cr0
pushq pt_regs_flags(%rax)
@@ -25896,7 +28830,7 @@ index 169963f..d5caf11 100644
movq pt_regs_bp(%rax), %rbp
movq pt_regs_si(%rax), %rsi
diff --git a/arch/x86/kernel/alternative.c b/arch/x86/kernel/alternative.c
-index 5cb272a..d22cf79 100644
+index 5cb272a..5b3aa20 100644
--- a/arch/x86/kernel/alternative.c
+++ b/arch/x86/kernel/alternative.c
@@ -21,6 +21,7 @@
@@ -25939,7 +28873,7 @@ index 5cb272a..d22cf79 100644
u8 insnbuf[MAX_PATCH_LEN];
DPRINTK("alt table %p -> %p", start, end);
-@@ -380,46 +391,71 @@ void __init_or_module apply_alternatives(struct alt_instr *start,
+@@ -380,46 +391,81 @@ void __init_or_module apply_alternatives(struct alt_instr *start,
for (a = start; a < end; a++) {
int insnbuf_sz = 0;
@@ -26000,7 +28934,8 @@ index 5cb272a..d22cf79 100644
+ memcpy(insnbuf, vreplacement, a->replacementlen);
insnbuf_sz = a->replacementlen;
- /* 0xe8 is a relative jump; fix the offset. */
+- /* 0xe8 is a relative jump; fix the offset. */
++ /* 0xe8 is a call; fix the relative offset. */
if (*insnbuf == 0xe8 && a->replacementlen == 5) {
- *(s32 *)(insnbuf + 1) += replacement - instr;
+ *(s32 *)(insnbuf + 1) += vreplacement - instr;
@@ -26012,6 +28947,16 @@ index 5cb272a..d22cf79 100644
- if (a->replacementlen && is_jmp(replacement[0]))
- recompute_jump(a, instr, replacement, insnbuf);
++#ifdef CONFIG_PAX_RAP
++ /* 0xeb ... 0xe8 is a rap_call; fix the relative offset. */
++ if (*insnbuf == 0xeb && a->replacementlen == 5 + 3 + 8 + 2 && insnbuf[a->replacementlen - 5] == 0xe8) {
++ *(s32 *)(insnbuf + a->replacementlen - 4) += vreplacement - instr;
++ DPRINTK("Fix CALL offset: 0x%x, CALL 0x%lx",
++ *(s32 *)(insnbuf + a->replacementlen - 4),
++ (unsigned long)vinstr + *(s32 *)(insnbuf + a->replacementlen - 4) + 5);
++ }
++#endif
++
+ if (a->replacementlen && is_jmp(vreplacement[0]))
+ recompute_jump(a, instr, vreplacement, insnbuf);
@@ -26025,7 +28970,7 @@ index 5cb272a..d22cf79 100644
text_poke_early(instr, insnbuf, insnbuf_sz);
}
-@@ -435,10 +471,16 @@ static void alternatives_smp_lock(const s32 *start, const s32 *end,
+@@ -435,10 +481,16 @@ static void alternatives_smp_lock(const s32 *start, const s32 *end,
for (poff = start; poff < end; poff++) {
u8 *ptr = (u8 *)poff + *poff;
@@ -26043,7 +28988,7 @@ index 5cb272a..d22cf79 100644
text_poke(ptr, ((unsigned char []){0xf0}), 1);
}
mutex_unlock(&text_mutex);
-@@ -453,10 +495,16 @@ static void alternatives_smp_unlock(const s32 *start, const s32 *end,
+@@ -453,10 +505,16 @@ static void alternatives_smp_unlock(const s32 *start, const s32 *end,
for (poff = start; poff < end; poff++) {
u8 *ptr = (u8 *)poff + *poff;
@@ -26061,7 +29006,7 @@ index 5cb272a..d22cf79 100644
text_poke(ptr, ((unsigned char []){0x3E}), 1);
}
mutex_unlock(&text_mutex);
-@@ -545,7 +593,9 @@ void alternatives_enable_smp(void)
+@@ -545,7 +603,9 @@ void alternatives_enable_smp(void)
if (uniproc_patched) {
pr_info("switching to SMP code\n");
BUG_ON(num_online_cpus() != 1);
@@ -26071,7 +29016,7 @@ index 5cb272a..d22cf79 100644
clear_cpu_cap(&cpu_data(0), X86_FEATURE_UP);
list_for_each_entry(mod, &smp_alt_modules, next)
alternatives_smp_lock(mod->locks, mod->locks_end,
-@@ -593,7 +643,7 @@ void __init_or_module apply_paravirt(struct paravirt_patch_site *start,
+@@ -593,7 +653,7 @@ void __init_or_module apply_paravirt(struct paravirt_patch_site *start,
BUG_ON(p->len > MAX_PATCH_LEN);
/* prep the buffer with the original instructions */
@@ -26080,7 +29025,7 @@ index 5cb272a..d22cf79 100644
used = pv_init_ops.patch(p->instrtype, p->clobbers, insnbuf,
(unsigned long)p->instr, p->len);
-@@ -640,7 +690,7 @@ void __init alternative_instructions(void)
+@@ -640,7 +700,7 @@ void __init alternative_instructions(void)
if (!uniproc_patched || num_possible_cpus() == 1)
free_init_pages("SMP alternatives",
(unsigned long)__smp_locks,
@@ -26089,7 +29034,7 @@ index 5cb272a..d22cf79 100644
#endif
apply_paravirt(__parainstructions, __parainstructions_end);
-@@ -661,13 +711,17 @@ void __init alternative_instructions(void)
+@@ -661,13 +721,17 @@ void __init alternative_instructions(void)
* instructions. And on the local CPU you need to be protected again NMI or MCE
* handlers seeing an inconsistent instruction while you patch.
*/
@@ -26109,7 +29054,7 @@ index 5cb272a..d22cf79 100644
local_irq_restore(flags);
/* Could also do a CLFLUSH here to speed up CPU recovery; but
that causes hangs on some VIA CPUs. */
-@@ -689,20 +743,29 @@ void *__init_or_module text_poke_early(void *addr, const void *opcode,
+@@ -689,20 +753,29 @@ void *__init_or_module text_poke_early(void *addr, const void *opcode,
*/
void *text_poke(void *addr, const void *opcode, size_t len)
{
@@ -26146,7 +29091,7 @@ index 5cb272a..d22cf79 100644
local_irq_save(flags);
set_fixmap(FIX_TEXT_POKE0, page_to_phys(pages[0]));
if (pages[1])
-@@ -719,6 +782,7 @@ void *text_poke(void *addr, const void *opcode, size_t len)
+@@ -719,6 +792,7 @@ void *text_poke(void *addr, const void *opcode, size_t len)
for (i = 0; i < len; i++)
BUG_ON(((char *)addr)[i] != ((char *)opcode)[i]);
local_irq_restore(flags);
@@ -26154,7 +29099,7 @@ index 5cb272a..d22cf79 100644
return addr;
}
-@@ -772,7 +836,7 @@ int poke_int3_handler(struct pt_regs *regs)
+@@ -772,7 +846,7 @@ int poke_int3_handler(struct pt_regs *regs)
*/
void *text_poke_bp(void *addr, const void *opcode, size_t len, void *handler)
{
@@ -26164,7 +29109,7 @@ index 5cb272a..d22cf79 100644
bp_int3_handler = handler;
bp_int3_addr = (u8 *)addr + sizeof(int3);
diff --git a/arch/x86/kernel/apic/apic.c b/arch/x86/kernel/apic/apic.c
-index 076c315..88957c6 100644
+index f223491..9083344 100644
--- a/arch/x86/kernel/apic/apic.c
+++ b/arch/x86/kernel/apic/apic.c
@@ -181,7 +181,7 @@ int first_system_vector = FIRST_SYSTEM_VECTOR;
@@ -26176,7 +29121,7 @@ index 076c315..88957c6 100644
int pic_mode;
-@@ -1905,7 +1905,7 @@ static void __smp_error_interrupt(struct pt_regs *regs)
+@@ -1904,7 +1904,7 @@ static void __smp_error_interrupt(struct pt_regs *regs)
apic_write(APIC_ESR, 0);
v = apic_read(APIC_ESR);
ack_APIC_irq();
@@ -26185,65 +29130,8 @@ index 076c315..88957c6 100644
apic_printk(APIC_DEBUG, KERN_DEBUG "APIC error on CPU%d: %02x",
smp_processor_id(), v);
-diff --git a/arch/x86/kernel/apic/apic_flat_64.c b/arch/x86/kernel/apic/apic_flat_64.c
-index 5b2ae10..b3551c0 100644
---- a/arch/x86/kernel/apic/apic_flat_64.c
-+++ b/arch/x86/kernel/apic/apic_flat_64.c
-@@ -25,7 +25,7 @@
- static struct apic apic_physflat;
- static struct apic apic_flat;
-
--struct apic __read_mostly *apic = &apic_flat;
-+struct apic *apic __read_only = &apic_flat;
- EXPORT_SYMBOL_GPL(apic);
-
- static int flat_acpi_madt_oem_check(char *oem_id, char *oem_table_id)
-@@ -154,7 +154,7 @@ static int flat_probe(void)
- return 1;
- }
-
--static struct apic apic_flat = {
-+static struct apic apic_flat __read_only = {
- .name = "flat",
- .probe = flat_probe,
- .acpi_madt_oem_check = flat_acpi_madt_oem_check,
-@@ -248,7 +248,7 @@ static int physflat_probe(void)
- return 0;
- }
-
--static struct apic apic_physflat = {
-+static struct apic apic_physflat __read_only = {
-
- .name = "physical flat",
- .probe = physflat_probe,
-diff --git a/arch/x86/kernel/apic/apic_noop.c b/arch/x86/kernel/apic/apic_noop.c
-index c05688b..a250c5a 100644
---- a/arch/x86/kernel/apic/apic_noop.c
-+++ b/arch/x86/kernel/apic/apic_noop.c
-@@ -108,7 +108,7 @@ static void noop_apic_write(u32 reg, u32 v)
- WARN_ON_ONCE(boot_cpu_has(X86_FEATURE_APIC) && !disable_apic);
- }
-
--struct apic apic_noop = {
-+struct apic apic_noop __read_only = {
- .name = "noop",
- .probe = noop_probe,
- .acpi_madt_oem_check = NULL,
-diff --git a/arch/x86/kernel/apic/bigsmp_32.c b/arch/x86/kernel/apic/bigsmp_32.c
-index 06dbaa4..817a7bb 100644
---- a/arch/x86/kernel/apic/bigsmp_32.c
-+++ b/arch/x86/kernel/apic/bigsmp_32.c
-@@ -142,7 +142,7 @@ static int probe_bigsmp(void)
- return dmi_bigsmp;
- }
-
--static struct apic apic_bigsmp = {
-+static struct apic apic_bigsmp __read_only = {
-
- .name = "bigsmp",
- .probe = probe_bigsmp,
diff --git a/arch/x86/kernel/apic/io_apic.c b/arch/x86/kernel/apic/io_apic.c
-index 48e6d84..fdefc57 100644
+index 7249f15..8e941bd 100644
--- a/arch/x86/kernel/apic/io_apic.c
+++ b/arch/x86/kernel/apic/io_apic.c
@@ -1683,7 +1683,7 @@ static unsigned int startup_ioapic_irq(struct irq_data *data)
@@ -26273,7 +29161,7 @@ index 48e6d84..fdefc57 100644
.name = "IO-APIC",
.irq_startup = startup_ioapic_irq,
.irq_mask = mask_ioapic_irq,
-@@ -1879,7 +1879,7 @@ static struct irq_chip ioapic_chip __read_mostly = {
+@@ -1880,7 +1880,7 @@ static struct irq_chip ioapic_chip __read_mostly = {
.flags = IRQCHIP_SKIP_SET_WAKE,
};
@@ -26282,7 +29170,7 @@ index 48e6d84..fdefc57 100644
.name = "IR-IO-APIC",
.irq_startup = startup_ioapic_irq,
.irq_mask = mask_ioapic_irq,
-@@ -1937,7 +1937,7 @@ static void ack_lapic_irq(struct irq_data *data)
+@@ -1939,7 +1939,7 @@ static void ack_lapic_irq(struct irq_data *data)
ack_APIC_irq();
}
@@ -26292,40 +29180,27 @@ index 48e6d84..fdefc57 100644
.irq_mask = mask_lapic_irq,
.irq_unmask = unmask_lapic_irq,
diff --git a/arch/x86/kernel/apic/msi.c b/arch/x86/kernel/apic/msi.c
-index ade2532..5fc7f4f9 100644
+index 015bbf3..77db804 100644
--- a/arch/x86/kernel/apic/msi.c
+++ b/arch/x86/kernel/apic/msi.c
@@ -269,7 +269,7 @@ static void hpet_msi_write_msg(struct irq_data *data, struct msi_msg *msg)
hpet_msi_write(irq_data_get_irq_handler_data(data), msg);
}
--static struct irq_chip hpet_msi_controller = {
-+static irq_chip_no_const hpet_msi_controller __read_only = {
+-static struct irq_chip hpet_msi_controller __ro_after_init = {
++static irq_chip_no_const hpet_msi_controller __ro_after_init = {
.name = "HPET-MSI",
.irq_unmask = hpet_msi_unmask,
.irq_mask = hpet_msi_mask,
-diff --git a/arch/x86/kernel/apic/probe_32.c b/arch/x86/kernel/apic/probe_32.c
-index 5630962..0ed042c 100644
---- a/arch/x86/kernel/apic/probe_32.c
-+++ b/arch/x86/kernel/apic/probe_32.c
-@@ -72,7 +72,7 @@ static int probe_default(void)
- return 1;
- }
-
--static struct apic apic_default = {
-+static struct apic apic_default __read_only = {
-
- .name = "default",
- .probe = probe_default,
-@@ -126,7 +126,7 @@ static struct apic apic_default = {
-
- apic_driver(apic_default);
-
--struct apic *apic = &apic_default;
-+struct apic *apic __read_only = &apic_default;
- EXPORT_SYMBOL_GPL(apic);
+@@ -315,7 +315,7 @@ static struct msi_domain_info hpet_msi_domain_info = {
+ .chip = &hpet_msi_controller,
+ };
- static int cmdline_apic __initdata;
+-struct irq_domain *hpet_create_irq_domain(int hpet_id)
++__init struct irq_domain *hpet_create_irq_domain(int hpet_id)
+ {
+ struct irq_domain *parent;
+ struct irq_alloc_info info;
diff --git a/arch/x86/kernel/apic/vector.c b/arch/x86/kernel/apic/vector.c
index 5d30c5e..3c83cc4 100644
--- a/arch/x86/kernel/apic/vector.c
@@ -26346,47 +29221,8 @@ index 5d30c5e..3c83cc4 100644
void unlock_vector_lock(void)
{
raw_spin_unlock(&vector_lock);
-diff --git a/arch/x86/kernel/apic/x2apic_cluster.c b/arch/x86/kernel/apic/x2apic_cluster.c
-index 54f35d9..d752bd5 100644
---- a/arch/x86/kernel/apic/x2apic_cluster.c
-+++ b/arch/x86/kernel/apic/x2apic_cluster.c
-@@ -227,7 +227,7 @@ static void cluster_vector_allocation_domain(int cpu, struct cpumask *retmask,
- cpumask_and(retmask, mask, per_cpu(cpus_in_cluster, cpu));
- }
-
--static struct apic apic_x2apic_cluster = {
-+static struct apic apic_x2apic_cluster __read_only = {
-
- .name = "cluster x2apic",
- .probe = x2apic_cluster_probe,
-diff --git a/arch/x86/kernel/apic/x2apic_phys.c b/arch/x86/kernel/apic/x2apic_phys.c
-index 4f13f54f..96e4431 100644
---- a/arch/x86/kernel/apic/x2apic_phys.c
-+++ b/arch/x86/kernel/apic/x2apic_phys.c
-@@ -98,7 +98,7 @@ static int x2apic_phys_probe(void)
- return apic == &apic_x2apic_phys;
- }
-
--static struct apic apic_x2apic_phys = {
-+static struct apic apic_x2apic_phys __read_only = {
-
- .name = "physical x2apic",
- .probe = x2apic_phys_probe,
-diff --git a/arch/x86/kernel/apic/x2apic_uv_x.c b/arch/x86/kernel/apic/x2apic_uv_x.c
-index cb0673c..dc976d7 100644
---- a/arch/x86/kernel/apic/x2apic_uv_x.c
-+++ b/arch/x86/kernel/apic/x2apic_uv_x.c
-@@ -560,7 +560,7 @@ static int uv_probe(void)
- return apic == &apic_x2apic_uv_x;
- }
-
--static struct apic __refdata apic_x2apic_uv_x = {
-+static struct apic apic_x2apic_uv_x __read_only = {
-
- .name = "UV large system",
- .probe = uv_probe,
diff --git a/arch/x86/kernel/apm_32.c b/arch/x86/kernel/apm_32.c
-index c7364bd..20cd21a 100644
+index 51287cd..24489b3 100644
--- a/arch/x86/kernel/apm_32.c
+++ b/arch/x86/kernel/apm_32.c
@@ -432,7 +432,7 @@ static DEFINE_MUTEX(apm_mutex);
@@ -26444,7 +29280,7 @@ index c7364bd..20cd21a 100644
put_cpu();
return error;
}
-@@ -2039,7 +2053,7 @@ static int __init swab_apm_power_in_minutes(const struct dmi_system_id *d)
+@@ -2042,7 +2056,7 @@ static int __init swab_apm_power_in_minutes(const struct dmi_system_id *d)
return 0;
}
@@ -26453,7 +29289,7 @@ index c7364bd..20cd21a 100644
{
print_if_true,
KERN_WARNING "IBM T23 - BIOS 1.03b+ and controller firmware 1.02+ may be needed for Linux APM.",
-@@ -2349,12 +2363,15 @@ static int __init apm_init(void)
+@@ -2352,12 +2366,15 @@ static int __init apm_init(void)
* code to that CPU.
*/
gdt = get_cpu_gdt_table(0);
@@ -26470,23 +29306,29 @@ index c7364bd..20cd21a 100644
proc_create("apm", 0, NULL, &apm_file_ops);
diff --git a/arch/x86/kernel/asm-offsets.c b/arch/x86/kernel/asm-offsets.c
-index 2bd5c6f..4907fd0 100644
+index c62e015..2abc97c 100644
--- a/arch/x86/kernel/asm-offsets.c
+++ b/arch/x86/kernel/asm-offsets.c
-@@ -31,9 +31,11 @@ void common(void) {
+@@ -30,6 +30,9 @@
+ void common(void) {
BLANK();
- OFFSET(TI_flags, thread_info, flags);
- OFFSET(TI_status, thread_info, status);
-+ OFFSET(TI_lowest_stack, thread_info, lowest_stack);
-+ DEFINE(TI_task_thread_sp0, offsetof(struct task_struct, thread.sp0) - offsetof(struct task_struct, tinfo));
-
+ OFFSET(TASK_threadsp, task_struct, thread.sp);
++#ifdef CONFIG_PAX_RAP
++ OFFSET(TASK_stack, task_struct, stack);
++#endif
+ #ifdef CONFIG_CC_STACKPROTECTOR
+ OFFSET(TASK_stack_canary, task_struct, stack_canary);
+ #endif
+@@ -37,6 +40,8 @@ void common(void) {
BLANK();
-- OFFSET(TASK_addr_limit, task_struct, thread.addr_limit);
-+ OFFSET(TASK_addr_limit, task_struct, tinfo.addr_limit);
+ OFFSET(TASK_TI_flags, task_struct, thread_info.flags);
+ OFFSET(TASK_addr_limit, task_struct, thread.addr_limit);
++ OFFSET(TASK_lowest_stack, task_struct, thread.lowest_stack);
++ OFFSET(TASK_thread_sp0, task_struct, thread.sp0);
BLANK();
OFFSET(crypto_tfm_ctx_offset, crypto_tfm, __crt_ctx);
-@@ -68,8 +70,26 @@ void common(void) {
+@@ -71,8 +76,26 @@ void common(void) {
OFFSET(PV_CPU_iret, pv_cpu_ops, iret);
OFFSET(PV_CPU_read_cr0, pv_cpu_ops, read_cr0);
OFFSET(PV_MMU_read_cr2, pv_mmu_ops, read_cr2);
@@ -26513,7 +29355,7 @@ index 2bd5c6f..4907fd0 100644
#ifdef CONFIG_XEN
BLANK();
OFFSET(XEN_vcpu_info_mask, vcpu_info, evtchn_upcall_mask);
-@@ -88,4 +108,5 @@ void common(void) {
+@@ -91,4 +114,5 @@ void common(void) {
BLANK();
DEFINE(PTREGS_SIZE, sizeof(struct pt_regs));
@@ -26535,10 +29377,10 @@ index 4a8697f..8a13428 100644
obj-y += common.o
obj-y += rdrand.o
diff --git a/arch/x86/kernel/cpu/amd.c b/arch/x86/kernel/cpu/amd.c
-index 1e81a37..7a498d6 100644
+index 1d31672..542cba3 100644
--- a/arch/x86/kernel/cpu/amd.c
+++ b/arch/x86/kernel/cpu/amd.c
-@@ -788,7 +788,7 @@ static void init_amd(struct cpuinfo_x86 *c)
+@@ -794,7 +794,7 @@ static void init_amd(struct cpuinfo_x86 *c)
static unsigned int amd_size_cache(struct cpuinfo_x86 *c, unsigned int size)
{
/* AMD errata T13 (order #21922) */
@@ -26568,7 +29410,7 @@ index a972ac4..938c163 100644
/*
diff --git a/arch/x86/kernel/cpu/common.c b/arch/x86/kernel/cpu/common.c
-index bcc9ccc..84b8a82 100644
+index 023c7bf..1ce29b3 100644
--- a/arch/x86/kernel/cpu/common.c
+++ b/arch/x86/kernel/cpu/common.c
@@ -93,60 +93,6 @@ static const struct cpu_dev default_cpu = {
@@ -26652,8 +29494,8 @@ index bcc9ccc..84b8a82 100644
+static bool uderef_enabled __read_only = true;
+unsigned long pax_user_shadow_base __read_only;
+EXPORT_SYMBOL(pax_user_shadow_base);
-+extern char pax_enter_kernel_user[];
-+extern char pax_exit_kernel_user[];
++extern char patch_pax_enter_kernel_user[];
++extern char patch_pax_exit_kernel_user[];
+
+static int __init setup_pax_weakuderef(char *str)
+{
@@ -26681,8 +29523,8 @@ index bcc9ccc..84b8a82 100644
+ loadsegment(es, __KERNEL_DS);
+ loadsegment(ss, __KERNEL_DS);
+#else
-+ memcpy(pax_enter_kernel_user, (unsigned char []){0xc3}, 1);
-+ memcpy(pax_exit_kernel_user, (unsigned char []){0xc3}, 1);
++ memcpy(patch_pax_enter_kernel_user, (unsigned char []){0xc3}, 1);
++ memcpy(patch_pax_exit_kernel_user, (unsigned char []){0xc3}, 1);
+ clone_pgd_mask = ~(pgdval_t)0UL;
+ pax_user_shadow_base = 0UL;
+ setup_clear_cpu_cap(X86_FEATURE_PCIDUDEREF);
@@ -26762,7 +29604,7 @@ index bcc9ccc..84b8a82 100644
gdt_descr.size = GDT_SIZE - 1;
load_gdt(&gdt_descr);
/* Reload the per-cpu base */
-@@ -972,9 +1025,11 @@ static void x86_init_cache_qos(struct cpuinfo_x86 *c)
+@@ -973,9 +1026,11 @@ static void x86_init_cache_qos(struct cpuinfo_x86 *c)
* in case CQM bits really aren't there in this CPU.
*/
if (c != &boot_cpu_data) {
@@ -26774,7 +29616,7 @@ index bcc9ccc..84b8a82 100644
}
}
-@@ -1041,6 +1096,20 @@ static void identify_cpu(struct cpuinfo_x86 *c)
+@@ -1063,6 +1118,20 @@ static void identify_cpu(struct cpuinfo_x86 *c)
setup_smep(c);
setup_smap(c);
@@ -26795,7 +29637,7 @@ index bcc9ccc..84b8a82 100644
/*
* The vendor-specific functions might have changed features.
* Now we do "generic changes."
-@@ -1086,10 +1155,14 @@ static void identify_cpu(struct cpuinfo_x86 *c)
+@@ -1108,10 +1177,14 @@ static void identify_cpu(struct cpuinfo_x86 *c)
* executed, c == &boot_cpu_data.
*/
if (c != &boot_cpu_data) {
@@ -26810,7 +29652,7 @@ index bcc9ccc..84b8a82 100644
/* OR, i.e. replicate the bug flags */
for (i = NCAPINTS; i < NCAPINTS + NBUGINTS; i++)
c->x86_capability[i] |= boot_cpu_data.x86_capability[i];
-@@ -1121,7 +1194,7 @@ void enable_sep_cpu(void)
+@@ -1141,7 +1214,7 @@ void enable_sep_cpu(void)
return;
cpu = get_cpu();
@@ -26819,23 +29661,16 @@ index bcc9ccc..84b8a82 100644
/*
* We cache MSR_IA32_SYSENTER_CS's value in the TSS's ss1 field --
-@@ -1263,10 +1336,12 @@ static __init int setup_disablecpuid(char *arg)
- }
- __setup("clearcpuid=", setup_disablecpuid);
+@@ -1307,6 +1380,8 @@ EXPORT_PER_CPU_SYMBOL(current_task);
-+DEFINE_PER_CPU(struct thread_info *, current_tinfo) = &init_task.tinfo;
-+EXPORT_PER_CPU_SYMBOL(current_tinfo);
-+
- #ifdef CONFIG_X86_64
--struct desc_ptr idt_descr = { NR_VECTORS * 16 - 1, (unsigned long) idt_table };
--struct desc_ptr debug_idt_descr = { NR_VECTORS * 16 - 1,
-- (unsigned long) debug_idt_table };
-+struct desc_ptr idt_descr __read_only = { NR_VECTORS * 16 - 1, (unsigned long) idt_table };
-+const struct desc_ptr debug_idt_descr = { NR_VECTORS * 16 - 1, (unsigned long) debug_idt_table };
-
- DEFINE_PER_CPU_FIRST(union irq_stack_union,
- irq_stack_union) __aligned(PAGE_SIZE) __visible;
-@@ -1378,21 +1453,21 @@ EXPORT_PER_CPU_SYMBOL(current_task);
+ DEFINE_PER_CPU(char *, irq_stack_ptr) =
+ init_per_cpu_var(irq_stack_union.irq_stack) + IRQ_STACK_SIZE;
++DEFINE_PER_CPU(char *, irq_stack_ptr_lowmem) =
++ init_per_cpu_var(irq_stack_union.irq_stack) + IRQ_STACK_SIZE;
+
+ DEFINE_PER_CPU(unsigned int, irq_count) __visible = -1;
+
+@@ -1399,21 +1474,21 @@ EXPORT_PER_CPU_SYMBOL(current_task);
DEFINE_PER_CPU(int, __preempt_count) = INIT_PREEMPT_COUNT;
EXPORT_PER_CPU_SYMBOL(__preempt_count);
@@ -26864,7 +29699,7 @@ index bcc9ccc..84b8a82 100644
/*
* Clear all 6 debug registers:
*/
-@@ -1468,7 +1543,7 @@ void cpu_init(void)
+@@ -1489,7 +1564,7 @@ void cpu_init(void)
*/
load_ucode_ap();
@@ -26873,7 +29708,7 @@ index bcc9ccc..84b8a82 100644
oist = &per_cpu(orig_ist, cpu);
#ifdef CONFIG_NUMA
-@@ -1500,7 +1575,6 @@ void cpu_init(void)
+@@ -1521,7 +1596,6 @@ void cpu_init(void)
wrmsrl(MSR_KERNEL_GS_BASE, 0);
barrier();
@@ -26881,7 +29716,7 @@ index bcc9ccc..84b8a82 100644
x2apic_setup();
/*
-@@ -1552,7 +1626,7 @@ void cpu_init(void)
+@@ -1573,7 +1647,7 @@ void cpu_init(void)
{
int cpu = smp_processor_id();
struct task_struct *curr = current;
@@ -26978,10 +29813,10 @@ index de6626c..c84e8c1 100644
return &cache_private_group;
diff --git a/arch/x86/kernel/cpu/mcheck/mce.c b/arch/x86/kernel/cpu/mcheck/mce.c
-index 79d8ec8..ba9ae33 100644
+index a7fdf45..87c1a31 100644
--- a/arch/x86/kernel/cpu/mcheck/mce.c
+++ b/arch/x86/kernel/cpu/mcheck/mce.c
-@@ -47,6 +47,7 @@
+@@ -48,6 +48,7 @@
#include <asm/tlbflush.h>
#include <asm/mce.h>
#include <asm/msr.h>
@@ -26989,7 +29824,7 @@ index 79d8ec8..ba9ae33 100644
#include "mce-internal.h"
-@@ -209,8 +210,7 @@ static struct notifier_block mce_srao_nb;
+@@ -210,8 +211,7 @@ static struct notifier_block mce_srao_nb;
void mce_register_decode_chain(struct notifier_block *nb)
{
/* Ensure SRAO notifier has the highest priority in the decode chain. */
@@ -26999,7 +29834,7 @@ index 79d8ec8..ba9ae33 100644
atomic_notifier_chain_register(&x86_mce_decoder_chain, nb);
}
-@@ -262,7 +262,7 @@ static inline u32 smca_misc_reg(int bank)
+@@ -263,7 +263,7 @@ static inline u32 smca_misc_reg(int bank)
return MSR_AMD64_SMCA_MCx_MISC(bank);
}
@@ -27008,7 +29843,7 @@ index 79d8ec8..ba9ae33 100644
.ctl = ctl_reg,
.status = status_reg,
.addr = addr_reg,
-@@ -281,7 +281,7 @@ static void print_mce(struct mce *m)
+@@ -282,7 +282,7 @@ static void print_mce(struct mce *m)
!(m->mcgstatus & MCG_STATUS_EIPV) ? " !INEXACT!" : "",
m->cs, m->ip);
@@ -27017,7 +29852,7 @@ index 79d8ec8..ba9ae33 100644
print_symbol("{%s}", m->ip);
pr_cont("\n");
}
-@@ -314,10 +314,10 @@ static void print_mce(struct mce *m)
+@@ -322,10 +322,10 @@ static void print_mce(struct mce *m)
#define PANIC_TIMEOUT 5 /* 5 seconds */
@@ -27030,7 +29865,7 @@ index 79d8ec8..ba9ae33 100644
/* Panic in progress. Enable interrupts and wait for final IPI */
static void wait_for_panic(void)
-@@ -343,7 +343,7 @@ static void mce_panic(const char *msg, struct mce *final, char *exp)
+@@ -351,7 +351,7 @@ static void mce_panic(const char *msg, struct mce *final, char *exp)
/*
* Make sure only one CPU runs in machine check panic
*/
@@ -27039,7 +29874,7 @@ index 79d8ec8..ba9ae33 100644
wait_for_panic();
barrier();
-@@ -351,7 +351,7 @@ static void mce_panic(const char *msg, struct mce *final, char *exp)
+@@ -359,7 +359,7 @@ static void mce_panic(const char *msg, struct mce *final, char *exp)
console_verbose();
} else {
/* Don't log too much for fake panic */
@@ -27048,7 +29883,7 @@ index 79d8ec8..ba9ae33 100644
return;
}
pending = mce_gen_pool_prepare_records();
-@@ -387,7 +387,7 @@ static void mce_panic(const char *msg, struct mce *final, char *exp)
+@@ -395,7 +395,7 @@ static void mce_panic(const char *msg, struct mce *final, char *exp)
if (!fake_panic) {
if (panic_timeout == 0)
panic_timeout = mca_cfg.panic_timeout;
@@ -27057,7 +29892,7 @@ index 79d8ec8..ba9ae33 100644
} else
pr_emerg(HW_ERR "Fake kernel panic: %s\n", msg);
}
-@@ -761,7 +761,7 @@ static int mce_timed_out(u64 *t, const char *msg)
+@@ -787,7 +787,7 @@ static int mce_timed_out(u64 *t, const char *msg)
* might have been modified by someone else.
*/
rmb();
@@ -27066,7 +29901,7 @@ index 79d8ec8..ba9ae33 100644
wait_for_panic();
if (!mca_cfg.monarch_timeout)
goto out;
-@@ -1691,10 +1691,12 @@ static void __mcheck_cpu_init_vendor(struct cpuinfo_x86 *c)
+@@ -1706,10 +1706,12 @@ static void __mcheck_cpu_init_vendor(struct cpuinfo_x86 *c)
* Install proper ops for Scalable MCA enabled processors
*/
if (mce_flags.smca) {
@@ -27079,7 +29914,7 @@ index 79d8ec8..ba9ae33 100644
}
mce_amd_feature_init(c);
-@@ -1747,7 +1749,7 @@ static void unexpected_machine_check(struct pt_regs *regs, long error_code)
+@@ -1762,7 +1764,7 @@ static void unexpected_machine_check(struct pt_regs *regs, long error_code)
}
/* Call the installed machine check handler for this CPU setup. */
@@ -27088,7 +29923,7 @@ index 79d8ec8..ba9ae33 100644
unexpected_machine_check;
/*
-@@ -1776,7 +1778,9 @@ void mcheck_cpu_init(struct cpuinfo_x86 *c)
+@@ -1791,7 +1793,9 @@ void mcheck_cpu_init(struct cpuinfo_x86 *c)
return;
}
@@ -27098,7 +29933,7 @@ index 79d8ec8..ba9ae33 100644
__mcheck_cpu_init_generic();
__mcheck_cpu_init_vendor(c);
-@@ -1808,7 +1812,7 @@ void mcheck_cpu_clear(struct cpuinfo_x86 *c)
+@@ -1823,7 +1827,7 @@ void mcheck_cpu_clear(struct cpuinfo_x86 *c)
*/
static DEFINE_SPINLOCK(mce_chrdev_state_lock);
@@ -27107,7 +29942,7 @@ index 79d8ec8..ba9ae33 100644
static int mce_chrdev_open_exclu; /* already open exclusive? */
static int mce_chrdev_open(struct inode *inode, struct file *file)
-@@ -1816,7 +1820,7 @@ static int mce_chrdev_open(struct inode *inode, struct file *file)
+@@ -1831,7 +1835,7 @@ static int mce_chrdev_open(struct inode *inode, struct file *file)
spin_lock(&mce_chrdev_state_lock);
if (mce_chrdev_open_exclu ||
@@ -27116,7 +29951,7 @@ index 79d8ec8..ba9ae33 100644
spin_unlock(&mce_chrdev_state_lock);
return -EBUSY;
-@@ -1824,7 +1828,7 @@ static int mce_chrdev_open(struct inode *inode, struct file *file)
+@@ -1839,7 +1843,7 @@ static int mce_chrdev_open(struct inode *inode, struct file *file)
if (file->f_flags & O_EXCL)
mce_chrdev_open_exclu = 1;
@@ -27125,7 +29960,7 @@ index 79d8ec8..ba9ae33 100644
spin_unlock(&mce_chrdev_state_lock);
-@@ -1835,7 +1839,7 @@ static int mce_chrdev_release(struct inode *inode, struct file *file)
+@@ -1850,7 +1854,7 @@ static int mce_chrdev_release(struct inode *inode, struct file *file)
{
spin_lock(&mce_chrdev_state_lock);
@@ -27134,7 +29969,7 @@ index 79d8ec8..ba9ae33 100644
mce_chrdev_open_exclu = 0;
spin_unlock(&mce_chrdev_state_lock);
-@@ -2529,7 +2533,7 @@ static __init void mce_init_banks(void)
+@@ -2545,7 +2549,7 @@ static __init void mce_init_banks(void)
for (i = 0; i < mca_cfg.banks; i++) {
struct mce_bank *b = &mce_banks[i];
@@ -27143,7 +29978,7 @@ index 79d8ec8..ba9ae33 100644
sysfs_attr_init(&a->attr);
a->attr.name = b->attrname;
-@@ -2636,7 +2640,7 @@ struct dentry *mce_get_debugfs_dir(void)
+@@ -2652,7 +2656,7 @@ struct dentry *mce_get_debugfs_dir(void)
static void mce_reset(void)
{
cpu_missing = 0;
@@ -27253,21 +30088,8 @@ index fdc5521..d31149c 100644
{
/* Flush TLBs (no need to flush caches - they are disabled) */
count_vm_tlb_event(NR_TLB_LOCAL_FLUSH_ALL);
-diff --git a/arch/x86/kernel/cpu/mtrr/main.c b/arch/x86/kernel/cpu/mtrr/main.c
-index 28f1b54..1004b6d 100644
---- a/arch/x86/kernel/cpu/mtrr/main.c
-+++ b/arch/x86/kernel/cpu/mtrr/main.c
-@@ -72,7 +72,7 @@ static DEFINE_MUTEX(mtrr_mutex);
- u64 size_or_mask, size_and_mask;
- static bool mtrr_aps_delayed_init;
-
--static const struct mtrr_ops *mtrr_ops[X86_VENDOR_NUM];
-+static const struct mtrr_ops *mtrr_ops[X86_VENDOR_NUM] __read_only;
-
- const struct mtrr_ops *mtrr_if;
-
diff --git a/arch/x86/kernel/cpu/mtrr/mtrr.h b/arch/x86/kernel/cpu/mtrr/mtrr.h
-index 6c7ced0..55ee554 100644
+index ad8bd76..e51b46f 100644
--- a/arch/x86/kernel/cpu/mtrr/mtrr.h
+++ b/arch/x86/kernel/cpu/mtrr/mtrr.h
@@ -25,7 +25,7 @@ struct mtrr_ops {
@@ -27280,10 +30102,10 @@ index 6c7ced0..55ee554 100644
extern int generic_get_free_region(unsigned long base, unsigned long size,
int replace_reg);
diff --git a/arch/x86/kernel/cpu/vmware.c b/arch/x86/kernel/cpu/vmware.c
-index 1ff0598..5ef5631 100644
+index 5130985..6067a9f 100644
--- a/arch/x86/kernel/cpu/vmware.c
+++ b/arch/x86/kernel/cpu/vmware.c
-@@ -137,7 +137,7 @@ static bool __init vmware_legacy_x2apic_available(void)
+@@ -150,7 +150,7 @@ static bool __init vmware_legacy_x2apic_available(void)
(eax & (1 << VMWARE_PORT_CMD_LEGACY_X2APIC)) != 0;
}
@@ -27341,7 +30163,7 @@ index f6dfd93..892ade4 100644
.__cr3 = __pa_nodebug(swapper_pg_dir),
diff --git a/arch/x86/kernel/dumpstack.c b/arch/x86/kernel/dumpstack.c
-index 92e8f0a..a2430f0 100644
+index 85f854b..78ddb7e 100644
--- a/arch/x86/kernel/dumpstack.c
+++ b/arch/x86/kernel/dumpstack.c
@@ -2,6 +2,9 @@
@@ -27354,7 +30176,7 @@ index 92e8f0a..a2430f0 100644
#include <linux/kallsyms.h>
#include <linux/kprobes.h>
#include <linux/uaccess.h>
-@@ -35,7 +38,7 @@ static void printk_stack_address(unsigned long address, int reliable,
+@@ -53,7 +56,7 @@ static void printk_stack_address(unsigned long address, int reliable,
void printk_address(unsigned long address)
{
@@ -27362,56 +30184,8 @@ index 92e8f0a..a2430f0 100644
+ pr_cont(" [<%p>] %pA\n", (void *)address, (void *)address);
}
- #ifdef CONFIG_FUNCTION_GRAPH_TRACER
-@@ -77,10 +80,8 @@ print_ftrace_graph_addr(unsigned long addr, void *data,
- * severe exception (double fault, nmi, stack fault, debug, mce) hardware stack
- */
-
--static inline int valid_stack_ptr(struct task_struct *task,
-- void *p, unsigned int size, void *end)
-+static inline int valid_stack_ptr(void *t, void *p, unsigned int size, void *end)
- {
-- void *t = task_stack_page(task);
- if (end) {
- if (p < end && p >= (end-THREAD_SIZE))
- return 1;
-@@ -91,7 +92,7 @@ static inline int valid_stack_ptr(struct task_struct *task,
- }
-
- unsigned long
--print_context_stack(struct task_struct *task,
-+print_context_stack(struct task_struct *task, void *stack_start,
- unsigned long *stack, unsigned long bp,
- const struct stacktrace_ops *ops, void *data,
- unsigned long *end, int *graph)
-@@ -106,7 +107,7 @@ print_context_stack(struct task_struct *task,
- PAGE_SIZE)
- stack = (unsigned long *)task_stack_page(task);
-
-- while (valid_stack_ptr(task, stack, sizeof(*stack), end)) {
-+ while (valid_stack_ptr(stack_start, stack, sizeof(*stack), end)) {
- unsigned long addr;
-
- addr = *stack;
-@@ -127,7 +128,7 @@ print_context_stack(struct task_struct *task,
- EXPORT_SYMBOL_GPL(print_context_stack);
-
- unsigned long
--print_context_stack_bp(struct task_struct *task,
-+print_context_stack_bp(struct task_struct *task, void *stack_start,
- unsigned long *stack, unsigned long bp,
- const struct stacktrace_ops *ops, void *data,
- unsigned long *end, int *graph)
-@@ -135,7 +136,7 @@ print_context_stack_bp(struct task_struct *task,
- struct stack_frame *frame = (struct stack_frame *)bp;
- unsigned long *ret_addr = &frame->return_address;
-
-- while (valid_stack_ptr(task, ret_addr, sizeof(*ret_addr), end)) {
-+ while (valid_stack_ptr(stack_start, ret_addr, sizeof(*ret_addr), end)) {
- unsigned long addr = *ret_addr;
-
- if (!__kernel_text_address(addr))
-@@ -240,6 +241,7 @@ EXPORT_SYMBOL_GPL(oops_begin);
+ void show_trace_log_lvl(struct task_struct *task, struct pt_regs *regs,
+@@ -202,6 +205,7 @@ EXPORT_SYMBOL_GPL(oops_begin);
NOKPROBE_SYMBOL(oops_begin);
void __noreturn rewind_stack_do_exit(int signr);
@@ -27419,7 +30193,7 @@ index 92e8f0a..a2430f0 100644
void oops_end(unsigned long flags, struct pt_regs *regs, int signr)
{
-@@ -263,6 +265,8 @@ void oops_end(unsigned long flags, struct pt_regs *regs, int signr)
+@@ -225,6 +229,8 @@ void oops_end(unsigned long flags, struct pt_regs *regs, int signr)
if (panic_on_oops)
panic("Fatal exception");
@@ -27429,7 +30203,7 @@ index 92e8f0a..a2430f0 100644
* We're not going to return, but we might be on an IST stack or
* have very little stack space left. Rewind the stack and kill
diff --git a/arch/x86/kernel/dumpstack_32.c b/arch/x86/kernel/dumpstack_32.c
-index 0967571..84666bc 100644
+index 06eb322..ca545b8 100644
--- a/arch/x86/kernel/dumpstack_32.c
+++ b/arch/x86/kernel/dumpstack_32.c
@@ -15,6 +15,7 @@
@@ -27438,32 +30212,16 @@ index 0967571..84666bc 100644
#include <asm/stacktrace.h>
+#include <asm/desc.h>
- static void *is_irq_stack(void *p, void *irq)
+ void stack_type_str(enum stack_type type, const char **begin, const char **end)
{
-@@ -61,13 +62,14 @@ void dump_trace(struct task_struct *task, struct pt_regs *regs,
- bp = stack_frame(task, regs);
-
- for (;;) {
-+ void *stack_start = (void *)((unsigned long)stack & ~(THREAD_SIZE-1));
- void *end_stack;
-
- end_stack = is_hardirq_stack(stack, cpu);
- if (!end_stack)
- end_stack = is_softirq_stack(stack, cpu);
-
-- bp = ops->walk_stack(task, stack, bp, ops, data,
-+ bp = ops->walk_stack(task, stack_start, stack, bp, ops, data,
- end_stack, &graph);
-
- /* Stop if not on irq stack */
-@@ -137,16 +139,17 @@ void show_regs(struct pt_regs *regs)
+@@ -167,16 +168,17 @@ void show_regs(struct pt_regs *regs)
unsigned int code_len = code_bytes;
unsigned char c;
u8 *ip;
+ unsigned long cs_base = get_desc_base(&get_cpu_gdt_table(0)[(0xffff & regs->cs) >> 3]);
pr_emerg("Stack:\n");
- show_stack_log_lvl(NULL, regs, &regs->sp, 0, KERN_EMERG);
+ show_stack_log_lvl(current, regs, NULL, KERN_EMERG);
pr_emerg("Code:");
@@ -27476,7 +30234,7 @@ index 0967571..84666bc 100644
code_len = code_len - code_prologue + 1;
}
for (i = 0; i < code_len; i++, ip++) {
-@@ -155,7 +158,7 @@ void show_regs(struct pt_regs *regs)
+@@ -185,7 +187,7 @@ void show_regs(struct pt_regs *regs)
pr_cont(" Bad EIP value.");
break;
}
@@ -27485,7 +30243,7 @@ index 0967571..84666bc 100644
pr_cont(" <%02x>", c);
else
pr_cont(" %02x", c);
-@@ -168,6 +171,7 @@ int is_valid_bugaddr(unsigned long ip)
+@@ -198,6 +200,7 @@ int is_valid_bugaddr(unsigned long ip)
{
unsigned short ud2;
@@ -27493,7 +30251,7 @@ index 0967571..84666bc 100644
if (ip < PAGE_OFFSET)
return 0;
if (probe_kernel_address((unsigned short *)ip, ud2))
-@@ -175,3 +179,15 @@ int is_valid_bugaddr(unsigned long ip)
+@@ -205,3 +208,15 @@ int is_valid_bugaddr(unsigned long ip)
return ud2 == 0x0b0f;
}
@@ -27510,73 +30268,10 @@ index 0967571..84666bc 100644
+EXPORT_SYMBOL(pax_check_alloca);
+#endif
diff --git a/arch/x86/kernel/dumpstack_64.c b/arch/x86/kernel/dumpstack_64.c
-index 9ee4520..bacb90c 100644
+index 36cf1a4..046b56f 100644
--- a/arch/x86/kernel/dumpstack_64.c
+++ b/arch/x86/kernel/dumpstack_64.c
-@@ -158,6 +158,7 @@ void dump_trace(struct task_struct *task, struct pt_regs *regs,
- unsigned used = 0;
- int graph = 0;
- int done = 0;
-+ void *stack_start;
-
- if (!task)
- task = current;
-@@ -190,17 +191,19 @@ void dump_trace(struct task_struct *task, struct pt_regs *regs,
- done = 1;
-
- switch (stype) {
--
-- /* Break out early if we are on the thread stack */
- case STACK_IS_NORMAL:
-+ /*
-+ * This handles the process stack:
-+ */
-+ stack_start = (void *)((unsigned long)stack & ~(THREAD_SIZE-1));
-+ bp = ops->walk_stack(task, stack_start, stack, bp, ops, data, NULL, &graph);
- break;
-
- case STACK_IS_EXCEPTION:
--
- if (ops->stack(data, id) < 0)
- break;
-
-- bp = ops->walk_stack(task, stack, bp, ops,
-+ bp = ops->walk_stack(task, stack_end - EXCEPTION_STKSZ, stack, bp, ops,
- data, stack_end, &graph);
- ops->stack(data, "<EOE>");
- /*
-@@ -208,15 +211,16 @@ void dump_trace(struct task_struct *task, struct pt_regs *regs,
- * second-to-last pointer (index -2 to end) in the
- * exception stack:
- */
-+ if ((u16)stack_end[-1] != __KERNEL_DS)
-+ goto out;
- stack = (unsigned long *) stack_end[-2];
- done = 0;
- break;
-
- case STACK_IS_IRQ:
--
- if (ops->stack(data, "IRQ") < 0)
- break;
-- bp = ops->walk_stack(task, stack, bp,
-+ bp = ops->walk_stack(task, irq_stack, stack, bp,
- ops, data, stack_end, &graph);
- /*
- * We link to the next stack (which would be
-@@ -235,10 +239,7 @@ void dump_trace(struct task_struct *task, struct pt_regs *regs,
- }
- }
-
-- /*
-- * This handles the process stack:
-- */
-- bp = ops->walk_stack(task, stack, bp, ops, data, NULL, &graph);
-+out:
- put_cpu();
- }
- EXPORT_SYMBOL(dump_trace);
-@@ -355,8 +356,55 @@ int is_valid_bugaddr(unsigned long ip)
+@@ -237,8 +237,42 @@ int is_valid_bugaddr(unsigned long ip)
{
unsigned short ud2;
@@ -27590,56 +30285,43 @@ index 9ee4520..bacb90c 100644
+#ifdef CONFIG_PAX_MEMORY_STACKLEAK
+void __used pax_check_alloca(unsigned long size)
+{
-+ unsigned long sp = (unsigned long)&sp, stack_start, stack_end;
-+ unsigned cpu, used;
-+ char *id;
++ struct stack_info stack_info = {0};
++ unsigned long visit_mask = 0;
++ unsigned long sp = (unsigned long)&sp;
++ unsigned long stack_left;
+
-+ /* check the process stack first */
-+ stack_start = (unsigned long)task_stack_page(current);
-+ stack_end = stack_start + THREAD_SIZE;
-+ if (likely(stack_start <= sp && sp < stack_end)) {
-+ unsigned long stack_left = sp & (THREAD_SIZE - 1);
-+ BUG_ON(stack_left < 256 || size >= stack_left - 256);
-+ return;
-+ }
++ BUG_ON(get_stack_info(&sp, current, &stack_info, &visit_mask));
+
-+ cpu = get_cpu();
++ switch (stack_info.type) {
++ case STACK_TYPE_TASK:
++ stack_left = sp & (THREAD_SIZE - 1);
++ break;
+
-+ /* check the irq stacks */
-+ stack_end = (unsigned long)per_cpu(irq_stack_ptr, cpu);
-+ stack_start = stack_end - IRQ_STACK_SIZE;
-+ if (stack_start <= sp && sp < stack_end) {
-+ unsigned long stack_left = sp & (IRQ_STACK_SIZE - 1);
++ case STACK_TYPE_IRQ:
++ stack_left = sp & (IRQ_STACK_SIZE - 1);
+ put_cpu();
-+ BUG_ON(stack_left < 256 || size >= stack_left - 256);
-+ return;
-+ }
++ break;
+
-+ /* check the exception stacks */
-+ used = 0;
-+ stack_end = (unsigned long)in_exception_stack(cpu, sp, &used, &id);
-+ stack_start = stack_end - EXCEPTION_STKSZ;
-+ if (stack_end && stack_start <= sp && sp < stack_end) {
-+ unsigned long stack_left = sp & (EXCEPTION_STKSZ - 1);
-+ put_cpu();
-+ BUG_ON(stack_left < 256 || size >= stack_left - 256);
-+ return;
-+ }
++ case STACK_TYPE_EXCEPTION ... STACK_TYPE_EXCEPTION_LAST:
++ stack_left = sp & (EXCEPTION_STKSZ - 1);
++ break;
+
-+ put_cpu();
++ case STACK_TYPE_SOFTIRQ:
++ default:
++ BUG();
++ }
+
-+ /* unknown stack */
-+ BUG();
++ BUG_ON(stack_left < 256 || size >= stack_left - 256);
+}
+EXPORT_SYMBOL(pax_check_alloca);
+#endif
diff --git a/arch/x86/kernel/e820.c b/arch/x86/kernel/e820.c
-index 625eb69..e12a513 100644
+index 90e8dde..50b64a0 100644
--- a/arch/x86/kernel/e820.c
+++ b/arch/x86/kernel/e820.c
-@@ -800,8 +800,8 @@ unsigned long __init e820_end_of_low_ram_pfn(void)
+@@ -829,8 +829,8 @@ unsigned long __init e820_end_of_low_ram_pfn(void)
- static void early_panic(char *msg)
+ static void __init early_panic(char *msg)
{
- early_printk(msg);
- panic(msg);
@@ -27758,10 +30440,10 @@ index 04f89ca..43ad7de 100644
unlock_done:
mutex_unlock(&espfix_init_mutex);
diff --git a/arch/x86/kernel/fpu/core.c b/arch/x86/kernel/fpu/core.c
-index c289e2f..e2d3af1a 100644
+index ebb4e95..37e51387 100644
--- a/arch/x86/kernel/fpu/core.c
+++ b/arch/x86/kernel/fpu/core.c
-@@ -135,7 +135,7 @@ void __kernel_fpu_end(void)
+@@ -136,7 +136,7 @@ void __kernel_fpu_end(void)
struct fpu *fpu = &current->thread.fpu;
if (fpu->fpregs_active)
@@ -27770,7 +30452,7 @@ index c289e2f..e2d3af1a 100644
else
__fpregs_deactivate_hw();
-@@ -200,7 +200,7 @@ void fpu__save(struct fpu *fpu)
+@@ -201,7 +201,7 @@ void fpu__save(struct fpu *fpu)
if (fpu->fpregs_active) {
if (!copy_fpregs_to_fpstate(fpu)) {
if (use_eager_fpu())
@@ -27779,7 +30461,7 @@ index c289e2f..e2d3af1a 100644
else
fpregs_deactivate(fpu);
}
-@@ -260,7 +260,7 @@ int fpu__copy(struct fpu *dst_fpu, struct fpu *src_fpu)
+@@ -261,7 +261,7 @@ int fpu__copy(struct fpu *dst_fpu, struct fpu *src_fpu)
* leak into the child task:
*/
if (use_eager_fpu())
@@ -27788,7 +30470,7 @@ index c289e2f..e2d3af1a 100644
/*
* Save current FPU registers directly into the child
-@@ -279,11 +279,10 @@ int fpu__copy(struct fpu *dst_fpu, struct fpu *src_fpu)
+@@ -280,11 +280,10 @@ int fpu__copy(struct fpu *dst_fpu, struct fpu *src_fpu)
*/
preempt_disable();
if (!copy_fpregs_to_fpstate(dst_fpu)) {
@@ -27802,7 +30484,7 @@ index c289e2f..e2d3af1a 100644
else
fpregs_deactivate(src_fpu);
}
-@@ -304,7 +303,7 @@ void fpu__activate_curr(struct fpu *fpu)
+@@ -305,7 +304,7 @@ void fpu__activate_curr(struct fpu *fpu)
WARN_ON_FPU(fpu != &current->thread.fpu);
if (!fpu->fpstate_active) {
@@ -27811,7 +30493,7 @@ index c289e2f..e2d3af1a 100644
trace_x86_fpu_init_state(fpu);
trace_x86_fpu_activate_state(fpu);
-@@ -332,7 +331,7 @@ void fpu__activate_fpstate_read(struct fpu *fpu)
+@@ -333,7 +332,7 @@ void fpu__activate_fpstate_read(struct fpu *fpu)
fpu__save(fpu);
} else {
if (!fpu->fpstate_active) {
@@ -27820,7 +30502,7 @@ index c289e2f..e2d3af1a 100644
trace_x86_fpu_init_state(fpu);
trace_x86_fpu_activate_state(fpu);
-@@ -367,7 +366,7 @@ void fpu__activate_fpstate_write(struct fpu *fpu)
+@@ -368,7 +367,7 @@ void fpu__activate_fpstate_write(struct fpu *fpu)
/* Invalidate any lazy state: */
fpu->last_cpu = -1;
} else {
@@ -27829,7 +30511,7 @@ index c289e2f..e2d3af1a 100644
trace_x86_fpu_init_state(fpu);
trace_x86_fpu_activate_state(fpu);
-@@ -430,7 +429,7 @@ void fpu__current_fpstate_write_end(void)
+@@ -431,7 +430,7 @@ void fpu__current_fpstate_write_end(void)
* an XRSTOR if they are active.
*/
if (fpregs_active())
@@ -27838,7 +30520,7 @@ index c289e2f..e2d3af1a 100644
/*
* Our update is done and the fpregs/fpstate are in sync
-@@ -457,7 +456,7 @@ void fpu__restore(struct fpu *fpu)
+@@ -458,7 +457,7 @@ void fpu__restore(struct fpu *fpu)
kernel_fpu_disable();
trace_x86_fpu_before_restore(fpu);
fpregs_activate(fpu);
@@ -27847,7 +30529,7 @@ index c289e2f..e2d3af1a 100644
fpu->counter++;
trace_x86_fpu_after_restore(fpu);
kernel_fpu_enable();
-@@ -550,11 +549,11 @@ int fpu__exception_code(struct fpu *fpu, int trap_nr)
+@@ -554,11 +553,11 @@ int fpu__exception_code(struct fpu *fpu, int trap_nr)
* fully reproduce the context of the exception.
*/
if (boot_cpu_has(X86_FEATURE_FXSR)) {
@@ -27863,7 +30545,7 @@ index c289e2f..e2d3af1a 100644
}
err = swd & ~cwd;
-@@ -568,7 +567,7 @@ int fpu__exception_code(struct fpu *fpu, int trap_nr)
+@@ -572,7 +571,7 @@ int fpu__exception_code(struct fpu *fpu, int trap_nr)
unsigned short mxcsr = MXCSR_DEFAULT;
if (boot_cpu_has(X86_FEATURE_XMM))
@@ -27873,7 +30555,7 @@ index c289e2f..e2d3af1a 100644
err = ~(mxcsr >> 7) & mxcsr;
}
diff --git a/arch/x86/kernel/fpu/init.c b/arch/x86/kernel/fpu/init.c
-index 93982ae..086162e 100644
+index 2f2b8c7..9aad665 100644
--- a/arch/x86/kernel/fpu/init.c
+++ b/arch/x86/kernel/fpu/init.c
@@ -45,7 +45,7 @@ static void fpu__init_cpu_generic(void)
@@ -27938,7 +30620,7 @@ index 93982ae..086162e 100644
/*
* Set up the user and kernel xstate sizes based on the legacy FPU context size.
-@@ -387,7 +343,6 @@ void __init fpu__init_system(struct cpuinfo_x86 *c)
+@@ -386,7 +342,6 @@ void __init fpu__init_system(struct cpuinfo_x86 *c)
fpu__init_system_generic();
fpu__init_system_xstate_size_legacy();
fpu__init_system_xstate();
@@ -28152,10 +30834,10 @@ index a184c21..a1731b7 100644
err = -1;
} else {
diff --git a/arch/x86/kernel/fpu/xstate.c b/arch/x86/kernel/fpu/xstate.c
-index 01567aa..4583b36 100644
+index 095ef7d..f6c3ca64 100644
--- a/arch/x86/kernel/fpu/xstate.c
+++ b/arch/x86/kernel/fpu/xstate.c
-@@ -151,14 +151,14 @@ static int xfeature_is_user(int xfeature_nr)
+@@ -154,14 +154,14 @@ static int xfeature_is_user(int xfeature_nr)
*/
void fpstate_sanitize_xstate(struct fpu *fpu)
{
@@ -28172,7 +30854,7 @@ index 01567aa..4583b36 100644
/*
* None of the feature bits are in init state. So nothing else
-@@ -863,7 +863,7 @@ const void *get_xsave_field_ptr(int xsave_state)
+@@ -866,7 +866,7 @@ const void *get_xsave_field_ptr(int xsave_state)
*/
fpu__save(fpu);
@@ -28180,9 +30862,9 @@ index 01567aa..4583b36 100644
+ return get_xsave_addr(&fpu->state->xsave, xsave_state);
}
- #define NR_VALID_PKRU_BITS (CONFIG_NR_PROTECTION_KEYS * 2)
+ #ifdef CONFIG_ARCH_HAS_PKEYS
diff --git a/arch/x86/kernel/ftrace.c b/arch/x86/kernel/ftrace.c
-index d036cfb..cb4c991 100644
+index 8639bb2..aaa97ae 100644
--- a/arch/x86/kernel/ftrace.c
+++ b/arch/x86/kernel/ftrace.c
@@ -89,7 +89,7 @@ static unsigned long text_ip_addr(unsigned long ip)
@@ -28275,7 +30957,7 @@ diff --git a/arch/x86/kernel/head64.c b/arch/x86/kernel/head64.c
index 54a2372..46504a4 100644
--- a/arch/x86/kernel/head64.c
+++ b/arch/x86/kernel/head64.c
-@@ -62,12 +62,12 @@ again:
+@@ -62,12 +62,12 @@ int __init early_make_pgtable(unsigned long address)
pgd = *pgd_p;
/*
@@ -28291,7 +30973,7 @@ index 54a2372..46504a4 100644
else {
if (next_early_pgt >= EARLY_DYNAMIC_PAGE_TABLES) {
reset_early_page_tables();
-@@ -76,13 +76,13 @@ again:
+@@ -76,13 +76,13 @@ int __init early_make_pgtable(unsigned long address)
pud_p = (pudval_t *)early_dynamic_pgts[next_early_pgt++];
memset(pud_p, 0, sizeof(*pud_p) * PTRS_PER_PUD);
@@ -28307,7 +30989,7 @@ index 54a2372..46504a4 100644
else {
if (next_early_pgt >= EARLY_DYNAMIC_PAGE_TABLES) {
reset_early_page_tables();
-@@ -91,7 +91,7 @@ again:
+@@ -91,7 +91,7 @@ int __init early_make_pgtable(unsigned long address)
pmd_p = (pmdval_t *)early_dynamic_pgts[next_early_pgt++];
memset(pmd_p, 0, sizeof(*pmd_p) * PTRS_PER_PMD);
@@ -28326,10 +31008,15 @@ index 54a2372..46504a4 100644
for (i = 0; i < NUM_EXCEPTION_VECTORS; i++)
diff --git a/arch/x86/kernel/head_32.S b/arch/x86/kernel/head_32.S
-index 6f8902b..5d42150 100644
+index 2dabea4..e97ebe8 100644
--- a/arch/x86/kernel/head_32.S
+++ b/arch/x86/kernel/head_32.S
-@@ -27,6 +27,12 @@
+@@ -24,10 +24,17 @@
+ #include <asm/nops.h>
+ #include <asm/bootparam.h>
+ #include <asm/export.h>
++#include <asm/alternative-asm.h>
+
/* Physical address */
#define pa(X) ((X) - __PAGE_OFFSET)
@@ -28342,7 +31029,7 @@ index 6f8902b..5d42150 100644
/*
* References to members of the new_cpu_data structure.
*/
-@@ -56,11 +62,7 @@
+@@ -57,11 +64,7 @@
* and small than max_low_pfn, otherwise will waste some page table entries
*/
@@ -28355,7 +31042,7 @@ index 6f8902b..5d42150 100644
/*
* Number of possible pages in the lowmem region.
-@@ -86,6 +88,12 @@ INIT_MAP_SIZE = PAGE_TABLE_SIZE(KERNEL_PAGES) * PAGE_SIZE
+@@ -87,6 +90,12 @@ INIT_MAP_SIZE = PAGE_TABLE_SIZE(KERNEL_PAGES) * PAGE_SIZE
RESERVE_BRK(pagetables, INIT_MAP_SIZE)
/*
@@ -28368,7 +31055,7 @@ index 6f8902b..5d42150 100644
* 32-bit kernel entrypoint; only used by the boot CPU. On entry,
* %esi points to the real-mode code as a 32-bit pointer.
* CS and DS must be 4 GB flat segments, but we don't depend on
-@@ -93,6 +101,13 @@ RESERVE_BRK(pagetables, INIT_MAP_SIZE)
+@@ -94,6 +103,13 @@ RESERVE_BRK(pagetables, INIT_MAP_SIZE)
* can.
*/
__HEAD
@@ -28380,9 +31067,9 @@ index 6f8902b..5d42150 100644
+#endif
+
ENTRY(startup_32)
- movl pa(stack_start),%ecx
+ movl pa(initial_stack),%ecx
-@@ -114,6 +129,66 @@ ENTRY(startup_32)
+@@ -115,6 +131,66 @@ ENTRY(startup_32)
2:
leal -__PAGE_OFFSET(%ecx),%esp
@@ -28449,7 +31136,16 @@ index 6f8902b..5d42150 100644
/*
* Clear BSS first so that there are no surprises...
*/
-@@ -209,8 +284,11 @@ ENTRY(startup_32)
+@@ -155,7 +231,7 @@ ENTRY(startup_32)
+
+ #ifdef CONFIG_MICROCODE
+ /* Early load ucode on BSP. */
+- call load_ucode_bsp
++ pax_direct_call load_ucode_bsp
+ #endif
+
+ /*
+@@ -210,8 +286,11 @@ ENTRY(startup_32)
movl %eax, pa(max_pfn_mapped)
/* Do early initialization of the fixmap area */
@@ -28463,7 +31159,7 @@ index 6f8902b..5d42150 100644
#else /* Not PAE */
page_pde_offset = (__PAGE_OFFSET >> 20);
-@@ -240,8 +318,11 @@ page_pde_offset = (__PAGE_OFFSET >> 20);
+@@ -241,8 +320,11 @@ page_pde_offset = (__PAGE_OFFSET >> 20);
movl %eax, pa(max_pfn_mapped)
/* Do early initialization of the fixmap area */
@@ -28477,7 +31173,7 @@ index 6f8902b..5d42150 100644
#endif
#ifdef CONFIG_PARAVIRT
-@@ -255,9 +336,7 @@ page_pde_offset = (__PAGE_OFFSET >> 20);
+@@ -256,9 +338,7 @@ page_pde_offset = (__PAGE_OFFSET >> 20);
cmpl $num_subarch_entries, %eax
jae bad_subarch
@@ -28488,7 +31184,7 @@ index 6f8902b..5d42150 100644
bad_subarch:
WEAK(lguest_entry)
-@@ -269,10 +348,10 @@ WEAK(xen_entry)
+@@ -270,10 +350,10 @@ WEAK(xen_entry)
__INITDATA
subarch_entries:
@@ -28503,7 +31199,16 @@ index 6f8902b..5d42150 100644
num_subarch_entries = (. - subarch_entries) / 4
.previous
#else
-@@ -361,6 +440,7 @@ default_entry:
+@@ -314,7 +394,7 @@ ENTRY(startup_32_smp)
+
+ #ifdef CONFIG_MICROCODE
+ /* Early load ucode on AP. */
+- call load_ucode_ap
++ pax_direct_call load_ucode_ap
+ #endif
+
+ default_entry:
+@@ -362,6 +442,7 @@ default_entry:
movl pa(mmu_cr4_features),%eax
movl %eax,%cr4
@@ -28511,7 +31216,7 @@ index 6f8902b..5d42150 100644
testb $X86_CR4_PAE, %al # check if PAE is enabled
jz enable_paging
-@@ -389,6 +469,9 @@ default_entry:
+@@ -390,6 +471,9 @@ default_entry:
/* Make changes effective */
wrmsr
@@ -28521,7 +31226,7 @@ index 6f8902b..5d42150 100644
enable_paging:
/*
-@@ -456,14 +539,20 @@ is486:
+@@ -457,14 +541,20 @@ is486:
1: movl $(__KERNEL_DS),%eax # reload all the segment registers
movl %eax,%ss # after changing gdt.
@@ -28543,7 +31248,7 @@ index 6f8902b..5d42150 100644
movl %eax,%gs
xorl %eax,%eax # Clear LDT
-@@ -520,8 +609,11 @@ setup_once:
+@@ -521,8 +611,11 @@ setup_once:
* relocation. Manually set base address in stack canary
* segment descriptor.
*/
@@ -28556,7 +31261,16 @@ index 6f8902b..5d42150 100644
movw %cx, 8 * GDT_ENTRY_STACK_CANARY + 2(%eax)
shrl $16, %ecx
movb %cl, 8 * GDT_ENTRY_STACK_CANARY + 4(%eax)
-@@ -608,8 +700,11 @@ ENDPROC(early_idt_handler_common)
+@@ -588,7 +681,7 @@ early_idt_handler_common:
+ movw $0, PT_GS+2(%esp)
+
+ movl %esp, %eax /* args are pt_regs (EAX), trapnr (EDX) */
+- call early_fixup_exception
++ pax_direct_call early_fixup_exception
+
+ popl %ebx /* pt_regs->bx */
+ popl %ecx /* pt_regs->cx */
+@@ -609,8 +702,11 @@ ENDPROC(early_idt_handler_common)
/* This is the default interrupt "handler" :-) */
ALIGN
ignore_int:
@@ -28569,7 +31283,7 @@ index 6f8902b..5d42150 100644
pushl %eax
pushl %ecx
pushl %edx
-@@ -618,9 +713,6 @@ ignore_int:
+@@ -619,17 +715,14 @@ ignore_int:
movl $(__KERNEL_DS),%eax
movl %eax,%ds
movl %eax,%es
@@ -28579,7 +31293,17 @@ index 6f8902b..5d42150 100644
pushl 16(%esp)
pushl 24(%esp)
pushl 32(%esp)
-@@ -655,11 +747,8 @@ ENTRY(initial_code)
+ pushl 40(%esp)
+ pushl $int_msg
+- call printk
++ pax_direct_call printk
+
+- call dump_stack
++ pax_direct_call dump_stack
+
+ addl $(5*4),%esp
+ popl %ds
+@@ -656,11 +749,8 @@ ENTRY(initial_code)
ENTRY(setup_once_ref)
.long setup_once
@@ -28593,16 +31317,17 @@ index 6f8902b..5d42150 100644
#ifdef CONFIG_X86_PAE
initial_pg_pmd:
.fill 1024*KPMDS,4,0
-@@ -672,15 +761,18 @@ initial_pg_fixmap:
- ENTRY(empty_zero_page)
+@@ -676,16 +766,19 @@ empty_zero_page:
.fill 4096,1,0
- ENTRY(swapper_pg_dir)
+ .globl swapper_pg_dir
+ swapper_pg_dir:
- .fill 1024,4,0
+#ifdef CONFIG_X86_PAE
+ .fill PTRS_PER_PGD,8,0
+#else
+ .fill PTRS_PER_PGD,4,0
+#endif
+ EXPORT_SYMBOL(empty_zero_page)
/*
* This starts the data section.
@@ -28616,7 +31341,7 @@ index 6f8902b..5d42150 100644
ENTRY(initial_page_table)
.long pa(initial_pg_pmd+PGD_IDENT_ATTR),0 /* low identity map */
# if KPMDS == 3
-@@ -698,13 +790,21 @@ ENTRY(initial_page_table)
+@@ -703,13 +796,22 @@ ENTRY(initial_page_table)
# else
# error "Kernel PMDs should be 1, 2 or 3"
# endif
@@ -28628,19 +31353,20 @@ index 6f8902b..5d42150 100644
+ .rept 2*NR_CPUS
+ .fill PTRS_PER_PGD,8,0
+ .endr
++EXPORT_SYMBOL(cpu_pgd)
+# endif
+
#endif
.data
.balign 4
- ENTRY(stack_start)
+ ENTRY(initial_stack)
- .long init_thread_union+THREAD_SIZE
+ .long init_thread_union+THREAD_SIZE-8
__INITRODATA
int_msg:
-@@ -719,7 +819,7 @@ int_msg:
+@@ -724,7 +826,7 @@ int_msg:
* segment size, and 32-bit linear address value:
*/
@@ -28649,7 +31375,7 @@ index 6f8902b..5d42150 100644
.globl boot_gdt_descr
.globl idt_descr
-@@ -728,7 +828,7 @@ int_msg:
+@@ -733,7 +835,7 @@ int_msg:
.word 0 # 32 bit align gdt_desc.address
boot_gdt_descr:
.word __BOOT_DS+7
@@ -28658,7 +31384,7 @@ index 6f8902b..5d42150 100644
.word 0 # 32-bit align idt_desc.address
idt_descr:
-@@ -739,7 +839,7 @@ idt_descr:
+@@ -744,7 +846,7 @@ idt_descr:
.word 0 # 32 bit align gdt_desc.address
ENTRY(early_gdt_descr)
.word GDT_ENTRIES*8-1
@@ -28667,7 +31393,7 @@ index 6f8902b..5d42150 100644
/*
* The boot_gdt must mirror the equivalent in setup.S and is
-@@ -748,5 +848,65 @@ ENTRY(early_gdt_descr)
+@@ -753,5 +855,67 @@ ENTRY(early_gdt_descr)
.align L1_CACHE_BYTES
ENTRY(boot_gdt)
.fill GDT_ENTRY_BOOT_CS,8,0
@@ -28735,8 +31461,10 @@ index 6f8902b..5d42150 100644
+ /* Be sure this is zeroed to avoid false validations in Xen */
+ .fill PAGE_SIZE_asm - GDT_SIZE,1,0
+ .endr
++
++EXPORT_SYMBOL_GPL(cpu_gdt_table)
diff --git a/arch/x86/kernel/head_64.S b/arch/x86/kernel/head_64.S
-index 9f8efc9..448c93f 100644
+index b4421cc..8326c69 100644
--- a/arch/x86/kernel/head_64.S
+++ b/arch/x86/kernel/head_64.S
@@ -20,6 +20,8 @@
@@ -28746,9 +31474,9 @@ index 9f8efc9..448c93f 100644
+#include <asm/cpufeatures.h>
+#include <asm/alternative-asm.h>
#include "../entry/calling.h"
+ #include <asm/export.h>
- #ifdef CONFIG_PARAVIRT
-@@ -41,6 +43,12 @@
+@@ -42,6 +44,12 @@
L4_PAGE_OFFSET = pgd_index(__PAGE_OFFSET_BASE)
L4_START_KERNEL = pgd_index(__START_KERNEL_map)
L3_START_KERNEL = pud_index(__START_KERNEL_map)
@@ -28761,7 +31489,7 @@ index 9f8efc9..448c93f 100644
.text
__HEAD
-@@ -98,11 +106,36 @@ startup_64:
+@@ -99,11 +107,36 @@ startup_64:
* Fixup the physical addresses in the page table
*/
addq %rbp, early_level4_pgt + (L4_START_KERNEL*8)(%rip)
@@ -28800,7 +31528,7 @@ index 9f8efc9..448c93f 100644
/*
* Set up the identity mapping for the switchover. These
-@@ -186,11 +219,12 @@ ENTRY(secondary_startup_64)
+@@ -187,11 +220,12 @@ ENTRY(secondary_startup_64)
/* Sanitize CPU configuration */
call verify_cpu
@@ -28815,7 +31543,7 @@ index 9f8efc9..448c93f 100644
movq %rcx, %cr4
/* Setup early boot stage 4 level pagetables. */
-@@ -211,10 +245,24 @@ ENTRY(secondary_startup_64)
+@@ -212,10 +246,24 @@ ENTRY(secondary_startup_64)
movl $MSR_EFER, %ecx
rdmsr
btsl $_EFER_SCE, %eax /* Enable System Call */
@@ -28841,7 +31569,7 @@ index 9f8efc9..448c93f 100644
1: wrmsr /* Make changes effective */
/* Setup cr0 */
-@@ -294,10 +342,10 @@ ENTRY(secondary_startup_64)
+@@ -295,10 +343,10 @@ ENTRY(secondary_startup_64)
* REX.W + FF /5 JMP m16:64 Jump far, absolute indirect,
* address given in m16:64.
*/
@@ -28854,10 +31582,10 @@ index 9f8efc9..448c93f 100644
lretq
ENDPROC(secondary_startup_64)
-@@ -311,10 +359,9 @@ ENDPROC(secondary_startup_64)
+@@ -312,10 +360,9 @@ ENDPROC(secondary_startup_64)
*/
ENTRY(start_cpu0)
- movq stack_start(%rip),%rsp
+ movq initial_stack(%rip),%rsp
- movq initial_code(%rip),%rax
pushq $0 # fake return address to stop unwinder
pushq $__KERNEL_CS # set correct cs
@@ -28867,15 +31595,31 @@ index 9f8efc9..448c93f 100644
ENDPROC(start_cpu0)
#endif
@@ -328,7 +375,7 @@ ENDPROC(start_cpu0)
+ GLOBAL(initial_gs)
.quad INIT_PER_CPU_VAR(irq_stack_union)
-
- GLOBAL(stack_start)
+ GLOBAL(initial_stack)
- .quad init_thread_union+THREAD_SIZE-8
+ .quad init_thread_union+THREAD_SIZE-16
- .word 0
__FINITDATA
-@@ -417,40 +464,70 @@ GLOBAL(name)
+ bad_address:
+@@ -382,13 +429,13 @@ early_idt_handler_common:
+ cmpq $14,%rsi /* Page fault? */
+ jnz 10f
+ GET_CR2_INTO(%rdi) /* Can clobber any volatile register if pv */
+- call early_make_pgtable
++ pax_direct_call early_make_pgtable
+ andl %eax,%eax
+ jz 20f /* All good */
+
+ 10:
+ movq %rsp,%rdi /* RDI = pt_regs; RSI is already trapnr */
+- call early_fixup_exception
++ pax_direct_call early_fixup_exception
+
+ 20:
+ decl early_recursion_flag(%rip)
+@@ -416,40 +463,71 @@ GLOBAL(name)
__INITDATA
NEXT_PAGE(early_level4_pgt)
.fill 511,8,0
@@ -28915,6 +31659,7 @@ index 9f8efc9..448c93f 100644
+ .rept 2*NR_CPUS
+ .fill 512,8,0
+ .endr
++EXPORT_SYMBOL(cpu_pgd)
+#endif
NEXT_PAGE(level3_ident_pgt)
@@ -28958,7 +31703,7 @@ index 9f8efc9..448c93f 100644
NEXT_PAGE(level2_kernel_pgt)
/*
-@@ -467,31 +544,79 @@ NEXT_PAGE(level2_kernel_pgt)
+@@ -466,23 +544,73 @@ NEXT_PAGE(level2_kernel_pgt)
KERNEL_IMAGE_SIZE/PMD_SIZE)
NEXT_PAGE(level2_fixmap_pgt)
@@ -29026,6 +31771,8 @@ index 9f8efc9..448c93f 100644
+ .fill PAGE_SIZE / 8 - GDT_ENTRIES,8,0
+ .endr
+
++EXPORT_SYMBOL_GPL(cpu_gdt_table)
++
.align 16
.globl early_gdt_descr
early_gdt_descr:
@@ -29036,7 +31783,8 @@ index 9f8efc9..448c93f 100644
ENTRY(phys_base)
/* This must match the first entry in level2_kernel_pgt */
- .quad 0x0000000000000000
+@@ -490,8 +618,8 @@ ENTRY(phys_base)
+ EXPORT_SYMBOL(phys_base)
#include "../../x86/xen/xen-head.S"
-
@@ -29045,9 +31793,9 @@ index 9f8efc9..448c93f 100644
+ .section .rodata,"a",@progbits
NEXT_PAGE(empty_zero_page)
.skip PAGE_SIZE
-
+ EXPORT_SYMBOL(empty_zero_page)
diff --git a/arch/x86/kernel/hpet.c b/arch/x86/kernel/hpet.c
-index c6dfd80..5df5ed1 100644
+index 932348fb..57fc0d4 100644
--- a/arch/x86/kernel/hpet.c
+++ b/arch/x86/kernel/hpet.c
@@ -136,7 +136,7 @@ int is_hpet_enabled(void)
@@ -29059,35 +31807,15 @@ index c6dfd80..5df5ed1 100644
{
u32 i, timers, l, h;
printk(KERN_INFO "hpet: %s(%d):\n", function, line);
-diff --git a/arch/x86/kernel/i386_ksyms_32.c b/arch/x86/kernel/i386_ksyms_32.c
-index 1f9b878..895e3ed 100644
---- a/arch/x86/kernel/i386_ksyms_32.c
-+++ b/arch/x86/kernel/i386_ksyms_32.c
-@@ -21,8 +21,12 @@ extern void cmpxchg8b_emu(void);
- EXPORT_SYMBOL(cmpxchg8b_emu);
- #endif
-
-+EXPORT_SYMBOL_GPL(cpu_gdt_table);
-+
- /* Networking helper routines. */
- EXPORT_SYMBOL(csum_partial_copy_generic);
-+EXPORT_SYMBOL(csum_partial_copy_generic_to_user);
-+EXPORT_SYMBOL(csum_partial_copy_generic_from_user);
-
- EXPORT_SYMBOL(__get_user_1);
- EXPORT_SYMBOL(__get_user_2);
-@@ -45,3 +49,11 @@ EXPORT_SYMBOL(___preempt_schedule_notrace);
+@@ -593,7 +593,7 @@ static void init_one_hpet_msi_clockevent(struct hpet_dev *hdev, int cpu)
+ #define RESERVE_TIMERS 0
#endif
- EXPORT_SYMBOL(__sw_hweight32);
-+
-+#ifdef CONFIG_PAX_KERNEXEC
-+EXPORT_SYMBOL(__LOAD_PHYSICAL_ADDR);
-+#endif
-+
-+#ifdef CONFIG_PAX_PER_CPU_PGD
-+EXPORT_SYMBOL(cpu_pgd);
-+#endif
+-static void hpet_msi_capability_lookup(unsigned int start_timer)
++static __init void hpet_msi_capability_lookup(unsigned int start_timer)
+ {
+ unsigned int id;
+ unsigned int num_timers;
diff --git a/arch/x86/kernel/i8259.c b/arch/x86/kernel/i8259.c
index be22f5a..a04fa14 100644
--- a/arch/x86/kernel/i8259.c
@@ -29101,7 +31829,7 @@ index be22f5a..a04fa14 100644
irq_set_chip_and_handler(irq, &i8259A_chip, handle_level_irq);
enable_irq(irq);
}
-@@ -208,7 +208,7 @@ spurious_8259A_irq:
+@@ -208,7 +208,7 @@ static void mask_and_ack_8259A(struct irq_data *data)
"spurious 8259A interrupt: IRQ%d.\n", irq);
spurious_irq_mask |= irqmask;
}
@@ -29143,7 +31871,7 @@ index 50c89e8..e148d28 100644
.callback = dmi_io_delay_0xed_port,
.ident = "Compaq Presario V6000",
diff --git a/arch/x86/kernel/ioport.c b/arch/x86/kernel/ioport.c
-index 589b319..41d6575 100644
+index 589b319..367e6ce 100644
--- a/arch/x86/kernel/ioport.c
+++ b/arch/x86/kernel/ioport.c
@@ -6,6 +6,7 @@
@@ -29154,6 +31882,15 @@ index 589b319..41d6575 100644
#include <linux/errno.h>
#include <linux/types.h>
#include <linux/ioport.h>
+@@ -20,7 +21,7 @@
+ /*
+ * this changes the io permissions bitmap in the current task.
+ */
+-asmlinkage long sys_ioperm(unsigned long from, unsigned long num, int turn_on)
++SYSCALL_DEFINE3(ioperm, unsigned long, from, unsigned long, num, int, turn_on)
+ {
+ struct thread_struct *t = &current->thread;
+ struct tss_struct *tss;
@@ -30,6 +31,12 @@ asmlinkage long sys_ioperm(unsigned long from, unsigned long num, int turn_on)
return -EINVAL;
if (turn_on && !capable(CAP_SYS_RAWIO))
@@ -29224,7 +31961,7 @@ index 9f669fd..00354af 100644
}
diff --git a/arch/x86/kernel/irq_32.c b/arch/x86/kernel/irq_32.c
-index 1f38d9a..0eb6e6f 100644
+index 1f38d9a..65b5e98 100644
--- a/arch/x86/kernel/irq_32.c
+++ b/arch/x86/kernel/irq_32.c
@@ -22,6 +22,8 @@
@@ -29236,7 +31973,7 @@ index 1f38d9a..0eb6e6f 100644
int sysctl_panic_on_stackoverflow __read_mostly;
/* Debugging check for stack overflow: is there less than 1KB free? */
-@@ -32,13 +34,14 @@ static int check_stack_overflow(void)
+@@ -32,29 +34,30 @@ static int check_stack_overflow(void)
__asm__ __volatile__("andl %%esp,%0" :
"=r" (sp) : "0" (THREAD_SIZE - 1));
@@ -29244,7 +31981,8 @@ index 1f38d9a..0eb6e6f 100644
+ return sp < STACK_WARN;
}
- static void print_stack_overflow(void)
+-static void print_stack_overflow(void)
++static asmlinkage void print_stack_overflow(void)
{
printk(KERN_WARNING "low stack detected by irq handler\n");
dump_stack();
@@ -29252,6 +31990,25 @@ index 1f38d9a..0eb6e6f 100644
if (sysctl_panic_on_stackoverflow)
panic("low stack detected by irq handler - check messages\n");
}
+
+ #else
+ static inline int check_stack_overflow(void) { return 0; }
+-static inline void print_stack_overflow(void) { }
++static asmlinkage void print_stack_overflow(void) { }
+ #endif
+
+ DEFINE_PER_CPU(struct irq_stack *, hardirq_stack);
+ DEFINE_PER_CPU(struct irq_stack *, softirq_stack);
+
+-static void call_on_stack(void *func, void *stack)
++static void call_on_stack(void (asmlinkage *func)(void), void *stack)
+ {
+ asm volatile("xchgl %%ebx,%%esp \n"
+- "call *%%edi \n"
++ PAX_INDIRECT_CALL("*%%edi", "__do_softirq") "\n"
+ "movl %%ebx,%%esp \n"
+ : "=b" (stack)
+ : "0" (stack),
@@ -69,10 +72,9 @@ static inline void *current_stack(void)
static inline int execute_on_irq_stack(int overflow, struct irq_desc *desc)
@@ -29264,7 +32021,7 @@ index 1f38d9a..0eb6e6f 100644
irqstk = __this_cpu_read(hardirq_stack);
/*
-@@ -81,15 +83,19 @@ static inline int execute_on_irq_stack(int overflow, struct irq_desc *desc)
+@@ -81,25 +83,34 @@ static inline int execute_on_irq_stack(int overflow, struct irq_desc *desc)
* handler) we can't do that and just have to keep using the
* current stack (which is the irq stack already after all)
*/
@@ -29286,13 +32043,17 @@ index 1f38d9a..0eb6e6f 100644
if (unlikely(overflow))
call_on_stack(print_stack_overflow, isp);
-@@ -100,6 +106,11 @@ static inline int execute_on_irq_stack(int overflow, struct irq_desc *desc)
+ asm volatile("xchgl %%ebx,%%esp \n"
+- "call *%%edi \n"
++ PAX_INDIRECT_CALL("*%%edi", "handle_bad_irq") "\n"
+ "movl %%ebx,%%esp \n"
+ : "=a" (arg1), "=b" (isp)
: "0" (desc), "1" (isp),
"D" (desc->handle_irq)
: "memory", "cc", "ecx");
+
+#ifdef CONFIG_PAX_MEMORY_UDEREF
-+ __set_fs(current_thread_info()->addr_limit);
++ __set_fs(current->thread.addr_limit);
+#endif
+
return 1;
@@ -29335,14 +32096,14 @@ index 1f38d9a..0eb6e6f 100644
call_on_stack(__do_softirq, isp);
+
+#ifdef CONFIG_PAX_MEMORY_UDEREF
-+ __set_fs(current_thread_info()->addr_limit);
++ __set_fs(current->thread.addr_limit);
+#endif
+
}
bool handle_irq(struct irq_desc *desc, struct pt_regs *regs)
diff --git a/arch/x86/kernel/irq_64.c b/arch/x86/kernel/irq_64.c
-index 4a79037..0c1319e 100644
+index 9ebd0b0..685de4a 100644
--- a/arch/x86/kernel/irq_64.c
+++ b/arch/x86/kernel/irq_64.c
@@ -19,6 +19,8 @@
@@ -29354,18 +32115,18 @@ index 4a79037..0c1319e 100644
int sysctl_panic_on_stackoverflow;
/*
-@@ -45,9 +47,8 @@ static inline void stack_overflow_check(struct pt_regs *regs)
+@@ -44,9 +46,8 @@ static inline void stack_overflow_check(struct pt_regs *regs)
regs->sp <= curbase + THREAD_SIZE)
return;
- irq_stack_top = (u64)this_cpu_ptr(irq_stack_union.irq_stack) +
- STACK_TOP_MARGIN;
irq_stack_bottom = (u64)__this_cpu_read(irq_stack_ptr);
-+ irq_stack_top = irq_stack_bottom - IRQ_STACK_SIZE + 64 + STACK_TOP_MARGIN;
++ irq_stack_top = irq_stack_bottom - IRQ_STACK_SIZE + STACK_TOP_MARGIN;
if (regs->sp >= irq_stack_top && regs->sp <= irq_stack_bottom)
return;
-@@ -62,6 +63,8 @@ static inline void stack_overflow_check(struct pt_regs *regs)
+@@ -61,6 +62,8 @@ static inline void stack_overflow_check(struct pt_regs *regs)
irq_stack_top, irq_stack_bottom,
estack_top, estack_bottom);
@@ -29422,7 +32183,7 @@ index fc25f69..d31d60c 100644
}
memcpy(&code, ideal_nops[NOP_ATOMIC5], JUMP_LABEL_NOP_SIZE);
diff --git a/arch/x86/kernel/kgdb.c b/arch/x86/kernel/kgdb.c
-index 04cde52..8b2900b 100644
+index 8e36f24..dd9064b 100644
--- a/arch/x86/kernel/kgdb.c
+++ b/arch/x86/kernel/kgdb.c
@@ -229,7 +229,10 @@ static void kgdb_correct_hw_break(void)
@@ -29501,10 +32262,10 @@ index 04cde52..8b2900b 100644
}
diff --git a/arch/x86/kernel/kprobes/core.c b/arch/x86/kernel/kprobes/core.c
-index 7847e5c..cec50fd 100644
+index d9d8d16..139e5a0 100644
--- a/arch/x86/kernel/kprobes/core.c
+++ b/arch/x86/kernel/kprobes/core.c
-@@ -122,9 +122,12 @@ __synthesize_relative_insn(void *from, void *to, u8 op)
+@@ -123,9 +123,12 @@ __synthesize_relative_insn(void *from, void *to, u8 op)
s32 raddr;
} __packed *insn;
@@ -29518,7 +32279,7 @@ index 7847e5c..cec50fd 100644
}
/* Insert a jump instruction at address 'from', which jumps to address 'to'.*/
-@@ -170,7 +173,7 @@ int can_boost(kprobe_opcode_t *opcodes)
+@@ -171,7 +174,7 @@ int can_boost(kprobe_opcode_t *opcodes)
kprobe_opcode_t opcode;
kprobe_opcode_t *orig_opcodes = opcodes;
@@ -29527,7 +32288,7 @@ index 7847e5c..cec50fd 100644
return 0; /* Page fault may occur on this address. */
retry:
-@@ -262,12 +265,12 @@ __recover_probed_insn(kprobe_opcode_t *buf, unsigned long addr)
+@@ -263,12 +266,12 @@ __recover_probed_insn(kprobe_opcode_t *buf, unsigned long addr)
* Fortunately, we know that the original code is the ideal 5-byte
* long NOP.
*/
@@ -29542,7 +32303,7 @@ index 7847e5c..cec50fd 100644
}
/*
-@@ -369,7 +372,9 @@ int __copy_instruction(u8 *dest, u8 *src)
+@@ -370,7 +373,9 @@ int __copy_instruction(u8 *dest, u8 *src)
/* Another subsystem puts a breakpoint, failed to recover */
if (insn.opcode.bytes[0] == BREAKPOINT_INSTRUCTION)
return 0;
@@ -29552,7 +32313,7 @@ index 7847e5c..cec50fd 100644
#ifdef CONFIG_X86_64
if (insn_rip_relative(&insn)) {
-@@ -396,7 +401,9 @@ int __copy_instruction(u8 *dest, u8 *src)
+@@ -397,7 +402,9 @@ int __copy_instruction(u8 *dest, u8 *src)
return 0;
}
disp = (u8 *) dest + insn_offset_displacement(&insn);
@@ -29562,7 +32323,23 @@ index 7847e5c..cec50fd 100644
}
#endif
return length;
-@@ -538,7 +545,7 @@ static void setup_singlestep(struct kprobe *p, struct pt_regs *regs,
+@@ -512,6 +519,7 @@ static nokprobe_inline void restore_btf(void)
+ }
+ }
+
++#ifdef CONFIG_KRETPROBES
+ void arch_prepare_kretprobe(struct kretprobe_instance *ri, struct pt_regs *regs)
+ {
+ unsigned long *sara = stack_addr(regs);
+@@ -522,6 +530,7 @@ void arch_prepare_kretprobe(struct kretprobe_instance *ri, struct pt_regs *regs)
+ *sara = (unsigned long) &kretprobe_trampoline;
+ }
+ NOKPROBE_SYMBOL(arch_prepare_kretprobe);
++#endif
+
+ static void setup_singlestep(struct kprobe *p, struct pt_regs *regs,
+ struct kprobe_ctlblk *kcb, int reenter)
+@@ -539,7 +548,7 @@ static void setup_singlestep(struct kprobe *p, struct pt_regs *regs,
* nor set current_kprobe, because it doesn't use single
* stepping.
*/
@@ -29571,7 +32348,7 @@ index 7847e5c..cec50fd 100644
preempt_enable_no_resched();
return;
}
-@@ -555,9 +562,9 @@ static void setup_singlestep(struct kprobe *p, struct pt_regs *regs,
+@@ -556,9 +565,9 @@ static void setup_singlestep(struct kprobe *p, struct pt_regs *regs,
regs->flags &= ~X86_EFLAGS_IF;
/* single step inline if the instruction is an int3 */
if (p->opcode == BREAKPOINT_INSTRUCTION)
@@ -29583,7 +32360,7 @@ index 7847e5c..cec50fd 100644
}
NOKPROBE_SYMBOL(setup_singlestep);
-@@ -642,7 +649,7 @@ int kprobe_int3_handler(struct pt_regs *regs)
+@@ -643,7 +652,7 @@ int kprobe_int3_handler(struct pt_regs *regs)
setup_singlestep(p, regs, kcb, 0);
return 1;
}
@@ -29592,7 +32369,23 @@ index 7847e5c..cec50fd 100644
/*
* The breakpoint instruction was removed right
* after we hit it. Another cpu has removed
-@@ -688,6 +695,9 @@ asm(
+@@ -677,6 +686,9 @@ NOKPROBE_SYMBOL(kprobe_int3_handler);
+ asm(
+ ".global kretprobe_trampoline\n"
+ ".type kretprobe_trampoline, @function\n"
++#ifdef CONFIG_PAX_RAP
++ ".quad __rap_hash_ret_kretprobe_trampoline\n"
++#endif
+ "kretprobe_trampoline:\n"
+ #ifdef CONFIG_X86_64
+ /* We don't bother saving the ss register */
+@@ -684,16 +696,19 @@ asm(
+ " pushfq\n"
+ SAVE_REGS_STRING
+ " movq %rsp, %rdi\n"
+- " call trampoline_handler\n"
++ " "PAX_DIRECT_CALL("trampoline_handler") "\n"
+ /* Replace saved sp with true return address. */
" movq %rax, 152(%rsp)\n"
RESTORE_REGS_STRING
" popfq\n"
@@ -29602,7 +32395,13 @@ index 7847e5c..cec50fd 100644
#else
" pushf\n"
SAVE_REGS_STRING
-@@ -829,7 +839,7 @@ static void resume_execution(struct kprobe *p, struct pt_regs *regs,
+ " movl %esp, %eax\n"
+- " call trampoline_handler\n"
++ " "PAX_DIRECT_CALL("trampoline_handler") "\n"
+ /* Move flags to cs */
+ " movl 56(%esp), %edx\n"
+ " movl %edx, 52(%esp)\n"
+@@ -830,7 +845,7 @@ static void resume_execution(struct kprobe *p, struct pt_regs *regs,
struct kprobe_ctlblk *kcb)
{
unsigned long *tos = stack_addr(regs);
@@ -29611,11 +32410,21 @@ index 7847e5c..cec50fd 100644
unsigned long orig_ip = (unsigned long)p->addr;
kprobe_opcode_t *insn = p->ainsn.insn;
+@@ -1144,7 +1159,9 @@ int __init arch_init_kprobes(void)
+ return 0;
+ }
+
++#ifdef CONFIG_KRETPROBES
+ int arch_trampoline_kprobe(struct kprobe *p)
+ {
+ return 0;
+ }
++#endif
diff --git a/arch/x86/kernel/kprobes/opt.c b/arch/x86/kernel/kprobes/opt.c
-index 4425f59..34a112f 100644
+index 3bb4c5f..657db4e 100644
--- a/arch/x86/kernel/kprobes/opt.c
+++ b/arch/x86/kernel/kprobes/opt.c
-@@ -80,6 +80,7 @@ found:
+@@ -80,6 +80,7 @@ unsigned long __recover_optprobed_insn(kprobe_opcode_t *buf, unsigned long addr)
/* Insert a move instruction which sets a pointer to eax/rdi (1st arg). */
static void synthesize_set_arg1(kprobe_opcode_t *addr, unsigned long val)
{
@@ -29681,23 +32490,23 @@ index 4425f59..34a112f 100644
reset_current_kprobe();
preempt_enable_no_resched();
diff --git a/arch/x86/kernel/ksysfs.c b/arch/x86/kernel/ksysfs.c
-index c2bedae..25e7ab60 100644
+index 4afc67f..f00d132 100644
--- a/arch/x86/kernel/ksysfs.c
+++ b/arch/x86/kernel/ksysfs.c
-@@ -184,7 +184,7 @@ out:
+@@ -184,7 +184,7 @@ static ssize_t setup_data_data_read(struct file *fp,
static struct kobj_attribute type_attr = __ATTR_RO(type);
--static struct bin_attribute data_attr = {
-+static bin_attribute_no_const data_attr __read_only = {
+-static struct bin_attribute data_attr __ro_after_init = {
++static bin_attribute_no_const data_attr __ro_after_init = {
.attr = {
.name = "data",
.mode = S_IRUGO,
diff --git a/arch/x86/kernel/kvm.c b/arch/x86/kernel/kvm.c
-index 1726c4c..feda8055 100644
+index edbbfc8..d4d75ef 100644
--- a/arch/x86/kernel/kvm.c
+++ b/arch/x86/kernel/kvm.c
-@@ -544,7 +544,7 @@ static uint32_t __init kvm_detect(void)
+@@ -533,7 +533,7 @@ static uint32_t __init kvm_detect(void)
return kvm_cpuid_base();
}
@@ -29706,19 +32515,24 @@ index 1726c4c..feda8055 100644
.name = "KVM",
.detect = kvm_detect,
.x2apic_available = kvm_para_available,
+@@ -604,10 +604,12 @@ void __init kvm_spinlock_init(void)
+ return;
+
+ __pv_init_lock_hash();
++ pax_open_kernel();
+ pv_lock_ops.queued_spin_lock_slowpath = __pv_queued_spin_lock_slowpath;
+- pv_lock_ops.queued_spin_unlock = PV_CALLEE_SAVE(__pv_queued_spin_unlock);
++ pv_lock_ops.queued_spin_unlock = PV_CALLEE_SAVE(queued_spin_unlock, __pv_queued_spin_unlock);
+ pv_lock_ops.wait = kvm_wait;
+ pv_lock_ops.kick = kvm_kick_cpu;
++ pax_close_kernel();
+ }
+
+ static __init int kvm_spinlock_init_jump(void)
diff --git a/arch/x86/kernel/kvmclock.c b/arch/x86/kernel/kvmclock.c
-index 3692249..d2966c7 100644
+index 60b9949..5b52343 100644
--- a/arch/x86/kernel/kvmclock.c
+++ b/arch/x86/kernel/kvmclock.c
-@@ -29,7 +29,7 @@
- #include <asm/x86_init.h>
- #include <asm/reboot.h>
-
--static int kvmclock = 1;
-+static int kvmclock __read_only = 1;
- static int msr_kvm_system_time = MSR_KVM_SYSTEM_TIME;
- static int msr_kvm_wall_clock = MSR_KVM_WALL_CLOCK;
- static cycle_t kvm_sched_clock_offset;
@@ -42,7 +42,7 @@ static int parse_no_kvmclock(char *arg)
early_param("no-kvmclock", parse_no_kvmclock);
@@ -29781,10 +32595,10 @@ index 3692249..d2966c7 100644
size = PAGE_ALIGN(sizeof(struct pvclock_vsyscall_time_info)*NR_CPUS);
diff --git a/arch/x86/kernel/ldt.c b/arch/x86/kernel/ldt.c
-index 6707039..254f32c 100644
+index 6707039..cf64791 100644
--- a/arch/x86/kernel/ldt.c
+++ b/arch/x86/kernel/ldt.c
-@@ -11,6 +11,7 @@
+@@ -11,16 +11,26 @@
#include <linux/sched.h>
#include <linux/string.h>
#include <linux/mm.h>
@@ -29792,7 +32606,11 @@ index 6707039..254f32c 100644
#include <linux/smp.h>
#include <linux/slab.h>
#include <linux/vmalloc.h>
-@@ -21,6 +22,14 @@
+ #include <linux/uaccess.h>
++#include <linux/syscalls.h>
+
+ #include <asm/ldt.h>
+ #include <asm/desc.h>
#include <asm/mmu_context.h>
#include <asm/syscalls.h>
@@ -29807,7 +32625,7 @@ index 6707039..254f32c 100644
/* context.lock is held for us, so we don't need any locking. */
static void flush_ldt(void *current_mm)
{
-@@ -109,6 +118,23 @@ int init_new_context_ldt(struct task_struct *tsk, struct mm_struct *mm)
+@@ -109,6 +119,23 @@ int init_new_context_ldt(struct task_struct *tsk, struct mm_struct *mm)
struct mm_struct *old_mm;
int retval = 0;
@@ -29831,7 +32649,7 @@ index 6707039..254f32c 100644
mutex_init(&mm->context.lock);
old_mm = current->mm;
if (!old_mm) {
-@@ -235,6 +261,14 @@ static int write_ldt(void __user *ptr, unsigned long bytecount, int oldmode)
+@@ -235,6 +262,14 @@ static int write_ldt(void __user *ptr, unsigned long bytecount, int oldmode)
/* The user wants to clear the entry. */
memset(&ldt, 0, sizeof(ldt));
} else {
@@ -29846,7 +32664,13 @@ index 6707039..254f32c 100644
if (!IS_ENABLED(CONFIG_X86_16BIT) && !ldt_info.seg_32bit) {
error = -EINVAL;
goto out;
-@@ -276,6 +310,15 @@ asmlinkage int sys_modify_ldt(int func, void __user *ptr,
+@@ -271,11 +306,19 @@ static int write_ldt(void __user *ptr, unsigned long bytecount, int oldmode)
+ return error;
+ }
+
+-asmlinkage int sys_modify_ldt(int func, void __user *ptr,
+- unsigned long bytecount)
++SYSCALL_DEFINE3(modify_ldt, int, func, void __user *, ptr, unsigned long, bytecount)
{
int ret = -ENOSYS;
@@ -29894,43 +32718,68 @@ index 469b23d..5449cfe 100644
relocate_kernel_ptr = control_page;
page_list[PA_CONTROL_PAGE] = __pa(control_page);
diff --git a/arch/x86/kernel/mcount_64.S b/arch/x86/kernel/mcount_64.S
-index 61924222..0e4856e 100644
+index 7b0d3da..e4ff6df 100644
--- a/arch/x86/kernel/mcount_64.S
+++ b/arch/x86/kernel/mcount_64.S
-@@ -7,7 +7,7 @@
- #include <linux/linkage.h>
+@@ -8,7 +8,7 @@
#include <asm/ptrace.h>
#include <asm/ftrace.h>
+ #include <asm/export.h>
-
+#include <asm/alternative-asm.h>
.code64
.section .entry.text, "ax"
-@@ -148,8 +148,9 @@
+@@ -151,8 +151,8 @@ EXPORT_SYMBOL(mcount)
#ifdef CONFIG_DYNAMIC_FTRACE
ENTRY(function_hook)
-+ pax_force_retaddr
- retq
+- retq
-END(function_hook)
++ pax_ret mcount
+ENDPROC(function_hook)
ENTRY(ftrace_caller)
/* save_mcount_regs fills in first two parameters */
-@@ -183,9 +184,10 @@ GLOBAL(ftrace_graph_call)
- #endif
+@@ -165,8 +165,7 @@ GLOBAL(ftrace_caller_op_ptr)
+ /* regs go into 4th parameter (but make it NULL) */
+ movq $0, %rcx
+
+-GLOBAL(ftrace_call)
+- call ftrace_stub
++ pax_direct_call_global ftrace_stub ftrace_call
+
+ restore_mcount_regs
+
+@@ -182,13 +181,13 @@ GLOBAL(ftrace_epilogue)
+
+ #ifdef CONFIG_FUNCTION_GRAPH_TRACER
+ GLOBAL(ftrace_graph_call)
++#endif
+ jmp ftrace_stub
+-#endif
/* This is weak to keep gas from relaxing the jumps */
-WEAK(ftrace_stub)
-+RAP_WEAK(ftrace_stub)
-+ pax_force_retaddr
- retq
+- retq
-END(ftrace_caller)
++RAP_WEAK(ftrace_stub)
++ pax_ret ftrace_stub
+ENDPROC(ftrace_caller)
ENTRY(ftrace_regs_caller)
/* Save the current flags before any operations that can change them */
-@@ -256,7 +258,7 @@ GLOBAL(ftrace_regs_caller_end)
+@@ -225,8 +224,7 @@ GLOBAL(ftrace_regs_caller_op_ptr)
+ /* regs go into 4th parameter */
+ leaq (%rsp), %rcx
+
+-GLOBAL(ftrace_regs_call)
+- call ftrace_stub
++ pax_direct_call_global ftrace_stub ftrace_regs_call
+
+ /* Copy flags back to SS, to restore them */
+ movq EFLAGS(%rsp), %rax
+@@ -259,7 +257,7 @@ GLOBAL(ftrace_regs_caller_end)
jmp ftrace_epilogue
@@ -29939,20 +32788,22 @@ index 61924222..0e4856e 100644
#else /* ! CONFIG_DYNAMIC_FTRACE */
-@@ -275,6 +277,7 @@ fgraph_trace:
+@@ -278,7 +276,7 @@ fgraph_trace:
#endif
GLOBAL(ftrace_stub)
-+ pax_force_retaddr
- retq
+- retq
++ pax_ret ftrace_stub
trace:
-@@ -287,12 +290,13 @@ trace:
+ /* save_mcount_regs fills in first two parameters */
+@@ -290,12 +288,13 @@ trace:
* ip and parent ip are used and the list function is called when
* function tracing is enabled.
*/
+- call *ftrace_trace_function
+ pax_force_fptr ftrace_trace_function
- call *ftrace_trace_function
++ pax_indirect_call "ftrace_trace_function", ftrace_stub
restore_mcount_regs
@@ -29962,18 +32813,32 @@ index 61924222..0e4856e 100644
#endif /* CONFIG_DYNAMIC_FTRACE */
#endif /* CONFIG_FUNCTION_TRACER */
-@@ -314,8 +318,9 @@ ENTRY(ftrace_graph_caller)
+@@ -313,13 +312,14 @@ ENTRY(ftrace_graph_caller)
+ /* ftrace does sanity checks against frame pointers */
+ movq (%rdx), %rdx
+ #endif
+- call prepare_ftrace_return
++ pax_direct_call prepare_ftrace_return
restore_mcount_regs
-+ pax_force_retaddr
- retq
+- retq
-END(ftrace_graph_caller)
++ pax_ret ftrace_graph_caller
+ENDPROC(ftrace_graph_caller)
++ pax_retloc return_to_handler
GLOBAL(return_to_handler)
subq $24, %rsp
-@@ -331,5 +336,7 @@ GLOBAL(return_to_handler)
+
+@@ -328,11 +328,13 @@ GLOBAL(return_to_handler)
+ movq %rdx, 8(%rsp)
+ movq %rbp, %rdi
+
+- call ftrace_return_to_handler
++ pax_direct_call ftrace_return_to_handler
+
+ movq %rax, %rdi
movq 8(%rsp), %rdx
movq (%rsp), %rax
addq $24, %rsp
@@ -30294,16 +33159,20 @@ index 6d9582e..f746287 100644
return;
}
diff --git a/arch/x86/kernel/paravirt-spinlocks.c b/arch/x86/kernel/paravirt-spinlocks.c
-index 1939a02..7e81a8f 100644
+index 2c55a00..1528b25 100644
--- a/arch/x86/kernel/paravirt-spinlocks.c
+++ b/arch/x86/kernel/paravirt-spinlocks.c
-@@ -23,16 +23,32 @@ bool pv_is_native_spin_unlock(void)
+@@ -17,16 +17,26 @@ PV_CALLEE_SAVE_REGS_THUNK(__native_queued_spin_unlock);
+
+ bool pv_is_native_spin_unlock(void)
+ {
+- return pv_lock_ops.queued_spin_unlock.func ==
++ return pv_lock_ops.queued_spin_unlock.queued_spin_unlock ==
+ __raw_callee_save___native_queued_spin_unlock;
}
- #endif
-struct pv_lock_ops pv_lock_ops = {
+#ifdef CONFIG_SMP
-+#ifdef CONFIG_QUEUED_SPINLOCKS
+static void native_wait(u8 *ptr, u8 val)
+{
+}
@@ -30311,31 +33180,22 @@ index 1939a02..7e81a8f 100644
+static void native_kick(int cpu)
+{
+}
-+#else /* !CONFIG_QUEUED_SPINLOCKS */
-+static void native_unlock_kick(struct arch_spinlock *lock, __ticket_t ticket)
-+{
-+}
-+#endif /* !CONFIG_QUEUED_SPINLOCKS */
+#endif /* SMP */
+
+struct pv_lock_ops pv_lock_ops __read_only = {
#ifdef CONFIG_SMP
- #ifdef CONFIG_QUEUED_SPINLOCKS
.queued_spin_lock_slowpath = native_queued_spin_lock_slowpath,
- .queued_spin_unlock = PV_CALLEE_SAVE(__native_queued_spin_unlock),
+- .queued_spin_unlock = PV_CALLEE_SAVE(__native_queued_spin_unlock),
- .wait = paravirt_nop,
- .kick = paravirt_nop,
++ .queued_spin_unlock = PV_CALLEE_SAVE(queued_spin_unlock, __native_queued_spin_unlock),
+ .wait = native_wait,
+ .kick = native_kick,
- #else /* !CONFIG_QUEUED_SPINLOCKS */
- .lock_spinning = __PV_IS_CALLEE_SAVE(paravirt_nop),
-- .unlock_kick = paravirt_nop,
-+ .unlock_kick = native_unlock_kick,
- #endif /* !CONFIG_QUEUED_SPINLOCKS */
#endif /* SMP */
};
+ EXPORT_SYMBOL(pv_lock_ops);
diff --git a/arch/x86/kernel/paravirt.c b/arch/x86/kernel/paravirt.c
-index 1acfd76..8a3a86d 100644
+index bbf3d59..904b637 100644
--- a/arch/x86/kernel/paravirt.c
+++ b/arch/x86/kernel/paravirt.c
@@ -65,6 +65,9 @@ u64 notrace _paravirt_ident_64(u64 x)
@@ -30348,7 +33208,105 @@ index 1acfd76..8a3a86d 100644
void __init default_banner(void)
{
-@@ -140,15 +143,19 @@ unsigned paravirt_patch_default(u8 type, u16 clobbers, void *insnbuf,
+@@ -75,17 +78,25 @@ void __init default_banner(void)
+ /* Undefined instruction for dealing with missing ops pointers. */
+ static const unsigned char ud2a[] = { 0x0f, 0x0b };
+
+-struct branch {
++struct longbranch {
+ unsigned char opcode;
+ u32 delta;
+ } __attribute__((packed));
+
++struct shortbranch {
++ unsigned char opcode;
++ signed char delta;
++};
++
+ unsigned paravirt_patch_call(void *insnbuf,
+ const void *target, u16 tgt_clobbers,
+ unsigned long addr, u16 site_clobbers,
+ unsigned len)
+ {
+- struct branch *b = insnbuf;
++ struct longbranch *b = insnbuf;
++#ifdef CONFIG_PAX_RAP
++ struct shortbranch *hashb = insnbuf;
++#endif
+ unsigned long delta = (unsigned long)target - (addr+5);
+
+ if (tgt_clobbers & ~site_clobbers)
+@@ -93,17 +104,29 @@ unsigned paravirt_patch_call(void *insnbuf,
+ if (len < 5)
+ return len; /* call too long for patch site */
+
++#ifdef CONFIG_PAX_RAP
++ if (hashb->opcode != 0xeb)
++ return len;
++ hashb->delta = len - sizeof(*b) - sizeof(*hashb);
++ b = insnbuf + len - sizeof(*b);
++ delta = (unsigned long)target - (addr + len);
++#endif
++
+ b->opcode = 0xe8; /* call */
+ b->delta = delta;
+ BUILD_BUG_ON(sizeof(*b) != 5);
+
++#ifdef CONFIG_PAX_RAP
++ return len;
++#else
+ return 5;
++#endif
+ }
+
+ unsigned paravirt_patch_jmp(void *insnbuf, const void *target,
+ unsigned long addr, unsigned len)
+ {
+- struct branch *b = insnbuf;
++ struct longbranch *b = insnbuf;
+ unsigned long delta = (unsigned long)target - (addr+5);
+
+ if (len < 5)
+@@ -132,6 +155,38 @@ static void *get_call_destination(u8 type)
+ return *((void **)&tmpl + type);
+ }
+
++#if (defined(CONFIG_X86_32) && defined(CONFIG_X86_PAE)) || defined(CONFIG_PAX_RAP)
++#if CONFIG_PGTABLE_LEVELS >= 3
++PV_CALLEE_SAVE_REGS_THUNK(native_pmd_val);
++PV_CALLEE_SAVE_REGS_THUNK(native_make_pmd);
++#if CONFIG_PGTABLE_LEVELS == 4
++PV_CALLEE_SAVE_REGS_THUNK(native_pud_val);
++PV_CALLEE_SAVE_REGS_THUNK(native_make_pud);
++#endif
++#endif
++PV_CALLEE_SAVE_REGS_THUNK(native_pte_val);
++PV_CALLEE_SAVE_REGS_THUNK(native_pgd_val);
++PV_CALLEE_SAVE_REGS_THUNK(native_make_pte);
++PV_CALLEE_SAVE_REGS_THUNK(native_make_pgd);
++
++const struct pv_mmu_ops rap_pv_mmu_ops __initconst = {
++#if CONFIG_PGTABLE_LEVELS >= 3
++ .pmd_val = (union paravirt_callee_save) { .pmd_val = native_pmd_val },
++ .make_pmd = (union paravirt_callee_save) { .make_pmd = native_make_pmd },
++
++#if CONFIG_PGTABLE_LEVELS == 4
++ .pud_val = (union paravirt_callee_save) { .pud_val = native_pud_val },
++ .make_pud = (union paravirt_callee_save) { .make_pud = native_make_pud },
++#endif
++#endif /* CONFIG_PGTABLE_LEVELS >= 3 */
++ .pte_val = (union paravirt_callee_save) { .pte_val = native_pte_val },
++ .pgd_val = (union paravirt_callee_save) { .pgd_val = native_pgd_val },
++
++ .make_pte = (union paravirt_callee_save) { .make_pte = native_make_pte },
++ .make_pgd = (union paravirt_callee_save) { .make_pgd = native_make_pgd },
++};
++#endif
++
+ unsigned paravirt_patch_default(u8 type, u16 clobbers, void *insnbuf,
+ unsigned long addr, unsigned len)
+ {
+@@ -140,15 +195,49 @@ unsigned paravirt_patch_default(u8 type, u16 clobbers, void *insnbuf,
if (opfunc == NULL)
/* If there's no function, patch it with a ud2a (BUG) */
@@ -30360,19 +33318,49 @@ index 1acfd76..8a3a86d 100644
/* identity functions just return their single argument */
- else if (opfunc == _paravirt_ident_32)
-+ else if (opfunc == (void *)_paravirt_ident_32)
++#ifdef CONFIG_PAX_RAP
++ else if (
++#if CONFIG_PGTABLE_LEVELS >= 3
++ opfunc == (void *)__raw_callee_save_native_pmd_val ||
++ opfunc == (void *)__raw_callee_save_native_make_pmd ||
++#if CONFIG_PGTABLE_LEVELS == 4
++ opfunc == (void *)__raw_callee_save_native_pud_val ||
++ opfunc == (void *)__raw_callee_save_native_make_pud ||
++#endif
++#endif
++ opfunc == (void *)__raw_callee_save_native_pte_val ||
++ opfunc == (void *)__raw_callee_save_native_pgd_val ||
++ opfunc == (void *)__raw_callee_save_native_make_pte ||
++ opfunc == (void *)__raw_callee_save_native_make_pgd)
++#else
++ else if (
++#if CONFIG_PGTABLE_LEVELS >= 3
++ opfunc == (void *)native_pmd_val ||
++ opfunc == (void *)native_make_pmd ||
++#if CONFIG_PGTABLE_LEVELS == 4
++ opfunc == (void *)native_pud_val ||
++ opfunc == (void *)native_make_pud ||
++#endif
++#endif
++ opfunc == (void *)native_pte_val ||
++ opfunc == (void *)native_pgd_val ||
++ opfunc == (void *)native_make_pte ||
++ opfunc == (void *)native_make_pgd)
++#endif
++#ifdef CONFIG_X86_32
++#ifdef CONFIG_X86_PAE
++ ret = paravirt_patch_ident_64(insnbuf, len);
++#else
ret = paravirt_patch_ident_32(insnbuf, len);
- else if (opfunc == _paravirt_ident_64)
-+ else if (opfunc == (void *)_paravirt_ident_64)
++#endif
++#else
ret = paravirt_patch_ident_64(insnbuf, len);
-+#if defined(CONFIG_X86_32) && defined(CONFIG_X86_PAE)
-+ else if (opfunc == (void *)__raw_callee_save__paravirt_ident_64)
-+ ret = paravirt_patch_ident_64(insnbuf, len);
+#endif
else if (type == PARAVIRT_PATCH(pv_cpu_ops.iret) ||
type == PARAVIRT_PATCH(pv_cpu_ops.usergs_sysret64))
-@@ -171,7 +178,7 @@ unsigned paravirt_patch_insns(void *insnbuf, unsigned len,
+@@ -171,7 +260,7 @@ unsigned paravirt_patch_insns(void *insnbuf, unsigned len,
if (insn_len > len || start == NULL)
insn_len = len;
else
@@ -30381,7 +33369,7 @@ index 1acfd76..8a3a86d 100644
return insn_len;
}
-@@ -293,7 +300,7 @@ enum paravirt_lazy_mode paravirt_get_lazy_mode(void)
+@@ -293,7 +382,7 @@ enum paravirt_lazy_mode paravirt_get_lazy_mode(void)
return this_cpu_read(paravirt_lazy_mode);
}
@@ -30390,7 +33378,7 @@ index 1acfd76..8a3a86d 100644
.name = "bare hardware",
.kernel_rpl = 0,
.shared_kernel_pmd = 1, /* Only used when CONFIG_X86_PAE is set */
-@@ -303,16 +310,16 @@ struct pv_info pv_info = {
+@@ -303,20 +392,35 @@ struct pv_info pv_info = {
#endif
};
@@ -30406,11 +33394,34 @@ index 1acfd76..8a3a86d 100644
};
-__visible struct pv_irq_ops pv_irq_ops = {
+- .save_fl = __PV_IS_CALLEE_SAVE(native_save_fl),
+- .restore_fl = __PV_IS_CALLEE_SAVE(native_restore_fl),
+- .irq_disable = __PV_IS_CALLEE_SAVE(native_irq_disable),
+- .irq_enable = __PV_IS_CALLEE_SAVE(native_irq_enable),
++
++#ifdef CONFIG_PAX_RAP
++PV_CALLEE_SAVE_REGS_THUNK(native_save_fl);
++PV_CALLEE_SAVE_REGS_THUNK(native_restore_fl);
++PV_CALLEE_SAVE_REGS_THUNK(native_irq_disable);
++PV_CALLEE_SAVE_REGS_THUNK(native_irq_enable);
++
++const struct pv_irq_ops rap_pv_irq_ops __initconst = {
++ .save_fl = (union paravirt_callee_save) { .save_fl = native_save_fl },
++ .restore_fl = (union paravirt_callee_save) { .restore_fl = native_restore_fl },
++ .irq_disable = (union paravirt_callee_save) { .irq_disable = native_irq_disable },
++ .irq_enable = (union paravirt_callee_save) { .irq_enable = native_irq_enable },
++};
++#endif
++
+__visible struct pv_irq_ops pv_irq_ops __read_only = {
- .save_fl = __PV_IS_CALLEE_SAVE(native_save_fl),
- .restore_fl = __PV_IS_CALLEE_SAVE(native_restore_fl),
- .irq_disable = __PV_IS_CALLEE_SAVE(native_irq_disable),
-@@ -324,7 +331,23 @@ __visible struct pv_irq_ops pv_irq_ops = {
++ .save_fl = __PV_IS_CALLEE_SAVE(save_fl, native_save_fl),
++ .restore_fl = __PV_IS_CALLEE_SAVE(restore_fl, native_restore_fl),
++ .irq_disable = __PV_IS_CALLEE_SAVE(irq_disable, native_irq_disable),
++ .irq_enable = __PV_IS_CALLEE_SAVE(irq_enable, native_irq_enable),
+ .safe_halt = native_safe_halt,
+ .halt = native_halt,
+ #ifdef CONFIG_X86_64
+@@ -324,7 +428,23 @@ __visible struct pv_irq_ops pv_irq_ops = {
#endif
};
@@ -30435,7 +33446,7 @@ index 1acfd76..8a3a86d 100644
.cpuid = native_cpuid,
.get_debugreg = native_get_debugreg,
.set_debugreg = native_set_debugreg,
-@@ -358,8 +381,8 @@ __visible struct pv_cpu_ops pv_cpu_ops = {
+@@ -357,8 +477,8 @@ __visible struct pv_cpu_ops pv_cpu_ops = {
.write_gdt_entry = native_write_gdt_entry,
.write_idt_entry = native_write_idt_entry,
@@ -30446,7 +33457,7 @@ index 1acfd76..8a3a86d 100644
.load_sp0 = native_load_sp0,
-@@ -372,8 +395,8 @@ __visible struct pv_cpu_ops pv_cpu_ops = {
+@@ -371,8 +491,8 @@ __visible struct pv_cpu_ops pv_cpu_ops = {
.set_iopl_mask = native_set_iopl_mask,
.io_delay = native_io_delay,
@@ -30457,7 +33468,7 @@ index 1acfd76..8a3a86d 100644
};
/* At this point, native_get/set_debugreg has real function entries */
-@@ -381,15 +404,64 @@ NOKPROBE_SYMBOL(native_get_debugreg);
+@@ -380,14 +500,63 @@ NOKPROBE_SYMBOL(native_get_debugreg);
NOKPROBE_SYMBOL(native_set_debugreg);
NOKPROBE_SYMBOL(native_load_idt);
@@ -30465,17 +33476,18 @@ index 1acfd76..8a3a86d 100644
+#ifdef CONFIG_X86_32
+#ifdef CONFIG_X86_PAE
+/* 64-bit pagetable entries */
-+#define PTE_IDENT PV_CALLEE_SAVE(_paravirt_ident_64)
++#define PTE_IDENT(field, op) PV_CALLEE_SAVE(field, op)
+#else
/* 32-bit pagetable entries */
- #define PTE_IDENT __PV_IS_CALLEE_SAVE(_paravirt_ident_32)
+-#define PTE_IDENT __PV_IS_CALLEE_SAVE(_paravirt_ident_32)
++#define PTE_IDENT(field, op) __PV_IS_CALLEE_SAVE(field, op)
+#endif
#else
/* 64-bit pagetable entries */
- #define PTE_IDENT __PV_IS_CALLEE_SAVE(_paravirt_ident_64)
+-#define PTE_IDENT __PV_IS_CALLEE_SAVE(_paravirt_ident_64)
++#define PTE_IDENT(field, op) __PV_IS_CALLEE_SAVE(field, op)
#endif
--struct pv_mmu_ops pv_mmu_ops = {
+static void native_pgd_free(struct mm_struct *mm, pgd_t *pgd)
+{
+}
@@ -30520,11 +33532,10 @@ index 1acfd76..8a3a86d 100644
+{
+}
+
-+struct pv_mmu_ops pv_mmu_ops __read_only = {
+ struct pv_mmu_ops pv_mmu_ops __ro_after_init = {
.read_cr2 = native_read_cr2,
- .write_cr2 = native_write_cr2,
-@@ -402,20 +474,20 @@ struct pv_mmu_ops pv_mmu_ops = {
+@@ -401,20 +570,20 @@ struct pv_mmu_ops pv_mmu_ops __ro_after_init = {
.flush_tlb_others = native_flush_tlb_others,
.pgd_alloc = __paravirt_pgd_alloc,
@@ -30553,17 +33564,35 @@ index 1acfd76..8a3a86d 100644
.ptep_modify_prot_start = __ptep_modify_prot_start,
.ptep_modify_prot_commit = __ptep_modify_prot_commit,
-@@ -436,6 +508,7 @@ struct pv_mmu_ops pv_mmu_ops = {
- .make_pud = PTE_IDENT,
+@@ -427,26 +596,27 @@ struct pv_mmu_ops pv_mmu_ops __ro_after_init = {
+ #endif
+ .set_pud = native_set_pud,
+
+- .pmd_val = PTE_IDENT,
+- .make_pmd = PTE_IDENT,
++ .pmd_val = PTE_IDENT(pmd_val, native_pmd_val),
++ .make_pmd = PTE_IDENT(make_pmd, native_make_pmd),
+
+ #if CONFIG_PGTABLE_LEVELS == 4
+- .pud_val = PTE_IDENT,
+- .make_pud = PTE_IDENT,
++ .pud_val = PTE_IDENT(pud_val, native_pud_val),
++ .make_pud = PTE_IDENT(make_pud, native_make_pud),
.set_pgd = native_set_pgd,
+ .set_pgd_batched = native_set_pgd_batched,
#endif
#endif /* CONFIG_PGTABLE_LEVELS >= 3 */
-@@ -445,9 +518,9 @@ struct pv_mmu_ops pv_mmu_ops = {
- .make_pte = PTE_IDENT,
- .make_pgd = PTE_IDENT,
+- .pte_val = PTE_IDENT,
+- .pgd_val = PTE_IDENT,
++ .pte_val = PTE_IDENT(pte_val, native_pte_val),
++ .pgd_val = PTE_IDENT(pgd_val, native_pgd_val),
+
+- .make_pte = PTE_IDENT,
+- .make_pgd = PTE_IDENT,
++ .make_pte = PTE_IDENT(make_pte, native_make_pte),
++ .make_pgd = PTE_IDENT(make_pgd, native_make_pgd),
- .dup_mmap = paravirt_nop,
- .exit_mmap = paravirt_nop,
@@ -30574,7 +33603,7 @@ index 1acfd76..8a3a86d 100644
.lazy_mode = {
.enter = paravirt_nop,
-@@ -456,6 +529,12 @@ struct pv_mmu_ops pv_mmu_ops = {
+@@ -455,6 +625,12 @@ struct pv_mmu_ops pv_mmu_ops __ro_after_init = {
},
.set_fixmap = native_set_fixmap,
@@ -30588,7 +33617,7 @@ index 1acfd76..8a3a86d 100644
EXPORT_SYMBOL_GPL(pv_time_ops);
diff --git a/arch/x86/kernel/paravirt_patch_64.c b/arch/x86/kernel/paravirt_patch_64.c
-index e70087a..b083377 100644
+index bb3840c..2fe40f3 100644
--- a/arch/x86/kernel/paravirt_patch_64.c
+++ b/arch/x86/kernel/paravirt_patch_64.c
@@ -9,7 +9,11 @@ DEF_NATIVE(pv_irq_ops, save_fl, "pushfq; popq %rax");
@@ -30613,7 +33642,7 @@ index e70087a..b083377 100644
+#endif
+
PATCH_SITE(pv_cpu_ops, wbinvd);
- #if defined(CONFIG_PARAVIRT_SPINLOCKS) && defined(CONFIG_QUEUED_SPINLOCKS)
+ #if defined(CONFIG_PARAVIRT_SPINLOCKS)
case PARAVIRT_PATCH(pv_lock_ops.queued_spin_unlock):
diff --git a/arch/x86/kernel/pci-calgary_64.c b/arch/x86/kernel/pci-calgary_64.c
index 5d400ba..eaad6f6 100644
@@ -30642,7 +33671,7 @@ index f712dfd..0172a75 100644
#define DEBUG 1
diff --git a/arch/x86/kernel/process.c b/arch/x86/kernel/process.c
-index 62c0b0e..43bd8da 100644
+index 8e10e72..fdd36da 100644
--- a/arch/x86/kernel/process.c
+++ b/arch/x86/kernel/process.c
@@ -16,6 +16,7 @@
@@ -30653,7 +33682,7 @@ index 62c0b0e..43bd8da 100644
#include <linux/tick.h>
#include <linux/cpuidle.h>
#include <trace/events/power.h>
-@@ -40,7 +41,8 @@
+@@ -41,7 +42,8 @@
* section. Since TSS's are completely CPU-local, we want them
* on exact cacheline boundaries, to eliminate cacheline ping-pong.
*/
@@ -30663,15 +33692,18 @@ index 62c0b0e..43bd8da 100644
.x86_tss = {
.sp0 = TOP_OF_INIT_STACK,
#ifdef CONFIG_X86_32
-@@ -61,6 +63,7 @@ __visible DEFINE_PER_CPU_SHARED_ALIGNED(struct tss_struct, cpu_tss) = {
+@@ -62,8 +64,9 @@ __visible DEFINE_PER_CPU_SHARED_ALIGNED(struct tss_struct, cpu_tss) = {
#ifdef CONFIG_X86_32
.SYSENTER_stack_canary = STACK_END_MAGIC,
#endif
+}
};
- EXPORT_PER_CPU_SYMBOL(cpu_tss);
+-EXPORT_PER_CPU_SYMBOL(cpu_tss);
++EXPORT_SYMBOL(cpu_tss);
-@@ -81,13 +84,26 @@ void idle_notifier_unregister(struct notifier_block *n)
+ #ifdef CONFIG_X86_64
+ static DEFINE_PER_CPU(unsigned char, is_idle);
+@@ -82,13 +85,26 @@ void idle_notifier_unregister(struct notifier_block *n)
EXPORT_SYMBOL_GPL(idle_notifier_unregister);
#endif
@@ -30699,7 +33731,7 @@ index 62c0b0e..43bd8da 100644
#ifdef CONFIG_VM86
dst->thread.vm86 = NULL;
#endif
-@@ -95,6 +111,12 @@ int arch_dup_task_struct(struct task_struct *dst, struct task_struct *src)
+@@ -96,6 +112,12 @@ int arch_dup_task_struct(struct task_struct *dst, struct task_struct *src)
return fpu__copy(&dst->thread.fpu, &src->thread.fpu);
}
@@ -30712,7 +33744,7 @@ index 62c0b0e..43bd8da 100644
/*
* Free current thread data structures etc..
*/
-@@ -105,7 +127,7 @@ void exit_thread(struct task_struct *tsk)
+@@ -106,7 +128,7 @@ void exit_thread(struct task_struct *tsk)
struct fpu *fpu = &t->fpu;
if (bp) {
@@ -30721,7 +33753,7 @@ index 62c0b0e..43bd8da 100644
t->io_bitmap_ptr = NULL;
clear_thread_flag(TIF_IO_BITMAP);
-@@ -127,6 +149,9 @@ void flush_thread(void)
+@@ -128,6 +150,9 @@ void flush_thread(void)
{
struct task_struct *tsk = current;
@@ -30731,7 +33763,7 @@ index 62c0b0e..43bd8da 100644
flush_ptrace_hw_breakpoint(tsk);
memset(tsk->thread.tls_array, 0, sizeof(tsk->thread.tls_array));
-@@ -268,7 +293,7 @@ static void __exit_idle(void)
+@@ -269,7 +294,7 @@ static void __exit_idle(void)
void exit_idle(void)
{
/* idle loop has pid 0 */
@@ -30740,7 +33772,7 @@ index 62c0b0e..43bd8da 100644
return;
__exit_idle();
}
-@@ -321,7 +346,7 @@ bool xen_set_default_idle(void)
+@@ -322,7 +347,7 @@ bool xen_set_default_idle(void)
return ret;
}
#endif
@@ -30762,30 +33794,10 @@ index 62c0b0e..43bd8da 100644
-
unsigned long arch_randomize_brk(struct mm_struct *mm)
{
- unsigned long range_end = mm->brk + 0x02000000;
-@@ -537,9 +555,7 @@ unsigned long get_wchan(struct task_struct *p)
- * PADDING
- * ----------- top = topmax - TOP_OF_KERNEL_STACK_PADDING
- * stack
-- * ----------- bottom = start + sizeof(thread_info)
-- * thread_info
-- * ----------- start
-+ * ----------- bottom = start
- *
- * The tasks stack pointer points at the location where the
- * framepointer is stored. The data on the stack is:
-@@ -550,7 +566,7 @@ unsigned long get_wchan(struct task_struct *p)
- */
- top = start + THREAD_SIZE - TOP_OF_KERNEL_STACK_PADDING;
- top -= 2 * sizeof(unsigned long);
-- bottom = start + sizeof(struct thread_info);
-+ bottom = start;
-
- sp = READ_ONCE(p->thread.sp);
- if (sp < bottom || sp > top)
-@@ -567,3 +583,35 @@ unsigned long get_wchan(struct task_struct *p)
- } while (count++ < 16 && p->state != TASK_RUNNING);
- return 0;
+ return randomize_page(mm->brk, 0x02000000);
+@@ -583,3 +601,35 @@ unsigned long get_wchan(struct task_struct *p)
+ put_task_stack(p);
+ return ret;
}
+
+#ifdef CONFIG_PAX_RANDKSTACK
@@ -30820,18 +33832,10 @@ index 62c0b0e..43bd8da 100644
+}
+#endif
diff --git a/arch/x86/kernel/process_32.c b/arch/x86/kernel/process_32.c
-index d86be29..eb6012e 100644
+index bd7be8e..631798b 100644
--- a/arch/x86/kernel/process_32.c
+++ b/arch/x86/kernel/process_32.c
-@@ -64,6 +64,7 @@ asmlinkage void ret_from_kernel_thread(void) __asm__("ret_from_kernel_thread");
- unsigned long thread_saved_pc(struct task_struct *tsk)
- {
- return ((unsigned long *)tsk->thread.sp)[3];
-+//XXX return tsk->thread.eip;
- }
-
- void __show_regs(struct pt_regs *regs, int all)
-@@ -76,16 +77,15 @@ void __show_regs(struct pt_regs *regs, int all)
+@@ -65,16 +65,15 @@ void __show_regs(struct pt_regs *regs, int all)
if (user_mode(regs)) {
sp = regs->sp;
ss = regs->ss & 0xffff;
@@ -30850,34 +33854,24 @@ index d86be29..eb6012e 100644
print_symbol("EIP is at %s\n", regs->ip);
printk(KERN_DEFAULT "EAX: %08lx EBX: %08lx ECX: %08lx EDX: %08lx\n",
-@@ -132,21 +132,22 @@ void release_thread(struct task_struct *dead_task)
+@@ -121,7 +120,7 @@ void release_thread(struct task_struct *dead_task)
int copy_thread_tls(unsigned long clone_flags, unsigned long sp,
unsigned long arg, struct task_struct *p, unsigned long tls)
{
- struct pt_regs *childregs = task_pt_regs(p);
+ struct pt_regs *childregs = task_stack_page(p) + THREAD_SIZE - sizeof(struct pt_regs) - 8;
+ struct fork_frame *fork_frame = container_of(childregs, struct fork_frame, regs);
+ struct inactive_task_frame *frame = &fork_frame->frame;
struct task_struct *tsk;
- int err;
-
- p->thread.sp = (unsigned long) childregs;
+@@ -131,6 +130,7 @@ int copy_thread_tls(unsigned long clone_flags, unsigned long sp,
+ frame->ret_addr = (unsigned long) ret_from_fork;
+ p->thread.sp = (unsigned long) fork_frame;
p->thread.sp0 = (unsigned long) (childregs+1);
-+ p->tinfo.lowest_stack = (unsigned long)task_stack_page(p) + 2 * sizeof(unsigned long);
++ p->thread.lowest_stack = (unsigned long)task_stack_page(p) + 2 * sizeof(unsigned long);
memset(p->thread.ptrace_bps, 0, sizeof(p->thread.ptrace_bps));
if (unlikely(p->flags & PF_KTHREAD)) {
- /* kernel thread */
- memset(childregs, 0, sizeof(struct pt_regs));
- p->thread.ip = (unsigned long) ret_from_kernel_thread;
-- task_user_gs(p) = __KERNEL_STACK_CANARY;
-- childregs->ds = __USER_DS;
-- childregs->es = __USER_DS;
-+ savesegment(gs, childregs->gs);
-+ childregs->ds = __KERNEL_DS;
-+ childregs->es = __KERNEL_DS;
- childregs->fs = __KERNEL_PERCPU;
- childregs->bx = sp; /* function */
- childregs->bp = arg;
-@@ -246,7 +247,7 @@ __switch_to(struct task_struct *prev_p, struct task_struct *next_p)
+@@ -231,7 +231,7 @@ __switch_to(struct task_struct *prev_p, struct task_struct *next_p)
struct fpu *prev_fpu = &prev->fpu;
struct fpu *next_fpu = &next->fpu;
int cpu = smp_processor_id();
@@ -30886,18 +33880,18 @@ index d86be29..eb6012e 100644
fpu_switch_t fpu_switch;
/* never put a printk in __switch_to... printk() calls wake_up*() indirectly */
-@@ -265,6 +266,10 @@ __switch_to(struct task_struct *prev_p, struct task_struct *next_p)
+@@ -250,6 +250,10 @@ __switch_to(struct task_struct *prev_p, struct task_struct *next_p)
*/
lazy_save_gs(prev->gs);
+#ifdef CONFIG_PAX_MEMORY_UDEREF
-+ __set_fs(task_thread_info(next_p)->addr_limit);
++ __set_fs(next_p->thread.addr_limit);
+#endif
+
/*
* Load the per-thread Thread-Local Storage descriptor.
*/
-@@ -300,9 +305,9 @@ __switch_to(struct task_struct *prev_p, struct task_struct *next_p)
+@@ -285,9 +289,8 @@ __switch_to(struct task_struct *prev_p, struct task_struct *next_p)
* current_thread_info().
*/
load_sp0(tss, next);
@@ -30905,12 +33899,11 @@ index d86be29..eb6012e 100644
- (unsigned long)task_stack_page(next_p) +
- THREAD_SIZE);
+ this_cpu_write(current_task, next_p);
-+ this_cpu_write(current_tinfo, &next_p->tinfo);
+ this_cpu_write(cpu_current_top_of_stack, next->sp0);
/*
* Restore %gs if needed (which is common)
-@@ -312,7 +317,5 @@ __switch_to(struct task_struct *prev_p, struct task_struct *next_p)
+@@ -297,7 +300,5 @@ __switch_to(struct task_struct *prev_p, struct task_struct *next_p)
switch_fpu_finish(next_fpu, fpu_switch);
@@ -30919,22 +33912,34 @@ index d86be29..eb6012e 100644
return prev_p;
}
diff --git a/arch/x86/kernel/process_64.c b/arch/x86/kernel/process_64.c
-index a21068e..3f3a2eb 100644
+index b3760b3..cb95ed8 100644
--- a/arch/x86/kernel/process_64.c
+++ b/arch/x86/kernel/process_64.c
-@@ -144,9 +144,10 @@ int copy_thread_tls(unsigned long clone_flags, unsigned long sp,
- struct pt_regs *childregs;
+@@ -35,6 +35,7 @@
+ #include <linux/uaccess.h>
+ #include <linux/io.h>
+ #include <linux/ftrace.h>
++#include <linux/syscalls.h>
+
+ #include <asm/pgtable.h>
+ #include <asm/processor.h>
+@@ -145,13 +146,14 @@ int copy_thread_tls(unsigned long clone_flags, unsigned long sp,
+ struct inactive_task_frame *frame;
struct task_struct *me = current;
- p->thread.sp0 = (unsigned long)task_stack_page(p) + THREAD_SIZE;
+ p->thread.sp0 = (unsigned long)task_stack_page(p) + THREAD_SIZE - 16;
childregs = task_pt_regs(p);
- p->thread.sp = (unsigned long) childregs;
-+ p->tinfo.lowest_stack = (unsigned long)task_stack_page(p) + 2 * sizeof(unsigned long);
- set_tsk_thread_flag(p, TIF_FORK);
+ fork_frame = container_of(childregs, struct fork_frame, regs);
+ frame = &fork_frame->frame;
+ frame->bp = 0;
+ frame->ret_addr = (unsigned long) ret_from_fork;
+ p->thread.sp = (unsigned long) fork_frame;
++ p->thread.lowest_stack = (unsigned long)task_stack_page(p) + 2 * sizeof(unsigned long);
p->thread.io_bitmap_ptr = NULL;
-@@ -156,6 +157,8 @@ int copy_thread_tls(unsigned long clone_flags, unsigned long sp,
+ savesegment(gs, p->thread.gsindex);
+@@ -160,13 +162,15 @@ int copy_thread_tls(unsigned long clone_flags, unsigned long sp,
p->thread.fsbase = p->thread.fsindex ? 0 : me->thread.fsbase;
savesegment(es, p->thread.es);
savesegment(ds, p->thread.ds);
@@ -30943,7 +33948,15 @@ index a21068e..3f3a2eb 100644
memset(p->thread.ptrace_bps, 0, sizeof(p->thread.ptrace_bps));
if (unlikely(p->flags & PF_KTHREAD)) {
-@@ -263,7 +266,7 @@ __switch_to(struct task_struct *prev_p, struct task_struct *next_p)
+ /* kernel thread */
+ memset(childregs, 0, sizeof(struct pt_regs));
+ frame->bx = sp; /* function */
+- frame->r12 = arg;
++ frame->r13 = arg;
+ return 0;
+ }
+ frame->bx = 0;
+@@ -263,7 +267,7 @@ __switch_to(struct task_struct *prev_p, struct task_struct *next_p)
struct fpu *prev_fpu = &prev->fpu;
struct fpu *next_fpu = &next->fpu;
int cpu = smp_processor_id();
@@ -30952,7 +33965,7 @@ index a21068e..3f3a2eb 100644
unsigned prev_fsindex, prev_gsindex;
fpu_switch_t fpu_switch;
-@@ -314,6 +317,10 @@ __switch_to(struct task_struct *prev_p, struct task_struct *next_p)
+@@ -314,6 +318,10 @@ __switch_to(struct task_struct *prev_p, struct task_struct *next_p)
if (unlikely(next->ds | prev->ds))
loadsegment(ds, next->ds);
@@ -30963,12 +33976,7 @@ index a21068e..3f3a2eb 100644
/*
* Switch FS and GS.
*
-@@ -423,10 +430,13 @@ __switch_to(struct task_struct *prev_p, struct task_struct *next_p)
- * Switch the PDA and FPU contexts.
- */
- this_cpu_write(current_task, next_p);
-+ this_cpu_write(current_tinfo, &next_p->tinfo);
-
+@@ -427,6 +435,8 @@ __switch_to(struct task_struct *prev_p, struct task_struct *next_p)
/* Reload esp0 and ss1. This changes current_thread_info(). */
load_sp0(tss, next);
@@ -30977,8 +33985,17 @@ index a21068e..3f3a2eb 100644
/*
* Now maybe reload the debug registers and handle I/O bitmaps
*/
+@@ -612,7 +622,7 @@ long do_arch_prctl(struct task_struct *task, int code, unsigned long addr)
+ return ret;
+ }
+
+-long sys_arch_prctl(int code, unsigned long addr)
++SYSCALL_DEFINE2(arch_prctl, int, code, unsigned long, addr)
+ {
+ return do_arch_prctl(current, code, addr);
+ }
diff --git a/arch/x86/kernel/ptrace.c b/arch/x86/kernel/ptrace.c
-index a1606ea..3e7a408 100644
+index 0e63c02..9ee59fb 100644
--- a/arch/x86/kernel/ptrace.c
+++ b/arch/x86/kernel/ptrace.c
@@ -169,7 +169,7 @@ unsigned long kernel_stack_pointer(struct pt_regs *regs)
@@ -31050,8 +34067,8 @@ index a1606ea..3e7a408 100644
#ifdef CONFIG_X86_64
--static struct user_regset x86_64_regsets[] __read_mostly = {
-+static user_regset_no_const x86_64_regsets[] __read_only = {
+-static struct user_regset x86_64_regsets[] __ro_after_init = {
++static user_regset_no_const x86_64_regsets[] __ro_after_init = {
[REGSET_GENERAL] = {
.core_note_type = NT_PRSTATUS,
.n = sizeof(struct user_regs_struct) / sizeof(long),
@@ -31059,20 +34076,11 @@ index a1606ea..3e7a408 100644
#endif /* CONFIG_X86_64 */
#if defined CONFIG_X86_32 || defined CONFIG_IA32_EMULATION
--static struct user_regset x86_32_regsets[] __read_mostly = {
-+static user_regset_no_const x86_32_regsets[] __read_only = {
+-static struct user_regset x86_32_regsets[] __ro_after_init = {
++static user_regset_no_const x86_32_regsets[] __ro_after_init = {
[REGSET_GENERAL] = {
.core_note_type = NT_PRSTATUS,
.n = sizeof(struct user_regs_struct32) / sizeof(u32),
-@@ -1344,7 +1358,7 @@ static const struct user_regset_view user_x86_32_view = {
- */
- u64 xstate_fx_sw_bytes[USER_XSTATE_FX_SW_WORDS];
-
--void update_regset_xstate_info(unsigned int size, u64 xstate_mask)
-+void __init update_regset_xstate_info(unsigned int size, u64 xstate_mask)
- {
- #ifdef CONFIG_X86_64
- x86_64_regsets[REGSET_XSTATE].n = size / sizeof(u64);
@@ -1379,7 +1393,7 @@ static void fill_sigtrap_info(struct task_struct *tsk,
memset(info, 0, sizeof(*info));
info->si_signo = SIGTRAP;
@@ -31083,7 +34091,7 @@ index a1606ea..3e7a408 100644
void user_single_step_siginfo(struct task_struct *tsk,
diff --git a/arch/x86/kernel/pvclock.c b/arch/x86/kernel/pvclock.c
-index 3599404..ebc784f 100644
+index 5b2cc88..bdbf72f 100644
--- a/arch/x86/kernel/pvclock.c
+++ b/arch/x86/kernel/pvclock.c
@@ -51,11 +51,11 @@ void pvclock_touch_watchdogs(void)
@@ -31115,7 +34123,7 @@ index 3599404..ebc784f 100644
return ret;
diff --git a/arch/x86/kernel/reboot.c b/arch/x86/kernel/reboot.c
-index 63bf27d..a75d12b 100644
+index e244c19..2cf3a26 100644
--- a/arch/x86/kernel/reboot.c
+++ b/arch/x86/kernel/reboot.c
@@ -83,6 +83,11 @@ static int __init set_bios_reboot(const struct dmi_system_id *d)
@@ -31213,18 +34221,14 @@ index 63bf27d..a75d12b 100644
{
if (pm_power_off) {
if (!reboot_force)
-@@ -703,9 +730,10 @@ static void native_machine_power_off(void)
+@@ -703,6 +730,7 @@ static void native_machine_power_off(void)
}
/* A fallback in case there is no PM info available */
tboot_shutdown(TB_SHUTDOWN_HALT);
+ unreachable();
}
--struct machine_ops machine_ops = {
-+struct machine_ops machine_ops __read_only = {
- .power_off = native_machine_power_off,
- .shutdown = native_machine_shutdown,
- .emergency_restart = native_machine_emergency_restart,
+ struct machine_ops machine_ops __ro_after_init = {
diff --git a/arch/x86/kernel/reboot_fixups_32.c b/arch/x86/kernel/reboot_fixups_32.c
index c8e41e9..64049ef 100644
--- a/arch/x86/kernel/reboot_fixups_32.c
@@ -31253,7 +34257,7 @@ index 98111b3..73ca125 100644
identity_mapped:
/* set return address to 0 if not preserving context */
diff --git a/arch/x86/kernel/setup.c b/arch/x86/kernel/setup.c
-index d5219b1..0e04ab1 100644
+index 9c337b0..16b315a 100644
--- a/arch/x86/kernel/setup.c
+++ b/arch/x86/kernel/setup.c
@@ -114,6 +114,7 @@
@@ -31286,14 +34290,14 @@ index d5219b1..0e04ab1 100644
-#if !defined(CONFIG_X86_PAE) || defined(CONFIG_X86_64)
--__visible unsigned long mmu_cr4_features;
+-__visible unsigned long mmu_cr4_features __ro_after_init;
+-#else
+#ifdef CONFIG_X86_64
-+__visible unsigned long mmu_cr4_features __read_only = X86_CR4_PSE | X86_CR4_PAE | X86_CR4_PGE;
++__visible unsigned long mmu_cr4_features __ro_after_init = X86_CR4_PSE | X86_CR4_PAE | X86_CR4_PGE;
+#elif defined(CONFIG_X86_PAE)
-+__visible unsigned long mmu_cr4_features __read_only = X86_CR4_PAE;
- #else
--__visible unsigned long mmu_cr4_features = X86_CR4_PAE;
-+__visible unsigned long mmu_cr4_features __read_only;
+ __visible unsigned long mmu_cr4_features __ro_after_init = X86_CR4_PAE;
++#else
++__visible unsigned long mmu_cr4_features __ro_after_init;
#endif
/* Boot loader ID and version as integers, for the benefit of proc_dointvec */
@@ -31304,7 +34308,7 @@ index d5219b1..0e04ab1 100644
- e820_remove_range(BIOS_BEGIN, BIOS_END - BIOS_BEGIN, E820_RAM, 1);
+ e820_remove_range(ISA_START_ADDRESS, ISA_END_ADDRESS - ISA_START_ADDRESS, E820_RAM, 1);
- sanitize_e820_map(e820.map, ARRAY_SIZE(e820.map), &e820.nr_map);
+ sanitize_e820_map(e820->map, ARRAY_SIZE(e820->map), &e820->nr_map);
}
@@ -769,7 +772,7 @@ static void __init trim_bios_range(void)
/* called before trim_bios_range() to spare extra sanitize */
@@ -31350,10 +34354,10 @@ index d5219b1..0e04ab1 100644
bss_resource.start = __pa_symbol(__bss_start);
bss_resource.end = __pa_symbol(__bss_stop)-1;
diff --git a/arch/x86/kernel/setup_percpu.c b/arch/x86/kernel/setup_percpu.c
-index 7a40e06..f60ccfe 100644
+index 2bbd27f..99987a3 100644
--- a/arch/x86/kernel/setup_percpu.c
+++ b/arch/x86/kernel/setup_percpu.c
-@@ -21,19 +21,17 @@
+@@ -21,14 +21,12 @@
#include <asm/cpu.h>
#include <asm/stackprotector.h>
@@ -31371,12 +34375,6 @@ index 7a40e06..f60ccfe 100644
DEFINE_PER_CPU_READ_MOSTLY(unsigned long, this_cpu_off) = BOOT_PERCPU_OFFSET;
EXPORT_PER_CPU_SYMBOL(this_cpu_off);
-
--unsigned long __per_cpu_offset[NR_CPUS] __read_mostly = {
-+unsigned long __per_cpu_offset[NR_CPUS] __read_only = {
- [0 ... NR_CPUS-1] = BOOT_PERCPU_OFFSET,
- };
- EXPORT_SYMBOL(__per_cpu_offset);
@@ -66,7 +64,7 @@ static bool __init pcpu_need_numa(void)
{
#ifdef CONFIG_NEED_MULTIPLE_NODES
@@ -31412,6 +34410,15 @@ index 7a40e06..f60ccfe 100644
per_cpu_offset(cpu) = delta + pcpu_unit_offsets[cpu];
per_cpu(this_cpu_off, cpu) = per_cpu_offset(cpu);
per_cpu(cpu_number, cpu) = cpu;
+@@ -244,7 +247,7 @@ void __init setup_per_cpu_areas(void)
+ early_per_cpu_map(x86_cpu_to_logical_apicid, cpu);
+ #endif
+ #ifdef CONFIG_X86_64
+- per_cpu(irq_stack_ptr, cpu) =
++ per_cpu(irq_stack_ptr, cpu) = per_cpu(irq_stack_ptr_lowmem, cpu) =
+ per_cpu(irq_stack_union.irq_stack, cpu) +
+ IRQ_STACK_SIZE;
+ #endif
@@ -261,6 +264,12 @@ void __init setup_per_cpu_areas(void)
*/
set_cpu_numa_node(cpu, early_cpu_to_node(cpu));
@@ -31426,10 +34433,18 @@ index 7a40e06..f60ccfe 100644
* Up to this point, the boot CPU has been using .init.data
* area. Reload any changed state for the boot CPU.
diff --git a/arch/x86/kernel/signal.c b/arch/x86/kernel/signal.c
-index 04cb321..e74f021 100644
+index 763af1d..178b2d6 100644
--- a/arch/x86/kernel/signal.c
+++ b/arch/x86/kernel/signal.c
-@@ -226,7 +226,7 @@ static unsigned long align_sigframe(unsigned long sp)
+@@ -23,6 +23,7 @@
+ #include <linux/user-return-notifier.h>
+ #include <linux/uprobes.h>
+ #include <linux/context_tracking.h>
++#include <linux/syscalls.h>
+
+ #include <asm/processor.h>
+ #include <asm/ucontext.h>
+@@ -227,7 +228,7 @@ static unsigned long align_sigframe(unsigned long sp)
* Align the stack pointer according to the i386 ABI,
* i.e. so that on function entry ((sp + 4) & 15) == 0.
*/
@@ -31438,7 +34453,7 @@ index 04cb321..e74f021 100644
#else /* !CONFIG_X86_32 */
sp = round_down(sp, 16) - 8;
#endif
-@@ -334,10 +334,9 @@ __setup_frame(int sig, struct ksignal *ksig, sigset_t *set,
+@@ -335,10 +336,9 @@ __setup_frame(int sig, struct ksignal *ksig, sigset_t *set,
}
if (current->mm->context.vdso)
@@ -31451,7 +34466,7 @@ index 04cb321..e74f021 100644
if (ksig->ka.sa.sa_flags & SA_RESTORER)
restorer = ksig->ka.sa.sa_restorer;
-@@ -351,7 +350,7 @@ __setup_frame(int sig, struct ksignal *ksig, sigset_t *set,
+@@ -352,7 +352,7 @@ __setup_frame(int sig, struct ksignal *ksig, sigset_t *set,
* reasons and because gdb uses it as a signature to notice
* signal handler stack frames.
*/
@@ -31460,7 +34475,7 @@ index 04cb321..e74f021 100644
if (err)
return -EFAULT;
-@@ -398,8 +397,10 @@ static int __setup_rt_frame(int sig, struct ksignal *ksig,
+@@ -399,8 +399,10 @@ static int __setup_rt_frame(int sig, struct ksignal *ksig,
save_altstack_ex(&frame->uc.uc_stack, regs->sp);
/* Set up to return from userspace. */
@@ -31473,7 +34488,7 @@ index 04cb321..e74f021 100644
if (ksig->ka.sa.sa_flags & SA_RESTORER)
restorer = ksig->ka.sa.sa_restorer;
put_user_ex(restorer, &frame->pretcode);
-@@ -411,7 +412,7 @@ static int __setup_rt_frame(int sig, struct ksignal *ksig,
+@@ -412,7 +414,7 @@ static int __setup_rt_frame(int sig, struct ksignal *ksig,
* reasons and because gdb uses it as a signature to notice
* signal handler stack frames.
*/
@@ -31482,11 +34497,38 @@ index 04cb321..e74f021 100644
} put_user_catch(err);
err |= copy_siginfo_to_user(&frame->info, &ksig->info);
+@@ -599,7 +601,7 @@ static int x32_setup_rt_frame(struct ksignal *ksig,
+ * Do a signal return; undo the signal stack.
+ */
+ #ifdef CONFIG_X86_32
+-asmlinkage unsigned long sys_sigreturn(void)
++SYSCALL_DEFINE0(sigreturn)
+ {
+ struct pt_regs *regs = current_pt_regs();
+ struct sigframe __user *frame;
+@@ -631,7 +633,7 @@ asmlinkage unsigned long sys_sigreturn(void)
+ }
+ #endif /* CONFIG_X86_32 */
+
+-asmlinkage long sys_rt_sigreturn(void)
++SYSCALL_DEFINE0(rt_sigreturn)
+ {
+ struct pt_regs *regs = current_pt_regs();
+ struct rt_sigframe __user *frame;
+@@ -853,7 +855,7 @@ void signal_fault(struct pt_regs *regs, void __user *frame, char *where)
+ }
+
+ #ifdef CONFIG_X86_X32_ABI
+-asmlinkage long sys32_x32_rt_sigreturn(void)
++SYS32_SYSCALL_DEFINE0(x32_rt_sigreturn)
+ {
+ struct pt_regs *regs = current_pt_regs();
+ struct rt_sigframe_x32 __user *frame;
diff --git a/arch/x86/kernel/smp.c b/arch/x86/kernel/smp.c
-index 658777c..6285f88 100644
+index c00cb64..73f6b30 100644
--- a/arch/x86/kernel/smp.c
+++ b/arch/x86/kernel/smp.c
-@@ -336,7 +336,7 @@ static int __init nonmi_ipi_setup(char *str)
+@@ -340,7 +340,7 @@ static int __init nonmi_ipi_setup(char *str)
__setup("nonmi_ipi", nonmi_ipi_setup);
@@ -31496,10 +34538,19 @@ index 658777c..6285f88 100644
.smp_prepare_cpus = native_smp_prepare_cpus,
.smp_cpus_done = native_smp_cpus_done,
diff --git a/arch/x86/kernel/smpboot.c b/arch/x86/kernel/smpboot.c
-index 9e152cd..60ef544 100644
+index e9bbe02..aaaed9d 100644
--- a/arch/x86/kernel/smpboot.c
+++ b/arch/x86/kernel/smpboot.c
-@@ -225,14 +225,17 @@ static void notrace start_secondary(void *unused)
+@@ -94,7 +94,7 @@ EXPORT_PER_CPU_SYMBOL(cpu_core_map);
+ DEFINE_PER_CPU_READ_MOSTLY(cpumask_var_t, cpu_llc_shared_map);
+
+ /* Per CPU bogomips and other parameters */
+-DEFINE_PER_CPU_READ_MOSTLY(struct cpuinfo_x86, cpu_info);
++DEFINE_PER_CPU_READ_ONLY(struct cpuinfo_x86, cpu_info);
+ EXPORT_PER_CPU_SYMBOL(cpu_info);
+
+ /* Logical package management. We might want to allocate that dynamically */
+@@ -224,14 +224,17 @@ static void notrace start_secondary(void *unused)
enable_start_cpu0 = 0;
@@ -31521,11 +34572,8 @@ index 9e152cd..60ef544 100644
/*
* Check TSC synchronization with the BP:
*/
-@@ -935,16 +938,15 @@ void common_cpu_up(unsigned int cpu, struct task_struct *idle)
- alternatives_enable_smp();
-
+@@ -925,13 +928,11 @@ void common_cpu_up(unsigned int cpu, struct task_struct *idle)
per_cpu(current_task, cpu) = idle;
-+ per_cpu(current_tinfo, cpu) = &idle->tinfo;
#ifdef CONFIG_X86_32
- /* Stack for startup_32 can be just as for start_secondary onwards */
@@ -31533,14 +34581,13 @@ index 9e152cd..60ef544 100644
- per_cpu(cpu_current_top_of_stack, cpu) =
- (unsigned long)task_stack_page(idle) + THREAD_SIZE;
#else
- clear_tsk_thread_flag(idle, TIF_FORK);
initial_gs = per_cpu_offset(cpu);
#endif
+ per_cpu(cpu_current_top_of_stack, cpu) = (unsigned long)task_stack_page(idle) - 16 + THREAD_SIZE;
}
/*
-@@ -965,9 +967,11 @@ static int do_boot_cpu(int apicid, int cpu, struct task_struct *idle)
+@@ -952,9 +953,11 @@ static int do_boot_cpu(int apicid, int cpu, struct task_struct *idle)
unsigned long timeout;
idle->thread.sp = (unsigned long) (((struct pt_regs *)
@@ -31551,9 +34598,9 @@ index 9e152cd..60ef544 100644
early_gdt_descr.address = (unsigned long)get_cpu_gdt_table(cpu);
+ pax_close_kernel();
initial_code = (unsigned long)start_secondary;
- stack_start = idle->thread.sp;
+ initial_stack = idle->thread.sp;
-@@ -1115,6 +1119,15 @@ int native_cpu_up(unsigned int cpu, struct task_struct *tidle)
+@@ -1102,6 +1105,15 @@ int native_cpu_up(unsigned int cpu, struct task_struct *tidle)
common_cpu_up(cpu, tidle);
@@ -31566,11 +34613,11 @@ index 9e152cd..60ef544 100644
+ KERNEL_PGD_PTRS);
+#endif
+
- /*
- * We have to walk the irq descriptors to setup the vector
- * space for the cpu which comes online. Prevent irq
+ err = do_boot_cpu(apicid, cpu, tidle);
+ if (err) {
+ pr_err("do_boot_cpu failed(%d) to wakeup CPU#%u\n", err, cpu);
diff --git a/arch/x86/kernel/step.c b/arch/x86/kernel/step.c
-index c9a0738..3d1b164 100644
+index a23ce84..88541d52 100644
--- a/arch/x86/kernel/step.c
+++ b/arch/x86/kernel/step.c
@@ -45,7 +45,8 @@ unsigned long convert_ip_to_linear(struct task_struct *child, struct pt_regs *re
@@ -31590,9 +34637,9 @@ index c9a0738..3d1b164 100644
+ if (addr == -1L)
+ return 0;
+
- copied = access_process_vm(child, addr, opcode, sizeof(opcode), 0);
+ copied = access_process_vm(child, addr, opcode, sizeof(opcode),
+ FOLL_FORCE);
for (i = 0; i < copied; i++) {
- switch (opcode[i]) {
diff --git a/arch/x86/kernel/sys_i386_32.c b/arch/x86/kernel/sys_i386_32.c
new file mode 100644
index 0000000..920e413
@@ -31789,10 +34836,10 @@ index 0000000..920e413
+ return arch_get_unmapped_area(filp, addr0, len, pgoff, flags);
+}
diff --git a/arch/x86/kernel/sys_x86_64.c b/arch/x86/kernel/sys_x86_64.c
-index 10e0272..a73232f 100644
+index a55ed63..665be0a 100644
--- a/arch/x86/kernel/sys_x86_64.c
+++ b/arch/x86/kernel/sys_x86_64.c
-@@ -97,8 +97,8 @@ out:
+@@ -97,8 +97,8 @@ SYSCALL_DEFINE6(mmap, unsigned long, addr, unsigned long, len,
return error;
}
@@ -31802,9 +34849,9 @@ index 10e0272..a73232f 100644
+ unsigned long *begin, unsigned long *end)
{
if (!test_thread_flag(TIF_ADDR32) && (flags & MAP_32BIT)) {
- unsigned long new_begin;
-@@ -117,7 +117,7 @@ static void find_start_end(unsigned long flags, unsigned long *begin,
- *begin = new_begin;
+ /* This is usually used needed to map code in small
+@@ -114,7 +114,7 @@ static void find_start_end(unsigned long flags, unsigned long *begin,
+ *begin = randomize_page(*begin, 0x02000000);
}
} else {
- *begin = current->mm->mmap_legacy_base;
@@ -31812,7 +34859,7 @@ index 10e0272..a73232f 100644
*end = TASK_SIZE;
}
}
-@@ -130,20 +130,24 @@ arch_get_unmapped_area(struct file *filp, unsigned long addr,
+@@ -127,20 +127,24 @@ arch_get_unmapped_area(struct file *filp, unsigned long addr,
struct vm_area_struct *vma;
struct vm_unmapped_area_info info;
unsigned long begin, end;
@@ -31840,7 +34887,7 @@ index 10e0272..a73232f 100644
return addr;
}
-@@ -157,18 +161,20 @@ arch_get_unmapped_area(struct file *filp, unsigned long addr,
+@@ -154,18 +158,20 @@ arch_get_unmapped_area(struct file *filp, unsigned long addr,
info.align_mask = get_align_mask();
info.align_offset += get_align_bits();
}
@@ -31864,7 +34911,7 @@ index 10e0272..a73232f 100644
/* requested length too big for entire address space */
if (len > TASK_SIZE)
-@@ -181,12 +187,15 @@ arch_get_unmapped_area_topdown(struct file *filp, const unsigned long addr0,
+@@ -178,12 +184,15 @@ arch_get_unmapped_area_topdown(struct file *filp, const unsigned long addr0,
if (!test_thread_flag(TIF_ADDR32) && (flags & MAP_32BIT))
goto bottomup;
@@ -31882,7 +34929,7 @@ index 10e0272..a73232f 100644
return addr;
}
-@@ -200,6 +209,7 @@ arch_get_unmapped_area_topdown(struct file *filp, const unsigned long addr0,
+@@ -197,6 +206,7 @@ arch_get_unmapped_area_topdown(struct file *filp, const unsigned long addr0,
info.align_mask = get_align_mask();
info.align_offset += get_align_bits();
}
@@ -31891,7 +34938,7 @@ index 10e0272..a73232f 100644
if (!(addr & ~PAGE_MASK))
return addr;
diff --git a/arch/x86/kernel/tboot.c b/arch/x86/kernel/tboot.c
-index 654f6c6..cb648a2 100644
+index 8402907..b0e4a72 100644
--- a/arch/x86/kernel/tboot.c
+++ b/arch/x86/kernel/tboot.c
@@ -44,6 +44,7 @@
@@ -32042,7 +35089,7 @@ index 1c113db..287b42e 100644
static int trace_irq_vector_refcount;
static DEFINE_MUTEX(irq_vector_mutex);
diff --git a/arch/x86/kernel/traps.c b/arch/x86/kernel/traps.c
-index b70ca12..2eb1474 100644
+index bd4e3d4..3e938e3 100644
--- a/arch/x86/kernel/traps.c
+++ b/arch/x86/kernel/traps.c
@@ -71,7 +71,7 @@
@@ -32072,7 +35119,7 @@ index b70ca12..2eb1474 100644
struct pt_regs *regs, long error_code)
{
if (v8086_mode(regs)) {
-@@ -189,8 +189,25 @@ do_trap_no_signal(struct task_struct *tsk, int trapnr, char *str,
+@@ -189,8 +189,32 @@ do_trap_no_signal(struct task_struct *tsk, int trapnr, char *str,
if (!fixup_exception(regs, trapnr)) {
tsk->thread.error_code = error_code;
tsk->thread.trap_nr = trapnr;
@@ -32083,22 +35130,29 @@ index b70ca12..2eb1474 100644
+#endif
+
+#ifdef CONFIG_PAX_RAP
-+ if (trapnr == X86_TRAP_UD)
-+ str = "PAX: overwritten function pointer or return address detected";
++ if (trapnr == X86_RAP_CALL_VECTOR) {
++ str = "PAX: overwritten function pointer detected";
++ regs->ip -= 2; // sizeof int $xx
++ } else if (trapnr == X86_RAP_RET_VECTOR) {
++ str = "PAX: overwritten return address detected";
++ regs->ip -= 2; // sizeof int $xx
++ }
+#endif
+
die(str, regs, error_code);
}
+
+#ifdef CONFIG_PAX_REFCOUNT
-+ if (trapnr == X86_REFCOUNT_VECTOR)
++ if (trapnr == X86_REFCOUNT_VECTOR) {
++ regs->ip -= 2; // sizeof int $xx
+ pax_report_refcount_error(regs, str);
++ }
+#endif
+
return 0;
}
-@@ -229,7 +246,7 @@ static siginfo_t *fill_trap_info(struct pt_regs *regs, int signr, int trapnr,
+@@ -229,7 +253,7 @@ static siginfo_t *fill_trap_info(struct pt_regs *regs, int signr, int trapnr,
}
static void
@@ -32107,7 +35161,7 @@ index b70ca12..2eb1474 100644
long error_code, siginfo_t *info)
{
struct task_struct *tsk = current;
-@@ -252,7 +269,7 @@ do_trap(int trapnr, int signr, char *str, struct pt_regs *regs,
+@@ -252,7 +276,7 @@ do_trap(int trapnr, int signr, char *str, struct pt_regs *regs,
if (show_unhandled_signals && unhandled_signal(tsk, signr) &&
printk_ratelimit()) {
pr_info("%s[%d] trap %s ip:%lx sp:%lx error:%lx",
@@ -32116,7 +35170,7 @@ index b70ca12..2eb1474 100644
regs->ip, regs->sp, error_code);
print_vma_addr(" in ", regs->ip);
pr_cont("\n");
-@@ -262,7 +279,7 @@ do_trap(int trapnr, int signr, char *str, struct pt_regs *regs,
+@@ -262,7 +286,7 @@ do_trap(int trapnr, int signr, char *str, struct pt_regs *regs,
}
NOKPROBE_SYMBOL(do_trap);
@@ -32125,10 +35179,19 @@ index b70ca12..2eb1474 100644
unsigned long trapnr, int signr)
{
siginfo_t info;
-@@ -292,6 +309,37 @@ DO_ERROR(X86_TRAP_NP, SIGBUS, "segment not present", segment_not_present)
+@@ -292,7 +316,7 @@ DO_ERROR(X86_TRAP_NP, SIGBUS, "segment not present", segment_not_present)
DO_ERROR(X86_TRAP_SS, SIGBUS, "stack segment", stack_segment)
DO_ERROR(X86_TRAP_AC, SIGBUS, "alignment check", alignment_check)
+-#ifdef CONFIG_VMAP_STACK
++#if defined(CONFIG_VMAP_STACK) || defined(CONFIG_GRKERNSEC_KSTACKOVERFLOW)
+ __visible void __noreturn handle_stack_overflow(const char *message,
+ struct pt_regs *regs,
+ unsigned long fault_address)
+@@ -307,13 +331,49 @@ __visible void __noreturn handle_stack_overflow(const char *message,
+ }
+ #endif
+
+#ifdef CONFIG_PAX_REFCOUNT
+extern char __refcount_overflow_start[], __refcount_overflow_end[];
+extern char __refcount64_overflow_start[], __refcount64_overflow_end[];
@@ -32160,22 +35223,45 @@ index b70ca12..2eb1474 100644
+}
+#endif
+
++#ifdef CONFIG_PAX_RAP
++DO_ERROR(X86_RAP_CALL_VECTOR, SIGILL, "RAP call violation", rap_call_error)
++DO_ERROR(X86_RAP_RET_VECTOR, SIGILL, "RAP return violation", rap_ret_error)
++#endif
++
#ifdef CONFIG_X86_64
/* Runs on IST stack */
dotraplinkage void do_double_fault(struct pt_regs *regs, long error_code)
-@@ -332,6 +380,11 @@ dotraplinkage void do_double_fault(struct pt_regs *regs, long error_code)
+ {
+ static const char str[] = "double fault";
+ struct task_struct *tsk = current;
+-#ifdef CONFIG_VMAP_STACK
++#if defined(CONFIG_VMAP_STACK) || defined(CONFIG_GRKERNSEC_KSTACKOVERFLOW)
+ unsigned long cr2;
+ #endif
+
+@@ -350,7 +410,7 @@ dotraplinkage void do_double_fault(struct pt_regs *regs, long error_code)
tsk->thread.error_code = error_code;
tsk->thread.trap_nr = X86_TRAP_DF;
+-#ifdef CONFIG_VMAP_STACK
++#if defined(CONFIG_VMAP_STACK) || defined(CONFIG_GRKERNSEC_KSTACKOVERFLOW)
+ /*
+ * If we overflow the stack into a guard page, the CPU will fail
+ * to deliver #PF and will send #DF instead. Similarly, if we
+@@ -390,8 +450,12 @@ dotraplinkage void do_double_fault(struct pt_regs *regs, long error_code)
+ */
+ cr2 = read_cr2();
+ if ((unsigned long)task_stack_page(tsk) - 1 - cr2 < PAGE_SIZE)
+#ifdef CONFIG_GRKERNSEC_KSTACKOVERFLOW
-+ if ((unsigned long)tsk->stack - regs->sp <= PAGE_SIZE)
-+ die("grsec: kernel stack overflow detected", regs, error_code);
++ handle_stack_overflow("grsec: kernel stack overflow detected", regs, cr2);
++#else
+ handle_stack_overflow("kernel stack overflow (double-fault)", regs, cr2);
+ #endif
+#endif
-+
+
#ifdef CONFIG_DOUBLEFAULT
df_debug(regs, error_code);
- #endif
-@@ -444,11 +497,35 @@ do_general_protection(struct pt_regs *regs, long error_code)
+@@ -505,11 +569,35 @@ do_general_protection(struct pt_regs *regs, long error_code)
tsk->thread.error_code = error_code;
tsk->thread.trap_nr = X86_TRAP_GP;
if (notify_die(DIE_GPF, "general protection fault", regs, error_code,
@@ -32212,7 +35298,7 @@ index b70ca12..2eb1474 100644
tsk->thread.error_code = error_code;
tsk->thread.trap_nr = X86_TRAP_GP;
-@@ -546,6 +623,9 @@ struct bad_iret_stack *fixup_bad_iret(struct bad_iret_stack *s)
+@@ -607,6 +695,9 @@ struct bad_iret_stack *fixup_bad_iret(struct bad_iret_stack *s)
container_of(task_pt_regs(current),
struct bad_iret_stack, regs);
@@ -32222,7 +35308,7 @@ index b70ca12..2eb1474 100644
/* Copy the IRET target to the new stack. */
memmove(&new_stack->regs.ip, (void *)s->regs.sp, 5*8);
-@@ -717,7 +797,7 @@ exit:
+@@ -778,7 +869,7 @@ dotraplinkage void do_debug(struct pt_regs *regs, long error_code)
* This is the most likely code path that involves non-trivial use
* of the SYSENTER stack. Check that we haven't overrun it.
*/
@@ -32231,7 +35317,7 @@ index b70ca12..2eb1474 100644
"Overran or corrupted SYSENTER stack\n");
#endif
ist_exit(regs);
-@@ -847,7 +927,7 @@ void __init early_trap_init(void)
+@@ -908,7 +999,7 @@ void __init early_trap_init(void)
* since we don't have trace_debug and it will be reset to
* 'debug' in trap_init() by set_intr_gate_ist().
*/
@@ -32240,7 +35326,7 @@ index b70ca12..2eb1474 100644
/* int3 can be called from all */
set_system_intr_gate(X86_TRAP_BP, &int3);
#ifdef CONFIG_X86_32
-@@ -914,6 +994,11 @@ void __init trap_init(void)
+@@ -975,6 +1066,19 @@ void __init trap_init(void)
set_bit(IA32_SYSCALL_VECTOR, used_vectors);
#endif
@@ -32249,10 +35335,18 @@ index b70ca12..2eb1474 100644
+ set_bit(X86_REFCOUNT_VECTOR, used_vectors);
+#endif
+
++#ifdef CONFIG_PAX_RAP
++ set_intr_gate(X86_RAP_CALL_VECTOR, rap_call_error);
++ set_bit(X86_RAP_CALL_VECTOR, used_vectors);
++
++ set_intr_gate(X86_RAP_RET_VECTOR, rap_ret_error);
++ set_bit(X86_RAP_RET_VECTOR, used_vectors);
++#endif
++
/*
* Set the IDT descriptor to a fixed read-only location, so that the
* "sidt" instruction will not leak the location of the kernel, and
-@@ -932,7 +1017,7 @@ void __init trap_init(void)
+@@ -993,7 +1097,7 @@ void __init trap_init(void)
* in early_trap_init(). However, ITS works only after
* cpu_init() loads TSS. See comments in early_trap_init().
*/
@@ -32261,7 +35355,7 @@ index b70ca12..2eb1474 100644
/* int3 can be called from all */
set_system_intr_gate_ist(X86_TRAP_BP, &int3, DEBUG_STACK);
-@@ -940,7 +1025,7 @@ void __init trap_init(void)
+@@ -1001,7 +1105,7 @@ void __init trap_init(void)
#ifdef CONFIG_X86_64
memcpy(&debug_idt_table, &idt_table, IDT_ENTRIES * 16);
@@ -32271,18 +35365,18 @@ index b70ca12..2eb1474 100644
#endif
}
diff --git a/arch/x86/kernel/tsc.c b/arch/x86/kernel/tsc.c
-index 78b9cb5..88ba83a 100644
+index 46b2f41..666b35b 100644
--- a/arch/x86/kernel/tsc.c
+++ b/arch/x86/kernel/tsc.c
-@@ -23,6 +23,7 @@
- #include <asm/x86_init.h>
+@@ -24,6 +24,7 @@
#include <asm/geode.h>
#include <asm/apic.h>
+ #include <asm/intel-family.h>
+#include <asm/pgtable.h>
unsigned int __read_mostly cpu_khz; /* TSC clocks / usec, not used here */
EXPORT_SYMBOL(cpu_khz);
-@@ -157,7 +158,7 @@ static void cyc2ns_write_end(int cpu, struct cyc2ns_data *data)
+@@ -158,7 +159,7 @@ static void cyc2ns_write_end(int cpu, struct cyc2ns_data *data)
*/
smp_wmb();
@@ -32291,7 +35385,16 @@ index 78b9cb5..88ba83a 100644
}
/*
-@@ -992,7 +993,9 @@ static int time_cpufreq_notifier(struct notifier_block *nb, unsigned long val,
+@@ -289,7 +290,7 @@ static void set_cyc2ns_scale(unsigned long khz, int cpu)
+ /*
+ * Scheduler clock - returns current time in nanosec units.
+ */
+-u64 native_sched_clock(void)
++unsigned long long native_sched_clock(void)
+ {
+ if (static_branch_likely(&__use_tsc)) {
+ u64 tsc_now = rdtsc();
+@@ -998,7 +999,9 @@ static int time_cpufreq_notifier(struct notifier_block *nb, unsigned long val,
}
if ((val == CPUFREQ_PRECHANGE && freq->old < freq->new) ||
(val == CPUFREQ_POSTCHANGE && freq->old > freq->new)) {
@@ -32409,7 +35512,7 @@ index 01f30e5..a304a4c 100644
case VM86_GET_AND_RESET_IRQ: {
return get_and_reset_irq(irqnumber);
diff --git a/arch/x86/kernel/vmlinux.lds.S b/arch/x86/kernel/vmlinux.lds.S
-index 9297a00..3dc41ac 100644
+index dbf67f6..2836431 100644
--- a/arch/x86/kernel/vmlinux.lds.S
+++ b/arch/x86/kernel/vmlinux.lds.S
@@ -26,6 +26,13 @@
@@ -32479,7 +35582,7 @@ index 9297a00..3dc41ac 100644
HEAD_TEXT
. = ALIGN(8);
_stext = .;
-@@ -104,13 +125,35 @@ SECTIONS
+@@ -105,13 +126,35 @@ SECTIONS
SOFTIRQENTRY_TEXT
*(.fixup)
*(.gnu.warning)
@@ -32519,7 +35622,7 @@ index 9297a00..3dc41ac 100644
/* .text should occupy whole number of pages */
. = ALIGN(PAGE_SIZE);
-@@ -120,16 +163,20 @@ SECTIONS
+@@ -121,16 +164,20 @@ SECTIONS
/* Data */
.data : AT(ADDR(.data) - LOAD_OFFSET) {
@@ -32543,7 +35646,7 @@ index 9297a00..3dc41ac 100644
PAGE_ALIGNED_DATA(PAGE_SIZE)
-@@ -172,12 +219,19 @@ SECTIONS
+@@ -173,12 +220,19 @@ SECTIONS
. = ALIGN(__vvar_page + PAGE_SIZE, PAGE_SIZE);
/* Init code and data - will be freed after init */
@@ -32566,7 +35669,7 @@ index 9297a00..3dc41ac 100644
/*
* percpu offsets are zero-based on SMP. PERCPU_VADDR() changes the
* output PHDR, so the next output section - .init.text - should
-@@ -188,10 +242,13 @@ SECTIONS
+@@ -189,10 +243,13 @@ SECTIONS
"per-CPU data too large - increase CONFIG_PHYSICAL_START")
#endif
@@ -32584,7 +35687,7 @@ index 9297a00..3dc41ac 100644
/*
* Section for code used exclusively before alternatives are run. All
-@@ -200,11 +257,29 @@ SECTIONS
+@@ -201,11 +258,29 @@ SECTIONS
*
* See static_cpu_has() for an example.
*/
@@ -32616,7 +35719,7 @@ index 9297a00..3dc41ac 100644
.x86_cpu_dev.init : AT(ADDR(.x86_cpu_dev.init) - LOAD_OFFSET) {
__x86_cpu_dev_start = .;
-@@ -275,19 +350,12 @@ SECTIONS
+@@ -276,19 +351,12 @@ SECTIONS
}
. = ALIGN(8);
@@ -32637,7 +35740,7 @@ index 9297a00..3dc41ac 100644
PERCPU_SECTION(INTERNODE_CACHE_BYTES)
#endif
-@@ -306,16 +374,10 @@ SECTIONS
+@@ -307,16 +375,10 @@ SECTIONS
.smp_locks : AT(ADDR(.smp_locks) - LOAD_OFFSET) {
__smp_locks = .;
*(.smp_locks)
@@ -32655,7 +35758,7 @@ index 9297a00..3dc41ac 100644
/* BSS */
. = ALIGN(PAGE_SIZE);
.bss : AT(ADDR(.bss) - LOAD_OFFSET) {
-@@ -331,6 +393,7 @@ SECTIONS
+@@ -332,6 +394,7 @@ SECTIONS
__brk_base = .;
. += 64 * 1024; /* 64k alignment slop space */
*(.brk_reservation) /* areas brk users have reserved */
@@ -32663,7 +35766,7 @@ index 9297a00..3dc41ac 100644
__brk_limit = .;
}
-@@ -361,13 +424,12 @@ SECTIONS
+@@ -362,13 +425,12 @@ SECTIONS
* for the boot processor.
*/
#define INIT_PER_CPU(x) init_per_cpu__##x = x + __per_cpu_load
@@ -32678,123 +35781,165 @@ index 9297a00..3dc41ac 100644
"kernel image bigger than KERNEL_IMAGE_SIZE");
#ifdef CONFIG_SMP
-diff --git a/arch/x86/kernel/x8664_ksyms_64.c b/arch/x86/kernel/x8664_ksyms_64.c
-index 95e49f6..975337d 100644
---- a/arch/x86/kernel/x8664_ksyms_64.c
-+++ b/arch/x86/kernel/x8664_ksyms_64.c
-@@ -35,8 +35,6 @@ EXPORT_SYMBOL(copy_user_generic_string);
- EXPORT_SYMBOL(copy_user_generic_unrolled);
- EXPORT_SYMBOL(copy_user_enhanced_fast_string);
- EXPORT_SYMBOL(__copy_user_nocache);
--EXPORT_SYMBOL(_copy_from_user);
--EXPORT_SYMBOL(_copy_to_user);
-
- EXPORT_SYMBOL_GPL(memcpy_mcsafe);
-
-@@ -83,3 +81,7 @@ EXPORT_SYMBOL(native_load_gs_index);
- EXPORT_SYMBOL(___preempt_schedule);
- EXPORT_SYMBOL(___preempt_schedule_notrace);
- #endif
-+
-+#ifdef CONFIG_PAX_PER_CPU_PGD
-+EXPORT_SYMBOL(cpu_pgd);
-+#endif
-diff --git a/arch/x86/kernel/x86_init.c b/arch/x86/kernel/x86_init.c
-index 76c5e52..6f2af84 100644
---- a/arch/x86/kernel/x86_init.c
-+++ b/arch/x86/kernel/x86_init.c
-@@ -91,7 +91,7 @@ struct x86_cpuinit_ops x86_cpuinit = {
- static void default_nmi_init(void) { };
- static int default_i8042_detect(void) { return 1; };
-
--struct x86_platform_ops x86_platform = {
-+struct x86_platform_ops x86_platform __read_only = {
- .calibrate_cpu = native_calibrate_cpu,
- .calibrate_tsc = native_calibrate_tsc,
- .get_wallclock = mach_get_cmos_time,
-@@ -108,7 +108,7 @@ struct x86_platform_ops x86_platform = {
- EXPORT_SYMBOL_GPL(x86_platform);
-
- #if defined(CONFIG_PCI_MSI)
--struct x86_msi_ops x86_msi = {
-+struct x86_msi_ops x86_msi __read_only = {
- .setup_msi_irqs = native_setup_msi_irqs,
- .teardown_msi_irq = native_teardown_msi_irq,
- .teardown_msi_irqs = default_teardown_msi_irqs,
-@@ -137,7 +137,7 @@ void arch_restore_msi_irqs(struct pci_dev *dev)
- }
- #endif
-
--struct x86_io_apic_ops x86_io_apic_ops = {
-+struct x86_io_apic_ops x86_io_apic_ops __read_only = {
- .read = native_io_apic_read,
- .disable = native_disable_io_apic,
- };
-diff --git a/arch/x86/kvm/cpuid.c b/arch/x86/kvm/cpuid.c
-index 3235e0f..60b5e71 100644
---- a/arch/x86/kvm/cpuid.c
-+++ b/arch/x86/kvm/cpuid.c
-@@ -224,15 +224,20 @@ int kvm_vcpu_ioctl_set_cpuid2(struct kvm_vcpu *vcpu,
- struct kvm_cpuid2 *cpuid,
- struct kvm_cpuid_entry2 __user *entries)
- {
-- int r;
-+ int r, i;
-
- r = -E2BIG;
- if (cpuid->nent > KVM_MAX_CPUID_ENTRIES)
- goto out;
- r = -EFAULT;
-- if (copy_from_user(&vcpu->arch.cpuid_entries, entries,
-- cpuid->nent * sizeof(struct kvm_cpuid_entry2)))
-+ if (!access_ok(VERIFY_READ, entries, cpuid->nent * sizeof(struct kvm_cpuid_entry2)))
- goto out;
-+ for (i = 0; i < cpuid->nent; ++i) {
-+ struct kvm_cpuid_entry2 cpuid_entry;
-+ if (__copy_from_user(&cpuid_entry, entries + i, sizeof(cpuid_entry)))
-+ goto out;
-+ vcpu->arch.cpuid_entries[i] = cpuid_entry;
-+ }
- vcpu->arch.cpuid_nent = cpuid->nent;
- kvm_apic_set_version(vcpu);
- kvm_x86_ops->cpuid_update(vcpu);
-@@ -245,15 +250,19 @@ int kvm_vcpu_ioctl_get_cpuid2(struct kvm_vcpu *vcpu,
- struct kvm_cpuid2 *cpuid,
- struct kvm_cpuid_entry2 __user *entries)
- {
-- int r;
-+ int r, i;
-
- r = -E2BIG;
- if (cpuid->nent < vcpu->arch.cpuid_nent)
- goto out;
- r = -EFAULT;
-- if (copy_to_user(entries, &vcpu->arch.cpuid_entries,
-- vcpu->arch.cpuid_nent * sizeof(struct kvm_cpuid_entry2)))
-+ if (!access_ok(VERIFY_WRITE, entries, vcpu->arch.cpuid_nent * sizeof(struct kvm_cpuid_entry2)))
- goto out;
-+ for (i = 0; i < vcpu->arch.cpuid_nent; ++i) {
-+ struct kvm_cpuid_entry2 cpuid_entry = vcpu->arch.cpuid_entries[i];
-+ if (__copy_to_user(entries + i, &cpuid_entry, sizeof(cpuid_entry)))
-+ goto out;
-+ }
- return 0;
-
- out:
+diff --git a/arch/x86/kernel/vsmp_64.c b/arch/x86/kernel/vsmp_64.c
+index b034b1b..61b3eef 100644
+--- a/arch/x86/kernel/vsmp_64.c
++++ b/arch/x86/kernel/vsmp_64.c
+@@ -117,11 +117,13 @@ static void __init set_vsmp_pv_ops(void)
+
+ if (cap & ctl & (1 << 4)) {
+ /* Setup irq ops and turn on vSMP IRQ fastpath handling */
+- pv_irq_ops.irq_disable = PV_CALLEE_SAVE(vsmp_irq_disable);
+- pv_irq_ops.irq_enable = PV_CALLEE_SAVE(vsmp_irq_enable);
+- pv_irq_ops.save_fl = PV_CALLEE_SAVE(vsmp_save_fl);
+- pv_irq_ops.restore_fl = PV_CALLEE_SAVE(vsmp_restore_fl);
++ pax_open_kernel();
++ pv_irq_ops.irq_disable = PV_CALLEE_SAVE(irq_disable, vsmp_irq_disable);
++ pv_irq_ops.irq_enable = PV_CALLEE_SAVE(irq_enable, vsmp_irq_enable);
++ pv_irq_ops.save_fl = PV_CALLEE_SAVE(save_fl, vsmp_save_fl);
++ pv_irq_ops.restore_fl = PV_CALLEE_SAVE(restore_fl, vsmp_restore_fl);
+ pv_init_ops.patch = vsmp_patch;
++ pax_close_kernel();
+ ctl &= ~(1 << 4);
+ }
+ writel(ctl, address + 4);
diff --git a/arch/x86/kvm/emulate.c b/arch/x86/kvm/emulate.c
-index a3ce9d2..0c0ef16 100644
+index 9f676ad..7024de4 100644
--- a/arch/x86/kvm/emulate.c
+++ b/arch/x86/kvm/emulate.c
-@@ -971,7 +971,7 @@ static int em_bsr_c(struct x86_emulate_ctxt *ctxt)
- static __always_inline u8 test_cc(unsigned int condition, unsigned long flags)
+@@ -25,6 +25,7 @@
+ #include <asm/kvm_emulate.h>
+ #include <linux/stringify.h>
+ #include <asm/debugreg.h>
++#include <linux/linkage.h>
+
+ #include "x86.h"
+ #include "tss.h"
+@@ -220,7 +221,7 @@ struct opcode {
+ void (*fastop)(struct fastop *fake);
+ } u;
+ int (*check_perm)(struct x86_emulate_ctxt *ctxt);
+-};
++} __rap_hash;
+
+ struct group_dual {
+ struct opcode mod012[8];
+@@ -425,25 +426,6 @@ static int fastop(struct x86_emulate_ctxt *ctxt, void (*fop)(struct fastop *));
+ asm(".global kvm_fastop_exception \n"
+ "kvm_fastop_exception: xor %esi, %esi; ret");
+
+-FOP_START(setcc)
+-FOP_SETCC(seto)
+-FOP_SETCC(setno)
+-FOP_SETCC(setc)
+-FOP_SETCC(setnc)
+-FOP_SETCC(setz)
+-FOP_SETCC(setnz)
+-FOP_SETCC(setbe)
+-FOP_SETCC(setnbe)
+-FOP_SETCC(sets)
+-FOP_SETCC(setns)
+-FOP_SETCC(setp)
+-FOP_SETCC(setnp)
+-FOP_SETCC(setl)
+-FOP_SETCC(setnl)
+-FOP_SETCC(setle)
+-FOP_SETCC(setnle)
+-FOP_END;
+-
+ FOP_START(salc) "pushf; sbb %al, %al; popf \n\t" FOP_RET
+ FOP_END;
+
+@@ -1006,14 +988,82 @@ static int em_bsr_c(struct x86_emulate_ctxt *ctxt)
+ return fastop(ctxt, em_bsr);
+ }
+
+-static __always_inline u8 test_cc(unsigned int condition, unsigned long flags)
++static unsigned int test_cc(unsigned int condition, unsigned int flags)
{
- u8 rc;
+- u8 rc;
- void (*fop)(void) = (void *)em_setcc + 4 * (condition & 0xf);
-+ void (*fop)(struct fastop *) = (void *)em_setcc + 4 * (condition & 0xf);
++ unsigned int rc;
++
++ switch (condition & 0xf) {
++ case 0:
++ rc = flags & X86_EFLAGS_OF;
++ break;
++
++ case 1:
++ rc = ~flags & X86_EFLAGS_OF;
++ break;
++
++ case 2:
++ rc = flags & X86_EFLAGS_CF;
++ break;
++
++ case 3:
++ rc = ~flags & X86_EFLAGS_CF;
++ break;
++
++ case 4:
++ rc = flags & X86_EFLAGS_ZF;
++ break;
++
++ case 5:
++ rc = ~flags & X86_EFLAGS_ZF;
++ break;
++
++ case 6:
++ rc = flags & (X86_EFLAGS_CF | X86_EFLAGS_ZF);
++ break;
++
++ case 7:
++ rc = (flags & (X86_EFLAGS_CF | X86_EFLAGS_ZF)) ? 0 : 1;
++ break;
++
++ case 8:
++ rc = flags & X86_EFLAGS_SF;
++ break;
++
++ case 9:
++ rc = ~flags & X86_EFLAGS_SF;
++ break;
++
++ case 10:
++ rc = flags & X86_EFLAGS_PF;
++ break;
++
++ case 11:
++ rc = ~flags & X86_EFLAGS_PF;
++ break;
++
++ case 12:
++ rc = flags & X86_EFLAGS_SF;
++ rc ^= (flags & X86_EFLAGS_OF) >> (X86_EFLAGS_OF_BIT - X86_EFLAGS_SF_BIT);
++ break;
++
++ case 13:
++ rc = ~flags & X86_EFLAGS_SF;
++ rc ^= (flags & X86_EFLAGS_OF) >> (X86_EFLAGS_OF_BIT - X86_EFLAGS_SF_BIT);
++ break;
++
++ case 14:
++ rc = flags & X86_EFLAGS_SF;
++ rc ^= (flags & X86_EFLAGS_OF) >> (X86_EFLAGS_OF_BIT - X86_EFLAGS_SF_BIT);
++ rc |= flags & X86_EFLAGS_ZF;
++ break;
++
++ case 15:
++ rc = ~flags & X86_EFLAGS_SF;
++ rc ^= (flags & X86_EFLAGS_OF) >> (X86_EFLAGS_OF_BIT - X86_EFLAGS_SF_BIT);
++ rc &= (~flags & X86_EFLAGS_ZF) << (X86_EFLAGS_SF_BIT - X86_EFLAGS_ZF_BIT);
++ break;
++ }
+
+- flags = (flags & EFLAGS_MASK) | X86_EFLAGS_IF;
+- asm("push %[flags]; popf; call *%[fastop]"
+- : "=a"(rc) : [fastop]"r"(fop), [flags]"r"(flags));
+ return rc;
+ }
- flags = (flags & EFLAGS_MASK) | X86_EFLAGS_IF;
- asm("push %[flags]; popf; call *%[fastop]"
-@@ -1893,7 +1893,7 @@ static int em_push_sreg(struct x86_emulate_ctxt *ctxt)
+@@ -1959,7 +2009,7 @@ static int em_push_sreg(struct x86_emulate_ctxt *ctxt)
static int em_pop_sreg(struct x86_emulate_ctxt *ctxt)
{
int seg = ctxt->src2.val;
@@ -32803,7 +35948,7 @@ index a3ce9d2..0c0ef16 100644
int rc;
rc = emulate_pop(ctxt, &selector, 2);
-@@ -1905,7 +1905,7 @@ static int em_pop_sreg(struct x86_emulate_ctxt *ctxt)
+@@ -1971,7 +2021,7 @@ static int em_pop_sreg(struct x86_emulate_ctxt *ctxt)
if (ctxt->op_bytes > 2)
rsp_increment(ctxt, ctxt->op_bytes - 2);
@@ -32812,7 +35957,7 @@ index a3ce9d2..0c0ef16 100644
return rc;
}
-@@ -3868,7 +3868,7 @@ static int check_cr_write(struct x86_emulate_ctxt *ctxt)
+@@ -4059,7 +4109,7 @@ static int check_cr_write(struct x86_emulate_ctxt *ctxt)
int cr = ctxt->modrm_reg;
u64 efer = 0;
@@ -32821,7 +35966,7 @@ index a3ce9d2..0c0ef16 100644
0xffffffff00000000ULL,
0, 0, 0, /* CR3 checked later */
CR4_RESERVED_BITS,
-@@ -4954,7 +4954,10 @@ done_prefixes:
+@@ -5147,7 +5197,10 @@ int x86_decode_insn(struct x86_emulate_ctxt *ctxt, void *insn, int insn_len)
if (ctxt->d == 0)
return EMULATION_FAILED;
@@ -32833,7 +35978,16 @@ index a3ce9d2..0c0ef16 100644
if (unlikely(ctxt->ud) && likely(!(ctxt->d & EmulateOnUD)))
return EMULATION_FAILED;
-@@ -5269,15 +5272,14 @@ special_insn:
+@@ -5286,7 +5339,7 @@ static int fastop(struct x86_emulate_ctxt *ctxt, void (*fop)(struct fastop *))
+ if (!(ctxt->d & ByteOp))
+ fop += __ffs(ctxt->dst.bytes) * FASTOP_SIZE;
+
+- asm("push %[flags]; popf; call *%[fastop]; pushf; pop %[flags]\n"
++ asm("push %[flags]; popf;" PAX_INDIRECT_CALL("*%[fastop]", "opcode.u.fastop") "; pushf; pop %[flags]\n"
+ : "+a"(ctxt->dst.val), "+d"(ctxt->src.val), [flags]"+D"(flags),
+ [fastop]"+S"(fop), "+r"(__sp)
+ : "c"(ctxt->src2.val));
+@@ -5454,15 +5507,14 @@ int x86_emulate_insn(struct x86_emulate_ctxt *ctxt)
else
ctxt->eflags &= ~X86_EFLAGS_RF;
@@ -32935,7 +36089,7 @@ index 6e219e5..ccaf115 100644
{
struct dest_map *dest_map = &ioapic->rtc_status.dest_map;
diff --git a/arch/x86/kvm/lapic.c b/arch/x86/kvm/lapic.c
-index d2255e4..65d458a 100644
+index 3f05c04..b79e6ea 100644
--- a/arch/x86/kvm/lapic.c
+++ b/arch/x86/kvm/lapic.c
@@ -57,7 +57,7 @@
@@ -32951,7 +36105,7 @@ diff --git a/arch/x86/kvm/paging_tmpl.h b/arch/x86/kvm/paging_tmpl.h
index a011054..da14b47 100644
--- a/arch/x86/kvm/paging_tmpl.h
+++ b/arch/x86/kvm/paging_tmpl.h
-@@ -355,7 +355,7 @@ retry_walk:
+@@ -355,7 +355,7 @@ static int FNAME(walk_addr_generic)(struct guest_walker *walker,
if (unlikely(kvm_is_error_hva(host_addr)))
goto error;
@@ -32961,10 +36115,10 @@ index a011054..da14b47 100644
goto error;
walker->ptep_user[walker->level - 1] = ptep_user;
diff --git a/arch/x86/kvm/svm.c b/arch/x86/kvm/svm.c
-index af523d8..ba7da48 100644
+index 8ca1eca..fff3699b 100644
--- a/arch/x86/kvm/svm.c
+++ b/arch/x86/kvm/svm.c
-@@ -4120,7 +4120,11 @@ static void reload_tss(struct kvm_vcpu *vcpu)
+@@ -4253,7 +4253,11 @@ static void reload_tss(struct kvm_vcpu *vcpu)
int cpu = raw_smp_processor_id();
struct svm_cpu_data *sd = per_cpu(svm_data, cpu);
@@ -32976,31 +36130,22 @@ index af523d8..ba7da48 100644
load_TR_desc();
}
-@@ -4559,6 +4563,10 @@ static void svm_vcpu_run(struct kvm_vcpu *vcpu)
+@@ -4895,6 +4899,10 @@ static void svm_vcpu_run(struct kvm_vcpu *vcpu)
#endif
#endif
+#if defined(CONFIG_X86_32) && defined(CONFIG_PAX_MEMORY_UDEREF)
-+ __set_fs(current_thread_info()->addr_limit);
++ __set_fs(current->thread.addr_limit);
+#endif
+
reload_tss(vcpu);
local_irq_disable();
-@@ -4961,7 +4969,7 @@ static inline void avic_post_state_restore(struct kvm_vcpu *vcpu)
- avic_handle_ldr_update(vcpu);
- }
-
--static struct kvm_x86_ops svm_x86_ops = {
-+static struct kvm_x86_ops svm_x86_ops __read_only = {
- .cpu_has_kvm_support = has_svm,
- .disabled_by_bios = is_disabled,
- .hardware_setup = svm_hardware_setup,
diff --git a/arch/x86/kvm/vmx.c b/arch/x86/kvm/vmx.c
-index 7a72db5..b5f6032 100644
+index 64774f4..4888061 100644
--- a/arch/x86/kvm/vmx.c
+++ b/arch/x86/kvm/vmx.c
-@@ -1666,14 +1666,14 @@ static __always_inline void vmcs_writel(unsigned long field, unsigned long value
+@@ -1675,14 +1675,14 @@ static __always_inline void vmcs_writel(unsigned long field, unsigned long value
__vmcs_writel(field, value);
}
@@ -33017,7 +36162,7 @@ index 7a72db5..b5f6032 100644
{
BUILD_BUG_ON_MSG(__builtin_constant_p(field) && ((field) & 0x6000) == 0x2000,
"vmcs_set_bits does not support 64-bit fields");
-@@ -1952,7 +1952,11 @@ static void reload_tss(void)
+@@ -1961,7 +1961,11 @@ static void reload_tss(void)
struct desc_struct *descs;
descs = (void *)gdt->address;
@@ -33029,7 +36174,7 @@ index 7a72db5..b5f6032 100644
load_TR_desc();
}
-@@ -2256,6 +2260,10 @@ static void vmx_vcpu_load(struct kvm_vcpu *vcpu, int cpu)
+@@ -2265,6 +2269,10 @@ static void vmx_vcpu_load(struct kvm_vcpu *vcpu, int cpu)
vmcs_writel(HOST_TR_BASE, kvm_read_tr_base()); /* 22.2.4 */
vmcs_writel(HOST_GDTR_BASE, gdt->address); /* 22.2.4 */
@@ -33040,7 +36185,7 @@ index 7a72db5..b5f6032 100644
rdmsrl(MSR_IA32_SYSENTER_ESP, sysenter_esp);
vmcs_writel(HOST_IA32_SYSENTER_ESP, sysenter_esp); /* 22.2.3 */
-@@ -2580,7 +2588,7 @@ static void setup_msrs(struct vcpu_vmx *vmx)
+@@ -2596,7 +2604,7 @@ static void setup_msrs(struct vcpu_vmx *vmx)
* guest_tsc = (host_tsc * tsc multiplier) >> 48 + tsc_offset
* -- Intel TSC Scaling for Virtualization White Paper, sec 1.3
*/
@@ -33049,7 +36194,7 @@ index 7a72db5..b5f6032 100644
{
u64 host_tsc, tsc_offset;
-@@ -4840,7 +4848,10 @@ static void vmx_set_constant_host_state(struct vcpu_vmx *vmx)
+@@ -4848,7 +4856,10 @@ static void vmx_set_constant_host_state(struct vcpu_vmx *vmx)
unsigned long cr4;
vmcs_writel(HOST_CR0, read_cr0() & ~X86_CR0_TS); /* 22.2.3 */
@@ -33060,7 +36205,7 @@ index 7a72db5..b5f6032 100644
/* Save the most likely value for this task's CR4 in the VMCS. */
cr4 = cr4_read_shadow();
-@@ -4867,7 +4878,7 @@ static void vmx_set_constant_host_state(struct vcpu_vmx *vmx)
+@@ -4875,7 +4886,7 @@ static void vmx_set_constant_host_state(struct vcpu_vmx *vmx)
vmcs_writel(HOST_IDTR_BASE, dt.address); /* 22.2.4 */
vmx->host_idt_base = dt.address;
@@ -33069,7 +36214,7 @@ index 7a72db5..b5f6032 100644
rdmsr(MSR_IA32_SYSENTER_CS, low32, high32);
vmcs_write32(HOST_IA32_SYSENTER_CS, low32);
-@@ -6428,11 +6439,17 @@ static __init int hardware_setup(void)
+@@ -6447,11 +6458,17 @@ static __init int hardware_setup(void)
* page upon invalidation. No need to do anything if not
* using the APIC_ACCESS_ADDR VMCS field.
*/
@@ -33089,7 +36234,7 @@ index 7a72db5..b5f6032 100644
if (enable_ept && !cpu_has_vmx_ept_2m_page())
kvm_disable_largepages();
-@@ -6498,10 +6515,12 @@ static __init int hardware_setup(void)
+@@ -6532,10 +6549,12 @@ static __init int hardware_setup(void)
enable_pml = 0;
if (!enable_pml) {
@@ -33102,7 +36247,7 @@ index 7a72db5..b5f6032 100644
}
if (cpu_has_vmx_preemption_timer() && enable_preemption_timer) {
-@@ -8889,6 +8908,12 @@ static void __noclone vmx_vcpu_run(struct kvm_vcpu *vcpu)
+@@ -8928,6 +8947,12 @@ static void __noclone vmx_vcpu_run(struct kvm_vcpu *vcpu)
"jmp 2f \n\t"
"1: " __ex(ASM_VMX_VMRESUME) "\n\t"
"2: "
@@ -33115,7 +36260,7 @@ index 7a72db5..b5f6032 100644
/* Save guest registers, load host registers, keep flags */
"mov %0, %c[wordsize](%%" _ASM_SP ") \n\t"
"pop %0 \n\t"
-@@ -8941,6 +8966,11 @@ static void __noclone vmx_vcpu_run(struct kvm_vcpu *vcpu)
+@@ -8980,6 +9005,11 @@ static void __noclone vmx_vcpu_run(struct kvm_vcpu *vcpu)
#endif
[cr2]"i"(offsetof(struct vcpu_vmx, vcpu.arch.cr2)),
[wordsize]"i"(sizeof(ulong))
@@ -33127,7 +36272,7 @@ index 7a72db5..b5f6032 100644
: "cc", "memory"
#ifdef CONFIG_X86_64
, "rax", "rbx", "rdi", "rsi"
-@@ -8954,7 +8984,7 @@ static void __noclone vmx_vcpu_run(struct kvm_vcpu *vcpu)
+@@ -8993,7 +9023,7 @@ static void __noclone vmx_vcpu_run(struct kvm_vcpu *vcpu)
if (debugctlmsr)
update_debugctlmsr(debugctlmsr);
@@ -33136,7 +36281,7 @@ index 7a72db5..b5f6032 100644
/*
* The sysexit path does not restore ds/es, so we must set them to
* a reasonable value ourselves.
-@@ -8963,8 +8993,18 @@ static void __noclone vmx_vcpu_run(struct kvm_vcpu *vcpu)
+@@ -9002,8 +9032,18 @@ static void __noclone vmx_vcpu_run(struct kvm_vcpu *vcpu)
* may be executed in interrupt context, which saves and restore segments
* around it, nullifying its effect.
*/
@@ -33151,26 +36296,17 @@ index 7a72db5..b5f6032 100644
+#endif
+
+#ifdef CONFIG_PAX_MEMORY_UDEREF
-+ __set_fs(current_thread_info()->addr_limit);
++ __set_fs(current->thread.addr_limit);
+#endif
+
#endif
vcpu->arch.regs_avail = ~((1 << VCPU_REGS_RIP) | (1 << VCPU_REGS_RSP)
-@@ -11176,7 +11216,7 @@ static void vmx_setup_mce(struct kvm_vcpu *vcpu)
- ~FEATURE_CONTROL_LMCE;
- }
-
--static struct kvm_x86_ops vmx_x86_ops = {
-+static struct kvm_x86_ops vmx_x86_ops __read_only = {
- .cpu_has_kvm_support = cpu_has_kvm_support,
- .disabled_by_bios = vmx_disabled_by_bios,
- .hardware_setup = hardware_setup,
diff --git a/arch/x86/kvm/x86.c b/arch/x86/kvm/x86.c
-index 2fff657..84ea93a 100644
+index 731044e..399463d 100644
--- a/arch/x86/kvm/x86.c
+++ b/arch/x86/kvm/x86.c
-@@ -1957,8 +1957,8 @@ static int xen_hvm_config(struct kvm_vcpu *vcpu, u64 data)
+@@ -2005,8 +2005,8 @@ static int xen_hvm_config(struct kvm_vcpu *vcpu, u64 data)
{
struct kvm *kvm = vcpu->kvm;
int lm = is_long_mode(vcpu);
@@ -33181,7 +36317,7 @@ index 2fff657..84ea93a 100644
u8 blob_size = lm ? kvm->arch.xen_hvm_config.blob_size_64
: kvm->arch.xen_hvm_config.blob_size_32;
u32 page_num = data & ~PAGE_MASK;
-@@ -2666,6 +2666,8 @@ long kvm_arch_dev_ioctl(struct file *filp,
+@@ -2716,6 +2716,8 @@ long kvm_arch_dev_ioctl(struct file *filp,
if (n < msr_list.nmsrs)
goto out;
r = -EFAULT;
@@ -33190,7 +36326,7 @@ index 2fff657..84ea93a 100644
if (copy_to_user(user_msr_list->indices, &msrs_to_save,
num_msrs_to_save * sizeof(u32)))
goto out;
-@@ -3082,7 +3084,7 @@ static int kvm_vcpu_ioctl_x86_set_debugregs(struct kvm_vcpu *vcpu,
+@@ -3137,7 +3139,7 @@ static int kvm_vcpu_ioctl_x86_set_debugregs(struct kvm_vcpu *vcpu,
static void fill_xsave(u8 *dest, struct kvm_vcpu *vcpu)
{
@@ -33199,7 +36335,7 @@ index 2fff657..84ea93a 100644
u64 xstate_bv = xsave->header.xfeatures;
u64 valid;
-@@ -3118,7 +3120,7 @@ static void fill_xsave(u8 *dest, struct kvm_vcpu *vcpu)
+@@ -3174,7 +3176,7 @@ static void fill_xsave(u8 *dest, struct kvm_vcpu *vcpu)
static void load_xsave(struct kvm_vcpu *vcpu, u8 *src)
{
@@ -33208,7 +36344,7 @@ index 2fff657..84ea93a 100644
u64 xstate_bv = *(u64 *)(src + XSAVE_HDR_OFFSET);
u64 valid;
-@@ -3162,7 +3164,7 @@ static void kvm_vcpu_ioctl_x86_get_xsave(struct kvm_vcpu *vcpu,
+@@ -3218,7 +3220,7 @@ static void kvm_vcpu_ioctl_x86_get_xsave(struct kvm_vcpu *vcpu,
fill_xsave((u8 *) guest_xsave->region, vcpu);
} else {
memcpy(guest_xsave->region,
@@ -33217,7 +36353,7 @@ index 2fff657..84ea93a 100644
sizeof(struct fxregs_state));
*(u64 *)&guest_xsave->region[XSAVE_HDR_OFFSET / sizeof(u32)] =
XFEATURE_MASK_FPSSE;
-@@ -3187,7 +3189,7 @@ static int kvm_vcpu_ioctl_x86_set_xsave(struct kvm_vcpu *vcpu,
+@@ -3243,7 +3245,7 @@ static int kvm_vcpu_ioctl_x86_set_xsave(struct kvm_vcpu *vcpu,
} else {
if (xstate_bv & ~XFEATURE_MASK_FPSSE)
return -EINVAL;
@@ -33226,7 +36362,7 @@ index 2fff657..84ea93a 100644
guest_xsave->region, sizeof(struct fxregs_state));
}
return 0;
-@@ -5751,7 +5753,7 @@ static unsigned long kvm_get_guest_ip(void)
+@@ -5807,7 +5809,7 @@ static unsigned long kvm_get_guest_ip(void)
unsigned long ip = 0;
if (__this_cpu_read(current_vcpu))
@@ -33235,7 +36371,7 @@ index 2fff657..84ea93a 100644
return ip;
}
-@@ -6474,6 +6476,7 @@ void kvm_arch_mmu_notifier_invalidate_page(struct kvm *kvm,
+@@ -6531,6 +6533,7 @@ void kvm_arch_mmu_notifier_invalidate_page(struct kvm *kvm,
* exiting to the userspace. Otherwise, the value will be returned to the
* userspace.
*/
@@ -33243,7 +36379,7 @@ index 2fff657..84ea93a 100644
static int vcpu_enter_guest(struct kvm_vcpu *vcpu)
{
int r;
-@@ -6749,6 +6752,7 @@ out:
+@@ -6805,6 +6808,7 @@ static int vcpu_enter_guest(struct kvm_vcpu *vcpu)
return r;
}
@@ -33251,7 +36387,7 @@ index 2fff657..84ea93a 100644
static inline int vcpu_block(struct kvm *kvm, struct kvm_vcpu *vcpu)
{
if (!kvm_arch_vcpu_runnable(vcpu) &&
-@@ -7296,7 +7300,7 @@ int kvm_arch_vcpu_ioctl_translate(struct kvm_vcpu *vcpu,
+@@ -7352,7 +7356,7 @@ int kvm_arch_vcpu_ioctl_translate(struct kvm_vcpu *vcpu,
int kvm_arch_vcpu_ioctl_get_fpu(struct kvm_vcpu *vcpu, struct kvm_fpu *fpu)
{
struct fxregs_state *fxsave =
@@ -33260,7 +36396,7 @@ index 2fff657..84ea93a 100644
memcpy(fpu->fpr, fxsave->st_space, 128);
fpu->fcw = fxsave->cwd;
-@@ -7313,7 +7317,7 @@ int kvm_arch_vcpu_ioctl_get_fpu(struct kvm_vcpu *vcpu, struct kvm_fpu *fpu)
+@@ -7369,7 +7373,7 @@ int kvm_arch_vcpu_ioctl_get_fpu(struct kvm_vcpu *vcpu, struct kvm_fpu *fpu)
int kvm_arch_vcpu_ioctl_set_fpu(struct kvm_vcpu *vcpu, struct kvm_fpu *fpu)
{
struct fxregs_state *fxsave =
@@ -33269,7 +36405,7 @@ index 2fff657..84ea93a 100644
memcpy(fxsave->st_space, fpu->fpr, 128);
fxsave->cwd = fpu->fcw;
-@@ -7329,9 +7333,9 @@ int kvm_arch_vcpu_ioctl_set_fpu(struct kvm_vcpu *vcpu, struct kvm_fpu *fpu)
+@@ -7385,9 +7389,9 @@ int kvm_arch_vcpu_ioctl_set_fpu(struct kvm_vcpu *vcpu, struct kvm_fpu *fpu)
static void fx_init(struct kvm_vcpu *vcpu)
{
@@ -33281,7 +36417,7 @@ index 2fff657..84ea93a 100644
host_xcr0 | XSTATE_COMPACTION_ENABLED;
/*
-@@ -7354,7 +7358,7 @@ void kvm_load_guest_fpu(struct kvm_vcpu *vcpu)
+@@ -7410,7 +7414,7 @@ void kvm_load_guest_fpu(struct kvm_vcpu *vcpu)
*/
vcpu->guest_fpu_loaded = 1;
__kernel_fpu_begin();
@@ -33290,7 +36426,7 @@ index 2fff657..84ea93a 100644
trace_kvm_fpu(1);
}
-@@ -7654,6 +7658,8 @@ bool kvm_vcpu_is_bsp(struct kvm_vcpu *vcpu)
+@@ -7710,6 +7714,8 @@ bool kvm_vcpu_is_bsp(struct kvm_vcpu *vcpu)
struct static_key kvm_no_apic_vcpu __read_mostly;
EXPORT_SYMBOL_GPL(kvm_no_apic_vcpu);
@@ -33299,7 +36435,7 @@ index 2fff657..84ea93a 100644
int kvm_arch_vcpu_init(struct kvm_vcpu *vcpu)
{
struct page *page;
-@@ -7671,11 +7677,14 @@ int kvm_arch_vcpu_init(struct kvm_vcpu *vcpu)
+@@ -7727,11 +7733,14 @@ int kvm_arch_vcpu_init(struct kvm_vcpu *vcpu)
else
vcpu->arch.mp_state = KVM_MP_STATE_UNINITIALIZED;
@@ -33318,7 +36454,7 @@ index 2fff657..84ea93a 100644
vcpu->arch.pio_data = page_address(page);
kvm_set_tsc_khz(vcpu, max_tsc_khz);
-@@ -7733,6 +7742,9 @@ fail_mmu_destroy:
+@@ -7789,6 +7798,9 @@ int kvm_arch_vcpu_init(struct kvm_vcpu *vcpu)
kvm_mmu_destroy(vcpu);
fail_free_pio_data:
free_page((unsigned long)vcpu->arch.pio_data);
@@ -33328,7 +36464,7 @@ index 2fff657..84ea93a 100644
fail:
return r;
}
-@@ -7751,6 +7763,8 @@ void kvm_arch_vcpu_uninit(struct kvm_vcpu *vcpu)
+@@ -7807,6 +7819,8 @@ void kvm_arch_vcpu_uninit(struct kvm_vcpu *vcpu)
free_page((unsigned long)vcpu->arch.pio_data);
if (!lapic_in_kernel(vcpu))
static_key_slow_dec(&kvm_no_apic_vcpu);
@@ -33338,9 +36474,18 @@ index 2fff657..84ea93a 100644
void kvm_arch_sched_in(struct kvm_vcpu *vcpu, int cpu)
diff --git a/arch/x86/lguest/boot.c b/arch/x86/lguest/boot.c
-index 25da5bc8..3c3fbd4 100644
+index 25da5bc8..235cb88 100644
--- a/arch/x86/lguest/boot.c
+++ b/arch/x86/lguest/boot.c
+@@ -262,7 +262,7 @@ PV_CALLEE_SAVE_REGS_THUNK(lguest_irq_disable);
+ /*:*/
+
+ /* These are in head_32.S */
+-extern void lg_irq_enable(void);
++extern asmlinkage void lg_irq_enable(void);
+ extern void lg_restore_fl(unsigned long flags);
+
+ /*M:003
@@ -1329,9 +1329,10 @@ static __init int early_put_chars(u32 vtermno, const char *buf, int count)
* Rebooting also tells the Host we're finished, but the RESTART flag tells the
* Launcher to reboot us.
@@ -33353,23 +36498,50 @@ index 25da5bc8..3c3fbd4 100644
}
/*G:050
+@@ -1392,6 +1393,11 @@ static unsigned lguest_patch(u8 type, u16 clobber, void *ibuf,
+ return insn_len;
+ }
+
++#ifdef CONFIG_PAX_RAP
++PV_CALLEE_SAVE_REGS_THUNK(lg_restore_fl);
++PV_CALLEE_SAVE_REGS_THUNK(lg_irq_enable);
++#endif
++
+ /*G:029
+ * Once we get to lguest_init(), we know we're a Guest. The various
+ * pv_ops structures in the kernel provide points for (almost) every routine we
+@@ -1412,10 +1418,10 @@ __init void lguest_init(void)
+ */
+
+ /* Interrupt-related operations */
+- pv_irq_ops.save_fl = PV_CALLEE_SAVE(lguest_save_fl);
+- pv_irq_ops.restore_fl = __PV_IS_CALLEE_SAVE(lg_restore_fl);
+- pv_irq_ops.irq_disable = PV_CALLEE_SAVE(lguest_irq_disable);
+- pv_irq_ops.irq_enable = __PV_IS_CALLEE_SAVE(lg_irq_enable);
++ pv_irq_ops.save_fl = PV_CALLEE_SAVE(save_fl, lguest_save_fl);
++ pv_irq_ops.restore_fl = __PV_IS_CALLEE_SAVE(restore_fl, lg_restore_fl);
++ pv_irq_ops.irq_disable = PV_CALLEE_SAVE(irq_disable, lguest_irq_disable);
++ pv_irq_ops.irq_enable = __PV_IS_CALLEE_SAVE(irq_enable, lg_irq_enable);
+ pv_irq_ops.safe_halt = lguest_safe_halt;
+
+ /* Setup operations */
diff --git a/arch/x86/lib/Makefile b/arch/x86/lib/Makefile
-index 34a7413..499d0da 100644
+index 34a7413..375b9b1 100644
--- a/arch/x86/lib/Makefile
+++ b/arch/x86/lib/Makefile
@@ -29,6 +29,10 @@ lib-$(CONFIG_RANDOMIZE_BASE) += kaslr.o
obj-y += msr.o msr-reg.o msr-reg-export.o hweight.o
ifeq ($(CONFIG_X86_32),y)
-+ CFLAGS_strstr_32.o += $(INITIFY_DISABLE_VERIFY_NOCAPTURE_FUNCTIONS)
-+ CFLAGS_string_32.o += $(INITIFY_DISABLE_VERIFY_NOCAPTURE_FUNCTIONS)
-+ CFLAGS_memcpy_32.o += $(INITIFY_DISABLE_VERIFY_NOCAPTURE_FUNCTIONS)
++ GCC_PLUGINS_CFLAGS_strstr_32.o += $(INITIFY_DISABLE_VERIFY_NOCAPTURE_FUNCTIONS)
++ GCC_PLUGINS_CFLAGS_string_32.o += $(INITIFY_DISABLE_VERIFY_NOCAPTURE_FUNCTIONS)
++ GCC_PLUGINS_CFLAGS_memcpy_32.o += $(INITIFY_DISABLE_VERIFY_NOCAPTURE_FUNCTIONS)
+
obj-y += atomic64_32.o
lib-y += atomic64_cx8_32.o
lib-y += checksum_32.o
diff --git a/arch/x86/lib/atomic64_386_32.S b/arch/x86/lib/atomic64_386_32.S
-index 9b0ca8f..bf83b2c 100644
+index 9b0ca8f..390af89 100644
--- a/arch/x86/lib/atomic64_386_32.S
+++ b/arch/x86/lib/atomic64_386_32.S
@@ -10,6 +10,7 @@
@@ -33380,151 +36552,198 @@ index 9b0ca8f..bf83b2c 100644
#include <asm/alternative-asm.h>
/* if you want SMP support, implement these with real spinlocks */
-@@ -45,6 +46,10 @@ BEGIN(read)
+@@ -32,26 +33,34 @@ ENTRY(atomic64_##op##_386); \
+
+ #define ENDP endp
+
+-#define RET \
++#define RET(op) \
+ UNLOCK v; \
+- ret
++ pax_ret atomic64_##op##_386
+
+-#define RET_ENDP \
+- RET; \
++#define RET_ENDP(op) \
++ RET(op); \
+ ENDP
+
+ #define v %ecx
+ BEGIN(read)
movl (v), %eax
movl 4(v), %edx
- RET_ENDP
+-RET_ENDP
++RET_ENDP(read)
+BEGIN(read_unchecked)
+ movl (v), %eax
+ movl 4(v), %edx
-+RET_ENDP
++RET_ENDP(read_unchecked)
#undef v
#define v %esi
-@@ -52,6 +57,10 @@ BEGIN(set)
+ BEGIN(set)
movl %ebx, (v)
movl %ecx, 4(v)
- RET_ENDP
+-RET_ENDP
++RET_ENDP(set)
+BEGIN(set_unchecked)
+ movl %ebx, (v)
+ movl %ecx, 4(v)
-+RET_ENDP
++RET_ENDP(set_unchecked)
#undef v
#define v %esi
-@@ -67,6 +76,12 @@ RET_ENDP
+@@ -60,30 +69,51 @@ BEGIN(xchg)
+ movl 4(v), %edx
+ movl %ebx, (v)
+ movl %ecx, 4(v)
+-RET_ENDP
++RET_ENDP(xchg)
+ #undef v
+
+ #define v %ecx
BEGIN(add)
addl %eax, (v)
adcl %edx, 4(v)
+-RET_ENDP
+
+ PAX_REFCOUNT64_OVERFLOW (v)
-+RET_ENDP
++RET_ENDP(add)
+BEGIN(add_unchecked)
+ addl %eax, (v)
+ adcl %edx, 4(v)
- RET_ENDP
++RET_ENDP(add_unchecked)
#undef v
-@@ -74,6 +89,15 @@ RET_ENDP
+ #define v %ecx
BEGIN(add_return)
addl (v), %eax
adcl 4(v), %edx
+
-+ movl %eax, (v)
-+ movl %edx, 4(v)
+ movl %eax, (v)
+ movl %edx, 4(v)
+-RET_ENDP
+
+ PAX_REFCOUNT64_OVERFLOW (v)
-+RET_ENDP
++RET_ENDP(add_return)
+BEGIN(add_return_unchecked)
+ addl (v), %eax
+ adcl 4(v), %edx
- movl %eax, (v)
- movl %edx, 4(v)
- RET_ENDP
-@@ -83,6 +107,12 @@ RET_ENDP
++ movl %eax, (v)
++ movl %edx, 4(v)
++RET_ENDP(add_return_unchecked)
+ #undef v
+
+ #define v %ecx
BEGIN(sub)
subl %eax, (v)
sbbl %edx, 4(v)
+-RET_ENDP
+
+ PAX_REFCOUNT64_UNDERFLOW (v)
-+RET_ENDP
++RET_ENDP(sub)
+BEGIN(sub_unchecked)
+ subl %eax, (v)
+ sbbl %edx, 4(v)
- RET_ENDP
++RET_ENDP(sub_unchecked)
#undef v
-@@ -93,6 +123,18 @@ BEGIN(sub_return)
+ #define v %ecx
+@@ -93,16 +123,34 @@ BEGIN(sub_return)
sbbl $0, %edx
addl (v), %eax
adcl 4(v), %edx
+
-+ movl %eax, (v)
-+ movl %edx, 4(v)
+ movl %eax, (v)
+ movl %edx, 4(v)
+-RET_ENDP
+
+ PAX_REFCOUNT64_UNDERFLOW (v)
-+RET_ENDP
++RET_ENDP(sub_return)
+BEGIN(sub_return_unchecked)
+ negl %edx
+ negl %eax
+ sbbl $0, %edx
+ addl (v), %eax
+ adcl 4(v), %edx
- movl %eax, (v)
- movl %edx, 4(v)
- RET_ENDP
-@@ -102,6 +144,12 @@ RET_ENDP
++ movl %eax, (v)
++ movl %edx, 4(v)
++RET_ENDP(sub_return_unchecked)
+ #undef v
+
+ #define v %esi
BEGIN(inc)
addl $1, (v)
adcl $0, 4(v)
+-RET_ENDP
+
+ PAX_REFCOUNT64_OVERFLOW (v)
-+RET_ENDP
++RET_ENDP(inc)
+BEGIN(inc_unchecked)
+ addl $1, (v)
+ adcl $0, 4(v)
- RET_ENDP
++RET_ENDP(inc_unchecked)
#undef v
-@@ -111,6 +159,17 @@ BEGIN(inc_return)
+ #define v %esi
+@@ -111,16 +159,33 @@ BEGIN(inc_return)
movl 4(v), %edx
addl $1, %eax
adcl $0, %edx
+
-+ movl %eax, (v)
-+ movl %edx, 4(v)
+ movl %eax, (v)
+ movl %edx, 4(v)
+-RET_ENDP
+
+ PAX_REFCOUNT64_OVERFLOW (v)
-+RET_ENDP
++RET_ENDP(inc_return)
+BEGIN(inc_return_unchecked)
+ movl (v), %eax
+ movl 4(v), %edx
+ addl $1, %eax
+ adcl $0, %edx
- movl %eax, (v)
- movl %edx, 4(v)
- RET_ENDP
-@@ -120,6 +179,12 @@ RET_ENDP
++ movl %eax, (v)
++ movl %edx, 4(v)
++RET_ENDP(inc_return_unchecked)
+ #undef v
+
+ #define v %esi
BEGIN(dec)
subl $1, (v)
sbbl $0, 4(v)
+-RET_ENDP
+
+ PAX_REFCOUNT64_UNDERFLOW (v)
-+RET_ENDP
++RET_ENDP(dec)
+BEGIN(dec_unchecked)
+ subl $1, (v)
+ sbbl $0, 4(v)
- RET_ENDP
++RET_ENDP(dec_unchecked)
#undef v
-@@ -129,6 +194,17 @@ BEGIN(dec_return)
+ #define v %esi
+@@ -129,9 +194,20 @@ BEGIN(dec_return)
movl 4(v), %edx
subl $1, %eax
sbbl $0, %edx
+
-+ movl %eax, (v)
-+ movl %edx, 4(v)
+ movl %eax, (v)
+ movl %edx, 4(v)
+-RET_ENDP
+
+ PAX_REFCOUNT64_UNDERFLOW (v)
-+RET_ENDP
++RET_ENDP(dec_return)
+BEGIN(dec_return_unchecked)
+ movl (v), %eax
+ movl 4(v), %edx
+ subl $1, %eax
+ sbbl $0, %edx
- movl %eax, (v)
- movl %edx, 4(v)
- RET_ENDP
++ movl %eax, (v)
++ movl %edx, 4(v)
++RET_ENDP(dec_return_unchecked)
+ #undef v
+
+ #define v %esi
@@ -140,6 +216,9 @@ BEGIN(add_unless)
adcl %edx, %edi
addl (v), %eax
@@ -33535,7 +36754,16 @@ index 9b0ca8f..bf83b2c 100644
cmpl %eax, %ecx
je 3f
1:
-@@ -165,6 +244,9 @@ BEGIN(inc_not_zero)
+@@ -147,7 +226,7 @@ BEGIN(add_unless)
+ movl %edx, 4(v)
+ movl $1, %eax
+ 2:
+- RET
++ RET(add_unless)
+ 3:
+ cmpl %edx, %edi
+ jne 1b
+@@ -165,11 +244,14 @@ BEGIN(inc_not_zero)
1:
addl $1, %eax
adcl $0, %edx
@@ -33545,7 +36773,13 @@ index 9b0ca8f..bf83b2c 100644
movl %eax, (v)
movl %edx, 4(v)
movl $1, %eax
-@@ -183,6 +265,9 @@ BEGIN(dec_if_positive)
+ 2:
+- RET
++ RET(inc_not_zero)
+ 3:
+ testl %edx, %edx
+ jne 1b
+@@ -183,9 +265,12 @@ BEGIN(dec_if_positive)
movl 4(v), %edx
subl $1, %eax
sbbl $0, %edx
@@ -33555,8 +36789,12 @@ index 9b0ca8f..bf83b2c 100644
js 1f
movl %eax, (v)
movl %edx, 4(v)
+ 1:
+-RET_ENDP
++RET_ENDP(dec_if_positive)
+ #undef v
diff --git a/arch/x86/lib/atomic64_cx8_32.S b/arch/x86/lib/atomic64_cx8_32.S
-index db3ae854..3852140 100644
+index db3ae854..5e266ef 100644
--- a/arch/x86/lib/atomic64_cx8_32.S
+++ b/arch/x86/lib/atomic64_cx8_32.S
@@ -10,6 +10,7 @@
@@ -33567,29 +36805,28 @@ index db3ae854..3852140 100644
#include <asm/alternative-asm.h>
.macro read64 reg
-@@ -22,9 +23,16 @@
+@@ -22,9 +23,14 @@
ENTRY(atomic64_read_cx8)
read64 %ecx
-+ pax_force_retaddr
- ret
+- ret
++ pax_ret atomic64_read
ENDPROC(atomic64_read_cx8)
+ENTRY(atomic64_read_unchecked_cx8)
+ read64 %ecx
-+ pax_force_retaddr
-+ ret
++ pax_ret atomic64_read_unchecked
+ENDPROC(atomic64_read_unchecked_cx8)
+
ENTRY(atomic64_set_cx8)
1:
/* we don't need LOCK_PREFIX since aligned 64-bit writes
-@@ -32,20 +40,33 @@ ENTRY(atomic64_set_cx8)
+@@ -32,20 +38,30 @@ ENTRY(atomic64_set_cx8)
cmpxchg8b (%esi)
jne 1b
-+ pax_force_retaddr
- ret
+- ret
++ pax_ret atomic64_set
ENDPROC(atomic64_set_cx8)
+ENTRY(atomic64_set_unchecked_cx8)
@@ -33599,8 +36836,7 @@ index db3ae854..3852140 100644
+ cmpxchg8b (%esi)
+ jne 1b
+
-+ pax_force_retaddr
-+ ret
++ pax_ret atomic64_set_unchecked
+ENDPROC(atomic64_set_unchecked_cx8)
+
ENTRY(atomic64_xchg_cx8)
@@ -33609,8 +36845,8 @@ index db3ae854..3852140 100644
cmpxchg8b (%esi)
jne 1b
-+ pax_force_retaddr
- ret
+- ret
++ pax_ret atomic64_xchg
ENDPROC(atomic64_xchg_cx8)
-.macro addsub_return func ins insc
@@ -33620,7 +36856,7 @@ index db3ae854..3852140 100644
pushl %ebp
pushl %ebx
pushl %esi
-@@ -61,26 +82,37 @@ ENTRY(atomic64_\func\()_return_cx8)
+@@ -61,26 +77,36 @@ ENTRY(atomic64_\func\()_return_cx8)
movl %edx, %ecx
\ins\()l %esi, %ebx
\insc\()l %edi, %ecx
@@ -33645,9 +36881,9 @@ index db3ae854..3852140 100644
popl %esi
popl %ebx
popl %ebp
-+ pax_force_retaddr
- ret
+- ret
-ENDPROC(atomic64_\func\()_return_cx8)
++ pax_ret atomic64_\func\()_return\unchecked
+ENDPROC(atomic64_\func\()_return\unchecked\()_cx8)
.endm
@@ -33663,7 +36899,7 @@ index db3ae854..3852140 100644
pushl %ebx
read64 %esi
-@@ -89,20 +121,31 @@ ENTRY(atomic64_\func\()_return_cx8)
+@@ -89,20 +115,30 @@ ENTRY(atomic64_\func\()_return_cx8)
movl %edx, %ecx
\ins\()l $1, %ebx
\insc\()l $0, %ecx
@@ -33685,9 +36921,9 @@ index db3ae854..3852140 100644
movl %ecx, %edx
+
popl %ebx
-+ pax_force_retaddr
- ret
+- ret
-ENDPROC(atomic64_\func\()_return_cx8)
++ pax_ret atomic64_\func\()_return\unchecked
+ENDPROC(atomic64_\func\()_return\unchecked\()_cx8)
.endm
@@ -33698,7 +36934,7 @@ index db3ae854..3852140 100644
ENTRY(atomic64_dec_if_positive_cx8)
pushl %ebx
-@@ -113,6 +156,9 @@ ENTRY(atomic64_dec_if_positive_cx8)
+@@ -113,6 +149,9 @@ ENTRY(atomic64_dec_if_positive_cx8)
movl %edx, %ecx
subl $1, %ebx
sbb $0, %ecx
@@ -33708,15 +36944,16 @@ index db3ae854..3852140 100644
js 2f
LOCK_PREFIX
cmpxchg8b (%esi)
-@@ -122,6 +168,7 @@ ENTRY(atomic64_dec_if_positive_cx8)
+@@ -122,7 +161,7 @@ ENTRY(atomic64_dec_if_positive_cx8)
movl %ebx, %eax
movl %ecx, %edx
popl %ebx
-+ pax_force_retaddr
- ret
+- ret
++ pax_ret atomic64_dec_if_positive
ENDPROC(atomic64_dec_if_positive_cx8)
-@@ -144,6 +191,9 @@ ENTRY(atomic64_add_unless_cx8)
+ ENTRY(atomic64_add_unless_cx8)
+@@ -144,6 +183,9 @@ ENTRY(atomic64_add_unless_cx8)
movl %edx, %ecx
addl %ebp, %ebx
adcl %edi, %ecx
@@ -33726,15 +36963,16 @@ index db3ae854..3852140 100644
LOCK_PREFIX
cmpxchg8b (%esi)
jne 1b
-@@ -153,6 +203,7 @@ ENTRY(atomic64_add_unless_cx8)
+@@ -153,7 +195,7 @@ ENTRY(atomic64_add_unless_cx8)
addl $8, %esp
popl %ebx
popl %ebp
-+ pax_force_retaddr
- ret
+- ret
++ pax_ret atomic64_add_unless
4:
cmpl %edx, 4(%esp)
-@@ -173,6 +224,9 @@ ENTRY(atomic64_inc_not_zero_cx8)
+ jne 2b
+@@ -173,6 +215,9 @@ ENTRY(atomic64_inc_not_zero_cx8)
xorl %ecx, %ecx
addl $1, %ebx
adcl %edx, %ecx
@@ -33744,28 +36982,47 @@ index db3ae854..3852140 100644
LOCK_PREFIX
cmpxchg8b (%esi)
jne 1b
-@@ -180,5 +234,6 @@ ENTRY(atomic64_inc_not_zero_cx8)
+@@ -180,5 +225,5 @@ ENTRY(atomic64_inc_not_zero_cx8)
movl $1, %eax
3:
popl %ebx
-+ pax_force_retaddr
- ret
+- ret
++ pax_ret atomic64_inc_not_zero
ENDPROC(atomic64_inc_not_zero_cx8)
diff --git a/arch/x86/lib/checksum_32.S b/arch/x86/lib/checksum_32.S
-index c1e6232..ebbeba7 100644
+index 4d34bb5..bccd7fc 100644
--- a/arch/x86/lib/checksum_32.S
+++ b/arch/x86/lib/checksum_32.S
-@@ -28,7 +28,8 @@
- #include <linux/linkage.h>
+@@ -29,7 +29,9 @@
#include <asm/errno.h>
#include <asm/asm.h>
+ #include <asm/export.h>
-
+#include <asm/segment.h>
++#include <asm/alternative-asm.h>
+
/*
* computes a partial checksum, e.g. for TCP/UDP fragments
*/
-@@ -280,7 +281,22 @@ unsigned int csum_partial_copy_generic (const char *src, char *dst,
+@@ -130,7 +132,7 @@ ENTRY(csum_partial)
+ 8:
+ popl %ebx
+ popl %esi
+- ret
++ pax_ret csum_partial
+ ENDPROC(csum_partial)
+
+ #else
+@@ -248,7 +250,7 @@ ENTRY(csum_partial)
+ 90:
+ popl %ebx
+ popl %esi
+- ret
++ pax_ret csum_partial
+ ENDPROC(csum_partial)
+
+ #endif
+@@ -282,7 +284,22 @@ unsigned int csum_partial_copy_generic (const char *src, char *dst,
#define ARGBASE 16
#define FP 12
@@ -33789,7 +37046,7 @@ index c1e6232..ebbeba7 100644
ENTRY(csum_partial_copy_generic)
subl $4,%esp
pushl %edi
-@@ -299,7 +315,7 @@ ENTRY(csum_partial_copy_generic)
+@@ -301,7 +318,7 @@ ENTRY(csum_partial_copy_generic)
jmp 4f
SRC(1: movw (%esi), %bx )
addl $2, %esi
@@ -33798,7 +37055,7 @@ index c1e6232..ebbeba7 100644
addl $2, %edi
addw %bx, %ax
adcl $0, %eax
-@@ -311,30 +327,30 @@ DST( movw %bx, (%edi) )
+@@ -313,30 +330,30 @@ DST( movw %bx, (%edi) )
SRC(1: movl (%esi), %ebx )
SRC( movl 4(%esi), %edx )
adcl %ebx, %eax
@@ -33837,7 +37094,7 @@ index c1e6232..ebbeba7 100644
lea 32(%esi), %esi
lea 32(%edi), %edi
-@@ -348,7 +364,7 @@ DST( movl %edx, 28(%edi) )
+@@ -350,7 +367,7 @@ DST( movl %edx, 28(%edi) )
shrl $2, %edx # This clears CF
SRC(3: movl (%esi), %ebx )
adcl %ebx, %eax
@@ -33846,7 +37103,7 @@ index c1e6232..ebbeba7 100644
lea 4(%esi), %esi
lea 4(%edi), %edi
dec %edx
-@@ -360,12 +376,12 @@ DST( movl %ebx, (%edi) )
+@@ -362,12 +379,12 @@ DST( movl %ebx, (%edi) )
jb 5f
SRC( movw (%esi), %cx )
leal 2(%esi), %esi
@@ -33861,7 +37118,7 @@ index c1e6232..ebbeba7 100644
6: addl %ecx, %eax
adcl $0, %eax
7:
-@@ -376,7 +392,7 @@ DST( movb %cl, (%edi) )
+@@ -378,7 +395,7 @@ DST( movb %cl, (%edi) )
6001:
movl ARGBASE+20(%esp), %ebx # src_err_ptr
@@ -33870,7 +37127,7 @@ index c1e6232..ebbeba7 100644
# zero the complete destination - computing the rest
# is too much work
-@@ -389,34 +405,58 @@ DST( movb %cl, (%edi) )
+@@ -391,34 +408,58 @@ DST( movb %cl, (%edi) )
6002:
movl ARGBASE+24(%esp), %ebx # dst_err_ptr
@@ -33891,8 +37148,9 @@ index c1e6232..ebbeba7 100644
popl %esi
popl %edi
popl %ecx # equivalent to addl $4,%esp
- ret
+- ret
-ENDPROC(csum_partial_copy_generic)
++ pax_ret csum_partial_copy_generic_to_user
+ENDPROC(csum_partial_copy_generic_to_user)
#else
@@ -33934,7 +37192,7 @@ index c1e6232..ebbeba7 100644
ENTRY(csum_partial_copy_generic)
pushl %ebx
pushl %edi
-@@ -435,7 +475,7 @@ ENTRY(csum_partial_copy_generic)
+@@ -437,7 +478,7 @@ ENTRY(csum_partial_copy_generic)
subl %ebx, %edi
lea -1(%esi),%edx
andl $-32,%edx
@@ -33943,7 +37201,7 @@ index c1e6232..ebbeba7 100644
testl %esi, %esi
jmp *%ebx
1: addl $64,%esi
-@@ -456,19 +496,19 @@ ENTRY(csum_partial_copy_generic)
+@@ -458,19 +499,19 @@ ENTRY(csum_partial_copy_generic)
jb 5f
SRC( movw (%esi), %dx )
leal 2(%esi), %esi
@@ -33966,7 +37224,7 @@ index c1e6232..ebbeba7 100644
# zero the complete destination (computing the rest is too much work)
movl ARGBASE+8(%esp),%edi # dst
movl ARGBASE+12(%esp),%ecx # len
-@@ -476,15 +516,22 @@ DST( movb %dl, (%edi) )
+@@ -478,18 +519,27 @@ DST( movb %dl, (%edi) )
rep; stosb
jmp 7b
6002: movl ARGBASE+24(%esp), %ebx # dst_err_ptr
@@ -33985,41 +37243,48 @@ index c1e6232..ebbeba7 100644
popl %esi
popl %edi
popl %ebx
- ret
+- ret
-ENDPROC(csum_partial_copy_generic)
++ pax_ret csum_partial_copy_generic_to_user
+ENDPROC(csum_partial_copy_generic_to_user)
#undef ROUND
#undef ROUND1
+
+ #endif
+ EXPORT_SYMBOL(csum_partial_copy_generic)
++EXPORT_SYMBOL(csum_partial_copy_generic_to_user)
++EXPORT_SYMBOL(csum_partial_copy_generic_from_user)
diff --git a/arch/x86/lib/clear_page_64.S b/arch/x86/lib/clear_page_64.S
-index 65be7cf..d4cb4b4 100644
+index 5e2af3a..5fb2fdb 100644
--- a/arch/x86/lib/clear_page_64.S
+++ b/arch/x86/lib/clear_page_64.S
-@@ -21,6 +21,7 @@ ENTRY(clear_page)
+@@ -22,7 +22,7 @@ ENTRY(clear_page)
movl $4096/8,%ecx
xorl %eax,%eax
rep stosq
-+ pax_force_retaddr
- ret
+- ret
++ pax_ret clear_page
ENDPROC(clear_page)
+ EXPORT_SYMBOL(clear_page)
-@@ -43,6 +44,7 @@ ENTRY(clear_page_orig)
+@@ -45,12 +45,12 @@ ENTRY(clear_page_orig)
leaq 64(%rdi),%rdi
jnz .Lloop
nop
-+ pax_force_retaddr
- ret
+- ret
++ pax_ret clear_page
ENDPROC(clear_page_orig)
-@@ -50,5 +52,6 @@ ENTRY(clear_page_c_e)
+ ENTRY(clear_page_c_e)
movl $4096,%ecx
xorl %eax,%eax
rep stosb
-+ pax_force_retaddr
- ret
+- ret
++ pax_ret clear_page
ENDPROC(clear_page_c_e)
diff --git a/arch/x86/lib/cmpxchg16b_emu.S b/arch/x86/lib/cmpxchg16b_emu.S
-index 9b33024..e52ee44 100644
+index 9b33024..cdbc725 100644
--- a/arch/x86/lib/cmpxchg16b_emu.S
+++ b/arch/x86/lib/cmpxchg16b_emu.S
@@ -7,6 +7,7 @@
@@ -34030,31 +37295,54 @@ index 9b33024..e52ee44 100644
.text
-@@ -43,11 +44,13 @@ ENTRY(this_cpu_cmpxchg16b_emu)
+@@ -43,11 +44,11 @@ ENTRY(this_cpu_cmpxchg16b_emu)
popfq
mov $1, %al
-+ pax_force_retaddr
- ret
+- ret
++ pax_ret this_cpu_cmpxchg16b_emu
.Lnot_same:
popfq
xor %al,%al
-+ pax_force_retaddr
- ret
+- ret
++ pax_ret this_cpu_cmpxchg16b_emu
ENDPROC(this_cpu_cmpxchg16b_emu)
+diff --git a/arch/x86/lib/cmpxchg8b_emu.S b/arch/x86/lib/cmpxchg8b_emu.S
+index 03a186f..34c859b 100644
+--- a/arch/x86/lib/cmpxchg8b_emu.S
++++ b/arch/x86/lib/cmpxchg8b_emu.S
+@@ -38,7 +38,7 @@ ENTRY(cmpxchg8b_emu)
+ movl %ecx, 4(%esi)
+
+ popfl
+- ret
++ pax_ret cmpxchg8b_emu
+
+ .Lnot_same:
+ movl (%esi), %eax
+@@ -46,7 +46,7 @@ ENTRY(cmpxchg8b_emu)
+ movl 4(%esi), %edx
+
+ popfl
+- ret
++ pax_ret cmpxchg8b_emu
+
+ ENDPROC(cmpxchg8b_emu)
+ EXPORT_SYMBOL(cmpxchg8b_emu)
diff --git a/arch/x86/lib/copy_page_64.S b/arch/x86/lib/copy_page_64.S
-index 24ef1c2..a119ef1 100644
+index e850815..65619e55 100644
--- a/arch/x86/lib/copy_page_64.S
+++ b/arch/x86/lib/copy_page_64.S
-@@ -15,13 +15,14 @@ ENTRY(copy_page)
+@@ -16,14 +16,14 @@ ENTRY(copy_page)
ALTERNATIVE "jmp copy_page_regs", "", X86_FEATURE_REP_GOOD
movl $4096/8, %ecx
rep movsq
-+ pax_force_retaddr
- ret
+- ret
++ pax_ret copy_page
ENDPROC(copy_page)
+ EXPORT_SYMBOL(copy_page)
ENTRY(copy_page_regs)
subq $2*8, %rsp
@@ -34064,7 +37352,7 @@ index 24ef1c2..a119ef1 100644
movl $(4096/64)-5, %ecx
.p2align 4
-@@ -34,7 +35,7 @@ ENTRY(copy_page_regs)
+@@ -36,7 +36,7 @@ ENTRY(copy_page_regs)
movq 0x8*4(%rsi), %r9
movq 0x8*5(%rsi), %r10
movq 0x8*6(%rsi), %r11
@@ -34073,7 +37361,7 @@ index 24ef1c2..a119ef1 100644
prefetcht0 5*64(%rsi)
-@@ -45,7 +46,7 @@ ENTRY(copy_page_regs)
+@@ -47,7 +47,7 @@ ENTRY(copy_page_regs)
movq %r9, 0x8*4(%rdi)
movq %r10, 0x8*5(%rdi)
movq %r11, 0x8*6(%rdi)
@@ -34082,7 +37370,7 @@ index 24ef1c2..a119ef1 100644
leaq 64 (%rsi), %rsi
leaq 64 (%rdi), %rdi
-@@ -64,7 +65,7 @@ ENTRY(copy_page_regs)
+@@ -66,7 +66,7 @@ ENTRY(copy_page_regs)
movq 0x8*4(%rsi), %r9
movq 0x8*5(%rsi), %r10
movq 0x8*6(%rsi), %r11
@@ -34091,7 +37379,7 @@ index 24ef1c2..a119ef1 100644
movq %rax, 0x8*0(%rdi)
movq %rbx, 0x8*1(%rdi)
-@@ -73,14 +74,15 @@ ENTRY(copy_page_regs)
+@@ -75,14 +75,14 @@ ENTRY(copy_page_regs)
movq %r9, 0x8*4(%rdi)
movq %r10, 0x8*5(%rdi)
movq %r11, 0x8*6(%rdi)
@@ -34106,17 +37394,17 @@ index 24ef1c2..a119ef1 100644
- movq 1*8(%rsp), %r12
+ movq 1*8(%rsp), %r13
addq $2*8, %rsp
-+ pax_force_retaddr
- ret
+- ret
++ pax_ret copy_page
ENDPROC(copy_page_regs)
diff --git a/arch/x86/lib/copy_user_64.S b/arch/x86/lib/copy_user_64.S
-index bf603eb..5271364 100644
+index d376e4b..8e52373 100644
--- a/arch/x86/lib/copy_user_64.S
+++ b/arch/x86/lib/copy_user_64.S
-@@ -14,51 +14,34 @@
- #include <asm/alternative-asm.h>
+@@ -15,54 +15,35 @@
#include <asm/asm.h>
#include <asm/smap.h>
+ #include <asm/export.h>
+#include <asm/pgtable.h>
+#include <asm/frame.h>
@@ -34134,6 +37422,7 @@ index bf603eb..5271364 100644
- "jmp copy_user_enhanced_fast_string", \
- X86_FEATURE_ERMS
-ENDPROC(_copy_to_user)
+-EXPORT_SYMBOL(_copy_to_user)
-
-/* Standard copy_from_user with segment limit checking */
-ENTRY(_copy_from_user)
@@ -34149,6 +37438,7 @@ index bf603eb..5271364 100644
- "jmp copy_user_enhanced_fast_string", \
- X86_FEATURE_ERMS
-ENDPROC(_copy_from_user)
+-EXPORT_SYMBOL(_copy_from_user)
-
+.macro ALIGN_DESTINATION
+ /* check for bad alignment of destination */
@@ -34165,6 +37455,7 @@ index bf603eb..5271364 100644
+ decl %ecx
+ jnz 100b
+102:
+
.section .fixup,"ax"
- /* must zero dest */
-ENTRY(bad_from_user)
@@ -34189,7 +37480,7 @@ index bf603eb..5271364 100644
/*
* copy_user_generic_unrolled - memory copy with exception handling.
* This version is for CPUs like P4 that don't have efficient micro
-@@ -73,7 +56,8 @@ ENDPROC(bad_from_user)
+@@ -77,7 +58,8 @@ ENDPROC(bad_from_user)
* eax uncopied bytes or 0 if successful.
*/
ENTRY(copy_user_generic_unrolled)
@@ -34199,18 +37490,19 @@ index bf603eb..5271364 100644
cmpl $8,%edx
jb 20f /* less then 8 bytes, go to byte copy loop */
ALIGN_DESTINATION
-@@ -121,7 +105,9 @@ ENTRY(copy_user_generic_unrolled)
+@@ -125,8 +107,9 @@ ENTRY(copy_user_generic_unrolled)
decl %ecx
jnz 21b
23: xor %eax,%eax
- ASM_CLAC
+- ret
+ ASM_USER_ACCESS_END
+ FRAME_END
-+ pax_force_retaddr
- ret
++ pax_ret copy_user_generic_unrolled
.section .fixup,"ax"
-@@ -131,7 +117,8 @@ ENTRY(copy_user_generic_unrolled)
+ 30: shll $6,%ecx
+@@ -135,7 +118,8 @@ ENTRY(copy_user_generic_unrolled)
40: leal (%rdx,%rcx,8),%edx
jmp 60f
50: movl %ecx,%edx
@@ -34220,7 +37512,7 @@ index bf603eb..5271364 100644
.previous
_ASM_EXTABLE(1b,30b)
-@@ -175,7 +162,8 @@ ENDPROC(copy_user_generic_unrolled)
+@@ -180,7 +164,8 @@ EXPORT_SYMBOL(copy_user_generic_unrolled)
* eax uncopied bytes or 0 if successful.
*/
ENTRY(copy_user_generic_string)
@@ -34230,15 +37522,15 @@ index bf603eb..5271364 100644
cmpl $8,%edx
jb 2f /* less than 8 bytes, go to byte copy loop */
ALIGN_DESTINATION
-@@ -188,12 +176,15 @@ ENTRY(copy_user_generic_string)
+@@ -193,12 +178,14 @@ ENTRY(copy_user_generic_string)
3: rep
movsb
xorl %eax,%eax
- ASM_CLAC
+- ret
+ ASM_USER_ACCESS_END
+ FRAME_END
-+ pax_force_retaddr
- ret
++ pax_ret copy_user_generic_string
.section .fixup,"ax"
11: leal (%rdx,%rcx,8),%ecx
@@ -34247,7 +37539,7 @@ index bf603eb..5271364 100644
jmp copy_user_handle_tail
.previous
-@@ -214,16 +205,20 @@ ENDPROC(copy_user_generic_string)
+@@ -220,16 +207,19 @@ EXPORT_SYMBOL(copy_user_generic_string)
* eax uncopied bytes or 0 if successful.
*/
ENTRY(copy_user_enhanced_fast_string)
@@ -34259,10 +37551,10 @@ index bf603eb..5271364 100644
movsb
xorl %eax,%eax
- ASM_CLAC
+- ret
+ ASM_USER_ACCESS_END
+ FRAME_END
-+ pax_force_retaddr
- ret
++ pax_ret copy_user_enhanced_fast_string
.section .fixup,"ax"
12: movl %ecx,%edx /* ecx is zerorest also */
@@ -34270,7 +37562,7 @@ index bf603eb..5271364 100644
jmp copy_user_handle_tail
.previous
-@@ -240,7 +235,17 @@ ENDPROC(copy_user_enhanced_fast_string)
+@@ -247,7 +237,17 @@ EXPORT_SYMBOL(copy_user_enhanced_fast_string)
* - Require 4-byte alignment when size is 4 bytes.
*/
ENTRY(__copy_user_nocache)
@@ -34289,19 +37581,20 @@ index bf603eb..5271364 100644
/* If size is less than 8 bytes, go to 4-byte copy */
cmpl $8,%edx
-@@ -334,8 +339,10 @@ ENTRY(__copy_user_nocache)
+@@ -341,9 +341,10 @@ ENTRY(__copy_user_nocache)
/* Finished copying; fence the prior stores */
.L_finish_copy:
xorl %eax,%eax
- ASM_CLAC
+ ASM_USER_ACCESS_END
sfence
+- ret
+ FRAME_END
-+ pax_force_retaddr
- ret
++ pax_ret __copy_user_nocache
.section .fixup,"ax"
-@@ -353,6 +360,7 @@ ENTRY(__copy_user_nocache)
+ .L_fixup_4x8b_copy:
+@@ -360,6 +361,7 @@ ENTRY(__copy_user_nocache)
movl %ecx,%edx
.L_fixup_handle_tail:
sfence
@@ -34310,7 +37603,7 @@ index bf603eb..5271364 100644
.previous
diff --git a/arch/x86/lib/csum-copy_64.S b/arch/x86/lib/csum-copy_64.S
-index 7e48807..cc966ff 100644
+index 7e48807..627b003 100644
--- a/arch/x86/lib/csum-copy_64.S
+++ b/arch/x86/lib/csum-copy_64.S
@@ -8,6 +8,7 @@
@@ -34359,7 +37652,7 @@ index 7e48807..cc966ff 100644
dest
movq %rbx, (%rsi)
-@@ -200,11 +201,12 @@ ENTRY(csum_partial_copy_generic)
+@@ -200,12 +201,12 @@ ENTRY(csum_partial_copy_generic)
.Lende:
movq 2*8(%rsp), %rbx
@@ -34369,10 +37662,11 @@ index 7e48807..cc966ff 100644
movq 5*8(%rsp), %r13
movq 6*8(%rsp), %rbp
addq $7*8, %rsp
-+ pax_force_retaddr
- ret
+- ret
++ pax_ret csum_partial_copy_generic
/* Exception handlers. Very simple, zeroing is done in the wrappers */
+ .Lbad_source:
diff --git a/arch/x86/lib/csum-wrappers_64.c b/arch/x86/lib/csum-wrappers_64.c
index 8bd5358..a6c9102 100644
--- a/arch/x86/lib/csum-wrappers_64.c
@@ -34406,13 +37700,13 @@ index 8bd5358..a6c9102 100644
}
EXPORT_SYMBOL(csum_partial_copy_to_user);
diff --git a/arch/x86/lib/getuser.S b/arch/x86/lib/getuser.S
-index 0ef5128..4a52ddc 100644
+index 37b62d4..07a73dc 100644
--- a/arch/x86/lib/getuser.S
+++ b/arch/x86/lib/getuser.S
-@@ -32,56 +32,127 @@
- #include <asm/thread_info.h>
+@@ -33,72 +33,140 @@
#include <asm/asm.h>
#include <asm/smap.h>
+ #include <asm/export.h>
+#include <asm/segment.h>
+#include <asm/pgtable.h>
+#include <asm/frame.h>
@@ -34449,11 +37743,12 @@ index 0ef5128..4a52ddc 100644
+1: __copyuser_seg movzbl (%_ASM_AX),%edx
xor %eax,%eax
- ASM_CLAC
+- ret
+ ASM_USER_ACCESS_END
+ FRAME_END
-+ pax_force_retaddr
- ret
++ pax_ret __get_user_1
ENDPROC(__get_user_1)
+ EXPORT_SYMBOL(__get_user_1)
ENTRY(__get_user_2)
+ FRAME_BEGIN
@@ -34481,11 +37776,12 @@ index 0ef5128..4a52ddc 100644
+2: __copyuser_seg movzwl -1(%_ASM_AX),%edx
xor %eax,%eax
- ASM_CLAC
+- ret
+ ASM_USER_ACCESS_END
+ FRAME_END
-+ pax_force_retaddr
- ret
++ pax_ret __get_user_2
ENDPROC(__get_user_2)
+ EXPORT_SYMBOL(__get_user_2)
ENTRY(__get_user_4)
+ FRAME_BEGIN
@@ -34513,11 +37809,12 @@ index 0ef5128..4a52ddc 100644
+3: __copyuser_seg movl -3(%_ASM_AX),%edx
xor %eax,%eax
- ASM_CLAC
+- ret
+ ASM_USER_ACCESS_END
+ FRAME_END
-+ pax_force_retaddr
- ret
++ pax_ret __get_user_4
ENDPROC(__get_user_4)
+ EXPORT_SYMBOL(__get_user_4)
ENTRY(__get_user_8)
+ FRAME_BEGIN
@@ -34542,13 +37839,13 @@ index 0ef5128..4a52ddc 100644
4: movq -7(%_ASM_AX),%rdx
xor %eax,%eax
- ASM_CLAC
+- ret
+ ASM_USER_ACCESS_END
+ FRAME_END
-+ pax_force_retaddr
- ret
++ pax_ret __get_user_8
#else
add $7,%_ASM_AX
-@@ -89,11 +160,13 @@ ENTRY(__get_user_8)
+ jc bad_get_user_8
mov PER_CPU_VAR(current_task), %_ASM_DX
cmp TASK_addr_limit(%_ASM_DX),%_ASM_AX
jae bad_get_user_8
@@ -34560,34 +37857,83 @@ index 0ef5128..4a52ddc 100644
+5: __copyuser_seg movl -3(%_ASM_AX),%ecx
xor %eax,%eax
- ASM_CLAC
+- ret
+ ASM_USER_ACCESS_END
+ FRAME_END
-+ pax_force_retaddr
- ret
++ pax_ret __get_user_8
#endif
ENDPROC(__get_user_8)
-@@ -102,7 +175,9 @@ ENDPROC(__get_user_8)
+ EXPORT_SYMBOL(__get_user_8)
+@@ -107,8 +175,9 @@ EXPORT_SYMBOL(__get_user_8)
bad_get_user:
xor %edx,%edx
mov $(-EFAULT),%_ASM_AX
- ASM_CLAC
+- ret
+ ASM_USER_ACCESS_END
+ FRAME_END
-+ pax_force_retaddr
- ret
++ pax_ret __get_user_bad
END(bad_get_user)
-@@ -111,7 +186,9 @@ bad_get_user_8:
+ #ifdef CONFIG_X86_32
+@@ -116,8 +185,9 @@ bad_get_user_8:
xor %edx,%edx
xor %ecx,%ecx
mov $(-EFAULT),%_ASM_AX
- ASM_CLAC
+- ret
+ ASM_USER_ACCESS_END
+ FRAME_END
-+ pax_force_retaddr
- ret
++ pax_ret __get_user_bad
END(bad_get_user_8)
#endif
+
+diff --git a/arch/x86/lib/hweight.S b/arch/x86/lib/hweight.S
+index 23d893c..688a0aa 100644
+--- a/arch/x86/lib/hweight.S
++++ b/arch/x86/lib/hweight.S
+@@ -1,7 +1,7 @@
+ #include <linux/linkage.h>
+ #include <asm/export.h>
+
+-#include <asm/asm.h>
++#include <asm/alternative-asm.h>
+
+ /*
+ * unsigned int __sw_hweight32(unsigned int w)
+@@ -31,7 +31,7 @@ ENTRY(__sw_hweight32)
+ imull $0x01010101, %eax, %eax # w_tmp *= 0x01010101
+ shrl $24, %eax # w = w_tmp >> 24
+ __ASM_SIZE(pop,) %__ASM_REG(dx)
+- ret
++ pax_ret __sw_hweight32
+ ENDPROC(__sw_hweight32)
+ EXPORT_SYMBOL(__sw_hweight32)
+
+@@ -64,19 +64,19 @@ ENTRY(__sw_hweight64)
+
+ popq %rdx
+ popq %rdi
+- ret
++ pax_ret __sw_hweight64
+ #else /* CONFIG_X86_32 */
+ /* We're getting an u64 arg in (%eax,%edx): unsigned long hweight64(__u64 w) */
+ pushl %ecx
+
+- call __sw_hweight32
++ pax_direct_call __sw_hweight32
+ movl %eax, %ecx # stash away result
+ movl %edx, %eax # second part of input
+- call __sw_hweight32
++ pax_direct_call __sw_hweight32
+ addl %ecx, %eax # result
+
+ popl %ecx
+- ret
++ pax_ret __sw_hweight64
+ #endif
+ ENDPROC(__sw_hweight64)
+ EXPORT_SYMBOL(__sw_hweight64)
diff --git a/arch/x86/lib/insn.c b/arch/x86/lib/insn.c
index 1088eb8..fac8468 100644
--- a/arch/x86/lib/insn.c
@@ -34617,7 +37963,7 @@ index 1088eb8..fac8468 100644
insn->opnd_bytes = 4;
if (x86_64)
diff --git a/arch/x86/lib/iomap_copy_64.S b/arch/x86/lib/iomap_copy_64.S
-index 33147fe..12a8815 100644
+index 33147fe..fb022d0 100644
--- a/arch/x86/lib/iomap_copy_64.S
+++ b/arch/x86/lib/iomap_copy_64.S
@@ -16,6 +16,7 @@
@@ -34628,114 +37974,142 @@ index 33147fe..12a8815 100644
/*
* override generic version in lib/iomap_copy.c
-@@ -23,5 +24,6 @@
+@@ -23,5 +24,5 @@
ENTRY(__iowrite32_copy)
movl %edx,%ecx
rep movsd
-+ pax_force_retaddr
- ret
+- ret
++ pax_ret __iowrite32_copy
ENDPROC(__iowrite32_copy)
diff --git a/arch/x86/lib/memcpy_64.S b/arch/x86/lib/memcpy_64.S
-index 2ec0b0abb..3e02ccd 100644
+index 779782f..7aef7b9 100644
--- a/arch/x86/lib/memcpy_64.S
+++ b/arch/x86/lib/memcpy_64.S
-@@ -37,6 +37,7 @@ ENTRY(memcpy)
+@@ -38,7 +38,7 @@ ENTRY(memcpy)
rep movsq
movl %edx, %ecx
rep movsb
-+ pax_force_retaddr
- ret
+- ret
++ pax_ret memcpy
ENDPROC(memcpy)
ENDPROC(__memcpy)
-@@ -49,6 +50,7 @@ ENTRY(memcpy_erms)
+ EXPORT_SYMBOL(memcpy)
+@@ -52,7 +52,7 @@ ENTRY(memcpy_erms)
movq %rdi, %rax
movq %rdx, %rcx
rep movsb
-+ pax_force_retaddr
- ret
+- ret
++ pax_ret memcpy
ENDPROC(memcpy_erms)
-@@ -133,6 +135,7 @@ ENTRY(memcpy_orig)
+ ENTRY(memcpy_orig)
+@@ -136,7 +136,7 @@ ENTRY(memcpy_orig)
movq %r9, 1*8(%rdi)
movq %r10, -2*8(%rdi, %rdx)
movq %r11, -1*8(%rdi, %rdx)
-+ pax_force_retaddr
- retq
+- retq
++ pax_ret memcpy
.p2align 4
.Lless_16bytes:
-@@ -145,6 +148,7 @@ ENTRY(memcpy_orig)
+ cmpl $8, %edx
+@@ -148,7 +148,7 @@ ENTRY(memcpy_orig)
movq -1*8(%rsi, %rdx), %r9
movq %r8, 0*8(%rdi)
movq %r9, -1*8(%rdi, %rdx)
-+ pax_force_retaddr
- retq
+- retq
++ pax_ret memcpy
.p2align 4
.Lless_8bytes:
-@@ -158,6 +162,7 @@ ENTRY(memcpy_orig)
+ cmpl $4, %edx
+@@ -161,7 +161,7 @@ ENTRY(memcpy_orig)
movl -4(%rsi, %rdx), %r8d
movl %ecx, (%rdi)
movl %r8d, -4(%rdi, %rdx)
-+ pax_force_retaddr
- retq
+- retq
++ pax_ret memcpy
.p2align 4
.Lless_3bytes:
-@@ -176,6 +181,7 @@ ENTRY(memcpy_orig)
+ subl $1, %edx
+@@ -179,7 +179,7 @@ ENTRY(memcpy_orig)
movb %cl, (%rdi)
.Lend:
-+ pax_force_retaddr
- retq
+- retq
++ pax_ret memcpy
ENDPROC(memcpy_orig)
+ #ifndef CONFIG_UML
+@@ -275,7 +275,7 @@ ENTRY(memcpy_mcsafe_unrolled)
+ /* Copy successful. Return zero */
+ .L_done_memcpy_trap:
+ xorq %rax, %rax
+- ret
++ pax_ret memcpy
+ ENDPROC(memcpy_mcsafe_unrolled)
+ EXPORT_SYMBOL_GPL(memcpy_mcsafe_unrolled)
+
+@@ -283,7 +283,7 @@ EXPORT_SYMBOL_GPL(memcpy_mcsafe_unrolled)
+ /* Return -EFAULT for any failure */
+ .L_memcpy_mcsafe_fail:
+ mov $-EFAULT, %rax
+- ret
++ pax_ret memcpy
+
+ .previous
+
diff --git a/arch/x86/lib/memmove_64.S b/arch/x86/lib/memmove_64.S
-index 90ce01b..8817b34 100644
+index 15de86c..cf88176 100644
--- a/arch/x86/lib/memmove_64.S
+++ b/arch/x86/lib/memmove_64.S
-@@ -41,7 +41,7 @@ ENTRY(__memmove)
+@@ -42,7 +42,7 @@ ENTRY(__memmove)
jg 2f
.Lmemmove_begin_forward:
- ALTERNATIVE "", "movq %rdx, %rcx; rep movsb; retq", X86_FEATURE_ERMS
-+ ALTERNATIVE "", "movq %rdx, %rcx; rep movsb; pax_force_retaddr; retq", X86_FEATURE_ERMS
++ ALTERNATIVE "", "movq %rdx, %rcx; rep movsb; pax_ret memmove", X86_FEATURE_ERMS
/*
* movsq instruction have many startup latency
-@@ -204,6 +204,7 @@ ENTRY(__memmove)
+@@ -205,7 +205,7 @@ ENTRY(__memmove)
movb (%rsi), %r11b
movb %r11b, (%rdi)
13:
-+ pax_force_retaddr
- retq
+- retq
++ pax_ret memmove
ENDPROC(__memmove)
ENDPROC(memmove)
+ EXPORT_SYMBOL(__memmove)
diff --git a/arch/x86/lib/memset_64.S b/arch/x86/lib/memset_64.S
-index e1229ec..2ca5a7a 100644
+index 55b95db..7b10626 100644
--- a/arch/x86/lib/memset_64.S
+++ b/arch/x86/lib/memset_64.S
-@@ -40,6 +40,7 @@ ENTRY(__memset)
+@@ -41,7 +41,7 @@ ENTRY(__memset)
movl %edx,%ecx
rep stosb
movq %r9,%rax
-+ pax_force_retaddr
- ret
+- ret
++ pax_ret memset
ENDPROC(memset)
ENDPROC(__memset)
-@@ -61,6 +62,7 @@ ENTRY(memset_erms)
+ EXPORT_SYMBOL(memset)
+@@ -64,7 +64,7 @@ ENTRY(memset_erms)
movq %rdx,%rcx
rep stosb
movq %r9,%rax
-+ pax_force_retaddr
- ret
+- ret
++ pax_ret memset
ENDPROC(memset_erms)
-@@ -123,6 +125,7 @@ ENTRY(memset_orig)
+ ENTRY(memset_orig)
+@@ -126,7 +126,7 @@ ENTRY(memset_orig)
.Lende:
movq %r10,%rax
-+ pax_force_retaddr
- ret
+- ret
++ pax_ret memset
.Lbad_alignment:
+ cmpq $7,%rdx
diff --git a/arch/x86/lib/mmx_32.c b/arch/x86/lib/mmx_32.c
index c2311a6..3b01ad9 100644
--- a/arch/x86/lib/mmx_32.c
@@ -35056,7 +38430,7 @@ index c2311a6..3b01ad9 100644
from += 64;
to += 64;
diff --git a/arch/x86/lib/msr-reg.S b/arch/x86/lib/msr-reg.S
-index c815564..303dcfa 100644
+index c815564..345ff91 100644
--- a/arch/x86/lib/msr-reg.S
+++ b/arch/x86/lib/msr-reg.S
@@ -2,6 +2,7 @@
@@ -35067,22 +38441,32 @@ index c815564..303dcfa 100644
#ifdef CONFIG_X86_64
/*
-@@ -34,6 +35,7 @@ ENTRY(\op\()_safe_regs)
+@@ -34,7 +35,7 @@ ENTRY(\op\()_safe_regs)
movl %edi, 28(%r10)
popq %rbp
popq %rbx
-+ pax_force_retaddr
- ret
+- ret
++ pax_ret \op\()_safe_regs
3:
movl $-EIO, %r11d
+ jmp 2b
+@@ -76,7 +77,7 @@ ENTRY(\op\()_safe_regs)
+ popl %esi
+ popl %ebp
+ popl %ebx
+- ret
++ pax_ret \op\()_safe_regs
+ 3:
+ movl $-EIO, 4(%esp)
+ jmp 2b
diff --git a/arch/x86/lib/putuser.S b/arch/x86/lib/putuser.S
-index c891ece..27057c0 100644
+index cd5d716..146f981 100644
--- a/arch/x86/lib/putuser.S
+++ b/arch/x86/lib/putuser.S
-@@ -15,7 +15,10 @@
- #include <asm/errno.h>
+@@ -16,7 +16,10 @@
#include <asm/asm.h>
#include <asm/smap.h>
+ #include <asm/export.h>
-
+#include <asm/segment.h>
+#include <asm/pgtable.h>
@@ -35091,18 +38475,18 @@ index c891ece..27057c0 100644
/*
* __put_user_X
-@@ -29,55 +32,125 @@
+@@ -30,17 +33,44 @@
* as they get called from within inline assembly.
*/
-#define ENTER mov PER_CPU_VAR(current_task), %_ASM_BX
-#define EXIT ASM_CLAC ; \
+- ret
+#define ENTER FRAME_BEGIN
+#define EXIT ASM_USER_ACCESS_END ; \
+ FRAME_END ; \
-+ pax_force_retaddr ; \
- ret
-
++ pax_ret __put_user_1
++
+#if defined(CONFIG_X86_64) && defined(CONFIG_PAX_MEMORY_UDEREF)
+#define _DEST %_ASM_CX,%_ASM_BX
+#else
@@ -35114,7 +38498,7 @@ index c891ece..27057c0 100644
+#else
+#define __copyuser_seg
+#endif
-+
+
.text
ENTRY(__put_user_1)
ENTER
@@ -35141,6 +38525,7 @@ index c891ece..27057c0 100644
xor %eax,%eax
EXIT
ENDPROC(__put_user_1)
+@@ -48,12 +78,26 @@ EXPORT_SYMBOL(__put_user_1)
ENTRY(__put_user_2)
ENTER
@@ -35169,6 +38554,7 @@ index c891ece..27057c0 100644
xor %eax,%eax
EXIT
ENDPROC(__put_user_2)
+@@ -61,12 +105,26 @@ EXPORT_SYMBOL(__put_user_2)
ENTRY(__put_user_4)
ENTER
@@ -35197,6 +38583,7 @@ index c891ece..27057c0 100644
xor %eax,%eax
EXIT
ENDPROC(__put_user_4)
+@@ -74,14 +132,28 @@ EXPORT_SYMBOL(__put_user_4)
ENTRY(__put_user_8)
ENTER
@@ -35229,42 +38616,74 @@ index c891ece..27057c0 100644
xor %eax,%eax
EXIT
diff --git a/arch/x86/lib/rwsem.S b/arch/x86/lib/rwsem.S
-index bf2c607..0e6d18b 100644
+index bf2c607..3ca297d 100644
--- a/arch/x86/lib/rwsem.S
+++ b/arch/x86/lib/rwsem.S
-@@ -95,6 +95,7 @@ ENTRY(call_rwsem_down_read_failed)
+@@ -91,31 +91,31 @@ ENTRY(call_rwsem_down_read_failed)
+ save_common_regs
+ __ASM_SIZE(push,) %__ASM_REG(dx)
+ movq %rax,%rdi
+- call rwsem_down_read_failed
++ pax_direct_call rwsem_down_read_failed
__ASM_SIZE(pop,) %__ASM_REG(dx)
restore_common_regs
FRAME_END
-+ pax_force_retaddr
- ret
+- ret
++ pax_ret rwsem_down_read_failed
ENDPROC(call_rwsem_down_read_failed)
-@@ -105,6 +106,7 @@ ENTRY(call_rwsem_down_write_failed)
- call rwsem_down_write_failed
+ ENTRY(call_rwsem_down_write_failed)
+ FRAME_BEGIN
+ save_common_regs
+ movq %rax,%rdi
+- call rwsem_down_write_failed
++ pax_direct_call rwsem_down_write_failed
restore_common_regs
FRAME_END
-+ pax_force_retaddr
- ret
+- ret
++ pax_ret rwsem_down_write_failed
ENDPROC(call_rwsem_down_write_failed)
-@@ -128,6 +130,7 @@ ENTRY(call_rwsem_wake)
- call rwsem_wake
+ ENTRY(call_rwsem_down_write_failed_killable)
+ FRAME_BEGIN
+ save_common_regs
+ movq %rax,%rdi
+- call rwsem_down_write_failed_killable
++ pax_direct_call rwsem_down_write_failed_killable
+ restore_common_regs
+ FRAME_END
+- ret
++ pax_ret rwsem_down_write_failed_killable
+ ENDPROC(call_rwsem_down_write_failed_killable)
+
+ ENTRY(call_rwsem_wake)
+@@ -125,10 +125,10 @@ ENTRY(call_rwsem_wake)
+ jnz 1f
+ save_common_regs
+ movq %rax,%rdi
+- call rwsem_wake
++ pax_direct_call rwsem_wake
restore_common_regs
1: FRAME_END
-+ pax_force_retaddr
- ret
+- ret
++ pax_ret rwsem_wake
ENDPROC(call_rwsem_wake)
-@@ -140,5 +143,6 @@ ENTRY(call_rwsem_downgrade_wake)
+ ENTRY(call_rwsem_downgrade_wake)
+@@ -136,9 +136,9 @@ ENTRY(call_rwsem_downgrade_wake)
+ save_common_regs
+ __ASM_SIZE(push,) %__ASM_REG(dx)
+ movq %rax,%rdi
+- call rwsem_downgrade_wake
++ pax_direct_call rwsem_downgrade_wake
__ASM_SIZE(pop,) %__ASM_REG(dx)
restore_common_regs
FRAME_END
-+ pax_force_retaddr
- ret
+- ret
++ pax_ret rwsem_downgrade_wake
ENDPROC(call_rwsem_downgrade_wake)
diff --git a/arch/x86/lib/usercopy_32.c b/arch/x86/lib/usercopy_32.c
-index 3bc7baf..63d1a4d 100644
+index 3bc7baf..aa7d985 100644
--- a/arch/x86/lib/usercopy_32.c
+++ b/arch/x86/lib/usercopy_32.c
@@ -42,11 +42,13 @@ do { \
@@ -35839,14 +39258,14 @@ index 3bc7baf..63d1a4d 100644
- else
- memset(to, 0, n);
- return n;
-+ current_thread_info()->addr_limit = x;
++ current->thread.addr_limit = x;
+ __set_fs(x);
}
-EXPORT_SYMBOL(_copy_from_user);
+EXPORT_SYMBOL(set_fs);
+#endif
diff --git a/arch/x86/lib/usercopy_64.c b/arch/x86/lib/usercopy_64.c
-index 6987358..adaea41 100644
+index 6987358..14d4769 100644
--- a/arch/x86/lib/usercopy_64.c
+++ b/arch/x86/lib/usercopy_64.c
@@ -18,7 +18,7 @@ unsigned long __clear_user(void __user *addr, unsigned long size)
@@ -35887,19 +39306,22 @@ index 6987358..adaea41 100644
}
EXPORT_SYMBOL(copy_in_user);
-@@ -69,8 +68,9 @@ EXPORT_SYMBOL(copy_in_user);
+@@ -69,20 +68,20 @@ EXPORT_SYMBOL(copy_in_user);
* it is not necessary to optimize tail handling.
*/
__visible unsigned long
-copy_user_handle_tail(char *to, char *from, unsigned len)
-+copy_user_handle_tail(char __user *to, char __user *from, unsigned long len)
++copy_user_handle_tail(void __user *to, const void __user *from, unsigned long len)
{
+ user_access_end();
for (; len; --len, to++) {
char c;
-@@ -79,10 +79,9 @@ copy_user_handle_tail(char *to, char *from, unsigned len)
- if (__put_user_nocheck(c, to, sizeof(char)))
+- if (__get_user_nocheck(c, from++, sizeof(char)))
++ if (__get_user_nocheck(c, (const char *)from++, sizeof(char)))
+ break;
+- if (__put_user_nocheck(c, to, sizeof(char)))
++ if (__put_user_nocheck(c, (char *)to, sizeof(char)))
break;
}
- clac();
@@ -35911,6 +39333,64 @@ index 6987358..adaea41 100644
+ memset((void __force_kernel *)to, 0, len);
return len;
}
+diff --git a/arch/x86/math-emu/div_Xsig.S b/arch/x86/math-emu/div_Xsig.S
+index f77ba30..8ba0e95 100644
+--- a/arch/x86/math-emu/div_Xsig.S
++++ b/arch/x86/math-emu/div_Xsig.S
+@@ -340,26 +340,26 @@ L_exit:
+ popl %esi
+
+ leave
+- ret
++ pax_ret div_Xsig
+
+
+ #ifdef PARANOID
+ /* The logic is wrong if we got here */
+ L_bugged:
+ pushl EX_INTERNAL|0x240
+- call EXCEPTION
++ pax_direct_call EXCEPTION
+ pop %ebx
+ jmp L_exit
+
+ L_bugged_1:
+ pushl EX_INTERNAL|0x241
+- call EXCEPTION
++ pax_direct_call EXCEPTION
+ pop %ebx
+ jmp L_exit
+
+ L_bugged_2:
+ pushl EX_INTERNAL|0x242
+- call EXCEPTION
++ pax_direct_call EXCEPTION
+ pop %ebx
+ jmp L_exit
+ #endif /* PARANOID */
+diff --git a/arch/x86/math-emu/div_small.S b/arch/x86/math-emu/div_small.S
+index 4709962..f9f329a 100644
+--- a/arch/x86/math-emu/div_small.S
++++ b/arch/x86/math-emu/div_small.S
+@@ -43,5 +43,5 @@ ENTRY(FPU_div_small)
+ popl %esi
+
+ leave
+- ret
++ pax_ret FPU_div_small
+
+diff --git a/arch/x86/math-emu/fpu_asm.h b/arch/x86/math-emu/fpu_asm.h
+index 955b932..32dc223 100644
+--- a/arch/x86/math-emu/fpu_asm.h
++++ b/arch/x86/math-emu/fpu_asm.h
+@@ -11,6 +11,7 @@
+ #define _FPU_ASM_H_
+
+ #include <linux/linkage.h>
++#include <asm/alternative-asm.h>
+
+ #define EXCEPTION FPU_exception
+
diff --git a/arch/x86/math-emu/fpu_aux.c b/arch/x86/math-emu/fpu_aux.c
index 024f6e9..308f1b0 100644
--- a/arch/x86/math-emu/fpu_aux.c
@@ -36030,6 +39510,45 @@ index ecd0668..4b4c664 100644
};
void FPU_trigb(void)
+diff --git a/arch/x86/math-emu/mul_Xsig.S b/arch/x86/math-emu/mul_Xsig.S
+index 717785a..36e0065 100644
+--- a/arch/x86/math-emu/mul_Xsig.S
++++ b/arch/x86/math-emu/mul_Xsig.S
+@@ -61,7 +61,7 @@ ENTRY(mul32_Xsig)
+
+ popl %esi
+ leave
+- ret
++ pax_ret mul32_Xsig
+
+
+ ENTRY(mul64_Xsig)
+@@ -113,7 +113,7 @@ ENTRY(mul64_Xsig)
+
+ popl %esi
+ leave
+- ret
++ pax_ret mul64_Xsig
+
+
+
+@@ -172,5 +172,5 @@ ENTRY(mul_Xsig_Xsig)
+
+ popl %esi
+ leave
+- ret
++ pax_ret mul_Xsig_Xsig
+
+diff --git a/arch/x86/math-emu/polynom_Xsig.S b/arch/x86/math-emu/polynom_Xsig.S
+index 17315c8..b132abb 100644
+--- a/arch/x86/math-emu/polynom_Xsig.S
++++ b/arch/x86/math-emu/polynom_Xsig.S
+@@ -132,4 +132,4 @@ L_accum_done:
+ popl %edi
+ popl %esi
+ leave
+- ret
++ pax_ret polynomial_Xsig
diff --git a/arch/x86/math-emu/reg_constant.c b/arch/x86/math-emu/reg_constant.c
index 0054835..a3bd671 100644
--- a/arch/x86/math-emu/reg_constant.c
@@ -36049,6 +39568,469 @@ index 0054835..a3bd671 100644
};
void fconst(void)
+diff --git a/arch/x86/math-emu/reg_norm.S b/arch/x86/math-emu/reg_norm.S
+index 8b6352e..484e774 100644
+--- a/arch/x86/math-emu/reg_norm.S
++++ b/arch/x86/math-emu/reg_norm.S
+@@ -71,7 +71,7 @@ L_exit_valid:
+ L_exit:
+ popl %ebx
+ leave
+- ret
++ pax_ret FPU_normalize
+
+
+ L_zero:
+@@ -83,7 +83,7 @@ L_underflow:
+ /* Convert the exponent to 80x87 form. */
+ addw EXTENDED_Ebias,EXP(%ebx)
+ push %ebx
+- call arith_underflow
++ pax_direct_call arith_underflow
+ pop %ebx
+ jmp L_exit
+
+@@ -91,7 +91,7 @@ L_overflow:
+ /* Convert the exponent to 80x87 form. */
+ addw EXTENDED_Ebias,EXP(%ebx)
+ push %ebx
+- call arith_overflow
++ pax_direct_call arith_overflow
+ pop %ebx
+ jmp L_exit
+
+@@ -136,7 +136,7 @@ L_exit_nuo_valid:
+
+ popl %ebx
+ leave
+- ret
++ pax_ret FPU_normalize_nuo
+
+ L_exit_nuo_zero:
+ movl TAG_Zero,%eax
+@@ -144,4 +144,4 @@ L_exit_nuo_zero:
+
+ popl %ebx
+ leave
+- ret
++ pax_ret FPU_normalize_nuo
+diff --git a/arch/x86/math-emu/reg_round.S b/arch/x86/math-emu/reg_round.S
+index d1d4e48..003208e 100644
+--- a/arch/x86/math-emu/reg_round.S
++++ b/arch/x86/math-emu/reg_round.S
+@@ -436,7 +436,7 @@ fpu_Arith_exit:
+ popl %edi
+ popl %esi
+ leave
+- ret
++ pax_ret FPU_round
+
+
+ /*
+@@ -446,7 +446,7 @@ fpu_Arith_exit:
+ L_precision_lost_up:
+ push %edx
+ push %eax
+- call set_precision_flag_up
++ pax_direct_call set_precision_flag_up
+ popl %eax
+ popl %edx
+ jmp L_no_precision_loss
+@@ -458,7 +458,7 @@ L_precision_lost_up:
+ L_precision_lost_down:
+ push %edx
+ push %eax
+- call set_precision_flag_down
++ pax_direct_call set_precision_flag_down
+ popl %eax
+ popl %edx
+ jmp L_no_precision_loss
+@@ -603,7 +603,7 @@ LPseudoDenormal:
+ /* There must be a masked underflow */
+ push %eax
+ pushl EX_Underflow
+- call EXCEPTION
++ pax_direct_call EXCEPTION
+ popl %eax
+ popl %eax
+ movl TAG_Special,%edx
+@@ -616,12 +616,12 @@ LPseudoDenormal:
+ */
+ L_underflow_to_zero:
+ push %eax
+- call set_precision_flag_down
++ pax_direct_call set_precision_flag_down
+ popl %eax
+
+ push %eax
+ pushl EX_Underflow
+- call EXCEPTION
++ pax_direct_call EXCEPTION
+ popl %eax
+ popl %eax
+
+@@ -635,7 +635,7 @@ L_underflow_to_zero:
+ L_overflow:
+ addw EXTENDED_Ebias,EXP(%edi) /* Set for unmasked response. */
+ push %edi
+- call arith_overflow
++ pax_direct_call arith_overflow
+ pop %edi
+ jmp fpu_reg_round_signed_special_exit
+
+@@ -653,7 +653,7 @@ Do_unmasked_underflow:
+ addw $(3*(1<<13)),EXP(%edi)
+ push %eax
+ pushl EX_Underflow
+- call EXCEPTION
++ pax_direct_call EXCEPTION
+ popl %eax
+ popl %eax
+ jmp L_Normalised
+@@ -663,44 +663,44 @@ Do_unmasked_underflow:
+ #ifdef PECULIAR_486
+ L_bugged_denorm_486:
+ pushl EX_INTERNAL|0x236
+- call EXCEPTION
++ pax_direct_call EXCEPTION
+ popl %ebx
+ jmp L_exception_exit
+ #else
+ L_bugged_denorm:
+ pushl EX_INTERNAL|0x230
+- call EXCEPTION
++ pax_direct_call EXCEPTION
+ popl %ebx
+ jmp L_exception_exit
+ #endif /* PECULIAR_486 */
+
+ L_bugged_round24:
+ pushl EX_INTERNAL|0x231
+- call EXCEPTION
++ pax_direct_call EXCEPTION
+ popl %ebx
+ jmp L_exception_exit
+
+ L_bugged_round53:
+ pushl EX_INTERNAL|0x232
+- call EXCEPTION
++ pax_direct_call EXCEPTION
+ popl %ebx
+ jmp L_exception_exit
+
+ L_bugged_round64:
+ pushl EX_INTERNAL|0x233
+- call EXCEPTION
++ pax_direct_call EXCEPTION
+ popl %ebx
+ jmp L_exception_exit
+
+ L_norm_bugged:
+ pushl EX_INTERNAL|0x234
+- call EXCEPTION
++ pax_direct_call EXCEPTION
+ popl %ebx
+ jmp L_exception_exit
+
+ L_entry_bugged:
+ pushl EX_INTERNAL|0x235
+- call EXCEPTION
++ pax_direct_call EXCEPTION
+ popl %ebx
+ L_exception_exit:
+ mov $-1,%eax
+diff --git a/arch/x86/math-emu/reg_u_add.S b/arch/x86/math-emu/reg_u_add.S
+index 47c4c24..2349fce 100644
+--- a/arch/x86/math-emu/reg_u_add.S
++++ b/arch/x86/math-emu/reg_u_add.S
+@@ -153,7 +153,7 @@ L_round_the_result:
+ /* If we ever get here then we have problems! */
+ L_bugged:
+ pushl EX_INTERNAL|0x201
+- call EXCEPTION
++ pax_direct_call EXCEPTION
+ pop %ebx
+ movl $-1,%eax
+ jmp L_exit
+@@ -163,5 +163,5 @@ L_exit:
+ popl %edi
+ popl %esi
+ leave
+- ret
++ pax_ret FPU_u_add
+ #endif /* PARANOID */
+diff --git a/arch/x86/math-emu/reg_u_div.S b/arch/x86/math-emu/reg_u_div.S
+index cc00654..f628ba9 100644
+--- a/arch/x86/math-emu/reg_u_div.S
++++ b/arch/x86/math-emu/reg_u_div.S
+@@ -444,19 +444,19 @@ LRound_precision:
+ /* The logic is wrong if we got here */
+ L_bugged:
+ pushl EX_INTERNAL|0x202
+- call EXCEPTION
++ pax_direct_call EXCEPTION
+ pop %ebx
+ jmp L_exit
+
+ L_bugged_1:
+ pushl EX_INTERNAL|0x203
+- call EXCEPTION
++ pax_direct_call EXCEPTION
+ pop %ebx
+ jmp L_exit
+
+ L_bugged_2:
+ pushl EX_INTERNAL|0x204
+- call EXCEPTION
++ pax_direct_call EXCEPTION
+ pop %ebx
+ jmp L_exit
+
+@@ -467,5 +467,5 @@ L_exit:
+ popl %esi
+
+ leave
+- ret
++ pax_ret FPU_u_div
+ #endif /* PARANOID */
+diff --git a/arch/x86/math-emu/reg_u_mul.S b/arch/x86/math-emu/reg_u_mul.S
+index 973f12a..34675c5 100644
+--- a/arch/x86/math-emu/reg_u_mul.S
++++ b/arch/x86/math-emu/reg_u_mul.S
+@@ -134,7 +134,7 @@ L_extent_zero:
+ #ifdef PARANOID
+ L_bugged:
+ pushl EX_INTERNAL|0x205
+- call EXCEPTION
++ pax_direct_call EXCEPTION
+ pop %ebx
+ jmp L_exit
+
+@@ -143,6 +143,6 @@ L_exit:
+ popl %edi
+ popl %esi
+ leave
+- ret
++ pax_ret FPU_u_mul
+ #endif /* PARANOID */
+
+diff --git a/arch/x86/math-emu/reg_u_sub.S b/arch/x86/math-emu/reg_u_sub.S
+index 1b6c248..5359e93 100644
+--- a/arch/x86/math-emu/reg_u_sub.S
++++ b/arch/x86/math-emu/reg_u_sub.S
+@@ -231,31 +231,31 @@ L_round:
+ #ifdef PARANOID
+ L_bugged_1:
+ pushl EX_INTERNAL|0x206
+- call EXCEPTION
++ pax_direct_call EXCEPTION
+ pop %ebx
+ jmp L_error_exit
+
+ L_bugged_2:
+ pushl EX_INTERNAL|0x209
+- call EXCEPTION
++ pax_direct_call EXCEPTION
+ pop %ebx
+ jmp L_error_exit
+
+ L_bugged_3:
+ pushl EX_INTERNAL|0x210
+- call EXCEPTION
++ pax_direct_call EXCEPTION
+ pop %ebx
+ jmp L_error_exit
+
+ L_bugged_4:
+ pushl EX_INTERNAL|0x211
+- call EXCEPTION
++ pax_direct_call EXCEPTION
+ pop %ebx
+ jmp L_error_exit
+
+ L_bugged:
+ pushl EX_INTERNAL|0x212
+- call EXCEPTION
++ pax_direct_call EXCEPTION
+ pop %ebx
+ jmp L_error_exit
+
+@@ -269,4 +269,4 @@ L_exit:
+ popl %edi
+ popl %esi
+ leave
+- ret
++ pax_ret FPU_u_sub
+diff --git a/arch/x86/math-emu/round_Xsig.S b/arch/x86/math-emu/round_Xsig.S
+index bbe0e877..e832817 100644
+--- a/arch/x86/math-emu/round_Xsig.S
++++ b/arch/x86/math-emu/round_Xsig.S
+@@ -77,7 +77,7 @@ L_exit:
+ popl %esi
+ popl %ebx
+ leave
+- ret
++ pax_ret round_Xsig
+
+
+
+@@ -137,5 +137,5 @@ L_n_exit:
+ popl %esi
+ popl %ebx
+ leave
+- ret
++ pax_ret norm_Xsig
+
+diff --git a/arch/x86/math-emu/shr_Xsig.S b/arch/x86/math-emu/shr_Xsig.S
+index 31cdd11..61a03eca 100644
+--- a/arch/x86/math-emu/shr_Xsig.S
++++ b/arch/x86/math-emu/shr_Xsig.S
+@@ -44,7 +44,7 @@ ENTRY(shr_Xsig)
+ popl %ebx
+ popl %esi
+ leave
+- ret
++ pax_ret shr_Xsig
+
+ L_more_than_31:
+ cmpl $64,%ecx
+@@ -60,7 +60,7 @@ L_more_than_31:
+ movl $0,8(%esi)
+ popl %esi
+ leave
+- ret
++ pax_ret shr_Xsig
+
+ L_more_than_63:
+ cmpl $96,%ecx
+@@ -75,7 +75,7 @@ L_more_than_63:
+ movl %edx,8(%esi)
+ popl %esi
+ leave
+- ret
++ pax_ret shr_Xsig
+
+ L_more_than_95:
+ xorl %eax,%eax
+@@ -84,4 +84,4 @@ L_more_than_95:
+ movl %eax,8(%esi)
+ popl %esi
+ leave
+- ret
++ pax_ret shr_Xsig
+diff --git a/arch/x86/math-emu/wm_shrx.S b/arch/x86/math-emu/wm_shrx.S
+index 5184283..6267001 100644
+--- a/arch/x86/math-emu/wm_shrx.S
++++ b/arch/x86/math-emu/wm_shrx.S
+@@ -54,7 +54,7 @@ ENTRY(FPU_shrx)
+ popl %ebx
+ popl %esi
+ leave
+- ret
++ pax_ret FPU_shrx
+
+ L_more_than_31:
+ cmpl $64,%ecx
+@@ -69,7 +69,7 @@ L_more_than_31:
+ movl $0,4(%esi)
+ popl %esi
+ leave
+- ret
++ pax_ret FPU_shrx
+
+ L_more_than_63:
+ cmpl $96,%ecx
+@@ -83,7 +83,7 @@ L_more_than_63:
+ movl %edx,4(%esi)
+ popl %esi
+ leave
+- ret
++ pax_ret FPU_shrx
+
+ L_more_than_95:
+ xorl %eax,%eax
+@@ -91,7 +91,7 @@ L_more_than_95:
+ movl %eax,4(%esi)
+ popl %esi
+ leave
+- ret
++ pax_ret FPU_shrx
+
+
+ /*---------------------------------------------------------------------------+
+@@ -144,7 +144,7 @@ ENTRY(FPU_shrxs)
+ popl %ebx
+ popl %esi
+ leave
+- ret
++ pax_ret FPU_shrxs
+
+ /* Shift by [0..31] bits */
+ Ls_less_than_32:
+@@ -161,7 +161,7 @@ Ls_less_than_32:
+ popl %ebx
+ popl %esi
+ leave
+- ret
++ pax_ret FPU_shrxs
+
+ /* Shift by [64..95] bits */
+ Ls_more_than_63:
+@@ -187,7 +187,7 @@ Ls_more_than_63:
+ popl %ebx
+ popl %esi
+ leave
+- ret
++ pax_ret FPU_shrxs
+
+ Ls_more_than_95:
+ /* Shift by [96..inf) bits */
+@@ -201,4 +201,4 @@ Ls_more_than_95:
+ popl %ebx
+ popl %esi
+ leave
+- ret
++ pax_ret FPU_shrxs
+diff --git a/arch/x86/math-emu/wm_sqrt.S b/arch/x86/math-emu/wm_sqrt.S
+index d258f59..c5255d6 100644
+--- a/arch/x86/math-emu/wm_sqrt.S
++++ b/arch/x86/math-emu/wm_sqrt.S
+@@ -223,7 +223,7 @@ sqrt_stage_2_finish:
+ #ifdef PARANOID
+ sqrt_stage_2_error:
+ pushl EX_INTERNAL|0x213
+- call EXCEPTION
++ pax_direct_call EXCEPTION
+ #endif /* PARANOID */
+
+ sqrt_stage_2_done:
+@@ -276,7 +276,7 @@ sqrt_stage_2_done:
+
+ sqrt_stage_3_error:
+ pushl EX_INTERNAL|0x207
+- call EXCEPTION
++ pax_direct_call EXCEPTION
+
+ sqrt_stage_3_no_error:
+ #endif /* PARANOID */
+@@ -382,7 +382,7 @@ sqrt_near_exact:
+ ja sqrt_near_exact_ok
+
+ pushl EX_INTERNAL|0x214
+- call EXCEPTION
++ pax_direct_call EXCEPTION
+
+ sqrt_near_exact_ok:
+ #endif /* PARANOID */
+@@ -442,7 +442,7 @@ sqrt_get_more_precision:
+ ja sqrt_more_prec_ok
+
+ pushl EX_INTERNAL|0x215
+- call EXCEPTION
++ pax_direct_call EXCEPTION
+
+ sqrt_more_prec_ok:
+ #endif /* PARANOID */
diff --git a/arch/x86/mm/Makefile b/arch/x86/mm/Makefile
index 96d2b84..b3db380 100644
--- a/arch/x86/mm/Makefile
@@ -36159,7 +40141,7 @@ index ea9c49a..7ab033a 100644
} else {
walk_pud_level(m, &st, *start,
diff --git a/arch/x86/mm/extable.c b/arch/x86/mm/extable.c
-index a3a983f..69f6099 100644
+index fcd06f7..b5d8f5b 100644
--- a/arch/x86/mm/extable.c
+++ b/arch/x86/mm/extable.c
@@ -102,7 +102,7 @@ int fixup_exception(struct pt_regs *regs, int trapnr)
@@ -36172,7 +40154,7 @@ index a3a983f..69f6099 100644
extern u32 pnp_bios_is_utter_crap;
pnp_bios_is_utter_crap = 1;
diff --git a/arch/x86/mm/fault.c b/arch/x86/mm/fault.c
-index dc80230..b245d86 100644
+index 9f72ca3..a076e4a 100644
--- a/arch/x86/mm/fault.c
+++ b/arch/x86/mm/fault.c
@@ -14,6 +14,8 @@
@@ -36408,7 +40390,22 @@ index dc80230..b245d86 100644
printk(KERN_ALERT "BUG: unable to handle kernel ");
if (address < PAGE_SIZE)
printk(KERN_CONT "NULL pointer dereference");
-@@ -855,6 +953,21 @@ __bad_area_nosemaphore(struct pt_regs *regs, unsigned long error_code,
+@@ -775,12 +873,9 @@ no_context(struct pt_regs *regs, unsigned long error_code,
+ * break the console driver and lose most of the stack dump.
+ */
+ asm volatile ("movq %[stack], %%rsp\n\t"
+- "call handle_stack_overflow\n\t"
+- "1: jmp 1b"
+ : "+r" (__sp)
+- : "D" ("kernel stack overflow (page fault)"),
+- "S" (regs), "d" (address),
+- [stack] "rm" (stack));
++ : [stack] "rm" (stack));
++ handle_stack_overflow("kernel stack overflow (page fault)", regs, address);
+ unreachable();
+ }
+ #endif
+@@ -887,6 +982,21 @@ __bad_area_nosemaphore(struct pt_regs *regs, unsigned long error_code,
}
#endif
@@ -36430,7 +40427,7 @@ index dc80230..b245d86 100644
/*
* To avoid leaking information about the kernel page table
* layout, pretend that user-mode accesses to kernel addresses
-@@ -966,7 +1079,7 @@ do_sigbus(struct pt_regs *regs, unsigned long error_code, unsigned long address,
+@@ -998,7 +1108,7 @@ do_sigbus(struct pt_regs *regs, unsigned long error_code, unsigned long address,
if (fault & (VM_FAULT_HWPOISON|VM_FAULT_HWPOISON_LARGE)) {
printk(KERN_ERR
"MCE: Killing %s:%d due to hardware memory corruption fault at %lx\n",
@@ -36439,7 +40436,7 @@ index dc80230..b245d86 100644
code = BUS_MCEERR_AR;
}
#endif
-@@ -1025,6 +1138,109 @@ static int spurious_fault_check(unsigned long error_code, pte_t *pte)
+@@ -1057,6 +1167,109 @@ static int spurious_fault_check(unsigned long error_code, pte_t *pte)
return 1;
}
@@ -36549,18 +40546,17 @@ index dc80230..b245d86 100644
/*
* Handle a spurious fault caused by a stale TLB entry.
*
-@@ -1112,6 +1328,10 @@ access_error(unsigned long error_code, struct vm_area_struct *vma)
- {
+@@ -1145,6 +1358,9 @@ access_error(unsigned long error_code, struct vm_area_struct *vma)
/* This is only called for the current mm, so: */
bool foreign = false;
-+
+
+ if ((__supported_pte_mask & _PAGE_NX) && (error_code & PF_INSTR) && !(vma->vm_flags & VM_EXEC))
+ return 1;
+
/*
- * Make sure to check the VMA so that we do not perform
- * faults just to hit a PF_PK as soon as we fill in a
-@@ -1183,6 +1403,22 @@ __do_page_fault(struct pt_regs *regs, unsigned long error_code,
+ * Read or write was blocked by protection keys. This is
+ * always an unconditional error and can never result in
+@@ -1224,6 +1440,22 @@ __do_page_fault(struct pt_regs *regs, unsigned long error_code,
tsk = current;
mm = tsk->mm;
@@ -36574,7 +40570,7 @@ index dc80230..b245d86 100644
+ if (address < pax_user_shadow_base) {
+ printk(KERN_EMERG "PAX: please report this to pageexec@freemail.hu\n");
+ printk(KERN_EMERG "PAX: faulting IP: %pS\n", (void *)regs->ip);
-+ show_trace_log_lvl(NULL, NULL, (void *)regs->sp, regs->bp, KERN_EMERG);
++ show_trace_log_lvl(current, regs, (void *)regs->sp, KERN_EMERG);
+ } else
+ address -= pax_user_shadow_base;
+ }
@@ -36583,7 +40579,7 @@ index dc80230..b245d86 100644
/*
* Detect and handle instructions that would cause a page fault for
* both a tracked kernel page and a userspace page.
-@@ -1309,6 +1545,11 @@ retry:
+@@ -1350,6 +1582,11 @@ __do_page_fault(struct pt_regs *regs, unsigned long error_code,
might_sleep();
}
@@ -36595,7 +40591,7 @@ index dc80230..b245d86 100644
vma = find_vma(mm, address);
if (unlikely(!vma)) {
bad_area(regs, error_code, address);
-@@ -1320,18 +1561,24 @@ retry:
+@@ -1361,18 +1598,24 @@ __do_page_fault(struct pt_regs *regs, unsigned long error_code,
bad_area(regs, error_code, address);
return;
}
@@ -36631,7 +40627,7 @@ index dc80230..b245d86 100644
if (unlikely(expand_stack(vma, address))) {
bad_area(regs, error_code, address);
return;
-@@ -1451,3 +1698,292 @@ trace_do_page_fault(struct pt_regs *regs, unsigned long error_code)
+@@ -1492,3 +1735,292 @@ trace_do_page_fault(struct pt_regs *regs, unsigned long error_code)
}
NOKPROBE_SYMBOL(trace_do_page_fault);
#endif /* CONFIG_TRACING */
@@ -36925,7 +40921,7 @@ index dc80230..b245d86 100644
+ return ret ? -EFAULT : 0;
+}
diff --git a/arch/x86/mm/gup.c b/arch/x86/mm/gup.c
-index b8b6a60..9193b78 100644
+index 0d4fb3e..0ae587e 100644
--- a/arch/x86/mm/gup.c
+++ b/arch/x86/mm/gup.c
@@ -313,7 +313,7 @@ int __get_user_pages_fast(unsigned long start, int nr_pages, int write,
@@ -37076,7 +41072,7 @@ index 2ae8584..e8f8f29 100644
#endif /* CONFIG_HUGETLB_PAGE */
diff --git a/arch/x86/mm/init.c b/arch/x86/mm/init.c
-index d28a2d7..3e6afa44 100644
+index 22af912..ac95bc1 100644
--- a/arch/x86/mm/init.c
+++ b/arch/x86/mm/init.c
@@ -4,6 +4,7 @@
@@ -37176,15 +41172,15 @@ index d28a2d7..3e6afa44 100644
+static inline void gr_init_ebda(void) { }
+#endif
+
- void free_initmem(void)
+ void __ref free_initmem(void)
{
+ gr_init_ebda();
+
+ e820_reallocate_tables();
+
free_init_pages("unused kernel",
- (unsigned long)(&__init_begin),
- (unsigned long)(&__init_end));
diff --git a/arch/x86/mm/init_32.c b/arch/x86/mm/init_32.c
-index cf80590..90a1a8f 100644
+index cf80590..de69971 100644
--- a/arch/x86/mm/init_32.c
+++ b/arch/x86/mm/init_32.c
@@ -51,6 +51,7 @@
@@ -37319,7 +41315,7 @@ index cf80590..90a1a8f 100644
pmd_t *pmd;
pte_t *pte;
unsigned pages_2m, pages_4k;
-@@ -291,8 +296,13 @@ repeat:
+@@ -291,8 +296,13 @@ kernel_physical_mapping_init(unsigned long start,
pfn = start_pfn;
pgd_idx = pgd_index((pfn<<PAGE_SHIFT) + PAGE_OFFSET);
pgd = pgd_base + pgd_idx;
@@ -37335,7 +41331,7 @@ index cf80590..90a1a8f 100644
if (pfn >= end_pfn)
continue;
-@@ -304,14 +314,13 @@ repeat:
+@@ -304,14 +314,13 @@ kernel_physical_mapping_init(unsigned long start,
#endif
for (; pmd_idx < PTRS_PER_PMD && pfn < end_pfn;
pmd++, pmd_idx++) {
@@ -37351,7 +41347,7 @@ index cf80590..90a1a8f 100644
pgprot_t prot = PAGE_KERNEL_LARGE;
/*
* first pass will use the same initial
-@@ -322,11 +331,7 @@ repeat:
+@@ -322,11 +331,7 @@ kernel_physical_mapping_init(unsigned long start,
_PAGE_PSE);
pfn &= PMD_MASK >> PAGE_SHIFT;
@@ -37364,7 +41360,7 @@ index cf80590..90a1a8f 100644
prot = PAGE_KERNEL_LARGE_EXEC;
pages_2m++;
-@@ -343,7 +348,7 @@ repeat:
+@@ -343,7 +348,7 @@ kernel_physical_mapping_init(unsigned long start,
pte_ofs = pte_index((pfn<<PAGE_SHIFT) + PAGE_OFFSET);
pte += pte_ofs;
for (; pte_ofs < PTRS_PER_PTE && pfn < end_pfn;
@@ -37373,7 +41369,7 @@ index cf80590..90a1a8f 100644
pgprot_t prot = PAGE_KERNEL;
/*
* first pass will use the same initial
-@@ -351,7 +356,7 @@ repeat:
+@@ -351,7 +356,7 @@ kernel_physical_mapping_init(unsigned long start,
*/
pgprot_t init_prot = __pgprot(PTE_IDENT_ATTR);
@@ -37515,6 +41511,14 @@ index cf80590..90a1a8f 100644
rodata_test();
#ifdef CONFIG_CPA_DEBUG
+@@ -952,3 +983,7 @@ void mark_rodata_ro(void)
+ if (__supported_pte_mask & _PAGE_NX)
+ debug_checkwx();
+ }
++
++#ifdef CONFIG_PAX_KERNEXEC
++EXPORT_SYMBOL(__LOAD_PHYSICAL_ADDR);
++#endif
diff --git a/arch/x86/mm/init_64.c b/arch/x86/mm/init_64.c
index 14b9dd7..774d517 100644
--- a/arch/x86/mm/init_64.c
@@ -38005,7 +42009,7 @@ index bef3662..c5b2523 100644
{
struct mmiotrace_map map = {
.phys = 0,
-@@ -328,7 +328,7 @@ not_enabled:
+@@ -328,7 +328,7 @@ static void iounmap_trace_core(volatile void __iomem *addr)
}
}
@@ -38015,7 +42019,7 @@ index bef3662..c5b2523 100644
might_sleep();
if (is_enabled()) /* recheck and proper locking in *_core() */
diff --git a/arch/x86/mm/mpx.c b/arch/x86/mm/mpx.c
-index 8047687..6351be43 100644
+index e4f8009..ab2ba5d 100644
--- a/arch/x86/mm/mpx.c
+++ b/arch/x86/mm/mpx.c
@@ -193,7 +193,7 @@ static int mpx_insn_decode(struct insn *insn,
@@ -38042,7 +42046,7 @@ index 8047687..6351be43 100644
err_out:
/* info might be NULL, but kfree() handles that */
diff --git a/arch/x86/mm/numa.c b/arch/x86/mm/numa.c
-index fb68210..591f415 100644
+index 3f35b48..a825b33 100644
--- a/arch/x86/mm/numa.c
+++ b/arch/x86/mm/numa.c
@@ -528,7 +528,7 @@ static void __init numa_clear_kernel_node_hotplug(void)
@@ -38156,7 +42160,7 @@ index e3353c9..2a8fbe5 100644
static int __change_page_attr(struct cpa_data *cpa, int primary)
{
unsigned long address;
-@@ -1211,7 +1235,9 @@ repeat:
+@@ -1211,7 +1235,9 @@ static int __change_page_attr(struct cpa_data *cpa, int primary)
* Do we really change anything ?
*/
if (pte_val(old_pte) != pte_val(new_pte)) {
@@ -38167,7 +42171,7 @@ index e3353c9..2a8fbe5 100644
}
cpa->numpages = 1;
diff --git a/arch/x86/mm/pat.c b/arch/x86/mm/pat.c
-index 170cc4f..33d1874 100644
+index 83e701f..a70d92e 100644
--- a/arch/x86/mm/pat.c
+++ b/arch/x86/mm/pat.c
@@ -632,7 +632,7 @@ int free_memtype(u64 start, u64 end)
@@ -38179,7 +42183,7 @@ index 170cc4f..33d1874 100644
return -EINVAL;
}
-@@ -804,7 +804,7 @@ int kernel_map_sync_memtype(u64 base, unsigned long size,
+@@ -818,7 +818,7 @@ int kernel_map_sync_memtype(u64 base, unsigned long size,
if (ioremap_change_attr((unsigned long)__va(base), id_sz, pcm) < 0) {
pr_info("x86/PAT: %s:%d ioremap_change_attr failed %s for [mem %#010Lx-%#010Lx]\n",
@@ -38188,7 +42192,7 @@ index 170cc4f..33d1874 100644
cattr_name(pcm),
base, (unsigned long long)(base + size-1));
return -EINVAL;
-@@ -839,7 +839,7 @@ static int reserve_pfn_range(u64 paddr, unsigned long size, pgprot_t *vma_prot,
+@@ -853,7 +853,7 @@ static int reserve_pfn_range(u64 paddr, unsigned long size, pgprot_t *vma_prot,
pcm = lookup_memtype(paddr);
if (want_pcm != pcm) {
pr_warn("x86/PAT: %s:%d map pfn RAM range req %s for [mem %#010Lx-%#010Lx], got %s\n",
@@ -38197,7 +42201,7 @@ index 170cc4f..33d1874 100644
cattr_name(want_pcm),
(unsigned long long)paddr,
(unsigned long long)(paddr + size - 1),
-@@ -860,7 +860,7 @@ static int reserve_pfn_range(u64 paddr, unsigned long size, pgprot_t *vma_prot,
+@@ -874,7 +874,7 @@ static int reserve_pfn_range(u64 paddr, unsigned long size, pgprot_t *vma_prot,
!is_new_memtype_allowed(paddr, size, want_pcm, pcm)) {
free_memtype(paddr, paddr + size);
pr_err("x86/PAT: %s:%d map pfn expected mapping type %s for [mem %#010Lx-%#010Lx], got %s\n",
@@ -38207,10 +42211,10 @@ index 170cc4f..33d1874 100644
(unsigned long long)paddr,
(unsigned long long)(paddr + size - 1),
diff --git a/arch/x86/mm/pat_rbtree.c b/arch/x86/mm/pat_rbtree.c
-index de391b7..532da7a 100644
+index 159b52c..2b68583 100644
--- a/arch/x86/mm/pat_rbtree.c
+++ b/arch/x86/mm/pat_rbtree.c
-@@ -170,7 +170,7 @@ success:
+@@ -170,7 +170,7 @@ static int memtype_rb_check_conflict(struct rb_root *root,
failure:
pr_info("x86/PAT: %s:%d conflicting memory types %Lx-%Lx %s<->%s\n",
@@ -38551,7 +42555,7 @@ index 3feec5a..0f77f72 100644
out_free_pgd:
_pgd_free(pgd);
out:
-@@ -397,7 +469,7 @@ out:
+@@ -397,7 +469,7 @@ pgd_t *pgd_alloc(struct mm_struct *mm)
void pgd_free(struct mm_struct *mm, pgd_t *pgd)
{
@@ -38687,7 +42691,7 @@ index f65a33f..f408a99 100644
}
diff --git a/arch/x86/mm/tlb.c b/arch/x86/mm/tlb.c
-index 4dbe656..b298320 100644
+index a7655f6..895549a 100644
--- a/arch/x86/mm/tlb.c
+++ b/arch/x86/mm/tlb.c
@@ -47,7 +47,11 @@ void leave_mm(int cpu)
@@ -38754,7 +42758,7 @@ index 4dbe656..b298320 100644
void switch_mm(struct mm_struct *prev, struct mm_struct *next,
struct task_struct *tsk)
{
-@@ -75,9 +124,15 @@ void switch_mm_irqs_off(struct mm_struct *prev, struct mm_struct *next,
+@@ -75,6 +124,9 @@ void switch_mm_irqs_off(struct mm_struct *prev, struct mm_struct *next,
struct task_struct *tsk)
{
unsigned cpu = smp_processor_id();
@@ -38763,6 +42767,15 @@ index 4dbe656..b298320 100644
+#endif
if (likely(prev != next)) {
+ if (IS_ENABLED(CONFIG_VMAP_STACK)) {
+@@ -89,9 +141,14 @@ void switch_mm_irqs_off(struct mm_struct *prev, struct mm_struct *next,
+
+ if (unlikely(pgd_none(*pgd)))
+ set_pgd(pgd, init_mm.pgd[stack_pgd_index]);
++ else
++ BUG_ON(pgd->pgd != init_mm.pgd[stack_pgd_index].pgd);
+ }
+
#ifdef CONFIG_SMP
+#if defined(CONFIG_X86_32) && (defined(CONFIG_PAX_PAGEEXEC) || defined(CONFIG_PAX_SEGMEXEC))
+ tlbstate = this_cpu_read(cpu_tlbstate.state);
@@ -38770,7 +42783,7 @@ index 4dbe656..b298320 100644
this_cpu_write(cpu_tlbstate.state, TLBSTATE_OK);
this_cpu_write(cpu_tlbstate.active_mm, next);
#endif
-@@ -96,7 +151,7 @@ void switch_mm_irqs_off(struct mm_struct *prev, struct mm_struct *next,
+@@ -111,7 +168,7 @@ void switch_mm_irqs_off(struct mm_struct *prev, struct mm_struct *next,
* We need to prevent an outcome in which CPU 1 observes
* the new PTE value and CPU 0 observes bit 1 clear in
* mm_cpumask. (If that occurs, then the IPI will never
@@ -38779,7 +42792,7 @@ index 4dbe656..b298320 100644
*
* The bad outcome can occur if either CPU's load is
* reordered before that CPU's store, so both CPUs must
-@@ -111,7 +166,11 @@ void switch_mm_irqs_off(struct mm_struct *prev, struct mm_struct *next,
+@@ -126,7 +183,11 @@ void switch_mm_irqs_off(struct mm_struct *prev, struct mm_struct *next,
* ordering guarantee we need.
*
*/
@@ -38791,7 +42804,7 @@ index 4dbe656..b298320 100644
trace_tlb_flush(TLB_FLUSH_ON_TASK_SWITCH, TLB_FLUSH_ALL);
-@@ -137,9 +196,31 @@ void switch_mm_irqs_off(struct mm_struct *prev, struct mm_struct *next,
+@@ -152,9 +213,31 @@ void switch_mm_irqs_off(struct mm_struct *prev, struct mm_struct *next,
if (unlikely(prev->context.ldt != next->context.ldt))
load_mm_ldt(next);
#endif
@@ -38824,7 +42837,7 @@ index 4dbe656..b298320 100644
this_cpu_write(cpu_tlbstate.state, TLBSTATE_OK);
BUG_ON(this_cpu_read(cpu_tlbstate.active_mm) != next);
-@@ -160,13 +241,30 @@ void switch_mm_irqs_off(struct mm_struct *prev, struct mm_struct *next,
+@@ -175,13 +258,30 @@ void switch_mm_irqs_off(struct mm_struct *prev, struct mm_struct *next,
* As above, load_cr3() is serializing and orders TLB
* fills with respect to the mm_cpumask write.
*/
@@ -38858,11 +42871,12 @@ index 4dbe656..b298320 100644
#ifdef CONFIG_SMP
diff --git a/arch/x86/mm/uderef_64.c b/arch/x86/mm/uderef_64.c
new file mode 100644
-index 0000000..3fda3f3
+index 0000000..cc849dd
--- /dev/null
+++ b/arch/x86/mm/uderef_64.c
-@@ -0,0 +1,37 @@
+@@ -0,0 +1,38 @@
+#include <linux/mm.h>
++#include <linux/sched.h>
+#include <asm/pgtable.h>
+#include <asm/uaccess.h>
+
@@ -38900,7 +42914,7 @@ index 0000000..3fda3f3
+EXPORT_SYMBOL(__pax_close_userland);
+#endif
diff --git a/arch/x86/net/bpf_jit.S b/arch/x86/net/bpf_jit.S
-index f2a7faf..b77bb6c 100644
+index f2a7faf..4cedb98 100644
--- a/arch/x86/net/bpf_jit.S
+++ b/arch/x86/net/bpf_jit.S
@@ -9,6 +9,7 @@
@@ -38911,85 +42925,111 @@ index f2a7faf..b77bb6c 100644
/*
* Calling convention :
-@@ -39,6 +40,7 @@ FUNC(sk_load_word_positive_offset)
+@@ -39,7 +40,7 @@ FUNC(sk_load_word_positive_offset)
jle bpf_slow_path_word
mov (SKBDATA,%rsi),%eax
bswap %eax /* ntohl() */
-+ pax_force_retaddr
- ret
+- ret
++ pax_ret __bpf_call_base
FUNC(sk_load_half)
-@@ -52,6 +54,7 @@ FUNC(sk_load_half_positive_offset)
+ test %esi,%esi
+@@ -52,7 +53,7 @@ FUNC(sk_load_half_positive_offset)
jle bpf_slow_path_half
movzwl (SKBDATA,%rsi),%eax
rol $8,%ax # ntohs()
-+ pax_force_retaddr
- ret
+- ret
++ pax_ret __bpf_call_base
FUNC(sk_load_byte)
-@@ -62,6 +65,7 @@ FUNC(sk_load_byte_positive_offset)
+ test %esi,%esi
+@@ -62,7 +63,7 @@ FUNC(sk_load_byte_positive_offset)
cmp %esi,%r9d /* if (offset >= hlen) goto bpf_slow_path_byte */
jle bpf_slow_path_byte
movzbl (SKBDATA,%rsi),%eax
-+ pax_force_retaddr
- ret
+- ret
++ pax_ret __bpf_call_base
/* rsi contains offset and can be scratched */
-@@ -85,6 +89,7 @@ bpf_slow_path_word:
+ #define bpf_slow_path_common(LEN) \
+@@ -73,7 +74,7 @@ FUNC(sk_load_byte_positive_offset)
+ push SKBDATA; \
+ /* rsi already has offset */ \
+ mov $LEN,%ecx; /* len */ \
+- call skb_copy_bits; \
++ pax_direct_call skb_copy_bits; \
+ test %eax,%eax; \
+ pop SKBDATA; \
+ pop %r9; \
+@@ -85,7 +86,7 @@ bpf_slow_path_word:
js bpf_error
mov - MAX_BPF_STACK + 32(%rbp),%eax
bswap %eax
-+ pax_force_retaddr
- ret
+- ret
++ pax_ret __bpf_call_base
bpf_slow_path_half:
-@@ -93,12 +98,14 @@ bpf_slow_path_half:
+ bpf_slow_path_common(2)
+@@ -93,13 +94,13 @@ bpf_slow_path_half:
mov - MAX_BPF_STACK + 32(%rbp),%ax
rol $8,%ax
movzwl %ax,%eax
-+ pax_force_retaddr
- ret
+- ret
++ pax_ret __bpf_call_base
bpf_slow_path_byte:
bpf_slow_path_common(1)
js bpf_error
movzbl - MAX_BPF_STACK + 32(%rbp),%eax
-+ pax_force_retaddr
- ret
+- ret
++ pax_ret __bpf_call_base
#define sk_negative_common(SIZE) \
-@@ -123,6 +130,7 @@ FUNC(sk_load_word_negative_offset)
+ FRAME_BEGIN; \
+@@ -108,7 +109,7 @@ bpf_slow_path_byte:
+ push SKBDATA; \
+ /* rsi already has offset */ \
+ mov $SIZE,%edx; /* size */ \
+- call bpf_internal_load_pointer_neg_helper; \
++ pax_direct_call bpf_internal_load_pointer_neg_helper; \
+ test %rax,%rax; \
+ pop SKBDATA; \
+ pop %r9; \
+@@ -123,7 +124,7 @@ FUNC(sk_load_word_negative_offset)
sk_negative_common(4)
mov (%rax), %eax
bswap %eax
-+ pax_force_retaddr
- ret
+- ret
++ pax_ret __bpf_call_base
bpf_slow_path_half_neg:
-@@ -134,6 +142,7 @@ FUNC(sk_load_half_negative_offset)
+ cmp SKF_MAX_NEG_OFF, %esi
+@@ -134,7 +135,7 @@ FUNC(sk_load_half_negative_offset)
mov (%rax),%ax
rol $8,%ax
movzwl %ax,%eax
-+ pax_force_retaddr
- ret
+- ret
++ pax_ret __bpf_call_base
bpf_slow_path_byte_neg:
-@@ -143,6 +152,7 @@ bpf_slow_path_byte_neg:
+ cmp SKF_MAX_NEG_OFF, %esi
+@@ -143,7 +144,7 @@ bpf_slow_path_byte_neg:
FUNC(sk_load_byte_negative_offset)
sk_negative_common(1)
movzbl (%rax), %eax
-+ pax_force_retaddr
- ret
+- ret
++ pax_ret __bpf_call_base
bpf_error:
-@@ -153,4 +163,5 @@ bpf_error:
+ # force a return 0 from jit handler
+@@ -153,4 +154,4 @@ bpf_error:
mov - MAX_BPF_STACK + 16(%rbp),%r14
mov - MAX_BPF_STACK + 24(%rbp),%r15
leaveq
-+ pax_force_retaddr
- ret
+- ret
++ pax_ret __bpf_call_base
diff --git a/arch/x86/net/bpf_jit_comp.c b/arch/x86/net/bpf_jit_comp.c
-index fe04a04..99be1fa 100644
+index 15f7436..f13aeac 100644
--- a/arch/x86/net/bpf_jit_comp.c
+++ b/arch/x86/net/bpf_jit_comp.c
@@ -14,7 +14,11 @@
@@ -39014,7 +43054,7 @@ index fe04a04..99be1fa 100644
}
struct jit_context {
-@@ -1076,7 +1082,9 @@ common_load:
+@@ -1076,7 +1082,9 @@ xadd: if (is_imm8(insn->off))
pr_err("bpf_jit_compile fatal error\n");
return -EFAULT;
}
@@ -39031,8 +43071,8 @@ index fe04a04..99be1fa 100644
- set_memory_ro((unsigned long)header, header->pages);
prog->bpf_func = (void *)image;
prog->jited = 1;
- }
-@@ -1188,12 +1195,8 @@ void bpf_jit_free(struct bpf_prog *fp)
+ } else {
+@@ -1190,12 +1197,8 @@ void bpf_jit_free(struct bpf_prog *fp)
unsigned long addr = (unsigned long)fp->bpf_func & PAGE_MASK;
struct bpf_binary_header *header = (void *)addr;
@@ -39048,10 +43088,10 @@ index fe04a04..99be1fa 100644
bpf_prog_unlock_free(fp);
}
diff --git a/arch/x86/oprofile/backtrace.c b/arch/x86/oprofile/backtrace.c
-index cb31a44..b942435 100644
+index a2488b6e..4c2dd84 100644
--- a/arch/x86/oprofile/backtrace.c
+++ b/arch/x86/oprofile/backtrace.c
-@@ -47,11 +47,11 @@ dump_user_backtrace_32(struct stack_frame_ia32 *head)
+@@ -27,11 +27,11 @@ dump_user_backtrace_32(struct stack_frame_ia32 *head)
struct stack_frame_ia32 *fp;
unsigned long bytes;
@@ -39065,7 +43105,7 @@ index cb31a44..b942435 100644
oprofile_add_trace(bufhead[0].return_address);
-@@ -93,7 +93,7 @@ static struct stack_frame *dump_user_backtrace(struct stack_frame *head)
+@@ -73,7 +73,7 @@ static struct stack_frame *dump_user_backtrace(struct stack_frame *head)
struct stack_frame bufhead[2];
unsigned long bytes;
@@ -39220,7 +43260,7 @@ index 9bd1154..e9d4656 100644
.callback = fix_broken_hp_bios_irq9,
.ident = "HP Pavilion N5400 Series Laptop",
diff --git a/arch/x86/pci/pcbios.c b/arch/x86/pci/pcbios.c
-index 9770e55..76067ec 100644
+index 1d97cea..f34bbf2 100644
--- a/arch/x86/pci/pcbios.c
+++ b/arch/x86/pci/pcbios.c
@@ -79,7 +79,7 @@ union bios32 {
@@ -39232,7 +43272,7 @@ index 9770e55..76067ec 100644
/*
* Returns the entry point for the given service, NULL on error
-@@ -92,37 +92,80 @@ static unsigned long __init bios32_service(unsigned long service)
+@@ -92,28 +92,71 @@ static unsigned long __init bios32_service(unsigned long service)
unsigned long length; /* %ecx */
unsigned long entry; /* %edx */
unsigned long flags;
@@ -39314,18 +43354,16 @@ index 9770e55..76067ec 100644
}
}
- static struct {
- unsigned long address;
+@@ -122,7 +165,7 @@ static struct {
unsigned short segment;
--} pci_indirect = { 0, __KERNEL_CS };
-+} pci_indirect __read_only = { 0, __PCIBIOS_CS };
-
--static int pci_bios_present;
-+static int pci_bios_present __read_only;
+ } pci_indirect __ro_after_init = {
+ .address = 0,
+- .segment = __KERNEL_CS,
++ .segment = __PCIBIOS_CS,
+ };
- static int __init check_pcibios(void)
- {
-@@ -131,11 +174,13 @@ static int __init check_pcibios(void)
+ static int pci_bios_present __ro_after_init;
+@@ -134,11 +177,13 @@ static int __init check_pcibios(void)
unsigned long flags, pcibios_entry;
if ((pcibios_entry = bios32_service(PCI_SERVICE))) {
@@ -39342,7 +43380,7 @@ index 9770e55..76067ec 100644
"jc 1f\n\t"
"xor %%ah, %%ah\n"
"1:"
-@@ -144,7 +189,8 @@ static int __init check_pcibios(void)
+@@ -147,7 +192,8 @@ static int __init check_pcibios(void)
"=b" (ebx),
"=c" (ecx)
: "1" (PCIBIOS_PCI_BIOS_PRESENT),
@@ -39352,7 +43390,7 @@ index 9770e55..76067ec 100644
: "memory");
local_irq_restore(flags);
-@@ -202,7 +248,10 @@ static int pci_bios_read(unsigned int seg, unsigned int bus,
+@@ -205,7 +251,10 @@ static int pci_bios_read(unsigned int seg, unsigned int bus,
break;
}
@@ -39364,7 +43402,7 @@ index 9770e55..76067ec 100644
"jc 1f\n\t"
"xor %%ah, %%ah\n"
"1:"
-@@ -211,7 +260,8 @@ static int pci_bios_read(unsigned int seg, unsigned int bus,
+@@ -214,7 +263,8 @@ static int pci_bios_read(unsigned int seg, unsigned int bus,
: "1" (number),
"b" (bx),
"D" ((long)reg),
@@ -39374,7 +43412,7 @@ index 9770e55..76067ec 100644
/*
* Zero-extend the result beyond 8 or 16 bits, do not trust the
* BIOS having done it:
-@@ -250,7 +300,10 @@ static int pci_bios_write(unsigned int seg, unsigned int bus,
+@@ -253,7 +303,10 @@ static int pci_bios_write(unsigned int seg, unsigned int bus,
break;
}
@@ -39386,7 +43424,7 @@ index 9770e55..76067ec 100644
"jc 1f\n\t"
"xor %%ah, %%ah\n"
"1:"
-@@ -259,7 +312,8 @@ static int pci_bios_write(unsigned int seg, unsigned int bus,
+@@ -262,7 +315,8 @@ static int pci_bios_write(unsigned int seg, unsigned int bus,
"c" (value),
"b" (bx),
"D" ((long)reg),
@@ -39396,7 +43434,7 @@ index 9770e55..76067ec 100644
raw_spin_unlock_irqrestore(&pci_config_lock, flags);
-@@ -362,10 +416,13 @@ struct irq_routing_table * pcibios_get_irq_routing_table(void)
+@@ -365,10 +419,13 @@ struct irq_routing_table * pcibios_get_irq_routing_table(void)
DBG("PCI: Fetching IRQ routing table... ");
__asm__("push %%es\n\t"
@@ -39411,7 +43449,7 @@ index 9770e55..76067ec 100644
"jc 1f\n\t"
"xor %%ah, %%ah\n"
"1:"
-@@ -376,7 +433,8 @@ struct irq_routing_table * pcibios_get_irq_routing_table(void)
+@@ -379,7 +436,8 @@ struct irq_routing_table * pcibios_get_irq_routing_table(void)
"1" (0),
"D" ((long) &opt),
"S" (&pci_indirect),
@@ -39421,7 +43459,7 @@ index 9770e55..76067ec 100644
: "memory");
DBG("OK ret=%d, size=%d, map=%x\n", ret, opt.size, map);
if (ret & 0xff00)
-@@ -400,7 +458,10 @@ int pcibios_set_irq_routing(struct pci_dev *dev, int pin, int irq)
+@@ -403,7 +461,10 @@ int pcibios_set_irq_routing(struct pci_dev *dev, int pin, int irq)
{
int ret;
@@ -39433,7 +43471,7 @@ index 9770e55..76067ec 100644
"jc 1f\n\t"
"xor %%ah, %%ah\n"
"1:"
-@@ -408,7 +469,8 @@ int pcibios_set_irq_routing(struct pci_dev *dev, int pin, int irq)
+@@ -411,7 +472,8 @@ int pcibios_set_irq_routing(struct pci_dev *dev, int pin, int irq)
: "0" (PCIBIOS_SET_PCI_HW_INT),
"b" ((dev->bus->number << 8) | dev->devfn),
"c" ((irq << 8) | (pin + 10)),
@@ -39443,35 +43481,6 @@ index 9770e55..76067ec 100644
return !(ret & 0xff00);
}
EXPORT_SYMBOL(pcibios_set_irq_routing);
-diff --git a/arch/x86/pci/vmd.c b/arch/x86/pci/vmd.c
-index 7948be3..73a1aaa 100644
---- a/arch/x86/pci/vmd.c
-+++ b/arch/x86/pci/vmd.c
-@@ -389,7 +389,7 @@ static void vmd_teardown_dma_ops(struct vmd_dev *vmd)
- #define ASSIGN_VMD_DMA_OPS(source, dest, fn) \
- do { \
- if (source->fn) \
-- dest->fn = vmd_##fn; \
-+ const_cast(dest->fn) = vmd_##fn; \
- } while (0)
-
- static void vmd_setup_dma_ops(struct vmd_dev *vmd)
-@@ -403,6 +403,7 @@ static void vmd_setup_dma_ops(struct vmd_dev *vmd)
-
- if (!source)
- return;
-+ pax_open_kernel();
- ASSIGN_VMD_DMA_OPS(source, dest, alloc);
- ASSIGN_VMD_DMA_OPS(source, dest, free);
- ASSIGN_VMD_DMA_OPS(source, dest, mmap);
-@@ -420,6 +421,7 @@ static void vmd_setup_dma_ops(struct vmd_dev *vmd)
- #ifdef ARCH_HAS_DMA_GET_REQUIRED_MASK
- ASSIGN_VMD_DMA_OPS(source, dest, get_required_mask);
- #endif
-+ pax_close_kernel();
- add_dma_domain(domain);
- }
- #undef ASSIGN_VMD_DMA_OPS
diff --git a/arch/x86/platform/efi/efi_32.c b/arch/x86/platform/efi/efi_32.c
index cef39b0..0e5aebe 100644
--- a/arch/x86/platform/efi/efi_32.c
@@ -39520,10 +43529,10 @@ index cef39b0..0e5aebe 100644
gdt_descr.size = GDT_SIZE - 1;
load_gdt(&gdt_descr);
diff --git a/arch/x86/platform/efi/efi_64.c b/arch/x86/platform/efi/efi_64.c
-index 8dd3784..9846546 100644
+index 2f25a36..3caf893 100644
--- a/arch/x86/platform/efi/efi_64.c
+++ b/arch/x86/platform/efi/efi_64.c
-@@ -92,6 +92,11 @@ pgd_t * __init efi_call_phys_prolog(void)
+@@ -93,6 +93,11 @@ pgd_t * __init efi_call_phys_prolog(void)
vaddress = (unsigned long)__va(pgd * PGDIR_SIZE);
set_pgd(pgd_offset_k(pgd * PGDIR_SIZE), *pgd_offset_k(vaddress));
}
@@ -39535,7 +43544,7 @@ index 8dd3784..9846546 100644
out:
__flush_tlb_all();
-@@ -119,6 +124,10 @@ void __init efi_call_phys_epilog(pgd_t *save_pgd)
+@@ -120,6 +125,10 @@ void __init efi_call_phys_epilog(pgd_t *save_pgd)
kfree(save_pgd);
@@ -39546,7 +43555,7 @@ index 8dd3784..9846546 100644
__flush_tlb_all();
early_code_mapping_set_exec(0);
}
-@@ -219,8 +228,23 @@ int __init efi_setup_page_tables(unsigned long pa_memmap, unsigned num_pages)
+@@ -248,8 +257,23 @@ int __init efi_setup_page_tables(unsigned long pa_memmap, unsigned num_pages)
unsigned npages;
pgd_t *pgd;
@@ -39701,7 +43710,7 @@ index 040192b..7d3300f 100644
.long 0
efi_rt_function_ptr:
diff --git a/arch/x86/platform/efi/efi_stub_64.S b/arch/x86/platform/efi/efi_stub_64.S
-index cd95075..a7b6d47 100644
+index cd95075..7771479 100644
--- a/arch/x86/platform/efi/efi_stub_64.S
+++ b/arch/x86/platform/efi/efi_stub_64.S
@@ -11,6 +11,7 @@
@@ -39712,15 +43721,18 @@ index cd95075..a7b6d47 100644
#define SAVE_XMM \
mov %rsp, %rax; \
-@@ -53,5 +54,6 @@ ENTRY(efi_call)
+@@ -53,5 +54,9 @@ ENTRY(efi_call)
addq $48, %rsp
RESTORE_XMM
popq %rbp
-+ pax_force_retaddr 0, 1
++#ifdef efi_call
ret
++#else
++ pax_ret efi_call
++#endif
ENDPROC(efi_call)
diff --git a/arch/x86/platform/intel-mid/intel-mid.c b/arch/x86/platform/intel-mid/intel-mid.c
-index ce119d2..42159d9 100644
+index 7850128..bcf03ab 100644
--- a/arch/x86/platform/intel-mid/intel-mid.c
+++ b/arch/x86/platform/intel-mid/intel-mid.c
@@ -62,9 +62,9 @@
@@ -39735,8 +43747,8 @@ index ce119d2..42159d9 100644
enum intel_mid_cpu_type __intel_mid_cpu_chip;
EXPORT_SYMBOL_GPL(__intel_mid_cpu_chip);
-@@ -72,9 +72,10 @@ static void intel_mid_power_off(void)
- {
+@@ -77,9 +77,10 @@ static void intel_mid_power_off(void)
+ intel_scu_ipc_simple_command(IPCMSG_COLD_OFF, 1);
};
-static void intel_mid_reboot(void)
@@ -39806,6 +43818,19 @@ index f5bad40..da1428a 100644
size_t size = virt_to_phys(&__end_rodata) - base;
const char *fmt_over = "overlapped IMR @ (0x%08lx - 0x%08lx)\n";
int ret;
+diff --git a/arch/x86/platform/mellanox/mlx-platform.c b/arch/x86/platform/mellanox/mlx-platform.c
+index c0355d7..dea97c8 100644
+--- a/arch/x86/platform/mellanox/mlx-platform.c
++++ b/arch/x86/platform/mellanox/mlx-platform.c
+@@ -149,7 +149,7 @@ static int __init mlxplat_dmi_msn21xx_matched(const struct dmi_system_id *dmi)
+ return 1;
+ };
+
+-static struct dmi_system_id mlxplat_dmi_table[] __initdata = {
++static const struct dmi_system_id mlxplat_dmi_table[] __initconst = {
+ {
+ .callback = mlxplat_dmi_default_matched,
+ .matches = {
diff --git a/arch/x86/platform/olpc/olpc_dt.c b/arch/x86/platform/olpc/olpc_dt.c
index d6ee929..0454327 100644
--- a/arch/x86/platform/olpc/olpc_dt.c
@@ -39819,8 +43844,191 @@ index d6ee929..0454327 100644
.nextprop = olpc_dt_nextprop,
.getproplen = olpc_dt_getproplen,
.getproperty = olpc_dt_getproperty,
+diff --git a/arch/x86/platform/olpc/xo1-wakeup.S b/arch/x86/platform/olpc/xo1-wakeup.S
+index 948deb2..16a434a 100644
+--- a/arch/x86/platform/olpc/xo1-wakeup.S
++++ b/arch/x86/platform/olpc/xo1-wakeup.S
+@@ -1,8 +1,10 @@
+ .text
+ #include <linux/linkage.h>
++#include <asm/alternative-asm.h>
+ #include <asm/segment.h>
+ #include <asm/page.h>
+ #include <asm/pgtable_32.h>
++#include <asm/alternative-asm.h>
+
+ .macro writepost,value
+ movb $0x34, %al
+@@ -76,7 +78,7 @@ save_registers:
+ pushfl
+ popl saved_context_eflags
+
+- ret
++ pax_ret save_registers
+
+ restore_registers:
+ movl saved_context_ebp, %ebp
+@@ -87,17 +89,17 @@ restore_registers:
+ pushl saved_context_eflags
+ popfl
+
+- ret
++ pax_ret restore_registers
+
+ ENTRY(do_olpc_suspend_lowlevel)
+- call save_processor_state
+- call save_registers
++ pax_direct_call save_processor_state
++ pax_direct_call save_registers
+
+ # This is the stack context we want to remember
+ movl %esp, saved_context_esp
+
+ pushl $3
+- call xo1_do_sleep
++ pax_direct_call xo1_do_sleep
+
+ jmp wakeup_start
+ .p2align 4,,7
+@@ -106,9 +108,9 @@ ret_point:
+
+ writepost 0x32
+
+- call restore_registers
+- call restore_processor_state
+- ret
++ pax_direct_call restore_registers
++ pax_direct_call restore_processor_state
++ pax_ret do_olpc_suspend_lowlevel
+
+ .data
+ saved_gdt: .long 0,0
+diff --git a/arch/x86/platform/uv/tlb_uv.c b/arch/x86/platform/uv/tlb_uv.c
+index 9e42842..fad7e1d 100644
+--- a/arch/x86/platform/uv/tlb_uv.c
++++ b/arch/x86/platform/uv/tlb_uv.c
+@@ -24,7 +24,7 @@
+ #include <asm/irq_vectors.h>
+ #include <asm/timer.h>
+
+-static struct bau_operations ops;
++static struct bau_operations *ops __read_only;
+
+ static struct bau_operations uv123_bau_ops = {
+ .bau_gpa_to_offset = uv_gpa_to_offset,
+@@ -239,7 +239,7 @@ static void reply_to_message(struct msg_desc *mdp, struct bau_control *bcp,
+ msg = mdp->msg;
+ if (!msg->canceled && do_acknowledge) {
+ dw = (msg->swack_vec << UV_SW_ACK_NPENDING) | msg->swack_vec;
+- ops.write_l_sw_ack(dw);
++ ops->write_l_sw_ack(dw);
+ }
+ msg->replied_to = 1;
+ msg->swack_vec = 0;
+@@ -275,7 +275,7 @@ static void bau_process_retry_msg(struct msg_desc *mdp,
+ msg->swack_vec) == 0) &&
+ (msg2->sending_cpu == msg->sending_cpu) &&
+ (msg2->msg_type != MSG_NOOP)) {
+- mmr = ops.read_l_sw_ack();
++ mmr = ops->read_l_sw_ack();
+ msg_res = msg2->swack_vec;
+ /*
+ * This is a message retry; clear the resources held
+@@ -293,7 +293,7 @@ static void bau_process_retry_msg(struct msg_desc *mdp,
+ stat->d_canceled++;
+ cancel_count++;
+ mr = (msg_res << UV_SW_ACK_NPENDING) | msg_res;
+- ops.write_l_sw_ack(mr);
++ ops->write_l_sw_ack(mr);
+ }
+ }
+ }
+@@ -426,12 +426,12 @@ static void do_reset(void *ptr)
+ /*
+ * only reset the resource if it is still pending
+ */
+- mmr = ops.read_l_sw_ack();
++ mmr = ops->read_l_sw_ack();
+ msg_res = msg->swack_vec;
+ mr = (msg_res << UV_SW_ACK_NPENDING) | msg_res;
+ if (mmr & msg_res) {
+ stat->d_rcanceled++;
+- ops.write_l_sw_ack(mr);
++ ops->write_l_sw_ack(mr);
+ }
+ }
+ }
+@@ -1221,7 +1221,7 @@ void process_uv2_message(struct msg_desc *mdp, struct bau_control *bcp)
+ struct bau_pq_entry *msg = mdp->msg;
+ struct bau_pq_entry *other_msg;
+
+- mmr_image = ops.read_l_sw_ack();
++ mmr_image = ops->read_l_sw_ack();
+ swack_vec = msg->swack_vec;
+
+ if ((swack_vec & mmr_image) == 0) {
+@@ -1450,7 +1450,7 @@ static int ptc_seq_show(struct seq_file *file, void *data)
+ /* destination side statistics */
+ seq_printf(file,
+ "%lx %ld %ld %ld %ld %ld %ld %ld %ld %ld %ld %ld\n",
+- ops.read_g_sw_ack(uv_cpu_to_pnode(cpu)),
++ ops->read_g_sw_ack(uv_cpu_to_pnode(cpu)),
+ stat->d_requestee, cycles_2_us(stat->d_time),
+ stat->d_alltlb, stat->d_onetlb, stat->d_multmsg,
+ stat->d_nomsg, stat->d_retries, stat->d_canceled,
+@@ -1744,7 +1744,7 @@ static void activation_descriptor_init(int node, int pnode, int base_pnode)
+
+ gpa = uv_gpa(bau_desc);
+ n = uv_gpa_to_gnode(gpa);
+- m = ops.bau_gpa_to_offset(gpa);
++ m = ops->bau_gpa_to_offset(gpa);
+ if (is_uv1_hub())
+ uv1 = 1;
+
+@@ -1831,8 +1831,8 @@ static void pq_init(int node, int pnode)
+ bcp->queue_last = pqp + (DEST_Q_SIZE - 1);
+ }
+
+- first = ops.bau_gpa_to_offset(uv_gpa(pqp));
+- last = ops.bau_gpa_to_offset(uv_gpa(pqp + (DEST_Q_SIZE - 1)));
++ first = ops->bau_gpa_to_offset(uv_gpa(pqp));
++ last = ops->bau_gpa_to_offset(uv_gpa(pqp + (DEST_Q_SIZE - 1)));
+
+ /*
+ * Pre UV4, the gnode is required to locate the payload queue
+@@ -1846,9 +1846,9 @@ static void pq_init(int node, int pnode)
+ write_mmr_payload_tail(pnode, tail);
+ }
+
+- ops.write_payload_first(pnode, first);
+- ops.write_payload_last(pnode, last);
+- ops.write_g_sw_ack(pnode, 0xffffUL);
++ ops->write_payload_first(pnode, first);
++ ops->write_payload_last(pnode, last);
++ ops->write_g_sw_ack(pnode, 0xffffUL);
+
+ /* in effect, all msg_type's are set to MSG_NOOP */
+ memset(pqp, 0, sizeof(struct bau_pq_entry) * DEST_Q_SIZE);
+@@ -2166,13 +2166,13 @@ static int __init uv_bau_init(void)
+ return 0;
+
+ if (is_uv4_hub())
+- ops = uv4_bau_ops;
++ ops = &uv4_bau_ops;
+ else if (is_uv3_hub())
+- ops = uv123_bau_ops;
++ ops = &uv123_bau_ops;
+ else if (is_uv2_hub())
+- ops = uv123_bau_ops;
++ ops = &uv123_bau_ops;
+ else if (is_uv1_hub())
+- ops = uv123_bau_ops;
++ ops = &uv123_bau_ops;
+
+ for_each_possible_cpu(cur_cpu) {
+ mask = &per_cpu(uv_flush_tlb_mask, cur_cpu);
diff --git a/arch/x86/power/cpu.c b/arch/x86/power/cpu.c
-index b12c26e..eacc01f 100644
+index 53cace2..ef55cca 100644
--- a/arch/x86/power/cpu.c
+++ b/arch/x86/power/cpu.c
@@ -160,11 +160,8 @@ static void do_fpu_end(void)
@@ -39863,7 +44071,7 @@ index b12c26e..eacc01f 100644
}
#endif
diff --git a/arch/x86/power/hibernate_64.c b/arch/x86/power/hibernate_64.c
-index 9634557..47043c7 100644
+index 9634557..c280eda 100644
--- a/arch/x86/power/hibernate_64.c
+++ b/arch/x86/power/hibernate_64.c
@@ -130,15 +130,14 @@ static int relocate_restore_code(void)
@@ -39887,8 +44095,17 @@ index 9634557..47043c7 100644
pte_t *pte = pte_offset_kernel(pmd, relocated_restore_code);
set_pte(pte, __pte(pte_val(*pte) & ~_PAGE_NX));
+@@ -198,7 +197,7 @@ int arch_hibernation_header_save(void *addr, unsigned int max_size)
+ if (max_size < sizeof(struct restore_data_record))
+ return -EOVERFLOW;
+ rdr->jump_address = (unsigned long)&restore_registers;
+- rdr->jump_address_phys = __pa_symbol(&restore_registers);
++ rdr->jump_address_phys = __pa_symbol(rdr->jump_address);
+ rdr->cr3 = restore_cr3;
+ rdr->magic = RESTORE_MAGIC;
+ return 0;
diff --git a/arch/x86/power/hibernate_asm_32.S b/arch/x86/power/hibernate_asm_32.S
-index 1d0fa0e..5003de0 100644
+index 1d0fa0e..f18e498 100644
--- a/arch/x86/power/hibernate_asm_32.S
+++ b/arch/x86/power/hibernate_asm_32.S
@@ -11,6 +11,7 @@
@@ -39899,6 +44116,17 @@ index 1d0fa0e..5003de0 100644
.text
+@@ -23,8 +24,8 @@ ENTRY(swsusp_arch_suspend)
+ pushfl
+ popl saved_context_eflags
+
+- call swsusp_save
+- ret
++ pax_direct_call swsusp_save
++ pax_ret swsusp_arch_suspend
+
+ ENTRY(restore_image)
+ movl mmu_cr4_features, %ecx
@@ -74,6 +75,7 @@ done:
pushl saved_context_eflags
@@ -39907,8 +44135,14 @@ index 1d0fa0e..5003de0 100644
/* Saved in save_processor_state. */
movl $saved_context, %eax
+@@ -81,4 +83,4 @@ done:
+
+ xorl %eax, %eax
+
+- ret
++ pax_ret restore_image
diff --git a/arch/x86/power/hibernate_asm_64.S b/arch/x86/power/hibernate_asm_64.S
-index ce8da3a..c3c8b8c 100644
+index ce8da3a..2f20c83 100644
--- a/arch/x86/power/hibernate_asm_64.S
+++ b/arch/x86/power/hibernate_asm_64.S
@@ -22,6 +22,7 @@
@@ -39919,6 +44153,18 @@ index ce8da3a..c3c8b8c 100644
ENTRY(swsusp_arch_suspend)
movq $saved_context, %rax
+@@ -48,9 +49,9 @@ ENTRY(swsusp_arch_suspend)
+ movq %rax, restore_cr3(%rip)
+
+ FRAME_BEGIN
+- call swsusp_save
++ pax_direct_call swsusp_save
+ FRAME_END
+- ret
++ pax_ret swsusp_arch_suspend
+ ENDPROC(swsusp_arch_suspend)
+
+ ENTRY(restore_image)
@@ -133,6 +134,7 @@ ENTRY(restore_registers)
movq pt_regs_r15(%rax), %r15
pushq pt_regs_flags(%rax)
@@ -39927,6 +44173,26 @@ index ce8da3a..c3c8b8c 100644
/* Saved in save_processor_state. */
lgdt saved_context_gdt_desc(%rax)
+@@ -142,5 +144,5 @@ ENTRY(restore_registers)
+ /* tell the hibernation core that we've just restored the memory */
+ movq %rax, in_suspend(%rip)
+
+- ret
++ pax_ret restore_registers
+ ENDPROC(restore_registers)
+diff --git a/arch/x86/purgatory/Makefile b/arch/x86/purgatory/Makefile
+index 555b9fa..3ae31c3 100644
+--- a/arch/x86/purgatory/Makefile
++++ b/arch/x86/purgatory/Makefile
+@@ -10,6 +10,8 @@ targets += purgatory.ro
+
+ KCOV_INSTRUMENT := n
+
++GCC_PLUGINS := n
++
+ # Default KBUILD_CFLAGS can have -pg option set when FTRACE is enabled. That
+ # in turn leaves some undefined symbols like __fentry__ in purgatory and not
+ # sure how to relocate those. Like kexec-tools, use custom flags.
diff --git a/arch/x86/realmode/init.c b/arch/x86/realmode/init.c
index 5db706f1..267f907 100644
--- a/arch/x86/realmode/init.c
@@ -39955,6 +44221,18 @@ index 5db706f1..267f907 100644
trampoline_pgd[511] = init_level4_pgt[511].pgd;
#endif
}
+diff --git a/arch/x86/realmode/rm/Makefile b/arch/x86/realmode/rm/Makefile
+index 25012ab..424eb9a 100644
+--- a/arch/x86/realmode/rm/Makefile
++++ b/arch/x86/realmode/rm/Makefile
+@@ -8,6 +8,7 @@
+ #
+ KASAN_SANITIZE := n
+ OBJECT_FILES_NON_STANDARD := y
++GCC_PLUGINS := n
+
+ # Prevents link failures: __sanitizer_cov_trace_pc() is not linked in.
+ KCOV_INSTRUMENT := n
diff --git a/arch/x86/realmode/rm/header.S b/arch/x86/realmode/rm/header.S
index a28221d..93c40f1 100644
--- a/arch/x86/realmode/rm/header.S
@@ -40330,7 +44608,7 @@ diff --git a/arch/x86/um/tls_32.c b/arch/x86/um/tls_32.c
index 48e3858..ab4458c 100644
--- a/arch/x86/um/tls_32.c
+++ b/arch/x86/um/tls_32.c
-@@ -261,7 +261,7 @@ out:
+@@ -261,7 +261,7 @@ static int get_tls_entry(struct task_struct *task, struct user_desc *info,
if (unlikely(task == current &&
!t->arch.tls_array[idx - GDT_ENTRY_TLS_MIN].flushed)) {
printk(KERN_ERR "get_tls_entry: task with pid %d got here "
@@ -40352,7 +44630,7 @@ index c7b15f3..cc09a65 100644
This is the Linux Xen port. Enabling this will allow the
kernel to boot in a paravirtualized environment under the
diff --git a/arch/x86/xen/enlighten.c b/arch/x86/xen/enlighten.c
-index b86ebb1..e8a6e63 100644
+index bdd8556..4c0b9c7 100644
--- a/arch/x86/xen/enlighten.c
+++ b/arch/x86/xen/enlighten.c
@@ -134,8 +134,6 @@ EXPORT_SYMBOL_GPL(xen_start_info);
@@ -40362,9 +44640,9 @@ index b86ebb1..e8a6e63 100644
-void *xen_initial_gdt;
-
RESERVE_BRK(shared_info_page_brk, PAGE_SIZE);
- __read_mostly int xen_have_vector_callback;
- EXPORT_SYMBOL_GPL(xen_have_vector_callback);
-@@ -594,8 +592,7 @@ static void xen_load_gdt(const struct desc_ptr *dtr)
+
+ static int xen_cpu_up_prepare(unsigned int cpu);
+@@ -596,8 +594,7 @@ static void xen_load_gdt(const struct desc_ptr *dtr)
{
unsigned long va = dtr->address;
unsigned int size = dtr->size + 1;
@@ -40374,7 +44652,7 @@ index b86ebb1..e8a6e63 100644
int f;
/*
-@@ -643,8 +640,7 @@ static void __init xen_load_gdt_boot(const struct desc_ptr *dtr)
+@@ -645,8 +642,7 @@ static void __init xen_load_gdt_boot(const struct desc_ptr *dtr)
{
unsigned long va = dtr->address;
unsigned int size = dtr->size + 1;
@@ -40384,7 +44662,7 @@ index b86ebb1..e8a6e63 100644
int f;
/*
-@@ -652,7 +648,7 @@ static void __init xen_load_gdt_boot(const struct desc_ptr *dtr)
+@@ -654,7 +650,7 @@ static void __init xen_load_gdt_boot(const struct desc_ptr *dtr)
* 8-byte entries, or 16 4k pages..
*/
@@ -40393,7 +44671,7 @@ index b86ebb1..e8a6e63 100644
BUG_ON(va & ~PAGE_MASK);
for (f = 0; va < dtr->address + size; va += PAGE_SIZE, f++) {
-@@ -781,7 +777,7 @@ static int cvt_gate_to_trap(int vector, const gate_desc *val,
+@@ -783,7 +779,7 @@ static int cvt_gate_to_trap(int vector, const gate_desc *val,
* so we should never see them. Warn if
* there's an unexpected IST-using fault handler.
*/
@@ -40402,7 +44680,36 @@ index b86ebb1..e8a6e63 100644
addr = (unsigned long)xen_debug;
else if (addr == (unsigned long)int3)
addr = (unsigned long)xen_int3;
-@@ -1290,7 +1286,7 @@ static const struct pv_cpu_ops xen_cpu_ops __initconst = {
+@@ -1138,6 +1134,13 @@ void xen_setup_shared_info(void)
+ xen_setup_mfn_list_list();
+ }
+
++#ifdef CONFIG_PAX_RAP
++PV_CALLEE_SAVE_REGS_THUNK(xen_save_fl_direct);
++PV_CALLEE_SAVE_REGS_THUNK(xen_restore_fl_direct);
++PV_CALLEE_SAVE_REGS_THUNK(xen_irq_disable_direct);
++PV_CALLEE_SAVE_REGS_THUNK(xen_irq_enable_direct);
++#endif
++
+ /* This is called once we have the cpu_possible_mask */
+ void xen_setup_vcpu_info_placement(void)
+ {
+@@ -1153,10 +1156,10 @@ void xen_setup_vcpu_info_placement(void)
+ * percpu area for all cpus, so make use of it. Note that for
+ * PVH we want to use native IRQ mechanism. */
+ if (have_vcpu_info_placement && !xen_pvh_domain()) {
+- pv_irq_ops.save_fl = __PV_IS_CALLEE_SAVE(xen_save_fl_direct);
+- pv_irq_ops.restore_fl = __PV_IS_CALLEE_SAVE(xen_restore_fl_direct);
+- pv_irq_ops.irq_disable = __PV_IS_CALLEE_SAVE(xen_irq_disable_direct);
+- pv_irq_ops.irq_enable = __PV_IS_CALLEE_SAVE(xen_irq_enable_direct);
++ pv_irq_ops.save_fl = __PV_IS_CALLEE_SAVE(save_fl, xen_save_fl_direct);
++ pv_irq_ops.restore_fl = __PV_IS_CALLEE_SAVE(restore_fl, xen_restore_fl_direct);
++ pv_irq_ops.irq_disable = __PV_IS_CALLEE_SAVE(irq_disable, xen_irq_disable_direct);
++ pv_irq_ops.irq_enable = __PV_IS_CALLEE_SAVE(irq_enable, xen_irq_enable_direct);
+ pv_mmu_ops.read_cr2 = xen_read_cr2_direct;
+ }
+ }
+@@ -1291,7 +1294,7 @@ static const struct pv_cpu_ops xen_cpu_ops __initconst = {
.end_context_switch = xen_end_context_switch,
};
@@ -40411,7 +44718,7 @@ index b86ebb1..e8a6e63 100644
{
struct sched_shutdown r = { .reason = reason };
int cpu;
-@@ -1298,26 +1294,26 @@ static void xen_reboot(int reason)
+@@ -1299,26 +1302,26 @@ static void xen_reboot(int reason)
for_each_online_cpu(cpu)
xen_pmu_finish(cpu);
@@ -40444,7 +44751,7 @@ index b86ebb1..e8a6e63 100644
{
if (pm_power_off)
pm_power_off();
-@@ -1471,8 +1467,11 @@ static void __ref xen_setup_gdt(int cpu)
+@@ -1472,8 +1475,11 @@ static void __ref xen_setup_gdt(int cpu)
pv_cpu_ops.write_gdt_entry = xen_write_gdt_entry_boot;
pv_cpu_ops.load_gdt = xen_load_gdt_boot;
@@ -40458,7 +44765,7 @@ index b86ebb1..e8a6e63 100644
pv_cpu_ops.write_gdt_entry = xen_write_gdt_entry;
pv_cpu_ops.load_gdt = xen_load_gdt;
-@@ -1590,9 +1589,6 @@ asmlinkage __visible void __init xen_start_kernel(void)
+@@ -1606,9 +1612,6 @@ asmlinkage __visible void __init xen_start_kernel(void)
*/
__userpte_alloc_gfp &= ~__GFP_HIGHMEM;
@@ -40468,7 +44775,7 @@ index b86ebb1..e8a6e63 100644
/* Get mfn list */
xen_build_dynamic_phys_to_machine();
-@@ -1602,6 +1598,19 @@ asmlinkage __visible void __init xen_start_kernel(void)
+@@ -1618,6 +1621,19 @@ asmlinkage __visible void __init xen_start_kernel(void)
*/
xen_setup_gdt(0);
@@ -40488,7 +44795,7 @@ index b86ebb1..e8a6e63 100644
xen_init_irq_ops();
xen_init_cpuid_mask();
-@@ -1619,13 +1628,6 @@ asmlinkage __visible void __init xen_start_kernel(void)
+@@ -1635,13 +1651,6 @@ asmlinkage __visible void __init xen_start_kernel(void)
machine_ops = xen_machine_ops;
@@ -40502,11 +44809,38 @@ index b86ebb1..e8a6e63 100644
xen_smp_init();
#ifdef CONFIG_ACPI_NUMA
+diff --git a/arch/x86/xen/irq.c b/arch/x86/xen/irq.c
+index 33e9295..7af61ba 100644
+--- a/arch/x86/xen/irq.c
++++ b/arch/x86/xen/irq.c
+@@ -116,10 +116,10 @@ static void xen_halt(void)
+ }
+
+ static const struct pv_irq_ops xen_irq_ops __initconst = {
+- .save_fl = PV_CALLEE_SAVE(xen_save_fl),
+- .restore_fl = PV_CALLEE_SAVE(xen_restore_fl),
+- .irq_disable = PV_CALLEE_SAVE(xen_irq_disable),
+- .irq_enable = PV_CALLEE_SAVE(xen_irq_enable),
++ .save_fl = PV_CALLEE_SAVE(save_fl, xen_save_fl),
++ .restore_fl = PV_CALLEE_SAVE(restore_fl, xen_restore_fl),
++ .irq_disable = PV_CALLEE_SAVE(irq_disable, xen_irq_disable),
++ .irq_enable = PV_CALLEE_SAVE(irq_enable, xen_irq_enable),
+
+ .safe_halt = xen_safe_halt,
+ .halt = xen_halt,
diff --git a/arch/x86/xen/mmu.c b/arch/x86/xen/mmu.c
-index 7d5afdb..c89588c 100644
+index 7d5afdb..71fb27c 100644
--- a/arch/x86/xen/mmu.c
+++ b/arch/x86/xen/mmu.c
-@@ -1940,7 +1940,14 @@ void __init xen_setup_kernel_pagetable(pgd_t *pgd, unsigned long max_pfn)
+@@ -64,6 +64,7 @@
+ #include <asm/init.h>
+ #include <asm/pat.h>
+ #include <asm/smp.h>
++#include <asm/alternative-asm.h>
+
+ #include <asm/xen/hypercall.h>
+ #include <asm/xen/hypervisor.h>
+@@ -1940,7 +1941,14 @@ void __init xen_setup_kernel_pagetable(pgd_t *pgd, unsigned long max_pfn)
* L3_k[511] -> level2_fixmap_pgt */
convert_pfn_mfn(level3_kernel_pgt);
@@ -40521,7 +44855,7 @@ index 7d5afdb..c89588c 100644
convert_pfn_mfn(level2_fixmap_pgt);
}
/* We get [511][511] and have Xen's version of level2_kernel_pgt */
-@@ -1970,11 +1977,25 @@ void __init xen_setup_kernel_pagetable(pgd_t *pgd, unsigned long max_pfn)
+@@ -1970,11 +1978,25 @@ void __init xen_setup_kernel_pagetable(pgd_t *pgd, unsigned long max_pfn)
set_page_prot(init_level4_pgt, PAGE_KERNEL_RO);
set_page_prot(level3_ident_pgt, PAGE_KERNEL_RO);
set_page_prot(level3_kernel_pgt, PAGE_KERNEL_RO);
@@ -40548,7 +44882,7 @@ index 7d5afdb..c89588c 100644
/* Pin down new L4 */
pin_pagetable_pfn(MMUEXT_PIN_L4_TABLE,
-@@ -2385,6 +2406,7 @@ static void __init xen_post_allocator_init(void)
+@@ -2385,6 +2407,7 @@ static void __init xen_post_allocator_init(void)
pv_mmu_ops.set_pud = xen_set_pud;
#if CONFIG_PGTABLE_LEVELS == 4
pv_mmu_ops.set_pgd = xen_set_pgd;
@@ -40556,7 +44890,16 @@ index 7d5afdb..c89588c 100644
#endif
/* This will work as long as patching hasn't happened yet
-@@ -2414,6 +2436,10 @@ static void xen_leave_lazy_mmu(void)
+@@ -2397,7 +2420,7 @@ static void __init xen_post_allocator_init(void)
+ pv_mmu_ops.alloc_pud = xen_alloc_pud;
+ pv_mmu_ops.release_pud = xen_release_pud;
+ #endif
+- pv_mmu_ops.make_pte = PV_CALLEE_SAVE(xen_make_pte);
++ pv_mmu_ops.make_pte = PV_CALLEE_SAVE(make_pte, xen_make_pte);
+
+ #ifdef CONFIG_X86_64
+ pv_mmu_ops.write_cr3 = &xen_write_cr3;
+@@ -2414,6 +2437,10 @@ static void xen_leave_lazy_mmu(void)
preempt_enable();
}
@@ -40567,7 +44910,7 @@ index 7d5afdb..c89588c 100644
static const struct pv_mmu_ops xen_mmu_ops __initconst = {
.read_cr2 = xen_read_cr2,
.write_cr2 = xen_write_cr2,
-@@ -2426,7 +2452,7 @@ static const struct pv_mmu_ops xen_mmu_ops __initconst = {
+@@ -2426,7 +2453,7 @@ static const struct pv_mmu_ops xen_mmu_ops __initconst = {
.flush_tlb_single = xen_flush_tlb_single,
.flush_tlb_others = xen_flush_tlb_others,
@@ -40576,16 +44919,43 @@ index 7d5afdb..c89588c 100644
.pgd_alloc = xen_pgd_alloc,
.pgd_free = xen_pgd_free,
-@@ -2463,6 +2489,7 @@ static const struct pv_mmu_ops xen_mmu_ops __initconst = {
- .pud_val = PV_CALLEE_SAVE(xen_pud_val),
- .make_pud = PV_CALLEE_SAVE(xen_make_pud),
+@@ -2443,11 +2470,11 @@ static const struct pv_mmu_ops xen_mmu_ops __initconst = {
+ .ptep_modify_prot_start = __ptep_modify_prot_start,
+ .ptep_modify_prot_commit = __ptep_modify_prot_commit,
+
+- .pte_val = PV_CALLEE_SAVE(xen_pte_val),
+- .pgd_val = PV_CALLEE_SAVE(xen_pgd_val),
++ .pte_val = PV_CALLEE_SAVE(pte_val, xen_pte_val),
++ .pgd_val = PV_CALLEE_SAVE(pgd_val, xen_pgd_val),
+
+- .make_pte = PV_CALLEE_SAVE(xen_make_pte_init),
+- .make_pgd = PV_CALLEE_SAVE(xen_make_pgd),
++ .make_pte = PV_CALLEE_SAVE(make_pte, xen_make_pte_init),
++ .make_pgd = PV_CALLEE_SAVE(make_pgd, xen_make_pgd),
+
+ #ifdef CONFIG_X86_PAE
+ .set_pte_atomic = xen_set_pte_atomic,
+@@ -2456,13 +2483,14 @@ static const struct pv_mmu_ops xen_mmu_ops __initconst = {
+ #endif /* CONFIG_X86_PAE */
+ .set_pud = xen_set_pud_hyper,
+
+- .make_pmd = PV_CALLEE_SAVE(xen_make_pmd),
+- .pmd_val = PV_CALLEE_SAVE(xen_pmd_val),
++ .make_pmd = PV_CALLEE_SAVE(make_pmd, xen_make_pmd),
++ .pmd_val = PV_CALLEE_SAVE(pmd_val, xen_pmd_val),
+
+ #if CONFIG_PGTABLE_LEVELS == 4
+- .pud_val = PV_CALLEE_SAVE(xen_pud_val),
+- .make_pud = PV_CALLEE_SAVE(xen_make_pud),
++ .pud_val = PV_CALLEE_SAVE(pud_val, xen_pud_val),
++ .make_pud = PV_CALLEE_SAVE(make_pud, xen_make_pud),
.set_pgd = xen_set_pgd_hyper,
+ .set_pgd_batched = xen_set_pgd_hyper,
.alloc_pud = xen_alloc_pmd_init,
.release_pud = xen_release_pmd_init,
diff --git a/arch/x86/xen/pmu.c b/arch/x86/xen/pmu.c
-index 32bdc2c..073b8a5 100644
+index b9fc525..1368a4d 100644
--- a/arch/x86/xen/pmu.c
+++ b/arch/x86/xen/pmu.c
@@ -444,6 +444,7 @@ static unsigned long xen_get_guest_ip(void)
@@ -40597,10 +44967,10 @@ index 32bdc2c..073b8a5 100644
}
diff --git a/arch/x86/xen/smp.c b/arch/x86/xen/smp.c
-index 6228403..2354210 100644
+index 311acad..89be7c8 100644
--- a/arch/x86/xen/smp.c
+++ b/arch/x86/xen/smp.c
-@@ -312,17 +312,13 @@ static void __init xen_smp_prepare_boot_cpu(void)
+@@ -306,17 +306,13 @@ static void __init xen_smp_prepare_boot_cpu(void)
if (xen_pv_domain()) {
if (!xen_feature(XENFEAT_writable_page_tables))
@@ -40620,7 +44990,7 @@ index 6228403..2354210 100644
#endif
xen_filter_cpu_maps();
-@@ -412,7 +408,7 @@ cpu_initialize_context(unsigned int cpu, struct task_struct *idle)
+@@ -406,7 +402,7 @@ cpu_initialize_context(unsigned int cpu, struct task_struct *idle)
#ifdef CONFIG_X86_32
/* Note: PVH is not yet supported on x86_32. */
ctxt->user_regs.fs = __KERNEL_PERCPU;
@@ -40629,7 +44999,7 @@ index 6228403..2354210 100644
#endif
memset(&ctxt->fpu_ctxt, 0, sizeof(ctxt->fpu_ctxt));
-@@ -420,8 +416,8 @@ cpu_initialize_context(unsigned int cpu, struct task_struct *idle)
+@@ -414,8 +410,8 @@ cpu_initialize_context(unsigned int cpu, struct task_struct *idle)
ctxt->user_regs.eip = (unsigned long)cpu_bringup_and_idle;
ctxt->flags = VGCF_IN_KERNEL;
ctxt->user_regs.eflags = 0x1000; /* IOPL_RING1 */
@@ -40640,7 +45010,7 @@ index 6228403..2354210 100644
ctxt->user_regs.ss = __KERNEL_DS;
xen_copy_trap_info(ctxt->trap_ctxt);
-@@ -763,7 +759,7 @@ static const struct smp_ops xen_smp_ops __initconst = {
+@@ -751,7 +747,7 @@ static const struct smp_ops xen_smp_ops __initconst = {
void __init xen_smp_init(void)
{
@@ -40649,10 +45019,133 @@ index 6228403..2354210 100644
xen_fill_possible_map();
}
+diff --git a/arch/x86/xen/spinlock.c b/arch/x86/xen/spinlock.c
+index 3d6e006..021e1bd 100644
+--- a/arch/x86/xen/spinlock.c
++++ b/arch/x86/xen/spinlock.c
+@@ -134,7 +134,7 @@ void __init xen_init_spinlocks(void)
+
+ __pv_init_lock_hash();
+ pv_lock_ops.queued_spin_lock_slowpath = __pv_queued_spin_lock_slowpath;
+- pv_lock_ops.queued_spin_unlock = PV_CALLEE_SAVE(__pv_queued_spin_unlock);
++ pv_lock_ops.queued_spin_unlock = PV_CALLEE_SAVE(queued_spin_unlock, __pv_queued_spin_unlock);
+ pv_lock_ops.wait = xen_qlock_wait;
+ pv_lock_ops.kick = xen_qlock_kick;
+ }
+diff --git a/arch/x86/xen/xen-asm.S b/arch/x86/xen/xen-asm.S
+index eff224d..ab792d2 100644
+--- a/arch/x86/xen/xen-asm.S
++++ b/arch/x86/xen/xen-asm.S
+@@ -15,6 +15,7 @@
+ #include <asm/percpu.h>
+ #include <asm/processor-flags.h>
+ #include <asm/frame.h>
++#include <asm/alternative-asm.h>
+
+ #include "xen-asm.h"
+
+@@ -23,7 +24,7 @@
+ * event status with one and operation. If there are pending events,
+ * then enter the hypervisor to get them handled.
+ */
+-ENTRY(xen_irq_enable_direct)
++RAP_ENTRY(xen_irq_enable_direct)
+ FRAME_BEGIN
+ /* Unmask events */
+ movb $0, PER_CPU_VAR(xen_vcpu_info) + XEN_vcpu_info_mask
+@@ -42,7 +43,7 @@ ENTRY(xen_irq_enable_direct)
+ 1:
+ ENDPATCH(xen_irq_enable_direct)
+ FRAME_END
+- ret
++ pax_ret xen_irq_enable_direct
+ ENDPROC(xen_irq_enable_direct)
+ RELOC(xen_irq_enable_direct, 2b+1)
+
+@@ -51,10 +52,10 @@ ENDPATCH(xen_irq_enable_direct)
+ * Disabling events is simply a matter of making the event mask
+ * non-zero.
+ */
+-ENTRY(xen_irq_disable_direct)
++RAP_ENTRY(xen_irq_disable_direct)
+ movb $1, PER_CPU_VAR(xen_vcpu_info) + XEN_vcpu_info_mask
+ ENDPATCH(xen_irq_disable_direct)
+- ret
++ pax_ret xen_irq_disable_direct
+ ENDPROC(xen_irq_disable_direct)
+ RELOC(xen_irq_disable_direct, 0)
+
+@@ -67,12 +68,12 @@ ENDPATCH(xen_irq_disable_direct)
+ * undefined. We need to toggle the state of the bit, because Xen and
+ * x86 use opposite senses (mask vs enable).
+ */
+-ENTRY(xen_save_fl_direct)
++RAP_ENTRY(xen_save_fl_direct)
+ testb $0xff, PER_CPU_VAR(xen_vcpu_info) + XEN_vcpu_info_mask
+ setz %ah
+ addb %ah, %ah
+ ENDPATCH(xen_save_fl_direct)
+- ret
++ pax_ret xen_save_fl_direct
+ ENDPROC(xen_save_fl_direct)
+ RELOC(xen_save_fl_direct, 0)
+
+@@ -84,7 +85,7 @@ ENDPATCH(xen_save_fl_direct)
+ * interrupt mask state, it checks for unmasked pending events and
+ * enters the hypervisor to get them delivered if so.
+ */
+-ENTRY(xen_restore_fl_direct)
++RAP_ENTRY(xen_restore_fl_direct)
+ FRAME_BEGIN
+ #ifdef CONFIG_X86_64
+ testw $X86_EFLAGS_IF, %di
+@@ -105,7 +106,7 @@ ENTRY(xen_restore_fl_direct)
+ 1:
+ ENDPATCH(xen_restore_fl_direct)
+ FRAME_END
+- ret
++ pax_ret xen_restore_fl_direct
+ ENDPROC(xen_restore_fl_direct)
+ RELOC(xen_restore_fl_direct, 2b+1)
+
+@@ -120,7 +121,7 @@ ENTRY(check_events)
+ push %eax
+ push %ecx
+ push %edx
+- call xen_force_evtchn_callback
++ pax_direct_call xen_force_evtchn_callback
+ pop %edx
+ pop %ecx
+ pop %eax
+@@ -134,7 +135,7 @@ ENTRY(check_events)
+ push %r9
+ push %r10
+ push %r11
+- call xen_force_evtchn_callback
++ pax_direct_call xen_force_evtchn_callback
+ pop %r11
+ pop %r10
+ pop %r9
+@@ -146,5 +147,5 @@ ENTRY(check_events)
+ pop %rax
+ #endif
+ FRAME_END
+- ret
++ pax_ret check_events
+ ENDPROC(check_events)
diff --git a/arch/x86/xen/xen-asm_32.S b/arch/x86/xen/xen-asm_32.S
-index feb6d40..e59382c 100644
+index feb6d40..c8fd8e7 100644
--- a/arch/x86/xen/xen-asm_32.S
+++ b/arch/x86/xen/xen-asm_32.S
+@@ -28,7 +28,7 @@ check_events:
+ push %eax
+ push %ecx
+ push %edx
+- call xen_force_evtchn_callback
++ pax_direct_call xen_force_evtchn_callback
+ pop %edx
+ pop %ecx
+ pop %eax
@@ -85,7 +85,7 @@ ENTRY(xen_iret)
pushw %fs
movl $(__KERNEL_PERCPU), %eax
@@ -40663,10 +45156,18 @@ index feb6d40..e59382c 100644
#else
movl %ss:xen_vcpu, %eax
diff --git a/arch/x86/xen/xen-head.S b/arch/x86/xen/xen-head.S
-index 7f8d8ab..8ecf53e 100644
+index 7f8d8ab..3032b77 100644
--- a/arch/x86/xen/xen-head.S
+++ b/arch/x86/xen/xen-head.S
-@@ -50,6 +50,18 @@ ENTRY(startup_xen)
+@@ -8,6 +8,7 @@
+
+ #include <asm/boot.h>
+ #include <asm/asm.h>
++#include <asm/alternative-asm.h>
+ #include <asm/page_types.h>
+
+ #include <xen/interface/elfnote.h>
+@@ -50,6 +51,18 @@ ENTRY(startup_xen)
mov %_ASM_SI, xen_start_info
mov $init_thread_union+THREAD_SIZE, %_ASM_SP
@@ -40685,6 +45186,15 @@ index 7f8d8ab..8ecf53e 100644
jmp xen_start_kernel
__FINIT
+@@ -85,7 +98,7 @@ ENTRY(xen_pvh_early_cpu_init)
+ cmp $0, %r11b
+ jne cpu_bringup_and_idle
+ #endif
+- ret
++ pax_ret xen_pvh_early_cpu_init
+
+ #endif /* CONFIG_XEN_PVH */
+
diff --git a/arch/x86/xen/xen-ops.h b/arch/x86/xen/xen-ops.h
index 3cbce3b..f1221bc 100644
--- a/arch/x86/xen/xen-ops.h
@@ -40737,10 +45247,10 @@ index 2f33760..835e50a 100644
#define XCHAL_ICACHE_SIZE 8192 /* I-cache size in bytes or 0 */
#define XCHAL_DCACHE_SIZE 8192 /* D-cache size in bytes or 0 */
diff --git a/block/bio.c b/block/bio.c
-index aa73540..ced15ee 100644
+index db85c57..1044432 100644
--- a/block/bio.c
+++ b/block/bio.c
-@@ -1144,7 +1144,7 @@ struct bio *bio_copy_user_iov(struct request_queue *q,
+@@ -1145,7 +1145,7 @@ struct bio *bio_copy_user_iov(struct request_queue *q,
/*
* Overflow, abort
*/
@@ -40749,7 +45259,7 @@ index aa73540..ced15ee 100644
return ERR_PTR(-EINVAL);
nr_pages += end - start;
-@@ -1269,7 +1269,7 @@ struct bio *bio_map_user_iov(struct request_queue *q,
+@@ -1270,7 +1270,7 @@ struct bio *bio_map_user_iov(struct request_queue *q,
/*
* Overflow, abort
*/
@@ -40758,7 +45268,7 @@ index aa73540..ced15ee 100644
return ERR_PTR(-EINVAL);
nr_pages += end - start;
-@@ -1777,7 +1777,7 @@ EXPORT_SYMBOL(bio_endio);
+@@ -1778,7 +1778,7 @@ EXPORT_SYMBOL(bio_endio);
* to @bio's bi_io_vec; it is the caller's responsibility to ensure that
* @bio is not freed before the split.
*/
@@ -40822,10 +45332,10 @@ index b08ccbb..87fe492 100644
spin_unlock_irq(blkg->q->queue_lock);
diff --git a/block/blk-core.c b/block/blk-core.c
-index 36c7ac3..ba1f2fd 100644
+index 14d7c07..fd7b832 100644
--- a/block/blk-core.c
+++ b/block/blk-core.c
-@@ -3529,8 +3529,11 @@ int __init blk_dev_init(void)
+@@ -3539,8 +3539,11 @@ int __init blk_dev_init(void)
if (!kblockd_workqueue)
panic("Failed to create kblockd\n");
@@ -40853,20 +45363,20 @@ index 27fd8d92..c03179e 100644
bio = bio_copy_kern(q, kbuf, len, gfp_mask, reading);
else
diff --git a/block/blk-softirq.c b/block/blk-softirq.c
-index 53b1737..08177d2e 100644
+index 06cf9807..3eb814a 100644
--- a/block/blk-softirq.c
+++ b/block/blk-softirq.c
@@ -18,7 +18,7 @@ static DEFINE_PER_CPU(struct list_head, blk_cpu_done);
* Softirq action handler - move entries to local list and loop over them
* while passing them to the queue registered handler.
*/
--static void blk_done_softirq(struct softirq_action *h)
+-static __latent_entropy void blk_done_softirq(struct softirq_action *h)
+static __latent_entropy void blk_done_softirq(void)
{
struct list_head *cpu_list, local_list;
diff --git a/block/cfq-iosched.c b/block/cfq-iosched.c
-index 5e24d88..c345d62 100644
+index 3ab6807..e3e68f0 100644
--- a/block/cfq-iosched.c
+++ b/block/cfq-iosched.c
@@ -1965,8 +1965,8 @@ static u64 cfqg_prfill_sectors_recursive(struct seq_file *sf,
@@ -41116,7 +45626,7 @@ index f550b5d..8488beb 100644
err = blkcipher_walk_done(desc, &walk, 0);
}
diff --git a/crypto/scatterwalk.c b/crypto/scatterwalk.c
-index 52ce17a..fc10b38 100644
+index c16c94f8..8ab5bf8 100644
--- a/crypto/scatterwalk.c
+++ b/crypto/scatterwalk.c
@@ -62,14 +62,20 @@ void scatterwalk_map_and_copy(void *buf, struct scatterlist *sg,
@@ -41130,18 +45640,17 @@ index 52ce17a..fc10b38 100644
sg = scatterwalk_ffwd(tmp, sg, start);
-- if (sg_page(sg) == virt_to_page(buf) &&
-- sg->offset == offset_in_page(buf))
+#ifdef CONFIG_GRKERNSEC_KSTACKOVERFLOW
+ if (object_starts_on_stack(buf))
+ realbuf = buf - current->stack + current->lowmem_stack;
+#endif
+
-+ if (sg_page(sg) == virt_to_page(realbuf) &&
-+ sg->offset == offset_in_page(realbuf))
- return;
-
scatterwalk_start(&walk, sg);
+- scatterwalk_copychunks(buf, &walk, nbytes, out);
++ scatterwalk_copychunks(realbuf, &walk, nbytes, out);
+ scatterwalk_done(&walk, out, 0);
+ }
+ EXPORT_SYMBOL_GPL(scatterwalk_map_and_copy);
diff --git a/crypto/serpent_generic.c b/crypto/serpent_generic.c
index 94970a7..f0c8d26 100644
--- a/crypto/serpent_generic.c
@@ -41195,10 +45704,10 @@ index c5557d0..8ece624 100644
* Broken _BQC workaround http://bugzilla.kernel.org/show_bug.cgi?id=13121
*/
diff --git a/drivers/acpi/acpica/acutils.h b/drivers/acpi/acpica/acutils.h
-index a7dbb2b..93e986e 100644
+index 0a1b53c..2349b23 100644
--- a/drivers/acpi/acpica/acutils.h
+++ b/drivers/acpi/acpica/acutils.h
-@@ -274,7 +274,7 @@ void acpi_ut_init_stack_ptr_trace(void);
+@@ -289,7 +289,7 @@ void acpi_ut_init_stack_ptr_trace(void);
void acpi_ut_track_stack_ptr(void);
@@ -41221,10 +45730,10 @@ index 46bd65d..ec9da48 100644
cmd_num,
acpi_gbl_history_buffer[history_index].
diff --git a/drivers/acpi/acpica/dbinput.c b/drivers/acpi/acpica/dbinput.c
-index 7cd5d2e..a837ce6 100644
+index 068214f..43be06b 100644
--- a/drivers/acpi/acpica/dbinput.c
+++ b/drivers/acpi/acpica/dbinput.c
-@@ -606,7 +606,7 @@ static u32 acpi_db_get_line(char *input_buffer)
+@@ -608,7 +608,7 @@ static u32 acpi_db_get_line(char *input_buffer)
(acpi_gbl_db_parsed_buf, sizeof(acpi_gbl_db_parsed_buf),
input_buffer)) {
acpi_os_printf
@@ -41233,7 +45742,7 @@ index 7cd5d2e..a837ce6 100644
sizeof(acpi_gbl_db_parsed_buf));
return (0);
}
-@@ -862,24 +862,24 @@ acpi_db_command_dispatch(char *input_buffer,
+@@ -864,24 +864,24 @@ acpi_db_command_dispatch(char *input_buffer,
if (param_count == 0) {
acpi_os_printf
@@ -41456,7 +45965,7 @@ index f76e0ea..4b83315 100644
/*
diff --git a/drivers/acpi/acpica/utdebug.c b/drivers/acpi/acpica/utdebug.c
-index 5744222..4ac231a 100644
+index 044df9b..b4cdb9c 100644
--- a/drivers/acpi/acpica/utdebug.c
+++ b/drivers/acpi/acpica/utdebug.c
@@ -189,7 +189,7 @@ acpi_debug_print(u32 requested_debug_level,
@@ -41482,7 +45991,7 @@ index 6e9f14c..7f9a99d 100644
struct apei_exec_context {
u32 ip;
diff --git a/drivers/acpi/apei/ghes.c b/drivers/acpi/apei/ghes.c
-index caea575..4dd8306 100644
+index e53bef6..46534c4 100644
--- a/drivers/acpi/apei/ghes.c
+++ b/drivers/acpi/apei/ghes.c
@@ -483,7 +483,7 @@ static void __ghes_print_estatus(const char *pfx,
@@ -41531,7 +46040,7 @@ index caea575..4dd8306 100644
do_div(period, (count + 1));
if (period > max_period) {
diff --git a/drivers/acpi/battery.c b/drivers/acpi/battery.c
-index ab23479..9aa32bf 100644
+index 93ecae5..a845fce 100644
--- a/drivers/acpi/battery.c
+++ b/drivers/acpi/battery.c
@@ -75,7 +75,7 @@ MODULE_PARM_DESC(cache_time, "cache time in milliseconds");
@@ -41646,10 +46155,10 @@ index bdc67ba..a82756b 100644
/*
* DELL XPS 13 (2015) switches sound between HDA and I2S
diff --git a/drivers/acpi/bus.c b/drivers/acpi/bus.c
-index 85b7d07..cfc2a30 100644
+index 56190d0..406f04c 100644
--- a/drivers/acpi/bus.c
+++ b/drivers/acpi/bus.c
-@@ -66,7 +66,7 @@ static int set_copy_dsdt(const struct dmi_system_id *id)
+@@ -67,7 +67,7 @@ static int set_copy_dsdt(const struct dmi_system_id *id)
}
#endif
@@ -41658,7 +46167,7 @@ index 85b7d07..cfc2a30 100644
/*
* Invoke DSDT corruption work-around on all Toshiba Satellite.
* https://bugzilla.kernel.org/show_bug.cgi?id=14679
-@@ -82,7 +82,7 @@ static struct dmi_system_id dsdt_dmi_table[] __initdata = {
+@@ -83,7 +83,7 @@ static struct dmi_system_id dsdt_dmi_table[] __initdata = {
{}
};
#else
@@ -41668,10 +46177,10 @@ index 85b7d07..cfc2a30 100644
};
#endif
diff --git a/drivers/acpi/button.c b/drivers/acpi/button.c
-index 31abb0b..462db58 100644
+index e19f530..cc2d296 100644
--- a/drivers/acpi/button.c
+++ b/drivers/acpi/button.c
-@@ -477,7 +477,7 @@ static int acpi_button_remove(struct acpi_device *device)
+@@ -556,7 +556,7 @@ static int acpi_button_remove(struct acpi_device *device)
return 0;
}
@@ -41680,7 +46189,7 @@ index 31abb0b..462db58 100644
{
int result = 0;
-@@ -495,7 +495,7 @@ static int param_set_lid_init_state(const char *val, struct kernel_param *kp)
+@@ -574,7 +574,7 @@ static int param_set_lid_init_state(const char *val, struct kernel_param *kp)
return result;
}
@@ -41734,10 +46243,10 @@ index 993fd31..cc15d14 100644
}
EXPORT_SYMBOL_GPL(acpi_dev_pm_attach);
diff --git a/drivers/acpi/ec.c b/drivers/acpi/ec.c
-index e7bd57c..e26a064 100644
+index 48e19d0..b08e802 100644
--- a/drivers/acpi/ec.c
+++ b/drivers/acpi/ec.c
-@@ -1559,7 +1559,7 @@ static int ec_correct_ecdt(const struct dmi_system_id *id)
+@@ -1777,7 +1777,7 @@ static int ec_correct_ecdt(const struct dmi_system_id *id)
return 0;
}
@@ -41746,16 +46255,16 @@ index e7bd57c..e26a064 100644
{
ec_correct_ecdt, "MSI MS-171F", {
DMI_MATCH(DMI_SYS_VENDOR, "Micro-Star"),
-@@ -1619,7 +1619,7 @@ error:
- return ret;
- }
+@@ -1910,7 +1910,7 @@ static const struct dev_pm_ops acpi_ec_pm = {
+ SET_SYSTEM_SLEEP_PM_OPS(acpi_ec_suspend, acpi_ec_resume)
+ };
-static int param_set_event_clearing(const char *val, struct kernel_param *kp)
+static int param_set_event_clearing(const char *val, const struct kernel_param *kp)
{
int result = 0;
-@@ -1637,7 +1637,7 @@ static int param_set_event_clearing(const char *val, struct kernel_param *kp)
+@@ -1928,7 +1928,7 @@ static int param_set_event_clearing(const char *val, struct kernel_param *kp)
return result;
}
@@ -41791,10 +46300,10 @@ index f62c68e..e90b61f 100644
* Fujitsu Primequest machines will return 1023 to indicate an
* error if the _SUN method is evaluated on SxFy objects that
diff --git a/drivers/acpi/processor_idle.c b/drivers/acpi/processor_idle.c
-index cea5252..c688abf 100644
+index 2237d3f..af0be90 100644
--- a/drivers/acpi/processor_idle.c
+++ b/drivers/acpi/processor_idle.c
-@@ -841,7 +841,7 @@ static int acpi_processor_setup_cstates(struct acpi_processor *pr)
+@@ -842,7 +842,7 @@ static int acpi_processor_setup_cstates(struct acpi_processor *pr)
{
int i, count = CPUIDLE_DRIVER_STATE_START;
struct acpi_processor_cx *cx;
@@ -41803,7 +46312,7 @@ index cea5252..c688abf 100644
struct cpuidle_driver *drv = &acpi_idle_driver;
if (max_cstate == 0)
-@@ -1250,7 +1250,7 @@ static int acpi_processor_setup_lpi_states(struct acpi_processor *pr)
+@@ -1251,7 +1251,7 @@ static int acpi_processor_setup_lpi_states(struct acpi_processor *pr)
{
int i;
struct acpi_lpi_state *lpi;
@@ -41826,7 +46335,7 @@ index 7cfbda4..74f738c 100644
set_no_mwait, "Extensa 5220", {
DMI_MATCH(DMI_BIOS_VENDOR, "Phoenix Technologies LTD"),
diff --git a/drivers/acpi/sleep.c b/drivers/acpi/sleep.c
-index 7a2e4d4..0de00c5 100644
+index 54abb26..6f7015f 100644
--- a/drivers/acpi/sleep.c
+++ b/drivers/acpi/sleep.c
@@ -154,7 +154,7 @@ static int __init init_nvs_nosave(const struct dmi_system_id *d)
@@ -41839,7 +46348,7 @@ index 7a2e4d4..0de00c5 100644
.callback = init_old_suspend_ordering,
.ident = "Abit KN9 (nForce4 variant)",
diff --git a/drivers/acpi/sysfs.c b/drivers/acpi/sysfs.c
-index 358165e..5e37640 100644
+index 703c26e..47be990 100644
--- a/drivers/acpi/sysfs.c
+++ b/drivers/acpi/sysfs.c
@@ -227,7 +227,7 @@ module_param_cb(trace_method_name, &param_ops_trace_method, &trace_method_name,
@@ -41869,7 +46378,7 @@ index 358165e..5e37640 100644
{
int result;
-@@ -484,11 +484,11 @@ static u32 num_counters;
+@@ -490,11 +490,11 @@ static u32 num_counters;
static struct attribute **all_attrs;
static u32 acpi_gpe_count;
@@ -41883,7 +46392,7 @@ index 358165e..5e37640 100644
static void delete_gpe_attr_array(void)
{
-@@ -774,13 +774,13 @@ static void __exit interrupt_stats_exit(void)
+@@ -797,13 +797,13 @@ static void __exit interrupt_stats_exit(void)
}
static ssize_t
@@ -41900,10 +46409,10 @@ index 358165e..5e37640 100644
static ssize_t hotplug_enabled_show(struct kobject *kobj,
diff --git a/drivers/acpi/thermal.c b/drivers/acpi/thermal.c
-index f4ebe39..f937534 100644
+index 35e8fbc..5f0c412 100644
--- a/drivers/acpi/thermal.c
+++ b/drivers/acpi/thermal.c
-@@ -1208,7 +1208,7 @@ static int thermal_psv(const struct dmi_system_id *d) {
+@@ -1209,7 +1209,7 @@ static int thermal_psv(const struct dmi_system_id *d) {
return 0;
}
@@ -41945,10 +46454,10 @@ index 02ded25..ff23e2d 100644
backlight_notifier_registered = true;
init_done = true;
diff --git a/drivers/android/binder.c b/drivers/android/binder.c
-index 4b1e4ea..db24123 100644
+index 3c71b98..03bc39b9 100644
--- a/drivers/android/binder.c
+++ b/drivers/android/binder.c
-@@ -120,7 +120,7 @@ static DECLARE_WAIT_QUEUE_HEAD(binder_user_error_wait);
+@@ -119,7 +119,7 @@ static DECLARE_WAIT_QUEUE_HEAD(binder_user_error_wait);
static int binder_stop_on_user_error;
static int binder_set_stop_on_user_error(const char *val,
@@ -41958,7 +46467,7 @@ index 4b1e4ea..db24123 100644
int ret;
diff --git a/drivers/ata/libata-core.c b/drivers/ata/libata-core.c
-index 223a770..295a507 100644
+index 33e363d..1694417 100644
--- a/drivers/ata/libata-core.c
+++ b/drivers/ata/libata-core.c
@@ -105,7 +105,7 @@ static unsigned int ata_dev_set_xfermode(struct ata_device *dev);
@@ -41970,7 +46479,7 @@ index 223a770..295a507 100644
struct ata_force_param {
const char *name;
-@@ -4988,7 +4988,7 @@ void ata_qc_free(struct ata_queued_cmd *qc)
+@@ -4990,7 +4990,7 @@ void ata_qc_free(struct ata_queued_cmd *qc)
struct ata_port *ap;
unsigned int tag;
@@ -41979,7 +46488,7 @@ index 223a770..295a507 100644
ap = qc->ap;
qc->flags = 0;
-@@ -5005,7 +5005,7 @@ void __ata_qc_complete(struct ata_queued_cmd *qc)
+@@ -5007,7 +5007,7 @@ void __ata_qc_complete(struct ata_queued_cmd *qc)
struct ata_port *ap;
struct ata_link *link;
@@ -41988,7 +46497,7 @@ index 223a770..295a507 100644
WARN_ON_ONCE(!(qc->flags & ATA_QCFLAG_ACTIVE));
ap = qc->ap;
link = qc->dev->link;
-@@ -6117,6 +6117,7 @@ static void ata_finalize_port_ops(struct ata_port_operations *ops)
+@@ -6119,6 +6119,7 @@ static void ata_finalize_port_ops(struct ata_port_operations *ops)
return;
spin_lock(&lock);
@@ -41996,7 +46505,7 @@ index 223a770..295a507 100644
for (cur = ops->inherits; cur; cur = cur->inherits) {
void **inherit = (void **)cur;
-@@ -6130,8 +6131,9 @@ static void ata_finalize_port_ops(struct ata_port_operations *ops)
+@@ -6132,8 +6133,9 @@ static void ata_finalize_port_ops(struct ata_port_operations *ops)
if (IS_ERR(*pp))
*pp = NULL;
@@ -42007,7 +46516,7 @@ index 223a770..295a507 100644
spin_unlock(&lock);
}
-@@ -6327,7 +6329,7 @@ int ata_host_register(struct ata_host *host, struct scsi_host_template *sht)
+@@ -6329,7 +6331,7 @@ int ata_host_register(struct ata_host *host, struct scsi_host_template *sht)
/* give ports names and add SCSI hosts */
for (i = 0; i < host->n_ports; i++) {
@@ -42017,10 +46526,10 @@ index 223a770..295a507 100644
}
diff --git a/drivers/ata/libata-scsi.c b/drivers/ata/libata-scsi.c
-index 1e007a9..67c25db 100644
+index 8e575fb..104fcff 100644
--- a/drivers/ata/libata-scsi.c
+++ b/drivers/ata/libata-scsi.c
-@@ -4689,7 +4689,7 @@ int ata_sas_port_init(struct ata_port *ap)
+@@ -4908,7 +4908,7 @@ int ata_sas_port_init(struct ata_port *ap)
if (rc)
return rc;
@@ -42164,7 +46673,7 @@ index 480fa6f..947067c 100644
if (vcc->pop) vcc->pop(vcc,skb);
else dev_kfree_skb(skb);
diff --git a/drivers/atm/eni.c b/drivers/atm/eni.c
-index 6339efd..2b441d5 100644
+index 40c2d56..58e2b4e 100644
--- a/drivers/atm/eni.c
+++ b/drivers/atm/eni.c
@@ -525,7 +525,7 @@ static int rx_aal0(struct atm_vcc *vcc)
@@ -42250,7 +46759,7 @@ index 85aaf22..8730d15 100644
default: /* Hmm. Haven't written the code to handle the others yet... -- REW */
printk (KERN_WARNING "Don't know what to do with RX status %x: %s.\n",
diff --git a/drivers/atm/fore200e.c b/drivers/atm/fore200e.c
-index 75dde90..4309ead 100644
+index 81aaa50..84b214b 100644
--- a/drivers/atm/fore200e.c
+++ b/drivers/atm/fore200e.c
@@ -932,9 +932,9 @@ fore200e_tx_irq(struct fore200e* fore200e)
@@ -42310,10 +46819,10 @@ index 75dde90..4309ead 100644
fore200e->tx_sat++;
DPRINTK(2, "tx queue of device %s is saturated, PDU dropped - heartbeat is %08x\n",
diff --git a/drivers/atm/he.c b/drivers/atm/he.c
-index 0f5cb37..c8bcdef 100644
+index 31b513a..940ef04 100644
--- a/drivers/atm/he.c
+++ b/drivers/atm/he.c
-@@ -1689,7 +1689,7 @@ he_service_rbrq(struct he_dev *he_dev, int group)
+@@ -1691,7 +1691,7 @@ he_service_rbrq(struct he_dev *he_dev, int group)
if (RBRQ_HBUF_ERR(he_dev->rbrq_head)) {
hprintk("HBUF_ERR! (cid 0x%x)\n", cid);
@@ -42322,7 +46831,7 @@ index 0f5cb37..c8bcdef 100644
goto return_host_buffers;
}
-@@ -1716,7 +1716,7 @@ he_service_rbrq(struct he_dev *he_dev, int group)
+@@ -1718,7 +1718,7 @@ he_service_rbrq(struct he_dev *he_dev, int group)
RBRQ_LEN_ERR(he_dev->rbrq_head)
? "LEN_ERR" : "",
vcc->vpi, vcc->vci);
@@ -42331,7 +46840,7 @@ index 0f5cb37..c8bcdef 100644
goto return_host_buffers;
}
-@@ -1768,7 +1768,7 @@ he_service_rbrq(struct he_dev *he_dev, int group)
+@@ -1770,7 +1770,7 @@ he_service_rbrq(struct he_dev *he_dev, int group)
vcc->push(vcc, skb);
spin_lock(&he_dev->global_lock);
@@ -42340,7 +46849,7 @@ index 0f5cb37..c8bcdef 100644
return_host_buffers:
++pdus_assembled;
-@@ -2094,7 +2094,7 @@ __enqueue_tpd(struct he_dev *he_dev, struct he_tpd *tpd, unsigned cid)
+@@ -2096,7 +2096,7 @@ __enqueue_tpd(struct he_dev *he_dev, struct he_tpd *tpd, unsigned cid)
tpd->vcc->pop(tpd->vcc, tpd->skb);
else
dev_kfree_skb_any(tpd->skb);
@@ -42349,7 +46858,7 @@ index 0f5cb37..c8bcdef 100644
}
dma_pool_free(he_dev->tpd_pool, tpd, TPD_ADDR(tpd->status));
return;
-@@ -2506,7 +2506,7 @@ he_send(struct atm_vcc *vcc, struct sk_buff *skb)
+@@ -2508,7 +2508,7 @@ he_send(struct atm_vcc *vcc, struct sk_buff *skb)
vcc->pop(vcc, skb);
else
dev_kfree_skb_any(skb);
@@ -42358,7 +46867,7 @@ index 0f5cb37..c8bcdef 100644
return -EINVAL;
}
-@@ -2517,7 +2517,7 @@ he_send(struct atm_vcc *vcc, struct sk_buff *skb)
+@@ -2519,7 +2519,7 @@ he_send(struct atm_vcc *vcc, struct sk_buff *skb)
vcc->pop(vcc, skb);
else
dev_kfree_skb_any(skb);
@@ -42367,7 +46876,7 @@ index 0f5cb37..c8bcdef 100644
return -EINVAL;
}
#endif
-@@ -2529,7 +2529,7 @@ he_send(struct atm_vcc *vcc, struct sk_buff *skb)
+@@ -2531,7 +2531,7 @@ he_send(struct atm_vcc *vcc, struct sk_buff *skb)
vcc->pop(vcc, skb);
else
dev_kfree_skb_any(skb);
@@ -42376,7 +46885,7 @@ index 0f5cb37..c8bcdef 100644
spin_unlock_irqrestore(&he_dev->global_lock, flags);
return -ENOMEM;
}
-@@ -2571,7 +2571,7 @@ he_send(struct atm_vcc *vcc, struct sk_buff *skb)
+@@ -2573,7 +2573,7 @@ he_send(struct atm_vcc *vcc, struct sk_buff *skb)
vcc->pop(vcc, skb);
else
dev_kfree_skb_any(skb);
@@ -42385,7 +46894,7 @@ index 0f5cb37..c8bcdef 100644
spin_unlock_irqrestore(&he_dev->global_lock, flags);
return -ENOMEM;
}
-@@ -2602,7 +2602,7 @@ he_send(struct atm_vcc *vcc, struct sk_buff *skb)
+@@ -2604,7 +2604,7 @@ he_send(struct atm_vcc *vcc, struct sk_buff *skb)
__enqueue_tpd(he_dev, tpd, cid);
spin_unlock_irqrestore(&he_dev->global_lock, flags);
@@ -42575,7 +47084,7 @@ index 074616b..d6b3d5f 100644
}
atomic_add(skb->truesize, &sk_atm(vcc)->sk_wmem_alloc);
diff --git a/drivers/atm/iphase.c b/drivers/atm/iphase.c
-index 809dd1e..ee10755 100644
+index b275676..948649d 100644
--- a/drivers/atm/iphase.c
+++ b/drivers/atm/iphase.c
@@ -1146,7 +1146,7 @@ static int rx_pkt(struct atm_dev *dev)
@@ -42623,7 +47132,7 @@ index 809dd1e..ee10755 100644
iadev->rx_pkt_cnt++;
}
INCR_DLE:
-@@ -2829,15 +2829,15 @@ static int ia_ioctl(struct atm_dev *dev, unsigned int cmd, void __user *arg)
+@@ -2834,15 +2834,15 @@ static int ia_ioctl(struct atm_dev *dev, unsigned int cmd, void __user *arg)
{
struct k_sonet_stats *stats;
stats = &PRIV(_ia_dev[board])->sonet_stats;
@@ -42648,7 +47157,7 @@ index 809dd1e..ee10755 100644
}
ia_cmds.status = 0;
break;
-@@ -2942,7 +2942,7 @@ static int ia_pkt_tx (struct atm_vcc *vcc, struct sk_buff *skb) {
+@@ -2947,7 +2947,7 @@ static int ia_pkt_tx (struct atm_vcc *vcc, struct sk_buff *skb) {
if ((desc == 0) || (desc > iadev->num_tx_desc))
{
IF_ERR(printk(DEV_LABEL "invalid desc for send: %d\n", desc);)
@@ -42657,7 +47166,7 @@ index 809dd1e..ee10755 100644
if (vcc->pop)
vcc->pop(vcc, skb);
else
-@@ -3047,14 +3047,14 @@ static int ia_pkt_tx (struct atm_vcc *vcc, struct sk_buff *skb) {
+@@ -3052,14 +3052,14 @@ static int ia_pkt_tx (struct atm_vcc *vcc, struct sk_buff *skb) {
ATM_DESC(skb) = vcc->vci;
skb_queue_tail(&iadev->tx_dma_q, skb);
@@ -42675,7 +47184,7 @@ index 809dd1e..ee10755 100644
vcc->tx_quota = vcc->tx_quota * 3 / 4;
printk("Tx1: vcc->tx_quota = %d \n", (u32)vcc->tx_quota );
diff --git a/drivers/atm/lanai.c b/drivers/atm/lanai.c
-index ce43ae3..969de38 100644
+index 445505d..10a1bd7 100644
--- a/drivers/atm/lanai.c
+++ b/drivers/atm/lanai.c
@@ -1295,7 +1295,7 @@ static void lanai_send_one_aal5(struct lanai_dev *lanai,
@@ -42733,10 +47242,10 @@ index ce43ae3..969de38 100644
lvcc->rx.buf.ptr = &lvcc->rx.buf.start[SERVICE_GET_END(s) * 4];
cardvcc_write(lvcc, SERVICE_GET_END(s), vcc_rxreadptr);
diff --git a/drivers/atm/nicstar.c b/drivers/atm/nicstar.c
-index 700ed15..a3a8a73 100644
+index c7296b5..7db29bf 100644
--- a/drivers/atm/nicstar.c
+++ b/drivers/atm/nicstar.c
-@@ -1633,7 +1633,7 @@ static int ns_send(struct atm_vcc *vcc, struct sk_buff *skb)
+@@ -1635,7 +1635,7 @@ static int ns_send(struct atm_vcc *vcc, struct sk_buff *skb)
if ((vc = (vc_map *) vcc->dev_data) == NULL) {
printk("nicstar%d: vcc->dev_data == NULL on ns_send().\n",
card->index);
@@ -42745,7 +47254,7 @@ index 700ed15..a3a8a73 100644
dev_kfree_skb_any(skb);
return -EINVAL;
}
-@@ -1641,7 +1641,7 @@ static int ns_send(struct atm_vcc *vcc, struct sk_buff *skb)
+@@ -1643,7 +1643,7 @@ static int ns_send(struct atm_vcc *vcc, struct sk_buff *skb)
if (!vc->tx) {
printk("nicstar%d: Trying to transmit on a non-tx VC.\n",
card->index);
@@ -42754,7 +47263,7 @@ index 700ed15..a3a8a73 100644
dev_kfree_skb_any(skb);
return -EINVAL;
}
-@@ -1649,14 +1649,14 @@ static int ns_send(struct atm_vcc *vcc, struct sk_buff *skb)
+@@ -1651,14 +1651,14 @@ static int ns_send(struct atm_vcc *vcc, struct sk_buff *skb)
if (vcc->qos.aal != ATM_AAL5 && vcc->qos.aal != ATM_AAL0) {
printk("nicstar%d: Only AAL0 and AAL5 are supported.\n",
card->index);
@@ -42771,7 +47280,7 @@ index 700ed15..a3a8a73 100644
dev_kfree_skb_any(skb);
return -EINVAL;
}
-@@ -1704,11 +1704,11 @@ static int ns_send(struct atm_vcc *vcc, struct sk_buff *skb)
+@@ -1706,11 +1706,11 @@ static int ns_send(struct atm_vcc *vcc, struct sk_buff *skb)
}
if (push_scqe(card, vc, scq, &scqe, skb) != 0) {
@@ -42785,7 +47294,7 @@ index 700ed15..a3a8a73 100644
return 0;
}
-@@ -2025,14 +2025,14 @@ static void dequeue_rx(ns_dev * card, ns_rsqe * rsqe)
+@@ -2028,14 +2028,14 @@ static void dequeue_rx(ns_dev * card, ns_rsqe * rsqe)
printk
("nicstar%d: Can't allocate buffers for aal0.\n",
card->index);
@@ -42802,7 +47311,7 @@ index 700ed15..a3a8a73 100644
dev_kfree_skb_any(sb);
break;
}
-@@ -2047,7 +2047,7 @@ static void dequeue_rx(ns_dev * card, ns_rsqe * rsqe)
+@@ -2050,7 +2050,7 @@ static void dequeue_rx(ns_dev * card, ns_rsqe * rsqe)
ATM_SKB(sb)->vcc = vcc;
__net_timestamp(sb);
vcc->push(vcc, sb);
@@ -42811,7 +47320,7 @@ index 700ed15..a3a8a73 100644
cell += ATM_CELL_PAYLOAD;
}
-@@ -2064,7 +2064,7 @@ static void dequeue_rx(ns_dev * card, ns_rsqe * rsqe)
+@@ -2067,7 +2067,7 @@ static void dequeue_rx(ns_dev * card, ns_rsqe * rsqe)
if (iovb == NULL) {
printk("nicstar%d: Out of iovec buffers.\n",
card->index);
@@ -42820,7 +47329,7 @@ index 700ed15..a3a8a73 100644
recycle_rx_buf(card, skb);
return;
}
-@@ -2088,7 +2088,7 @@ static void dequeue_rx(ns_dev * card, ns_rsqe * rsqe)
+@@ -2091,7 +2091,7 @@ static void dequeue_rx(ns_dev * card, ns_rsqe * rsqe)
small or large buffer itself. */
} else if (NS_PRV_IOVCNT(iovb) >= NS_MAX_IOVECS) {
printk("nicstar%d: received too big AAL5 SDU.\n", card->index);
@@ -42829,7 +47338,7 @@ index 700ed15..a3a8a73 100644
recycle_iovec_rx_bufs(card, (struct iovec *)iovb->data,
NS_MAX_IOVECS);
NS_PRV_IOVCNT(iovb) = 0;
-@@ -2108,7 +2108,7 @@ static void dequeue_rx(ns_dev * card, ns_rsqe * rsqe)
+@@ -2111,7 +2111,7 @@ static void dequeue_rx(ns_dev * card, ns_rsqe * rsqe)
("nicstar%d: Expected a small buffer, and this is not one.\n",
card->index);
which_list(card, skb);
@@ -42838,7 +47347,7 @@ index 700ed15..a3a8a73 100644
recycle_rx_buf(card, skb);
vc->rx_iov = NULL;
recycle_iov_buf(card, iovb);
-@@ -2121,7 +2121,7 @@ static void dequeue_rx(ns_dev * card, ns_rsqe * rsqe)
+@@ -2124,7 +2124,7 @@ static void dequeue_rx(ns_dev * card, ns_rsqe * rsqe)
("nicstar%d: Expected a large buffer, and this is not one.\n",
card->index);
which_list(card, skb);
@@ -42847,7 +47356,7 @@ index 700ed15..a3a8a73 100644
recycle_iovec_rx_bufs(card, (struct iovec *)iovb->data,
NS_PRV_IOVCNT(iovb));
vc->rx_iov = NULL;
-@@ -2144,7 +2144,7 @@ static void dequeue_rx(ns_dev * card, ns_rsqe * rsqe)
+@@ -2147,7 +2147,7 @@ static void dequeue_rx(ns_dev * card, ns_rsqe * rsqe)
printk(" - PDU size mismatch.\n");
else
printk(".\n");
@@ -42856,7 +47365,7 @@ index 700ed15..a3a8a73 100644
recycle_iovec_rx_bufs(card, (struct iovec *)iovb->data,
NS_PRV_IOVCNT(iovb));
vc->rx_iov = NULL;
-@@ -2158,14 +2158,14 @@ static void dequeue_rx(ns_dev * card, ns_rsqe * rsqe)
+@@ -2161,14 +2161,14 @@ static void dequeue_rx(ns_dev * card, ns_rsqe * rsqe)
/* skb points to a small buffer */
if (!atm_charge(vcc, skb->truesize)) {
push_rxbufs(card, skb);
@@ -42873,7 +47382,7 @@ index 700ed15..a3a8a73 100644
}
} else if (NS_PRV_IOVCNT(iovb) == 2) { /* One small plus one large buffer */
struct sk_buff *sb;
-@@ -2176,14 +2176,14 @@ static void dequeue_rx(ns_dev * card, ns_rsqe * rsqe)
+@@ -2179,14 +2179,14 @@ static void dequeue_rx(ns_dev * card, ns_rsqe * rsqe)
if (len <= NS_SMBUFSIZE) {
if (!atm_charge(vcc, sb->truesize)) {
push_rxbufs(card, sb);
@@ -42890,7 +47399,7 @@ index 700ed15..a3a8a73 100644
}
push_rxbufs(card, skb);
-@@ -2192,7 +2192,7 @@ static void dequeue_rx(ns_dev * card, ns_rsqe * rsqe)
+@@ -2195,7 +2195,7 @@ static void dequeue_rx(ns_dev * card, ns_rsqe * rsqe)
if (!atm_charge(vcc, skb->truesize)) {
push_rxbufs(card, skb);
@@ -42899,7 +47408,7 @@ index 700ed15..a3a8a73 100644
} else {
dequeue_lg_buf(card, skb);
skb_push(skb, NS_SMBUFSIZE);
-@@ -2202,7 +2202,7 @@ static void dequeue_rx(ns_dev * card, ns_rsqe * rsqe)
+@@ -2205,7 +2205,7 @@ static void dequeue_rx(ns_dev * card, ns_rsqe * rsqe)
ATM_SKB(skb)->vcc = vcc;
__net_timestamp(skb);
vcc->push(vcc, skb);
@@ -42908,7 +47417,7 @@ index 700ed15..a3a8a73 100644
}
push_rxbufs(card, sb);
-@@ -2223,7 +2223,7 @@ static void dequeue_rx(ns_dev * card, ns_rsqe * rsqe)
+@@ -2226,7 +2226,7 @@ static void dequeue_rx(ns_dev * card, ns_rsqe * rsqe)
printk
("nicstar%d: Out of huge buffers.\n",
card->index);
@@ -42917,7 +47426,7 @@ index 700ed15..a3a8a73 100644
recycle_iovec_rx_bufs(card,
(struct iovec *)
iovb->data,
-@@ -2274,7 +2274,7 @@ static void dequeue_rx(ns_dev * card, ns_rsqe * rsqe)
+@@ -2277,7 +2277,7 @@ static void dequeue_rx(ns_dev * card, ns_rsqe * rsqe)
card->hbpool.count++;
} else
dev_kfree_skb_any(hb);
@@ -42926,7 +47435,7 @@ index 700ed15..a3a8a73 100644
} else {
/* Copy the small buffer to the huge buffer */
sb = (struct sk_buff *)iov->iov_base;
-@@ -2308,7 +2308,7 @@ static void dequeue_rx(ns_dev * card, ns_rsqe * rsqe)
+@@ -2311,7 +2311,7 @@ static void dequeue_rx(ns_dev * card, ns_rsqe * rsqe)
ATM_SKB(hb)->vcc = vcc;
__net_timestamp(hb);
vcc->push(vcc, hb);
@@ -43021,7 +47530,7 @@ index 5120a96..e2572bd 100644
}
diff --git a/drivers/atm/zatm.c b/drivers/atm/zatm.c
-index cecfb94..87009ec 100644
+index d3dc954..d71820a 100644
--- a/drivers/atm/zatm.c
+++ b/drivers/atm/zatm.c
@@ -459,7 +459,7 @@ printk("dummy: 0x%08lx, 0x%08lx\n",dummy[0],dummy[1]);
@@ -43042,7 +47551,7 @@ index cecfb94..87009ec 100644
}
zout(pos & 0xffff,MTA(mbx));
#if 0 /* probably a stupid idea */
-@@ -733,7 +733,7 @@ if (*ZATM_PRV_DSC(skb) != (uPD98401_TXPD_V | uPD98401_TXPD_DP |
+@@ -734,7 +734,7 @@ if (*ZATM_PRV_DSC(skb) != (uPD98401_TXPD_V | uPD98401_TXPD_DP |
skb_queue_head(&zatm_vcc->backlog,skb);
break;
}
@@ -43130,7 +47639,7 @@ index 5548f96..3cbdfc1 100644
static ssize_t show_node_state(struct device *dev,
struct device_attribute *attr, char *buf)
diff --git a/drivers/base/platform-msi.c b/drivers/base/platform-msi.c
-index 279e539..4c9d7fb 100644
+index be6a599..d9985c26 100644
--- a/drivers/base/platform-msi.c
+++ b/drivers/base/platform-msi.c
@@ -24,6 +24,8 @@
@@ -43182,10 +47691,10 @@ index 279e539..4c9d7fb 100644
static void platform_msi_free_descs(struct device *dev, int base, int nvec)
diff --git a/drivers/base/power/domain.c b/drivers/base/power/domain.c
-index a1f2aff..58bf1bc 100644
+index e023066..a28458a 100644
--- a/drivers/base/power/domain.c
+++ b/drivers/base/power/domain.c
-@@ -1621,8 +1621,10 @@ int genpd_dev_pm_attach(struct device *dev)
+@@ -1895,8 +1895,10 @@ int genpd_dev_pm_attach(struct device *dev)
goto out;
}
@@ -43199,7 +47708,7 @@ index a1f2aff..58bf1bc 100644
mutex_lock(&pd->lock);
ret = genpd_poweron(pd, 0);
diff --git a/drivers/base/power/runtime.c b/drivers/base/power/runtime.c
-index 82a081e..b13ec3b 100644
+index 23f3b95..875d17f 100644
--- a/drivers/base/power/runtime.c
+++ b/drivers/base/power/runtime.c
@@ -16,35 +16,32 @@
@@ -43347,10 +47856,10 @@ index 62e4de2..38961cd 100644
split_counters(&cnt, &inpr);
diff --git a/drivers/base/regmap/regmap-debugfs.c b/drivers/base/regmap/regmap-debugfs.c
-index 1ee3d40..a41544a 100644
+index 36ce351..bfb18b9 100644
--- a/drivers/base/regmap/regmap-debugfs.c
+++ b/drivers/base/regmap/regmap-debugfs.c
-@@ -400,7 +400,7 @@ static const struct file_operations regmap_reg_ranges_fops = {
+@@ -410,7 +410,7 @@ static const struct file_operations regmap_reg_ranges_fops = {
static int regmap_access_show(struct seq_file *s, void *ignored)
{
struct regmap *map = s->private;
@@ -43360,10 +47869,10 @@ index 1ee3d40..a41544a 100644
reg_len = regmap_calc_reg_len(map->max_register);
diff --git a/drivers/base/regmap/regmap.c b/drivers/base/regmap/regmap.c
-index e964d06..633487f 100644
+index ae63bb0..6481579 100644
--- a/drivers/base/regmap/regmap.c
+++ b/drivers/base/regmap/regmap.c
-@@ -402,8 +402,8 @@ static void regmap_unlock_mutex(void *__map)
+@@ -425,8 +425,8 @@ static void regmap_unlock_mutex(void *__map)
mutex_unlock(&map->mutex);
}
@@ -43373,7 +47882,7 @@ index e964d06..633487f 100644
{
struct regmap *map = __map;
unsigned long flags;
-@@ -412,8 +412,8 @@ __acquires(&map->spinlock)
+@@ -435,8 +435,8 @@ __acquires(&map->spinlock)
map->spinlock_flags = flags;
}
@@ -43427,7 +47936,7 @@ index db9d6bb..9c5dc78 100644
/* Put job onto the completed Q */
addQ(&h->cmpQ, c);
-@@ -3453,17 +3453,17 @@ startio:
+@@ -3453,17 +3453,17 @@ static void do_cciss_request(struct request_queue *q)
static inline unsigned long get_next_completion(ctlr_info_t *h)
{
@@ -43475,7 +47984,7 @@ index db9d6bb..9c5dc78 100644
if (cciss_board_disabled(h)) {
dev_warn(&h->pdev->dev, "controller appears to be disabled\n");
-@@ -5058,7 +5058,7 @@ reinit_after_soft_reset:
+@@ -5058,7 +5058,7 @@ static int cciss_init_one(struct pci_dev *pdev, const struct pci_device_id *ent)
}
/* make sure the board interrupts are off */
@@ -43484,7 +47993,7 @@ index db9d6bb..9c5dc78 100644
rc = cciss_request_irq(h, do_cciss_msix_intr, do_cciss_intx);
if (rc)
goto clean2;
-@@ -5108,7 +5108,7 @@ reinit_after_soft_reset:
+@@ -5108,7 +5108,7 @@ static int cciss_init_one(struct pci_dev *pdev, const struct pci_device_id *ent)
* fake ones to scoop up any residual completions.
*/
spin_lock_irqsave(&h->lock, flags);
@@ -43493,7 +48002,7 @@ index db9d6bb..9c5dc78 100644
spin_unlock_irqrestore(&h->lock, flags);
free_irq(h->intr[h->intr_mode], h);
rc = cciss_request_irq(h, cciss_msix_discard_completions,
-@@ -5128,9 +5128,9 @@ reinit_after_soft_reset:
+@@ -5128,9 +5128,9 @@ static int cciss_init_one(struct pci_dev *pdev, const struct pci_device_id *ent)
dev_info(&h->pdev->dev, "Board READY.\n");
dev_info(&h->pdev->dev,
"Waiting for stale completions to drain.\n");
@@ -43505,7 +48014,7 @@ index db9d6bb..9c5dc78 100644
rc = controller_reset_failed(h->cfgtable);
if (rc)
-@@ -5153,7 +5153,7 @@ reinit_after_soft_reset:
+@@ -5153,7 +5153,7 @@ static int cciss_init_one(struct pci_dev *pdev, const struct pci_device_id *ent)
cciss_scsi_setup(h);
/* Turn the interrupts on so we can service requests */
@@ -44141,10 +48650,10 @@ index 90fa4ac..8328db6 100644
if (ti.nwa_v) {
pd->nwa = be32_to_cpu(ti.next_writable);
diff --git a/drivers/block/rbd.c b/drivers/block/rbd.c
-index 6c6519f..f5fff92 100644
+index 7b274ff..b7e6d24 100644
--- a/drivers/block/rbd.c
+++ b/drivers/block/rbd.c
-@@ -64,7 +64,7 @@
+@@ -65,7 +65,7 @@
* If the counter is already at its maximum value returns
* -EINVAL without updating it.
*/
@@ -44224,10 +48733,10 @@ index e5565fb..71be10b4 100644
+ .command_completed = smart1_completed,
};
diff --git a/drivers/bluetooth/btwilink.c b/drivers/bluetooth/btwilink.c
-index 485281b..ab20198 100644
+index b6bb58c..7d47151 100644
--- a/drivers/bluetooth/btwilink.c
+++ b/drivers/bluetooth/btwilink.c
-@@ -275,7 +275,7 @@ static int ti_st_send_frame(struct hci_dev *hdev, struct sk_buff *skb)
+@@ -277,7 +277,7 @@ static int ti_st_send_frame(struct hci_dev *hdev, struct sk_buff *skb)
static int bt_ti_probe(struct platform_device *pdev)
{
@@ -44237,10 +48746,10 @@ index 485281b..ab20198 100644
int err;
diff --git a/drivers/bus/arm-cci.c b/drivers/bus/arm-cci.c
-index ffa7c9d..a68b53e 100644
+index 8900823..f694867 100644
--- a/drivers/bus/arm-cci.c
+++ b/drivers/bus/arm-cci.c
-@@ -1475,8 +1475,10 @@ static int cci_pmu_init(struct cci_pmu *cci_pmu, struct platform_device *pdev)
+@@ -1472,8 +1472,10 @@ static int cci_pmu_init(struct cci_pmu *cci_pmu, struct platform_device *pdev)
char *name = model->name;
u32 num_cntrs;
@@ -44403,7 +48912,7 @@ index be54e53..50272fe 100644
{
struct hpet_timer __iomem *timer;
diff --git a/drivers/char/ipmi/ipmi_msghandler.c b/drivers/char/ipmi/ipmi_msghandler.c
-index d8619998..445da20 100644
+index fcdd886..c7f0762 100644
--- a/drivers/char/ipmi/ipmi_msghandler.c
+++ b/drivers/char/ipmi/ipmi_msghandler.c
@@ -436,7 +436,7 @@ struct ipmi_smi {
@@ -44546,7 +49055,7 @@ index 5673fff..3ab2908 100644
if (ssif_info->supports_pec)
ssif_info->client->flags |= I2C_CLIENT_PEC;
diff --git a/drivers/char/mem.c b/drivers/char/mem.c
-index a33163d..43c1578 100644
+index 6d9cc2d..8bf97d6 100644
--- a/drivers/char/mem.c
+++ b/drivers/char/mem.c
@@ -18,6 +18,7 @@
@@ -44672,9 +49181,9 @@ index a33163d..43c1578 100644
while (low_count > 0) {
sz = size_inside_page(p, low_count);
-@@ -410,14 +444,18 @@ static ssize_t read_kmem(struct file *file, char __user *buf,
- */
- kbuf = xlate_dev_kmem_ptr((void *)p);
+@@ -412,14 +446,18 @@ static ssize_t read_kmem(struct file *file, char __user *buf,
+ if (!virt_addr_valid(kbuf))
+ return -ENXIO;
- if (copy_to_user(buf, kbuf, sz))
+ if (probe_kernel_read(temp, kbuf, sz) || copy_to_user(buf, temp, sz)) {
@@ -44692,7 +49201,7 @@ index a33163d..43c1578 100644
}
if (count > 0) {
-@@ -822,6 +860,9 @@ static const struct memdev {
+@@ -826,6 +864,9 @@ static const struct memdev {
#ifdef CONFIG_PRINTK
[11] = { "kmsg", 0644, &kmsg_fops, 0 },
#endif
@@ -44702,7 +49211,7 @@ index a33163d..43c1578 100644
};
static int memory_open(struct inode *inode, struct file *filp)
-@@ -883,7 +924,7 @@ static int __init chr_dev_init(void)
+@@ -887,7 +928,7 @@ static int __init chr_dev_init(void)
continue;
device_create(mem_class, NULL, MKDEV(MEM_MAJOR, minor),
@@ -44797,7 +49306,7 @@ index d28922d..3c343d6 100644
if (cmd != SIOCWANDEV)
diff --git a/drivers/char/random.c b/drivers/char/random.c
-index 3efb3bf0..2541398 100644
+index d6876d5..a326099 100644
--- a/drivers/char/random.c
+++ b/drivers/char/random.c
@@ -292,9 +292,6 @@
@@ -44810,18 +49319,7 @@ index 3efb3bf0..2541398 100644
*/
#define ENTROPY_SHIFT 3
#define ENTROPY_BITS(r) ((r)->entropy_count >> ENTROPY_SHIFT)
-@@ -479,8 +476,8 @@ static ssize_t _extract_entropy(struct entropy_store *r, void *buf,
-
- static void crng_reseed(struct crng_state *crng, struct entropy_store *r);
- static void push_to_pool(struct work_struct *work);
--static __u32 input_pool_data[INPUT_POOL_WORDS];
--static __u32 blocking_pool_data[OUTPUT_POOL_WORDS];
-+static __u32 input_pool_data[INPUT_POOL_WORDS] __latent_entropy;
-+static __u32 blocking_pool_data[OUTPUT_POOL_WORDS] __latent_entropy;
-
- static struct entropy_store input_pool = {
- .poolinfo = &poolinfo_table[0],
-@@ -680,7 +677,7 @@ retry:
+@@ -680,7 +677,7 @@ static void credit_entropy_bits(struct entropy_store *r, int nbits)
/* The +2 corresponds to the /4 in the denominator */
do {
@@ -44858,7 +49356,7 @@ index 3efb3bf0..2541398 100644
entropy_count = *(int *)table->data >> ENTROPY_SHIFT;
diff --git a/drivers/char/sonypi.c b/drivers/char/sonypi.c
-index e496dae..3db53b6 100644
+index 719c5b4..06ef852 100644
--- a/drivers/char/sonypi.c
+++ b/drivers/char/sonypi.c
@@ -54,6 +54,7 @@
@@ -44912,7 +49410,7 @@ diff --git a/drivers/char/tpm/tpm-chip.c b/drivers/char/tpm/tpm-chip.c
index e595013..9653af2 100644
--- a/drivers/char/tpm/tpm-chip.c
+++ b/drivers/char/tpm/tpm-chip.c
-@@ -196,6 +196,11 @@ out:
+@@ -196,6 +196,11 @@ struct tpm_chip *tpm_chip_alloc(struct device *dev,
}
EXPORT_SYMBOL_GPL(tpm_chip_alloc);
@@ -44977,10 +49475,10 @@ index e722886..78a48b9 100644
(*pos)++;
diff --git a/drivers/char/virtio_console.c b/drivers/char/virtio_console.c
-index 4aae0d2..3d84db8 100644
+index 5649234..34b55b7 100644
--- a/drivers/char/virtio_console.c
+++ b/drivers/char/virtio_console.c
-@@ -692,11 +692,11 @@ static ssize_t fill_readbuf(struct port *port, char __user *out_buf,
+@@ -691,11 +691,11 @@ static ssize_t fill_readbuf(struct port *port, char __user *out_buf,
if (to_user) {
ssize_t ret;
@@ -44994,7 +49492,7 @@ index 4aae0d2..3d84db8 100644
out_count);
}
-@@ -1171,7 +1171,7 @@ static int get_chars(u32 vtermno, char *buf, int count)
+@@ -1170,7 +1170,7 @@ static int get_chars(u32 vtermno, char *buf, int count)
/* If we don't have an input queue yet, we can't get input. */
BUG_ON(!port->in_vq);
@@ -45004,23 +49502,23 @@ index 4aae0d2..3d84db8 100644
static void resize_console(struct port *port)
diff --git a/drivers/clk/bcm/clk-bcm2835.c b/drivers/clk/bcm/clk-bcm2835.c
-index 3250694..ab0e01e 100644
+index 3bbd2a5..69b87bb 100644
--- a/drivers/clk/bcm/clk-bcm2835.c
+++ b/drivers/clk/bcm/clk-bcm2835.c
@@ -1147,8 +1147,9 @@ static const struct clk_ops bcm2835_vpu_clock_clk_ops = {
};
- static struct clk *bcm2835_register_pll(struct bcm2835_cprman *cprman,
-- const struct bcm2835_pll_data *data)
-+ const void *_data)
+ static struct clk_hw *bcm2835_register_pll(struct bcm2835_cprman *cprman,
+- const struct bcm2835_pll_data *data)
++ const void *_data)
{
+ const struct bcm2835_pll_data *data = _data;
struct bcm2835_pll *pll;
struct clk_init_data init;
+ int ret;
+@@ -1178,8 +1179,9 @@ static struct clk_hw *bcm2835_register_pll(struct bcm2835_cprman *cprman,
-@@ -1174,8 +1175,9 @@ static struct clk *bcm2835_register_pll(struct bcm2835_cprman *cprman,
-
- static struct clk *
+ static struct clk_hw *
bcm2835_register_pll_divider(struct bcm2835_cprman *cprman,
- const struct bcm2835_pll_divider_data *data)
+ const void *_data)
@@ -45028,11 +49526,11 @@ index 3250694..ab0e01e 100644
+ const struct bcm2835_pll_divider_data *data = _data;
struct bcm2835_pll_divider *divider;
struct clk_init_data init;
- struct clk *clk;
-@@ -1233,8 +1235,9 @@ bcm2835_register_pll_divider(struct bcm2835_cprman *cprman,
+ const char *divider_name;
+@@ -1237,8 +1239,9 @@ bcm2835_register_pll_divider(struct bcm2835_cprman *cprman,
}
- static struct clk *bcm2835_register_clock(struct bcm2835_cprman *cprman,
+ static struct clk_hw *bcm2835_register_clock(struct bcm2835_cprman *cprman,
- const struct bcm2835_clock_data *data)
+ const void *_data)
{
@@ -45040,19 +49538,28 @@ index 3250694..ab0e01e 100644
struct bcm2835_clock *clock;
struct clk_init_data init;
const char *parents[1 << CM_SRC_BITS];
-@@ -1276,8 +1279,10 @@ static struct clk *bcm2835_register_clock(struct bcm2835_cprman *cprman,
+@@ -1289,13 +1292,17 @@ static struct clk_hw *bcm2835_register_clock(struct bcm2835_cprman *cprman,
+ return &clock->hw;
}
- static struct clk *bcm2835_register_gate(struct bcm2835_cprman *cprman,
+-static struct clk *bcm2835_register_gate(struct bcm2835_cprman *cprman,
- const struct bcm2835_gate_data *data)
++static struct clk_hw *bcm2835_register_gate(struct bcm2835_cprman *cprman,
+ const void *_data)
{
+- return clk_register_gate(cprman->dev, data->name, data->parent,
+ const struct bcm2835_gate_data *data = _data;
++ struct clk *clk;
+
- return clk_register_gate(cprman->dev, data->name, data->parent,
++ clk = clk_register_gate(cprman->dev, data->name, data->parent,
CLK_IGNORE_UNUSED | CLK_SET_RATE_GATE,
cprman->regs + data->ctl_reg,
-@@ -1292,8 +1297,7 @@ struct bcm2835_clk_desc {
+ CM_GATE_BIT, 0, &cprman->regs_lock);
++ return __clk_get_hw(clk);
+ }
+
+ typedef struct clk_hw *(*bcm2835_clk_register)(struct bcm2835_cprman *cprman,
+@@ -1306,8 +1313,7 @@ struct bcm2835_clk_desc {
};
/* assignment helper macros for different clock types */
@@ -45293,22 +49800,25 @@ index 297e912..d5661fb 100644
cpu_notifier_register_begin();
diff --git a/drivers/cpufreq/cpufreq-dt.c b/drivers/cpufreq/cpufreq-dt.c
-index 204cd52..babd45c 100644
+index 4d3ec92..cf501fc 100644
--- a/drivers/cpufreq/cpufreq-dt.c
+++ b/drivers/cpufreq/cpufreq-dt.c
-@@ -370,7 +370,9 @@ static int dt_cpufreq_probe(struct platform_device *pdev)
+@@ -373,8 +373,11 @@ static int dt_cpufreq_probe(struct platform_device *pdev)
if (ret)
return ret;
-- dt_cpufreq_driver.driver_data = dev_get_platdata(&pdev->dev);
-+ pax_open_kernel();
-+ const_cast(dt_cpufreq_driver.driver_data) = dev_get_platdata(&pdev->dev);
-+ pax_close_kernel();
+- if (data && data->have_governor_per_policy)
+- dt_cpufreq_driver.flags |= CPUFREQ_HAVE_GOVERNOR_PER_POLICY;
++ if (data && data->have_governor_per_policy) {
++ pax_open_kernel();
++ const_cast(dt_cpufreq_driver.flags) |= CPUFREQ_HAVE_GOVERNOR_PER_POLICY;
++ pax_close_kernel();
++ }
ret = cpufreq_register_driver(&dt_cpufreq_driver);
if (ret)
diff --git a/drivers/cpufreq/cpufreq.c b/drivers/cpufreq/cpufreq.c
-index 3dd4884..6249a29 100644
+index 6e6c1fb..ccc5cd2 100644
--- a/drivers/cpufreq/cpufreq.c
+++ b/drivers/cpufreq/cpufreq.c
@@ -528,12 +528,12 @@ EXPORT_SYMBOL_GPL(cpufreq_driver_resolve_freq);
@@ -45326,7 +49836,7 @@ index 3dd4884..6249a29 100644
const char *buf, size_t count)
{
int ret, enable;
-@@ -2150,7 +2150,7 @@ void cpufreq_unregister_governor(struct cpufreq_governor *governor)
+@@ -2114,7 +2114,7 @@ void cpufreq_unregister_governor(struct cpufreq_governor *governor)
read_unlock_irqrestore(&cpufreq_driver_lock, flags);
mutex_lock(&cpufreq_governor_mutex);
@@ -45335,16 +49845,7 @@ index 3dd4884..6249a29 100644
mutex_unlock(&cpufreq_governor_mutex);
return;
}
-@@ -2350,7 +2350,7 @@ static int cpufreq_cpu_callback(struct notifier_block *nfb,
- return NOTIFY_OK;
- }
-
--static struct notifier_block __refdata cpufreq_cpu_notifier = {
-+static struct notifier_block cpufreq_cpu_notifier = {
- .notifier_call = cpufreq_cpu_callback,
- };
-
-@@ -2392,13 +2392,17 @@ int cpufreq_boost_trigger_state(int state)
+@@ -2334,13 +2334,17 @@ int cpufreq_boost_trigger_state(int state)
return 0;
write_lock_irqsave(&cpufreq_driver_lock, flags);
@@ -45364,7 +49865,7 @@ index 3dd4884..6249a29 100644
write_unlock_irqrestore(&cpufreq_driver_lock, flags);
pr_err("%s: Cannot %s BOOST\n",
-@@ -2439,7 +2443,9 @@ int cpufreq_enable_boost_support(void)
+@@ -2381,7 +2385,9 @@ int cpufreq_enable_boost_support(void)
if (cpufreq_boost_supported())
return 0;
@@ -45375,7 +49876,7 @@ index 3dd4884..6249a29 100644
/* This will get removed on driver unregister */
return create_boost_sysfs_file();
-@@ -2496,8 +2502,11 @@ int cpufreq_register_driver(struct cpufreq_driver *driver_data)
+@@ -2439,8 +2445,11 @@ int cpufreq_register_driver(struct cpufreq_driver *driver_data)
cpufreq_driver = driver_data;
write_unlock_irqrestore(&cpufreq_driver_lock, flags);
@@ -45437,10 +49938,10 @@ index 3a1f49f..42a478e 100644
}
EXPORT_SYMBOL_GPL(od_unregister_powersave_bias_handler);
diff --git a/drivers/cpufreq/intel_pstate.c b/drivers/cpufreq/intel_pstate.c
-index 8c347f5..cb2b54b 100644
+index 4737520..4cafa68 100644
--- a/drivers/cpufreq/intel_pstate.c
+++ b/drivers/cpufreq/intel_pstate.c
-@@ -275,13 +275,13 @@ struct pstate_funcs {
+@@ -283,13 +283,13 @@ struct pstate_funcs {
struct cpu_defaults {
struct pstate_adjust_policy pid_policy;
struct pstate_funcs funcs;
@@ -45456,7 +49957,7 @@ index 8c347f5..cb2b54b 100644
static int hwp_active __read_mostly;
#ifdef CONFIG_ACPI
-@@ -650,13 +650,13 @@ static void __init intel_pstate_debug_expose_params(void)
+@@ -658,13 +658,13 @@ static void __init intel_pstate_debug_expose_params(void)
/************************** sysfs begin ************************/
#define show_one(file_name, object) \
static ssize_t show_##file_name \
@@ -45472,7 +49973,7 @@ index 8c347f5..cb2b54b 100644
{
struct cpudata *cpu;
int total, no_turbo, turbo_pct;
-@@ -672,7 +672,7 @@ static ssize_t show_turbo_pct(struct kobject *kobj,
+@@ -680,7 +680,7 @@ static ssize_t show_turbo_pct(struct kobject *kobj,
}
static ssize_t show_num_pstates(struct kobject *kobj,
@@ -45481,7 +49982,7 @@ index 8c347f5..cb2b54b 100644
{
struct cpudata *cpu;
int total;
-@@ -683,7 +683,7 @@ static ssize_t show_num_pstates(struct kobject *kobj,
+@@ -691,7 +691,7 @@ static ssize_t show_num_pstates(struct kobject *kobj,
}
static ssize_t show_no_turbo(struct kobject *kobj,
@@ -45490,7 +49991,7 @@ index 8c347f5..cb2b54b 100644
{
ssize_t ret;
-@@ -696,7 +696,7 @@ static ssize_t show_no_turbo(struct kobject *kobj,
+@@ -704,7 +704,7 @@ static ssize_t show_no_turbo(struct kobject *kobj,
return ret;
}
@@ -45499,7 +50000,7 @@ index 8c347f5..cb2b54b 100644
const char *buf, size_t count)
{
unsigned int input;
-@@ -720,7 +720,7 @@ static ssize_t store_no_turbo(struct kobject *a, struct attribute *b,
+@@ -728,7 +728,7 @@ static ssize_t store_no_turbo(struct kobject *a, struct attribute *b,
return count;
}
@@ -45508,7 +50009,7 @@ index 8c347f5..cb2b54b 100644
const char *buf, size_t count)
{
unsigned int input;
-@@ -744,7 +744,7 @@ static ssize_t store_max_perf_pct(struct kobject *a, struct attribute *b,
+@@ -752,7 +752,7 @@ static ssize_t store_max_perf_pct(struct kobject *a, struct attribute *b,
return count;
}
@@ -45517,7 +50018,7 @@ index 8c347f5..cb2b54b 100644
const char *buf, size_t count)
{
unsigned int input;
-@@ -1143,7 +1143,7 @@ static void intel_pstate_set_pstate(struct cpudata *cpu, int pstate)
+@@ -1154,7 +1154,7 @@ static void intel_pstate_set_pstate(struct cpudata *cpu, int pstate)
* right CPU.
*/
wrmsrl_on_cpu(cpu->cpu, MSR_IA32_PERF_CTL,
@@ -45526,7 +50027,7 @@ index 8c347f5..cb2b54b 100644
}
static void intel_pstate_set_min_pstate(struct cpudata *cpu)
-@@ -1162,14 +1162,14 @@ static void intel_pstate_max_within_limits(struct cpudata *cpu)
+@@ -1173,14 +1173,14 @@ static void intel_pstate_max_within_limits(struct cpudata *cpu)
static void intel_pstate_get_cpu_pstates(struct cpudata *cpu)
{
@@ -45548,7 +50049,7 @@ index 8c347f5..cb2b54b 100644
intel_pstate_set_min_pstate(cpu);
}
-@@ -1315,7 +1315,7 @@ static inline void intel_pstate_update_pstate(struct cpudata *cpu, int pstate)
+@@ -1329,7 +1329,7 @@ static inline void intel_pstate_update_pstate(struct cpudata *cpu, int pstate)
return;
cpu->pstate.current_pstate = pstate;
@@ -45557,16 +50058,16 @@ index 8c347f5..cb2b54b 100644
}
static inline void intel_pstate_adjust_busy_pstate(struct cpudata *cpu)
-@@ -1325,7 +1325,7 @@ static inline void intel_pstate_adjust_busy_pstate(struct cpudata *cpu)
-
+@@ -1340,7 +1340,7 @@ static inline void intel_pstate_adjust_busy_pstate(struct cpudata *cpu)
from = cpu->pstate.current_pstate;
-- target_pstate = pstate_funcs.get_target_pstate(cpu);
-+ target_pstate = pstate_funcs->get_target_pstate(cpu);
+ target_pstate = cpu->policy == CPUFREQ_POLICY_PERFORMANCE ?
+- cpu->pstate.turbo_pstate : pstate_funcs.get_target_pstate(cpu);
++ cpu->pstate.turbo_pstate : pstate_funcs->get_target_pstate(cpu);
intel_pstate_update_pstate(cpu, target_pstate);
-@@ -1622,15 +1622,15 @@ static unsigned int force_load __initdata;
+@@ -1653,15 +1653,15 @@ static unsigned int force_load __initdata;
static int __init intel_pstate_msrs_not_valid(void)
{
@@ -45586,7 +50087,7 @@ index 8c347f5..cb2b54b 100644
{
pid_params.sample_rate_ms = policy->sample_rate_ms;
pid_params.sample_rate_ns = pid_params.sample_rate_ms * NSEC_PER_MSEC;
-@@ -1643,15 +1643,7 @@ static void __init copy_pid_params(struct pstate_adjust_policy *policy)
+@@ -1674,15 +1674,7 @@ static void __init copy_pid_params(struct pstate_adjust_policy *policy)
static void __init copy_cpu_funcs(struct pstate_funcs *funcs)
{
@@ -45764,10 +50265,10 @@ index 41bc539..e46a74d 100644
if (policy->cpu != 0)
return -ENODEV;
diff --git a/drivers/cpuidle/driver.c b/drivers/cpuidle/driver.c
-index 389ade4..e328b5ce 100644
+index ab264d3..6a13e87 100644
--- a/drivers/cpuidle/driver.c
+++ b/drivers/cpuidle/driver.c
-@@ -193,7 +193,7 @@ static int poll_idle(struct cpuidle_device *dev,
+@@ -194,7 +194,7 @@ static int __cpuidle poll_idle(struct cpuidle_device *dev,
static void poll_idle_init(struct cpuidle_driver *drv)
{
@@ -45848,7 +50349,7 @@ index 832a2c3..1794080 100644
.name = "cpuidle",
};
diff --git a/drivers/crypto/hifn_795x.c b/drivers/crypto/hifn_795x.c
-index eee2c7e..268aa3e 100644
+index e09d405..f86cbac 100644
--- a/drivers/crypto/hifn_795x.c
+++ b/drivers/crypto/hifn_795x.c
@@ -37,7 +37,7 @@ module_param_string(hifn_pll_ref, hifn_pll_ref, sizeof(hifn_pll_ref), 0444);
@@ -45860,7 +50361,7 @@ index eee2c7e..268aa3e 100644
#define ACRYPTO_OP_DECRYPT 0
#define ACRYPTO_OP_ENCRYPT 1
-@@ -2483,7 +2483,7 @@ static int hifn_probe(struct pci_dev *pdev, const struct pci_device_id *id)
+@@ -2475,7 +2475,7 @@ static int hifn_probe(struct pci_dev *pdev, const struct pci_device_id *id)
goto err_out_disable_pci_device;
snprintf(name, sizeof(name), "hifn%d",
@@ -45920,7 +50421,7 @@ index bf99e11..a44361c 100644
struct adf_hw_device_data *hw_data = accel_dev->hw_device;
struct adf_bar *pmisc =
&GET_BARS(accel_dev)[hw_data->get_misc_bar_id(hw_data)];
-@@ -183,7 +183,7 @@ err:
+@@ -183,7 +183,7 @@ static void adf_pf2vf_bh_handler(void *data)
static int adf_setup_pf2vf_bh(struct adf_accel_dev *accel_dev)
{
tasklet_init(&accel_dev->vf.pf2vf_bh_tasklet,
@@ -45930,10 +50431,10 @@ index bf99e11..a44361c 100644
mutex_init(&accel_dev->vf.vf2pf_lock);
return 0;
diff --git a/drivers/devfreq/devfreq.c b/drivers/devfreq/devfreq.c
-index 478006b..fd0efda 100644
+index 712592c..d7a18b2 100644
--- a/drivers/devfreq/devfreq.c
+++ b/drivers/devfreq/devfreq.c
-@@ -802,7 +802,7 @@ int devfreq_add_governor(struct devfreq_governor *governor)
+@@ -813,7 +813,7 @@ int devfreq_add_governor(struct devfreq_governor *governor)
goto err_out;
}
@@ -45942,7 +50443,7 @@ index 478006b..fd0efda 100644
list_for_each_entry(devfreq, &devfreq_list, node) {
int ret = 0;
-@@ -890,7 +890,7 @@ int devfreq_remove_governor(struct devfreq_governor *governor)
+@@ -901,7 +901,7 @@ int devfreq_remove_governor(struct devfreq_governor *governor)
}
}
@@ -45965,10 +50466,10 @@ index 9ef46e2..775fc75 100644
if (!parent)
diff --git a/drivers/dma/qcom/hidma.c b/drivers/dma/qcom/hidma.c
-index b2374cd..4f1e32c 100644
+index e244e10..b7799ec 100644
--- a/drivers/dma/qcom/hidma.c
+++ b/drivers/dma/qcom/hidma.c
-@@ -547,7 +547,7 @@ static ssize_t hidma_show_values(struct device *dev,
+@@ -570,7 +570,7 @@ static ssize_t hidma_show_values(struct device *dev,
static int hidma_create_sysfs_entry(struct hidma_dev *dev, char *name,
int mode)
{
@@ -45991,7 +50492,7 @@ index d61f106..a23baa3 100644
attrs = devm_kmalloc(&dev->pdev->dev,
diff --git a/drivers/dma/sh/shdma-base.c b/drivers/dma/sh/shdma-base.c
-index 10fcaba..326f709 100644
+index 12fa48e..19d6a7c 100644
--- a/drivers/dma/sh/shdma-base.c
+++ b/drivers/dma/sh/shdma-base.c
@@ -227,8 +227,8 @@ static int shdma_alloc_chan_resources(struct dma_chan *chan)
@@ -46416,10 +50917,10 @@ index d425374..1da1716 100644
EXPORT_SYMBOL_GPL(cper_next_record_id);
diff --git a/drivers/firmware/efi/efi.c b/drivers/firmware/efi/efi.c
-index 7dd2e2d..15990ac 100644
+index a4944e2..a5e9cad 100644
--- a/drivers/firmware/efi/efi.c
+++ b/drivers/firmware/efi/efi.c
-@@ -180,15 +180,17 @@ static struct attribute_group efi_subsys_attr_group = {
+@@ -181,15 +181,17 @@ static struct attribute_group efi_subsys_attr_group = {
};
static struct efivars generic_efivars;
@@ -46444,10 +50945,10 @@ index 7dd2e2d..15990ac 100644
return efivars_register(&generic_efivars, &generic_ops, efi_kobj);
}
diff --git a/drivers/firmware/efi/efivars.c b/drivers/firmware/efi/efivars.c
-index 116b244..b16d9f2 100644
+index 3e626fd..1ccae43 100644
--- a/drivers/firmware/efi/efivars.c
+++ b/drivers/firmware/efi/efivars.c
-@@ -583,7 +583,7 @@ efivar_create_sysfs_entry(struct efivar_entry *new_var)
+@@ -587,7 +587,7 @@ efivar_create_sysfs_entry(struct efivar_entry *new_var)
static int
create_efivars_bin_attributes(void)
{
@@ -46457,23 +50958,23 @@ index 116b244..b16d9f2 100644
/* new_var */
diff --git a/drivers/firmware/efi/libstub/Makefile b/drivers/firmware/efi/libstub/Makefile
-index c069451..fca41b6 100644
+index 5e23e2d..419407a 100644
--- a/drivers/firmware/efi/libstub/Makefile
+++ b/drivers/firmware/efi/libstub/Makefile
-@@ -20,6 +20,8 @@ KBUILD_CFLAGS := $(cflags-y) -DDISABLE_BRANCH_PROFILING \
- $(call cc-option,-ffreestanding) \
- $(call cc-option,-fno-stack-protector)
+@@ -28,6 +28,8 @@ OBJECT_FILES_NON_STANDARD := y
+ # Prevents link failures: __sanitizer_cov_trace_pc() is not linked in.
+ KCOV_INSTRUMENT := n
-+KBUILD_CFLAGS := $(filter-out $(GCC_PLUGINS_CFLAGS),$(KBUILD_CFLAGS))
++GCC_PLUGINS := n
+
- GCOV_PROFILE := n
- KASAN_SANITIZE := n
- UBSAN_SANITIZE := n
+ lib-y := efi-stub-helper.o gop.o
+
+ # include the stub's generic dependencies from lib/ when building for ARM/arm64
diff --git a/drivers/firmware/efi/runtime-map.c b/drivers/firmware/efi/runtime-map.c
-index 5c55227..97f4978 100644
+index 8e64b77..bc1695a 100644
--- a/drivers/firmware/efi/runtime-map.c
+++ b/drivers/firmware/efi/runtime-map.c
-@@ -97,7 +97,7 @@ static void map_release(struct kobject *kobj)
+@@ -93,7 +93,7 @@ static void map_release(struct kobject *kobj)
kfree(entry);
}
@@ -46483,7 +50984,7 @@ index 5c55227..97f4978 100644
.default_attrs = def_attrs,
.release = map_release,
diff --git a/drivers/firmware/google/gsmi.c b/drivers/firmware/google/gsmi.c
-index f1ab05e..ab51228 100644
+index c463871..c8f169b 100644
--- a/drivers/firmware/google/gsmi.c
+++ b/drivers/firmware/google/gsmi.c
@@ -709,7 +709,7 @@ static u32 __init hash_oem_table_id(char s[8])
@@ -46598,10 +51099,18 @@ index 4f6d643..eb4655c 100644
static struct {
spinlock_t lock;
diff --git a/drivers/gpio/gpio-mpc8xxx.c b/drivers/gpio/gpio-mpc8xxx.c
-index 793518a..80ebce3 100644
+index 793518a..59c5a05 100644
--- a/drivers/gpio/gpio-mpc8xxx.c
+++ b/drivers/gpio/gpio-mpc8xxx.c
-@@ -226,7 +226,7 @@ static int mpc512x_irq_set_type(struct irq_data *d, unsigned int flow_type)
+@@ -21,6 +21,7 @@
+ #include <linux/slab.h>
+ #include <linux/irq.h>
+ #include <linux/gpio/driver.h>
++#include <asm/pgtable.h>
+
+ #define MPC8XXX_GPIO_PINS 32
+
+@@ -226,7 +227,7 @@ static int mpc512x_irq_set_type(struct irq_data *d, unsigned int flow_type)
return 0;
}
@@ -46610,7 +51119,7 @@ index 793518a..80ebce3 100644
.name = "mpc8xxx-gpio",
.irq_unmask = mpc8xxx_irq_unmask,
.irq_mask = mpc8xxx_irq_mask,
-@@ -337,7 +337,9 @@ static int mpc8xxx_probe(struct platform_device *pdev)
+@@ -337,7 +338,9 @@ static int mpc8xxx_probe(struct platform_device *pdev)
* It's assumed that only a single type of gpio controller is available
* on the current machine, so overwriting global data is fine.
*/
@@ -46644,10 +51153,10 @@ index b98ede7..c83e860 100644
match = of_match_device(of_match_ptr(omap_gpio_match), dev);
diff --git a/drivers/gpio/gpio-rcar.c b/drivers/gpio/gpio-rcar.c
-index b96e0b4..c1e1b16 100644
+index 2be48f5..594e8fb 100644
--- a/drivers/gpio/gpio-rcar.c
+++ b/drivers/gpio/gpio-rcar.c
-@@ -391,7 +391,7 @@ static int gpio_rcar_probe(struct platform_device *pdev)
+@@ -395,7 +395,7 @@ static int gpio_rcar_probe(struct platform_device *pdev)
struct gpio_rcar_priv *p;
struct resource *io, *irq;
struct gpio_chip *gpio_chip;
@@ -46670,10 +51179,10 @@ index ac8deb0..f3caa10 100644
return -EINVAL;
}
diff --git a/drivers/gpio/gpiolib.c b/drivers/gpio/gpiolib.c
-index a8eea8a..d131bfd 100644
+index 9215931..8e92a9e 100644
--- a/drivers/gpio/gpiolib.c
+++ b/drivers/gpio/gpiolib.c
-@@ -1632,8 +1632,10 @@ static void gpiochip_irqchip_remove(struct gpio_chip *gpiochip)
+@@ -1675,8 +1675,10 @@ static void gpiochip_irqchip_remove(struct gpio_chip *gpiochip)
}
if (gpiochip->irqchip) {
@@ -46685,8 +51194,8 @@ index a8eea8a..d131bfd 100644
+ pax_close_kernel();
gpiochip->irqchip = NULL;
}
- }
-@@ -1710,8 +1712,10 @@ int _gpiochip_irqchip_add(struct gpio_chip *gpiochip,
+
+@@ -1770,8 +1772,10 @@ int _gpiochip_irqchip_add(struct gpio_chip *gpiochip,
*/
if (!irqchip->irq_request_resources &&
!irqchip->irq_release_resources) {
@@ -46700,10 +51209,10 @@ index a8eea8a..d131bfd 100644
/*
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu.h b/drivers/gpu/drm/amd/amdgpu/amdgpu.h
-index e443073..2ce0ad5 100644
+index 05c2850..1e71fbc 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu.h
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu.h
-@@ -1797,7 +1797,7 @@ int amdgpu_debugfs_firmware_init(struct amdgpu_device *adev);
+@@ -1790,7 +1790,7 @@ int amdgpu_debugfs_firmware_init(struct amdgpu_device *adev);
* amdgpu smumgr functions
*/
struct amdgpu_smumgr_funcs {
@@ -46713,10 +51222,10 @@ index e443073..2ce0ad5 100644
int (*request_smu_specific_fw)(struct amdgpu_device *adev, uint32_t fwtype);
};
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_atpx_handler.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_atpx_handler.c
-index 1ed085f..76d5db1 100644
+index 6c343a9..540aba5 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_atpx_handler.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_atpx_handler.c
-@@ -524,7 +524,7 @@ static int amdgpu_atpx_init(void)
+@@ -533,7 +533,7 @@ static int amdgpu_atpx_init(void)
* look up whether we are the integrated or discrete GPU (all asics).
* Returns the client id.
*/
@@ -46726,10 +51235,10 @@ index 1ed085f..76d5db1 100644
if (amdgpu_atpx_priv.dhandle == ACPI_HANDLE(&pdev->dev))
return VGA_SWITCHEROO_IGD;
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_cgs.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_cgs.c
-index bc0440f..ab93c5e 100644
+index 6629762..f14b4fd 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_cgs.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_cgs.c
-@@ -1118,50 +1118,50 @@ static int amdgpu_cgs_call_acpi_method(struct cgs_device *cgs_device,
+@@ -1175,50 +1175,50 @@ static int amdgpu_cgs_call_acpi_method(struct cgs_device *cgs_device,
}
static const struct cgs_ops amdgpu_cgs_ops = {
@@ -46822,7 +51331,7 @@ index bc0440f..ab93c5e 100644
struct cgs_device *amdgpu_cgs_create_device(struct amdgpu_device *adev)
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_connectors.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_connectors.c
-index ff0b55a..c58880e 100644
+index 086aa5c..b347e02 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_connectors.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_connectors.c
@@ -701,7 +701,7 @@ static int amdgpu_connector_lvds_get_modes(struct drm_connector *connector)
@@ -46834,7 +51343,7 @@ index ff0b55a..c58880e 100644
struct drm_display_mode *mode)
{
struct drm_encoder *encoder = amdgpu_connector_best_single_encoder(connector);
-@@ -838,7 +838,7 @@ static int amdgpu_connector_vga_get_modes(struct drm_connector *connector)
+@@ -847,7 +847,7 @@ static int amdgpu_connector_vga_get_modes(struct drm_connector *connector)
return ret;
}
@@ -46843,7 +51352,7 @@ index ff0b55a..c58880e 100644
struct drm_display_mode *mode)
{
struct drm_device *dev = connector->dev;
-@@ -1158,7 +1158,7 @@ static void amdgpu_connector_dvi_force(struct drm_connector *connector)
+@@ -1168,7 +1168,7 @@ static void amdgpu_connector_dvi_force(struct drm_connector *connector)
amdgpu_connector->use_digital = true;
}
@@ -46852,7 +51361,7 @@ index ff0b55a..c58880e 100644
struct drm_display_mode *mode)
{
struct drm_device *dev = connector->dev;
-@@ -1427,7 +1427,7 @@ out:
+@@ -1438,7 +1438,7 @@ amdgpu_connector_dp_detect(struct drm_connector *connector, bool force)
return ret;
}
@@ -46861,11 +51370,20 @@ index ff0b55a..c58880e 100644
struct drm_display_mode *mode)
{
struct amdgpu_connector *amdgpu_connector = to_amdgpu_connector(connector);
+@@ -1552,7 +1552,7 @@ static int amdgpu_connector_virtual_get_modes(struct drm_connector *connector)
+ return 0;
+ }
+
+-static int amdgpu_connector_virtual_mode_valid(struct drm_connector *connector,
++static enum drm_mode_status amdgpu_connector_virtual_mode_valid(struct drm_connector *connector,
+ struct drm_display_mode *mode)
+ {
+ return MODE_OK;
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
-index 39c01b9..ced138c 100644
+index e41d4ba..68c48ce 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
-@@ -1059,7 +1059,7 @@ static bool amdgpu_switcheroo_can_switch(struct pci_dev *pdev)
+@@ -1096,7 +1096,7 @@ static bool amdgpu_switcheroo_can_switch(struct pci_dev *pdev)
* locking inversion with the driver load path. And the access here is
* completely racy anyway. So don't bother with locking for now.
*/
@@ -46875,10 +51393,10 @@ index 39c01b9..ced138c 100644
static const struct vga_switcheroo_client_ops amdgpu_switcheroo_ops = {
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c
-index 414a160..d0bb0ac 100644
+index e0890de..bfa2932 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c
-@@ -588,9 +588,6 @@ static struct drm_driver kms_driver = {
+@@ -722,9 +722,6 @@ static struct drm_driver kms_driver = {
.patchlevel = KMS_DRIVER_PATCHLEVEL,
};
@@ -46888,7 +51406,7 @@ index 414a160..d0bb0ac 100644
static struct pci_driver amdgpu_kms_pci_driver = {
.name = DRIVER_NAME,
.id_table = pciidlist,
-@@ -611,18 +608,20 @@ static int __init amdgpu_init(void)
+@@ -757,12 +754,14 @@ static int __init amdgpu_init(void)
return -EINVAL;
}
DRM_INFO("amdgpu kernel modesetting enabled.\n");
@@ -46904,8 +51422,10 @@ index 414a160..d0bb0ac 100644
/* let modprobe override vga console setting */
- return drm_pci_init(driver, pdriver);
+ return drm_pci_init(&kms_driver, &amdgpu_kms_pci_driver);
- }
+ error_sched:
+ amdgpu_fence_slab_fini();
+@@ -777,7 +776,7 @@ static int __init amdgpu_init(void)
static void __exit amdgpu_exit(void)
{
amdgpu_amdkfd_fini();
@@ -46926,11 +51446,30 @@ index 51321e1..3c80c0b 100644
+void amdgpu_gfx_parse_disable_cu(unsigned *mask, unsigned max_se, unsigned max_sh);
#endif
+diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_gtt_mgr.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_gtt_mgr.c
+index f86c844..7fe4fde9 100644
+--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_gtt_mgr.c
++++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_gtt_mgr.c
+@@ -231,9 +231,9 @@ static void amdgpu_gtt_mgr_debug(struct ttm_mem_type_manager *man,
+ }
+
+ const struct ttm_mem_type_manager_func amdgpu_gtt_mgr_func = {
+- amdgpu_gtt_mgr_init,
+- amdgpu_gtt_mgr_fini,
+- amdgpu_gtt_mgr_new,
+- amdgpu_gtt_mgr_del,
+- amdgpu_gtt_mgr_debug
++ .init = amdgpu_gtt_mgr_init,
++ .takedown = amdgpu_gtt_mgr_fini,
++ .get_node = amdgpu_gtt_mgr_new,
++ .put_node = amdgpu_gtt_mgr_del,
++ .debug = amdgpu_gtt_mgr_debug
+ };
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c
-index e86ca39..f935a89 100644
+index 968c426..aceb28c 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c
-@@ -202,7 +202,7 @@ int amdgpu_vm_grab_id(struct amdgpu_vm *vm, struct amdgpu_ring *ring,
+@@ -205,7 +205,7 @@ int amdgpu_vm_grab_id(struct amdgpu_vm *vm, struct amdgpu_ring *ring,
unsigned i;
int r = 0;
@@ -46939,72 +51478,6 @@ index e86ca39..f935a89 100644
GFP_KERNEL);
if (!fences)
return -ENOMEM;
-diff --git a/drivers/gpu/drm/amd/amdgpu/fiji_smc.c b/drivers/gpu/drm/amd/amdgpu/fiji_smc.c
-index b3e19ba..28942db 100644
---- a/drivers/gpu/drm/amd/amdgpu/fiji_smc.c
-+++ b/drivers/gpu/drm/amd/amdgpu/fiji_smc.c
-@@ -519,7 +519,7 @@ static int fiji_smu_request_load_fw(struct amdgpu_device *adev)
- return 0;
- }
-
--static uint32_t fiji_smu_get_mask_for_fw_type(uint32_t fw_type)
-+static uint32_t fiji_smu_get_mask_for_fw_type(enum AMDGPU_UCODE_ID fw_type)
- {
- switch (fw_type) {
- case AMDGPU_UCODE_ID_SDMA0:
-@@ -545,7 +545,7 @@ static uint32_t fiji_smu_get_mask_for_fw_type(uint32_t fw_type)
- }
-
- static int fiji_smu_check_fw_load_finish(struct amdgpu_device *adev,
-- uint32_t fw_type)
-+ enum AMDGPU_UCODE_ID fw_type)
- {
- uint32_t fw_mask = fiji_smu_get_mask_for_fw_type(fw_type);
- int i;
-diff --git a/drivers/gpu/drm/amd/amdgpu/iceland_smc.c b/drivers/gpu/drm/amd/amdgpu/iceland_smc.c
-index 2118399..8f80ddc 100644
---- a/drivers/gpu/drm/amd/amdgpu/iceland_smc.c
-+++ b/drivers/gpu/drm/amd/amdgpu/iceland_smc.c
-@@ -424,7 +424,7 @@ static enum AMDGPU_UCODE_ID iceland_convert_fw_type(uint32_t fw_type)
- }
- }
-
--static uint32_t iceland_smu_get_mask_for_fw_type(uint32_t fw_type)
-+static uint32_t iceland_smu_get_mask_for_fw_type(enum AMDGPU_UCODE_ID fw_type)
- {
- switch (fw_type) {
- case AMDGPU_UCODE_ID_SDMA0:
-@@ -562,7 +562,7 @@ static int iceland_smu_request_load_fw(struct amdgpu_device *adev)
- }
-
- static int iceland_smu_check_fw_load_finish(struct amdgpu_device *adev,
-- uint32_t fw_type)
-+ enum AMDGPU_UCODE_ID fw_type)
- {
- uint32_t fw_mask = iceland_smu_get_mask_for_fw_type(fw_type);
- int i;
-diff --git a/drivers/gpu/drm/amd/amdgpu/tonga_smc.c b/drivers/gpu/drm/amd/amdgpu/tonga_smc.c
-index 940de18..9ef25f7 100644
---- a/drivers/gpu/drm/amd/amdgpu/tonga_smc.c
-+++ b/drivers/gpu/drm/amd/amdgpu/tonga_smc.c
-@@ -521,7 +521,7 @@ static int tonga_smu_request_load_fw(struct amdgpu_device *adev)
- return 0;
- }
-
--static uint32_t tonga_smu_get_mask_for_fw_type(uint32_t fw_type)
-+static uint32_t tonga_smu_get_mask_for_fw_type(enum AMDGPU_UCODE_ID fw_type)
- {
- switch (fw_type) {
- case AMDGPU_UCODE_ID_SDMA0:
-@@ -547,7 +547,7 @@ static uint32_t tonga_smu_get_mask_for_fw_type(uint32_t fw_type)
- }
-
- static int tonga_smu_check_fw_load_finish(struct amdgpu_device *adev,
-- uint32_t fw_type)
-+ enum AMDGPU_UCODE_ID fw_type)
- {
- uint32_t fw_mask = tonga_smu_get_mask_for_fw_type(fw_type);
- int i;
diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_chardev.c b/drivers/gpu/drm/amd/amdkfd/kfd_chardev.c
index ee3e04e..65f7436 100644
--- a/drivers/gpu/drm/amd/amdkfd/kfd_chardev.c
@@ -47169,7 +51642,7 @@ index f49c551..ad74c7e 100644
dqm,
qpd,
default_policy,
-@@ -1172,6 +1172,36 @@ out:
+@@ -1172,6 +1172,36 @@ static bool set_cache_memory_policy(struct device_queue_manager *dqm,
return false;
}
@@ -47363,10 +51836,10 @@ index 7f134aa..cd34d4a 100644
if (!interrupt_ring)
return -ENOMEM;
diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_kernel_queue.c b/drivers/gpu/drm/amd/amdkfd/kfd_kernel_queue.c
-index 9beae87..1fe9326 100644
+index d135cd0..1a75f84 100644
--- a/drivers/gpu/drm/amd/amdkfd/kfd_kernel_queue.c
+++ b/drivers/gpu/drm/amd/amdkfd/kfd_kernel_queue.c
-@@ -56,7 +56,7 @@ static bool initialize(struct kernel_queue *kq, struct kfd_dev *dev,
+@@ -59,7 +59,7 @@ static bool initialize(struct kernel_queue *kq, struct kfd_dev *dev,
switch (type) {
case KFD_QUEUE_TYPE_DIQ:
case KFD_QUEUE_TYPE_HIQ:
@@ -47389,7 +51862,7 @@ index 5940531..a75b0e5 100644
struct kernel_queue {
struct kernel_queue_ops ops;
diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_process_queue_manager.c b/drivers/gpu/drm/amd/amdkfd/kfd_process_queue_manager.c
-index 7b69070..d7bd78b 100644
+index e1fb40b..44ce883 100644
--- a/drivers/gpu/drm/amd/amdkfd/kfd_process_queue_manager.c
+++ b/drivers/gpu/drm/amd/amdkfd/kfd_process_queue_manager.c
@@ -194,7 +194,7 @@ int pqm_create_queue(struct process_queue_manager *pqm,
@@ -47419,7 +51892,7 @@ index 7b69070..d7bd78b 100644
kq, &pdd->qpd);
break;
default:
-@@ -265,7 +265,7 @@ err_allocate_pqn:
+@@ -265,7 +265,7 @@ int pqm_create_queue(struct process_queue_manager *pqm,
/* check if queues list is empty unregister process from device */
clear_bit(*qid, pqm->queue_slot_bitmap);
if (list_empty(&pqm->queues))
@@ -47487,10 +51960,10 @@ index 2028980..484984b 100644
const struct phm_master_table_header cz_phm_enable_clock_power_gatings_master = {
diff --git a/drivers/gpu/drm/amd/powerplay/hwmgr/cz_hwmgr.c b/drivers/gpu/drm/amd/powerplay/hwmgr/cz_hwmgr.c
-index 8cc0df9..365a42c 100644
+index 9604249..751e84f 100644
--- a/drivers/gpu/drm/amd/powerplay/hwmgr/cz_hwmgr.c
+++ b/drivers/gpu/drm/amd/powerplay/hwmgr/cz_hwmgr.c
-@@ -916,13 +916,13 @@ static int cz_tf_update_low_mem_pstate(struct pp_hwmgr *hwmgr,
+@@ -888,13 +888,13 @@ static int cz_tf_update_low_mem_pstate(struct pp_hwmgr *hwmgr,
}
static const struct phm_master_table_item cz_set_power_state_list[] = {
@@ -47511,7 +51984,7 @@ index 8cc0df9..365a42c 100644
};
static const struct phm_master_table_header cz_set_power_state_master = {
-@@ -932,15 +932,15 @@ static const struct phm_master_table_header cz_set_power_state_master = {
+@@ -904,15 +904,15 @@ static const struct phm_master_table_header cz_set_power_state_master = {
};
static const struct phm_master_table_item cz_setup_asic_list[] = {
@@ -47536,7 +52009,7 @@ index 8cc0df9..365a42c 100644
};
static const struct phm_master_table_header cz_setup_asic_master = {
-@@ -985,10 +985,10 @@ static int cz_tf_reset_cc6_data(struct pp_hwmgr *hwmgr,
+@@ -957,10 +957,10 @@ static int cz_tf_reset_cc6_data(struct pp_hwmgr *hwmgr,
}
static const struct phm_master_table_item cz_power_down_asic_list[] = {
@@ -47551,7 +52024,7 @@ index 8cc0df9..365a42c 100644
};
static const struct phm_master_table_header cz_power_down_asic_master = {
-@@ -1096,8 +1096,8 @@ static int cz_tf_check_for_dpm_enabled(struct pp_hwmgr *hwmgr,
+@@ -1068,8 +1068,8 @@ static int cz_tf_check_for_dpm_enabled(struct pp_hwmgr *hwmgr,
}
static const struct phm_master_table_item cz_disable_dpm_list[] = {
@@ -47562,7 +52035,7 @@ index 8cc0df9..365a42c 100644
};
-@@ -1108,13 +1108,13 @@ static const struct phm_master_table_header cz_disable_dpm_master = {
+@@ -1080,13 +1080,13 @@ static const struct phm_master_table_header cz_disable_dpm_master = {
};
static const struct phm_master_table_item cz_enable_dpm_list[] = {
@@ -47583,136 +52056,51 @@ index 8cc0df9..365a42c 100644
};
static const struct phm_master_table_header cz_enable_dpm_master = {
-diff --git a/drivers/gpu/drm/amd/powerplay/hwmgr/fiji_thermal.c b/drivers/gpu/drm/amd/powerplay/hwmgr/fiji_thermal.c
-index 92976b6..7d1f7f6 100644
---- a/drivers/gpu/drm/amd/powerplay/hwmgr/fiji_thermal.c
-+++ b/drivers/gpu/drm/amd/powerplay/hwmgr/fiji_thermal.c
-@@ -617,17 +617,17 @@ static int tf_fiji_thermal_disable_alert(struct pp_hwmgr *hwmgr,
-
- static const struct phm_master_table_item
- fiji_thermal_start_thermal_controller_master_list[] = {
-- {NULL, tf_fiji_thermal_initialize},
-- {NULL, tf_fiji_thermal_set_temperature_range},
-- {NULL, tf_fiji_thermal_enable_alert},
-+ { .tableFunction = tf_fiji_thermal_initialize},
-+ { .tableFunction = tf_fiji_thermal_set_temperature_range},
-+ { .tableFunction = tf_fiji_thermal_enable_alert},
- /* We should restrict performance levels to low before we halt the SMC.
- * On the other hand we are still in boot state when we do this
- * so it would be pointless.
- * If this assumption changes we have to revisit this table.
- */
-- {NULL, tf_fiji_thermal_setup_fan_table},
-- {NULL, tf_fiji_thermal_start_smc_fan_control},
-- {NULL, NULL}
-+ { .tableFunction = tf_fiji_thermal_setup_fan_table},
-+ { .tableFunction = tf_fiji_thermal_start_smc_fan_control},
-+ { }
- };
-
- static const struct phm_master_table_header
-@@ -639,10 +639,10 @@ fiji_thermal_start_thermal_controller_master = {
-
- static const struct phm_master_table_item
- fiji_thermal_set_temperature_range_master_list[] = {
-- {NULL, tf_fiji_thermal_disable_alert},
-- {NULL, tf_fiji_thermal_set_temperature_range},
-- {NULL, tf_fiji_thermal_enable_alert},
-- {NULL, NULL}
-+ { .tableFunction = tf_fiji_thermal_disable_alert},
-+ { .tableFunction = tf_fiji_thermal_set_temperature_range},
-+ { .tableFunction = tf_fiji_thermal_enable_alert},
-+ { }
- };
-
- static const struct phm_master_table_header
-diff --git a/drivers/gpu/drm/amd/powerplay/hwmgr/polaris10_thermal.c b/drivers/gpu/drm/amd/powerplay/hwmgr/polaris10_thermal.c
-index b206632..eeb4724 100644
---- a/drivers/gpu/drm/amd/powerplay/hwmgr/polaris10_thermal.c
-+++ b/drivers/gpu/drm/amd/powerplay/hwmgr/polaris10_thermal.c
-@@ -645,18 +645,18 @@ static int tf_polaris10_thermal_avfs_enable(struct pp_hwmgr *hwmgr,
+diff --git a/drivers/gpu/drm/amd/powerplay/hwmgr/smu7_thermal.c b/drivers/gpu/drm/amd/powerplay/hwmgr/smu7_thermal.c
+index 29d0319..ac1e41d 100644
+--- a/drivers/gpu/drm/amd/powerplay/hwmgr/smu7_thermal.c
++++ b/drivers/gpu/drm/amd/powerplay/hwmgr/smu7_thermal.c
+@@ -506,18 +506,18 @@ static int tf_smu7_thermal_disable_alert(struct pp_hwmgr *hwmgr,
static const struct phm_master_table_item
- polaris10_thermal_start_thermal_controller_master_list[] = {
-- {NULL, tf_polaris10_thermal_initialize},
-- {NULL, tf_polaris10_thermal_set_temperature_range},
-- {NULL, tf_polaris10_thermal_enable_alert},
-- {NULL, tf_polaris10_thermal_avfs_enable},
-+ { .tableFunction = tf_polaris10_thermal_initialize },
-+ { .tableFunction = tf_polaris10_thermal_set_temperature_range },
-+ { .tableFunction = tf_polaris10_thermal_enable_alert },
-+ { .tableFunction = tf_polaris10_thermal_avfs_enable },
+ phm_thermal_start_thermal_controller_master_list[] = {
+- {NULL, tf_smu7_thermal_initialize},
+- {NULL, tf_smu7_thermal_set_temperature_range},
+- {NULL, tf_smu7_thermal_enable_alert},
+- {NULL, smum_thermal_avfs_enable},
++ { .tableFunction = tf_smu7_thermal_initialize},
++ { .tableFunction = tf_smu7_thermal_set_temperature_range},
++ { .tableFunction = tf_smu7_thermal_enable_alert},
++ { .tableFunction = smum_thermal_avfs_enable},
/* We should restrict performance levels to low before we halt the SMC.
* On the other hand we are still in boot state when we do this
* so it would be pointless.
* If this assumption changes we have to revisit this table.
*/
-- {NULL, tf_polaris10_thermal_setup_fan_table},
-- {NULL, tf_polaris10_thermal_start_smc_fan_control},
+- {NULL, smum_thermal_setup_fan_table},
+- {NULL, tf_smu7_thermal_start_smc_fan_control},
- {NULL, NULL}
-+ { .tableFunction = tf_polaris10_thermal_setup_fan_table },
-+ { .tableFunction = tf_polaris10_thermal_start_smc_fan_control },
++ { .tableFunction = smum_thermal_setup_fan_table},
++ { .tableFunction = tf_smu7_thermal_start_smc_fan_control},
+ { }
};
static const struct phm_master_table_header
-@@ -668,10 +668,10 @@ polaris10_thermal_start_thermal_controller_master = {
+@@ -529,10 +529,10 @@ phm_thermal_start_thermal_controller_master = {
static const struct phm_master_table_item
- polaris10_thermal_set_temperature_range_master_list[] = {
-- {NULL, tf_polaris10_thermal_disable_alert},
-- {NULL, tf_polaris10_thermal_set_temperature_range},
-- {NULL, tf_polaris10_thermal_enable_alert},
+ phm_thermal_set_temperature_range_master_list[] = {
+- {NULL, tf_smu7_thermal_disable_alert},
+- {NULL, tf_smu7_thermal_set_temperature_range},
+- {NULL, tf_smu7_thermal_enable_alert},
- {NULL, NULL}
-+ { .tableFunction = tf_polaris10_thermal_disable_alert },
-+ { .tableFunction = tf_polaris10_thermal_set_temperature_range },
-+ { .tableFunction = tf_polaris10_thermal_enable_alert },
++ { .tableFunction = tf_smu7_thermal_disable_alert},
++ { .tableFunction = tf_smu7_thermal_set_temperature_range},
++ { .tableFunction = tf_smu7_thermal_enable_alert},
+ { }
};
static const struct phm_master_table_header
-diff --git a/drivers/gpu/drm/amd/powerplay/hwmgr/tonga_thermal.c b/drivers/gpu/drm/amd/powerplay/hwmgr/tonga_thermal.c
-index 47ef1ca..d352d38 100644
---- a/drivers/gpu/drm/amd/powerplay/hwmgr/tonga_thermal.c
-+++ b/drivers/gpu/drm/amd/powerplay/hwmgr/tonga_thermal.c
-@@ -526,16 +526,16 @@ static int tf_tonga_thermal_disable_alert(struct pp_hwmgr *hwmgr, void *input, v
- }
-
- static const struct phm_master_table_item tonga_thermal_start_thermal_controller_master_list[] = {
-- { NULL, tf_tonga_thermal_initialize },
-- { NULL, tf_tonga_thermal_set_temperature_range },
-- { NULL, tf_tonga_thermal_enable_alert },
-+ { .tableFunction = tf_tonga_thermal_initialize },
-+ { .tableFunction = tf_tonga_thermal_set_temperature_range },
-+ { .tableFunction = tf_tonga_thermal_enable_alert },
- /* We should restrict performance levels to low before we halt the SMC.
- * On the other hand we are still in boot state when we do this so it would be pointless.
- * If this assumption changes we have to revisit this table.
- */
-- { NULL, tf_tonga_thermal_setup_fan_table},
-- { NULL, tf_tonga_thermal_start_smc_fan_control},
-- { NULL, NULL }
-+ { .tableFunction = tf_tonga_thermal_setup_fan_table},
-+ { .tableFunction = tf_tonga_thermal_start_smc_fan_control},
-+ { }
- };
-
- static const struct phm_master_table_header tonga_thermal_start_thermal_controller_master = {
-@@ -545,10 +545,10 @@ static const struct phm_master_table_header tonga_thermal_start_thermal_controll
- };
-
- static const struct phm_master_table_item tonga_thermal_set_temperature_range_master_list[] = {
-- { NULL, tf_tonga_thermal_disable_alert},
-- { NULL, tf_tonga_thermal_set_temperature_range},
-- { NULL, tf_tonga_thermal_enable_alert},
-- { NULL, NULL }
-+ { .tableFunction = tf_tonga_thermal_disable_alert},
-+ { .tableFunction = tf_tonga_thermal_set_temperature_range},
-+ { .tableFunction = tf_tonga_thermal_enable_alert},
-+ { }
- };
-
- static const struct phm_master_table_header tonga_thermal_set_temperature_range_master = {
diff --git a/drivers/gpu/drm/amd/scheduler/gpu_scheduler.c b/drivers/gpu/drm/amd/scheduler/gpu_scheduler.c
index ffe1f85..7017bfc 100644
--- a/drivers/gpu/drm/amd/scheduler/gpu_scheduler.c
@@ -47740,7 +52128,7 @@ index 51068e6..35b4c71 100644
struct fence *dependency;
diff --git a/drivers/gpu/drm/amd/scheduler/sched_fence.c b/drivers/gpu/drm/amd/scheduler/sched_fence.c
-index 93ad2e1..970aeca 100644
+index 88fc2d6..22aa584 100644
--- a/drivers/gpu/drm/amd/scheduler/sched_fence.c
+++ b/drivers/gpu/drm/amd/scheduler/sched_fence.c
@@ -60,7 +60,7 @@ struct amd_sched_fence *amd_sched_fence_create(struct amd_sched_entity *entity,
@@ -47753,12 +52141,12 @@ index 93ad2e1..970aeca 100644
&fence->lock, entity->fence_context, seq);
fence_init(&fence->finished, &amd_sched_fence_ops_finished,
diff --git a/drivers/gpu/drm/armada/armada_drv.c b/drivers/gpu/drm/armada/armada_drv.c
-index f5ebdd6..135c95c 100644
+index 1e0e68f..04bb82a 100644
--- a/drivers/gpu/drm/armada/armada_drv.c
+++ b/drivers/gpu/drm/armada/armada_drv.c
@@ -213,6 +213,7 @@ static struct drm_driver armada_drm_driver = {
.driver_features = DRIVER_GEM | DRIVER_MODESET |
- DRIVER_HAVE_IRQ | DRIVER_PRIME,
+ DRIVER_PRIME,
.ioctls = armada_ioctls,
+ .num_ioctls = ARRAY_SIZE(armada_ioctls),
.fops = &armada_drm_fops,
@@ -47787,10 +52175,10 @@ index 5957c3e..970039e 100644
{
struct ast_private *ast = connector->dev->dev_private;
diff --git a/drivers/gpu/drm/bochs/bochs_kms.c b/drivers/gpu/drm/bochs/bochs_kms.c
-index 207a2cb..666b75a 100644
+index 0b4e5d1..7594423 100644
--- a/drivers/gpu/drm/bochs/bochs_kms.c
+++ b/drivers/gpu/drm/bochs/bochs_kms.c
-@@ -187,7 +187,7 @@ int bochs_connector_get_modes(struct drm_connector *connector)
+@@ -187,7 +187,7 @@ static int bochs_connector_get_modes(struct drm_connector *connector)
return count;
}
@@ -47800,7 +52188,7 @@ index 207a2cb..666b75a 100644
{
struct bochs_device *bochs =
diff --git a/drivers/gpu/drm/bridge/tc358767.c b/drivers/gpu/drm/bridge/tc358767.c
-index a09825d..6faa4d7 100644
+index 44d476e..3dd649f 100644
--- a/drivers/gpu/drm/bridge/tc358767.c
+++ b/drivers/gpu/drm/bridge/tc358767.c
@@ -1102,7 +1102,7 @@ static bool tc_bridge_mode_fixup(struct drm_bridge *bridge,
@@ -47812,24 +52200,11 @@ index a09825d..6faa4d7 100644
struct drm_display_mode *mode)
{
/* Accept any mode */
-diff --git a/drivers/gpu/drm/drm_crtc.c b/drivers/gpu/drm/drm_crtc.c
-index ddebe54..68a674d 100644
---- a/drivers/gpu/drm/drm_crtc.c
-+++ b/drivers/gpu/drm/drm_crtc.c
-@@ -4364,7 +4364,7 @@ int drm_mode_getproperty_ioctl(struct drm_device *dev,
- goto done;
- }
-
-- if (copy_to_user(&enum_ptr[copied].name,
-+ if (copy_to_user(enum_ptr[copied].name,
- &prop_enum->name, DRM_PROP_NAME_LEN)) {
- ret = -EFAULT;
- goto done;
diff --git a/drivers/gpu/drm/drm_drv.c b/drivers/gpu/drm/drm_drv.c
-index be27ed3..72aa552 100644
+index 6efdba4..ce6514a 100644
--- a/drivers/gpu/drm/drm_drv.c
+++ b/drivers/gpu/drm/drm_drv.c
-@@ -368,7 +368,7 @@ void drm_unplug_dev(struct drm_device *dev)
+@@ -385,7 +385,7 @@ void drm_unplug_dev(struct drm_device *dev)
drm_device_set_unplugged(dev);
@@ -47861,7 +52236,7 @@ index 1fd6eac..e4206c9 100644
return 0;
}
diff --git a/drivers/gpu/drm/drm_fops.c b/drivers/gpu/drm/drm_fops.c
-index 323c238..0eaad21 100644
+index e84faec..03aaa9f 100644
--- a/drivers/gpu/drm/drm_fops.c
+++ b/drivers/gpu/drm/drm_fops.c
@@ -132,7 +132,7 @@ int drm_open(struct inode *inode, struct file *filp)
@@ -47882,7 +52257,7 @@ index 323c238..0eaad21 100644
drm_minor_release(minor);
return retcode;
}
-@@ -371,7 +371,7 @@ int drm_release(struct inode *inode, struct file *filp)
+@@ -370,7 +370,7 @@ int drm_release(struct inode *inode, struct file *filp)
mutex_lock(&drm_global_mutex);
@@ -47891,7 +52266,7 @@ index 323c238..0eaad21 100644
mutex_lock(&dev->filelist_mutex);
list_del(&file_priv->lhead);
-@@ -384,10 +384,10 @@ int drm_release(struct inode *inode, struct file *filp)
+@@ -383,10 +383,10 @@ int drm_release(struct inode *inode, struct file *filp)
* Begin inline drm_release
*/
@@ -47902,9 +52277,9 @@ index 323c238..0eaad21 100644
- dev->open_count);
+ local_read(&dev->open_count));
- if (!drm_core_check_feature(dev, DRIVER_MODESET))
+ if (drm_core_check_feature(dev, DRIVER_LEGACY))
drm_legacy_lock_release(dev, filp);
-@@ -425,7 +425,7 @@ int drm_release(struct inode *inode, struct file *filp)
+@@ -424,7 +424,7 @@ int drm_release(struct inode *inode, struct file *filp)
* End inline drm_release
*/
@@ -47913,7 +52288,7 @@ index 323c238..0eaad21 100644
drm_lastclose(dev);
if (drm_device_is_unplugged(dev))
drm_put_dev(dev);
-@@ -564,6 +564,11 @@ unsigned int drm_poll(struct file *filp, struct poll_table_struct *wait)
+@@ -563,6 +563,11 @@ unsigned int drm_poll(struct file *filp, struct poll_table_struct *wait)
}
EXPORT_SYMBOL(drm_poll);
@@ -47926,7 +52301,7 @@ index 323c238..0eaad21 100644
* drm_event_reserve_init_locked - init a DRM event and reserve space for it
* @dev: DRM device
diff --git a/drivers/gpu/drm/drm_global.c b/drivers/gpu/drm/drm_global.c
-index 3d2e91c..d31c4c9 100644
+index b404287..9acd63c 100644
--- a/drivers/gpu/drm/drm_global.c
+++ b/drivers/gpu/drm/drm_global.c
@@ -36,7 +36,7 @@
@@ -47962,19 +52337,19 @@ index 3d2e91c..d31c4c9 100644
mutex_lock(&item->mutex);
- if (item->refcount == 0) {
+ if (atomic_read(&item->refcount) == 0) {
- item->object = kzalloc(ref->size, GFP_KERNEL);
- if (unlikely(item->object == NULL)) {
+ ref->object = kzalloc(ref->size, GFP_KERNEL);
+ if (unlikely(ref->object == NULL)) {
ret = -ENOMEM;
-@@ -82,7 +82,7 @@ int drm_global_item_ref(struct drm_global_reference *ref)
- goto out_err;
-
+@@ -84,7 +84,7 @@ int drm_global_item_ref(struct drm_global_reference *ref)
+ ref->object = item->object;
}
+
- ++item->refcount;
+ atomic_inc(&item->refcount);
- ref->object = item->object;
mutex_unlock(&item->mutex);
return 0;
-@@ -98,9 +98,9 @@ void drm_global_item_unref(struct drm_global_reference *ref)
+
+@@ -102,9 +102,9 @@ void drm_global_item_unref(struct drm_global_reference *ref)
struct drm_global_item *item = &glob[ref->global_type];
mutex_lock(&item->mutex);
@@ -47987,7 +52362,7 @@ index 3d2e91c..d31c4c9 100644
item->object = NULL;
}
diff --git a/drivers/gpu/drm/drm_ioc32.c b/drivers/gpu/drm/drm_ioc32.c
-index a628975..98c84f7 100644
+index 867ab8c..54cf5c2 100644
--- a/drivers/gpu/drm/drm_ioc32.c
+++ b/drivers/gpu/drm/drm_ioc32.c
@@ -458,7 +458,7 @@ static int compat_drm_infobufs(struct file *file, unsigned int cmd,
@@ -48039,10 +52414,10 @@ index a628975..98c84f7 100644
ret = drm_ioctl(filp, cmd, arg);
diff --git a/drivers/gpu/drm/drm_ioctl.c b/drivers/gpu/drm/drm_ioctl.c
-index 33af4a5..ceb09f2 100644
+index 71c3473..12e69dd 100644
--- a/drivers/gpu/drm/drm_ioctl.c
+++ b/drivers/gpu/drm/drm_ioctl.c
-@@ -643,7 +643,7 @@ long drm_ioctl(struct file *filp,
+@@ -651,7 +651,7 @@ long drm_ioctl(struct file *filp,
struct drm_file *file_priv = filp->private_data;
struct drm_device *dev;
const struct drm_ioctl_desc *ioctl = NULL;
@@ -48052,13 +52427,13 @@ index 33af4a5..ceb09f2 100644
int retcode = -EINVAL;
char stack_kdata[128];
diff --git a/drivers/gpu/drm/drm_pci.c b/drivers/gpu/drm/drm_pci.c
-index b2f8f10..39eb872 100644
+index 3ceea9c..9fe18a5 100644
--- a/drivers/gpu/drm/drm_pci.c
+++ b/drivers/gpu/drm/drm_pci.c
@@ -264,7 +264,7 @@ int drm_get_pci_dev(struct pci_dev *pdev, const struct pci_device_id *ent,
/* No locking needed since shadow-attach is single-threaded since it may
* only be called from the per-driver module init hook. */
- if (!drm_core_check_feature(dev, DRIVER_MODESET))
+ if (drm_core_check_feature(dev, DRIVER_LEGACY))
- list_add_tail(&dev->legacy_dev_list, &driver->legacy_dev_list);
+ pax_list_add_tail(&dev->legacy_dev_list, (struct list_head *)&driver->legacy_dev_list);
@@ -48085,11 +52460,24 @@ index b2f8f10..39eb872 100644
drm_put_dev(dev);
}
}
+diff --git a/drivers/gpu/drm/drm_property.c b/drivers/gpu/drm/drm_property.c
+index a4d81cf..3384497 100644
+--- a/drivers/gpu/drm/drm_property.c
++++ b/drivers/gpu/drm/drm_property.c
+@@ -493,7 +493,7 @@ int drm_mode_getproperty_ioctl(struct drm_device *dev,
+ goto done;
+ }
+
+- if (copy_to_user(&enum_ptr[copied].name,
++ if (copy_to_user(enum_ptr[copied].name,
+ &prop_enum->name, DRM_PROP_NAME_LEN)) {
+ ret = -EFAULT;
+ goto done;
diff --git a/drivers/gpu/drm/exynos/exynos_drm_drv.c b/drivers/gpu/drm/exynos/exynos_drm_drv.c
-index 877d2ef..7b2d94d 100644
+index f86e7c8..97444a3 100644
--- a/drivers/gpu/drm/exynos/exynos_drm_drv.c
+++ b/drivers/gpu/drm/exynos/exynos_drm_drv.c
-@@ -548,6 +548,11 @@ static int compare_dev(struct device *dev, void *data)
+@@ -526,6 +526,11 @@ static int compare_dev(struct device *dev, void *data)
return dev == (struct device *)data;
}
@@ -48101,7 +52489,7 @@ index 877d2ef..7b2d94d 100644
static struct component_match *exynos_drm_match_add(struct device *dev)
{
struct component_match *match = NULL;
-@@ -562,7 +567,7 @@ static struct component_match *exynos_drm_match_add(struct device *dev)
+@@ -540,7 +545,7 @@ static struct component_match *exynos_drm_match_add(struct device *dev)
while ((d = bus_find_device(&platform_bus_type, p,
&info->driver->driver,
@@ -48110,7 +52498,7 @@ index 877d2ef..7b2d94d 100644
put_device(p);
component_match_add(dev, &match, compare_dev, d);
p = d;
-@@ -593,7 +598,6 @@ static int exynos_drm_platform_probe(struct platform_device *pdev)
+@@ -571,7 +576,6 @@ static int exynos_drm_platform_probe(struct platform_device *pdev)
struct component_match *match;
pdev->dev.coherent_dma_mask = DMA_BIT_MASK(32);
@@ -48118,7 +52506,7 @@ index 877d2ef..7b2d94d 100644
match = exynos_drm_match_add(&pdev->dev);
if (IS_ERR(match))
-@@ -631,7 +635,7 @@ static struct device *exynos_drm_get_dma_device(void)
+@@ -609,7 +613,7 @@ static struct device *exynos_drm_get_dma_device(void)
while ((dev = bus_find_device(&platform_bus_type, NULL,
&info->driver->driver,
@@ -48127,7 +52515,7 @@ index 877d2ef..7b2d94d 100644
put_device(dev);
return dev;
}
-@@ -652,7 +656,7 @@ static void exynos_drm_unregister_devices(void)
+@@ -630,7 +634,7 @@ static void exynos_drm_unregister_devices(void)
while ((dev = bus_find_device(&platform_bus_type, NULL,
&info->driver->driver,
@@ -48137,10 +52525,10 @@ index 877d2ef..7b2d94d 100644
platform_device_unregister(to_platform_device(dev));
}
diff --git a/drivers/gpu/drm/exynos/exynos_drm_g2d.c b/drivers/gpu/drm/exynos/exynos_drm_g2d.c
-index 6eca8bb..d607c01 100644
+index fbd13fa..03834dc 100644
--- a/drivers/gpu/drm/exynos/exynos_drm_g2d.c
+++ b/drivers/gpu/drm/exynos/exynos_drm_g2d.c
-@@ -1055,6 +1055,11 @@ int exynos_g2d_get_ver_ioctl(struct drm_device *drm_dev, void *data,
+@@ -1163,6 +1163,11 @@ int exynos_g2d_get_ver_ioctl(struct drm_device *drm_dev, void *data,
return 0;
}
@@ -48153,7 +52541,7 @@ index 6eca8bb..d607c01 100644
struct drm_file *file)
{
diff --git a/drivers/gpu/drm/exynos/exynos_hdmi.c b/drivers/gpu/drm/exynos/exynos_hdmi.c
-index 2275efe..c91e144 100644
+index 38eaa63..3e42c7c 100644
--- a/drivers/gpu/drm/exynos/exynos_hdmi.c
+++ b/drivers/gpu/drm/exynos/exynos_hdmi.c
@@ -919,7 +919,7 @@ static int hdmi_find_phy_conf(struct hdmi_context *hdata, u32 pixel_clock)
@@ -48205,7 +52593,7 @@ index 563f193..f087899 100644
{
if (mode->clock > 165000)
diff --git a/drivers/gpu/drm/gma500/cdv_intel_lvds.c b/drivers/gpu/drm/gma500/cdv_intel_lvds.c
-index 38dc890..c87ef7b 100644
+index ea733ab..57f6045 100644
--- a/drivers/gpu/drm/gma500/cdv_intel_lvds.c
+++ b/drivers/gpu/drm/gma500/cdv_intel_lvds.c
@@ -244,7 +244,7 @@ static void cdv_intel_lvds_restore(struct drm_connector *connector)
@@ -48248,10 +52636,10 @@ index a05c0206..01bfdad 100644
if (mdfld_get_panel_type(dev, pipe) == TMD_VID)
mdfld_dsi_dpi_turn_on(dpi_output, pipe);
diff --git a/drivers/gpu/drm/gma500/mdfld_dsi_output.c b/drivers/gpu/drm/gma500/mdfld_dsi_output.c
-index 907cb51..ae6f60c 100644
+index acb3848..fe02092 100644
--- a/drivers/gpu/drm/gma500/mdfld_dsi_output.c
+++ b/drivers/gpu/drm/gma500/mdfld_dsi_output.c
-@@ -351,7 +351,7 @@ static int mdfld_dsi_connector_get_modes(struct drm_connector *connector)
+@@ -346,7 +346,7 @@ static int mdfld_dsi_connector_get_modes(struct drm_connector *connector)
return 0;
}
@@ -48299,7 +52687,7 @@ index 2a3b7c6..fbd3fa3 100644
extern int psb_intel_lvds_set_property(struct drm_connector *connector,
struct drm_property *property,
diff --git a/drivers/gpu/drm/gma500/psb_intel_lvds.c b/drivers/gpu/drm/gma500/psb_intel_lvds.c
-index e55733c..524a9fd 100644
+index fd7c912..8170806 100644
--- a/drivers/gpu/drm/gma500/psb_intel_lvds.c
+++ b/drivers/gpu/drm/gma500/psb_intel_lvds.c
@@ -343,7 +343,7 @@ static void psb_intel_lvds_restore(struct drm_connector *connector)
@@ -48325,10 +52713,10 @@ index e787d37..91622fd 100644
{
struct psb_intel_sdvo *psb_intel_sdvo = intel_attached_sdvo(connector);
diff --git a/drivers/gpu/drm/i2c/tda998x_drv.c b/drivers/gpu/drm/i2c/tda998x_drv.c
-index f4315bc..2048cc2 100644
+index 9798d40..2d49135 100644
--- a/drivers/gpu/drm/i2c/tda998x_drv.c
+++ b/drivers/gpu/drm/i2c/tda998x_drv.c
-@@ -856,7 +856,7 @@ static void tda998x_encoder_dpms(struct drm_encoder *encoder, int mode)
+@@ -873,7 +873,7 @@ static void tda998x_encoder_dpms(struct drm_encoder *encoder, int mode)
priv->dpms = mode;
}
@@ -48351,10 +52739,10 @@ index d918567..6cfd904 100644
/**
* Determine if the device really is AGP or not.
diff --git a/drivers/gpu/drm/i810/i810_drv.c b/drivers/gpu/drm/i810/i810_drv.c
-index 44f4a13..af9f6f5 100644
+index 0be55dc..3f3482c 100644
--- a/drivers/gpu/drm/i810/i810_drv.c
+++ b/drivers/gpu/drm/i810/i810_drv.c
-@@ -87,7 +87,11 @@ static int __init i810_init(void)
+@@ -85,7 +85,11 @@ static int __init i810_init(void)
pr_err("drm/i810 does not support SMP\n");
return -EINVAL;
}
@@ -48405,7 +52793,7 @@ index 5e6a301..b6e143e 100644
/*
diff --git a/drivers/gpu/drm/i915/i915_drv.c b/drivers/gpu/drm/i915/i915_drv.c
-index d46fa22..a93cd8a 100644
+index 670beeb..642dcef 100644
--- a/drivers/gpu/drm/i915/i915_drv.c
+++ b/drivers/gpu/drm/i915/i915_drv.c
@@ -50,7 +50,7 @@
@@ -48417,7 +52805,7 @@ index d46fa22..a93cd8a 100644
static unsigned int i915_load_fail_count;
-@@ -557,7 +557,7 @@ static bool i915_switcheroo_can_switch(struct pci_dev *pdev)
+@@ -521,7 +521,7 @@ static bool i915_switcheroo_can_switch(struct pci_dev *pdev)
* locking inversion with the driver load path. And the access here is
* completely racy anyway. So don't bother with locking for now.
*/
@@ -48426,7 +52814,7 @@ index d46fa22..a93cd8a 100644
}
static const struct vga_switcheroo_client_ops i915_switcheroo_ops = {
-@@ -1224,8 +1224,11 @@ int i915_driver_load(struct pci_dev *pdev, const struct pci_device_id *ent)
+@@ -1181,8 +1181,11 @@ int i915_driver_load(struct pci_dev *pdev, const struct pci_device_id *ent)
struct drm_i915_private *dev_priv;
int ret;
@@ -48439,7 +52827,7 @@ index d46fa22..a93cd8a 100644
ret = -ENOMEM;
dev_priv = kzalloc(sizeof(*dev_priv), GFP_KERNEL);
-@@ -2610,7 +2613,7 @@ static const struct drm_ioctl_desc i915_ioctls[] = {
+@@ -2563,7 +2566,7 @@ static const struct drm_ioctl_desc i915_ioctls[] = {
DRM_IOCTL_DEF_DRV(I915_GEM_CONTEXT_SETPARAM, i915_gem_context_setparam_ioctl, DRM_RENDER_ALLOW),
};
@@ -48449,10 +52837,10 @@ index d46fa22..a93cd8a 100644
* deal with them for Intel hardware.
*/
diff --git a/drivers/gpu/drm/i915/i915_gem_execbuffer.c b/drivers/gpu/drm/i915/i915_gem_execbuffer.c
-index b35e5b6..998ddfc 100644
+index a218c2e..c834d0b 100644
--- a/drivers/gpu/drm/i915/i915_gem_execbuffer.c
+++ b/drivers/gpu/drm/i915/i915_gem_execbuffer.c
-@@ -993,12 +993,12 @@ i915_gem_check_execbuffer(struct drm_i915_gem_execbuffer2 *exec)
+@@ -1187,12 +1187,12 @@ i915_gem_check_execbuffer(struct drm_i915_gem_execbuffer2 *exec)
static int
validate_exec_list(struct drm_device *dev,
struct drm_i915_gem_exec_object2 *exec,
@@ -48465,13 +52853,13 @@ index b35e5b6..998ddfc 100644
- int i;
+ unsigned int i;
- invalid_flags = __EXEC_OBJECT_UNKNOWN_FLAGS;
- if (USES_FULL_PPGTT(dev))
+ /* INTERNAL flags must not overlap with external ones */
+ BUILD_BUG_ON(__EXEC_OBJECT_INTERNAL_FLAGS & ~__EXEC_OBJECT_UNKNOWN_FLAGS);
diff --git a/drivers/gpu/drm/i915/i915_gem_gtt.c b/drivers/gpu/drm/i915/i915_gem_gtt.c
-index f38ceff..3f18728 100644
+index 0bb4232..d1dfde0 100644
--- a/drivers/gpu/drm/i915/i915_gem_gtt.c
+++ b/drivers/gpu/drm/i915/i915_gem_gtt.c
-@@ -3268,8 +3268,8 @@ int i915_ggtt_init_hw(struct drm_device *dev)
+@@ -3166,8 +3166,8 @@ int i915_ggtt_probe_hw(struct drm_i915_private *dev_priv)
/* GMADR is the PCI mmio aperture into the global GTT. */
DRM_INFO("Memory usable by graphics device = %lluM\n",
ggtt->base.total >> 20);
@@ -48483,21 +52871,19 @@ index f38ceff..3f18728 100644
if (intel_iommu_gfx_mapped)
DRM_INFO("VT-d active for gfx access\n");
diff --git a/drivers/gpu/drm/i915/i915_gem_gtt.h b/drivers/gpu/drm/i915/i915_gem_gtt.h
-index aa5f31d..9df8e4d 100644
+index ec78be2..fc20a5628 100644
--- a/drivers/gpu/drm/i915/i915_gem_gtt.h
+++ b/drivers/gpu/drm/i915/i915_gem_gtt.h
-@@ -350,14 +350,14 @@ struct i915_address_space {
- struct i915_ggtt {
+@@ -437,12 +437,12 @@ struct i915_ggtt {
struct i915_address_space base;
+ struct io_mapping mappable; /* Mapping to our CPU mappable region */
- size_t stolen_size; /* Total size of stolen memory */
+ u64 stolen_size; /* Total size of stolen memory */
size_t stolen_usable_size; /* Total size minus BIOS reserved */
size_t stolen_reserved_base;
size_t stolen_reserved_size;
- size_t size; /* Total size of Global GTT */
u64 mappable_end; /* End offset that we can CPU map */
- struct io_mapping *mappable; /* Mapping to our CPU mappable region */
- phys_addr_t mappable_base; /* PA of our GMADR */
+ u64 mappable_base; /* PA of our GMADR */
@@ -48537,18 +52923,19 @@ index 97f3a56..32c712e 100644
ret = drm_ioctl(filp, cmd, arg);
diff --git a/drivers/gpu/drm/i915/i915_irq.c b/drivers/gpu/drm/i915/i915_irq.c
-index 1c2aec3..f807515 100644
+index 3fc286c..4c19f25 100644
--- a/drivers/gpu/drm/i915/i915_irq.c
+++ b/drivers/gpu/drm/i915/i915_irq.c
-@@ -4541,14 +4541,15 @@ void intel_irq_init(struct drm_i915_private *dev_priv)
+@@ -4511,15 +4511,16 @@ void intel_irq_init(struct drm_i915_private *dev_priv)
INIT_DELAYED_WORK(&dev_priv->gpu_error.hangcheck_work,
i915_hangcheck_elapsed);
+ pax_open_kernel();
if (IS_GEN2(dev_priv)) {
+ /* Gen2 doesn't have a hardware frame counter */
dev->max_vblank_count = 0;
-- dev->driver->get_vblank_counter = i8xx_get_vblank_counter;
-+ const_cast(dev->driver->get_vblank_counter) = i8xx_get_vblank_counter;
+- dev->driver->get_vblank_counter = drm_vblank_no_hw_counter;
++ const_cast(dev->driver->get_vblank_counter) = drm_vblank_no_hw_counter;
} else if (IS_G4X(dev_priv) || INTEL_INFO(dev_priv)->gen >= 5) {
dev->max_vblank_count = 0xffffffff; /* full 32 bit counter */
- dev->driver->get_vblank_counter = g4x_get_vblank_counter;
@@ -48559,7 +52946,7 @@ index 1c2aec3..f807515 100644
dev->max_vblank_count = 0xffffff; /* only 24 bits of frame count */
}
-@@ -4560,32 +4561,32 @@ void intel_irq_init(struct drm_i915_private *dev_priv)
+@@ -4531,32 +4532,32 @@ void intel_irq_init(struct drm_i915_private *dev_priv)
if (!IS_GEN2(dev_priv))
dev->vblank_disable_immediate = true;
@@ -48612,7 +52999,7 @@ index 1c2aec3..f807515 100644
if (IS_BROXTON(dev))
dev_priv->display.hpd_irq_setup = bxt_hpd_irq_setup;
else if (HAS_PCH_SPT(dev) || HAS_PCH_KBP(dev))
-@@ -4593,35 +4594,36 @@ void intel_irq_init(struct drm_i915_private *dev_priv)
+@@ -4564,35 +4565,36 @@ void intel_irq_init(struct drm_i915_private *dev_priv)
else
dev_priv->display.hpd_irq_setup = ilk_hpd_irq_setup;
} else if (HAS_PCH_SPLIT(dev)) {
@@ -48670,10 +53057,10 @@ index 1c2aec3..f807515 100644
/**
diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
-index 6bc93ba..57e0fa9 100644
+index 8079e5b..70051e8 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
-@@ -15595,13 +15595,13 @@ struct intel_quirk {
+@@ -16133,13 +16133,13 @@ struct intel_quirk {
int subsystem_vendor;
int subsystem_device;
void (*hook)(struct drm_device *dev);
@@ -48690,7 +53077,7 @@ index 6bc93ba..57e0fa9 100644
static int intel_dmi_reverse_brightness(const struct dmi_system_id *id)
{
-@@ -15609,18 +15609,20 @@ static int intel_dmi_reverse_brightness(const struct dmi_system_id *id)
+@@ -16147,18 +16147,20 @@ static int intel_dmi_reverse_brightness(const struct dmi_system_id *id)
return 1;
}
@@ -48721,7 +53108,7 @@ index 6bc93ba..57e0fa9 100644
.hook = quirk_invert_brightness,
},
};
-@@ -15703,7 +15705,7 @@ static void intel_init_quirks(struct drm_device *dev)
+@@ -16241,7 +16243,7 @@ static void intel_init_quirks(struct drm_device *dev)
q->hook(dev);
}
for (i = 0; i < ARRAY_SIZE(intel_dmi_quirks); i++) {
@@ -48731,10 +53118,10 @@ index 6bc93ba..57e0fa9 100644
}
}
diff --git a/drivers/gpu/drm/imx/imx-drm-core.c b/drivers/gpu/drm/imx/imx-drm-core.c
-index 7bf90e9..30711b9 100644
+index 9672b57..d25a507c 100644
--- a/drivers/gpu/drm/imx/imx-drm-core.c
+++ b/drivers/gpu/drm/imx/imx-drm-core.c
-@@ -380,7 +380,7 @@ int imx_drm_add_crtc(struct drm_device *drm, struct drm_crtc *crtc,
+@@ -226,7 +226,7 @@ int imx_drm_add_crtc(struct drm_device *drm, struct drm_crtc *crtc,
if (imxdrm->pipes >= MAX_CRTC)
return -EINVAL;
@@ -48744,7 +53131,7 @@ index 7bf90e9..30711b9 100644
imx_drm_crtc = kzalloc(sizeof(*imx_drm_crtc), GFP_KERNEL);
diff --git a/drivers/gpu/drm/imx/imx-tve.c b/drivers/gpu/drm/imx/imx-tve.c
-index 5e87594..98a690c 100644
+index 8fc0888..6dad243 100644
--- a/drivers/gpu/drm/imx/imx-tve.c
+++ b/drivers/gpu/drm/imx/imx-tve.c
@@ -252,7 +252,7 @@ static int imx_tve_connector_get_modes(struct drm_connector *connector)
@@ -48757,10 +53144,10 @@ index 5e87594..98a690c 100644
{
struct imx_tve *tve = con_to_tve(connector);
diff --git a/drivers/gpu/drm/mediatek/mtk_hdmi.c b/drivers/gpu/drm/mediatek/mtk_hdmi.c
-index 334562d..90fa448 100644
+index 0e8c4d9..f9d98b7 100644
--- a/drivers/gpu/drm/mediatek/mtk_hdmi.c
+++ b/drivers/gpu/drm/mediatek/mtk_hdmi.c
-@@ -1232,7 +1232,7 @@ static int mtk_hdmi_conn_get_modes(struct drm_connector *conn)
+@@ -1226,7 +1226,7 @@ static int mtk_hdmi_conn_get_modes(struct drm_connector *conn)
return ret;
}
@@ -48770,7 +53157,7 @@ index 334562d..90fa448 100644
{
struct mtk_hdmi *hdmi = hdmi_ctx_from_conn(conn);
diff --git a/drivers/gpu/drm/mga/mga_drv.c b/drivers/gpu/drm/mga/mga_drv.c
-index 5e2f131..c134c7c 100644
+index 25b2a1a..58ae09b 100644
--- a/drivers/gpu/drm/mga/mga_drv.c
+++ b/drivers/gpu/drm/mga/mga_drv.c
@@ -92,7 +92,10 @@ static struct pci_driver mga_pci_driver = {
@@ -49005,7 +53392,7 @@ index c108408..575750a 100644
struct drm_display_mode *mode)
{
diff --git a/drivers/gpu/drm/nouveau/nouveau_drm.c b/drivers/gpu/drm/nouveau/nouveau_drm.c
-index 66c1280..580abef 100644
+index 3100fd88..6d573f7 100644
--- a/drivers/gpu/drm/nouveau/nouveau_drm.c
+++ b/drivers/gpu/drm/nouveau/nouveau_drm.c
@@ -80,9 +80,8 @@ MODULE_PARM_DESC(runpm, "disable (0), force enable (1), optimus only default (-1
@@ -49037,7 +53424,7 @@ index 66c1280..580abef 100644
#if defined(CONFIG_DEBUG_FS)
.debugfs_init = nouveau_drm_debugfs_init,
.debugfs_cleanup = nouveau_drm_debugfs_cleanup,
-@@ -1086,9 +1087,10 @@ err_free:
+@@ -1086,9 +1087,10 @@ nouveau_platform_device_create(const struct nvkm_device_tegra_func *func,
static int __init
nouveau_drm_init(void)
{
@@ -49077,7 +53464,7 @@ index 462679a..88e32a7 100644
if (nr < DRM_COMMAND_BASE)
diff --git a/drivers/gpu/drm/nouveau/nouveau_ttm.c b/drivers/gpu/drm/nouveau/nouveau_ttm.c
-index 1825dbc..c1ec287 100644
+index a6dbe82..ec4668a 100644
--- a/drivers/gpu/drm/nouveau/nouveau_ttm.c
+++ b/drivers/gpu/drm/nouveau/nouveau_ttm.c
@@ -107,10 +107,10 @@ nouveau_vram_manager_new(struct ttm_mem_type_manager *man,
@@ -49294,10 +53681,10 @@ index 6911b8c..89d6867 100644
return 0;
}
diff --git a/drivers/gpu/drm/qxl/qxl_display.c b/drivers/gpu/drm/qxl/qxl_display.c
-index 3aef127..9ea7666 100644
+index a61c0d4..fab7be1 100644
--- a/drivers/gpu/drm/qxl/qxl_display.c
+++ b/drivers/gpu/drm/qxl/qxl_display.c
-@@ -826,7 +826,7 @@ static int qxl_conn_get_modes(struct drm_connector *connector)
+@@ -880,7 +880,7 @@ static int qxl_conn_get_modes(struct drm_connector *connector)
return ret;
}
@@ -49333,10 +53720,10 @@ index 460bbce..abeb896 100644
}
diff --git a/drivers/gpu/drm/qxl/qxl_drv.h b/drivers/gpu/drm/qxl/qxl_drv.h
-index 8e633ca..64debeb 100644
+index 5f3e5ad..a9e5887 100644
--- a/drivers/gpu/drm/qxl/qxl_drv.h
+++ b/drivers/gpu/drm/qxl/qxl_drv.h
-@@ -292,10 +292,10 @@ struct qxl_device {
+@@ -293,10 +293,10 @@ struct qxl_device {
unsigned int last_sent_io_cmd;
/* interrupt handling */
@@ -49437,7 +53824,7 @@ index 0bf1e20..42a7310 100644
ret = drm_irq_install(qdev->ddev, qdev->ddev->pdev->irq);
qdev->ram_header->int_mask = QXL_INTERRUPT_MASK;
diff --git a/drivers/gpu/drm/qxl/qxl_ttm.c b/drivers/gpu/drm/qxl/qxl_ttm.c
-index d50c967..f96d908 100644
+index e26c82d..7151ace 100644
--- a/drivers/gpu/drm/qxl/qxl_ttm.c
+++ b/drivers/gpu/drm/qxl/qxl_ttm.c
@@ -103,7 +103,7 @@ static void qxl_ttm_global_fini(struct qxl_device *qdev)
@@ -49460,7 +53847,7 @@ index d50c967..f96d908 100644
}
vma->vm_ops = &qxl_ttm_vm_ops;
return 0;
-@@ -474,25 +476,23 @@ static int qxl_mm_dump_table(struct seq_file *m, void *data)
+@@ -475,25 +477,23 @@ static int qxl_mm_dump_table(struct seq_file *m, void *data)
static int qxl_ttm_debugfs_init(struct qxl_device *qdev)
{
#if defined(CONFIG_DEBUG_FS)
@@ -49489,10 +53876,10 @@ index d50c967..f96d908 100644
- if (i == 0)
- qxl_mem_types_list[i].data = qdev->mman.bdev.man[TTM_PL_VRAM].priv;
- else
-- qxl_mem_types_list[i].data = qdev->mman.bdev.man[TTM_PL_PRIV0].priv;
+- qxl_mem_types_list[i].data = qdev->mman.bdev.man[TTM_PL_PRIV].priv;
+ pax_open_kernel();
+ const_cast(qxl_mem_types_list[0].data) = qdev->mman.bdev.man[TTM_PL_VRAM].priv;
-+ const_cast(qxl_mem_types_list[1].data) = qdev->mman.bdev.man[TTM_PL_PRIV0].priv;
++ const_cast(qxl_mem_types_list[1].data) = qdev->mman.bdev.man[TTM_PL_PRIV].priv;
+ pax_close_kernel();
- }
@@ -49515,7 +53902,7 @@ index 14fd83b5f..b2acbd19 100644
/* We don't support anything other than bus-mastering ring mode,
* but the ring can be in either AGP or PCI space for the ring
diff --git a/drivers/gpu/drm/r128/r128_drv.c b/drivers/gpu/drm/r128/r128_drv.c
-index c57b4de..1a875fb 100644
+index a982be5..a6f2cf8 100644
--- a/drivers/gpu/drm/r128/r128_drv.c
+++ b/drivers/gpu/drm/r128/r128_drv.c
@@ -94,7 +94,9 @@ static struct pci_driver r128_pci_driver = {
@@ -49659,10 +54046,10 @@ index b928c17..e5d9400 100644
if (regcomp
(&mask_rex, "(0x[0-9a-fA-F]*) *([_a-zA-Z0-9]*)", REG_EXTENDED)) {
diff --git a/drivers/gpu/drm/radeon/radeon_atpx_handler.c b/drivers/gpu/drm/radeon/radeon_atpx_handler.c
-index 34b4ace..2f6e0e6 100644
+index 0ae13cd2..7b4245a 100644
--- a/drivers/gpu/drm/radeon/radeon_atpx_handler.c
+++ b/drivers/gpu/drm/radeon/radeon_atpx_handler.c
-@@ -521,7 +521,7 @@ static int radeon_atpx_init(void)
+@@ -526,7 +526,7 @@ static int radeon_atpx_init(void)
* look up whether we are the integrated or discrete GPU (all asics).
* Returns the client id.
*/
@@ -49672,7 +54059,7 @@ index 34b4ace..2f6e0e6 100644
if (radeon_atpx_priv.dhandle == ACPI_HANDLE(&pdev->dev))
return VGA_SWITCHEROO_IGD;
diff --git a/drivers/gpu/drm/radeon/radeon_connectors.c b/drivers/gpu/drm/radeon/radeon_connectors.c
-index b79f3b0..a1fd177 100644
+index 27affbd..3f59f83 100644
--- a/drivers/gpu/drm/radeon/radeon_connectors.c
+++ b/drivers/gpu/drm/radeon/radeon_connectors.c
@@ -857,7 +857,7 @@ static int radeon_lvds_get_modes(struct drm_connector *connector)
@@ -49684,7 +54071,7 @@ index b79f3b0..a1fd177 100644
struct drm_display_mode *mode)
{
struct drm_encoder *encoder = radeon_best_single_encoder(connector);
-@@ -1000,7 +1000,7 @@ static int radeon_vga_get_modes(struct drm_connector *connector)
+@@ -1011,7 +1011,7 @@ static int radeon_vga_get_modes(struct drm_connector *connector)
return ret;
}
@@ -49693,7 +54080,7 @@ index b79f3b0..a1fd177 100644
struct drm_display_mode *mode)
{
struct drm_device *dev = connector->dev;
-@@ -1139,7 +1139,7 @@ static int radeon_tv_get_modes(struct drm_connector *connector)
+@@ -1151,7 +1151,7 @@ static int radeon_tv_get_modes(struct drm_connector *connector)
return 1;
}
@@ -49702,7 +54089,7 @@ index b79f3b0..a1fd177 100644
struct drm_display_mode *mode)
{
if ((mode->hdisplay > 1024) || (mode->vdisplay > 768))
-@@ -1470,7 +1470,7 @@ static void radeon_dvi_force(struct drm_connector *connector)
+@@ -1483,7 +1483,7 @@ static void radeon_dvi_force(struct drm_connector *connector)
radeon_connector->use_digital = true;
}
@@ -49711,7 +54098,7 @@ index b79f3b0..a1fd177 100644
struct drm_display_mode *mode)
{
struct drm_device *dev = connector->dev;
-@@ -1767,7 +1767,7 @@ out:
+@@ -1781,7 +1781,7 @@ radeon_dp_detect(struct drm_connector *connector, bool force)
return ret;
}
@@ -49721,7 +54108,7 @@ index b79f3b0..a1fd177 100644
{
struct drm_device *dev = connector->dev;
diff --git a/drivers/gpu/drm/radeon/radeon_device.c b/drivers/gpu/drm/radeon/radeon_device.c
-index edd2d03..62af79a 100644
+index 621af06..1508b3fc 100644
--- a/drivers/gpu/drm/radeon/radeon_device.c
+++ b/drivers/gpu/drm/radeon/radeon_device.c
@@ -1289,7 +1289,7 @@ static bool radeon_switcheroo_can_switch(struct pci_dev *pdev)
@@ -49734,10 +54121,10 @@ index edd2d03..62af79a 100644
static const struct vga_switcheroo_client_ops radeon_switcheroo_ops = {
diff --git a/drivers/gpu/drm/radeon/radeon_drv.c b/drivers/gpu/drm/radeon/radeon_drv.c
-index c01a7c6..fd62ace 100644
+index e0c143b..3a7bc79 100644
--- a/drivers/gpu/drm/radeon/radeon_drv.c
+++ b/drivers/gpu/drm/radeon/radeon_drv.c
-@@ -134,7 +134,7 @@ extern int radeon_get_crtc_scanoutpos(struct drm_device *dev, unsigned int crtc,
+@@ -137,7 +137,7 @@ extern int radeon_get_crtc_scanoutpos(struct drm_device *dev, unsigned int crtc,
const struct drm_display_mode *mode);
extern bool radeon_is_px(struct drm_device *dev);
extern const struct drm_ioctl_desc radeon_ioctls_kms[];
@@ -49746,7 +54133,7 @@ index c01a7c6..fd62ace 100644
int radeon_mmap(struct file *filp, struct vm_area_struct *vma);
int radeon_mode_dumb_mmap(struct drm_file *filp,
struct drm_device *dev,
-@@ -516,7 +516,7 @@ static struct drm_driver kms_driver = {
+@@ -534,7 +534,7 @@ static struct drm_driver kms_driver = {
.driver_features =
DRIVER_USE_AGP |
DRIVER_HAVE_IRQ | DRIVER_IRQ_SHARED | DRIVER_GEM |
@@ -49755,7 +54142,7 @@ index c01a7c6..fd62ace 100644
.load = radeon_driver_load_kms,
.open = radeon_driver_open_kms,
.preclose = radeon_driver_preclose_kms,
-@@ -591,8 +591,11 @@ static int __init radeon_init(void)
+@@ -606,8 +606,11 @@ static int __init radeon_init(void)
DRM_INFO("radeon kernel modesetting enabled.\n");
driver = &kms_driver;
pdriver = &radeon_kms_pci_driver;
@@ -49812,10 +54199,10 @@ index 0b98ea1..a3c770f 100644
ret = drm_ioctl(filp, cmd, arg);
diff --git a/drivers/gpu/drm/radeon/radeon_kms.c b/drivers/gpu/drm/radeon/radeon_kms.c
-index 835563c..85913cc 100644
+index 4388dde..07a718c 100644
--- a/drivers/gpu/drm/radeon/radeon_kms.c
+++ b/drivers/gpu/drm/radeon/radeon_kms.c
-@@ -825,7 +825,7 @@ u32 radeon_get_vblank_counter_kms(struct drm_device *dev, unsigned int pipe)
+@@ -830,7 +830,7 @@ u32 radeon_get_vblank_counter_kms(struct drm_device *dev, unsigned int pipe)
* Enable the interrupt on the requested crtc (all asics).
* Returns 0 on success, -EINVAL on failure.
*/
@@ -49824,7 +54211,7 @@ index 835563c..85913cc 100644
{
struct radeon_device *rdev = dev->dev_private;
unsigned long irqflags;
-@@ -851,7 +851,7 @@ int radeon_enable_vblank_kms(struct drm_device *dev, int crtc)
+@@ -856,7 +856,7 @@ int radeon_enable_vblank_kms(struct drm_device *dev, int crtc)
*
* Disable the interrupt on the requested crtc (all asics).
*/
@@ -49833,7 +54220,7 @@ index 835563c..85913cc 100644
{
struct radeon_device *rdev = dev->dev_private;
unsigned long irqflags;
-@@ -880,7 +880,7 @@ void radeon_disable_vblank_kms(struct drm_device *dev, int crtc)
+@@ -885,7 +885,7 @@ void radeon_disable_vblank_kms(struct drm_device *dev, int crtc)
* scanout position. (all asics).
* Returns postive status flags on success, negative error on failure.
*/
@@ -49842,17 +54229,17 @@ index 835563c..85913cc 100644
int *max_error,
struct timeval *vblank_time,
unsigned flags)
-@@ -949,4 +949,4 @@ const struct drm_ioctl_desc radeon_ioctls_kms[] = {
+@@ -954,4 +954,4 @@ const struct drm_ioctl_desc radeon_ioctls_kms[] = {
DRM_IOCTL_DEF_DRV(RADEON_GEM_OP, radeon_gem_op_ioctl, DRM_AUTH|DRM_RENDER_ALLOW),
DRM_IOCTL_DEF_DRV(RADEON_GEM_USERPTR, radeon_gem_userptr_ioctl, DRM_AUTH|DRM_RENDER_ALLOW),
};
-int radeon_max_kms_ioctl = ARRAY_SIZE(radeon_ioctls_kms);
+const int radeon_max_kms_ioctl = ARRAY_SIZE(radeon_ioctls_kms);
diff --git a/drivers/gpu/drm/radeon/radeon_ttm.c b/drivers/gpu/drm/radeon/radeon_ttm.c
-index c2e0a1c..6270bca 100644
+index 3de5e6e..3072170 100644
--- a/drivers/gpu/drm/radeon/radeon_ttm.c
+++ b/drivers/gpu/drm/radeon/radeon_ttm.c
-@@ -974,7 +974,7 @@ void radeon_ttm_set_active_vram_size(struct radeon_device *rdev, u64 size)
+@@ -975,7 +975,7 @@ void radeon_ttm_set_active_vram_size(struct radeon_device *rdev, u64 size)
man->size = size >> PAGE_SHIFT;
}
@@ -49861,7 +54248,7 @@ index c2e0a1c..6270bca 100644
static const struct vm_operations_struct *ttm_vm_ops = NULL;
static int radeon_ttm_fault(struct vm_area_struct *vma, struct vm_fault *vmf)
-@@ -1015,8 +1015,10 @@ int radeon_mmap(struct file *filp, struct vm_area_struct *vma)
+@@ -1016,8 +1016,10 @@ int radeon_mmap(struct file *filp, struct vm_area_struct *vma)
}
if (unlikely(ttm_vm_ops == NULL)) {
ttm_vm_ops = vma->vm_ops;
@@ -49883,7 +54270,7 @@ index d47dff9..0752202 100644
-int savage_max_ioctl = ARRAY_SIZE(savage_ioctls);
+const int savage_max_ioctl = ARRAY_SIZE(savage_ioctls);
diff --git a/drivers/gpu/drm/savage/savage_drv.c b/drivers/gpu/drm/savage/savage_drv.c
-index 21aed1f..85d23a0 100644
+index 3b80713..472b2cd 100644
--- a/drivers/gpu/drm/savage/savage_drv.c
+++ b/drivers/gpu/drm/savage/savage_drv.c
@@ -76,7 +76,10 @@ static struct pci_driver savage_pci_driver = {
@@ -49912,7 +54299,7 @@ index 37b6995..9b31aaf 100644
#define S3_SAVAGE3D_SERIES(chip) ((chip>=S3_SAVAGE3D) && (chip<=S3_SAVAGE_MX))
diff --git a/drivers/gpu/drm/sis/sis_drv.c b/drivers/gpu/drm/sis/sis_drv.c
-index 79bce76..6c02219 100644
+index ae98398..78e57e8 100644
--- a/drivers/gpu/drm/sis/sis_drv.c
+++ b/drivers/gpu/drm/sis/sis_drv.c
@@ -128,7 +128,10 @@ static struct pci_driver sis_pci_driver = {
@@ -49950,7 +54337,7 @@ index 03defda..6f56b68 100644
-int sis_max_ioctl = ARRAY_SIZE(sis_ioctls);
+const int sis_max_ioctl = ARRAY_SIZE(sis_ioctls);
diff --git a/drivers/gpu/drm/sti/sti_cursor.c b/drivers/gpu/drm/sti/sti_cursor.c
-index 3b53f7f..b0576c2 100644
+index cca75bd..a1a64de 100644
--- a/drivers/gpu/drm/sti/sti_cursor.c
+++ b/drivers/gpu/drm/sti/sti_cursor.c
@@ -126,7 +126,7 @@ static int cursor_dbg_show(struct seq_file *s, void *data)
@@ -49974,10 +54361,10 @@ index 3b53f7f..b0576c2 100644
return drm_debugfs_create_files(cursor_debugfs_files,
ARRAY_SIZE(cursor_debugfs_files),
diff --git a/drivers/gpu/drm/sti/sti_dvo.c b/drivers/gpu/drm/sti/sti_dvo.c
-index 00881eb..3863e51 100644
+index e8c1ed0..b034392 100644
--- a/drivers/gpu/drm/sti/sti_dvo.c
+++ b/drivers/gpu/drm/sti/sti_dvo.c
-@@ -190,7 +190,7 @@ static int dvo_dbg_show(struct seq_file *s, void *data)
+@@ -191,7 +191,7 @@ static int dvo_dbg_show(struct seq_file *s, void *data)
return 0;
}
@@ -49986,7 +54373,7 @@ index 00881eb..3863e51 100644
{ "dvo", dvo_dbg_show, 0, NULL },
};
-@@ -205,8 +205,10 @@ static int dvo_debugfs_init(struct sti_dvo *dvo, struct drm_minor *minor)
+@@ -206,8 +206,10 @@ static int dvo_debugfs_init(struct sti_dvo *dvo, struct drm_minor *minor)
{
unsigned int i;
@@ -49998,7 +54385,7 @@ index 00881eb..3863e51 100644
return drm_debugfs_create_files(dvo_debugfs_files,
ARRAY_SIZE(dvo_debugfs_files),
diff --git a/drivers/gpu/drm/sti/sti_gdp.c b/drivers/gpu/drm/sti/sti_gdp.c
-index b8d942c..476893d 100644
+index 81df309..ab864fd 100644
--- a/drivers/gpu/drm/sti/sti_gdp.c
+++ b/drivers/gpu/drm/sti/sti_gdp.c
@@ -284,22 +284,22 @@ static int gdp_node_dbg_show(struct seq_file *s, void *arg)
@@ -50049,10 +54436,10 @@ index b8d942c..476893d 100644
return drm_debugfs_create_files(gdp_debugfs_files,
nb_files,
diff --git a/drivers/gpu/drm/sti/sti_hda.c b/drivers/gpu/drm/sti/sti_hda.c
-index 8505569..aae4422 100644
+index e7c243f..7cc96133 100644
--- a/drivers/gpu/drm/sti/sti_hda.c
+++ b/drivers/gpu/drm/sti/sti_hda.c
-@@ -394,7 +394,7 @@ static int hda_dbg_show(struct seq_file *s, void *data)
+@@ -361,7 +361,7 @@ static int hda_dbg_show(struct seq_file *s, void *data)
return 0;
}
@@ -50061,7 +54448,7 @@ index 8505569..aae4422 100644
{ "hda", hda_dbg_show, 0, NULL },
};
-@@ -409,8 +409,10 @@ static int hda_debugfs_init(struct sti_hda *hda, struct drm_minor *minor)
+@@ -376,8 +376,10 @@ static int hda_debugfs_init(struct sti_hda *hda, struct drm_minor *minor)
{
unsigned int i;
@@ -50073,10 +54460,10 @@ index 8505569..aae4422 100644
return drm_debugfs_create_files(hda_debugfs_files,
ARRAY_SIZE(hda_debugfs_files),
diff --git a/drivers/gpu/drm/sti/sti_hdmi.c b/drivers/gpu/drm/sti/sti_hdmi.c
-index fedc17f..d43c181 100644
+index 376b076..9a2cca5 100644
--- a/drivers/gpu/drm/sti/sti_hdmi.c
+++ b/drivers/gpu/drm/sti/sti_hdmi.c
-@@ -728,7 +728,7 @@ static int hdmi_dbg_show(struct seq_file *s, void *data)
+@@ -727,7 +727,7 @@ static int hdmi_dbg_show(struct seq_file *s, void *data)
return 0;
}
@@ -50085,7 +54472,7 @@ index fedc17f..d43c181 100644
{ "hdmi", hdmi_dbg_show, 0, NULL },
};
-@@ -743,8 +743,10 @@ static int hdmi_debugfs_init(struct sti_hdmi *hdmi, struct drm_minor *minor)
+@@ -742,8 +742,10 @@ static int hdmi_debugfs_init(struct sti_hdmi *hdmi, struct drm_minor *minor)
{
unsigned int i;
@@ -50097,10 +54484,10 @@ index fedc17f..d43c181 100644
return drm_debugfs_create_files(hdmi_debugfs_files,
ARRAY_SIZE(hdmi_debugfs_files),
diff --git a/drivers/gpu/drm/sti/sti_hqvdp.c b/drivers/gpu/drm/sti/sti_hqvdp.c
-index b5ee783..6d45c45 100644
+index f88130f..a2be8a4 100644
--- a/drivers/gpu/drm/sti/sti_hqvdp.c
+++ b/drivers/gpu/drm/sti/sti_hqvdp.c
-@@ -627,7 +627,7 @@ static int hqvdp_dbg_show(struct seq_file *s, void *data)
+@@ -628,7 +628,7 @@ static int hqvdp_dbg_show(struct seq_file *s, void *data)
return 0;
}
@@ -50109,7 +54496,7 @@ index b5ee783..6d45c45 100644
{ "hqvdp", hqvdp_dbg_show, 0, NULL },
};
-@@ -635,8 +635,10 @@ static int hqvdp_debugfs_init(struct sti_hqvdp *hqvdp, struct drm_minor *minor)
+@@ -636,8 +636,10 @@ static int hqvdp_debugfs_init(struct sti_hqvdp *hqvdp, struct drm_minor *minor)
{
unsigned int i;
@@ -50121,10 +54508,10 @@ index b5ee783..6d45c45 100644
return drm_debugfs_create_files(hqvdp_debugfs_files,
ARRAY_SIZE(hqvdp_debugfs_files),
diff --git a/drivers/gpu/drm/sti/sti_mixer.c b/drivers/gpu/drm/sti/sti_mixer.c
-index 7d9aea8..e0542f6 100644
+index 4ddc58f..5c93f1a 100644
--- a/drivers/gpu/drm/sti/sti_mixer.c
+++ b/drivers/gpu/drm/sti/sti_mixer.c
-@@ -173,18 +173,18 @@ static int mixer_dbg_show(struct seq_file *s, void *arg)
+@@ -167,18 +167,18 @@ static int mixer_dbg_show(struct seq_file *s, void *arg)
return 0;
}
@@ -50146,7 +54533,7 @@ index 7d9aea8..e0542f6 100644
int nb_files;
switch (mixer->id) {
-@@ -200,8 +200,10 @@ int sti_mixer_debugfs_init(struct sti_mixer *mixer, struct drm_minor *minor)
+@@ -194,8 +194,10 @@ int sti_mixer_debugfs_init(struct sti_mixer *mixer, struct drm_minor *minor)
return -EINVAL;
}
@@ -50158,10 +54545,10 @@ index 7d9aea8..e0542f6 100644
return drm_debugfs_create_files(mixer_debugfs_files,
nb_files,
diff --git a/drivers/gpu/drm/sti/sti_tvout.c b/drivers/gpu/drm/sti/sti_tvout.c
-index e25995b..8f2b12f 100644
+index ad46d35..488be64 100644
--- a/drivers/gpu/drm/sti/sti_tvout.c
+++ b/drivers/gpu/drm/sti/sti_tvout.c
-@@ -585,7 +585,7 @@ static int tvout_dbg_show(struct seq_file *s, void *data)
+@@ -563,7 +563,7 @@ static int tvout_dbg_show(struct seq_file *s, void *data)
return 0;
}
@@ -50170,7 +54557,7 @@ index e25995b..8f2b12f 100644
{ "tvout", tvout_dbg_show, 0, NULL },
};
-@@ -600,8 +600,10 @@ static int tvout_debugfs_init(struct sti_tvout *tvout, struct drm_minor *minor)
+@@ -578,8 +578,10 @@ static int tvout_debugfs_init(struct sti_tvout *tvout, struct drm_minor *minor)
{
unsigned int i;
@@ -50182,7 +54569,7 @@ index e25995b..8f2b12f 100644
return drm_debugfs_create_files(tvout_debugfs_files,
ARRAY_SIZE(tvout_debugfs_files),
diff --git a/drivers/gpu/drm/sti/sti_vid.c b/drivers/gpu/drm/sti/sti_vid.c
-index 47634a0..7a9b19f5 100644
+index 2ad5989..d0707b3 100644
--- a/drivers/gpu/drm/sti/sti_vid.c
+++ b/drivers/gpu/drm/sti/sti_vid.c
@@ -119,7 +119,7 @@ static int vid_dbg_show(struct seq_file *s, void *arg)
@@ -50206,10 +54593,10 @@ index 47634a0..7a9b19f5 100644
return drm_debugfs_create_files(vid_debugfs_files,
ARRAY_SIZE(vid_debugfs_files),
diff --git a/drivers/gpu/drm/tegra/dc.c b/drivers/gpu/drm/tegra/dc.c
-index 8495bd0..21a9725 100644
+index 4010d69..d1f7e6e 100644
--- a/drivers/gpu/drm/tegra/dc.c
+++ b/drivers/gpu/drm/tegra/dc.c
-@@ -1685,7 +1685,7 @@ static int tegra_dc_debugfs_init(struct tegra_dc *dc, struct drm_minor *minor)
+@@ -1675,7 +1675,7 @@ static int tegra_dc_debugfs_init(struct tegra_dc *dc, struct drm_minor *minor)
}
for (i = 0; i < ARRAY_SIZE(debugfs_files); i++)
@@ -50263,7 +54650,7 @@ index 74d0540..f5277db 100644
err = drm_debugfs_create_files(sor->debugfs_files,
ARRAY_SIZE(debugfs_files),
diff --git a/drivers/gpu/drm/tilcdc/Makefile b/drivers/gpu/drm/tilcdc/Makefile
-index deeca48..54e1b6c 100644
+index 6f67517..3f09073 100644
--- a/drivers/gpu/drm/tilcdc/Makefile
+++ b/drivers/gpu/drm/tilcdc/Makefile
@@ -1,7 +1,7 @@
@@ -50278,7 +54665,7 @@ index deeca48..54e1b6c 100644
obj-$(CONFIG_DRM_TILCDC_SLAVE_COMPAT) += tilcdc_slave_compat.o \
tilcdc_slave_compat.dtb.o
diff --git a/drivers/gpu/drm/tilcdc/tilcdc_external.c b/drivers/gpu/drm/tilcdc/tilcdc_external.c
-index 03acb4f..8d4328e 100644
+index 68e8950..7149c5a 100644
--- a/drivers/gpu/drm/tilcdc/tilcdc_external.c
+++ b/drivers/gpu/drm/tilcdc/tilcdc_external.c
@@ -27,7 +27,7 @@ static const struct tilcdc_panel_info panel_info_tda998x = {
@@ -50290,7 +54677,7 @@ index 03acb4f..8d4328e 100644
struct drm_display_mode *mode)
{
struct tilcdc_drm_private *priv = connector->dev->dev_private;
-@@ -56,7 +56,7 @@ static int tilcdc_add_external_encoder(struct drm_device *dev, int *bpp,
+@@ -56,7 +56,7 @@ static int tilcdc_add_external_encoder(struct drm_device *dev,
struct drm_connector *connector)
{
struct tilcdc_drm_private *priv = dev->dev_private;
@@ -50300,7 +54687,7 @@ index 03acb4f..8d4328e 100644
priv->connectors[priv->num_connectors] = connector;
priv->encoders[priv->num_encoders++] = connector->encoder;
diff --git a/drivers/gpu/drm/tilcdc/tilcdc_panel.c b/drivers/gpu/drm/tilcdc/tilcdc_panel.c
-index ff7774c..697a5fc 100644
+index 2134bb20..2cd7c97 100644
--- a/drivers/gpu/drm/tilcdc/tilcdc_panel.c
+++ b/drivers/gpu/drm/tilcdc/tilcdc_panel.c
@@ -179,7 +179,7 @@ static int panel_connector_get_modes(struct drm_connector *connector)
@@ -50313,10 +54700,10 @@ index ff7774c..697a5fc 100644
{
struct tilcdc_drm_private *priv = connector->dev->dev_private;
diff --git a/drivers/gpu/drm/tilcdc/tilcdc_tfp410.c b/drivers/gpu/drm/tilcdc/tilcdc_tfp410.c
-index 6b8c5b3..0899e85 100644
+index 458043a..e3bace6 100644
--- a/drivers/gpu/drm/tilcdc/tilcdc_tfp410.c
+++ b/drivers/gpu/drm/tilcdc/tilcdc_tfp410.c
-@@ -184,7 +184,7 @@ static int tfp410_connector_get_modes(struct drm_connector *connector)
+@@ -185,7 +185,7 @@ static int tfp410_connector_get_modes(struct drm_connector *connector)
return ret;
}
@@ -50346,7 +54733,7 @@ index aa0bd054..aea6a01 100644
};
EXPORT_SYMBOL(ttm_bo_manager_func);
diff --git a/drivers/gpu/drm/ttm/ttm_memory.c b/drivers/gpu/drm/ttm/ttm_memory.c
-index a1803fb..c53f6b0 100644
+index 29855be..b039e24 100644
--- a/drivers/gpu/drm/ttm/ttm_memory.c
+++ b/drivers/gpu/drm/ttm/ttm_memory.c
@@ -264,7 +264,7 @@ static int ttm_mem_init_kernel_zone(struct ttm_mem_global *glob,
@@ -50398,7 +54785,7 @@ index a37de5d..4a0db00 100644
if (NUM_PAGES_TO_ALLOC < nr_free)
npages_to_free = NUM_PAGES_TO_ALLOC;
-@@ -371,7 +370,8 @@ restart:
+@@ -371,7 +370,8 @@ static int ttm_page_pool_free(struct ttm_page_pool *pool, unsigned nr_free,
__list_del(&p->lru, &pool->list);
ttm_pool_update_free_locked(pool, freed_pages);
@@ -50426,7 +54813,7 @@ index a37de5d..4a0db00 100644
if (shrink_pages == 0)
break;
pool = &_manager->pools[(i + pool_offset)%NUM_POOLS];
-@@ -673,7 +673,7 @@ out:
+@@ -673,7 +673,7 @@ static unsigned ttm_page_pool_get_pages(struct ttm_page_pool *pool,
}
/* Put all pages in pages list to correct pool to wait for reuse */
@@ -50445,7 +54832,7 @@ index a37de5d..4a0db00 100644
/* set zero flag for page allocation if required */
diff --git a/drivers/gpu/drm/ttm/ttm_page_alloc_dma.c b/drivers/gpu/drm/ttm/ttm_page_alloc_dma.c
-index bef9f6f..ca48e17 100644
+index cec4b4b..71726dd 100644
--- a/drivers/gpu/drm/ttm/ttm_page_alloc_dma.c
+++ b/drivers/gpu/drm/ttm/ttm_page_alloc_dma.c
@@ -56,7 +56,7 @@
@@ -50476,7 +54863,7 @@ index bef9f6f..ca48e17 100644
if (NUM_PAGES_TO_ALLOC < nr_free)
npages_to_free = NUM_PAGES_TO_ALLOC;
-@@ -502,7 +501,8 @@ restart:
+@@ -502,7 +501,8 @@ static unsigned ttm_dma_page_pool_free(struct dma_pool *pool, unsigned nr_free,
/* remove range of pages from the pool */
if (freed_pages) {
ttm_pool_update_free_locked(pool, freed_pages);
@@ -50486,7 +54873,7 @@ index bef9f6f..ca48e17 100644
}
spin_unlock_irqrestore(&pool->lock, irq_flags);
-@@ -939,7 +939,7 @@ void ttm_dma_unpopulate(struct ttm_dma_tt *ttm_dma, struct device *dev)
+@@ -938,7 +938,7 @@ void ttm_dma_unpopulate(struct ttm_dma_tt *ttm_dma, struct device *dev)
struct dma_page *d_page, *next;
enum pool_type type;
bool is_cached = false;
@@ -50495,7 +54882,7 @@ index bef9f6f..ca48e17 100644
unsigned long irq_flags;
type = ttm_to_type(ttm->page_flags, ttm->caching_state);
-@@ -1014,7 +1014,7 @@ ttm_dma_pool_shrink_scan(struct shrinker *shrink, struct shrink_control *sc)
+@@ -1012,7 +1012,7 @@ ttm_dma_pool_shrink_scan(struct shrinker *shrink, struct shrink_control *sc)
static unsigned start_pool;
unsigned idx = 0;
unsigned pool_offset;
@@ -50504,7 +54891,7 @@ index bef9f6f..ca48e17 100644
struct device_pools *p;
unsigned long freed = 0;
-@@ -1027,7 +1027,7 @@ ttm_dma_pool_shrink_scan(struct shrinker *shrink, struct shrink_control *sc)
+@@ -1025,7 +1025,7 @@ ttm_dma_pool_shrink_scan(struct shrinker *shrink, struct shrink_control *sc)
goto out;
pool_offset = ++start_pool % _manager->npools;
list_for_each_entry(p, &_manager->pools, pools) {
@@ -50513,7 +54900,7 @@ index bef9f6f..ca48e17 100644
if (!p->dev)
continue;
-@@ -1041,7 +1041,7 @@ ttm_dma_pool_shrink_scan(struct shrinker *shrink, struct shrink_control *sc)
+@@ -1039,7 +1039,7 @@ ttm_dma_pool_shrink_scan(struct shrinker *shrink, struct shrink_control *sc)
shrink_pages = ttm_dma_page_pool_free(p->pool, nr_free, true);
freed += nr_free - shrink_pages;
@@ -50523,7 +54910,7 @@ index bef9f6f..ca48e17 100644
nr_free, shrink_pages);
}
diff --git a/drivers/gpu/drm/udl/udl_connector.c b/drivers/gpu/drm/udl/udl_connector.c
-index 4709b54..beb015d 100644
+index d2f57c5..06d2af7 100644
--- a/drivers/gpu/drm/udl/udl_connector.c
+++ b/drivers/gpu/drm/udl/udl_connector.c
@@ -80,7 +80,7 @@ static int udl_get_modes(struct drm_connector *connector)
@@ -50548,10 +54935,10 @@ index 611b6b9..e0faec1 100644
#endif
diff --git a/drivers/gpu/drm/vc4/vc4_drv.c b/drivers/gpu/drm/vc4/vc4_drv.c
-index 9ecef93..d388af0 100644
+index 8703f56..7e8f99c 100644
--- a/drivers/gpu/drm/vc4/vc4_drv.c
+++ b/drivers/gpu/drm/vc4/vc4_drv.c
-@@ -179,6 +179,11 @@ static int compare_dev(struct device *dev, void *data)
+@@ -180,6 +180,11 @@ static int compare_dev(struct device *dev, void *data)
return dev == data;
}
@@ -50563,7 +54950,7 @@ index 9ecef93..d388af0 100644
static void vc4_match_add_drivers(struct device *dev,
struct component_match **match,
struct platform_driver *const *drivers,
-@@ -190,8 +195,7 @@ static void vc4_match_add_drivers(struct device *dev,
+@@ -191,8 +196,7 @@ static void vc4_match_add_drivers(struct device *dev,
struct device_driver *drv = &drivers[i]->driver;
struct device *p = NULL, *d;
@@ -50584,7 +54971,7 @@ index d17d8f2..67e8e48b 100644
-int via_max_ioctl = ARRAY_SIZE(via_ioctls);
+const int via_max_ioctl = ARRAY_SIZE(via_ioctls);
diff --git a/drivers/gpu/drm/via/via_drv.c b/drivers/gpu/drm/via/via_drv.c
-index ed8aa8f..114cc8d 100644
+index e5582ba..67c921b 100644
--- a/drivers/gpu/drm/via/via_drv.c
+++ b/drivers/gpu/drm/via/via_drv.c
@@ -107,7 +107,10 @@ static struct pci_driver via_pci_driver = {
@@ -50705,7 +55092,7 @@ index ea8172c..6ceff63 100644
case VIA_IRQ_ABSOLUTE:
break;
diff --git a/drivers/gpu/drm/virtio/virtgpu_display.c b/drivers/gpu/drm/virtio/virtgpu_display.c
-index 4e192aa..15665db 100644
+index 5804870..67f126b 100644
--- a/drivers/gpu/drm/virtio/virtgpu_display.c
+++ b/drivers/gpu/drm/virtio/virtgpu_display.c
@@ -192,7 +192,7 @@ static int virtio_gpu_conn_get_modes(struct drm_connector *connector)
@@ -50739,7 +55126,7 @@ index 80482ac..bf693e5 100644
static int virtio_gpu_init_mem_type(struct ttm_bo_device *bdev, uint32_t type,
diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_drv.h b/drivers/gpu/drm/vmwgfx/vmwgfx_drv.h
-index 74304b0..d453794 100644
+index 1e59a48..d5f230b 100644
--- a/drivers/gpu/drm/vmwgfx/vmwgfx_drv.h
+++ b/drivers/gpu/drm/vmwgfx/vmwgfx_drv.h
@@ -439,7 +439,7 @@ struct vmw_private {
@@ -50868,10 +55255,10 @@ index 5f962bf..b095fc5 100644
/* copy over all the bus versions */
if (dev->bus && dev->bus->pm) {
diff --git a/drivers/hid/hid-core.c b/drivers/hid/hid-core.c
-index 08f53c7..8f2d6a3 100644
+index 2b89c70..cc99025 100644
--- a/drivers/hid/hid-core.c
+++ b/drivers/hid/hid-core.c
-@@ -2637,7 +2637,7 @@ EXPORT_SYMBOL_GPL(hid_ignore);
+@@ -2645,7 +2645,7 @@ EXPORT_SYMBOL_GPL(hid_ignore);
int hid_add_device(struct hid_device *hdev)
{
@@ -50880,7 +55267,7 @@ index 08f53c7..8f2d6a3 100644
int ret;
if (WARN_ON(hdev->status & HID_STAT_ADDED))
-@@ -2681,7 +2681,7 @@ int hid_add_device(struct hid_device *hdev)
+@@ -2689,7 +2689,7 @@ int hid_add_device(struct hid_device *hdev)
/* XXX hack, any other cleaner solution after the driver core
* is converted to allow more than 20 bytes as the device name? */
dev_set_name(&hdev->dev, "%04X:%04X:%04X.%04X", hdev->bus,
@@ -50890,7 +55277,7 @@ index 08f53c7..8f2d6a3 100644
hid_debug_register(hdev, dev_name(&hdev->dev));
ret = device_add(&hdev->dev);
diff --git a/drivers/hid/hid-magicmouse.c b/drivers/hid/hid-magicmouse.c
-index d6fa496..dde31aa 100644
+index 20b40ad..7eb5632 100644
--- a/drivers/hid/hid-magicmouse.c
+++ b/drivers/hid/hid-magicmouse.c
@@ -34,7 +34,7 @@ module_param(emulate_scroll_wheel, bool, 0644);
@@ -50903,7 +55290,7 @@ index d6fa496..dde31aa 100644
if (!val || kstrtoul(val, 0, &speed) || speed > 63)
return -EINVAL;
diff --git a/drivers/hid/hid-sensor-custom.c b/drivers/hid/hid-sensor-custom.c
-index 5614fee..8a6f5f6 100644
+index 3a84aaf..915780c 100644
--- a/drivers/hid/hid-sensor-custom.c
+++ b/drivers/hid/hid-sensor-custom.c
@@ -590,7 +590,7 @@ static int hid_sensor_custom_add_attributes(struct hid_sensor_custom
@@ -50929,19 +55316,19 @@ index c13fb5b..55a3802 100644
*off += size;
diff --git a/drivers/hv/channel.c b/drivers/hv/channel.c
-index 56dd261..493d7e0 100644
+index 16f91c8..a45059b 100644
--- a/drivers/hv/channel.c
+++ b/drivers/hv/channel.c
-@@ -398,7 +398,7 @@ int vmbus_establish_gpadl(struct vmbus_channel *channel, void *kbuffer,
+@@ -397,7 +397,7 @@ int vmbus_establish_gpadl(struct vmbus_channel *channel, void *kbuffer,
int ret = 0;
next_gpadl_handle =
- (atomic_inc_return(&vmbus_connection.next_gpadl_handle) - 1);
+ (atomic_inc_return_unchecked(&vmbus_connection.next_gpadl_handle) - 1);
- ret = create_gpadl_header(kbuffer, size, &msginfo, &msgcount);
+ ret = create_gpadl_header(kbuffer, size, &msginfo);
if (ret)
-@@ -749,9 +749,7 @@ int vmbus_sendpacket_pagebuffer_ctl(struct vmbus_channel *channel,
+@@ -742,9 +742,7 @@ int vmbus_sendpacket_pagebuffer_ctl(struct vmbus_channel *channel,
* Adjust the size down since vmbus_channel_packet_page_buffer is the
* largest size we support
*/
@@ -50953,7 +55340,7 @@ index 56dd261..493d7e0 100644
packetlen_aligned = ALIGN(packetlen, sizeof(u64));
diff --git a/drivers/hv/hv.c b/drivers/hv/hv.c
-index a1c086b..2001144 100644
+index 60dbd6c..80ce7a1 100644
--- a/drivers/hv/hv.c
+++ b/drivers/hv/hv.c
@@ -183,6 +183,7 @@ static struct clocksource hyperv_cs_tsc = {
@@ -51014,19 +55401,20 @@ index a1c086b..2001144 100644
}
return -ENOTSUPP;
-@@ -288,7 +279,6 @@ void hv_cleanup(void)
+@@ -288,8 +279,6 @@ void hv_cleanup(bool crash)
if (hv_context.hypercall_page) {
hypercall_msr.as_uint64 = 0;
wrmsrl(HV_X64_MSR_HYPERCALL, hypercall_msr.as_uint64);
-- vfree(hv_context.hypercall_page);
+- if (!crash)
+- vfree(hv_context.hypercall_page);
hv_context.hypercall_page = NULL;
}
diff --git a/drivers/hv/hv_balloon.c b/drivers/hv/hv_balloon.c
-index df35fb7..fff7e4e 100644
+index fdf8da9..d3fefc5 100644
--- a/drivers/hv/hv_balloon.c
+++ b/drivers/hv/hv_balloon.c
-@@ -471,7 +471,7 @@ MODULE_PARM_DESC(hot_add, "If set attempt memory hot_add");
+@@ -482,7 +482,7 @@ MODULE_PARM_DESC(hot_add, "If set attempt memory hot_add");
module_param(pressure_report_delay, uint, (S_IRUGO | S_IWUSR));
MODULE_PARM_DESC(pressure_report_delay, "Delay in secs in reporting pressure");
@@ -51035,7 +55423,7 @@ index df35fb7..fff7e4e 100644
static int dm_ring_size = (5 * PAGE_SIZE);
-@@ -945,7 +945,7 @@ static void hot_add_req(struct work_struct *dummy)
+@@ -1010,7 +1010,7 @@ static void hot_add_req(struct work_struct *dummy)
pr_info("Memory hot add failed\n");
dm->state = DM_INITIALIZED;
@@ -51044,7 +55432,7 @@ index df35fb7..fff7e4e 100644
vmbus_sendpacket(dm->dev->channel, &resp,
sizeof(struct dm_hot_add_response),
(unsigned long)NULL,
-@@ -1026,7 +1026,7 @@ static void post_status(struct hv_dynmem_device *dm)
+@@ -1089,7 +1089,7 @@ static void post_status(struct hv_dynmem_device *dm)
memset(&status, 0, sizeof(struct dm_status));
status.hdr.type = DM_STATUS_REPORT;
status.hdr.size = sizeof(struct dm_status);
@@ -51053,7 +55441,7 @@ index df35fb7..fff7e4e 100644
/*
* The host expects the guest to report free and committed memory.
-@@ -1050,7 +1050,7 @@ static void post_status(struct hv_dynmem_device *dm)
+@@ -1113,7 +1113,7 @@ static void post_status(struct hv_dynmem_device *dm)
* send the status. This can happen if we were interrupted
* after we picked our transaction ID.
*/
@@ -51062,7 +55450,7 @@ index df35fb7..fff7e4e 100644
return;
/*
-@@ -1195,7 +1195,7 @@ static void balloon_up(struct work_struct *dummy)
+@@ -1257,7 +1257,7 @@ static void balloon_up(struct work_struct *dummy)
*/
do {
@@ -51071,7 +55459,7 @@ index df35fb7..fff7e4e 100644
ret = vmbus_sendpacket(dm_device.dev->channel,
bl_resp,
bl_resp->hdr.size,
-@@ -1241,7 +1241,7 @@ static void balloon_down(struct hv_dynmem_device *dm,
+@@ -1303,7 +1303,7 @@ static void balloon_down(struct hv_dynmem_device *dm,
memset(&resp, 0, sizeof(struct dm_unballoon_response));
resp.hdr.type = DM_UNBALLOON_RESPONSE;
@@ -51080,7 +55468,7 @@ index df35fb7..fff7e4e 100644
resp.hdr.size = sizeof(struct dm_unballoon_response);
vmbus_sendpacket(dm_device.dev->channel, &resp,
-@@ -1301,7 +1301,7 @@ static void version_resp(struct hv_dynmem_device *dm,
+@@ -1363,7 +1363,7 @@ static void version_resp(struct hv_dynmem_device *dm,
memset(&version_req, 0, sizeof(struct dm_version_request));
version_req.hdr.type = DM_VERSION_REQUEST;
version_req.hdr.size = sizeof(struct dm_version_request);
@@ -51089,7 +55477,7 @@ index df35fb7..fff7e4e 100644
version_req.version.version = dm->next_version;
/*
-@@ -1488,7 +1488,7 @@ static int balloon_probe(struct hv_device *dev,
+@@ -1550,7 +1550,7 @@ static int balloon_probe(struct hv_device *dev,
memset(&version_req, 0, sizeof(struct dm_version_request));
version_req.hdr.type = DM_VERSION_REQUEST;
version_req.hdr.size = sizeof(struct dm_version_request);
@@ -51098,7 +55486,7 @@ index df35fb7..fff7e4e 100644
version_req.version.version = DYNMEM_PROTOCOL_VERSION_WIN10;
version_req.is_last_attempt = 0;
-@@ -1519,7 +1519,7 @@ static int balloon_probe(struct hv_device *dev,
+@@ -1581,7 +1581,7 @@ static int balloon_probe(struct hv_device *dev,
memset(&cap_msg, 0, sizeof(struct dm_capabilities));
cap_msg.hdr.type = DM_CAPABILITIES_REPORT;
cap_msg.hdr.size = sizeof(struct dm_capabilities);
@@ -51108,10 +55496,10 @@ index df35fb7..fff7e4e 100644
cap_msg.caps.cap_bits.balloon = 1;
cap_msg.caps.cap_bits.hot_add = 1;
diff --git a/drivers/hv/hyperv_vmbus.h b/drivers/hv/hyperv_vmbus.h
-index 718b5c7..c1bf203 100644
+index a5b4442..b3b5e3e 100644
--- a/drivers/hv/hyperv_vmbus.h
+++ b/drivers/hv/hyperv_vmbus.h
-@@ -566,7 +566,7 @@ enum vmbus_connect_state {
+@@ -567,7 +567,7 @@ enum vmbus_connect_state {
struct vmbus_connection {
enum vmbus_connect_state conn_state;
@@ -51215,10 +55603,10 @@ index 6a27eb2..349ed23 100644
};
diff --git a/drivers/hwmon/dell-smm-hwmon.c b/drivers/hwmon/dell-smm-hwmon.c
-index acf9c03..1424826 100644
+index 34704b0..eddfc67 100644
--- a/drivers/hwmon/dell-smm-hwmon.c
+++ b/drivers/hwmon/dell-smm-hwmon.c
-@@ -886,7 +886,7 @@ static const struct i8k_config_data i8k_config_data[] = {
+@@ -890,7 +890,7 @@ static const struct i8k_config_data i8k_config_data[] = {
},
};
@@ -51227,7 +55615,7 @@ index acf9c03..1424826 100644
{
.ident = "Dell Inspiron",
.matches = {
-@@ -1002,7 +1002,7 @@ MODULE_DEVICE_TABLE(dmi, i8k_dmi_table);
+@@ -1006,7 +1006,7 @@ MODULE_DEVICE_TABLE(dmi, i8k_dmi_table);
* of affected Dell machines for which we disallow I8K_SMM_GET_FAN_TYPE call.
* See bug: https://bugzilla.kernel.org/show_bug.cgi?id=100121
*/
@@ -51236,6 +55624,21 @@ index acf9c03..1424826 100644
{
.ident = "Dell Studio XPS 8000",
.matches = {
+diff --git a/drivers/hwmon/hwmon.c b/drivers/hwmon/hwmon.c
+index a74c075..a6eb87f 100644
+--- a/drivers/hwmon/hwmon.c
++++ b/drivers/hwmon/hwmon.c
+@@ -214,8 +214,8 @@ static struct attribute *hwmon_genattr(struct device *dev,
+ const struct hwmon_ops *ops)
+ {
+ struct hwmon_device_attribute *hattr;
+- struct device_attribute *dattr;
+- struct attribute *a;
++ device_attribute_no_const *dattr;
++ attribute_no_const *a;
+ umode_t mode;
+ char *name;
+
diff --git a/drivers/hwmon/ibmaem.c b/drivers/hwmon/ibmaem.c
index 1f64378..2b6e615 100644
--- a/drivers/hwmon/ibmaem.c
@@ -51250,7 +55653,7 @@ index 1f64378..2b6e615 100644
/* Set up read-only sensors */
diff --git a/drivers/hwmon/iio_hwmon.c b/drivers/hwmon/iio_hwmon.c
-index 8944987..839863d 100644
+index f6a7667..281a9de 100644
--- a/drivers/hwmon/iio_hwmon.c
+++ b/drivers/hwmon/iio_hwmon.c
@@ -61,7 +61,7 @@ static int iio_hwmon_probe(struct platform_device *pdev)
@@ -51282,10 +55685,10 @@ index 559c596..3de1a96 100644
int i, j, count;
diff --git a/drivers/hwmon/nct6775.c b/drivers/hwmon/nct6775.c
-index d087a8e..54e963a 100644
+index ce75dd4..0e68b2a 100644
--- a/drivers/hwmon/nct6775.c
+++ b/drivers/hwmon/nct6775.c
-@@ -1049,10 +1049,10 @@ nct6775_create_attr_group(struct device *dev,
+@@ -1051,10 +1051,10 @@ nct6775_create_attr_group(struct device *dev,
const struct sensor_template_group *tg,
int repeat)
{
@@ -51453,7 +55856,7 @@ index 88eda09..cf40434 100644
/* Wrapper access functions for multiplexed SMBus */
static DEFINE_MUTEX(nforce2_lock);
diff --git a/drivers/i2c/i2c-dev.c b/drivers/i2c/i2c-dev.c
-index 66f323f..af5b573 100644
+index 6f638bb..c56f349 100644
--- a/drivers/i2c/i2c-dev.c
+++ b/drivers/i2c/i2c-dev.c
@@ -274,7 +274,7 @@ static noinline int i2cdev_ioctl_rdwr(struct i2c_client *client,
@@ -51514,7 +55917,7 @@ index d127ace..6ee866f 100644
int i, j = 1;
diff --git a/drivers/idle/intel_idle.c b/drivers/idle/intel_idle.c
-index 67ec58f..0a78c78 100644
+index 4466a2f..6771887 100644
--- a/drivers/idle/intel_idle.c
+++ b/drivers/idle/intel_idle.c
@@ -1208,36 +1208,46 @@ static void bxt_idle_state_table_update(void)
@@ -51588,7 +55991,7 @@ index 67ec58f..0a78c78 100644
/*
* intel_idle_state_table_update()
diff --git a/drivers/iio/industrialio-core.c b/drivers/iio/industrialio-core.c
-index d2b8899..5b0e8f5 100644
+index fc340ed..840e5ee 100644
--- a/drivers/iio/industrialio-core.c
+++ b/drivers/iio/industrialio-core.c
@@ -769,7 +769,7 @@ static ssize_t iio_write_channel_info(struct device *dev,
@@ -51676,7 +56079,7 @@ index 71c7c4c..f91d896 100644
counter[CM_DREQ_COUNTER]);
goto unlock;
default:
-@@ -2401,12 +2401,13 @@ out:
+@@ -2401,12 +2401,13 @@ static int cm_drep_handler(struct cm_work *work)
}
int ib_send_cm_rej(struct ib_cm_id *cm_id,
@@ -51883,7 +56286,7 @@ index 10469b0..e8b45f3 100644
}
}
diff --git a/drivers/infiniband/core/sysfs.c b/drivers/infiniband/core/sysfs.c
-index 15defef..9cd7c28 100644
+index c1fb545..47f692d 100644
--- a/drivers/infiniband/core/sysfs.c
+++ b/drivers/infiniband/core/sysfs.c
@@ -894,7 +894,7 @@ static struct attribute *alloc_hsa_lifespan(char *name, u8 port_num)
@@ -51917,7 +56320,7 @@ index 7713ef0..0bb2981 100644
static ssize_t ib_ucm_send_mra(struct ib_ucm_file *file,
diff --git a/drivers/infiniband/core/uverbs_cmd.c b/drivers/infiniband/core/uverbs_cmd.c
-index f664731..b46744f 100644
+index cb3f515a..cd08b78 100644
--- a/drivers/infiniband/core/uverbs_cmd.c
+++ b/drivers/infiniband/core/uverbs_cmd.c
@@ -974,6 +974,9 @@ ssize_t ib_uverbs_reg_mr(struct ib_uverbs_file *file,
@@ -51931,7 +56334,7 @@ index f664731..b46744f 100644
(unsigned long) cmd.response + sizeof resp,
in_len - sizeof cmd, out_len - sizeof resp);
diff --git a/drivers/infiniband/hw/cxgb4/device.c b/drivers/infiniband/hw/cxgb4/device.c
-index 3c4b212..bf4f82b 100644
+index b85a1a9..a0dcc59 100644
--- a/drivers/infiniband/hw/cxgb4/device.c
+++ b/drivers/infiniband/hw/cxgb4/device.c
@@ -111,7 +111,7 @@ void c4iw_log_wr_stats(struct t4_wq *wq, struct t4_cqe *cqe)
@@ -51952,7 +56355,7 @@ index 3c4b212..bf4f82b 100644
(dev->rdev.wr_log_size - 1);
end = idx - 1;
if (end < 0)
-@@ -840,7 +840,7 @@ static int c4iw_rdev_open(struct c4iw_rdev *rdev)
+@@ -842,7 +842,7 @@ static int c4iw_rdev_open(struct c4iw_rdev *rdev)
sizeof(*rdev->wr_log), GFP_KERNEL);
if (rdev->wr_log) {
rdev->wr_log_size = 1 << c4iw_wr_log_size_order;
@@ -51962,10 +56365,10 @@ index 3c4b212..bf4f82b 100644
pr_err(MOD "error allocating wr_log. Logging disabled\n");
}
diff --git a/drivers/infiniband/hw/cxgb4/iw_cxgb4.h b/drivers/infiniband/hw/cxgb4/iw_cxgb4.h
-index 4b83b84..7d402e0 100644
+index 7d54066..4b8a84c 100644
--- a/drivers/infiniband/hw/cxgb4/iw_cxgb4.h
+++ b/drivers/infiniband/hw/cxgb4/iw_cxgb4.h
-@@ -180,7 +180,7 @@ struct c4iw_rdev {
+@@ -182,7 +182,7 @@ struct c4iw_rdev {
struct c4iw_stats stats;
struct c4iw_hw_queue hw_queue;
struct t4_dev_status_page *status_page;
@@ -51973,9 +56376,9 @@ index 4b83b84..7d402e0 100644
+ atomic_unchecked_t wr_log_idx;
struct wr_log_entry *wr_log;
int wr_log_size;
- };
+ struct workqueue_struct *free_workq;
diff --git a/drivers/infiniband/hw/cxgb4/mem.c b/drivers/infiniband/hw/cxgb4/mem.c
-index 0b91b0f..866b3b9 100644
+index 410408f..9702659 100644
--- a/drivers/infiniband/hw/cxgb4/mem.c
+++ b/drivers/infiniband/hw/cxgb4/mem.c
@@ -266,7 +266,7 @@ static int write_tpt_entry(struct c4iw_rdev *rdev, u32 reset_tpt_entry,
@@ -51997,10 +56400,10 @@ index 0b91b0f..866b3b9 100644
PDBG("%s stag_state 0x%0x type 0x%0x pdid 0x%0x, stag_idx 0x%x\n",
__func__, stag_state, type, pdid, stag_idx);
diff --git a/drivers/infiniband/hw/hfi1/pcie.c b/drivers/infiniband/hw/hfi1/pcie.c
-index 89c68da..addb2ad 100644
+index 4ac8f33..63991d8 100644
--- a/drivers/infiniband/hw/hfi1/pcie.c
+++ b/drivers/infiniband/hw/hfi1/pcie.c
-@@ -537,7 +537,7 @@ static void tune_pcie_caps(struct hfi1_devdata *dd)
+@@ -536,7 +536,7 @@ static void tune_pcie_caps(struct hfi1_devdata *dd)
* PCI error infrastructure, registered via pci
*/
static pci_ers_result_t
@@ -52255,7 +56658,7 @@ index 276bcef..b2e3684 100644
struct i40iw_sq_uk_wr_trk_info {
u64 wrid;
diff --git a/drivers/infiniband/hw/mlx4/mad.c b/drivers/infiniband/hw/mlx4/mad.c
-index 0f21c3a..257e0a7 100644
+index 18d309e..41ef80d 100644
--- a/drivers/infiniband/hw/mlx4/mad.c
+++ b/drivers/infiniband/hw/mlx4/mad.c
@@ -99,7 +99,7 @@ __be64 mlx4_ib_gen_node_guid(void)
@@ -52268,7 +56671,7 @@ index 0f21c3a..257e0a7 100644
}
diff --git a/drivers/infiniband/hw/mlx4/mcg.c b/drivers/infiniband/hw/mlx4/mcg.c
-index 097bfcc..06fe83a 100644
+index a21d37f..4f92793 100644
--- a/drivers/infiniband/hw/mlx4/mcg.c
+++ b/drivers/infiniband/hw/mlx4/mcg.c
@@ -1043,7 +1043,7 @@ int mlx4_ib_mcg_port_init(struct mlx4_ib_demux_ctx *ctx)
@@ -52278,10 +56681,10 @@ index 097bfcc..06fe83a 100644
- atomic_set(&ctx->tid, 0);
+ atomic_set_unchecked(&ctx->tid, 0);
sprintf(name, "mlx4_ib_mcg%d", ctx->port);
- ctx->mcg_wq = create_singlethread_workqueue(name);
+ ctx->mcg_wq = alloc_ordered_workqueue(name, WQ_MEM_RECLAIM);
if (!ctx->mcg_wq)
diff --git a/drivers/infiniband/hw/mlx4/mlx4_ib.h b/drivers/infiniband/hw/mlx4/mlx4_ib.h
-index 686ab48..736a1d7 100644
+index 35141f4..652e92e 100644
--- a/drivers/infiniband/hw/mlx4/mlx4_ib.h
+++ b/drivers/infiniband/hw/mlx4/mlx4_ib.h
@@ -457,7 +457,7 @@ struct mlx4_ib_demux_ctx {
@@ -52337,7 +56740,7 @@ diff --git a/drivers/infiniband/hw/mthca/mthca_main.c b/drivers/infiniband/hw/mt
index ded76c1..0cf0a08 100644
--- a/drivers/infiniband/hw/mthca/mthca_main.c
+++ b/drivers/infiniband/hw/mthca/mthca_main.c
-@@ -692,7 +692,7 @@ err_close:
+@@ -692,7 +692,7 @@ static int mthca_init_hca(struct mthca_dev *mdev)
return err;
}
@@ -52378,10 +56781,10 @@ index ed9a989..6aa5dc2 100644
int list_len, u64 iova, u64 total_size,
u32 access, struct mthca_mr *mr)
diff --git a/drivers/infiniband/hw/mthca/mthca_provider.c b/drivers/infiniband/hw/mthca/mthca_provider.c
-index da2335f..d6f4677 100644
+index 358930a4..abd0b77 100644
--- a/drivers/infiniband/hw/mthca/mthca_provider.c
+++ b/drivers/infiniband/hw/mthca/mthca_provider.c
-@@ -772,7 +772,7 @@ unlock:
+@@ -773,7 +773,7 @@ static int mthca_alloc_resize_buf(struct mthca_dev *dev, struct mthca_cq *cq,
return 0;
}
@@ -52413,7 +56816,7 @@ index 35cbb17..d336a68 100644
/* Free the control structures */
diff --git a/drivers/infiniband/hw/nes/nes.h b/drivers/infiniband/hw/nes/nes.h
-index bd9d132..70d84f4 100644
+index e7430c9..e8250c3 100644
--- a/drivers/infiniband/hw/nes/nes.h
+++ b/drivers/infiniband/hw/nes/nes.h
@@ -180,17 +180,17 @@ extern unsigned int nes_debug_level;
@@ -52472,7 +56875,7 @@ index bd9d132..70d84f4 100644
extern u32 int_mod_timer_init;
extern u32 int_mod_cq_depth_256;
diff --git a/drivers/infiniband/hw/nes/nes_cm.c b/drivers/infiniband/hw/nes/nes_cm.c
-index 7f0aa23..3c20939 100644
+index 57db9b3..adfe4b1 100644
--- a/drivers/infiniband/hw/nes/nes_cm.c
+++ b/drivers/infiniband/hw/nes/nes_cm.c
@@ -69,14 +69,14 @@ u32 cm_packets_dropped;
@@ -52836,7 +57239,7 @@ index bd69125..10e85d5 100644
/* Blow away the connection if it exists. */
diff --git a/drivers/infiniband/hw/qib/qib_iba7322.c b/drivers/infiniband/hw/qib/qib_iba7322.c
-index ce40340..b211076 100644
+index ded2717..a99c0fe 100644
--- a/drivers/infiniband/hw/qib/qib_iba7322.c
+++ b/drivers/infiniband/hw/qib/qib_iba7322.c
@@ -150,7 +150,7 @@ static struct kparam_string kp_txselect = {
@@ -52871,7 +57274,7 @@ index 6abe1c6..f866a31 100644
struct qib_devdata *dd = pci_get_drvdata(pdev);
pci_ers_result_t ret = PCI_ERS_RESULT_RECOVERED;
diff --git a/drivers/infiniband/sw/rxe/rxe_qp.c b/drivers/infiniband/sw/rxe/rxe_qp.c
-index 979e445..bd9986e 100644
+index 44b2108..88be22a 100644
--- a/drivers/infiniband/sw/rxe/rxe_qp.c
+++ b/drivers/infiniband/sw/rxe/rxe_qp.c
@@ -219,7 +219,7 @@ static void rxe_qp_init_misc(struct rxe_dev *rxe, struct rxe_qp *qp,
@@ -52893,10 +57296,10 @@ index 979e445..bd9986e 100644
qp->req.need_retry = 0;
qp->req.noack_pkts = 0;
diff --git a/drivers/infiniband/sw/rxe/rxe_verbs.c b/drivers/infiniband/sw/rxe/rxe_verbs.c
-index 4552be9..0c68125 100644
+index 19841c8..f843af7 100644
--- a/drivers/infiniband/sw/rxe/rxe_verbs.c
+++ b/drivers/infiniband/sw/rxe/rxe_verbs.c
-@@ -755,7 +755,7 @@ static int init_send_wqe(struct rxe_qp *qp, struct ib_send_wr *ibwr,
+@@ -757,7 +757,7 @@ static int init_send_wqe(struct rxe_qp *qp, struct ib_send_wr *ibwr,
wqe->dma.cur_sge = 0;
wqe->dma.sge_offset = 0;
wqe->state = wqe_state_posted;
@@ -52919,7 +57322,7 @@ index cac1d52..29bb903 100644
int need_req_skb;
diff --git a/drivers/infiniband/ulp/ipoib/ipoib_main.c b/drivers/infiniband/ulp/ipoib/ipoib_main.c
-index 823a528..c8171f7 100644
+index b58d9dc..09d2d64 100644
--- a/drivers/infiniband/ulp/ipoib/ipoib_main.c
+++ b/drivers/infiniband/ulp/ipoib/ipoib_main.c
@@ -1029,7 +1029,7 @@ static void unicast_arp_send(struct sk_buff *skb, struct net_device *dev,
@@ -52945,7 +57348,7 @@ index cdc7df4..a2fdfdb 100644
.maxtype = IFLA_IPOIB_MAX,
.policy = ipoib_policy,
diff --git a/drivers/infiniband/ulp/srpt/ib_srpt.c b/drivers/infiniband/ulp/srpt/ib_srpt.c
-index 883bbfe..91c32be 100644
+index 0b1f69e..0814f50 100644
--- a/drivers/infiniband/ulp/srpt/ib_srpt.c
+++ b/drivers/infiniband/ulp/srpt/ib_srpt.c
@@ -80,7 +80,7 @@ module_param(srpt_srq_size, int, 0444);
@@ -52968,7 +57371,7 @@ index 883bbfe..91c32be 100644
pr_debug("QP event %d on cm_id=%p sess_name=%s state=%d\n",
event->event, ch->cm_id, ch->sess_name, ch->state);
-@@ -1628,8 +1629,7 @@ retry:
+@@ -1628,8 +1629,7 @@ static int srpt_create_ch_ib(struct srpt_rdma_ch *ch)
}
qp_init->qp_context = (void *)ch;
@@ -53152,10 +57555,10 @@ index 92e2243..8fd9092 100644
.ident = "Shift",
.matches = {
diff --git a/drivers/iommu/amd_iommu.c b/drivers/iommu/amd_iommu.c
-index 822fc4a..759e092 100644
+index 11a13b5..f1e5481 100644
--- a/drivers/iommu/amd_iommu.c
+++ b/drivers/iommu/amd_iommu.c
-@@ -791,11 +791,21 @@ static void copy_cmd_to_buffer(struct amd_iommu *iommu,
+@@ -859,11 +859,21 @@ static void copy_cmd_to_buffer(struct amd_iommu *iommu,
static void build_completion_wait(struct iommu_cmd *cmd, u64 address)
{
@@ -53179,124 +57582,11 @@ index 822fc4a..759e092 100644
cmd->data[2] = 1;
CMD_SET_TYPE(cmd, CMD_COMPL_WAIT);
}
-@@ -940,15 +950,13 @@ static void build_inv_irt(struct iommu_cmd *cmd, u16 devid)
- * Writes the command to the IOMMUs command buffer and informs the
- * hardware about the new command.
- */
--static int iommu_queue_command_sync(struct amd_iommu *iommu,
-- struct iommu_cmd *cmd,
-- bool sync)
-+static int __iommu_queue_command_sync(struct amd_iommu *iommu,
-+ struct iommu_cmd *cmd,
-+ bool sync)
- {
- u32 left, tail, head, next_tail;
-- unsigned long flags;
-
- again:
-- spin_lock_irqsave(&iommu->lock, flags);
-
- head = readl(iommu->mmio_base + MMIO_CMD_HEAD_OFFSET);
- tail = readl(iommu->mmio_base + MMIO_CMD_TAIL_OFFSET);
-@@ -957,15 +965,14 @@ again:
-
- if (left <= 2) {
- struct iommu_cmd sync_cmd;
-- volatile u64 sem = 0;
- int ret;
-
-- build_completion_wait(&sync_cmd, (u64)&sem);
-+ iommu->cmd_sem = 0;
-+
-+ build_completion_wait(&sync_cmd, (u64)&iommu->cmd_sem);
- copy_cmd_to_buffer(iommu, &sync_cmd, tail);
-
-- spin_unlock_irqrestore(&iommu->lock, flags);
--
-- if ((ret = wait_on_sem(&sem)) != 0)
-+ if ((ret = wait_on_sem(&iommu->cmd_sem)) != 0)
- return ret;
-
- goto again;
-@@ -976,11 +983,23 @@ again:
- /* We need to sync now to make sure all commands are processed */
- iommu->need_sync = sync;
-
-- spin_unlock_irqrestore(&iommu->lock, flags);
--
- return 0;
- }
-
-+static int iommu_queue_command_sync(struct amd_iommu *iommu,
-+ struct iommu_cmd *cmd,
-+ bool sync)
-+{
-+ unsigned long flags;
-+ int ret;
-+
-+ spin_lock_irqsave(&iommu->lock, flags);
-+ ret = __iommu_queue_command_sync(iommu, cmd, sync);
-+ spin_unlock_irqrestore(&iommu->lock, flags);
-+
-+ return ret;
-+}
-+
- static int iommu_queue_command(struct amd_iommu *iommu, struct iommu_cmd *cmd)
- {
- return iommu_queue_command_sync(iommu, cmd, true);
-@@ -993,19 +1012,29 @@ static int iommu_queue_command(struct amd_iommu *iommu, struct iommu_cmd *cmd)
- static int iommu_completion_wait(struct amd_iommu *iommu)
- {
- struct iommu_cmd cmd;
-- volatile u64 sem = 0;
-+ unsigned long flags;
- int ret;
-
- if (!iommu->need_sync)
- return 0;
-
-- build_completion_wait(&cmd, (u64)&sem);
-
-- ret = iommu_queue_command_sync(iommu, &cmd, false);
-+ build_completion_wait(&cmd, (u64)&iommu->cmd_sem);
-+
-+ spin_lock_irqsave(&iommu->lock, flags);
-+
-+ iommu->cmd_sem = 0;
-+
-+ ret = __iommu_queue_command_sync(iommu, &cmd, false);
- if (ret)
-- return ret;
-+ goto out_unlock;
-
-- return wait_on_sem(&sem);
-+ ret = wait_on_sem(&iommu->cmd_sem);
-+
-+out_unlock:
-+ spin_unlock_irqrestore(&iommu->lock, flags);
-+
-+ return ret;
- }
-
- static int iommu_flush_dte(struct amd_iommu *iommu, u16 devid)
-diff --git a/drivers/iommu/amd_iommu_types.h b/drivers/iommu/amd_iommu_types.h
-index caf5e38..9652848 100644
---- a/drivers/iommu/amd_iommu_types.h
-+++ b/drivers/iommu/amd_iommu_types.h
-@@ -524,6 +524,8 @@ struct amd_iommu {
- struct irq_domain *ir_domain;
- struct irq_domain *msi_domain;
- #endif
-+
-+ volatile u64 __aligned(8) cmd_sem;
- };
-
- #define ACPIHID_UID_LEN 256
diff --git a/drivers/iommu/arm-smmu-v3.c b/drivers/iommu/arm-smmu-v3.c
-index 641e887..df73c18 100644
+index e6f9b2d..89c5054 100644
--- a/drivers/iommu/arm-smmu-v3.c
+++ b/drivers/iommu/arm-smmu-v3.c
-@@ -626,7 +626,7 @@ struct arm_smmu_domain {
+@@ -633,7 +633,7 @@ struct arm_smmu_domain {
struct arm_smmu_device *smmu;
struct mutex init_mutex; /* Protects smmu pointer */
@@ -53305,7 +57595,7 @@ index 641e887..df73c18 100644
spinlock_t pgtbl_lock;
enum arm_smmu_domain_stage stage;
-@@ -1448,7 +1448,7 @@ static void arm_smmu_domain_free(struct iommu_domain *domain)
+@@ -1430,7 +1430,7 @@ static void arm_smmu_domain_free(struct iommu_domain *domain)
struct arm_smmu_device *smmu = smmu_domain->smmu;
iommu_put_dma_cookie(domain);
@@ -53314,7 +57604,7 @@ index 641e887..df73c18 100644
/* Free the CD and ASID, if we allocated them */
if (smmu_domain->stage == ARM_SMMU_DOMAIN_S1) {
-@@ -1526,7 +1526,7 @@ static int arm_smmu_domain_finalise(struct iommu_domain *domain)
+@@ -1508,7 +1508,7 @@ static int arm_smmu_domain_finalise(struct iommu_domain *domain)
unsigned long ias, oas;
enum io_pgtable_fmt fmt;
struct io_pgtable_cfg pgtbl_cfg;
@@ -53323,7 +57613,7 @@ index 641e887..df73c18 100644
int (*finalise_stage_fn)(struct arm_smmu_domain *,
struct io_pgtable_cfg *);
struct arm_smmu_domain *smmu_domain = to_smmu_domain(domain);
-@@ -1564,16 +1564,16 @@ static int arm_smmu_domain_finalise(struct iommu_domain *domain)
+@@ -1546,18 +1546,18 @@ static int arm_smmu_domain_finalise(struct iommu_domain *domain)
.iommu_dev = smmu->dev,
};
@@ -53334,6 +57624,8 @@ index 641e887..df73c18 100644
return -ENOMEM;
domain->pgsize_bitmap = pgtbl_cfg.pgsize_bitmap;
+ domain->geometry.aperture_end = (1UL << ias) - 1;
+ domain->geometry.force_aperture = true;
- smmu_domain->pgtbl_ops = pgtbl_ops;
+ smmu_domain->pgtbl = iop;
@@ -53344,7 +57636,7 @@ index 641e887..df73c18 100644
return ret;
}
-@@ -1711,13 +1711,13 @@ static int arm_smmu_map(struct iommu_domain *domain, unsigned long iova,
+@@ -1673,13 +1673,13 @@ static int arm_smmu_map(struct iommu_domain *domain, unsigned long iova,
int ret;
unsigned long flags;
struct arm_smmu_domain *smmu_domain = to_smmu_domain(domain);
@@ -53361,7 +57653,7 @@ index 641e887..df73c18 100644
spin_unlock_irqrestore(&smmu_domain->pgtbl_lock, flags);
return ret;
}
-@@ -1728,13 +1728,13 @@ arm_smmu_unmap(struct iommu_domain *domain, unsigned long iova, size_t size)
+@@ -1690,13 +1690,13 @@ arm_smmu_unmap(struct iommu_domain *domain, unsigned long iova, size_t size)
size_t ret;
unsigned long flags;
struct arm_smmu_domain *smmu_domain = to_smmu_domain(domain);
@@ -53378,7 +57670,7 @@ index 641e887..df73c18 100644
spin_unlock_irqrestore(&smmu_domain->pgtbl_lock, flags);
return ret;
}
-@@ -1745,13 +1745,13 @@ arm_smmu_iova_to_phys(struct iommu_domain *domain, dma_addr_t iova)
+@@ -1707,13 +1707,13 @@ arm_smmu_iova_to_phys(struct iommu_domain *domain, dma_addr_t iova)
phys_addr_t ret;
unsigned long flags;
struct arm_smmu_domain *smmu_domain = to_smmu_domain(domain);
@@ -53396,10 +57688,10 @@ index 641e887..df73c18 100644
return ret;
diff --git a/drivers/iommu/arm-smmu.c b/drivers/iommu/arm-smmu.c
-index 2db74eb..4bbcf9d 100644
+index 8f72814..02ff894 100644
--- a/drivers/iommu/arm-smmu.c
+++ b/drivers/iommu/arm-smmu.c
-@@ -389,7 +389,7 @@ enum arm_smmu_domain_stage {
+@@ -405,7 +405,7 @@ enum arm_smmu_domain_stage {
struct arm_smmu_domain {
struct arm_smmu_device *smmu;
@@ -53408,7 +57700,7 @@ index 2db74eb..4bbcf9d 100644
spinlock_t pgtbl_lock;
struct arm_smmu_cfg cfg;
enum arm_smmu_domain_stage stage;
-@@ -831,7 +831,7 @@ static int arm_smmu_init_domain_context(struct iommu_domain *domain,
+@@ -811,7 +811,7 @@ static int arm_smmu_init_domain_context(struct iommu_domain *domain,
{
int irq, start, ret = 0;
unsigned long ias, oas;
@@ -53417,7 +57709,7 @@ index 2db74eb..4bbcf9d 100644
struct io_pgtable_cfg pgtbl_cfg;
enum io_pgtable_fmt fmt;
struct arm_smmu_domain *smmu_domain = to_smmu_domain(domain);
-@@ -950,8 +950,8 @@ static int arm_smmu_init_domain_context(struct iommu_domain *domain,
+@@ -933,8 +933,8 @@ static int arm_smmu_init_domain_context(struct iommu_domain *domain,
};
smmu_domain->smmu = smmu;
@@ -53428,7 +57720,7 @@ index 2db74eb..4bbcf9d 100644
ret = -ENOMEM;
goto out_clear_smmu;
}
-@@ -978,7 +978,7 @@ static int arm_smmu_init_domain_context(struct iommu_domain *domain,
+@@ -963,7 +963,7 @@ static int arm_smmu_init_domain_context(struct iommu_domain *domain,
mutex_unlock(&smmu_domain->init_mutex);
/* Publish page table ops for map/unmap */
@@ -53437,7 +57729,7 @@ index 2db74eb..4bbcf9d 100644
return 0;
out_clear_smmu:
-@@ -1011,7 +1011,7 @@ static void arm_smmu_destroy_domain_context(struct iommu_domain *domain)
+@@ -996,7 +996,7 @@ static void arm_smmu_destroy_domain_context(struct iommu_domain *domain)
devm_free_irq(smmu->dev, irq, domain);
}
@@ -53446,7 +57738,7 @@ index 2db74eb..4bbcf9d 100644
__arm_smmu_free_bitmap(smmu->context_map, cfg->cbndx);
}
-@@ -1248,13 +1248,13 @@ static int arm_smmu_map(struct iommu_domain *domain, unsigned long iova,
+@@ -1267,13 +1267,13 @@ static int arm_smmu_map(struct iommu_domain *domain, unsigned long iova,
int ret;
unsigned long flags;
struct arm_smmu_domain *smmu_domain = to_smmu_domain(domain);
@@ -53463,7 +57755,7 @@ index 2db74eb..4bbcf9d 100644
spin_unlock_irqrestore(&smmu_domain->pgtbl_lock, flags);
return ret;
}
-@@ -1265,13 +1265,13 @@ static size_t arm_smmu_unmap(struct iommu_domain *domain, unsigned long iova,
+@@ -1284,13 +1284,13 @@ static size_t arm_smmu_unmap(struct iommu_domain *domain, unsigned long iova,
size_t ret;
unsigned long flags;
struct arm_smmu_domain *smmu_domain = to_smmu_domain(domain);
@@ -53480,7 +57772,7 @@ index 2db74eb..4bbcf9d 100644
spin_unlock_irqrestore(&smmu_domain->pgtbl_lock, flags);
return ret;
}
-@@ -1282,7 +1282,7 @@ static phys_addr_t arm_smmu_iova_to_phys_hard(struct iommu_domain *domain,
+@@ -1301,7 +1301,7 @@ static phys_addr_t arm_smmu_iova_to_phys_hard(struct iommu_domain *domain,
struct arm_smmu_domain *smmu_domain = to_smmu_domain(domain);
struct arm_smmu_device *smmu = smmu_domain->smmu;
struct arm_smmu_cfg *cfg = &smmu_domain->cfg;
@@ -53489,7 +57781,7 @@ index 2db74eb..4bbcf9d 100644
struct device *dev = smmu->dev;
void __iomem *cb_base;
u32 tmp;
-@@ -1303,7 +1303,7 @@ static phys_addr_t arm_smmu_iova_to_phys_hard(struct iommu_domain *domain,
+@@ -1322,7 +1322,7 @@ static phys_addr_t arm_smmu_iova_to_phys_hard(struct iommu_domain *domain,
dev_err(dev,
"iova to phys timed out on %pad. Falling back to software table walk.\n",
&iova);
@@ -53498,7 +57790,7 @@ index 2db74eb..4bbcf9d 100644
}
phys = readq_relaxed(cb_base + ARM_SMMU_CB_PAR);
-@@ -1322,9 +1322,9 @@ static phys_addr_t arm_smmu_iova_to_phys(struct iommu_domain *domain,
+@@ -1341,9 +1341,9 @@ static phys_addr_t arm_smmu_iova_to_phys(struct iommu_domain *domain,
phys_addr_t ret;
unsigned long flags;
struct arm_smmu_domain *smmu_domain = to_smmu_domain(domain);
@@ -53510,7 +57802,7 @@ index 2db74eb..4bbcf9d 100644
return 0;
spin_lock_irqsave(&smmu_domain->pgtbl_lock, flags);
-@@ -1332,7 +1332,7 @@ static phys_addr_t arm_smmu_iova_to_phys(struct iommu_domain *domain,
+@@ -1351,7 +1351,7 @@ static phys_addr_t arm_smmu_iova_to_phys(struct iommu_domain *domain,
smmu_domain->stage == ARM_SMMU_DOMAIN_S1) {
ret = arm_smmu_iova_to_phys_hard(domain, iova);
} else {
@@ -53519,7 +57811,7 @@ index 2db74eb..4bbcf9d 100644
}
spin_unlock_irqrestore(&smmu_domain->pgtbl_lock, flags);
-@@ -1809,10 +1809,12 @@ static int arm_smmu_device_cfg_probe(struct arm_smmu_device *smmu)
+@@ -1862,10 +1862,12 @@ static int arm_smmu_device_cfg_probe(struct arm_smmu_device *smmu)
if (smmu->features & ARM_SMMU_FEAT_FMT_AARCH64_64K)
smmu->pgsize_bitmap |= SZ_64K | SZ_512M;
@@ -54059,10 +58351,10 @@ index 969d82c..1ba9b6e 100644
{
iop->cfg.tlb->tlb_flush_all(iop->cookie);
diff --git a/drivers/iommu/iommu.c b/drivers/iommu/iommu.c
-index b06d935..59bad56 100644
+index 9a2f196..870a3e2 100644
--- a/drivers/iommu/iommu.c
+++ b/drivers/iommu/iommu.c
-@@ -944,7 +944,7 @@ static int iommu_bus_notifier(struct notifier_block *nb,
+@@ -945,7 +945,7 @@ static int iommu_bus_notifier(struct notifier_block *nb,
static int iommu_bus_init(struct bus_type *bus, const struct iommu_ops *ops)
{
int err;
@@ -54072,7 +58364,7 @@ index b06d935..59bad56 100644
.ops = ops,
};
diff --git a/drivers/iommu/ipmmu-vmsa.c b/drivers/iommu/ipmmu-vmsa.c
-index 2fdbac6..7095311 100644
+index ace331d..c326530 100644
--- a/drivers/iommu/ipmmu-vmsa.c
+++ b/drivers/iommu/ipmmu-vmsa.c
@@ -41,7 +41,7 @@ struct ipmmu_vmsa_domain {
@@ -54260,10 +58552,10 @@ index b12c12d..27bf745 100644
devm_free_irq(&pdev->dev, data->irq, data);
component_master_del(&pdev->dev, &mtk_iommu_com_ops);
diff --git a/drivers/irqchip/irq-gic.c b/drivers/irqchip/irq-gic.c
-index 390fac5..74fed85 100644
+index d6c404b..ea4d330 100644
--- a/drivers/irqchip/irq-gic.c
+++ b/drivers/irqchip/irq-gic.c
-@@ -392,7 +392,7 @@ static void gic_handle_cascade_irq(struct irq_desc *desc)
+@@ -410,7 +410,7 @@ static void gic_handle_cascade_irq(struct irq_desc *desc)
chained_irq_exit(chip, desc);
}
@@ -54273,10 +58565,10 @@ index 390fac5..74fed85 100644
.irq_unmask = gic_unmask_irq,
.irq_eoi = gic_eoi_irq,
diff --git a/drivers/irqchip/irq-i8259.c b/drivers/irqchip/irq-i8259.c
-index 6b304eb..6e3a1413 100644
+index 1aec12c..7c71863 100644
--- a/drivers/irqchip/irq-i8259.c
+++ b/drivers/irqchip/irq-i8259.c
-@@ -204,7 +204,7 @@ spurious_8259A_irq:
+@@ -192,7 +192,7 @@ static void mask_and_ack_8259A(struct irq_data *d)
printk(KERN_DEBUG "spurious 8259A interrupt: IRQ%d.\n", irq);
spurious_irq_mask |= irqmask;
}
@@ -54285,6 +58577,65 @@ index 6b304eb..6e3a1413 100644
/*
* Theoretically we do not have to handle this IRQ,
* but in Linux this does not cause problems and is
+diff --git a/drivers/irqchip/irq-jcore-aic.c b/drivers/irqchip/irq-jcore-aic.c
+index 033bccb..7c93666 100644
+--- a/drivers/irqchip/irq-jcore-aic.c
++++ b/drivers/irqchip/irq-jcore-aic.c
+@@ -23,7 +23,23 @@
+
+ #define JCORE_AIC1_INTPRI_REG 8
+
+-static struct irq_chip jcore_aic;
++static void noop(struct irq_data *data)
++{
++}
++
++static struct irq_chip jcore_aic = {
++ /*
++ * The irq chip framework requires either mask/unmask or enable/disable
++ * function pointers to be provided, but the hardware does not have any
++ * such mechanism; the only interrupt masking is at the cpu level and
++ * it affects all interrupts. We provide dummy mask/unmask. The hardware
++ * handles all interrupt control and clears pending status when the cpu
++ * accepts the interrupt.
++ */
++ .irq_mask = noop,
++ .irq_unmask = noop,
++ .name = "AIC",
++};
+
+ /*
+ * The J-Core AIC1 and AIC2 are cpu-local interrupt controllers and do
+@@ -58,10 +74,6 @@ static const struct irq_domain_ops jcore_aic_irqdomain_ops = {
+ .xlate = irq_domain_xlate_onecell,
+ };
+
+-static void noop(struct irq_data *data)
+-{
+-}
+-
+ static int __init aic_irq_of_init(struct device_node *node,
+ struct device_node *parent)
+ {
+@@ -88,18 +100,6 @@ static int __init aic_irq_of_init(struct device_node *node,
+ min_irq = JCORE_AIC1_MIN_HWIRQ;
+ }
+
+- /*
+- * The irq chip framework requires either mask/unmask or enable/disable
+- * function pointers to be provided, but the hardware does not have any
+- * such mechanism; the only interrupt masking is at the cpu level and
+- * it affects all interrupts. We provide dummy mask/unmask. The hardware
+- * handles all interrupt control and clears pending status when the cpu
+- * accepts the interrupt.
+- */
+- jcore_aic.irq_mask = noop;
+- jcore_aic.irq_unmask = noop;
+- jcore_aic.name = "AIC";
+-
+ domain = irq_domain_add_linear(node, dom_sz, &jcore_aic_irqdomain_ops,
+ &jcore_aic);
+ if (!domain)
diff --git a/drivers/irqchip/irq-mmp.c b/drivers/irqchip/irq-mmp.c
index 013fc96..36a9a97 100644
--- a/drivers/irqchip/irq-mmp.c
@@ -54437,7 +58788,7 @@ index 600c79b..3752bab 100644
mutex_unlock(&cs->mutex);
diff --git a/drivers/isdn/gigaset/ser-gigaset.c b/drivers/isdn/gigaset/ser-gigaset.c
-index d1f8ab9..c0412f2 100644
+index b90776e..ab0b63a 100644
--- a/drivers/isdn/gigaset/ser-gigaset.c
+++ b/drivers/isdn/gigaset/ser-gigaset.c
@@ -445,22 +445,22 @@ static int gigaset_set_line_ctrl(struct cardstate *cs, unsigned cflag)
@@ -54757,7 +59108,7 @@ diff --git a/drivers/isdn/hardware/eicon/idifunc.c b/drivers/isdn/hardware/eicon
index fef6586..22353ff 100644
--- a/drivers/isdn/hardware/eicon/idifunc.c
+++ b/drivers/isdn/hardware/eicon/idifunc.c
-@@ -154,18 +154,17 @@ rescan:
+@@ -154,18 +154,17 @@ static void __exit remove_all_idi_proc(void)
/*
* DIDD notify callback
*/
@@ -54857,7 +59208,7 @@ index 1cd9aff..3775d52 100644
DAdapter.request((ENTITY *)&req);
if (req.didd_notify.e.Rc != 0xff)
diff --git a/drivers/isdn/hardware/mISDN/avmfritz.c b/drivers/isdn/hardware/mISDN/avmfritz.c
-index 292991c..f36f4cb 100644
+index e3fa1cd..a57b04f 100644
--- a/drivers/isdn/hardware/mISDN/avmfritz.c
+++ b/drivers/isdn/hardware/mISDN/avmfritz.c
@@ -156,7 +156,7 @@ _set_debug(struct fritzcard *card)
@@ -54870,10 +59221,10 @@ index 292991c..f36f4cb 100644
int ret;
struct fritzcard *card;
diff --git a/drivers/isdn/hardware/mISDN/hfcmulti.c b/drivers/isdn/hardware/mISDN/hfcmulti.c
-index 28543d7..bd8cf91 100644
+index 480c2d7..89f2219 100644
--- a/drivers/isdn/hardware/mISDN/hfcmulti.c
+++ b/drivers/isdn/hardware/mISDN/hfcmulti.c
-@@ -2856,8 +2856,9 @@ irq_notforus:
+@@ -2856,8 +2856,9 @@ hfcmulti_interrupt(int intno, void *dev_id)
*/
static void
@@ -55002,7 +59353,7 @@ index d5bdbaf..a7cdc61 100644
err = setup_io(card);
if (err)
diff --git a/drivers/isdn/hardware/mISDN/mISDNipac.c b/drivers/isdn/hardware/mISDN/mISDNipac.c
-index aa9b6c3..ffd3257 100644
+index 8d338ba..f0cb4af 100644
--- a/drivers/isdn/hardware/mISDN/mISDNipac.c
+++ b/drivers/isdn/hardware/mISDN/mISDNipac.c
@@ -727,8 +727,9 @@ isac_release(struct isac_hw *isac)
@@ -55073,7 +59424,7 @@ index 9815bb4..3d6181e 100644
card->isar.name = card->name;
card->isar.owner = THIS_MODULE;
diff --git a/drivers/isdn/hardware/mISDN/w6692.c b/drivers/isdn/hardware/mISDN/w6692.c
-index 7416755..2914e7c 100644
+index 3b067ea..5806dd3 100644
--- a/drivers/isdn/hardware/mISDN/w6692.c
+++ b/drivers/isdn/hardware/mISDN/w6692.c
@@ -101,7 +101,7 @@ _set_debug(struct w6692_hw *card)
@@ -55096,7 +59447,7 @@ index 7416755..2914e7c 100644
struct w6692_hw *card = dch->hw;
int rbch, star;
u_long flags;
-@@ -852,7 +853,7 @@ void initW6692(struct w6692_hw *card)
+@@ -852,7 +853,7 @@ static void initW6692(struct w6692_hw *card)
{
u8 val;
@@ -55274,7 +59625,7 @@ index c7a9471..5409bd3 100644
#if FSM_TIMER_DEBUG
if (ft->fi->debug)
diff --git a/drivers/isdn/hisax/hfc4s8s_l1.c b/drivers/isdn/hisax/hfc4s8s_l1.c
-index 9600cd7..86ca5a3 100644
+index e034ed8..52056d1 100644
--- a/drivers/isdn/hisax/hfc4s8s_l1.c
+++ b/drivers/isdn/hisax/hfc4s8s_l1.c
@@ -299,8 +299,9 @@ Read_hfc16_stable(hfc4s8s_hw *hw, int reg)
@@ -55654,7 +60005,7 @@ diff --git a/drivers/isdn/hisax/saphir.c b/drivers/isdn/hisax/saphir.c
index 6b2d0ec..4bf5a9e 100644
--- a/drivers/isdn/hisax/saphir.c
+++ b/drivers/isdn/hisax/saphir.c
-@@ -159,8 +159,9 @@ Start_ISAC:
+@@ -159,8 +159,9 @@ saphir_interrupt(int intno, void *dev_id)
}
static void
@@ -55678,7 +60029,7 @@ diff --git a/drivers/isdn/hisax/teleint.c b/drivers/isdn/hisax/teleint.c
index bf64754..e2a3709 100644
--- a/drivers/isdn/hisax/teleint.c
+++ b/drivers/isdn/hisax/teleint.c
-@@ -179,8 +179,9 @@ Start_ISAC:
+@@ -179,8 +179,9 @@ TeleInt_interrupt(int intno, void *dev_id)
}
static void
@@ -56240,7 +60591,7 @@ index 6b420a5..d5acb8f 100644
struct gc_stat {
diff --git a/drivers/md/bcache/btree.c b/drivers/md/bcache/btree.c
-index 76f7534..f5ad9e6 100644
+index 81d3db4..46e8b68 100644
--- a/drivers/md/bcache/btree.c
+++ b/drivers/md/bcache/btree.c
@@ -336,15 +336,17 @@ static void btree_complete_write(struct btree *b, struct btree_write *w)
@@ -56263,7 +60614,7 @@ index 76f7534..f5ad9e6 100644
struct btree *b = container_of(cl, struct btree, io);
struct btree_write *w = btree_prev_write(b);
-@@ -358,8 +360,9 @@ static void __btree_node_write_done(struct closure *cl)
+@@ -358,12 +360,13 @@ static void __btree_node_write_done(struct closure *cl)
closure_return_with_destructor(cl, btree_node_write_unlock);
}
@@ -56272,18 +60623,14 @@ index 76f7534..f5ad9e6 100644
{
+ struct closure *cl = container_of(work, struct closure, work);
struct btree *b = container_of(cl, struct btree, io);
- struct bio_vec *bv;
- int n;
-@@ -367,7 +370,7 @@ static void btree_node_write_done(struct closure *cl)
- bio_for_each_segment_all(bv, b->bio, n)
- __free_page(bv->bv_page);
+ bio_free_pages(b->bio);
- __btree_node_write_done(cl);
+ __btree_node_write_done(&cl->work);
}
static void btree_node_write_endio(struct bio *bio)
-@@ -467,7 +470,7 @@ void __bch_btree_node_write(struct btree *b, struct closure *parent)
+@@ -463,7 +466,7 @@ void __bch_btree_node_write(struct btree *b, struct closure *parent)
do_btree_node_write(b);
@@ -56463,7 +60810,7 @@ index 6925023..bff91f0 100644
static void journal_try_write(struct cache_set *c)
diff --git a/drivers/md/bcache/movinggc.c b/drivers/md/bcache/movinggc.c
-index 1881319..bec4997 100644
+index 5c4bdde..99659fe 100644
--- a/drivers/md/bcache/movinggc.c
+++ b/drivers/md/bcache/movinggc.c
@@ -34,14 +34,16 @@ static bool moving_pred(struct keybuf *buf, struct bkey *k)
@@ -56484,8 +60831,8 @@ index 1881319..bec4997 100644
+ struct closure *cl = container_of(work, struct closure, work);
struct moving_io *io = container_of(cl, struct moving_io, cl);
struct bio *bio = &io->bio.bio;
- struct bio_vec *bv;
-@@ -92,8 +94,9 @@ static void moving_init(struct moving_io *io)
+
+@@ -89,8 +91,9 @@ static void moving_init(struct moving_io *io)
bch_bio_map(bio, NULL);
}
@@ -56496,7 +60843,7 @@ index 1881319..bec4997 100644
struct moving_io *io = container_of(cl, struct moving_io, cl);
struct data_insert_op *op = &io->op;
-@@ -116,8 +119,9 @@ static void write_moving(struct closure *cl)
+@@ -113,8 +116,9 @@ static void write_moving(struct closure *cl)
continue_at(cl, write_moving_finish, op->wq);
}
@@ -56508,7 +60855,7 @@ index 1881319..bec4997 100644
struct bio *bio = &io->bio.bio;
diff --git a/drivers/md/bcache/request.c b/drivers/md/bcache/request.c
-index 4b177fe..be3cbd4 100644
+index 40ffe5e..6757bd6 100644
--- a/drivers/md/bcache/request.c
+++ b/drivers/md/bcache/request.c
@@ -24,7 +24,7 @@
@@ -56531,7 +60878,7 @@ index 4b177fe..be3cbd4 100644
struct data_insert_op *op = container_of(cl, struct data_insert_op, cl);
atomic_t *journal_ref = NULL;
struct bkey *replace_key = op->replace ? &op->replace_key : NULL;
-@@ -143,8 +144,9 @@ out:
+@@ -143,8 +144,9 @@ static void bch_data_invalidate(struct closure *cl)
continue_at(cl, bch_data_insert_keys, op->wq);
}
@@ -56562,7 +60909,7 @@ index 4b177fe..be3cbd4 100644
struct data_insert_op *op = container_of(cl, struct data_insert_op, cl);
struct bio *bio = op->bio, *n;
-@@ -313,8 +316,9 @@ err:
+@@ -313,8 +316,9 @@ static void bch_data_insert_start(struct closure *cl)
* If s->bypass is true, instead of inserting the data it invalidates the
* region of the cache represented by s->cache_bio and op->inode.
*/
@@ -56629,9 +60976,9 @@ index 4b177fe..be3cbd4 100644
struct search *s = container_of(cl, struct search, cl);
if (s->iop.replace_collision)
-@@ -702,11 +710,12 @@ static void cached_dev_cache_miss_done(struct closure *cl)
- __free_page(bv->bv_page);
- }
+@@ -697,11 +705,12 @@ static void cached_dev_cache_miss_done(struct closure *cl)
+ if (s->iop.bio)
+ bio_free_pages(s->iop.bio);
- cached_dev_bio_complete(cl);
+ cached_dev_bio_complete(&cl->work);
@@ -56644,7 +60991,7 @@ index 4b177fe..be3cbd4 100644
struct search *s = container_of(cl, struct search, cl);
struct bio *bio = &s->bio.bio;
-@@ -725,8 +734,9 @@ static void cached_dev_read_error(struct closure *cl)
+@@ -720,8 +729,9 @@ static void cached_dev_read_error(struct closure *cl)
continue_at(cl, cached_dev_cache_miss_done, NULL);
}
@@ -56655,7 +61002,7 @@ index 4b177fe..be3cbd4 100644
struct search *s = container_of(cl, struct search, cl);
struct cached_dev *dc = container_of(s->d, struct cached_dev, disk);
-@@ -765,8 +775,9 @@ static void cached_dev_read_done(struct closure *cl)
+@@ -760,8 +770,9 @@ static void cached_dev_read_done(struct closure *cl)
continue_at(cl, cached_dev_cache_miss_done, NULL);
}
@@ -56666,7 +61013,7 @@ index 4b177fe..be3cbd4 100644
struct search *s = container_of(cl, struct search, cl);
struct cached_dev *dc = container_of(s->d, struct cached_dev, disk);
-@@ -864,13 +875,14 @@ static void cached_dev_read(struct cached_dev *dc, struct search *s)
+@@ -859,13 +870,14 @@ static void cached_dev_read(struct cached_dev *dc, struct search *s)
/* Process writes */
@@ -56683,7 +61030,7 @@ index 4b177fe..be3cbd4 100644
}
static void cached_dev_write(struct cached_dev *dc, struct search *s)
-@@ -942,8 +954,9 @@ static void cached_dev_write(struct cached_dev *dc, struct search *s)
+@@ -937,8 +949,9 @@ static void cached_dev_write(struct cached_dev *dc, struct search *s)
continue_at(cl, cached_dev_write_complete, NULL);
}
@@ -56694,7 +61041,7 @@ index 4b177fe..be3cbd4 100644
struct search *s = container_of(cl, struct search, cl);
struct bio *bio = &s->bio.bio;
-@@ -1063,8 +1076,9 @@ static int flash_dev_cache_miss(struct btree *b, struct search *s,
+@@ -1058,8 +1071,9 @@ static int flash_dev_cache_miss(struct btree *b, struct search *s,
return MAP_CONTINUE;
}
@@ -56997,7 +61344,7 @@ index b3ff57d..b2e30fb 100644
return size;
diff --git a/drivers/md/bcache/writeback.c b/drivers/md/bcache/writeback.c
-index d9fd2a6..749b6c6 100644
+index e51644e..5cc3c15 100644
--- a/drivers/md/bcache/writeback.c
+++ b/drivers/md/bcache/writeback.c
@@ -117,14 +117,16 @@ static void dirty_init(struct keybuf_key *w)
@@ -57019,7 +61366,7 @@ index d9fd2a6..749b6c6 100644
struct dirty_io *io = container_of(cl, struct dirty_io, cl);
struct keybuf_key *w = io->bio.bi_private;
struct cached_dev *dc = io->dc;
-@@ -176,8 +178,9 @@ static void dirty_endio(struct bio *bio)
+@@ -173,8 +175,9 @@ static void dirty_endio(struct bio *bio)
closure_put(&io->cl);
}
@@ -57030,7 +61377,7 @@ index d9fd2a6..749b6c6 100644
struct dirty_io *io = container_of(cl, struct dirty_io, cl);
struct keybuf_key *w = io->bio.bi_private;
-@@ -203,8 +206,9 @@ static void read_dirty_endio(struct bio *bio)
+@@ -200,8 +203,9 @@ static void read_dirty_endio(struct bio *bio)
dirty_endio(bio);
}
@@ -57042,10 +61389,10 @@ index d9fd2a6..749b6c6 100644
closure_bio_submit(&io->bio, cl);
diff --git a/drivers/md/bitmap.c b/drivers/md/bitmap.c
-index 13041ee..2d1c184 100644
+index 2d82692..3507386 100644
--- a/drivers/md/bitmap.c
+++ b/drivers/md/bitmap.c
-@@ -1965,7 +1965,7 @@ void bitmap_status(struct seq_file *seq, struct bitmap *bitmap)
+@@ -1963,7 +1963,7 @@ void bitmap_status(struct seq_file *seq, struct bitmap *bitmap)
chunk_kb ? "KB" : "B");
if (bitmap->storage.file) {
seq_printf(seq, ", file: ");
@@ -57382,7 +61729,7 @@ index 966eb4b..aca05a3 100644
DMWARN("name not supplied when creating device");
return -EINVAL;
diff --git a/drivers/md/dm-mpath.c b/drivers/md/dm-mpath.c
-index 15db5e9..16fc91b 100644
+index e477af8..a5b1fce 100644
--- a/drivers/md/dm-mpath.c
+++ b/drivers/md/dm-mpath.c
@@ -88,7 +88,7 @@ struct multipath {
@@ -57421,7 +61768,7 @@ index 15db5e9..16fc91b 100644
}
static struct pgpath *choose_path_in_pg(struct multipath *m,
-@@ -1420,7 +1420,7 @@ static bool pg_init_limit_reached(struct multipath *m, struct pgpath *pgpath)
+@@ -1418,7 +1418,7 @@ static bool pg_init_limit_reached(struct multipath *m, struct pgpath *pgpath)
spin_lock_irqsave(&m->lock, flags);
@@ -57453,7 +61800,7 @@ index af2d79b..d879687 100644
/* HM FIXME: do we want another state char for raid0? It shows 'D' or 'A' now */
diff --git a/drivers/md/dm-raid1.c b/drivers/md/dm-raid1.c
-index 7a6254d..6d6b8fb 100644
+index 9a8b710..ae1bf13 100644
--- a/drivers/md/dm-raid1.c
+++ b/drivers/md/dm-raid1.c
@@ -42,7 +42,7 @@ enum dm_raid1_error {
@@ -57465,7 +61812,7 @@ index 7a6254d..6d6b8fb 100644
unsigned long error_type;
struct dm_dev *dev;
sector_t offset;
-@@ -188,7 +188,7 @@ static struct mirror *get_valid_mirror(struct mirror_set *ms)
+@@ -187,7 +187,7 @@ static struct mirror *get_valid_mirror(struct mirror_set *ms)
struct mirror *m;
for (m = ms->mirror; m < ms->mirror + ms->nr_mirrors; m++)
@@ -57474,7 +61821,7 @@ index 7a6254d..6d6b8fb 100644
return m;
return NULL;
-@@ -220,7 +220,7 @@ static void fail_mirror(struct mirror *m, enum dm_raid1_error error_type)
+@@ -219,7 +219,7 @@ static void fail_mirror(struct mirror *m, enum dm_raid1_error error_type)
* simple way to tell if a device has encountered
* errors.
*/
@@ -57483,7 +61830,7 @@ index 7a6254d..6d6b8fb 100644
if (test_and_set_bit(error_type, &m->error_type))
return;
-@@ -379,7 +379,7 @@ static void reset_ms_flags(struct mirror_set *ms)
+@@ -378,7 +378,7 @@ static void reset_ms_flags(struct mirror_set *ms)
ms->leg_failure = 0;
for (m = 0; m < ms->nr_mirrors; m++) {
@@ -57492,7 +61839,7 @@ index 7a6254d..6d6b8fb 100644
ms->mirror[m].error_type = 0;
}
}
-@@ -424,7 +424,7 @@ static struct mirror *choose_mirror(struct mirror_set *ms, sector_t sector)
+@@ -423,7 +423,7 @@ static struct mirror *choose_mirror(struct mirror_set *ms, sector_t sector)
struct mirror *m = get_default_mirror(ms);
do {
@@ -57501,7 +61848,7 @@ index 7a6254d..6d6b8fb 100644
return m;
if (m-- == ms->mirror)
-@@ -438,7 +438,7 @@ static int default_ok(struct mirror *m)
+@@ -437,7 +437,7 @@ static int default_ok(struct mirror *m)
{
struct mirror *default_mirror = get_default_mirror(m->ms);
@@ -57510,7 +61857,7 @@ index 7a6254d..6d6b8fb 100644
}
static int mirror_available(struct mirror_set *ms, struct bio *bio)
-@@ -578,7 +578,7 @@ static void do_reads(struct mirror_set *ms, struct bio_list *reads)
+@@ -577,7 +577,7 @@ static void do_reads(struct mirror_set *ms, struct bio_list *reads)
*/
if (likely(region_in_sync(ms, region, 1)))
m = choose_mirror(ms, bio->bi_iter.bi_sector);
@@ -57519,7 +61866,7 @@ index 7a6254d..6d6b8fb 100644
m = NULL;
if (likely(m))
-@@ -963,7 +963,7 @@ static int get_mirror(struct mirror_set *ms, struct dm_target *ti,
+@@ -962,7 +962,7 @@ static int get_mirror(struct mirror_set *ms, struct dm_target *ti,
}
ms->mirror[mirror].ms = ms;
@@ -57528,7 +61875,7 @@ index 7a6254d..6d6b8fb 100644
ms->mirror[mirror].error_type = 0;
ms->mirror[mirror].offset = offset;
-@@ -1389,7 +1389,7 @@ static void mirror_resume(struct dm_target *ti)
+@@ -1372,7 +1372,7 @@ static void mirror_resume(struct dm_target *ti)
*/
static char device_status_char(struct mirror *m)
{
@@ -57541,7 +61888,7 @@ diff --git a/drivers/md/dm-stats.c b/drivers/md/dm-stats.c
index 38b05f2..4f99595 100644
--- a/drivers/md/dm-stats.c
+++ b/drivers/md/dm-stats.c
-@@ -435,7 +435,7 @@ do_sync_free:
+@@ -435,7 +435,7 @@ static int dm_stats_delete(struct dm_stats *stats, int id)
synchronize_rcu_expedited();
dm_stat_free(&s->rcu_head);
} else {
@@ -57639,7 +61986,7 @@ index a15091a..2d20208 100644
pmd->bl_info.value_type.inc = data_block_inc;
pmd->bl_info.value_type.dec = data_block_dec;
diff --git a/drivers/md/dm.c b/drivers/md/dm.c
-index eeef575..af16c27 100644
+index ef7bf1d..a867420 100644
--- a/drivers/md/dm.c
+++ b/drivers/md/dm.c
@@ -569,14 +569,16 @@ static void queue_io(struct mapped_device *md, struct bio *bio)
@@ -57699,7 +62046,7 @@ index eeef575..af16c27 100644
wake_up(&md->eventq);
}
-@@ -2409,18 +2413,18 @@ int dm_kobject_uevent(struct mapped_device *md, enum kobject_action action,
+@@ -2412,18 +2416,18 @@ int dm_kobject_uevent(struct mapped_device *md, enum kobject_action action,
uint32_t dm_next_uevent_seq(struct mapped_device *md)
{
@@ -57722,7 +62069,7 @@ index eeef575..af16c27 100644
void dm_uevent_add(struct mapped_device *md, struct list_head *elist)
diff --git a/drivers/md/md.c b/drivers/md/md.c
-index db0aa6c..3383744 100644
+index 24925f2..1ae5ca4 100644
--- a/drivers/md/md.c
+++ b/drivers/md/md.c
@@ -198,10 +198,10 @@ EXPORT_SYMBOL_GPL(bio_clone_mddev);
@@ -57803,7 +62150,7 @@ index db0aa6c..3383744 100644
{
/* val must be "md_*" where * is not all digits.
* We allocate an array with a large free minor number, and
-@@ -5445,7 +5445,7 @@ static void md_clean(struct mddev *mddev)
+@@ -5460,7 +5460,7 @@ static void md_clean(struct mddev *mddev)
mddev->new_layout = 0;
mddev->new_chunk_sectors = 0;
mddev->curr_resync = 0;
@@ -57812,7 +62159,7 @@ index db0aa6c..3383744 100644
mddev->suspend_lo = mddev->suspend_hi = 0;
mddev->sync_speed_min = mddev->sync_speed_max = 0;
mddev->recovery = 0;
-@@ -5862,9 +5862,10 @@ static int get_array_info(struct mddev *mddev, void __user *arg)
+@@ -5877,9 +5877,10 @@ static int get_array_info(struct mddev *mddev, void __user *arg)
info.patch_version = MD_PATCHLEVEL_VERSION;
info.ctime = clamp_t(time64_t, mddev->ctime, 0, U32_MAX);
info.level = mddev->level;
@@ -57825,7 +62172,7 @@ index db0aa6c..3383744 100644
info.nr_disks = nr;
info.raid_disks = mddev->raid_disks;
info.md_minor = mddev->md_minor;
-@@ -7431,7 +7432,7 @@ static int md_seq_show(struct seq_file *seq, void *v)
+@@ -7458,7 +7459,7 @@ static int md_seq_show(struct seq_file *seq, void *v)
spin_unlock(&pers_lock);
seq_printf(seq, "\n");
@@ -57834,7 +62181,7 @@ index db0aa6c..3383744 100644
return 0;
}
if (v == (void*)2) {
-@@ -7531,7 +7532,7 @@ static int md_seq_open(struct inode *inode, struct file *file)
+@@ -7558,7 +7559,7 @@ static int md_seq_open(struct inode *inode, struct file *file)
return error;
seq = file->private_data;
@@ -57843,7 +62190,7 @@ index db0aa6c..3383744 100644
return error;
}
-@@ -7548,7 +7549,7 @@ static unsigned int mdstat_poll(struct file *filp, poll_table *wait)
+@@ -7575,7 +7576,7 @@ static unsigned int mdstat_poll(struct file *filp, poll_table *wait)
/* always allow read */
mask = POLLIN | POLLRDNORM;
@@ -57852,7 +62199,7 @@ index db0aa6c..3383744 100644
mask |= POLLERR | POLLPRI;
return mask;
}
-@@ -7644,7 +7645,7 @@ static int is_mddev_idle(struct mddev *mddev, int init)
+@@ -7671,7 +7672,7 @@ static int is_mddev_idle(struct mddev *mddev, int init)
struct gendisk *disk = rdev->bdev->bd_contains->bd_disk;
curr_events = (int)part_stat_read(&disk->part0, sectors[0]) +
(int)part_stat_read(&disk->part0, sectors[1]) -
@@ -57861,7 +62208,7 @@ index db0aa6c..3383744 100644
/* sync IO will cause sync_io to increase before the disk_stats
* as sync_io is counted when a request starts, and
* disk_stats is counted when it completes.
-@@ -7914,7 +7915,7 @@ void md_do_sync(struct md_thread *thread)
+@@ -7941,7 +7942,7 @@ void md_do_sync(struct md_thread *thread)
* which defaults to physical size, but can be virtual size
*/
max_sectors = mddev->resync_max_sectors;
@@ -57870,7 +62217,7 @@ index db0aa6c..3383744 100644
/* we don't use the checkpoint if there's a bitmap */
if (test_bit(MD_RECOVERY_REQUESTED, &mddev->recovery))
j = mddev->resync_min;
-@@ -8931,11 +8932,11 @@ static __exit void md_exit(void)
+@@ -8960,11 +8961,11 @@ static __exit void md_exit(void)
subsys_initcall(md_init);
module_exit(md_exit)
@@ -57885,7 +62232,7 @@ index db0aa6c..3383744 100644
return kstrtouint(val, 10, (unsigned int *)&start_readonly);
}
diff --git a/drivers/md/md.h b/drivers/md/md.h
-index 20c6675..871764e 100644
+index 2b20417..5369974 100644
--- a/drivers/md/md.h
+++ b/drivers/md/md.h
@@ -96,13 +96,13 @@ struct md_rdev {
@@ -57904,7 +62251,7 @@ index 20c6675..871764e 100644
* for reporting to userspace and storing
* in superblock.
*/
-@@ -290,7 +290,7 @@ struct mddev {
+@@ -289,7 +289,7 @@ struct mddev {
sector_t resync_max_sectors; /* may be set by personality */
@@ -57913,7 +62260,7 @@ index 20c6675..871764e 100644
* parity/replica mismatch found
*/
-@@ -469,7 +469,7 @@ extern void mddev_unlock(struct mddev *mddev);
+@@ -468,7 +468,7 @@ extern void mddev_unlock(struct mddev *mddev);
static inline void md_sync_acct(struct block_device *bdev, unsigned long nr_sectors)
{
@@ -57935,7 +62282,7 @@ index 20557e2..c5fa1ef 100644
/*
* Extend.
-@@ -738,7 +738,7 @@ out:
+@@ -738,7 +738,7 @@ static int sm_metadata_extend(struct dm_space_map *sm, dm_block_t extra_blocks)
/*
* Switch back to normal behaviour.
*/
@@ -57957,10 +62304,10 @@ index 3e6d115..ffecdeb 100644
/*----------------------------------------------------------------*/
diff --git a/drivers/md/raid1.c b/drivers/md/raid1.c
-index 95bf4cd..3aa17b0 100644
+index 29e2df5..c367325 100644
--- a/drivers/md/raid1.c
+++ b/drivers/md/raid1.c
-@@ -1053,7 +1053,7 @@ static void raid1_make_request(struct mddev *mddev, struct bio * bio)
+@@ -1049,7 +1049,7 @@ static void raid1_make_request(struct mddev *mddev, struct bio * bio)
struct blk_plug_cb *cb;
struct raid1_plug_cb *plug = NULL;
int first_clone;
@@ -57969,7 +62316,7 @@ index 95bf4cd..3aa17b0 100644
int max_sectors;
sector_t start_next_window;
-@@ -1883,7 +1883,7 @@ static int fix_sync_read_error(struct r1bio *r1_bio)
+@@ -1879,7 +1879,7 @@ static int fix_sync_read_error(struct r1bio *r1_bio)
if (r1_sync_page_io(rdev, sect, s,
bio->bi_io_vec[idx].bv_page,
READ) != 0)
@@ -57978,7 +62325,7 @@ index 95bf4cd..3aa17b0 100644
}
sectors -= s;
sect += s;
-@@ -1974,7 +1974,7 @@ static void process_checks(struct r1bio *r1_bio)
+@@ -1970,7 +1970,7 @@ static void process_checks(struct r1bio *r1_bio)
} else
j = 0;
if (j >= 0)
@@ -57987,7 +62334,7 @@ index 95bf4cd..3aa17b0 100644
if (j < 0 || (test_bit(MD_RECOVERY_CHECK, &mddev->recovery)
&& !error)) {
/* No need to write to this device. */
-@@ -2125,7 +2125,7 @@ static void fix_read_error(struct r1conf *conf, int read_disk,
+@@ -2121,7 +2121,7 @@ static void fix_read_error(struct r1conf *conf, int read_disk,
rcu_read_unlock();
if (r1_sync_page_io(rdev, sect, s,
conf->tmppage, READ)) {
@@ -58105,7 +62452,7 @@ index 39fddda..be1dd54 100644
for (i = 0; i < conf->copies; i++) {
int d = r10_bio->devs[i].devnum;
diff --git a/drivers/md/raid5.c b/drivers/md/raid5.c
-index a87549b..da197af 100644
+index cce6057..2c080d8 100644
--- a/drivers/md/raid5.c
+++ b/drivers/md/raid5.c
@@ -1120,23 +1120,23 @@ async_copy_data(int frombio, struct bio *bio, struct page **page,
@@ -58241,10 +62588,10 @@ index 75a3f4b..06b70a3 100644
int minor;
int id, ret;
diff --git a/drivers/media/dvb-frontends/af9033.h b/drivers/media/dvb-frontends/af9033.h
-index 6ad22b6..6e90e2a 100644
+index 5b83e4f..e93b223 100644
--- a/drivers/media/dvb-frontends/af9033.h
+++ b/drivers/media/dvb-frontends/af9033.h
-@@ -96,6 +96,6 @@ struct af9033_ops {
+@@ -94,6 +94,6 @@ struct af9033_ops {
int (*pid_filter_ctrl)(struct dvb_frontend *fe, int onoff);
int (*pid_filter)(struct dvb_frontend *fe, int index, u16 pid,
int onoff);
@@ -58305,10 +62652,10 @@ index 113b094..c9424e6 100644
return DVBFE_ALGO_HW;
}
diff --git a/drivers/media/dvb-frontends/cxd2820r_core.c b/drivers/media/dvb-frontends/cxd2820r_core.c
-index 314d3b8..e2257bd 100644
+index 95267c6..479fdb5 100644
--- a/drivers/media/dvb-frontends/cxd2820r_core.c
+++ b/drivers/media/dvb-frontends/cxd2820r_core.c
-@@ -572,7 +572,7 @@ error:
+@@ -403,7 +403,7 @@ static enum dvbfe_search cxd2820r_search(struct dvb_frontend *fe)
return DVBFE_ALGO_SEARCH_ERROR;
}
@@ -58331,10 +62678,10 @@ index d5dfafb..b7ed9d9 100644
#if IS_REACHABLE(CONFIG_DVB_DIB3000MB)
extern struct dvb_frontend* dib3000mb_attach(const struct dib3000_config* config,
diff --git a/drivers/media/dvb-frontends/dib7000p.h b/drivers/media/dvb-frontends/dib7000p.h
-index baa2789..c8de7fe 100644
+index 205fbbf..73562a9 100644
--- a/drivers/media/dvb-frontends/dib7000p.h
+++ b/drivers/media/dvb-frontends/dib7000p.h
-@@ -64,7 +64,7 @@ struct dib7000p_ops {
+@@ -62,7 +62,7 @@ struct dib7000p_ops {
int (*get_adc_power)(struct dvb_frontend *fe);
int (*slave_reset)(struct dvb_frontend *fe);
struct dvb_frontend *(*init)(struct i2c_adapter *i2c_adap, u8 i2c_addr, struct dib7000p_config *cfg);
@@ -58360,7 +62707,7 @@ diff --git a/drivers/media/dvb-frontends/hd29l2.c b/drivers/media/dvb-frontends/
index 1c7eb47..c1cd6b8 100644
--- a/drivers/media/dvb-frontends/hd29l2.c
+++ b/drivers/media/dvb-frontends/hd29l2.c
-@@ -555,7 +555,7 @@ err:
+@@ -555,7 +555,7 @@ static enum dvbfe_search hd29l2_search(struct dvb_frontend *fe)
return DVBFE_ALGO_SEARCH_ERROR;
}
@@ -58370,7 +62717,7 @@ index 1c7eb47..c1cd6b8 100644
return DVBFE_ALGO_CUSTOM;
}
diff --git a/drivers/media/dvb-frontends/lgdt3306a.c b/drivers/media/dvb-frontends/lgdt3306a.c
-index 179c26e..af482fe 100644
+index 0ca4e81..fa72611 100644
--- a/drivers/media/dvb-frontends/lgdt3306a.c
+++ b/drivers/media/dvb-frontends/lgdt3306a.c
@@ -1734,7 +1734,7 @@ static int lgdt3306a_get_tune_settings(struct dvb_frontend *fe,
@@ -58381,7 +62728,7 @@ index 179c26e..af482fe 100644
+static enum dvbfe_search lgdt3306a_search(struct dvb_frontend *fe)
{
enum fe_status status = 0;
- int i, ret;
+ int ret;
diff --git a/drivers/media/dvb-frontends/mb86a20s.c b/drivers/media/dvb-frontends/mb86a20s.c
index fe79358..6b9c499 100644
--- a/drivers/media/dvb-frontends/mb86a20s.c
@@ -58439,6 +62786,76 @@ index b5e3d90..bd00dc6 100644
{
return DVBFE_ALGO_HW;
}
+diff --git a/drivers/media/media-device.c b/drivers/media/media-device.c
+index 2783531..e80f3f4 100644
+--- a/drivers/media/media-device.c
++++ b/drivers/media/media-device.c
+@@ -58,9 +58,10 @@ static int media_device_close(struct file *filp)
+ return 0;
+ }
+
+-static int media_device_get_info(struct media_device *dev,
+- struct media_device_info *info)
++static long media_device_get_info(struct media_device *dev,
++ void *_info)
+ {
++ struct media_device_info *info = _info;
+ memset(info, 0, sizeof(*info));
+
+ if (dev->driver_name[0])
+@@ -98,8 +99,9 @@ static struct media_entity *find_entity(struct media_device *mdev, u32 id)
+ }
+
+ static long media_device_enum_entities(struct media_device *mdev,
+- struct media_entity_desc *entd)
++ void *_entd)
+ {
++ struct media_entity_desc *entd = _entd;
+ struct media_entity *ent;
+
+ ent = find_entity(mdev, entd->id);
+@@ -151,8 +153,9 @@ static void media_device_kpad_to_upad(const struct media_pad *kpad,
+ }
+
+ static long media_device_enum_links(struct media_device *mdev,
+- struct media_links_enum *links)
++ void *_links)
+ {
++ struct media_links_enum *links = _links;
+ struct media_entity *entity;
+
+ entity = find_entity(mdev, links->entity);
+@@ -199,8 +202,9 @@ static long media_device_enum_links(struct media_device *mdev,
+ }
+
+ static long media_device_setup_link(struct media_device *mdev,
+- struct media_link_desc *linkd)
++ void *_linkd)
+ {
++ struct media_link_desc *linkd = _linkd;
+ struct media_link *link = NULL;
+ struct media_entity *source;
+ struct media_entity *sink;
+@@ -227,8 +231,9 @@ static long media_device_setup_link(struct media_device *mdev,
+ }
+
+ static long media_device_get_topology(struct media_device *mdev,
+- struct media_v2_topology *topo)
++ void *_topo)
+ {
++ struct media_v2_topology *topo = _topo;
+ struct media_entity *entity;
+ struct media_interface *intf;
+ struct media_pad *pad;
+@@ -387,7 +392,7 @@ static long copy_arg_to_user(void __user *uarg, void *karg, unsigned int cmd)
+ #define MEDIA_IOC_ARG(__cmd, func, fl, from_user, to_user) \
+ [_IOC_NR(MEDIA_IOC_##__cmd)] = { \
+ .cmd = MEDIA_IOC_##__cmd, \
+- .fn = (long (*)(struct media_device *, void *))func, \
++ .fn = func, \
+ .flags = fl, \
+ .arg_from_user = from_user, \
+ .arg_to_user = to_user, \
diff --git a/drivers/media/pci/bt8xx/dst.c b/drivers/media/pci/bt8xx/dst.c
index 35bc9b2..d5072b1 100644
--- a/drivers/media/pci/bt8xx/dst.c
@@ -58453,7 +62870,7 @@ index 35bc9b2..d5072b1 100644
return dst_algo ? DVBFE_ALGO_HW : DVBFE_ALGO_SW;
}
diff --git a/drivers/media/pci/cx88/cx88-video.c b/drivers/media/pci/cx88/cx88-video.c
-index 5dc1e3f..ed6db07 100644
+index d83eb3b..68382bf 100644
--- a/drivers/media/pci/cx88/cx88-video.c
+++ b/drivers/media/pci/cx88/cx88-video.c
@@ -50,9 +50,9 @@ MODULE_VERSION(CX88_VERSION);
@@ -58470,7 +62887,7 @@ index 5dc1e3f..ed6db07 100644
module_param_array(video_nr, int, NULL, 0444);
module_param_array(vbi_nr, int, NULL, 0444);
diff --git a/drivers/media/pci/ivtv/ivtv-driver.c b/drivers/media/pci/ivtv/ivtv-driver.c
-index 374033a..461c38c 100644
+index ee48c3e..58a6269 100644
--- a/drivers/media/pci/ivtv/ivtv-driver.c
+++ b/drivers/media/pci/ivtv/ivtv-driver.c
@@ -83,7 +83,7 @@ static struct pci_device_id ivtv_pci_tbl[] = {
@@ -58522,7 +62939,7 @@ index f50d072..0214f25 100644
const char *driver;
int i;
diff --git a/drivers/media/pci/solo6x10/solo6x10-g723.c b/drivers/media/pci/solo6x10/solo6x10-g723.c
-index 4a37a1c..7e82dfd 100644
+index 6a35107..36e9354 100644
--- a/drivers/media/pci/solo6x10/solo6x10-g723.c
+++ b/drivers/media/pci/solo6x10/solo6x10-g723.c
@@ -350,7 +350,7 @@ static int solo_snd_pcm_init(struct solo_dev *solo_dev)
@@ -58651,10 +63068,10 @@ index 9d2697f..65fb18f 100644
dprintk(1,
KERN_ERR
diff --git a/drivers/media/pci/zoran/zoran_driver.c b/drivers/media/pci/zoran/zoran_driver.c
-index 80caa70..d076ecf 100644
+index d6b631a..5479eca 100644
--- a/drivers/media/pci/zoran/zoran_driver.c
+++ b/drivers/media/pci/zoran/zoran_driver.c
-@@ -2607,8 +2607,6 @@ zoran_poll (struct file *file,
+@@ -2593,8 +2593,6 @@ zoran_poll (struct file *file,
static void
zoran_vm_open (struct vm_area_struct *vma)
{
@@ -58663,7 +63080,7 @@ index 80caa70..d076ecf 100644
}
static void
-@@ -2736,7 +2734,6 @@ zoran_mmap (struct file *file,
+@@ -2722,7 +2720,6 @@ zoran_mmap (struct file *file,
return res;
}
map->fh = fh;
@@ -58672,13 +63089,13 @@ index 80caa70..d076ecf 100644
vma->vm_ops = &zoran_vm_ops;
vma->vm_flags |= VM_DONTEXPAND;
diff --git a/drivers/media/platform/mtk-vcodec/venc/venc_h264_if.c b/drivers/media/platform/mtk-vcodec/venc/venc_h264_if.c
-index 63d4be4..451b8e1 100644
+index b76c80b..4eb3be3 100644
--- a/drivers/media/platform/mtk-vcodec/venc/venc_h264_if.c
+++ b/drivers/media/platform/mtk-vcodec/venc/venc_h264_if.c
@@ -665,10 +665,10 @@ static int h264_enc_deinit(unsigned long handle)
}
- static struct venc_common_if venc_h264_if = {
+ static const struct venc_common_if venc_h264_if = {
- h264_enc_init,
- h264_enc_encode,
- h264_enc_set_param,
@@ -58689,15 +63106,15 @@ index 63d4be4..451b8e1 100644
+ .deinit = h264_enc_deinit,
};
- struct venc_common_if *get_h264_enc_comm_if(void);
+ const struct venc_common_if *get_h264_enc_comm_if(void);
diff --git a/drivers/media/platform/mtk-vcodec/venc/venc_vp8_if.c b/drivers/media/platform/mtk-vcodec/venc/venc_vp8_if.c
-index 6d97584..8539e9b 100644
+index 544f571..a6fa145 100644
--- a/drivers/media/platform/mtk-vcodec/venc/venc_vp8_if.c
+++ b/drivers/media/platform/mtk-vcodec/venc/venc_vp8_if.c
@@ -470,10 +470,10 @@ static int vp8_enc_deinit(unsigned long handle)
}
- static struct venc_common_if venc_vp8_if = {
+ static const struct venc_common_if venc_vp8_if = {
- vp8_enc_init,
- vp8_enc_encode,
- vp8_enc_set_param,
@@ -58708,9 +63125,9 @@ index 6d97584..8539e9b 100644
+ .deinit = vp8_enc_deinit,
};
- struct venc_common_if *get_vp8_enc_comm_if(void);
+ const struct venc_common_if *get_vp8_enc_comm_if(void);
diff --git a/drivers/media/platform/omap/omap_vout.c b/drivers/media/platform/omap/omap_vout.c
-index 6b01e12..0f35c56 100644
+index a31b95c..485cc47 100644
--- a/drivers/media/platform/omap/omap_vout.c
+++ b/drivers/media/platform/omap/omap_vout.c
@@ -63,7 +63,6 @@ enum omap_vout_channels {
@@ -58745,163 +63162,11 @@ index 6b01e12..0f35c56 100644
spin_lock_init(&vout->vbq_lock);
videobuf_queue_dma_contig_init(q, &video_vbq_ops, q->dev,
-diff --git a/drivers/media/platform/s5p-tv/mixer.h b/drivers/media/platform/s5p-tv/mixer.h
-index 869f0ce..c9c6e9e 100644
---- a/drivers/media/platform/s5p-tv/mixer.h
-+++ b/drivers/media/platform/s5p-tv/mixer.h
-@@ -156,7 +156,7 @@ struct mxr_layer {
- /** layer index (unique identifier) */
- int idx;
- /** callbacks for layer methods */
-- struct mxr_layer_ops ops;
-+ struct mxr_layer_ops *ops;
- /** format array */
- const struct mxr_format **fmt_array;
- /** size of format array */
-diff --git a/drivers/media/platform/s5p-tv/mixer_grp_layer.c b/drivers/media/platform/s5p-tv/mixer_grp_layer.c
-index d4d2564..f4570ea 100644
---- a/drivers/media/platform/s5p-tv/mixer_grp_layer.c
-+++ b/drivers/media/platform/s5p-tv/mixer_grp_layer.c
-@@ -235,7 +235,7 @@ struct mxr_layer *mxr_graph_layer_create(struct mxr_device *mdev, int idx)
- {
- struct mxr_layer *layer;
- int ret;
-- const struct mxr_layer_ops ops = {
-+ static const struct mxr_layer_ops ops = {
- .release = mxr_graph_layer_release,
- .buffer_set = mxr_graph_buffer_set,
- .stream_set = mxr_graph_stream_set,
-diff --git a/drivers/media/platform/s5p-tv/mixer_reg.c b/drivers/media/platform/s5p-tv/mixer_reg.c
-index a0ec14a..225f4ac 100644
---- a/drivers/media/platform/s5p-tv/mixer_reg.c
-+++ b/drivers/media/platform/s5p-tv/mixer_reg.c
-@@ -276,7 +276,7 @@ static void mxr_irq_layer_handle(struct mxr_layer *layer)
- layer->update_buf = next;
- }
-
-- layer->ops.buffer_set(layer, layer->update_buf);
-+ layer->ops->buffer_set(layer, layer->update_buf);
-
- if (done && done != layer->shadow_buf)
- vb2_buffer_done(&done->vb.vb2_buf, VB2_BUF_STATE_DONE);
-diff --git a/drivers/media/platform/s5p-tv/mixer_video.c b/drivers/media/platform/s5p-tv/mixer_video.c
-index ee74e2b..9d2dae9 100644
---- a/drivers/media/platform/s5p-tv/mixer_video.c
-+++ b/drivers/media/platform/s5p-tv/mixer_video.c
-@@ -201,7 +201,7 @@ static void mxr_layer_default_geo(struct mxr_layer *layer)
- layer->geo.src.height = layer->geo.src.full_height;
-
- mxr_geometry_dump(mdev, &layer->geo);
-- layer->ops.fix_geometry(layer, MXR_GEOMETRY_SINK, 0);
-+ layer->ops->fix_geometry(layer, MXR_GEOMETRY_SINK, 0);
- mxr_geometry_dump(mdev, &layer->geo);
- }
-
-@@ -219,7 +219,7 @@ static void mxr_layer_update_output(struct mxr_layer *layer)
- layer->geo.dst.full_width = mbus_fmt.width;
- layer->geo.dst.full_height = mbus_fmt.height;
- layer->geo.dst.field = mbus_fmt.field;
-- layer->ops.fix_geometry(layer, MXR_GEOMETRY_SINK, 0);
-+ layer->ops->fix_geometry(layer, MXR_GEOMETRY_SINK, 0);
-
- mxr_geometry_dump(mdev, &layer->geo);
- }
-@@ -325,7 +325,7 @@ static int mxr_s_fmt(struct file *file, void *priv,
- /* set source size to highest accepted value */
- geo->src.full_width = max(geo->dst.full_width, pix->width);
- geo->src.full_height = max(geo->dst.full_height, pix->height);
-- layer->ops.fix_geometry(layer, MXR_GEOMETRY_SOURCE, 0);
-+ layer->ops->fix_geometry(layer, MXR_GEOMETRY_SOURCE, 0);
- mxr_geometry_dump(mdev, &layer->geo);
- /* set cropping to total visible screen */
- geo->src.width = pix->width;
-@@ -333,12 +333,12 @@ static int mxr_s_fmt(struct file *file, void *priv,
- geo->src.x_offset = 0;
- geo->src.y_offset = 0;
- /* assure consistency of geometry */
-- layer->ops.fix_geometry(layer, MXR_GEOMETRY_CROP, MXR_NO_OFFSET);
-+ layer->ops->fix_geometry(layer, MXR_GEOMETRY_CROP, MXR_NO_OFFSET);
- mxr_geometry_dump(mdev, &layer->geo);
- /* set full size to lowest possible value */
- geo->src.full_width = 0;
- geo->src.full_height = 0;
-- layer->ops.fix_geometry(layer, MXR_GEOMETRY_SOURCE, 0);
-+ layer->ops->fix_geometry(layer, MXR_GEOMETRY_SOURCE, 0);
- mxr_geometry_dump(mdev, &layer->geo);
-
- /* returning results */
-@@ -465,7 +465,7 @@ static int mxr_s_selection(struct file *file, void *fh,
- target->width = s->r.width;
- target->height = s->r.height;
-
-- layer->ops.fix_geometry(layer, stage, s->flags);
-+ layer->ops->fix_geometry(layer, stage, s->flags);
-
- /* retrieve update selection rectangle */
- res.left = target->x_offset;
-@@ -929,13 +929,13 @@ static int start_streaming(struct vb2_queue *vq, unsigned int count)
- mxr_output_get(mdev);
-
- mxr_layer_update_output(layer);
-- layer->ops.format_set(layer);
-+ layer->ops->format_set(layer);
- /* enabling layer in hardware */
- spin_lock_irqsave(&layer->enq_slock, flags);
- layer->state = MXR_LAYER_STREAMING;
- spin_unlock_irqrestore(&layer->enq_slock, flags);
-
-- layer->ops.stream_set(layer, MXR_ENABLE);
-+ layer->ops->stream_set(layer, MXR_ENABLE);
- mxr_streamer_get(mdev);
-
- return 0;
-@@ -1007,7 +1007,7 @@ static void stop_streaming(struct vb2_queue *vq)
- spin_unlock_irqrestore(&layer->enq_slock, flags);
-
- /* disabling layer in hardware */
-- layer->ops.stream_set(layer, MXR_DISABLE);
-+ layer->ops->stream_set(layer, MXR_DISABLE);
- /* remove one streamer */
- mxr_streamer_put(mdev);
- /* allow changes in output configuration */
-@@ -1045,8 +1045,8 @@ void mxr_base_layer_unregister(struct mxr_layer *layer)
-
- void mxr_layer_release(struct mxr_layer *layer)
- {
-- if (layer->ops.release)
-- layer->ops.release(layer);
-+ if (layer->ops->release)
-+ layer->ops->release(layer);
- }
-
- void mxr_base_layer_release(struct mxr_layer *layer)
-@@ -1072,7 +1072,7 @@ struct mxr_layer *mxr_base_layer_create(struct mxr_device *mdev,
-
- layer->mdev = mdev;
- layer->idx = idx;
-- layer->ops = *ops;
-+ layer->ops = ops;
-
- spin_lock_init(&layer->enq_slock);
- INIT_LIST_HEAD(&layer->enq_list);
-diff --git a/drivers/media/platform/s5p-tv/mixer_vp_layer.c b/drivers/media/platform/s5p-tv/mixer_vp_layer.c
-index 6fa6f67..04b574b 100644
---- a/drivers/media/platform/s5p-tv/mixer_vp_layer.c
-+++ b/drivers/media/platform/s5p-tv/mixer_vp_layer.c
-@@ -207,7 +207,7 @@ struct mxr_layer *mxr_vp_layer_create(struct mxr_device *mdev, int idx)
- {
- struct mxr_layer *layer;
- int ret;
-- const struct mxr_layer_ops ops = {
-+ static const struct mxr_layer_ops ops = {
- .release = mxr_vp_layer_release,
- .buffer_set = mxr_vp_buffer_set,
- .stream_set = mxr_vp_stream_set,
diff --git a/drivers/media/platform/soc_camera/soc_camera.c b/drivers/media/platform/soc_camera/soc_camera.c
-index 46c7186..47130c8 100644
+index edd1c1d..fbec29e 100644
--- a/drivers/media/platform/soc_camera/soc_camera.c
+++ b/drivers/media/platform/soc_camera/soc_camera.c
-@@ -1791,7 +1791,7 @@ static int soc_camera_probe(struct soc_camera_host *ici,
+@@ -1723,7 +1723,7 @@ static int soc_camera_probe(struct soc_camera_host *ici,
goto eadd;
if (shd->module_name)
@@ -59012,433 +63277,6 @@ index 642b89c..5e92dc3 100644
module_param(radio_nr, int, 0444);
MODULE_PARM_DESC(radio_nr, "Radio Nr");
-diff --git a/drivers/media/usb/dvb-usb/cinergyT2-core.c b/drivers/media/usb/dvb-usb/cinergyT2-core.c
-index 9fd1527..8927230 100644
---- a/drivers/media/usb/dvb-usb/cinergyT2-core.c
-+++ b/drivers/media/usb/dvb-usb/cinergyT2-core.c
-@@ -50,29 +50,73 @@ static struct dvb_usb_device_properties cinergyt2_properties;
-
- static int cinergyt2_streaming_ctrl(struct dvb_usb_adapter *adap, int enable)
- {
-- char buf[] = { CINERGYT2_EP1_CONTROL_STREAM_TRANSFER, enable ? 1 : 0 };
-- char result[64];
-- return dvb_usb_generic_rw(adap->dev, buf, sizeof(buf), result,
-- sizeof(result), 0);
-+ char *buf;
-+ char *result;
-+ int retval;
-+
-+ buf = kmalloc(2, GFP_KERNEL);
-+ if (buf == NULL)
-+ return -ENOMEM;
-+ result = kmalloc(64, GFP_KERNEL);
-+ if (result == NULL) {
-+ kfree(buf);
-+ return -ENOMEM;
-+ }
-+
-+ buf[0] = CINERGYT2_EP1_CONTROL_STREAM_TRANSFER;
-+ buf[1] = enable ? 1 : 0;
-+
-+ retval = dvb_usb_generic_rw(adap->dev, buf, 2, result, 64, 0);
-+
-+ kfree(buf);
-+ kfree(result);
-+ return retval;
- }
-
- static int cinergyt2_power_ctrl(struct dvb_usb_device *d, int enable)
- {
-- char buf[] = { CINERGYT2_EP1_SLEEP_MODE, enable ? 0 : 1 };
-- char state[3];
-- return dvb_usb_generic_rw(d, buf, sizeof(buf), state, sizeof(state), 0);
-+ char *buf;
-+ char *state;
-+ int retval;
-+
-+ buf = kmalloc(2, GFP_KERNEL);
-+ if (buf == NULL)
-+ return -ENOMEM;
-+ state = kmalloc(3, GFP_KERNEL);
-+ if (state == NULL) {
-+ kfree(buf);
-+ return -ENOMEM;
-+ }
-+
-+ buf[0] = CINERGYT2_EP1_SLEEP_MODE;
-+ buf[1] = enable ? 1 : 0;
-+
-+ retval = dvb_usb_generic_rw(d, buf, 2, state, 3, 0);
-+
-+ kfree(buf);
-+ kfree(state);
-+ return retval;
- }
-
- static int cinergyt2_frontend_attach(struct dvb_usb_adapter *adap)
- {
-- char query[] = { CINERGYT2_EP1_GET_FIRMWARE_VERSION };
-- char state[3];
-+ char *query;
-+ char *state;
- int ret;
-+ query = kmalloc(1, GFP_KERNEL);
-+ if (query == NULL)
-+ return -ENOMEM;
-+ state = kmalloc(3, GFP_KERNEL);
-+ if (state == NULL) {
-+ kfree(query);
-+ return -ENOMEM;
-+ }
-+
-+ query[0] = CINERGYT2_EP1_GET_FIRMWARE_VERSION;
-
- adap->fe_adap[0].fe = cinergyt2_fe_attach(adap->dev);
-
-- ret = dvb_usb_generic_rw(adap->dev, query, sizeof(query), state,
-- sizeof(state), 0);
-+ ret = dvb_usb_generic_rw(adap->dev, query, 1, state, 3, 0);
- if (ret < 0) {
- deb_rc("cinergyt2_power_ctrl() Failed to retrieve sleep "
- "state info\n");
-@@ -80,7 +124,8 @@ static int cinergyt2_frontend_attach(struct dvb_usb_adapter *adap)
-
- /* Copy this pointer as we are gonna need it in the release phase */
- cinergyt2_usb_device = adap->dev;
--
-+ kfree(query);
-+ kfree(state);
- return 0;
- }
-
-@@ -141,12 +186,23 @@ static int repeatable_keys[] = {
- static int cinergyt2_rc_query(struct dvb_usb_device *d, u32 *event, int *state)
- {
- struct cinergyt2_state *st = d->priv;
-- u8 key[5] = {0, 0, 0, 0, 0}, cmd = CINERGYT2_EP1_GET_RC_EVENTS;
-+ u8 *key, *cmd;
- int i;
-
-+ cmd = kmalloc(1, GFP_KERNEL);
-+ if (cmd == NULL)
-+ return -EINVAL;
-+ key = kzalloc(5, GFP_KERNEL);
-+ if (key == NULL) {
-+ kfree(cmd);
-+ return -EINVAL;
-+ }
-+
-+ cmd[0] = CINERGYT2_EP1_GET_RC_EVENTS;
-+
- *state = REMOTE_NO_KEY_PRESSED;
-
-- dvb_usb_generic_rw(d, &cmd, 1, key, sizeof(key), 0);
-+ dvb_usb_generic_rw(d, cmd, 1, key, 5, 0);
- if (key[4] == 0xff) {
- /* key repeat */
- st->rc_counter++;
-@@ -157,12 +213,12 @@ static int cinergyt2_rc_query(struct dvb_usb_device *d, u32 *event, int *state)
- *event = d->last_event;
- deb_rc("repeat key, event %x\n",
- *event);
-- return 0;
-+ goto out;
- }
- }
- deb_rc("repeated key (non repeatable)\n");
- }
-- return 0;
-+ goto out;
- }
-
- /* hack to pass checksum on the custom field */
-@@ -174,6 +230,9 @@ static int cinergyt2_rc_query(struct dvb_usb_device *d, u32 *event, int *state)
-
- deb_rc("key: %*ph\n", 5, key);
- }
-+out:
-+ kfree(cmd);
-+ kfree(key);
- return 0;
- }
-
-diff --git a/drivers/media/usb/dvb-usb/cinergyT2-fe.c b/drivers/media/usb/dvb-usb/cinergyT2-fe.c
-index b3ec743..9c0e418 100644
---- a/drivers/media/usb/dvb-usb/cinergyT2-fe.c
-+++ b/drivers/media/usb/dvb-usb/cinergyT2-fe.c
-@@ -145,103 +145,176 @@ static int cinergyt2_fe_read_status(struct dvb_frontend *fe,
- enum fe_status *status)
- {
- struct cinergyt2_fe_state *state = fe->demodulator_priv;
-- struct dvbt_get_status_msg result;
-- u8 cmd[] = { CINERGYT2_EP1_GET_TUNER_STATUS };
-+ struct dvbt_get_status_msg *result;
-+ u8 *cmd;
- int ret;
-
-- ret = dvb_usb_generic_rw(state->d, cmd, sizeof(cmd), (u8 *)&result,
-- sizeof(result), 0);
-+ cmd = kmalloc(1, GFP_KERNEL);
-+ if (cmd == NULL)
-+ return -ENOMEM;
-+ result = kmalloc(sizeof(*result), GFP_KERNEL);
-+ if (result == NULL) {
-+ kfree(cmd);
-+ return -ENOMEM;
-+ }
-+
-+ cmd[0] = CINERGYT2_EP1_GET_TUNER_STATUS;
-+
-+ ret = dvb_usb_generic_rw(state->d, cmd, 1, (u8 *)result,
-+ sizeof(*result), 0);
- if (ret < 0)
-- return ret;
-+ goto out;
-
- *status = 0;
-
-- if (0xffff - le16_to_cpu(result.gain) > 30)
-+ if (0xffff - le16_to_cpu(result->gain) > 30)
- *status |= FE_HAS_SIGNAL;
-- if (result.lock_bits & (1 << 6))
-+ if (result->lock_bits & (1 << 6))
- *status |= FE_HAS_LOCK;
-- if (result.lock_bits & (1 << 5))
-+ if (result->lock_bits & (1 << 5))
- *status |= FE_HAS_SYNC;
-- if (result.lock_bits & (1 << 4))
-+ if (result->lock_bits & (1 << 4))
- *status |= FE_HAS_CARRIER;
-- if (result.lock_bits & (1 << 1))
-+ if (result->lock_bits & (1 << 1))
- *status |= FE_HAS_VITERBI;
-
- if ((*status & (FE_HAS_CARRIER | FE_HAS_VITERBI | FE_HAS_SYNC)) !=
- (FE_HAS_CARRIER | FE_HAS_VITERBI | FE_HAS_SYNC))
- *status &= ~FE_HAS_LOCK;
-
-- return 0;
-+out:
-+ kfree(cmd);
-+ kfree(result);
-+ return ret;
- }
-
- static int cinergyt2_fe_read_ber(struct dvb_frontend *fe, u32 *ber)
- {
- struct cinergyt2_fe_state *state = fe->demodulator_priv;
-- struct dvbt_get_status_msg status;
-- char cmd[] = { CINERGYT2_EP1_GET_TUNER_STATUS };
-+ struct dvbt_get_status_msg *status;
-+ char *cmd;
- int ret;
-
-- ret = dvb_usb_generic_rw(state->d, cmd, sizeof(cmd), (char *)&status,
-- sizeof(status), 0);
-+ cmd = kmalloc(1, GFP_KERNEL);
-+ if (cmd == NULL)
-+ return -ENOMEM;
-+ status = kmalloc(sizeof(*status), GFP_KERNEL);
-+ if (status == NULL) {
-+ kfree(cmd);
-+ return -ENOMEM;
-+ }
-+
-+ cmd[0] = CINERGYT2_EP1_GET_TUNER_STATUS;
-+
-+ ret = dvb_usb_generic_rw(state->d, cmd, 1, (char *)status,
-+ sizeof(*status), 0);
- if (ret < 0)
-- return ret;
-+ goto out;
-
-- *ber = le32_to_cpu(status.viterbi_error_rate);
-+ *ber = le32_to_cpu(status->viterbi_error_rate);
-+out:
-+ kfree(cmd);
-+ kfree(status);
- return 0;
- }
-
- static int cinergyt2_fe_read_unc_blocks(struct dvb_frontend *fe, u32 *unc)
- {
- struct cinergyt2_fe_state *state = fe->demodulator_priv;
-- struct dvbt_get_status_msg status;
-- u8 cmd[] = { CINERGYT2_EP1_GET_TUNER_STATUS };
-+ struct dvbt_get_status_msg *status;
-+ u8 *cmd;
- int ret;
-
-- ret = dvb_usb_generic_rw(state->d, cmd, sizeof(cmd), (u8 *)&status,
-- sizeof(status), 0);
-+ cmd = kmalloc(1, GFP_KERNEL);
-+ if (cmd == NULL)
-+ return -ENOMEM;
-+ status = kmalloc(sizeof(*status), GFP_KERNEL);
-+ if (status == NULL) {
-+ kfree(cmd);
-+ return -ENOMEM;
-+ }
-+
-+ cmd[0] = CINERGYT2_EP1_GET_TUNER_STATUS;
-+
-+ ret = dvb_usb_generic_rw(state->d, cmd, 1, (u8 *)status,
-+ sizeof(*status), 0);
- if (ret < 0) {
- err("cinergyt2_fe_read_unc_blocks() Failed! (Error=%d)\n",
- ret);
-- return ret;
-+ goto out;
- }
-- *unc = le32_to_cpu(status.uncorrected_block_count);
-- return 0;
-+ *unc = le32_to_cpu(status->uncorrected_block_count);
-+
-+out:
-+ kfree(cmd);
-+ kfree(status);
-+ return ret;
- }
-
- static int cinergyt2_fe_read_signal_strength(struct dvb_frontend *fe,
- u16 *strength)
- {
- struct cinergyt2_fe_state *state = fe->demodulator_priv;
-- struct dvbt_get_status_msg status;
-- char cmd[] = { CINERGYT2_EP1_GET_TUNER_STATUS };
-+ struct dvbt_get_status_msg *status;
-+ char *cmd;
- int ret;
-
-- ret = dvb_usb_generic_rw(state->d, cmd, sizeof(cmd), (char *)&status,
-- sizeof(status), 0);
-+ cmd = kmalloc(1, GFP_KERNEL);
-+ if (cmd == NULL)
-+ return -ENOMEM;
-+ status = kmalloc(sizeof(*status), GFP_KERNEL);
-+ if (status == NULL) {
-+ kfree(cmd);
-+ return -ENOMEM;
-+ }
-+
-+ cmd[0] = CINERGYT2_EP1_GET_TUNER_STATUS;
-+
-+ ret = dvb_usb_generic_rw(state->d, cmd, 1, (char *)status,
-+ sizeof(*status), 0);
- if (ret < 0) {
- err("cinergyt2_fe_read_signal_strength() Failed!"
- " (Error=%d)\n", ret);
-- return ret;
-+ goto out;
- }
-- *strength = (0xffff - le16_to_cpu(status.gain));
-+ *strength = (0xffff - le16_to_cpu(status->gain));
-+
-+out:
-+ kfree(cmd);
-+ kfree(status);
- return 0;
- }
-
- static int cinergyt2_fe_read_snr(struct dvb_frontend *fe, u16 *snr)
- {
- struct cinergyt2_fe_state *state = fe->demodulator_priv;
-- struct dvbt_get_status_msg status;
-- char cmd[] = { CINERGYT2_EP1_GET_TUNER_STATUS };
-+ struct dvbt_get_status_msg *status;
-+ char *cmd;
- int ret;
-
-- ret = dvb_usb_generic_rw(state->d, cmd, sizeof(cmd), (char *)&status,
-- sizeof(status), 0);
-+ cmd = kmalloc(1, GFP_KERNEL);
-+ if (cmd == NULL)
-+ return -ENOMEM;
-+ status = kmalloc(sizeof(*status), GFP_KERNEL);
-+ if (status == NULL) {
-+ kfree(cmd);
-+ return -ENOMEM;
-+ }
-+
-+ cmd[0] = CINERGYT2_EP1_GET_TUNER_STATUS;
-+
-+ ret = dvb_usb_generic_rw(state->d, cmd, 1, (char *)status,
-+ sizeof(*status), 0);
- if (ret < 0) {
- err("cinergyt2_fe_read_snr() Failed! (Error=%d)\n", ret);
-- return ret;
-+ goto out;
- }
-- *snr = (status.snr << 8) | status.snr;
-- return 0;
-+ *snr = (status->snr << 8) | status->snr;
-+
-+out:
-+ kfree(cmd);
-+ kfree(status);
-+ return ret;
- }
-
- static int cinergyt2_fe_init(struct dvb_frontend *fe)
-@@ -266,35 +339,46 @@ static int cinergyt2_fe_set_frontend(struct dvb_frontend *fe)
- {
- struct dtv_frontend_properties *fep = &fe->dtv_property_cache;
- struct cinergyt2_fe_state *state = fe->demodulator_priv;
-- struct dvbt_set_parameters_msg param;
-- char result[2];
-+ struct dvbt_set_parameters_msg *param;
-+ char *result;
- int err;
-
-- param.cmd = CINERGYT2_EP1_SET_TUNER_PARAMETERS;
-- param.tps = cpu_to_le16(compute_tps(fep));
-- param.freq = cpu_to_le32(fep->frequency / 1000);
-- param.flags = 0;
-+ result = kmalloc(2, GFP_KERNEL);
-+ if (result == NULL)
-+ return -ENOMEM;
-+ param = kmalloc(sizeof(*param), GFP_KERNEL);
-+ if (param == NULL) {
-+ kfree(result);
-+ return -ENOMEM;
-+ }
-+
-+ param->cmd = CINERGYT2_EP1_SET_TUNER_PARAMETERS;
-+ param->tps = cpu_to_le16(compute_tps(fep));
-+ param->freq = cpu_to_le32(fep->frequency / 1000);
-+ param->flags = 0;
-
- switch (fep->bandwidth_hz) {
- default:
- case 8000000:
-- param.bandwidth = 8;
-+ param->bandwidth = 8;
- break;
- case 7000000:
-- param.bandwidth = 7;
-+ param->bandwidth = 7;
- break;
- case 6000000:
-- param.bandwidth = 6;
-+ param->bandwidth = 6;
- break;
- }
-
- err = dvb_usb_generic_rw(state->d,
-- (char *)&param, sizeof(param),
-- result, sizeof(result), 0);
-+ (char *)param, sizeof(*param),
-+ result, 2, 0);
- if (err < 0)
- err("cinergyt2_fe_set_frontend() Failed! err=%d\n", err);
-
-- return (err < 0) ? err : 0;
-+ kfree(result);
-+ kfree(param);
-+ return err;
- }
-
- static void cinergyt2_fe_release(struct dvb_frontend *fe)
diff --git a/drivers/media/usb/dvb-usb/dvb-usb-firmware.c b/drivers/media/usb/dvb-usb/dvb-usb-firmware.c
index dd048a7..717a7b2 100644
--- a/drivers/media/usb/dvb-usb/dvb-usb-firmware.c
@@ -59513,67 +63351,21 @@ index dd048a7..717a7b2 100644
}
EXPORT_SYMBOL(usb_cypress_load_firmware);
diff --git a/drivers/media/usb/dvb-usb/technisat-usb2.c b/drivers/media/usb/dvb-usb/technisat-usb2.c
-index d9f3262..4370dbd 100644
+index 4706628..14d602fb 100644
--- a/drivers/media/usb/dvb-usb/technisat-usb2.c
+++ b/drivers/media/usb/dvb-usb/technisat-usb2.c
-@@ -89,8 +89,11 @@ struct technisat_usb2_state {
- static int technisat_usb2_i2c_access(struct usb_device *udev,
- u8 device_addr, u8 *tx, u8 txlen, u8 *rx, u8 rxlen)
- {
-- u8 b[64];
-- int ret, actual_length;
-+ u8 *b = kmalloc(64, GFP_KERNEL);
-+ int ret, actual_length, error = 0;
-+
-+ if (b == NULL)
-+ return -ENOMEM;
-
- deb_i2c("i2c-access: %02x, tx: ", device_addr);
- debug_dump(tx, txlen, deb_i2c);
-@@ -123,7 +126,8 @@ static int technisat_usb2_i2c_access(struct usb_device *udev,
-
- if (ret < 0) {
- err("i2c-error: out failed %02x = %d", device_addr, ret);
-- return -ENODEV;
-+ error = -ENODEV;
-+ goto out;
- }
-
- ret = usb_bulk_msg(udev,
-@@ -131,7 +135,8 @@ static int technisat_usb2_i2c_access(struct usb_device *udev,
- b, 64, &actual_length, 1000);
- if (ret < 0) {
- err("i2c-error: in failed %02x = %d", device_addr, ret);
-- return -ENODEV;
-+ error = -ENODEV;
-+ goto out;
- }
-
- if (b[0] != I2C_STATUS_OK) {
-@@ -139,8 +144,10 @@ static int technisat_usb2_i2c_access(struct usb_device *udev,
+@@ -143,8 +143,10 @@ static int technisat_usb2_i2c_access(struct usb_device *udev,
/* handle tuner-i2c-nak */
if (!(b[0] == I2C_STATUS_NAK &&
device_addr == 0x60
- /* && device_is_technisat_usb2 */))
-- return -ENODEV;
+ /* && device_is_technisat_usb2 */)) {
-+ error = -ENODEV;
-+ goto out;
++ ret = -ENODEV;
+ goto err;
+ }
}
deb_i2c("status: %d, ", b[0]);
-@@ -154,7 +161,9 @@ static int technisat_usb2_i2c_access(struct usb_device *udev,
-
- deb_i2c("\n");
-
-- return 0;
-+out:
-+ kfree(b);
-+ return error;
- }
-
- static int technisat_usb2_i2c_xfer(struct i2c_adapter *adap, struct i2c_msg *msg,
diff --git a/drivers/media/usb/pvrusb2/pvrusb2-context.c b/drivers/media/usb/pvrusb2/pvrusb2-context.c
index c45f307..7d79261 100644
--- a/drivers/media/usb/pvrusb2/pvrusb2-context.c
@@ -59628,7 +63420,7 @@ index 8c95793..2309b9e 100644
ret = pvr2_stream_set_buffer_count(stream, PVR2_DVB_BUFFER_COUNT);
if (ret < 0) return ret;
diff --git a/drivers/media/usb/pvrusb2/pvrusb2-hdw.c b/drivers/media/usb/pvrusb2/pvrusb2-hdw.c
-index fe20fe4..a199a6d 100644
+index 1eb4f7b..db5fef7 100644
--- a/drivers/media/usb/pvrusb2/pvrusb2-hdw.c
+++ b/drivers/media/usb/pvrusb2/pvrusb2-hdw.c
@@ -2097,7 +2097,7 @@ static void pvr2_hdw_load_modules(struct pvr2_hdw *hdw)
@@ -59654,10 +63446,10 @@ index 9a596a3..38de071 100644
bufSize -= c2;
bufPtr += c2;
diff --git a/drivers/media/usb/pvrusb2/pvrusb2-v4l2.c b/drivers/media/usb/pvrusb2/pvrusb2-v4l2.c
-index 81f788b..9619f47 100644
+index 2cc4d2b..3a559c8 100644
--- a/drivers/media/usb/pvrusb2/pvrusb2-v4l2.c
+++ b/drivers/media/usb/pvrusb2/pvrusb2-v4l2.c
-@@ -1069,8 +1069,10 @@ static int pvr2_v4l2_open(struct file *file)
+@@ -1090,8 +1090,10 @@ static int pvr2_v4l2_open(struct file *file)
}
@@ -59669,7 +63461,7 @@ index 81f788b..9619f47 100644
wake_up(&fhp->wait_data);
}
-@@ -1103,7 +1105,7 @@ static int pvr2_v4l2_iosetup(struct pvr2_v4l2_fh *fh)
+@@ -1124,7 +1126,7 @@ static int pvr2_v4l2_iosetup(struct pvr2_v4l2_fh *fh)
hdw = fh->channel.mc_head->hdw;
sp = fh->pdi->stream->stream;
@@ -59701,7 +63493,7 @@ index 302e284..93781d6 100644
if (strncasecmp(val, "clock_", strlen("clock_")) == 0)
val += strlen("clock_");
diff --git a/drivers/media/v4l2-core/v4l2-common.c b/drivers/media/v4l2-core/v4l2-common.c
-index 5b80850..97b8443 100644
+index 57cfe26a..b7ec298 100644
--- a/drivers/media/v4l2-core/v4l2-common.c
+++ b/drivers/media/v4l2-core/v4l2-common.c
@@ -268,7 +268,7 @@ struct v4l2_subdev *v4l2_spi_new_subdev(struct v4l2_device *v4l2_dev,
@@ -59772,7 +63564,7 @@ index bacecbd..277d1f8 100644
}
diff --git a/drivers/media/v4l2-core/v4l2-device.c b/drivers/media/v4l2-core/v4l2-device.c
-index 06fa5f1..2231dda 100644
+index 62bbed7..8bb0ce5 100644
--- a/drivers/media/v4l2-core/v4l2-device.c
+++ b/drivers/media/v4l2-core/v4l2-device.c
@@ -74,9 +74,9 @@ int v4l2_device_put(struct v4l2_device *v4l2_dev)
@@ -59788,10 +63580,10 @@ index 06fa5f1..2231dda 100644
if (basename[len - 1] >= '0' && basename[len - 1] <= '9')
diff --git a/drivers/media/v4l2-core/v4l2-ioctl.c b/drivers/media/v4l2-core/v4l2-ioctl.c
-index 51a0fa1..5ae0546 100644
+index c52d94c..5edc58f 100644
--- a/drivers/media/v4l2-core/v4l2-ioctl.c
+++ b/drivers/media/v4l2-core/v4l2-ioctl.c
-@@ -2425,49 +2425,216 @@ static int v4l_enum_freq_bands(const struct v4l2_ioctl_ops *ops,
+@@ -2451,49 +2451,216 @@ static int v4l_enum_freq_bands(const struct v4l2_ioctl_ops *ops,
return -ENOTTY;
}
@@ -60028,7 +63820,7 @@ index 51a0fa1..5ae0546 100644
.debug = _debug, \
}
-@@ -2478,17 +2645,17 @@ static struct v4l2_ioctl_info v4l2_ioctls[] = {
+@@ -2504,17 +2671,17 @@ static struct v4l2_ioctl_info v4l2_ioctls[] = {
IOCTL_INFO_FNC(VIDIOC_S_FMT, v4l_s_fmt, v4l_print_format, INFO_FL_PRIO),
IOCTL_INFO_FNC(VIDIOC_REQBUFS, v4l_reqbufs, v4l_print_requestbuffers, INFO_FL_PRIO | INFO_FL_QUEUE),
IOCTL_INFO_FNC(VIDIOC_QUERYBUF, v4l_querybuf, v4l_print_buffer, INFO_FL_QUEUE | INFO_FL_CLEAR(v4l2_buffer, length)),
@@ -60050,7 +63842,7 @@ index 51a0fa1..5ae0546 100644
IOCTL_INFO_FNC(VIDIOC_S_STD, v4l_s_std, v4l_print_std, INFO_FL_PRIO),
IOCTL_INFO_FNC(VIDIOC_ENUMSTD, v4l_enumstd, v4l_print_standard, INFO_FL_CLEAR(v4l2_standard, index)),
IOCTL_INFO_FNC(VIDIOC_ENUMINPUT, v4l_enuminput, v4l_print_enuminput, INFO_FL_CLEAR(v4l2_input, index)),
-@@ -2496,19 +2663,19 @@ static struct v4l2_ioctl_info v4l2_ioctls[] = {
+@@ -2522,19 +2689,19 @@ static struct v4l2_ioctl_info v4l2_ioctls[] = {
IOCTL_INFO_FNC(VIDIOC_S_CTRL, v4l_s_ctrl, v4l_print_control, INFO_FL_PRIO | INFO_FL_CTRL),
IOCTL_INFO_FNC(VIDIOC_G_TUNER, v4l_g_tuner, v4l_print_tuner, INFO_FL_CLEAR(v4l2_tuner, index)),
IOCTL_INFO_FNC(VIDIOC_S_TUNER, v4l_s_tuner, v4l_print_tuner, INFO_FL_PRIO),
@@ -60078,7 +63870,7 @@ index 51a0fa1..5ae0546 100644
IOCTL_INFO_FNC(VIDIOC_G_MODULATOR, v4l_g_modulator, v4l_print_modulator, INFO_FL_CLEAR(v4l2_modulator, index)),
IOCTL_INFO_FNC(VIDIOC_S_MODULATOR, v4l_s_modulator, v4l_print_modulator, INFO_FL_PRIO),
IOCTL_INFO_FNC(VIDIOC_G_FREQUENCY, v4l_g_frequency, v4l_print_frequency, INFO_FL_CLEAR(v4l2_frequency, tuner)),
-@@ -2516,14 +2683,14 @@ static struct v4l2_ioctl_info v4l2_ioctls[] = {
+@@ -2542,14 +2709,14 @@ static struct v4l2_ioctl_info v4l2_ioctls[] = {
IOCTL_INFO_FNC(VIDIOC_CROPCAP, v4l_cropcap, v4l_print_cropcap, INFO_FL_CLEAR(v4l2_cropcap, type)),
IOCTL_INFO_FNC(VIDIOC_G_CROP, v4l_g_crop, v4l_print_crop, INFO_FL_CLEAR(v4l2_crop, type)),
IOCTL_INFO_FNC(VIDIOC_S_CROP, v4l_s_crop, v4l_print_crop, INFO_FL_PRIO),
@@ -60099,7 +63891,7 @@ index 51a0fa1..5ae0546 100644
IOCTL_INFO_FNC(VIDIOC_G_PRIORITY, v4l_g_priority, v4l_print_u32, 0),
IOCTL_INFO_FNC(VIDIOC_S_PRIORITY, v4l_s_priority, v4l_print_u32, INFO_FL_PRIO),
IOCTL_INFO_FNC(VIDIOC_G_SLICED_VBI_CAP, v4l_g_sliced_vbi_cap, v4l_print_sliced_vbi_cap, INFO_FL_CLEAR(v4l2_sliced_vbi_cap, type)),
-@@ -2531,26 +2698,26 @@ static struct v4l2_ioctl_info v4l2_ioctls[] = {
+@@ -2557,26 +2724,26 @@ static struct v4l2_ioctl_info v4l2_ioctls[] = {
IOCTL_INFO_FNC(VIDIOC_G_EXT_CTRLS, v4l_g_ext_ctrls, v4l_print_ext_controls, INFO_FL_CTRL),
IOCTL_INFO_FNC(VIDIOC_S_EXT_CTRLS, v4l_s_ext_ctrls, v4l_print_ext_controls, INFO_FL_PRIO | INFO_FL_CTRL),
IOCTL_INFO_FNC(VIDIOC_TRY_EXT_CTRLS, v4l_try_ext_ctrls, v4l_print_ext_controls, INFO_FL_CTRL),
@@ -60138,7 +63930,7 @@ index 51a0fa1..5ae0546 100644
IOCTL_INFO_FNC(VIDIOC_ENUM_FREQ_BANDS, v4l_enum_freq_bands, v4l_print_freq_band, 0),
IOCTL_INFO_FNC(VIDIOC_DBG_G_CHIP_INFO, v4l_dbg_g_chip_info, v4l_print_dbg_chip_info, INFO_FL_CLEAR(v4l2_dbg_chip_info, match)),
IOCTL_INFO_FNC(VIDIOC_QUERY_EXT_CTRL, v4l_query_ext_ctrl, v4l_print_query_ext_ctrl, INFO_FL_CTRL | INFO_FL_CLEAR(v4l2_query_ext_ctrl, id)),
-@@ -2619,7 +2786,7 @@ static long __video_do_ioctl(struct file *file,
+@@ -2645,7 +2812,7 @@ static long __video_do_ioctl(struct file *file,
struct video_device *vfd = video_devdata(file);
const struct v4l2_ioctl_ops *ops = vfd->ioctl_ops;
bool write_only = false;
@@ -60147,7 +63939,7 @@ index 51a0fa1..5ae0546 100644
const struct v4l2_ioctl_info *info;
void *fh = file->private_data;
struct v4l2_fh *vfh = NULL;
-@@ -2655,14 +2822,8 @@ static long __video_do_ioctl(struct file *file,
+@@ -2681,14 +2848,8 @@ static long __video_do_ioctl(struct file *file,
}
write_only = _IOC_DIR(cmd) == _IOC_WRITE;
@@ -60164,7 +63956,7 @@ index 51a0fa1..5ae0546 100644
} else if (!ops->vidioc_default) {
ret = -ENOTTY;
} else {
-@@ -2710,7 +2871,7 @@ static int check_array_args(unsigned int cmd, void *parg, size_t *array_size,
+@@ -2736,7 +2897,7 @@ static int check_array_args(unsigned int cmd, void *parg, size_t *array_size,
ret = -EINVAL;
break;
}
@@ -60173,7 +63965,7 @@ index 51a0fa1..5ae0546 100644
*kernel_ptr = (void **)&buf->m.planes;
*array_size = sizeof(struct v4l2_plane) * buf->length;
ret = 1;
-@@ -2727,7 +2888,7 @@ static int check_array_args(unsigned int cmd, void *parg, size_t *array_size,
+@@ -2753,7 +2914,7 @@ static int check_array_args(unsigned int cmd, void *parg, size_t *array_size,
ret = -EINVAL;
break;
}
@@ -60182,7 +63974,7 @@ index 51a0fa1..5ae0546 100644
*kernel_ptr = (void **)&edid->edid;
*array_size = edid->blocks * 128;
ret = 1;
-@@ -2745,7 +2906,7 @@ static int check_array_args(unsigned int cmd, void *parg, size_t *array_size,
+@@ -2771,7 +2932,7 @@ static int check_array_args(unsigned int cmd, void *parg, size_t *array_size,
ret = -EINVAL;
break;
}
@@ -60191,7 +63983,7 @@ index 51a0fa1..5ae0546 100644
*kernel_ptr = (void **)&ctrls->controls;
*array_size = sizeof(struct v4l2_ext_control)
* ctrls->count;
-@@ -2846,7 +3007,7 @@ video_usercopy(struct file *file, unsigned int cmd, unsigned long arg,
+@@ -2872,7 +3033,7 @@ video_usercopy(struct file *file, unsigned int cmd, unsigned long arg,
}
if (has_array_args) {
@@ -60201,7 +63993,7 @@ index 51a0fa1..5ae0546 100644
err = -EFAULT;
goto out_array_args;
diff --git a/drivers/memory/omap-gpmc.c b/drivers/memory/omap-gpmc.c
-index f00f3e7..9138f66 100644
+index 5457c36..478c999 100644
--- a/drivers/memory/omap-gpmc.c
+++ b/drivers/memory/omap-gpmc.c
@@ -233,7 +233,7 @@ struct omap3_gpmc_regs {
@@ -60259,7 +64051,7 @@ index f00f3e7..9138f66 100644
gpmc_irq_domain = irq_domain_add_linear(gpmc->dev->of_node,
gpmc->nirqs,
diff --git a/drivers/message/fusion/mptbase.c b/drivers/message/fusion/mptbase.c
-index 5537f8d..f990a1d 100644
+index 89c7ed1..f2ca71f 100644
--- a/drivers/message/fusion/mptbase.c
+++ b/drivers/message/fusion/mptbase.c
@@ -99,7 +99,7 @@ module_param(mpt_channel_mapping, int, 0);
@@ -60280,7 +64072,7 @@ index 5537f8d..f990a1d 100644
{
int ret = param_set_int(val, kp);
MPT_ADAPTER *ioc;
-@@ -6748,8 +6748,13 @@ static int mpt_iocinfo_proc_show(struct seq_file *m, void *v)
+@@ -6749,8 +6749,13 @@ static int mpt_iocinfo_proc_show(struct seq_file *m, void *v)
seq_printf(m, " MaxChainDepth = 0x%02x frames\n", ioc->facts.MaxChainDepth);
seq_printf(m, " MinBlockSize = 0x%02x bytes\n", 4*ioc->facts.BlockSize);
@@ -60294,7 +64086,7 @@ index 5537f8d..f990a1d 100644
/*
* Rounding UP to nearest 4-kB boundary here...
*/
-@@ -6762,7 +6767,11 @@ static int mpt_iocinfo_proc_show(struct seq_file *m, void *v)
+@@ -6763,7 +6768,11 @@ static int mpt_iocinfo_proc_show(struct seq_file *m, void *v)
ioc->facts.GlobalCredits);
seq_printf(m, " Frames @ 0x%p (Dma @ 0x%p)\n",
@@ -60310,7 +64102,7 @@ diff --git a/drivers/message/fusion/mptlan.c b/drivers/message/fusion/mptlan.c
index 6955c9e..03bc466 100644
--- a/drivers/message/fusion/mptlan.c
+++ b/drivers/message/fusion/mptlan.c
-@@ -680,7 +680,7 @@ out:
+@@ -680,7 +680,7 @@ mpt_lan_send_reply(struct net_device *dev, LANSendReply_t *pSendRep)
}
/*=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=*/
@@ -60372,7 +64164,7 @@ index 7ee1667..c36740d 100644
mptsas_get_port(struct mptsas_phyinfo *phy_info)
{
diff --git a/drivers/mfd/ab8500-debugfs.c b/drivers/mfd/ab8500-debugfs.c
-index 0aecd7b..41bf9bf 100644
+index acf6c00..481c929 100644
--- a/drivers/mfd/ab8500-debugfs.c
+++ b/drivers/mfd/ab8500-debugfs.c
@@ -100,7 +100,7 @@ static int irq_last;
@@ -60502,7 +64294,7 @@ index 1922cb8..e14fb42 100644
c2dev->dev = device_create(c2port_class, NULL, 0, c2dev,
"c2port%d", c2dev->id);
diff --git a/drivers/misc/kgdbts.c b/drivers/misc/kgdbts.c
-index 99635dd..255bd78 100644
+index 99635dd..9718bf1 100644
--- a/drivers/misc/kgdbts.c
+++ b/drivers/misc/kgdbts.c
@@ -834,7 +834,7 @@ static void run_plant_and_detach_test(int is_early)
@@ -60532,6 +64324,15 @@ index 99635dd..255bd78 100644
{
int len = strlen(kmessage);
+@@ -1173,7 +1173,7 @@ static void kgdbts_post_exp_handler(void)
+ module_put(THIS_MODULE);
+ }
+
+-static struct kgdb_io kgdbts_io_ops = {
++static struct kgdb_io kgdbts_io_ops __read_only = {
+ .name = "kgdbts",
+ .read_char = kgdbts_get_char,
+ .write_char = kgdbts_put_char,
diff --git a/drivers/misc/lis3lv02d/lis3lv02d.c b/drivers/misc/lis3lv02d/lis3lv02d.c
index fb8705f..dc2f679 100644
--- a/drivers/misc/lis3lv02d/lis3lv02d.c
@@ -61125,10 +64926,10 @@ index bf0d770..9b331b0d 100644
static struct attribute *uim_attrs[] = {
&ldisc_install.attr,
diff --git a/drivers/mmc/card/mmc_test.c b/drivers/mmc/card/mmc_test.c
-index c032eef..16a2a74 100644
+index df382be..a16bfb7 100644
--- a/drivers/mmc/card/mmc_test.c
+++ b/drivers/mmc/card/mmc_test.c
-@@ -2076,8 +2076,8 @@ static int mmc_test_rw_multiple_size(struct mmc_test_card *test,
+@@ -2103,8 +2103,8 @@ static int mmc_test_rw_multiple_size(struct mmc_test_card *test,
{
int ret = 0;
int i;
@@ -61181,10 +64982,10 @@ index 5f2f24a..e80f6f3 100644
device_init_wakeup(&pdev->dev, true);
diff --git a/drivers/mmc/host/sdhci-esdhc-imx.c b/drivers/mmc/host/sdhci-esdhc-imx.c
-index 99e0b33..107a2cc 100644
+index 7123ef9..758d077 100644
--- a/drivers/mmc/host/sdhci-esdhc-imx.c
+++ b/drivers/mmc/host/sdhci-esdhc-imx.c
-@@ -1231,9 +1231,12 @@ static int sdhci_esdhc_imx_probe(struct platform_device *pdev)
+@@ -1255,9 +1255,12 @@ static int sdhci_esdhc_imx_probe(struct platform_device *pdev)
writel(0x0, host->ioaddr + ESDHC_TUNE_CTRL_STATUS);
}
@@ -61219,15 +65020,17 @@ index 784c5a8..3567328 100644
/* It supports additional host capabilities if needed */
diff --git a/drivers/mmc/host/tmio_mmc_pio.c b/drivers/mmc/host/tmio_mmc_pio.c
-index 92467ef..cb90505 100644
+index 7005676..f431ee3 100644
--- a/drivers/mmc/host/tmio_mmc_pio.c
+++ b/drivers/mmc/host/tmio_mmc_pio.c
-@@ -1072,7 +1072,9 @@ int tmio_mmc_host_probe(struct tmio_mmc_host *_host,
+@@ -1069,8 +1069,10 @@ int tmio_mmc_host_probe(struct tmio_mmc_host *_host,
goto host_free;
}
+- tmio_mmc_ops.card_busy = _host->card_busy;
- tmio_mmc_ops.start_signal_voltage_switch = _host->start_signal_voltage_switch;
+ pax_open_kernel();
++ const_cast(tmio_mmc_ops.card_busy) = _host->card_busy;
+ const_cast(tmio_mmc_ops.start_signal_voltage_switch) = _host->start_signal_voltage_switch;
+ pax_close_kernel();
mmc->ops = &tmio_mmc_ops;
@@ -61387,23 +65190,23 @@ index 59444b3..b8fd6d5 100644
return brcmnand_probe(pdev, soc);
}
diff --git a/drivers/mtd/nand/brcmnand/brcmnand.h b/drivers/mtd/nand/brcmnand/brcmnand.h
-index ef5eabb..2b61d03 100644
+index 5c44cd4..4b4ba7d 100644
--- a/drivers/mtd/nand/brcmnand/brcmnand.h
+++ b/drivers/mtd/nand/brcmnand/brcmnand.h
-@@ -24,7 +24,7 @@ struct brcmnand_soc {
- bool (*ctlrdy_ack)(struct brcmnand_soc *soc);
+@@ -25,7 +25,7 @@ struct brcmnand_soc {
void (*ctlrdy_set_enabled)(struct brcmnand_soc *soc, bool en);
- void (*prepare_data_bus)(struct brcmnand_soc *soc, bool prepare);
+ void (*prepare_data_bus)(struct brcmnand_soc *soc, bool prepare,
+ bool is_param);
-};
+} __no_const;
- static inline void brcmnand_soc_data_bus_prepare(struct brcmnand_soc *soc)
- {
+ static inline void brcmnand_soc_data_bus_prepare(struct brcmnand_soc *soc,
+ bool is_param)
diff --git a/drivers/mtd/nand/brcmnand/iproc_nand.c b/drivers/mtd/nand/brcmnand/iproc_nand.c
-index 585596c..da877c2 100644
+index 4c6ae11..6a09e53 100644
--- a/drivers/mtd/nand/brcmnand/iproc_nand.c
+++ b/drivers/mtd/nand/brcmnand/iproc_nand.c
-@@ -120,9 +120,11 @@ static int iproc_nand_probe(struct platform_device *pdev)
+@@ -130,9 +130,11 @@ static int iproc_nand_probe(struct platform_device *pdev)
if (IS_ERR(priv->ext_base))
return PTR_ERR(priv->ext_base);
@@ -61464,10 +65267,10 @@ index 0476ae8..8d320ef 100644
#include "denali.h"
diff --git a/drivers/mtd/nand/gpmi-nand/gpmi-nand.c b/drivers/mtd/nand/gpmi-nand/gpmi-nand.c
-index 6e46156..923c436 100644
+index 6c062b8..828bdc0 100644
--- a/drivers/mtd/nand/gpmi-nand/gpmi-nand.c
+++ b/drivers/mtd/nand/gpmi-nand/gpmi-nand.c
-@@ -414,7 +414,7 @@ void prepare_data_dma(struct gpmi_nand_data *this, enum dma_data_direction dr)
+@@ -415,7 +415,7 @@ void prepare_data_dma(struct gpmi_nand_data *this, enum dma_data_direction dr)
/* first try to map the upper buffer directly */
if (virt_addr_valid(this->upper_buf) &&
@@ -61502,7 +65305,7 @@ index 3692dd5..b731a9b 100644
struct sm_sysfs_attribute *vendor_attribute;
char *vendor;
diff --git a/drivers/mtd/ubi/build.c b/drivers/mtd/ubi/build.c
-index 0680516..eb890f3 100644
+index 85d54f3..e1da78f 100644
--- a/drivers/mtd/ubi/build.c
+++ b/drivers/mtd/ubi/build.c
@@ -1389,7 +1389,7 @@ static int __init bytes_str_to_int(const char *str)
@@ -61518,7 +65321,7 @@ diff --git a/drivers/net/bonding/bond_netlink.c b/drivers/net/bonding/bond_netli
index b8df0f5..0d64b6e 100644
--- a/drivers/net/bonding/bond_netlink.c
+++ b/drivers/net/bonding/bond_netlink.c
-@@ -666,7 +666,7 @@ nla_put_failure:
+@@ -666,7 +666,7 @@ static int bond_fill_info(struct sk_buff *skb,
return -EMSGSIZE;
}
@@ -61540,7 +65343,7 @@ index ddabce7..6583c29 100644
{
struct cfhsi *cfhsi = NULL;
int start_xfer = 0;
-@@ -1441,7 +1441,7 @@ err:
+@@ -1441,7 +1441,7 @@ static int caif_hsi_newlink(struct net *src_net, struct net_device *dev,
return -ENODEV;
}
@@ -61553,7 +65356,7 @@ diff --git a/drivers/net/caif/caif_serial.c b/drivers/net/caif/caif_serial.c
index c2dea49..4bf83b5 100644
--- a/drivers/net/caif/caif_serial.c
+++ b/drivers/net/caif/caif_serial.c
-@@ -277,7 +277,7 @@ error:
+@@ -277,7 +277,7 @@ static int handle_tx(struct ser_device *ser)
return tty_wr;
}
@@ -61579,7 +65382,7 @@ diff --git a/drivers/net/caif/caif_virtio.c b/drivers/net/caif/caif_virtio.c
index b306210..c5345de 100644
--- a/drivers/net/caif/caif_virtio.c
+++ b/drivers/net/caif/caif_virtio.c
-@@ -519,7 +519,7 @@ err:
+@@ -519,7 +519,7 @@ static struct buf_info *cfv_alloc_and_copy_to_shm(struct cfv_info *cfv,
}
/* Put the CAIF packet on the virtio ring and kick the receiver */
@@ -61813,7 +65616,7 @@ index 2f79d29..ed5a64e 100644
void __iomem *shmem = ei_status.mem + (start_page << 8);
shmem -= ei_status.tx_start_page << 8;
diff --git a/drivers/net/ethernet/adi/bfin_mac.c b/drivers/net/ethernet/adi/bfin_mac.c
-index 38eaea1..49e5aaa 100644
+index 00f9ee3..dfc62ea 100644
--- a/drivers/net/ethernet/adi/bfin_mac.c
+++ b/drivers/net/ethernet/adi/bfin_mac.c
@@ -1097,7 +1097,7 @@ static void tx_reclaim_skb_timeout(unsigned long lp)
@@ -61839,10 +65642,10 @@ index 6ffdff6..8b96f60 100644
struct emac_board_info *db = netdev_priv(dev);
unsigned long channel;
diff --git a/drivers/net/ethernet/altera/altera_tse_main.c b/drivers/net/ethernet/altera/altera_tse_main.c
-index bda31f3..55cfc6e 100644
+index a0eee72..9af876b 100644
--- a/drivers/net/ethernet/altera/altera_tse_main.c
+++ b/drivers/net/ethernet/altera/altera_tse_main.c
-@@ -551,7 +551,7 @@ static irqreturn_t altera_isr(int irq, void *dev_id)
+@@ -543,7 +543,7 @@ static irqreturn_t altera_isr(int irq, void *dev_id)
* physically contiguous fragment starting at
* skb->data, for length of skb_headlen(skb).
*/
@@ -61851,7 +65654,7 @@ index bda31f3..55cfc6e 100644
{
struct altera_tse_private *priv = netdev_priv(dev);
unsigned int txsize = priv->tx_ring_size;
-@@ -1243,7 +1243,7 @@ static int tse_shutdown(struct net_device *dev)
+@@ -1233,7 +1233,7 @@ static int tse_shutdown(struct net_device *dev)
return 0;
}
@@ -61860,7 +65663,7 @@ index bda31f3..55cfc6e 100644
.ndo_open = tse_open,
.ndo_stop = tse_shutdown,
.ndo_start_xmit = tse_start_xmit,
-@@ -1480,11 +1480,13 @@ static int altera_tse_probe(struct platform_device *pdev)
+@@ -1470,11 +1470,13 @@ static int altera_tse_probe(struct platform_device *pdev)
ndev->netdev_ops = &altera_tse_netdev_ops;
altera_tse_set_ethtool_ops(ndev);
@@ -61875,7 +65678,7 @@ index bda31f3..55cfc6e 100644
/* Scatter/gather IO is not supported,
* so it is turned off
diff --git a/drivers/net/ethernet/amd/7990.c b/drivers/net/ethernet/amd/7990.c
-index dcf2a1f..ec0c782 100644
+index dc57f27..4f8eae5 100644
--- a/drivers/net/ethernet/amd/7990.c
+++ b/drivers/net/ethernet/amd/7990.c
@@ -535,7 +535,7 @@ void lance_tx_timeout(struct net_device *dev)
@@ -61901,7 +65704,7 @@ index e9e0be3..1b8e3af 100644
void lance_tx_timeout(struct net_device *dev);
#ifdef CONFIG_NET_POLL_CONTROLLER
diff --git a/drivers/net/ethernet/amd/amd8111e.c b/drivers/net/ethernet/amd/amd8111e.c
-index 9496005..1fb7ac2 100644
+index f92cc971..e357b9b 100644
--- a/drivers/net/ethernet/amd/amd8111e.c
+++ b/drivers/net/ethernet/amd/amd8111e.c
@@ -1690,8 +1690,9 @@ static int amd8111e_resume(struct pci_dev *pci_dev)
@@ -62092,7 +65895,7 @@ index b3bc87f..5bdfdd3 100644
struct xgbe_channel *channel;
struct xgbe_ring *ring;
struct xgbe_ring_desc *rdesc;
-@@ -628,17 +628,12 @@ err_out:
+@@ -628,17 +628,12 @@ static int xgbe_map_tx_skb(struct xgbe_channel *channel, struct sk_buff *skb)
return 0;
}
@@ -62318,7 +66121,7 @@ index 1babcc1..aa7f8f4e 100644
+ .set_rss_lookup_table = xgbe_set_rss_lookup_table,
+};
diff --git a/drivers/net/ethernet/amd/xgbe/xgbe-drv.c b/drivers/net/ethernet/amd/xgbe/xgbe-drv.c
-index a9b2709..8cf92f1 100644
+index 7f9216d..26872f6 100644
--- a/drivers/net/ethernet/amd/xgbe/xgbe-drv.c
+++ b/drivers/net/ethernet/amd/xgbe/xgbe-drv.c
@@ -245,7 +245,7 @@ static int xgbe_maybe_stop_tx_queue(struct xgbe_channel *channel,
@@ -62438,7 +66241,7 @@ index a9b2709..8cf92f1 100644
struct net_device *netdev = pdata->netdev;
int ret;
-@@ -914,8 +914,8 @@ err_phy:
+@@ -914,8 +914,8 @@ static int xgbe_start(struct xgbe_prv_data *pdata)
static void xgbe_stop(struct xgbe_prv_data *pdata)
{
@@ -62467,7 +66270,7 @@ index a9b2709..8cf92f1 100644
int ret;
DBGPR("-->xgbe_open\n");
-@@ -1364,7 +1364,7 @@ err_sysclk:
+@@ -1364,7 +1364,7 @@ static int xgbe_open(struct net_device *netdev)
static int xgbe_close(struct net_device *netdev)
{
struct xgbe_prv_data *pdata = netdev_priv(netdev);
@@ -62491,7 +66294,7 @@ index a9b2709..8cf92f1 100644
struct xgbe_channel *channel;
struct xgbe_ring *ring;
struct xgbe_packet_data *packet;
-@@ -1461,7 +1461,7 @@ tx_netdev_return:
+@@ -1461,7 +1461,7 @@ static int xgbe_xmit(struct sk_buff *skb, struct net_device *netdev)
static void xgbe_set_rx_mode(struct net_device *netdev)
{
struct xgbe_prv_data *pdata = netdev_priv(netdev);
@@ -62554,7 +66357,7 @@ index a9b2709..8cf92f1 100644
netdev_features_t rxhash, rxcsum, rxvlan, rxvlan_filter;
int ret = 0;
-@@ -1716,8 +1716,8 @@ struct net_device_ops *xgbe_get_netdev_ops(void)
+@@ -1716,8 +1716,8 @@ const struct net_device_ops *xgbe_get_netdev_ops(void)
static void xgbe_rx_refresh(struct xgbe_channel *channel)
{
struct xgbe_prv_data *pdata = channel->pdata;
@@ -62586,7 +66389,7 @@ index a9b2709..8cf92f1 100644
struct xgbe_ring_data *rdata;
struct xgbe_packet_data *packet;
diff --git a/drivers/net/ethernet/amd/xgbe/xgbe-ethtool.c b/drivers/net/ethernet/amd/xgbe/xgbe-ethtool.c
-index 11d9f0c..78767ab 100644
+index 4007b42..5786161 100644
--- a/drivers/net/ethernet/amd/xgbe/xgbe-ethtool.c
+++ b/drivers/net/ethernet/amd/xgbe/xgbe-ethtool.c
@@ -206,7 +206,7 @@ static void xgbe_get_ethtool_stats(struct net_device *netdev,
@@ -62635,7 +66438,7 @@ index 11d9f0c..78767ab 100644
if (hfunc != ETH_RSS_HASH_NO_CHANGE && hfunc != ETH_RSS_HASH_TOP) {
diff --git a/drivers/net/ethernet/amd/xgbe/xgbe-main.c b/drivers/net/ethernet/amd/xgbe/xgbe-main.c
-index 3eee320..4188681 100644
+index 4f76351..96d3fb1 100644
--- a/drivers/net/ethernet/amd/xgbe/xgbe-main.c
+++ b/drivers/net/ethernet/amd/xgbe/xgbe-main.c
@@ -202,13 +202,6 @@ static void xgbe_default_config(struct xgbe_prv_data *pdata)
@@ -62769,7 +66572,7 @@ index b03e4f5..78e4cc4 100644
spin_unlock_irqrestore(&pdata->tstamp_lock, flags);
diff --git a/drivers/net/ethernet/amd/xgbe/xgbe.h b/drivers/net/ethernet/amd/xgbe/xgbe.h
-index 98d9d63..0433122 100644
+index 5dd17dc..962ff6a 100644
--- a/drivers/net/ethernet/amd/xgbe/xgbe.h
+++ b/drivers/net/ethernet/amd/xgbe/xgbe.h
@@ -786,9 +786,9 @@ struct xgbe_prv_data {
@@ -62797,10 +66600,10 @@ index 98d9d63..0433122 100644
void xgbe_init_function_ptrs_dev(struct xgbe_hw_if *);
diff --git a/drivers/net/ethernet/apm/xgene/xgene_enet_main.c b/drivers/net/ethernet/apm/xgene/xgene_enet_main.c
-index d1d6b5e..19d6062 100644
+index 8158d46..f22bcfc 100644
--- a/drivers/net/ethernet/apm/xgene/xgene_enet_main.c
+++ b/drivers/net/ethernet/apm/xgene/xgene_enet_main.c
-@@ -111,7 +111,7 @@ static void xgene_enet_delete_bufpool(struct xgene_enet_desc_ring *buf_pool)
+@@ -122,7 +122,7 @@ static void xgene_enet_delete_bufpool(struct xgene_enet_desc_ring *buf_pool)
}
}
@@ -62809,7 +66612,7 @@ index d1d6b5e..19d6062 100644
{
struct xgene_enet_desc_ring *rx_ring = data;
-@@ -577,7 +577,7 @@ static int xgene_enet_process_ring(struct xgene_enet_desc_ring *ring,
+@@ -642,7 +642,7 @@ static int xgene_enet_process_ring(struct xgene_enet_desc_ring *ring,
return processed;
}
@@ -62819,10 +66622,10 @@ index d1d6b5e..19d6062 100644
struct xgene_enet_desc_ring *ring;
int processed;
diff --git a/drivers/net/ethernet/arc/emac_main.c b/drivers/net/ethernet/arc/emac_main.c
-index b0da969..1688f6b 100644
+index be865b4..75a6312 100644
--- a/drivers/net/ethernet/arc/emac_main.c
+++ b/drivers/net/ethernet/arc/emac_main.c
-@@ -608,7 +608,7 @@ static struct net_device_stats *arc_emac_stats(struct net_device *ndev)
+@@ -611,7 +611,7 @@ static struct net_device_stats *arc_emac_stats(struct net_device *ndev)
*
* This function is invoked from upper layers to initiate transmission.
*/
@@ -62832,10 +66635,10 @@ index b0da969..1688f6b 100644
struct arc_emac_priv *priv = netdev_priv(ndev);
unsigned int len, *txbd_curr = &priv->txbd_curr;
diff --git a/drivers/net/ethernet/atheros/alx/main.c b/drivers/net/ethernet/atheros/alx/main.c
-index 4eb17da..5262e50 100644
+index c0f84b7..85e1433 100644
--- a/drivers/net/ethernet/atheros/alx/main.c
+++ b/drivers/net/ethernet/atheros/alx/main.c
-@@ -1462,7 +1462,7 @@ static SIMPLE_DEV_PM_OPS(alx_pm_ops, alx_suspend, alx_resume);
+@@ -1710,7 +1710,7 @@ static SIMPLE_DEV_PM_OPS(alx_pm_ops, alx_suspend, alx_resume);
static pci_ers_result_t alx_pci_error_detected(struct pci_dev *pdev,
@@ -62871,7 +66674,7 @@ index 974713b..5e0112b 100644
struct net_device *netdev = pci_get_drvdata(pdev);
struct atl1e_adapter *adapter = netdev_priv(netdev);
diff --git a/drivers/net/ethernet/aurora/nb8800.c b/drivers/net/ethernet/aurora/nb8800.c
-index b047fd6..d115fcb 100644
+index e078d8d..f588e89 100644
--- a/drivers/net/ethernet/aurora/nb8800.c
+++ b/drivers/net/ethernet/aurora/nb8800.c
@@ -396,7 +396,7 @@ static void nb8800_tx_dma_start_irq(struct net_device *dev)
@@ -62884,7 +66687,7 @@ index b047fd6..d115fcb 100644
struct nb8800_priv *priv = netdev_priv(dev);
struct nb8800_tx_desc *txd;
diff --git a/drivers/net/ethernet/broadcom/bcm63xx_enet.c b/drivers/net/ethernet/broadcom/bcm63xx_enet.c
-index 6c8bc5f..58c4f8c 100644
+index 5370909..8e9962e 100644
--- a/drivers/net/ethernet/broadcom/bcm63xx_enet.c
+++ b/drivers/net/ethernet/broadcom/bcm63xx_enet.c
@@ -571,7 +571,7 @@ static irqreturn_t bcm_enet_isr_dma(int irq, void *dev_id)
@@ -62897,10 +66700,10 @@ index 6c8bc5f..58c4f8c 100644
struct bcm_enet_priv *priv;
struct bcm_enet_desc *desc;
diff --git a/drivers/net/ethernet/broadcom/bnx2.c b/drivers/net/ethernet/broadcom/bnx2.c
-index 2c850a9..485b70c 100644
+index 1f7034d..a5f3bb7 100644
--- a/drivers/net/ethernet/broadcom/bnx2.c
+++ b/drivers/net/ethernet/broadcom/bnx2.c
-@@ -8727,7 +8727,7 @@ static SIMPLE_DEV_PM_OPS(bnx2_pm_ops, bnx2_suspend, bnx2_resume);
+@@ -8732,7 +8732,7 @@ static SIMPLE_DEV_PM_OPS(bnx2_pm_ops, bnx2_suspend, bnx2_resume);
* this device has been detected.
*/
static pci_ers_result_t bnx2_io_error_detected(struct pci_dev *pdev,
@@ -62910,10 +66713,10 @@ index 2c850a9..485b70c 100644
struct net_device *dev = pci_get_drvdata(pdev);
struct bnx2 *bp = netdev_priv(dev);
diff --git a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.h b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.h
-index 0e68fad..3546d87 100644
+index 243cb97..d213a5f 100644
--- a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.h
+++ b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.h
-@@ -1124,7 +1124,7 @@ static inline u8 bnx2x_get_path_func_num(struct bnx2x *bp)
+@@ -1125,7 +1125,7 @@ static inline u8 bnx2x_get_path_func_num(struct bnx2x *bp)
static inline void bnx2x_init_bp_objs(struct bnx2x *bp)
{
/* RX_MODE controlling object */
@@ -63465,10 +67268,10 @@ index b7d2511..a625bae 100644
typedef void (*set_link_led_t)(struct bnx2x_phy *phy,
struct link_params *params, u8 mode);
diff --git a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_main.c b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_main.c
-index fa3386b..ea5074c 100644
+index 4febe60..629a7d7 100644
--- a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_main.c
+++ b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_main.c
-@@ -14159,7 +14159,7 @@ static int bnx2x_eeh_nic_unload(struct bnx2x *bp)
+@@ -14227,7 +14227,7 @@ static int bnx2x_eeh_nic_unload(struct bnx2x *bp)
* this device has been detected.
*/
static pci_ers_result_t bnx2x_io_error_detected(struct pci_dev *pdev,
@@ -63478,7 +67281,7 @@ index fa3386b..ea5074c 100644
struct net_device *dev = pci_get_drvdata(pdev);
struct bnx2x *bp = netdev_priv(dev);
diff --git a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_sp.c b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_sp.c
-index ff702a7..cb3ae16 100644
+index cea6bdc..c9fbf14 100644
--- a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_sp.c
+++ b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_sp.c
@@ -2576,15 +2576,14 @@ int bnx2x_config_rx_mode(struct bnx2x *bp,
@@ -63503,10 +67306,10 @@ index ff702a7..cb3ae16 100644
}
diff --git a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_sp.h b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_sp.h
-index 4048fc5..333809f 100644
+index 0bf2fd4..e28af43 100644
--- a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_sp.h
+++ b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_sp.h
-@@ -1436,8 +1436,7 @@ int bnx2x_vlan_mac_move(struct bnx2x *bp,
+@@ -1446,8 +1446,7 @@ int bnx2x_vlan_mac_move(struct bnx2x *bp,
/********************* RX MODE ****************/
@@ -63517,10 +67320,10 @@ index 4048fc5..333809f 100644
/**
* bnx2x_config_rx_mode - Send and RX_MODE ramrod according to the provided parameters.
diff --git a/drivers/net/ethernet/broadcom/bnxt/bnxt.c b/drivers/net/ethernet/broadcom/bnxt/bnxt.c
-index 228c964..7bbb29da 100644
+index f08a20b..6f9f924 100644
--- a/drivers/net/ethernet/broadcom/bnxt/bnxt.c
+++ b/drivers/net/ethernet/broadcom/bnxt/bnxt.c
-@@ -6915,7 +6915,7 @@ init_err_free:
+@@ -6970,7 +6970,7 @@ static int bnxt_init_one(struct pci_dev *pdev, const struct pci_device_id *ent)
* this device has been detected.
*/
static pci_ers_result_t bnxt_io_error_detected(struct pci_dev *pdev,
@@ -63530,10 +67333,10 @@ index 228c964..7bbb29da 100644
struct net_device *netdev = pci_get_drvdata(pdev);
struct bnxt *bp = netdev_priv(netdev);
diff --git a/drivers/net/ethernet/broadcom/tg3.c b/drivers/net/ethernet/broadcom/tg3.c
-index ea967df..bf073dc 100644
+index a927a73..2237481 100644
--- a/drivers/net/ethernet/broadcom/tg3.c
+++ b/drivers/net/ethernet/broadcom/tg3.c
-@@ -18112,7 +18112,7 @@ static void tg3_shutdown(struct pci_dev *pdev)
+@@ -18124,7 +18124,7 @@ static void tg3_shutdown(struct pci_dev *pdev)
* this device has been detected.
*/
static pci_ers_result_t tg3_io_error_detected(struct pci_dev *pdev,
@@ -63879,10 +67682,10 @@ index c438d03..4653f43 100644
enum bna_rx_type type;
diff --git a/drivers/net/ethernet/brocade/bna/bnad.c b/drivers/net/ethernet/brocade/bna/bnad.c
-index 771cc26..c681a90 100644
+index f42f672..daed6bd 100644
--- a/drivers/net/ethernet/brocade/bna/bnad.c
+++ b/drivers/net/ethernet/brocade/bna/bnad.c
-@@ -1118,8 +1118,9 @@ bnad_cb_tx_resume(struct bnad *bnad, struct bna_tx *tx)
+@@ -1100,8 +1100,9 @@ bnad_cb_tx_resume(struct bnad *bnad, struct bna_tx *tx)
* Free all TxQs buffers and then notify TX_E_CLEANUP_DONE to Tx fsm.
*/
static void
@@ -63893,7 +67696,7 @@ index 771cc26..c681a90 100644
struct bnad_tx_info *tx_info =
container_of(work, struct bnad_tx_info, tx_cleanup_work);
struct bnad *bnad = NULL;
-@@ -1197,7 +1198,7 @@ bnad_cb_rx_stall(struct bnad *bnad, struct bna_rx *rx)
+@@ -1179,7 +1180,7 @@ bnad_cb_rx_stall(struct bnad *bnad, struct bna_rx *rx)
* Free all RxQs buffers and then notify RX_E_CLEANUP_DONE to Rx fsm.
*/
static void
@@ -63902,7 +67705,7 @@ index 771cc26..c681a90 100644
{
struct bnad_rx_info *rx_info =
container_of(work, struct bnad_rx_info, rx_cleanup_work);
-@@ -2021,8 +2022,7 @@ bnad_setup_tx(struct bnad *bnad, u32 tx_id)
+@@ -2003,8 +2004,7 @@ bnad_setup_tx(struct bnad *bnad, u32 tx_id)
}
tx_info->tx = tx;
@@ -63912,7 +67715,7 @@ index 771cc26..c681a90 100644
/* Register ISR for the Tx object */
if (intr_info->intr_type == BNA_INTR_T_MSIX) {
-@@ -2278,8 +2278,7 @@ bnad_setup_rx(struct bnad *bnad, u32 rx_id)
+@@ -2260,8 +2260,7 @@ bnad_setup_rx(struct bnad *bnad, u32 rx_id)
rx_info->rx = rx;
spin_unlock_irqrestore(&bnad->bna_lock, flags);
@@ -63923,10 +67726,10 @@ index 771cc26..c681a90 100644
/*
* Init NAPI, so that state is set to NAPI_STATE_SCHED,
diff --git a/drivers/net/ethernet/cadence/macb.c b/drivers/net/ethernet/cadence/macb.c
-index ef0dbcf..8d94c43 100644
+index ec09fce..b6ab1fd 100644
--- a/drivers/net/ethernet/cadence/macb.c
+++ b/drivers/net/ethernet/cadence/macb.c
-@@ -1342,7 +1342,7 @@ static inline int macb_clear_csum(struct sk_buff *skb)
+@@ -1359,7 +1359,7 @@ static inline int macb_clear_csum(struct sk_buff *skb)
return 0;
}
@@ -63935,7 +67738,7 @@ index ef0dbcf..8d94c43 100644
{
u16 queue_index = skb_get_queue_mapping(skb);
struct macb *bp = netdev_priv(dev);
-@@ -2611,7 +2611,7 @@ static int at91ether_close(struct net_device *dev)
+@@ -2661,7 +2661,7 @@ static int at91ether_close(struct net_device *dev)
}
/* Transmit packet */
@@ -63945,10 +67748,10 @@ index ef0dbcf..8d94c43 100644
struct macb *lp = netdev_priv(dev);
diff --git a/drivers/net/ethernet/cavium/liquidio/lio_main.c b/drivers/net/ethernet/cavium/liquidio/lio_main.c
-index 20d6942..30f86d5 100644
+index afc6f9dc..da49fa1 100644
--- a/drivers/net/ethernet/cavium/liquidio/lio_main.c
+++ b/drivers/net/ethernet/cavium/liquidio/lio_main.c
-@@ -468,7 +468,7 @@ static void stop_pci_io(struct octeon_device *oct)
+@@ -396,7 +396,7 @@ static void stop_pci_io(struct octeon_device *oct)
* this device has been detected.
*/
static pci_ers_result_t liquidio_pcie_error_detected(struct pci_dev *pdev,
@@ -63957,7 +67760,7 @@ index 20d6942..30f86d5 100644
{
struct octeon_device *oct = pci_get_drvdata(pdev);
-@@ -2869,7 +2869,7 @@ static inline int send_nic_timestamp_pkt(struct octeon_device *oct,
+@@ -3081,7 +3081,7 @@ static inline int send_nic_timestamp_pkt(struct octeon_device *oct,
* @returns whether the packet was transmitted to the device okay or not
* (NETDEV_TX_OK or NETDEV_TX_BUSY)
*/
@@ -63966,7 +67769,7 @@ index 20d6942..30f86d5 100644
{
struct lio *lio;
struct octnet_buf_free_info *finfo;
-@@ -3371,7 +3371,7 @@ static void liquidio_del_vxlan_port(struct net_device *netdev,
+@@ -3567,7 +3567,7 @@ static void liquidio_del_vxlan_port(struct net_device *netdev,
OCTNET_CMD_VXLAN_PORT_DEL);
}
@@ -63975,7 +67778,7 @@ index 20d6942..30f86d5 100644
.ndo_open = liquidio_open,
.ndo_stop = liquidio_stop,
.ndo_start_xmit = liquidio_xmit,
-@@ -3599,8 +3599,11 @@ static int setup_nic_devices(struct octeon_device *octeon_dev)
+@@ -3816,8 +3816,11 @@ static int setup_nic_devices(struct octeon_device *octeon_dev)
SET_NETDEV_DEV(netdev, &octeon_dev->pci_dev->dev);
@@ -64015,10 +67818,10 @@ index 8cffcdf..aadf043 100644
#define L2T_SKB_CB(skb) ((struct l2t_skb_cb *)(skb)->cb)
diff --git a/drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c b/drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c
-index 3ceafb55..c62b970 100644
+index 19dc9e2..e348455 100644
--- a/drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c
+++ b/drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c
-@@ -4194,7 +4194,7 @@ bye:
+@@ -3861,7 +3861,7 @@ static int adap_init0(struct adapter *adap)
/* EEH callbacks */
static pci_ers_result_t eeh_err_detected(struct pci_dev *pdev,
@@ -64041,7 +67844,7 @@ index 109bc63..646ff4d 100644
const struct pkt_gl *);
diff --git a/drivers/net/ethernet/chelsio/cxgb4vf/sge.c b/drivers/net/ethernet/chelsio/cxgb4vf/sge.c
-index c8fd4f8..af708fc 100644
+index f3ed9ce..9b80a26 100644
--- a/drivers/net/ethernet/chelsio/cxgb4vf/sge.c
+++ b/drivers/net/ethernet/chelsio/cxgb4vf/sge.c
@@ -1159,7 +1159,7 @@ static inline void txq_advance(struct sge_txq *tq, unsigned int n)
@@ -64067,7 +67870,7 @@ index f45385f..24f6c11e 100644
{
unsigned long flags;
diff --git a/drivers/net/ethernet/dec/tulip/de4x5.c b/drivers/net/ethernet/dec/tulip/de4x5.c
-index f0e9e2e..442241e 100644
+index 6620fc8..24405bc 100644
--- a/drivers/net/ethernet/dec/tulip/de4x5.c
+++ b/drivers/net/ethernet/dec/tulip/de4x5.c
@@ -912,7 +912,7 @@ static int de4x5_init(struct net_device *dev);
@@ -64127,10 +67930,10 @@ index f0e9e2e..442241e 100644
break;
}
diff --git a/drivers/net/ethernet/emulex/benet/be_main.c b/drivers/net/ethernet/emulex/benet/be_main.c
-index 874c753..e161da1 100644
+index 93aa293..5bc45ae 100644
--- a/drivers/net/ethernet/emulex/benet/be_main.c
+++ b/drivers/net/ethernet/emulex/benet/be_main.c
-@@ -556,7 +556,7 @@ static void accumulate_16bit_val(u32 *acc, u16 val)
+@@ -597,7 +597,7 @@ static void accumulate_16bit_val(u32 *acc, u16 val)
if (wrapped)
newacc += 65536;
@@ -64139,7 +67942,7 @@ index 874c753..e161da1 100644
}
static void populate_erx_stats(struct be_adapter *adapter,
-@@ -5544,7 +5544,7 @@ static void be_shutdown(struct pci_dev *pdev)
+@@ -6017,7 +6017,7 @@ static void be_shutdown(struct pci_dev *pdev)
}
static pci_ers_result_t be_eeh_err_detected(struct pci_dev *pdev,
@@ -64149,7 +67952,7 @@ index 874c753..e161da1 100644
struct be_adapter *adapter = pci_get_drvdata(pdev);
diff --git a/drivers/net/ethernet/faraday/ftgmac100.c b/drivers/net/ethernet/faraday/ftgmac100.c
-index 36361f8..b3b5f9f 100644
+index 2625872..9f3ad72 100644
--- a/drivers/net/ethernet/faraday/ftgmac100.c
+++ b/drivers/net/ethernet/faraday/ftgmac100.c
@@ -26,6 +26,7 @@
@@ -64160,7 +67963,7 @@ index 36361f8..b3b5f9f 100644
#include <linux/module.h>
#include <linux/netdevice.h>
#include <linux/phy.h>
-@@ -1174,7 +1175,7 @@ static int ftgmac100_stop(struct net_device *netdev)
+@@ -1200,7 +1201,7 @@ static int ftgmac100_stop(struct net_device *netdev)
return 0;
}
@@ -64205,10 +68008,10 @@ index 446ae9d..79d1d75 100644
struct mpc52xx_fec_priv *priv = netdev_priv(dev);
struct bcom_fec_bd *bd;
diff --git a/drivers/net/ethernet/freescale/fs_enet/fs_enet-main.c b/drivers/net/ethernet/freescale/fs_enet/fs_enet-main.c
-index 61fd486..06047eb 100644
+index 4b86260..2a5ecb3 100644
--- a/drivers/net/ethernet/freescale/fs_enet/fs_enet-main.c
+++ b/drivers/net/ethernet/freescale/fs_enet/fs_enet-main.c
-@@ -509,7 +509,7 @@ static struct sk_buff *tx_skb_align_workaround(struct net_device *dev,
+@@ -481,7 +481,7 @@ static struct sk_buff *tx_skb_align_workaround(struct net_device *dev,
}
#endif
@@ -64218,7 +68021,7 @@ index 61fd486..06047eb 100644
struct fs_enet_private *fep = netdev_priv(dev);
cbd_t __iomem *bdp;
diff --git a/drivers/net/ethernet/freescale/gianfar.c b/drivers/net/ethernet/freescale/gianfar.c
-index 4b4f5bc..23b3b00 100644
+index 9061c2f..d7df4ea 100644
--- a/drivers/net/ethernet/freescale/gianfar.c
+++ b/drivers/net/ethernet/freescale/gianfar.c
@@ -112,7 +112,7 @@
@@ -64230,7 +68033,7 @@ index 4b4f5bc..23b3b00 100644
static void gfar_reset_task(struct work_struct *work);
static void gfar_timeout(struct net_device *dev);
static int gfar_close(struct net_device *dev);
-@@ -2316,7 +2316,7 @@ static inline bool gfar_csum_errata_76(struct gfar_private *priv,
+@@ -2324,7 +2324,7 @@ static inline bool gfar_csum_errata_76(struct gfar_private *priv,
/* This is called by the kernel when a frame is ready for transmission.
* It is pointed to by the dev->hard_start_xmit function pointer
*/
@@ -64240,7 +68043,7 @@ index 4b4f5bc..23b3b00 100644
struct gfar_private *priv = netdev_priv(dev);
struct gfar_priv_tx_q *tx_queue = NULL;
diff --git a/drivers/net/ethernet/freescale/ucc_geth.c b/drivers/net/ethernet/freescale/ucc_geth.c
-index 5bf1ade..4e74666 100644
+index f76d332..8b96df8 100644
--- a/drivers/net/ethernet/freescale/ucc_geth.c
+++ b/drivers/net/ethernet/freescale/ucc_geth.c
@@ -3085,7 +3085,7 @@ static int ucc_geth_startup(struct ucc_geth_private *ugeth)
@@ -64253,7 +68056,7 @@ index 5bf1ade..4e74666 100644
struct ucc_geth_private *ugeth = netdev_priv(dev);
#ifdef CONFIG_UGETH_TX_ON_DEMAND
diff --git a/drivers/net/ethernet/hisilicon/hip04_eth.c b/drivers/net/ethernet/hisilicon/hip04_eth.c
-index 0c4afe9..d888314 100644
+index 3977889..e496763 100644
--- a/drivers/net/ethernet/hisilicon/hip04_eth.c
+++ b/drivers/net/ethernet/hisilicon/hip04_eth.c
@@ -422,7 +422,7 @@ static void hip04_start_tx_timer(struct hip04_priv *priv)
@@ -64266,7 +68069,7 @@ index 0c4afe9..d888314 100644
struct hip04_priv *priv = netdev_priv(ndev);
struct net_device_stats *stats = &ndev->stats;
diff --git a/drivers/net/ethernet/hisilicon/hix5hd2_gmac.c b/drivers/net/ethernet/hisilicon/hix5hd2_gmac.c
-index 275618b..abd1703 100644
+index e69a6be..231423a 100644
--- a/drivers/net/ethernet/hisilicon/hix5hd2_gmac.c
+++ b/drivers/net/ethernet/hisilicon/hix5hd2_gmac.c
@@ -600,7 +600,7 @@ static irqreturn_t hix5hd2_interrupt(int irq, void *dev_id)
@@ -64279,10 +68082,10 @@ index 275618b..abd1703 100644
struct hix5hd2_priv *priv = netdev_priv(dev);
struct hix5hd2_desc *desc;
diff --git a/drivers/net/ethernet/hisilicon/hns/hns_ae_adapt.c b/drivers/net/ethernet/hisilicon/hns/hns_ae_adapt.c
-index e28d960..6168a00 100644
+index 2d0cb60..9dd45c9 100644
--- a/drivers/net/ethernet/hisilicon/hns/hns_ae_adapt.c
+++ b/drivers/net/ethernet/hisilicon/hns/hns_ae_adapt.c
-@@ -844,16 +844,18 @@ int hns_dsaf_ae_init(struct dsaf_device *dsaf_dev)
+@@ -845,16 +845,18 @@ int hns_dsaf_ae_init(struct dsaf_device *dsaf_dev)
struct hnae_ae_dev *ae_dev = &dsaf_dev->ae_dev;
static atomic_t id = ATOMIC_INIT(-1);
@@ -64304,10 +68107,10 @@ index e28d960..6168a00 100644
snprintf(ae_dev->name, AE_NAME_SIZE, "%s%d", DSAF_DEVICE_NAME,
(int)atomic_inc_return(&id));
diff --git a/drivers/net/ethernet/hisilicon/hns/hns_dsaf_main.h b/drivers/net/ethernet/hisilicon/hns/hns_dsaf_main.h
-index 1daf018..2548233 100644
+index c494fc5..ad40d2f 100644
--- a/drivers/net/ethernet/hisilicon/hns/hns_dsaf_main.h
+++ b/drivers/net/ethernet/hisilicon/hns/hns_dsaf_main.h
-@@ -318,7 +318,7 @@ struct dsaf_device {
+@@ -347,7 +347,7 @@ struct dsaf_device {
struct ppe_common_cb *ppe_common[DSAF_COMM_DEV_NUM];
struct rcb_common_cb *rcb_common[DSAF_COMM_DEV_NUM];
struct hns_mac_cb *mac_cb[DSAF_MAX_PORT_NUM];
@@ -64317,12 +68120,15 @@ index 1daf018..2548233 100644
struct dsaf_hw_stats hw_stats[DSAF_NODE_NUM];
struct dsaf_int_stat int_stat;
diff --git a/drivers/net/ethernet/hisilicon/hns/hns_dsaf_misc.c b/drivers/net/ethernet/hisilicon/hns/hns_dsaf_misc.c
-index 611b67b..63ecdd4 100644
+index 67accce..c7c747c 100644
--- a/drivers/net/ethernet/hisilicon/hns/hns_dsaf_misc.c
+++ b/drivers/net/ethernet/hisilicon/hns/hns_dsaf_misc.c
-@@ -522,48 +522,46 @@ hns_mac_config_sds_loopback_acpi(struct hns_mac_cb *mac_cb, bool en)
+@@ -582,56 +582,54 @@ hns_mac_config_sds_loopback_acpi(struct hns_mac_cb *mac_cb, bool en)
+ return 0;
+ }
- struct dsaf_misc_op *hns_misc_op_get(struct dsaf_device *dsaf_dev)
+-struct dsaf_misc_op *hns_misc_op_get(struct dsaf_device *dsaf_dev)
++const struct dsaf_misc_op *hns_misc_op_get(struct dsaf_device *dsaf_dev)
{
- struct dsaf_misc_op *misc_op;
-
@@ -64341,6 +68147,8 @@ index 611b67b..63ecdd4 100644
- misc_op->ge_srst = hns_dsaf_ge_srst_by_port;
- misc_op->ppe_srst = hns_ppe_srst_by_port;
- misc_op->ppe_comm_srst = hns_ppe_com_srst;
+- misc_op->hns_dsaf_srst_chns = hns_dsaf_srst_chns;
+- misc_op->hns_dsaf_roce_srst = hns_dsaf_roce_srst;
-
- misc_op->get_phy_if = hns_mac_get_phy_if;
- misc_op->get_sfp_prsnt = hns_mac_get_sfp_prsnt;
@@ -64357,6 +68165,8 @@ index 611b67b..63ecdd4 100644
- misc_op->ge_srst = hns_dsaf_ge_srst_by_port_acpi;
- misc_op->ppe_srst = hns_ppe_srst_by_port_acpi;
- misc_op->ppe_comm_srst = hns_ppe_com_srst;
+- misc_op->hns_dsaf_srst_chns = hns_dsaf_srst_chns_acpi;
+- misc_op->hns_dsaf_roce_srst = hns_dsaf_roce_srst_acpi;
-
- misc_op->get_phy_if = hns_mac_get_phy_if_acpi;
- misc_op->get_sfp_prsnt = hns_mac_get_sfp_prsnt;
@@ -64379,6 +68189,8 @@ index 611b67b..63ecdd4 100644
+ .ge_srst = hns_dsaf_ge_srst_by_port,
+ .ppe_srst = hns_ppe_srst_by_port,
+ .ppe_comm_srst = hns_ppe_com_srst,
++ .hns_dsaf_srst_chns = hns_dsaf_srst_chns,
++ .hns_dsaf_roce_srst = hns_dsaf_roce_srst,
+
+ .get_phy_if = hns_mac_get_phy_if,
+ .get_sfp_prsnt = hns_mac_get_sfp_prsnt,
@@ -64397,6 +68209,8 @@ index 611b67b..63ecdd4 100644
+ .ge_srst = hns_dsaf_ge_srst_by_port_acpi,
+ .ppe_srst = hns_ppe_srst_by_port_acpi,
+ .ppe_comm_srst = hns_ppe_com_srst,
++ .hns_dsaf_srst_chns = hns_dsaf_srst_chns_acpi,
++ .hns_dsaf_roce_srst = hns_dsaf_roce_srst_acpi,
+
+ .get_phy_if = hns_mac_get_phy_if_acpi,
+ .get_sfp_prsnt = hns_mac_get_sfp_prsnt,
@@ -64411,6 +68225,21 @@ index 611b67b..63ecdd4 100644
+
+ return NULL;
}
+
+ static int hns_dsaf_dev_match(struct device *dev, void *fwnode)
+diff --git a/drivers/net/ethernet/hisilicon/hns/hns_dsaf_misc.h b/drivers/net/ethernet/hisilicon/hns/hns_dsaf_misc.h
+index 310e802..5e0cca8 100644
+--- a/drivers/net/ethernet/hisilicon/hns/hns_dsaf_misc.h
++++ b/drivers/net/ethernet/hisilicon/hns/hns_dsaf_misc.h
+@@ -33,7 +33,7 @@
+ #define DSAF_LED_DATA_B 4
+ #define DSAF_LED_ANCHOR_B 5
+
+-struct dsaf_misc_op *hns_misc_op_get(struct dsaf_device *dsaf_dev);
++const struct dsaf_misc_op *hns_misc_op_get(struct dsaf_device *dsaf_dev);
+ struct
+ platform_device *hns_dsaf_find_platform_device(struct fwnode_handle *fwnode);
+ #endif
diff --git a/drivers/net/ethernet/i825xx/lib82596.c b/drivers/net/ethernet/i825xx/lib82596.c
index 3dbc53c2..fa08fb8 100644
--- a/drivers/net/ethernet/i825xx/lib82596.c
@@ -64434,7 +68263,7 @@ index 3dbc53c2..fa08fb8 100644
struct i596_private *lp = netdev_priv(dev);
struct tx_cmd *tx_cmd;
diff --git a/drivers/net/ethernet/ibm/ehea/ehea_main.c b/drivers/net/ethernet/ibm/ehea/ehea_main.c
-index 54efa9a..0d297bd 100644
+index bd719e2..3c8d84a 100644
--- a/drivers/net/ethernet/ibm/ehea/ehea_main.c
+++ b/drivers/net/ethernet/ibm/ehea/ehea_main.c
@@ -2047,7 +2047,7 @@ static void ehea_xmit3(struct sk_buff *skb, struct net_device *dev,
@@ -64447,7 +68276,7 @@ index 54efa9a..0d297bd 100644
struct ehea_port *port = netdev_priv(dev);
struct ehea_swqe *swqe;
diff --git a/drivers/net/ethernet/ibm/emac/core.c b/drivers/net/ethernet/ibm/emac/core.c
-index 7af09cb..010411a 100644
+index 8f13919..d346ced 100644
--- a/drivers/net/ethernet/ibm/emac/core.c
+++ b/drivers/net/ethernet/ibm/emac/core.c
@@ -1415,7 +1415,7 @@ static inline int emac_xmit_finish(struct emac_instance *dev, int len)
@@ -64508,10 +68337,10 @@ index 7017281..6bbf47e 100644
struct net_device *netdev = pci_get_drvdata(pdev);
struct e1000_adapter *adapter = netdev_priv(netdev);
diff --git a/drivers/net/ethernet/intel/fm10k/fm10k_pci.c b/drivers/net/ethernet/intel/fm10k/fm10k_pci.c
-index 774a565..38b03e2 100644
+index b1a2f84..d647328 100644
--- a/drivers/net/ethernet/intel/fm10k/fm10k_pci.c
+++ b/drivers/net/ethernet/intel/fm10k/fm10k_pci.c
-@@ -2249,7 +2249,7 @@ static int fm10k_suspend(struct pci_dev *pdev,
+@@ -2261,7 +2261,7 @@ static int fm10k_suspend(struct pci_dev *pdev,
* this device has been detected.
*/
static pci_ers_result_t fm10k_io_error_detected(struct pci_dev *pdev,
@@ -64521,7 +68350,7 @@ index 774a565..38b03e2 100644
struct fm10k_intfc *interface = pci_get_drvdata(pdev);
struct net_device *netdev = interface->netdev;
diff --git a/drivers/net/ethernet/intel/i40e/i40e_ptp.c b/drivers/net/ethernet/intel/i40e/i40e_ptp.c
-index ed39cba..76569b9 100644
+index f1fecea..3f54fcb 100644
--- a/drivers/net/ethernet/intel/i40e/i40e_ptp.c
+++ b/drivers/net/ethernet/intel/i40e/i40e_ptp.c
@@ -417,7 +417,7 @@ void i40e_ptp_set_increment(struct i40e_pf *pf)
@@ -64534,10 +68363,10 @@ index ed39cba..76569b9 100644
}
diff --git a/drivers/net/ethernet/intel/igb/igb_main.c b/drivers/net/ethernet/intel/igb/igb_main.c
-index 942a89f..5ca83a9 100644
+index 9affd7c..2248c78 100644
--- a/drivers/net/ethernet/intel/igb/igb_main.c
+++ b/drivers/net/ethernet/intel/igb/igb_main.c
-@@ -7809,7 +7809,7 @@ static void igb_netpoll(struct net_device *netdev)
+@@ -7837,7 +7837,7 @@ static void igb_netpoll(struct net_device *netdev)
* this device has been detected.
**/
static pci_ers_result_t igb_io_error_detected(struct pci_dev *pdev,
@@ -64547,10 +68376,10 @@ index 942a89f..5ca83a9 100644
struct net_device *netdev = pci_get_drvdata(pdev);
struct igb_adapter *adapter = netdev_priv(netdev);
diff --git a/drivers/net/ethernet/intel/igbvf/netdev.c b/drivers/net/ethernet/intel/igbvf/netdev.c
-index b0778ba..ed4357a 100644
+index 7dff7f6..fc020eb 100644
--- a/drivers/net/ethernet/intel/igbvf/netdev.c
+++ b/drivers/net/ethernet/intel/igbvf/netdev.c
-@@ -2511,7 +2511,7 @@ static void igbvf_netpoll(struct net_device *netdev)
+@@ -2515,7 +2515,7 @@ static void igbvf_netpoll(struct net_device *netdev)
* this device has been detected.
*/
static pci_ers_result_t igbvf_io_error_detected(struct pci_dev *pdev,
@@ -64560,10 +68389,10 @@ index b0778ba..ed4357a 100644
struct net_device *netdev = pci_get_drvdata(pdev);
struct igbvf_adapter *adapter = netdev_priv(netdev);
diff --git a/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c b/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c
-index b4f0374..e174bd7 100644
+index fee1f2918..57fce92 100644
--- a/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c
+++ b/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c
-@@ -9846,7 +9846,7 @@ static void ixgbe_remove(struct pci_dev *pdev)
+@@ -9912,7 +9912,7 @@ static void ixgbe_remove(struct pci_dev *pdev)
* this device has been detected.
*/
static pci_ers_result_t ixgbe_io_error_detected(struct pci_dev *pdev,
@@ -64573,7 +68402,7 @@ index b4f0374..e174bd7 100644
struct ixgbe_adapter *adapter = pci_get_drvdata(pdev);
struct net_device *netdev = adapter->netdev;
diff --git a/drivers/net/ethernet/intel/ixgbe/ixgbe_ptp.c b/drivers/net/ethernet/intel/ixgbe/ixgbe_ptp.c
-index e5431bf..1db690e 100644
+index a922776..bd7a800 100644
--- a/drivers/net/ethernet/intel/ixgbe/ixgbe_ptp.c
+++ b/drivers/net/ethernet/intel/ixgbe/ixgbe_ptp.c
@@ -1122,7 +1122,7 @@ void ixgbe_ptp_start_cyclecounter(struct ixgbe_adapter *adapter)
@@ -64586,10 +68415,10 @@ index e5431bf..1db690e 100644
/* need lock to prevent incorrect read while modifying cyclecounter */
diff --git a/drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c b/drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c
-index d9d6616..3331f28 100644
+index cbf70fe..c75e433 100644
--- a/drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c
+++ b/drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c
-@@ -3622,7 +3622,7 @@ static int ixgbevf_maybe_stop_tx(struct ixgbevf_ring *tx_ring, int size)
+@@ -3629,7 +3629,7 @@ static int ixgbevf_maybe_stop_tx(struct ixgbevf_ring *tx_ring, int size)
return __ixgbevf_maybe_stop_tx(tx_ring, size);
}
@@ -64598,7 +68427,7 @@ index d9d6616..3331f28 100644
{
struct ixgbevf_adapter *adapter = netdev_priv(netdev);
struct ixgbevf_tx_buffer *first;
-@@ -4212,7 +4212,7 @@ static void ixgbevf_remove(struct pci_dev *pdev)
+@@ -4221,7 +4221,7 @@ static void ixgbevf_remove(struct pci_dev *pdev)
* this device has been detected.
**/
static pci_ers_result_t ixgbevf_io_error_detected(struct pci_dev *pdev,
@@ -64608,10 +68437,10 @@ index d9d6616..3331f28 100644
struct net_device *netdev = pci_get_drvdata(pdev);
struct ixgbevf_adapter *adapter = netdev_priv(netdev);
diff --git a/drivers/net/ethernet/marvell/mvneta.c b/drivers/net/ethernet/marvell/mvneta.c
-index d41c28d..ef80211 100644
+index 707bc46..14bf9a5 100644
--- a/drivers/net/ethernet/marvell/mvneta.c
+++ b/drivers/net/ethernet/marvell/mvneta.c
-@@ -2290,7 +2290,7 @@ error:
+@@ -2292,7 +2292,7 @@ static int mvneta_tx_frag_process(struct mvneta_port *pp, struct sk_buff *skb,
}
/* Main tx processing */
@@ -64621,10 +68450,10 @@ index d41c28d..ef80211 100644
struct mvneta_port *pp = netdev_priv(dev);
u16 txq_id = skb_get_queue_mapping(skb);
diff --git a/drivers/net/ethernet/marvell/mvpp2.c b/drivers/net/ethernet/marvell/mvpp2.c
-index 5588c56..d62eade 100644
+index 930c816..1686d31 100644
--- a/drivers/net/ethernet/marvell/mvpp2.c
+++ b/drivers/net/ethernet/marvell/mvpp2.c
-@@ -5237,7 +5237,7 @@ error:
+@@ -5237,7 +5237,7 @@ static int mvpp2_tx_frag_process(struct mvpp2_port *port, struct sk_buff *skb,
}
/* Main tx processing */
@@ -64662,10 +68491,10 @@ index e2509bb..8357fef 100644
if (ring->free_tx_desc == mlx4_en_recycle_tx_desc)
return done < budget;
diff --git a/drivers/net/ethernet/mellanox/mlx4/main.c b/drivers/net/ethernet/mellanox/mlx4/main.c
-index 7183ac4..691c517 100644
+index 75d07fa..d766d8e 100644
--- a/drivers/net/ethernet/mellanox/mlx4/main.c
+++ b/drivers/net/ethernet/mellanox/mlx4/main.c
-@@ -4061,7 +4061,7 @@ static const struct pci_device_id mlx4_pci_table[] = {
+@@ -4069,7 +4069,7 @@ static const struct pci_device_id mlx4_pci_table[] = {
MODULE_DEVICE_TABLE(pci, mlx4_pci_table);
static pci_ers_result_t mlx4_pci_err_detected(struct pci_dev *pdev,
@@ -64675,10 +68504,10 @@ index 7183ac4..691c517 100644
struct mlx4_dev_persistent *persist = pci_get_drvdata(pdev);
diff --git a/drivers/net/ethernet/mellanox/mlx5/core/main.c b/drivers/net/ethernet/mellanox/mlx5/core/main.c
-index 2385bae..5413c50 100644
+index 0c9ef87..c10ec50 100644
--- a/drivers/net/ethernet/mellanox/mlx5/core/main.c
+++ b/drivers/net/ethernet/mellanox/mlx5/core/main.c
-@@ -1412,7 +1412,7 @@ static void remove_one(struct pci_dev *pdev)
+@@ -1312,7 +1312,7 @@ static void remove_one(struct pci_dev *pdev)
}
static pci_ers_result_t mlx5_pci_err_detected(struct pci_dev *pdev,
@@ -64688,10 +68517,10 @@ index 2385bae..5413c50 100644
struct mlx5_core_dev *dev = pci_get_drvdata(pdev);
struct mlx5_priv *priv = &dev->priv;
diff --git a/drivers/net/ethernet/mellanox/mlxsw/spectrum.c b/drivers/net/ethernet/mellanox/mlxsw/spectrum.c
-index 5cdc96b..4c2a818 100644
+index f902c4d..de8ce4e 100644
--- a/drivers/net/ethernet/mellanox/mlxsw/spectrum.c
+++ b/drivers/net/ethernet/mellanox/mlxsw/spectrum.c
-@@ -4535,16 +4535,16 @@ static int mlxsw_sp_netdevice_event(struct notifier_block *unused,
+@@ -4640,16 +4640,16 @@ static int mlxsw_sp_netdevice_event(struct notifier_block *unused,
return notifier_from_errno(err);
}
@@ -64802,10 +68631,10 @@ index e0993eb..d8d7f50 100644
struct __vxge_hw_device *hldev = pci_get_drvdata(pdev);
struct net_device *netdev = hldev->ndev;
diff --git a/drivers/net/ethernet/netronome/nfp/nfp_net_common.c b/drivers/net/ethernet/netronome/nfp/nfp_net_common.c
-index 39dadfc..2f40f84 100644
+index aee3fd2..af5b0db 100644
--- a/drivers/net/ethernet/netronome/nfp/nfp_net_common.c
+++ b/drivers/net/ethernet/netronome/nfp/nfp_net_common.c
-@@ -751,7 +751,7 @@ static void nfp_net_tx_csum(struct nfp_net *nn, struct nfp_net_r_vector *r_vec,
+@@ -752,7 +752,7 @@ static void nfp_net_tx_csum(struct nfp_net *nn, struct nfp_net_r_vector *r_vec,
*
* Return: NETDEV_TX_OK on success.
*/
@@ -64828,7 +68657,7 @@ index adbc47f..d072612 100644
{
struct netx_eth_priv *priv = netdev_priv(ndev);
diff --git a/drivers/net/ethernet/nuvoton/w90p910_ether.c b/drivers/net/ethernet/nuvoton/w90p910_ether.c
-index 87b7b81..b352c4b 100644
+index 712d8bc..52b4cde 100644
--- a/drivers/net/ethernet/nuvoton/w90p910_ether.c
+++ b/drivers/net/ethernet/nuvoton/w90p910_ether.c
@@ -633,7 +633,7 @@ static int w90p910_send_frame(struct net_device *dev,
@@ -64894,7 +68723,7 @@ diff --git a/drivers/net/ethernet/qlogic/netxen/netxen_nic_main.c b/drivers/net/
index 7a0281a..ff425351 100644
--- a/drivers/net/ethernet/qlogic/netxen/netxen_nic_main.c
+++ b/drivers/net/ethernet/qlogic/netxen/netxen_nic_main.c
-@@ -1757,7 +1757,7 @@ err_out:
+@@ -1757,7 +1757,7 @@ static int netxen_nic_attach_func(struct pci_dev *pdev)
}
static pci_ers_result_t netxen_io_error_detected(struct pci_dev *pdev,
@@ -64950,10 +68779,10 @@ index 3490675..cf148ea 100644
default:
dev_err(&adapter->pdev->dev, "Invalid Virtual NIC opmode\n");
diff --git a/drivers/net/ethernet/qlogic/qlcnic/qlcnic_main.c b/drivers/net/ethernet/qlogic/qlcnic/qlcnic_main.c
-index 3ebef27..988b2b6 100644
+index 3ae3968..64e0e7d 100644
--- a/drivers/net/ethernet/qlogic/qlcnic/qlcnic_main.c
+++ b/drivers/net/ethernet/qlogic/qlcnic/qlcnic_main.c
-@@ -3974,7 +3974,7 @@ static void qlcnic_82xx_io_resume(struct pci_dev *pdev)
+@@ -3975,7 +3975,7 @@ static void qlcnic_82xx_io_resume(struct pci_dev *pdev)
}
static pci_ers_result_t qlcnic_io_error_detected(struct pci_dev *pdev,
@@ -64966,7 +68795,7 @@ diff --git a/drivers/net/ethernet/qlogic/qlcnic/qlcnic_minidump.c b/drivers/net/
index 0844b7c..afa10a1 100644
--- a/drivers/net/ethernet/qlogic/qlcnic/qlcnic_minidump.c
+++ b/drivers/net/ethernet/qlogic/qlcnic/qlcnic_minidump.c
-@@ -1285,7 +1285,7 @@ flash_temp:
+@@ -1285,7 +1285,7 @@ int qlcnic_fw_cmd_get_minidump_temp(struct qlcnic_adapter *adapter)
int qlcnic_dump_fw(struct qlcnic_adapter *adapter)
{
struct qlcnic_fw_dump *fw_dump = &adapter->ahw->fw_dump;
@@ -64975,8 +68804,47 @@ index 0844b7c..afa10a1 100644
struct qlcnic_83xx_dump_template_hdr *hdr_83xx;
u32 entry_offset, dump, no_entries, buf_offset = 0;
int i, k, ops_cnt, ops_index, dump_size = 0;
+diff --git a/drivers/net/ethernet/qualcomm/emac/emac-mac.c b/drivers/net/ethernet/qualcomm/emac/emac-mac.c
+index 0b4deb3..61fbc9e0 100644
+--- a/drivers/net/ethernet/qualcomm/emac/emac-mac.c
++++ b/drivers/net/ethernet/qualcomm/emac/emac-mac.c
+@@ -1493,7 +1493,7 @@ static void emac_tx_fill_tpd(struct emac_adapter *adpt,
+ }
+
+ /* Transmit the packet using specified transmit queue */
+-int emac_mac_tx_buf_send(struct emac_adapter *adpt, struct emac_tx_queue *tx_q,
++netdev_tx_t emac_mac_tx_buf_send(struct emac_adapter *adpt, struct emac_tx_queue *tx_q,
+ struct sk_buff *skb)
+ {
+ struct emac_tpd tpd;
+diff --git a/drivers/net/ethernet/qualcomm/emac/emac-mac.h b/drivers/net/ethernet/qualcomm/emac/emac-mac.h
+index f3aa24d..cb6b701 100644
+--- a/drivers/net/ethernet/qualcomm/emac/emac-mac.h
++++ b/drivers/net/ethernet/qualcomm/emac/emac-mac.h
+@@ -235,7 +235,7 @@ void emac_mac_stop(struct emac_adapter *adpt);
+ void emac_mac_mode_config(struct emac_adapter *adpt);
+ void emac_mac_rx_process(struct emac_adapter *adpt, struct emac_rx_queue *rx_q,
+ int *num_pkts, int max_pkts);
+-int emac_mac_tx_buf_send(struct emac_adapter *adpt, struct emac_tx_queue *tx_q,
++netdev_tx_t emac_mac_tx_buf_send(struct emac_adapter *adpt, struct emac_tx_queue *tx_q,
+ struct sk_buff *skb);
+ void emac_mac_tx_process(struct emac_adapter *adpt, struct emac_tx_queue *tx_q);
+ void emac_mac_rx_tx_ring_init_all(struct platform_device *pdev,
+diff --git a/drivers/net/ethernet/qualcomm/emac/emac.c b/drivers/net/ethernet/qualcomm/emac/emac.c
+index 57b35ae..fe76b1f 100644
+--- a/drivers/net/ethernet/qualcomm/emac/emac.c
++++ b/drivers/net/ethernet/qualcomm/emac/emac.c
+@@ -139,7 +139,7 @@ static int emac_napi_rtx(struct napi_struct *napi, int budget)
+ }
+
+ /* Transmit the packet */
+-static int emac_start_xmit(struct sk_buff *skb, struct net_device *netdev)
++static netdev_tx_t emac_start_xmit(struct sk_buff *skb, struct net_device *netdev)
+ {
+ struct emac_adapter *adpt = netdev_priv(netdev);
+
diff --git a/drivers/net/ethernet/realtek/r8169.c b/drivers/net/ethernet/realtek/r8169.c
-index e55638c..5fe3a62 100644
+index bf000d8..4879486 100644
--- a/drivers/net/ethernet/realtek/r8169.c
+++ b/drivers/net/ethernet/realtek/r8169.c
@@ -798,22 +798,22 @@ struct rtl8169_private {
@@ -65007,10 +68875,10 @@ index e55638c..5fe3a62 100644
int (*set_speed)(struct net_device *, u8 aneg, u16 sp, u8 dpx, u32 adv);
int (*get_settings)(struct net_device *, struct ethtool_cmd *);
diff --git a/drivers/net/ethernet/renesas/sh_eth.c b/drivers/net/ethernet/renesas/sh_eth.c
-index 92c9a95..1c8f44b 100644
+index 1a92de7..cfda428 100644
--- a/drivers/net/ethernet/renesas/sh_eth.c
+++ b/drivers/net/ethernet/renesas/sh_eth.c
-@@ -2300,7 +2300,7 @@ static void sh_eth_tx_timeout(struct net_device *ndev)
+@@ -2297,7 +2297,7 @@ static void sh_eth_tx_timeout(struct net_device *ndev)
}
/* Packet transmit function */
@@ -65020,10 +68888,10 @@ index 92c9a95..1c8f44b 100644
struct sh_eth_private *mdp = netdev_priv(ndev);
struct sh_eth_txdesc *txdesc;
diff --git a/drivers/net/ethernet/rocker/rocker_main.c b/drivers/net/ethernet/rocker/rocker_main.c
-index f0b09b0..35869b1 100644
+index 24b7464..1a1cbdf 100644
--- a/drivers/net/ethernet/rocker/rocker_main.c
+++ b/drivers/net/ethernet/rocker/rocker_main.c
-@@ -2834,7 +2834,7 @@ out:
+@@ -2890,7 +2890,7 @@ static int rocker_netdevice_event(struct notifier_block *unused,
return NOTIFY_DONE;
}
@@ -65032,7 +68900,7 @@ index f0b09b0..35869b1 100644
.notifier_call = rocker_netdevice_event,
};
-@@ -2868,7 +2868,7 @@ static int rocker_netevent_event(struct notifier_block *unused,
+@@ -2924,7 +2924,7 @@ static int rocker_netevent_event(struct notifier_block *unused,
return NOTIFY_DONE;
}
@@ -65055,7 +68923,7 @@ index c2bd537..540a981 100644
struct sgiseeq_private *sp = netdev_priv(dev);
struct hpc3_ethregs *hregs = sp->hregs;
diff --git a/drivers/net/ethernet/sfc/ptp.c b/drivers/net/ethernet/sfc/ptp.c
-index c771e0a..bbb368d 100644
+index 77a5364..4a8d1f8 100644
--- a/drivers/net/ethernet/sfc/ptp.c
+++ b/drivers/net/ethernet/sfc/ptp.c
@@ -832,7 +832,7 @@ static int efx_ptp_synchronize(struct efx_nic *efx, unsigned int num_readings)
@@ -65068,7 +68936,7 @@ index c771e0a..bbb368d 100644
MC_CMD_PTP_IN_SYNCHRONIZE_LEN);
EFX_BUG_ON_PARANOID(rc);
diff --git a/drivers/net/ethernet/sfc/selftest.c b/drivers/net/ethernet/sfc/selftest.c
-index 9d78830..74fc649 100644
+index cd38b44..bfcf4b9 100644
--- a/drivers/net/ethernet/sfc/selftest.c
+++ b/drivers/net/ethernet/sfc/selftest.c
@@ -82,8 +82,8 @@ struct efx_loopback_state {
@@ -65082,7 +68950,7 @@ index 9d78830..74fc649 100644
struct efx_loopback_payload payload;
};
-@@ -349,12 +349,12 @@ void efx_loopback_rx_packet(struct efx_nic *efx,
+@@ -357,12 +357,12 @@ void efx_loopback_rx_packet(struct efx_nic *efx,
netif_vdbg(efx, drv, efx->net_dev,
"got loopback RX in %s loopback test\n", LOOPBACK_MODE(efx));
@@ -65097,7 +68965,7 @@ index 9d78830..74fc649 100644
netif_err(efx, drv, efx->net_dev, "received packet:\n");
print_hex_dump(KERN_ERR, "", DUMP_PREFIX_OFFSET, 0x10, 1,
buf_ptr, pkt_len, 0);
-@@ -363,7 +363,7 @@ void efx_loopback_rx_packet(struct efx_nic *efx,
+@@ -371,7 +371,7 @@ void efx_loopback_rx_packet(struct efx_nic *efx,
&state->payload, sizeof(state->payload), 0);
}
#endif
@@ -65106,7 +68974,7 @@ index 9d78830..74fc649 100644
}
/* Initialise an efx_selftest_state for a new iteration */
-@@ -397,8 +397,8 @@ static void efx_iterate_state(struct efx_nic *efx)
+@@ -405,8 +405,8 @@ static void efx_iterate_state(struct efx_nic *efx)
memcpy(&payload->msg, payload_msg, sizeof(payload_msg));
/* Fill out remaining state members */
@@ -65117,7 +68985,7 @@ index 9d78830..74fc649 100644
smp_wmb();
}
-@@ -456,7 +456,7 @@ static int efx_poll_loopback(struct efx_nic *efx)
+@@ -464,7 +464,7 @@ static int efx_poll_loopback(struct efx_nic *efx)
{
struct efx_loopback_state *state = efx->loopback_selftest;
@@ -65126,7 +68994,7 @@ index 9d78830..74fc649 100644
}
static int efx_end_loopback(struct efx_tx_queue *tx_queue,
-@@ -482,8 +482,8 @@ static int efx_end_loopback(struct efx_tx_queue *tx_queue,
+@@ -490,8 +490,8 @@ static int efx_end_loopback(struct efx_tx_queue *tx_queue,
netif_tx_unlock_bh(efx->net_dev);
/* Check TX completion and received packet counts */
@@ -65173,7 +69041,7 @@ index cb49c96..c1498cc 100644
struct smc911x_local *lp = netdev_priv(dev);
unsigned int free;
diff --git a/drivers/net/ethernet/smsc/smc91x.c b/drivers/net/ethernet/smsc/smc91x.c
-index 503a3b6..28d35c9 100644
+index 7321259..ac40075 100644
--- a/drivers/net/ethernet/smsc/smc91x.c
+++ b/drivers/net/ethernet/smsc/smc91x.c
@@ -637,7 +637,7 @@ done: if (!THROTTLE_TX_PKTS)
@@ -65186,10 +69054,10 @@ index 503a3b6..28d35c9 100644
struct smc_local *lp = netdev_priv(dev);
void __iomem *ioaddr = lp->base;
diff --git a/drivers/net/ethernet/smsc/smsc911x.c b/drivers/net/ethernet/smsc/smsc911x.c
-index 4f8910b..50636e8 100644
+index 8b0016a..443f4c1 100644
--- a/drivers/net/ethernet/smsc/smsc911x.c
+++ b/drivers/net/ethernet/smsc/smsc911x.c
-@@ -1760,7 +1760,7 @@ static int smsc911x_stop(struct net_device *dev)
+@@ -1776,7 +1776,7 @@ static int smsc911x_stop(struct net_device *dev)
}
/* Entry point for transmitting a packet */
@@ -65214,10 +69082,10 @@ index ce9aa79..ad1831f 100644
/* To mask all all interrupts.*/
diff --git a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
-index fe9e7b1..55f1ba6 100644
+index b2893fb..4d6caf3 100644
--- a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
+++ b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
-@@ -1171,8 +1171,8 @@ static int alloc_dma_desc_resources(struct stmmac_priv *priv)
+@@ -1177,8 +1177,8 @@ static int alloc_dma_desc_resources(struct stmmac_priv *priv)
if (!priv->rx_skbuff)
goto err_rx_skbuff;
@@ -65229,10 +69097,10 @@ index fe9e7b1..55f1ba6 100644
if (!priv->tx_skbuff_dma)
goto err_tx_skbuff_dma;
diff --git a/drivers/net/ethernet/sun/sunbmac.c b/drivers/net/ethernet/sun/sunbmac.c
-index aa4f9d2..d9ffff3 100644
+index 02f4527..7f02f30 100644
--- a/drivers/net/ethernet/sun/sunbmac.c
+++ b/drivers/net/ethernet/sun/sunbmac.c
-@@ -950,7 +950,7 @@ static void bigmac_tx_timeout(struct net_device *dev)
+@@ -951,7 +951,7 @@ static void bigmac_tx_timeout(struct net_device *dev)
}
/* Put a packet on the wire. */
@@ -65242,10 +69110,10 @@ index aa4f9d2..d9ffff3 100644
struct bigmac *bp = netdev_priv(dev);
int len, entry;
diff --git a/drivers/net/ethernet/sun/sunqe.c b/drivers/net/ethernet/sun/sunqe.c
-index 9b825780..71a2b34 100644
+index 9582948..7f70dc8 100644
--- a/drivers/net/ethernet/sun/sunqe.c
+++ b/drivers/net/ethernet/sun/sunqe.c
-@@ -568,7 +568,7 @@ out:
+@@ -569,7 +569,7 @@ static void qe_tx_timeout(struct net_device *dev)
}
/* Get a packet queued to go onto the wire. */
@@ -65299,7 +69167,7 @@ index 904a5a1..6ef5cff 100644
struct sk_buff *curr = segs;
diff --git a/drivers/net/ethernet/synopsys/dwc_eth_qos.c b/drivers/net/ethernet/synopsys/dwc_eth_qos.c
-index 4490eba..cbd62ea 100644
+index 97d64bf..630f69b 100644
--- a/drivers/net/ethernet/synopsys/dwc_eth_qos.c
+++ b/drivers/net/ethernet/synopsys/dwc_eth_qos.c
@@ -2176,7 +2176,7 @@ static void dwceqos_tx_rollback(struct net_local *lp, struct dwceqos_tx *tx)
@@ -65312,20 +69180,20 @@ index 4490eba..cbd62ea 100644
struct net_local *lp = netdev_priv(ndev);
struct dwceqos_tx trans;
diff --git a/drivers/net/ethernet/ti/cpmac.c b/drivers/net/ethernet/ti/cpmac.c
-index d300d53..31adc932 100644
+index 28097be..8efd8c2 100644
--- a/drivers/net/ethernet/ti/cpmac.c
+++ b/drivers/net/ethernet/ti/cpmac.c
-@@ -544,7 +544,7 @@ fatal_error:
+@@ -544,7 +544,7 @@ static int cpmac_poll(struct napi_struct *napi, int budget)
}
-static int cpmac_start_xmit(struct sk_buff *skb, struct net_device *dev)
+static netdev_tx_t cpmac_start_xmit(struct sk_buff *skb, struct net_device *dev)
{
- int queue, len;
- struct cpmac_desc *desc;
+ int queue;
+ unsigned int len;
diff --git a/drivers/net/ethernet/ti/davinci_emac.c b/drivers/net/ethernet/ti/davinci_emac.c
-index 727a79f..38ef419 100644
+index 481c7bf..2a6ed4c 100644
--- a/drivers/net/ethernet/ti/davinci_emac.c
+++ b/drivers/net/ethernet/ti/davinci_emac.c
@@ -943,7 +943,7 @@ static void emac_tx_handler(void *token, int len, int status)
@@ -65341,7 +69209,7 @@ diff --git a/drivers/net/ethernet/ti/netcp_core.c b/drivers/net/ethernet/ti/netc
index 3251666..6eb86ae 100644
--- a/drivers/net/ethernet/ti/netcp_core.c
+++ b/drivers/net/ethernet/ti/netcp_core.c
-@@ -1237,7 +1237,7 @@ out:
+@@ -1237,7 +1237,7 @@ static int netcp_tx_submit_skb(struct netcp_intf *netcp,
}
/* Submit the packet */
@@ -65364,10 +69232,10 @@ index 9d14731..7d6ad91 100644
.ident = "EPIA-M",
.matches = {
diff --git a/drivers/net/ethernet/wiznet/w5100.c b/drivers/net/ethernet/wiznet/w5100.c
-index 37ab46c..2875480 100644
+index d2349a1..04c8648 100644
--- a/drivers/net/ethernet/wiznet/w5100.c
+++ b/drivers/net/ethernet/wiznet/w5100.c
-@@ -836,7 +836,7 @@ static void w5100_tx_work(struct work_struct *work)
+@@ -835,7 +835,7 @@ static void w5100_tx_work(struct work_struct *work)
w5100_tx_skb(priv->ndev, skb);
}
@@ -65377,10 +69245,10 @@ index 37ab46c..2875480 100644
struct w5100_priv *priv = netdev_priv(ndev);
diff --git a/drivers/net/ethernet/wiznet/w5300.c b/drivers/net/ethernet/wiznet/w5300.c
-index 0b37ce9..4ec594b 100644
+index ca31a57..c61514b 100644
--- a/drivers/net/ethernet/wiznet/w5300.c
+++ b/drivers/net/ethernet/wiznet/w5300.c
-@@ -366,7 +366,7 @@ static void w5300_tx_timeout(struct net_device *ndev)
+@@ -365,7 +365,7 @@ static void w5300_tx_timeout(struct net_device *ndev)
netif_wake_queue(ndev);
}
@@ -65403,10 +69271,10 @@ index a9bd665..2fc2924 100644
struct temac_local *lp = netdev_priv(ndev);
struct cdmac_bd *cur_p;
diff --git a/drivers/net/ethernet/xilinx/xilinx_axienet_main.c b/drivers/net/ethernet/xilinx/xilinx_axienet_main.c
-index 36ee7ab..7a76e3f 100644
+index c688d68..b7b42ac4 100644
--- a/drivers/net/ethernet/xilinx/xilinx_axienet_main.c
+++ b/drivers/net/ethernet/xilinx/xilinx_axienet_main.c
-@@ -652,7 +652,7 @@ static inline int axienet_check_tx_bd_space(struct axienet_local *lp,
+@@ -651,7 +651,7 @@ static inline int axienet_check_tx_bd_space(struct axienet_local *lp,
* start the transmission. Additionally if checksum offloading is supported,
* it populates AXI Stream Control fields with appropriate values.
*/
@@ -65429,10 +69297,10 @@ index 93dc10b..6598671 100644
struct net_local *lp = netdev_priv(dev);
struct sk_buff *new_skb;
diff --git a/drivers/net/geneve.c b/drivers/net/geneve.c
-index 5ad706b..6a5d38a 100644
+index 8b4822a..e99c1c4 100644
--- a/drivers/net/geneve.c
+++ b/drivers/net/geneve.c
-@@ -1444,7 +1444,7 @@ nla_put_failure:
+@@ -1467,7 +1467,7 @@ static int geneve_fill_info(struct sk_buff *skb, const struct net_device *dev)
return -EMSGSIZE;
}
@@ -65441,7 +69309,7 @@ index 5ad706b..6a5d38a 100644
.kind = "geneve",
.maxtype = IFLA_GENEVE_MAX,
.policy = geneve_policy,
-@@ -1510,7 +1510,7 @@ static int geneve_netdevice_event(struct notifier_block *unused,
+@@ -1533,7 +1533,7 @@ static int geneve_netdevice_event(struct notifier_block *unused,
return NOTIFY_DONE;
}
@@ -65472,7 +69340,7 @@ index 97e0cbc..3aec9e5 100644
gtp0->flow = htons(pctx->u.v0.flow);
gtp0->number = 0xff;
gtp0->spare[0] = gtp0->spare[1] = gtp0->spare[2] = 0xff;
-@@ -751,7 +751,7 @@ nla_put_failure:
+@@ -751,7 +751,7 @@ static int gtp_fill_info(struct sk_buff *skb, const struct net_device *dev)
return -EMSGSIZE;
}
@@ -65504,10 +69372,10 @@ index 78dbc44..b7831d0 100644
struct baycom_state *bc = netdev_priv(dev);
diff --git a/drivers/net/hyperv/hyperv_net.h b/drivers/net/hyperv/hyperv_net.h
-index 591af71..a5bbc7a 100644
+index f4fbcb5..8830bbb 100644
--- a/drivers/net/hyperv/hyperv_net.h
+++ b/drivers/net/hyperv/hyperv_net.h
-@@ -162,7 +162,7 @@ struct rndis_device {
+@@ -160,7 +160,7 @@ struct rndis_device {
enum rndis_device_state state;
bool link_state;
@@ -65517,10 +69385,10 @@ index 591af71..a5bbc7a 100644
spinlock_t request_lock;
struct list_head req_list;
diff --git a/drivers/net/hyperv/netvsc_drv.c b/drivers/net/hyperv/netvsc_drv.c
-index c4d9653..a4c9101 100644
+index ff038e5..740da40 100644
--- a/drivers/net/hyperv/netvsc_drv.c
+++ b/drivers/net/hyperv/netvsc_drv.c
-@@ -349,7 +349,7 @@ not_ip:
+@@ -352,7 +352,7 @@ static u32 get_net_transport_info(struct sk_buff *skb, u32 *trans_off)
return ret_val;
}
@@ -65530,7 +69398,7 @@ index c4d9653..a4c9101 100644
struct net_device_context *net_device_ctx = netdev_priv(net);
struct hv_netvsc_packet *packet = NULL;
diff --git a/drivers/net/hyperv/rndis_filter.c b/drivers/net/hyperv/rndis_filter.c
-index 8e830f7..37da185 100644
+index 9195d5d..1d570d1 100644
--- a/drivers/net/hyperv/rndis_filter.c
+++ b/drivers/net/hyperv/rndis_filter.c
@@ -101,7 +101,7 @@ static struct rndis_request *get_rndis_request(struct rndis_device *dev,
@@ -65542,7 +69410,7 @@ index 8e830f7..37da185 100644
/* Add to the request list */
spin_lock_irqsave(&dev->request_lock, flags);
-@@ -861,7 +861,7 @@ static void rndis_filter_halt_device(struct rndis_device *dev)
+@@ -881,7 +881,7 @@ static void rndis_filter_halt_device(struct rndis_device *dev)
/* Setup the rndis set */
halt = &request->request_msg.msg.halt_req;
@@ -65551,7 +69419,7 @@ index 8e830f7..37da185 100644
/* Ignore return since this msg is optional. */
rndis_filter_send_request(dev, request);
-@@ -1075,8 +1075,7 @@ int rndis_filter_device_add(struct hv_device *dev,
+@@ -1099,8 +1099,7 @@ int rndis_filter_device_add(struct hv_device *dev,
if (net_device->num_chn == 1)
goto out;
@@ -65575,7 +69443,7 @@ index 66c0eea..27486de 100644
.priv_size = sizeof(struct ifb_dev_private),
.setup = ifb_setup,
diff --git a/drivers/net/ipvlan/ipvlan_core.c b/drivers/net/ipvlan/ipvlan_core.c
-index b5f9511..c883583 100644
+index b4e9907..20efd78 100644
--- a/drivers/net/ipvlan/ipvlan_core.c
+++ b/drivers/net/ipvlan/ipvlan_core.c
@@ -484,7 +484,7 @@ static void ipvlan_multicast_enqueue(struct ipvl_port *port,
@@ -65588,10 +69456,19 @@ index b5f9511..c883583 100644
}
}
diff --git a/drivers/net/ipvlan/ipvlan_main.c b/drivers/net/ipvlan/ipvlan_main.c
-index 18b4e8c..65f5386 100644
+index dfbc4ef..47e795d 100644
--- a/drivers/net/ipvlan/ipvlan_main.c
+++ b/drivers/net/ipvlan/ipvlan_main.c
-@@ -734,15 +734,15 @@ static int ipvlan_addr4_event(struct notifier_block *unused,
+@@ -26,7 +26,7 @@ static struct nf_hook_ops ipvl_nfops[] __read_mostly = {
+ },
+ };
+
+-static struct l3mdev_ops ipvl_l3mdev_ops __read_mostly = {
++static struct l3mdev_ops ipvl_l3mdev_ops = {
+ .l3mdev_l3_rcv = ipvlan_l3_rcv,
+ };
+
+@@ -816,15 +816,15 @@ static int ipvlan_addr4_event(struct notifier_block *unused,
return NOTIFY_OK;
}
@@ -65711,7 +69588,7 @@ diff --git a/drivers/net/loopback.c b/drivers/net/loopback.c
index 6255973..7ae59f5 100644
--- a/drivers/net/loopback.c
+++ b/drivers/net/loopback.c
-@@ -216,6 +216,6 @@ out:
+@@ -216,6 +216,6 @@ static __net_init int loopback_net_init(struct net *net)
}
/* Registered in net/core/dev.c */
@@ -65720,10 +69597,10 @@ index 6255973..7ae59f5 100644
.init = loopback_net_init,
};
diff --git a/drivers/net/macsec.c b/drivers/net/macsec.c
-index b72ddc6..7f75c10 100644
+index d2e61e0..8c0d77a 100644
--- a/drivers/net/macsec.c
+++ b/drivers/net/macsec.c
-@@ -3388,7 +3388,7 @@ nla_put_failure:
+@@ -3389,7 +3389,7 @@ static int macsec_fill_info(struct sk_buff *skb,
return -EMSGSIZE;
}
@@ -65733,7 +69610,7 @@ index b72ddc6..7f75c10 100644
.priv_size = sizeof(struct macsec_dev),
.maxtype = IFLA_MACSEC_MAX,
diff --git a/drivers/net/macvlan.c b/drivers/net/macvlan.c
-index 3234fcd..954fb39 100644
+index 26d6f0b..af4d2ad 100644
--- a/drivers/net/macvlan.c
+++ b/drivers/net/macvlan.c
@@ -343,7 +343,7 @@ static void macvlan_broadcast_enqueue(struct macvlan_port *port,
@@ -65745,7 +69622,7 @@ index 3234fcd..954fb39 100644
}
static void macvlan_flush_sources(struct macvlan_port *port,
-@@ -1508,13 +1508,15 @@ static const struct nla_policy macvlan_policy[IFLA_MACVLAN_MAX + 1] = {
+@@ -1522,13 +1522,15 @@ static const struct nla_policy macvlan_policy[IFLA_MACVLAN_MAX + 1] = {
int macvlan_link_register(struct rtnl_link_ops *ops)
{
/* common fields */
@@ -65768,7 +69645,7 @@ index 3234fcd..954fb39 100644
return rtnl_link_register(ops);
};
-@@ -1602,7 +1604,7 @@ static int macvlan_device_event(struct notifier_block *unused,
+@@ -1616,7 +1618,7 @@ static int macvlan_device_event(struct notifier_block *unused,
return NOTIFY_DONE;
}
@@ -65778,10 +69655,10 @@ index 3234fcd..954fb39 100644
};
diff --git a/drivers/net/macvtap.c b/drivers/net/macvtap.c
-index 070e329..b829217 100644
+index 6f38daf..5a5bedd 100644
--- a/drivers/net/macvtap.c
+++ b/drivers/net/macvtap.c
-@@ -508,7 +508,7 @@ static void macvtap_setup(struct net_device *dev)
+@@ -514,7 +514,7 @@ static void macvtap_setup(struct net_device *dev)
dev->tx_queue_len = TUN_READQ_SIZE;
}
@@ -65790,7 +69667,7 @@ index 070e329..b829217 100644
.kind = "macvtap",
.setup = macvtap_setup,
.newlink = macvtap_newlink,
-@@ -1049,7 +1049,7 @@ static long macvtap_ioctl(struct file *file, unsigned int cmd,
+@@ -1054,7 +1054,7 @@ static long macvtap_ioctl(struct file *file, unsigned int cmd,
ret = 0;
u = q->flags;
@@ -65799,7 +69676,7 @@ index 070e329..b829217 100644
put_user(u, &ifr->ifr_flags))
ret = -EFAULT;
macvtap_put_vlan(vlan);
-@@ -1132,8 +1132,8 @@ static long macvtap_ioctl(struct file *file, unsigned int cmd,
+@@ -1137,8 +1137,8 @@ static long macvtap_ioctl(struct file *file, unsigned int cmd,
}
ret = 0;
u = vlan->dev->type;
@@ -65810,7 +69687,7 @@ index 070e329..b829217 100644
put_user(u, &ifr->ifr_hwaddr.sa_family))
ret = -EFAULT;
macvtap_put_vlan(vlan);
-@@ -1311,7 +1311,7 @@ static int macvtap_device_event(struct notifier_block *unused,
+@@ -1316,7 +1316,7 @@ static int macvtap_device_event(struct notifier_block *unused,
return NOTIFY_DONE;
}
@@ -65833,7 +69710,7 @@ index 7b7c70e..a92dc83 100644
.priv_size = sizeof(struct nlmon),
.setup = nlmon_setup,
diff --git a/drivers/net/phy/phy_device.c b/drivers/net/phy/phy_device.c
-index e977ba9..e3df8dcd8 100644
+index c4ceb08..46c9044 100644
--- a/drivers/net/phy/phy_device.c
+++ b/drivers/net/phy/phy_device.c
@@ -411,7 +411,7 @@ static int get_phy_c45_devs_in_pkg(struct mii_bus *bus, int addr, int dev_addr,
@@ -65877,10 +69754,10 @@ index 9c4b41a..03da80b 100644
{
struct net_local *nl = netdev_priv(dev);
diff --git a/drivers/net/ppp/ppp_generic.c b/drivers/net/ppp/ppp_generic.c
-index f226db4..6d75edc 100644
+index 5489c0e..50a54df7 100644
--- a/drivers/net/ppp/ppp_generic.c
+++ b/drivers/net/ppp/ppp_generic.c
-@@ -1135,7 +1135,7 @@ static struct net *ppp_nl_get_link_net(const struct net_device *dev)
+@@ -1144,7 +1144,7 @@ static struct net *ppp_nl_get_link_net(const struct net_device *dev)
return ppp->ppp_net;
}
@@ -65889,7 +69766,7 @@ index f226db4..6d75edc 100644
.kind = "ppp",
.maxtype = IFLA_PPP_MAX,
.policy = ppp_nl_policy,
-@@ -1253,7 +1253,6 @@ ppp_net_ioctl(struct net_device *dev, struct ifreq *ifr, int cmd)
+@@ -1262,7 +1262,6 @@ ppp_net_ioctl(struct net_device *dev, struct ifreq *ifr, int cmd)
void __user *addr = (void __user *) ifr->ifr_ifru.ifru_data;
struct ppp_stats stats;
struct ppp_comp_stats cstats;
@@ -65897,7 +69774,7 @@ index f226db4..6d75edc 100644
switch (cmd) {
case SIOCGPPPSTATS:
-@@ -1275,8 +1274,7 @@ ppp_net_ioctl(struct net_device *dev, struct ifreq *ifr, int cmd)
+@@ -1284,8 +1283,7 @@ ppp_net_ioctl(struct net_device *dev, struct ifreq *ifr, int cmd)
break;
case SIOCGPPPVER:
@@ -65908,10 +69785,10 @@ index f226db4..6d75edc 100644
err = 0;
break;
diff --git a/drivers/net/ppp/pptp.c b/drivers/net/ppp/pptp.c
-index ae0905e..f22c8e9d 100644
+index 1951b10..b02adc9 100644
--- a/drivers/net/ppp/pptp.c
+++ b/drivers/net/ppp/pptp.c
-@@ -368,7 +368,7 @@ allow_packet:
+@@ -332,7 +332,7 @@ static int pptp_rcv_core(struct sock *sk, struct sk_buff *skb)
}
skb->ip_summed = CHECKSUM_NONE;
@@ -65969,10 +69846,10 @@ index a380649..fd8fe79c 100644
};
diff --git a/drivers/net/tun.c b/drivers/net/tun.c
-index 6f9df37..3c37ed5 100644
+index 18402d7..61603d0 100644
--- a/drivers/net/tun.c
+++ b/drivers/net/tun.c
-@@ -972,7 +972,7 @@ static void tun_set_headroom(struct net_device *dev, int new_hr)
+@@ -966,7 +966,7 @@ static void tun_set_headroom(struct net_device *dev, int new_hr)
{
struct tun_struct *tun = netdev_priv(dev);
@@ -65981,7 +69858,7 @@ index 6f9df37..3c37ed5 100644
new_hr = NET_SKB_PAD;
tun->align = new_hr;
-@@ -1556,7 +1556,7 @@ static int tun_validate(struct nlattr *tb[], struct nlattr *data[])
+@@ -1548,7 +1548,7 @@ static int tun_validate(struct nlattr *tb[], struct nlattr *data[])
return -EINVAL;
}
@@ -65990,7 +69867,7 @@ index 6f9df37..3c37ed5 100644
.kind = DRV_NAME,
.priv_size = sizeof(struct tun_struct),
.setup = tun_setup,
-@@ -1985,7 +1985,7 @@ unlock:
+@@ -1977,7 +1977,7 @@ static int tun_set_queue(struct file *file, struct ifreq *ifr)
}
static long __tun_chr_ioctl(struct file *file, unsigned int cmd,
@@ -65999,7 +69876,7 @@ index 6f9df37..3c37ed5 100644
{
struct tun_file *tfile = file->private_data;
struct tun_struct *tun;
-@@ -1999,6 +1999,9 @@ static long __tun_chr_ioctl(struct file *file, unsigned int cmd,
+@@ -1991,6 +1991,9 @@ static long __tun_chr_ioctl(struct file *file, unsigned int cmd,
int le;
int ret;
@@ -66009,7 +69886,7 @@ index 6f9df37..3c37ed5 100644
if (cmd == TUNSETIFF || cmd == TUNSETQUEUE || _IOC_TYPE(cmd) == 0x89) {
if (copy_from_user(&ifr, argp, ifreq_len))
return -EFAULT;
-@@ -2514,7 +2517,7 @@ static int tun_device_event(struct notifier_block *unused,
+@@ -2506,7 +2509,7 @@ static int tun_device_event(struct notifier_block *unused,
return NOTIFY_DONE;
}
@@ -66019,10 +69896,10 @@ index 6f9df37..3c37ed5 100644
};
diff --git a/drivers/net/usb/hso.c b/drivers/net/usb/hso.c
-index 4b44586..ae19659 100644
+index e7b5163..0d30ed85 100644
--- a/drivers/net/usb/hso.c
+++ b/drivers/net/usb/hso.c
-@@ -70,7 +70,7 @@
+@@ -72,7 +72,7 @@
#include <asm/byteorder.h>
#include <linux/serial_core.h>
#include <linux/serial.h>
@@ -66031,7 +69908,7 @@ index 4b44586..ae19659 100644
#define MOD_AUTHOR "Option Wireless"
#define MOD_DESCRIPTION "USB High Speed Option driver"
-@@ -1183,7 +1183,7 @@ static void put_rxbuf_data_and_resubmit_ctrl_urb(struct hso_serial *serial)
+@@ -1175,7 +1175,7 @@ static void put_rxbuf_data_and_resubmit_ctrl_urb(struct hso_serial *serial)
struct urb *urb;
urb = serial->rx_urb[0];
@@ -66040,7 +69917,7 @@ index 4b44586..ae19659 100644
count = put_rxbuf_data(urb, serial);
if (count == -1)
return;
-@@ -1221,7 +1221,7 @@ static void hso_std_serial_read_bulk_callback(struct urb *urb)
+@@ -1213,7 +1213,7 @@ static void hso_std_serial_read_bulk_callback(struct urb *urb)
DUMP1(urb->transfer_buffer, urb->actual_length);
/* Anyone listening? */
@@ -66049,7 +69926,7 @@ index 4b44586..ae19659 100644
return;
if (serial->parent->port_spec & HSO_INFO_CRC_BUG)
-@@ -1237,8 +1237,9 @@ static void hso_std_serial_read_bulk_callback(struct urb *urb)
+@@ -1229,8 +1229,9 @@ static void hso_std_serial_read_bulk_callback(struct urb *urb)
* This needs to be a tasklet otherwise we will
* end up recursively calling this function.
*/
@@ -66060,7 +69937,7 @@ index 4b44586..ae19659 100644
unsigned long flags;
spin_lock_irqsave(&serial->serial_lock, flags);
-@@ -1282,18 +1283,17 @@ static int hso_serial_open(struct tty_struct *tty, struct file *filp)
+@@ -1274,18 +1275,17 @@ static int hso_serial_open(struct tty_struct *tty, struct file *filp)
tty_port_tty_set(&serial->port, tty);
/* check for port already opened, if not set the termios */
@@ -66082,7 +69959,7 @@ index 4b44586..ae19659 100644
} else {
kref_get(&serial->parent->ref);
}
-@@ -1331,10 +1331,10 @@ static void hso_serial_close(struct tty_struct *tty, struct file *filp)
+@@ -1323,10 +1323,10 @@ static void hso_serial_close(struct tty_struct *tty, struct file *filp)
/* reset the rts and dtr */
/* do the actual close */
@@ -66096,7 +69973,7 @@ index 4b44586..ae19659 100644
tty_port_tty_set(&serial->port, NULL);
if (!usb_gone)
hso_stop_serial_device(serial->parent);
-@@ -1417,7 +1417,7 @@ static void hso_serial_set_termios(struct tty_struct *tty, struct ktermios *old)
+@@ -1409,7 +1409,7 @@ static void hso_serial_set_termios(struct tty_struct *tty, struct ktermios *old)
/* the actual setup */
spin_lock_irqsave(&serial->serial_lock, flags);
@@ -66105,8 +69982,8 @@ index 4b44586..ae19659 100644
_hso_serial_set_termios(tty, old);
else
tty->termios = *old;
-@@ -1891,7 +1891,7 @@ static void intr_callback(struct urb *urb)
- D1("Pending read interrupt on port %d\n", i);
+@@ -1884,7 +1884,7 @@ static void intr_callback(struct urb *urb)
+ i);
spin_lock(&serial->serial_lock);
if (serial->rx_state == RX_IDLE &&
- serial->port.count > 0) {
@@ -66114,7 +69991,7 @@ index 4b44586..ae19659 100644
/* Setup and send a ctrl req read on
* port i */
if (!serial->rx_urb_filled[0]) {
-@@ -3058,7 +3058,7 @@ static int hso_resume(struct usb_interface *iface)
+@@ -3041,7 +3041,7 @@ static int hso_resume(struct usb_interface *iface)
/* Start all serial ports */
for (i = 0; i < HSO_SERIAL_TTY_MINORS; i++) {
if (serial_table[i] && (serial_table[i]->interface == iface)) {
@@ -66137,7 +70014,7 @@ index 76465b1..2d72355 100644
struct ipheth_device *dev = netdev_priv(net);
struct usb_device *udev = dev->udev;
diff --git a/drivers/net/usb/r8152.c b/drivers/net/usb/r8152.c
-index c254248..e4a52dc 100644
+index 90b426c..4a6209c 100644
--- a/drivers/net/usb/r8152.c
+++ b/drivers/net/usb/r8152.c
@@ -632,7 +632,7 @@ struct r8152 {
@@ -66172,7 +70049,7 @@ index a2515887..6d13233 100644
/* we will have to manufacture ethernet headers, prepare template */
diff --git a/drivers/net/virtio_net.c b/drivers/net/virtio_net.c
-index d807209..90cc005 100644
+index 51fc0c3..6cc1baa 100644
--- a/drivers/net/virtio_net.c
+++ b/drivers/net/virtio_net.c
@@ -48,7 +48,7 @@ module_param(gso, bool, 0444);
@@ -66185,10 +70062,10 @@ index d807209..90cc005 100644
#define VIRTNET_DRIVER_VERSION "1.0.0"
diff --git a/drivers/net/vrf.c b/drivers/net/vrf.c
-index 1ce7420..8bef471 100644
+index 95cf1d8..b2a00f6 100644
--- a/drivers/net/vrf.c
+++ b/drivers/net/vrf.c
-@@ -1287,7 +1287,7 @@ static const struct nla_policy vrf_nl_policy[IFLA_VRF_MAX + 1] = {
+@@ -1296,7 +1296,7 @@ static const struct nla_policy vrf_nl_policy[IFLA_VRF_MAX + 1] = {
[IFLA_VRF_TABLE] = { .type = NLA_U32 },
};
@@ -66197,7 +70074,7 @@ index 1ce7420..8bef471 100644
.kind = DRV_NAME,
.priv_size = sizeof(struct net_vrf),
-@@ -1324,7 +1324,7 @@ out:
+@@ -1333,7 +1333,7 @@ static int vrf_device_event(struct notifier_block *unused,
return NOTIFY_DONE;
}
@@ -66207,10 +70084,10 @@ index 1ce7420..8bef471 100644
};
diff --git a/drivers/net/vxlan.c b/drivers/net/vxlan.c
-index 5ae664c..65d0be53 100644
+index 0fafaa9..0227536 100644
--- a/drivers/net/vxlan.c
+++ b/drivers/net/vxlan.c
-@@ -3169,7 +3169,7 @@ static struct net *vxlan_get_link_net(const struct net_device *dev)
+@@ -3193,7 +3193,7 @@ static struct net *vxlan_get_link_net(const struct net_device *dev)
return vxlan->net;
}
@@ -66219,7 +70096,7 @@ index 5ae664c..65d0be53 100644
.kind = "vxlan",
.maxtype = IFLA_VXLAN_MAX,
.policy = vxlan_policy,
-@@ -3253,7 +3253,7 @@ static int vxlan_netdevice_event(struct notifier_block *unused,
+@@ -3277,7 +3277,7 @@ static int vxlan_netdevice_event(struct notifier_block *unused,
return NOTIFY_DONE;
}
@@ -66410,7 +70287,7 @@ index 0b60295..b8bfa5b 100644
if (rd == NULL) {
result = -ENOMEM;
diff --git a/drivers/net/wireless/ath/ath10k/ce.c b/drivers/net/wireless/ath/ath10k/ce.c
-index da9998e..5ef101a 100644
+index 0b4d796..28ef224 100644
--- a/drivers/net/wireless/ath/ath10k/ce.c
+++ b/drivers/net/wireless/ath/ath10k/ce.c
@@ -887,12 +887,12 @@ static int ath10k_ce_init_dest_ring(struct ath10k *ar,
@@ -66458,10 +70335,10 @@ index 0c55cd9..7fc013b 100644
/* service connection information */
struct ath10k_htc_svc_conn_req {
diff --git a/drivers/net/wireless/ath/ath10k/mac.c b/drivers/net/wireless/ath/ath10k/mac.c
-index 146365b..b0aef36 100644
+index f2e85eb..5e10c3e 100644
--- a/drivers/net/wireless/ath/ath10k/mac.c
+++ b/drivers/net/wireless/ath/ath10k/mac.c
-@@ -7991,8 +7991,11 @@ int ath10k_mac_register(struct ath10k *ar)
+@@ -8006,8 +8006,11 @@ int ath10k_mac_register(struct ath10k *ar)
* supports the pull-push mechanism.
*/
if (!test_bit(ATH10K_FW_FEATURE_PEER_FLOW_CONTROL,
@@ -66492,7 +70369,7 @@ diff --git a/drivers/net/wireless/ath/ath6kl/txrx.c b/drivers/net/wireless/ath/a
index 9df41d5..fb12f17 100644
--- a/drivers/net/wireless/ath/ath6kl/txrx.c
+++ b/drivers/net/wireless/ath/ath6kl/txrx.c
-@@ -353,7 +353,7 @@ fail_ctrl_tx:
+@@ -353,7 +353,7 @@ int ath6kl_control_tx(void *devt, struct sk_buff *skb,
return status;
}
@@ -66502,7 +70379,7 @@ index 9df41d5..fb12f17 100644
struct ath6kl *ar = ath6kl_priv(dev);
struct ath6kl_cookie *cookie = NULL;
diff --git a/drivers/net/wireless/ath/ath9k/Kconfig b/drivers/net/wireless/ath/ath9k/Kconfig
-index f68cb00..7e16ed6 100644
+index 8f231c6..48902b8 100644
--- a/drivers/net/wireless/ath/ath9k/Kconfig
+++ b/drivers/net/wireless/ath/ath9k/Kconfig
@@ -3,7 +3,6 @@ config ATH9K_HW
@@ -66759,7 +70636,7 @@ index 9cbca12..eae7c79 100644
struct ath_nf_limits {
s16 max;
diff --git a/drivers/net/wireless/ath/ath9k/main.c b/drivers/net/wireless/ath/ath9k/main.c
-index 7cb65c3..d213e2a 100644
+index e9f32b5..d394d93 100644
--- a/drivers/net/wireless/ath/ath9k/main.c
+++ b/drivers/net/wireless/ath/ath9k/main.c
@@ -2622,16 +2622,18 @@ void ath9k_fill_chanctx_ops(void)
@@ -66925,10 +70802,10 @@ index 2bf04c9..ae05957 100644
if (atomic_read(&ar->tx_ampdu_upload))
diff --git a/drivers/net/wireless/ath/wil6210/pcie_bus.c b/drivers/net/wireless/ath/wil6210/pcie_bus.c
-index 7b5c422..caa69fa 100644
+index 44746ca..6e17b3b 100644
--- a/drivers/net/wireless/ath/wil6210/pcie_bus.c
+++ b/drivers/net/wireless/ath/wil6210/pcie_bus.c
-@@ -159,7 +159,7 @@ static int wil_pcie_probe(struct pci_dev *pdev, const struct pci_device_id *id)
+@@ -164,7 +164,7 @@ static int wil_pcie_probe(struct pci_dev *pdev, const struct pci_device_id *id)
struct wil6210_priv *wil;
struct device *dev = &pdev->dev;
int rc;
@@ -67415,10 +71292,10 @@ index 83770d2..3ec8a40 100644
if (modparam_pio)
wldev->__using_pio = true;
diff --git a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c
-index abaf003..7c0fe5d 100644
+index 78d9966..2808cb5 100644
--- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c
+++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c
-@@ -5230,6 +5230,50 @@ static struct cfg80211_ops brcmf_cfg80211_ops = {
+@@ -5229,6 +5229,50 @@ static struct cfg80211_ops brcmf_cfg80211_ops = {
.tdls_oper = brcmf_cfg80211_tdls_oper,
};
@@ -67469,7 +71346,7 @@ index abaf003..7c0fe5d 100644
struct brcmf_cfg80211_vif *brcmf_alloc_vif(struct brcmf_cfg80211_info *cfg,
enum nl80211_iftype type)
{
-@@ -6846,7 +6890,7 @@ struct brcmf_cfg80211_info *brcmf_cfg80211_attach(struct brcmf_pub *drvr,
+@@ -6845,7 +6889,7 @@ struct brcmf_cfg80211_info *brcmf_cfg80211_attach(struct brcmf_pub *drvr,
struct net_device *ndev = brcmf_get_ifp(drvr, 0)->ndev;
struct brcmf_cfg80211_info *cfg;
struct wiphy *wiphy;
@@ -67478,7 +71355,7 @@ index abaf003..7c0fe5d 100644
struct brcmf_cfg80211_vif *vif;
struct brcmf_if *ifp;
s32 err = 0;
-@@ -6858,14 +6902,10 @@ struct brcmf_cfg80211_info *brcmf_cfg80211_attach(struct brcmf_pub *drvr,
+@@ -6857,14 +6901,10 @@ struct brcmf_cfg80211_info *brcmf_cfg80211_attach(struct brcmf_pub *drvr,
return NULL;
}
@@ -67494,7 +71371,7 @@ index abaf003..7c0fe5d 100644
#endif
wiphy = wiphy_new(ops, sizeof(struct brcmf_cfg80211_info));
if (!wiphy) {
-@@ -7004,7 +7044,6 @@ priv_out:
+@@ -7003,7 +7043,6 @@ struct brcmf_cfg80211_info *brcmf_cfg80211_attach(struct brcmf_pub *drvr,
ifp->vif = NULL;
wiphy_out:
brcmf_free_wiphy(wiphy);
@@ -67502,7 +71379,7 @@ index abaf003..7c0fe5d 100644
return NULL;
}
-@@ -7015,7 +7054,6 @@ void brcmf_cfg80211_detach(struct brcmf_cfg80211_info *cfg)
+@@ -7014,7 +7053,6 @@ void brcmf_cfg80211_detach(struct brcmf_cfg80211_info *cfg)
brcmf_btcoex_detach(cfg);
wiphy_unregister(cfg->wiphy);
@@ -67940,7 +71817,7 @@ index 69b826d..669a1e0 100644
struct airo_info *ai = dev->ml_priv;
BSSListElement *net;
int err = 0;
-@@ -7478,7 +7509,7 @@ out:
+@@ -7478,7 +7509,7 @@ static int airo_get_scan(struct net_device *dev,
*/
static int airo_config_commit(struct net_device *dev,
struct iw_request_info *info, /* NULL */
@@ -68201,7 +72078,7 @@ index a91d170..4b3876a 100644
static void
diff --git a/drivers/net/wireless/intel/iwlwifi/dvm/debugfs.c b/drivers/net/wireless/intel/iwlwifi/dvm/debugfs.c
-index f6591c8..363b5b3 100644
+index affe760..9f6cbdd 100644
--- a/drivers/net/wireless/intel/iwlwifi/dvm/debugfs.c
+++ b/drivers/net/wireless/intel/iwlwifi/dvm/debugfs.c
@@ -190,7 +190,7 @@ static ssize_t iwl_dbgfs_sram_write(struct file *file,
@@ -68359,7 +72236,7 @@ index 6c2d6da..4660f39 100644
} else
aes_sc = data->rsc_tsc->all_tsc_rsc.aes.multicast_rsc;
diff --git a/drivers/net/wireless/intel/iwlwifi/mvm/d3.c b/drivers/net/wireless/intel/iwlwifi/mvm/d3.c
-index ea67ae9..89be094 100644
+index b88e204..9d505c7 100644
--- a/drivers/net/wireless/intel/iwlwifi/mvm/d3.c
+++ b/drivers/net/wireless/intel/iwlwifi/mvm/d3.c
@@ -258,7 +258,7 @@ static void iwl_mvm_wowlan_program_keys(struct ieee80211_hw *hw,
@@ -68380,7 +72257,7 @@ index ea67ae9..89be094 100644
aes_tx_sc->pn = cpu_to_le64(pn64);
} else {
aes_sc = data->rsc_tsc->all_tsc_rsc.aes.multicast_rsc;
-@@ -1619,12 +1619,12 @@ static void iwl_mvm_d3_update_keys(struct ieee80211_hw *hw,
+@@ -1622,12 +1622,12 @@ static void iwl_mvm_d3_update_keys(struct ieee80211_hw *hw,
case WLAN_CIPHER_SUITE_CCMP:
iwl_mvm_set_aes_rx_seq(data->mvm, sc->aes.unicast_rsc,
sta, key);
@@ -68396,7 +72273,7 @@ index ea67ae9..89be094 100644
((u64)seq.tkip.iv32 << 16));
break;
diff --git a/drivers/net/wireless/intel/iwlwifi/mvm/tx.c b/drivers/net/wireless/intel/iwlwifi/mvm/tx.c
-index a0c1e3d..a3c2b98 100644
+index 66957ac..23446ed 100644
--- a/drivers/net/wireless/intel/iwlwifi/mvm/tx.c
+++ b/drivers/net/wireless/intel/iwlwifi/mvm/tx.c
@@ -385,7 +385,7 @@ static inline void iwl_mvm_set_tx_cmd_pn(struct ieee80211_tx_info *info,
@@ -68418,10 +72295,10 @@ index a0c1e3d..a3c2b98 100644
ieee80211_get_tkip_p2k(keyconf, skb_frag, tx_cmd->key);
break;
diff --git a/drivers/net/wireless/intel/iwlwifi/pcie/trans.c b/drivers/net/wireless/intel/iwlwifi/pcie/trans.c
-index 74f2f03..8436ddc 100644
+index ae95533..ace0cd3 100644
--- a/drivers/net/wireless/intel/iwlwifi/pcie/trans.c
+++ b/drivers/net/wireless/intel/iwlwifi/pcie/trans.c
-@@ -2346,7 +2346,7 @@ static ssize_t iwl_dbgfs_interrupt_write(struct file *file,
+@@ -2420,7 +2420,7 @@ static ssize_t iwl_dbgfs_interrupt_write(struct file *file,
struct isr_statistics *isr_stats = &trans_pcie->isr_stats;
char buf[8];
@@ -68430,7 +72307,7 @@ index 74f2f03..8436ddc 100644
u32 reset_flag;
memset(buf, 0, sizeof(buf));
-@@ -2367,7 +2367,7 @@ static ssize_t iwl_dbgfs_csr_write(struct file *file,
+@@ -2441,7 +2441,7 @@ static ssize_t iwl_dbgfs_csr_write(struct file *file,
{
struct iwl_trans *trans = file->private_data;
char buf[8];
@@ -68440,7 +72317,7 @@ index 74f2f03..8436ddc 100644
memset(buf, 0, sizeof(buf));
diff --git a/drivers/net/wireless/intersil/hostap/hostap_ioctl.c b/drivers/net/wireless/intersil/hostap/hostap_ioctl.c
-index 3e5fa78..6d26beb 100644
+index a5656bc..7401f47 100644
--- a/drivers/net/wireless/intersil/hostap/hostap_ioctl.c
+++ b/drivers/net/wireless/intersil/hostap/hostap_ioctl.c
@@ -101,8 +101,9 @@ static int prism2_get_datarates(struct net_device *dev, u8 *rates)
@@ -68848,7 +72725,7 @@ index 3e5fa78..6d26beb 100644
hostap_monitor_mode_enable(local);
} else
ret = -EINVAL;
-@@ -3094,8 +3125,9 @@ static int prism2_set_genericelement(struct net_device *dev, u8 *elem,
+@@ -3090,8 +3121,9 @@ static int prism2_set_genericelement(struct net_device *dev, u8 *elem,
static int prism2_ioctl_siwauth(struct net_device *dev,
struct iw_request_info *info,
@@ -68859,7 +72736,7 @@ index 3e5fa78..6d26beb 100644
struct hostap_interface *iface = netdev_priv(dev);
local_info_t *local = iface->local;
-@@ -3160,8 +3192,9 @@ static int prism2_ioctl_siwauth(struct net_device *dev,
+@@ -3156,8 +3188,9 @@ static int prism2_ioctl_siwauth(struct net_device *dev,
static int prism2_ioctl_giwauth(struct net_device *dev,
struct iw_request_info *info,
@@ -68870,7 +72747,7 @@ index 3e5fa78..6d26beb 100644
struct hostap_interface *iface = netdev_priv(dev);
local_info_t *local = iface->local;
-@@ -3199,8 +3232,9 @@ static int prism2_ioctl_giwauth(struct net_device *dev,
+@@ -3195,8 +3228,9 @@ static int prism2_ioctl_giwauth(struct net_device *dev,
static int prism2_ioctl_siwencodeext(struct net_device *dev,
struct iw_request_info *info,
@@ -68881,7 +72758,7 @@ index 3e5fa78..6d26beb 100644
struct hostap_interface *iface = netdev_priv(dev);
local_info_t *local = iface->local;
struct iw_encode_ext *ext = (struct iw_encode_ext *) extra;
-@@ -3373,8 +3407,9 @@ static int prism2_ioctl_siwencodeext(struct net_device *dev,
+@@ -3369,8 +3403,9 @@ static int prism2_ioctl_siwencodeext(struct net_device *dev,
static int prism2_ioctl_giwencodeext(struct net_device *dev,
struct iw_request_info *info,
@@ -68892,7 +72769,7 @@ index 3e5fa78..6d26beb 100644
struct hostap_interface *iface = netdev_priv(dev);
local_info_t *local = iface->local;
struct lib80211_crypt_data **crypt;
-@@ -3681,16 +3716,19 @@ static int prism2_ioctl_set_assoc_ap_addr(local_info_t *local,
+@@ -3677,16 +3712,19 @@ static int prism2_ioctl_set_assoc_ap_addr(local_info_t *local,
static int prism2_ioctl_siwgenie(struct net_device *dev,
struct iw_request_info *info,
@@ -68914,7 +72791,7 @@ index 3e5fa78..6d26beb 100644
struct hostap_interface *iface = netdev_priv(dev);
local_info_t *local = iface->local;
int len = local->generic_elem_len - 2;
-@@ -3728,7 +3766,7 @@ static int prism2_ioctl_set_generic_element(local_info_t *local,
+@@ -3724,7 +3762,7 @@ static int prism2_ioctl_set_generic_element(local_info_t *local,
static int prism2_ioctl_siwmlme(struct net_device *dev,
struct iw_request_info *info,
@@ -68923,7 +72800,7 @@ index 3e5fa78..6d26beb 100644
{
struct hostap_interface *iface = netdev_priv(dev);
local_info_t *local = iface->local;
-@@ -3883,70 +3921,70 @@ const struct ethtool_ops prism2_ethtool_ops = {
+@@ -3875,70 +3913,70 @@ const struct ethtool_ops prism2_ethtool_ops = {
static const iw_handler prism2_handler[] =
{
@@ -69054,7 +72931,7 @@ index 3e5fa78..6d26beb 100644
};
const struct iw_handler_def hostap_iw_handler_def =
-@@ -3954,8 +3992,8 @@ const struct iw_handler_def hostap_iw_handler_def =
+@@ -3946,8 +3984,8 @@ const struct iw_handler_def hostap_iw_handler_def =
.num_standard = ARRAY_SIZE(prism2_handler),
.num_private = ARRAY_SIZE(prism2_private_handler),
.num_private_args = ARRAY_SIZE(prism2_priv),
@@ -69760,7 +73637,7 @@ index 48e8a97..3499ec8 100644
islpci_private *priv = netdev_priv(ndev);
int len = priv->wpa_ie_len;
-@@ -1739,7 +1767,7 @@ out:
+@@ -1739,7 +1767,7 @@ static int prism54_get_encodeext(struct net_device *ndev,
static int
prism54_reset(struct net_device *ndev, struct iw_request_info *info,
@@ -70125,7 +74002,7 @@ index 48e8a97..3499ec8 100644
const struct iw_handler_def prism54_handler_def = {
diff --git a/drivers/net/wireless/mac80211_hwsim.c b/drivers/net/wireless/mac80211_hwsim.c
-index 8c35ac8..42033c1 100644
+index d3bad57..1989113 100644
--- a/drivers/net/wireless/mac80211_hwsim.c
+++ b/drivers/net/wireless/mac80211_hwsim.c
@@ -3360,20 +3360,20 @@ static int __init init_mac80211_hwsim(void)
@@ -70162,12 +74039,12 @@ index 8c35ac8..42033c1 100644
+ pax_close_kernel();
spin_lock_init(&hwsim_radio_lock);
- INIT_LIST_HEAD(&hwsim_radios);
+
diff --git a/drivers/net/wireless/marvell/mwifiex/main.c b/drivers/net/wireless/marvell/mwifiex/main.c
-index db4925d..91c12fa 100644
+index 2478ccd..1194b50 100644
--- a/drivers/net/wireless/marvell/mwifiex/main.c
+++ b/drivers/net/wireless/marvell/mwifiex/main.c
-@@ -814,7 +814,7 @@ mwifiex_clone_skb_for_tx_status(struct mwifiex_private *priv,
+@@ -853,7 +853,7 @@ mwifiex_clone_skb_for_tx_status(struct mwifiex_private *priv,
/*
* CFG802.11 network device handler for data transmission.
*/
@@ -70176,6 +74053,22 @@ index db4925d..91c12fa 100644
mwifiex_hard_start_xmit(struct sk_buff *skb, struct net_device *dev)
{
struct mwifiex_private *priv = mwifiex_netdev_get_priv(dev);
+@@ -1539,14 +1539,10 @@ mwifiex_reinit_sw(struct mwifiex_adapter *adapter, struct semaphore *sem,
+ */
+ void mwifiex_do_flr(struct mwifiex_adapter *adapter, bool prepare)
+ {
+- struct mwifiex_if_ops if_ops;
+-
+ if (!prepare) {
+- mwifiex_reinit_sw(adapter, adapter->card_sem, &if_ops,
++ mwifiex_reinit_sw(adapter, adapter->card_sem, NULL,
+ adapter->iface_type);
+ } else {
+- memcpy(&if_ops, &adapter->if_ops,
+- sizeof(struct mwifiex_if_ops));
+ mwifiex_shutdown_sw(adapter, adapter->card_sem);
+ }
+ }
diff --git a/drivers/net/wireless/ralink/rt2x00/rt2400pci.c b/drivers/net/wireless/ralink/rt2x00/rt2400pci.c
index 155f343..5db43e7 100644
--- a/drivers/net/wireless/ralink/rt2x00/rt2400pci.c
@@ -70405,10 +74298,10 @@ index 74233d6..482e495 100644
void rtl_get_tcb_desc(struct ieee80211_hw *hw,
struct ieee80211_tx_info *info,
diff --git a/drivers/net/wireless/realtek/rtlwifi/pci.c b/drivers/net/wireless/realtek/rtlwifi/pci.c
-index e538e23..9e24271 100644
+index 5be4fc9..05d3370 100644
--- a/drivers/net/wireless/realtek/rtlwifi/pci.c
+++ b/drivers/net/wireless/realtek/rtlwifi/pci.c
-@@ -1094,13 +1094,16 @@ done:
+@@ -1095,13 +1095,16 @@ static irqreturn_t _rtl_pci_interrupt(int irq, void *dev_id)
return ret;
}
@@ -70427,7 +74320,7 @@ index e538e23..9e24271 100644
struct rtl_priv *rtlpriv = rtl_priv(hw);
struct rtl_pci *rtlpci = rtl_pcidev(rtl_pcipriv(hw));
struct rtl_mac *mac = rtl_mac(rtl_priv(hw));
-@@ -1221,12 +1224,8 @@ static void _rtl_pci_init_struct(struct ieee80211_hw *hw,
+@@ -1222,12 +1225,8 @@ static void _rtl_pci_init_struct(struct ieee80211_hw *hw,
rtlpci->acm_method = EACMWAY2_SW;
/*task */
@@ -70443,7 +74336,7 @@ index e538e23..9e24271 100644
rtl_lps_change_work_callback);
}
diff --git a/drivers/net/wireless/realtek/rtlwifi/ps.c b/drivers/net/wireless/realtek/rtlwifi/ps.c
-index 424e262..6b1ade8 100644
+index d0ffc4d..5f197b4 100644
--- a/drivers/net/wireless/realtek/rtlwifi/ps.c
+++ b/drivers/net/wireless/realtek/rtlwifi/ps.c
@@ -198,7 +198,7 @@ static void _rtl_ps_inactive_ps(struct ieee80211_hw *hw)
@@ -70549,10 +74442,10 @@ index 22009e1..2e5e0c1 100644
wlcore_set_min_fw_ver(wl, WL127X_CHIP_VER,
WL127X_IFTYPE_SR_VER, WL127X_MAJOR_SR_VER,
diff --git a/drivers/net/wireless/ti/wl18xx/main.c b/drivers/net/wireless/ti/wl18xx/main.c
-index 00a04df..859b311 100644
+index 06d6943..8d7aa2b 100644
--- a/drivers/net/wireless/ti/wl18xx/main.c
+++ b/drivers/net/wireless/ti/wl18xx/main.c
-@@ -2031,8 +2031,10 @@ static int wl18xx_setup(struct wl1271 *wl)
+@@ -2033,8 +2033,10 @@ static int wl18xx_setup(struct wl1271 *wl)
}
if (!checksum_param) {
@@ -70820,7 +74713,7 @@ index dea049b..ef3bcdd 100644
struct zd1201 *zd = netdev_priv(dev);
short enabled, duration, level;
int err;
-@@ -1519,8 +1541,9 @@ out:
+@@ -1519,8 +1541,9 @@ static int zd1201_set_power(struct net_device *dev,
}
static int zd1201_get_power(struct net_device *dev,
@@ -71001,7 +74894,7 @@ index dea049b..ef3bcdd 100644
static const struct iw_priv_args zd1201_private_args[] = {
diff --git a/drivers/net/wireless/zydas/zd1211rw/zd_usb.c b/drivers/net/wireless/zydas/zd1211rw/zd_usb.c
-index a912dc0..a8225ba 100644
+index c5effd6c..0466667 100644
--- a/drivers/net/wireless/zydas/zd1211rw/zd_usb.c
+++ b/drivers/net/wireless/zydas/zd1211rw/zd_usb.c
@@ -385,7 +385,7 @@ static inline void handle_regs_int(struct urb *urb)
@@ -71014,10 +74907,10 @@ index a912dc0..a8225ba 100644
ZD_ASSERT(in_interrupt());
diff --git a/drivers/net/xen-netback/interface.c b/drivers/net/xen-netback/interface.c
-index 83deeeb..bbc8855 100644
+index 74dc2bf..e942c3b 100644
--- a/drivers/net/xen-netback/interface.c
+++ b/drivers/net/xen-netback/interface.c
-@@ -178,7 +178,7 @@ static u16 xenvif_select_queue(struct net_device *dev, struct sk_buff *skb,
+@@ -160,7 +160,7 @@ static u16 xenvif_select_queue(struct net_device *dev, struct sk_buff *skb,
return vif->hash.mapping[skb_get_hash_raw(skb) % size];
}
@@ -71027,7 +74920,7 @@ index 83deeeb..bbc8855 100644
struct xenvif *vif = netdev_priv(dev);
struct xenvif_queue *queue = NULL;
diff --git a/drivers/net/xen-netfront.c b/drivers/net/xen-netfront.c
-index 96ccd4e..8e1c6b7 100644
+index bf2744e..c8b5fd0 100644
--- a/drivers/net/xen-netfront.c
+++ b/drivers/net/xen-netfront.c
@@ -550,7 +550,7 @@ static u16 xennet_select_queue(struct net_device *dev, struct sk_buff *skb,
@@ -71040,7 +74933,7 @@ index 96ccd4e..8e1c6b7 100644
struct netfront_info *np = netdev_priv(dev);
struct netfront_stats *tx_stats = this_cpu_ptr(np->tx_stats);
diff --git a/drivers/ntb/test/ntb_pingpong.c b/drivers/ntb/test/ntb_pingpong.c
-index 7d31179..a188713 100644
+index 4358611..e0cbb1a 100644
--- a/drivers/ntb/test/ntb_pingpong.c
+++ b/drivers/ntb/test/ntb_pingpong.c
@@ -99,7 +99,7 @@ struct pp_ctx {
@@ -71080,10 +74973,10 @@ index 7d31179..a188713 100644
setup_timer(&pp->db_timer, pp_ping, (unsigned long)pp);
pp->db_delay = msecs_to_jiffies(delay_ms);
diff --git a/drivers/nvme/host/pci.c b/drivers/nvme/host/pci.c
-index da134a0..e3236aa 100644
+index 5e52034..a57342e 100644
--- a/drivers/nvme/host/pci.c
+++ b/drivers/nvme/host/pci.c
-@@ -2054,7 +2054,7 @@ static int nvme_resume(struct device *dev)
+@@ -2038,7 +2038,7 @@ static int nvme_resume(struct device *dev)
static SIMPLE_DEV_PM_OPS(nvme_dev_pm_ops, nvme_suspend, nvme_resume);
static pci_ers_result_t nvme_error_detected(struct pci_dev *pdev,
@@ -71093,10 +74986,10 @@ index da134a0..e3236aa 100644
struct nvme_dev *dev = pci_get_drvdata(pdev);
diff --git a/drivers/of/fdt.c b/drivers/of/fdt.c
-index 085c638..1819bbe 100644
+index c89d5d2..bcd8946 100644
--- a/drivers/of/fdt.c
+++ b/drivers/of/fdt.c
-@@ -1304,7 +1304,9 @@ static int __init of_fdt_raw_init(void)
+@@ -1295,7 +1295,9 @@ static int __init of_fdt_raw_init(void)
pr_warn("not creating '/sys/firmware/fdt': CRC check failed\n");
return 0;
}
@@ -71215,7 +75108,7 @@ index 1fc622b..8c48fc3 100644
extern struct oprofile_stat_struct oprofile_stats;
diff --git a/drivers/oprofile/oprofilefs.c b/drivers/oprofile/oprofilefs.c
-index a0e5260..a6d7637 100644
+index 134398e..266e724 100644
--- a/drivers/oprofile/oprofilefs.c
+++ b/drivers/oprofile/oprofilefs.c
@@ -176,8 +176,8 @@ int oprofilefs_create_ro_ulong(struct dentry *root,
@@ -71238,19 +75131,6 @@ index a0e5260..a6d7637 100644
{
return __oprofilefs_create_file(root, name,
&atomic_ro_fops, 0444, val);
-diff --git a/drivers/oprofile/timer_int.c b/drivers/oprofile/timer_int.c
-index bdef916..88c7dee 100644
---- a/drivers/oprofile/timer_int.c
-+++ b/drivers/oprofile/timer_int.c
-@@ -93,7 +93,7 @@ static int oprofile_cpu_notify(struct notifier_block *self,
- return NOTIFY_OK;
- }
-
--static struct notifier_block __refdata oprofile_cpu_notifier = {
-+static struct notifier_block oprofile_cpu_notifier = {
- .notifier_call = oprofile_cpu_notify,
- };
-
diff --git a/drivers/parport/procfs.c b/drivers/parport/procfs.c
index 74ed3e4..3e74a1c 100644
--- a/drivers/parport/procfs.c
@@ -71273,6 +75153,37 @@ index 74ed3e4..3e74a1c 100644
}
#endif /* IEEE1284.3 support. */
+diff --git a/drivers/pci/host/vmd.c b/drivers/pci/host/vmd.c
+index 37e29b5..616d520 100644
+--- a/drivers/pci/host/vmd.c
++++ b/drivers/pci/host/vmd.c
+@@ -396,7 +396,7 @@ static void vmd_teardown_dma_ops(struct vmd_dev *vmd)
+ #define ASSIGN_VMD_DMA_OPS(source, dest, fn) \
+ do { \
+ if (source->fn) \
+- dest->fn = vmd_##fn; \
++ const_cast(dest->fn) = vmd_##fn;\
+ } while (0)
+
+ static void vmd_setup_dma_ops(struct vmd_dev *vmd)
+@@ -410,6 +410,8 @@ static void vmd_setup_dma_ops(struct vmd_dev *vmd)
+
+ if (!source)
+ return;
++
++ pax_open_kernel();
+ ASSIGN_VMD_DMA_OPS(source, dest, alloc);
+ ASSIGN_VMD_DMA_OPS(source, dest, free);
+ ASSIGN_VMD_DMA_OPS(source, dest, mmap);
+@@ -427,6 +429,8 @@ static void vmd_setup_dma_ops(struct vmd_dev *vmd)
+ #ifdef ARCH_HAS_DMA_GET_REQUIRED_MASK
+ ASSIGN_VMD_DMA_OPS(source, dest, get_required_mask);
+ #endif
++ pax_close_kernel();
++
+ add_dma_domain(domain);
+ }
+ #undef ASSIGN_VMD_DMA_OPS
diff --git a/drivers/pci/hotplug/acpiphp_ibm.c b/drivers/pci/hotplug/acpiphp_ibm.c
index f6221d7..80121ae 100644
--- a/drivers/pci/hotplug/acpiphp_ibm.c
@@ -71380,7 +75291,7 @@ index c25fc90..b054774 100644
dbg("int15 entry = %p\n", compaq_int15_entry_point);
diff --git a/drivers/pci/hotplug/pci_hotplug_core.c b/drivers/pci/hotplug/pci_hotplug_core.c
-index 9acd199..1b19f5b 100644
+index fea0b8b..0d3e890 100644
--- a/drivers/pci/hotplug/pci_hotplug_core.c
+++ b/drivers/pci/hotplug/pci_hotplug_core.c
@@ -434,8 +434,10 @@ int __pci_hp_register(struct hotplug_slot *slot, struct pci_bus *bus,
@@ -71397,10 +75308,10 @@ index 9acd199..1b19f5b 100644
mutex_lock(&pci_hp_mutex);
/*
diff --git a/drivers/pci/hotplug/pciehp_core.c b/drivers/pci/hotplug/pciehp_core.c
-index ac531e6..716d058 100644
+index 7d32fa33..62d9b1d2 100644
--- a/drivers/pci/hotplug/pciehp_core.c
+++ b/drivers/pci/hotplug/pciehp_core.c
-@@ -87,7 +87,7 @@ static int init_slot(struct controller *ctrl)
+@@ -86,7 +86,7 @@ static int init_slot(struct controller *ctrl)
struct slot *slot = ctrl->slot;
struct hotplug_slot *hotplug = NULL;
struct hotplug_slot_info *info = NULL;
@@ -71410,10 +75321,10 @@ index ac531e6..716d058 100644
int retval = -ENOMEM;
diff --git a/drivers/pci/msi.c b/drivers/pci/msi.c
-index 98f1222..d57e451 100644
+index 3455f75..889b244 100644
--- a/drivers/pci/msi.c
+++ b/drivers/pci/msi.c
-@@ -476,8 +476,8 @@ static int populate_msi_sysfs(struct pci_dev *pdev)
+@@ -477,8 +477,8 @@ static int populate_msi_sysfs(struct pci_dev *pdev)
{
struct attribute **msi_attrs;
struct attribute *msi_attr;
@@ -71424,7 +75335,7 @@ index 98f1222..d57e451 100644
const struct attribute_group **msi_irq_groups;
struct msi_desc *entry;
int ret = -ENOMEM;
-@@ -539,7 +539,7 @@ error_attrs:
+@@ -540,7 +540,7 @@ static int populate_msi_sysfs(struct pci_dev *pdev)
count = 0;
msi_attr = msi_attrs[count];
while (msi_attr) {
@@ -71433,7 +75344,7 @@ index 98f1222..d57e451 100644
kfree(msi_attr->name);
kfree(msi_dev_attr);
++count;
-@@ -1369,12 +1369,14 @@ static void pci_msi_domain_update_dom_ops(struct msi_domain_info *info)
+@@ -1418,12 +1418,14 @@ static void pci_msi_domain_update_dom_ops(struct msi_domain_info *info)
if (ops == NULL) {
info->ops = &pci_msi_domain_ops_default;
} else {
@@ -71451,7 +75362,7 @@ index 98f1222..d57e451 100644
}
}
-@@ -1383,12 +1385,14 @@ static void pci_msi_domain_update_chip_ops(struct msi_domain_info *info)
+@@ -1432,12 +1434,14 @@ static void pci_msi_domain_update_chip_ops(struct msi_domain_info *info)
struct irq_chip *chip = info->chip;
BUG_ON(!chip);
@@ -71501,10 +75412,10 @@ index bcd10c7..c7c18bc 100644
if (!sysfs_initialized)
return -EACCES;
diff --git a/drivers/pci/pci.h b/drivers/pci/pci.h
-index 9730c47..773a322 100644
+index 45185621..fd0ac76 100644
--- a/drivers/pci/pci.h
+++ b/drivers/pci/pci.h
-@@ -113,7 +113,7 @@ struct pci_vpd_ops {
+@@ -116,7 +116,7 @@ struct pci_vpd_ops {
struct pci_vpd {
const struct pci_vpd_ops *ops;
@@ -71513,7 +75424,7 @@ index 9730c47..773a322 100644
struct mutex lock;
unsigned int len;
u16 flag;
-@@ -314,7 +314,7 @@ static inline int pci_iov_bus_range(struct pci_bus *bus)
+@@ -317,7 +317,7 @@ static inline int pci_iov_bus_range(struct pci_bus *bus)
#endif /* CONFIG_PCI_IOV */
@@ -71523,7 +75434,7 @@ index 9730c47..773a322 100644
static inline resource_size_t pci_resource_alignment(struct pci_dev *dev,
struct resource *res)
diff --git a/drivers/pci/pcie/aspm.c b/drivers/pci/pcie/aspm.c
-index 0ec649d..f93be68 100644
+index b0916b1..5ba6224 100644
--- a/drivers/pci/pcie/aspm.c
+++ b/drivers/pci/pcie/aspm.c
@@ -27,9 +27,9 @@
@@ -71539,7 +75450,7 @@ index 0ec649d..f93be68 100644
#define ASPM_STATE_L0S (ASPM_STATE_L0S_UP | ASPM_STATE_L0S_DW)
#define ASPM_STATE_ALL (ASPM_STATE_L0S | ASPM_STATE_L1)
-@@ -775,7 +775,7 @@ void pci_disable_link_state(struct pci_dev *pdev, int state)
+@@ -782,7 +782,7 @@ void pci_disable_link_state(struct pci_dev *pdev, int state)
}
EXPORT_SYMBOL(pci_disable_link_state);
@@ -71548,7 +75459,7 @@ index 0ec649d..f93be68 100644
{
int i;
struct pcie_link_state *link;
-@@ -802,7 +802,7 @@ static int pcie_aspm_set_policy(const char *val, struct kernel_param *kp)
+@@ -809,7 +809,7 @@ static int pcie_aspm_set_policy(const char *val, struct kernel_param *kp)
return 0;
}
@@ -71558,10 +75469,10 @@ index 0ec649d..f93be68 100644
int i, cnt = 0;
for (i = 0; i < ARRAY_SIZE(policy_str); i++)
diff --git a/drivers/pci/pcie/portdrv_pci.c b/drivers/pci/pcie/portdrv_pci.c
-index 70d7ad8..66f87d6 100644
+index 79327cc..28fde3f 100644
--- a/drivers/pci/pcie/portdrv_pci.c
+++ b/drivers/pci/pcie/portdrv_pci.c
-@@ -370,7 +370,7 @@ static int __init dmi_pcie_pme_disable_msi(const struct dmi_system_id *d)
+@@ -360,7 +360,7 @@ static int __init dmi_pcie_pme_disable_msi(const struct dmi_system_id *d)
return 0;
}
@@ -71571,7 +75482,7 @@ index 70d7ad8..66f87d6 100644
* Boxes that should not use MSI for PCIe PME signaling.
*/
diff --git a/drivers/pci/probe.c b/drivers/pci/probe.c
-index f6eff4a..9ef8afb 100644
+index 300770c..552fc7e 100644
--- a/drivers/pci/probe.c
+++ b/drivers/pci/probe.c
@@ -180,7 +180,7 @@ int __pci_read_base(struct pci_dev *dev, enum pci_bar_type type,
@@ -71605,10 +75516,10 @@ index 2408abe..455d4d4 100644
&proc_bus_pci_dev_operations);
proc_initialized = 1;
diff --git a/drivers/pci/setup-bus.c b/drivers/pci/setup-bus.c
-index c74059e..95cd7bc 100644
+index f30ca75..4bae5cb8 100644
--- a/drivers/pci/setup-bus.c
+++ b/drivers/pci/setup-bus.c
-@@ -405,8 +405,12 @@ static void __assign_resources_sorted(struct list_head *head,
+@@ -406,8 +406,12 @@ static void __assign_resources_sorted(struct list_head *head,
/* Update res in head list with add_size in realloc_head list */
list_for_each_entry_safe(dev_res, tmp_res, head, list) {
@@ -71623,7 +75534,7 @@ index c74059e..95cd7bc 100644
/*
* There are two kinds of additional resources in the list:
-@@ -1119,7 +1123,7 @@ static int pbus_size_mem(struct pci_bus *bus, unsigned long mask,
+@@ -1120,7 +1124,7 @@ static int pbus_size_mem(struct pci_bus *bus, unsigned long mask,
return 0;
}
@@ -71633,10 +75544,10 @@ index c74059e..95cd7bc 100644
if (res->flags & IORESOURCE_IO)
return pci_cardbus_io_size;
diff --git a/drivers/pinctrl/nomadik/pinctrl-nomadik.c b/drivers/pinctrl/nomadik/pinctrl-nomadik.c
-index 35f6218..481d098 100644
+index d318ca0..40fba01 100644
--- a/drivers/pinctrl/nomadik/pinctrl-nomadik.c
+++ b/drivers/pinctrl/nomadik/pinctrl-nomadik.c
-@@ -1098,7 +1098,7 @@ static int nmk_gpio_probe(struct platform_device *dev)
+@@ -1097,7 +1097,7 @@ static int nmk_gpio_probe(struct platform_device *dev)
struct device_node *np = dev->dev.of_node;
struct nmk_gpio_chip *nmk_chip;
struct gpio_chip *chip;
@@ -71646,7 +75557,7 @@ index 35f6218..481d098 100644
bool supports_sleepmode;
int irq;
diff --git a/drivers/pinctrl/pinctrl-at91.c b/drivers/pinctrl/pinctrl-at91.c
-index 80daead..388a2c6 100644
+index 9f09041..5713a0e 100644
--- a/drivers/pinctrl/pinctrl-at91.c
+++ b/drivers/pinctrl/pinctrl-at91.c
@@ -23,6 +23,7 @@
@@ -71743,7 +75654,7 @@ index a66be13..124be13 100644
/*
* Early Macbook Pros with switchable graphics use nvidia
diff --git a/drivers/platform/x86/asus-wmi.c b/drivers/platform/x86/asus-wmi.c
-index 7c093a0..f2fb59f 100644
+index ce6ca31..3e69fbe 100644
--- a/drivers/platform/x86/asus-wmi.c
+++ b/drivers/platform/x86/asus-wmi.c
@@ -1872,6 +1872,10 @@ static int show_dsts(struct seq_file *m, void *data)
@@ -71905,7 +75816,7 @@ index e6aac72..e11ff24 100644
.ident = "Samsung Q10",
.matches = {
diff --git a/drivers/platform/x86/sony-laptop.c b/drivers/platform/x86/sony-laptop.c
-index 1dba359..2850ab9 100644
+index c890a49..9545052 100644
--- a/drivers/platform/x86/sony-laptop.c
+++ b/drivers/platform/x86/sony-laptop.c
@@ -2556,7 +2556,7 @@ static void sony_nc_gfx_switch_cleanup(struct platform_device *pd)
@@ -72144,10 +76055,33 @@ index f980ff7..77121c4 100644
return NULL;
}
-diff --git a/drivers/power/pda_power.c b/drivers/power/pda_power.c
-index dfe1ee8..67e820c 100644
---- a/drivers/power/pda_power.c
-+++ b/drivers/power/pda_power.c
+diff --git a/drivers/power/reset/at91-reset.c b/drivers/power/reset/at91-reset.c
+index 1b5d450..b6042f8 100644
+--- a/drivers/power/reset/at91-reset.c
++++ b/drivers/power/reset/at91-reset.c
+@@ -17,6 +17,7 @@
+ #include <linux/of_address.h>
+ #include <linux/platform_device.h>
+ #include <linux/reboot.h>
++#include <asm/pgtable.h>
+
+ #include <soc/at91/at91sam9_ddrsdr.h>
+ #include <soc/at91/at91sam9_sdramc.h>
+@@ -206,7 +207,9 @@ static int __init at91_reset_probe(struct platform_device *pdev)
+ }
+
+ match = of_match_node(at91_reset_of_match, pdev->dev.of_node);
+- at91_restart_nb.notifier_call = match->data;
++ pax_open_kernel();
++ const_cast(at91_restart_nb.notifier_call) = match->data;
++ pax_close_kernel();
+
+ sclk = devm_clk_get(&pdev->dev, NULL);
+ if (IS_ERR(sclk))
+diff --git a/drivers/power/supply/pda_power.c b/drivers/power/supply/pda_power.c
+index dfe1ee8..70ba235 100644
+--- a/drivers/power/supply/pda_power.c
++++ b/drivers/power/supply/pda_power.c
@@ -38,7 +38,11 @@ static struct power_supply *pda_psy_ac, *pda_psy_usb;
#if IS_ENABLED(CONFIG_USB_PHY)
@@ -72156,7 +76090,7 @@ index dfe1ee8..67e820c 100644
+static int otg_handle_notification(struct notifier_block *nb,
+ unsigned long event, void *unused);
+static struct notifier_block otg_nb = {
-+ .notifier_call = otg_handle_notification
++ .notifier_call = otg_handle_notification,
+};
#endif
@@ -72169,10 +76103,10 @@ index dfe1ee8..67e820c 100644
ret = usb_register_notifier(transceiver, &otg_nb);
if (ret) {
dev_err(dev, "failure to register otg notifier\n");
-diff --git a/drivers/power/power_supply.h b/drivers/power/power_supply.h
+diff --git a/drivers/power/supply/power_supply.h b/drivers/power/supply/power_supply.h
index cc439fd..8fa30df 100644
---- a/drivers/power/power_supply.h
-+++ b/drivers/power/power_supply.h
+--- a/drivers/power/supply/power_supply.h
++++ b/drivers/power/supply/power_supply.h
@@ -16,12 +16,12 @@ struct power_supply;
#ifdef CONFIG_SYSFS
@@ -72188,10 +76122,10 @@ index cc439fd..8fa30df 100644
#define power_supply_uevent NULL
#endif /* CONFIG_SYSFS */
-diff --git a/drivers/power/power_supply_core.c b/drivers/power/power_supply_core.c
+diff --git a/drivers/power/supply/power_supply_core.c b/drivers/power/supply/power_supply_core.c
index a74d8ca..c98d745 100644
---- a/drivers/power/power_supply_core.c
-+++ b/drivers/power/power_supply_core.c
+--- a/drivers/power/supply/power_supply_core.c
++++ b/drivers/power/supply/power_supply_core.c
@@ -28,7 +28,10 @@ EXPORT_SYMBOL_GPL(power_supply_class);
ATOMIC_NOTIFIER_HEAD(power_supply_notifier);
EXPORT_SYMBOL_GPL(power_supply_notifier);
@@ -72213,10 +76147,10 @@ index a74d8ca..c98d745 100644
return 0;
}
-diff --git a/drivers/power/power_supply_sysfs.c b/drivers/power/power_supply_sysfs.c
+diff --git a/drivers/power/supply/power_supply_sysfs.c b/drivers/power/supply/power_supply_sysfs.c
index bcde8d1..0406331 100644
---- a/drivers/power/power_supply_sysfs.c
-+++ b/drivers/power/power_supply_sysfs.c
+--- a/drivers/power/supply/power_supply_sysfs.c
++++ b/drivers/power/supply/power_supply_sysfs.c
@@ -239,17 +239,15 @@ static struct attribute_group power_supply_attr_group = {
.is_visible = power_supply_attr_is_visible,
};
@@ -72237,29 +76171,6 @@ index bcde8d1..0406331 100644
for (i = 0; i < ARRAY_SIZE(power_supply_attrs); i++)
__power_supply_attrs[i] = &power_supply_attrs[i].attr;
}
-diff --git a/drivers/power/reset/at91-reset.c b/drivers/power/reset/at91-reset.c
-index 1b5d450..b6042f8 100644
---- a/drivers/power/reset/at91-reset.c
-+++ b/drivers/power/reset/at91-reset.c
-@@ -17,6 +17,7 @@
- #include <linux/of_address.h>
- #include <linux/platform_device.h>
- #include <linux/reboot.h>
-+#include <asm/pgtable.h>
-
- #include <soc/at91/at91sam9_ddrsdr.h>
- #include <soc/at91/at91sam9_sdramc.h>
-@@ -206,7 +207,9 @@ static int __init at91_reset_probe(struct platform_device *pdev)
- }
-
- match = of_match_node(at91_reset_of_match, pdev->dev.of_node);
-- at91_restart_nb.notifier_call = match->data;
-+ pax_open_kernel();
-+ const_cast(at91_restart_nb.notifier_call) = match->data;
-+ pax_close_kernel();
-
- sclk = devm_clk_get(&pdev->dev, NULL);
- if (IS_ERR(sclk))
diff --git a/drivers/powercap/powercap_sys.c b/drivers/powercap/powercap_sys.c
index 14bde0d..9391277 100644
--- a/drivers/powercap/powercap_sys.c
@@ -72476,10 +76387,10 @@ index 302e626..12579af 100644
da->attr.name = info->pin_config[i].name;
da->attr.mode = 0644;
diff --git a/drivers/regulator/core.c b/drivers/regulator/core.c
-index db320e8..bbd864d 100644
+index 5c1519b..eb73d91 100644
--- a/drivers/regulator/core.c
+++ b/drivers/regulator/core.c
-@@ -3886,7 +3886,7 @@ regulator_register(const struct regulator_desc *regulator_desc,
+@@ -3916,7 +3916,7 @@ regulator_register(const struct regulator_desc *regulator_desc,
const struct regulation_constraints *constraints = NULL;
const struct regulator_init_data *init_data;
struct regulator_config *config = NULL;
@@ -72488,7 +76399,7 @@ index db320e8..bbd864d 100644
struct regulator_dev *rdev;
struct device *dev;
int ret, i;
-@@ -3979,7 +3979,7 @@ regulator_register(const struct regulator_desc *regulator_desc,
+@@ -4009,7 +4009,7 @@ regulator_register(const struct regulator_desc *regulator_desc,
rdev->dev.class = &regulator_class;
rdev->dev.parent = dev;
dev_set_name(&rdev->dev, "regulator.%lu",
@@ -72515,10 +76426,10 @@ index b87f62d..34f1cdf 100644
/*
diff --git a/drivers/regulator/max8973-regulator.c b/drivers/regulator/max8973-regulator.c
-index 3958f50..8139dc1 100644
+index e0c747a..c6eb788 100644
--- a/drivers/regulator/max8973-regulator.c
+++ b/drivers/regulator/max8973-regulator.c
-@@ -750,9 +750,11 @@ static int max8973_probe(struct i2c_client *client,
+@@ -751,9 +751,11 @@ static int max8973_probe(struct i2c_client *client,
if (!pdata->enable_ext_control) {
max->desc.enable_reg = MAX8973_VOUT;
max->desc.enable_mask = MAX8973_VOUT_ENABLE;
@@ -72533,7 +76444,7 @@ index 3958f50..8139dc1 100644
break;
}
-@@ -780,9 +782,11 @@ static int max8973_probe(struct i2c_client *client,
+@@ -781,9 +783,11 @@ static int max8973_probe(struct i2c_client *client,
max->desc.enable_reg = MAX8973_VOUT;
max->desc.enable_mask = MAX8973_VOUT_ENABLE;
@@ -72569,59 +76480,58 @@ index 0d17c92..ce5897e 100644
mc13xxx_data = mc13xxx_parse_regulators_dt(pdev, mc13892_regulators,
diff --git a/drivers/remoteproc/remoteproc_core.c b/drivers/remoteproc/remoteproc_core.c
-index fe0539e..247590f 100644
+index c6bfb349..89b08e1 100644
--- a/drivers/remoteproc/remoteproc_core.c
+++ b/drivers/remoteproc/remoteproc_core.c
-@@ -329,9 +329,10 @@ void rproc_free_vring(struct rproc_vring *rvring)
+@@ -323,9 +323,10 @@ void rproc_free_vring(struct rproc_vring *rvring)
*
* Returns 0 on success, or an appropriate error code otherwise
*/
-static int rproc_handle_vdev(struct rproc *rproc, struct fw_rsc_vdev *rsc,
+static int rproc_handle_vdev(struct rproc *rproc, void *_rsc,
- int offset, int avail)
+ int offset, int avail)
{
+ struct fw_rsc_vdev *rsc = _rsc;
struct device *dev = &rproc->dev;
struct rproc_vdev *rvdev;
int i, ret;
-@@ -406,9 +407,10 @@ free_rvdev:
+@@ -400,9 +401,10 @@ static int rproc_handle_vdev(struct rproc *rproc, struct fw_rsc_vdev *rsc,
*
* Returns 0 on success, or an appropriate error code otherwise
*/
-static int rproc_handle_trace(struct rproc *rproc, struct fw_rsc_trace *rsc,
+static int rproc_handle_trace(struct rproc *rproc, void *_rsc,
- int offset, int avail)
+ int offset, int avail)
{
+ struct fw_rsc_trace *rsc = _rsc;
struct rproc_mem_entry *trace;
struct device *dev = &rproc->dev;
void *ptr;
-@@ -486,9 +488,10 @@ static int rproc_handle_trace(struct rproc *rproc, struct fw_rsc_trace *rsc,
+@@ -480,9 +482,10 @@ static int rproc_handle_trace(struct rproc *rproc, struct fw_rsc_trace *rsc,
* and not allow firmwares to request access to physical addresses that
* are outside those ranges.
*/
-static int rproc_handle_devmem(struct rproc *rproc, struct fw_rsc_devmem *rsc,
+static int rproc_handle_devmem(struct rproc *rproc, void *_rsc,
- int offset, int avail)
+ int offset, int avail)
{
+ struct fw_rsc_devmem *rsc = _rsc;
struct rproc_mem_entry *mapping;
struct device *dev = &rproc->dev;
int ret;
-@@ -558,10 +561,11 @@ out:
+@@ -552,9 +555,10 @@ static int rproc_handle_devmem(struct rproc *rproc, struct fw_rsc_devmem *rsc,
* pressure is important; it may have a substantial impact on performance.
*/
static int rproc_handle_carveout(struct rproc *rproc,
-- struct fw_rsc_carveout *rsc,
-+ void *_rsc,
- int offset, int avail)
-
+- struct fw_rsc_carveout *rsc,
++ void *_rsc,
+ int offset, int avail)
{
+ struct fw_rsc_carveout *rsc = _rsc;
struct rproc_mem_entry *carveout, *mapping;
struct device *dev = &rproc->dev;
dma_addr_t dma;
-@@ -680,9 +684,11 @@ free_carv:
+@@ -673,9 +677,11 @@ static int rproc_handle_carveout(struct rproc *rproc,
return ret;
}
@@ -72634,17 +76544,18 @@ index fe0539e..247590f 100644
/* Summarize the number of notification IDs */
rproc->max_notifyid += rsc->num_of_vrings;
-@@ -694,18 +700,18 @@ static int rproc_count_vrings(struct rproc *rproc, struct fw_rsc_vdev *rsc,
+@@ -687,14 +693,14 @@ static int rproc_count_vrings(struct rproc *rproc, struct fw_rsc_vdev *rsc,
* enum fw_resource_type.
*/
static rproc_handle_resource_t rproc_loading_handlers[RSC_LAST] = {
- [RSC_CARVEOUT] = (rproc_handle_resource_t)rproc_handle_carveout,
- [RSC_DEVMEM] = (rproc_handle_resource_t)rproc_handle_devmem,
- [RSC_TRACE] = (rproc_handle_resource_t)rproc_handle_trace,
+- [RSC_VDEV] = (rproc_handle_resource_t)rproc_count_vrings,
+ [RSC_CARVEOUT] = rproc_handle_carveout,
+ [RSC_DEVMEM] = rproc_handle_devmem,
+ [RSC_TRACE] = rproc_handle_trace,
- [RSC_VDEV] = NULL, /* VDEVs were handled upon registrarion */
++ [RSC_VDEV] = rproc_count_vrings,
};
static rproc_handle_resource_t rproc_vdev_handler[RSC_LAST] = {
@@ -72652,11 +76563,6 @@ index fe0539e..247590f 100644
+ [RSC_VDEV] = rproc_handle_vdev,
};
- static rproc_handle_resource_t rproc_count_vrings_handler[RSC_LAST] = {
-- [RSC_VDEV] = (rproc_handle_resource_t)rproc_count_vrings,
-+ [RSC_VDEV] = rproc_count_vrings,
- };
-
/* handle firmware resource entries before booting the remote processor */
diff --git a/drivers/rtc/rtc-armada38x.c b/drivers/rtc/rtc-armada38x.c
index 9a3f2a6..c19b00a 100644
@@ -72684,11 +76590,11 @@ index 9a3f2a6..c19b00a 100644
platform_set_drvdata(pdev, rtc);
if (rtc->irq != -1)
diff --git a/drivers/rtc/rtc-cmos.c b/drivers/rtc/rtc-cmos.c
-index 43745ca..9eb24ff 100644
+index 7030d7c..eafd7ef3 100644
--- a/drivers/rtc/rtc-cmos.c
+++ b/drivers/rtc/rtc-cmos.c
-@@ -732,7 +732,9 @@ cmos_do_probe(struct device *dev, struct resource *ports, int rtc_irq)
- hpet_rtc_timer_init();
+@@ -736,7 +736,9 @@ cmos_do_probe(struct device *dev, struct resource *ports, int rtc_irq)
+ }
/* export at least the first block of NVRAM */
- nvram.size = address_space - NVRAM_OFFSET;
@@ -72720,7 +76626,7 @@ index a6d9434..dc26b71 100644
case RTC_PIE_ON:
diff --git a/drivers/rtc/rtc-ds1307.c b/drivers/rtc/rtc-ds1307.c
-index 8e1c5cb..6fe95b9 100644
+index 4e31036..4cfe2af 100644
--- a/drivers/rtc/rtc-ds1307.c
+++ b/drivers/rtc/rtc-ds1307.c
@@ -111,7 +111,7 @@ struct ds1307 {
@@ -72786,12 +76692,12 @@ index 1f9f7b4..6f87883 100644
}
diff --git a/drivers/rtc/rtc-rv8803.c b/drivers/rtc/rtc-rv8803.c
-index 9a2f6a9..da6bfcb 100644
+index f9277e5..a1296a3 100644
--- a/drivers/rtc/rtc-rv8803.c
+++ b/drivers/rtc/rtc-rv8803.c
-@@ -497,6 +497,15 @@ static struct rtc_class_ops rv8803_rtc_ops = {
- .ioctl = rv8803_ioctl,
- };
+@@ -536,6 +536,15 @@ static int rx8900_trickle_charger_init(struct rv8803_data *rv8803)
+ flags);
+ }
+static struct rtc_class_ops rv8803_rtc_alarm_ops = {
+ .read_time = rv8803_get_time,
@@ -72805,7 +76711,7 @@ index 9a2f6a9..da6bfcb 100644
static int rv8803_probe(struct i2c_client *client,
const struct i2c_device_id *id)
{
-@@ -540,15 +549,11 @@ static int rv8803_probe(struct i2c_client *client,
+@@ -580,15 +589,11 @@ static int rv8803_probe(struct i2c_client *client,
if (err) {
dev_warn(&client->dev, "unable to request IRQ, alarms disabled\n");
client->irq = 0;
@@ -72858,6 +76764,19 @@ index 3a2da4c..1d1d4b1 100644
}
rtc = devm_rtc_device_register(&plat_dev->dev, "test",
+diff --git a/drivers/s390/char/tty3270.c b/drivers/s390/char/tty3270.c
+index 272cb6c..43eaab9 100644
+--- a/drivers/s390/char/tty3270.c
++++ b/drivers/s390/char/tty3270.c
+@@ -1035,7 +1035,7 @@ tty3270_open(struct tty_struct *tty, struct file *filp)
+ struct tty3270 *tp = tty->driver_data;
+ struct tty_port *port = &tp->port;
+
+- port->count++;
++ atomic_inc(&port->count);
+ tty_port_tty_set(port, tty);
+ return 0;
+ }
diff --git a/drivers/scsi/aacraid/aachba.c b/drivers/scsi/aacraid/aachba.c
index 6678d1f..0293b70 100644
--- a/drivers/scsi/aacraid/aachba.c
@@ -72943,11 +76862,11 @@ index 109e2c9..7d3c9b5 100644
int enint_coal;
diff --git a/drivers/scsi/be2iscsi/be_main.c b/drivers/scsi/be2iscsi/be_main.c
-index f05e773..b48c418 100644
+index d9239c2..dc556c3 100644
--- a/drivers/scsi/be2iscsi/be_main.c
+++ b/drivers/scsi/be2iscsi/be_main.c
-@@ -5465,7 +5465,7 @@ beiscsi_hw_health_check(struct work_struct *work)
-
+@@ -5547,7 +5547,7 @@ static void beiscsi_recover_port(struct work_struct *work)
+ }
static pci_ers_result_t beiscsi_eeh_err_detected(struct pci_dev *pdev,
- pci_channel_state_t state)
@@ -73403,7 +77322,7 @@ index 2e3b19e..7a9b729 100644
attr->rec_support = itnim->rec_support;
attr->conf_comp = itnim->conf_comp;
diff --git a/drivers/scsi/bfa/bfa_fcs_lport.c b/drivers/scsi/bfa/bfa_fcs_lport.c
-index 7733ad5..11f32d1 100644
+index 4ddda72..ccf40a3 100644
--- a/drivers/scsi/bfa/bfa_fcs_lport.c
+++ b/drivers/scsi/bfa/bfa_fcs_lport.c
@@ -90,15 +90,26 @@ static struct {
@@ -74233,7 +78152,7 @@ index e9c3b04..4ba3a59 100644
int ret = 0;
diff --git a/drivers/scsi/csiostor/csio_scsi.c b/drivers/scsi/csiostor/csio_scsi.c
-index c2a6f9f..5a37cc4 100644
+index 89a52b9..0262e39 100644
--- a/drivers/scsi/csiostor/csio_scsi.c
+++ b/drivers/scsi/csiostor/csio_scsi.c
@@ -65,12 +65,12 @@ static int csio_ddp_descs = 128;
@@ -74329,7 +78248,7 @@ index c2a6f9f..5a37cc4 100644
case CSIO_SCSIE_ABORT:
case CSIO_SCSIE_CLOSE:
diff --git a/drivers/scsi/esas2r/esas2r_init.c b/drivers/scsi/esas2r/esas2r_init.c
-index 78ce4d61..b3f6ff60b 100644
+index d6e53ae..6432a50 100644
--- a/drivers/scsi/esas2r/esas2r_init.c
+++ b/drivers/scsi/esas2r/esas2r_init.c
@@ -237,7 +237,7 @@ static void esas2r_claim_interrupts(struct esas2r_adapter *a)
@@ -74370,7 +78289,7 @@ index 7b6397b..75b9d23 100644
const char *format,
...);
diff --git a/drivers/scsi/esas2r/esas2r_main.c b/drivers/scsi/esas2r/esas2r_main.c
-index 2aca4d1..cdee863 100644
+index 5092c82..072d07b 100644
--- a/drivers/scsi/esas2r/esas2r_main.c
+++ b/drivers/scsi/esas2r/esas2r_main.c
@@ -198,7 +198,7 @@ static ssize_t write_hw(struct file *file, struct kobject *kobj,
@@ -74382,7 +78301,7 @@ index 2aca4d1..cdee863 100644
sizeof(struct atto_ioctl));
return -ENOMEM;
}
-@@ -1186,7 +1186,7 @@ retry:
+@@ -1186,7 +1186,7 @@ static int esas2r_dev_targ_reset(struct scsi_cmnd *cmd, bool target_reset)
} else {
esas2r_log(ESAS2R_LOG_CRIT,
"unable to allocate a request for a "
@@ -74436,7 +78355,7 @@ index 0675fd1..bbebe90 100644
error = bus_register(&fcoe_bus_type);
if (error)
diff --git a/drivers/scsi/fcoe/fcoe_transport.c b/drivers/scsi/fcoe/fcoe_transport.c
-index 7028dd3..7392dc6 100644
+index 375c536..618843b 100644
--- a/drivers/scsi/fcoe/fcoe_transport.c
+++ b/drivers/scsi/fcoe/fcoe_transport.c
@@ -32,13 +32,13 @@ MODULE_AUTHOR("Open-FCoE.org");
@@ -74457,7 +78376,7 @@ index 7028dd3..7392dc6 100644
static int libfcoe_device_notification(struct notifier_block *notifier,
ulong event, void *ptr);
-@@ -846,7 +846,7 @@ EXPORT_SYMBOL(fcoe_ctlr_destroy_store);
+@@ -865,7 +865,7 @@ EXPORT_SYMBOL(fcoe_ctlr_destroy_store);
*
* Returns: 0 for success
*/
@@ -74466,7 +78385,7 @@ index 7028dd3..7392dc6 100644
{
int rc = -ENODEV;
struct net_device *netdev = NULL;
-@@ -911,7 +911,7 @@ out_nodev:
+@@ -930,7 +930,7 @@ static int fcoe_transport_create(const char *buffer, struct kernel_param *kp)
*
* Returns: 0 for success
*/
@@ -74475,7 +78394,7 @@ index 7028dd3..7392dc6 100644
{
int rc = -ENODEV;
struct net_device *netdev = NULL;
-@@ -955,7 +955,7 @@ out_nodev:
+@@ -974,7 +974,7 @@ static int fcoe_transport_destroy(const char *buffer, struct kernel_param *kp)
*
* Returns: 0 for success
*/
@@ -74484,7 +78403,7 @@ index 7028dd3..7392dc6 100644
{
int rc = -ENODEV;
struct net_device *netdev = NULL;
-@@ -989,7 +989,7 @@ out_nodev:
+@@ -1008,7 +1008,7 @@ static int fcoe_transport_disable(const char *buffer, struct kernel_param *kp)
*
* Returns: 0 for success
*/
@@ -74494,10 +78413,10 @@ index 7028dd3..7392dc6 100644
int rc = -ENODEV;
struct net_device *netdev = NULL;
diff --git a/drivers/scsi/hpsa.c b/drivers/scsi/hpsa.c
-index 5138a84..de71237 100644
+index a1d6ab7..42c2b5e 100644
--- a/drivers/scsi/hpsa.c
+++ b/drivers/scsi/hpsa.c
-@@ -942,10 +942,10 @@ static inline u32 next_command(struct ctlr_info *h, u8 q)
+@@ -944,10 +944,10 @@ static inline u32 next_command(struct ctlr_info *h, u8 q)
struct reply_queue_buffer *rq = &h->reply_queue[q];
if (h->transMethod & CFGTBL_Trans_io_accel1)
@@ -74510,7 +78429,7 @@ index 5138a84..de71237 100644
if ((rq->head[rq->current_entry] & 1) == rq->wraparound) {
a = rq->head[rq->current_entry];
-@@ -1127,7 +1127,7 @@ static void __enqueue_cmd_and_start_io(struct ctlr_info *h,
+@@ -1129,7 +1129,7 @@ static void __enqueue_cmd_and_start_io(struct ctlr_info *h,
break;
default:
set_performant_mode(h, c, reply_queue);
@@ -74519,7 +78438,7 @@ index 5138a84..de71237 100644
}
}
-@@ -7026,17 +7026,17 @@ static void __iomem *remap_pci_mem(ulong base, ulong size)
+@@ -7111,17 +7111,17 @@ static void __iomem *remap_pci_mem(ulong base, ulong size)
static inline unsigned long get_next_completion(struct ctlr_info *h, u8 q)
{
@@ -74540,7 +78459,7 @@ index 5138a84..de71237 100644
(h->interrupts_enabled == 0);
}
-@@ -7964,7 +7964,7 @@ static int hpsa_pci_init(struct ctlr_info *h)
+@@ -8049,7 +8049,7 @@ static int hpsa_pci_init(struct ctlr_info *h)
if (prod_index < 0)
return prod_index;
h->product_name = products[prod_index].product_name;
@@ -74549,7 +78468,7 @@ index 5138a84..de71237 100644
h->needs_abort_tags_swizzled =
ctlr_needs_abort_tags_swizzled(h->board_id);
-@@ -8363,7 +8363,7 @@ static void controller_lockup_detected(struct ctlr_info *h)
+@@ -8448,7 +8448,7 @@ static void controller_lockup_detected(struct ctlr_info *h)
unsigned long flags;
u32 lockup_detected;
@@ -74558,7 +78477,7 @@ index 5138a84..de71237 100644
spin_lock_irqsave(&h->lock, flags);
lockup_detected = readl(h->vaddr + SA5_SCRATCHPAD_OFFSET);
if (!lockup_detected) {
-@@ -8701,7 +8701,7 @@ reinit_after_soft_reset:
+@@ -8786,7 +8786,7 @@ static int hpsa_init_one(struct pci_dev *pdev, const struct pci_device_id *ent)
}
/* make sure the board interrupts are off */
@@ -74567,7 +78486,7 @@ index 5138a84..de71237 100644
rc = hpsa_request_irqs(h, do_hpsa_intr_msi, do_hpsa_intr_intx);
if (rc)
-@@ -8754,7 +8754,7 @@ reinit_after_soft_reset:
+@@ -8839,7 +8839,7 @@ static int hpsa_init_one(struct pci_dev *pdev, const struct pci_device_id *ent)
* fake ones to scoop up any residual completions.
*/
spin_lock_irqsave(&h->lock, flags);
@@ -74576,7 +78495,7 @@ index 5138a84..de71237 100644
spin_unlock_irqrestore(&h->lock, flags);
hpsa_free_irqs(h);
rc = hpsa_request_irqs(h, hpsa_msix_discard_completions,
-@@ -8784,9 +8784,9 @@ reinit_after_soft_reset:
+@@ -8869,9 +8869,9 @@ static int hpsa_init_one(struct pci_dev *pdev, const struct pci_device_id *ent)
dev_info(&h->pdev->dev, "Board READY.\n");
dev_info(&h->pdev->dev,
"Waiting for stale completions to drain.\n");
@@ -74588,7 +78507,7 @@ index 5138a84..de71237 100644
rc = controller_reset_failed(h->cfgtable);
if (rc)
-@@ -8813,7 +8813,7 @@ reinit_after_soft_reset:
+@@ -8898,7 +8898,7 @@ static int hpsa_init_one(struct pci_dev *pdev, const struct pci_device_id *ent)
/* Turn the interrupts on so we can service requests */
@@ -74597,7 +78516,7 @@ index 5138a84..de71237 100644
hpsa_hba_inquiry(h);
-@@ -8839,7 +8839,7 @@ reinit_after_soft_reset:
+@@ -8924,7 +8924,7 @@ static int hpsa_init_one(struct pci_dev *pdev, const struct pci_device_id *ent)
clean7: /* perf, sg, cmd, irq, shost, pci, lu, aer/h */
hpsa_free_performant_mode(h);
@@ -74606,7 +78525,7 @@ index 5138a84..de71237 100644
clean6: /* sg, cmd, irq, pci, lockup, wq/aer/h */
hpsa_free_sg_chain_blocks(h);
clean5: /* cmd, irq, shost, pci, lu, aer/h */
-@@ -8974,7 +8974,7 @@ static void hpsa_shutdown(struct pci_dev *pdev)
+@@ -9059,7 +9059,7 @@ static void hpsa_shutdown(struct pci_dev *pdev)
* To write all data in the battery backed cache to disks
*/
hpsa_flush_cache(h);
@@ -74615,7 +78534,7 @@ index 5138a84..de71237 100644
hpsa_free_irqs(h); /* init_one 4 */
hpsa_disable_interrupt_mode(h); /* pci_init 2 */
}
-@@ -9116,7 +9116,7 @@ static int hpsa_enter_performant_mode(struct ctlr_info *h, u32 trans_support)
+@@ -9201,7 +9201,7 @@ static int hpsa_enter_performant_mode(struct ctlr_info *h, u32 trans_support)
CFGTBL_Trans_enable_directed_msix |
(trans_support & (CFGTBL_Trans_io_accel1 |
CFGTBL_Trans_io_accel2));
@@ -74624,7 +78543,7 @@ index 5138a84..de71237 100644
/* This is a bit complicated. There are 8 registers on
* the controller which we write to to tell it 8 different
-@@ -9158,7 +9158,7 @@ static int hpsa_enter_performant_mode(struct ctlr_info *h, u32 trans_support)
+@@ -9243,7 +9243,7 @@ static int hpsa_enter_performant_mode(struct ctlr_info *h, u32 trans_support)
* perform the superfluous readl() after each command submission.
*/
if (trans_support & (CFGTBL_Trans_io_accel1 | CFGTBL_Trans_io_accel2))
@@ -74633,7 +78552,7 @@ index 5138a84..de71237 100644
/* Controller spec: zero out this buffer. */
for (i = 0; i < h->nreply_queues; i++)
-@@ -9188,12 +9188,12 @@ static int hpsa_enter_performant_mode(struct ctlr_info *h, u32 trans_support)
+@@ -9273,12 +9273,12 @@ static int hpsa_enter_performant_mode(struct ctlr_info *h, u32 trans_support)
* enable outbound interrupt coalescing in accelerator mode;
*/
if (trans_support & CFGTBL_Trans_io_accel1) {
@@ -74649,7 +78568,7 @@ index 5138a84..de71237 100644
writel(4, &h->cfgtable->HostWrite.CoalIntCount);
}
diff --git a/drivers/scsi/hpsa.h b/drivers/scsi/hpsa.h
-index 9d45dde..622095a 100644
+index 9ea162de..40c2e1b 100644
--- a/drivers/scsi/hpsa.h
+++ b/drivers/scsi/hpsa.h
@@ -180,7 +180,7 @@ struct ctlr_info {
@@ -74661,7 +78580,7 @@ index 9d45dde..622095a 100644
/* queue and queue Info */
unsigned int Qdepth;
-@@ -581,38 +581,38 @@ static unsigned long SA5_ioaccel_mode1_completed(struct ctlr_info *h, u8 q)
+@@ -580,38 +580,38 @@ static unsigned long SA5_ioaccel_mode1_completed(struct ctlr_info *h, u8 q)
}
static struct access_method SA5_access = {
@@ -74753,7 +78672,7 @@ index 4d1c511..d5744cb 100644
wait_queue_head_t reset_wq;
diff --git a/drivers/scsi/ipr.c b/drivers/scsi/ipr.c
-index 17d04c7..17a2948 100644
+index 5324741..0d62bad 100644
--- a/drivers/scsi/ipr.c
+++ b/drivers/scsi/ipr.c
@@ -948,7 +948,7 @@ static void ipr_send_command(struct ipr_cmnd *ipr_cmd)
@@ -74792,7 +78711,7 @@ index 17d04c7..17a2948 100644
hrrq = (hrrq % (ioa_cfg->hrrq_num - 1)) + 1;
}
return hrrq;
-@@ -2601,8 +2601,9 @@ static void ipr_process_error(struct ipr_cmnd *ipr_cmd)
+@@ -2622,8 +2622,9 @@ static void ipr_process_error(struct ipr_cmnd *ipr_cmd)
* Return value:
* none
**/
@@ -74803,7 +78722,7 @@ index 17d04c7..17a2948 100644
unsigned long lock_flags = 0;
struct ipr_ioa_cfg *ioa_cfg = ipr_cmd->ioa_cfg;
-@@ -2633,8 +2634,9 @@ static void ipr_timeout(struct ipr_cmnd *ipr_cmd)
+@@ -2654,8 +2655,9 @@ static void ipr_timeout(struct ipr_cmnd *ipr_cmd)
* Return value:
* none
**/
@@ -74814,7 +78733,7 @@ index 17d04c7..17a2948 100644
unsigned long lock_flags = 0;
struct ipr_ioa_cfg *ioa_cfg = ipr_cmd->ioa_cfg;
-@@ -5269,8 +5271,9 @@ static void ipr_bus_reset_done(struct ipr_cmnd *ipr_cmd)
+@@ -5348,8 +5350,9 @@ static void ipr_bus_reset_done(struct ipr_cmnd *ipr_cmd)
* Return value:
* none
**/
@@ -74825,7 +78744,7 @@ index 17d04c7..17a2948 100644
struct ipr_cmnd *reset_cmd;
struct ipr_ioa_cfg *ioa_cfg = ipr_cmd->ioa_cfg;
struct ipr_cmd_pkt *cmd_pkt;
-@@ -8042,8 +8045,9 @@ static int ipr_ioafp_identify_hrrq(struct ipr_cmnd *ipr_cmd)
+@@ -8125,8 +8128,9 @@ static int ipr_ioafp_identify_hrrq(struct ipr_cmnd *ipr_cmd)
* Return value:
* none
**/
@@ -74836,7 +78755,7 @@ index 17d04c7..17a2948 100644
struct ipr_ioa_cfg *ioa_cfg = ipr_cmd->ioa_cfg;
unsigned long lock_flags = 0;
-@@ -8081,7 +8085,7 @@ static void ipr_reset_start_timer(struct ipr_cmnd *ipr_cmd,
+@@ -8164,7 +8168,7 @@ static void ipr_reset_start_timer(struct ipr_cmnd *ipr_cmd,
ipr_cmd->timer.data = (unsigned long) ipr_cmd;
ipr_cmd->timer.expires = jiffies + timeout;
@@ -74845,7 +78764,7 @@ index 17d04c7..17a2948 100644
add_timer(&ipr_cmd->timer);
}
-@@ -8111,9 +8115,9 @@ static void ipr_init_ioa_mem(struct ipr_ioa_cfg *ioa_cfg)
+@@ -8194,9 +8198,9 @@ static void ipr_init_ioa_mem(struct ipr_ioa_cfg *ioa_cfg)
ioa_cfg->identify_hrrq_index = 0;
if (ioa_cfg->hrrq_num == 1)
@@ -74857,7 +78776,7 @@ index 17d04c7..17a2948 100644
/* Zero out config table */
memset(ioa_cfg->u.cfg_table, 0, ioa_cfg->cfg_table_size);
-@@ -8167,7 +8171,7 @@ static int ipr_reset_next_stage(struct ipr_cmnd *ipr_cmd)
+@@ -8250,7 +8254,7 @@ static int ipr_reset_next_stage(struct ipr_cmnd *ipr_cmd)
ipr_cmd->timer.data = (unsigned long) ipr_cmd;
ipr_cmd->timer.expires = jiffies + stage_time * HZ;
@@ -74866,7 +78785,7 @@ index 17d04c7..17a2948 100644
ipr_cmd->done = ipr_reset_ioa_job;
add_timer(&ipr_cmd->timer);
-@@ -8239,7 +8243,7 @@ static int ipr_reset_enable_ioa(struct ipr_cmnd *ipr_cmd)
+@@ -8322,7 +8326,7 @@ static int ipr_reset_enable_ioa(struct ipr_cmnd *ipr_cmd)
ipr_cmd->timer.data = (unsigned long) ipr_cmd;
ipr_cmd->timer.expires = jiffies + (ioa_cfg->transop_timeout * HZ);
@@ -74875,7 +78794,7 @@ index 17d04c7..17a2948 100644
ipr_cmd->done = ipr_reset_ioa_job;
add_timer(&ipr_cmd->timer);
list_add_tail(&ipr_cmd->queue, &ipr_cmd->hrrq->hrrq_pending_q);
-@@ -9227,7 +9231,7 @@ static void ipr_pci_perm_failure(struct pci_dev *pdev)
+@@ -9310,7 +9314,7 @@ static void ipr_pci_perm_failure(struct pci_dev *pdev)
* PCI_ERS_RESULT_NEED_RESET or PCI_ERS_RESULT_DISCONNECT
*/
static pci_ers_result_t ipr_pci_error_detected(struct pci_dev *pdev,
@@ -74885,10 +78804,10 @@ index 17d04c7..17a2948 100644
switch (state) {
case pci_channel_io_frozen:
diff --git a/drivers/scsi/ipr.h b/drivers/scsi/ipr.h
-index cdb5196..f7e8eff 100644
+index 8995053..454107d 100644
--- a/drivers/scsi/ipr.h
+++ b/drivers/scsi/ipr.h
-@@ -1539,7 +1539,7 @@ struct ipr_ioa_cfg {
+@@ -1543,7 +1543,7 @@ struct ipr_ioa_cfg {
struct ipr_hrr_queue hrrq[IPR_MAX_HRRQ_NUM];
u32 hrrq_num;
@@ -74898,7 +78817,7 @@ index cdb5196..f7e8eff 100644
struct ipr_bus_attributes bus_attr[IPR_MAX_NUM_BUSES];
diff --git a/drivers/scsi/libfc/fc_exch.c b/drivers/scsi/libfc/fc_exch.c
-index e72673b..977ed14 100644
+index 16ca31a..f5adf48 100644
--- a/drivers/scsi/libfc/fc_exch.c
+++ b/drivers/scsi/libfc/fc_exch.c
@@ -101,12 +101,12 @@ struct fc_exch_mgr {
@@ -74929,7 +78848,7 @@ index e72673b..977ed14 100644
goto out;
}
memset(ep, 0, sizeof(*ep));
-@@ -872,7 +872,7 @@ out:
+@@ -872,7 +872,7 @@ static struct fc_exch *fc_exch_em_alloc(struct fc_lport *lport,
return ep;
err:
spin_unlock_bh(&pool->lock);
@@ -75022,7 +78941,7 @@ index e72673b..977ed14 100644
fc_frame_free(fp);
}
-@@ -2269,13 +2269,13 @@ void fc_exch_update_stats(struct fc_lport *lport)
+@@ -2268,13 +2268,13 @@ void fc_exch_update_stats(struct fc_lport *lport)
list_for_each_entry(ema, &lport->ema_list, ema_list) {
mp = ema->mp;
@@ -75246,10 +79165,10 @@ index 3aaea71..6cd098b 100644
u16 max_scsi_cmds;
u16 ldio_threshold;
diff --git a/drivers/scsi/mpt3sas/mpt3sas_base.c b/drivers/scsi/mpt3sas/mpt3sas_base.c
-index 750f82c..956cdf0 100644
+index a1a5ceb..8e83e34 100644
--- a/drivers/scsi/mpt3sas/mpt3sas_base.c
+++ b/drivers/scsi/mpt3sas/mpt3sas_base.c
-@@ -105,7 +105,7 @@ _base_get_ioc_facts(struct MPT3SAS_ADAPTER *ioc, int sleep_flag);
+@@ -105,7 +105,7 @@ _base_get_ioc_facts(struct MPT3SAS_ADAPTER *ioc);
*
*/
static int
@@ -75259,7 +79178,7 @@ index 750f82c..956cdf0 100644
int ret = param_set_int(val, kp);
struct MPT3SAS_ADAPTER *ioc;
diff --git a/drivers/scsi/mpt3sas/mpt3sas_scsih.c b/drivers/scsi/mpt3sas/mpt3sas_scsih.c
-index 58e6029..03e41fa 100644
+index f84a608..b6e984c 100644
--- a/drivers/scsi/mpt3sas/mpt3sas_scsih.c
+++ b/drivers/scsi/mpt3sas/mpt3sas_scsih.c
@@ -280,7 +280,7 @@ struct _scsi_io_transfer {
@@ -75271,17 +79190,17 @@ index 58e6029..03e41fa 100644
{
int ret = param_set_int(val, kp);
struct MPT3SAS_ADAPTER *ioc;
-@@ -8950,7 +8950,7 @@ scsih_resume(struct pci_dev *pdev)
+@@ -8952,7 +8952,7 @@ scsih_resume(struct pci_dev *pdev)
* PCI_ERS_RESULT_NEED_RESET or PCI_ERS_RESULT_DISCONNECT
*/
- pci_ers_result_t
+ static pci_ers_result_t
-scsih_pci_error_detected(struct pci_dev *pdev, pci_channel_state_t state)
+scsih_pci_error_detected(struct pci_dev *pdev, enum pci_channel_state state)
{
struct Scsi_Host *shost = pci_get_drvdata(pdev);
struct MPT3SAS_ADAPTER *ioc = shost_priv(shost);
diff --git a/drivers/scsi/pmcraid.c b/drivers/scsi/pmcraid.c
-index b2a88200..d66f0cc 100644
+index 68a5c34..c88d66b 100644
--- a/drivers/scsi/pmcraid.c
+++ b/drivers/scsi/pmcraid.c
@@ -201,8 +201,8 @@ static int pmcraid_slave_alloc(struct scsi_device *scsi_dev)
@@ -75535,7 +79454,7 @@ index 6ca0081..fbb9efd 100644
extern void qla2x00_free_sysfs_attr(scsi_qla_host_t *, bool);
extern void qla2x00_init_host_attr(scsi_qla_host_t *);
diff --git a/drivers/scsi/qla2xxx/qla_os.c b/drivers/scsi/qla2xxx/qla_os.c
-index e46e2c5..c3cea11 100644
+index 078d797..1735786 100644
--- a/drivers/scsi/qla2xxx/qla_os.c
+++ b/drivers/scsi/qla2xxx/qla_os.c
@@ -301,12 +301,12 @@ struct scsi_transport_template *qla2xxx_transport_vport_template = NULL;
@@ -75553,7 +79472,7 @@ index e46e2c5..c3cea11 100644
add_timer(&vha->timer);
vha->timer_active = 1;
}
-@@ -1510,8 +1510,10 @@ qla2x00_config_dma_addressing(struct qla_hw_data *ha)
+@@ -1529,8 +1529,10 @@ qla2x00_config_dma_addressing(struct qla_hw_data *ha)
!pci_set_consistent_dma_mask(ha->pdev, DMA_BIT_MASK(64))) {
/* Ok, a 64bit DMA mask is applicable. */
ha->flags.enable_64bit_addressing = 1;
@@ -75566,7 +79485,7 @@ index e46e2c5..c3cea11 100644
return;
}
}
-@@ -5383,8 +5385,9 @@ qla2x00_rst_aen(scsi_qla_host_t *vha)
+@@ -5410,8 +5412,9 @@ qla2x00_rst_aen(scsi_qla_host_t *vha)
* Context: Interrupt
***************************************************************************/
void
@@ -75577,7 +79496,7 @@ index e46e2c5..c3cea11 100644
unsigned long cpu_flags = 0;
int start_dpc = 0;
int index;
-@@ -5646,7 +5649,7 @@ qla2x00_release_firmware(void)
+@@ -5673,7 +5676,7 @@ qla2x00_release_firmware(void)
}
static pci_ers_result_t
@@ -75619,7 +79538,7 @@ index bff9689..8caa187 100644
rc = qla24xx_get_loop_id(vha, s_id, &loop_id);
if (rc != 0) {
-@@ -5864,12 +5865,12 @@ retry:
+@@ -5864,12 +5865,12 @@ static struct qla_tgt_sess *qlt_make_local_sess(struct scsi_qla_host *vha,
}
if (global_resets !=
@@ -75683,7 +79602,7 @@ diff --git a/drivers/scsi/qla4xxx/ql4_os.c b/drivers/scsi/qla4xxx/ql4_os.c
index 01c3610..f287da9 100644
--- a/drivers/scsi/qla4xxx/ql4_os.c
+++ b/drivers/scsi/qla4xxx/ql4_os.c
-@@ -3956,7 +3956,7 @@ exit_session_conn_param:
+@@ -3956,7 +3956,7 @@ void qla4xxx_update_session_conn_param(struct scsi_qla_host *ha,
* Timer routines
*/
@@ -75736,7 +79655,7 @@ index 01c3610..f287da9 100644
def_timeout = le16_to_cpu(ddb_entry->fw_ddb_entry.def_timeout);
ddb_entry->default_relogin_timeout =
(def_timeout > LOGIN_TOV) && (def_timeout < LOGIN_TOV * 10) ?
-@@ -9557,7 +9558,7 @@ exit_host_reset:
+@@ -9557,7 +9558,7 @@ static int qla4xxx_host_reset(struct Scsi_Host *shost, int reset_type)
* RECOVERED - driver's pci_resume()
*/
static pci_ers_result_t
@@ -75759,10 +79678,10 @@ index 1deb6ad..3057db5 100644
if (drv->done)
good_bytes = drv->done(cmd);
diff --git a/drivers/scsi/scsi_debug.c b/drivers/scsi/scsi_debug.c
-index 05e892a..3fffafa 100644
+index cf04a36..54dd630 100644
--- a/drivers/scsi/scsi_debug.c
+++ b/drivers/scsi/scsi_debug.c
-@@ -289,10 +289,10 @@ struct sdebug_queue {
+@@ -290,10 +290,10 @@ struct sdebug_queue {
atomic_t blocked; /* to temporarily stop more being queued */
};
@@ -75777,7 +79696,7 @@ index 05e892a..3fffafa 100644
struct opcode_info_t {
u8 num_attached; /* 0 if this is it (i.e. a leaf); use 0xff */
-@@ -3492,9 +3492,9 @@ static void sdebug_q_cmd_complete(struct sdebug_defer *sd_dp)
+@@ -3493,9 +3493,9 @@ static void sdebug_q_cmd_complete(struct sdebug_defer *sd_dp)
qc_idx = sd_dp->qc_idx;
sqp = sdebug_q_arr + sd_dp->sqa_idx;
if (sdebug_statistics) {
@@ -75789,7 +79708,7 @@ index 05e892a..3fffafa 100644
}
if (unlikely((qc_idx < 0) || (qc_idx >= SDEBUG_CANQUEUE))) {
pr_err("wild qc_idx=%d\n", qc_idx);
-@@ -3966,23 +3966,23 @@ static void tweak_cmnd_count(void)
+@@ -3967,23 +3967,23 @@ static void tweak_cmnd_count(void)
if (modulo < 2)
return;
block_unblock_all_queues(true);
@@ -75820,7 +79739,7 @@ index 05e892a..3fffafa 100644
return;
sqcp->inj_recovered = !!(SDEBUG_OPT_RECOVERED_ERR & sdebug_opts);
sqcp->inj_transport = !!(SDEBUG_OPT_TRANSPORT_ERR & sdebug_opts);
-@@ -4039,9 +4039,9 @@ static int schedule_resp(struct scsi_cmnd *cmnd, struct sdebug_dev_info *devip,
+@@ -4040,9 +4040,9 @@ static int schedule_resp(struct scsi_cmnd *cmnd, struct sdebug_dev_info *devip,
(SDEBUG_OPT_RARE_TSF & sdebug_opts) &&
(scsi_result == 0))) {
if ((num_in_q == (qdepth - 1)) &&
@@ -75832,7 +79751,7 @@ index 05e892a..3fffafa 100644
inject = 1;
scsi_result = device_qfull_result;
}
-@@ -4296,10 +4296,10 @@ static int scsi_debug_show_info(struct seq_file *m, struct Scsi_Host *host)
+@@ -4297,10 +4297,10 @@ static int scsi_debug_show_info(struct seq_file *m, struct Scsi_Host *host)
TICK_NSEC / 1000, "statistics", sdebug_statistics,
sdebug_mq_active);
seq_printf(m, "cmnd_count=%d, completions=%d, %s=%d, a_tsf=%d\n",
@@ -75866,7 +79785,7 @@ index 05e892a..3fffafa 100644
!(SDEBUG_OPT_NO_CDB_NOISE & sdebug_opts))) {
char b[120];
diff --git a/drivers/scsi/scsi_lib.c b/drivers/scsi/scsi_lib.c
-index c71344a..94f1f9e 100644
+index 2cca9cf..cbe4c6d 100644
--- a/drivers/scsi/scsi_lib.c
+++ b/drivers/scsi/scsi_lib.c
@@ -1513,7 +1513,7 @@ static void scsi_kill_request(struct request *req, struct request_queue *q)
@@ -76037,10 +79956,10 @@ index e3cd3ec..97ab643 100644
transport_setup_device(&rport->dev);
diff --git a/drivers/scsi/sd.c b/drivers/scsi/sd.c
-index d3e852a..5a04bed 100644
+index 51e5629..caef5f7 100644
--- a/drivers/scsi/sd.c
+++ b/drivers/scsi/sd.c
-@@ -112,7 +112,7 @@ static int sd_resume(struct device *);
+@@ -113,7 +113,7 @@ static int sd_resume(struct device *);
static void sd_rescan(struct device *);
static int sd_init_command(struct scsi_cmnd *SCpnt);
static void sd_uninit_command(struct scsi_cmnd *SCpnt);
@@ -76049,7 +79968,7 @@ index d3e852a..5a04bed 100644
static int sd_eh_action(struct scsi_cmnd *, int);
static void sd_read_capacity(struct scsi_disk *sdkp, unsigned char *buffer);
static void scsi_disk_release(struct device *cdev);
-@@ -1767,7 +1767,7 @@ static unsigned int sd_completed_bytes(struct scsi_cmnd *scmd)
+@@ -1768,7 +1768,7 @@ static unsigned int sd_completed_bytes(struct scsi_cmnd *scmd)
*
* Note: potentially run from within an ISR. Must not block.
**/
@@ -76058,7 +79977,7 @@ index d3e852a..5a04bed 100644
{
int result = SCpnt->result;
unsigned int good_bytes = result ? 0 : scsi_bufflen(SCpnt);
-@@ -3080,7 +3080,7 @@ static int sd_probe(struct device *dev)
+@@ -3081,7 +3081,7 @@ static int sd_probe(struct device *dev)
sdkp->disk = gd;
sdkp->index = index;
atomic_set(&sdkp->openers, 0);
@@ -76068,10 +79987,10 @@ index d3e852a..5a04bed 100644
if (!sdp->request_queue->rq_timeout) {
if (sdp->type != TYPE_MOD)
diff --git a/drivers/scsi/sg.c b/drivers/scsi/sg.c
-index a1c29b0..4740ad32 100644
+index dbe5b4b..1242bc3 100644
--- a/drivers/scsi/sg.c
+++ b/drivers/scsi/sg.c
-@@ -1093,7 +1093,7 @@ sg_ioctl(struct file *filp, unsigned int cmd_in, unsigned long arg)
+@@ -1083,7 +1083,7 @@ sg_ioctl(struct file *filp, unsigned int cmd_in, unsigned long arg)
sdp->disk->disk_name,
MKDEV(SCSI_GENERIC_MAJOR, sdp->index),
NULL,
@@ -76080,8 +79999,61 @@ index a1c29b0..4740ad32 100644
case BLKTRACESTART:
return blk_trace_startstop(sdp->device->request_queue, 1);
case BLKTRACESTOP:
+diff --git a/drivers/scsi/smartpqi/smartpqi.h b/drivers/scsi/smartpqi/smartpqi.h
+index 07b6444..b4d84e1 100644
+--- a/drivers/scsi/smartpqi/smartpqi.h
++++ b/drivers/scsi/smartpqi/smartpqi.h
+@@ -956,7 +956,7 @@ struct pqi_ctrl_info {
+ struct pqi_event pending_events[PQI_NUM_SUPPORTED_EVENTS];
+ struct work_struct event_work;
+
+- atomic_t num_interrupts;
++ atomic_unchecked_t num_interrupts;
+ int previous_num_interrupts;
+ unsigned int num_heartbeats_requested;
+ struct timer_list heartbeat_timer;
+diff --git a/drivers/scsi/smartpqi/smartpqi_init.c b/drivers/scsi/smartpqi/smartpqi_init.c
+index a535b26..d62e7f1 100644
+--- a/drivers/scsi/smartpqi/smartpqi_init.c
++++ b/drivers/scsi/smartpqi/smartpqi_init.c
+@@ -2727,7 +2727,7 @@ static void pqi_heartbeat_timer_handler(unsigned long data)
+ int num_interrupts;
+ struct pqi_ctrl_info *ctrl_info = (struct pqi_ctrl_info *)data;
+
+- num_interrupts = atomic_read(&ctrl_info->num_interrupts);
++ num_interrupts = atomic_read_unchecked(&ctrl_info->num_interrupts);
+
+ if (num_interrupts == ctrl_info->previous_num_interrupts) {
+ ctrl_info->num_heartbeats_requested++;
+@@ -2750,7 +2750,7 @@ static void pqi_heartbeat_timer_handler(unsigned long data)
+ static void pqi_start_heartbeat_timer(struct pqi_ctrl_info *ctrl_info)
+ {
+ ctrl_info->previous_num_interrupts =
+- atomic_read(&ctrl_info->num_interrupts);
++ atomic_read_unchecked(&ctrl_info->num_interrupts);
+
+ init_timer(&ctrl_info->heartbeat_timer);
+ ctrl_info->heartbeat_timer.expires =
+@@ -2877,7 +2877,7 @@ static irqreturn_t pqi_irq_handler(int irq, void *data)
+ num_responses_handled += pqi_process_event_intr(ctrl_info);
+
+ if (num_responses_handled)
+- atomic_inc(&ctrl_info->num_interrupts);
++ atomic_inc_unchecked(&ctrl_info->num_interrupts);
+
+ pqi_start_io(ctrl_info, queue_group, RAID_PATH, NULL);
+ pqi_start_io(ctrl_info, queue_group, AIO_PATH, NULL);
+@@ -5535,7 +5535,7 @@ static struct pqi_ctrl_info *pqi_alloc_ctrl_info(int numa_node)
+ spin_lock_init(&ctrl_info->scsi_device_list_lock);
+
+ INIT_WORK(&ctrl_info->event_work, pqi_event_worker);
+- atomic_set(&ctrl_info->num_interrupts, 0);
++ atomic_set_unchecked(&ctrl_info->num_interrupts, 0);
+
+ INIT_DELAYED_WORK(&ctrl_info->rescan_work, pqi_rescan_worker);
+ INIT_DELAYED_WORK(&ctrl_info->update_time_work, pqi_update_time_worker);
diff --git a/drivers/scsi/sr.c b/drivers/scsi/sr.c
-index ed17934..108678b 100644
+index bed2bbd..3abf75c 100644
--- a/drivers/scsi/sr.c
+++ b/drivers/scsi/sr.c
@@ -80,7 +80,7 @@ static DEFINE_MUTEX(sr_mutex);
@@ -76092,8 +80064,8 @@ index ed17934..108678b 100644
+static unsigned int sr_done(struct scsi_cmnd *);
static int sr_runtime_suspend(struct device *dev);
- static struct dev_pm_ops sr_pm_ops = {
-@@ -315,13 +315,13 @@ do_tur:
+ static const struct dev_pm_ops sr_pm_ops = {
+@@ -315,13 +315,13 @@ static unsigned int sr_check_events(struct cdrom_device_info *cdi,
* It will be notified on the end of a SCSI read / write, and will take one
* of several actions based on success or failure.
*/
@@ -76141,11 +80113,24 @@ index de2c1bf..60b8563 100644
.attr = { .name = "fuse", .mode = S_IRUGO, },
.read = fuse_read,
};
+diff --git a/drivers/spi/spi-bcm-qspi.h b/drivers/spi/spi-bcm-qspi.h
+index 7abfc75..1a20bae 100644
+--- a/drivers/spi/spi-bcm-qspi.h
++++ b/drivers/spi/spi-bcm-qspi.h
+@@ -67,7 +67,7 @@ struct bcm_qspi_soc_intc {
+ void (*bcm_qspi_int_set)(struct bcm_qspi_soc_intc *soc_intc, int type,
+ bool en);
+ u32 (*bcm_qspi_get_int_status)(struct bcm_qspi_soc_intc *soc_intc);
+-};
++} __no_const;
+
+ /* Read controller register*/
+ static inline u32 bcm_qspi_readl(bool be, void __iomem *addr)
diff --git a/drivers/spi/spi.c b/drivers/spi/spi.c
-index 935f1a5..3c4bf16 100644
+index 838783c..d657dae 100644
--- a/drivers/spi/spi.c
+++ b/drivers/spi/spi.c
-@@ -2984,7 +2984,7 @@ int spi_bus_unlock(struct spi_master *master)
+@@ -2995,7 +2995,7 @@ int spi_bus_unlock(struct spi_master *master)
EXPORT_SYMBOL_GPL(spi_bus_unlock);
/* portable code must never pass more than 32 bytes */
@@ -76155,7 +80140,7 @@ index 935f1a5..3c4bf16 100644
static u8 *buf;
diff --git a/drivers/staging/fbtft/fbtft-core.c b/drivers/staging/fbtft/fbtft-core.c
-index 4c281df..1960930 100644
+index 587f68a..1491e4f 100644
--- a/drivers/staging/fbtft/fbtft-core.c
+++ b/drivers/staging/fbtft/fbtft-core.c
@@ -649,7 +649,7 @@ struct fb_info *fbtft_framebuffer_alloc(struct fbtft_display *display,
@@ -76168,7 +80153,7 @@ index 4c281df..1960930 100644
u8 *vmem = NULL;
void *txbuf = NULL;
diff --git a/drivers/staging/fbtft/fbtft.h b/drivers/staging/fbtft/fbtft.h
-index d3bc394..7fa336d 100644
+index 89c4b5b..521d7e0 100644
--- a/drivers/staging/fbtft/fbtft.h
+++ b/drivers/staging/fbtft/fbtft.h
@@ -93,7 +93,7 @@ struct fbtft_ops {
@@ -76181,7 +80166,7 @@ index d3bc394..7fa336d 100644
/**
* struct fbtft_display - Describes the display properties
diff --git a/drivers/staging/gdm724x/gdm_lte.c b/drivers/staging/gdm724x/gdm_lte.c
-index bb55219..789b758 100644
+index e72dfa9..15c1dd1 100644
--- a/drivers/staging/gdm724x/gdm_lte.c
+++ b/drivers/staging/gdm724x/gdm_lte.c
@@ -410,7 +410,7 @@ static s32 gdm_lte_tx_nic_type(struct net_device *dev, struct sk_buff *skb)
@@ -76194,7 +80179,7 @@ index bb55219..789b758 100644
struct nic *nic = netdev_priv(dev);
u32 nic_type;
diff --git a/drivers/staging/gdm724x/gdm_tty.c b/drivers/staging/gdm724x/gdm_tty.c
-index eb7e252..b7bd5e5 100644
+index ae39663..a288273 100644
--- a/drivers/staging/gdm724x/gdm_tty.c
+++ b/drivers/staging/gdm724x/gdm_tty.c
@@ -44,7 +44,7 @@
@@ -76206,21 +80191,86 @@ index eb7e252..b7bd5e5 100644
static struct tty_driver *gdm_driver[TTY_MAX_COUNT];
static struct gdm *gdm_table[TTY_MAX_COUNT][GDM_TTY_MINOR];
+diff --git a/drivers/staging/greybus/connection.c b/drivers/staging/greybus/connection.c
+index 5570751..7985bc2 100644
+--- a/drivers/staging/greybus/connection.c
++++ b/drivers/staging/greybus/connection.c
+@@ -187,7 +187,7 @@ _gb_connection_create(struct gb_host_device *hd, int hd_cport_id,
+ connection->flags |= GB_CONNECTION_FLAG_NO_FLOWCTRL;
+ connection->state = GB_CONNECTION_STATE_DISABLED;
+
+- atomic_set(&connection->op_cycle, 0);
++ atomic_set_unchecked(&connection->op_cycle, 0);
+ mutex_init(&connection->mutex);
+ spin_lock_init(&connection->lock);
+ INIT_LIST_HEAD(&connection->operations);
+diff --git a/drivers/staging/greybus/connection.h b/drivers/staging/greybus/connection.h
+index 4d9f4c6..0f7a9a0 100644
+--- a/drivers/staging/greybus/connection.h
++++ b/drivers/staging/greybus/connection.h
+@@ -55,7 +55,7 @@ struct gb_connection {
+ char name[16];
+ struct workqueue_struct *wq;
+
+- atomic_t op_cycle;
++ atomic_unchecked_t op_cycle;
+
+ void *private;
+
+diff --git a/drivers/staging/greybus/gpio.c b/drivers/staging/greybus/gpio.c
+index 250caa0..8d321a8 100644
+--- a/drivers/staging/greybus/gpio.c
++++ b/drivers/staging/greybus/gpio.c
+@@ -638,7 +638,7 @@ static int gb_gpio_probe(struct gbphy_device *gbphy_dev,
+ struct gb_connection *connection;
+ struct gb_gpio_controller *ggc;
+ struct gpio_chip *gpio;
+- struct irq_chip *irqc;
++ irq_chip_no_const *irqc;
+ int ret;
+
+ ggc = kzalloc(sizeof(*ggc), GFP_KERNEL);
+diff --git a/drivers/staging/greybus/light.c b/drivers/staging/greybus/light.c
+index 8dffd8a..ef96a29 100644
+--- a/drivers/staging/greybus/light.c
++++ b/drivers/staging/greybus/light.c
+@@ -30,7 +30,7 @@ struct gb_channel {
+ u32 mode;
+ char *mode_name;
+ struct attribute **attrs;
+- struct attribute_group *attr_group;
++ attribute_group_no_const *attr_group;
+ const struct attribute_group **attr_groups;
+ struct led_classdev *led;
+ #if IS_REACHABLE(CONFIG_LEDS_CLASS_FLASH)
+diff --git a/drivers/staging/greybus/operation.c b/drivers/staging/greybus/operation.c
+index 0123109..51846d3 100644
+--- a/drivers/staging/greybus/operation.c
++++ b/drivers/staging/greybus/operation.c
+@@ -720,7 +720,7 @@ int gb_operation_request_send(struct gb_operation *operation,
+ if (gb_operation_is_unidirectional(operation)) {
+ operation->id = 0;
+ } else {
+- cycle = (unsigned int)atomic_inc_return(&connection->op_cycle);
++ cycle = (unsigned int)atomic_inc_return_unchecked(&connection->op_cycle);
+ operation->id = (u16)(cycle % U16_MAX + 1);
+ }
+
diff --git a/drivers/staging/i4l/icn/icn.c b/drivers/staging/i4l/icn/icn.c
-index 46d957c..d590c95 100644
+index 514bfc2..76e653f 100644
--- a/drivers/staging/i4l/icn/icn.c
+++ b/drivers/staging/i4l/icn/icn.c
-@@ -1045,7 +1045,7 @@ icn_writecmd(const u_char *buf, int len, int user, icn_card *card)
+@@ -1039,7 +1039,7 @@ icn_writecmd(const u_char __user *ubuf, const u_char *kbuf, int len,
if (count > len)
count = len;
if (user) {
-- if (copy_from_user(msg, buf, count))
-+ if (count > sizeof msg || copy_from_user(msg, buf, count))
+- if (copy_from_user(msg, ubuf, count))
++ if (count > sizeof msg || copy_from_user(msg, ubuf, count))
return -EFAULT;
} else
- memcpy(msg, buf, count);
+ memcpy(msg, kbuf, count);
diff --git a/drivers/staging/iio/adc/ad7280a.c b/drivers/staging/iio/adc/ad7280a.c
-index 2177f1d..f226336 100644
+index b460dda..d68d538 100644
--- a/drivers/staging/iio/adc/ad7280a.c
+++ b/drivers/staging/iio/adc/ad7280a.c
@@ -547,8 +547,8 @@ static int ad7280_attr_init(struct ad7280_state *st)
@@ -76235,10 +80285,10 @@ index 2177f1d..f226336 100644
if (!st->iio_attr)
return -ENOMEM;
diff --git a/drivers/staging/ks7010/ks_wlan_net.c b/drivers/staging/ks7010/ks_wlan_net.c
-index 1e21eb1..d3f9dd7 100644
+index b2b4fa4..3120edc 100644
--- a/drivers/staging/ks7010/ks_wlan_net.c
+++ b/drivers/staging/ks7010/ks_wlan_net.c
-@@ -181,9 +181,10 @@ int ks_wlan_setup_parameter(struct ks_wlan_private *priv,
+@@ -176,9 +176,10 @@ int ks_wlan_setup_parameter(struct ks_wlan_private *priv,
/*------------------------------------------------------------------*/
/* Wireless Handler : get protocol name */
static int ks_wlan_get_name(struct net_device *dev,
@@ -76250,7 +80300,7 @@ index 1e21eb1..d3f9dd7 100644
struct ks_wlan_private *priv =
(struct ks_wlan_private *)netdev_priv(dev);
-@@ -207,9 +208,10 @@ static int ks_wlan_get_name(struct net_device *dev,
+@@ -202,9 +203,10 @@ static int ks_wlan_get_name(struct net_device *dev,
/*------------------------------------------------------------------*/
/* Wireless Handler : set frequency */
static int ks_wlan_set_freq(struct net_device *dev,
@@ -76262,7 +80312,7 @@ index 1e21eb1..d3f9dd7 100644
struct ks_wlan_private *priv =
(struct ks_wlan_private *)netdev_priv(dev);
int rc = -EINPROGRESS; /* Call commit handler */
-@@ -255,9 +257,10 @@ static int ks_wlan_set_freq(struct net_device *dev,
+@@ -250,9 +252,10 @@ static int ks_wlan_set_freq(struct net_device *dev,
/*------------------------------------------------------------------*/
/* Wireless Handler : get frequency */
static int ks_wlan_get_freq(struct net_device *dev,
@@ -76274,7 +80324,7 @@ index 1e21eb1..d3f9dd7 100644
struct ks_wlan_private *priv =
(struct ks_wlan_private *)netdev_priv(dev);
int f;
-@@ -280,8 +283,9 @@ static int ks_wlan_get_freq(struct net_device *dev,
+@@ -275,8 +278,9 @@ static int ks_wlan_get_freq(struct net_device *dev,
/* Wireless Handler : set ESSID */
static int ks_wlan_set_essid(struct net_device *dev,
struct iw_request_info *info,
@@ -76285,7 +80335,7 @@ index 1e21eb1..d3f9dd7 100644
struct ks_wlan_private *priv =
(struct ks_wlan_private *)netdev_priv(dev);
size_t len;
-@@ -340,8 +344,9 @@ static int ks_wlan_set_essid(struct net_device *dev,
+@@ -335,8 +339,9 @@ static int ks_wlan_set_essid(struct net_device *dev,
/* Wireless Handler : get ESSID */
static int ks_wlan_get_essid(struct net_device *dev,
struct iw_request_info *info,
@@ -76296,7 +80346,7 @@ index 1e21eb1..d3f9dd7 100644
struct ks_wlan_private *priv =
(struct ks_wlan_private *)netdev_priv(dev);
-@@ -383,8 +388,9 @@ static int ks_wlan_get_essid(struct net_device *dev,
+@@ -378,8 +383,9 @@ static int ks_wlan_get_essid(struct net_device *dev,
/*------------------------------------------------------------------*/
/* Wireless Handler : set AP address */
static int ks_wlan_set_wap(struct net_device *dev, struct iw_request_info *info,
@@ -76307,7 +80357,7 @@ index 1e21eb1..d3f9dd7 100644
struct ks_wlan_private *priv =
(struct ks_wlan_private *)netdev_priv(dev);
-@@ -421,8 +427,9 @@ static int ks_wlan_set_wap(struct net_device *dev, struct iw_request_info *info,
+@@ -416,8 +422,9 @@ static int ks_wlan_set_wap(struct net_device *dev, struct iw_request_info *info,
/*------------------------------------------------------------------*/
/* Wireless Handler : get AP address */
static int ks_wlan_get_wap(struct net_device *dev, struct iw_request_info *info,
@@ -76318,7 +80368,7 @@ index 1e21eb1..d3f9dd7 100644
struct ks_wlan_private *priv =
(struct ks_wlan_private *)netdev_priv(dev);
-@@ -444,9 +451,10 @@ static int ks_wlan_get_wap(struct net_device *dev, struct iw_request_info *info,
+@@ -439,9 +446,10 @@ static int ks_wlan_get_wap(struct net_device *dev, struct iw_request_info *info,
/*------------------------------------------------------------------*/
/* Wireless Handler : set Nickname */
static int ks_wlan_set_nick(struct net_device *dev,
@@ -76330,7 +80380,7 @@ index 1e21eb1..d3f9dd7 100644
struct ks_wlan_private *priv =
(struct ks_wlan_private *)netdev_priv(dev);
-@@ -468,9 +476,10 @@ static int ks_wlan_set_nick(struct net_device *dev,
+@@ -463,9 +471,10 @@ static int ks_wlan_set_nick(struct net_device *dev,
/*------------------------------------------------------------------*/
/* Wireless Handler : get Nickname */
static int ks_wlan_get_nick(struct net_device *dev,
@@ -76342,7 +80392,7 @@ index 1e21eb1..d3f9dd7 100644
struct ks_wlan_private *priv =
(struct ks_wlan_private *)netdev_priv(dev);
-@@ -488,9 +497,10 @@ static int ks_wlan_get_nick(struct net_device *dev,
+@@ -483,9 +492,10 @@ static int ks_wlan_get_nick(struct net_device *dev,
/*------------------------------------------------------------------*/
/* Wireless Handler : set Bit-Rate */
static int ks_wlan_set_rate(struct net_device *dev,
@@ -76354,7 +80404,7 @@ index 1e21eb1..d3f9dd7 100644
struct ks_wlan_private *priv =
(struct ks_wlan_private *)netdev_priv(dev);
int i = 0;
-@@ -723,9 +733,10 @@ static int ks_wlan_set_rate(struct net_device *dev,
+@@ -718,9 +728,10 @@ static int ks_wlan_set_rate(struct net_device *dev,
/*------------------------------------------------------------------*/
/* Wireless Handler : get Bit-Rate */
static int ks_wlan_get_rate(struct net_device *dev,
@@ -76366,7 +80416,7 @@ index 1e21eb1..d3f9dd7 100644
struct ks_wlan_private *priv =
(struct ks_wlan_private *)netdev_priv(dev);
-@@ -751,8 +762,9 @@ static int ks_wlan_get_rate(struct net_device *dev,
+@@ -746,8 +757,9 @@ static int ks_wlan_get_rate(struct net_device *dev,
/*------------------------------------------------------------------*/
/* Wireless Handler : set RTS threshold */
static int ks_wlan_set_rts(struct net_device *dev, struct iw_request_info *info,
@@ -76377,7 +80427,7 @@ index 1e21eb1..d3f9dd7 100644
struct ks_wlan_private *priv =
(struct ks_wlan_private *)netdev_priv(dev);
int rthr = vwrq->value;
-@@ -775,8 +787,9 @@ static int ks_wlan_set_rts(struct net_device *dev, struct iw_request_info *info,
+@@ -770,8 +782,9 @@ static int ks_wlan_set_rts(struct net_device *dev, struct iw_request_info *info,
/*------------------------------------------------------------------*/
/* Wireless Handler : get RTS threshold */
static int ks_wlan_get_rts(struct net_device *dev, struct iw_request_info *info,
@@ -76388,7 +80438,7 @@ index 1e21eb1..d3f9dd7 100644
struct ks_wlan_private *priv =
(struct ks_wlan_private *)netdev_priv(dev);
-@@ -794,9 +807,10 @@ static int ks_wlan_get_rts(struct net_device *dev, struct iw_request_info *info,
+@@ -789,9 +802,10 @@ static int ks_wlan_get_rts(struct net_device *dev, struct iw_request_info *info,
/*------------------------------------------------------------------*/
/* Wireless Handler : set Fragmentation threshold */
static int ks_wlan_set_frag(struct net_device *dev,
@@ -76400,7 +80450,7 @@ index 1e21eb1..d3f9dd7 100644
struct ks_wlan_private *priv =
(struct ks_wlan_private *)netdev_priv(dev);
int fthr = vwrq->value;
-@@ -820,9 +834,10 @@ static int ks_wlan_set_frag(struct net_device *dev,
+@@ -815,9 +829,10 @@ static int ks_wlan_set_frag(struct net_device *dev,
/*------------------------------------------------------------------*/
/* Wireless Handler : get Fragmentation threshold */
static int ks_wlan_get_frag(struct net_device *dev,
@@ -76412,7 +80462,7 @@ index 1e21eb1..d3f9dd7 100644
struct ks_wlan_private *priv =
(struct ks_wlan_private *)netdev_priv(dev);
-@@ -840,9 +855,10 @@ static int ks_wlan_get_frag(struct net_device *dev,
+@@ -835,9 +850,10 @@ static int ks_wlan_get_frag(struct net_device *dev,
/*------------------------------------------------------------------*/
/* Wireless Handler : set Mode of Operation */
static int ks_wlan_set_mode(struct net_device *dev,
@@ -76424,7 +80474,7 @@ index 1e21eb1..d3f9dd7 100644
struct ks_wlan_private *priv =
(struct ks_wlan_private *)netdev_priv(dev);
-@@ -876,9 +892,10 @@ static int ks_wlan_set_mode(struct net_device *dev,
+@@ -871,9 +887,10 @@ static int ks_wlan_set_mode(struct net_device *dev,
/*------------------------------------------------------------------*/
/* Wireless Handler : get Mode of Operation */
static int ks_wlan_get_mode(struct net_device *dev,
@@ -76436,7 +80486,7 @@ index 1e21eb1..d3f9dd7 100644
struct ks_wlan_private *priv =
(struct ks_wlan_private *)netdev_priv(dev);
-@@ -906,8 +923,9 @@ static int ks_wlan_get_mode(struct net_device *dev,
+@@ -901,8 +918,9 @@ static int ks_wlan_get_mode(struct net_device *dev,
/* Wireless Handler : set Encryption Key */
static int ks_wlan_set_encode(struct net_device *dev,
struct iw_request_info *info,
@@ -76447,7 +80497,7 @@ index 1e21eb1..d3f9dd7 100644
struct ks_wlan_private *priv =
(struct ks_wlan_private *)netdev_priv(dev);
-@@ -1024,8 +1042,9 @@ static int ks_wlan_set_encode(struct net_device *dev,
+@@ -1019,8 +1037,9 @@ static int ks_wlan_set_encode(struct net_device *dev,
/* Wireless Handler : get Encryption Key */
static int ks_wlan_get_encode(struct net_device *dev,
struct iw_request_info *info,
@@ -76458,7 +80508,7 @@ index 1e21eb1..d3f9dd7 100644
struct ks_wlan_private *priv =
(struct ks_wlan_private *)netdev_priv(dev);
char zeros[16];
-@@ -1080,7 +1099,7 @@ static int ks_wlan_get_encode(struct net_device *dev,
+@@ -1075,7 +1094,7 @@ static int ks_wlan_get_encode(struct net_device *dev,
/* Wireless Handler : set Tx-Power */
static int ks_wlan_set_txpow(struct net_device *dev,
struct iw_request_info *info,
@@ -76467,7 +80517,7 @@ index 1e21eb1..d3f9dd7 100644
{
return -EOPNOTSUPP; /* Not Support */
}
-@@ -1089,8 +1108,10 @@ static int ks_wlan_set_txpow(struct net_device *dev,
+@@ -1084,8 +1103,10 @@ static int ks_wlan_set_txpow(struct net_device *dev,
/* Wireless Handler : get Tx-Power */
static int ks_wlan_get_txpow(struct net_device *dev,
struct iw_request_info *info,
@@ -76479,7 +80529,7 @@ index 1e21eb1..d3f9dd7 100644
if (priv->sleep_mode == SLP_SLEEP) {
return -EPERM;
}
-@@ -1107,7 +1128,7 @@ static int ks_wlan_get_txpow(struct net_device *dev,
+@@ -1102,7 +1123,7 @@ static int ks_wlan_get_txpow(struct net_device *dev,
/* Wireless Handler : set Retry limits */
static int ks_wlan_set_retry(struct net_device *dev,
struct iw_request_info *info,
@@ -76488,7 +80538,7 @@ index 1e21eb1..d3f9dd7 100644
{
return -EOPNOTSUPP; /* Not Support */
}
-@@ -1116,8 +1137,10 @@ static int ks_wlan_set_retry(struct net_device *dev,
+@@ -1111,8 +1132,10 @@ static int ks_wlan_set_retry(struct net_device *dev,
/* Wireless Handler : get Retry limits */
static int ks_wlan_get_retry(struct net_device *dev,
struct iw_request_info *info,
@@ -76500,7 +80550,7 @@ index 1e21eb1..d3f9dd7 100644
if (priv->sleep_mode == SLP_SLEEP) {
return -EPERM;
}
-@@ -1135,8 +1158,9 @@ static int ks_wlan_get_retry(struct net_device *dev,
+@@ -1130,8 +1153,9 @@ static int ks_wlan_get_retry(struct net_device *dev,
/* Wireless Handler : get range info */
static int ks_wlan_get_range(struct net_device *dev,
struct iw_request_info *info,
@@ -76511,7 +80561,7 @@ index 1e21eb1..d3f9dd7 100644
struct ks_wlan_private *priv =
(struct ks_wlan_private *)netdev_priv(dev);
struct iw_range *range = (struct iw_range *)extra;
-@@ -1266,8 +1290,9 @@ static int ks_wlan_get_range(struct net_device *dev,
+@@ -1261,8 +1285,9 @@ static int ks_wlan_get_range(struct net_device *dev,
/* Wireless Handler : set Power Management */
static int ks_wlan_set_power(struct net_device *dev,
struct iw_request_info *info,
@@ -76522,7 +80572,7 @@ index 1e21eb1..d3f9dd7 100644
struct ks_wlan_private *priv =
(struct ks_wlan_private *)netdev_priv(dev);
short enabled;
-@@ -1301,8 +1326,9 @@ static int ks_wlan_set_power(struct net_device *dev,
+@@ -1296,8 +1321,9 @@ static int ks_wlan_set_power(struct net_device *dev,
/* Wireless Handler : get Power Management */
static int ks_wlan_get_power(struct net_device *dev,
struct iw_request_info *info,
@@ -76533,7 +80583,7 @@ index 1e21eb1..d3f9dd7 100644
struct ks_wlan_private *priv =
(struct ks_wlan_private *)netdev_priv(dev);
-@@ -1322,8 +1348,9 @@ static int ks_wlan_get_power(struct net_device *dev,
+@@ -1317,8 +1343,9 @@ static int ks_wlan_get_power(struct net_device *dev,
/* Wireless Handler : get wirless statistics */
static int ks_wlan_get_iwstats(struct net_device *dev,
struct iw_request_info *info,
@@ -76544,7 +80594,7 @@ index 1e21eb1..d3f9dd7 100644
struct ks_wlan_private *priv =
(struct ks_wlan_private *)netdev_priv(dev);
-@@ -1343,7 +1370,7 @@ static int ks_wlan_get_iwstats(struct net_device *dev,
+@@ -1338,7 +1365,7 @@ static int ks_wlan_get_iwstats(struct net_device *dev,
/*------------------------------------------------------------------*/
/* Wireless Handler : set Sensitivity */
static int ks_wlan_set_sens(struct net_device *dev,
@@ -76553,7 +80603,7 @@ index 1e21eb1..d3f9dd7 100644
char *extra)
{
return -EOPNOTSUPP; /* Not Support */
-@@ -1352,9 +1379,11 @@ static int ks_wlan_set_sens(struct net_device *dev,
+@@ -1347,9 +1374,11 @@ static int ks_wlan_set_sens(struct net_device *dev,
/*------------------------------------------------------------------*/
/* Wireless Handler : get Sensitivity */
static int ks_wlan_get_sens(struct net_device *dev,
@@ -76566,7 +80616,7 @@ index 1e21eb1..d3f9dd7 100644
/* Not Support */
vwrq->value = 0;
vwrq->disabled = (vwrq->value == 0);
-@@ -1368,8 +1397,9 @@ static int ks_wlan_get_sens(struct net_device *dev,
+@@ -1363,8 +1392,9 @@ static int ks_wlan_get_sens(struct net_device *dev,
/* Note : this is deprecated in favor of IWSCAN */
static int ks_wlan_get_aplist(struct net_device *dev,
struct iw_request_info *info,
@@ -76577,7 +80627,7 @@ index 1e21eb1..d3f9dd7 100644
struct ks_wlan_private *priv =
(struct ks_wlan_private *)netdev_priv(dev);
struct sockaddr *address = (struct sockaddr *)extra;
-@@ -1596,9 +1626,10 @@ static inline char *ks_wlan_translate_scan(struct net_device *dev,
+@@ -1591,9 +1621,10 @@ static inline char *ks_wlan_translate_scan(struct net_device *dev,
/*------------------------------------------------------------------*/
/* Wireless Handler : Read Scan Results */
static int ks_wlan_get_scan(struct net_device *dev,
@@ -76589,7 +80639,7 @@ index 1e21eb1..d3f9dd7 100644
struct ks_wlan_private *priv =
(struct ks_wlan_private *)netdev_priv(dev);
int i;
-@@ -1655,7 +1686,7 @@ static int ks_wlan_get_scan(struct net_device *dev,
+@@ -1650,7 +1681,7 @@ static int ks_wlan_get_scan(struct net_device *dev,
/*------------------------------------------------------------------*/
/* Commit handler : called after a bunch of SET operations */
static int ks_wlan_config_commit(struct net_device *dev,
@@ -76598,7 +80648,7 @@ index 1e21eb1..d3f9dd7 100644
char *extra)
{
struct ks_wlan_private *priv =
-@@ -1673,8 +1704,9 @@ static int ks_wlan_config_commit(struct net_device *dev,
+@@ -1668,8 +1699,9 @@ static int ks_wlan_config_commit(struct net_device *dev,
/* Wireless handler : set association ie params */
static int ks_wlan_set_genie(struct net_device *dev,
struct iw_request_info *info,
@@ -76609,7 +80659,7 @@ index 1e21eb1..d3f9dd7 100644
struct ks_wlan_private *priv =
(struct ks_wlan_private *)netdev_priv(dev);
-@@ -1692,8 +1724,9 @@ static int ks_wlan_set_genie(struct net_device *dev,
+@@ -1687,8 +1719,9 @@ static int ks_wlan_set_genie(struct net_device *dev,
/* Wireless handler : set authentication mode params */
static int ks_wlan_set_auth_mode(struct net_device *dev,
struct iw_request_info *info,
@@ -76620,7 +80670,7 @@ index 1e21eb1..d3f9dd7 100644
struct ks_wlan_private *priv =
(struct ks_wlan_private *)netdev_priv(dev);
int index = (vwrq->flags & IW_AUTH_INDEX);
-@@ -1832,8 +1865,9 @@ static int ks_wlan_set_auth_mode(struct net_device *dev,
+@@ -1827,8 +1860,9 @@ static int ks_wlan_set_auth_mode(struct net_device *dev,
/* Wireless handler : get authentication mode params */
static int ks_wlan_get_auth_mode(struct net_device *dev,
struct iw_request_info *info,
@@ -76631,7 +80681,7 @@ index 1e21eb1..d3f9dd7 100644
struct ks_wlan_private *priv =
(struct ks_wlan_private *)netdev_priv(dev);
int index = (vwrq->flags & IW_AUTH_INDEX);
-@@ -1878,8 +1912,9 @@ static int ks_wlan_get_auth_mode(struct net_device *dev,
+@@ -1873,8 +1907,9 @@ static int ks_wlan_get_auth_mode(struct net_device *dev,
/* Wireless Handler : set encoding token & mode (WPA)*/
static int ks_wlan_set_encode_ext(struct net_device *dev,
struct iw_request_info *info,
@@ -76642,7 +80692,7 @@ index 1e21eb1..d3f9dd7 100644
struct ks_wlan_private *priv =
(struct ks_wlan_private *)netdev_priv(dev);
struct iw_encode_ext *enc;
-@@ -1986,8 +2021,9 @@ static int ks_wlan_set_encode_ext(struct net_device *dev,
+@@ -1981,8 +2016,9 @@ static int ks_wlan_set_encode_ext(struct net_device *dev,
/* Wireless Handler : get encoding token & mode (WPA)*/
static int ks_wlan_get_encode_ext(struct net_device *dev,
struct iw_request_info *info,
@@ -76653,7 +80703,7 @@ index 1e21eb1..d3f9dd7 100644
struct ks_wlan_private *priv =
(struct ks_wlan_private *)netdev_priv(dev);
-@@ -2009,8 +2045,9 @@ static int ks_wlan_get_encode_ext(struct net_device *dev,
+@@ -2004,8 +2040,9 @@ static int ks_wlan_get_encode_ext(struct net_device *dev,
/* Wireless Handler : PMKSA cache operation (WPA2) */
static int ks_wlan_set_pmksa(struct net_device *dev,
struct iw_request_info *info,
@@ -76664,7 +80714,7 @@ index 1e21eb1..d3f9dd7 100644
struct ks_wlan_private *priv =
(struct ks_wlan_private *)netdev_priv(dev);
struct iw_pmksa *pmksa;
-@@ -2168,9 +2205,10 @@ static int ks_wlan_set_stop_request(struct net_device *dev,
+@@ -2163,9 +2200,10 @@ static int ks_wlan_set_stop_request(struct net_device *dev,
/* Wireless Handler : set MLME */
#include <linux/ieee80211.h>
static int ks_wlan_set_mlme(struct net_device *dev,
@@ -76676,7 +80726,7 @@ index 1e21eb1..d3f9dd7 100644
struct ks_wlan_private *priv =
(struct ks_wlan_private *)netdev_priv(dev);
struct iw_mlme *mlme = (struct iw_mlme *)extra;
-@@ -2199,8 +2237,9 @@ static int ks_wlan_set_mlme(struct net_device *dev,
+@@ -2194,8 +2232,9 @@ static int ks_wlan_set_mlme(struct net_device *dev,
/* Private handler : get firemware version */
static int ks_wlan_get_firmware_version(struct net_device *dev,
struct iw_request_info *info,
@@ -76687,7 +80737,7 @@ index 1e21eb1..d3f9dd7 100644
struct ks_wlan_private *priv =
(struct ks_wlan_private *)netdev_priv(dev);
strcpy(extra, &(priv->firmware_version[0]));
-@@ -2270,9 +2309,10 @@ static int ks_wlan_get_connect(struct net_device *dev,
+@@ -2265,9 +2304,10 @@ static int ks_wlan_get_connect(struct net_device *dev,
/*------------------------------------------------------------------*/
/* Private handler : set preamble */
static int ks_wlan_set_preamble(struct net_device *dev,
@@ -76699,7 +80749,7 @@ index 1e21eb1..d3f9dd7 100644
struct ks_wlan_private *priv =
(struct ks_wlan_private *)netdev_priv(dev);
-@@ -2295,9 +2335,10 @@ static int ks_wlan_set_preamble(struct net_device *dev,
+@@ -2290,9 +2330,10 @@ static int ks_wlan_set_preamble(struct net_device *dev,
/*------------------------------------------------------------------*/
/* Private handler : get preamble */
static int ks_wlan_get_preamble(struct net_device *dev,
@@ -76711,7 +80761,7 @@ index 1e21eb1..d3f9dd7 100644
struct ks_wlan_private *priv =
(struct ks_wlan_private *)netdev_priv(dev);
-@@ -2312,9 +2353,10 @@ static int ks_wlan_get_preamble(struct net_device *dev,
+@@ -2307,9 +2348,10 @@ static int ks_wlan_get_preamble(struct net_device *dev,
/*------------------------------------------------------------------*/
/* Private handler : set power save mode */
static int ks_wlan_set_powermgt(struct net_device *dev,
@@ -76723,7 +80773,7 @@ index 1e21eb1..d3f9dd7 100644
struct ks_wlan_private *priv =
(struct ks_wlan_private *)netdev_priv(dev);
-@@ -2345,9 +2387,10 @@ static int ks_wlan_set_powermgt(struct net_device *dev,
+@@ -2340,9 +2382,10 @@ static int ks_wlan_set_powermgt(struct net_device *dev,
/*------------------------------------------------------------------*/
/* Private handler : get power save made */
static int ks_wlan_get_powermgt(struct net_device *dev,
@@ -76735,7 +80785,7 @@ index 1e21eb1..d3f9dd7 100644
struct ks_wlan_private *priv =
(struct ks_wlan_private *)netdev_priv(dev);
-@@ -2362,9 +2405,10 @@ static int ks_wlan_get_powermgt(struct net_device *dev,
+@@ -2357,9 +2400,10 @@ static int ks_wlan_get_powermgt(struct net_device *dev,
/*------------------------------------------------------------------*/
/* Private handler : set scan type */
static int ks_wlan_set_scan_type(struct net_device *dev,
@@ -76747,7 +80797,7 @@ index 1e21eb1..d3f9dd7 100644
struct ks_wlan_private *priv =
(struct ks_wlan_private *)netdev_priv(dev);
-@@ -2385,9 +2429,10 @@ static int ks_wlan_set_scan_type(struct net_device *dev,
+@@ -2380,9 +2424,10 @@ static int ks_wlan_set_scan_type(struct net_device *dev,
/*------------------------------------------------------------------*/
/* Private handler : get scan type */
static int ks_wlan_get_scan_type(struct net_device *dev,
@@ -76759,7 +80809,7 @@ index 1e21eb1..d3f9dd7 100644
struct ks_wlan_private *priv =
(struct ks_wlan_private *)netdev_priv(dev);
-@@ -2536,9 +2581,10 @@ static int ks_wlan_get_wep_ascii(struct net_device *dev,
+@@ -2531,9 +2576,10 @@ static int ks_wlan_get_wep_ascii(struct net_device *dev,
/*------------------------------------------------------------------*/
/* Private handler : set beacon lost count */
static int ks_wlan_set_beacon_lost(struct net_device *dev,
@@ -76771,7 +80821,7 @@ index 1e21eb1..d3f9dd7 100644
struct ks_wlan_private *priv =
(struct ks_wlan_private *)netdev_priv(dev);
-@@ -2561,9 +2607,10 @@ static int ks_wlan_set_beacon_lost(struct net_device *dev,
+@@ -2556,9 +2602,10 @@ static int ks_wlan_set_beacon_lost(struct net_device *dev,
/*------------------------------------------------------------------*/
/* Private handler : get beacon lost count */
static int ks_wlan_get_beacon_lost(struct net_device *dev,
@@ -76783,7 +80833,7 @@ index 1e21eb1..d3f9dd7 100644
struct ks_wlan_private *priv =
(struct ks_wlan_private *)netdev_priv(dev);
-@@ -2578,9 +2625,10 @@ static int ks_wlan_get_beacon_lost(struct net_device *dev,
+@@ -2573,9 +2620,10 @@ static int ks_wlan_get_beacon_lost(struct net_device *dev,
/*------------------------------------------------------------------*/
/* Private handler : set phy type */
static int ks_wlan_set_phy_type(struct net_device *dev,
@@ -76795,7 +80845,7 @@ index 1e21eb1..d3f9dd7 100644
struct ks_wlan_private *priv =
(struct ks_wlan_private *)netdev_priv(dev);
-@@ -2604,9 +2652,10 @@ static int ks_wlan_set_phy_type(struct net_device *dev,
+@@ -2599,9 +2647,10 @@ static int ks_wlan_set_phy_type(struct net_device *dev,
/*------------------------------------------------------------------*/
/* Private handler : get phy type */
static int ks_wlan_get_phy_type(struct net_device *dev,
@@ -76807,7 +80857,7 @@ index 1e21eb1..d3f9dd7 100644
struct ks_wlan_private *priv =
(struct ks_wlan_private *)netdev_priv(dev);
-@@ -2621,9 +2670,10 @@ static int ks_wlan_get_phy_type(struct net_device *dev,
+@@ -2616,9 +2665,10 @@ static int ks_wlan_get_phy_type(struct net_device *dev,
/*------------------------------------------------------------------*/
/* Private handler : set cts mode */
static int ks_wlan_set_cts_mode(struct net_device *dev,
@@ -76819,7 +80869,7 @@ index 1e21eb1..d3f9dd7 100644
struct ks_wlan_private *priv =
(struct ks_wlan_private *)netdev_priv(dev);
-@@ -2649,9 +2699,10 @@ static int ks_wlan_set_cts_mode(struct net_device *dev,
+@@ -2644,9 +2694,10 @@ static int ks_wlan_set_cts_mode(struct net_device *dev,
/*------------------------------------------------------------------*/
/* Private handler : get cts mode */
static int ks_wlan_get_cts_mode(struct net_device *dev,
@@ -76831,7 +80881,7 @@ index 1e21eb1..d3f9dd7 100644
struct ks_wlan_private *priv =
(struct ks_wlan_private *)netdev_priv(dev);
-@@ -2667,8 +2718,9 @@ static int ks_wlan_get_cts_mode(struct net_device *dev,
+@@ -2662,8 +2713,9 @@ static int ks_wlan_get_cts_mode(struct net_device *dev,
/* Private handler : set sleep mode */
static int ks_wlan_set_sleep_mode(struct net_device *dev,
struct iw_request_info *info,
@@ -76842,7 +80892,7 @@ index 1e21eb1..d3f9dd7 100644
struct ks_wlan_private *priv =
(struct ks_wlan_private *)netdev_priv(dev);
-@@ -2697,8 +2749,9 @@ static int ks_wlan_set_sleep_mode(struct net_device *dev,
+@@ -2692,8 +2744,9 @@ static int ks_wlan_set_sleep_mode(struct net_device *dev,
/* Private handler : get sleep mode */
static int ks_wlan_get_sleep_mode(struct net_device *dev,
struct iw_request_info *info,
@@ -76853,7 +80903,7 @@ index 1e21eb1..d3f9dd7 100644
struct ks_wlan_private *priv =
(struct ks_wlan_private *)netdev_priv(dev);
-@@ -2752,9 +2805,10 @@ static int ks_wlan_get_phy_information_timer(struct net_device *dev,
+@@ -2747,9 +2800,10 @@ static int ks_wlan_get_phy_information_timer(struct net_device *dev,
/*------------------------------------------------------------------*/
/* Private handler : set WPS enable */
static int ks_wlan_set_wps_enable(struct net_device *dev,
@@ -76865,7 +80915,7 @@ index 1e21eb1..d3f9dd7 100644
struct ks_wlan_private *priv =
(struct ks_wlan_private *)netdev_priv(dev);
DPRINTK(2, "\n");
-@@ -2776,9 +2830,10 @@ static int ks_wlan_set_wps_enable(struct net_device *dev,
+@@ -2771,9 +2825,10 @@ static int ks_wlan_set_wps_enable(struct net_device *dev,
/*------------------------------------------------------------------*/
/* Private handler : get WPS enable */
static int ks_wlan_get_wps_enable(struct net_device *dev,
@@ -76877,7 +80927,7 @@ index 1e21eb1..d3f9dd7 100644
struct ks_wlan_private *priv =
(struct ks_wlan_private *)netdev_priv(dev);
DPRINTK(2, "\n");
-@@ -2797,8 +2852,9 @@ static int ks_wlan_get_wps_enable(struct net_device *dev,
+@@ -2792,8 +2847,9 @@ static int ks_wlan_get_wps_enable(struct net_device *dev,
/* Private handler : set WPS probe req */
static int ks_wlan_set_wps_probe_req(struct net_device *dev,
struct iw_request_info *info,
@@ -76888,7 +80938,7 @@ index 1e21eb1..d3f9dd7 100644
uint8_t *p = extra;
unsigned char len;
struct ks_wlan_private *priv =
-@@ -2855,9 +2911,10 @@ static int ks_wlan_get_wps_probe_req(struct net_device *dev,
+@@ -2850,9 +2906,10 @@ static int ks_wlan_get_wps_probe_req(struct net_device *dev,
/*------------------------------------------------------------------*/
/* Private handler : set tx gain control value */
static int ks_wlan_set_tx_gain(struct net_device *dev,
@@ -76900,7 +80950,7 @@ index 1e21eb1..d3f9dd7 100644
struct ks_wlan_private *priv =
(struct ks_wlan_private *)netdev_priv(dev);
-@@ -2882,9 +2939,10 @@ static int ks_wlan_set_tx_gain(struct net_device *dev,
+@@ -2877,9 +2934,10 @@ static int ks_wlan_set_tx_gain(struct net_device *dev,
/*------------------------------------------------------------------*/
/* Private handler : get tx gain control value */
static int ks_wlan_get_tx_gain(struct net_device *dev,
@@ -76912,7 +80962,7 @@ index 1e21eb1..d3f9dd7 100644
struct ks_wlan_private *priv =
(struct ks_wlan_private *)netdev_priv(dev);
-@@ -2900,9 +2958,10 @@ static int ks_wlan_get_tx_gain(struct net_device *dev,
+@@ -2895,9 +2953,10 @@ static int ks_wlan_get_tx_gain(struct net_device *dev,
/*------------------------------------------------------------------*/
/* Private handler : set rx gain control value */
static int ks_wlan_set_rx_gain(struct net_device *dev,
@@ -76924,7 +80974,7 @@ index 1e21eb1..d3f9dd7 100644
struct ks_wlan_private *priv =
(struct ks_wlan_private *)netdev_priv(dev);
-@@ -2927,9 +2986,10 @@ static int ks_wlan_set_rx_gain(struct net_device *dev,
+@@ -2922,9 +2981,10 @@ static int ks_wlan_set_rx_gain(struct net_device *dev,
/*------------------------------------------------------------------*/
/* Private handler : get rx gain control value */
static int ks_wlan_get_rx_gain(struct net_device *dev,
@@ -76936,7 +80986,7 @@ index 1e21eb1..d3f9dd7 100644
struct ks_wlan_private *priv =
(struct ks_wlan_private *)netdev_priv(dev);
-@@ -2968,9 +3028,10 @@ static int ks_wlan_set_region(struct net_device *dev,
+@@ -2963,9 +3023,10 @@ static int ks_wlan_set_region(struct net_device *dev,
/*------------------------------------------------------------------*/
/* Private handler : get eeprom checksum result */
static int ks_wlan_get_eeprom_cksum(struct net_device *dev,
@@ -76948,7 +80998,7 @@ index 1e21eb1..d3f9dd7 100644
struct ks_wlan_private *priv =
(struct ks_wlan_private *)netdev_priv(dev);
-@@ -3095,8 +3156,9 @@ static void print_hif_event(int event)
+@@ -3090,8 +3151,9 @@ static void print_hif_event(struct net_device *dev, int event)
/*------------------------------------------------------------------*/
/* Private handler : get host command history */
static int ks_wlan_hostt(struct net_device *dev, struct iw_request_info *info,
@@ -76959,7 +81009,7 @@ index 1e21eb1..d3f9dd7 100644
int i, event;
struct ks_wlan_private *priv =
(struct ks_wlan_private *)netdev_priv(dev);
-@@ -3167,119 +3229,119 @@ static const struct iw_priv_args ks_wlan_private_args[] = {
+@@ -3162,119 +3224,119 @@ static const struct iw_priv_args ks_wlan_private_args[] = {
};
static const iw_handler ks_wlan_handler[] = {
@@ -77178,7 +81228,7 @@ index 1e21eb1..d3f9dd7 100644
};
static const struct iw_handler_def ks_wlan_handler_def = {
-@@ -3287,8 +3349,8 @@ static const struct iw_handler_def ks_wlan_handler_def = {
+@@ -3282,8 +3344,8 @@ static const struct iw_handler_def ks_wlan_handler_def = {
.num_private = sizeof(ks_wlan_private_handler) / sizeof(iw_handler),
.num_private_args =
sizeof(ks_wlan_private_args) / sizeof(struct iw_priv_args),
@@ -77189,7 +81239,7 @@ index 1e21eb1..d3f9dd7 100644
.private_args = (struct iw_priv_args *)ks_wlan_private_args,
.get_wireless_stats = ks_get_wireless_stats,
};
-@@ -3359,7 +3421,7 @@ void ks_wlan_tx_timeout(struct net_device *dev)
+@@ -3352,7 +3414,7 @@ void ks_wlan_tx_timeout(struct net_device *dev)
}
static
@@ -77199,10 +81249,10 @@ index 1e21eb1..d3f9dd7 100644
struct ks_wlan_private *priv = netdev_priv(dev);
int rc = 0;
diff --git a/drivers/staging/lustre/lnet/klnds/socklnd/socklnd.h b/drivers/staging/lustre/lnet/klnds/socklnd/socklnd.h
-index a56632b..5d236d8 100644
+index e6ca0cf..93cadeb 100644
--- a/drivers/staging/lustre/lnet/klnds/socklnd/socklnd.h
+++ b/drivers/staging/lustre/lnet/klnds/socklnd/socklnd.h
-@@ -305,10 +305,8 @@ struct ksock_conn {
+@@ -303,10 +303,8 @@ struct ksock_conn {
struct ksock_route *ksnc_route; /* owning route */
struct list_head ksnc_list; /* stash on peer's conn list */
struct socket *ksnc_sock; /* actual socket */
@@ -77216,7 +81266,7 @@ index a56632b..5d236d8 100644
atomic_t ksnc_sock_refcount;/* sock refcount */
struct ksock_sched *ksnc_scheduler; /* who schedules this connection
diff --git a/drivers/staging/lustre/lnet/selftest/brw_test.c b/drivers/staging/lustre/lnet/selftest/brw_test.c
-index 13d0454..f18459d 100644
+index b20c5d3..a22fa96 100644
--- a/drivers/staging/lustre/lnet/selftest/brw_test.c
+++ b/drivers/staging/lustre/lnet/selftest/brw_test.c
@@ -324,7 +324,7 @@ brw_client_done_rpc(struct sfw_test_unit *tsu, struct srpc_client_rpc *rpc)
@@ -77267,7 +81317,7 @@ index 13d0454..f18459d 100644
struct srpc_service brw_test_service;
diff --git a/drivers/staging/lustre/lnet/selftest/framework.c b/drivers/staging/lustre/lnet/selftest/framework.c
-index c2f121f..c315572 100644
+index abbd628..cfdf112 100644
--- a/drivers/staging/lustre/lnet/selftest/framework.c
+++ b/drivers/staging/lustre/lnet/selftest/framework.c
@@ -262,8 +262,8 @@ sfw_init_session(struct sfw_session *sn, lst_sid_t sid,
@@ -77397,10 +81447,10 @@ index d033ac0..528a102 100644
extern struct srpc_service ping_test_service;
void ping_init_test_service(void);
diff --git a/drivers/staging/lustre/lustre/include/lustre/lustre_idl.h b/drivers/staging/lustre/lustre/include/lustre/lustre_idl.h
-index 051864c..72aca9b 100644
+index 72eaee9..914396c 100644
--- a/drivers/staging/lustre/lustre/include/lustre/lustre_idl.h
+++ b/drivers/staging/lustre/lustre/include/lustre/lustre_idl.h
-@@ -784,7 +784,7 @@ static inline ino_t lu_igif_ino(const struct lu_fid *fid)
+@@ -785,7 +785,7 @@ static inline ino_t lu_igif_ino(const struct lu_fid *fid)
return fid_seq(fid);
}
@@ -77409,8 +81459,8 @@ index 051864c..72aca9b 100644
/**
* Get inode generation from a igif.
-@@ -851,8 +851,8 @@ static inline int fid_is_zero(const struct lu_fid *fid)
- return fid_seq(fid) == 0 && fid_oid(fid) == 0;
+@@ -847,8 +847,8 @@ static inline bool fid_is_sane(const struct lu_fid *fid)
+ fid_seq_is_rsvd(fid_seq(fid)));
}
-void lustre_swab_lu_fid(struct lu_fid *fid);
@@ -77418,9 +81468,9 @@ index 051864c..72aca9b 100644
+void lustre_swab_lu_fid(void *fid);
+void lustre_swab_lu_seq_range(void *range);
- static inline int lu_fid_eq(const struct lu_fid *f0, const struct lu_fid *f1)
+ static inline bool lu_fid_eq(const struct lu_fid *f0, const struct lu_fid *f1)
{
-@@ -1157,7 +1157,7 @@ struct ptlrpc_body_v2 {
+@@ -1144,7 +1144,7 @@ struct ptlrpc_body_v2 {
__u64 pb_padding[4];
};
@@ -77429,7 +81479,7 @@ index 051864c..72aca9b 100644
/* message body offset for lustre_msg_v2 */
/* ptlrpc body offset in all request/reply messages */
-@@ -1398,7 +1398,7 @@ struct obd_connect_data {
+@@ -1380,7 +1380,7 @@ struct obd_connect_data {
* reserve the flag for future use.
*/
@@ -77438,7 +81488,7 @@ index 051864c..72aca9b 100644
/*
* Supported checksum algorithms. Up to 32 checksum types are supported.
-@@ -1752,10 +1752,10 @@ struct hsm_state_set {
+@@ -1742,10 +1742,10 @@ struct hsm_state_set {
__u64 hss_clearmask;
};
@@ -77452,7 +81502,7 @@ index 051864c..72aca9b 100644
/* ost_body.data values for OST_BRW */
-@@ -1802,7 +1802,7 @@ struct obd_ioobj {
+@@ -1792,7 +1792,7 @@ struct obd_ioobj {
#define ioobj_max_brw_set(ioo, num) \
do { (ioo)->ioo_max_brw = ((num) - 1) << IOOBJ_MAX_BRW_BITS; } while (0)
@@ -77461,8 +81511,8 @@ index 051864c..72aca9b 100644
/* multiple of 8 bytes => can array */
struct niobuf_remote {
-@@ -1811,7 +1811,7 @@ struct niobuf_remote {
- __u32 flags;
+@@ -1801,7 +1801,7 @@ struct niobuf_remote {
+ __u32 rnb_flags;
};
-void lustre_swab_niobuf_remote(struct niobuf_remote *nbr);
@@ -77470,16 +81520,16 @@ index 051864c..72aca9b 100644
/* lock value block communicated between the filter and llite */
-@@ -1876,7 +1876,7 @@ struct obd_quotactl {
+@@ -1866,7 +1866,7 @@ struct obd_quotactl {
struct obd_dqblk qc_dqblk;
};
-void lustre_swab_obd_quotactl(struct obd_quotactl *q);
+void lustre_swab_obd_quotactl(void *q);
- #define Q_QUOTACHECK 0x800100 /* deprecated as of 2.4 */
- #define Q_INITQUOTA 0x800101 /* deprecated as of 2.4 */
-@@ -1988,7 +1988,7 @@ enum mdt_reint_cmd {
+ #define Q_COPY(out, in, member) (out)->member = (in)->member
+
+@@ -1972,7 +1972,7 @@ enum mdt_reint_cmd {
REINT_MAX
};
@@ -77488,8 +81538,8 @@ index 051864c..72aca9b 100644
/* the disposition of the intent outlines what was executed */
#define DISP_IT_EXECD 0x00000001
-@@ -2147,7 +2147,7 @@ struct mdt_body {
- __u64 padding_10;
+@@ -2132,7 +2132,7 @@ struct mdt_body {
+ __u64 mbo_padding_10;
}; /* 216 */
-void lustre_swab_mdt_body(struct mdt_body *b);
@@ -77497,7 +81547,7 @@ index 051864c..72aca9b 100644
struct mdt_ioepoch {
struct lustre_handle handle;
-@@ -2156,7 +2156,7 @@ struct mdt_ioepoch {
+@@ -2141,7 +2141,7 @@ struct mdt_ioepoch {
__u32 padding;
};
@@ -77506,7 +81556,7 @@ index 051864c..72aca9b 100644
/* permissions for md_perm.mp_perm */
enum {
-@@ -2465,7 +2465,7 @@ struct mdt_rec_reint {
+@@ -2456,7 +2456,7 @@ struct mdt_rec_reint {
__u32 rr_padding_4; /* also fix lustre_swab_mdt_rec_reint */
};
@@ -77515,7 +81565,7 @@ index 051864c..72aca9b 100644
/* lmv structures */
struct lmv_desc {
-@@ -2664,13 +2664,13 @@ union ldlm_gl_desc {
+@@ -2759,13 +2759,13 @@ union ldlm_gl_desc {
struct ldlm_gl_lquota_desc lquota_desc;
};
@@ -77531,7 +81581,7 @@ index 051864c..72aca9b 100644
struct ldlm_resource_desc {
enum ldlm_type lr_type;
-@@ -2695,7 +2695,7 @@ struct ldlm_request {
+@@ -2790,7 +2790,7 @@ struct ldlm_request {
struct lustre_handle lock_handle[LDLM_LOCKREQ_HANDLES];
};
@@ -77540,7 +81590,7 @@ index 051864c..72aca9b 100644
/* If LDLM_ENQUEUE, 1 slot is already occupied, 1 is available.
* Otherwise, 2 are available.
-@@ -2718,7 +2718,7 @@ struct ldlm_reply {
+@@ -2813,7 +2813,7 @@ struct ldlm_reply {
__u64 lock_policy_res2;
};
@@ -77549,7 +81599,7 @@ index 051864c..72aca9b 100644
#define ldlm_flags_to_wire(flags) ((__u32)(flags))
#define ldlm_flags_from_wire(flags) ((__u64)(flags))
-@@ -2763,7 +2763,7 @@ struct mgs_target_info {
+@@ -2858,7 +2858,7 @@ struct mgs_target_info {
char mti_params[MTI_PARAM_MAXLEN];
};
@@ -77558,7 +81608,7 @@ index 051864c..72aca9b 100644
struct mgs_nidtbl_entry {
__u64 mne_version; /* table version of this entry */
-@@ -2790,14 +2790,14 @@ struct mgs_config_body {
+@@ -2885,14 +2885,14 @@ struct mgs_config_body {
__u32 mcb_units; /* # of units for bulk transfer */
};
@@ -77575,7 +81625,7 @@ index 051864c..72aca9b 100644
/* Config marker flags (in config log) */
#define CM_START 0x01
-@@ -3224,9 +3224,9 @@ struct ll_fiemap_info_key {
+@@ -3338,9 +3338,9 @@ struct ll_fiemap_info_key {
struct ll_user_fiemap fiemap;
};
@@ -77588,7 +81638,7 @@ index 051864c..72aca9b 100644
void lustre_swab_lov_user_md_v1(struct lov_user_md_v1 *lum);
void lustre_swab_lov_user_md_v3(struct lov_user_md_v3 *lum);
-@@ -3235,19 +3235,19 @@ void lustre_swab_lov_user_md_objects(struct lov_user_ost_data *lod,
+@@ -3349,19 +3349,19 @@ void lustre_swab_lov_user_md_objects(struct lov_user_ost_data *lod,
void lustre_swab_lov_mds_md(struct lov_mds_md *lmm);
/* llog_swab.c */
@@ -77615,7 +81665,7 @@ index 051864c..72aca9b 100644
/* security opcodes */
enum sec_cmd {
-@@ -3280,7 +3280,7 @@ struct lustre_capa {
+@@ -3394,7 +3394,7 @@ struct lustre_capa {
__u8 lc_hmac[CAPA_HMAC_MAX_LEN]; /** HMAC */
} __packed;
@@ -77624,7 +81674,7 @@ index 051864c..72aca9b 100644
/** lustre_capa::lc_opc */
enum {
-@@ -3364,7 +3364,7 @@ struct layout_intent {
+@@ -3486,7 +3486,7 @@ struct layout_intent {
__u64 li_end;
};
@@ -77633,7 +81683,7 @@ index 051864c..72aca9b 100644
/**
* On the wire version of hsm_progress structure.
-@@ -3384,12 +3384,10 @@ struct hsm_progress_kernel {
+@@ -3506,12 +3506,10 @@ struct hsm_progress_kernel {
__u64 hpk_padding2;
} __packed;
@@ -77650,7 +81700,7 @@ index 051864c..72aca9b 100644
/** layout swap request structure
* fid1 and fid2 are in mdt_body
-@@ -3398,7 +3396,7 @@ struct mdc_swap_layouts {
+@@ -3520,7 +3518,7 @@ struct mdc_swap_layouts {
__u64 msl_flags;
} __packed;
@@ -77659,7 +81709,7 @@ index 051864c..72aca9b 100644
struct close_data {
struct lustre_handle cd_handle;
-@@ -3407,7 +3405,7 @@ struct close_data {
+@@ -3529,7 +3527,7 @@ struct close_data {
__u64 cd_reserved[8];
};
@@ -77669,10 +81719,10 @@ index 051864c..72aca9b 100644
#endif
/** @} lustreidl */
diff --git a/drivers/staging/lustre/lustre/include/lustre_dlm.h b/drivers/staging/lustre/lustre/include/lustre_dlm.h
-index 60051a5..76ac7a7 100644
+index d035344..b81bfb6 100644
--- a/drivers/staging/lustre/lustre/include/lustre_dlm.h
+++ b/drivers/staging/lustre/lustre/include/lustre_dlm.h
-@@ -964,9 +964,9 @@ struct ldlm_ast_work {
+@@ -969,9 +969,9 @@ struct ldlm_ast_work {
struct ldlm_enqueue_info {
__u32 ei_type; /** Type of the lock being enqueued. */
__u32 ei_mode; /** Mode of the lock being enqueued. */
@@ -77683,9 +81733,9 @@ index 60051a5..76ac7a7 100644
+ ldlm_completion_callback ei_cb_cp; /** lock completion callback */
+ ldlm_glimpse_callback ei_cb_gl; /** lock glimpse callback */
void *ei_cbdata; /** Data to be passed into callbacks. */
+ unsigned int ei_enq_slave:1; /* whether enqueue slave stripes */
};
-
-@@ -1060,7 +1060,7 @@ struct ldlm_callback_suite {
+@@ -1066,7 +1066,7 @@ struct ldlm_callback_suite {
ldlm_completion_callback lcs_completion;
ldlm_blocking_callback lcs_blocking;
ldlm_glimpse_callback lcs_glimpse;
@@ -77695,23 +81745,23 @@ index 60051a5..76ac7a7 100644
/* ldlm_lockd.c */
int ldlm_get_ref(void);
diff --git a/drivers/staging/lustre/lustre/include/lustre_net.h b/drivers/staging/lustre/lustre/include/lustre_net.h
-index d5debd6..ea5c42e 100644
+index e9aba99..53cd7ef 100644
--- a/drivers/staging/lustre/lustre/include/lustre_net.h
+++ b/drivers/staging/lustre/lustre/include/lustre_net.h
-@@ -2641,7 +2641,7 @@ void *lustre_msg_buf_v2(struct lustre_msg_v2 *m, int n, int min_size);
- void *lustre_msg_buf(struct lustre_msg *m, int n, int minlen);
- int lustre_msg_buflen(struct lustre_msg *m, int n);
- int lustre_msg_bufcount(struct lustre_msg *m);
--char *lustre_msg_string(struct lustre_msg *m, int n, int max_len);
-+void *lustre_msg_string(struct lustre_msg *m, int n, int max_len);
+@@ -2639,7 +2639,7 @@ void *lustre_msg_buf_v2(struct lustre_msg_v2 *m, u32 n, u32 min_size);
+ void *lustre_msg_buf(struct lustre_msg *m, u32 n, u32 minlen);
+ u32 lustre_msg_buflen(struct lustre_msg *m, u32 n);
+ u32 lustre_msg_bufcount(struct lustre_msg *m);
+-char *lustre_msg_string(struct lustre_msg *m, u32 n, u32 max_len);
++void *lustre_msg_string(struct lustre_msg *m, u32 n, u32 max_len);
__u32 lustre_msghdr_get_flags(struct lustre_msg *msg);
void lustre_msghdr_set_flags(struct lustre_msg *msg, __u32 flags);
__u32 lustre_msg_get_flags(struct lustre_msg *msg);
diff --git a/drivers/staging/lustre/lustre/include/obd.h b/drivers/staging/lustre/lustre/include/obd.h
-index a1bc2c4..6cd1797 100644
+index f6fc4dd..afdee7e 100644
--- a/drivers/staging/lustre/lustre/include/obd.h
+++ b/drivers/staging/lustre/lustre/include/obd.h
-@@ -1133,7 +1133,7 @@ struct md_ops {
+@@ -1076,7 +1076,7 @@ struct md_ops {
* lprocfs_alloc_md_stats() in obdclass/lprocfs_status.c. Also, add a
* wrapper function in include/linux/obd_class.h.
*/
@@ -77721,7 +81771,7 @@ index a1bc2c4..6cd1797 100644
struct lsm_operations {
void (*lsm_free)(struct lov_stripe_md *);
diff --git a/drivers/staging/lustre/lustre/ldlm/ldlm_flock.c b/drivers/staging/lustre/lustre/ldlm/ldlm_flock.c
-index d6b61bc..3e4f655 100644
+index 861f36f..69d22b9 100644
--- a/drivers/staging/lustre/lustre/ldlm/ldlm_flock.c
+++ b/drivers/staging/lustre/lustre/ldlm/ldlm_flock.c
@@ -143,7 +143,7 @@ static int ldlm_process_flock_lock(struct ldlm_lock *req, __u64 *flags,
@@ -77734,10 +81784,10 @@ index d6b61bc..3e4f655 100644
CDEBUG(D_DLMTRACE,
"flags %#llx owner %llu pid %u mode %u start %llu end %llu\n",
diff --git a/drivers/staging/lustre/lustre/ldlm/ldlm_request.c b/drivers/staging/lustre/lustre/ldlm/ldlm_request.c
-index af487f9..533b121 100644
+index 35ba6f1..75c9cdd 100644
--- a/drivers/staging/lustre/lustre/ldlm/ldlm_request.c
+++ b/drivers/staging/lustre/lustre/ldlm/ldlm_request.c
-@@ -1853,8 +1853,9 @@ static int ldlm_chain_lock_for_replay(struct ldlm_lock *lock, void *closure)
+@@ -1850,8 +1850,9 @@ static int ldlm_chain_lock_for_replay(struct ldlm_lock *lock, void *closure)
static int replay_lock_interpret(const struct lu_env *env,
struct ptlrpc_request *req,
@@ -77748,7 +81798,7 @@ index af487f9..533b121 100644
struct ldlm_lock *lock;
struct ldlm_reply *reply;
struct obd_export *exp;
-@@ -1981,7 +1982,7 @@ static int replay_one_lock(struct obd_import *imp, struct ldlm_lock *lock)
+@@ -1978,7 +1979,7 @@ static int replay_one_lock(struct obd_import *imp, struct ldlm_lock *lock)
CLASSERT(sizeof(*aa) <= sizeof(req->rq_async_args));
aa = ptlrpc_req_async_args(req);
aa->lock_handle = body->lock_handle[0];
@@ -77758,23 +81808,29 @@ index af487f9..533b121 100644
return 0;
diff --git a/drivers/staging/lustre/lustre/llite/dir.c b/drivers/staging/lustre/lustre/llite/dir.c
-index 5b38177..929e628 100644
+index 7f32a53..234abb7 100644
--- a/drivers/staging/lustre/lustre/llite/dir.c
+++ b/drivers/staging/lustre/lustre/llite/dir.c
-@@ -136,7 +136,7 @@
- */
-
- /* returns the page unlocked, but with a reference */
--static int ll_dir_filler(void *_hash, struct page *page0)
-+static int ll_dir_filler(struct file *_hash, struct page *page0)
+@@ -136,11 +136,12 @@
+ struct page *ll_get_dir_page(struct inode *dir, struct md_op_data *op_data,
+ __u64 offset)
{
- struct inode *inode = page0->mapping->host;
- int hash64 = ll_i2sbi(inode)->ll_flags & LL_SBI_64BIT_HASH;
+- struct md_callback cb_op;
++ static struct md_callback cb_op = {
++ .md_blocking_ast = ll_md_blocking_ast,
++ };
+ struct page *page;
+ int rc;
+
+- cb_op.md_blocking_ast = ll_md_blocking_ast;
+ rc = md_read_page(ll_i2mdexp(dir), op_data, &cb_op, offset, &page);
+ if (rc)
+ return ERR_PTR(rc);
diff --git a/drivers/staging/lustre/lustre/llite/llite_internal.h b/drivers/staging/lustre/lustre/llite/llite_internal.h
-index 4d6d589..f0268e9 100644
+index 4bc5512..08ff257 100644
--- a/drivers/staging/lustre/lustre/llite/llite_internal.h
+++ b/drivers/staging/lustre/lustre/llite/llite_internal.h
-@@ -478,13 +478,13 @@ struct ll_sb_info {
+@@ -504,16 +504,16 @@ struct ll_sb_info {
/* metadata stat-ahead */
unsigned int ll_sa_max; /* max statahead RPCs */
@@ -77786,33 +81842,37 @@ index 4d6d589..f0268e9 100644
+ atomic_unchecked_t ll_sa_wrong; /* statahead thread stopped for
* low hit ratio
*/
+ atomic_t ll_sa_running; /* running statahead thread
+ * count
+ */
- atomic_t ll_agl_total; /* AGL thread started count */
+ atomic_unchecked_t ll_agl_total; /* AGL thread started count */
dev_t ll_sdev_orig; /* save s_dev before assign for
* clustered nfs
diff --git a/drivers/staging/lustre/lustre/llite/llite_lib.c b/drivers/staging/lustre/lustre/llite/llite_lib.c
-index 546063e..5955697 100644
+index e5c62f4..9f82038 100644
--- a/drivers/staging/lustre/lustre/llite/llite_lib.c
+++ b/drivers/staging/lustre/lustre/llite/llite_lib.c
-@@ -113,9 +113,9 @@ static struct ll_sb_info *ll_init_sbi(struct super_block *sb)
+@@ -113,10 +113,10 @@ static struct ll_sb_info *ll_init_sbi(struct super_block *sb)
/* metadata statahead is enabled by default */
sbi->ll_sa_max = LL_SA_RPC_DEF;
- atomic_set(&sbi->ll_sa_total, 0);
- atomic_set(&sbi->ll_sa_wrong, 0);
-- atomic_set(&sbi->ll_agl_total, 0);
+ atomic_set_unchecked(&sbi->ll_sa_total, 0);
+ atomic_set_unchecked(&sbi->ll_sa_wrong, 0);
+ atomic_set(&sbi->ll_sa_running, 0);
+- atomic_set(&sbi->ll_agl_total, 0);
+ atomic_set_unchecked(&sbi->ll_agl_total, 0);
sbi->ll_flags |= LL_SBI_AGL_ENABLED;
- sbi->ll_sb = sb;
+ /* root squash */
diff --git a/drivers/staging/lustre/lustre/llite/lproc_llite.c b/drivers/staging/lustre/lustre/llite/lproc_llite.c
-index e86bf3c..c2a3f39 100644
+index 23fda9d..2e43092 100644
--- a/drivers/staging/lustre/lustre/llite/lproc_llite.c
+++ b/drivers/staging/lustre/lustre/llite/lproc_llite.c
-@@ -680,9 +680,9 @@ static int ll_statahead_stats_seq_show(struct seq_file *m, void *v)
+@@ -686,9 +686,9 @@ static int ll_statahead_stats_seq_show(struct seq_file *m, void *v)
"statahead total: %u\n"
"statahead wrong: %u\n"
"agl total: %u\n",
@@ -77826,10 +81886,10 @@ index e86bf3c..c2a3f39 100644
}
diff --git a/drivers/staging/lustre/lustre/llite/statahead.c b/drivers/staging/lustre/lustre/llite/statahead.c
-index c1cb6b1..62f954b 100644
+index 0677513..4c7ea03 100644
--- a/drivers/staging/lustre/lustre/llite/statahead.c
+++ b/drivers/staging/lustre/lustre/llite/statahead.c
-@@ -945,7 +945,7 @@ static int ll_agl_thread(void *arg)
+@@ -893,7 +893,7 @@ static int ll_agl_thread(void *arg)
CDEBUG(D_READA, "agl thread started: sai %p, parent %pd\n",
sai, parent);
@@ -77838,26 +81898,26 @@ index c1cb6b1..62f954b 100644
spin_lock(&plli->lli_agl_lock);
sai->sai_agl_valid = 1;
if (thread_is_init(thread))
-@@ -1049,7 +1049,7 @@ static int ll_statahead_thread(void *arg)
+@@ -1010,7 +1010,7 @@ static int ll_statahead_thread(void *arg)
if (sbi->ll_flags & LL_SBI_AGL_ENABLED)
ll_start_agl(parent, sai);
- atomic_inc(&sbi->ll_sa_total);
+ atomic_inc_unchecked(&sbi->ll_sa_total);
- spin_lock(&plli->lli_sa_lock);
- if (thread_is_init(thread))
+ spin_lock(&lli->lli_sa_lock);
+ if (thread_is_init(sa_thread))
/* If someone else has changed the thread state
-@@ -1472,7 +1472,7 @@ ll_sai_unplug(struct ll_statahead_info *sai, struct ll_sa_entry *entry)
- sai->sai_miss++;
- sai->sai_consecutive_miss++;
- if (sa_low_hit(sai) && thread_is_running(thread)) {
+@@ -1123,7 +1123,7 @@ static int ll_statahead_thread(void *arg)
+
+ if (sa_low_hit(sai)) {
+ rc = -EFAULT;
- atomic_inc(&sbi->ll_sa_wrong);
+ atomic_inc_unchecked(&sbi->ll_sa_wrong);
- CDEBUG(D_READA, "Statahead for dir " DFID " hit ratio too low: hit/miss %llu/%llu, sent/replied %llu/%llu, stopping statahead thread\n",
+ CDEBUG(D_READA, "Statahead for dir "DFID" hit ratio too low: hit/miss %llu/%llu, sent/replied %llu/%llu, stopping statahead thread: pid %d\n",
PFID(&lli->lli_fid), sai->sai_hit,
sai->sai_miss, sai->sai_sent,
diff --git a/drivers/staging/lustre/lustre/lov/lov_internal.h b/drivers/staging/lustre/lustre/lov/lov_internal.h
-index 12bd511..45e526d 100644
+index 07e5ede..6282744 100644
--- a/drivers/staging/lustre/lustre/lov/lov_internal.h
+++ b/drivers/staging/lustre/lustre/lov/lov_internal.h
@@ -107,9 +107,9 @@ struct lov_request_set {
@@ -77874,10 +81934,10 @@ index 12bd511..45e526d 100644
int set_cookie_sent;
struct list_head set_list;
diff --git a/drivers/staging/lustre/lustre/lov/lov_io.c b/drivers/staging/lustre/lustre/lov/lov_io.c
-index 84032a5..8aa6085 100644
+index d101579..def85ec 100644
--- a/drivers/staging/lustre/lustre/lov/lov_io.c
+++ b/drivers/staging/lustre/lustre/lov/lov_io.c
-@@ -810,12 +810,32 @@ static void lov_empty_io_fini(const struct lu_env *env,
+@@ -821,12 +821,32 @@ static void lov_empty_io_fini(const struct lu_env *env,
}
static void lov_empty_impossible(const struct lu_env *env,
@@ -77912,7 +81972,7 @@ index 84032a5..8aa6085 100644
/**
* An io operation vector for files without stripes.
-@@ -825,32 +845,32 @@ static const struct cl_io_operations lov_empty_io_ops = {
+@@ -836,32 +856,32 @@ static const struct cl_io_operations lov_empty_io_ops = {
[CIT_READ] = {
.cio_fini = lov_empty_io_fini,
#if 0
@@ -77961,7 +82021,7 @@ index 84032a5..8aa6085 100644
},
[CIT_FSYNC] = {
.cio_fini = lov_empty_io_fini
-@@ -859,8 +879,8 @@ static const struct cl_io_operations lov_empty_io_ops = {
+@@ -870,8 +890,8 @@ static const struct cl_io_operations lov_empty_io_ops = {
.cio_fini = lov_empty_io_fini
}
},
@@ -77973,10 +82033,10 @@ index 84032a5..8aa6085 100644
int lov_io_init_raid0(const struct lu_env *env, struct cl_object *obj,
diff --git a/drivers/staging/lustre/lustre/lov/lov_obd.c b/drivers/staging/lustre/lustre/lov/lov_obd.c
-index 9b92d55..0d56df1 100644
+index b23016f..e808e52 100644
--- a/drivers/staging/lustre/lustre/lov/lov_obd.c
+++ b/drivers/staging/lustre/lustre/lov/lov_obd.c
-@@ -1126,7 +1126,7 @@ static int lov_getattr_interpret(struct ptlrpc_request_set *rqset,
+@@ -988,7 +988,7 @@ static int lov_getattr_interpret(struct ptlrpc_request_set *rqset,
/* don't do attribute merge if this async op failed */
if (rc)
@@ -77985,7 +82045,7 @@ index 9b92d55..0d56df1 100644
err = lov_fini_getattr_set(lovset);
return rc ? rc : err;
}
-@@ -1181,7 +1181,7 @@ static int lov_getattr_async(struct obd_export *exp, struct obd_info *oinfo,
+@@ -1043,7 +1043,7 @@ static int lov_getattr_async(struct obd_export *exp, struct obd_info *oinfo,
}
out:
if (rc)
@@ -77994,7 +82054,7 @@ index 9b92d55..0d56df1 100644
err = lov_fini_getattr_set(lovset);
return rc ? rc : err;
}
-@@ -1193,7 +1193,7 @@ static int lov_setattr_interpret(struct ptlrpc_request_set *rqset,
+@@ -1055,7 +1055,7 @@ static int lov_setattr_interpret(struct ptlrpc_request_set *rqset,
int err;
if (rc)
@@ -78003,7 +82063,7 @@ index 9b92d55..0d56df1 100644
err = lov_fini_setattr_set(lovset);
return rc ? rc : err;
}
-@@ -1255,7 +1255,7 @@ static int lov_setattr_async(struct obd_export *exp, struct obd_info *oinfo,
+@@ -1117,7 +1117,7 @@ static int lov_setattr_async(struct obd_export *exp, struct obd_info *oinfo,
int err;
if (rc)
@@ -78012,7 +82072,7 @@ index 9b92d55..0d56df1 100644
err = lov_fini_setattr_set(set);
return rc ? rc : err;
}
-@@ -1313,7 +1313,7 @@ int lov_statfs_interpret(struct ptlrpc_request_set *rqset, void *data, int rc)
+@@ -1135,7 +1135,7 @@ int lov_statfs_interpret(struct ptlrpc_request_set *rqset, void *data, int rc)
int err;
if (rc)
@@ -78021,7 +82081,7 @@ index 9b92d55..0d56df1 100644
err = lov_fini_statfs_set(lovset);
return rc ? rc : err;
-@@ -1346,7 +1346,7 @@ static int lov_statfs_async(struct obd_export *exp, struct obd_info *oinfo,
+@@ -1168,7 +1168,7 @@ static int lov_statfs_async(struct obd_export *exp, struct obd_info *oinfo,
int err;
if (rc)
@@ -78031,7 +82091,7 @@ index 9b92d55..0d56df1 100644
return rc ? rc : err;
}
diff --git a/drivers/staging/lustre/lustre/lov/lov_request.c b/drivers/staging/lustre/lustre/lov/lov_request.c
-index 4099b51..bb809b2 100644
+index 09dcaf4..8d02a46 100644
--- a/drivers/staging/lustre/lustre/lov/lov_request.c
+++ b/drivers/staging/lustre/lustre/lov/lov_request.c
@@ -41,9 +41,9 @@
@@ -78094,16 +82154,7 @@ index 4099b51..bb809b2 100644
rc = common_attr_done(set);
lov_put_reqset(set);
-@@ -330,7 +330,7 @@ int lov_fini_destroy_set(struct lov_request_set *set)
- if (!set)
- return 0;
- LASSERT(set->set_exp);
-- if (atomic_read(&set->set_completes)) {
-+ if (atomic_read_unchecked(&set->set_completes)) {
- /* FIXME update qos data here */
- }
-
-@@ -410,7 +410,7 @@ int lov_fini_setattr_set(struct lov_request_set *set)
+@@ -332,7 +332,7 @@ int lov_fini_setattr_set(struct lov_request_set *set)
if (!set)
return 0;
LASSERT(set->set_exp);
@@ -78112,7 +82163,7 @@ index 4099b51..bb809b2 100644
rc = common_attr_done(set);
/* FIXME update qos data here */
}
-@@ -571,9 +571,9 @@ int lov_fini_statfs_set(struct lov_request_set *set)
+@@ -493,9 +493,9 @@ int lov_fini_statfs_set(struct lov_request_set *set)
if (!set)
return 0;
@@ -78124,7 +82175,7 @@ index 4099b51..bb809b2 100644
}
lov_put_reqset(set);
return rc;
-@@ -654,7 +654,7 @@ static int cb_statfs_update(void *cookie, int rc)
+@@ -576,7 +576,7 @@ static int cb_statfs_update(void *cookie, int rc)
lov = &lovobd->u.lov;
osfs = set->set_oi->oi_osfs;
lov_sfs = oinfo->oi_osfs;
@@ -78133,7 +82184,7 @@ index 4099b51..bb809b2 100644
/* XXX: the same is done in lov_update_common_set, however
* lovset->set_exp is not initialized.
*/
-@@ -682,7 +682,7 @@ out:
+@@ -604,7 +604,7 @@ static int cb_statfs_update(void *cookie, int rc)
if (set->set_oi->oi_flags & OBD_STATFS_PTLRPCD &&
lov_set_finished(set, 0)) {
lov_statfs_interpret(NULL, set, set->set_count !=
@@ -78142,8 +82193,24 @@ index 4099b51..bb809b2 100644
}
return 0;
+diff --git a/drivers/staging/lustre/lustre/mdc/mdc_request.c b/drivers/staging/lustre/lustre/mdc/mdc_request.c
+index f56ea64..6a146f4 100644
+--- a/drivers/staging/lustre/lustre/mdc/mdc_request.c
++++ b/drivers/staging/lustre/lustre/mdc/mdc_request.c
+@@ -1219,9 +1219,9 @@ struct readpage_param {
+ * in PAGE_SIZE (if PAGE_SIZE greater than LU_PAGE_SIZE), and the
+ * lu_dirpage for this integrated page will be adjusted.
+ **/
+-static int mdc_read_page_remote(void *data, struct page *page0)
++static int mdc_read_page_remote(struct file *data, struct page *page0)
+ {
+- struct readpage_param *rp = data;
++ struct readpage_param *rp = (struct readpage_param *)data;
+ struct page **page_pool;
+ struct page *page;
+ struct lu_dirpage *dp;
diff --git a/drivers/staging/lustre/lustre/obdclass/llog_swab.c b/drivers/staging/lustre/lustre/obdclass/llog_swab.c
-index f7b9b19..cb58105 100644
+index 8c4c1b3..630be46 100644
--- a/drivers/staging/lustre/lustre/obdclass/llog_swab.c
+++ b/drivers/staging/lustre/lustre/obdclass/llog_swab.c
@@ -54,16 +54,20 @@ static void print_llogd_body(struct llogd_body *d)
@@ -78205,7 +82272,7 @@ index f7b9b19..cb58105 100644
__swab64s(&range->lsr_start);
__swab64s(&range->lsr_end);
__swab32s(&range->lsr_index);
-@@ -290,8 +300,10 @@ static void print_llog_hdr(struct llog_log_hdr *h)
+@@ -294,8 +304,10 @@ static void print_llog_hdr(struct llog_log_hdr *h)
CDEBUG(D_OTHER, "\tllh_tail.lrt_len: %#x\n", h->llh_tail.lrt_len);
}
@@ -78218,10 +82285,10 @@ index f7b9b19..cb58105 100644
lustre_swab_llog_rec(&h->llh_hdr);
diff --git a/drivers/staging/lustre/lustre/osc/osc_request.c b/drivers/staging/lustre/lustre/osc/osc_request.c
-index 536b868..6aeaeae 100644
+index 749781f..29b7705 100644
--- a/drivers/staging/lustre/lustre/osc/osc_request.c
+++ b/drivers/staging/lustre/lustre/osc/osc_request.c
-@@ -208,8 +208,9 @@ static inline void osc_pack_req_body(struct ptlrpc_request *req,
+@@ -179,8 +179,9 @@ static inline void osc_pack_req_body(struct ptlrpc_request *req,
static int osc_getattr_interpret(const struct lu_env *env,
struct ptlrpc_request *req,
@@ -78232,7 +82299,7 @@ index 536b868..6aeaeae 100644
struct ost_body *body;
if (rc != 0)
-@@ -254,7 +255,7 @@ static int osc_getattr_async(struct obd_export *exp, struct obd_info *oinfo,
+@@ -225,7 +226,7 @@ static int osc_getattr_async(struct obd_export *exp, struct obd_info *oinfo,
osc_pack_req_body(req, oinfo);
ptlrpc_request_set_replen(req);
@@ -78241,7 +82308,7 @@ index 536b868..6aeaeae 100644
CLASSERT(sizeof(*aa) <= sizeof(req->rq_async_args));
aa = ptlrpc_req_async_args(req);
-@@ -350,8 +351,9 @@ out:
+@@ -321,8 +322,9 @@ static int osc_setattr(const struct lu_env *env, struct obd_export *exp,
static int osc_setattr_interpret(const struct lu_env *env,
struct ptlrpc_request *req,
@@ -78252,7 +82319,7 @@ index 536b868..6aeaeae 100644
struct ost_body *body;
if (rc != 0)
-@@ -401,8 +403,7 @@ int osc_setattr_async_base(struct obd_export *exp, struct obd_info *oinfo,
+@@ -372,8 +374,7 @@ int osc_setattr_async_base(struct obd_export *exp, struct obd_info *oinfo,
/* Do not wait for response. */
ptlrpcd_add_req(req);
} else {
@@ -78262,7 +82329,7 @@ index 536b868..6aeaeae 100644
CLASSERT(sizeof(*sa) <= sizeof(req->rq_async_args));
sa = ptlrpc_req_async_args(req);
-@@ -545,7 +546,7 @@ int osc_punch_base(struct obd_export *exp, struct obd_info *oinfo,
+@@ -495,7 +496,7 @@ int osc_punch_base(struct obd_export *exp, struct obd_info *oinfo,
ptlrpc_request_set_replen(req);
@@ -78271,7 +82338,7 @@ index 536b868..6aeaeae 100644
CLASSERT(sizeof(*sa) <= sizeof(req->rq_async_args));
sa = ptlrpc_req_async_args(req);
sa->sa_oa = oinfo->oi_oa;
-@@ -2174,8 +2175,9 @@ static int osc_enqueue_fini(struct ptlrpc_request *req,
+@@ -2091,8 +2092,9 @@ static int osc_enqueue_fini(struct ptlrpc_request *req,
static int osc_enqueue_interpret(const struct lu_env *env,
struct ptlrpc_request *req,
@@ -78282,7 +82349,7 @@ index 536b868..6aeaeae 100644
struct ldlm_lock *lock;
struct lustre_handle *lockh = &aa->oa_lockh;
enum ldlm_mode mode = aa->oa_mode;
-@@ -2366,8 +2368,7 @@ no_match:
+@@ -2283,8 +2285,7 @@ int osc_enqueue_base(struct obd_export *exp, struct ldlm_res_id *res_id,
aa->oa_flags = NULL;
}
@@ -78292,7 +82359,7 @@ index 536b868..6aeaeae 100644
if (rqset == PTLRPCD_SET)
ptlrpcd_add_req(req);
else
-@@ -2443,8 +2444,9 @@ int osc_cancel_base(struct lustre_handle *lockh, __u32 mode)
+@@ -2360,8 +2361,9 @@ int osc_cancel_base(struct lustre_handle *lockh, __u32 mode)
static int osc_statfs_interpret(const struct lu_env *env,
struct ptlrpc_request *req,
@@ -78303,7 +82370,7 @@ index 536b868..6aeaeae 100644
struct obd_statfs *msfs;
if (rc == -EBADR)
-@@ -2512,7 +2514,7 @@ static int osc_statfs_async(struct obd_export *exp,
+@@ -2429,7 +2431,7 @@ static int osc_statfs_async(struct obd_export *exp,
req->rq_no_delay = 1;
}
@@ -78313,10 +82380,10 @@ index 536b868..6aeaeae 100644
aa = ptlrpc_req_async_args(req);
aa->aa_oi = oinfo;
diff --git a/drivers/staging/lustre/lustre/ptlrpc/layout.c b/drivers/staging/lustre/lustre/ptlrpc/layout.c
-index ab5d851..12e23dd 100644
+index 839ef3e..8912e22 100644
--- a/drivers/staging/lustre/lustre/ptlrpc/layout.c
+++ b/drivers/staging/lustre/lustre/ptlrpc/layout.c
-@@ -781,8 +781,8 @@ struct req_capsule;
+@@ -778,8 +778,8 @@ struct req_capsule;
.rmf_name = (name), \
.rmf_flags = (flags), \
.rmf_size = (size), \
@@ -78327,7 +82394,7 @@ index ab5d851..12e23dd 100644
}
struct req_msg_field RMF_GENERIC_DATA =
-@@ -1889,8 +1889,7 @@ static void *__req_capsule_get(struct req_capsule *pill,
+@@ -1871,8 +1871,7 @@ static void *__req_capsule_get(struct req_capsule *pill,
msg = __req_msg(pill, loc);
LASSERT(msg);
@@ -78338,19 +82405,19 @@ index ab5d851..12e23dd 100644
if (field->rmf_flags & RMF_F_STRUCT_ARRAY) {
/*
diff --git a/drivers/staging/lustre/lustre/ptlrpc/pack_generic.c b/drivers/staging/lustre/lustre/ptlrpc/pack_generic.c
-index b514f18..dd4b44f 100644
+index 8717685..8f066ed 100644
--- a/drivers/staging/lustre/lustre/ptlrpc/pack_generic.c
+++ b/drivers/staging/lustre/lustre/ptlrpc/pack_generic.c
-@@ -689,7 +689,7 @@ int lustre_msg_bufcount(struct lustre_msg *m)
+@@ -676,7 +676,7 @@ u32 lustre_msg_bufcount(struct lustre_msg *m)
+ }
}
- EXPORT_SYMBOL(lustre_msg_bufcount);
--char *lustre_msg_string(struct lustre_msg *m, int index, int max_len)
-+void *lustre_msg_string(struct lustre_msg *m, int index, int max_len)
+-char *lustre_msg_string(struct lustre_msg *m, u32 index, u32 max_len)
++void *lustre_msg_string(struct lustre_msg *m, u32 index, u32 max_len)
{
/* max_len == 0 means the string should fill the buffer */
char *str;
-@@ -1461,8 +1461,10 @@ EXPORT_SYMBOL(do_set_info_async);
+@@ -1435,8 +1435,10 @@ EXPORT_SYMBOL(do_set_info_async);
/* byte flipping routines for all wire types declared in
* lustre_idl.h implemented here.
*/
@@ -78362,9 +82429,9 @@ index b514f18..dd4b44f 100644
__swab32s(&b->pb_type);
__swab32s(&b->pb_version);
__swab32s(&b->pb_opc);
-@@ -1493,8 +1495,10 @@ void lustre_swab_ptlrpc_body(struct ptlrpc_body *b)
+@@ -1466,8 +1468,10 @@ void lustre_swab_ptlrpc_body(struct ptlrpc_body *b)
+ CLASSERT(offsetof(typeof(*b), pb_jobid) != 0);
}
- EXPORT_SYMBOL(lustre_swab_ptlrpc_body);
-void lustre_swab_connect(struct obd_connect_data *ocd)
+void lustre_swab_connect(void *_ocd)
@@ -78374,7 +82441,7 @@ index b514f18..dd4b44f 100644
__swab64s(&ocd->ocd_connect_flags);
__swab32s(&ocd->ocd_version);
__swab32s(&ocd->ocd_grant);
-@@ -1568,8 +1572,10 @@ static void lustre_swab_obdo(struct obdo *o)
+@@ -1541,8 +1545,10 @@ static void lustre_swab_obdo(struct obdo *o)
CLASSERT(offsetof(typeof(*o), o_padding_6) != 0);
}
@@ -78386,9 +82453,9 @@ index b514f18..dd4b44f 100644
__swab64s(&os->os_type);
__swab64s(&os->os_blocks);
__swab64s(&os->os_bfree);
-@@ -1593,42 +1599,54 @@ void lustre_swab_obd_statfs(struct obd_statfs *os)
+@@ -1565,37 +1571,49 @@ void lustre_swab_obd_statfs(struct obd_statfs *os)
+ CLASSERT(offsetof(typeof(*os), os_spare9) != 0);
}
- EXPORT_SYMBOL(lustre_swab_obd_statfs);
-void lustre_swab_obd_ioobj(struct obd_ioobj *ioo)
+void lustre_swab_obd_ioobj(void *_ioo)
@@ -78399,18 +82466,16 @@ index b514f18..dd4b44f 100644
__swab32s(&ioo->ioo_max_brw);
__swab32s(&ioo->ioo_bufcnt);
}
- EXPORT_SYMBOL(lustre_swab_obd_ioobj);
-void lustre_swab_niobuf_remote(struct niobuf_remote *nbr)
+void lustre_swab_niobuf_remote(void *_nbr)
{
+ struct niobuf_remote *nbr = _nbr;
+
- __swab64s(&nbr->offset);
- __swab32s(&nbr->len);
- __swab32s(&nbr->flags);
+ __swab64s(&nbr->rnb_offset);
+ __swab32s(&nbr->rnb_len);
+ __swab32s(&nbr->rnb_flags);
}
- EXPORT_SYMBOL(lustre_swab_niobuf_remote);
-void lustre_swab_ost_body(struct ost_body *b)
+void lustre_swab_ost_body(void *_b)
@@ -78419,7 +82484,6 @@ index b514f18..dd4b44f 100644
+
lustre_swab_obdo(&b->oa);
}
- EXPORT_SYMBOL(lustre_swab_ost_body);
-void lustre_swab_ost_last_id(u64 *id)
+void lustre_swab_ost_last_id(void *_id)
@@ -78428,7 +82492,6 @@ index b514f18..dd4b44f 100644
+
__swab64s(id);
}
- EXPORT_SYMBOL(lustre_swab_ost_last_id);
-void lustre_swab_generic_32s(__u32 *val)
+void lustre_swab_generic_32s(void *_val)
@@ -78437,7 +82500,6 @@ index b514f18..dd4b44f 100644
+
__swab32s(val);
}
- EXPORT_SYMBOL(lustre_swab_generic_32s);
-void lustre_swab_gl_desc(union ldlm_gl_desc *desc)
+void lustre_swab_gl_desc(void *_desc)
@@ -78447,7 +82509,7 @@ index b514f18..dd4b44f 100644
lustre_swab_lu_fid(&desc->lquota_desc.gl_id.qid_fid);
__swab64s(&desc->lquota_desc.gl_flags);
__swab64s(&desc->lquota_desc.gl_ver);
-@@ -1672,8 +1690,10 @@ void lustre_swab_lquota_lvb(struct lquota_lvb *lvb)
+@@ -1639,8 +1657,10 @@ void lustre_swab_lquota_lvb(struct lquota_lvb *lvb)
}
EXPORT_SYMBOL(lustre_swab_lquota_lvb);
@@ -78456,12 +82518,12 @@ index b514f18..dd4b44f 100644
{
+ struct mdt_body *b = _b;
+
- lustre_swab_lu_fid(&b->fid1);
- lustre_swab_lu_fid(&b->fid2);
+ lustre_swab_lu_fid(&b->mbo_fid1);
+ lustre_swab_lu_fid(&b->mbo_fid2);
/* handle is opaque */
-@@ -1706,8 +1726,10 @@ void lustre_swab_mdt_body(struct mdt_body *b)
+@@ -1672,16 +1692,19 @@ void lustre_swab_mdt_body(struct mdt_body *b)
+ CLASSERT(offsetof(typeof(*b), mbo_padding_5) != 0);
}
- EXPORT_SYMBOL(lustre_swab_mdt_body);
-void lustre_swab_mdt_ioepoch(struct mdt_ioepoch *b)
+void lustre_swab_mdt_ioepoch(void *_b)
@@ -78471,9 +82533,8 @@ index b514f18..dd4b44f 100644
/* handle is opaque */
__swab64s(&b->ioepoch);
__swab32s(&b->flags);
-@@ -1715,8 +1737,9 @@ void lustre_swab_mdt_ioepoch(struct mdt_ioepoch *b)
+ CLASSERT(offsetof(typeof(*b), padding) != 0);
}
- EXPORT_SYMBOL(lustre_swab_mdt_ioepoch);
-void lustre_swab_mgs_target_info(struct mgs_target_info *mti)
+void lustre_swab_mgs_target_info(void *_mti)
@@ -78482,7 +82543,7 @@ index b514f18..dd4b44f 100644
int i;
__swab32s(&mti->mti_lustre_ver);
-@@ -1754,16 +1777,20 @@ void lustre_swab_mgs_nidtbl_entry(struct mgs_nidtbl_entry *entry)
+@@ -1718,15 +1741,19 @@ void lustre_swab_mgs_nidtbl_entry(struct mgs_nidtbl_entry *entry)
}
EXPORT_SYMBOL(lustre_swab_mgs_nidtbl_entry);
@@ -78495,7 +82556,6 @@ index b514f18..dd4b44f 100644
__swab32s(&body->mcb_units);
__swab16s(&body->mcb_type);
}
- EXPORT_SYMBOL(lustre_swab_mgs_config_body);
-void lustre_swab_mgs_config_res(struct mgs_config_res *body)
+void lustre_swab_mgs_config_res(void *_body)
@@ -78505,7 +82565,7 @@ index b514f18..dd4b44f 100644
__swab64s(&body->mcr_offset);
__swab64s(&body->mcr_size);
}
-@@ -1791,8 +1818,10 @@ static void lustre_swab_obd_dqblk(struct obd_dqblk *b)
+@@ -1753,8 +1780,10 @@ static void lustre_swab_obd_dqblk(struct obd_dqblk *b)
CLASSERT(offsetof(typeof(*b), dqb_padding) != 0);
}
@@ -78517,7 +82577,7 @@ index b514f18..dd4b44f 100644
__swab32s(&q->qc_cmd);
__swab32s(&q->qc_type);
__swab32s(&q->qc_id);
-@@ -1820,8 +1849,9 @@ static void lustre_swab_fiemap_extent(struct ll_fiemap_extent *fm_extent)
+@@ -1781,8 +1810,9 @@ static void lustre_swab_fiemap_extent(struct ll_fiemap_extent *fm_extent)
__swab32s(&fm_extent->fe_device);
}
@@ -78525,12 +82585,12 @@ index b514f18..dd4b44f 100644
+void lustre_swab_fiemap(void *_fiemap)
{
+ struct ll_user_fiemap *fiemap = _fiemap;
- int i;
+ __u32 i;
__swab64s(&fiemap->fm_start);
-@@ -1836,8 +1866,10 @@ void lustre_swab_fiemap(struct ll_user_fiemap *fiemap)
+@@ -1796,8 +1826,10 @@ void lustre_swab_fiemap(struct ll_user_fiemap *fiemap)
+ lustre_swab_fiemap_extent(&fiemap->fm_extents[i]);
}
- EXPORT_SYMBOL(lustre_swab_fiemap);
-void lustre_swab_mdt_rec_reint (struct mdt_rec_reint *rr)
+void lustre_swab_mdt_rec_reint (void *_rr)
@@ -78540,7 +82600,7 @@ index b514f18..dd4b44f 100644
__swab32s(&rr->rr_opcode);
__swab32s(&rr->rr_cap);
__swab32s(&rr->rr_fsuid);
-@@ -1969,8 +2001,10 @@ static void lustre_swab_ldlm_policy_data(ldlm_wire_policy_data_t *d)
+@@ -1951,8 +1983,10 @@ static void lustre_swab_ldlm_policy_data(ldlm_wire_policy_data_t *d)
__swab32s(&d->l_flock.lfw_pid);
}
@@ -78551,8 +82611,8 @@ index b514f18..dd4b44f 100644
+
__swab64s(&i->opc);
}
- EXPORT_SYMBOL(lustre_swab_ldlm_intent);
-@@ -1990,8 +2024,10 @@ static void lustre_swab_ldlm_lock_desc(struct ldlm_lock_desc *l)
+
+@@ -1971,16 +2005,20 @@ static void lustre_swab_ldlm_lock_desc(struct ldlm_lock_desc *l)
lustre_swab_ldlm_policy_data(&l->l_policy_data);
}
@@ -78564,9 +82624,8 @@ index b514f18..dd4b44f 100644
__swab32s(&rq->lock_flags);
lustre_swab_ldlm_lock_desc(&rq->lock_desc);
__swab32s(&rq->lock_count);
-@@ -1999,8 +2035,10 @@ void lustre_swab_ldlm_request(struct ldlm_request *rq)
+ /* lock_handle[] opaque */
}
- EXPORT_SYMBOL(lustre_swab_ldlm_request);
-void lustre_swab_ldlm_reply(struct ldlm_reply *r)
+void lustre_swab_ldlm_reply(void *_r)
@@ -78576,8 +82635,8 @@ index b514f18..dd4b44f 100644
__swab32s(&r->lock_flags);
CLASSERT(offsetof(typeof(*r), lock_padding) != 0);
lustre_swab_ldlm_lock_desc(&r->lock_desc);
-@@ -2011,8 +2049,10 @@ void lustre_swab_ldlm_reply(struct ldlm_reply *r)
- EXPORT_SYMBOL(lustre_swab_ldlm_reply);
+@@ -1990,16 +2028,20 @@ void lustre_swab_ldlm_reply(struct ldlm_reply *r)
+ }
/* Dump functions */
-void dump_ioo(struct obd_ioobj *ioo)
@@ -78588,9 +82647,8 @@ index b514f18..dd4b44f 100644
CDEBUG(D_RPCTRACE,
"obd_ioobj: ioo_oid=" DOSTID ", ioo_max_brw=%#x, ioo_bufct=%d\n",
POSTID(&ioo->ioo_oid), ioo->ioo_max_brw,
-@@ -2020,8 +2060,10 @@ void dump_ioo(struct obd_ioobj *ioo)
+ ioo->ioo_bufcnt);
}
- EXPORT_SYMBOL(dump_ioo);
-void dump_rniobuf(struct niobuf_remote *nb)
+void dump_rniobuf(void *_nb)
@@ -78598,9 +82656,9 @@ index b514f18..dd4b44f 100644
+ struct niobuf_remote *nb = _nb;
+
CDEBUG(D_RPCTRACE, "niobuf_remote: offset=%llu, len=%d, flags=%x\n",
- nb->offset, nb->len, nb->flags);
+ nb->rnb_offset, nb->rnb_len, nb->rnb_flags);
}
-@@ -2089,14 +2131,18 @@ static void dump_obdo(struct obdo *oa)
+@@ -2066,13 +2108,17 @@ static void dump_obdo(struct obdo *oa)
CDEBUG(D_RPCTRACE, "obdo: o_lcookie = (llog_cookie dumping not yet implemented)\n");
}
@@ -78611,7 +82669,6 @@ index b514f18..dd4b44f 100644
+
dump_obdo(&ob->oa);
}
- EXPORT_SYMBOL(dump_ost_body);
-void dump_rcs(__u32 *rc)
+void dump_rcs(void *_rc)
@@ -78620,8 +82677,8 @@ index b514f18..dd4b44f 100644
+
CDEBUG(D_RPCTRACE, "rmf_rcs: %d\n", *rc);
}
- EXPORT_SYMBOL(dump_rcs);
-@@ -2173,8 +2219,10 @@ void _debug_req(struct ptlrpc_request *req,
+
+@@ -2148,8 +2194,10 @@ void _debug_req(struct ptlrpc_request *req,
}
EXPORT_SYMBOL(_debug_req);
@@ -78633,9 +82690,9 @@ index b514f18..dd4b44f 100644
lustre_swab_lu_fid(&c->lc_fid);
__swab64s(&c->lc_opc);
__swab64s(&c->lc_uid);
-@@ -2186,15 +2234,19 @@ void lustre_swab_lustre_capa(struct lustre_capa *c)
+@@ -2160,14 +2208,18 @@ void lustre_swab_lustre_capa(struct lustre_capa *c)
+ __swab32s(&c->lc_expiry);
}
- EXPORT_SYMBOL(lustre_swab_lustre_capa);
-void lustre_swab_hsm_user_state(struct hsm_user_state *state)
+void lustre_swab_hsm_user_state(void *_state)
@@ -78645,7 +82702,6 @@ index b514f18..dd4b44f 100644
__swab32s(&state->hus_states);
__swab32s(&state->hus_archive_id);
}
- EXPORT_SYMBOL(lustre_swab_hsm_user_state);
-void lustre_swab_hsm_state_set(struct hsm_state_set *hss)
+void lustre_swab_hsm_state_set(void *_hss)
@@ -78655,7 +82711,7 @@ index b514f18..dd4b44f 100644
__swab32s(&hss->hss_valid);
__swab64s(&hss->hss_setmask);
__swab64s(&hss->hss_clearmask);
-@@ -2208,23 +2260,29 @@ static void lustre_swab_hsm_extent(struct hsm_extent *extent)
+@@ -2181,29 +2233,37 @@ static void lustre_swab_hsm_extent(struct hsm_extent *extent)
__swab64s(&extent->length);
}
@@ -78668,7 +82724,6 @@ index b514f18..dd4b44f 100644
__swab32s(&action->hca_action);
lustre_swab_hsm_extent(&action->hca_location);
}
- EXPORT_SYMBOL(lustre_swab_hsm_current_action);
-void lustre_swab_hsm_user_item(struct hsm_user_item *hui)
+void lustre_swab_hsm_user_item(void *_hui)
@@ -78678,7 +82733,6 @@ index b514f18..dd4b44f 100644
lustre_swab_lu_fid(&hui->hui_fid);
lustre_swab_hsm_extent(&hui->hui_extent);
}
- EXPORT_SYMBOL(lustre_swab_hsm_user_item);
-void lustre_swab_layout_intent(struct layout_intent *li)
+void lustre_swab_layout_intent(void *_li)
@@ -78688,9 +82742,8 @@ index b514f18..dd4b44f 100644
__swab32s(&li->li_opc);
__swab32s(&li->li_flags);
__swab64s(&li->li_start);
-@@ -2232,8 +2290,10 @@ void lustre_swab_layout_intent(struct layout_intent *li)
+ __swab64s(&li->li_end);
}
- EXPORT_SYMBOL(lustre_swab_layout_intent);
-void lustre_swab_hsm_progress_kernel(struct hsm_progress_kernel *hpk)
+void lustre_swab_hsm_progress_kernel(void *_hpk)
@@ -78700,9 +82753,9 @@ index b514f18..dd4b44f 100644
lustre_swab_lu_fid(&hpk->hpk_fid);
__swab64s(&hpk->hpk_cookie);
__swab64s(&hpk->hpk_extent.offset);
-@@ -2243,8 +2303,10 @@ void lustre_swab_hsm_progress_kernel(struct hsm_progress_kernel *hpk)
+@@ -2212,8 +2272,10 @@ void lustre_swab_hsm_progress_kernel(struct hsm_progress_kernel *hpk)
+ __swab16s(&hpk->hpk_errval);
}
- EXPORT_SYMBOL(lustre_swab_hsm_progress_kernel);
-void lustre_swab_hsm_request(struct hsm_request *hr)
+void lustre_swab_hsm_request(void *_hr)
@@ -78712,9 +82765,9 @@ index b514f18..dd4b44f 100644
__swab32s(&hr->hr_action);
__swab32s(&hr->hr_archive_id);
__swab64s(&hr->hr_flags);
-@@ -2253,14 +2315,18 @@ void lustre_swab_hsm_request(struct hsm_request *hr)
+@@ -2221,14 +2283,18 @@ void lustre_swab_hsm_request(struct hsm_request *hr)
+ __swab32s(&hr->hr_data_len);
}
- EXPORT_SYMBOL(lustre_swab_hsm_request);
-void lustre_swab_swap_layouts(struct mdc_swap_layouts *msl)
+void lustre_swab_swap_layouts(void *_msl)
@@ -78734,10 +82787,10 @@ index b514f18..dd4b44f 100644
__swab64s(&cd->cd_data_version);
}
diff --git a/drivers/staging/rtl8188eu/core/rtw_mlme_ext.c b/drivers/staging/rtl8188eu/core/rtw_mlme_ext.c
-index 7f32b39..e24cff3 100644
+index fb13df5..20345631 100644
--- a/drivers/staging/rtl8188eu/core/rtw_mlme_ext.c
+++ b/drivers/staging/rtl8188eu/core/rtw_mlme_ext.c
-@@ -3978,7 +3978,7 @@ static void init_mlme_ext_priv_value(struct adapter *padapter)
+@@ -3923,7 +3923,7 @@ static void init_mlme_ext_priv_value(struct adapter *padapter)
_12M_RATE_, _24M_RATE_, 0xff,
};
@@ -78746,7 +82799,7 @@ index 7f32b39..e24cff3 100644
pmlmeext->mgnt_seq = 0;/* reset to zero when disconnect at client mode */
pmlmeext->cur_channel = padapter->registrypriv.channel;
-@@ -4171,7 +4171,7 @@ void free_mlme_ext_priv(struct mlme_ext_priv *pmlmeext)
+@@ -4116,7 +4116,7 @@ void free_mlme_ext_priv(struct mlme_ext_priv *pmlmeext)
static void _mgt_dispatcher(struct adapter *padapter, struct mlme_handler *ptable, struct recv_frame *precv_frame)
{
@@ -78755,7 +82808,7 @@ index 7f32b39..e24cff3 100644
u8 *pframe = precv_frame->rx_data;
if (ptable->func) {
-@@ -4190,7 +4190,7 @@ void mgt_dispatcher(struct adapter *padapter, struct recv_frame *precv_frame)
+@@ -4135,7 +4135,7 @@ void mgt_dispatcher(struct adapter *padapter, struct recv_frame *precv_frame)
#ifdef CONFIG_88EU_AP_MODE
struct mlme_priv *pmlmepriv = &padapter->mlmepriv;
#endif /* CONFIG_88EU_AP_MODE */
@@ -78764,7 +82817,7 @@ index 7f32b39..e24cff3 100644
u8 *pframe = precv_frame->rx_data;
struct sta_info *psta = rtw_get_stainfo(&padapter->stapriv, GetAddr2Ptr(pframe));
-@@ -4215,7 +4215,7 @@ void mgt_dispatcher(struct adapter *padapter, struct recv_frame *precv_frame)
+@@ -4160,7 +4160,7 @@ void mgt_dispatcher(struct adapter *padapter, struct recv_frame *precv_frame)
index = GetFrameSubType(pframe) >> 4;
@@ -78773,56 +82826,56 @@ index 7f32b39..e24cff3 100644
RT_TRACE(_module_rtl871x_mlme_c_, _drv_err_, ("Currently we do not support reserved sub-fr-type=%d\n", index));
return;
}
-@@ -4305,7 +4305,7 @@ void report_survey_event(struct adapter *padapter,
+@@ -4250,7 +4250,7 @@ void report_survey_event(struct adapter *padapter,
pc2h_evt_hdr = (struct C2HEvent_Header *)(pevtcmd);
pc2h_evt_hdr->len = sizeof(struct survey_event);
- pc2h_evt_hdr->ID = GEN_EVT_CODE(_Survey);
+ pc2h_evt_hdr->ID = _Survey_EVT_;
- pc2h_evt_hdr->seq = atomic_inc_return(&pmlmeext->event_seq);
+ pc2h_evt_hdr->seq = atomic_inc_return_unchecked(&pmlmeext->event_seq);
psurvey_evt = (struct survey_event *)(pevtcmd + sizeof(struct C2HEvent_Header));
-@@ -4355,7 +4355,7 @@ void report_surveydone_event(struct adapter *padapter)
+@@ -4300,7 +4300,7 @@ void report_surveydone_event(struct adapter *padapter)
pc2h_evt_hdr = (struct C2HEvent_Header *)(pevtcmd);
pc2h_evt_hdr->len = sizeof(struct surveydone_event);
- pc2h_evt_hdr->ID = GEN_EVT_CODE(_SurveyDone);
+ pc2h_evt_hdr->ID = _SurveyDone_EVT_;
- pc2h_evt_hdr->seq = atomic_inc_return(&pmlmeext->event_seq);
+ pc2h_evt_hdr->seq = atomic_inc_return_unchecked(&pmlmeext->event_seq);
psurveydone_evt = (struct surveydone_event *)(pevtcmd + sizeof(struct C2HEvent_Header));
psurveydone_evt->bss_cnt = pmlmeext->sitesurvey_res.bss_cnt;
-@@ -4399,7 +4399,7 @@ void report_join_res(struct adapter *padapter, int res)
+@@ -4344,7 +4344,7 @@ void report_join_res(struct adapter *padapter, int res)
pc2h_evt_hdr = (struct C2HEvent_Header *)(pevtcmd);
pc2h_evt_hdr->len = sizeof(struct joinbss_event);
- pc2h_evt_hdr->ID = GEN_EVT_CODE(_JoinBss);
+ pc2h_evt_hdr->ID = _JoinBss_EVT_;
- pc2h_evt_hdr->seq = atomic_inc_return(&pmlmeext->event_seq);
+ pc2h_evt_hdr->seq = atomic_inc_return_unchecked(&pmlmeext->event_seq);
pjoinbss_evt = (struct joinbss_event *)(pevtcmd + sizeof(struct C2HEvent_Header));
memcpy((unsigned char *)(&(pjoinbss_evt->network.network)), &(pmlmeinfo->network), sizeof(struct wlan_bssid_ex));
-@@ -4450,7 +4450,7 @@ void report_del_sta_event(struct adapter *padapter, unsigned char *MacAddr, unsi
+@@ -4395,7 +4395,7 @@ void report_del_sta_event(struct adapter *padapter, unsigned char *MacAddr, unsi
pc2h_evt_hdr = (struct C2HEvent_Header *)(pevtcmd);
pc2h_evt_hdr->len = sizeof(struct stadel_event);
- pc2h_evt_hdr->ID = GEN_EVT_CODE(_DelSTA);
+ pc2h_evt_hdr->ID = _DelSTA_EVT_;
- pc2h_evt_hdr->seq = atomic_inc_return(&pmlmeext->event_seq);
+ pc2h_evt_hdr->seq = atomic_inc_return_unchecked(&pmlmeext->event_seq);
pdel_sta_evt = (struct stadel_event *)(pevtcmd + sizeof(struct C2HEvent_Header));
- memcpy((unsigned char *)(&(pdel_sta_evt->macaddr)), MacAddr, ETH_ALEN);
-@@ -4503,7 +4503,7 @@ void report_add_sta_event(struct adapter *padapter, unsigned char *MacAddr, int
+ ether_addr_copy((unsigned char *)(&(pdel_sta_evt->macaddr)), MacAddr);
+@@ -4448,7 +4448,7 @@ void report_add_sta_event(struct adapter *padapter, unsigned char *MacAddr, int
pc2h_evt_hdr = (struct C2HEvent_Header *)(pevtcmd);
pc2h_evt_hdr->len = sizeof(struct stassoc_event);
- pc2h_evt_hdr->ID = GEN_EVT_CODE(_AddSTA);
+ pc2h_evt_hdr->ID = _AddSTA_EVT_;
- pc2h_evt_hdr->seq = atomic_inc_return(&pmlmeext->event_seq);
+ pc2h_evt_hdr->seq = atomic_inc_return_unchecked(&pmlmeext->event_seq);
padd_sta_evt = (struct stassoc_event *)(pevtcmd + sizeof(struct C2HEvent_Header));
- memcpy((unsigned char *)(&(padd_sta_evt->macaddr)), MacAddr, ETH_ALEN);
+ ether_addr_copy((unsigned char *)(&(padd_sta_evt->macaddr)), MacAddr);
diff --git a/drivers/staging/rtl8188eu/hal/rtl8188eu_recv.c b/drivers/staging/rtl8188eu/hal/rtl8188eu_recv.c
-index 255d6f2..52553d3 100644
+index d0495a1..bac1045 100644
--- a/drivers/staging/rtl8188eu/hal/rtl8188eu_recv.c
+++ b/drivers/staging/rtl8188eu/hal/rtl8188eu_recv.c
-@@ -30,7 +30,7 @@ int rtl8188eu_init_recv_priv(struct adapter *padapter)
+@@ -31,7 +31,7 @@ int rtw_hal_init_recv_priv(struct adapter *padapter)
struct recv_buf *precvbuf;
tasklet_init(&precvpriv->recv_tasklet,
@@ -78832,10 +82885,10 @@ index 255d6f2..52553d3 100644
/* init recv_buf */
diff --git a/drivers/staging/rtl8188eu/hal/rtl8188eu_xmit.c b/drivers/staging/rtl8188eu/hal/rtl8188eu_xmit.c
-index ec21d8c..1c2e09c 100644
+index 85650b2..d4511d1 100644
--- a/drivers/staging/rtl8188eu/hal/rtl8188eu_xmit.c
+++ b/drivers/staging/rtl8188eu/hal/rtl8188eu_xmit.c
-@@ -26,7 +26,7 @@ s32 rtl8188eu_init_xmit_priv(struct adapter *adapt)
+@@ -26,7 +26,7 @@ s32 rtw_hal_init_xmit_priv(struct adapter *adapt)
struct xmit_priv *pxmitpriv = &adapt->xmitpriv;
tasklet_init(&pxmitpriv->xmit_tasklet,
@@ -78845,10 +82898,10 @@ index ec21d8c..1c2e09c 100644
return _SUCCESS;
}
diff --git a/drivers/staging/rtl8188eu/include/Hal8188EPhyCfg.h b/drivers/staging/rtl8188eu/include/Hal8188EPhyCfg.h
-index 8990748..7727f804 100644
+index 0976a76..b155d7f 100644
--- a/drivers/staging/rtl8188eu/include/Hal8188EPhyCfg.h
+++ b/drivers/staging/rtl8188eu/include/Hal8188EPhyCfg.h
-@@ -200,17 +200,9 @@ void PHY_GetTxPowerLevel8188E(struct adapter *adapter, u32 *powerlevel);
+@@ -182,17 +182,9 @@ void PHY_GetTxPowerLevel8188E(struct adapter *adapter, u32 *powerlevel);
void PHY_ScanOperationBackup8188E(struct adapter *Adapter, u8 Operation);
@@ -78867,19 +82920,10 @@ index 8990748..7727f804 100644
/*--------------------------Exported Function prototype---------------------*/
diff --git a/drivers/staging/rtl8188eu/include/hal_intf.h b/drivers/staging/rtl8188eu/include/hal_intf.h
-index eaf939b..356437b 100644
+index fa032b0..e4adaa6 100644
--- a/drivers/staging/rtl8188eu/include/hal_intf.h
+++ b/drivers/staging/rtl8188eu/include/hal_intf.h
-@@ -212,7 +212,7 @@ struct hal_ops {
-
- void (*hal_notch_filter)(struct adapter *adapter, bool enable);
- void (*hal_reset_security_engine)(struct adapter *adapter);
--};
-+} __no_const;
-
- enum rt_eeprom_type {
- EEPROM_93C46,
-@@ -246,7 +246,6 @@ void rtw_hal_sw_led_deinit(struct adapter *padapter);
+@@ -173,7 +173,6 @@ void rtw_hal_sw_led_deinit(struct adapter *padapter);
u32 rtw_hal_power_on(struct adapter *padapter);
uint rtw_hal_init(struct adapter *padapter);
uint rtw_hal_deinit(struct adapter *padapter);
@@ -78887,7 +82931,7 @@ index eaf939b..356437b 100644
void rtw_hal_set_hwreg(struct adapter *padapter, u8 variable, u8 *val);
void rtw_hal_get_hwreg(struct adapter *padapter, u8 variable, u8 *val);
-@@ -275,8 +274,6 @@ void rtw_hal_free_recv_priv(struct adapter *padapter);
+@@ -202,8 +201,6 @@ void rtw_hal_free_recv_priv(struct adapter *padapter);
void rtw_hal_update_ra_mask(struct adapter *padapter, u32 mac_id, u8 level);
void rtw_hal_add_ra_tid(struct adapter *adapt, u32 bitmap, u8 arg, u8 level);
@@ -78909,49 +82953,37 @@ index 9e5fe17..bdb77bb 100644
void odm_InitHybridAntDiv(struct odm_dm_struct *pDM_Odm);
void odm_HwAntDiv(struct odm_dm_struct *pDM_Odm);
-diff --git a/drivers/staging/rtl8188eu/include/recv_osdep.h b/drivers/staging/rtl8188eu/include/recv_osdep.h
-index cad3158..a1ca486 100644
---- a/drivers/staging/rtl8188eu/include/recv_osdep.h
-+++ b/drivers/staging/rtl8188eu/include/recv_osdep.h
-@@ -30,7 +30,6 @@ void rtw_recv_returnpacket(struct net_device *cnxt, struct sk_buff *retpkt);
-
- void rtw_handle_tkip_mic_err(struct adapter *padapter, u8 bgroup);
-
--int rtw_init_recv_priv(struct recv_priv *precvpriv, struct adapter *padapter);
- void rtw_free_recv_priv(struct recv_priv *precvpriv);
-
- void rtw_os_recv_resource_alloc(struct recv_frame *recvfr);
diff --git a/drivers/staging/rtl8188eu/include/rtl8188e_recv.h b/drivers/staging/rtl8188eu/include/rtl8188e_recv.h
-index 54048bc..e86fdf4 100644
+index 80832a5..6468b0c 100644
--- a/drivers/staging/rtl8188eu/include/rtl8188e_recv.h
+++ b/drivers/staging/rtl8188eu/include/rtl8188e_recv.h
-@@ -54,7 +54,7 @@ enum rx_packet_type {
- s32 rtl8188eu_init_recv_priv(struct adapter *padapter);
- void rtl8188eu_free_recv_priv(struct adapter *padapter);
+@@ -52,7 +52,7 @@ enum rx_packet_type {
+
+ #define INTERRUPT_MSG_FORMAT_LEN 60
void rtl8188eu_recv_hdl(struct adapter *padapter, struct recv_buf *precvbuf);
-void rtl8188eu_recv_tasklet(void *priv);
+void rtl8188eu_recv_tasklet(unsigned long _priv);
void rtl8188e_query_rx_phy_status(struct recv_frame *fr, struct phy_stat *phy);
- void rtl8188e_process_phy_info(struct adapter *padapter, void *prframe);
- void update_recvframe_phyinfo_88e(struct recv_frame *fra, struct phy_stat *phy);
+ void rtl8188e_process_phy_info(struct adapter *padapter,
+ struct recv_frame *prframe);
diff --git a/drivers/staging/rtl8188eu/include/rtl8188e_xmit.h b/drivers/staging/rtl8188eu/include/rtl8188e_xmit.h
-index 65a63df..171cfed 100644
+index 66205b7..c8f7fa0 100644
--- a/drivers/staging/rtl8188eu/include/rtl8188e_xmit.h
+++ b/drivers/staging/rtl8188eu/include/rtl8188e_xmit.h
-@@ -158,7 +158,7 @@ s32 rtl8188eu_hal_xmit(struct adapter *padapter, struct xmit_frame *frame);
- s32 rtl8188eu_mgnt_xmit(struct adapter *padapter, struct xmit_frame *frame);
+@@ -156,7 +156,7 @@ void rtl8188e_fill_fake_txdesc(struct adapter *padapter, u8 *pDesc,
+ s32 rtl8188eu_init_xmit_priv(struct adapter *padapter);
s32 rtl8188eu_xmit_buf_handler(struct adapter *padapter);
#define hal_xmit_handler rtl8188eu_xmit_buf_handler
-void rtl8188eu_xmit_tasklet(void *priv);
+void rtl8188eu_xmit_tasklet(unsigned long _priv);
s32 rtl8188eu_xmitframe_complete(struct adapter *padapter,
- struct xmit_priv *pxmitpriv,
- struct xmit_buf *pxmitbuf);
+ struct xmit_priv *pxmitpriv);
+
diff --git a/drivers/staging/rtl8188eu/include/rtw_cmd.h b/drivers/staging/rtl8188eu/include/rtw_cmd.h
-index 08ca592..0eeed5d 100644
+index 18a6530..545d2c2 100644
--- a/drivers/staging/rtl8188eu/include/rtw_cmd.h
+++ b/drivers/staging/rtl8188eu/include/rtw_cmd.h
-@@ -368,7 +368,6 @@ void rtw_readtssi_cmdrsp_callback(struct adapter *adapt, struct cmd_obj *cmd);
+@@ -338,7 +338,6 @@ void rtw_readtssi_cmdrsp_callback(struct adapter *adapt, struct cmd_obj *cmd);
void rtw_setstaKey_cmdrsp_callback(struct adapter *adapt, struct cmd_obj *cmd);
void rtw_setassocsta_cmdrsp_callback(struct adapter *adapt, struct cmd_obj *cm);
@@ -78975,10 +83007,10 @@ index 5dd7384..337cc49 100644
-
#endif /* __RTL871X_EEPROM_H__ */
diff --git a/drivers/staging/rtl8188eu/include/rtw_ioctl.h b/drivers/staging/rtl8188eu/include/rtw_ioctl.h
-index 3a652df..4b3ac6b 100644
+index a6b1c85..3402297 100644
--- a/drivers/staging/rtl8188eu/include/rtw_ioctl.h
+++ b/drivers/staging/rtl8188eu/include/rtw_ioctl.h
-@@ -103,13 +103,4 @@ static int oid_null_function(struct oid_par_priv *poid_par_priv) {
+@@ -88,13 +88,4 @@ static int oid_null_function(struct oid_par_priv *poid_par_priv) {
extern struct iw_handler_def rtw_handlers_def;
@@ -78993,7 +83025,7 @@ index 3a652df..4b3ac6b 100644
-
#endif /* #ifndef __INC_CEINFO_ */
diff --git a/drivers/staging/rtl8188eu/include/rtw_mlme_ext.h b/drivers/staging/rtl8188eu/include/rtw_mlme_ext.h
-index 27382ff..851aeb0 100644
+index 1b1caaf..fc38094 100644
--- a/drivers/staging/rtl8188eu/include/rtw_mlme_ext.h
+++ b/drivers/staging/rtl8188eu/include/rtw_mlme_ext.h
@@ -404,7 +404,7 @@ struct p2p_oper_class_map {
@@ -79014,7 +83046,7 @@ index 27382ff..851aeb0 100644
void update_mgnt_tx_rate(struct adapter *padapter, u8 rate);
void update_mgntframe_attrib(struct adapter *padapter,
struct pkt_attrib *pattrib);
-@@ -599,12 +597,6 @@ struct cmd_hdl {
+@@ -597,12 +595,6 @@ struct cmd_hdl {
u8 (*h2cfuns)(struct adapter *padapter, u8 *pbuf);
};
@@ -79027,7 +83059,7 @@ index 27382ff..851aeb0 100644
u8 join_cmd_hdl(struct adapter *padapter, u8 *pbuf);
u8 disconnect_hdl(struct adapter *padapter, u8 *pbuf);
u8 createbss_hdl(struct adapter *padapter, u8 *pbuf);
-@@ -613,8 +605,6 @@ u8 sitesurvey_cmd_hdl(struct adapter *padapter, u8 *pbuf);
+@@ -611,8 +603,6 @@ u8 sitesurvey_cmd_hdl(struct adapter *padapter, u8 *pbuf);
u8 setauth_hdl(struct adapter *padapter, u8 *pbuf);
u8 setkey_hdl(struct adapter *padapter, u8 *pbuf);
u8 set_stakey_hdl(struct adapter *padapter, u8 *pbuf);
@@ -79050,10 +83082,10 @@ index f96ca6a..104d496 100644
void rtw_os_xmit_schedule(struct adapter *padapter);
diff --git a/drivers/staging/rtl8188eu/os_dep/usb_ops_linux.c b/drivers/staging/rtl8188eu/os_dep/usb_ops_linux.c
-index ce1e1a1..315c3e1 100644
+index d0d5915..53e6422 100644
--- a/drivers/staging/rtl8188eu/os_dep/usb_ops_linux.c
+++ b/drivers/staging/rtl8188eu/os_dep/usb_ops_linux.c
-@@ -810,10 +810,10 @@ void usb_write_port_cancel(struct adapter *padapter)
+@@ -807,10 +807,10 @@ void usb_write_port_cancel(struct adapter *padapter)
}
}
@@ -79066,7 +83098,7 @@ index ce1e1a1..315c3e1 100644
struct recv_priv *precvpriv = &adapt->recvpriv;
while (NULL != (pskb = skb_dequeue(&precvpriv->rx_skb_queue))) {
-@@ -829,10 +829,10 @@ void rtl8188eu_recv_tasklet(void *priv)
+@@ -826,10 +826,10 @@ void rtl8188eu_recv_tasklet(void *priv)
}
}
@@ -79080,7 +83112,7 @@ index ce1e1a1..315c3e1 100644
if (check_fwstate(&adapt->mlmepriv, _FW_UNDER_SURVEY))
diff --git a/drivers/staging/rtl8188eu/os_dep/xmit_linux.c b/drivers/staging/rtl8188eu/os_dep/xmit_linux.c
-index 221e275..bc552c9 100644
+index 4b1b04e..c5049c2 100644
--- a/drivers/staging/rtl8188eu/os_dep/xmit_linux.c
+++ b/drivers/staging/rtl8188eu/os_dep/xmit_linux.c
@@ -208,7 +208,7 @@ static int rtw_mlcst2unicst(struct adapter *padapter, struct sk_buff *skb)
@@ -79093,7 +83125,7 @@ index 221e275..bc552c9 100644
struct adapter *padapter = (struct adapter *)rtw_netdev_priv(pnetdev);
struct xmit_priv *pxmitpriv = &padapter->xmitpriv;
diff --git a/drivers/staging/rtl8192e/rtl8192e/rtl_core.c b/drivers/staging/rtl8192e/rtl8192e/rtl_core.c
-index 13a5ddc..8a876d9 100644
+index 4c30eea..b6681fa 100644
--- a/drivers/staging/rtl8192e/rtl8192e/rtl_core.c
+++ b/drivers/staging/rtl8192e/rtl8192e/rtl_core.c
@@ -84,7 +84,7 @@ static struct pci_driver rtl8192_pci_driver = {
@@ -79231,7 +83263,7 @@ index 13a5ddc..8a876d9 100644
struct r8192_priv *priv = container_of_work_rsl(data, struct r8192_priv,
reset_wq);
diff --git a/drivers/staging/rtl8192e/rtl8192e/rtl_core.h b/drivers/staging/rtl8192e/rtl8192e/rtl_core.h
-index f627fdc..3ad70fb 100644
+index babc0b3..2680a8b 100644
--- a/drivers/staging/rtl8192e/rtl8192e/rtl_core.h
+++ b/drivers/staging/rtl8192e/rtl8192e/rtl_core.h
@@ -586,12 +586,12 @@ void force_pci_posting(struct net_device *dev);
@@ -79319,7 +83351,7 @@ index 756a0dd..d2de5e8 100644
void rtl92e_dm_init_txpower_tracking(struct net_device *dev);
#endif /*__R8192UDM_H__ */
diff --git a/drivers/staging/rtl8192e/rtl8192e/rtl_ps.c b/drivers/staging/rtl8192e/rtl8192e/rtl_ps.c
-index 98e4d88..5216a5f 100644
+index aa4b015..d38df38 100644
--- a/drivers/staging/rtl8192e/rtl8192e/rtl_ps.c
+++ b/drivers/staging/rtl8192e/rtl8192e/rtl_ps.c
@@ -44,7 +44,7 @@ static void _rtl92e_hw_sleep(struct net_device *dev)
@@ -79371,7 +83403,7 @@ index a46f4cf..8f46fda 100644
void rtl92e_ips_enter(struct net_device *dev);
void rtl92e_ips_leave(struct net_device *dev);
diff --git a/drivers/staging/rtl8192e/rtl8192e/rtl_wx.c b/drivers/staging/rtl8192e/rtl8192e/rtl_wx.c
-index 70df6a1..21c9f2e 100644
+index 7413a10..93d1ec7 100644
--- a/drivers/staging/rtl8192e/rtl8192e/rtl_wx.c
+++ b/drivers/staging/rtl8192e/rtl8192e/rtl_wx.c
@@ -1187,30 +1187,30 @@ static const struct iw_priv_args r8192_private_args[] = {
@@ -79430,7 +83462,7 @@ index 70df6a1..21c9f2e 100644
static struct iw_statistics *_rtl92e_get_wireless_stats(struct net_device *dev)
diff --git a/drivers/staging/rtl8192e/rtllib.h b/drivers/staging/rtl8192e/rtllib.h
-index 776e179..5a021e6 100644
+index b895a53..f4ff606 100644
--- a/drivers/staging/rtl8192e/rtllib.h
+++ b/drivers/staging/rtl8192e/rtllib.h
@@ -1993,7 +1993,7 @@ int rtllib_encrypt_fragment(
@@ -79452,10 +83484,10 @@ index 776e179..5a021e6 100644
int rtllib_wx_set_rawtx(struct rtllib_device *ieee,
struct iw_request_info *info,
diff --git a/drivers/staging/rtl8192e/rtllib_softmac.c b/drivers/staging/rtl8192e/rtllib_softmac.c
-index 62154e3..bf1e431 100644
+index da74dc4..0c26265 100644
--- a/drivers/staging/rtl8192e/rtllib_softmac.c
+++ b/drivers/staging/rtl8192e/rtllib_softmac.c
-@@ -574,7 +574,7 @@ out:
+@@ -575,7 +575,7 @@ static void rtllib_softmac_scan_syncro(struct rtllib_device *ieee, u8 is_mesh)
wireless_send_event(ieee->dev, SIOCGIWSCAN, &wrqu, NULL);
}
@@ -79464,7 +83496,7 @@ index 62154e3..bf1e431 100644
{
struct rtllib_device *ieee = container_of_dwork_rsl(data,
struct rtllib_device, softmac_scan_wq);
-@@ -1513,7 +1513,7 @@ static void rtllib_associate_step2(struct rtllib_device *ieee)
+@@ -1517,7 +1517,7 @@ static void rtllib_associate_step2(struct rtllib_device *ieee)
}
}
@@ -79473,7 +83505,7 @@ index 62154e3..bf1e431 100644
{
struct rtllib_device *ieee = (struct rtllib_device *)
container_of_work_rsl(data,
-@@ -1582,7 +1582,7 @@ static void rtllib_associate_complete(struct rtllib_device *ieee)
+@@ -1586,7 +1586,7 @@ static void rtllib_associate_complete(struct rtllib_device *ieee)
schedule_work(&ieee->associate_complete_wq);
}
@@ -79482,7 +83514,7 @@ index 62154e3..bf1e431 100644
{
struct rtllib_device *ieee = container_of_dwork_rsl(data,
struct rtllib_device,
-@@ -2054,8 +2054,9 @@ static short rtllib_sta_ps_sleep(struct rtllib_device *ieee, u64 *time)
+@@ -2058,8 +2058,9 @@ static short rtllib_sta_ps_sleep(struct rtllib_device *ieee, u64 *time)
}
@@ -79493,7 +83525,7 @@ index 62154e3..bf1e431 100644
u64 time;
short sleep;
unsigned long flags, flags2;
-@@ -2576,7 +2577,7 @@ static void rtllib_start_monitor_mode(struct rtllib_device *ieee)
+@@ -2583,7 +2584,7 @@ static void rtllib_start_monitor_mode(struct rtllib_device *ieee)
}
}
@@ -79502,7 +83534,7 @@ index 62154e3..bf1e431 100644
{
struct rtllib_device *ieee = container_of_dwork_rsl(data,
struct rtllib_device, start_ibss_wq);
-@@ -2741,7 +2742,7 @@ static void rtllib_start_bss(struct rtllib_device *ieee)
+@@ -2748,7 +2749,7 @@ static void rtllib_start_bss(struct rtllib_device *ieee)
spin_unlock_irqrestore(&ieee->lock, flags);
}
@@ -79511,7 +83543,7 @@ index 62154e3..bf1e431 100644
{
struct rtllib_device *ieee = container_of_dwork_rsl(data,
struct rtllib_device, link_change_wq);
-@@ -2767,7 +2768,7 @@ void rtllib_disassociate(struct rtllib_device *ieee)
+@@ -2774,7 +2775,7 @@ void rtllib_disassociate(struct rtllib_device *ieee)
notify_wx_assoc_event(ieee);
}
@@ -79520,7 +83552,7 @@ index 62154e3..bf1e431 100644
{
struct rtllib_device *ieee = container_of_dwork_rsl(data,
struct rtllib_device, associate_retry_wq);
-@@ -3020,19 +3021,18 @@ void rtllib_softmac_init(struct rtllib_device *ieee)
+@@ -3027,19 +3028,18 @@ void rtllib_softmac_init(struct rtllib_device *ieee)
(unsigned long) ieee);
INIT_DELAYED_WORK_RSL(&ieee->link_change_wq,
@@ -79545,9 +83577,9 @@ index 62154e3..bf1e431 100644
+ rtllib_associate_retry_wq, ieee);
+ INIT_WORK_RSL(&ieee->wx_sync_scan_wq, rtllib_wx_sync_scan_wq, ieee);
- sema_init(&ieee->wx_sem, 1);
- sema_init(&ieee->scan_sem, 1);
-@@ -3042,7 +3042,7 @@ void rtllib_softmac_init(struct rtllib_device *ieee)
+ mutex_init(&ieee->wx_mutex);
+ mutex_init(&ieee->scan_mutex);
+@@ -3049,7 +3049,7 @@ void rtllib_softmac_init(struct rtllib_device *ieee)
spin_lock_init(&ieee->beacon_lock);
tasklet_init(&ieee->ps_task,
@@ -79557,10 +83589,10 @@ index 62154e3..bf1e431 100644
}
diff --git a/drivers/staging/rtl8192e/rtllib_softmac_wx.c b/drivers/staging/rtl8192e/rtllib_softmac_wx.c
-index 61ed8b0..a8b7d01 100644
+index 5f1412f..70d1ceb 100644
--- a/drivers/staging/rtl8192e/rtllib_softmac_wx.c
+++ b/drivers/staging/rtl8192e/rtllib_softmac_wx.c
-@@ -327,7 +327,7 @@ out:
+@@ -327,7 +327,7 @@ int rtllib_wx_set_mode(struct rtllib_device *ieee, struct iw_request_info *a,
}
EXPORT_SYMBOL(rtllib_wx_set_mode);
@@ -79570,20 +83602,20 @@ index 61ed8b0..a8b7d01 100644
struct rtllib_device *ieee = container_of_work_rsl(data,
struct rtllib_device, wx_sync_scan_wq);
diff --git a/drivers/staging/rtl8192e/rtllib_tx.c b/drivers/staging/rtl8192e/rtllib_tx.c
-index 58fc70e..3fe041e 100644
+index 78a3ad5..3b1b31a 100644
--- a/drivers/staging/rtl8192e/rtllib_tx.c
+++ b/drivers/staging/rtl8192e/rtllib_tx.c
-@@ -981,7 +981,7 @@ static int rtllib_xmit_inter(struct sk_buff *skb, struct net_device *dev)
- return 1;
+@@ -984,7 +984,7 @@ static int rtllib_xmit_inter(struct sk_buff *skb, struct net_device *dev)
}
+
-int rtllib_xmit(struct sk_buff *skb, struct net_device *dev)
+netdev_tx_t rtllib_xmit(struct sk_buff *skb, struct net_device *dev)
{
memset(skb->cb, 0, sizeof(skb->cb));
return rtllib_xmit_inter(skb, dev);
diff --git a/drivers/staging/rtl8192u/ieee80211/ieee80211.h b/drivers/staging/rtl8192u/ieee80211/ieee80211.h
-index 09e9499..dc65c79 100644
+index 077ea13..abc53a0 100644
--- a/drivers/staging/rtl8192u/ieee80211/ieee80211.h
+++ b/drivers/staging/rtl8192u/ieee80211/ieee80211.h
@@ -2174,7 +2174,7 @@ int ieee80211_set_encryption(struct ieee80211_device *ieee);
@@ -79596,10 +83628,10 @@ index 09e9499..dc65c79 100644
diff --git a/drivers/staging/rtl8192u/ieee80211/ieee80211_softmac.c b/drivers/staging/rtl8192u/ieee80211/ieee80211_softmac.c
-index 49db1b7..8e1b69a 100644
+index d7d85b3..20140ab 100644
--- a/drivers/staging/rtl8192u/ieee80211/ieee80211_softmac.c
+++ b/drivers/staging/rtl8192u/ieee80211/ieee80211_softmac.c
-@@ -1765,9 +1765,9 @@ static short ieee80211_sta_ps_sleep(struct ieee80211_device *ieee, u32 *time_h,
+@@ -1769,9 +1769,9 @@ static short ieee80211_sta_ps_sleep(struct ieee80211_device *ieee, u32 *time_h,
}
@@ -79611,7 +83643,7 @@ index 49db1b7..8e1b69a 100644
u32 th, tl;
short sleep;
-@@ -2735,7 +2735,7 @@ void ieee80211_softmac_init(struct ieee80211_device *ieee)
+@@ -2739,7 +2739,7 @@ void ieee80211_softmac_init(struct ieee80211_device *ieee)
spin_lock_init(&ieee->beacon_lock);
tasklet_init(&ieee->ps_task,
@@ -79634,10 +83666,10 @@ index 1ab0aea..41de55c 100644
struct ieee80211_device *ieee = netdev_priv(dev);
struct ieee80211_txb *txb = NULL;
diff --git a/drivers/staging/rtl8192u/r8192U_core.c b/drivers/staging/rtl8192u/r8192U_core.c
-index dd0970f..7fa0bdf 100644
+index 457eeb5..d6dd4ea 100644
--- a/drivers/staging/rtl8192u/r8192U_core.c
+++ b/drivers/staging/rtl8192u/r8192U_core.c
-@@ -2382,7 +2382,7 @@ static void rtl8192_init_priv_lock(struct r8192_priv *priv)
+@@ -2330,7 +2330,7 @@ static void rtl8192_init_priv_lock(struct r8192_priv *priv)
static void rtl819x_watchdog_wqcallback(struct work_struct *work);
@@ -79646,7 +83678,7 @@ index dd0970f..7fa0bdf 100644
/* init tasklet and wait_queue here. only 2.6 above kernel is considered */
#define DRV_NAME "wlan0"
static void rtl8192_init_priv_task(struct net_device *dev)
-@@ -2405,7 +2405,7 @@ static void rtl8192_init_priv_task(struct net_device *dev)
+@@ -2353,7 +2353,7 @@ static void rtl8192_init_priv_task(struct net_device *dev)
INIT_WORK(&priv->qos_activate, rtl8192_qos_activate);
tasklet_init(&priv->irq_rx_tasklet,
@@ -79655,7 +83687,7 @@ index dd0970f..7fa0bdf 100644
(unsigned long)priv);
}
-@@ -4942,8 +4942,9 @@ static void rtl8192_rx_cmd(struct sk_buff *skb)
+@@ -4890,8 +4890,9 @@ static void rtl8192_rx_cmd(struct sk_buff *skb)
}
}
@@ -79667,7 +83699,7 @@ index dd0970f..7fa0bdf 100644
struct rtl8192_rx_info *info;
diff --git a/drivers/staging/rtl8712/rtl8712_recv.c b/drivers/staging/rtl8712/rtl8712_recv.c
-index f25b34c..487a963 100644
+index 66f0e0a..395de9c 100644
--- a/drivers/staging/rtl8712/rtl8712_recv.c
+++ b/drivers/staging/rtl8712/rtl8712_recv.c
@@ -45,7 +45,7 @@ static u8 bridge_tunnel_header[] = {0xaa, 0xaa, 0x03, 0x00, 0x00, 0xf8};
@@ -79688,7 +83720,7 @@ index f25b34c..487a963 100644
(unsigned long)padapter);
skb_queue_head_init(&precvpriv->rx_skb_queue);
-@@ -1103,7 +1103,7 @@ _exit_recvbuf2recvframe:
+@@ -1121,7 +1121,7 @@ static int recvbuf2recvframe(struct _adapter *padapter, struct sk_buff *pskb)
return _SUCCESS;
}
@@ -79711,10 +83743,10 @@ index 26dd24c..2eb37c9 100644
struct io_req {
struct list_head list;
diff --git a/drivers/staging/rtl8712/rtl871x_ioctl.h b/drivers/staging/rtl8712/rtl871x_ioctl.h
-index c9218be..ecda3f6 100644
+index 08bcb3b..24c20e0 100644
--- a/drivers/staging/rtl8712/rtl871x_ioctl.h
+++ b/drivers/staging/rtl8712/rtl871x_ioctl.h
-@@ -76,18 +76,4 @@ uint oid_null_function(struct oid_par_priv *poid_par_priv);
+@@ -77,18 +77,4 @@ uint oid_null_function(struct oid_par_priv *poid_par_priv);
extern struct iw_handler_def r871x_handlers_def;
@@ -79734,7 +83766,7 @@ index c9218be..ecda3f6 100644
-
#endif
diff --git a/drivers/staging/rtl8712/rtl871x_xmit.c b/drivers/staging/rtl8712/rtl871x_xmit.c
-index 99256ba..1b789b8 100644
+index be38364..87b461b 100644
--- a/drivers/staging/rtl8712/rtl871x_xmit.c
+++ b/drivers/staging/rtl8712/rtl871x_xmit.c
@@ -152,7 +152,7 @@ sint _r8712_init_xmit_priv(struct xmit_priv *pxmitpriv,
@@ -79747,10 +83779,10 @@ index 99256ba..1b789b8 100644
return _SUCCESS;
}
diff --git a/drivers/staging/rtl8712/rtl871x_xmit.h b/drivers/staging/rtl8712/rtl871x_xmit.h
-index a9633c3..77b0c85 100644
+index d899d0c..f27928e 100644
--- a/drivers/staging/rtl8712/rtl871x_xmit.h
+++ b/drivers/staging/rtl8712/rtl871x_xmit.h
-@@ -291,7 +291,7 @@ int r8712_pre_xmit(struct _adapter *padapter, struct xmit_frame *pxmitframe);
+@@ -295,7 +295,7 @@ int r8712_pre_xmit(struct _adapter *padapter, struct xmit_frame *pxmitframe);
int r8712_xmit_enqueue(struct _adapter *padapter,
struct xmit_frame *pxmitframe);
int r8712_xmit_direct(struct _adapter *padapter, struct xmit_frame *pxmitframe);
@@ -79760,10 +83792,10 @@ index a9633c3..77b0c85 100644
void xmitframe_xmitbuf_attach(struct xmit_frame *pxmitframe,
struct xmit_buf *pxmitbuf);
diff --git a/drivers/staging/rtl8712/usb_ops_linux.c b/drivers/staging/rtl8712/usb_ops_linux.c
-index 6f1234570..3c8fb5a 100644
+index fc6bb0b..3b073c6 100644
--- a/drivers/staging/rtl8712/usb_ops_linux.c
+++ b/drivers/staging/rtl8712/usb_ops_linux.c
-@@ -331,10 +331,10 @@ void r8712_usb_read_port_cancel(struct _adapter *padapter)
+@@ -319,10 +319,10 @@ void r8712_usb_read_port_cancel(struct _adapter *padapter)
}
}
@@ -79777,10 +83809,10 @@ index 6f1234570..3c8fb5a 100644
if (padapter->bDriverStopped ||
diff --git a/drivers/staging/rtl8712/xmit_linux.c b/drivers/staging/rtl8712/xmit_linux.c
-index 695f9b9..5f8019a 100644
+index 4ee4136..0b001b5 100644
--- a/drivers/staging/rtl8712/xmit_linux.c
+++ b/drivers/staging/rtl8712/xmit_linux.c
-@@ -156,7 +156,7 @@ void r8712_xmit_complete(struct _adapter *padapter, struct xmit_frame *pxframe)
+@@ -159,7 +159,7 @@ void r8712_xmit_complete(struct _adapter *padapter, struct xmit_frame *pxframe)
pxframe->pkt = NULL;
}
@@ -79802,340 +83834,8 @@ index 8eba7ca..6c4ce81 100644
void r8712_SetFilter(struct work_struct *work);
int r8712_xmit_resource_alloc(struct _adapter *padapter,
struct xmit_buf *pxmitbuf);
-diff --git a/drivers/staging/rtl8723au/core/rtw_mlme_ext.c b/drivers/staging/rtl8723au/core/rtw_mlme_ext.c
-index 7dd1540..52d1392 100644
---- a/drivers/staging/rtl8723au/core/rtw_mlme_ext.c
-+++ b/drivers/staging/rtl8723au/core/rtw_mlme_ext.c
-@@ -368,7 +368,7 @@ static void init_mlme_ext_priv23a_value(struct rtw_adapter *padapter)
- _1M_RATE_, _2M_RATE_, _5M_RATE_, _11M_RATE_, _6M_RATE_,
- _12M_RATE_, _24M_RATE_, 0xff,};
-
-- atomic_set(&pmlmeext->event_seq, 0);
-+ atomic_set_unchecked(&pmlmeext->event_seq, 0);
- /* reset to zero when disconnect at client mode */
- pmlmeext->mgnt_seq = 0;
-
-@@ -4734,7 +4734,7 @@ void report_survey_event23a(struct rtw_adapter *padapter,
- pc2h_evt_hdr = (struct C2HEvent_Header *)(pevtcmd);
- pc2h_evt_hdr->len = sizeof(struct survey_event);
- pc2h_evt_hdr->ID = GEN_EVT_CODE(_Survey);
-- pc2h_evt_hdr->seq = atomic_inc_return(&pmlmeext->event_seq);
-+ pc2h_evt_hdr->seq = atomic_inc_return_unchecked(&pmlmeext->event_seq);
-
- psurvey_evt = (struct survey_event*)(pevtcmd + sizeof(struct C2HEvent_Header));
-
-@@ -4783,7 +4783,7 @@ void report_surveydone_event23a(struct rtw_adapter *padapter)
- pc2h_evt_hdr = (struct C2HEvent_Header *)(pevtcmd);
- pc2h_evt_hdr->len = sizeof(struct surveydone_event);
- pc2h_evt_hdr->ID = GEN_EVT_CODE(_SurveyDone);
-- pc2h_evt_hdr->seq = atomic_inc_return(&pmlmeext->event_seq);
-+ pc2h_evt_hdr->seq = atomic_inc_return_unchecked(&pmlmeext->event_seq);
-
- psurveydone_evt = (struct surveydone_event*)(pevtcmd + sizeof(struct C2HEvent_Header));
- psurveydone_evt->bss_cnt = pmlmeext->sitesurvey_res.bss_cnt;
-@@ -4825,7 +4825,7 @@ void report_join_res23a(struct rtw_adapter *padapter, int res)
- pc2h_evt_hdr = (struct C2HEvent_Header *)(pevtcmd);
- pc2h_evt_hdr->len = sizeof(struct joinbss_event);
- pc2h_evt_hdr->ID = GEN_EVT_CODE(_JoinBss);
-- pc2h_evt_hdr->seq = atomic_inc_return(&pmlmeext->event_seq);
-+ pc2h_evt_hdr->seq = atomic_inc_return_unchecked(&pmlmeext->event_seq);
-
- pjoinbss_evt = (struct joinbss_event*)(pevtcmd + sizeof(struct C2HEvent_Header));
- memcpy((unsigned char *)&pjoinbss_evt->network.network,
-@@ -4873,7 +4873,7 @@ void report_del_sta_event23a(struct rtw_adapter *padapter,
- pc2h_evt_hdr = (struct C2HEvent_Header *)(pevtcmd);
- pc2h_evt_hdr->len = sizeof(struct stadel_event);
- pc2h_evt_hdr->ID = GEN_EVT_CODE(_DelSTA);
-- pc2h_evt_hdr->seq = atomic_inc_return(&pmlmeext->event_seq);
-+ pc2h_evt_hdr->seq = atomic_inc_return_unchecked(&pmlmeext->event_seq);
-
- pdel_sta_evt = (struct stadel_event*)(pevtcmd + sizeof(struct C2HEvent_Header));
- ether_addr_copy((unsigned char *)&pdel_sta_evt->macaddr, MacAddr);
-@@ -4925,7 +4925,7 @@ void report_add_sta_event23a(struct rtw_adapter *padapter,
- pc2h_evt_hdr = (struct C2HEvent_Header *)(pevtcmd);
- pc2h_evt_hdr->len = sizeof(struct stassoc_event);
- pc2h_evt_hdr->ID = GEN_EVT_CODE(_AddSTA);
-- pc2h_evt_hdr->seq = atomic_inc_return(&pmlmeext->event_seq);
-+ pc2h_evt_hdr->seq = atomic_inc_return_unchecked(&pmlmeext->event_seq);
-
- padd_sta_evt = (struct stassoc_event*)(pevtcmd + sizeof(struct C2HEvent_Header));
- ether_addr_copy((unsigned char *)&padd_sta_evt->macaddr, MacAddr);
-diff --git a/drivers/staging/rtl8723au/core/rtw_xmit.c b/drivers/staging/rtl8723au/core/rtw_xmit.c
-index 3de40cf..8213068 100644
---- a/drivers/staging/rtl8723au/core/rtw_xmit.c
-+++ b/drivers/staging/rtl8723au/core/rtw_xmit.c
-@@ -183,7 +183,7 @@ int _rtw_init_xmit_priv23a(struct xmit_priv *pxmitpriv,
- mutex_init(&pxmitpriv->ack_tx_mutex);
- rtw_sctx_init23a(&pxmitpriv->ack_tx_ops, 0);
- tasklet_init(&padapter->xmitpriv.xmit_tasklet,
-- (void(*)(unsigned long))rtl8723au_xmit_tasklet,
-+ rtl8723au_xmit_tasklet,
- (unsigned long)padapter);
-
- exit:
-diff --git a/drivers/staging/rtl8723au/hal/rtl8723au_recv.c b/drivers/staging/rtl8723au/hal/rtl8723au_recv.c
-index 0fec84b..298d283 100644
---- a/drivers/staging/rtl8723au/hal/rtl8723au_recv.c
-+++ b/drivers/staging/rtl8723au/hal/rtl8723au_recv.c
-@@ -33,7 +33,7 @@ int rtl8723au_init_recv_priv(struct rtw_adapter *padapter)
- struct sk_buff *pskb;
-
- tasklet_init(&precvpriv->recv_tasklet,
-- (void(*)(unsigned long))rtl8723au_recv_tasklet,
-+ rtl8723au_recv_tasklet,
- (unsigned long)padapter);
-
- precvpriv->int_in_urb = usb_alloc_urb(0, GFP_KERNEL);
-diff --git a/drivers/staging/rtl8723au/hal/usb_ops_linux.c b/drivers/staging/rtl8723au/hal/usb_ops_linux.c
-index 5c81ff4..b4c2601 100644
---- a/drivers/staging/rtl8723au/hal/usb_ops_linux.c
-+++ b/drivers/staging/rtl8723au/hal/usb_ops_linux.c
-@@ -483,7 +483,7 @@ _exit_recvbuf2recvframe:
- return _SUCCESS;
- }
-
--void rtl8723au_recv_tasklet(void *priv)
-+void rtl8723au_recv_tasklet(unsigned long priv)
- {
- struct sk_buff *pskb;
- struct rtw_adapter *padapter = (struct rtw_adapter *)priv;
-@@ -658,7 +658,7 @@ int rtl8723au_read_port(struct rtw_adapter *adapter, u32 cnt,
- return ret;
- }
-
--void rtl8723au_xmit_tasklet(void *priv)
-+void rtl8723au_xmit_tasklet(unsigned long priv)
- {
- int ret;
- struct rtw_adapter *padapter = (struct rtw_adapter *)priv;
-diff --git a/drivers/staging/rtl8723au/include/Hal8723APhyCfg.h b/drivers/staging/rtl8723au/include/Hal8723APhyCfg.h
-index bcf3657..74d4742 100644
---- a/drivers/staging/rtl8723au/include/Hal8723APhyCfg.h
-+++ b/drivers/staging/rtl8723au/include/Hal8723APhyCfg.h
-@@ -135,7 +135,6 @@ void PHY_SetBWMode23a8723A(struct rtw_adapter *pAdapter,
- /* */
- void PHY_SwChnl8723A(struct rtw_adapter *pAdapter, u8 channel);
- /* Call after initialization */
--void ChkFwCmdIoDone(struct rtw_adapter *Adapter);
-
- /* */
- /* Modify the value of the hw register when beacon interval be changed. */
-@@ -144,13 +143,6 @@ void
- rtl8192c_PHY_SetBeaconHwReg(struct rtw_adapter *Adapter, u16 BeaconInterval);
-
-
--void PHY_SwitchEphyParameter(struct rtw_adapter *Adapter);
--
--void PHY_EnableHostClkReq(struct rtw_adapter *Adapter);
--
--bool
--SetAntennaConfig92C(struct rtw_adapter *Adapter, u8 DefaultAnt);
--
- /*--------------------------Exported Function prototype---------------------*/
-
- #define PHY_SetMacReg PHY_SetBBReg
-diff --git a/drivers/staging/rtl8723au/include/drv_types.h b/drivers/staging/rtl8723au/include/drv_types.h
-index e83463a..84230f3 100644
---- a/drivers/staging/rtl8723au/include/drv_types.h
-+++ b/drivers/staging/rtl8723au/include/drv_types.h
-@@ -185,7 +185,7 @@ struct dvobj_priv {
-
- struct usb_interface *pusbintf;
- struct usb_device *pusbdev;
-- atomic_t continual_urb_error;
-+ atomic_unchecked_t continual_urb_error;
-
- /*-------- below is for PCIE INTERFACE --------*/
-
-diff --git a/drivers/staging/rtl8723au/include/hal_intf.h b/drivers/staging/rtl8723au/include/hal_intf.h
-index b924d47..1e3e51c 100644
---- a/drivers/staging/rtl8723au/include/hal_intf.h
-+++ b/drivers/staging/rtl8723au/include/hal_intf.h
-@@ -97,10 +97,8 @@ int pm_netdev_open23a(struct net_device *pnetdev, u8 bnormal);
-
- int rtl8723au_hal_init(struct rtw_adapter *padapter);
- int rtl8723au_hal_deinit(struct rtw_adapter *padapter);
--void rtw_hal_stop(struct rtw_adapter *padapter);
-
- void rtw_hal_update_ra_mask23a(struct sta_info *psta, u8 rssi_level);
--void rtw_hal_clone_data(struct rtw_adapter *dst_padapter, struct rtw_adapter *src_padapter);
-
- void hw_var_set_correct_tsf(struct rtw_adapter *padapter);
- void hw_var_set_mlme_disconnect(struct rtw_adapter *padapter);
-diff --git a/drivers/staging/rtl8723au/include/recv_osdep.h b/drivers/staging/rtl8723au/include/recv_osdep.h
-index c2d3f1b..bb0dc02 100644
---- a/drivers/staging/rtl8723au/include/recv_osdep.h
-+++ b/drivers/staging/rtl8723au/include/recv_osdep.h
-@@ -26,7 +26,6 @@ int rtw_recv_indicatepkt23a(struct rtw_adapter *adapter, struct recv_frame *prec
-
- void rtw_handle_tkip_mic_err23a(struct rtw_adapter *padapter, u8 bgroup);
-
--int rtw_init_recv_priv(struct recv_priv *precvpriv, struct rtw_adapter *padapter);
- void rtw_free_recv_priv (struct recv_priv *precvpriv);
-
- int rtw_os_recv_resource_init(struct recv_priv *precvpriv, struct rtw_adapter *padapter);
-diff --git a/drivers/staging/rtl8723au/include/rtw_ap.h b/drivers/staging/rtl8723au/include/rtw_ap.h
-index 55a708f..2f111af 100644
---- a/drivers/staging/rtl8723au/include/rtw_ap.h
-+++ b/drivers/staging/rtl8723au/include/rtw_ap.h
-@@ -26,8 +26,6 @@
- void init_mlme_ap_info23a(struct rtw_adapter *padapter);
- void free_mlme_ap_info23a(struct rtw_adapter *padapter);
- /* void update_BCNTIM(struct rtw_adapter *padapter); */
--void rtw_add_bcn_ie(struct rtw_adapter *padapter, struct wlan_bssid_ex *pnetwork, u8 index, u8 *data, u8 len);
--void rtw_remove_bcn_ie(struct rtw_adapter *padapter, struct wlan_bssid_ex *pnetwork, u8 index);
- void update_beacon23a(struct rtw_adapter *padapter, u8 ie_id, u8 *oui, u8 tx);
- void add_RATid23a(struct rtw_adapter *padapter, struct sta_info *psta, u8 rssi_level);
- void expire_timeout_chk23a(struct rtw_adapter *padapter);
-diff --git a/drivers/staging/rtl8723au/include/rtw_cmd.h b/drivers/staging/rtl8723au/include/rtw_cmd.h
-index d1fa95d..338b933 100644
---- a/drivers/staging/rtl8723au/include/rtw_cmd.h
-+++ b/drivers/staging/rtl8723au/include/rtw_cmd.h
-@@ -712,7 +712,6 @@ int rtw_ps_cmd23a(struct rtw_adapter*padapter);
- int rtw_chk_hi_queue_cmd23a(struct rtw_adapter*padapter);
- #endif
-
--int rtw_set_chplan_cmd(struct rtw_adapter*padapter, u8 chplan, u8 enqueue);
- int rtw_led_blink_cmd(struct rtw_adapter*padapter, struct led_8723a *pLed);
- int rtw_set_csa_cmd(struct rtw_adapter*padapter, u8 new_ch_no);
-
-diff --git a/drivers/staging/rtl8723au/include/rtw_eeprom.h b/drivers/staging/rtl8723au/include/rtw_eeprom.h
-index a86f36e..8addfe7 100644
---- a/drivers/staging/rtl8723au/include/rtw_eeprom.h
-+++ b/drivers/staging/rtl8723au/include/rtw_eeprom.h
-@@ -125,11 +125,4 @@ struct eeprom_priv {
- u8 efuse_eeprom_data[HWSET_MAX_SIZE_512]; /* 92C:256bytes, 88E:512bytes, we use union set (512bytes) */
- };
-
--void eeprom_write16(struct rtw_adapter *padapter, u16 reg, u16 data);
--u16 eeprom_read16(struct rtw_adapter *padapter, u16 reg);
--void read_eeprom_content(struct rtw_adapter *padapter);
--void eeprom_read_sz(struct rtw_adapter *padapter, u16 reg, u8 *data, u32 sz);
--
--void read_eeprom_content_by_attrib(struct rtw_adapter *padapter);
--
- #endif /* __RTL871X_EEPROM_H__ */
-diff --git a/drivers/staging/rtl8723au/include/rtw_mlme_ext.h b/drivers/staging/rtl8723au/include/rtw_mlme_ext.h
-index 0e7d3da..4a54c4fa3 100644
---- a/drivers/staging/rtl8723au/include/rtw_mlme_ext.h
-+++ b/drivers/staging/rtl8723au/include/rtw_mlme_ext.h
-@@ -406,7 +406,7 @@ struct p2p_oper_class_map {
- struct mlme_ext_priv {
- struct rtw_adapter *padapter;
- u8 mlmeext_init;
-- atomic_t event_seq;
-+ atomic_unchecked_t event_seq;
- u16 mgnt_seq;
-
- /* struct fw_priv fwpriv; */
-@@ -541,8 +541,6 @@ void report_add_sta_event23a(struct rtw_adapter *padapter,
- unsigned char *MacAddr, int cam_idx);
-
- int set_tx_beacon_cmd23a(struct rtw_adapter*padapter);
--unsigned int setup_beacon_frame(struct rtw_adapter *padapter,
-- unsigned char *beacon_frame);
- void update_mgnt_tx_rate23a(struct rtw_adapter *padapter, u8 rate);
- void update_mgntframe_attrib23a(struct rtw_adapter *padapter,
- struct pkt_attrib *pattrib);
-@@ -595,14 +593,6 @@ struct cmd_hdl {
- };
-
-
--int read_macreg_hdl(struct rtw_adapter *padapter, u8 *pbuf);
--int write_macreg_hdl(struct rtw_adapter *padapter, u8 *pbuf);
--int read_bbreg_hdl(struct rtw_adapter *padapter, u8 *pbuf);
--int write_bbreg_hdl(struct rtw_adapter *padapter, u8 *pbuf);
--int read_rfreg_hdl(struct rtw_adapter *padapter, u8 *pbuf);
--int write_rfreg_hdl(struct rtw_adapter *padapter, u8 *pbuf);
--
--
- int NULL_hdl23a(struct rtw_adapter *padapter, const u8 *pbuf);
- int join_cmd_hdl23a(struct rtw_adapter *padapter, const u8 *pbuf);
- int disconnect_hdl23a(struct rtw_adapter *padapter, const u8 *pbuf);
-@@ -612,8 +602,6 @@ int sitesurvey_cmd_hdl23a(struct rtw_adapter *padapter, const u8 *pbuf);
- int setauth_hdl23a(struct rtw_adapter *padapter, const u8 *pbuf);
- int setkey_hdl23a(struct rtw_adapter *padapter, const u8 *pbuf);
- int set_stakey_hdl23a(struct rtw_adapter *padapter, const u8 *pbuf);
--int set_assocsta_hdl(struct rtw_adapter *padapter, const u8 *pbuf);
--int del_assocsta_hdl(struct rtw_adapter *padapter, const u8 *pbuf);
- int add_ba_hdl23a(struct rtw_adapter *padapter, const u8 *pbuf);
-
- int mlme_evt_hdl23a(struct rtw_adapter *padapter, const u8 *pbuf);
-diff --git a/drivers/staging/rtl8723au/include/usb_ops.h b/drivers/staging/rtl8723au/include/usb_ops.h
-index ff11e13..22a13ac 100644
---- a/drivers/staging/rtl8723au/include/usb_ops.h
-+++ b/drivers/staging/rtl8723au/include/usb_ops.h
-@@ -36,9 +36,9 @@ enum {
-
- void rtl8723au_set_hw_type(struct rtw_adapter *padapter);
-
--void rtl8723au_recv_tasklet(void *priv);
-+void rtl8723au_recv_tasklet(unsigned long priv);
-
--void rtl8723au_xmit_tasklet(void *priv);
-+void rtl8723au_xmit_tasklet(unsigned long priv);
-
- /* Increase and check if the continual_urb_error of this @param dvobjprive is
- * larger than MAX_CONTINUAL_URB_ERR. Return result
-@@ -48,7 +48,7 @@ static inline int rtw_inc_and_chk_continual_urb_error(struct dvobj_priv *dvobj)
- int ret = false;
- int value;
-
-- value = atomic_inc_return(&dvobj->continual_urb_error);
-+ value = atomic_inc_return_unchecked(&dvobj->continual_urb_error);
- if (value > MAX_CONTINUAL_URB_ERR) {
- DBG_8723A("[dvobj:%p][ERROR] continual_urb_error:%d > %d\n",
- dvobj, value, MAX_CONTINUAL_URB_ERR);
-@@ -60,7 +60,7 @@ static inline int rtw_inc_and_chk_continual_urb_error(struct dvobj_priv *dvobj)
- /* Set the continual_urb_error of this @param dvobjprive to 0 */
- static inline void rtw_reset_continual_urb_error(struct dvobj_priv *dvobj)
- {
-- atomic_set(&dvobj->continual_urb_error, 0);
-+ atomic_set_unchecked(&dvobj->continual_urb_error, 0);
- }
-
- bool rtl8723au_chip_configure(struct rtw_adapter *padapter);
-diff --git a/drivers/staging/rtl8723au/include/xmit_osdep.h b/drivers/staging/rtl8723au/include/xmit_osdep.h
-index 2be04c48..a494e09 100644
---- a/drivers/staging/rtl8723au/include/xmit_osdep.h
-+++ b/drivers/staging/rtl8723au/include/xmit_osdep.h
-@@ -21,7 +21,7 @@
-
- #define NR_XMITFRAME 256
-
--int rtw_xmit23a_entry23a(struct sk_buff *pkt, struct net_device *pnetdev);
-+netdev_tx_t rtw_xmit23a_entry23a(struct sk_buff *pkt, struct net_device *pnetdev);
-
- void rtw_os_xmit_schedule23a(struct rtw_adapter *padapter);
-
-diff --git a/drivers/staging/rtl8723au/os_dep/ioctl_cfg80211.c b/drivers/staging/rtl8723au/os_dep/ioctl_cfg80211.c
-index d0ba377..884c9d7 100644
---- a/drivers/staging/rtl8723au/os_dep/ioctl_cfg80211.c
-+++ b/drivers/staging/rtl8723au/os_dep/ioctl_cfg80211.c
-@@ -2435,7 +2435,7 @@ static int rtw_cfg80211_monitor_if_close(struct net_device *ndev)
- return 0;
- }
-
--static int rtw_cfg80211_monitor_if_xmit_entry(struct sk_buff *skb,
-+static netdev_tx_t rtw_cfg80211_monitor_if_xmit_entry(struct sk_buff *skb,
- struct net_device *ndev)
- {
- int ret = 0;
-diff --git a/drivers/staging/rtl8723au/os_dep/xmit_linux.c b/drivers/staging/rtl8723au/os_dep/xmit_linux.c
-index 64be72a..d0d2f81 100644
---- a/drivers/staging/rtl8723au/os_dep/xmit_linux.c
-+++ b/drivers/staging/rtl8723au/os_dep/xmit_linux.c
-@@ -117,7 +117,7 @@ static void rtw_check_xmit_resource(struct rtw_adapter *padapter,
- }
- }
-
--int rtw_xmit23a_entry23a(struct sk_buff *skb, struct net_device *pnetdev)
-+netdev_tx_t rtw_xmit23a_entry23a(struct sk_buff *skb, struct net_device *pnetdev)
- {
- struct rtw_adapter *padapter = netdev_priv(pnetdev);
- struct xmit_priv *pxmitpriv = &padapter->xmitpriv;
diff --git a/drivers/staging/sm750fb/sm750.c b/drivers/staging/sm750fb/sm750.c
-index 6ed004e..f8ebf08 100644
+index 7d90e25..0780424 100644
--- a/drivers/staging/sm750fb/sm750.c
+++ b/drivers/staging/sm750fb/sm750.c
@@ -725,6 +725,7 @@ static struct fb_ops lynxfb_ops = {
@@ -80179,33 +83879,11 @@ index 6ed004e..f8ebf08 100644
}
info->fbops = &lynxfb_ops;
-diff --git a/drivers/staging/unisys/visorbus/visorbus_private.h b/drivers/staging/unisys/visorbus/visorbus_private.h
-index 39edd20..d860d0c 100644
---- a/drivers/staging/unisys/visorbus/visorbus_private.h
-+++ b/drivers/staging/unisys/visorbus/visorbus_private.h
-@@ -34,7 +34,7 @@ struct visorchipset_busdev_notifiers {
- void (*device_destroy)(struct visor_device *bus_info);
- void (*device_pause)(struct visor_device *bus_info);
- void (*device_resume)(struct visor_device *bus_info);
--};
-+} __no_const;
-
- /* These functions live inside visorchipset, and will be called to indicate
- * responses to specific events (by code outside of visorchipset).
-@@ -49,7 +49,7 @@ struct visorchipset_busdev_responders {
- void (*device_destroy)(struct visor_device *p, int response);
- void (*device_pause)(struct visor_device *p, int response);
- void (*device_resume)(struct visor_device *p, int response);
--};
-+} __no_const;
-
- /** Register functions (in the bus driver) to get called by visorchipset
- * whenever a bus or device appears for which this guest is to be the
diff --git a/drivers/staging/unisys/visornic/visornic_main.c b/drivers/staging/unisys/visornic/visornic_main.c
-index a28388d..6ae2929 100644
+index 1367007..d7a3530 100644
--- a/drivers/staging/unisys/visornic/visornic_main.c
+++ b/drivers/staging/unisys/visornic/visornic_main.c
-@@ -797,7 +797,7 @@ static inline bool vnic_hit_low_watermark(struct visornic_devdata *devdata,
+@@ -758,7 +758,7 @@ static inline bool vnic_hit_low_watermark(struct visornic_devdata *devdata,
* can be called again.
* Returns NETDEV_TX_OK.
*/
@@ -80215,10 +83893,10 @@ index a28388d..6ae2929 100644
{
struct visornic_devdata *devdata;
diff --git a/drivers/staging/vt6655/rxtx.c b/drivers/staging/vt6655/rxtx.c
-index e4c3165..d0c9eeb 100644
+index 7e69bc9..d5376b2 100644
--- a/drivers/staging/vt6655/rxtx.c
+++ b/drivers/staging/vt6655/rxtx.c
-@@ -1243,7 +1243,7 @@ static void vnt_fill_txkey(struct ieee80211_hdr *hdr, u8 *key_buffer,
+@@ -1250,7 +1250,7 @@ static void vnt_fill_txkey(struct ieee80211_hdr *hdr, u8 *key_buffer,
mic_hdr->payload_len = cpu_to_be16(payload_len);
ether_addr_copy(mic_hdr->mic_addr2, hdr->addr2);
@@ -80253,10 +83931,10 @@ index ddfea29..5305b38 100644
#define IP_ALEN 4
diff --git a/drivers/staging/wilc1000/linux_wlan.c b/drivers/staging/wilc1000/linux_wlan.c
-index 3221511..6b6f9eb 100644
+index 6370a5e..4115fdd 100644
--- a/drivers/staging/wilc1000/linux_wlan.c
+++ b/drivers/staging/wilc1000/linux_wlan.c
-@@ -983,7 +983,7 @@ static void linux_wlan_tx_complete(void *priv, int status)
+@@ -982,7 +982,7 @@ static void linux_wlan_tx_complete(void *priv, int status)
kfree(pv_data);
}
@@ -80266,7 +83944,7 @@ index 3221511..6b6f9eb 100644
struct wilc_vif *vif;
struct tx_complete_data *tx_data = NULL;
diff --git a/drivers/staging/wilc1000/wilc_spi.c b/drivers/staging/wilc1000/wilc_spi.c
-index 22cf4b7..2684b57 100644
+index f08cf6d..9ccd7a4 100644
--- a/drivers/staging/wilc1000/wilc_spi.c
+++ b/drivers/staging/wilc1000/wilc_spi.c
@@ -19,6 +19,7 @@
@@ -80278,7 +83956,7 @@ index 22cf4b7..2684b57 100644
#include "wilc_wlan.h"
#include "wilc_wfi_netdevice.h"
diff --git a/drivers/staging/wilc1000/wilc_wlan.h b/drivers/staging/wilc1000/wilc_wlan.h
-index 30e5312..1493a73 100644
+index de6c4dd..ec13331 100644
--- a/drivers/staging/wilc1000/wilc_wlan.h
+++ b/drivers/staging/wilc1000/wilc_wlan.h
@@ -295,7 +295,7 @@ void wilc_chip_sleep_manually(struct wilc *wilc);
@@ -80291,29 +83969,29 @@ index 30e5312..1493a73 100644
int wilc_mac_open(struct net_device *ndev);
int wilc_mac_close(struct net_device *ndev);
diff --git a/drivers/staging/wlan-ng/p80211netdev.c b/drivers/staging/wlan-ng/p80211netdev.c
-index 90cc8cd..5617025 100644
+index 825a63a..af108c3 100644
--- a/drivers/staging/wlan-ng/p80211netdev.c
+++ b/drivers/staging/wlan-ng/p80211netdev.c
@@ -94,7 +94,7 @@
- static int p80211knetdev_init(netdevice_t *netdev);
- static int p80211knetdev_open(netdevice_t *netdev);
- static int p80211knetdev_stop(netdevice_t *netdev);
+ static int p80211knetdev_init(struct net_device *netdev);
+ static int p80211knetdev_open(struct net_device *netdev);
+ static int p80211knetdev_stop(struct net_device *netdev);
-static int p80211knetdev_hard_start_xmit(struct sk_buff *skb,
+static netdev_tx_t p80211knetdev_hard_start_xmit(struct sk_buff *skb,
- netdevice_t *netdev);
- static void p80211knetdev_set_multicast_list(netdevice_t *dev);
- static int p80211knetdev_do_ioctl(netdevice_t *dev, struct ifreq *ifr,
+ struct net_device *netdev);
+ static void p80211knetdev_set_multicast_list(struct net_device *dev);
+ static int p80211knetdev_do_ioctl(struct net_device *dev, struct ifreq *ifr,
@@ -317,7 +317,7 @@ static void p80211netdev_rx_bh(unsigned long arg)
* Returns:
* zero on success, non-zero on failure.
----------------------------------------------------------------*/
-static int p80211knetdev_hard_start_xmit(struct sk_buff *skb,
+static netdev_tx_t p80211knetdev_hard_start_xmit(struct sk_buff *skb,
- netdevice_t *netdev)
+ struct net_device *netdev)
{
int result = 0;
diff --git a/drivers/target/sbp/sbp_target.c b/drivers/target/sbp/sbp_target.c
-index 58bb6ed..d77a7e3 100644
+index 6ca388e..5ef4426 100644
--- a/drivers/target/sbp/sbp_target.c
+++ b/drivers/target/sbp/sbp_target.c
@@ -56,7 +56,7 @@ static const u32 sbp_unit_directory_template[] = {
@@ -80335,7 +84013,7 @@ index 58bb6ed..d77a7e3 100644
login->tgt_agt = sbp_target_agent_register(login);
if (IS_ERR(login->tgt_agt)) {
diff --git a/drivers/thermal/devfreq_cooling.c b/drivers/thermal/devfreq_cooling.c
-index 01f0015..aa56551 100644
+index 81631b1..b10aa5e 100644
--- a/drivers/thermal/devfreq_cooling.c
+++ b/drivers/thermal/devfreq_cooling.c
@@ -363,6 +363,15 @@ static struct thermal_cooling_device_ops devfreq_cooling_ops = {
@@ -80398,7 +84076,7 @@ index 5836e55..708bbd6 100644
priv->thermal = thermal_zone_device_register("INT3400 Thermal", 0, 0,
priv, &int3400_thermal_ops,
diff --git a/drivers/thermal/of-thermal.c b/drivers/thermal/of-thermal.c
-index b8e509c..f12be01 100644
+index d04ec3b..3fef6c1 100644
--- a/drivers/thermal/of-thermal.c
+++ b/drivers/thermal/of-thermal.c
@@ -31,6 +31,7 @@
@@ -80409,22 +84087,32 @@ index b8e509c..f12be01 100644
#include "thermal_core.h"
-@@ -425,9 +426,11 @@ thermal_zone_of_add_sensor(struct device_node *zone,
+@@ -419,18 +420,20 @@ thermal_zone_of_add_sensor(struct device_node *zone,
tz->ops = ops;
tz->sensor_data = data;
- tzd->ops->get_temp = of_thermal_get_temp;
- tzd->ops->get_trend = of_thermal_get_trend;
-- tzd->ops->set_emul_temp = of_thermal_set_emul_temp;
+ pax_open_kernel();
+ const_cast(tzd->ops->get_temp) = of_thermal_get_temp;
+ const_cast(tzd->ops->get_trend) = of_thermal_get_trend;
-+ const_cast(tzd->ops->set_emul_temp) = of_thermal_set_emul_temp;
+
+ /*
+ * The thermal zone core will calculate the window if they have set the
+ * optional set_trips pointer.
+ */
+ if (ops->set_trips)
+- tzd->ops->set_trips = of_thermal_set_trips;
++ const_cast(tzd->ops->set_trips) = of_thermal_set_trips;
+
+ if (ops->set_emul_temp)
+- tzd->ops->set_emul_temp = of_thermal_set_emul_temp;
++ const_cast(tzd->ops->set_emul_temp) = of_thermal_set_emul_temp;
+ pax_close_kernel();
+
mutex_unlock(&tzd->lock);
- return tzd;
-@@ -553,9 +556,11 @@ void thermal_zone_of_sensor_unregister(struct device *dev,
+@@ -557,9 +560,11 @@ void thermal_zone_of_sensor_unregister(struct device *dev,
return;
mutex_lock(&tzd->lock);
@@ -80440,10 +84128,10 @@ index b8e509c..f12be01 100644
tz->ops = NULL;
tz->sensor_data = NULL;
diff --git a/drivers/thermal/x86_pkg_temp_thermal.c b/drivers/thermal/x86_pkg_temp_thermal.c
-index 97f0a2b..5fa3381 100644
+index 95f4c1b..98efc0d 100644
--- a/drivers/thermal/x86_pkg_temp_thermal.c
+++ b/drivers/thermal/x86_pkg_temp_thermal.c
-@@ -567,7 +567,7 @@ static int pkg_temp_thermal_cpu_callback(struct notifier_block *nfb,
+@@ -568,7 +568,7 @@ static int pkg_temp_thermal_cpu_callback(struct notifier_block *nfb,
return NOTIFY_OK;
}
@@ -80452,13 +84140,60 @@ index 97f0a2b..5fa3381 100644
.notifier_call = pkg_temp_thermal_cpu_callback,
};
+diff --git a/drivers/tty/amiserial.c b/drivers/tty/amiserial.c
+index 208f573..32c03b7 100644
+--- a/drivers/tty/amiserial.c
++++ b/drivers/tty/amiserial.c
+@@ -1489,7 +1489,7 @@ static void rs_hangup(struct tty_struct *tty)
+
+ rs_flush_buffer(tty);
+ shutdown(tty, info);
+- info->tport.count = 0;
++ atomic_set(&info->tport.count, 0);
+ tty_port_set_active(&info->tport, 0);
+ info->tport.tty = NULL;
+ wake_up_interruptible(&info->tport.open_wait);
+@@ -1507,7 +1507,7 @@ static int rs_open(struct tty_struct *tty, struct file * filp)
+ struct tty_port *port = &info->tport;
+ int retval;
+
+- port->count++;
++ atomic_inc(&port->count);
+ port->tty = tty;
+ tty->driver_data = info;
+ tty->port = port;
+diff --git a/drivers/tty/bfin_jtag_comm.c b/drivers/tty/bfin_jtag_comm.c
+index ce24182..a68ebf3 100644
+--- a/drivers/tty/bfin_jtag_comm.c
++++ b/drivers/tty/bfin_jtag_comm.c
+@@ -143,7 +143,7 @@ bfin_jc_open(struct tty_struct *tty, struct file *filp)
+ unsigned long flags;
+
+ spin_lock_irqsave(&port.lock, flags);
+- port.count++;
++ atomic_inc(&port.count);
+ spin_unlock_irqrestore(&port.lock, flags);
+ tty_port_tty_set(&port, tty);
+ wake_up_process(bfin_jc_kthread);
+@@ -157,7 +157,7 @@ bfin_jc_close(struct tty_struct *tty, struct file *filp)
+ bool last;
+
+ spin_lock_irqsave(&port.lock, flags);
+- last = --port.count == 0;
++ last = atomic_dec_and_test(&port.count);
+ spin_unlock_irqrestore(&port.lock, flags);
+ if (last)
+ tty_port_tty_set(&port, NULL);
diff --git a/drivers/tty/cyclades.c b/drivers/tty/cyclades.c
-index 5e4fa92..39fe3d2 100644
+index 5e4fa92..4a5b883 100644
--- a/drivers/tty/cyclades.c
+++ b/drivers/tty/cyclades.c
-@@ -1568,10 +1568,10 @@ static int cy_open(struct tty_struct *tty, struct file *filp)
+@@ -1566,12 +1566,12 @@ static int cy_open(struct tty_struct *tty, struct file *filp)
+
+ #ifdef CY_DEBUG_OPEN
printk(KERN_DEBUG "cyc:cy_open ttyC%d, count = %d\n", info->line,
- info->port.count);
+- info->port.count);
++ atomic_read(&info->port.count));
#endif
- info->port.count++;
+ atomic_inc(&info->port.count);
@@ -80904,6 +84639,19 @@ index 2685d59..a63936a 100644
do_ipw_close(ttyj);
ipwireless_disassociate_network_ttys(network,
ttyj->channel_idx);
+diff --git a/drivers/tty/mips_ejtag_fdc.c b/drivers/tty/mips_ejtag_fdc.c
+index 234123b..2e2b1f7 100644
+--- a/drivers/tty/mips_ejtag_fdc.c
++++ b/drivers/tty/mips_ejtag_fdc.c
+@@ -1258,7 +1258,7 @@ static void kgdbfdc_write_char(u8 chr)
+ kgdbfdc_push_one();
+ }
+
+-static struct kgdb_io kgdbfdc_io_ops = {
++static struct kgdb_io kgdbfdc_io_ops __read_only = {
+ .name = "kgdbfdc",
+ .read_char = kgdbfdc_read_char,
+ .write_char = kgdbfdc_write_char,
diff --git a/drivers/tty/moxa.c b/drivers/tty/moxa.c
index 60d37b2..3d222ca 100644
--- a/drivers/tty/moxa.c
@@ -81051,9 +84799,18 @@ index bdf0e6e..ea92f7e 100644
EXPORT_SYMBOL_GPL(n_tty_inherit_ops);
diff --git a/drivers/tty/pty.c b/drivers/tty/pty.c
-index 51e0d32..d1ac13c 100644
+index a23fa5e..eff0d07 100644
--- a/drivers/tty/pty.c
+++ b/drivers/tty/pty.c
+@@ -800,7 +800,7 @@ static int ptmx_open(struct inode *inode, struct file *filp)
+ return retval;
+ }
+
+-static struct file_operations ptmx_fops __ro_after_init;
++static file_operations_no_const ptmx_fops __read_only;
+
+ static void __init unix98_pty_init(void)
+ {
@@ -856,8 +856,10 @@ static void __init unix98_pty_init(void)
panic("Couldn't register Unix98 pts driver");
@@ -81067,7 +84824,7 @@ index 51e0d32..d1ac13c 100644
cdev_init(&ptmx_cdev, &ptmx_fops);
if (cdev_add(&ptmx_cdev, MKDEV(TTYAUX_MAJOR, 2), 1) ||
diff --git a/drivers/tty/rocket.c b/drivers/tty/rocket.c
-index b0cc47c..58ea7a9 100644
+index b0cc47c..daeb183 100644
--- a/drivers/tty/rocket.c
+++ b/drivers/tty/rocket.c
@@ -906,7 +906,7 @@ static int rp_open(struct tty_struct *tty, struct file *filp)
@@ -81084,10 +84841,19 @@ index b0cc47c..58ea7a9 100644
}
#ifdef ROCKET_DEBUG_OPEN
- printk(KERN_INFO "rp_open ttyR%d, count=%d\n", info->line, info->port.count);
-+ printk(KERN_INFO "rp_open ttyR%d, count=%d\n", info->line, atomic-read(&info->port.count));
++ printk(KERN_INFO "rp_open ttyR%d, count=%d\n", info->line, atomic_read(&info->port.count));
#endif
/*
+@@ -992,7 +992,7 @@ static void rp_close(struct tty_struct *tty, struct file *filp)
+ return;
+
+ #ifdef ROCKET_DEBUG_OPEN
+- printk(KERN_INFO "rp_close ttyR%d, count = %d\n", info->line, info->port.count);
++ printk(KERN_INFO "rp_close ttyR%d, count = %d\n", info->line, atomic_read(&info->port.count));
+ #endif
+
+ if (tty_port_close_start(port, tty, filp) == 0)
@@ -1500,7 +1500,7 @@ static void rp_hangup(struct tty_struct *tty)
#endif
rp_flush_buffer(tty);
@@ -81098,7 +84864,7 @@ index b0cc47c..58ea7a9 100644
clear_bit((info->aiop * 8) + info->chan, (void *) &xmit_flags[info->board]);
spin_unlock_irqrestore(&info->port.lock, flags);
diff --git a/drivers/tty/serial/8250/8250_core.c b/drivers/tty/serial/8250/8250_core.c
-index dcf43f6..594793a 100644
+index e8819aa..33d2176 100644
--- a/drivers/tty/serial/8250/8250_core.c
+++ b/drivers/tty/serial/8250/8250_core.c
@@ -488,9 +488,9 @@ static void univ8250_release_port(struct uart_port *port)
@@ -81127,10 +84893,10 @@ index dcf43f6..594793a 100644
if (share_irqs)
irqflag = IRQF_SHARED;
diff --git a/drivers/tty/serial/8250/8250_pci.c b/drivers/tty/serial/8250/8250_pci.c
-index bc51b32..f947b5b 100644
+index b98c157..33d1d98e 100644
--- a/drivers/tty/serial/8250/8250_pci.c
+++ b/drivers/tty/serial/8250/8250_pci.c
-@@ -5795,7 +5795,7 @@ static struct pci_device_id serial_pci_tbl[] = {
+@@ -5569,7 +5569,7 @@ static struct pci_device_id serial_pci_tbl[] = {
};
static pci_ers_result_t serial8250_io_error_detected(struct pci_dev *dev,
@@ -81139,6 +84905,117 @@ index bc51b32..f947b5b 100644
{
struct serial_private *priv = pci_get_drvdata(dev);
+diff --git a/drivers/tty/serial/crisv10.c b/drivers/tty/serial/crisv10.c
+index 315c849..7a31884 100644
+--- a/drivers/tty/serial/crisv10.c
++++ b/drivers/tty/serial/crisv10.c
+@@ -3255,7 +3255,7 @@ set_serial_info(struct e100_serial *info,
+ goto check_and_exit;
+ }
+
+- if (info->port.count > 1)
++ if (atomic_read(&info->port.count) > 1)
+ return -EBUSY;
+
+ /*
+@@ -3588,7 +3588,7 @@ rs_close(struct tty_struct *tty, struct file * filp)
+ printk("[%d] rs_close ttyS%d, count = %d\n", current->pid,
+ info->line, info->count);
+ #endif
+- if ((tty->count == 1) && (info->port.count != 1)) {
++ if ((tty->count == 1) && (atomic_read(&info->port.count) != 1)) {
+ /*
+ * Uh, oh. tty->count is 1, which means that the tty
+ * structure will be freed. Info->count should always
+@@ -3598,15 +3598,15 @@ rs_close(struct tty_struct *tty, struct file * filp)
+ */
+ printk(KERN_ERR
+ "rs_close: bad serial port count; tty->count is 1, "
+- "info->count is %d\n", info->port.count);
+- info->port.count = 1;
++ "info->count is %d\n", atomic_read(&info->port.count));
++ atomic_set(&info->port.count, 1);
+ }
+- if (--info->port.count < 0) {
++ if (atomic_dec_return(&info->port.count) < 0) {
+ printk(KERN_ERR "rs_close: bad serial port count for ttyS%d: %d\n",
+- info->line, info->port.count);
+- info->port.count = 0;
++ info->line, atomic_read(&info->port.count));
++ atomic_set(&info->port.count, 0);
+ }
+- if (info->port.count) {
++ if (atomic_read(&info->port.count)) {
+ local_irq_restore(flags);
+ return;
+ }
+@@ -3731,7 +3731,7 @@ rs_hangup(struct tty_struct *tty)
+ rs_flush_buffer(tty);
+ shutdown(info);
+ info->event = 0;
+- info->port.count = 0;
++ atomic_set(&info->port.count, 0);
+ tty_port_set_active(&info->port, 0);
+ info->port.tty = NULL;
+ wake_up_interruptible(&info->port.open_wait);
+@@ -3774,10 +3774,10 @@ block_til_ready(struct tty_struct *tty, struct file * filp,
+ add_wait_queue(&info->port.open_wait, &wait);
+ #ifdef SERIAL_DEBUG_OPEN
+ printk("block_til_ready before block: ttyS%d, count = %d\n",
+- info->line, info->port.count);
++ info->line, atomic_read(&info->port.count));
+ #endif
+ local_irq_save(flags);
+- info->port.count--;
++ atomic_dec(&info->port.count);
+ local_irq_restore(flags);
+ info->port.blocked_open++;
+ while (1) {
+@@ -3807,7 +3807,7 @@ block_til_ready(struct tty_struct *tty, struct file * filp,
+ }
+ #ifdef SERIAL_DEBUG_OPEN
+ printk("block_til_ready blocking: ttyS%d, count = %d\n",
+- info->line, info->port.count);
++ info->line, atomic_read(&info->port.count));
+ #endif
+ tty_unlock(tty);
+ schedule();
+@@ -3816,11 +3816,11 @@ block_til_ready(struct tty_struct *tty, struct file * filp,
+ set_current_state(TASK_RUNNING);
+ remove_wait_queue(&info->port.open_wait, &wait);
+ if (!tty_hung_up_p(filp))
+- info->port.count++;
++ atomic_inc(&info->port.count);
+ info->port.blocked_open--;
+ #ifdef SERIAL_DEBUG_OPEN
+ printk("block_til_ready after blocking: ttyS%d, count = %d\n",
+- info->line, info->port.count);
++ info->line, atomic_read(&info->port.count));
+ #endif
+ if (retval)
+ return retval;
+@@ -3858,10 +3858,10 @@ rs_open(struct tty_struct *tty, struct file * filp)
+
+ #ifdef SERIAL_DEBUG_OPEN
+ printk("[%d] rs_open %s, count = %d\n", current->pid, tty->name,
+- info->port.count);
++ atomic_read(&info->port.count));
+ #endif
+
+- info->port.count++;
++ atomic_inc(&info->port.count);
+ tty->driver_data = info;
+ info->port.tty = tty;
+
+@@ -3870,7 +3870,7 @@ rs_open(struct tty_struct *tty, struct file * filp)
+ /*
+ * If DMA is enabled try to allocate the irq's.
+ */
+- if (info->port.count == 1) {
++ if (atomic_read(&info->port.count) == 1) {
+ allocated_resources = 1;
+ if (info->dma_in_enabled) {
+ if (request_irq(info->dma_in_irq_nbr,
diff --git a/drivers/tty/serial/ioc4_serial.c b/drivers/tty/serial/ioc4_serial.c
index e5c42fe..f091b02 100644
--- a/drivers/tty/serial/ioc4_serial.c
@@ -81199,7 +85076,7 @@ index 117df15..8f7486f 100644
return 0;
}
diff --git a/drivers/tty/serial/kgdboc.c b/drivers/tty/serial/kgdboc.c
-index a260cde..604fce9 100644
+index a260cde..c395165 100644
--- a/drivers/tty/serial/kgdboc.c
+++ b/drivers/tty/serial/kgdboc.c
@@ -24,8 +24,9 @@
@@ -81261,7 +85138,7 @@ index a260cde..604fce9 100644
if (err)
goto noconfig;
-@@ -205,8 +214,6 @@ do_register:
+@@ -205,8 +214,6 @@ static int configure_kgdboc(void)
if (err)
goto nmi_con_failed;
@@ -81270,7 +85147,7 @@ index a260cde..604fce9 100644
return 0;
nmi_con_failed:
-@@ -223,7 +230,7 @@ noconfig:
+@@ -223,7 +230,7 @@ static int configure_kgdboc(void)
static int __init init_kgdboc(void)
{
/* Already configured? */
@@ -81297,11 +85174,20 @@ index a260cde..604fce9 100644
cleanup_kgdboc();
/* Go and configure with the new params. */
+@@ -304,7 +311,7 @@ static void kgdboc_post_exp_handler(void)
+ kgdboc_restore_input();
+ }
+
+-static struct kgdb_io kgdboc_io_ops = {
++static struct kgdb_io kgdboc_io_ops __read_only = {
+ .name = "kgdboc",
+ .read_char = kgdboc_get_char,
+ .write_char = kgdboc_put_char,
@@ -312,6 +319,15 @@ static struct kgdb_io kgdboc_io_ops = {
.post_exception = kgdboc_post_exp_handler,
};
-+static struct kgdb_io kgdboc_io_ops_console = {
++static struct kgdb_io kgdboc_io_ops_console __read_only = {
+ .name = "kgdboc",
+ .read_char = kgdboc_get_char,
+ .write_char = kgdboc_put_char,
@@ -81336,7 +85222,7 @@ index 7312e7e..0a0f8b6 100644
if (unlikely(line < 0 || line >= UART_NR))
return -ENXIO;
diff --git a/drivers/tty/serial/samsung.c b/drivers/tty/serial/samsung.c
-index ae2095a..a3cec83 100644
+index f44615f..12db64d 100644
--- a/drivers/tty/serial/samsung.c
+++ b/drivers/tty/serial/samsung.c
@@ -976,11 +976,16 @@ static void s3c24xx_serial_shutdown(struct uart_port *port)
@@ -81368,10 +85254,10 @@ index ae2095a..a3cec83 100644
if (cfg->uart_flags & UPF_CONS_FLOW) {
diff --git a/drivers/tty/serial/serial_core.c b/drivers/tty/serial/serial_core.c
-index 9fc1533..01c5972 100644
+index f2303f3..e67c477 100644
--- a/drivers/tty/serial/serial_core.c
+++ b/drivers/tty/serial/serial_core.c
-@@ -1473,7 +1473,7 @@ static void uart_close(struct tty_struct *tty, struct file *filp)
+@@ -1468,7 +1468,7 @@ static void uart_close(struct tty_struct *tty, struct file *filp)
state = drv->state + tty->index;
port = &state->port;
spin_lock_irq(&port->lock);
@@ -81380,7 +85266,7 @@ index 9fc1533..01c5972 100644
spin_unlock_irq(&port->lock);
return;
}
-@@ -1614,7 +1614,7 @@ static void uart_hangup(struct tty_struct *tty)
+@@ -1589,7 +1589,7 @@ static void uart_hangup(struct tty_struct *tty)
uart_flush_buffer(tty);
uart_shutdown(tty, state);
spin_lock_irqsave(&port->lock, flags);
@@ -81389,15 +85275,6 @@ index 9fc1533..01c5972 100644
spin_unlock_irqrestore(&port->lock, flags);
tty_port_set_active(port, 0);
tty_port_tty_set(port, NULL);
-@@ -1717,7 +1717,7 @@ static int uart_open(struct tty_struct *tty, struct file *filp)
- pr_debug("uart_open(%d) called\n", line);
-
- spin_lock_irq(&port->lock);
-- ++port->count;
-+ atomic_inc(&port->count);
- spin_unlock_irq(&port->lock);
-
- /*
diff --git a/drivers/tty/synclink.c b/drivers/tty/synclink.c
index c13e27e..335a512 100644
--- a/drivers/tty/synclink.c
@@ -81490,7 +85367,7 @@ index c13e27e..335a512 100644
/* 1st open on this device, init hardware */
retval = startup(info);
if (retval < 0)
-@@ -3417,8 +3417,8 @@ cleanup:
+@@ -3417,8 +3417,8 @@ static int mgsl_open(struct tty_struct *tty, struct file * filp)
if (retval) {
if (tty->count == 1)
info->port.tty = NULL; /* tty layer will release tty struct */
@@ -81554,7 +85431,7 @@ index 7aca2d4..45a7121 100644
/* 1st open on this device, init hardware */
retval = startup(info);
if (retval < 0) {
-@@ -706,8 +706,8 @@ cleanup:
+@@ -706,8 +706,8 @@ static int open(struct tty_struct *tty, struct file *filp)
if (retval) {
if (tty->count == 1)
info->port.tty = NULL; /* tty layer will release tty struct */
@@ -81672,7 +85549,7 @@ index dec1565..bbf9fcc 100644
/* 1st open on this device, init hardware */
retval = startup(info);
if (retval < 0)
-@@ -787,8 +787,8 @@ cleanup:
+@@ -787,8 +787,8 @@ static int open(struct tty_struct *tty, struct file *filp)
if (retval) {
if (tty->count == 1)
info->port.tty = NULL; /* tty layer will release tty struct */
@@ -81784,7 +85661,7 @@ index dec1565..bbf9fcc 100644
if (!retval)
tty_port_set_active(port, 1);
diff --git a/drivers/tty/sysrq.c b/drivers/tty/sysrq.c
-index 52bbd27..7846d42 100644
+index 701c085..de038f5 100644
--- a/drivers/tty/sysrq.c
+++ b/drivers/tty/sysrq.c
@@ -1090,7 +1090,7 @@ EXPORT_SYMBOL(unregister_sysrq_key);
@@ -82076,7 +85953,7 @@ index fba021f..977a54e 100644
ret = uio_get_minor(idev);
if (ret)
diff --git a/drivers/usb/atm/cxacru.c b/drivers/usb/atm/cxacru.c
-index 0a866e9..e0c35aa 100644
+index f9fe86b6..d65a64c 100644
--- a/drivers/usb/atm/cxacru.c
+++ b/drivers/usb/atm/cxacru.c
@@ -474,7 +474,7 @@ static ssize_t cxacru_sysfs_store_adsl_config(struct device *dev,
@@ -82089,7 +85966,7 @@ index 0a866e9..e0c35aa 100644
if (tmp < 0 || tmp > len - pos)
return -EINVAL;
diff --git a/drivers/usb/atm/usbatm.c b/drivers/usb/atm/usbatm.c
-index db322d9..f0f4bc1 100644
+index 4dec9df..36e0606 100644
--- a/drivers/usb/atm/usbatm.c
+++ b/drivers/usb/atm/usbatm.c
@@ -331,7 +331,7 @@ static void usbatm_extract_one_cell(struct usbatm_data *instance, unsigned char
@@ -82203,7 +86080,7 @@ index ef04b50..7582d99 100644
file->f_version = event_count;
return POLLIN | POLLRDNORM;
diff --git a/drivers/usb/core/devio.c b/drivers/usb/core/devio.c
-index 09c8d9c..14ee687 100644
+index 4016dae..b4d3ad4 100644
--- a/drivers/usb/core/devio.c
+++ b/drivers/usb/core/devio.c
@@ -290,7 +290,7 @@ static ssize_t usbdev_read(struct file *file, char __user *buf, size_t nbytes,
@@ -82252,10 +86129,10 @@ index 09c8d9c..14ee687 100644
(uurb->endpoint & USB_DIR_IN);
diff --git a/drivers/usb/core/hcd.c b/drivers/usb/core/hcd.c
-index d2e3f65..e389998 100644
+index 479e223..ba82b75 100644
--- a/drivers/usb/core/hcd.c
+++ b/drivers/usb/core/hcd.c
-@@ -1630,7 +1630,7 @@ int usb_hcd_submit_urb (struct urb *urb, gfp_t mem_flags)
+@@ -1631,7 +1631,7 @@ int usb_hcd_submit_urb (struct urb *urb, gfp_t mem_flags)
*/
usb_get_urb(urb);
atomic_inc(&urb->use_count);
@@ -82264,7 +86141,7 @@ index d2e3f65..e389998 100644
usbmon_urb_submit(&hcd->self, urb);
/* NOTE requirements on root-hub callers (usbfs and the hub
-@@ -1657,7 +1657,7 @@ int usb_hcd_submit_urb (struct urb *urb, gfp_t mem_flags)
+@@ -1658,7 +1658,7 @@ int usb_hcd_submit_urb (struct urb *urb, gfp_t mem_flags)
urb->hcpriv = NULL;
INIT_LIST_HEAD(&urb->urb_list);
atomic_dec(&urb->use_count);
@@ -82274,7 +86151,7 @@ index d2e3f65..e389998 100644
wake_up(&usb_kill_urb_queue);
usb_put_urb(urb);
diff --git a/drivers/usb/core/hub.c b/drivers/usb/core/hub.c
-index f3a7408..c3989c4 100644
+index aef81a1..cf6b268 100644
--- a/drivers/usb/core/hub.c
+++ b/drivers/usb/core/hub.c
@@ -26,6 +26,7 @@
@@ -82285,7 +86162,7 @@ index f3a7408..c3989c4 100644
#include <asm/uaccess.h>
#include <asm/byteorder.h>
-@@ -4756,6 +4757,10 @@ static void hub_port_connect(struct usb_hub *hub, int port1, u16 portstatus,
+@@ -4753,6 +4754,10 @@ static void hub_port_connect(struct usb_hub *hub, int port1, u16 portstatus,
goto done;
return;
}
@@ -82310,10 +86187,10 @@ index c953a0f..54c64f4 100644
static DEVICE_ATTR_RO(urbnum);
diff --git a/drivers/usb/core/usb.c b/drivers/usb/core/usb.c
-index 5e80697..1e91073 100644
+index 5921514..b33e555 100644
--- a/drivers/usb/core/usb.c
+++ b/drivers/usb/core/usb.c
-@@ -444,7 +444,7 @@ struct usb_device *usb_alloc_dev(struct usb_device *parent,
+@@ -455,7 +455,7 @@ struct usb_device *usb_alloc_dev(struct usb_device *parent,
set_dev_node(&dev->dev, dev_to_node(bus->controller));
dev->state = USB_STATE_ATTACHED;
dev->lpm_disable_count = 1;
@@ -82323,10 +86200,10 @@ index 5e80697..1e91073 100644
INIT_LIST_HEAD(&dev->ep0.urb_list);
dev->ep0.desc.bLength = USB_DT_ENDPOINT_SIZE;
diff --git a/drivers/usb/early/ehci-dbgp.c b/drivers/usb/early/ehci-dbgp.c
-index 12731e6..0391d02 100644
+index ea73afb..aecbc26 100644
--- a/drivers/usb/early/ehci-dbgp.c
+++ b/drivers/usb/early/ehci-dbgp.c
-@@ -98,7 +98,8 @@ static inline u32 dbgp_len_update(u32 x, u32 len)
+@@ -97,7 +97,8 @@ static inline u32 dbgp_len_update(u32 x, u32 len)
#ifdef CONFIG_KGDB
static struct kgdb_io kgdbdbgp_io_ops;
@@ -82336,11 +86213,18 @@ index 12731e6..0391d02 100644
#else
#define dbgp_kgdb_mode (0)
#endif
-@@ -1043,6 +1044,13 @@ static struct kgdb_io kgdbdbgp_io_ops = {
+@@ -1036,12 +1037,19 @@ static void kgdbdbgp_write_char(u8 chr)
+ early_dbgp_write(NULL, &chr, 1);
+ }
+
+-static struct kgdb_io kgdbdbgp_io_ops = {
++static struct kgdb_io kgdbdbgp_io_ops __read_only = {
+ .name = "kgdbdbgp",
+ .read_char = kgdbdbgp_read_char,
.write_char = kgdbdbgp_write_char,
};
-+static struct kgdb_io kgdbdbgp_io_ops_console = {
++static struct kgdb_io kgdbdbgp_io_ops_console __read_only = {
+ .name = "kgdbdbgp",
+ .read_char = kgdbdbgp_read_char,
+ .write_char = kgdbdbgp_write_char,
@@ -82350,7 +86234,7 @@ index 12731e6..0391d02 100644
static int kgdbdbgp_wait_time;
static int __init kgdbdbgp_parse_config(char *str)
-@@ -1058,8 +1066,10 @@ static int __init kgdbdbgp_parse_config(char *str)
+@@ -1057,8 +1065,10 @@ static int __init kgdbdbgp_parse_config(char *str)
ptr++;
kgdbdbgp_wait_time = simple_strtoul(ptr, &ptr, 10);
}
@@ -82486,7 +86370,7 @@ index c78c841..48fd281 100644
#include "u_uac1.h"
diff --git a/drivers/usb/gadget/udc/dummy_hcd.c b/drivers/usb/gadget/udc/dummy_hcd.c
-index 77d0790..d123802 100644
+index a81d9ab..59dcbc6 100644
--- a/drivers/usb/gadget/udc/dummy_hcd.c
+++ b/drivers/usb/gadget/udc/dummy_hcd.c
@@ -2458,7 +2458,7 @@ static int dummy_setup(struct usb_hcd *hcd)
@@ -82499,7 +86383,7 @@ index 77d0790..d123802 100644
dum->hs_hcd = hcd_to_dummy_hcd(hcd);
dum->hs_hcd->dum = dum;
diff --git a/drivers/usb/host/ehci-hcd.c b/drivers/usb/host/ehci-hcd.c
-index 1e5f529..5832376 100644
+index 0630648..a35d964 100644
--- a/drivers/usb/host/ehci-hcd.c
+++ b/drivers/usb/host/ehci-hcd.c
@@ -573,7 +573,7 @@ static int ehci_init(struct usb_hcd *hcd)
@@ -82628,7 +86512,7 @@ index 672cea3..31a730db 100644
struct list_head child_device;
unsigned long child_connect_map[4];
diff --git a/drivers/usb/host/uhci-hcd.c b/drivers/usb/host/uhci-hcd.c
-index a7de8e8..e1ef134 100644
+index 5d3d914..5534498 100644
--- a/drivers/usb/host/uhci-hcd.c
+++ b/drivers/usb/host/uhci-hcd.c
@@ -570,7 +570,7 @@ static int uhci_start(struct usb_hcd *hcd)
@@ -82641,7 +86525,7 @@ index a7de8e8..e1ef134 100644
spin_lock_init(&uhci->lock);
setup_timer(&uhci->fsbr_timer, uhci_fsbr_timeout,
diff --git a/drivers/usb/host/xhci-pci.c b/drivers/usb/host/xhci-pci.c
-index e96ae80..130fe39 100644
+index 954abfd..fca40d7 100644
--- a/drivers/usb/host/xhci-pci.c
+++ b/drivers/usb/host/xhci-pci.c
@@ -32,7 +32,7 @@
@@ -82654,10 +86538,10 @@ index e96ae80..130fe39 100644
/* Device for a quirk */
#define PCI_VENDOR_ID_FRESCO_LOGIC 0x1b73
diff --git a/drivers/usb/host/xhci-ring.c b/drivers/usb/host/xhci-ring.c
-index 797137e..b7be2b3 100644
+index 521c181..1f06bca 100644
--- a/drivers/usb/host/xhci-ring.c
+++ b/drivers/usb/host/xhci-ring.c
-@@ -1889,9 +1889,9 @@ td_cleanup:
+@@ -1911,9 +1911,9 @@ static int finish_td(struct xhci_hcd *xhci, struct xhci_td *td,
* unsigned). Play it safe and say we didn't transfer anything.
*/
if (urb->actual_length > urb->transfer_buffer_length) {
@@ -82669,7 +86553,7 @@ index 797137e..b7be2b3 100644
urb->actual_length = 0;
if (td->urb->transfer_flags & URB_SHORT_NOT_OK)
*status = -EREMOTEIO;
-@@ -1970,10 +1970,15 @@ static int process_ctrl_td(struct xhci_hcd *xhci, struct xhci_td *td,
+@@ -1992,10 +1992,15 @@ static int process_ctrl_td(struct xhci_hcd *xhci, struct xhci_td *td,
return finish_td(xhci, td, event_trb, event, ep, status, false);
case COMP_STOP:
/* Did we stop at data stage? */
@@ -82689,7 +86573,7 @@ index 797137e..b7be2b3 100644
/* fall through */
case COMP_STOP_INVAL:
return finish_td(xhci, td, event_trb, event, ep, status, false);
-@@ -1987,12 +1992,15 @@ static int process_ctrl_td(struct xhci_hcd *xhci, struct xhci_td *td,
+@@ -2009,12 +2014,15 @@ static int process_ctrl_td(struct xhci_hcd *xhci, struct xhci_td *td,
/* else fall through */
case COMP_STALL:
/* Did we transfer part of the data (middle) phase? */
@@ -82711,7 +86595,7 @@ index 797137e..b7be2b3 100644
td->urb->actual_length = 0;
return finish_td(xhci, td, event_trb, event, ep, status, false);
-@@ -2025,9 +2033,12 @@ static int process_ctrl_td(struct xhci_hcd *xhci, struct xhci_td *td,
+@@ -2047,9 +2055,12 @@ static int process_ctrl_td(struct xhci_hcd *xhci, struct xhci_td *td,
* the last TRB.
*/
td->urb_length_set = true;
@@ -82727,7 +86611,7 @@ index 797137e..b7be2b3 100644
xhci_dbg(xhci, "Waiting for status "
"stage event\n");
return 0;
-@@ -2222,11 +2233,7 @@ static int process_bulk_intr_td(struct xhci_hcd *xhci, struct xhci_td *td,
+@@ -2244,11 +2255,7 @@ static int process_bulk_intr_td(struct xhci_hcd *xhci, struct xhci_td *td,
/* Fast path - was this the last TRB in the TD for this URB? */
} else if (event_trb == td->last_trb) {
if (EVENT_TRB_LEN(le32_to_cpu(event->transfer_len)) != 0) {
@@ -82740,7 +86624,7 @@ index 797137e..b7be2b3 100644
xhci_warn(xhci, "HC gave bad length "
"of %d bytes left\n",
EVENT_TRB_LEN(le32_to_cpu(event->transfer_len)));
-@@ -2235,7 +2242,10 @@ static int process_bulk_intr_td(struct xhci_hcd *xhci, struct xhci_td *td,
+@@ -2257,7 +2264,10 @@ static int process_bulk_intr_td(struct xhci_hcd *xhci, struct xhci_td *td,
*status = -EREMOTEIO;
else
*status = 0;
@@ -82753,10 +86637,10 @@ index 797137e..b7be2b3 100644
if (*status == -EINPROGRESS) {
if (td->urb->transfer_flags & URB_SHORT_NOT_OK)
diff --git a/drivers/usb/host/xhci.c b/drivers/usb/host/xhci.c
-index 01d96c9..63270ff 100644
+index 34e23c7..28ac194 100644
--- a/drivers/usb/host/xhci.c
+++ b/drivers/usb/host/xhci.c
-@@ -4838,7 +4838,7 @@ int xhci_gen_setup(struct usb_hcd *hcd, xhci_get_quirks_t get_quirks)
+@@ -4825,7 +4825,7 @@ int xhci_gen_setup(struct usb_hcd *hcd, xhci_get_quirks_t get_quirks)
int retval;
/* Accept arbitrarily long scatter-gather lists */
@@ -82766,7 +86650,7 @@ index 01d96c9..63270ff 100644
/* support to build packet from discontinuous buffers */
hcd->self.no_sg_constraint = 1;
diff --git a/drivers/usb/misc/appledisplay.c b/drivers/usb/misc/appledisplay.c
-index a0a3827..d7ec10b 100644
+index da5ff40..e0f8d88 100644
--- a/drivers/usb/misc/appledisplay.c
+++ b/drivers/usb/misc/appledisplay.c
@@ -84,7 +84,7 @@ struct appledisplay {
@@ -82775,10 +86659,10 @@ index a0a3827..d7ec10b 100644
-static atomic_t count_displays = ATOMIC_INIT(0);
+static atomic_unchecked_t count_displays = ATOMIC_INIT(0);
- static struct workqueue_struct *wq;
static void appledisplay_complete(struct urb *urb)
-@@ -288,7 +288,7 @@ static int appledisplay_probe(struct usb_interface *iface,
+ {
+@@ -283,7 +283,7 @@ static int appledisplay_probe(struct usb_interface *iface,
/* Register backlight device */
snprintf(bl_name, sizeof(bl_name), "appledisplay%d",
@@ -82938,10 +86822,10 @@ index 1a59f33..35f4c56 100644
const u8 *scdd;
u8 fm_ili;
diff --git a/drivers/usb/storage/usb.c b/drivers/usb/storage/usb.c
-index 8c5f011..05e59a2 100644
+index 2cba13a..e6bee5d 100644
--- a/drivers/usb/storage/usb.c
+++ b/drivers/usb/storage/usb.c
-@@ -942,7 +942,7 @@ static void usb_stor_scan_dwork(struct work_struct *work)
+@@ -944,7 +944,7 @@ static void usb_stor_scan_dwork(struct work_struct *work)
clear_bit(US_FLIDX_SCAN_PENDING, &us->dflags);
}
@@ -82964,10 +86848,10 @@ index 8fae28b..8b4bfec 100644
/* Dynamic bitflag definitions (us->dflags): used in set_bit() etc. */
diff --git a/drivers/usb/usbip/vhci.h b/drivers/usb/usbip/vhci.h
-index a863a98..d272795 100644
+index 88b71c4..31cc1ca6 100644
--- a/drivers/usb/usbip/vhci.h
+++ b/drivers/usb/usbip/vhci.h
-@@ -83,7 +83,7 @@ struct vhci_hcd {
+@@ -96,7 +96,7 @@ struct vhci_hcd {
unsigned resuming:1;
unsigned long re_timeout;
@@ -82976,29 +86860,38 @@ index a863a98..d272795 100644
/*
* NOTE:
+@@ -108,7 +108,7 @@ struct vhci_hcd {
+
+ extern int vhci_num_controllers;
+ extern struct platform_device **vhci_pdevs;
+-extern struct attribute_group vhci_attr_group;
++extern attribute_group_no_const vhci_attr_group;
+
+ /* vhci_hcd.c */
+ void rh_port_connect(struct vhci_device *vdev, enum usb_device_speed speed);
diff --git a/drivers/usb/usbip/vhci_hcd.c b/drivers/usb/usbip/vhci_hcd.c
-index 2e0450b..6ebf0f6 100644
+index 03eccf2..dcf1226 100644
--- a/drivers/usb/usbip/vhci_hcd.c
+++ b/drivers/usb/usbip/vhci_hcd.c
-@@ -447,7 +447,7 @@ static void vhci_tx_urb(struct urb *urb)
+@@ -476,7 +476,7 @@ static void vhci_tx_urb(struct urb *urb)
spin_lock_irqsave(&vdev->priv_lock, flags);
-- priv->seqnum = atomic_inc_return(&the_controller->seqnum);
-+ priv->seqnum = atomic_inc_return_unchecked(&the_controller->seqnum);
+- priv->seqnum = atomic_inc_return(&vhci->seqnum);
++ priv->seqnum = atomic_inc_return_unchecked(&vhci->seqnum);
if (priv->seqnum == 0xffff)
dev_info(&urb->dev->dev, "seqnum max\n");
-@@ -696,7 +696,7 @@ static int vhci_urb_dequeue(struct usb_hcd *hcd, struct urb *urb, int status)
+@@ -730,7 +730,7 @@ static int vhci_urb_dequeue(struct usb_hcd *hcd, struct urb *urb, int status)
return -ENOMEM;
}
-- unlink->seqnum = atomic_inc_return(&the_controller->seqnum);
-+ unlink->seqnum = atomic_inc_return_unchecked(&the_controller->seqnum);
+- unlink->seqnum = atomic_inc_return(&vhci->seqnum);
++ unlink->seqnum = atomic_inc_return_unchecked(&vhci->seqnum);
if (unlink->seqnum == 0xffff)
pr_info("seqnum max\n");
-@@ -904,7 +904,7 @@ static int vhci_start(struct usb_hcd *hcd)
+@@ -956,7 +956,7 @@ static int vhci_start(struct usb_hcd *hcd)
vdev->rhport = rhport;
}
@@ -83008,31 +86901,40 @@ index 2e0450b..6ebf0f6 100644
hcd->power_budget = 0; /* no limit */
diff --git a/drivers/usb/usbip/vhci_rx.c b/drivers/usb/usbip/vhci_rx.c
-index d656e0e..466853e 100644
+index fc2d319..1886be3 100644
--- a/drivers/usb/usbip/vhci_rx.c
+++ b/drivers/usb/usbip/vhci_rx.c
-@@ -81,7 +81,7 @@ static void vhci_recv_ret_submit(struct vhci_device *vdev,
+@@ -82,7 +82,7 @@ static void vhci_recv_ret_submit(struct vhci_device *vdev,
if (!urb) {
pr_err("cannot find a urb of seqnum %u\n", pdu->base.seqnum);
pr_info("max seqnum %d\n",
-- atomic_read(&the_controller->seqnum));
-+ atomic_read_unchecked(&the_controller->seqnum));
+- atomic_read(&vhci->seqnum));
++ atomic_read_unchecked(&vhci->seqnum));
usbip_event_add(ud, VDEV_EVENT_ERROR_TCP);
return;
}
diff --git a/drivers/usb/usbip/vhci_sysfs.c b/drivers/usb/usbip/vhci_sysfs.c
-index 5b5462e..fac23a0 100644
+index c404017..7a4f9d4 100644
--- a/drivers/usb/usbip/vhci_sysfs.c
+++ b/drivers/usb/usbip/vhci_sysfs.c
-@@ -60,7 +60,7 @@ static ssize_t status_show(struct device *dev, struct device_attribute *attr,
+@@ -68,7 +68,7 @@ static ssize_t status_show_vhci(int pdev_nr, char *out)
if (vdev->ud.status == VDEV_ST_USED) {
out += sprintf(out, "%03u %08x ",
- vdev->speed, vdev->devid);
-- out += sprintf(out, "%16p ", vdev->ud.tcp_socket);
-+ out += sprintf(out, "%16pK ", vdev->ud.tcp_socket);
- out += sprintf(out, "%s", dev_name(&vdev->udev->dev));
+ vdev->speed, vdev->devid);
+- out += sprintf(out, "%16p %s",
++ out += sprintf(out, "%16pK %s",
+ vdev->ud.tcp_socket,
+ dev_name(&vdev->udev->dev));
+
+@@ -383,7 +383,7 @@ static void finish_status_attrs(void)
+ kfree(status_attrs);
+ }
+
+-struct attribute_group vhci_attr_group = {
++attribute_group_no_const vhci_attr_group = {
+ .attrs = NULL,
+ };
- } else {
diff --git a/drivers/usb/usbip/vudc_rx.c b/drivers/usb/usbip/vudc_rx.c
index e429b59..e0840c6 100644
--- a/drivers/usb/usbip/vudc_rx.c
@@ -83069,7 +86971,7 @@ index edc7267..9f65ce2 100644
for (index = 0; index < WA_MAX_BUF_IN_URBS; ++index)
usb_init_urb(&(wa->buf_in_urbs[index]));
diff --git a/drivers/usb/wusbcore/wa-xfer.c b/drivers/usb/wusbcore/wa-xfer.c
-index 69af4fd..da390d7 100644
+index 167fcc71..7685175 100644
--- a/drivers/usb/wusbcore/wa-xfer.c
+++ b/drivers/usb/wusbcore/wa-xfer.c
@@ -314,7 +314,7 @@ static void wa_xfer_completion(struct wa_xfer *xfer)
@@ -83082,10 +86984,10 @@ index 69af4fd..da390d7 100644
/* Return the xfer's ID. */
diff --git a/drivers/vfio/pci/vfio_pci.c b/drivers/vfio/pci/vfio_pci.c
-index d624a52..7017191 100644
+index 031bc08..1bac856 100644
--- a/drivers/vfio/pci/vfio_pci.c
+++ b/drivers/vfio/pci/vfio_pci.c
-@@ -1283,7 +1283,7 @@ static void vfio_pci_remove(struct pci_dev *pdev)
+@@ -1292,7 +1292,7 @@ static void vfio_pci_remove(struct pci_dev *pdev)
}
static pci_ers_result_t vfio_pci_aer_err_detected(struct pci_dev *pdev,
@@ -83328,7 +87230,7 @@ index 1157661..453a373 100644
.con_scroll = vgacon_scroll,
.con_switch = vgacon_switch,
diff --git a/drivers/video/fbdev/arcfb.c b/drivers/video/fbdev/arcfb.c
-index 1b0b233..6f34c2c 100644
+index 1928cb2..76330ec 100644
--- a/drivers/video/fbdev/arcfb.c
+++ b/drivers/video/fbdev/arcfb.c
@@ -458,7 +458,7 @@ static ssize_t arcfb_write(struct fb_info *info, const char __user *buf,
@@ -83341,7 +87243,7 @@ index 1b0b233..6f34c2c 100644
err = -ENOSPC;
}
diff --git a/drivers/video/fbdev/aty/aty128fb.c b/drivers/video/fbdev/aty/aty128fb.c
-index 0a46268..e55dcb5 100644
+index fa07242..23708c5 100644
--- a/drivers/video/fbdev/aty/aty128fb.c
+++ b/drivers/video/fbdev/aty/aty128fb.c
@@ -144,7 +144,7 @@ enum {
@@ -83354,7 +87256,7 @@ index 0a46268..e55dcb5 100644
"PCI",
"PRO AGP",
diff --git a/drivers/video/fbdev/aty/atyfb_base.c b/drivers/video/fbdev/aty/atyfb_base.c
-index f34ed47f..7283c9f 100644
+index 11026e7..2b7e1bb 100644
--- a/drivers/video/fbdev/aty/atyfb_base.c
+++ b/drivers/video/fbdev/aty/atyfb_base.c
@@ -1335,10 +1335,14 @@ static int atyfb_set_par(struct fb_info *info)
@@ -83504,7 +87406,7 @@ index 76c1ad9..6ec5e94 100644
{
int fbidx = iminor(inode);
struct fb_info *info;
-@@ -1476,10 +1473,7 @@ out:
+@@ -1476,10 +1473,7 @@ __releases(&info->lock)
return res;
}
@@ -83578,7 +87480,7 @@ index a01147f..5d896f8 100644
EXPORT_SYMBOL(matrox_G100);
#endif
diff --git a/drivers/video/fbdev/matrox/matroxfb_Ti3026.c b/drivers/video/fbdev/matrox/matroxfb_Ti3026.c
-index 195ad7c..09743fc 100644
+index 68fa037..0273351 100644
--- a/drivers/video/fbdev/matrox/matroxfb_Ti3026.c
+++ b/drivers/video/fbdev/matrox/matroxfb_Ti3026.c
@@ -738,7 +738,10 @@ static int Ti3026_preinit(struct matrox_fb_info *minfo)
@@ -83708,7 +87610,7 @@ index dd54686..6ef7ef6 100644
mutex_lock(&panel_list_mutex);
list_add_tail(&dssdev->panel_list, &panel_list);
diff --git a/drivers/video/fbdev/s1d13xxxfb.c b/drivers/video/fbdev/s1d13xxxfb.c
-index 96aa46d..65e2554 100644
+index 5d6179e..f80a0f5 100644
--- a/drivers/video/fbdev/s1d13xxxfb.c
+++ b/drivers/video/fbdev/s1d13xxxfb.c
@@ -880,8 +880,10 @@ static int s1d13xxxfb_probe(struct platform_device *pdev)
@@ -83755,7 +87657,7 @@ index 32e23c2..7b73082 100644
extern void SiS_SetChrontelGPIO(struct SiS_Private *SiS_Pr, unsigned short myvbinfo);
extern unsigned short SiS_HandleDDC(struct SiS_Private *SiS_Pr, unsigned int VBFlags, int VGAEngine,
diff --git a/drivers/video/fbdev/smscufx.c b/drivers/video/fbdev/smscufx.c
-index 9279e5f..d9fb0bd 100644
+index ec2e7e3..0c7dc23 100644
--- a/drivers/video/fbdev/smscufx.c
+++ b/drivers/video/fbdev/smscufx.c
@@ -1174,7 +1174,9 @@ static int ufx_ops_release(struct fb_info *info, int user)
@@ -83868,7 +87770,7 @@ index e9c2f7b..87506f4 100644
return count;
}
diff --git a/drivers/video/fbdev/uvesafb.c b/drivers/video/fbdev/uvesafb.c
-index 178ae93..043ddca 100644
+index 98af9e0..1089416 100644
--- a/drivers/video/fbdev/uvesafb.c
+++ b/drivers/video/fbdev/uvesafb.c
@@ -19,6 +19,7 @@
@@ -83957,7 +87859,7 @@ index 178ae93..043ddca 100644
}
static void uvesafb_init_mtrr(struct fb_info *info)
-@@ -1786,6 +1816,11 @@ out_mode:
+@@ -1786,6 +1816,11 @@ static int uvesafb_probe(struct platform_device *dev)
out:
kfree(par->vbe_modes);
@@ -86843,10 +90745,10 @@ index 3c14e43..2630570 100644
+4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
+4 4 4 4 4 4
diff --git a/drivers/xen/events/events_base.c b/drivers/xen/events/events_base.c
-index d5dbdb9..8159bdd 100644
+index 9ecfcdc..d262a6b 100644
--- a/drivers/xen/events/events_base.c
+++ b/drivers/xen/events/events_base.c
-@@ -1588,7 +1588,7 @@ void xen_irq_resume(void)
+@@ -1585,7 +1585,7 @@ void xen_irq_resume(void)
restore_pirqs();
}
@@ -86855,7 +90757,7 @@ index d5dbdb9..8159bdd 100644
.name = "xen-dyn",
.irq_disable = disable_dynirq,
-@@ -1602,7 +1602,7 @@ static struct irq_chip xen_dynamic_chip __read_mostly = {
+@@ -1599,7 +1599,7 @@ static struct irq_chip xen_dynamic_chip __read_mostly = {
.irq_retrigger = retrigger_dynirq,
};
@@ -86864,7 +90766,7 @@ index d5dbdb9..8159bdd 100644
.name = "xen-pirq",
.irq_startup = startup_pirq,
-@@ -1622,7 +1622,7 @@ static struct irq_chip xen_pirq_chip __read_mostly = {
+@@ -1619,7 +1619,7 @@ static struct irq_chip xen_pirq_chip __read_mostly = {
.irq_retrigger = retrigger_dynirq,
};
@@ -86874,10 +90776,10 @@ index d5dbdb9..8159bdd 100644
.irq_disable = disable_dynirq,
diff --git a/drivers/xen/xen-pciback/pci_stub.c b/drivers/xen/xen-pciback/pci_stub.c
-index 258b7c3..6aad74a 100644
+index 6331a95..f457058 100644
--- a/drivers/xen/xen-pciback/pci_stub.c
+++ b/drivers/xen/xen-pciback/pci_stub.c
-@@ -831,7 +831,7 @@ end:
+@@ -883,7 +883,7 @@ static pci_ers_result_t xen_pcibk_mmio_enabled(struct pci_dev *dev)
*/
static pci_ers_result_t xen_pcibk_error_detected(struct pci_dev *dev,
@@ -99282,7 +103184,7 @@ index 6181ad7..86db022 100644
return ret;
}
diff --git a/fs/9p/vfs_inode_dotl.c b/fs/9p/vfs_inode_dotl.c
-index eeabcb0..cea07b5 100644
+index afaa4b6..03b1760 100644
--- a/fs/9p/vfs_inode_dotl.c
+++ b/fs/9p/vfs_inode_dotl.c
@@ -179,7 +179,7 @@ static int v9fs_mapped_dotl_flags(int flags)
@@ -99304,7 +103206,7 @@ index eeabcb0..cea07b5 100644
{ ATTR_UID, P9_ATTR_UID },
{ ATTR_GID, P9_ATTR_GID },
diff --git a/fs/Kconfig.binfmt b/fs/Kconfig.binfmt
-index c7efddf..fa601ee 100644
+index 4c09d93..b051e3d 100644
--- a/fs/Kconfig.binfmt
+++ b/fs/Kconfig.binfmt
@@ -112,7 +112,7 @@ config HAVE_AOUT
@@ -99374,19 +103276,19 @@ index 86cc726..b9b7f73 100644
&data);
if (!inode) {
diff --git a/fs/afs/internal.h b/fs/afs/internal.h
-index df976b2..fcafd44 100644
+index 535a38d..c62717d 100644
--- a/fs/afs/internal.h
+++ b/fs/afs/internal.h
-@@ -15,7 +15,7 @@
+@@ -14,7 +14,7 @@
+ #include <linux/fs.h>
#include <linux/pagemap.h>
- #include <linux/skbuff.h>
#include <linux/rxrpc.h>
-#include <linux/key.h>
+#include <linux/key-type.h>
#include <linux/workqueue.h>
#include <linux/sched.h>
#include <linux/fscache.h>
-@@ -498,7 +498,7 @@ extern const struct file_operations afs_file_operations;
+@@ -493,7 +493,7 @@ extern const struct file_operations afs_file_operations;
extern int afs_open(struct inode *, struct file *);
extern int afs_release(struct inode *, struct file *);
@@ -99396,10 +103298,10 @@ index df976b2..fcafd44 100644
/*
* flock.c
diff --git a/fs/aio.c b/fs/aio.c
-index 4fe81d1..85f39a0 100644
+index 428484f..a85b8ac 100644
--- a/fs/aio.c
+++ b/fs/aio.c
-@@ -455,7 +455,7 @@ static int aio_setup_ring(struct kioctx *ctx)
+@@ -458,7 +458,7 @@ static int aio_setup_ring(struct kioctx *ctx)
size += sizeof(struct io_event) * nr_events;
nr_pages = PFN_UP(size);
@@ -99409,10 +103311,10 @@ index 4fe81d1..85f39a0 100644
file = aio_private_file(ctx, nr_pages);
diff --git a/fs/attr.c b/fs/attr.c
-index 3c42cab..3e01da6 100644
+index c902b3d..d3cd556 100644
--- a/fs/attr.c
+++ b/fs/attr.c
-@@ -102,6 +102,10 @@ int inode_newsize_ok(const struct inode *inode, loff_t offset)
+@@ -115,6 +115,10 @@ int inode_newsize_ok(const struct inode *inode, loff_t offset)
unsigned long limit;
limit = rlimit(RLIMIT_FSIZE);
@@ -99492,10 +103394,10 @@ index 2722387..56059b5 100644
{
if (BEFS_SB(sb)->byte_order == BEFS_BYTESEX_LE)
diff --git a/fs/befs/linuxvfs.c b/fs/befs/linuxvfs.c
-index 7da05b1..9df0a29 100644
+index 647a276..86575b9 100644
--- a/fs/befs/linuxvfs.c
+++ b/fs/befs/linuxvfs.c
-@@ -431,10 +431,12 @@ static struct inode *befs_iget(struct super_block *sb, unsigned long ino)
+@@ -430,10 +430,12 @@ static struct inode *befs_iget(struct super_block *sb, unsigned long ino)
static int __init
befs_init_inodecache(void)
{
@@ -99507,8 +103409,8 @@ index 7da05b1..9df0a29 100644
+ offsetof(struct befs_inode_info, i_data.symlink),
+ sizeof(((struct befs_inode_info *)0)->i_data.symlink),
init_once);
- if (befs_inode_cachep == NULL) {
- pr_err("%s: Couldn't initialize inode slabcache\n", __func__);
+ if (befs_inode_cachep == NULL)
+ return -ENOMEM;
diff --git a/fs/binfmt_aout.c b/fs/binfmt_aout.c
index ae1b540..15cfacf 100644
--- a/fs/binfmt_aout.c
@@ -99590,7 +103492,7 @@ index ae1b540..15cfacf 100644
fd_offset + ex.a_text);
if (error != N_DATADDR(ex))
diff --git a/fs/binfmt_elf.c b/fs/binfmt_elf.c
-index e5495f3..641d63f 100644
+index 2472af2..e3bff2f 100644
--- a/fs/binfmt_elf.c
+++ b/fs/binfmt_elf.c
@@ -36,6 +36,7 @@
@@ -99724,7 +103626,7 @@ index e5495f3..641d63f 100644
error = -ENOMEM;
goto out;
}
-@@ -639,6 +666,336 @@ out:
+@@ -639,6 +666,336 @@ static unsigned long load_elf_interp(struct elfhdr *interp_elf_ex,
return error;
}
@@ -100318,7 +104220,7 @@ index e5495f3..641d63f 100644
set_fs(old_fs);
fill_note(note, "CORE", NT_SIGINFO, sizeof(*csigdata), csigdata);
}
-@@ -2219,7 +2695,7 @@ static int elf_core_dump(struct coredump_params *cprm)
+@@ -2212,7 +2688,7 @@ static int elf_core_dump(struct coredump_params *cprm)
vma = next_vma(vma, gate_vma)) {
unsigned long dump_size;
@@ -100327,7 +104229,7 @@ index e5495f3..641d63f 100644
vma_filesz[i++] = dump_size;
vma_data_size += dump_size;
}
-@@ -2327,6 +2803,167 @@ out:
+@@ -2320,6 +2796,167 @@ static int elf_core_dump(struct coredump_params *cprm)
#endif /* CONFIG_ELF_CORE */
@@ -100518,10 +104420,10 @@ index 464a972..c889ed6 100644
for (i = 0; i < numnote; i++)
sz += notesize(notes + i);
diff --git a/fs/block_dev.c b/fs/block_dev.c
-index 496d99b..f8cf029 100644
+index 092a2ee..8f6433d 100644
--- a/fs/block_dev.c
+++ b/fs/block_dev.c
-@@ -840,7 +840,7 @@ static bool bd_may_claim(struct block_device *bdev, struct block_device *whole,
+@@ -835,7 +835,7 @@ static bool bd_may_claim(struct block_device *bdev, struct block_device *whole,
else if (whole == bdev)
return true; /* is a whole device which isn't held */
@@ -100531,10 +104433,10 @@ index 496d99b..f8cf029 100644
else if (whole->bd_holder != NULL)
return false; /* is a partition of a held device */
diff --git a/fs/btrfs/ctree.c b/fs/btrfs/ctree.c
-index d1c56c9..07bda1f 100644
+index f6ba165..fcbe251 100644
--- a/fs/btrfs/ctree.c
+++ b/fs/btrfs/ctree.c
-@@ -358,7 +358,7 @@ static inline void tree_mod_log_write_unlock(struct btrfs_fs_info *fs_info)
+@@ -356,7 +356,7 @@ static inline void tree_mod_log_write_unlock(struct btrfs_fs_info *fs_info)
*/
static inline u64 btrfs_inc_tree_mod_seq(struct btrfs_fs_info *fs_info)
{
@@ -100543,27 +104445,11 @@ index d1c56c9..07bda1f 100644
}
/*
-@@ -1182,9 +1182,12 @@ static noinline int __btrfs_cow_block(struct btrfs_trans_handle *trans,
- free_extent_buffer(buf);
- add_root_to_dirty_list(root);
- } else {
-- if (root->root_key.objectid == BTRFS_TREE_RELOC_OBJECTID)
-- parent_start = parent->start;
-- else
-+ if (root->root_key.objectid == BTRFS_TREE_RELOC_OBJECTID) {
-+ if (parent)
-+ parent_start = parent->start;
-+ else
-+ parent_start = 0;
-+ } else
- parent_start = 0;
-
- WARN_ON(trans->transid != btrfs_header_generation(parent));
diff --git a/fs/btrfs/ctree.h b/fs/btrfs/ctree.h
-index 469fa32..eb7716d 100644
+index 86245b88..25516fa 100644
--- a/fs/btrfs/ctree.h
+++ b/fs/btrfs/ctree.h
-@@ -345,8 +345,8 @@ struct btrfs_dev_replace {
+@@ -346,8 +346,8 @@ struct btrfs_dev_replace {
u64 replace_state; /* see #define above */
u64 time_started; /* seconds since 1-Jan-1970 */
u64 time_stopped; /* seconds since 1-Jan-1970 */
@@ -100574,7 +104460,7 @@ index 469fa32..eb7716d 100644
u64 cursor_left;
u64 committed_cursor_left;
-@@ -836,7 +836,7 @@ struct btrfs_fs_info {
+@@ -853,7 +853,7 @@ struct btrfs_fs_info {
/* this protects tree_mod_seq_list */
spinlock_t tree_mod_seq_lock;
@@ -100593,10 +104479,10 @@ index 469fa32..eb7716d 100644
/* No matter the commit succeeds or not*/
int log_transid_committed;
diff --git a/fs/btrfs/delayed-inode.c b/fs/btrfs/delayed-inode.c
-index de946dd..3c04c5a 100644
+index 4d8f8a8..616aecb 100644
--- a/fs/btrfs/delayed-inode.c
+++ b/fs/btrfs/delayed-inode.c
-@@ -456,7 +456,7 @@ static int __btrfs_add_delayed_deletion_item(struct btrfs_delayed_node *node,
+@@ -453,7 +453,7 @@ static int __btrfs_add_delayed_deletion_item(struct btrfs_delayed_node *node,
static void finish_one_item(struct btrfs_delayed_root *delayed_root)
{
@@ -100605,7 +104491,7 @@ index de946dd..3c04c5a 100644
/*
* atomic_dec_return implies a barrier for waitqueue_active
-@@ -1399,7 +1399,7 @@ void btrfs_assert_delayed_root_empty(struct btrfs_root *root)
+@@ -1396,7 +1396,7 @@ void btrfs_assert_delayed_root_empty(struct btrfs_root *root)
static int could_end_wait(struct btrfs_delayed_root *delayed_root, int seq)
{
@@ -100614,7 +104500,7 @@ index de946dd..3c04c5a 100644
if (val < seq || val >= seq + BTRFS_DELAYED_BATCH)
return 1;
-@@ -1424,7 +1424,7 @@ void btrfs_balance_delayed_items(struct btrfs_root *root)
+@@ -1421,7 +1421,7 @@ void btrfs_balance_delayed_items(struct btrfs_root *root)
int seq;
int ret;
@@ -100646,10 +104532,10 @@ index 2495b3d..8bdbb07 100644
spin_lock_init(&delayed_root->lock);
init_waitqueue_head(&delayed_root->wait);
diff --git a/fs/btrfs/delayed-ref.c b/fs/btrfs/delayed-ref.c
-index ac02e04..c0b234e 100644
+index 8d93854..48ba245 100644
--- a/fs/btrfs/delayed-ref.c
+++ b/fs/btrfs/delayed-ref.c
-@@ -658,7 +658,7 @@ add_delayed_tree_ref(struct btrfs_fs_info *fs_info,
+@@ -659,7 +659,7 @@ add_delayed_tree_ref(struct btrfs_fs_info *fs_info,
action = BTRFS_ADD_DELAYED_REF;
if (is_fstree(ref_root))
@@ -100658,7 +104544,7 @@ index ac02e04..c0b234e 100644
delayed_refs = &trans->transaction->delayed_refs;
/* first set the basic ref node struct up */
-@@ -714,7 +714,7 @@ add_delayed_data_ref(struct btrfs_fs_info *fs_info,
+@@ -715,7 +715,7 @@ add_delayed_data_ref(struct btrfs_fs_info *fs_info,
delayed_refs = &trans->transaction->delayed_refs;
if (is_fstree(ref_root))
@@ -100668,10 +104554,10 @@ index ac02e04..c0b234e 100644
/* first set the basic ref node struct up */
atomic_set(&ref->refs, 1);
diff --git a/fs/btrfs/dev-replace.c b/fs/btrfs/dev-replace.c
-index e9bbff3..6985e2c 100644
+index 05169ef..184173a 100644
--- a/fs/btrfs/dev-replace.c
+++ b/fs/btrfs/dev-replace.c
-@@ -82,8 +82,8 @@ no_valid_dev_replace_entry_found:
+@@ -82,8 +82,8 @@ int btrfs_init_dev_replace(struct btrfs_fs_info *fs_info)
dev_replace->replace_state = 0;
dev_replace->time_started = 0;
dev_replace->time_stopped = 0;
@@ -100682,7 +104568,7 @@ index e9bbff3..6985e2c 100644
dev_replace->cursor_left = 0;
dev_replace->committed_cursor_left = 0;
dev_replace->cursor_left_last_write_of_item = 0;
-@@ -112,9 +112,9 @@ no_valid_dev_replace_entry_found:
+@@ -112,9 +112,9 @@ int btrfs_init_dev_replace(struct btrfs_fs_info *fs_info)
dev_replace->time_started = btrfs_dev_replace_time_started(eb, ptr);
dev_replace->time_stopped =
btrfs_dev_replace_time_stopped(eb, ptr);
@@ -100694,7 +104580,7 @@ index e9bbff3..6985e2c 100644
btrfs_dev_replace_num_uncorrectable_read_errors(eb, ptr));
dev_replace->cursor_left = btrfs_dev_replace_cursor_left(eb, ptr);
dev_replace->committed_cursor_left = dev_replace->cursor_left;
-@@ -274,9 +274,9 @@ int btrfs_run_dev_replace(struct btrfs_trans_handle *trans,
+@@ -276,9 +276,9 @@ int btrfs_run_dev_replace(struct btrfs_trans_handle *trans,
btrfs_set_dev_replace_time_started(eb, ptr, dev_replace->time_started);
btrfs_set_dev_replace_time_stopped(eb, ptr, dev_replace->time_stopped);
btrfs_set_dev_replace_num_write_errors(eb, ptr,
@@ -100706,7 +104592,7 @@ index e9bbff3..6985e2c 100644
dev_replace->cursor_left_last_write_of_item =
dev_replace->cursor_left;
btrfs_set_dev_replace_cursor_left(eb, ptr,
-@@ -377,8 +377,8 @@ int btrfs_dev_replace_start(struct btrfs_root *root, char *tgtdev_name,
+@@ -379,8 +379,8 @@ int btrfs_dev_replace_start(struct btrfs_root *root, char *tgtdev_name,
dev_replace->cursor_right = 0;
dev_replace->is_valid = 1;
dev_replace->item_needs_writeback = 1;
@@ -100717,7 +104603,7 @@ index e9bbff3..6985e2c 100644
btrfs_dev_replace_unlock(dev_replace, 1);
ret = btrfs_sysfs_add_device_link(tgt_device->fs_devices, tgt_device);
-@@ -648,9 +648,9 @@ void btrfs_dev_replace_status(struct btrfs_fs_info *fs_info,
+@@ -650,9 +650,9 @@ void btrfs_dev_replace_status(struct btrfs_fs_info *fs_info,
args->status.time_started = dev_replace->time_started;
args->status.time_stopped = dev_replace->time_stopped;
args->status.num_write_errors =
@@ -100745,10 +104631,10 @@ index e922b42..2a5a145 100644
}
#endif
diff --git a/fs/btrfs/disk-io.c b/fs/btrfs/disk-io.c
-index dafcfd0..e57d31d 100644
+index 1cd3257..abefb02 100644
--- a/fs/btrfs/disk-io.c
+++ b/fs/btrfs/disk-io.c
-@@ -1326,7 +1326,7 @@ static void __setup_root(u32 nodesize, u32 sectorsize, u32 stripesize,
+@@ -1349,7 +1349,7 @@ static void __setup_root(u32 nodesize, u32 sectorsize, u32 stripesize,
atomic_set(&root->log_commit[0], 0);
atomic_set(&root->log_commit[1], 0);
atomic_set(&root->log_writers, 0);
@@ -100757,7 +104643,7 @@ index dafcfd0..e57d31d 100644
atomic_set(&root->orphan_inodes, 0);
atomic_set(&root->refs, 1);
atomic_set(&root->will_be_snapshoted, 0);
-@@ -2677,7 +2677,7 @@ int open_ctree(struct super_block *sb,
+@@ -2697,7 +2697,7 @@ int open_ctree(struct super_block *sb,
atomic_set(&fs_info->defrag_running, 0);
atomic_set(&fs_info->qgroup_op_seq, 0);
atomic_set(&fs_info->reada_works_cnt, 0);
@@ -100793,10 +104679,10 @@ index 26f9ac7..bc78edc 100644
RB_CLEAR_NODE(&merge->rb_node);
em->mod_len = (merge->mod_start + merge->mod_len) - em->mod_start;
diff --git a/fs/btrfs/file.c b/fs/btrfs/file.c
-index fea31a4..8be7c86 100644
+index 3a14c87..9ca5902 100644
--- a/fs/btrfs/file.c
+++ b/fs/btrfs/file.c
-@@ -1935,7 +1935,7 @@ int btrfs_sync_file(struct file *file, loff_t start, loff_t end, int datasync)
+@@ -1960,7 +1960,7 @@ int btrfs_sync_file(struct file *file, loff_t start, loff_t end, int datasync)
return ret;
inode_lock(inode);
@@ -100805,7 +104691,7 @@ index fea31a4..8be7c86 100644
full_sync = test_bit(BTRFS_INODE_NEEDS_FULL_SYNC,
&BTRFS_I(inode)->runtime_flags);
/*
-@@ -1989,7 +1989,7 @@ int btrfs_sync_file(struct file *file, loff_t start, loff_t end, int datasync)
+@@ -2014,7 +2014,7 @@ int btrfs_sync_file(struct file *file, loff_t start, loff_t end, int datasync)
inode_unlock(inode);
goto out;
}
@@ -100815,7 +104701,7 @@ index fea31a4..8be7c86 100644
/*
* If the last transaction that changed this file was before the current
diff --git a/fs/btrfs/free-space-cache.h b/fs/btrfs/free-space-cache.h
-index 3af651c..30b9644 100644
+index 363fdd9..887dbe2 100644
--- a/fs/btrfs/free-space-cache.h
+++ b/fs/btrfs/free-space-cache.h
@@ -48,6 +48,7 @@ struct btrfs_free_space_op {
@@ -100827,7 +104713,7 @@ index 3af651c..30b9644 100644
struct btrfs_io_ctl;
diff --git a/fs/btrfs/raid56.c b/fs/btrfs/raid56.c
-index cd8d302..dfd9e57 100644
+index d016d4a..0c6d6ab 100644
--- a/fs/btrfs/raid56.c
+++ b/fs/btrfs/raid56.c
@@ -153,7 +153,7 @@ struct btrfs_raid_bio {
@@ -100934,7 +104820,7 @@ index cd8d302..dfd9e57 100644
__raid_recover_end_io(rbio);
goto out;
} else {
-@@ -2342,7 +2342,7 @@ static noinline void finish_parity_scrub(struct btrfs_raid_bio *rbio,
+@@ -2345,7 +2345,7 @@ static noinline void finish_parity_scrub(struct btrfs_raid_bio *rbio,
SetPageUptodate(q_page);
}
@@ -100943,7 +104829,7 @@ index cd8d302..dfd9e57 100644
for_each_set_bit(pagenr, rbio->dbitmap, rbio->stripe_npages) {
struct page *p;
-@@ -2463,7 +2463,7 @@ static inline int is_data_stripe(struct btrfs_raid_bio *rbio, int stripe)
+@@ -2466,7 +2466,7 @@ static inline int is_data_stripe(struct btrfs_raid_bio *rbio, int stripe)
*/
static void validate_rbio_for_parity_scrub(struct btrfs_raid_bio *rbio)
{
@@ -100952,7 +104838,7 @@ index cd8d302..dfd9e57 100644
goto cleanup;
if (rbio->faila >= 0 || rbio->failb >= 0) {
-@@ -2560,7 +2560,7 @@ static void raid56_parity_scrub_stripe(struct btrfs_raid_bio *rbio)
+@@ -2563,7 +2563,7 @@ static void raid56_parity_scrub_stripe(struct btrfs_raid_bio *rbio)
bio_list_init(&bio_list);
@@ -100962,10 +104848,10 @@ index cd8d302..dfd9e57 100644
* build a list of bios to read all the missing parts of this
* stripe
diff --git a/fs/btrfs/scrub.c b/fs/btrfs/scrub.c
-index 1d195d2..9d9cfa9 100644
+index fffb9ab..d7dd73f0 100644
--- a/fs/btrfs/scrub.c
+++ b/fs/btrfs/scrub.c
-@@ -3720,7 +3720,7 @@ int scrub_enumerate_chunks(struct scrub_ctx *sctx,
+@@ -3721,7 +3721,7 @@ int scrub_enumerate_chunks(struct scrub_ctx *sctx,
if (ret)
break;
if (is_dev_replace &&
@@ -100975,10 +104861,10 @@ index 1d195d2..9d9cfa9 100644
break;
}
diff --git a/fs/btrfs/super.c b/fs/btrfs/super.c
-index 4071fe2..caa5e0e 100644
+index 74ed5aa..3b10019 100644
--- a/fs/btrfs/super.c
+++ b/fs/btrfs/super.c
-@@ -268,7 +268,7 @@ void __btrfs_abort_transaction(struct btrfs_trans_handle *trans,
+@@ -267,7 +267,7 @@ void __btrfs_abort_transaction(struct btrfs_trans_handle *trans,
function, line, errstr);
return;
}
@@ -100988,10 +104874,10 @@ index 4071fe2..caa5e0e 100644
wake_up(&fs_info->transaction_wait);
wake_up(&fs_info->transaction_blocked_wait);
diff --git a/fs/btrfs/sysfs.c b/fs/btrfs/sysfs.c
-index c656990..e86b7cc 100644
+index 1f157fb..747486f 100644
--- a/fs/btrfs/sysfs.c
+++ b/fs/btrfs/sysfs.c
-@@ -497,7 +497,7 @@ static int addrm_unknown_feature_attrs(struct btrfs_fs_info *fs_info, bool add)
+@@ -499,7 +499,7 @@ static int addrm_unknown_feature_attrs(struct btrfs_fs_info *fs_info, bool add)
for (set = 0; set < FEAT_MAX; set++) {
int i;
struct attribute *attrs[2];
@@ -101027,20 +104913,20 @@ index 3221c8d..8fe6170 100644
.use_bitmap = test_use_bitmap,
};
diff --git a/fs/btrfs/transaction.c b/fs/btrfs/transaction.c
-index 95d4191..f804459 100644
+index 9517de0..9e78b1f 100644
--- a/fs/btrfs/transaction.c
+++ b/fs/btrfs/transaction.c
-@@ -277,7 +277,7 @@ loop:
+@@ -277,7 +277,7 @@ static noinline int join_transaction(struct btrfs_root *root, unsigned int type)
+ WARN(1, KERN_ERR "BTRFS: tree_mod_seq_list not empty when creating a fresh transaction\n");
if (!RB_EMPTY_ROOT(&fs_info->tree_mod_log))
- WARN(1, KERN_ERR "BTRFS: tree_mod_log rb tree not empty when "
- "creating a fresh transaction\n");
+ WARN(1, KERN_ERR "BTRFS: tree_mod_log rb tree not empty when creating a fresh transaction\n");
- atomic64_set(&fs_info->tree_mod_seq, 0);
+ atomic64_set_unchecked(&fs_info->tree_mod_seq, 0);
spin_lock_init(&cur_trans->delayed_refs.lock);
diff --git a/fs/btrfs/tree-log.c b/fs/btrfs/tree-log.c
-index e63c96c..1c65e3b 100644
+index b890045..ebd25f8 100644
--- a/fs/btrfs/tree-log.c
+++ b/fs/btrfs/tree-log.c
@@ -174,7 +174,7 @@ static int start_log_trans(struct btrfs_trans_handle *trans,
@@ -101093,7 +104979,7 @@ index ab858e3..96fd5a1 100644
static inline int btrfs_need_log_full_commit(struct btrfs_fs_info *fs_info,
diff --git a/fs/btrfs/volumes.c b/fs/btrfs/volumes.c
-index 7c9c6a4..00d2c13 100644
+index 71a60cc..b6e9105 100644
--- a/fs/btrfs/volumes.c
+++ b/fs/btrfs/volumes.c
@@ -246,7 +246,7 @@ static struct btrfs_device *__alloc_device(void)
@@ -101105,7 +104991,7 @@ index 7c9c6a4..00d2c13 100644
btrfs_device_data_ordered_init(dev);
INIT_RADIX_TREE(&dev->reada_zones, GFP_NOFS & ~__GFP_DIRECT_RECLAIM);
INIT_RADIX_TREE(&dev->reada_extents, GFP_NOFS & ~__GFP_DIRECT_RECLAIM);
-@@ -5307,7 +5307,7 @@ static struct btrfs_bio *alloc_btrfs_bio(int total_stripes, int real_stripes)
+@@ -5309,7 +5309,7 @@ static struct btrfs_bio *alloc_btrfs_bio(int total_stripes, int real_stripes)
sizeof(u64) * (total_stripes),
GFP_NOFS|__GFP_NOFAIL);
@@ -101114,7 +105000,7 @@ index 7c9c6a4..00d2c13 100644
atomic_set(&bbio->refs, 1);
return bbio;
-@@ -6006,7 +6006,7 @@ static void btrfs_end_bio(struct bio *bio)
+@@ -6008,7 +6008,7 @@ static void btrfs_end_bio(struct bio *bio)
int is_orig_bio = 0;
if (bio->bi_error) {
@@ -101123,7 +105009,7 @@ index 7c9c6a4..00d2c13 100644
if (bio->bi_error == -EIO || bio->bi_error == -EREMOTEIO) {
unsigned int stripe_index =
btrfs_io_bio(bio)->stripe_index;
-@@ -6044,7 +6044,7 @@ static void btrfs_end_bio(struct bio *bio)
+@@ -6046,7 +6046,7 @@ static void btrfs_end_bio(struct bio *bio)
/* only send an error to the higher layers if it is
* beyond the tolerance of the btrfs bio
*/
@@ -101132,7 +105018,7 @@ index 7c9c6a4..00d2c13 100644
bio->bi_error = -EIO;
} else {
/*
-@@ -6154,7 +6154,7 @@ static void submit_stripe_bio(struct btrfs_root *root, struct btrfs_bio *bbio,
+@@ -6158,7 +6158,7 @@ static void submit_stripe_bio(struct btrfs_root *root, struct btrfs_bio *bbio,
static void bbio_error(struct btrfs_bio *bbio, struct bio *bio, u64 logical)
{
@@ -101141,7 +105027,7 @@ index 7c9c6a4..00d2c13 100644
if (atomic_dec_and_test(&bbio->stripes_pending)) {
/* Should be the original bio. */
WARN_ON(bio != bbio->orig_bio);
-@@ -7031,10 +7031,10 @@ int btrfs_run_dev_stats(struct btrfs_trans_handle *trans,
+@@ -7038,10 +7038,10 @@ int btrfs_run_dev_stats(struct btrfs_trans_handle *trans,
if (!device->dev_stats_valid || !btrfs_dev_stats_dirty(device))
continue;
@@ -101155,7 +105041,7 @@ index 7c9c6a4..00d2c13 100644
mutex_unlock(&fs_devices->device_list_mutex);
diff --git a/fs/btrfs/volumes.h b/fs/btrfs/volumes.h
-index 6613e63..688bc8e 100644
+index 09ed29c..ef67721 100644
--- a/fs/btrfs/volumes.h
+++ b/fs/btrfs/volumes.h
@@ -148,8 +148,8 @@ struct btrfs_device {
@@ -101228,10 +105114,10 @@ index 6613e63..688bc8e 100644
static inline void btrfs_dev_stat_reset(struct btrfs_device *dev,
diff --git a/fs/buffer.c b/fs/buffer.c
-index 9c8eb9b..236a1ca 100644
+index b205a62..96049e6 100644
--- a/fs/buffer.c
+++ b/fs/buffer.c
-@@ -3476,7 +3476,7 @@ void __init buffer_init(void)
+@@ -3475,7 +3475,7 @@ void __init buffer_init(void)
bh_cachep = kmem_cache_create("buffer_head",
sizeof(struct buffer_head), 0,
(SLAB_RECLAIM_ACCOUNT|SLAB_PANIC|
@@ -101241,10 +105127,10 @@ index 9c8eb9b..236a1ca 100644
/*
diff --git a/fs/cachefiles/bind.c b/fs/cachefiles/bind.c
-index 6af790f..ec4c1e6 100644
+index 3ff867f..2f8c106 100644
--- a/fs/cachefiles/bind.c
+++ b/fs/cachefiles/bind.c
-@@ -39,13 +39,11 @@ int cachefiles_daemon_bind(struct cachefiles_cache *cache, char *args)
+@@ -40,13 +40,11 @@ int cachefiles_daemon_bind(struct cachefiles_cache *cache, char *args)
args);
/* start by checking things over */
@@ -101354,10 +105240,10 @@ index cd1effe..73f8767 100644
#else
diff --git a/fs/cachefiles/namei.c b/fs/cachefiles/namei.c
-index c6ee4b5..de05717 100644
+index 41df8a2..828d3f9 100644
--- a/fs/cachefiles/namei.c
+++ b/fs/cachefiles/namei.c
-@@ -274,8 +274,8 @@ void cachefiles_mark_object_inactive(struct cachefiles_cache *cache,
+@@ -275,8 +275,8 @@ void cachefiles_mark_object_inactive(struct cachefiles_cache *cache,
/* This object can now be culled, so we need to let the daemon know
* that there is something it can remove if it needs to.
*/
@@ -101368,7 +105254,7 @@ index c6ee4b5..de05717 100644
cachefiles_state_changed(cache);
}
-@@ -334,7 +334,7 @@ try_again:
+@@ -335,7 +335,7 @@ static int cachefiles_bury_object(struct cachefiles_cache *cache,
/* first step is to make up a grave dentry in the graveyard */
sprintf(nbuffer, "%08x%08x",
(uint32_t) get_seconds(),
@@ -101408,10 +105294,10 @@ index 125b90f..8c7bed5 100644
return 0;
diff --git a/fs/ceph/super.c b/fs/ceph/super.c
-index e247f6f..7c4ed52 100644
+index b382e59..e12e43f 100644
--- a/fs/ceph/super.c
+++ b/fs/ceph/super.c
-@@ -933,7 +933,7 @@ static int ceph_compare_super(struct super_block *sb, void *data)
+@@ -926,7 +926,7 @@ static int ceph_compare_super(struct super_block *sb, void *data)
/*
* construct our own bdi so we can control readahead, etc.
*/
@@ -101420,7 +105306,7 @@ index e247f6f..7c4ed52 100644
static int ceph_register_bdi(struct super_block *sb,
struct ceph_fs_client *fsc)
-@@ -950,7 +950,7 @@ static int ceph_register_bdi(struct super_block *sb,
+@@ -943,7 +943,7 @@ static int ceph_register_bdi(struct super_block *sb,
VM_MAX_READAHEAD * 1024 / PAGE_SIZE;
err = bdi_register(&fsc->backing_dev_info, NULL, "ceph-%ld",
@@ -101430,7 +105316,7 @@ index e247f6f..7c4ed52 100644
sb->s_bdi = &fsc->backing_dev_info;
return err;
diff --git a/fs/char_dev.c b/fs/char_dev.c
-index 6edd825..e8cbd2d 100644
+index 44a240c..3bc9700 100644
--- a/fs/char_dev.c
+++ b/fs/char_dev.c
@@ -70,7 +70,7 @@ void chrdev_show(struct seq_file *f, off_t offset)
@@ -101487,10 +105373,10 @@ index 3d03e48..0f22463 100644
server->ops->print_stats(m, tcon);
}
diff --git a/fs/cifs/cifsfs.c b/fs/cifs/cifsfs.c
-index 8c68d03..267f6dd 100644
+index 15261ba..6f5a8873 100644
--- a/fs/cifs/cifsfs.c
+++ b/fs/cifs/cifsfs.c
-@@ -1148,9 +1148,10 @@ cifs_init_request_bufs(void)
+@@ -1141,9 +1141,10 @@ cifs_init_request_bufs(void)
cifs_dbg(VFS, "CIFSMaxBufSize %d 0x%x\n",
CIFSMaxBufSize, CIFSMaxBufSize);
*/
@@ -101503,7 +105389,7 @@ index 8c68d03..267f6dd 100644
if (cifs_req_cachep == NULL)
return -ENOMEM;
-@@ -1176,9 +1177,9 @@ cifs_init_request_bufs(void)
+@@ -1169,9 +1170,9 @@ cifs_init_request_bufs(void)
more SMBs to use small buffer alloc and is still much more
efficient to alloc 1 per page off the slab compared to 17K (5page)
alloc of large cifs buffers even when page debugging is on */
@@ -101515,7 +105401,7 @@ index 8c68d03..267f6dd 100644
if (cifs_sm_req_cachep == NULL) {
mempool_destroy(cifs_req_poolp);
kmem_cache_destroy(cifs_req_cachep);
-@@ -1262,8 +1263,8 @@ init_cifs(void)
+@@ -1255,8 +1256,8 @@ init_cifs(void)
atomic_set(&bufAllocCount, 0);
atomic_set(&smBufAllocCount, 0);
#ifdef CONFIG_CIFS_STATS2
@@ -101527,10 +105413,10 @@ index 8c68d03..267f6dd 100644
atomic_set(&midCount, 0);
diff --git a/fs/cifs/cifsglob.h b/fs/cifs/cifsglob.h
-index 24184ca..97d623c 100644
+index 203287f..f1b702c 100644
--- a/fs/cifs/cifsglob.h
+++ b/fs/cifs/cifsglob.h
-@@ -845,35 +845,35 @@ struct cifs_tcon {
+@@ -862,35 +862,35 @@ struct cifs_tcon {
__u16 Flags; /* optional support bits */
enum statusEnum tidStatus;
#ifdef CONFIG_CIFS_STATS
@@ -101590,7 +105476,7 @@ index 24184ca..97d623c 100644
} smb2_stats;
#endif /* CONFIG_CIFS_SMB2 */
} stats;
-@@ -1226,7 +1226,7 @@ convert_delimiter(char *path, char delim)
+@@ -1245,7 +1245,7 @@ convert_delimiter(char *path, char delim)
}
#ifdef CONFIG_CIFS_STATS
@@ -101599,7 +105485,7 @@ index 24184ca..97d623c 100644
static inline void cifs_stats_bytes_written(struct cifs_tcon *tcon,
unsigned int bytes)
-@@ -1589,8 +1589,8 @@ GLOBAL_EXTERN atomic_t tconInfoReconnectCount;
+@@ -1608,8 +1608,8 @@ GLOBAL_EXTERN atomic_t tconInfoReconnectCount;
/* Various Debug counters */
GLOBAL_EXTERN atomic_t bufAllocCount; /* current number allocated */
#ifdef CONFIG_CIFS_STATS2
@@ -101611,10 +105497,10 @@ index 24184ca..97d623c 100644
GLOBAL_EXTERN atomic_t smBufAllocCount;
GLOBAL_EXTERN atomic_t midCount;
diff --git a/fs/cifs/file.c b/fs/cifs/file.c
-index 605438a..b8185c2 100644
+index 18a1e1d..18caa3d 100644
--- a/fs/cifs/file.c
+++ b/fs/cifs/file.c
-@@ -1386,7 +1386,7 @@ cifs_free_llist(struct list_head *llist)
+@@ -1431,7 +1431,7 @@ cifs_free_llist(struct list_head *llist)
int
cifs_unlock_range(struct cifsFileInfo *cfile, struct file_lock *flock,
@@ -101623,7 +105509,7 @@ index 605438a..b8185c2 100644
{
int rc = 0, stored_rc;
int types[] = {LOCKING_ANDX_LARGE_FILES,
-@@ -2072,10 +2072,14 @@ static int cifs_writepages(struct address_space *mapping,
+@@ -2117,10 +2117,14 @@ static int cifs_writepages(struct address_space *mapping,
index = mapping->writeback_index; /* Start from prev offset */
end = -1;
} else {
@@ -101641,7 +105527,7 @@ index 605438a..b8185c2 100644
scanned = true;
}
server = cifs_sb_master_tcon(cifs_sb)->ses->server;
-@@ -2549,7 +2553,7 @@ cifs_write_from_iter(loff_t offset, size_t len, struct iov_iter *from,
+@@ -2593,7 +2597,7 @@ cifs_write_from_iter(loff_t offset, size_t len, struct iov_iter *from,
wdata->pid = pid;
wdata->bytes = cur_len;
wdata->pagesz = PAGE_SIZE;
@@ -101782,10 +105668,10 @@ index fc537c2..47d654c 100644
}
diff --git a/fs/cifs/smb2ops.c b/fs/cifs/smb2ops.c
-index 0e73cef..e4dba34 100644
+index 5d456eb..6b33055 100644
--- a/fs/cifs/smb2ops.c
+++ b/fs/cifs/smb2ops.c
-@@ -427,8 +427,8 @@ smb2_clear_stats(struct cifs_tcon *tcon)
+@@ -432,8 +432,8 @@ smb2_clear_stats(struct cifs_tcon *tcon)
#ifdef CONFIG_CIFS_STATS
int i;
for (i = 0; i < NUMBER_OF_SMB2_COMMANDS; i++) {
@@ -101796,7 +105682,7 @@ index 0e73cef..e4dba34 100644
}
#endif
}
-@@ -468,65 +468,65 @@ static void
+@@ -473,65 +473,65 @@ static void
smb2_print_stats(struct seq_file *m, struct cifs_tcon *tcon)
{
#ifdef CONFIG_CIFS_STATS
@@ -101903,10 +105789,10 @@ index 0e73cef..e4dba34 100644
}
diff --git a/fs/cifs/smb2pdu.c b/fs/cifs/smb2pdu.c
-index 32e0e06..236644e 100644
+index 8745722..407a2a7 100644
--- a/fs/cifs/smb2pdu.c
+++ b/fs/cifs/smb2pdu.c
-@@ -2457,8 +2457,7 @@ SMB2_query_directory(const unsigned int xid, struct cifs_tcon *tcon,
+@@ -2613,8 +2613,7 @@ SMB2_query_directory(const unsigned int xid, struct cifs_tcon *tcon,
default:
cifs_dbg(VFS, "info level %u isn't supported\n",
srch_inf->info_level);
@@ -101965,7 +105851,7 @@ index 5bb630a..043dc70 100644
return hit;
diff --git a/fs/coda/dir.c b/fs/coda/dir.c
-index 6fb8672..da34e6a 100644
+index c0474ac..2c8be82 100644
--- a/fs/coda/dir.c
+++ b/fs/coda/dir.c
@@ -29,11 +29,10 @@
@@ -101981,7 +105867,7 @@ index 6fb8672..da34e6a 100644
/* inode operations for directories */
/* access routines: lookup, readlink, permission */
-@@ -568,7 +567,7 @@ const struct inode_operations coda_dir_inode_operations = {
+@@ -572,7 +571,7 @@ const struct inode_operations coda_dir_inode_operations = {
.symlink = coda_symlink,
.mkdir = coda_mkdir,
.rmdir = coda_rmdir,
@@ -101991,19 +105877,10 @@ index 6fb8672..da34e6a 100644
.permission = coda_permission,
.getattr = coda_getattr,
diff --git a/fs/compat.c b/fs/compat.c
-index be6e48b..f7baebf 100644
+index bd064a2..8280c0f 100644
--- a/fs/compat.c
+++ b/fs/compat.c
-@@ -54,7 +54,7 @@
- #include <asm/ioctls.h>
- #include "internal.h"
-
--int compat_log = 1;
-+int compat_log = 0;
-
- int compat_printk(const char *fmt, ...)
- {
-@@ -512,7 +512,7 @@ COMPAT_SYSCALL_DEFINE2(io_setup, unsigned, nr_reqs, u32 __user *, ctx32p)
+@@ -498,7 +498,7 @@ COMPAT_SYSCALL_DEFINE2(io_setup, unsigned, nr_reqs, u32 __user *, ctx32p)
set_fs(KERNEL_DS);
/* The __user pointer cast is valid because of the set_fs() */
@@ -102012,16 +105889,7 @@ index be6e48b..f7baebf 100644
set_fs(oldfs);
/* truncating is ok because it's a user address */
if (!ret)
-@@ -562,7 +562,7 @@ ssize_t compat_rw_copy_check_uvector(int type,
- goto out;
-
- ret = -EINVAL;
-- if (nr_segs > UIO_MAXIOV || nr_segs < 0)
-+ if (nr_segs > UIO_MAXIOV)
- goto out;
- if (nr_segs > fast_segs) {
- ret = -ENOMEM;
-@@ -843,6 +843,7 @@ struct compat_old_linux_dirent {
+@@ -829,6 +829,7 @@ struct compat_old_linux_dirent {
struct compat_readdir_callback {
struct dir_context ctx;
struct compat_old_linux_dirent __user *dirent;
@@ -102029,7 +105897,7 @@ index be6e48b..f7baebf 100644
int result;
};
-@@ -862,6 +863,10 @@ static int compat_fillonedir(struct dir_context *ctx, const char *name,
+@@ -848,6 +849,10 @@ static int compat_fillonedir(struct dir_context *ctx, const char *name,
buf->result = -EOVERFLOW;
return -EOVERFLOW;
}
@@ -102040,7 +105908,7 @@ index be6e48b..f7baebf 100644
buf->result++;
dirent = buf->dirent;
if (!access_ok(VERIFY_WRITE, dirent,
-@@ -893,6 +898,7 @@ COMPAT_SYSCALL_DEFINE3(old_readdir, unsigned int, fd,
+@@ -879,6 +884,7 @@ COMPAT_SYSCALL_DEFINE3(old_readdir, unsigned int, fd,
if (!f.file)
return -EBADF;
@@ -102048,7 +105916,7 @@ index be6e48b..f7baebf 100644
error = iterate_dir(f.file, &buf.ctx);
if (buf.result)
error = buf.result;
-@@ -912,6 +918,7 @@ struct compat_getdents_callback {
+@@ -898,6 +904,7 @@ struct compat_getdents_callback {
struct dir_context ctx;
struct compat_linux_dirent __user *current_dir;
struct compat_linux_dirent __user *previous;
@@ -102056,7 +105924,7 @@ index be6e48b..f7baebf 100644
int count;
int error;
};
-@@ -934,6 +941,10 @@ static int compat_filldir(struct dir_context *ctx, const char *name, int namlen,
+@@ -920,6 +927,10 @@ static int compat_filldir(struct dir_context *ctx, const char *name, int namlen,
buf->error = -EOVERFLOW;
return -EOVERFLOW;
}
@@ -102067,7 +105935,7 @@ index be6e48b..f7baebf 100644
dirent = buf->previous;
if (dirent) {
if (signal_pending(current))
-@@ -981,6 +992,7 @@ COMPAT_SYSCALL_DEFINE3(getdents, unsigned int, fd,
+@@ -967,6 +978,7 @@ COMPAT_SYSCALL_DEFINE3(getdents, unsigned int, fd,
if (!f.file)
return -EBADF;
@@ -102075,7 +105943,7 @@ index be6e48b..f7baebf 100644
error = iterate_dir(f.file, &buf.ctx);
if (error >= 0)
error = buf.error;
-@@ -1001,6 +1013,7 @@ struct compat_getdents_callback64 {
+@@ -987,6 +999,7 @@ struct compat_getdents_callback64 {
struct dir_context ctx;
struct linux_dirent64 __user *current_dir;
struct linux_dirent64 __user *previous;
@@ -102083,7 +105951,7 @@ index be6e48b..f7baebf 100644
int count;
int error;
};
-@@ -1019,6 +1032,10 @@ static int compat_filldir64(struct dir_context *ctx, const char *name,
+@@ -1005,6 +1018,10 @@ static int compat_filldir64(struct dir_context *ctx, const char *name,
buf->error = -EINVAL; /* only used if we fail.. */
if (reclen > buf->count)
return -EINVAL;
@@ -102094,7 +105962,7 @@ index be6e48b..f7baebf 100644
dirent = buf->previous;
if (dirent) {
-@@ -1070,13 +1087,13 @@ COMPAT_SYSCALL_DEFINE3(getdents64, unsigned int, fd,
+@@ -1056,13 +1073,13 @@ COMPAT_SYSCALL_DEFINE3(getdents64, unsigned int, fd,
if (!f.file)
return -EBADF;
@@ -102110,7 +105978,7 @@ index be6e48b..f7baebf 100644
error = -EFAULT;
else
error = count - buf.count;
-@@ -1331,7 +1348,7 @@ COMPAT_SYSCALL_DEFINE5(select, int, n, compat_ulong_t __user *, inp,
+@@ -1317,7 +1334,7 @@ COMPAT_SYSCALL_DEFINE5(select, int, n, compat_ulong_t __user *, inp,
}
struct compat_sel_arg_struct {
@@ -102138,7 +106006,7 @@ index 4d24d17..4f8c09e 100644
/*
diff --git a/fs/compat_ioctl.c b/fs/compat_ioctl.c
-index c1e9f29..4ea2e52 100644
+index f2d7402..99ab155 100644
--- a/fs/compat_ioctl.c
+++ b/fs/compat_ioctl.c
@@ -646,7 +646,7 @@ static int serial_struct_ioctl(struct file *file,
@@ -102170,7 +106038,7 @@ index c1e9f29..4ea2e52 100644
return -EFAULT;
return ioctl_preallocate(file, p);
-@@ -1629,8 +1629,8 @@ COMPAT_SYSCALL_DEFINE3(ioctl, unsigned int, fd, unsigned int, cmd,
+@@ -1631,8 +1631,8 @@ COMPAT_SYSCALL_DEFINE3(ioctl, unsigned int, fd, unsigned int, cmd,
static int __init init_sys32_ioctl_cmp(const void *p, const void *q)
{
unsigned int a, b;
@@ -102288,7 +106156,7 @@ index eb9c92c..235adec 100644
set_fs(old_fs);
}
-@@ -766,7 +772,7 @@ close_fail:
+@@ -766,7 +772,7 @@ void do_coredump(const siginfo_t *siginfo)
filp_close(cprm.file, NULL);
fail_dropcount:
if (ispipe)
@@ -102297,7 +106165,7 @@ index eb9c92c..235adec 100644
fail_unlock:
kfree(cn.corename);
coredump_finish(mm, core_dumped);
-@@ -774,6 +780,9 @@ fail_unlock:
+@@ -774,6 +780,9 @@ void do_coredump(const siginfo_t *siginfo)
fail_creds:
put_cred(cred);
fail:
@@ -102317,7 +106185,7 @@ index eb9c92c..235adec 100644
return 0;
while (nr) {
diff --git a/fs/dcache.c b/fs/dcache.c
-index 5c7cc95..58840d7 100644
+index 4485a48..2cdeaf6 100644
--- a/fs/dcache.c
+++ b/fs/dcache.c
@@ -321,8 +321,9 @@ static void dentry_free(struct dentry *dentry)
@@ -102389,7 +106257,7 @@ index 5c7cc95..58840d7 100644
rcu_read_lock();
if (likely(fast_dput(dentry))) {
rcu_read_unlock();
-@@ -783,7 +783,7 @@ repeat:
+@@ -783,7 +783,7 @@ void dput(struct dentry *dentry)
dentry->d_flags |= DCACHE_REFERENCED;
dentry_lru_add(dentry);
@@ -102407,7 +106275,7 @@ index 5c7cc95..58840d7 100644
}
static inline void __dget(struct dentry *dentry)
-@@ -841,8 +841,8 @@ repeat:
+@@ -841,8 +841,8 @@ struct dentry *dget_parent(struct dentry *dentry)
goto repeat;
}
rcu_read_unlock();
@@ -102418,7 +106286,7 @@ index 5c7cc95..58840d7 100644
spin_unlock(&ret->d_lock);
return ret;
}
-@@ -920,9 +920,9 @@ restart:
+@@ -920,9 +920,9 @@ void d_prune_aliases(struct inode *inode)
spin_lock(&inode->i_lock);
hlist_for_each_entry(dentry, &inode->i_dentry, d_u.d_alias) {
spin_lock(&dentry->d_lock);
@@ -102459,7 +106327,7 @@ index 5c7cc95..58840d7 100644
d_lru_isolate(lru, dentry);
spin_unlock(&dentry->d_lock);
return LRU_REMOVED;
-@@ -1373,7 +1373,7 @@ static enum d_walk_ret select_collect(void *_data, struct dentry *dentry)
+@@ -1376,7 +1376,7 @@ static enum d_walk_ret select_collect(void *_data, struct dentry *dentry)
} else {
if (dentry->d_flags & DCACHE_LRU_LIST)
d_lru_del(dentry);
@@ -102468,7 +106336,7 @@ index 5c7cc95..58840d7 100644
d_shrink_add(dentry, &data->dispose);
data->found++;
}
-@@ -1421,7 +1421,7 @@ static enum d_walk_ret umount_check(void *_data, struct dentry *dentry)
+@@ -1424,7 +1424,7 @@ static enum d_walk_ret umount_check(void *_data, struct dentry *dentry)
return D_WALK_CONTINUE;
/* root with refcount 1 is fine */
@@ -102477,7 +106345,7 @@ index 5c7cc95..58840d7 100644
return D_WALK_CONTINUE;
printk(KERN_ERR "BUG: Dentry %p{i=%lx,n=%pd} "
-@@ -1430,7 +1430,7 @@ static enum d_walk_ret umount_check(void *_data, struct dentry *dentry)
+@@ -1433,7 +1433,7 @@ static enum d_walk_ret umount_check(void *_data, struct dentry *dentry)
dentry->d_inode ?
dentry->d_inode->i_ino : 0UL,
dentry,
@@ -102486,7 +106354,7 @@ index 5c7cc95..58840d7 100644
dentry->d_sb->s_type->name,
dentry->d_sb->s_id);
WARN_ON(1);
-@@ -1576,7 +1576,7 @@ struct dentry *__d_alloc(struct super_block *sb, const struct qstr *name)
+@@ -1579,7 +1579,7 @@ struct dentry *__d_alloc(struct super_block *sb, const struct qstr *name)
dname = dentry->d_iname;
} else if (name->len > DNAME_INLINE_LEN-1) {
size_t size = offsetof(struct external_name, name[1]);
@@ -102495,7 +106363,7 @@ index 5c7cc95..58840d7 100644
GFP_KERNEL_ACCOUNT);
if (!p) {
kmem_cache_free(dentry_cache, dentry);
-@@ -1600,7 +1600,7 @@ struct dentry *__d_alloc(struct super_block *sb, const struct qstr *name)
+@@ -1603,7 +1603,7 @@ struct dentry *__d_alloc(struct super_block *sb, const struct qstr *name)
smp_wmb();
dentry->d_name.name = dname;
@@ -102504,7 +106372,7 @@ index 5c7cc95..58840d7 100644
dentry->d_flags = 0;
spin_lock_init(&dentry->d_lock);
seqcount_init(&dentry->d_seq);
-@@ -1609,6 +1609,9 @@ struct dentry *__d_alloc(struct super_block *sb, const struct qstr *name)
+@@ -1612,6 +1612,9 @@ struct dentry *__d_alloc(struct super_block *sb, const struct qstr *name)
dentry->d_sb = sb;
dentry->d_op = NULL;
dentry->d_fsdata = NULL;
@@ -102514,7 +106382,7 @@ index 5c7cc95..58840d7 100644
INIT_HLIST_BL_NODE(&dentry->d_hash);
INIT_LIST_HEAD(&dentry->d_lru);
INIT_LIST_HEAD(&dentry->d_subdirs);
-@@ -2250,7 +2253,7 @@ struct dentry *__d_lookup(const struct dentry *parent, const struct qstr *name)
+@@ -2253,7 +2256,7 @@ struct dentry *__d_lookup(const struct dentry *parent, const struct qstr *name)
if (!d_same_name(dentry, parent, name))
goto next;
@@ -102523,7 +106391,7 @@ index 5c7cc95..58840d7 100644
found = dentry;
spin_unlock(&dentry->d_lock);
break;
-@@ -2318,7 +2321,7 @@ again:
+@@ -2321,7 +2324,7 @@ void d_delete(struct dentry * dentry)
spin_lock(&dentry->d_lock);
inode = dentry->d_inode;
isdir = S_ISDIR(inode->i_mode);
@@ -102532,7 +106400,7 @@ index 5c7cc95..58840d7 100644
if (!spin_trylock(&inode->i_lock)) {
spin_unlock(&dentry->d_lock);
cpu_relax();
-@@ -3500,7 +3503,7 @@ static enum d_walk_ret d_genocide_kill(void *data, struct dentry *dentry)
+@@ -3503,7 +3506,7 @@ static enum d_walk_ret d_genocide_kill(void *data, struct dentry *dentry)
if (!(dentry->d_flags & DCACHE_GENOCIDE)) {
dentry->d_flags |= DCACHE_GENOCIDE;
@@ -102541,7 +106409,7 @@ index 5c7cc95..58840d7 100644
}
}
return D_WALK_CONTINUE;
-@@ -3571,8 +3574,8 @@ static void __init dcache_init(void)
+@@ -3574,8 +3577,8 @@ static void __init dcache_init(void)
* but it is probably not worth it because of the cache nature
* of the dcache.
*/
@@ -102552,7 +106420,7 @@ index 5c7cc95..58840d7 100644
/* Hash may have been set up in dcache_init_early */
if (!hashdist)
-@@ -3607,8 +3610,9 @@ void __init vfs_caches_init_early(void)
+@@ -3610,8 +3613,9 @@ void __init vfs_caches_init_early(void)
void __init vfs_caches_init(void)
{
@@ -102565,11 +106433,11 @@ index 5c7cc95..58840d7 100644
dcache_init();
inode_init();
diff --git a/fs/debugfs/file.c b/fs/debugfs/file.c
-index 309f4e9..6747d80 100644
+index 354e2ab..cd4ee7b 100644
--- a/fs/debugfs/file.c
+++ b/fs/debugfs/file.c
@@ -209,7 +209,7 @@ static int full_proxy_release(struct inode *inode, struct file *filp)
- return 0;
+ return r;
}
-static void __full_proxy_fops_init(struct file_operations *proxy_fops,
@@ -102631,7 +106499,7 @@ index 309f4e9..6747d80 100644
size_t count, loff_t *ppos)
{
diff --git a/fs/debugfs/inode.c b/fs/debugfs/inode.c
-index 72361ba..21d833e 100644
+index f17fcf8..2529cb0 100644
--- a/fs/debugfs/inode.c
+++ b/fs/debugfs/inode.c
@@ -253,6 +253,10 @@ static struct dentry *start_creating(const char *name, struct dentry *parent)
@@ -102682,10 +106550,10 @@ index 72361ba..21d833e 100644
if (retval)
return retval;
diff --git a/fs/ecryptfs/inode.c b/fs/ecryptfs/inode.c
-index 9d153b6..60baa46 100644
+index cf390dc..5ff8c07 100644
--- a/fs/ecryptfs/inode.c
+++ b/fs/ecryptfs/inode.c
-@@ -639,7 +639,7 @@ static char *ecryptfs_readlink_lower(struct dentry *dentry, size_t *bufsiz)
+@@ -643,7 +643,7 @@ static char *ecryptfs_readlink_lower(struct dentry *dentry, size_t *bufsiz)
old_fs = get_fs();
set_fs(get_ds());
rc = d_inode(lower_dentry)->i_op->readlink(lower_dentry,
@@ -102698,7 +106566,7 @@ diff --git a/fs/ecryptfs/miscdev.c b/fs/ecryptfs/miscdev.c
index e4141f2..d8263e8 100644
--- a/fs/ecryptfs/miscdev.c
+++ b/fs/ecryptfs/miscdev.c
-@@ -304,7 +304,7 @@ check_list:
+@@ -304,7 +304,7 @@ ecryptfs_miscdev_read(struct file *file, char __user *buf, size_t count,
goto out_unlock_msg_ctx;
i = PKT_TYPE_SIZE + PKT_CTR_SIZE;
if (msg_ctx->msg) {
@@ -102708,7 +106576,7 @@ index e4141f2..d8263e8 100644
i += packet_length_size;
if (copy_to_user(&buf[i], msg_ctx->msg, msg_ctx->msg_size))
diff --git a/fs/exec.c b/fs/exec.c
-index eebe8be..5b418f2 100644
+index 67e8657..4368e21 100644
--- a/fs/exec.c
+++ b/fs/exec.c
@@ -57,8 +57,20 @@
@@ -102778,11 +106646,12 @@ index eebe8be..5b418f2 100644
write_unlock(&binfmt_lock);
}
-@@ -190,22 +217,15 @@ static struct page *get_arg_page(struct linux_binprm *bprm, unsigned long pos,
+@@ -190,16 +217,10 @@ static struct page *get_arg_page(struct linux_binprm *bprm, unsigned long pos,
int write)
{
struct page *page;
- int ret;
+ unsigned int gup_flags = FOLL_FORCE;
-#ifdef CONFIG_STACK_GROWSUP
- if (write) {
@@ -102793,19 +106662,22 @@ index eebe8be..5b418f2 100644
-#endif
+ if (0 > expand_downwards(bprm->vma, pos))
+ return NULL;
- /*
+
+ if (write)
+ gup_flags |= FOLL_WRITE;
+@@ -208,9 +229,8 @@ static struct page *get_arg_page(struct linux_binprm *bprm, unsigned long pos,
* We are doing an exec(). 'current' is the process
* doing the exec and bprm->mm is the new process's mm.
*/
-- ret = get_user_pages_remote(current, bprm->mm, pos, 1, write,
-- 1, &page, NULL);
+- ret = get_user_pages_remote(current, bprm->mm, pos, 1, gup_flags,
+- &page, NULL);
- if (ret <= 0)
-+ if (0 >= get_user_pages_remote(current, bprm->mm, pos, 1, write,
-+ 1, &page, NULL))
++ if (0 >= get_user_pages_remote(current, bprm->mm, pos, 1, gup_flags,
++ &page, NULL))
return NULL;
if (write) {
-@@ -221,6 +241,17 @@ static struct page *get_arg_page(struct linux_binprm *bprm, unsigned long pos,
+@@ -226,6 +246,17 @@ static struct page *get_arg_page(struct linux_binprm *bprm, unsigned long pos,
if (size <= ARG_MAX)
return page;
@@ -102823,7 +106695,7 @@ index eebe8be..5b418f2 100644
/*
* Limit to 1/4-th the stack size for the argv+env strings.
* This ensures that:
-@@ -279,6 +310,11 @@ static int __bprm_mm_init(struct linux_binprm *bprm)
+@@ -284,6 +315,11 @@ static int __bprm_mm_init(struct linux_binprm *bprm)
vma->vm_end = STACK_TOP_MAX;
vma->vm_start = vma->vm_end - PAGE_SIZE;
vma->vm_flags = VM_SOFTDIRTY | VM_STACK_FLAGS | VM_STACK_INCOMPLETE_SETUP;
@@ -102835,7 +106707,7 @@ index eebe8be..5b418f2 100644
vma->vm_page_prot = vm_get_page_prot(vma->vm_flags);
INIT_LIST_HEAD(&vma->anon_vma_chain);
-@@ -290,6 +326,12 @@ static int __bprm_mm_init(struct linux_binprm *bprm)
+@@ -295,6 +331,12 @@ static int __bprm_mm_init(struct linux_binprm *bprm)
arch_bprm_mm_init(mm, vma);
up_write(&mm->mmap_sem);
bprm->p = vma->vm_end - sizeof(void *);
@@ -102848,7 +106720,7 @@ index eebe8be..5b418f2 100644
return 0;
err:
up_write(&mm->mmap_sem);
-@@ -407,7 +449,7 @@ struct user_arg_ptr {
+@@ -412,7 +454,7 @@ struct user_arg_ptr {
} ptr;
};
@@ -102857,7 +106729,7 @@ index eebe8be..5b418f2 100644
{
const char __user *native;
-@@ -416,14 +458,14 @@ static const char __user *get_user_arg_ptr(struct user_arg_ptr argv, int nr)
+@@ -421,14 +463,14 @@ static const char __user *get_user_arg_ptr(struct user_arg_ptr argv, int nr)
compat_uptr_t compat;
if (get_user(compat, argv.ptr.compat + nr))
@@ -102874,7 +106746,7 @@ index eebe8be..5b418f2 100644
return native;
}
-@@ -442,7 +484,7 @@ static int count(struct user_arg_ptr argv, int max)
+@@ -447,7 +489,7 @@ static int count(struct user_arg_ptr argv, int max)
if (!p)
break;
@@ -102883,7 +106755,7 @@ index eebe8be..5b418f2 100644
return -EFAULT;
if (i >= max)
-@@ -477,7 +519,7 @@ static int copy_strings(int argc, struct user_arg_ptr argv,
+@@ -482,7 +524,7 @@ static int copy_strings(int argc, struct user_arg_ptr argv,
ret = -EFAULT;
str = get_user_arg_ptr(argv, argc);
@@ -102892,7 +106764,7 @@ index eebe8be..5b418f2 100644
goto out;
len = strnlen_user(str, MAX_ARG_STRLEN);
-@@ -559,7 +601,7 @@ int copy_strings_kernel(int argc, const char *const *__argv,
+@@ -564,7 +606,7 @@ int copy_strings_kernel(int argc, const char *const *__argv,
int r;
mm_segment_t oldfs = get_fs();
struct user_arg_ptr argv = {
@@ -102901,7 +106773,7 @@ index eebe8be..5b418f2 100644
};
set_fs(KERNEL_DS);
-@@ -594,7 +636,8 @@ static int shift_arg_pages(struct vm_area_struct *vma, unsigned long shift)
+@@ -599,7 +641,8 @@ static int shift_arg_pages(struct vm_area_struct *vma, unsigned long shift)
unsigned long new_end = old_end - shift;
struct mmu_gather tlb;
@@ -102911,7 +106783,7 @@ index eebe8be..5b418f2 100644
/*
* ensure there are no vmas between where we want to go
-@@ -603,6 +646,10 @@ static int shift_arg_pages(struct vm_area_struct *vma, unsigned long shift)
+@@ -608,6 +651,10 @@ static int shift_arg_pages(struct vm_area_struct *vma, unsigned long shift)
if (vma != find_vma(mm, new_start))
return -EFAULT;
@@ -102922,7 +106794,7 @@ index eebe8be..5b418f2 100644
/*
* cover the whole range: [new_start, old_end)
*/
-@@ -680,20 +727,16 @@ int setup_arg_pages(struct linux_binprm *bprm,
+@@ -685,20 +732,16 @@ int setup_arg_pages(struct linux_binprm *bprm,
stack_base = PAGE_ALIGN(stack_top - stack_base);
stack_shift = vma->vm_start - stack_base;
@@ -102945,7 +106817,7 @@ index eebe8be..5b418f2 100644
#endif
if (bprm->loader)
-@@ -703,8 +746,27 @@ int setup_arg_pages(struct linux_binprm *bprm,
+@@ -708,8 +751,27 @@ int setup_arg_pages(struct linux_binprm *bprm,
if (down_write_killable(&mm->mmap_sem))
return -EINTR;
@@ -102973,7 +106845,7 @@ index eebe8be..5b418f2 100644
/*
* Adjust stack execute permissions; explicitly enable for
* EXSTACK_ENABLE_X, disable for EXSTACK_DISABLE_X and leave alone
-@@ -723,13 +785,6 @@ int setup_arg_pages(struct linux_binprm *bprm,
+@@ -728,13 +790,6 @@ int setup_arg_pages(struct linux_binprm *bprm,
goto out_unlock;
BUG_ON(prev != vma);
@@ -102987,7 +106859,7 @@ index eebe8be..5b418f2 100644
/* mprotect_fixup is overkill to remove the temporary stack flags */
vma->vm_flags &= ~VM_STACK_INCOMPLETE_SETUP;
-@@ -753,6 +808,27 @@ int setup_arg_pages(struct linux_binprm *bprm,
+@@ -758,6 +813,27 @@ int setup_arg_pages(struct linux_binprm *bprm,
#endif
current->mm->start_stack = bprm->p;
ret = expand_stack(vma, stack_base);
@@ -103015,7 +106887,7 @@ index eebe8be..5b418f2 100644
if (ret)
ret = -EFAULT;
-@@ -801,6 +877,7 @@ static struct file *do_open_execat(int fd, struct filename *name, int flags)
+@@ -806,6 +882,7 @@ static struct file *do_open_execat(int fd, struct filename *name, int flags)
{
struct file *file;
int err;
@@ -103023,7 +106895,7 @@ index eebe8be..5b418f2 100644
struct open_flags open_exec_flags = {
.open_flag = O_LARGEFILE | O_RDONLY | __FMODE_EXEC,
.acc_mode = MAY_EXEC,
-@@ -826,12 +903,22 @@ static struct file *do_open_execat(int fd, struct filename *name, int flags)
+@@ -831,12 +908,22 @@ static struct file *do_open_execat(int fd, struct filename *name, int flags)
if (path_noexec(&file->f_path))
goto exit;
@@ -103047,7 +106919,7 @@ index eebe8be..5b418f2 100644
out:
return file;
-@@ -861,10 +948,13 @@ int kernel_read(struct file *file, loff_t offset,
+@@ -866,10 +953,13 @@ int kernel_read(struct file *file, loff_t offset,
loff_t pos = offset;
int result;
@@ -103062,7 +106934,7 @@ index eebe8be..5b418f2 100644
set_fs(old_fs);
return result;
}
-@@ -1443,7 +1533,7 @@ static void check_unsafe_exec(struct linux_binprm *bprm)
+@@ -1448,7 +1538,7 @@ static void check_unsafe_exec(struct linux_binprm *bprm)
}
rcu_read_unlock();
@@ -103071,7 +106943,7 @@ index eebe8be..5b418f2 100644
bprm->unsafe |= LSM_UNSAFE_SHARE;
else
p->fs->in_exec = 1;
-@@ -1646,6 +1736,31 @@ static int exec_binprm(struct linux_binprm *bprm)
+@@ -1651,6 +1741,31 @@ static int exec_binprm(struct linux_binprm *bprm)
return ret;
}
@@ -103103,7 +106975,7 @@ index eebe8be..5b418f2 100644
/*
* sys_execve() executes a new program.
*/
-@@ -1654,6 +1769,11 @@ static int do_execveat_common(int fd, struct filename *filename,
+@@ -1659,6 +1774,11 @@ static int do_execveat_common(int fd, struct filename *filename,
struct user_arg_ptr envp,
int flags)
{
@@ -103115,7 +106987,7 @@ index eebe8be..5b418f2 100644
char *pathbuf = NULL;
struct linux_binprm *bprm;
struct file *file;
-@@ -1663,6 +1783,8 @@ static int do_execveat_common(int fd, struct filename *filename,
+@@ -1668,6 +1788,8 @@ static int do_execveat_common(int fd, struct filename *filename,
if (IS_ERR(filename))
return PTR_ERR(filename);
@@ -103124,7 +106996,7 @@ index eebe8be..5b418f2 100644
/*
* We move the actual failure in case of RLIMIT_NPROC excess from
* set*uid() to execve() because too many poorly written programs
-@@ -1726,6 +1848,11 @@ static int do_execveat_common(int fd, struct filename *filename,
+@@ -1731,6 +1853,11 @@ static int do_execveat_common(int fd, struct filename *filename,
}
bprm->interp = bprm->filename;
@@ -103136,7 +107008,7 @@ index eebe8be..5b418f2 100644
retval = bprm_mm_init(bprm);
if (retval)
goto out_unmark;
-@@ -1742,26 +1869,72 @@ static int do_execveat_common(int fd, struct filename *filename,
+@@ -1747,26 +1874,72 @@ static int do_execveat_common(int fd, struct filename *filename,
if (retval < 0)
goto out;
@@ -103213,7 +107085,7 @@ index eebe8be..5b418f2 100644
current->fs->in_exec = 0;
current->in_execve = 0;
acct_update_integrals(current);
-@@ -1773,6 +1946,14 @@ static int do_execveat_common(int fd, struct filename *filename,
+@@ -1778,6 +1951,14 @@ static int do_execveat_common(int fd, struct filename *filename,
put_files_struct(displaced);
return retval;
@@ -103228,7 +107100,7 @@ index eebe8be..5b418f2 100644
out:
if (bprm->mm) {
acct_arg_size(bprm, 0);
-@@ -1919,3 +2100,194 @@ COMPAT_SYSCALL_DEFINE5(execveat, int, fd,
+@@ -1924,3 +2105,194 @@ COMPAT_SYSCALL_DEFINE5(execveat, int, fd,
argv, envp, flags);
}
#endif
@@ -103398,9 +107270,9 @@ index eebe8be..5b418f2 100644
+void __used pax_track_stack(void)
+{
+ unsigned long sp = (unsigned long)&sp;
-+ if (sp < current_thread_info()->lowest_stack &&
++ if (sp < current->thread.lowest_stack &&
+ sp >= (unsigned long)task_stack_page(current) + 2 * sizeof(unsigned long))
-+ current_thread_info()->lowest_stack = sp;
++ current->thread.lowest_stack = sp;
+ if (unlikely((sp & ~(THREAD_SIZE - 1)) < (THREAD_SIZE/16)))
+ BUG();
+}
@@ -103424,10 +107296,10 @@ index eebe8be..5b418f2 100644
+EXPORT_SYMBOL(report_size_overflow);
+#endif
diff --git a/fs/exofs/inode.c b/fs/exofs/inode.c
-index 9dc4c6d..ed7c0e7 100644
+index d8072bc..02a05c6 100644
--- a/fs/exofs/inode.c
+++ b/fs/exofs/inode.c
-@@ -470,6 +470,11 @@ fail:
+@@ -470,6 +470,11 @@ static int readpage_strip(void *data, struct page *page)
return ret;
}
@@ -103486,7 +107358,7 @@ index 4c40c07..7345640 100644
}
return 1;
diff --git a/fs/ext2/super.c b/fs/ext2/super.c
-index 1d93795..dbb5a08 100644
+index 6cb042b..394e9af 100644
--- a/fs/ext2/super.c
+++ b/fs/ext2/super.c
@@ -203,10 +203,12 @@ static void init_once(void *foo)
@@ -103527,7 +107399,7 @@ index 1d93795..dbb5a08 100644
#ifdef CONFIG_EXT2_FS_POSIX_ACL
if (def_mount_opts & EXT2_DEFM_ACL)
diff --git a/fs/ext2/xattr.c b/fs/ext2/xattr.c
-index b7f896f..61d52fe 100644
+index fbdb8f1..e4342ec 100644
--- a/fs/ext2/xattr.c
+++ b/fs/ext2/xattr.c
@@ -244,7 +244,7 @@ ext2_xattr_list(struct dentry *dentry, char *buffer, size_t buffer_size)
@@ -103567,10 +107439,10 @@ index e04ec86..953c3e6 100644
if (free_clusters >= (nclusters + dirty_clusters +
resv_clusters))
diff --git a/fs/ext4/ext4.h b/fs/ext4/ext4.h
-index 7bd21aa..3288330 100644
+index a8a750f..cd13d3f 100644
--- a/fs/ext4/ext4.h
+++ b/fs/ext4/ext4.h
-@@ -1440,19 +1440,19 @@ struct ext4_sb_info {
+@@ -1449,19 +1449,19 @@ struct ext4_sb_info {
unsigned long s_mb_last_start;
/* stats for buddy allocator */
@@ -103601,7 +107473,7 @@ index 7bd21aa..3288330 100644
/* locality groups */
diff --git a/fs/ext4/extents.c b/fs/ext4/extents.c
-index 7f69347..7fb5e14 100644
+index c930a01..39ab8a4 100644
--- a/fs/ext4/extents.c
+++ b/fs/ext4/extents.c
@@ -876,7 +876,7 @@ ext4_find_extent(struct inode *inode, ext4_lblk_t block,
@@ -103626,7 +107498,7 @@ index 7ae43c5..d417c85 100644
break;
}
-@@ -2244,7 +2244,7 @@ repeat:
+@@ -2244,7 +2244,7 @@ ext4_mb_regular_allocator(struct ext4_allocation_context *ac)
ac->ac_status = AC_STATUS_CONTINUE;
ac->ac_flags |= EXT4_MB_HINT_FIRST;
cr = 3;
@@ -103773,10 +107645,10 @@ index cf68100..f96c5c0 100644
err = ext4_handle_dirty_metadata(handle, NULL, bh);
if (unlikely(err))
diff --git a/fs/ext4/super.c b/fs/ext4/super.c
-index d0d4377..930df8a 100644
+index bbc316d..1dc79da 100644
--- a/fs/ext4/super.c
+++ b/fs/ext4/super.c
-@@ -989,10 +989,12 @@ static void init_once(void *foo)
+@@ -992,10 +992,12 @@ static void init_once(void *foo)
static int __init init_inodecache(void)
{
@@ -103790,7 +107662,7 @@ index d0d4377..930df8a 100644
init_once);
if (ext4_inode_cachep == NULL)
return -ENOMEM;
-@@ -1387,7 +1389,7 @@ static ext4_fsblk_t get_sb_block(void **data)
+@@ -1391,7 +1393,7 @@ static ext4_fsblk_t get_sb_block(void **data)
}
#define DEFAULT_JOURNAL_IOPRIO (IOPRIO_PRIO_VALUE(IOPRIO_CLASS_BE, 3))
@@ -103813,10 +107685,10 @@ index 42145be..1f1db90 100644
static ssize_t session_write_kbytes_show(struct ext4_attr *a,
struct ext4_sb_info *sbi, char *buf)
diff --git a/fs/ext4/xattr.c b/fs/ext4/xattr.c
-index 2eb935c..2fda99e 100644
+index d77be9e..744be29 100644
--- a/fs/ext4/xattr.c
+++ b/fs/ext4/xattr.c
-@@ -418,7 +418,7 @@ static int
+@@ -414,7 +414,7 @@ static int
ext4_xattr_list_entries(struct dentry *dentry, struct ext4_xattr_entry *entry,
char *buffer, size_t buffer_size)
{
@@ -103825,7 +107697,7 @@ index 2eb935c..2fda99e 100644
for (; !IS_LAST_ENTRY(entry); entry = EXT4_XATTR_NEXT(entry)) {
const struct xattr_handler *handler =
-@@ -439,9 +439,10 @@ ext4_xattr_list_entries(struct dentry *dentry, struct ext4_xattr_entry *entry,
+@@ -435,9 +435,10 @@ ext4_xattr_list_entries(struct dentry *dentry, struct ext4_xattr_entry *entry,
*buffer++ = 0;
}
rest -= size;
@@ -103838,10 +107710,10 @@ index 2eb935c..2fda99e 100644
static int
diff --git a/fs/f2fs/f2fs.h b/fs/f2fs/f2fs.h
-index 8467f42..8551466 100644
+index 506af45..17c9a0d 100644
--- a/fs/f2fs/f2fs.h
+++ b/fs/f2fs/f2fs.h
-@@ -50,7 +50,7 @@ enum {
+@@ -52,7 +52,7 @@ enum {
};
struct f2fs_fault_info {
@@ -103850,30 +107722,31 @@ index 8467f42..8551466 100644
unsigned int inject_rate;
unsigned int inject_type;
};
-@@ -78,9 +78,8 @@ static inline bool time_to_inject(int type)
- else if (type == FAULT_EVICT_INODE && !IS_FAULT_SET(type))
+@@ -891,9 +891,9 @@ static inline bool time_to_inject(struct f2fs_sb_info *sbi, int type)
+ if (!IS_FAULT_SET(ffi, type))
return false;
-- atomic_inc(&f2fs_fault.inject_ops);
-- if (atomic_read(&f2fs_fault.inject_ops) >= f2fs_fault.inject_rate) {
-- atomic_set(&f2fs_fault.inject_ops, 0);
-+ if (atomic_inc_return_unchecked(&f2fs_fault.inject_ops) >= f2fs_fault.inject_rate) {
-+ atomic_set_unchecked(&f2fs_fault.inject_ops, 0);
+- atomic_inc(&ffi->inject_ops);
+- if (atomic_read(&ffi->inject_ops) >= ffi->inject_rate) {
+- atomic_set(&ffi->inject_ops, 0);
++ atomic_inc_unchecked(&ffi->inject_ops);
++ if (atomic_read_unchecked(&ffi->inject_ops) >= ffi->inject_rate) {
++ atomic_set_unchecked(&ffi->inject_ops, 0);
printk("%sF2FS-fs : inject %s in %pF\n",
KERN_INFO,
fault_name[type],
diff --git a/fs/f2fs/super.c b/fs/f2fs/super.c
-index 37edc85..600131a 100644
+index 013c6a5..6913b82 100644
--- a/fs/f2fs/super.c
+++ b/fs/f2fs/super.c
-@@ -55,7 +55,7 @@ char *fault_name[FAULT_MAX] = {
- static void f2fs_build_fault_attr(unsigned int rate)
- {
+@@ -59,7 +59,7 @@ static void f2fs_build_fault_attr(struct f2fs_sb_info *sbi,
+ struct f2fs_fault_info *ffi = &sbi->fault_info;
+
if (rate) {
-- atomic_set(&f2fs_fault.inject_ops, 0);
-+ atomic_set_unchecked(&f2fs_fault.inject_ops, 0);
- f2fs_fault.inject_rate = rate;
- f2fs_fault.inject_type = (1 << FAULT_MAX) - 1;
+- atomic_set(&ffi->inject_ops, 0);
++ atomic_set_unchecked(&ffi->inject_ops, 0);
+ ffi->inject_rate = rate;
+ ffi->inject_type = (1 << FAULT_MAX) - 1;
} else {
diff --git a/fs/fcntl.c b/fs/fcntl.c
index 350a2c8..9fb9bf7 100644
@@ -103931,7 +107804,7 @@ index ca3c3dd..0c5456e 100644
retval = -EFAULT;
goto out_handle;
diff --git a/fs/file.c b/fs/file.c
-index 6b1acdf..b908eba 100644
+index 69d6990..1898dd8 100644
--- a/fs/file.c
+++ b/fs/file.c
@@ -16,6 +16,7 @@
@@ -103942,30 +107815,22 @@ index 6b1acdf..b908eba 100644
#include <linux/fdtable.h>
#include <linux/bitops.h>
#include <linux/interrupt.h>
-@@ -163,9 +164,10 @@ out:
- * Return <0 error code on error; 1 on successful completion.
- * The files->file_lock should be held on entry, and will be held on exit.
+@@ -165,7 +166,8 @@ static struct fdtable * alloc_fdtable(unsigned int nr)
*/
--static int expand_fdtable(struct files_struct *files, int nr)
-- __releases(files->file_lock)
+ static int expand_fdtable(struct files_struct *files, unsigned int nr)
+ __releases(files->file_lock)
- __acquires(files->file_lock)
-+static int expand_fdtable(struct files_struct *files, unsigned int nr)
-+ __releases(&files->file_lock)
-+ __acquires(&files->file_lock);
++ __acquires(files->file_lock);
+static int expand_fdtable(struct files_struct *files, unsigned int nr)
{
struct fdtable *new_fdt, *cur_fdt;
-@@ -208,9 +210,10 @@ static int expand_fdtable(struct files_struct *files, int nr)
- * expanded and execution may have blocked.
- * The files->file_lock should be held on entry, and will be held on exit.
+@@ -210,7 +212,8 @@ static int expand_fdtable(struct files_struct *files, unsigned int nr)
*/
--static int expand_files(struct files_struct *files, int nr)
-- __releases(files->file_lock)
+ static int expand_files(struct files_struct *files, unsigned int nr)
+ __releases(files->file_lock)
- __acquires(files->file_lock)
-+static int expand_files(struct files_struct *files, unsigned int nr)
-+ __releases(&files->file_lock)
-+ __acquires(&files->file_lock);
++ __acquires(files->file_lock);
+static int expand_files(struct files_struct *files, unsigned int nr)
{
struct fdtable *fdt;
@@ -104845,7 +108710,7 @@ diff --git a/fs/fscache/page.c b/fs/fscache/page.c
index c8c4f79..0512aeb 100644
--- a/fs/fscache/page.c
+++ b/fs/fscache/page.c
-@@ -74,7 +74,7 @@ try_again:
+@@ -74,7 +74,7 @@ bool __fscache_maybe_release_page(struct fscache_cookie *cookie,
val = radix_tree_lookup(&cookie->stores, page->index);
if (!val) {
rcu_read_unlock();
@@ -104854,7 +108719,7 @@ index c8c4f79..0512aeb 100644
__fscache_uncache_page(cookie, page);
return true;
}
-@@ -104,11 +104,11 @@ try_again:
+@@ -104,11 +104,11 @@ bool __fscache_maybe_release_page(struct fscache_cookie *cookie,
spin_unlock(&cookie->stores_lock);
if (xpage) {
@@ -104869,7 +108734,7 @@ index c8c4f79..0512aeb 100644
}
wake_up_bit(&cookie->flags, 0);
-@@ -123,11 +123,11 @@ page_busy:
+@@ -123,11 +123,11 @@ bool __fscache_maybe_release_page(struct fscache_cookie *cookie,
* sleeping on memory allocation, so we may need to impose a timeout
* too. */
if (!(gfp & __GFP_DIRECT_RECLAIM) || !(gfp & __GFP_FS)) {
@@ -104924,7 +108789,7 @@ index c8c4f79..0512aeb 100644
fscache_put_operation(op);
_leave(" = 0");
return 0;
-@@ -242,7 +242,7 @@ nobufs:
+@@ -242,7 +242,7 @@ int __fscache_attr_changed(struct fscache_cookie *cookie)
fscache_put_operation(op);
if (wake_cookie)
__fscache_wake_unused_cookie(cookie);
@@ -104986,7 +108851,7 @@ index c8c4f79..0512aeb 100644
_leave(" = -ENOBUFS [cancelled]");
return -ENOBUFS;
}
-@@ -391,7 +391,7 @@ check_if_dead:
+@@ -391,7 +391,7 @@ int fscache_wait_for_operation_activation(struct fscache_object *object,
enum fscache_operation_state state = op->state;
fscache_cancel_op(op, true);
if (stat_object_dead)
@@ -105034,7 +108899,7 @@ index c8c4f79..0512aeb 100644
fscache_put_retrieval(op);
_leave(" = %d", ret);
-@@ -511,7 +511,7 @@ nobufs_unlock:
+@@ -511,7 +511,7 @@ int __fscache_read_or_alloc_page(struct fscache_cookie *cookie,
__fscache_wake_unused_cookie(cookie);
fscache_put_retrieval(op);
nobufs:
@@ -105082,7 +108947,7 @@ index c8c4f79..0512aeb 100644
fscache_put_retrieval(op);
_leave(" = %d", ret);
-@@ -637,7 +637,7 @@ nobufs_unlock:
+@@ -637,7 +637,7 @@ int __fscache_read_or_alloc_pages(struct fscache_cookie *cookie,
if (wake_cookie)
__fscache_wake_unused_cookie(cookie);
nobufs:
@@ -105124,7 +108989,7 @@ index c8c4f79..0512aeb 100644
fscache_put_retrieval(op);
_leave(" = %d", ret);
-@@ -730,7 +730,7 @@ nobufs_unlock:
+@@ -730,7 +730,7 @@ int __fscache_alloc_page(struct fscache_cookie *cookie,
if (wake_cookie)
__fscache_wake_unused_cookie(cookie);
nobufs:
@@ -105206,7 +109071,7 @@ index c8c4f79..0512aeb 100644
_leave(" = 0");
return 0;
-@@ -1041,14 +1041,14 @@ nobufs:
+@@ -1041,14 +1041,14 @@ int __fscache_write_page(struct fscache_cookie *cookie,
fscache_put_operation(&op->op);
if (wake_cookie)
__fscache_wake_unused_cookie(cookie);
@@ -105648,30 +109513,8 @@ index c5b6b71..527e347 100644
cuse_class = class_create(THIS_MODULE, "cuse");
if (IS_ERR(cuse_class))
-diff --git a/fs/fuse/dev.c b/fs/fuse/dev.c
-index a94d2ed..80c8060 100644
---- a/fs/fuse/dev.c
-+++ b/fs/fuse/dev.c
-@@ -1366,7 +1366,7 @@ static ssize_t fuse_dev_splice_read(struct file *in, loff_t *ppos,
- ret = 0;
- pipe_lock(pipe);
-
-- if (!pipe->readers) {
-+ if (!atomic_read(&pipe->readers)) {
- send_sig(SIGPIPE, current, 0);
- if (!ret)
- ret = -EPIPE;
-@@ -1395,7 +1395,7 @@ static ssize_t fuse_dev_splice_read(struct file *in, loff_t *ppos,
- page_nr++;
- ret += buf->len;
-
-- if (pipe->files)
-+ if (atomic_read(&pipe->files))
- do_wakeup = 1;
- }
-
diff --git a/fs/fuse/file.c b/fs/fuse/file.c
-index a621dd9..1ac40c9 100644
+index 2401c5d..36b3ad7 100644
--- a/fs/fuse/file.c
+++ b/fs/fuse/file.c
@@ -838,9 +838,9 @@ struct fuse_fill_data {
@@ -105687,10 +109530,10 @@ index a621dd9..1ac40c9 100644
struct inode *inode = data->inode;
struct fuse_conn *fc = get_fuse_conn(inode);
diff --git a/fs/fuse/inode.c b/fs/fuse/inode.c
-index 4e05b51..36c4e1f 100644
+index 6fe6a88..c03236b 100644
--- a/fs/fuse/inode.c
+++ b/fs/fuse/inode.c
-@@ -29,7 +29,7 @@ static struct kmem_cache *fuse_inode_cachep;
+@@ -30,7 +30,7 @@ static struct kmem_cache *fuse_inode_cachep;
struct list_head fuse_conn_list;
DEFINE_MUTEX(fuse_mutex);
@@ -105699,7 +109542,7 @@ index 4e05b51..36c4e1f 100644
unsigned max_user_bgreq;
module_param_call(max_user_bgreq, set_global_limit, param_get_uint,
-@@ -824,7 +824,7 @@ static void sanitize_global_limit(unsigned *limit)
+@@ -827,7 +827,7 @@ static void sanitize_global_limit(unsigned *limit)
*limit = (1 << 16) - 1;
}
@@ -105709,7 +109552,7 @@ index 4e05b51..36c4e1f 100644
int rv;
diff --git a/fs/gfs2/aops.c b/fs/gfs2/aops.c
-index 82df368..0079887 100644
+index 5a6f52e..c6c507c 100644
--- a/fs/gfs2/aops.c
+++ b/fs/gfs2/aops.c
@@ -511,7 +511,7 @@ static int stuffed_readpage(struct gfs2_inode *ip, struct page *page)
@@ -105722,7 +109565,7 @@ index 82df368..0079887 100644
struct gfs2_inode *ip = GFS2_I(page->mapping->host);
struct gfs2_sbd *sdp = GFS2_SB(page->mapping->host);
diff --git a/fs/gfs2/file.c b/fs/gfs2/file.c
-index 320e65e..7eb400d 100644
+index e23ff70..b17b736 100644
--- a/fs/gfs2/file.c
+++ b/fs/gfs2/file.c
@@ -776,7 +776,7 @@ static void calc_max_reserv(struct gfs2_inode *ip, loff_t *len,
@@ -105735,7 +109578,7 @@ index 320e65e..7eb400d 100644
for (tmp = max_data; tmp > sdp->sd_diptrs;) {
tmp = DIV_ROUND_UP(tmp, sdp->sd_inptrs);
diff --git a/fs/gfs2/glock.c b/fs/gfs2/glock.c
-index 3a90b2b..7335643 100644
+index 14cbf60..4c6225b 100644
--- a/fs/gfs2/glock.c
+++ b/fs/gfs2/glock.c
@@ -324,9 +324,9 @@ static void state_change(struct gfs2_glock *gl, unsigned int new_state)
@@ -105750,7 +109593,7 @@ index 3a90b2b..7335643 100644
}
if (held1 && held2 && list_empty(&gl->gl_holders))
clear_bit(GLF_QUEUED, &gl->gl_flags);
-@@ -560,9 +560,9 @@ out:
+@@ -560,9 +560,9 @@ __acquires(&gl->gl_lockref.lock)
out_sched:
clear_bit(GLF_LOCK, &gl->gl_flags);
smp_mb__after_atomic();
@@ -105792,7 +109635,7 @@ index 3a90b2b..7335643 100644
set_bit(GLF_REPLY_PENDING, &gl->gl_flags);
spin_unlock(&gl->gl_lockref.lock);
-@@ -1345,12 +1345,12 @@ add_back_to_lru:
+@@ -1345,12 +1345,12 @@ __acquires(&lru_lock)
goto add_back_to_lru;
}
clear_bit(GLF_LRU, &gl->gl_flags);
@@ -105833,7 +109676,7 @@ index 5db59d4..817f4eb 100644
}
diff --git a/fs/gfs2/quota.c b/fs/gfs2/quota.c
-index 77930ca..684c04d 100644
+index c2ca956..22092e4 100644
--- a/fs/gfs2/quota.c
+++ b/fs/gfs2/quota.c
@@ -154,7 +154,7 @@ static enum lru_status gfs2_qd_isolate(struct list_head *item,
@@ -105864,7 +109707,7 @@ index 77930ca..684c04d 100644
spin_unlock(&qd->qd_lockref.lock);
diff --git a/fs/hugetlbfs/inode.c b/fs/hugetlbfs/inode.c
-index 4ea71eb..19effa7 100644
+index 4fb7b10..eaf1178 100644
--- a/fs/hugetlbfs/inode.c
+++ b/fs/hugetlbfs/inode.c
@@ -174,6 +174,7 @@ hugetlb_get_unmapped_area(struct file *file, unsigned long addr,
@@ -105904,7 +109747,7 @@ index 4ea71eb..19effa7 100644
info.high_limit = TASK_SIZE;
info.align_mask = PAGE_MASK & ~huge_page_mask(h);
info.align_offset = 0;
-@@ -1212,7 +1222,7 @@ static struct file_system_type hugetlbfs_fs_type = {
+@@ -1210,7 +1220,7 @@ static struct file_system_type hugetlbfs_fs_type = {
.kill_sb = kill_litter_super,
};
@@ -105914,10 +109757,10 @@ index 4ea71eb..19effa7 100644
static int can_do_hugetlb_shm(void)
{
diff --git a/fs/inode.c b/fs/inode.c
-index 7e3ef3a..4e28e95 100644
+index 88110fd..a112e53 100644
--- a/fs/inode.c
+++ b/fs/inode.c
-@@ -853,19 +853,19 @@ unsigned int get_next_ino(void)
+@@ -855,19 +855,19 @@ unsigned int get_next_ino(void)
unsigned int *p = &get_cpu_var(last_ino);
unsigned int res = *p;
@@ -105944,10 +109787,10 @@ index 7e3ef3a..4e28e95 100644
put_cpu_var(last_ino);
return res;
diff --git a/fs/jbd2/commit.c b/fs/jbd2/commit.c
-index 5bb565f..41cbee9 100644
+index 31f8ca0..0319008 100644
--- a/fs/jbd2/commit.c
+++ b/fs/jbd2/commit.c
-@@ -1077,7 +1077,7 @@ restart_loop:
+@@ -1076,7 +1076,7 @@ void jbd2_journal_commit_transaction(journal_t *journal)
*/
stats.ts_tid = commit_transaction->t_tid;
stats.run.rs_handle_count =
@@ -105969,7 +109812,7 @@ index e165266..0799fc5 100644
INIT_LIST_HEAD(&transaction->t_inode_list);
INIT_LIST_HEAD(&transaction->t_private_list);
-@@ -378,7 +378,7 @@ repeat:
+@@ -378,7 +378,7 @@ static int start_this_handle(journal_t *journal, handle_t *handle,
handle->h_requested_credits = blocks;
handle->h_start_jiffies = jiffies;
atomic_inc(&transaction->t_updates);
@@ -105993,10 +109836,10 @@ index 4a6cf28..d3a29d3 100644
jffs2_prealloc_raw_node_refs(c, jeb, 1);
diff --git a/fs/jffs2/file.c b/fs/jffs2/file.c
-index 0e62dec..2beac6f 100644
+index c12476e..8435cbb 100644
--- a/fs/jffs2/file.c
+++ b/fs/jffs2/file.c
-@@ -112,8 +112,9 @@ static int jffs2_do_readpage_nolock (struct inode *inode, struct page *pg)
+@@ -109,8 +109,9 @@ static int jffs2_do_readpage_nolock (struct inode *inode, struct page *pg)
return ret;
}
@@ -106007,7 +109850,7 @@ index 0e62dec..2beac6f 100644
int ret = jffs2_do_readpage_nolock(inode, pg);
unlock_page(pg);
return ret;
-@@ -126,7 +127,7 @@ static int jffs2_readpage (struct file *filp, struct page *pg)
+@@ -123,7 +124,7 @@ static int jffs2_readpage (struct file *filp, struct page *pg)
int ret;
mutex_lock(&f->sem);
@@ -106017,7 +109860,7 @@ index 0e62dec..2beac6f 100644
return ret;
}
diff --git a/fs/jffs2/fs.c b/fs/jffs2/fs.c
-index ae2ebb2..39becae 100644
+index 567653f..24bba5e 100644
--- a/fs/jffs2/fs.c
+++ b/fs/jffs2/fs.c
@@ -686,7 +686,7 @@ unsigned char *jffs2_gc_fetch_page(struct jffs2_sb_info *c,
@@ -106057,7 +109900,7 @@ index b25d28a..7934a69 100644
/*
diff --git a/fs/jfs/super.c b/fs/jfs/super.c
-index cec8814..daae32f 100644
+index 85671f7..995bb95 100644
--- a/fs/jfs/super.c
+++ b/fs/jfs/super.c
@@ -897,8 +897,10 @@ static int __init init_jfs_fs(void)
@@ -106073,10 +109916,10 @@ index cec8814..daae32f 100644
if (jfs_inode_cachep == NULL)
return -ENOMEM;
diff --git a/fs/kernfs/dir.c b/fs/kernfs/dir.c
-index e57174d..573ed14 100644
+index cf4c636..d21a265 100644
--- a/fs/kernfs/dir.c
+++ b/fs/kernfs/dir.c
-@@ -334,7 +334,7 @@ struct kernfs_node *kernfs_get_parent(struct kernfs_node *kn)
+@@ -284,7 +284,7 @@ struct kernfs_node *kernfs_get_parent(struct kernfs_node *kn)
*
* Returns 31 bit hash of ns + name (so it fits in an off_t )
*/
@@ -106085,7 +109928,7 @@ index e57174d..573ed14 100644
{
unsigned long hash = init_name_hash(ns);
unsigned int len = strlen(name);
-@@ -1074,6 +1074,12 @@ static int kernfs_iop_mkdir(struct inode *dir, struct dentry *dentry,
+@@ -1024,6 +1024,12 @@ static int kernfs_iop_mkdir(struct inode *dir, struct dentry *dentry,
ret = scops->mkdir(parent, dentry->d_name.name, mode);
kernfs_put_active(parent);
@@ -106099,7 +109942,7 @@ index e57174d..573ed14 100644
}
diff --git a/fs/kernfs/file.c b/fs/kernfs/file.c
-index 2bcb86e..b9fad5d 100644
+index 78219d5..b602ed6 100644
--- a/fs/kernfs/file.c
+++ b/fs/kernfs/file.c
@@ -34,7 +34,7 @@ static DEFINE_MUTEX(kernfs_open_file_mutex);
@@ -106172,7 +110015,7 @@ index 2bcb86e..b9fad5d 100644
goto trigger;
return DEFAULT_POLLMASK;
-@@ -830,7 +830,7 @@ repeat:
+@@ -830,7 +830,7 @@ static void kernfs_notify_workfn(struct work_struct *work)
on = kn->attr.open;
if (on) {
@@ -106271,7 +110114,7 @@ index d3e40db..a300f9c 100644
encode_cookie(xdr, &result->cookie);
encode_nlm4_stat(xdr, result->status);
if (result->status == nlm_lck_denied)
-@@ -523,10 +531,11 @@ out:
+@@ -523,10 +531,11 @@ static int decode_nlm4_testrply(struct xdr_stream *xdr,
return error;
}
@@ -106285,7 +110128,7 @@ index d3e40db..a300f9c 100644
int error;
error = decode_cookie(xdr, &result->cookie);
-@@ -543,10 +552,11 @@ out:
+@@ -543,10 +552,11 @@ static int nlm4_xdr_dec_testres(struct rpc_rqst *req,
* nlm4_stat stat;
* };
*/
@@ -106299,7 +110142,7 @@ index d3e40db..a300f9c 100644
int error;
error = decode_cookie(xdr, &result->cookie);
-@@ -566,8 +576,8 @@ out:
+@@ -566,8 +576,8 @@ static int nlm4_xdr_dec_res(struct rpc_rqst *req,
#define PROC(proc, argtype, restype) \
[NLMPROC_##proc] = { \
.p_proc = NLMPROC_##proc, \
@@ -106416,7 +110259,7 @@ index 3e9f787..c2177b8 100644
encode_cookie(xdr, &result->cookie);
encode_nlm_stat(xdr, result->status);
encode_nlm_testrply(xdr, result);
-@@ -521,11 +527,12 @@ out:
+@@ -521,11 +527,12 @@ static int decode_nlm_testrply(struct xdr_stream *xdr,
return error;
}
@@ -106431,7 +110274,7 @@ index 3e9f787..c2177b8 100644
error = decode_cookie(xdr, &result->cookie);
if (unlikely(error))
-@@ -541,11 +548,12 @@ out:
+@@ -541,11 +548,12 @@ static int nlm_xdr_dec_testres(struct rpc_rqst *req,
* nlm_stat stat;
* };
*/
@@ -106446,7 +110289,7 @@ index 3e9f787..c2177b8 100644
error = decode_cookie(xdr, &result->cookie);
if (unlikely(error))
-@@ -564,8 +572,8 @@ out:
+@@ -564,8 +572,8 @@ static int nlm_xdr_dec_res(struct rpc_rqst *req,
#define PROC(proc, argtype, restype) \
[NLMPROC_##proc] = { \
.p_proc = NLMPROC_##proc, \
@@ -107346,7 +111189,7 @@ index b76a62b..317c6ff 100644
.erase = logfs_mtd_erase,
.can_write_buf = logfs_mtd_can_write_buf,
diff --git a/fs/logfs/dir.c b/fs/logfs/dir.c
-index 9568064..e188a46 100644
+index c87ea52..8ddacc1 100644
--- a/fs/logfs/dir.c
+++ b/fs/logfs/dir.c
@@ -174,7 +174,7 @@ static struct page *logfs_get_dd_page(struct inode *dir, struct dentry *dentry)
@@ -107391,7 +111234,7 @@ index 27d040e..8959149 100644
int logfs_statfs(struct dentry *dentry, struct kstatfs *stats);
int logfs_check_ds(struct logfs_disk_super *ds);
diff --git a/fs/logfs/readwrite.c b/fs/logfs/readwrite.c
-index 3fb8c6d..83a5133 100644
+index bf19bf4..c13c0bf 100644
--- a/fs/logfs/readwrite.c
+++ b/fs/logfs/readwrite.c
@@ -1963,7 +1963,7 @@ int logfs_read_inode(struct inode *inode)
@@ -107488,19 +111331,19 @@ index 5751082..7619dac 100644
module_init(logfs_init);
diff --git a/fs/mount.h b/fs/mount.h
-index 14db05d..687f6d8 100644
+index d2e25d7..20d94ba 100644
--- a/fs/mount.h
+++ b/fs/mount.h
-@@ -13,7 +13,7 @@ struct mnt_namespace {
- u64 seq; /* Sequence number to prevent loops */
- wait_queue_head_t poll;
+@@ -16,7 +16,7 @@ struct mnt_namespace {
u64 event;
+ unsigned int mounts; /* # of mounts in the namespace */
+ unsigned int pending_mounts;
-};
+} __randomize_layout;
struct mnt_pcp {
int mnt_count;
-@@ -65,7 +65,7 @@ struct mount {
+@@ -68,7 +68,7 @@ struct mount {
struct hlist_head mnt_pins;
struct fs_pin mnt_umount;
struct dentry *mnt_ex_mountpoint;
@@ -107510,10 +111353,19 @@ index 14db05d..687f6d8 100644
#define MNT_NS_INTERNAL ERR_PTR(-EINVAL) /* distinct from any mnt_namespace */
diff --git a/fs/namei.c b/fs/namei.c
-index adb0414..82da447 100644
+index 5b4eed2..ad403ae 100644
--- a/fs/namei.c
+++ b/fs/namei.c
-@@ -338,17 +338,32 @@ int generic_permission(struct inode *inode, int mask)
+@@ -330,6 +330,8 @@ static int acl_permission_check(struct inode *inode, int mask)
+ int generic_permission(struct inode *inode, int mask)
+ {
+ int ret;
++ bool has_cap_dac_override = false;
++ bool has_cap_dac_read_search = false;
+
+ /*
+ * Do the basic permission checks.
+@@ -338,17 +340,50 @@ int generic_permission(struct inode *inode, int mask)
if (ret != -EACCES)
return ret;
@@ -107523,34 +111375,52 @@ index adb0414..82da447 100644
+ return -ECHILD;
+#endif
+
++ has_cap_dac_override = capable_wrt_inode_uidgid_nolog(inode, CAP_DAC_OVERRIDE);
++ has_cap_dac_read_search = capable_wrt_inode_uidgid_nolog(inode, CAP_DAC_READ_SEARCH);
++
if (S_ISDIR(inode->i_mode)) {
/* DACs are overridable for directories */
-- if (capable_wrt_inode_uidgid(inode, CAP_DAC_OVERRIDE))
-- return 0;
- if (!(mask & MAY_WRITE))
++ if (!(mask & MAY_WRITE)) {
++ if (!has_cap_dac_override || (has_cap_dac_override && has_cap_dac_read_search)) {
++ if (capable_wrt_inode_uidgid(inode, CAP_DAC_READ_SEARCH))
++ return 0;
++ return -EACCES;
++ }
++ }
+ if (capable_wrt_inode_uidgid(inode, CAP_DAC_OVERRIDE))
+ return 0;
+- if (!(mask & MAY_WRITE))
- if (capable_wrt_inode_uidgid(inode,
- CAP_DAC_READ_SEARCH))
-+ if (capable_wrt_inode_uidgid_nolog(inode, CAP_DAC_OVERRIDE) ||
-+ capable_wrt_inode_uidgid(inode, CAP_DAC_READ_SEARCH))
- return 0;
-+ if (capable_wrt_inode_uidgid(inode, CAP_DAC_OVERRIDE))
-+ return 0;
+- return 0;
return -EACCES;
}
/*
+ * Searching includes executable on directories, else just read.
+ */
+ mask &= MAY_READ | MAY_WRITE | MAY_EXEC;
-+ if (mask == MAY_READ)
-+ if (capable_wrt_inode_uidgid_nolog(inode, CAP_DAC_OVERRIDE) ||
-+ capable_wrt_inode_uidgid(inode, CAP_DAC_READ_SEARCH))
-+ return 0;
++ if (mask == MAY_READ) {
++ /* this part is a little different, as when we don't override here and return,
++ we do want to have both caps logged/learned
++ */
++ if (!has_cap_dac_override || (has_cap_dac_override && has_cap_dac_read_search)) {
++ if (capable_wrt_inode_uidgid(inode, CAP_DAC_READ_SEARCH))
++ return 0;
++ } else if (!has_cap_dac_read_search) {
++ /* for this case though, if they don't have CAP_DAC_OVERRIDE, there's no point
++ in checking and logging it again
++ */
++ if (capable_wrt_inode_uidgid(inode, CAP_DAC_OVERRIDE))
++ return 0;
++ return -EACCES;
++ }
++ }
+
+ /*
* Read/write DACs are always overridable.
* Executable DACs are overridable when there is
* at least one exec bit set.
-@@ -357,14 +372,6 @@ int generic_permission(struct inode *inode, int mask)
+@@ -357,14 +392,6 @@ int generic_permission(struct inode *inode, int mask)
if (capable_wrt_inode_uidgid(inode, CAP_DAC_OVERRIDE))
return 0;
@@ -107565,7 +111435,7 @@ index adb0414..82da447 100644
return -EACCES;
}
EXPORT_SYMBOL(generic_permission);
-@@ -524,12 +531,35 @@ struct nameidata {
+@@ -524,12 +551,35 @@ struct nameidata {
struct inode *link_inode;
unsigned root_seq;
int dfd;
@@ -107602,7 +111472,7 @@ index adb0414..82da447 100644
p->dfd = dfd;
p->name = name;
p->total_link_count = old ? old->total_link_count : 0;
-@@ -546,6 +576,10 @@ static void restore_nameidata(void)
+@@ -546,6 +596,10 @@ static void restore_nameidata(void)
old->total_link_count = now->total_link_count;
if (now->stack != now->internal)
kfree(now->stack);
@@ -107613,7 +111483,7 @@ index adb0414..82da447 100644
}
static int __nd_alloc_stack(struct nameidata *nd)
-@@ -565,6 +599,7 @@ static int __nd_alloc_stack(struct nameidata *nd)
+@@ -565,6 +619,7 @@ static int __nd_alloc_stack(struct nameidata *nd)
}
memcpy(p, nd->internal, sizeof(nd->internal));
nd->stack = p;
@@ -107621,7 +111491,7 @@ index adb0414..82da447 100644
return 0;
}
-@@ -586,8 +621,32 @@ static bool path_connected(const struct path *path)
+@@ -586,8 +641,32 @@ static bool path_connected(const struct path *path)
return is_subdir(path->dentry, mnt->mnt_root);
}
@@ -107654,7 +111524,7 @@ index adb0414..82da447 100644
if (likely(nd->depth != EMBEDDED_LEVELS))
return 0;
if (likely(nd->stack != nd->internal))
-@@ -613,6 +672,14 @@ static void terminate_walk(struct nameidata *nd)
+@@ -613,6 +692,14 @@ static void terminate_walk(struct nameidata *nd)
path_put(&nd->path);
for (i = 0; i < nd->depth; i++)
path_put(&nd->stack[i].link);
@@ -107669,7 +111539,7 @@ index adb0414..82da447 100644
if (nd->root.mnt && !(nd->flags & LOOKUP_ROOT)) {
path_put(&nd->root);
nd->root.mnt = NULL;
-@@ -1026,6 +1093,9 @@ const char *get_link(struct nameidata *nd)
+@@ -1026,6 +1113,9 @@ const char *get_link(struct nameidata *nd)
if (unlikely(error))
return ERR_PTR(error);
@@ -107679,7 +111549,7 @@ index adb0414..82da447 100644
nd->last_type = LAST_BIND;
res = inode->i_link;
if (!res) {
-@@ -1717,6 +1787,23 @@ static int pick_link(struct nameidata *nd, struct path *link,
+@@ -1717,6 +1807,23 @@ static int pick_link(struct nameidata *nd, struct path *link,
}
}
@@ -107703,7 +111573,7 @@ index adb0414..82da447 100644
last = nd->stack + nd->depth++;
last->link = *link;
clear_delayed_call(&last->done);
-@@ -1931,7 +2018,7 @@ u64 hashlen_string(const void *salt, const char *name)
+@@ -1931,7 +2038,7 @@ u64 hashlen_string(const void *salt, const char *name)
{
unsigned long a = 0, x = 0, y = (unsigned long)salt;
unsigned long adata, mask, len;
@@ -107712,7 +111582,7 @@ index adb0414..82da447 100644
len = 0;
goto inside;
-@@ -2144,6 +2231,10 @@ static const char *path_init(struct nameidata *nd, unsigned flags)
+@@ -2144,6 +2251,10 @@ static const char *path_init(struct nameidata *nd, unsigned flags)
nd->last_type = LAST_ROOT; /* if there are only slashes... */
nd->flags = flags | LOOKUP_JUMPED | LOOKUP_PARENT;
nd->depth = 0;
@@ -107723,7 +111593,7 @@ index adb0414..82da447 100644
if (flags & LOOKUP_ROOT) {
struct dentry *root = nd->root.dentry;
struct inode *inode = root->d_inode;
-@@ -2275,6 +2366,14 @@ static int path_lookupat(struct nameidata *nd, unsigned flags, struct path *path
+@@ -2275,6 +2386,14 @@ static int path_lookupat(struct nameidata *nd, unsigned flags, struct path *path
if (!err)
err = complete_walk(nd);
@@ -107738,7 +111608,7 @@ index adb0414..82da447 100644
if (!err && nd->flags & LOOKUP_DIRECTORY)
if (!d_can_lookup(nd->path.dentry))
err = -ENOTDIR;
-@@ -2323,6 +2422,14 @@ static int path_parentat(struct nameidata *nd, unsigned flags,
+@@ -2323,6 +2442,14 @@ static int path_parentat(struct nameidata *nd, unsigned flags,
err = link_path_walk(s, nd);
if (!err)
err = complete_walk(nd);
@@ -107753,7 +111623,7 @@ index adb0414..82da447 100644
if (!err) {
*parent = nd->path;
nd->path.mnt = NULL;
-@@ -2940,6 +3047,13 @@ static int may_open(struct path *path, int acc_mode, int flag)
+@@ -2940,6 +3067,13 @@ static int may_open(struct path *path, int acc_mode, int flag)
if (flag & O_NOATIME && !inode_owner_or_capable(inode))
return -EPERM;
@@ -107767,7 +111637,7 @@ index adb0414..82da447 100644
return 0;
}
-@@ -3179,6 +3293,20 @@ no_open:
+@@ -3179,6 +3313,20 @@ static int lookup_open(struct nameidata *nd, struct path *path,
/* Negative dentry, just create the file */
if (!dentry->d_inode && (open_flag & O_CREAT)) {
@@ -107788,7 +111658,7 @@ index adb0414..82da447 100644
*opened |= FILE_CREATED;
audit_inode_child(dir_inode, dentry, AUDIT_TYPE_CHILD_CREATE);
if (!dir_inode->i_op->create) {
-@@ -3189,6 +3317,7 @@ no_open:
+@@ -3189,6 +3337,7 @@ static int lookup_open(struct nameidata *nd, struct path *path,
open_flag & O_EXCL);
if (error)
goto out_dput;
@@ -107796,7 +111666,7 @@ index adb0414..82da447 100644
fsnotify_create(dir_inode, dentry);
}
if (unlikely(create_error) && !dentry->d_inode) {
-@@ -3303,6 +3432,11 @@ static int do_last(struct nameidata *nd,
+@@ -3303,6 +3452,11 @@ static int do_last(struct nameidata *nd,
goto finish_open_created;
}
@@ -107808,7 +111678,7 @@ index adb0414..82da447 100644
/*
* If atomic_open() acquired write access it is dropped now due to
* possible mount and symlink following (this might be optimized away if
-@@ -3322,6 +3456,13 @@ static int do_last(struct nameidata *nd,
+@@ -3322,6 +3476,13 @@ static int do_last(struct nameidata *nd,
return -ENOENT;
}
@@ -107822,7 +111692,7 @@ index adb0414..82da447 100644
/*
* create/update audit record if it already exists.
*/
-@@ -3350,6 +3491,21 @@ finish_open:
+@@ -3350,6 +3511,21 @@ static int do_last(struct nameidata *nd,
error = complete_walk(nd);
if (error)
return error;
@@ -107844,7 +111714,7 @@ index adb0414..82da447 100644
audit_inode(nd->name, nd->path.dentry, 0);
error = -EISDIR;
if ((open_flag & O_CREAT) && d_is_dir(nd->path.dentry))
-@@ -3606,9 +3762,11 @@ static struct dentry *filename_create(int dfd, struct filename *name,
+@@ -3606,9 +3782,11 @@ static struct dentry *filename_create(int dfd, struct filename *name,
goto unlock;
error = -EEXIST;
@@ -107858,7 +111728,7 @@ index adb0414..82da447 100644
/*
* Special case - lookup gave negative, but... we had foo/bar/
* From the vfs_mknod() POV we just have a negative dentry -
-@@ -3662,6 +3820,20 @@ inline struct dentry *user_path_create(int dfd, const char __user *pathname,
+@@ -3662,6 +3840,20 @@ inline struct dentry *user_path_create(int dfd, const char __user *pathname,
}
EXPORT_SYMBOL(user_path_create);
@@ -107879,7 +111749,7 @@ index adb0414..82da447 100644
int vfs_mknod(struct inode *dir, struct dentry *dentry, umode_t mode, dev_t dev)
{
int error = may_create(dir, dentry);
-@@ -3725,6 +3897,17 @@ retry:
+@@ -3725,6 +3917,17 @@ SYSCALL_DEFINE4(mknodat, int, dfd, const char __user *, filename, umode_t, mode,
if (!IS_POSIXACL(path.dentry->d_inode))
mode &= ~current_umask();
@@ -107897,7 +111767,7 @@ index adb0414..82da447 100644
error = security_path_mknod(&path, dentry, mode, dev);
if (error)
goto out;
-@@ -3742,6 +3925,8 @@ retry:
+@@ -3742,6 +3945,8 @@ SYSCALL_DEFINE4(mknodat, int, dfd, const char __user *, filename, umode_t, mode,
error = vfs_mknod(path.dentry->d_inode,dentry,mode,0);
break;
}
@@ -107906,7 +111776,7 @@ index adb0414..82da447 100644
out:
done_path_create(&path, dentry);
if (retry_estale(error, lookup_flags)) {
-@@ -3796,9 +3981,16 @@ retry:
+@@ -3796,9 +4001,16 @@ SYSCALL_DEFINE3(mkdirat, int, dfd, const char __user *, pathname, umode_t, mode)
if (!IS_POSIXACL(path.dentry->d_inode))
mode &= ~current_umask();
@@ -107923,7 +111793,7 @@ index adb0414..82da447 100644
done_path_create(&path, dentry);
if (retry_estale(error, lookup_flags)) {
lookup_flags |= LOOKUP_REVAL;
-@@ -3859,6 +4051,8 @@ static long do_rmdir(int dfd, const char __user *pathname)
+@@ -3859,6 +4071,8 @@ static long do_rmdir(int dfd, const char __user *pathname)
struct path path;
struct qstr last;
int type;
@@ -107932,7 +111802,7 @@ index adb0414..82da447 100644
unsigned int lookup_flags = 0;
retry:
name = user_path_parent(dfd, pathname,
-@@ -3891,10 +4085,20 @@ retry:
+@@ -3891,10 +4105,20 @@ static long do_rmdir(int dfd, const char __user *pathname)
error = -ENOENT;
goto exit3;
}
@@ -107953,7 +111823,7 @@ index adb0414..82da447 100644
exit3:
dput(dentry);
exit2:
-@@ -3989,6 +4193,8 @@ static long do_unlinkat(int dfd, const char __user *pathname)
+@@ -3989,6 +4213,8 @@ static long do_unlinkat(int dfd, const char __user *pathname)
int type;
struct inode *inode = NULL;
struct inode *delegated_inode = NULL;
@@ -107962,7 +111832,7 @@ index adb0414..82da447 100644
unsigned int lookup_flags = 0;
retry:
name = user_path_parent(dfd, pathname,
-@@ -4015,10 +4221,21 @@ retry_deleg:
+@@ -4015,10 +4241,21 @@ static long do_unlinkat(int dfd, const char __user *pathname)
if (d_is_negative(dentry))
goto slashes;
ihold(inode);
@@ -107984,7 +111854,7 @@ index adb0414..82da447 100644
exit2:
dput(dentry);
}
-@@ -4107,9 +4324,17 @@ retry:
+@@ -4107,9 +4344,17 @@ SYSCALL_DEFINE3(symlinkat, const char __user *, oldname,
if (IS_ERR(dentry))
goto out_putname;
@@ -108002,7 +111872,7 @@ index adb0414..82da447 100644
done_path_create(&path, dentry);
if (retry_estale(error, lookup_flags)) {
lookup_flags |= LOOKUP_REVAL;
-@@ -4220,6 +4445,7 @@ SYSCALL_DEFINE5(linkat, int, olddfd, const char __user *, oldname,
+@@ -4220,6 +4465,7 @@ SYSCALL_DEFINE5(linkat, int, olddfd, const char __user *, oldname,
struct dentry *new_dentry;
struct path old_path, new_path;
struct inode *delegated_inode = NULL;
@@ -108010,7 +111880,7 @@ index adb0414..82da447 100644
int how = 0;
int error;
-@@ -4243,7 +4469,7 @@ retry:
+@@ -4243,7 +4489,7 @@ SYSCALL_DEFINE5(linkat, int, olddfd, const char __user *, oldname,
if (error)
return error;
@@ -108019,7 +111889,7 @@ index adb0414..82da447 100644
(how & LOOKUP_REVAL));
error = PTR_ERR(new_dentry);
if (IS_ERR(new_dentry))
-@@ -4255,11 +4481,26 @@ retry:
+@@ -4255,11 +4501,26 @@ SYSCALL_DEFINE5(linkat, int, olddfd, const char __user *, oldname,
error = may_linkat(&old_path);
if (unlikely(error))
goto out_dput;
@@ -108046,7 +111916,7 @@ index adb0414..82da447 100644
done_path_create(&new_path, new_dentry);
if (delegated_inode) {
error = break_deleg_wait(&delegated_inode);
-@@ -4578,6 +4819,20 @@ retry_deleg:
+@@ -4569,6 +4830,20 @@ SYSCALL_DEFINE5(renameat2, int, olddfd, const char __user *, oldname,
if (new_dentry == trap)
goto exit5;
@@ -108067,7 +111937,7 @@ index adb0414..82da447 100644
error = security_path_rename(&old_path, old_dentry,
&new_path, new_dentry, flags);
if (error)
-@@ -4585,6 +4840,9 @@ retry_deleg:
+@@ -4576,6 +4851,9 @@ SYSCALL_DEFINE5(renameat2, int, olddfd, const char __user *, oldname,
error = vfs_rename(old_path.dentry->d_inode, old_dentry,
new_path.dentry->d_inode, new_dentry,
&delegated_inode, flags);
@@ -108078,10 +111948,10 @@ index adb0414..82da447 100644
dput(new_dentry);
exit4:
diff --git a/fs/namespace.c b/fs/namespace.c
-index 7bb2cda..74b3e8f 100644
+index 7cea503..ff1c5ec 100644
--- a/fs/namespace.c
+++ b/fs/namespace.c
-@@ -1516,6 +1516,9 @@ static int do_umount(struct mount *mnt, int flags)
+@@ -1551,6 +1551,9 @@ static int do_umount(struct mount *mnt, int flags)
if (!(sb->s_flags & MS_RDONLY))
retval = do_remount_sb(sb, MS_RDONLY, NULL, 0);
up_write(&sb->s_umount);
@@ -108091,7 +111961,7 @@ index 7bb2cda..74b3e8f 100644
return retval;
}
-@@ -1538,6 +1541,9 @@ static int do_umount(struct mount *mnt, int flags)
+@@ -1573,6 +1576,9 @@ static int do_umount(struct mount *mnt, int flags)
}
unlock_mount_hash();
namespace_unlock();
@@ -108101,7 +111971,7 @@ index 7bb2cda..74b3e8f 100644
return retval;
}
-@@ -1601,7 +1607,7 @@ static inline bool may_mandlock(void)
+@@ -1636,7 +1642,7 @@ static inline bool may_mandlock(void)
* unixes. Our API is identical to OSF/1 to avoid making a mess of AMD
*/
@@ -108110,7 +111980,7 @@ index 7bb2cda..74b3e8f 100644
{
struct path path;
struct mount *mnt;
-@@ -1646,7 +1652,7 @@ out:
+@@ -1681,7 +1687,7 @@ SYSCALL_DEFINE2(umount, char __user *, name, int, flags)
/*
* The 2.0 compatible umount. No flags.
*/
@@ -108119,9 +111989,9 @@ index 7bb2cda..74b3e8f 100644
{
return sys_umount(name, 0);
}
-@@ -2702,6 +2708,16 @@ long do_mount(const char *dev_name, const char __user *dir_name,
+@@ -2771,6 +2777,16 @@ long do_mount(const char *dev_name, const char __user *dir_name,
MS_NOATIME | MS_NODIRATIME | MS_RELATIME| MS_KERNMOUNT |
- MS_STRICTATIME);
+ MS_STRICTATIME | MS_NOREMOTELOCK);
+ if (gr_handle_rofs_mount(path.dentry, path.mnt, mnt_flags)) {
+ retval = -EPERM;
@@ -108136,7 +112006,7 @@ index 7bb2cda..74b3e8f 100644
if (flags & MS_REMOUNT)
retval = do_remount(&path, flags & ~MS_REMOUNT, mnt_flags,
data_page);
-@@ -2715,7 +2731,10 @@ long do_mount(const char *dev_name, const char __user *dir_name,
+@@ -2784,7 +2800,10 @@ long do_mount(const char *dev_name, const char __user *dir_name,
retval = do_new_mount(&path, type_page, flags, mnt_flags,
dev_name, data_page);
dput_out:
@@ -108147,7 +112017,7 @@ index 7bb2cda..74b3e8f 100644
return retval;
}
-@@ -2733,7 +2752,7 @@ static void free_mnt_ns(struct mnt_namespace *ns)
+@@ -2813,7 +2832,7 @@ static void free_mnt_ns(struct mnt_namespace *ns)
* number incrementing at 10Ghz will take 12,427 years to wrap which
* is effectively never, so we can ignore the possibility.
*/
@@ -108156,7 +112026,7 @@ index 7bb2cda..74b3e8f 100644
static struct mnt_namespace *alloc_mnt_ns(struct user_namespace *user_ns)
{
-@@ -2749,7 +2768,7 @@ static struct mnt_namespace *alloc_mnt_ns(struct user_namespace *user_ns)
+@@ -2837,7 +2856,7 @@ static struct mnt_namespace *alloc_mnt_ns(struct user_namespace *user_ns)
return ERR_PTR(ret);
}
new_ns->ns.ops = &mntns_operations;
@@ -108165,15 +112035,7 @@ index 7bb2cda..74b3e8f 100644
atomic_set(&new_ns->count, 1);
new_ns->root = NULL;
INIT_LIST_HEAD(&new_ns->list);
-@@ -2759,6 +2778,7 @@ static struct mnt_namespace *alloc_mnt_ns(struct user_namespace *user_ns)
- return new_ns;
- }
-
-+__latent_entropy
- struct mnt_namespace *copy_mnt_ns(unsigned long flags, struct mnt_namespace *ns,
- struct user_namespace *user_ns, struct fs_struct *new_fs)
- {
-@@ -2880,8 +2900,8 @@ struct dentry *mount_subtree(struct vfsmount *mnt, const char *name)
+@@ -2974,8 +2993,8 @@ struct dentry *mount_subtree(struct vfsmount *mnt, const char *name)
}
EXPORT_SYMBOL(mount_subtree);
@@ -108184,7 +112046,7 @@ index 7bb2cda..74b3e8f 100644
{
int ret;
char *kernel_type;
-@@ -2987,6 +3007,11 @@ SYSCALL_DEFINE2(pivot_root, const char __user *, new_root,
+@@ -3081,6 +3100,11 @@ SYSCALL_DEFINE2(pivot_root, const char __user *, new_root,
if (error)
goto out2;
@@ -108196,7 +112058,7 @@ index 7bb2cda..74b3e8f 100644
get_fs_root(current->fs, &root);
old_mp = lock_mount(&old);
error = PTR_ERR(old_mp);
-@@ -3326,7 +3351,7 @@ static int mntns_install(struct nsproxy *nsproxy, struct ns_common *ns)
+@@ -3420,7 +3444,7 @@ static int mntns_install(struct nsproxy *nsproxy, struct ns_common *ns)
!ns_capable(current_user_ns(), CAP_SYS_ADMIN))
return -EPERM;
@@ -108206,7 +112068,7 @@ index 7bb2cda..74b3e8f 100644
get_mnt_ns(mnt_ns);
diff --git a/fs/nfs/callback.h b/fs/nfs/callback.h
-index 5fe1cec..d0f4ac0 100644
+index c701c30..bee1551 100644
--- a/fs/nfs/callback.h
+++ b/fs/nfs/callback.h
@@ -114,8 +114,8 @@ struct cb_sequenceres {
@@ -108246,7 +112108,7 @@ index 5fe1cec..d0f4ac0 100644
void *dummy, struct cb_process_state *cps);
struct cb_devicenotifyitem {
-@@ -176,15 +176,15 @@ struct cb_devicenotifyargs {
+@@ -176,7 +176,7 @@ struct cb_devicenotifyargs {
};
extern __be32 nfs4_callback_devicenotify(
@@ -108254,6 +112116,15 @@ index 5fe1cec..d0f4ac0 100644
+ void *_args,
void *dummy, struct cb_process_state *cps);
+ struct cb_notify_lock_args {
+@@ -185,15 +185,15 @@ struct cb_notify_lock_args {
+ bool cbnl_valid;
+ };
+
+-extern __be32 nfs4_callback_notify_lock(struct cb_notify_lock_args *args,
++extern __be32 nfs4_callback_notify_lock(void *args,
+ void *dummy,
+ struct cb_process_state *cps);
#endif /* CONFIG_NFS_V4_1 */
extern int check_gss_callback_principal(struct nfs_client *, struct svc_rqst *);
-extern __be32 nfs4_callback_getattr(struct cb_getattrargs *args,
@@ -108267,7 +112138,7 @@ index 5fe1cec..d0f4ac0 100644
#if IS_ENABLED(CONFIG_NFS_V4)
extern int nfs_callback_up(u32 minorversion, struct rpc_xprt *xprt);
diff --git a/fs/nfs/callback_proc.c b/fs/nfs/callback_proc.c
-index f953ef6..3791d58 100644
+index e9aa235e..e492c43 100644
--- a/fs/nfs/callback_proc.c
+++ b/fs/nfs/callback_proc.c
@@ -19,10 +19,12 @@
@@ -108285,7 +112156,7 @@ index f953ef6..3791d58 100644
struct nfs_delegation *delegation;
struct nfs_inode *nfsi;
struct inode *inode;
-@@ -68,9 +70,10 @@ out:
+@@ -68,9 +70,10 @@ __be32 nfs4_callback_getattr(struct cb_getattrargs *args,
return res->status;
}
@@ -108318,7 +112189,7 @@ index f953ef6..3791d58 100644
int i;
__be32 res = 0;
struct nfs_client *clp = cps->clp;
-@@ -465,10 +469,12 @@ out:
+@@ -465,10 +469,12 @@ static bool referring_call_exists(struct nfs_client *clp,
return status;
}
@@ -108345,7 +112216,7 @@ index f953ef6..3791d58 100644
__be32 status;
fmode_t flags = 0;
-@@ -604,9 +611,10 @@ out:
+@@ -604,9 +611,10 @@ __be32 nfs4_callback_recallany(struct cb_recallanyargs *args, void *dummy,
}
/* Reduce the fore channel's max_slots to the target value */
@@ -108357,11 +112228,23 @@ index f953ef6..3791d58 100644
struct nfs4_slot_table *fc_tbl;
__be32 status;
+@@ -629,9 +637,10 @@ __be32 nfs4_callback_recallslot(struct cb_recallslotargs *args, void *dummy,
+ return status;
+ }
+
+-__be32 nfs4_callback_notify_lock(struct cb_notify_lock_args *args, void *dummy,
++__be32 nfs4_callback_notify_lock(void *_args, void *dummy,
+ struct cb_process_state *cps)
+ {
++ struct cb_notify_lock_args *args = _args;
+ if (!cps->clp) /* set in cb_sequence */
+ return htonl(NFS4ERR_OP_NOT_IN_SESSION);
+
diff --git a/fs/nfs/callback_xdr.c b/fs/nfs/callback_xdr.c
-index 656f68f..79c0026 100644
+index eb094c6..3f2abc4 100644
--- a/fs/nfs/callback_xdr.c
+++ b/fs/nfs/callback_xdr.c
-@@ -53,7 +53,7 @@ struct callback_op {
+@@ -54,7 +54,7 @@ struct callback_op {
callback_decode_arg_t decode_args;
callback_encode_res_t encode_res;
long res_maxsize;
@@ -108370,7 +112253,7 @@ index 656f68f..79c0026 100644
static struct callback_op callback_ops[];
-@@ -62,12 +62,12 @@ static __be32 nfs4_callback_null(struct svc_rqst *rqstp, void *argp, void *resp)
+@@ -63,12 +63,12 @@ static __be32 nfs4_callback_null(struct svc_rqst *rqstp, void *argp, void *resp)
return htonl(NFS4_OK);
}
@@ -108385,7 +112268,7 @@ index 656f68f..79c0026 100644
{
return xdr_ressize_check(rqstp, p);
}
-@@ -199,8 +199,9 @@ static __be32 decode_op_hdr(struct xdr_stream *xdr, unsigned int *op)
+@@ -200,8 +200,9 @@ static __be32 decode_op_hdr(struct xdr_stream *xdr, unsigned int *op)
return 0;
}
@@ -108396,7 +112279,7 @@ index 656f68f..79c0026 100644
__be32 status;
status = decode_fh(xdr, &args->fh);
-@@ -212,8 +213,9 @@ out:
+@@ -213,8 +214,9 @@ static __be32 decode_getattr_args(struct svc_rqst *rqstp, struct xdr_stream *xdr
return status;
}
@@ -108407,7 +112290,7 @@ index 656f68f..79c0026 100644
__be32 *p;
__be32 status;
-@@ -241,8 +243,9 @@ static __be32 decode_layout_stateid(struct xdr_stream *xdr, nfs4_stateid *statei
+@@ -242,8 +244,9 @@ static __be32 decode_layout_stateid(struct xdr_stream *xdr, nfs4_stateid *statei
static __be32 decode_layoutrecall_args(struct svc_rqst *rqstp,
struct xdr_stream *xdr,
@@ -108418,7 +112301,7 @@ index 656f68f..79c0026 100644
__be32 *p;
__be32 status = 0;
uint32_t iomode;
-@@ -301,8 +304,9 @@ out:
+@@ -302,8 +305,9 @@ static __be32 decode_layoutrecall_args(struct svc_rqst *rqstp,
static
__be32 decode_devicenotify_args(struct svc_rqst *rqstp,
struct xdr_stream *xdr,
@@ -108429,7 +112312,7 @@ index 656f68f..79c0026 100644
__be32 *p;
__be32 status = 0;
u32 tmp;
-@@ -442,8 +446,9 @@ out:
+@@ -443,8 +447,9 @@ static __be32 decode_rc_list(struct xdr_stream *xdr,
static __be32 decode_cb_sequence_args(struct svc_rqst *rqstp,
struct xdr_stream *xdr,
@@ -108440,7 +112323,7 @@ index 656f68f..79c0026 100644
__be32 *p;
int i;
__be32 status;
-@@ -504,8 +509,9 @@ out_free:
+@@ -505,8 +510,9 @@ static __be32 decode_cb_sequence_args(struct svc_rqst *rqstp,
static __be32 decode_recallany_args(struct svc_rqst *rqstp,
struct xdr_stream *xdr,
@@ -108451,7 +112334,7 @@ index 656f68f..79c0026 100644
uint32_t bitmap[2];
__be32 *p, status;
-@@ -523,8 +529,9 @@ static __be32 decode_recallany_args(struct svc_rqst *rqstp,
+@@ -524,8 +530,9 @@ static __be32 decode_recallany_args(struct svc_rqst *rqstp,
static __be32 decode_recallslot_args(struct svc_rqst *rqstp,
struct xdr_stream *xdr,
@@ -108462,7 +112345,18 @@ index 656f68f..79c0026 100644
__be32 *p;
p = read_buf(xdr, 4);
-@@ -659,8 +666,9 @@ static __be32 encode_op_hdr(struct xdr_stream *xdr, uint32_t op, __be32 res)
+@@ -565,8 +572,9 @@ static __be32 decode_lockowner(struct xdr_stream *xdr, struct cb_notify_lock_arg
+ return 0;
+ }
+
+-static __be32 decode_notify_lock_args(struct svc_rqst *rqstp, struct xdr_stream *xdr, struct cb_notify_lock_args *args)
++static __be32 decode_notify_lock_args(struct svc_rqst *rqstp, struct xdr_stream *xdr, void *_args)
+ {
++ struct cb_notify_lock_args *args = _args;
+ __be32 status;
+
+ status = decode_fh(xdr, &args->cbnl_fh);
+@@ -703,8 +711,9 @@ static __be32 encode_op_hdr(struct xdr_stream *xdr, uint32_t op, __be32 res)
return 0;
}
@@ -108473,7 +112367,7 @@ index 656f68f..79c0026 100644
__be32 *savep = NULL;
__be32 status = res->status;
-@@ -702,8 +710,9 @@ static __be32 encode_sessionid(struct xdr_stream *xdr,
+@@ -746,8 +755,9 @@ static __be32 encode_sessionid(struct xdr_stream *xdr,
static __be32 encode_cb_sequence_res(struct svc_rqst *rqstp,
struct xdr_stream *xdr,
@@ -108484,7 +112378,7 @@ index 656f68f..79c0026 100644
__be32 *p;
__be32 status = res->csr_status;
-@@ -967,43 +976,41 @@ static struct callback_op callback_ops[] = {
+@@ -1011,48 +1021,46 @@ static struct callback_op callback_ops[] = {
.res_maxsize = CB_OP_HDR_RES_MAXSZ,
},
[OP_CB_GETATTR] = {
@@ -108543,8 +112437,15 @@ index 656f68f..79c0026 100644
+ .decode_args = decode_recallslot_args,
.res_maxsize = CB_OP_RECALLSLOT_RES_MAXSZ,
},
+ [OP_CB_NOTIFY_LOCK] = {
+- .process_op = (callback_process_op_t)nfs4_callback_notify_lock,
+- .decode_args = (callback_decode_arg_t)decode_notify_lock_args,
++ .process_op = nfs4_callback_notify_lock,
++ .decode_args = decode_notify_lock_args,
+ .res_maxsize = CB_OP_NOTIFY_LOCK_RES_MAXSZ,
+ },
#endif /* CONFIG_NFS_V4_1 */
-@@ -1015,13 +1022,13 @@ static struct callback_op callback_ops[] = {
+@@ -1064,13 +1072,13 @@ static struct callback_op callback_ops[] = {
static struct svc_procedure nfs4_callback_procedures1[] = {
[CB_NULL] = {
.pc_func = nfs4_callback_null,
@@ -108562,10 +112463,10 @@ index 656f68f..79c0026 100644
.pc_ressize = 256,
.pc_xdrressize = NFS4_CALLBACK_BUFSIZE,
diff --git a/fs/nfs/dir.c b/fs/nfs/dir.c
-index 6bc5a68..a7324a1 100644
+index 53e02b8..f87205c 100644
--- a/fs/nfs/dir.c
+++ b/fs/nfs/dir.c
-@@ -705,8 +705,9 @@ out:
+@@ -713,8 +713,9 @@ int nfs_readdir_xdr_to_array(nfs_readdir_descriptor_t *desc, struct page *page,
* We only need to convert from xdr once so future lookups are much simpler
*/
static
@@ -108576,7 +112477,7 @@ index 6bc5a68..a7324a1 100644
struct inode *inode = file_inode(desc->file);
int ret;
-@@ -741,7 +742,7 @@ struct page *get_cache_page(nfs_readdir_descriptor_t *desc)
+@@ -749,7 +750,7 @@ struct page *get_cache_page(nfs_readdir_descriptor_t *desc)
for (;;) {
page = read_cache_page(desc->file->f_mapping,
@@ -108610,10 +112511,10 @@ index bf4ec5e..39aec95 100644
EXPORT_SYMBOL_GPL(nfs_inc_attr_generation_counter);
diff --git a/fs/nfs/internal.h b/fs/nfs/internal.h
-index 74935a1..15544e5 100644
+index 80bcc0b..8ccccd7 100644
--- a/fs/nfs/internal.h
+++ b/fs/nfs/internal.h
-@@ -652,9 +652,10 @@ unsigned long nfs_block_size(unsigned long bsize, unsigned char *nrbitsp)
+@@ -650,9 +650,10 @@ unsigned long nfs_block_size(unsigned long bsize, unsigned char *nrbitsp)
static inline
void nfs_super_set_maxbytes(struct super_block *sb, __u64 maxfilesize)
{
@@ -108713,7 +112614,7 @@ diff --git a/fs/nfs/nfs2xdr.c b/fs/nfs/nfs2xdr.c
index b4e03ed..6907eb4 100644
--- a/fs/nfs/nfs2xdr.c
+++ b/fs/nfs/nfs2xdr.c
-@@ -566,9 +566,9 @@ out_default:
+@@ -566,9 +566,9 @@ static int decode_diropres(struct xdr_stream *xdr, struct nfs_diropok *result)
* "NFS: Network File System Protocol Specification".
*/
@@ -108886,7 +112787,7 @@ index b4e03ed..6907eb4 100644
void *__unused)
{
enum nfs_stat status;
-@@ -808,14 +828,14 @@ out_default:
+@@ -808,14 +828,14 @@ static int nfs2_xdr_dec_stat(struct rpc_rqst *req, struct xdr_stream *xdr,
return nfs_stat_to_errno(status);
}
@@ -108914,7 +112815,7 @@ index b4e03ed..6907eb4 100644
struct xdr_stream *xdr, void *__unused)
{
enum nfs_stat status;
-@@ -859,9 +879,10 @@ out_default:
+@@ -859,9 +879,10 @@ static int nfs2_xdr_dec_readlinkres(struct rpc_rqst *req,
* void;
* };
*/
@@ -108927,7 +112828,7 @@ index b4e03ed..6907eb4 100644
enum nfs_stat status;
int error;
-@@ -881,9 +902,11 @@ out_default:
+@@ -881,9 +902,11 @@ static int nfs2_xdr_dec_readres(struct rpc_rqst *req, struct xdr_stream *xdr,
return nfs_stat_to_errno(status);
}
@@ -108950,7 +112851,7 @@ index b4e03ed..6907eb4 100644
struct xdr_stream *xdr, void *__unused)
{
enum nfs_stat status;
-@@ -1033,8 +1056,8 @@ out_overflow:
+@@ -1033,8 +1056,8 @@ static int decode_info(struct xdr_stream *xdr, struct nfs2_fsstat *result)
return -EIO;
}
@@ -109258,7 +113159,7 @@ index 267126d..19c97b8 100644
{
enum nfs_stat status;
int error;
-@@ -1417,9 +1445,9 @@ out_default:
+@@ -1417,9 +1445,9 @@ static int nfs3_xdr_dec_getattr3res(struct rpc_rqst *req,
* SETATTR3resfail resfail;
* };
*/
@@ -109270,7 +113171,7 @@ index 267126d..19c97b8 100644
{
enum nfs_stat status;
int error;
-@@ -1458,10 +1486,11 @@ out_status:
+@@ -1458,10 +1486,11 @@ static int nfs3_xdr_dec_setattr3res(struct rpc_rqst *req,
* LOOKUP3resfail resfail;
* };
*/
@@ -109284,7 +113185,7 @@ index 267126d..19c97b8 100644
enum nfs_stat status;
int error;
-@@ -1505,10 +1534,11 @@ out_default:
+@@ -1505,10 +1534,11 @@ static int nfs3_xdr_dec_lookup3res(struct rpc_rqst *req,
* ACCESS3resfail resfail;
* };
*/
@@ -109298,7 +113199,7 @@ index 267126d..19c97b8 100644
enum nfs_stat status;
int error;
-@@ -1546,9 +1576,9 @@ out_default:
+@@ -1546,9 +1576,9 @@ static int nfs3_xdr_dec_access3res(struct rpc_rqst *req,
* READLINK3resfail resfail;
* };
*/
@@ -109310,7 +113211,7 @@ index 267126d..19c97b8 100644
{
enum nfs_stat status;
int error;
-@@ -1625,9 +1655,10 @@ out_overflow:
+@@ -1625,9 +1655,10 @@ static int decode_read3resok(struct xdr_stream *xdr,
return -EIO;
}
@@ -109323,7 +113224,7 @@ index 267126d..19c97b8 100644
enum nfs_stat status;
int error;
-@@ -1698,9 +1729,10 @@ out_eio:
+@@ -1698,9 +1729,10 @@ static int decode_write3resok(struct xdr_stream *xdr,
return -EIO;
}
@@ -109336,7 +113237,7 @@ index 267126d..19c97b8 100644
enum nfs_stat status;
int error;
-@@ -1762,10 +1794,11 @@ out:
+@@ -1762,10 +1794,11 @@ static int decode_create3resok(struct xdr_stream *xdr,
return error;
}
@@ -109350,7 +113251,7 @@ index 267126d..19c97b8 100644
enum nfs_stat status;
int error;
-@@ -1802,10 +1835,11 @@ out_default:
+@@ -1802,10 +1835,11 @@ static int nfs3_xdr_dec_create3res(struct rpc_rqst *req,
* REMOVE3resfail resfail;
* };
*/
@@ -109364,7 +113265,7 @@ index 267126d..19c97b8 100644
enum nfs_stat status;
int error;
-@@ -1843,10 +1877,11 @@ out_status:
+@@ -1843,10 +1877,11 @@ static int nfs3_xdr_dec_remove3res(struct rpc_rqst *req,
* RENAME3resfail resfail;
* };
*/
@@ -109378,7 +113279,7 @@ index 267126d..19c97b8 100644
enum nfs_stat status;
int error;
-@@ -1887,9 +1922,10 @@ out_status:
+@@ -1887,9 +1922,10 @@ static int nfs3_xdr_dec_rename3res(struct rpc_rqst *req,
* LINK3resfail resfail;
* };
*/
@@ -109391,7 +113292,7 @@ index 267126d..19c97b8 100644
enum nfs_stat status;
int error;
-@@ -2070,10 +2106,11 @@ out:
+@@ -2070,10 +2106,11 @@ static int decode_readdir3resok(struct xdr_stream *xdr,
return error;
}
@@ -109405,7 +113306,7 @@ index 267126d..19c97b8 100644
enum nfs_stat status;
int error;
-@@ -2138,10 +2175,11 @@ out_overflow:
+@@ -2138,10 +2175,11 @@ static int decode_fsstat3resok(struct xdr_stream *xdr,
return -EIO;
}
@@ -109419,7 +113320,7 @@ index 267126d..19c97b8 100644
enum nfs_stat status;
int error;
-@@ -2214,10 +2252,11 @@ out_overflow:
+@@ -2214,10 +2252,11 @@ static int decode_fsinfo3resok(struct xdr_stream *xdr,
return -EIO;
}
@@ -109433,7 +113334,7 @@ index 267126d..19c97b8 100644
enum nfs_stat status;
int error;
-@@ -2277,10 +2316,11 @@ out_overflow:
+@@ -2277,10 +2316,11 @@ static int decode_pathconf3resok(struct xdr_stream *xdr,
return -EIO;
}
@@ -109447,7 +113348,7 @@ index 267126d..19c97b8 100644
enum nfs_stat status;
int error;
-@@ -2318,10 +2358,11 @@ out_status:
+@@ -2318,10 +2358,11 @@ static int nfs3_xdr_dec_pathconf3res(struct rpc_rqst *req,
* COMMIT3resfail resfail;
* };
*/
@@ -109461,7 +113362,7 @@ index 267126d..19c97b8 100644
enum nfs_stat status;
int error;
-@@ -2387,9 +2428,9 @@ out:
+@@ -2387,9 +2428,9 @@ static inline int decode_getacl3resok(struct xdr_stream *xdr,
return error;
}
@@ -109473,7 +113374,7 @@ index 267126d..19c97b8 100644
{
enum nfs_stat status;
int error;
-@@ -2406,9 +2447,9 @@ out_default:
+@@ -2406,9 +2447,9 @@ static int nfs3_xdr_dec_getacl3res(struct rpc_rqst *req,
return nfs3_stat_to_errno(status);
}
@@ -109627,7 +113528,7 @@ index 8b26058..b31170f 100644
struct compound_hdr hdr;
int status;
-@@ -457,10 +471,12 @@ out:
+@@ -457,10 +471,12 @@ static int nfs4_xdr_dec_allocate(struct rpc_rqst *rqstp,
/*
* Decode COPY response
*/
@@ -109642,7 +113543,7 @@ index 8b26058..b31170f 100644
struct compound_hdr hdr;
int status;
-@@ -487,10 +503,12 @@ out:
+@@ -487,10 +503,12 @@ static int nfs4_xdr_dec_copy(struct rpc_rqst *rqstp,
/*
* Decode DEALLOCATE request
*/
@@ -109657,7 +113558,7 @@ index 8b26058..b31170f 100644
struct compound_hdr hdr;
int status;
-@@ -514,10 +532,12 @@ out:
+@@ -514,10 +532,12 @@ static int nfs4_xdr_dec_deallocate(struct rpc_rqst *rqstp,
/*
* Decode SEEK request
*/
@@ -109672,7 +113573,7 @@ index 8b26058..b31170f 100644
struct compound_hdr hdr;
int status;
-@@ -538,10 +558,12 @@ out:
+@@ -538,10 +558,12 @@ static int nfs4_xdr_dec_seek(struct rpc_rqst *rqstp,
/*
* Decode LAYOUTSTATS request
*/
@@ -109687,7 +113588,7 @@ index 8b26058..b31170f 100644
struct compound_hdr hdr;
int status, i;
-@@ -568,10 +590,12 @@ out:
+@@ -568,10 +590,12 @@ static int nfs4_xdr_dec_layoutstats(struct rpc_rqst *rqstp,
/*
* Decode CLONE request
*/
@@ -109703,7 +113604,7 @@ index 8b26058..b31170f 100644
int status;
diff --git a/fs/nfs/nfs4xdr.c b/fs/nfs/nfs4xdr.c
-index 7bd3a5c0..0c408e8 100644
+index fc89e5e..0e7fc08 100644
--- a/fs/nfs/nfs4xdr.c
+++ b/fs/nfs/nfs4xdr.c
@@ -2081,9 +2081,10 @@ static u32 nfs4_xdr_minorversion(const struct nfs4_sequence_args *args)
@@ -110402,7 +114303,7 @@ index 7bd3a5c0..0c408e8 100644
struct compound_hdr hdr = {
.minorversion = nfs4_xdr_minorversion(&args->seq_args),
};
-@@ -6096,10 +6151,11 @@ static int decode_free_stateid(struct xdr_stream *xdr,
+@@ -6098,10 +6153,11 @@ static int decode_free_stateid(struct xdr_stream *xdr,
/*
* Decode OPEN_DOWNGRADE response
*/
@@ -110416,7 +114317,7 @@ index 7bd3a5c0..0c408e8 100644
struct compound_hdr hdr;
int status;
-@@ -6123,9 +6179,10 @@ out:
+@@ -6125,9 +6181,10 @@ static int nfs4_xdr_dec_open_downgrade(struct rpc_rqst *rqstp,
/*
* Decode ACCESS response
*/
@@ -110429,7 +114330,7 @@ index 7bd3a5c0..0c408e8 100644
struct compound_hdr hdr;
int status;
-@@ -6149,9 +6206,10 @@ out:
+@@ -6151,9 +6208,10 @@ static int nfs4_xdr_dec_access(struct rpc_rqst *rqstp, struct xdr_stream *xdr,
/*
* Decode LOOKUP response
*/
@@ -110442,7 +114343,7 @@ index 7bd3a5c0..0c408e8 100644
struct compound_hdr hdr;
int status;
-@@ -6178,10 +6236,11 @@ out:
+@@ -6180,10 +6238,11 @@ static int nfs4_xdr_dec_lookup(struct rpc_rqst *rqstp, struct xdr_stream *xdr,
/*
* Decode LOOKUP_ROOT response
*/
@@ -110456,7 +114357,7 @@ index 7bd3a5c0..0c408e8 100644
struct compound_hdr hdr;
int status;
-@@ -6205,9 +6264,10 @@ out:
+@@ -6207,9 +6266,10 @@ static int nfs4_xdr_dec_lookup_root(struct rpc_rqst *rqstp,
/*
* Decode REMOVE response
*/
@@ -110469,7 +114370,7 @@ index 7bd3a5c0..0c408e8 100644
struct compound_hdr hdr;
int status;
-@@ -6228,9 +6288,10 @@ out:
+@@ -6230,9 +6290,10 @@ static int nfs4_xdr_dec_remove(struct rpc_rqst *rqstp, struct xdr_stream *xdr,
/*
* Decode RENAME response
*/
@@ -110482,7 +114383,7 @@ index 7bd3a5c0..0c408e8 100644
struct compound_hdr hdr;
int status;
-@@ -6257,9 +6318,10 @@ out:
+@@ -6259,9 +6320,10 @@ static int nfs4_xdr_dec_rename(struct rpc_rqst *rqstp, struct xdr_stream *xdr,
/*
* Decode LINK response
*/
@@ -110495,7 +114396,7 @@ index 7bd3a5c0..0c408e8 100644
struct compound_hdr hdr;
int status;
-@@ -6296,9 +6358,10 @@ out:
+@@ -6298,9 +6360,10 @@ static int nfs4_xdr_dec_link(struct rpc_rqst *rqstp, struct xdr_stream *xdr,
/*
* Decode CREATE response
*/
@@ -110508,7 +114409,7 @@ index 7bd3a5c0..0c408e8 100644
struct compound_hdr hdr;
int status;
-@@ -6325,8 +6388,8 @@ out:
+@@ -6327,8 +6390,8 @@ static int nfs4_xdr_dec_create(struct rpc_rqst *rqstp, struct xdr_stream *xdr,
/*
* Decode SYMLINK response
*/
@@ -110519,7 +114420,7 @@ index 7bd3a5c0..0c408e8 100644
{
return nfs4_xdr_dec_create(rqstp, xdr, res);
}
-@@ -6334,9 +6397,10 @@ static int nfs4_xdr_dec_symlink(struct rpc_rqst *rqstp, struct xdr_stream *xdr,
+@@ -6336,9 +6399,10 @@ static int nfs4_xdr_dec_symlink(struct rpc_rqst *rqstp, struct xdr_stream *xdr,
/*
* Decode GETATTR response
*/
@@ -110532,7 +114433,7 @@ index 7bd3a5c0..0c408e8 100644
struct compound_hdr hdr;
int status;
-@@ -6357,9 +6421,10 @@ out:
+@@ -6359,9 +6423,10 @@ static int nfs4_xdr_dec_getattr(struct rpc_rqst *rqstp, struct xdr_stream *xdr,
/*
* Encode an SETACL request
*/
@@ -110545,7 +114446,7 @@ index 7bd3a5c0..0c408e8 100644
struct compound_hdr hdr = {
.minorversion = nfs4_xdr_minorversion(&args->seq_args),
};
-@@ -6375,9 +6440,10 @@ static void nfs4_xdr_enc_setacl(struct rpc_rqst *req, struct xdr_stream *xdr,
+@@ -6377,9 +6442,10 @@ static void nfs4_xdr_enc_setacl(struct rpc_rqst *req, struct xdr_stream *xdr,
* Decode SETACL response
*/
static int
@@ -110558,7 +114459,7 @@ index 7bd3a5c0..0c408e8 100644
struct compound_hdr hdr;
int status;
-@@ -6399,9 +6465,10 @@ out:
+@@ -6401,9 +6467,10 @@ nfs4_xdr_dec_setacl(struct rpc_rqst *rqstp, struct xdr_stream *xdr,
* Decode GETACL response
*/
static int
@@ -110571,7 +114472,7 @@ index 7bd3a5c0..0c408e8 100644
struct compound_hdr hdr;
int status;
-@@ -6427,9 +6494,10 @@ out:
+@@ -6429,9 +6496,10 @@ nfs4_xdr_dec_getacl(struct rpc_rqst *rqstp, struct xdr_stream *xdr,
/*
* Decode CLOSE response
*/
@@ -110584,7 +114485,7 @@ index 7bd3a5c0..0c408e8 100644
struct compound_hdr hdr;
int status;
-@@ -6459,9 +6527,10 @@ out:
+@@ -6461,9 +6529,10 @@ static int nfs4_xdr_dec_close(struct rpc_rqst *rqstp, struct xdr_stream *xdr,
/*
* Decode OPEN response
*/
@@ -110597,7 +114498,7 @@ index 7bd3a5c0..0c408e8 100644
struct compound_hdr hdr;
int status;
-@@ -6490,9 +6559,9 @@ out:
+@@ -6492,9 +6561,9 @@ static int nfs4_xdr_dec_open(struct rpc_rqst *rqstp, struct xdr_stream *xdr,
/*
* Decode OPEN_CONFIRM response
*/
@@ -110609,7 +114510,7 @@ index 7bd3a5c0..0c408e8 100644
{
struct compound_hdr hdr;
int status;
-@@ -6511,10 +6580,11 @@ out:
+@@ -6513,10 +6582,11 @@ static int nfs4_xdr_dec_open_confirm(struct rpc_rqst *rqstp,
/*
* Decode OPEN response
*/
@@ -110623,7 +114524,7 @@ index 7bd3a5c0..0c408e8 100644
struct compound_hdr hdr;
int status;
-@@ -6540,10 +6610,11 @@ out:
+@@ -6542,10 +6612,11 @@ static int nfs4_xdr_dec_open_noattr(struct rpc_rqst *rqstp,
/*
* Decode SETATTR response
*/
@@ -110637,7 +114538,7 @@ index 7bd3a5c0..0c408e8 100644
struct compound_hdr hdr;
int status;
-@@ -6567,9 +6638,10 @@ out:
+@@ -6569,9 +6640,10 @@ static int nfs4_xdr_dec_setattr(struct rpc_rqst *rqstp,
/*
* Decode LOCK response
*/
@@ -110650,7 +114551,7 @@ index 7bd3a5c0..0c408e8 100644
struct compound_hdr hdr;
int status;
-@@ -6590,9 +6662,10 @@ out:
+@@ -6592,9 +6664,10 @@ static int nfs4_xdr_dec_lock(struct rpc_rqst *rqstp, struct xdr_stream *xdr,
/*
* Decode LOCKT response
*/
@@ -110663,7 +114564,7 @@ index 7bd3a5c0..0c408e8 100644
struct compound_hdr hdr;
int status;
-@@ -6613,9 +6686,10 @@ out:
+@@ -6615,9 +6688,10 @@ static int nfs4_xdr_dec_lockt(struct rpc_rqst *rqstp, struct xdr_stream *xdr,
/*
* Decode LOCKU response
*/
@@ -110676,7 +114577,7 @@ index 7bd3a5c0..0c408e8 100644
struct compound_hdr hdr;
int status;
-@@ -6633,7 +6707,7 @@ out:
+@@ -6635,7 +6709,7 @@ static int nfs4_xdr_dec_locku(struct rpc_rqst *rqstp, struct xdr_stream *xdr,
return status;
}
@@ -110685,7 +114586,7 @@ index 7bd3a5c0..0c408e8 100644
struct xdr_stream *xdr, void *dummy)
{
struct compound_hdr hdr;
-@@ -6648,10 +6722,11 @@ static int nfs4_xdr_dec_release_lockowner(struct rpc_rqst *rqstp,
+@@ -6650,10 +6724,11 @@ static int nfs4_xdr_dec_release_lockowner(struct rpc_rqst *rqstp,
/*
* Decode READLINK response
*/
@@ -110699,7 +114600,7 @@ index 7bd3a5c0..0c408e8 100644
struct compound_hdr hdr;
int status;
-@@ -6672,9 +6747,10 @@ out:
+@@ -6674,9 +6749,10 @@ static int nfs4_xdr_dec_readlink(struct rpc_rqst *rqstp,
/*
* Decode READDIR response
*/
@@ -110712,7 +114613,7 @@ index 7bd3a5c0..0c408e8 100644
struct compound_hdr hdr;
int status;
-@@ -6695,9 +6771,10 @@ out:
+@@ -6697,9 +6773,10 @@ static int nfs4_xdr_dec_readdir(struct rpc_rqst *rqstp, struct xdr_stream *xdr,
/*
* Decode Read response
*/
@@ -110725,7 +114626,7 @@ index 7bd3a5c0..0c408e8 100644
struct compound_hdr hdr;
int status;
-@@ -6721,9 +6798,10 @@ out:
+@@ -6723,9 +6800,10 @@ static int nfs4_xdr_dec_read(struct rpc_rqst *rqstp, struct xdr_stream *xdr,
/*
* Decode WRITE response
*/
@@ -110738,7 +114639,7 @@ index 7bd3a5c0..0c408e8 100644
struct compound_hdr hdr;
int status;
-@@ -6751,9 +6829,10 @@ out:
+@@ -6753,9 +6831,10 @@ static int nfs4_xdr_dec_write(struct rpc_rqst *rqstp, struct xdr_stream *xdr,
/*
* Decode COMMIT response
*/
@@ -110751,7 +114652,7 @@ index 7bd3a5c0..0c408e8 100644
struct compound_hdr hdr;
int status;
-@@ -6775,9 +6854,10 @@ out:
+@@ -6777,9 +6856,10 @@ static int nfs4_xdr_dec_commit(struct rpc_rqst *rqstp, struct xdr_stream *xdr,
/*
* Decode FSINFO response
*/
@@ -110764,7 +114665,7 @@ index 7bd3a5c0..0c408e8 100644
struct compound_hdr hdr;
int status;
-@@ -6794,9 +6874,10 @@ static int nfs4_xdr_dec_fsinfo(struct rpc_rqst *req, struct xdr_stream *xdr,
+@@ -6796,9 +6876,10 @@ static int nfs4_xdr_dec_fsinfo(struct rpc_rqst *req, struct xdr_stream *xdr,
/*
* Decode PATHCONF response
*/
@@ -110777,7 +114678,7 @@ index 7bd3a5c0..0c408e8 100644
struct compound_hdr hdr;
int status;
-@@ -6813,9 +6894,10 @@ static int nfs4_xdr_dec_pathconf(struct rpc_rqst *req, struct xdr_stream *xdr,
+@@ -6815,9 +6896,10 @@ static int nfs4_xdr_dec_pathconf(struct rpc_rqst *req, struct xdr_stream *xdr,
/*
* Decode STATFS response
*/
@@ -110790,7 +114691,7 @@ index 7bd3a5c0..0c408e8 100644
struct compound_hdr hdr;
int status;
-@@ -6832,10 +6914,11 @@ static int nfs4_xdr_dec_statfs(struct rpc_rqst *req, struct xdr_stream *xdr,
+@@ -6834,10 +6916,11 @@ static int nfs4_xdr_dec_statfs(struct rpc_rqst *req, struct xdr_stream *xdr,
/*
* Decode GETATTR_BITMAP response
*/
@@ -110804,7 +114705,7 @@ index 7bd3a5c0..0c408e8 100644
struct compound_hdr hdr;
int status;
-@@ -6856,7 +6939,7 @@ out:
+@@ -6858,7 +6941,7 @@ static int nfs4_xdr_dec_server_caps(struct rpc_rqst *req,
/*
* Decode RENEW response
*/
@@ -110813,7 +114714,7 @@ index 7bd3a5c0..0c408e8 100644
void *__unused)
{
struct compound_hdr hdr;
-@@ -6871,9 +6954,9 @@ static int nfs4_xdr_dec_renew(struct rpc_rqst *rqstp, struct xdr_stream *xdr,
+@@ -6873,9 +6956,9 @@ static int nfs4_xdr_dec_renew(struct rpc_rqst *rqstp, struct xdr_stream *xdr,
/*
* Decode SETCLIENTID response
*/
@@ -110825,7 +114726,7 @@ index 7bd3a5c0..0c408e8 100644
{
struct compound_hdr hdr;
int status;
-@@ -6887,8 +6970,9 @@ static int nfs4_xdr_dec_setclientid(struct rpc_rqst *req,
+@@ -6889,8 +6972,9 @@ static int nfs4_xdr_dec_setclientid(struct rpc_rqst *req,
/*
* Decode SETCLIENTID_CONFIRM response
*/
@@ -110837,7 +114738,7 @@ index 7bd3a5c0..0c408e8 100644
{
struct compound_hdr hdr;
int status;
-@@ -6902,10 +6986,11 @@ static int nfs4_xdr_dec_setclientid_confirm(struct rpc_rqst *req,
+@@ -6904,10 +6988,11 @@ static int nfs4_xdr_dec_setclientid_confirm(struct rpc_rqst *req,
/*
* Decode DELEGRETURN response
*/
@@ -110851,7 +114752,7 @@ index 7bd3a5c0..0c408e8 100644
struct compound_hdr hdr;
int status;
-@@ -6929,10 +7014,11 @@ out:
+@@ -6931,10 +7016,11 @@ static int nfs4_xdr_dec_delegreturn(struct rpc_rqst *rqstp,
/*
* Decode FS_LOCATIONS response
*/
@@ -110865,7 +114766,7 @@ index 7bd3a5c0..0c408e8 100644
struct compound_hdr hdr;
int status;
-@@ -6972,10 +7058,11 @@ out:
+@@ -6974,10 +7060,11 @@ static int nfs4_xdr_dec_fs_locations(struct rpc_rqst *req,
/*
* Decode SECINFO response
*/
@@ -110879,7 +114780,7 @@ index 7bd3a5c0..0c408e8 100644
struct compound_hdr hdr;
int status;
-@@ -6996,10 +7083,11 @@ out:
+@@ -6998,10 +7085,11 @@ static int nfs4_xdr_dec_secinfo(struct rpc_rqst *rqstp,
/*
* Decode FSID_PRESENT response
*/
@@ -110893,7 +114794,7 @@ index 7bd3a5c0..0c408e8 100644
struct compound_hdr hdr;
int status;
-@@ -7025,7 +7113,7 @@ out:
+@@ -7027,7 +7115,7 @@ static int nfs4_xdr_dec_fsid_present(struct rpc_rqst *rqstp,
/*
* Decode BIND_CONN_TO_SESSION response
*/
@@ -110902,7 +114803,7 @@ index 7bd3a5c0..0c408e8 100644
struct xdr_stream *xdr,
void *res)
{
-@@ -7041,7 +7129,7 @@ static int nfs4_xdr_dec_bind_conn_to_session(struct rpc_rqst *rqstp,
+@@ -7043,7 +7131,7 @@ static int nfs4_xdr_dec_bind_conn_to_session(struct rpc_rqst *rqstp,
/*
* Decode EXCHANGE_ID response
*/
@@ -110911,7 +114812,7 @@ index 7bd3a5c0..0c408e8 100644
struct xdr_stream *xdr,
void *res)
{
-@@ -7057,9 +7145,9 @@ static int nfs4_xdr_dec_exchange_id(struct rpc_rqst *rqstp,
+@@ -7059,9 +7147,9 @@ static int nfs4_xdr_dec_exchange_id(struct rpc_rqst *rqstp,
/*
* Decode CREATE_SESSION response
*/
@@ -110923,7 +114824,7 @@ index 7bd3a5c0..0c408e8 100644
{
struct compound_hdr hdr;
int status;
-@@ -7073,7 +7161,7 @@ static int nfs4_xdr_dec_create_session(struct rpc_rqst *rqstp,
+@@ -7075,7 +7163,7 @@ static int nfs4_xdr_dec_create_session(struct rpc_rqst *rqstp,
/*
* Decode DESTROY_SESSION response
*/
@@ -110932,7 +114833,7 @@ index 7bd3a5c0..0c408e8 100644
struct xdr_stream *xdr,
void *res)
{
-@@ -7089,7 +7177,7 @@ static int nfs4_xdr_dec_destroy_session(struct rpc_rqst *rqstp,
+@@ -7091,7 +7179,7 @@ static int nfs4_xdr_dec_destroy_session(struct rpc_rqst *rqstp,
/*
* Decode DESTROY_CLIENTID response
*/
@@ -110941,7 +114842,7 @@ index 7bd3a5c0..0c408e8 100644
struct xdr_stream *xdr,
void *res)
{
-@@ -7105,9 +7193,9 @@ static int nfs4_xdr_dec_destroy_clientid(struct rpc_rqst *rqstp,
+@@ -7107,9 +7195,9 @@ static int nfs4_xdr_dec_destroy_clientid(struct rpc_rqst *rqstp,
/*
* Decode SEQUENCE response
*/
@@ -110953,7 +114854,7 @@ index 7bd3a5c0..0c408e8 100644
{
struct compound_hdr hdr;
int status;
-@@ -7121,10 +7209,11 @@ static int nfs4_xdr_dec_sequence(struct rpc_rqst *rqstp,
+@@ -7123,10 +7211,11 @@ static int nfs4_xdr_dec_sequence(struct rpc_rqst *rqstp,
/*
* Decode GET_LEASE_TIME response
*/
@@ -110967,7 +114868,7 @@ index 7bd3a5c0..0c408e8 100644
struct compound_hdr hdr;
int status;
-@@ -7141,10 +7230,11 @@ static int nfs4_xdr_dec_get_lease_time(struct rpc_rqst *rqstp,
+@@ -7143,10 +7232,11 @@ static int nfs4_xdr_dec_get_lease_time(struct rpc_rqst *rqstp,
/*
* Decode RECLAIM_COMPLETE response
*/
@@ -110981,7 +114882,7 @@ index 7bd3a5c0..0c408e8 100644
struct compound_hdr hdr;
int status;
-@@ -7159,10 +7249,11 @@ static int nfs4_xdr_dec_reclaim_complete(struct rpc_rqst *rqstp,
+@@ -7161,10 +7251,11 @@ static int nfs4_xdr_dec_reclaim_complete(struct rpc_rqst *rqstp,
/*
* Decode GETDEVINFO response
*/
@@ -110995,7 +114896,7 @@ index 7bd3a5c0..0c408e8 100644
struct compound_hdr hdr;
int status;
-@@ -7180,10 +7271,11 @@ out:
+@@ -7182,10 +7273,11 @@ static int nfs4_xdr_dec_getdeviceinfo(struct rpc_rqst *rqstp,
/*
* Decode LAYOUTGET response
*/
@@ -111009,7 +114910,7 @@ index 7bd3a5c0..0c408e8 100644
struct compound_hdr hdr;
int status;
-@@ -7204,10 +7296,11 @@ out:
+@@ -7206,10 +7298,11 @@ static int nfs4_xdr_dec_layoutget(struct rpc_rqst *rqstp,
/*
* Decode LAYOUTRETURN response
*/
@@ -111023,7 +114924,7 @@ index 7bd3a5c0..0c408e8 100644
struct compound_hdr hdr;
int status;
-@@ -7228,10 +7321,11 @@ out:
+@@ -7230,10 +7323,11 @@ static int nfs4_xdr_dec_layoutreturn(struct rpc_rqst *rqstp,
/*
* Decode LAYOUTCOMMIT response
*/
@@ -111037,7 +114938,7 @@ index 7bd3a5c0..0c408e8 100644
struct compound_hdr hdr;
int status;
-@@ -7255,10 +7349,11 @@ out:
+@@ -7257,10 +7351,11 @@ static int nfs4_xdr_dec_layoutcommit(struct rpc_rqst *rqstp,
/*
* Decode SECINFO_NO_NAME response
*/
@@ -111051,7 +114952,7 @@ index 7bd3a5c0..0c408e8 100644
struct compound_hdr hdr;
int status;
-@@ -7279,10 +7374,11 @@ out:
+@@ -7281,10 +7376,11 @@ static int nfs4_xdr_dec_secinfo_no_name(struct rpc_rqst *rqstp,
/*
* Decode TEST_STATEID response
*/
@@ -111065,7 +114966,7 @@ index 7bd3a5c0..0c408e8 100644
struct compound_hdr hdr;
int status;
-@@ -7300,10 +7396,11 @@ out:
+@@ -7302,10 +7398,11 @@ static int nfs4_xdr_dec_test_stateid(struct rpc_rqst *rqstp,
/*
* Decode FREE_STATEID response
*/
@@ -111079,7 +114980,7 @@ index 7bd3a5c0..0c408e8 100644
struct compound_hdr hdr;
int status;
-@@ -7468,8 +7565,8 @@ nfs4_stat_to_errno(int stat)
+@@ -7470,8 +7567,8 @@ nfs4_stat_to_errno(int stat)
#define PROC(proc, argtype, restype) \
[NFSPROC4_CLNT_##proc] = { \
.p_proc = NFSPROC4_COMPOUND, \
@@ -111091,7 +114992,7 @@ index 7bd3a5c0..0c408e8 100644
.p_replen = NFS4_##restype##_sz, \
.p_statidx = NFSPROC4_CLNT_##proc, \
diff --git a/fs/nfs/read.c b/fs/nfs/read.c
-index 572e5b3..5245a0a 100644
+index defc923..67b8000 100644
--- a/fs/nfs/read.c
+++ b/fs/nfs/read.c
@@ -346,7 +346,7 @@ struct nfs_readdesc {
@@ -111184,7 +115085,7 @@ index d08cd88..5d74e50 100644
struct posix_acl *acl;
struct inode *inode;
svc_fh *fh;
-@@ -87,10 +88,10 @@ fail:
+@@ -87,10 +88,10 @@ static __be32 nfsacld_proc_getacl(struct svc_rqst * rqstp,
/*
* Set the Access and/or Default ACL of a file.
*/
@@ -111198,7 +115099,7 @@ index d08cd88..5d74e50 100644
struct inode *inode;
svc_fh *fh;
__be32 nfserr = 0;
-@@ -141,9 +142,10 @@ out_errno:
+@@ -141,9 +142,10 @@ static __be32 nfsacld_proc_setacl(struct svc_rqst * rqstp,
/*
* Check file attributes
*/
@@ -111390,7 +115291,7 @@ index 0c89034..36a8d76 100644
struct posix_acl *acl;
struct inode *inode;
svc_fh *fh;
-@@ -80,10 +81,10 @@ fail:
+@@ -80,10 +81,10 @@ static __be32 nfsd3_proc_getacl(struct svc_rqst * rqstp,
/*
* Set the Access and/or Default ACL of a file.
*/
@@ -111404,7 +115305,7 @@ index 0c89034..36a8d76 100644
struct inode *inode;
svc_fh *fh;
__be32 nfserr = 0;
-@@ -123,9 +124,10 @@ out:
+@@ -123,9 +124,10 @@ static __be32 nfsd3_proc_setacl(struct svc_rqst * rqstp,
/*
* XDR decode functions
*/
@@ -112501,7 +116402,7 @@ index dba2ff8..9ac9eba 100644
fh_put(&resp->fh2);
return 1;
diff --git a/fs/nfsd/nfs4callback.c b/fs/nfsd/nfs4callback.c
-index 04c68d9..cc49866 100644
+index 211dc2a..c8607c1 100644
--- a/fs/nfsd/nfs4callback.c
+++ b/fs/nfsd/nfs4callback.c
@@ -470,8 +470,7 @@ static int decode_cb_sequence4res(struct xdr_stream *xdr,
@@ -112580,19 +116481,49 @@ index 04c68d9..cc49866 100644
struct nfs4_cb_compound_hdr hdr;
int status;
-@@ -629,8 +632,8 @@ static int nfs4_xdr_dec_cb_layout(struct rpc_rqst *rqstp,
+@@ -632,10 +635,12 @@ static void encode_stateowner(struct xdr_stream *xdr, struct nfs4_stateowner *so
+ xdr_encode_opaque(p, so->so_owner.data, so->so_owner.len);
+ }
+
+-static void nfs4_xdr_enc_cb_notify_lock(struct rpc_rqst *req,
++static void nfs4_xdr_enc_cb_notify_lock(void *_req,
+ struct xdr_stream *xdr,
+- const struct nfsd4_callback *cb)
++ void *_cb)
+ {
++ struct rpc_rqst *req = _req;
++ const struct nfsd4_callback *cb = _cb;
+ const struct nfsd4_blocked_lock *nbl =
+ container_of(cb, struct nfsd4_blocked_lock, nbl_cb);
+ struct nfs4_lockowner *lo = (struct nfs4_lockowner *)nbl->nbl_lock.fl_owner;
+@@ -660,10 +665,12 @@ static void nfs4_xdr_enc_cb_notify_lock(struct rpc_rqst *req,
+ encode_cb_nops(&hdr);
+ }
+
+-static int nfs4_xdr_dec_cb_notify_lock(struct rpc_rqst *rqstp,
++static int nfs4_xdr_dec_cb_notify_lock(void *_rqstp,
+ struct xdr_stream *xdr,
+- struct nfsd4_callback *cb)
++ void *_cb)
+ {
++ struct rpc_rqst *rqstp = _rqstp;
++ struct nfsd4_callback *cb = _cb;
+ struct nfs4_cb_compound_hdr hdr;
+ int status;
+
+@@ -685,8 +692,8 @@ static int nfs4_xdr_dec_cb_notify_lock(struct rpc_rqst *rqstp,
#define PROC(proc, call, argtype, restype) \
[NFSPROC4_CLNT_##proc] = { \
.p_proc = NFSPROC4_CB_##call, \
- .p_encode = (kxdreproc_t)nfs4_xdr_enc_##argtype, \
- .p_decode = (kxdrdproc_t)nfs4_xdr_dec_##restype, \
-+ .p_encode = nfs4_xdr_enc_##argtype, \
-+ .p_decode = nfs4_xdr_dec_##restype, \
++ .p_encode = nfs4_xdr_enc_##argtype, \
++ .p_decode = nfs4_xdr_dec_##restype, \
.p_arglen = NFS4_enc_##argtype##_sz, \
.p_replen = NFS4_dec_##restype##_sz, \
.p_statidx = NFSPROC4_CB_##call, \
diff --git a/fs/nfsd/nfs4proc.c b/fs/nfsd/nfs4proc.c
-index 1fb2227..150c145 100644
+index abb09b5..973ae5f 100644
--- a/fs/nfsd/nfs4proc.c
+++ b/fs/nfsd/nfs4proc.c
@@ -358,8 +358,9 @@ copy_clientid(clientid_t *clid, struct nfsd4_session *session)
@@ -112665,7 +116596,7 @@ index 1fb2227..150c145 100644
struct svc_fh resfh;
__be32 status;
dev_t rdev;
-@@ -684,8 +694,9 @@ out:
+@@ -684,8 +694,9 @@ nfsd4_create(struct svc_rqst *rqstp, struct nfsd4_compound_state *cstate,
static __be32
nfsd4_getattr(struct svc_rqst *rqstp, struct nfsd4_compound_state *cstate,
@@ -112709,7 +116640,7 @@ index 1fb2227..150c145 100644
__be32 status;
read->rd_filp = NULL;
-@@ -789,8 +803,9 @@ out:
+@@ -789,8 +803,9 @@ nfsd4_read(struct svc_rqst *rqstp, struct nfsd4_compound_state *cstate,
static __be32
nfsd4_readdir(struct svc_rqst *rqstp, struct nfsd4_compound_state *cstate,
@@ -112798,7 +116729,7 @@ index 1fb2227..150c145 100644
stateid_t *stateid = &write->wr_stateid;
struct file *filp = NULL;
__be32 status = nfs_ok;
-@@ -1011,8 +1034,9 @@ nfsd4_write(struct svc_rqst *rqstp, struct nfsd4_compound_state *cstate,
+@@ -1048,8 +1071,9 @@ nfsd4_verify_copy(struct svc_rqst *rqstp, struct nfsd4_compound_state *cstate,
static __be32
nfsd4_clone(struct svc_rqst *rqstp, struct nfsd4_compound_state *cstate,
@@ -112809,7 +116740,18 @@ index 1fb2227..150c145 100644
struct file *src, *dst;
__be32 status;
-@@ -1075,23 +1099,28 @@ nfsd4_fallocate(struct svc_rqst *rqstp, struct nfsd4_compound_state *cstate,
+@@ -1069,8 +1093,9 @@ nfsd4_clone(struct svc_rqst *rqstp, struct nfsd4_compound_state *cstate,
+
+ static __be32
+ nfsd4_copy(struct svc_rqst *rqstp, struct nfsd4_compound_state *cstate,
+- struct nfsd4_copy *copy)
++ void *_copy)
+ {
++ struct nfsd4_copy *copy = _copy;
+ struct file *src, *dst;
+ __be32 status;
+ ssize_t bytes;
+@@ -1125,23 +1150,28 @@ nfsd4_fallocate(struct svc_rqst *rqstp, struct nfsd4_compound_state *cstate,
static __be32
nfsd4_allocate(struct svc_rqst *rqstp, struct nfsd4_compound_state *cstate,
@@ -112841,7 +116783,7 @@ index 1fb2227..150c145 100644
int whence;
__be32 status;
struct file *file;
-@@ -1138,8 +1167,9 @@ out:
+@@ -1188,8 +1218,9 @@ nfsd4_seek(struct svc_rqst *rqstp, struct nfsd4_compound_state *cstate,
*/
static __be32
_nfsd4_verify(struct svc_rqst *rqstp, struct nfsd4_compound_state *cstate,
@@ -112852,7 +116794,7 @@ index 1fb2227..150c145 100644
__be32 *buf, *p;
int count;
__be32 status;
-@@ -1196,8 +1226,9 @@ out_kfree:
+@@ -1246,8 +1277,9 @@ _nfsd4_verify(struct svc_rqst *rqstp, struct nfsd4_compound_state *cstate,
static __be32
nfsd4_nverify(struct svc_rqst *rqstp, struct nfsd4_compound_state *cstate,
@@ -112863,7 +116805,7 @@ index 1fb2227..150c145 100644
__be32 status;
status = _nfsd4_verify(rqstp, cstate, verify);
-@@ -1206,8 +1237,9 @@ nfsd4_nverify(struct svc_rqst *rqstp, struct nfsd4_compound_state *cstate,
+@@ -1256,8 +1288,9 @@ nfsd4_nverify(struct svc_rqst *rqstp, struct nfsd4_compound_state *cstate,
static __be32
nfsd4_verify(struct svc_rqst *rqstp, struct nfsd4_compound_state *cstate,
@@ -112874,7 +116816,7 @@ index 1fb2227..150c145 100644
__be32 status;
status = _nfsd4_verify(rqstp, cstate, verify);
-@@ -1235,8 +1267,9 @@ nfsd4_layout_verify(struct svc_export *exp, unsigned int layout_type)
+@@ -1285,8 +1318,9 @@ nfsd4_layout_verify(struct svc_export *exp, unsigned int layout_type)
static __be32
nfsd4_getdeviceinfo(struct svc_rqst *rqstp,
struct nfsd4_compound_state *cstate,
@@ -112885,7 +116827,7 @@ index 1fb2227..150c145 100644
const struct nfsd4_layout_ops *ops;
struct nfsd4_deviceid_map *map;
struct svc_export *exp;
-@@ -1281,8 +1314,9 @@ out:
+@@ -1331,8 +1365,9 @@ nfsd4_getdeviceinfo(struct svc_rqst *rqstp,
static __be32
nfsd4_layoutget(struct svc_rqst *rqstp,
struct nfsd4_compound_state *cstate,
@@ -112896,7 +116838,7 @@ index 1fb2227..150c145 100644
struct svc_fh *current_fh = &cstate->current_fh;
const struct nfsd4_layout_ops *ops;
struct nfs4_layout_stateid *ls;
-@@ -1361,8 +1395,9 @@ out:
+@@ -1411,8 +1446,9 @@ nfsd4_layoutget(struct svc_rqst *rqstp,
static __be32
nfsd4_layoutcommit(struct svc_rqst *rqstp,
struct nfsd4_compound_state *cstate,
@@ -112907,7 +116849,7 @@ index 1fb2227..150c145 100644
const struct nfsd4_layout_seg *seg = &lcp->lc_seg;
struct svc_fh *current_fh = &cstate->current_fh;
const struct nfsd4_layout_ops *ops;
-@@ -1425,8 +1460,9 @@ out:
+@@ -1475,8 +1511,9 @@ nfsd4_layoutcommit(struct svc_rqst *rqstp,
static __be32
nfsd4_layoutreturn(struct svc_rqst *rqstp,
struct nfsd4_compound_state *cstate,
@@ -112918,7 +116860,7 @@ index 1fb2227..150c145 100644
struct svc_fh *current_fh = &cstate->current_fh;
__be32 nfserr;
-@@ -1528,7 +1564,7 @@ struct nfsd4_operation {
+@@ -1578,7 +1615,7 @@ struct nfsd4_operation {
nfsd4op_rsize op_rsize_bop;
stateid_getter op_get_currentstateid;
stateid_setter op_set_currentstateid;
@@ -112927,7 +116869,7 @@ index 1fb2227..150c145 100644
static struct nfsd4_operation nfsd4_ops[];
-@@ -1636,10 +1672,10 @@ static void svcxdr_init_encode(struct svc_rqst *rqstp,
+@@ -1686,10 +1723,10 @@ static void svcxdr_init_encode(struct svc_rqst *rqstp,
* COMPOUND call.
*/
static __be32
@@ -112941,7 +116883,7 @@ index 1fb2227..150c145 100644
struct nfsd4_op *op;
struct nfsd4_operation *opdesc;
struct nfsd4_compound_state *cstate = &resp->cstate;
-@@ -1998,338 +2034,338 @@ static inline u32 nfsd4_layoutreturn_rsize(struct svc_rqst *rqstp, struct nfsd4_
+@@ -2060,344 +2097,344 @@ static inline u32 nfsd4_layoutreturn_rsize(struct svc_rqst *rqstp, struct nfsd4_
static struct nfsd4_operation nfsd4_ops[] = {
[OP_ACCESS] = {
@@ -113110,8 +117052,9 @@ index 1fb2227..150c145 100644
- .op_func = (nfsd4op_func)nfsd4_read,
+ .op_func = nfsd4_read,
.op_name = "OP_READ",
- .op_rsize_bop = (nfsd4op_rsize)nfsd4_read_rsize,
+- .op_rsize_bop = (nfsd4op_rsize)nfsd4_read_rsize,
- .op_get_currentstateid = (stateid_getter)nfsd4_get_readstateid,
++ .op_rsize_bop = nfsd4_read_rsize,
+ .op_get_currentstateid = nfsd4_get_readstateid,
},
[OP_READDIR] = {
@@ -113378,13 +117321,21 @@ index 1fb2227..150c145 100644
- .op_rsize_bop = (nfsd4op_rsize)nfsd4_only_status_rsize,
+ .op_rsize_bop = nfsd4_only_status_rsize,
},
+ [OP_COPY] = {
+- .op_func = (nfsd4op_func)nfsd4_copy,
++ .op_func = nfsd4_copy,
+ .op_flags = OP_MODIFIES_SOMETHING | OP_CACHEME,
+ .op_name = "OP_COPY",
+- .op_rsize_bop = (nfsd4op_rsize)nfsd4_copy_rsize,
++ .op_rsize_bop = nfsd4_copy_rsize,
+ },
[OP_SEEK] = {
- .op_func = (nfsd4op_func)nfsd4_seek,
+ .op_func = nfsd4_seek,
.op_name = "OP_SEEK",
},
};
-@@ -2406,17 +2442,17 @@ struct nfsd4_voidargs { int dummy; };
+@@ -2474,17 +2511,17 @@ struct nfsd4_voidargs { int dummy; };
static struct svc_procedure nfsd_procedures4[2] = {
[NFSPROC4_NULL] = {
@@ -113408,10 +117359,10 @@ index 1fb2227..150c145 100644
.pc_ressize = sizeof(struct nfsd4_compoundres),
.pc_release = nfsd4_release_compoundargs,
diff --git a/fs/nfsd/nfs4state.c b/fs/nfsd/nfs4state.c
-index 0fe31b4..89b42db 100644
+index a0dee8a..b6021ad 100644
--- a/fs/nfsd/nfs4state.c
+++ b/fs/nfsd/nfs4state.c
-@@ -2339,8 +2339,9 @@ static bool client_has_state(struct nfs4_client *clp)
+@@ -2417,8 +2417,9 @@ static bool client_has_state(struct nfs4_client *clp)
__be32
nfsd4_exchange_id(struct svc_rqst *rqstp,
struct nfsd4_compound_state *cstate,
@@ -113422,7 +117373,7 @@ index 0fe31b4..89b42db 100644
struct nfs4_client *conf, *new;
struct nfs4_client *unconf = NULL;
__be32 status;
-@@ -2634,8 +2635,9 @@ static __be32 nfsd4_check_cb_sec(struct nfsd4_cb_sec *cbs)
+@@ -2712,8 +2713,9 @@ static __be32 nfsd4_check_cb_sec(struct nfsd4_cb_sec *cbs)
__be32
nfsd4_create_session(struct svc_rqst *rqstp,
struct nfsd4_compound_state *cstate,
@@ -113433,7 +117384,7 @@ index 0fe31b4..89b42db 100644
struct sockaddr *sa = svc_addr(rqstp);
struct nfs4_client *conf, *unconf;
struct nfs4_client *old = NULL;
-@@ -2759,8 +2761,9 @@ static __be32 nfsd4_map_bcts_dir(u32 *dir)
+@@ -2837,8 +2839,9 @@ static __be32 nfsd4_map_bcts_dir(u32 *dir)
return nfserr_inval;
}
@@ -113444,7 +117395,7 @@ index 0fe31b4..89b42db 100644
struct nfsd4_session *session = cstate->session;
struct nfsd_net *nn = net_generic(SVC_NET(rqstp), nfsd_net_id);
__be32 status;
-@@ -2780,8 +2783,9 @@ __be32 nfsd4_backchannel_ctl(struct svc_rqst *rqstp, struct nfsd4_compound_state
+@@ -2858,8 +2861,9 @@ __be32 nfsd4_backchannel_ctl(struct svc_rqst *rqstp, struct nfsd4_compound_state
__be32 nfsd4_bind_conn_to_session(struct svc_rqst *rqstp,
struct nfsd4_compound_state *cstate,
@@ -113455,7 +117406,7 @@ index 0fe31b4..89b42db 100644
__be32 status;
struct nfsd4_conn *conn;
struct nfsd4_session *session;
-@@ -2823,8 +2827,9 @@ static bool nfsd4_compound_in_session(struct nfsd4_session *session, struct nfs4
+@@ -2901,8 +2905,9 @@ static bool nfsd4_compound_in_session(struct nfsd4_session *session, struct nfs4
__be32
nfsd4_destroy_session(struct svc_rqst *r,
struct nfsd4_compound_state *cstate,
@@ -113466,7 +117417,7 @@ index 0fe31b4..89b42db 100644
struct nfsd4_session *ses;
__be32 status;
int ref_held_by_me = 0;
-@@ -2920,8 +2925,9 @@ static bool nfsd4_request_too_big(struct svc_rqst *rqstp,
+@@ -2998,8 +3003,9 @@ static bool nfsd4_request_too_big(struct svc_rqst *rqstp,
__be32
nfsd4_sequence(struct svc_rqst *rqstp,
struct nfsd4_compound_state *cstate,
@@ -113477,7 +117428,7 @@ index 0fe31b4..89b42db 100644
struct nfsd4_compoundres *resp = rqstp->rq_resp;
struct xdr_stream *xdr = &resp->xdr;
struct nfsd4_session *session;
-@@ -3055,8 +3061,9 @@ nfsd4_sequence_done(struct nfsd4_compoundres *resp)
+@@ -3133,8 +3139,9 @@ nfsd4_sequence_done(struct nfsd4_compoundres *resp)
}
__be32
@@ -113488,7 +117439,7 @@ index 0fe31b4..89b42db 100644
struct nfs4_client *conf, *unconf;
struct nfs4_client *clp = NULL;
__be32 status = 0;
-@@ -3096,8 +3103,9 @@ out:
+@@ -3174,8 +3181,9 @@ nfsd4_destroy_clientid(struct svc_rqst *rqstp, struct nfsd4_compound_state *csta
}
__be32
@@ -113499,7 +117450,7 @@ index 0fe31b4..89b42db 100644
__be32 status = 0;
if (rc->rca_one_fs) {
-@@ -3134,8 +3142,9 @@ out:
+@@ -3212,8 +3220,9 @@ nfsd4_reclaim_complete(struct svc_rqst *rqstp, struct nfsd4_compound_state *csta
__be32
nfsd4_setclientid(struct svc_rqst *rqstp, struct nfsd4_compound_state *cstate,
@@ -113510,7 +117461,7 @@ index 0fe31b4..89b42db 100644
struct xdr_netobj clname = setclid->se_name;
nfs4_verifier clverifier = setclid->se_verf;
struct nfs4_client *conf, *new;
-@@ -3193,8 +3202,9 @@ out:
+@@ -3271,8 +3280,9 @@ nfsd4_setclientid(struct svc_rqst *rqstp, struct nfsd4_compound_state *cstate,
__be32
nfsd4_setclientid_confirm(struct svc_rqst *rqstp,
struct nfsd4_compound_state *cstate,
@@ -113521,7 +117472,7 @@ index 0fe31b4..89b42db 100644
struct nfs4_client *conf, *unconf;
struct nfs4_client *old = NULL;
nfs4_verifier confirm = setclientid_confirm->sc_confirm;
-@@ -4438,8 +4448,9 @@ void nfsd4_cleanup_open_state(struct nfsd4_compound_state *cstate,
+@@ -4519,8 +4529,9 @@ void nfsd4_cleanup_open_state(struct nfsd4_compound_state *cstate,
__be32
nfsd4_renew(struct svc_rqst *rqstp, struct nfsd4_compound_state *cstate,
@@ -113532,7 +117483,7 @@ index 0fe31b4..89b42db 100644
struct nfs4_client *clp;
__be32 status;
struct nfsd_net *nn = net_generic(SVC_NET(rqstp), nfsd_net_id);
-@@ -4889,8 +4900,9 @@ out:
+@@ -5006,8 +5017,9 @@ nfs4_preprocess_stateid_op(struct svc_rqst *rqstp,
*/
__be32
nfsd4_test_stateid(struct svc_rqst *rqstp, struct nfsd4_compound_state *cstate,
@@ -113543,7 +117494,7 @@ index 0fe31b4..89b42db 100644
struct nfsd4_test_stateid_id *stateid;
struct nfs4_client *cl = cstate->session->se_client;
-@@ -4929,8 +4941,9 @@ out:
+@@ -5046,8 +5058,9 @@ nfsd4_free_lock_stateid(stateid_t *stateid, struct nfs4_stid *s)
__be32
nfsd4_free_stateid(struct svc_rqst *rqstp, struct nfsd4_compound_state *cstate,
@@ -113554,7 +117505,7 @@ index 0fe31b4..89b42db 100644
stateid_t *stateid = &free_stateid->fr_stateid;
struct nfs4_stid *s;
struct nfs4_delegation *dp;
-@@ -5058,8 +5071,9 @@ static __be32 nfs4_preprocess_confirmed_seqid_op(struct nfsd4_compound_state *cs
+@@ -5175,8 +5188,9 @@ static __be32 nfs4_preprocess_confirmed_seqid_op(struct nfsd4_compound_state *cs
__be32
nfsd4_open_confirm(struct svc_rqst *rqstp, struct nfsd4_compound_state *cstate,
@@ -113565,7 +117516,7 @@ index 0fe31b4..89b42db 100644
__be32 status;
struct nfs4_openowner *oo;
struct nfs4_ol_stateid *stp;
-@@ -5127,8 +5141,9 @@ static inline void nfs4_stateid_downgrade(struct nfs4_ol_stateid *stp, u32 to_ac
+@@ -5244,8 +5258,9 @@ static inline void nfs4_stateid_downgrade(struct nfs4_ol_stateid *stp, u32 to_ac
__be32
nfsd4_open_downgrade(struct svc_rqst *rqstp,
struct nfsd4_compound_state *cstate,
@@ -113576,7 +117527,7 @@ index 0fe31b4..89b42db 100644
__be32 status;
struct nfs4_ol_stateid *stp;
struct nfsd_net *nn = net_generic(SVC_NET(rqstp), nfsd_net_id);
-@@ -5196,8 +5211,9 @@ static void nfsd4_close_open_stateid(struct nfs4_ol_stateid *s)
+@@ -5313,8 +5328,9 @@ static void nfsd4_close_open_stateid(struct nfs4_ol_stateid *s)
*/
__be32
nfsd4_close(struct svc_rqst *rqstp, struct nfsd4_compound_state *cstate,
@@ -113587,7 +117538,7 @@ index 0fe31b4..89b42db 100644
__be32 status;
struct nfs4_ol_stateid *stp;
struct net *net = SVC_NET(rqstp);
-@@ -5226,8 +5242,9 @@ out:
+@@ -5343,8 +5359,9 @@ nfsd4_close(struct svc_rqst *rqstp, struct nfsd4_compound_state *cstate,
__be32
nfsd4_delegreturn(struct svc_rqst *rqstp, struct nfsd4_compound_state *cstate,
@@ -113598,7 +117549,7 @@ index 0fe31b4..89b42db 100644
struct nfs4_delegation *dp;
stateid_t *stateid = &dr->dr_stateid;
struct nfs4_stid *s;
-@@ -5578,8 +5595,9 @@ out:
+@@ -5719,8 +5736,9 @@ lookup_or_create_lock_state(struct nfsd4_compound_state *cstate,
*/
__be32
nfsd4_lock(struct svc_rqst *rqstp, struct nfsd4_compound_state *cstate,
@@ -113609,7 +117560,7 @@ index 0fe31b4..89b42db 100644
struct nfs4_openowner *open_sop = NULL;
struct nfs4_lockowner *lock_sop = NULL;
struct nfs4_ol_stateid *lock_stp = NULL;
-@@ -5780,8 +5798,9 @@ static __be32 nfsd_test_lock(struct svc_rqst *rqstp, struct svc_fh *fhp, struct
+@@ -5952,8 +5970,9 @@ static __be32 nfsd_test_lock(struct svc_rqst *rqstp, struct svc_fh *fhp, struct
*/
__be32
nfsd4_lockt(struct svc_rqst *rqstp, struct nfsd4_compound_state *cstate,
@@ -113620,7 +117571,7 @@ index 0fe31b4..89b42db 100644
struct file_lock *file_lock = NULL;
struct nfs4_lockowner *lo = NULL;
__be32 status;
-@@ -5853,8 +5872,9 @@ out:
+@@ -6025,8 +6044,9 @@ nfsd4_lockt(struct svc_rqst *rqstp, struct nfsd4_compound_state *cstate,
__be32
nfsd4_locku(struct svc_rqst *rqstp, struct nfsd4_compound_state *cstate,
@@ -113631,7 +117582,7 @@ index 0fe31b4..89b42db 100644
struct nfs4_ol_stateid *stp;
struct file *filp = NULL;
struct file_lock *file_lock = NULL;
-@@ -5960,8 +5980,9 @@ check_for_locks(struct nfs4_file *fp, struct nfs4_lockowner *lowner)
+@@ -6132,8 +6152,9 @@ check_for_locks(struct nfs4_file *fp, struct nfs4_lockowner *lowner)
__be32
nfsd4_release_lockowner(struct svc_rqst *rqstp,
struct nfsd4_compound_state *cstate,
@@ -113642,7 +117593,7 @@ index 0fe31b4..89b42db 100644
clientid_t *clid = &rlockowner->rl_clientid;
struct nfs4_stateowner *sop;
struct nfs4_lockowner *lo = NULL;
-@@ -6920,26 +6941,34 @@ clear_current_stateid(struct nfsd4_compound_state *cstate)
+@@ -7114,26 +7135,34 @@ clear_current_stateid(struct nfsd4_compound_state *cstate)
* functions to set current state id
*/
void
@@ -113681,7 +117632,7 @@ index 0fe31b4..89b42db 100644
put_stateid(cstate, &lock->lk_resp_stateid);
}
-@@ -6948,49 +6977,65 @@ nfsd4_set_lockstateid(struct nfsd4_compound_state *cstate, struct nfsd4_lock *lo
+@@ -7142,49 +7171,65 @@ nfsd4_set_lockstateid(struct nfsd4_compound_state *cstate, struct nfsd4_lock *lo
*/
void
@@ -113756,7 +117707,7 @@ index 0fe31b4..89b42db 100644
get_stateid(cstate, &write->wr_stateid);
}
diff --git a/fs/nfsd/nfs4xdr.c b/fs/nfsd/nfs4xdr.c
-index 0aa0236..6381bd7 100644
+index c2d2895..76324ed 100644
--- a/fs/nfsd/nfs4xdr.c
+++ b/fs/nfsd/nfs4xdr.c
@@ -447,8 +447,9 @@ nfsd4_decode_fattr(struct nfsd4_compoundargs *argp, u32 *bmval,
@@ -113920,7 +117871,7 @@ index 0aa0236..6381bd7 100644
DECODE_HEAD;
READ_BUF(4);
-@@ -847,8 +864,9 @@ xdr_error:
+@@ -847,8 +864,9 @@ static __be32 nfsd4_decode_opaque(struct nfsd4_compoundargs *argp, struct xdr_ne
}
static __be32
@@ -114171,7 +118122,7 @@ index 0aa0236..6381bd7 100644
int i;
__be32 *p, status;
struct nfsd4_test_stateid_id *stateid;
-@@ -1504,8 +1543,9 @@ xdr_error:
+@@ -1504,8 +1543,9 @@ nfsd4_decode_test_stateid(struct nfsd4_compoundargs *argp, struct nfsd4_test_sta
goto out;
}
@@ -114263,6 +118214,17 @@ index 0aa0236..6381bd7 100644
}
static __be32
+-nfsd4_decode_copy(struct nfsd4_compoundargs *argp, struct nfsd4_copy *copy)
++nfsd4_decode_copy(struct nfsd4_compoundargs *argp, void *_copy)
+ {
++ struct nfsd4_copy *copy = _copy;
+ DECODE_HEAD;
+ unsigned int tmp;
+
+@@ -1718,8 +1766,9 @@ nfsd4_decode_copy(struct nfsd4_compoundargs *argp, struct nfsd4_copy *copy)
+ }
+
+ static __be32
-nfsd4_decode_seek(struct nfsd4_compoundargs *argp, struct nfsd4_seek *seek)
+nfsd4_decode_seek(struct nfsd4_compoundargs *argp, void *_seek)
{
@@ -114270,7 +118232,7 @@ index 0aa0236..6381bd7 100644
DECODE_HEAD;
status = nfsd4_decode_stateid(argp, &seek->seek_stateid);
-@@ -1723,88 +1771,88 @@ nfsd4_decode_notsupp(struct nfsd4_compoundargs *argp, void *p)
+@@ -1747,88 +1796,88 @@ nfsd4_decode_notsupp(struct nfsd4_compoundargs *argp, void *p)
typedef __be32(*nfsd4_dec)(struct nfsd4_compoundargs *argp, void *);
@@ -114406,7 +118368,7 @@ index 0aa0236..6381bd7 100644
/* new operations for NFSv4.2 */
- [OP_ALLOCATE] = (nfsd4_dec)nfsd4_decode_fallocate,
-- [OP_COPY] = (nfsd4_dec)nfsd4_decode_notsupp,
+- [OP_COPY] = (nfsd4_dec)nfsd4_decode_copy,
- [OP_COPY_NOTIFY] = (nfsd4_dec)nfsd4_decode_notsupp,
- [OP_DEALLOCATE] = (nfsd4_dec)nfsd4_decode_fallocate,
- [OP_IO_ADVISE] = (nfsd4_dec)nfsd4_decode_notsupp,
@@ -114419,7 +118381,7 @@ index 0aa0236..6381bd7 100644
- [OP_WRITE_SAME] = (nfsd4_dec)nfsd4_decode_notsupp,
- [OP_CLONE] = (nfsd4_dec)nfsd4_decode_clone,
+ [OP_ALLOCATE] = nfsd4_decode_fallocate,
-+ [OP_COPY] = nfsd4_decode_notsupp,
++ [OP_COPY] = nfsd4_decode_copy,
+ [OP_COPY_NOTIFY] = nfsd4_decode_notsupp,
+ [OP_DEALLOCATE] = nfsd4_decode_fallocate,
+ [OP_IO_ADVISE] = nfsd4_decode_notsupp,
@@ -114434,7 +118396,7 @@ index 0aa0236..6381bd7 100644
};
static inline bool
-@@ -3032,8 +3080,9 @@ nfsd4_encode_stateid(struct xdr_stream *xdr, stateid_t *sid)
+@@ -3056,8 +3105,9 @@ nfsd4_encode_stateid(struct xdr_stream *xdr, stateid_t *sid)
}
static __be32
@@ -114445,7 +118407,7 @@ index 0aa0236..6381bd7 100644
struct xdr_stream *xdr = &resp->xdr;
__be32 *p;
-@@ -3047,8 +3096,9 @@ nfsd4_encode_access(struct nfsd4_compoundres *resp, __be32 nfserr, struct nfsd4_
+@@ -3071,8 +3121,9 @@ nfsd4_encode_access(struct nfsd4_compoundres *resp, __be32 nfserr, struct nfsd4_
return nfserr;
}
@@ -114456,7 +118418,7 @@ index 0aa0236..6381bd7 100644
struct xdr_stream *xdr = &resp->xdr;
__be32 *p;
-@@ -3066,8 +3116,10 @@ static __be32 nfsd4_encode_bind_conn_to_session(struct nfsd4_compoundres *resp,
+@@ -3090,8 +3141,10 @@ static __be32 nfsd4_encode_bind_conn_to_session(struct nfsd4_compoundres *resp,
}
static __be32
@@ -114468,7 +118430,7 @@ index 0aa0236..6381bd7 100644
struct xdr_stream *xdr = &resp->xdr;
if (!nfserr)
-@@ -3078,8 +3130,9 @@ nfsd4_encode_close(struct nfsd4_compoundres *resp, __be32 nfserr, struct nfsd4_c
+@@ -3102,8 +3155,9 @@ nfsd4_encode_close(struct nfsd4_compoundres *resp, __be32 nfserr, struct nfsd4_c
static __be32
@@ -114479,7 +118441,7 @@ index 0aa0236..6381bd7 100644
struct xdr_stream *xdr = &resp->xdr;
__be32 *p;
-@@ -3094,8 +3147,9 @@ nfsd4_encode_commit(struct nfsd4_compoundres *resp, __be32 nfserr, struct nfsd4_
+@@ -3118,8 +3172,9 @@ nfsd4_encode_commit(struct nfsd4_compoundres *resp, __be32 nfserr, struct nfsd4_
}
static __be32
@@ -114490,7 +118452,7 @@ index 0aa0236..6381bd7 100644
struct xdr_stream *xdr = &resp->xdr;
__be32 *p;
-@@ -3111,8 +3165,9 @@ nfsd4_encode_create(struct nfsd4_compoundres *resp, __be32 nfserr, struct nfsd4_
+@@ -3135,8 +3190,9 @@ nfsd4_encode_create(struct nfsd4_compoundres *resp, __be32 nfserr, struct nfsd4_
}
static __be32
@@ -114501,7 +118463,7 @@ index 0aa0236..6381bd7 100644
struct svc_fh *fhp = getattr->ga_fhp;
struct xdr_stream *xdr = &resp->xdr;
-@@ -3126,8 +3181,9 @@ nfsd4_encode_getattr(struct nfsd4_compoundres *resp, __be32 nfserr, struct nfsd4
+@@ -3150,8 +3206,9 @@ nfsd4_encode_getattr(struct nfsd4_compoundres *resp, __be32 nfserr, struct nfsd4
}
static __be32
@@ -114512,7 +118474,7 @@ index 0aa0236..6381bd7 100644
struct xdr_stream *xdr = &resp->xdr;
struct svc_fh *fhp = *fhpp;
unsigned int len;
-@@ -3183,8 +3239,10 @@ again:
+@@ -3207,8 +3264,10 @@ nfsd4_encode_lock_denied(struct xdr_stream *xdr, struct nfsd4_lock_denied *ld)
}
static __be32
@@ -114524,7 +118486,7 @@ index 0aa0236..6381bd7 100644
struct xdr_stream *xdr = &resp->xdr;
if (!nfserr)
-@@ -3196,8 +3254,9 @@ nfsd4_encode_lock(struct nfsd4_compoundres *resp, __be32 nfserr, struct nfsd4_lo
+@@ -3220,8 +3279,9 @@ nfsd4_encode_lock(struct nfsd4_compoundres *resp, __be32 nfserr, struct nfsd4_lo
}
static __be32
@@ -114535,7 +118497,7 @@ index 0aa0236..6381bd7 100644
struct xdr_stream *xdr = &resp->xdr;
if (nfserr == nfserr_denied)
-@@ -3206,8 +3265,9 @@ nfsd4_encode_lockt(struct nfsd4_compoundres *resp, __be32 nfserr, struct nfsd4_l
+@@ -3230,8 +3290,9 @@ nfsd4_encode_lockt(struct nfsd4_compoundres *resp, __be32 nfserr, struct nfsd4_l
}
static __be32
@@ -114546,7 +118508,7 @@ index 0aa0236..6381bd7 100644
struct xdr_stream *xdr = &resp->xdr;
if (!nfserr)
-@@ -3218,8 +3278,9 @@ nfsd4_encode_locku(struct nfsd4_compoundres *resp, __be32 nfserr, struct nfsd4_l
+@@ -3242,8 +3303,9 @@ nfsd4_encode_locku(struct nfsd4_compoundres *resp, __be32 nfserr, struct nfsd4_l
static __be32
@@ -114557,7 +118519,7 @@ index 0aa0236..6381bd7 100644
struct xdr_stream *xdr = &resp->xdr;
__be32 *p;
-@@ -3234,8 +3295,9 @@ nfsd4_encode_link(struct nfsd4_compoundres *resp, __be32 nfserr, struct nfsd4_li
+@@ -3258,8 +3320,9 @@ nfsd4_encode_link(struct nfsd4_compoundres *resp, __be32 nfserr, struct nfsd4_li
static __be32
@@ -114568,7 +118530,7 @@ index 0aa0236..6381bd7 100644
struct xdr_stream *xdr = &resp->xdr;
__be32 *p;
-@@ -3332,8 +3394,10 @@ out:
+@@ -3356,8 +3419,10 @@ nfsd4_encode_open(struct nfsd4_compoundres *resp, __be32 nfserr, struct nfsd4_op
}
static __be32
@@ -114580,7 +118542,7 @@ index 0aa0236..6381bd7 100644
struct xdr_stream *xdr = &resp->xdr;
if (!nfserr)
-@@ -3343,8 +3407,10 @@ nfsd4_encode_open_confirm(struct nfsd4_compoundres *resp, __be32 nfserr, struct
+@@ -3367,8 +3432,10 @@ nfsd4_encode_open_confirm(struct nfsd4_compoundres *resp, __be32 nfserr, struct
}
static __be32
@@ -114592,7 +118554,7 @@ index 0aa0236..6381bd7 100644
struct xdr_stream *xdr = &resp->xdr;
if (!nfserr)
-@@ -3477,9 +3543,9 @@ static __be32 nfsd4_encode_readv(struct nfsd4_compoundres *resp,
+@@ -3501,9 +3568,9 @@ static __be32 nfsd4_encode_readv(struct nfsd4_compoundres *resp,
}
static __be32
@@ -114604,7 +118566,7 @@ index 0aa0236..6381bd7 100644
unsigned long maxcount;
struct xdr_stream *xdr = &resp->xdr;
struct file *file = read->rd_filp;
-@@ -3531,8 +3597,9 @@ out:
+@@ -3555,8 +3622,9 @@ nfsd4_encode_read(struct nfsd4_compoundres *resp, __be32 nfserr,
}
static __be32
@@ -114615,7 +118577,7 @@ index 0aa0236..6381bd7 100644
int maxcount;
__be32 wire_count;
int zero = 0;
-@@ -3576,8 +3643,9 @@ nfsd4_encode_readlink(struct nfsd4_compoundres *resp, __be32 nfserr, struct nfsd
+@@ -3600,8 +3668,9 @@ nfsd4_encode_readlink(struct nfsd4_compoundres *resp, __be32 nfserr, struct nfsd
}
static __be32
@@ -114626,7 +118588,7 @@ index 0aa0236..6381bd7 100644
int maxcount;
int bytes_left;
loff_t offset;
-@@ -3669,8 +3737,9 @@ err_no_verf:
+@@ -3693,8 +3762,9 @@ nfsd4_encode_readdir(struct nfsd4_compoundres *resp, __be32 nfserr, struct nfsd4
}
static __be32
@@ -114637,7 +118599,7 @@ index 0aa0236..6381bd7 100644
struct xdr_stream *xdr = &resp->xdr;
__be32 *p;
-@@ -3684,8 +3753,9 @@ nfsd4_encode_remove(struct nfsd4_compoundres *resp, __be32 nfserr, struct nfsd4_
+@@ -3708,8 +3778,9 @@ nfsd4_encode_remove(struct nfsd4_compoundres *resp, __be32 nfserr, struct nfsd4_
}
static __be32
@@ -114648,7 +118610,7 @@ index 0aa0236..6381bd7 100644
struct xdr_stream *xdr = &resp->xdr;
__be32 *p;
-@@ -3701,8 +3771,9 @@ nfsd4_encode_rename(struct nfsd4_compoundres *resp, __be32 nfserr, struct nfsd4_
+@@ -3725,8 +3796,9 @@ nfsd4_encode_rename(struct nfsd4_compoundres *resp, __be32 nfserr, struct nfsd4_
static __be32
nfsd4_do_encode_secinfo(struct xdr_stream *xdr,
@@ -114659,7 +118621,7 @@ index 0aa0236..6381bd7 100644
u32 i, nflavs, supported;
struct exp_flavor_info *flavs;
struct exp_flavor_info def_flavs[2];
-@@ -3777,8 +3848,9 @@ out:
+@@ -3801,8 +3873,9 @@ nfsd4_do_encode_secinfo(struct xdr_stream *xdr,
static __be32
nfsd4_encode_secinfo(struct nfsd4_compoundres *resp, __be32 nfserr,
@@ -114670,7 +118632,7 @@ index 0aa0236..6381bd7 100644
struct xdr_stream *xdr = &resp->xdr;
return nfsd4_do_encode_secinfo(xdr, nfserr, secinfo->si_exp);
-@@ -3786,8 +3858,9 @@ nfsd4_encode_secinfo(struct nfsd4_compoundres *resp, __be32 nfserr,
+@@ -3810,8 +3883,9 @@ nfsd4_encode_secinfo(struct nfsd4_compoundres *resp, __be32 nfserr,
static __be32
nfsd4_encode_secinfo_no_name(struct nfsd4_compoundres *resp, __be32 nfserr,
@@ -114681,7 +118643,7 @@ index 0aa0236..6381bd7 100644
struct xdr_stream *xdr = &resp->xdr;
return nfsd4_do_encode_secinfo(xdr, nfserr, secinfo->sin_exp);
-@@ -3798,8 +3871,9 @@ nfsd4_encode_secinfo_no_name(struct nfsd4_compoundres *resp, __be32 nfserr,
+@@ -3822,8 +3896,9 @@ nfsd4_encode_secinfo_no_name(struct nfsd4_compoundres *resp, __be32 nfserr,
* regardless of the error status.
*/
static __be32
@@ -114692,7 +118654,7 @@ index 0aa0236..6381bd7 100644
struct xdr_stream *xdr = &resp->xdr;
__be32 *p;
-@@ -3822,8 +3896,9 @@ nfsd4_encode_setattr(struct nfsd4_compoundres *resp, __be32 nfserr, struct nfsd4
+@@ -3846,8 +3921,9 @@ nfsd4_encode_setattr(struct nfsd4_compoundres *resp, __be32 nfserr, struct nfsd4
}
static __be32
@@ -114703,7 +118665,7 @@ index 0aa0236..6381bd7 100644
struct xdr_stream *xdr = &resp->xdr;
__be32 *p;
-@@ -3846,8 +3921,9 @@ nfsd4_encode_setclientid(struct nfsd4_compoundres *resp, __be32 nfserr, struct n
+@@ -3870,8 +3946,9 @@ nfsd4_encode_setclientid(struct nfsd4_compoundres *resp, __be32 nfserr, struct n
}
static __be32
@@ -114714,7 +118676,7 @@ index 0aa0236..6381bd7 100644
struct xdr_stream *xdr = &resp->xdr;
__be32 *p;
-@@ -3865,8 +3941,9 @@ nfsd4_encode_write(struct nfsd4_compoundres *resp, __be32 nfserr, struct nfsd4_w
+@@ -3889,8 +3966,9 @@ nfsd4_encode_write(struct nfsd4_compoundres *resp, __be32 nfserr, struct nfsd4_w
static __be32
nfsd4_encode_exchange_id(struct nfsd4_compoundres *resp, __be32 nfserr,
@@ -114725,7 +118687,7 @@ index 0aa0236..6381bd7 100644
struct xdr_stream *xdr = &resp->xdr;
__be32 *p;
char *major_id;
-@@ -3948,8 +4025,9 @@ out:
+@@ -3972,8 +4050,9 @@ nfsd4_encode_exchange_id(struct nfsd4_compoundres *resp, __be32 nfserr,
static __be32
nfsd4_encode_create_session(struct nfsd4_compoundres *resp, __be32 nfserr,
@@ -114736,7 +118698,7 @@ index 0aa0236..6381bd7 100644
struct xdr_stream *xdr = &resp->xdr;
__be32 *p;
-@@ -4004,8 +4082,9 @@ nfsd4_encode_create_session(struct nfsd4_compoundres *resp, __be32 nfserr,
+@@ -4028,8 +4107,9 @@ nfsd4_encode_create_session(struct nfsd4_compoundres *resp, __be32 nfserr,
static __be32
nfsd4_encode_sequence(struct nfsd4_compoundres *resp, __be32 nfserr,
@@ -114747,7 +118709,7 @@ index 0aa0236..6381bd7 100644
struct xdr_stream *xdr = &resp->xdr;
__be32 *p;
-@@ -4030,8 +4109,9 @@ nfsd4_encode_sequence(struct nfsd4_compoundres *resp, __be32 nfserr,
+@@ -4054,8 +4134,9 @@ nfsd4_encode_sequence(struct nfsd4_compoundres *resp, __be32 nfserr,
static __be32
nfsd4_encode_test_stateid(struct nfsd4_compoundres *resp, __be32 nfserr,
@@ -114758,7 +118720,7 @@ index 0aa0236..6381bd7 100644
struct xdr_stream *xdr = &resp->xdr;
struct nfsd4_test_stateid_id *stateid, *next;
__be32 *p;
-@@ -4053,9 +4133,9 @@ nfsd4_encode_test_stateid(struct nfsd4_compoundres *resp, __be32 nfserr,
+@@ -4077,9 +4158,9 @@ nfsd4_encode_test_stateid(struct nfsd4_compoundres *resp, __be32 nfserr,
#ifdef CONFIG_NFSD_PNFS
static __be32
@@ -114770,7 +118732,7 @@ index 0aa0236..6381bd7 100644
struct xdr_stream *xdr = &resp->xdr;
const struct nfsd4_layout_ops *ops =
nfsd4_layout_ops[gdev->gd_layout_type];
-@@ -4123,9 +4203,9 @@ toosmall:
+@@ -4147,9 +4228,9 @@ nfsd4_encode_getdeviceinfo(struct nfsd4_compoundres *resp, __be32 nfserr,
}
static __be32
@@ -114782,7 +118744,7 @@ index 0aa0236..6381bd7 100644
struct xdr_stream *xdr = &resp->xdr;
const struct nfsd4_layout_ops *ops =
nfsd4_layout_ops[lgp->lg_layout_type];
-@@ -4158,9 +4238,9 @@ out:
+@@ -4182,9 +4263,9 @@ nfsd4_encode_layoutget(struct nfsd4_compoundres *resp, __be32 nfserr,
}
static __be32
@@ -114794,7 +118756,7 @@ index 0aa0236..6381bd7 100644
struct xdr_stream *xdr = &resp->xdr;
__be32 *p;
-@@ -4182,9 +4262,9 @@ nfsd4_encode_layoutcommit(struct nfsd4_compoundres *resp, __be32 nfserr,
+@@ -4206,9 +4287,9 @@ nfsd4_encode_layoutcommit(struct nfsd4_compoundres *resp, __be32 nfserr,
}
static __be32
@@ -114806,7 +118768,19 @@ index 0aa0236..6381bd7 100644
struct xdr_stream *xdr = &resp->xdr;
__be32 *p;
-@@ -4203,8 +4283,9 @@ nfsd4_encode_layoutreturn(struct nfsd4_compoundres *resp, __be32 nfserr,
+@@ -4243,9 +4324,9 @@ nfsd42_encode_write_res(struct nfsd4_compoundres *resp, struct nfsd42_write_res
+ }
+
+ static __be32
+-nfsd4_encode_copy(struct nfsd4_compoundres *resp, __be32 nfserr,
+- struct nfsd4_copy *copy)
++nfsd4_encode_copy(struct nfsd4_compoundres *resp, __be32 nfserr, void *_copy)
+ {
++ struct nfsd4_copy *copy = _copy;
+ __be32 *p;
+
+ if (!nfserr) {
+@@ -4262,8 +4343,9 @@ nfsd4_encode_copy(struct nfsd4_compoundres *resp, __be32 nfserr,
static __be32
nfsd4_encode_seek(struct nfsd4_compoundres *resp, __be32 nfserr,
@@ -114817,7 +118791,7 @@ index 0aa0236..6381bd7 100644
__be32 *p;
if (nfserr)
-@@ -4231,87 +4312,87 @@ typedef __be32(* nfsd4_enc)(struct nfsd4_compoundres *, __be32, void *);
+@@ -4290,87 +4372,87 @@ typedef __be32(* nfsd4_enc)(struct nfsd4_compoundres *, __be32, void *);
* done in the decoding phase.
*/
static nfsd4_enc nfsd4_enc_ops[] = {
@@ -114951,7 +118925,7 @@ index 0aa0236..6381bd7 100644
/* NFSv4.2 operations */
- [OP_ALLOCATE] = (nfsd4_enc)nfsd4_encode_noop,
-- [OP_COPY] = (nfsd4_enc)nfsd4_encode_noop,
+- [OP_COPY] = (nfsd4_enc)nfsd4_encode_copy,
- [OP_COPY_NOTIFY] = (nfsd4_enc)nfsd4_encode_noop,
- [OP_DEALLOCATE] = (nfsd4_enc)nfsd4_encode_noop,
- [OP_IO_ADVISE] = (nfsd4_enc)nfsd4_encode_noop,
@@ -114964,7 +118938,7 @@ index 0aa0236..6381bd7 100644
- [OP_WRITE_SAME] = (nfsd4_enc)nfsd4_encode_noop,
- [OP_CLONE] = (nfsd4_enc)nfsd4_encode_noop,
+ [OP_ALLOCATE] = nfsd4_encode_noop,
-+ [OP_COPY] = nfsd4_encode_noop,
++ [OP_COPY] = nfsd4_encode_copy,
+ [OP_COPY_NOTIFY] = nfsd4_encode_noop,
+ [OP_DEALLOCATE] = nfsd4_encode_noop,
+ [OP_IO_ADVISE] = nfsd4_encode_noop,
@@ -114979,7 +118953,7 @@ index 0aa0236..6381bd7 100644
};
/*
-@@ -4436,9 +4517,9 @@ nfsd4_encode_replay(struct xdr_stream *xdr, struct nfsd4_op *op)
+@@ -4495,9 +4577,9 @@ nfsd4_encode_replay(struct xdr_stream *xdr, struct nfsd4_op *op)
}
int
@@ -114991,7 +118965,7 @@ index 0aa0236..6381bd7 100644
}
int nfsd4_release_compoundargs(void *rq, __be32 *p, void *resp)
-@@ -4461,8 +4542,11 @@ int nfsd4_release_compoundargs(void *rq, __be32 *p, void *resp)
+@@ -4520,8 +4602,11 @@ int nfsd4_release_compoundargs(void *rq, __be32 *p, void *resp)
}
int
@@ -115004,7 +118978,7 @@ index 0aa0236..6381bd7 100644
if (rqstp->rq_arg.head[0].iov_len % 4) {
/* client is nuts */
dprintk("%s: compound not properly padded! (peeraddr=%pISc xid=0x%x)",
-@@ -4482,11 +4566,13 @@ nfs4svc_decode_compoundargs(struct svc_rqst *rqstp, __be32 *p, struct nfsd4_comp
+@@ -4541,11 +4626,13 @@ nfs4svc_decode_compoundargs(struct svc_rqst *rqstp, __be32 *p, struct nfsd4_comp
}
int
@@ -115060,7 +119034,7 @@ index 54cde9a..ff5756c 100644
break;
case RC_REPLBUFF:
diff --git a/fs/nfsd/nfsproc.c b/fs/nfsd/nfsproc.c
-index e921476..fcda44c 100644
+index 010aff5..6471987 100644
--- a/fs/nfsd/nfsproc.c
+++ b/fs/nfsd/nfsproc.c
@@ -39,9 +39,11 @@ nfsd_return_dirop(__be32 err, struct nfsd_diropres *resp)
@@ -115091,7 +119065,7 @@ index e921476..fcda44c 100644
struct iattr *iap = &argp->attrs;
struct svc_fh *fhp;
__be32 nfserr;
-@@ -124,9 +128,11 @@ done:
+@@ -122,9 +126,11 @@ nfsd_proc_setattr(struct svc_rqst *rqstp, struct nfsd_sattrargs *argp,
* N.B. After this call resp->fh needs an fh_put
*/
static __be32
@@ -115105,7 +119079,7 @@ index e921476..fcda44c 100644
__be32 nfserr;
dprintk("nfsd: LOOKUP %s %.*s\n",
-@@ -144,9 +150,11 @@ nfsd_proc_lookup(struct svc_rqst *rqstp, struct nfsd_diropargs *argp,
+@@ -142,9 +148,11 @@ nfsd_proc_lookup(struct svc_rqst *rqstp, struct nfsd_diropargs *argp,
* Read a symlink.
*/
static __be32
@@ -115119,7 +119093,7 @@ index e921476..fcda44c 100644
__be32 nfserr;
dprintk("nfsd: READLINK %s\n", SVCFH_fmt(&argp->fh));
-@@ -164,9 +172,11 @@ nfsd_proc_readlink(struct svc_rqst *rqstp, struct nfsd_readlinkargs *argp,
+@@ -162,9 +170,11 @@ nfsd_proc_readlink(struct svc_rqst *rqstp, struct nfsd_readlinkargs *argp,
* N.B. After this call resp->fh needs an fh_put
*/
static __be32
@@ -115133,7 +119107,7 @@ index e921476..fcda44c 100644
__be32 nfserr;
dprintk("nfsd: READ %s %d bytes at %d\n",
-@@ -202,9 +212,11 @@ nfsd_proc_read(struct svc_rqst *rqstp, struct nfsd_readargs *argp,
+@@ -200,9 +210,11 @@ nfsd_proc_read(struct svc_rqst *rqstp, struct nfsd_readargs *argp,
* N.B. After this call resp->fh needs an fh_put
*/
static __be32
@@ -115147,7 +119121,7 @@ index e921476..fcda44c 100644
__be32 nfserr;
int stable = 1;
unsigned long cnt = argp->len;
-@@ -228,9 +240,11 @@ nfsd_proc_write(struct svc_rqst *rqstp, struct nfsd_writeargs *argp,
+@@ -226,9 +238,11 @@ nfsd_proc_write(struct svc_rqst *rqstp, struct nfsd_writeargs *argp,
* N.B. After this call _both_ argp->fh and resp->fh need an fh_put
*/
static __be32
@@ -115161,7 +119135,7 @@ index e921476..fcda44c 100644
svc_fh *dirfhp = &argp->fh;
svc_fh *newfhp = &resp->fh;
struct iattr *attr = &argp->attrs;
-@@ -383,9 +397,10 @@ done:
+@@ -381,9 +395,10 @@ nfsd_proc_create(struct svc_rqst *rqstp, struct nfsd_createargs *argp,
}
static __be32
@@ -115173,7 +119147,7 @@ index e921476..fcda44c 100644
__be32 nfserr;
dprintk("nfsd: REMOVE %s %.*s\n", SVCFH_fmt(&argp->fh),
-@@ -398,9 +413,10 @@ nfsd_proc_remove(struct svc_rqst *rqstp, struct nfsd_diropargs *argp,
+@@ -396,9 +411,10 @@ nfsd_proc_remove(struct svc_rqst *rqstp, struct nfsd_diropargs *argp,
}
static __be32
@@ -115185,7 +119159,7 @@ index e921476..fcda44c 100644
__be32 nfserr;
dprintk("nfsd: RENAME %s %.*s -> \n",
-@@ -416,9 +432,10 @@ nfsd_proc_rename(struct svc_rqst *rqstp, struct nfsd_renameargs *argp,
+@@ -414,9 +430,10 @@ nfsd_proc_rename(struct svc_rqst *rqstp, struct nfsd_renameargs *argp,
}
static __be32
@@ -115197,7 +119171,7 @@ index e921476..fcda44c 100644
__be32 nfserr;
dprintk("nfsd: LINK %s ->\n",
-@@ -436,9 +453,10 @@ nfsd_proc_link(struct svc_rqst *rqstp, struct nfsd_linkargs *argp,
+@@ -434,9 +451,10 @@ nfsd_proc_link(struct svc_rqst *rqstp, struct nfsd_linkargs *argp,
}
static __be32
@@ -115209,7 +119183,7 @@ index e921476..fcda44c 100644
struct svc_fh newfh;
__be32 nfserr;
-@@ -466,9 +484,11 @@ nfsd_proc_symlink(struct svc_rqst *rqstp, struct nfsd_symlinkargs *argp,
+@@ -464,9 +482,11 @@ nfsd_proc_symlink(struct svc_rqst *rqstp, struct nfsd_symlinkargs *argp,
* N.B. After this call resp->fh needs an fh_put
*/
static __be32
@@ -115223,7 +119197,7 @@ index e921476..fcda44c 100644
__be32 nfserr;
dprintk("nfsd: MKDIR %s %.*s\n", SVCFH_fmt(&argp->fh), argp->len, argp->name);
-@@ -490,9 +510,10 @@ nfsd_proc_mkdir(struct svc_rqst *rqstp, struct nfsd_createargs *argp,
+@@ -488,9 +508,10 @@ nfsd_proc_mkdir(struct svc_rqst *rqstp, struct nfsd_createargs *argp,
* Remove a directory
*/
static __be32
@@ -115235,7 +119209,7 @@ index e921476..fcda44c 100644
__be32 nfserr;
dprintk("nfsd: RMDIR %s %.*s\n", SVCFH_fmt(&argp->fh), argp->len, argp->name);
-@@ -506,9 +527,11 @@ nfsd_proc_rmdir(struct svc_rqst *rqstp, struct nfsd_diropargs *argp,
+@@ -504,9 +525,11 @@ nfsd_proc_rmdir(struct svc_rqst *rqstp, struct nfsd_diropargs *argp,
* Read a portion of a directory.
*/
static __be32
@@ -115249,7 +119223,7 @@ index e921476..fcda44c 100644
int count;
__be32 nfserr;
loff_t offset;
-@@ -546,9 +569,11 @@ nfsd_proc_readdir(struct svc_rqst *rqstp, struct nfsd_readdirargs *argp,
+@@ -544,9 +567,11 @@ nfsd_proc_readdir(struct svc_rqst *rqstp, struct nfsd_readdirargs *argp,
* Get file system info
*/
static __be32
@@ -115263,7 +119237,7 @@ index e921476..fcda44c 100644
__be32 nfserr;
dprintk("nfsd: STATFS %s\n", SVCFH_fmt(&argp->fh));
-@@ -571,166 +596,166 @@ struct nfsd_void { int dummy; };
+@@ -569,166 +594,166 @@ struct nfsd_void { int dummy; };
static struct svc_procedure nfsd_procedures2[18] = {
[NFSPROC_NULL] = {
@@ -115741,10 +119715,10 @@ index 41b468a..44e3e32 100644
return 1;
}
diff --git a/fs/nfsd/vfs.c b/fs/nfsd/vfs.c
-index ff476e6..08ef362 100644
+index 8ca642f..ff8523c 100644
--- a/fs/nfsd/vfs.c
+++ b/fs/nfsd/vfs.c
-@@ -870,7 +870,7 @@ __be32 nfsd_readv(struct file *file, loff_t offset, struct kvec *vec, int vlen,
+@@ -886,7 +886,7 @@ __be32 nfsd_readv(struct file *file, loff_t offset, struct kvec *vec, int vlen,
oldfs = get_fs();
set_fs(KERNEL_DS);
@@ -115753,7 +119727,7 @@ index ff476e6..08ef362 100644
set_fs(oldfs);
return nfsd_finish_read(file, count, host_err);
}
-@@ -960,7 +960,7 @@ nfsd_vfs_write(struct svc_rqst *rqstp, struct svc_fh *fhp, struct file *file,
+@@ -976,7 +976,7 @@ nfsd_vfs_write(struct svc_rqst *rqstp, struct svc_fh *fhp, struct file *file,
/* Write the data. */
oldfs = get_fs(); set_fs(KERNEL_DS);
@@ -115762,7 +119736,7 @@ index ff476e6..08ef362 100644
set_fs(oldfs);
if (host_err < 0)
goto out_nfserr;
-@@ -1459,7 +1459,7 @@ nfsd_readlink(struct svc_rqst *rqstp, struct svc_fh *fhp, char *buf, int *lenp)
+@@ -1475,7 +1475,7 @@ nfsd_readlink(struct svc_rqst *rqstp, struct svc_fh *fhp, char *buf, int *lenp)
*/
oldfs = get_fs(); set_fs(KERNEL_DS);
@@ -115947,10 +119921,10 @@ index 335e04a..d77a9c9 100644
int namlen, loff_t offset, u64 ino,
unsigned int);
diff --git a/fs/nfsd/xdr4.h b/fs/nfsd/xdr4.h
-index beea0c5..7f3699d 100644
+index 8fda4ab..a9433dc 100644
--- a/fs/nfsd/xdr4.h
+++ b/fs/nfsd/xdr4.h
-@@ -659,11 +659,9 @@ set_change_info(struct nfsd4_change_info *cinfo, struct svc_fh *fhp)
+@@ -682,11 +682,9 @@ set_change_info(struct nfsd4_change_info *cinfo, struct svc_fh *fhp)
bool nfsd4_mach_creds_match(struct nfs4_client *cl, struct svc_rqst *rqstp);
@@ -115965,7 +119939,7 @@ index beea0c5..7f3699d 100644
__be32 nfsd4_check_resp_size(struct nfsd4_compoundres *, u32);
void nfsd4_encode_operation(struct nfsd4_compoundres *, struct nfsd4_op *);
void nfsd4_encode_replay(struct xdr_stream *xdr, struct nfsd4_op *op);
-@@ -673,26 +671,26 @@ __be32 nfsd4_encode_fattr_to_buf(__be32 **p, int words,
+@@ -696,26 +694,26 @@ __be32 nfsd4_encode_fattr_to_buf(__be32 **p, int words,
u32 *bmval, struct svc_rqst *, int ignore_crossmnt);
extern __be32 nfsd4_setclientid(struct svc_rqst *rqstp,
struct nfsd4_compound_state *,
@@ -116002,7 +119976,7 @@ index beea0c5..7f3699d 100644
extern __be32 nfsd4_process_open1(struct nfsd4_compound_state *,
struct nfsd4_open *open, struct nfsd_net *nn);
extern __be32 nfsd4_process_open2(struct svc_rqst *rqstp,
-@@ -701,34 +699,34 @@ extern void nfsd4_cstate_clear_replay(struct nfsd4_compound_state *cstate);
+@@ -724,34 +722,34 @@ extern void nfsd4_cstate_clear_replay(struct nfsd4_compound_state *cstate);
extern void nfsd4_cleanup_open_state(struct nfsd4_compound_state *cstate,
struct nfsd4_open *open);
extern __be32 nfsd4_open_confirm(struct svc_rqst *rqstp,
@@ -116224,7 +120198,7 @@ index a80a741..f28c9c9 100644
}
diff --git a/fs/notify/fanotify/fanotify_user.c b/fs/notify/fanotify/fanotify_user.c
-index a643138..4b88993 100644
+index 7ebfca6..1d88503 100644
--- a/fs/notify/fanotify/fanotify_user.c
+++ b/fs/notify/fanotify/fanotify_user.c
@@ -216,8 +216,8 @@ static ssize_t copy_event_to_user(struct fsnotify_group *group,
@@ -116239,7 +120213,7 @@ index a643138..4b88993 100644
#ifdef CONFIG_FANOTIFY_ACCESS_PERMISSIONS
diff --git a/fs/notify/notification.c b/fs/notify/notification.c
-index e455e83..6e2b732 100644
+index 66f85c6..c5d1410 100644
--- a/fs/notify/notification.c
+++ b/fs/notify/notification.c
@@ -48,7 +48,7 @@
@@ -116289,10 +120263,10 @@ index 61bf091..6ac5619 100644
const char *fmt, ...);
#define ntfs_error(sb, f, a...) __ntfs_error(__func__, sb, f, ##a)
diff --git a/fs/ntfs/dir.c b/fs/ntfs/dir.c
-index a186135..31eb358 100644
+index 0ee19ec..4f70c50 100644
--- a/fs/ntfs/dir.c
+++ b/fs/ntfs/dir.c
-@@ -1310,7 +1310,7 @@ find_next_index_buffer:
+@@ -1310,7 +1310,7 @@ static int ntfs_readdir(struct file *file, struct dir_context *actor)
ia = (INDEX_ALLOCATION*)(kaddr + (ia_pos & ~PAGE_MASK &
~(s64)(ndir->itype.index.block_size - 1)));
/* Bounds checks. */
@@ -116311,7 +120285,7 @@ index a186135..31eb358 100644
write_inode_now(bmp_vi, !datasync);
iput(bmp_vi);
diff --git a/fs/ntfs/inode.c b/fs/ntfs/inode.c
-index e01287c..9939db2 100644
+index 7c410f8..ff7028d 100644
--- a/fs/ntfs/inode.c
+++ b/fs/ntfs/inode.c
@@ -57,8 +57,9 @@
@@ -116393,7 +120367,7 @@ index b3c3469..17208ad 100644
extern struct inode *ntfs_iget(struct super_block *sb, unsigned long mft_no);
extern struct inode *ntfs_attr_iget(struct inode *base_vi, ATTR_TYPE type,
diff --git a/fs/ntfs/mft.c b/fs/ntfs/mft.c
-index d15d492..c75f95ad 100644
+index d3c0096..b9a2058 100644
--- a/fs/ntfs/mft.c
+++ b/fs/ntfs/mft.c
@@ -963,7 +963,7 @@ bool ntfs_may_write_mft_record(ntfs_volume *vol, const unsigned long mft_no,
@@ -116524,7 +120498,7 @@ index e7b760d..f8cd0ad 100644
/* Lists: Dirty=Empty Purge=InUse PendingASTs=Empty ... */
out += snprintf(buf + out, len - out,
diff --git a/fs/ocfs2/dlm/dlmdomain.c b/fs/ocfs2/dlm/dlmdomain.c
-index 533bd52..3a9d64a 100644
+index 733e4e7..0982cdf 100644
--- a/fs/ocfs2/dlm/dlmdomain.c
+++ b/fs/ocfs2/dlm/dlmdomain.c
@@ -2055,10 +2055,10 @@ static struct dlm_ctxt *dlm_alloc_ctxt(const char *domain,
@@ -116541,7 +120515,7 @@ index 533bd52..3a9d64a 100644
}
diff --git a/fs/ocfs2/dlm/dlmmaster.c b/fs/ocfs2/dlm/dlmmaster.c
-index 6ea06f8..6789716 100644
+index 3f828a1..8a371db 100644
--- a/fs/ocfs2/dlm/dlmmaster.c
+++ b/fs/ocfs2/dlm/dlmmaster.c
@@ -303,7 +303,7 @@ static void dlm_init_mle(struct dlm_master_list_entry *mle,
@@ -116563,7 +120537,7 @@ index 6ea06f8..6789716 100644
/* just for consistency */
diff --git a/fs/ocfs2/dlmfs/dlmfs.c b/fs/ocfs2/dlmfs/dlmfs.c
-index ef474cd..a5cc6a6 100644
+index 1079fae..47e08e4 100644
--- a/fs/ocfs2/dlmfs/dlmfs.c
+++ b/fs/ocfs2/dlmfs/dlmfs.c
@@ -88,13 +88,13 @@ struct workqueue_struct *user_dlm_worker;
@@ -116688,7 +120662,7 @@ index 6ad3533..053f29d 100644
}
}
diff --git a/fs/ocfs2/super.c b/fs/ocfs2/super.c
-index 603b28d..a9818bd0 100644
+index f56fe39..0b379b9 100644
--- a/fs/ocfs2/super.c
+++ b/fs/ocfs2/super.c
@@ -306,11 +306,11 @@ static int ocfs2_osb_dump(struct ocfs2_super *osb, char *buf, int len)
@@ -116726,7 +120700,7 @@ index 603b28d..a9818bd0 100644
/* Copy the blockcheck stats from the superblock probe */
osb->osb_ecc_stats = *stats;
diff --git a/fs/open.c b/fs/open.c
-index 4fd6e25..fff35d4 100644
+index d3ed817..d6038021 100644
--- a/fs/open.c
+++ b/fs/open.c
@@ -32,6 +32,8 @@
@@ -116738,7 +120712,7 @@ index 4fd6e25..fff35d4 100644
#include "internal.h"
int do_truncate(struct dentry *dentry, loff_t length, unsigned int time_attrs,
-@@ -105,6 +107,8 @@ long vfs_truncate(const struct path *path, loff_t length)
+@@ -116,6 +118,8 @@ long vfs_truncate(const struct path *path, loff_t length)
error = locks_verify_truncate(inode, NULL, length);
if (!error)
error = security_path_truncate(path);
@@ -116747,7 +120721,7 @@ index 4fd6e25..fff35d4 100644
if (!error)
error = do_truncate(path->dentry, length, 0, NULL);
-@@ -189,6 +193,8 @@ static long do_sys_ftruncate(unsigned int fd, loff_t length, int small)
+@@ -200,6 +204,8 @@ static long do_sys_ftruncate(unsigned int fd, loff_t length, int small)
error = locks_verify_truncate(inode, f.file, length);
if (!error)
error = security_path_truncate(&f.file->f_path);
@@ -116756,7 +120730,7 @@ index 4fd6e25..fff35d4 100644
if (!error)
error = do_truncate(dentry, length, ATTR_MTIME|ATTR_CTIME, f.file);
sb_end_write(inode->i_sb);
-@@ -398,6 +404,9 @@ retry:
+@@ -415,6 +421,9 @@ SYSCALL_DEFINE3(faccessat, int, dfd, const char __user *, filename, int, mode)
if (__mnt_is_readonly(path.mnt))
res = -EROFS;
@@ -116766,7 +120740,7 @@ index 4fd6e25..fff35d4 100644
out_path_release:
path_put(&path);
if (retry_estale(res, lookup_flags)) {
-@@ -429,6 +438,8 @@ retry:
+@@ -446,6 +455,8 @@ SYSCALL_DEFINE1(chdir, const char __user *, filename)
if (error)
goto dput_and_out;
@@ -116775,7 +120749,7 @@ index 4fd6e25..fff35d4 100644
set_fs_pwd(current->fs, &path);
dput_and_out:
-@@ -458,6 +469,13 @@ SYSCALL_DEFINE1(fchdir, unsigned int, fd)
+@@ -475,6 +486,13 @@ SYSCALL_DEFINE1(fchdir, unsigned int, fd)
goto out_putf;
error = inode_permission(inode, MAY_EXEC | MAY_CHDIR);
@@ -116789,7 +120763,7 @@ index 4fd6e25..fff35d4 100644
if (!error)
set_fs_pwd(current->fs, &f.file->f_path);
out_putf:
-@@ -487,7 +505,13 @@ retry:
+@@ -504,7 +522,13 @@ SYSCALL_DEFINE1(chroot, const char __user *, filename)
if (error)
goto dput_and_out;
@@ -116803,7 +120777,7 @@ index 4fd6e25..fff35d4 100644
error = 0;
dput_and_out:
path_put(&path);
-@@ -511,6 +535,16 @@ static int chmod_common(const struct path *path, umode_t mode)
+@@ -528,6 +552,16 @@ static int chmod_common(const struct path *path, umode_t mode)
return error;
retry_deleg:
inode_lock(inode);
@@ -116820,7 +120794,7 @@ index 4fd6e25..fff35d4 100644
error = security_path_chmod(path, mode);
if (error)
goto out_unlock;
-@@ -576,6 +610,9 @@ static int chown_common(const struct path *path, uid_t user, gid_t group)
+@@ -593,6 +627,9 @@ static int chown_common(const struct path *path, uid_t user, gid_t group)
uid = make_kuid(current_user_ns(), user);
gid = make_kgid(current_user_ns(), group);
@@ -116830,7 +120804,7 @@ index 4fd6e25..fff35d4 100644
retry_deleg:
newattrs.ia_valid = ATTR_CTIME;
if (user != (uid_t) -1) {
-@@ -1040,6 +1077,7 @@ long do_sys_open(int dfd, const char __user *filename, int flags, umode_t mode)
+@@ -1057,6 +1094,7 @@ long do_sys_open(int dfd, const char __user *filename, int flags, umode_t mode)
} else {
fsnotify_open(f);
fd_install(fd, f);
@@ -116839,10 +120813,10 @@ index 4fd6e25..fff35d4 100644
}
putname(tmp);
diff --git a/fs/orangefs/super.c b/fs/orangefs/super.c
-index b9da9a0..e146758 100644
+index c48859f..d6ff862 100644
--- a/fs/orangefs/super.c
+++ b/fs/orangefs/super.c
-@@ -539,10 +539,12 @@ void orangefs_kill_sb(struct super_block *sb)
+@@ -566,10 +566,12 @@ void orangefs_kill_sb(struct super_block *sb)
int orangefs_inode_cache_initialize(void)
{
@@ -116856,21 +120830,8 @@ index b9da9a0..e146758 100644
orangefs_inode_cache_ctor);
if (!orangefs_inode_cache) {
-diff --git a/fs/overlayfs/copy_up.c b/fs/overlayfs/copy_up.c
-index 767377e..2e4b2e8 100644
---- a/fs/overlayfs/copy_up.c
-+++ b/fs/overlayfs/copy_up.c
-@@ -199,7 +199,7 @@ static char *ovl_read_symlink(struct dentry *realdentry)
- set_fs(get_ds());
- /* The cast to a user pointer is valid due to the set_fs() */
- res = inode->i_op->readlink(realdentry,
-- (char __user *)buf, PAGE_SIZE - 1);
-+ (char __force_user *)buf, PAGE_SIZE - 1);
- set_fs(old_fs);
- if (res < 0) {
- free_page((unsigned long) buf);
diff --git a/fs/overlayfs/super.c b/fs/overlayfs/super.c
-index 78be4ae..37a3935 100644
+index 0e10085..3eb64b2 100644
--- a/fs/overlayfs/super.c
+++ b/fs/overlayfs/super.c
@@ -148,8 +148,8 @@ struct dentry *ovl_dentry_real(struct dentry *dentry)
@@ -116902,7 +120863,7 @@ index 78be4ae..37a3935 100644
if (!S_ISDIR(upperinode->i_mode))
__insert_inode_hash(inode, (unsigned long) upperinode);
}
-@@ -1122,8 +1122,8 @@ static const struct xattr_handler *ovl_xattr_handlers[] = {
+@@ -1133,8 +1133,8 @@ static const struct xattr_handler *ovl_xattr_handlers[] = {
static int ovl_fill_super(struct super_block *sb, void *data, int silent)
{
@@ -116914,7 +120875,7 @@ index 78be4ae..37a3935 100644
struct inode *realinode;
struct ovl_entry *oe;
diff --git a/fs/pipe.c b/fs/pipe.c
-index 4ebe6b2..b3752f2 100644
+index 8e0d9f2..50c72462 100644
--- a/fs/pipe.c
+++ b/fs/pipe.c
@@ -37,7 +37,7 @@ unsigned int pipe_max_size = 1048576;
@@ -116944,7 +120905,7 @@ index 4ebe6b2..b3752f2 100644
mutex_unlock(&pipe->mutex);
}
EXPORT_SYMBOL(pipe_unlock);
-@@ -312,9 +312,9 @@ pipe_read(struct kiocb *iocb, struct iov_iter *to)
+@@ -310,9 +310,9 @@ pipe_read(struct kiocb *iocb, struct iov_iter *to)
}
if (bufs) /* More to do? */
continue;
@@ -116956,7 +120917,7 @@ index 4ebe6b2..b3752f2 100644
/* syscall merging: Usually we must not sleep
* if O_NONBLOCK is set, or if we got some data.
* But if a writer sleeps in kernel space, then
-@@ -371,7 +371,7 @@ pipe_write(struct kiocb *iocb, struct iov_iter *from)
+@@ -369,7 +369,7 @@ pipe_write(struct kiocb *iocb, struct iov_iter *from)
__pipe_lock(pipe);
@@ -116965,7 +120926,7 @@ index 4ebe6b2..b3752f2 100644
send_sig(SIGPIPE, current, 0);
ret = -EPIPE;
goto out;
-@@ -406,7 +406,7 @@ pipe_write(struct kiocb *iocb, struct iov_iter *from)
+@@ -403,7 +403,7 @@ pipe_write(struct kiocb *iocb, struct iov_iter *from)
for (;;) {
int bufs;
@@ -116974,7 +120935,7 @@ index 4ebe6b2..b3752f2 100644
send_sig(SIGPIPE, current, 0);
if (!ret)
ret = -EPIPE;
-@@ -474,9 +474,9 @@ pipe_write(struct kiocb *iocb, struct iov_iter *from)
+@@ -471,9 +471,9 @@ pipe_write(struct kiocb *iocb, struct iov_iter *from)
kill_fasync(&pipe->fasync_readers, SIGIO, POLL_IN);
do_wakeup = 0;
}
@@ -116986,7 +120947,7 @@ index 4ebe6b2..b3752f2 100644
}
out:
__pipe_unlock(pipe);
-@@ -531,7 +531,7 @@ pipe_poll(struct file *filp, poll_table *wait)
+@@ -528,7 +528,7 @@ pipe_poll(struct file *filp, poll_table *wait)
mask = 0;
if (filp->f_mode & FMODE_READ) {
mask = (nrbufs > 0) ? POLLIN | POLLRDNORM : 0;
@@ -116995,7 +120956,7 @@ index 4ebe6b2..b3752f2 100644
mask |= POLLHUP;
}
-@@ -541,7 +541,7 @@ pipe_poll(struct file *filp, poll_table *wait)
+@@ -538,7 +538,7 @@ pipe_poll(struct file *filp, poll_table *wait)
* Most Unices do not set POLLERR for FIFOs but on Linux they
* behave exactly like pipes for poll().
*/
@@ -117004,7 +120965,7 @@ index 4ebe6b2..b3752f2 100644
mask |= POLLERR;
}
-@@ -553,7 +553,7 @@ static void put_pipe_info(struct inode *inode, struct pipe_inode_info *pipe)
+@@ -550,7 +550,7 @@ static void put_pipe_info(struct inode *inode, struct pipe_inode_info *pipe)
int kill = 0;
spin_lock(&inode->i_lock);
@@ -117013,7 +120974,7 @@ index 4ebe6b2..b3752f2 100644
inode->i_pipe = NULL;
kill = 1;
}
-@@ -570,11 +570,11 @@ pipe_release(struct inode *inode, struct file *file)
+@@ -567,11 +567,11 @@ pipe_release(struct inode *inode, struct file *file)
__pipe_lock(pipe);
if (file->f_mode & FMODE_READ)
@@ -117028,7 +120989,7 @@ index 4ebe6b2..b3752f2 100644
wake_up_interruptible_sync_poll(&pipe->wait, POLLIN | POLLOUT | POLLRDNORM | POLLWRNORM | POLLERR | POLLHUP);
kill_fasync(&pipe->fasync_readers, SIGIO, POLL_IN);
kill_fasync(&pipe->fasync_writers, SIGIO, POLL_OUT);
-@@ -672,7 +672,7 @@ void free_pipe_info(struct pipe_inode_info *pipe)
+@@ -678,7 +678,7 @@ void free_pipe_info(struct pipe_inode_info *pipe)
kfree(pipe);
}
@@ -117037,7 +120998,7 @@ index 4ebe6b2..b3752f2 100644
/*
* pipefs_dname() is called from d_path().
-@@ -702,8 +702,9 @@ static struct inode * get_pipe_inode(void)
+@@ -708,8 +708,9 @@ static struct inode * get_pipe_inode(void)
goto fail_iput;
inode->i_pipe = pipe;
@@ -117049,7 +121010,7 @@ index 4ebe6b2..b3752f2 100644
inode->i_fop = &pipefifo_fops;
/*
-@@ -885,17 +886,17 @@ static int fifo_open(struct inode *inode, struct file *filp)
+@@ -891,17 +892,17 @@ static int fifo_open(struct inode *inode, struct file *filp)
spin_lock(&inode->i_lock);
if (inode->i_pipe) {
pipe = inode->i_pipe;
@@ -117070,7 +121031,7 @@ index 4ebe6b2..b3752f2 100644
spin_unlock(&inode->i_lock);
free_pipe_info(pipe);
pipe = inode->i_pipe;
-@@ -920,10 +921,10 @@ static int fifo_open(struct inode *inode, struct file *filp)
+@@ -926,10 +927,10 @@ static int fifo_open(struct inode *inode, struct file *filp)
* opened, even when there is no process writing the FIFO.
*/
pipe->r_counter++;
@@ -117083,7 +121044,7 @@ index 4ebe6b2..b3752f2 100644
if ((filp->f_flags & O_NONBLOCK)) {
/* suppress POLLHUP until we have
* seen a writer */
-@@ -942,14 +943,14 @@ static int fifo_open(struct inode *inode, struct file *filp)
+@@ -948,14 +949,14 @@ static int fifo_open(struct inode *inode, struct file *filp)
* errno=ENXIO when there is no process reading the FIFO.
*/
ret = -ENXIO;
@@ -117101,7 +121062,7 @@ index 4ebe6b2..b3752f2 100644
if (wait_for_partner(pipe, &pipe->r_counter))
goto err_wr;
}
-@@ -963,11 +964,11 @@ static int fifo_open(struct inode *inode, struct file *filp)
+@@ -969,11 +970,11 @@ static int fifo_open(struct inode *inode, struct file *filp)
* the process can at least talk to itself.
*/
@@ -117116,7 +121077,7 @@ index 4ebe6b2..b3752f2 100644
wake_up_partner(pipe);
break;
-@@ -981,13 +982,13 @@ static int fifo_open(struct inode *inode, struct file *filp)
+@@ -987,13 +988,13 @@ static int fifo_open(struct inode *inode, struct file *filp)
return 0;
err_rd:
@@ -117132,7 +121093,7 @@ index 4ebe6b2..b3752f2 100644
wake_up_interruptible(&pipe->wait);
ret = -ERESTARTSYS;
goto err;
-@@ -1065,7 +1066,7 @@ static long pipe_set_size(struct pipe_inode_info *pipe, unsigned long nr_pages)
+@@ -1020,7 +1021,7 @@ const struct file_operations pipefifo_fops = {
* Currently we rely on the pipe array holding a power-of-2 number
* of pages.
*/
@@ -117141,28 +121102,28 @@ index 4ebe6b2..b3752f2 100644
{
unsigned long nr_pages;
-@@ -1113,13 +1114,16 @@ long pipe_fcntl(struct file *file, unsigned int cmd, unsigned long arg)
+@@ -1035,14 +1036,17 @@ static inline unsigned int round_pipe_size(unsigned int size)
+ static long pipe_set_size(struct pipe_inode_info *pipe, unsigned long arg)
+ {
+ struct pipe_buffer *bufs;
+- unsigned int size, nr_pages;
++ unsigned long size, nr_pages;
+ unsigned long user_bufs;
+ long ret = 0;
- switch (cmd) {
- case F_SETPIPE_SZ: {
-- unsigned int size, nr_pages;
-+ unsigned long size, nr_pages;
++ if (arg < pipe_min_size)
++ return -EINVAL;
+
-+ ret = -EINVAL;
-+ if (arg < pipe_min_size)
-+ goto out;
+ size = round_pipe_size(arg);
+ nr_pages = size >> PAGE_SHIFT;
- size = round_pipe_size(arg);
- nr_pages = size >> PAGE_SHIFT;
-
-- ret = -EINVAL;
-- if (!nr_pages)
-+ if (size < pipe_min_size)
- goto out;
+- if (!nr_pages)
++ if (size < pipe_min_size)
+ return -EINVAL;
- if (!capable(CAP_SYS_RESOURCE) && size > pipe_max_size) {
+ /*
diff --git a/fs/posix_acl.c b/fs/posix_acl.c
-index bfc3ec3..f37d85d 100644
+index c9d48dc..6caa844 100644
--- a/fs/posix_acl.c
+++ b/fs/posix_acl.c
@@ -20,6 +20,7 @@
@@ -117200,14 +121161,7 @@ index bfc3ec3..f37d85d 100644
err = posix_acl_create_masq(clone, mode_p);
if (err < 0) {
posix_acl_release(clone);
-@@ -722,11 +725,12 @@ struct posix_acl *
- posix_acl_from_xattr(struct user_namespace *user_ns,
- const void *value, size_t size)
- {
-- posix_acl_xattr_header *header = (posix_acl_xattr_header *)value;
-- posix_acl_xattr_entry *entry = (posix_acl_xattr_entry *)(header+1), *end;
-+ const posix_acl_xattr_header *header = (const posix_acl_xattr_header *)value;
-+ const posix_acl_xattr_entry *entry = (const posix_acl_xattr_entry *)(header+1), *end;
+@@ -728,6 +731,7 @@ posix_acl_from_xattr(struct user_namespace *user_ns,
int count;
struct posix_acl *acl;
struct posix_acl_entry *acl_e;
@@ -117215,7 +121169,7 @@ index bfc3ec3..f37d85d 100644
if (!value)
return NULL;
-@@ -752,12 +756,18 @@ posix_acl_from_xattr(struct user_namespace *user_ns,
+@@ -753,12 +757,18 @@ posix_acl_from_xattr(struct user_namespace *user_ns,
switch(acl_e->e_tag) {
case ACL_USER_OBJ:
@@ -117234,7 +121188,7 @@ index bfc3ec3..f37d85d 100644
acl_e->e_uid =
make_kuid(user_ns,
le32_to_cpu(entry->e_id));
-@@ -765,6 +775,7 @@ posix_acl_from_xattr(struct user_namespace *user_ns,
+@@ -766,6 +776,7 @@ posix_acl_from_xattr(struct user_namespace *user_ns,
goto fail;
break;
case ACL_GROUP:
@@ -117278,7 +121232,7 @@ index 1ade120..a86f1a2 100644
help
Various /proc files exist to monitor process memory utilization:
diff --git a/fs/proc/array.c b/fs/proc/array.c
-index 88c7de1..3e4b510 100644
+index 81818ad..aa67630 100644
--- a/fs/proc/array.c
+++ b/fs/proc/array.c
@@ -60,6 +60,7 @@
@@ -117289,7 +121243,7 @@ index 88c7de1..3e4b510 100644
#include <linux/proc_fs.h>
#include <linux/ioport.h>
#include <linux/uaccess.h>
-@@ -369,6 +370,21 @@ static void task_cpus_allowed(struct seq_file *m, struct task_struct *task)
+@@ -364,6 +365,21 @@ static void task_cpus_allowed(struct seq_file *m, struct task_struct *task)
cpumask_pr_args(&task->cpus_allowed));
}
@@ -117311,7 +121265,7 @@ index 88c7de1..3e4b510 100644
int proc_pid_status(struct seq_file *m, struct pid_namespace *ns,
struct pid *pid, struct task_struct *task)
{
-@@ -387,9 +403,24 @@ int proc_pid_status(struct seq_file *m, struct pid_namespace *ns,
+@@ -382,9 +398,24 @@ int proc_pid_status(struct seq_file *m, struct pid_namespace *ns,
task_cpus_allowed(m, task);
cpuset_task_status_allowed(m, task);
task_context_switch_counts(m, task);
@@ -117336,7 +121290,7 @@ index 88c7de1..3e4b510 100644
static int do_task_stat(struct seq_file *m, struct pid_namespace *ns,
struct pid *pid, struct task_struct *task, int whole)
{
-@@ -411,6 +442,13 @@ static int do_task_stat(struct seq_file *m, struct pid_namespace *ns,
+@@ -406,6 +437,13 @@ static int do_task_stat(struct seq_file *m, struct pid_namespace *ns,
char tcomm[sizeof(task->comm)];
unsigned long flags;
@@ -117350,7 +121304,7 @@ index 88c7de1..3e4b510 100644
state = *get_task_state(task);
vsize = eip = esp = 0;
permitted = ptrace_may_access(task, PTRACE_MODE_READ_FSCREDS | PTRACE_MODE_NOAUDIT);
-@@ -481,6 +519,19 @@ static int do_task_stat(struct seq_file *m, struct pid_namespace *ns,
+@@ -477,6 +515,19 @@ static int do_task_stat(struct seq_file *m, struct pid_namespace *ns,
gtime = task_gtime(task);
}
@@ -117370,25 +121324,25 @@ index 88c7de1..3e4b510 100644
/* scale priority and nice values from timeslices to -20..20 */
/* to make it look like a "normal" Unix priority/nice value */
priority = task_prio(task);
-@@ -512,9 +563,15 @@ static int do_task_stat(struct seq_file *m, struct pid_namespace *ns,
- seq_put_decimal_ull(m, ' ', vsize);
- seq_put_decimal_ull(m, ' ', mm ? get_mm_rss(mm) : 0);
- seq_put_decimal_ull(m, ' ', rsslim);
+@@ -508,9 +559,15 @@ static int do_task_stat(struct seq_file *m, struct pid_namespace *ns,
+ seq_put_decimal_ull(m, " ", vsize);
+ seq_put_decimal_ull(m, " ", mm ? get_mm_rss(mm) : 0);
+ seq_put_decimal_ull(m, " ", rsslim);
+#ifdef CONFIG_GRKERNSEC_PROC_MEMMAP
-+ seq_put_decimal_ull(m, ' ', PAX_RAND_FLAGS(mm) ? 1 : (mm ? (permitted ? mm->start_code : 1) : 0));
-+ seq_put_decimal_ull(m, ' ', PAX_RAND_FLAGS(mm) ? 1 : (mm ? (permitted ? mm->end_code : 1) : 0));
-+ seq_put_decimal_ull(m, ' ', PAX_RAND_FLAGS(mm) ? 0 : ((permitted && mm) ? mm->start_stack : 0));
++ seq_put_decimal_ull(m, " ", PAX_RAND_FLAGS(mm) ? 1 : (mm ? (permitted ? mm->start_code : 1) : 0));
++ seq_put_decimal_ull(m, " ", PAX_RAND_FLAGS(mm) ? 1 : (mm ? (permitted ? mm->end_code : 1) : 0));
++ seq_put_decimal_ull(m, " ", PAX_RAND_FLAGS(mm) ? 0 : ((permitted && mm) ? mm->start_stack : 0));
+#else
- seq_put_decimal_ull(m, ' ', mm ? (permitted ? mm->start_code : 1) : 0);
- seq_put_decimal_ull(m, ' ', mm ? (permitted ? mm->end_code : 1) : 0);
- seq_put_decimal_ull(m, ' ', (permitted && mm) ? mm->start_stack : 0);
+ seq_put_decimal_ull(m, " ", mm ? (permitted ? mm->start_code : 1) : 0);
+ seq_put_decimal_ull(m, " ", mm ? (permitted ? mm->end_code : 1) : 0);
+ seq_put_decimal_ull(m, " ", (permitted && mm) ? mm->start_stack : 0);
+#endif
- seq_put_decimal_ull(m, ' ', esp);
- seq_put_decimal_ull(m, ' ', eip);
+ seq_put_decimal_ull(m, " ", esp);
+ seq_put_decimal_ull(m, " ", eip);
/* The signal information here is obsolete.
-@@ -548,7 +605,11 @@ static int do_task_stat(struct seq_file *m, struct pid_namespace *ns,
- seq_put_decimal_ull(m, ' ', cputime_to_clock_t(gtime));
- seq_put_decimal_ll(m, ' ', cputime_to_clock_t(cgtime));
+@@ -544,7 +601,11 @@ static int do_task_stat(struct seq_file *m, struct pid_namespace *ns,
+ seq_put_decimal_ull(m, " ", cputime_to_clock_t(gtime));
+ seq_put_decimal_ll(m, " ", cputime_to_clock_t(cgtime));
- if (mm && permitted) {
+ if (mm && permitted
@@ -117396,10 +121350,10 @@ index 88c7de1..3e4b510 100644
+ && !PAX_RAND_FLAGS(mm)
+#endif
+ ) {
- seq_put_decimal_ull(m, ' ', mm->start_data);
- seq_put_decimal_ull(m, ' ', mm->end_data);
- seq_put_decimal_ull(m, ' ', mm->start_brk);
-@@ -586,8 +647,15 @@ int proc_pid_statm(struct seq_file *m, struct pid_namespace *ns,
+ seq_put_decimal_ull(m, " ", mm->start_data);
+ seq_put_decimal_ull(m, " ", mm->end_data);
+ seq_put_decimal_ull(m, " ", mm->start_brk);
+@@ -582,8 +643,15 @@ int proc_pid_statm(struct seq_file *m, struct pid_namespace *ns,
struct pid *pid, struct task_struct *task)
{
unsigned long size = 0, resident = 0, shared = 0, text = 0, data = 0;
@@ -117416,7 +121370,7 @@ index 88c7de1..3e4b510 100644
if (mm) {
size = task_statm(mm, &shared, &text, &data, &resident);
mmput(mm);
-@@ -610,6 +678,21 @@ int proc_pid_statm(struct seq_file *m, struct pid_namespace *ns,
+@@ -606,6 +674,21 @@ int proc_pid_statm(struct seq_file *m, struct pid_namespace *ns,
return 0;
}
@@ -117439,7 +121393,7 @@ index 88c7de1..3e4b510 100644
static struct pid *
get_children_pid(struct inode *inode, struct pid *pid_prev, loff_t pos)
diff --git a/fs/proc/base.c b/fs/proc/base.c
-index ac0df4d..5be5b93 100644
+index ca651ac..a433237 100644
--- a/fs/proc/base.c
+++ b/fs/proc/base.c
@@ -113,6 +113,14 @@ struct pid_entry {
@@ -117469,45 +121423,22 @@ index ac0df4d..5be5b93 100644
page = (char *)__get_free_page(GFP_TEMPORARY);
if (!page) {
rv = -ENOMEM;
-@@ -400,12 +413,28 @@ static const struct file_operations proc_pid_cmdline_ops = {
+@@ -400,7 +413,13 @@ static const struct file_operations proc_pid_cmdline_ops = {
.llseek = generic_file_llseek,
};
+-#ifdef CONFIG_KALLSYMS
+#ifdef CONFIG_GRKERNSEC_PROC_MEMMAP
+#define PAX_RAND_FLAGS(_mm) (_mm != NULL && _mm != current->mm && \
+ (_mm->pax_flags & MF_PAX_RANDMMAP || \
+ _mm->pax_flags & MF_PAX_SEGMEXEC))
+#endif
+
- static int proc_pid_auxv(struct seq_file *m, struct pid_namespace *ns,
- struct pid *pid, struct task_struct *task)
- {
- struct mm_struct *mm = mm_access(task, PTRACE_MODE_READ_FSCREDS);
- if (mm && !IS_ERR(mm)) {
- unsigned int nwords = 0;
-+
-+#ifdef CONFIG_GRKERNSEC_PROC_MEMMAP
-+ /* allow if we're currently ptracing this task */
-+ if (PAX_RAND_FLAGS(mm) &&
-+ (!(task->ptrace & PT_PTRACED) || (task->parent != current))) {
-+ mmput(mm);
-+ return 0;
-+ }
-+#endif
-+
- do {
- nwords += 2;
- } while (mm->saved_auxv[nwords - 2] != 0); /* AT_NULL */
-@@ -417,7 +446,7 @@ static int proc_pid_auxv(struct seq_file *m, struct pid_namespace *ns,
- }
-
-
--#ifdef CONFIG_KALLSYMS
+#if defined(CONFIG_KALLSYMS) && !defined(CONFIG_GRKERNSEC_HIDESYM)
/*
* Provides a wchan file via kallsyms in a proper one-value-per-file format.
* Returns the resolved symbol. If that fails, simply return the address.
-@@ -430,8 +459,8 @@ static int proc_pid_wchan(struct seq_file *m, struct pid_namespace *ns,
+@@ -413,8 +432,8 @@ static int proc_pid_wchan(struct seq_file *m, struct pid_namespace *ns,
wchan = get_wchan(task);
@@ -117518,7 +121449,7 @@ index ac0df4d..5be5b93 100644
seq_printf(m, "%s", symname);
else
seq_putc(m, '0');
-@@ -457,7 +486,7 @@ static void unlock_trace(struct task_struct *task)
+@@ -440,7 +459,7 @@ static void unlock_trace(struct task_struct *task)
mutex_unlock(&task->signal->cred_guard_mutex);
}
@@ -117527,7 +121458,7 @@ index ac0df4d..5be5b93 100644
#define MAX_STACK_TRACE_DEPTH 64
-@@ -652,7 +681,7 @@ static int proc_pid_limits(struct seq_file *m, struct pid_namespace *ns,
+@@ -635,7 +654,7 @@ static int proc_pid_limits(struct seq_file *m, struct pid_namespace *ns,
return 0;
}
@@ -117536,7 +121467,7 @@ index ac0df4d..5be5b93 100644
static int proc_pid_syscall(struct seq_file *m, struct pid_namespace *ns,
struct pid *pid, struct task_struct *task)
{
-@@ -685,7 +714,7 @@ static int proc_pid_syscall(struct seq_file *m, struct pid_namespace *ns,
+@@ -668,7 +687,7 @@ static int proc_pid_syscall(struct seq_file *m, struct pid_namespace *ns,
/************************************************************************/
/* permission checks */
@@ -117545,7 +121476,7 @@ index ac0df4d..5be5b93 100644
{
struct task_struct *task;
int allowed = 0;
-@@ -695,7 +724,10 @@ static int proc_fd_access_allowed(struct inode *inode)
+@@ -678,7 +697,10 @@ static int proc_fd_access_allowed(struct inode *inode)
*/
task = get_proc_task(inode);
if (task) {
@@ -117557,7 +121488,7 @@ index ac0df4d..5be5b93 100644
put_task_struct(task);
}
return allowed;
-@@ -726,6 +758,30 @@ static bool has_pid_permissions(struct pid_namespace *pid,
+@@ -709,6 +731,30 @@ static bool has_pid_permissions(struct pid_namespace *pid,
struct task_struct *task,
int hide_pid_min)
{
@@ -117588,7 +121519,7 @@ index ac0df4d..5be5b93 100644
if (pid->hide_pid < hide_pid_min)
return true;
if (in_group_p(pid->pid_gid))
-@@ -747,7 +803,11 @@ static int proc_pid_permission(struct inode *inode, int mask)
+@@ -730,7 +776,11 @@ static int proc_pid_permission(struct inode *inode, int mask)
put_task_struct(task);
if (!has_perms) {
@@ -117600,7 +121531,7 @@ index ac0df4d..5be5b93 100644
/*
* Let's make getdents(), stat(), and open()
* consistent with each other. If a process
-@@ -801,13 +861,24 @@ static const struct file_operations proc_single_file_operations = {
+@@ -784,13 +834,24 @@ static const struct file_operations proc_single_file_operations = {
};
@@ -117626,7 +121557,7 @@ index ac0df4d..5be5b93 100644
put_task_struct(task);
if (!IS_ERR_OR_NULL(mm)) {
-@@ -823,12 +894,17 @@ struct mm_struct *proc_mem_open(struct inode *inode, unsigned int mode)
+@@ -806,12 +867,17 @@ struct mm_struct *proc_mem_open(struct inode *inode, unsigned int mode)
static int __mem_open(struct inode *inode, struct file *file, unsigned int mode)
{
@@ -117645,9 +121576,9 @@ index ac0df4d..5be5b93 100644
return 0;
}
-@@ -850,6 +926,26 @@ static ssize_t mem_rw(struct file *file, char __user *buf,
- ssize_t copied;
+@@ -834,6 +900,26 @@ static ssize_t mem_rw(struct file *file, char __user *buf,
char *page;
+ unsigned int flags;
+#ifdef CONFIG_GRKERNSEC
+ struct task_struct *task = get_proc_task(file_inode(file));
@@ -117672,8 +121603,8 @@ index ac0df4d..5be5b93 100644
if (!mm)
return 0;
-@@ -862,7 +958,7 @@ static ssize_t mem_rw(struct file *file, char __user *buf,
- goto free;
+@@ -851,7 +937,7 @@ static ssize_t mem_rw(struct file *file, char __user *buf,
+ flags |= FOLL_WRITE;
while (count > 0) {
- int this_len = min_t(int, count, PAGE_SIZE);
@@ -117681,7 +121612,7 @@ index ac0df4d..5be5b93 100644
if (write && copy_from_user(page, buf, this_len)) {
copied = -EFAULT;
-@@ -956,6 +1052,13 @@ static ssize_t environ_read(struct file *file, char __user *buf,
+@@ -945,6 +1031,13 @@ static ssize_t environ_read(struct file *file, char __user *buf,
if (!mm || !mm->env_end)
return 0;
@@ -117695,7 +121626,7 @@ index ac0df4d..5be5b93 100644
page = (char *)__get_free_page(GFP_TEMPORARY);
if (!page)
return -ENOMEM;
-@@ -969,9 +1072,12 @@ static ssize_t environ_read(struct file *file, char __user *buf,
+@@ -958,9 +1051,12 @@ static ssize_t environ_read(struct file *file, char __user *buf,
env_end = mm->env_end;
up_read(&mm->mmap_sem);
@@ -117709,7 +121640,29 @@ index ac0df4d..5be5b93 100644
if (src >= (env_end - env_start))
break;
-@@ -1583,7 +1689,7 @@ static const char *proc_pid_get_link(struct dentry *dentry,
+@@ -1015,6 +1111,21 @@ static ssize_t auxv_read(struct file *file, char __user *buf,
+
+ if (!mm)
+ return 0;
++
++#ifdef CONFIG_GRKERNSEC_PROC_MEMMAP
++ if (PAX_RAND_FLAGS(mm)) {
++ struct task_struct *task = get_proc_task(file_inode(file));
++ bool is_by_ptracer = false;
++
++ if (task) {
++ is_by_ptracer = current_is_ptracer(task, NULL);
++ put_task_struct(task);
++ }
++ if (!is_by_ptracer)
++ return 0;
++ }
++#endif
++
+ do {
+ nwords += 2;
+ } while (mm->saved_auxv[nwords - 2] != 0); /* AT_NULL */
+@@ -1598,7 +1709,7 @@ static const char *proc_pid_get_link(struct dentry *dentry,
return ERR_PTR(-ECHILD);
/* Are we allowed to snoop on the tasks file descriptors? */
@@ -117718,7 +121671,7 @@ index ac0df4d..5be5b93 100644
goto out;
error = PROC_I(inode)->op.proc_get_link(dentry, &path);
-@@ -1627,8 +1733,18 @@ static int proc_pid_readlink(struct dentry * dentry, char __user * buffer, int b
+@@ -1642,8 +1753,18 @@ static int proc_pid_readlink(struct dentry * dentry, char __user * buffer, int b
struct path path;
/* Are we allowed to snoop on the tasks file descriptors? */
@@ -117739,7 +121692,7 @@ index ac0df4d..5be5b93 100644
error = PROC_I(inode)->op.proc_get_link(dentry, &path);
if (error)
-@@ -1678,7 +1794,11 @@ struct inode *proc_pid_make_inode(struct super_block * sb, struct task_struct *t
+@@ -1693,7 +1814,11 @@ struct inode *proc_pid_make_inode(struct super_block * sb, struct task_struct *t
rcu_read_lock();
cred = __task_cred(task);
inode->i_uid = cred->euid;
@@ -117751,7 +121704,7 @@ index ac0df4d..5be5b93 100644
rcu_read_unlock();
}
security_task_to_inode(task, inode);
-@@ -1714,10 +1834,19 @@ int pid_getattr(struct vfsmount *mnt, struct dentry *dentry, struct kstat *stat)
+@@ -1729,10 +1854,19 @@ int pid_getattr(struct vfsmount *mnt, struct dentry *dentry, struct kstat *stat)
return -ENOENT;
}
if ((inode->i_mode == (S_IFDIR|S_IRUGO|S_IXUGO)) ||
@@ -117771,7 +121724,7 @@ index ac0df4d..5be5b93 100644
}
}
rcu_read_unlock();
-@@ -1755,11 +1884,20 @@ int pid_revalidate(struct dentry *dentry, unsigned int flags)
+@@ -1770,11 +1904,20 @@ int pid_revalidate(struct dentry *dentry, unsigned int flags)
if (task) {
if ((inode->i_mode == (S_IFDIR|S_IRUGO|S_IXUGO)) ||
@@ -117792,7 +121745,7 @@ index ac0df4d..5be5b93 100644
rcu_read_unlock();
} else {
inode->i_uid = GLOBAL_ROOT_UID;
-@@ -2373,6 +2511,9 @@ static struct dentry *proc_pident_lookup(struct inode *dir,
+@@ -2408,6 +2551,9 @@ static struct dentry *proc_pident_lookup(struct inode *dir,
if (!task)
goto out_no_task;
@@ -117802,7 +121755,7 @@ index ac0df4d..5be5b93 100644
/*
* Yes, it does not scale. And it should not. Don't add
* new entries into /proc/<tgid>/ without very good reasons.
-@@ -2403,6 +2544,9 @@ static int proc_pident_readdir(struct file *file, struct dir_context *ctx,
+@@ -2438,6 +2584,9 @@ static int proc_pident_readdir(struct file *file, struct dir_context *ctx,
if (!task)
return -ENOENT;
@@ -117812,7 +121765,7 @@ index ac0df4d..5be5b93 100644
if (!dir_emit_dots(file, ctx))
goto out;
-@@ -2815,7 +2959,9 @@ static const struct inode_operations proc_task_inode_operations;
+@@ -2850,7 +2999,9 @@ static const struct inode_operations proc_task_inode_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),
@@ -117822,7 +121775,7 @@ index ac0df4d..5be5b93 100644
DIR("fdinfo", S_IRUSR|S_IXUSR, proc_fdinfo_inode_operations, proc_fdinfo_operations),
DIR("ns", S_IRUSR|S_IXUGO, proc_ns_dir_inode_operations, proc_ns_dir_operations),
#ifdef CONFIG_NET
-@@ -2833,7 +2979,7 @@ static const struct pid_entry tgid_base_stuff[] = {
+@@ -2868,7 +3019,7 @@ static const struct pid_entry tgid_base_stuff[] = {
REG("autogroup", S_IRUGO|S_IWUSR, proc_pid_sched_autogroup_operations),
#endif
REG("comm", S_IRUGO|S_IWUSR, proc_pid_set_comm_operations),
@@ -117831,7 +121784,7 @@ index ac0df4d..5be5b93 100644
ONE("syscall", S_IRUSR, proc_pid_syscall),
#endif
REG("cmdline", S_IRUGO, proc_pid_cmdline_ops),
-@@ -2858,10 +3004,10 @@ static const struct pid_entry tgid_base_stuff[] = {
+@@ -2893,10 +3044,10 @@ static const struct pid_entry tgid_base_stuff[] = {
#ifdef CONFIG_SECURITY
DIR("attr", S_IRUGO|S_IXUGO, proc_attr_dir_inode_operations, proc_attr_dir_operations),
#endif
@@ -117844,7 +121797,7 @@ index ac0df4d..5be5b93 100644
ONE("stack", S_IRUSR, proc_pid_stack),
#endif
#ifdef CONFIG_SCHED_INFO
-@@ -2895,6 +3041,9 @@ static const struct pid_entry tgid_base_stuff[] = {
+@@ -2930,6 +3081,9 @@ static const struct pid_entry tgid_base_stuff[] = {
#ifdef CONFIG_HARDWALL
ONE("hardwall", S_IRUGO, proc_pid_hardwall),
#endif
@@ -117854,7 +121807,7 @@ index ac0df4d..5be5b93 100644
#ifdef CONFIG_USER_NS
REG("uid_map", S_IRUGO|S_IWUSR, proc_uid_map_operations),
REG("gid_map", S_IRUGO|S_IWUSR, proc_gid_map_operations),
-@@ -3028,7 +3177,14 @@ static int proc_pid_instantiate(struct inode *dir,
+@@ -3063,7 +3217,14 @@ static int proc_pid_instantiate(struct inode *dir,
if (!inode)
goto out;
@@ -117869,7 +121822,7 @@ index ac0df4d..5be5b93 100644
inode->i_op = &proc_tgid_base_inode_operations;
inode->i_fop = &proc_tgid_base_operations;
inode->i_flags|=S_IMMUTABLE;
-@@ -3066,7 +3222,11 @@ struct dentry *proc_pid_lookup(struct inode *dir, struct dentry * dentry, unsign
+@@ -3101,7 +3262,11 @@ struct dentry *proc_pid_lookup(struct inode *dir, struct dentry * dentry, unsign
if (!task)
goto out;
@@ -117881,7 +121834,7 @@ index ac0df4d..5be5b93 100644
put_task_struct(task);
out:
return ERR_PTR(result);
-@@ -3220,7 +3380,7 @@ static const struct pid_entry tid_base_stuff[] = {
+@@ -3255,7 +3420,7 @@ static const struct pid_entry tid_base_stuff[] = {
NOD("comm", S_IFREG|S_IRUGO|S_IWUSR,
&proc_tid_comm_inode_operations,
&proc_pid_set_comm_operations, {}),
@@ -117890,7 +121843,7 @@ index ac0df4d..5be5b93 100644
ONE("syscall", S_IRUSR, proc_pid_syscall),
#endif
REG("cmdline", S_IRUGO, proc_pid_cmdline_ops),
-@@ -3247,10 +3407,10 @@ static const struct pid_entry tid_base_stuff[] = {
+@@ -3282,10 +3447,10 @@ static const struct pid_entry tid_base_stuff[] = {
#ifdef CONFIG_SECURITY
DIR("attr", S_IRUGO|S_IXUGO, proc_attr_dir_inode_operations, proc_attr_dir_operations),
#endif
@@ -117936,7 +121889,7 @@ index 50493ed..248166b 100644
}
fs_initcall(proc_devices_init);
diff --git a/fs/proc/fd.c b/fs/proc/fd.c
-index 01df23c..9b6c8f9 100644
+index d21dafe..8742590 100644
--- a/fs/proc/fd.c
+++ b/fs/proc/fd.c
@@ -27,7 +27,8 @@ static int seq_show(struct seq_file *m, void *v)
@@ -117970,7 +121923,7 @@ index 01df23c..9b6c8f9 100644
return rv;
diff --git a/fs/proc/generic.c b/fs/proc/generic.c
-index c633476..881fce8 100644
+index 5f2dc20..2ae2720 100644
--- a/fs/proc/generic.c
+++ b/fs/proc/generic.c
@@ -22,6 +22,7 @@
@@ -118040,7 +121993,7 @@ index c633476..881fce8 100644
static int proc_register(struct proc_dir_entry * dir, struct proc_dir_entry * dp)
{
int ret;
-@@ -445,6 +477,31 @@ struct proc_dir_entry *proc_mkdir_data(const char *name, umode_t mode,
+@@ -447,6 +479,31 @@ struct proc_dir_entry *proc_mkdir_data(const char *name, umode_t mode,
}
EXPORT_SYMBOL_GPL(proc_mkdir_data);
@@ -118072,7 +122025,7 @@ index c633476..881fce8 100644
struct proc_dir_entry *proc_mkdir_mode(const char *name, umode_t mode,
struct proc_dir_entry *parent)
{
-@@ -459,6 +516,13 @@ struct proc_dir_entry *proc_mkdir(const char *name,
+@@ -461,6 +518,13 @@ struct proc_dir_entry *proc_mkdir(const char *name,
}
EXPORT_SYMBOL(proc_mkdir);
@@ -118087,7 +122040,7 @@ index c633476..881fce8 100644
{
umode_t mode = S_IFDIR | S_IRUGO | S_IXUGO;
diff --git a/fs/proc/inode.c b/fs/proc/inode.c
-index c1b7238..290c707 100644
+index e69ebe6..8a28d63 100644
--- a/fs/proc/inode.c
+++ b/fs/proc/inode.c
@@ -23,11 +23,17 @@
@@ -118122,7 +122075,7 @@ index c1b7238..290c707 100644
}
static struct kmem_cache * proc_inode_cachep;
-@@ -431,7 +444,11 @@ struct inode *proc_get_inode(struct super_block *sb, struct proc_dir_entry *de)
+@@ -430,7 +443,11 @@ struct inode *proc_get_inode(struct super_block *sb, struct proc_dir_entry *de)
if (de->mode) {
inode->i_mode = de->mode;
inode->i_uid = de->uid;
@@ -118135,7 +122088,7 @@ index c1b7238..290c707 100644
if (de->size)
inode->i_size = de->size;
diff --git a/fs/proc/internal.h b/fs/proc/internal.h
-index 7931c55..7db5ad1 100644
+index 5378441..666c350 100644
--- a/fs/proc/internal.h
+++ b/fs/proc/internal.h
@@ -47,9 +47,10 @@ struct proc_dir_entry {
@@ -118300,18 +122253,18 @@ index 5c89a07..1749d06 100644
.priority = 0,
};
diff --git a/fs/proc/meminfo.c b/fs/proc/meminfo.c
-index b9a8c81..936ca066 100644
+index 8a42849..707e5ac 100644
--- a/fs/proc/meminfo.c
+++ b/fs/proc/meminfo.c
-@@ -161,7 +161,7 @@ static int meminfo_proc_show(struct seq_file *m, void *v)
- 0ul, // used to be vmalloc 'used'
- 0ul // used to be vmalloc 'largest_chunk'
+@@ -136,7 +136,7 @@ static int meminfo_proc_show(struct seq_file *m, void *v)
+
#ifdef CONFIG_MEMORY_FAILURE
-- , atomic_long_read(&num_poisoned_pages) << (PAGE_SHIFT - 10)
-+ , atomic_long_read_unchecked(&num_poisoned_pages) << (PAGE_SHIFT - 10)
+ seq_printf(m, "HardwareCorrupted: %5lu kB\n",
+- atomic_long_read(&num_poisoned_pages) << (PAGE_SHIFT - 10));
++ atomic_long_read_unchecked(&num_poisoned_pages) << (PAGE_SHIFT - 10));
#endif
+
#ifdef CONFIG_TRANSPARENT_HUGEPAGE
- , K(global_node_page_state(NR_ANON_THPS) * HPAGE_PMD_NR)
diff --git a/fs/proc/nommu.c b/fs/proc/nommu.c
index f8595e8..e0d13cbd 100644
--- a/fs/proc/nommu.c
@@ -118326,11 +122279,11 @@ index f8595e8..e0d13cbd 100644
seq_putc(m, '\n');
diff --git a/fs/proc/proc_net.c b/fs/proc/proc_net.c
-index c8bbc68..d0f82d5 100644
+index 7ae6b1d..cf23c94 100644
--- a/fs/proc/proc_net.c
+++ b/fs/proc/proc_net.c
-@@ -23,9 +23,27 @@
- #include <linux/nsproxy.h>
+@@ -24,9 +24,27 @@
+ #include <linux/uidgid.h>
#include <net/net_namespace.h>
#include <linux/seq_file.h>
+#include <linux/grsecurity.h>
@@ -118357,7 +122310,7 @@ index c8bbc68..d0f82d5 100644
static inline struct net *PDE_NET(struct proc_dir_entry *pde)
{
return pde->parent->data;
-@@ -36,6 +54,8 @@ static struct net *get_proc_net(const struct inode *inode)
+@@ -37,6 +55,8 @@ static struct net *get_proc_net(const struct inode *inode)
return maybe_get_net(PDE_NET(PDE(inode)));
}
@@ -118366,7 +122319,7 @@ index c8bbc68..d0f82d5 100644
int seq_open_net(struct inode *ino, struct file *f,
const struct seq_operations *ops, int size)
{
-@@ -44,6 +64,14 @@ int seq_open_net(struct inode *ino, struct file *f,
+@@ -45,6 +65,14 @@ int seq_open_net(struct inode *ino, struct file *f,
BUG_ON(size < sizeof(*p));
@@ -118381,7 +122334,7 @@ index c8bbc68..d0f82d5 100644
net = get_proc_net(ino);
if (net == NULL)
return -ENXIO;
-@@ -66,6 +94,9 @@ int single_open_net(struct inode *inode, struct file *file,
+@@ -67,6 +95,9 @@ int single_open_net(struct inode *inode, struct file *file,
int err;
struct net *net;
@@ -118391,7 +122344,7 @@ index c8bbc68..d0f82d5 100644
err = -ENXIO;
net = get_proc_net(inode);
if (net == NULL)
-@@ -220,7 +251,7 @@ static __net_exit void proc_net_ns_exit(struct net *net)
+@@ -233,7 +264,7 @@ static __net_exit void proc_net_ns_exit(struct net *net)
kfree(net->proc_net);
}
@@ -118401,7 +122354,7 @@ index c8bbc68..d0f82d5 100644
.exit = proc_net_ns_exit,
};
diff --git a/fs/proc/proc_sysctl.c b/fs/proc/proc_sysctl.c
-index 1b93650..49c54f2 100644
+index d4e37ac..5a409fc 100644
--- a/fs/proc/proc_sysctl.c
+++ b/fs/proc/proc_sysctl.c
@@ -11,13 +11,21 @@
@@ -118448,7 +122401,83 @@ index 1b93650..49c54f2 100644
}
void proc_sys_poll_notify(struct ctl_table_poll *poll)
-@@ -504,6 +516,9 @@ static struct dentry *proc_sys_lookup(struct inode *dir, struct dentry *dentry,
+@@ -59,8 +71,8 @@ static struct ctl_table root_table[] = {
+ };
+ static struct ctl_table_root sysctl_table_root = {
+ .default_set.dir.header = {
+- {{.count = 1,
+- .nreg = 1,
++ {{.count = ATOMIC_INIT(1),
++ .nreg = ATOMIC_INIT(1),
+ .ctl_table = root_table }},
+ .ctl_table_arg = root_table,
+ .root = &sysctl_table_root,
+@@ -182,9 +194,9 @@ static void init_header(struct ctl_table_header *head,
+ {
+ head->ctl_table = table;
+ head->ctl_table_arg = table;
+- head->used = 0;
+- head->count = 1;
+- head->nreg = 1;
++ atomic_set(&head->used, 0);
++ atomic_set(&head->count, 1);
++ atomic_set(&head->nreg, 1);
+ head->unregistering = NULL;
+ head->root = root;
+ head->set = set;
+@@ -220,7 +232,7 @@ static int insert_header(struct ctl_dir *dir, struct ctl_table_header *header)
+ set_empty_dir(dir);
+ }
+
+- dir->header.nreg++;
++ atomic_inc(&dir->header.nreg);
+ header->parent = dir;
+ err = insert_links(header);
+ if (err)
+@@ -247,14 +259,14 @@ static int use_table(struct ctl_table_header *p)
+ {
+ if (unlikely(p->unregistering))
+ return 0;
+- p->used++;
++ atomic_inc(&p->used);
+ return 1;
+ }
+
+ /* called under sysctl_lock */
+ static void unuse_table(struct ctl_table_header *p)
+ {
+- if (!--p->used)
++ if (atomic_dec_and_test(&p->used))
+ if (unlikely(p->unregistering))
+ complete(p->unregistering);
+ }
+@@ -266,7 +278,7 @@ static void start_unregistering(struct ctl_table_header *p)
+ * if p->used is 0, nobody will ever touch that entry again;
+ * we'll eliminate all paths to it before dropping sysctl_lock
+ */
+- if (unlikely(p->used)) {
++ if (unlikely(atomic_read(&p->used))) {
+ struct completion wait;
+ init_completion(&wait);
+ p->unregistering = &wait;
+@@ -287,14 +299,14 @@ static void start_unregistering(struct ctl_table_header *p)
+ static void sysctl_head_get(struct ctl_table_header *head)
+ {
+ spin_lock(&sysctl_lock);
+- head->count++;
++ atomic_inc(&head->count);
+ spin_unlock(&sysctl_lock);
+ }
+
+ void sysctl_head_put(struct ctl_table_header *head)
+ {
+ spin_lock(&sysctl_lock);
+- if (!--head->count)
++ if (atomic_dec_and_test(&head->count))
+ kfree_rcu(head, rcu);
+ spin_unlock(&sysctl_lock);
+ }
+@@ -509,6 +521,9 @@ static struct dentry *proc_sys_lookup(struct inode *dir, struct dentry *dentry,
err = NULL;
d_set_d_op(dentry, &proc_sys_dentry_operations);
@@ -118458,7 +122487,7 @@ index 1b93650..49c54f2 100644
d_add(dentry, inode);
out:
-@@ -519,6 +534,7 @@ static ssize_t proc_sys_call_handler(struct file *filp, void __user *buf,
+@@ -524,6 +539,7 @@ static ssize_t proc_sys_call_handler(struct file *filp, void __user *buf,
struct inode *inode = file_inode(filp);
struct ctl_table_header *head = grab_header(inode);
struct ctl_table *table = PROC_I(inode)->sysctl_entry;
@@ -118466,7 +122495,7 @@ index 1b93650..49c54f2 100644
ssize_t error;
size_t res;
-@@ -530,7 +546,7 @@ static ssize_t proc_sys_call_handler(struct file *filp, void __user *buf,
+@@ -535,7 +551,7 @@ static ssize_t proc_sys_call_handler(struct file *filp, void __user *buf,
* and won't be until we finish.
*/
error = -EPERM;
@@ -118475,7 +122504,7 @@ index 1b93650..49c54f2 100644
goto out;
/* if that can happen at all, it should be -EINVAL, not -EISDIR */
-@@ -538,6 +554,27 @@ static ssize_t proc_sys_call_handler(struct file *filp, void __user *buf,
+@@ -543,6 +559,27 @@ static ssize_t proc_sys_call_handler(struct file *filp, void __user *buf,
if (!table->proc_handler)
goto out;
@@ -118503,7 +122532,7 @@ index 1b93650..49c54f2 100644
/* careful: calling conventions are nasty here */
res = count;
error = table->proc_handler(table, write, buf, &res, ppos);
-@@ -639,6 +676,7 @@ static bool proc_sys_fill_cache(struct file *file,
+@@ -644,6 +681,7 @@ static bool proc_sys_fill_cache(struct file *file,
return false;
}
d_set_d_op(child, &proc_sys_dentry_operations);
@@ -118511,7 +122540,7 @@ index 1b93650..49c54f2 100644
d_add(child, inode);
}
}
-@@ -679,6 +717,9 @@ static int scan(struct ctl_table_header *head, struct ctl_table *table,
+@@ -684,6 +722,9 @@ static int scan(struct ctl_table_header *head, struct ctl_table *table,
if ((*pos)++ < ctx->pos)
return true;
@@ -118521,7 +122550,7 @@ index 1b93650..49c54f2 100644
if (unlikely(S_ISLNK(table->mode)))
res = proc_sys_link_fill_cache(file, ctx, head, table);
else
-@@ -772,6 +813,9 @@ static int proc_sys_getattr(struct vfsmount *mnt, struct dentry *dentry, struct
+@@ -778,6 +819,9 @@ static int proc_sys_getattr(struct vfsmount *mnt, struct dentry *dentry, struct
if (IS_ERR(head))
return PTR_ERR(head);
@@ -118531,7 +122560,7 @@ index 1b93650..49c54f2 100644
generic_fillattr(inode, stat);
if (table)
stat->mode = (stat->mode & S_IFMT) | table->mode;
-@@ -794,13 +838,13 @@ static const struct file_operations proc_sys_dir_file_operations = {
+@@ -800,13 +844,13 @@ static const struct file_operations proc_sys_dir_file_operations = {
.llseek = generic_file_llseek,
};
@@ -118547,7 +122576,7 @@ index 1b93650..49c54f2 100644
.lookup = proc_sys_lookup,
.permission = proc_sys_permission,
.setattr = proc_sys_setattr,
-@@ -877,7 +921,7 @@ static struct ctl_dir *find_subdir(struct ctl_dir *dir,
+@@ -883,7 +927,7 @@ static struct ctl_dir *find_subdir(struct ctl_dir *dir,
static struct ctl_dir *new_dir(struct ctl_table_set *set,
const char *name, int namelen)
{
@@ -118556,7 +122585,7 @@ index 1b93650..49c54f2 100644
struct ctl_dir *new;
struct ctl_node *node;
char *new_name;
-@@ -889,7 +933,7 @@ static struct ctl_dir *new_dir(struct ctl_table_set *set,
+@@ -895,7 +939,7 @@ static struct ctl_dir *new_dir(struct ctl_table_set *set,
return NULL;
node = (struct ctl_node *)(new + 1);
@@ -118565,7 +122594,16 @@ index 1b93650..49c54f2 100644
new_name = (char *)(table + 2);
memcpy(new_name, name, namelen);
new_name[namelen] = '\0';
-@@ -1058,7 +1102,8 @@ static int sysctl_check_table(const char *path, struct ctl_table *table)
+@@ -953,7 +997,7 @@ static struct ctl_dir *get_subdir(struct ctl_dir *dir,
+ goto failed;
+ subdir = new;
+ found:
+- subdir->header.nreg++;
++ atomic_inc(&subdir->header.nreg);
+ failed:
+ if (IS_ERR(subdir)) {
+ pr_err("sysctl could not get directory: ");
+@@ -1064,7 +1108,8 @@ static int sysctl_check_table(const char *path, struct ctl_table *table)
static struct ctl_table_header *new_links(struct ctl_dir *dir, struct ctl_table *table,
struct ctl_table_root *link_root)
{
@@ -118575,7 +122613,7 @@ index 1b93650..49c54f2 100644
struct ctl_table_header *links;
struct ctl_node *node;
char *link_name;
-@@ -1081,7 +1126,7 @@ static struct ctl_table_header *new_links(struct ctl_dir *dir, struct ctl_table
+@@ -1087,7 +1132,7 @@ static struct ctl_table_header *new_links(struct ctl_dir *dir, struct ctl_table
return NULL;
node = (struct ctl_node *)(links + 1);
@@ -118584,7 +122622,43 @@ index 1b93650..49c54f2 100644
link_name = (char *)&link_table[nr_entries + 1];
for (link = link_table, entry = table; entry->procname; link++, entry++) {
-@@ -1329,8 +1374,8 @@ static int register_leaf_sysctl_tables(const char *path, char *pos,
+@@ -1099,7 +1144,7 @@ static struct ctl_table_header *new_links(struct ctl_dir *dir, struct ctl_table
+ link_name += len;
+ }
+ init_header(links, dir->header.root, dir->header.set, node, link_table);
+- links->nreg = nr_entries;
++ atomic_set(&links->nreg, nr_entries);
+
+ return links;
+ }
+@@ -1127,7 +1172,7 @@ static bool get_links(struct ctl_dir *dir,
+ for (entry = table; entry->procname; entry++) {
+ const char *procname = entry->procname;
+ link = find_entry(&head, dir, procname, strlen(procname));
+- head->nreg++;
++ atomic_inc(&head->nreg);
+ }
+ return true;
+ }
+@@ -1149,7 +1194,7 @@ static int insert_links(struct ctl_table_header *head)
+ if (get_links(core_parent, head->ctl_table, head->root))
+ return 0;
+
+- core_parent->header.nreg++;
++ atomic_inc(&core_parent->header.nreg);
+ spin_unlock(&sysctl_lock);
+
+ links = new_links(core_parent, head->ctl_table, head->root);
+@@ -1243,7 +1288,7 @@ struct ctl_table_header *__register_sysctl_table(
+ spin_lock(&sysctl_lock);
+ dir = &set->dir;
+ /* Reference moved down the diretory tree get_subdir */
+- dir->header.nreg++;
++ atomic_inc(&dir->header.nreg);
+ spin_unlock(&sysctl_lock);
+
+ /* Find the directory for the ctl_table */
+@@ -1335,8 +1380,8 @@ static int register_leaf_sysctl_tables(const char *path, char *pos,
struct ctl_table_header ***subheader, struct ctl_table_set *set,
struct ctl_table *table)
{
@@ -118595,7 +122669,7 @@ index 1b93650..49c54f2 100644
int nr_files = 0;
int nr_dirs = 0;
int err = -ENOMEM;
-@@ -1342,10 +1387,9 @@ static int register_leaf_sysctl_tables(const char *path, char *pos,
+@@ -1348,10 +1393,9 @@ static int register_leaf_sysctl_tables(const char *path, char *pos,
nr_files++;
}
@@ -118607,7 +122681,7 @@ index 1b93650..49c54f2 100644
files = kzalloc(sizeof(struct ctl_table) * (nr_files + 1),
GFP_KERNEL);
if (!files)
-@@ -1363,7 +1407,7 @@ static int register_leaf_sysctl_tables(const char *path, char *pos,
+@@ -1369,7 +1413,7 @@ static int register_leaf_sysctl_tables(const char *path, char *pos,
/* Register everything except a directory full of subdirectories */
if (nr_files || !nr_dirs) {
struct ctl_table_header *header;
@@ -118616,6 +122690,21 @@ index 1b93650..49c54f2 100644
if (!header) {
kfree(ctl_table_arg);
goto out;
+@@ -1550,12 +1594,12 @@ static void drop_sysctl_table(struct ctl_table_header *header)
+ {
+ struct ctl_dir *parent = header->parent;
+
+- if (--header->nreg)
++ if (atomic_dec_return(&header->nreg))
+ return;
+
+ put_links(header);
+ start_unregistering(header);
+- if (!--header->count)
++ if (atomic_dec_and_test(&header->count))
+ kfree_rcu(header, rcu);
+
+ if (parent)
diff --git a/fs/proc/root.c b/fs/proc/root.c
index 8d3e484..5fc5ce2 100644
--- a/fs/proc/root.c
@@ -118637,7 +122726,7 @@ index 8d3e484..5fc5ce2 100644
}
diff --git a/fs/proc/stat.c b/fs/proc/stat.c
-index 7907e45..027fceb 100644
+index d700c42..f711c86 100644
--- a/fs/proc/stat.c
+++ b/fs/proc/stat.c
@@ -11,6 +11,7 @@
@@ -118705,9 +122794,9 @@ index 7907e45..027fceb 100644
+ if (unrestricted)
+ sum += arch_irq_stat();
- seq_puts(p, "cpu ");
- seq_put_decimal_ull(p, ' ', cputime64_to_clock_t(user));
-@@ -134,12 +149,14 @@ static int show_stat(struct seq_file *p, void *v)
+ seq_put_decimal_ull(p, "cpu ", cputime64_to_clock_t(user));
+ seq_put_decimal_ull(p, " ", cputime64_to_clock_t(nice));
+@@ -133,12 +148,14 @@ static int show_stat(struct seq_file *p, void *v)
nice = kcpustat_cpu(i).cpustat[CPUTIME_NICE];
system = kcpustat_cpu(i).cpustat[CPUTIME_SYSTEM];
idle = get_idle_time(i);
@@ -118726,18 +122815,18 @@ index 7907e45..027fceb 100644
+ guest_nice = kcpustat_cpu(i).cpustat[CPUTIME_GUEST_NICE];
+ }
seq_printf(p, "cpu%d", i);
- seq_put_decimal_ull(p, ' ', cputime64_to_clock_t(user));
- seq_put_decimal_ull(p, ' ', cputime64_to_clock_t(nice));
-@@ -157,7 +174,7 @@ static int show_stat(struct seq_file *p, void *v)
+ seq_put_decimal_ull(p, " ", cputime64_to_clock_t(user));
+ seq_put_decimal_ull(p, " ", cputime64_to_clock_t(nice));
+@@ -156,7 +173,7 @@ static int show_stat(struct seq_file *p, void *v)
/* sum again ? it could be updated? */
for_each_irq_nr(j)
-- seq_put_decimal_ull(p, ' ', kstat_irqs_usr(j));
-+ seq_put_decimal_ull(p, ' ', unrestricted ? kstat_irqs_usr(j) : 0ULL);
+- seq_put_decimal_ull(p, " ", kstat_irqs_usr(j));
++ seq_put_decimal_ull(p, " ", unrestricted ? kstat_irqs_usr(j) : 0ULL);
seq_printf(p,
"\nctxt %llu\n"
-@@ -165,11 +182,11 @@ static int show_stat(struct seq_file *p, void *v)
+@@ -164,11 +181,11 @@ static int show_stat(struct seq_file *p, void *v)
"processes %lu\n"
"procs_running %lu\n"
"procs_blocked %lu\n",
@@ -118751,10 +122840,10 @@ index 7907e45..027fceb 100644
+ unrestricted ? nr_running() : 0UL,
+ unrestricted ? nr_iowait() : 0UL);
- seq_printf(p, "softirq %llu", (unsigned long long)sum_softirq);
+ seq_put_decimal_ull(p, "softirq ", (unsigned long long)sum_softirq);
diff --git a/fs/proc/task_mmu.c b/fs/proc/task_mmu.c
-index f6fa99e..ea67f46 100644
+index 35b92d8..eb959b5 100644
--- a/fs/proc/task_mmu.c
+++ b/fs/proc/task_mmu.c
@@ -15,12 +15,19 @@
@@ -118814,7 +122903,7 @@ index f6fa99e..ea67f46 100644
hugetlb_report_usage(m, mm);
}
-@@ -230,7 +254,11 @@ static int proc_maps_open(struct inode *inode, struct file *file,
+@@ -232,7 +256,11 @@ static int proc_maps_open(struct inode *inode, struct file *file,
return -ENOMEM;
priv->inode = inode;
@@ -118827,7 +122916,15 @@ index f6fa99e..ea67f46 100644
if (IS_ERR(priv->mm)) {
int err = PTR_ERR(priv->mm);
-@@ -285,7 +313,7 @@ static int is_stack(struct proc_maps_private *priv,
+@@ -273,12 +301,13 @@ static int is_stack(struct proc_maps_private *priv,
+ * its "stack". It's not even well-defined for programs written
+ * languages like Go.
+ */
+- return vma->vm_start <= vma->vm_mm->start_stack &&
+- vma->vm_end >= vma->vm_mm->start_stack;
++ return (vma->vm_start <= vma->vm_mm->start_stack &&
++ vma->vm_end >= vma->vm_mm->start_stack) ||
++ (vma->vm_flags & (VM_GROWSDOWN | VM_GROWSUP));
}
static void
@@ -118836,7 +122933,7 @@ index f6fa99e..ea67f46 100644
{
struct mm_struct *mm = vma->vm_mm;
struct file *file = vma->vm_file;
-@@ -304,13 +332,8 @@ show_map_vma(struct seq_file *m, struct vm_area_struct *vma, int is_pid)
+@@ -297,13 +326,8 @@ show_map_vma(struct seq_file *m, struct vm_area_struct *vma, int is_pid)
pgoff = ((loff_t)vma->vm_pgoff) << PAGE_SHIFT;
}
@@ -118852,7 +122949,7 @@ index f6fa99e..ea67f46 100644
seq_setwidth(m, 25 + sizeof(void *) * 6 - 1);
seq_printf(m, "%08lx-%08lx %c%c%c%c %08llx %02x:%02x %lu ",
-@@ -320,7 +343,7 @@ show_map_vma(struct seq_file *m, struct vm_area_struct *vma, int is_pid)
+@@ -313,7 +337,7 @@ show_map_vma(struct seq_file *m, struct vm_area_struct *vma, int is_pid)
flags & VM_WRITE ? 'w' : '-',
flags & VM_EXEC ? 'x' : '-',
flags & VM_MAYSHARE ? 's' : 'p',
@@ -118861,7 +122958,7 @@ index f6fa99e..ea67f46 100644
MAJOR(dev), MINOR(dev), ino);
/*
-@@ -329,7 +352,7 @@ show_map_vma(struct seq_file *m, struct vm_area_struct *vma, int is_pid)
+@@ -322,7 +346,7 @@ show_map_vma(struct seq_file *m, struct vm_area_struct *vma, int is_pid)
*/
if (file) {
seq_pad(m, ' ');
@@ -118870,7 +122967,7 @@ index f6fa99e..ea67f46 100644
goto done;
}
-@@ -366,7 +389,20 @@ done:
+@@ -359,7 +383,20 @@ show_map_vma(struct seq_file *m, struct vm_area_struct *vma, int is_pid)
static int show_map(struct seq_file *m, void *v, int is_pid)
{
@@ -118892,7 +122989,7 @@ index f6fa99e..ea67f46 100644
m_cache_vma(m, v);
return 0;
}
-@@ -654,6 +690,9 @@ static void show_smap_vma_flags(struct seq_file *m, struct vm_area_struct *vma)
+@@ -647,6 +684,9 @@ static void show_smap_vma_flags(struct seq_file *m, struct vm_area_struct *vma)
[ilog2(VM_RAND_READ)] = "rr",
[ilog2(VM_DONTCOPY)] = "dc",
[ilog2(VM_DONTEXPAND)] = "de",
@@ -118902,7 +122999,7 @@ index f6fa99e..ea67f46 100644
[ilog2(VM_ACCOUNT)] = "ac",
[ilog2(VM_NORESERVE)] = "nr",
[ilog2(VM_HUGETLB)] = "ht",
-@@ -735,7 +774,14 @@ static int show_smap(struct seq_file *m, void *v, int is_pid)
+@@ -728,7 +768,14 @@ static int show_smap(struct seq_file *m, void *v, int is_pid)
.mm = vma->vm_mm,
.private = &mss,
};
@@ -118917,7 +123014,7 @@ index f6fa99e..ea67f46 100644
memset(&mss, 0, sizeof mss);
#ifdef CONFIG_SHMEM
-@@ -762,10 +808,15 @@ static int show_smap(struct seq_file *m, void *v, int is_pid)
+@@ -755,10 +802,15 @@ static int show_smap(struct seq_file *m, void *v, int is_pid)
}
#endif
@@ -118936,7 +123033,7 @@ index f6fa99e..ea67f46 100644
seq_printf(m,
"Size: %8lu kB\n"
-@@ -786,7 +837,7 @@ static int show_smap(struct seq_file *m, void *v, int is_pid)
+@@ -779,7 +831,7 @@ static int show_smap(struct seq_file *m, void *v, int is_pid)
"KernelPageSize: %8lu kB\n"
"MMUPageSize: %8lu kB\n"
"Locked: %8lu kB\n",
@@ -118945,7 +123042,7 @@ index f6fa99e..ea67f46 100644
mss.resident >> 10,
(unsigned long)(mss.pss >> (10 + PSS_SHIFT)),
mss.shared_clean >> 10,
-@@ -1443,7 +1494,7 @@ static int pagemap_open(struct inode *inode, struct file *file)
+@@ -1436,7 +1488,7 @@ static int pagemap_open(struct inode *inode, struct file *file)
{
struct mm_struct *mm;
@@ -118954,7 +123051,7 @@ index f6fa99e..ea67f46 100644
if (IS_ERR(mm))
return PTR_ERR(mm);
file->private_data = mm;
-@@ -1646,6 +1697,13 @@ static int show_numa_map(struct seq_file *m, void *v, int is_pid)
+@@ -1639,6 +1691,13 @@ static int show_numa_map(struct seq_file *m, void *v, int is_pid)
char buffer[64];
int nid;
@@ -118968,7 +123065,7 @@ index f6fa99e..ea67f46 100644
if (!mm)
return 0;
-@@ -1660,11 +1718,15 @@ static int show_numa_map(struct seq_file *m, void *v, int is_pid)
+@@ -1653,11 +1712,15 @@ static int show_numa_map(struct seq_file *m, void *v, int is_pid)
mpol_to_str(buffer, sizeof(buffer), proc_priv->task_mempolicy);
}
@@ -118984,9 +123081,9 @@ index f6fa99e..ea67f46 100644
+ seq_file_path(m, file, "\n\t\\= ");
} else if (vma->vm_start <= mm->brk && vma->vm_end >= mm->start_brk) {
seq_puts(m, " heap");
- } else if (is_stack(proc_priv, vma, is_pid)) {
+ } else if (is_stack(proc_priv, vma)) {
diff --git a/fs/proc/task_nommu.c b/fs/proc/task_nommu.c
-index faacb0c..b185575 100644
+index 3717562..b6237ab 100644
--- a/fs/proc/task_nommu.c
+++ b/fs/proc/task_nommu.c
@@ -51,7 +51,7 @@ void task_mem(struct seq_file *m, struct mm_struct *mm)
@@ -118998,25 +123095,28 @@ index faacb0c..b185575 100644
sbytes += kobjsize(current->fs);
else
bytes += kobjsize(current->fs);
-@@ -142,7 +142,7 @@ static int is_stack(struct proc_maps_private *priv,
- stack = vma_is_stack_for_task(vma, task);
- rcu_read_unlock();
- }
-- return stack;
-+ return stack || (vma->vm_flags & (VM_GROWSDOWN | VM_GROWSUP));
+@@ -133,8 +133,9 @@ static int is_stack(struct proc_maps_private *priv,
+ * its "stack". It's not even well-defined for programs written
+ * languages like Go.
+ */
+- return vma->vm_start <= mm->start_stack &&
+- vma->vm_end >= mm->start_stack;
++ return (vma->vm_start <= mm->start_stack &&
++ vma->vm_end >= mm->start_stack) ||
++ (vma->vm_flags & (VM_GROWSDOWN | VM_GROWSUP));
}
/*
-@@ -183,7 +183,7 @@ static int nommu_vma_show(struct seq_file *m, struct vm_area_struct *vma,
+@@ -175,7 +176,7 @@ static int nommu_vma_show(struct seq_file *m, struct vm_area_struct *vma,
if (file) {
seq_pad(m, ' ');
- seq_file_path(m, file, "");
+ seq_file_path(m, file, "\n\\");
- } else if (mm && is_stack(priv, vma, is_pid)) {
+ } else if (mm && is_stack(priv, vma)) {
seq_pad(m, ' ');
seq_printf(m, "[stack]");
-@@ -287,7 +287,7 @@ static int maps_open(struct inode *inode, struct file *file,
+@@ -279,7 +280,7 @@ static int maps_open(struct inode *inode, struct file *file,
return -ENOMEM;
priv->inode = inode;
@@ -119130,7 +123230,7 @@ index 8b25267..0706a93 100644
if (!msg_head) {
printk(KERN_ERR
diff --git a/fs/read_write.c b/fs/read_write.c
-index 66215a7..7d66f62 100644
+index 190e0d36..2ac0f9c 100644
--- a/fs/read_write.c
+++ b/fs/read_write.c
@@ -23,7 +23,8 @@
@@ -119173,7 +123273,7 @@ index 66215a7..7d66f62 100644
if (nr < 0) {
if (!ret)
-@@ -815,7 +819,8 @@ static ssize_t do_readv_writev(int type, struct file *file,
+@@ -844,7 +848,8 @@ static ssize_t do_readv_writev(int type, struct file *file,
struct iovec *iov = iovstack;
struct iov_iter iter;
ssize_t ret;
@@ -119183,7 +123283,7 @@ index 66215a7..7d66f62 100644
iter_fn_t iter_fn;
ret = import_iovec(type, uvector, nr_segs,
-@@ -831,10 +836,12 @@ static ssize_t do_readv_writev(int type, struct file *file,
+@@ -860,10 +865,12 @@ static ssize_t do_readv_writev(int type, struct file *file,
goto out;
if (type == READ) {
@@ -119198,7 +123298,7 @@ index 66215a7..7d66f62 100644
iter_fn = file->f_op->write_iter;
file_start_write(file);
}
-@@ -842,7 +849,7 @@ static ssize_t do_readv_writev(int type, struct file *file,
+@@ -871,7 +878,7 @@ static ssize_t do_readv_writev(int type, struct file *file,
if (iter_fn)
ret = do_iter_readv_writev(file, &iter, pos, iter_fn, flags);
else
@@ -119207,7 +123307,7 @@ index 66215a7..7d66f62 100644
if (type != READ)
file_end_write(file);
-@@ -1040,7 +1047,8 @@ static ssize_t compat_do_readv_writev(int type, struct file *file,
+@@ -1069,7 +1076,8 @@ static ssize_t compat_do_readv_writev(int type, struct file *file,
struct iovec *iov = iovstack;
struct iov_iter iter;
ssize_t ret;
@@ -119217,7 +123317,7 @@ index 66215a7..7d66f62 100644
iter_fn_t iter_fn;
ret = compat_import_iovec(type, uvector, nr_segs,
-@@ -1056,10 +1064,12 @@ static ssize_t compat_do_readv_writev(int type, struct file *file,
+@@ -1085,10 +1093,12 @@ static ssize_t compat_do_readv_writev(int type, struct file *file,
goto out;
if (type == READ) {
@@ -119232,7 +123332,7 @@ index 66215a7..7d66f62 100644
iter_fn = file->f_op->write_iter;
file_start_write(file);
}
-@@ -1067,7 +1077,7 @@ static ssize_t compat_do_readv_writev(int type, struct file *file,
+@@ -1096,7 +1106,7 @@ static ssize_t compat_do_readv_writev(int type, struct file *file,
if (iter_fn)
ret = do_iter_readv_writev(file, &iter, pos, iter_fn, flags);
else
@@ -119425,7 +123525,7 @@ index 2adcde1..7d27bc8 100644
#define __fs_changed(gen,s) (gen != get_generation (s))
#define fs_changed(gen,s) \
diff --git a/fs/reiserfs/super.c b/fs/reiserfs/super.c
-index 74d5ddd..0ce3ad9 100644
+index 0a6ad4e..fbaf9b4 100644
--- a/fs/reiserfs/super.c
+++ b/fs/reiserfs/super.c
@@ -1887,6 +1887,10 @@ static int reiserfs_fill_super(struct super_block *s, void *data, int silent)
@@ -119440,7 +123540,7 @@ index 74d5ddd..0ce3ad9 100644
sbi->s_alloc_options.preallocmin = 0;
/* Preallocate by 16 blocks (17-1) at once */
diff --git a/fs/select.c b/fs/select.c
-index 8ed9da5..4ee3bb4 100644
+index 3d4f85d..98af557 100644
--- a/fs/select.c
+++ b/fs/select.c
@@ -20,6 +20,7 @@
@@ -119451,7 +123551,7 @@ index 8ed9da5..4ee3bb4 100644
#include <linux/personality.h> /* for STICKY_TIMEOUTS */
#include <linux/file.h>
#include <linux/fdtable.h>
-@@ -723,7 +724,7 @@ SYSCALL_DEFINE6(pselect6, int, n, fd_set __user *, inp, fd_set __user *, outp,
+@@ -731,7 +732,7 @@ SYSCALL_DEFINE6(pselect6, int, n, fd_set __user *, inp, fd_set __user *, outp,
#ifdef __ARCH_WANT_SYS_OLD_SELECT
struct sel_arg_struct {
@@ -119460,7 +123560,7 @@ index 8ed9da5..4ee3bb4 100644
fd_set __user *inp, *outp, *exp;
struct timeval __user *tvp;
};
-@@ -886,6 +887,7 @@ int do_sys_poll(struct pollfd __user *ufds, unsigned int nfds,
+@@ -894,6 +895,7 @@ int do_sys_poll(struct pollfd __user *ufds, unsigned int nfds,
struct poll_list *walk = head;
unsigned long todo = nfds;
@@ -119469,7 +123569,7 @@ index 8ed9da5..4ee3bb4 100644
return -EINVAL;
diff --git a/fs/seq_file.c b/fs/seq_file.c
-index 6dc4296..cfdaf8e 100644
+index 368bfb9..5b43f37 100644
--- a/fs/seq_file.c
+++ b/fs/seq_file.c
@@ -14,6 +14,8 @@
@@ -119527,7 +123627,7 @@ index 6dc4296..cfdaf8e 100644
static int traverse(struct seq_file *m, loff_t offset)
{
loff_t pos = 0, index;
-@@ -169,7 +185,7 @@ Eoverflow:
+@@ -169,7 +185,7 @@ static int traverse(struct seq_file *m, loff_t offset)
ssize_t seq_read(struct file *file, char __user *buf, size_t size, loff_t *ppos)
{
struct seq_file *m = file->private_data;
@@ -119564,40 +123664,28 @@ index 6dc4296..cfdaf8e 100644
{
const struct seq_operations *op = ((struct seq_file *)file->private_data)->op;
diff --git a/fs/splice.c b/fs/splice.c
-index dd9bf7e..3d55c3e 100644
+index 63b8f54..8292069 100644
--- a/fs/splice.c
+++ b/fs/splice.c
-@@ -195,7 +195,7 @@ ssize_t splice_to_pipe(struct pipe_inode_info *pipe,
- pipe_lock(pipe);
-
- for (;;) {
-- if (!pipe->readers) {
-+ if (!atomic_read(&pipe->readers)) {
- send_sig(SIGPIPE, current, 0);
- if (!ret)
- ret = -EPIPE;
-@@ -218,7 +218,7 @@ ssize_t splice_to_pipe(struct pipe_inode_info *pipe,
- page_nr++;
- ret += buf->len;
-
-- if (pipe->files)
-+ if (atomic_read(&pipe->files))
- do_wakeup = 1;
-
- if (!--spd->nr_pages)
-@@ -249,9 +249,9 @@ ssize_t splice_to_pipe(struct pipe_inode_info *pipe,
- do_wakeup = 0;
- }
+@@ -188,7 +188,7 @@ ssize_t splice_to_pipe(struct pipe_inode_info *pipe,
+ if (!spd_pages)
+ return 0;
-- pipe->waiting_writers++;
-+ atomic_inc(&pipe->waiting_writers);
- pipe_wait(pipe);
-- pipe->waiting_writers--;
-+ atomic_dec(&pipe->waiting_writers);
- }
+- if (unlikely(!pipe->readers)) {
++ if (unlikely(!atomic_read(&pipe->readers))) {
+ send_sig(SIGPIPE, current, 0);
+ ret = -EPIPE;
+ goto out;
+@@ -227,7 +227,7 @@ ssize_t add_to_pipe(struct pipe_inode_info *pipe, struct pipe_buffer *buf)
+ {
+ int ret;
- pipe_unlock(pipe);
-@@ -580,7 +580,7 @@ static ssize_t kernel_readv(struct file *file, const struct iovec *vec,
+- if (unlikely(!pipe->readers)) {
++ if (unlikely(!atomic_read(&pipe->readers))) {
+ send_sig(SIGPIPE, current, 0);
+ ret = -EPIPE;
+ } else if (pipe->nrbufs == pipe->buffers) {
+@@ -359,7 +359,7 @@ static ssize_t kernel_readv(struct file *file, const struct kvec *vec,
old_fs = get_fs();
set_fs(get_ds());
/* The cast to a user pointer is valid due to the set_fs() */
@@ -119606,7 +123694,7 @@ index dd9bf7e..3d55c3e 100644
set_fs(old_fs);
return res;
-@@ -595,7 +595,7 @@ ssize_t kernel_write(struct file *file, const char *buf, size_t count,
+@@ -374,7 +374,7 @@ ssize_t kernel_write(struct file *file, const char *buf, size_t count,
old_fs = get_fs();
set_fs(get_ds());
/* The cast to a user pointer is valid due to the set_fs() */
@@ -119615,17 +123703,8 @@ index dd9bf7e..3d55c3e 100644
set_fs(old_fs);
return res;
-@@ -648,7 +648,7 @@ ssize_t default_file_splice_read(struct file *in, loff_t *ppos,
- goto err;
-
- this_len = min_t(size_t, len, PAGE_SIZE - offset);
-- vec[i].iov_base = (void __user *) page_address(page);
-+ vec[i].iov_base = (void __force_user *) page_address(page);
- vec[i].iov_len = this_len;
- spd.pages[i] = page;
- spd.nr_pages++;
-@@ -787,7 +787,7 @@ static int splice_from_pipe_feed(struct pipe_inode_info *pipe, struct splice_des
- ops->release(pipe, buf);
+@@ -533,7 +533,7 @@ static int splice_from_pipe_feed(struct pipe_inode_info *pipe, struct splice_des
+ pipe_buf_release(pipe, buf);
pipe->curbuf = (pipe->curbuf + 1) & (pipe->buffers - 1);
pipe->nrbufs--;
- if (pipe->files)
@@ -119633,7 +123712,7 @@ index dd9bf7e..3d55c3e 100644
sd->need_wakeup = true;
}
-@@ -818,10 +818,10 @@ static int splice_from_pipe_next(struct pipe_inode_info *pipe, struct splice_des
+@@ -564,10 +564,10 @@ static int splice_from_pipe_next(struct pipe_inode_info *pipe, struct splice_des
return -ERESTARTSYS;
while (!pipe->nrbufs) {
@@ -119646,8 +123725,8 @@ index dd9bf7e..3d55c3e 100644
return 0;
if (sd->flags & SPLICE_F_NONBLOCK)
-@@ -1037,7 +1037,7 @@ iter_file_splice_write(struct pipe_inode_info *pipe, struct file *out,
- ops->release(pipe, buf);
+@@ -781,7 +781,7 @@ iter_file_splice_write(struct pipe_inode_info *pipe, struct file *out,
+ pipe_buf_release(pipe, buf);
pipe->curbuf = (pipe->curbuf + 1) & (pipe->buffers - 1);
pipe->nrbufs--;
- if (pipe->files)
@@ -119655,7 +123734,7 @@ index dd9bf7e..3d55c3e 100644
sd.need_wakeup = true;
} else {
buf->offset += ret;
-@@ -1200,7 +1200,7 @@ ssize_t splice_direct_to_actor(struct file *in, struct splice_desc *sd,
+@@ -944,7 +944,7 @@ ssize_t splice_direct_to_actor(struct file *in, struct splice_desc *sd,
* out of the pipe right after the splice_to_pipe(). So set
* PIPE_READERS appropriately.
*/
@@ -119664,15 +123743,28 @@ index dd9bf7e..3d55c3e 100644
current->splice_pipe = pipe;
}
-@@ -1507,6 +1507,7 @@ static int get_iovec_page_array(const struct iovec __user *iov,
-
- partial[buffers].offset = off;
- partial[buffers].len = plen;
-+ partial[buffers].private = 0;
+@@ -1087,7 +1087,7 @@ EXPORT_SYMBOL(do_splice_direct);
+ static int wait_for_space(struct pipe_inode_info *pipe, unsigned flags)
+ {
+ for (;;) {
+- if (unlikely(!pipe->readers)) {
++ if (unlikely(!atomic_read(&pipe->readers))) {
+ send_sig(SIGPIPE, current, 0);
+ return -EPIPE;
+ }
+@@ -1097,9 +1097,9 @@ static int wait_for_space(struct pipe_inode_info *pipe, unsigned flags)
+ return -EAGAIN;
+ if (signal_pending(current))
+ return -ERESTARTSYS;
+- pipe->waiting_writers++;
++ atomic_inc(&pipe->waiting_writers);
+ pipe_wait(pipe);
+- pipe->waiting_writers--;
++ atomic_dec(&pipe->waiting_writers);
+ }
+ }
- off = 0;
- len -= plen;
-@@ -1738,9 +1739,9 @@ static int ipipe_prep(struct pipe_inode_info *pipe, unsigned int flags)
+@@ -1446,9 +1446,9 @@ static int ipipe_prep(struct pipe_inode_info *pipe, unsigned int flags)
ret = -ERESTARTSYS;
break;
}
@@ -119684,7 +123776,7 @@ index dd9bf7e..3d55c3e 100644
if (flags & SPLICE_F_NONBLOCK) {
ret = -EAGAIN;
break;
-@@ -1772,7 +1773,7 @@ static int opipe_prep(struct pipe_inode_info *pipe, unsigned int flags)
+@@ -1480,7 +1480,7 @@ static int opipe_prep(struct pipe_inode_info *pipe, unsigned int flags)
pipe_lock(pipe);
while (pipe->nrbufs >= pipe->buffers) {
@@ -119693,7 +123785,7 @@ index dd9bf7e..3d55c3e 100644
send_sig(SIGPIPE, current, 0);
ret = -EPIPE;
break;
-@@ -1785,9 +1786,9 @@ static int opipe_prep(struct pipe_inode_info *pipe, unsigned int flags)
+@@ -1493,9 +1493,9 @@ static int opipe_prep(struct pipe_inode_info *pipe, unsigned int flags)
ret = -ERESTARTSYS;
break;
}
@@ -119705,7 +123797,7 @@ index dd9bf7e..3d55c3e 100644
}
pipe_unlock(pipe);
-@@ -1823,14 +1824,14 @@ retry:
+@@ -1531,14 +1531,14 @@ static int splice_pipe_to_pipe(struct pipe_inode_info *ipipe,
pipe_double_lock(ipipe, opipe);
do {
@@ -119722,7 +123814,7 @@ index dd9bf7e..3d55c3e 100644
break;
/*
-@@ -1927,7 +1928,7 @@ static int link_pipe(struct pipe_inode_info *ipipe,
+@@ -1635,7 +1635,7 @@ static int link_pipe(struct pipe_inode_info *ipipe,
pipe_double_lock(ipipe, opipe);
do {
@@ -119731,7 +123823,7 @@ index dd9bf7e..3d55c3e 100644
send_sig(SIGPIPE, current, 0);
if (!ret)
ret = -EPIPE;
-@@ -1972,7 +1973,7 @@ static int link_pipe(struct pipe_inode_info *ipipe,
+@@ -1680,7 +1680,7 @@ static int link_pipe(struct pipe_inode_info *ipipe,
* return EAGAIN if we have the potential of some data in the
* future, otherwise just return 0
*/
@@ -119822,7 +123914,7 @@ index bc045c7..68725c1 100644
generic_fillattr(inode, stat);
return 0;
diff --git a/fs/super.c b/fs/super.c
-index 47d11e0..31ae978 100644
+index c183835..9a1cac8 100644
--- a/fs/super.c
+++ b/fs/super.c
@@ -357,7 +357,8 @@ EXPORT_SYMBOL(deactivate_super);
@@ -119836,7 +123928,7 @@ index 47d11e0..31ae978 100644
s->s_count++;
spin_unlock(&sb_lock);
diff --git a/fs/sysfs/dir.c b/fs/sysfs/dir.c
-index 94374e4..b5da3a1 100644
+index 2b67bda..45acc9f 100644
--- a/fs/sysfs/dir.c
+++ b/fs/sysfs/dir.c
@@ -33,6 +33,10 @@ void sysfs_warn_dup(struct kernfs_node *parent, const char *name)
@@ -119909,7 +124001,7 @@ index 6c21228..9afd5fe 100644
if (sbi->s_bytesex == BYTESEX_PDP)
return PDP_swab((__force __u32)n);
diff --git a/fs/tracefs/inode.c b/fs/tracefs/inode.c
-index ad40b64..9892e72 100644
+index 21d36d2..de3a81d 100644
--- a/fs/tracefs/inode.c
+++ b/fs/tracefs/inode.c
@@ -53,7 +53,7 @@ static const struct file_operations tracefs_file_operations = {
@@ -119958,7 +124050,7 @@ index 2dcf3d4..fa1e496 100644
&data);
if (err)
return ERR_PTR(err);
-@@ -361,8 +362,9 @@ out:
+@@ -361,8 +362,9 @@ int ubifs_find_dirty_leb(struct ubifs_info *c, struct ubifs_lprops *ret_lp,
*/
static int scan_for_free_cb(struct ubifs_info *c,
const struct ubifs_lprops *lprops, int in_tree,
@@ -119978,7 +124070,7 @@ index 2dcf3d4..fa1e496 100644
&data);
if (err)
return ERR_PTR(err);
-@@ -601,8 +603,9 @@ out:
+@@ -601,8 +603,9 @@ int ubifs_find_free_space(struct ubifs_info *c, int min_space, int *offs,
*/
static int scan_for_idx_cb(struct ubifs_info *c,
const struct ubifs_lprops *lprops, int in_tree,
@@ -119998,7 +124090,7 @@ index 2dcf3d4..fa1e496 100644
&data);
if (err)
return ERR_PTR(err);
-@@ -738,18 +741,21 @@ out:
+@@ -738,18 +741,21 @@ int ubifs_find_free_leb_for_idx(struct ubifs_info *c)
return err;
}
@@ -120055,10 +124147,10 @@ index 2dcf3d4..fa1e496 100644
if (err)
return err;
diff --git a/fs/ubifs/lprops.c b/fs/ubifs/lprops.c
-index a0011aa..c8cf709 100644
+index 6c3a1ab..dfd8fe1 100644
--- a/fs/ubifs/lprops.c
+++ b/fs/ubifs/lprops.c
-@@ -1028,8 +1028,9 @@ out:
+@@ -1028,8 +1028,9 @@ void dbg_check_heap(struct ubifs_info *c, struct ubifs_lpt_heap *heap, int cat,
*/
static int scan_check_cb(struct ubifs_info *c,
const struct ubifs_lprops *lp, int in_tree,
@@ -120145,7 +124237,7 @@ index 85959d8..6e511a7 100644
if (!mmget_not_zero(mm))
goto wakeup;
diff --git a/fs/utimes.c b/fs/utimes.c
-index ba54b9e..49fc4d8 100644
+index 22307cd..87b5f86 100644
--- a/fs/utimes.c
+++ b/fs/utimes.c
@@ -1,6 +1,7 @@
@@ -120169,7 +124261,7 @@ index ba54b9e..49fc4d8 100644
inode_lock(inode);
error = notify_change(path->dentry, &newattrs, &delegated_inode);
inode_unlock(inode);
-@@ -99,6 +106,7 @@ retry_deleg:
+@@ -99,6 +106,7 @@ static int utimes_common(struct path *path, struct timespec *times)
goto retry_deleg;
}
@@ -120178,12 +124270,12 @@ index ba54b9e..49fc4d8 100644
out:
return error;
diff --git a/fs/xattr.c b/fs/xattr.c
-index c243905..6f99cc7 100644
+index 2d13b4e..c9348e4 100644
--- a/fs/xattr.c
+++ b/fs/xattr.c
-@@ -215,6 +215,27 @@ vfs_getxattr_alloc(struct dentry *dentry, const char *name, char **xattr_value,
- return error;
+@@ -312,6 +312,22 @@ __vfs_getxattr(struct dentry *dentry, struct inode *inode, const char *name,
}
+ EXPORT_SYMBOL(__vfs_getxattr);
+#ifdef CONFIG_PAX_XATTR_PAX_FLAGS
+ssize_t
@@ -120196,12 +124288,7 @@ index c243905..6f99cc7 100644
+ if (error)
+ return error;
+
-+ if (inode->i_op->getxattr)
-+ error = inode->i_op->getxattr(dentry, inode, XATTR_NAME_USER_PAX_FLAGS, value, size);
-+ else
-+ error = -EOPNOTSUPP;
-+
-+ return error;
++ return __vfs_getxattr(dentry, inode, XATTR_NAME_USER_PAX_FLAGS, value, size);
+}
+EXPORT_SYMBOL(pax_getxattr);
+#endif
@@ -120209,7 +124296,7 @@ index c243905..6f99cc7 100644
ssize_t
vfs_getxattr(struct dentry *dentry, const char *name, void *value, size_t size)
{
-@@ -307,7 +328,7 @@ EXPORT_SYMBOL_GPL(vfs_removexattr);
+@@ -412,7 +428,7 @@ EXPORT_SYMBOL_GPL(vfs_removexattr);
* Extended attribute SET operations
*/
static long
@@ -120218,7 +124305,7 @@ index c243905..6f99cc7 100644
size_t size, int flags)
{
int error;
-@@ -341,7 +362,12 @@ setxattr(struct dentry *d, const char __user *name, const void __user *value,
+@@ -446,7 +462,12 @@ setxattr(struct dentry *d, const char __user *name, const void __user *value,
posix_acl_fix_xattr_from_user(kvalue, size);
}
@@ -120232,7 +124319,7 @@ index c243905..6f99cc7 100644
out:
kvfree(kvalue);
-@@ -360,7 +386,7 @@ retry:
+@@ -465,7 +486,7 @@ static int path_setxattr(const char __user *pathname,
return error;
error = mnt_want_write(path.mnt);
if (!error) {
@@ -120241,7 +124328,7 @@ index c243905..6f99cc7 100644
mnt_drop_write(path.mnt);
}
path_put(&path);
-@@ -396,7 +422,7 @@ SYSCALL_DEFINE5(fsetxattr, int, fd, const char __user *, name,
+@@ -501,7 +522,7 @@ SYSCALL_DEFINE5(fsetxattr, int, fd, const char __user *, name,
audit_file(f.file);
error = mnt_want_write_file(f.file);
if (!error) {
@@ -120250,7 +124337,7 @@ index c243905..6f99cc7 100644
mnt_drop_write_file(f.file);
}
fdput(f);
-@@ -576,7 +602,7 @@ SYSCALL_DEFINE3(flistxattr, int, fd, char __user *, list, size_t, size)
+@@ -681,7 +702,7 @@ SYSCALL_DEFINE3(flistxattr, int, fd, char __user *, list, size_t, size)
* Extended attribute REMOVE operations
*/
static long
@@ -120259,7 +124346,7 @@ index c243905..6f99cc7 100644
{
int error;
char kname[XATTR_NAME_MAX + 1];
-@@ -587,7 +613,10 @@ removexattr(struct dentry *d, const char __user *name)
+@@ -692,7 +713,10 @@ removexattr(struct dentry *d, const char __user *name)
if (error < 0)
return error;
@@ -120271,7 +124358,7 @@ index c243905..6f99cc7 100644
}
static int path_removexattr(const char __user *pathname,
-@@ -601,7 +630,7 @@ retry:
+@@ -706,7 +730,7 @@ static int path_removexattr(const char __user *pathname,
return error;
error = mnt_want_write(path.mnt);
if (!error) {
@@ -120280,7 +124367,7 @@ index c243905..6f99cc7 100644
mnt_drop_write(path.mnt);
}
path_put(&path);
-@@ -627,14 +656,16 @@ SYSCALL_DEFINE2(lremovexattr, const char __user *, pathname,
+@@ -732,14 +756,16 @@ SYSCALL_DEFINE2(lremovexattr, const char __user *, pathname,
SYSCALL_DEFINE2(fremovexattr, int, fd, const char __user *, name)
{
struct fd f = fdget(fd);
@@ -120318,10 +124405,10 @@ index 689f746..3e200fc 100644
kmem_zone_free(kmem_zone_t *zone, void *ptr)
{
diff --git a/fs/xfs/libxfs/xfs_bmap.c b/fs/xfs/libxfs/xfs_bmap.c
-index b060bca..bfd7974 100644
+index f52fd63..e6c7b8b 100644
--- a/fs/xfs/libxfs/xfs_bmap.c
+++ b/fs/xfs/libxfs/xfs_bmap.c
-@@ -559,7 +559,7 @@ xfs_bmap_validate_ret(
+@@ -579,7 +579,7 @@ xfs_bmap_validate_ret(
#else
#define xfs_bmap_check_leaf_extents(cur, ip, whichfork) do { } while (0)
@@ -120352,8 +124439,21 @@ index f2dc1a9..5677aa5 100644
out_free_map:
if (mapp != &map)
+diff --git a/fs/xfs/libxfs/xfs_defer.h b/fs/xfs/libxfs/xfs_defer.h
+index f6e93ef..967e58e 100644
+--- a/fs/xfs/libxfs/xfs_defer.h
++++ b/fs/xfs/libxfs/xfs_defer.h
+@@ -92,7 +92,7 @@ struct xfs_defer_op_type {
+ int (*diff_items)(void *, struct list_head *, struct list_head *);
+ void *(*create_intent)(struct xfs_trans *, uint);
+ void (*log_item)(struct xfs_trans *, void *, struct list_head *);
+-};
++} __do_const;
+
+ void xfs_defer_init_op_type(const struct xfs_defer_op_type *type);
+
diff --git a/fs/xfs/xfs_ioctl.c b/fs/xfs/xfs_ioctl.c
-index 96a70fd..de3d84c 100644
+index a391975..7474a84 100644
--- a/fs/xfs/xfs_ioctl.c
+++ b/fs/xfs/xfs_ioctl.c
@@ -121,7 +121,7 @@ xfs_find_handle(
@@ -120365,7 +124465,7 @@ index 96a70fd..de3d84c 100644
copy_to_user(hreq->ohandlen, &hsize, sizeof(__s32)))
goto out_put;
-@@ -1590,6 +1590,12 @@ xfs_ioc_swapext(
+@@ -1659,6 +1659,12 @@ xfs_ioc_swapext(
goto out_put_tmp_file;
}
@@ -120379,10 +124479,10 @@ index 96a70fd..de3d84c 100644
tip = XFS_I(file_inode(tmp.file));
diff --git a/fs/xfs/xfs_linux.h b/fs/xfs/xfs_linux.h
-index b8d64d5..3e876267 100644
+index 1455b2520..6f717f3 100644
--- a/fs/xfs/xfs_linux.h
+++ b/fs/xfs/xfs_linux.h
-@@ -218,7 +218,7 @@ static inline kgid_t xfs_gid_to_kgid(__uint32_t gid)
+@@ -219,7 +219,7 @@ static inline kgid_t xfs_gid_to_kgid(__uint32_t gid)
* of the compiler which do not like us using do_div in the middle
* of large functions.
*/
@@ -120391,7 +124491,7 @@ index b8d64d5..3e876267 100644
{
__u32 mod;
-@@ -274,7 +274,7 @@ static inline __u32 xfs_do_mod(void *a, __u32 b, int n)
+@@ -275,7 +275,7 @@ static inline __u32 xfs_do_mod(void *a, __u32 b, int n)
return 0;
}
#else
@@ -120401,10 +124501,10 @@ index b8d64d5..3e876267 100644
__u32 mod;
diff --git a/fs/xfs/xfs_super.c b/fs/xfs/xfs_super.c
-index fd6be45..6be6542 100644
+index ade4691..0c6ea60 100644
--- a/fs/xfs/xfs_super.c
+++ b/fs/xfs/xfs_super.c
-@@ -1761,9 +1761,11 @@ xfs_init_zones(void)
+@@ -1812,9 +1812,11 @@ xfs_init_zones(void)
goto out_destroy_efd_zone;
xfs_inode_zone =
@@ -121693,10 +125793,10 @@ index 0000000..e136e5f
+endif
diff --git a/grsecurity/gracl.c b/grsecurity/gracl.c
new file mode 100644
-index 0000000..1bbe70e
+index 0000000..0bfda0c
--- /dev/null
+++ b/grsecurity/gracl.c
-@@ -0,0 +1,2773 @@
+@@ -0,0 +1,2771 @@
+#include <linux/kernel.h>
+#include <linux/module.h>
+#include <linux/sched.h>
@@ -121707,7 +125807,6 @@ index 0000000..1bbe70e
+#include <linux/mount.h>
+#include <linux/tty.h>
+#include <linux/proc_fs.h>
-+#include <linux/lglock.h>
+#include <linux/slab.h>
+#include <linux/vmalloc.h>
+#include <linux/types.h>
@@ -121722,7 +125821,6 @@ index 0000000..1bbe70e
+#include <linux/stop_machine.h>
+#include <linux/fdtable.h>
+#include <linux/percpu.h>
-+#include <linux/lglock.h>
+#include <linux/hugetlb.h>
+#include <linux/posix-timers.h>
+#include <linux/prefetch.h>
@@ -126022,10 +130120,10 @@ index 0000000..c5abda5
+};
diff --git a/grsecurity/gracl_policy.c b/grsecurity/gracl_policy.c
new file mode 100644
-index 0000000..d943ba9
+index 0000000..7c42102
--- /dev/null
+++ b/grsecurity/gracl_policy.c
-@@ -0,0 +1,1784 @@
+@@ -0,0 +1,1782 @@
+#include <linux/kernel.h>
+#include <linux/module.h>
+#include <linux/sched.h>
@@ -126036,7 +130134,6 @@ index 0000000..d943ba9
+#include <linux/mount.h>
+#include <linux/tty.h>
+#include <linux/proc_fs.h>
-+#include <linux/lglock.h>
+#include <linux/slab.h>
+#include <linux/vmalloc.h>
+#include <linux/types.h>
@@ -126051,7 +130148,6 @@ index 0000000..d943ba9
+#include <linux/stop_machine.h>
+#include <linux/fdtable.h>
+#include <linux/percpu.h>
-+#include <linux/lglock.h>
+#include <linux/hugetlb.h>
+#include <linux/posix-timers.h>
+#include "../fs/mount.h"
@@ -131723,7 +135819,7 @@ index 0000000..1af1e63
+ return retval;
+}
diff --git a/include/acpi/acpiosxf.h b/include/acpi/acpiosxf.h
-index 562603d..7ee4475 100644
+index f3414c8..48b2149 100644
--- a/include/acpi/acpiosxf.h
+++ b/include/acpi/acpiosxf.h
@@ -337,11 +337,12 @@ acpi_status acpi_os_signal(u32 function, void *info);
@@ -131741,10 +135837,10 @@ index 562603d..7ee4475 100644
#ifndef ACPI_USE_ALTERNATE_PROTOTYPE_acpi_os_redirect_output
diff --git a/include/acpi/acpixf.h b/include/acpi/acpixf.h
-index 1ff3a76..c52f3b4 100644
+index c7b3a13..951c1f4 100644
--- a/include/acpi/acpixf.h
+++ b/include/acpi/acpixf.h
-@@ -914,7 +914,7 @@ ACPI_MSG_DEPENDENT_RETURN_VOID(ACPI_PRINTF_LIKE(3)
+@@ -929,7 +929,7 @@ ACPI_MSG_DEPENDENT_RETURN_VOID(ACPI_PRINTF_LIKE(3)
/*
* Debug output
*/
@@ -132345,7 +136441,7 @@ index 810431d..0ec4804f 100644
* (puds are folded into pgds so this doesn't get actually called,
* but the define is needed for a generic inline function.)
diff --git a/include/asm-generic/pgtable.h b/include/asm-generic/pgtable.h
-index d4458b6..34e3f46 100644
+index c4f8fd2..c1283ca 100644
--- a/include/asm-generic/pgtable.h
+++ b/include/asm-generic/pgtable.h
@@ -757,6 +757,22 @@ static inline int pmd_protnone(pmd_t pmd)
@@ -132372,22 +136468,22 @@ index d4458b6..34e3f46 100644
#ifdef CONFIG_HAVE_ARCH_HUGE_VMAP
diff --git a/include/asm-generic/sections.h b/include/asm-generic/sections.h
-index af0254c..a4e4da3 100644
+index 4df64a1..74d19f3 100644
--- a/include/asm-generic/sections.h
+++ b/include/asm-generic/sections.h
-@@ -31,6 +31,7 @@ extern char _data[], _sdata[], _edata[];
+@@ -33,6 +33,7 @@ extern char _data[], _sdata[], _edata[];
extern char __bss_start[], __bss_stop[];
extern char __init_begin[], __init_end[];
extern char _sinittext[], _einittext[];
+extern char _sinitdata[], _einitdata[];
+ extern char __start_data_ro_after_init[], __end_data_ro_after_init[];
extern char _end[];
extern char __per_cpu_load[], __per_cpu_start[], __per_cpu_end[];
- extern char __kprobes_text_start[], __kprobes_text_end[];
diff --git a/include/asm-generic/uaccess.h b/include/asm-generic/uaccess.h
-index 6df9b07..8b07d2ff 100644
+index cc6bb31..804a417 100644
--- a/include/asm-generic/uaccess.h
+++ b/include/asm-generic/uaccess.h
-@@ -352,4 +352,20 @@ clear_user(void __user *to, unsigned long n)
+@@ -348,4 +348,20 @@ clear_user(void __user *to, unsigned long n)
return __clear_user(to, n);
}
@@ -132409,10 +136505,10 @@ index 6df9b07..8b07d2ff 100644
+
#endif /* __ASM_GENERIC_UACCESS_H */
diff --git a/include/asm-generic/vmlinux.lds.h b/include/asm-generic/vmlinux.lds.h
-index 2456397..85deae0 100644
+index 31e1d63..2f85b26 100644
--- a/include/asm-generic/vmlinux.lds.h
+++ b/include/asm-generic/vmlinux.lds.h
-@@ -266,6 +266,7 @@
+@@ -274,6 +274,7 @@
VMLINUX_SYMBOL(__start_rodata) = .; \
*(.rodata) *(.rodata.*) \
RO_AFTER_INIT_DATA /* Read only after init */ \
@@ -132420,7 +136516,7 @@ index 2456397..85deae0 100644
*(__vermagic) /* Kernel version magic */ \
. = ALIGN(8); \
VMLINUX_SYMBOL(__start___tracepoints_ptrs) = .; \
-@@ -434,9 +435,20 @@
+@@ -447,9 +448,20 @@
ALIGN_FUNCTION(); \
*(.text.hot .text .text.fixup .text.unlikely) \
*(.ref.text) \
@@ -132441,7 +136537,7 @@ index 2456397..85deae0 100644
/* sched.text is aling to function alignment to secure we have same
* address even at second ld pass when generating System.map */
-@@ -531,7 +543,9 @@
+@@ -551,7 +563,9 @@
MEM_DISCARD(init.data) \
KERNEL_CTORS() \
MCOUNT_REC() \
@@ -132451,7 +136547,7 @@ index 2456397..85deae0 100644
FTRACE_EVENTS() \
TRACE_SYSCALLS() \
KPROBE_BLACKLIST() \
-@@ -555,9 +569,12 @@
+@@ -575,9 +589,12 @@
#define EXIT_DATA \
*(.exit.data) \
@@ -132464,7 +136560,18 @@ index 2456397..85deae0 100644
MEM_DISCARD(exit.rodata)
#define EXIT_TEXT \
-@@ -774,17 +791,18 @@
+@@ -767,7 +784,9 @@
+ *(.data..percpu..first) \
+ . = ALIGN(PAGE_SIZE); \
+ *(.data..percpu..page_aligned) \
+- . = ALIGN(cacheline); \
++ . = ALIGN(PAGE_SIZE); \
++ *(.data..percpu..read_only) \
++ . = ALIGN(PAGE_SIZE); \
+ *(.data..percpu..read_mostly) \
+ . = ALIGN(cacheline); \
+ *(.data..percpu) \
+@@ -794,17 +813,18 @@
* section in the linker script will go there too. @phdr should have
* a leading colon.
*
@@ -132487,7 +136594,7 @@ index 2456397..85deae0 100644
/**
* PERCPU_SECTION - define output section for percpu area, simple version
-@@ -846,12 +864,14 @@
+@@ -866,12 +886,14 @@
#define INIT_DATA_SECTION(initsetup_align) \
.init.data : AT(ADDR(.init.data) - LOAD_OFFSET) { \
@@ -132503,10 +136610,10 @@ index 2456397..85deae0 100644
#define BSS_SECTION(sbss_align, bss_align, stop_align) \
diff --git a/include/crypto/algapi.h b/include/crypto/algapi.h
-index 8637cdf..1907623 100644
+index 404e955..5fa5211 100644
--- a/include/crypto/algapi.h
+++ b/include/crypto/algapi.h
-@@ -38,7 +38,7 @@ struct crypto_type {
+@@ -37,7 +37,7 @@ struct crypto_type {
unsigned int maskclear;
unsigned int maskset;
unsigned int tfmsize;
@@ -132557,10 +136664,10 @@ index ede6b97..1f5b11f 100644
int xts_crypt(struct blkcipher_desc *desc, struct scatterlist *dst,
struct scatterlist *src, unsigned int nbytes,
diff --git a/include/drm/drmP.h b/include/drm/drmP.h
-index 988903a..88e6883 100644
+index 6726440..96d599d 100644
--- a/include/drm/drmP.h
+++ b/include/drm/drmP.h
-@@ -60,6 +60,7 @@
+@@ -61,6 +61,7 @@
#include <asm/mman.h>
#include <asm/pgalloc.h>
@@ -132568,16 +136675,16 @@ index 988903a..88e6883 100644
#include <asm/uaccess.h>
#include <uapi/drm/drm.h>
-@@ -134,7 +135,7 @@ struct dma_buf_attachment;
+@@ -136,7 +137,7 @@ struct dma_buf_attachment;
#define DRM_UT_ATOMIC 0x10
#define DRM_UT_VBL 0x20
--extern __printf(2, 3)
-+extern __printf(2, 3) __nocapture(1)
- void drm_ut_debug_printk(const char *function_name,
- const char *format, ...);
- extern __printf(1, 2)
-@@ -247,10 +248,12 @@ void drm_err(const char *format, ...);
+-extern __printf(6, 7)
++extern __printf(6, 7) __nocapture(4, 5)
+ void drm_dev_printk(const struct device *dev, const char *level,
+ unsigned int category, const char *function_name,
+ const char *prefix, const char *format, ...);
+@@ -322,10 +323,12 @@ void drm_printk(const char *level, unsigned int category,
* \param cmd command.
* \param arg argument.
*/
@@ -132592,7 +136699,7 @@ index 988903a..88e6883 100644
unsigned long arg);
#define DRM_IOCTL_NR(n) _IOC_NR(n)
-@@ -266,9 +269,9 @@ typedef int drm_ioctl_compat_t(struct file *filp, unsigned int cmd,
+@@ -341,9 +344,9 @@ typedef int drm_ioctl_compat_t(struct file *filp, unsigned int cmd,
struct drm_ioctl_desc {
unsigned int cmd;
int flags;
@@ -132604,7 +136711,7 @@ index 988903a..88e6883 100644
/**
* Creates a driver or general drm_ioctl_desc array entry for the given
-@@ -639,7 +642,8 @@ struct drm_driver {
+@@ -713,7 +716,8 @@ struct drm_driver {
/* List of devices hanging off this driver with stealth attach. */
struct list_head legacy_dev_list;
@@ -132613,8 +136720,8 @@ index 988903a..88e6883 100644
+typedef struct drm_driver __no_const drm_driver_no_const;
enum drm_minor_type {
- DRM_MINOR_LEGACY,
-@@ -657,7 +661,8 @@ struct drm_info_list {
+ DRM_MINOR_PRIMARY,
+@@ -731,7 +735,8 @@ struct drm_info_list {
int (*show)(struct seq_file*, void*); /** show callback */
u32 driver_features; /**< Required driver features for this entry */
void *data;
@@ -132624,7 +136731,7 @@ index 988903a..88e6883 100644
/**
* debugfs node structure. This structure represents a debugfs file.
-@@ -718,7 +723,7 @@ struct drm_device {
+@@ -792,7 +797,7 @@ struct drm_device {
/** \name Usage Counters */
/*@{ */
@@ -132634,10 +136741,10 @@ index 988903a..88e6883 100644
int buf_use; /**< Buffers in use -- cannot alloc */
atomic_t buf_alloc; /**< Buffer allocation in progress */
diff --git a/include/drm/drm_mm.h b/include/drm/drm_mm.h
-index fc65118..7d80068 100644
+index 205ddcf..0934d31 100644
--- a/include/drm/drm_mm.h
+++ b/include/drm/drm_mm.h
-@@ -291,7 +291,7 @@ void drm_mm_remove_node(struct drm_mm_node *node);
+@@ -297,7 +297,7 @@ void drm_mm_remove_node(struct drm_mm_node *node);
void drm_mm_replace_node(struct drm_mm_node *old, struct drm_mm_node *new);
void drm_mm_init(struct drm_mm *mm,
u64 start,
@@ -132647,10 +136754,10 @@ index fc65118..7d80068 100644
bool drm_mm_clean(struct drm_mm *mm);
diff --git a/include/drm/drm_modeset_helper_vtables.h b/include/drm/drm_modeset_helper_vtables.h
-index b55f218..0fe15f5 100644
+index 10e449c..f2a0d40 100644
--- a/include/drm/drm_modeset_helper_vtables.h
+++ b/include/drm/drm_modeset_helper_vtables.h
-@@ -638,7 +638,7 @@ struct drm_encoder_helper_funcs {
+@@ -691,7 +691,7 @@ struct drm_encoder_helper_funcs {
int (*atomic_check)(struct drm_encoder *encoder,
struct drm_crtc_state *crtc_state,
struct drm_connector_state *conn_state);
@@ -132659,7 +136766,7 @@ index b55f218..0fe15f5 100644
/**
* drm_encoder_helper_add - sets the helper vtable for an encoder
-@@ -778,6 +778,7 @@ struct drm_connector_helper_funcs {
+@@ -831,6 +831,7 @@ struct drm_connector_helper_funcs {
struct drm_encoder *(*atomic_best_encoder)(struct drm_connector *connector,
struct drm_connector_state *connector_state);
};
@@ -132668,7 +136775,7 @@ index b55f218..0fe15f5 100644
/**
* drm_connector_helper_add - sets the helper vtable for a connector
diff --git a/include/drm/i915_pciids.h b/include/drm/i915_pciids.h
-index 33466bf..3c53007 100644
+index 0d5f426..ac3b055 100644
--- a/include/drm/i915_pciids.h
+++ b/include/drm/i915_pciids.h
@@ -37,7 +37,7 @@
@@ -132696,7 +136803,7 @@ index f49edec..e47b019 100644
int intel_gmch_probe(struct pci_dev *bridge_pdev, struct pci_dev *gpu_pdev,
struct agp_bridge_data *bridge);
diff --git a/include/drm/ttm/ttm_memory.h b/include/drm/ttm/ttm_memory.h
-index 72dcbe8..8db58d7 100644
+index c452089..ca178e7 100644
--- a/include/drm/ttm/ttm_memory.h
+++ b/include/drm/ttm/ttm_memory.h
@@ -48,7 +48,7 @@
@@ -132978,10 +137085,10 @@ index 1303b57..c8196d8 100644
extern void __register_binfmt(struct linux_binfmt *fmt, int insert);
diff --git a/include/linux/bio.h b/include/linux/bio.h
-index 23ddf4b..9115ce0 100644
+index 97cb48f..cd9664a 100644
--- a/include/linux/bio.h
+++ b/include/linux/bio.h
-@@ -354,7 +354,7 @@ static inline void bip_set_seed(struct bio_integrity_payload *bip,
+@@ -352,7 +352,7 @@ static inline void bip_set_seed(struct bio_integrity_payload *bip,
#endif /* CONFIG_BLK_DEV_INTEGRITY */
extern void bio_trim(struct bio *bio, int offset, int size);
@@ -132990,7 +137097,7 @@ index 23ddf4b..9115ce0 100644
gfp_t gfp, struct bio_set *bs);
/**
-@@ -367,7 +367,7 @@ extern struct bio *bio_split(struct bio *bio, int sectors,
+@@ -365,7 +365,7 @@ extern struct bio *bio_split(struct bio *bio, int sectors,
* Returns a bio representing the next @sectors of @bio - if the bio is smaller
* than @sectors, returns the original bio unchanged.
*/
@@ -133000,7 +137107,7 @@ index 23ddf4b..9115ce0 100644
{
if (sectors >= bio_sectors(bio))
diff --git a/include/linux/bitmap.h b/include/linux/bitmap.h
-index 598bc99..bb8f339f 100644
+index 3b77588..7e677c2 100644
--- a/include/linux/bitmap.h
+++ b/include/linux/bitmap.h
@@ -308,7 +308,7 @@ static inline int bitmap_full(const unsigned long *src, unsigned int nbits)
@@ -133013,11 +137120,11 @@ index 598bc99..bb8f339f 100644
if (small_const_nbits(nbits))
return hweight_long(*src & BITMAP_LAST_WORD_MASK(nbits));
diff --git a/include/linux/bitops.h b/include/linux/bitops.h
-index 299e76b..ef972c1 100644
+index a83c822..20d61d7 100644
--- a/include/linux/bitops.h
+++ b/include/linux/bitops.h
-@@ -75,7 +75,7 @@ static inline int get_count_order(unsigned int count)
- return order;
+@@ -65,7 +65,7 @@ static inline int get_bitmask_order(unsigned int count)
+ return order; /* We could be slightly more clever with -1 here... */
}
-static __always_inline unsigned long hweight_long(unsigned long w)
@@ -133025,7 +137132,7 @@ index 299e76b..ef972c1 100644
{
return sizeof(w) == 4 ? hweight32(w) : hweight64(w);
}
-@@ -105,7 +105,7 @@ static inline __u64 ror64(__u64 word, unsigned int shift)
+@@ -95,7 +95,7 @@ static inline __u64 ror64(__u64 word, unsigned int shift)
* @word: value to rotate
* @shift: bits to roll
*/
@@ -133034,7 +137141,7 @@ index 299e76b..ef972c1 100644
{
return (word << shift) | (word >> ((-shift) & 31));
}
-@@ -115,7 +115,7 @@ static inline __u32 rol32(__u32 word, unsigned int shift)
+@@ -105,7 +105,7 @@ static inline __u32 rol32(__u32 word, unsigned int shift)
* @word: value to rotate
* @shift: bits to roll
*/
@@ -133043,7 +137150,7 @@ index 299e76b..ef972c1 100644
{
return (word >> shift) | (word << (32 - shift));
}
-@@ -184,7 +184,7 @@ static inline __s64 sign_extend64(__u64 value, int index)
+@@ -174,7 +174,7 @@ static inline __s64 sign_extend64(__u64 value, int index)
return (__s64)(value << shift) >> shift;
}
@@ -133053,7 +137160,7 @@ index 299e76b..ef972c1 100644
if (sizeof(l) == 4)
return fls(l);
diff --git a/include/linux/blk-cgroup.h b/include/linux/blk-cgroup.h
-index 10648e3..a230bec 100644
+index 3bf5d33..1c78e6c3 100644
--- a/include/linux/blk-cgroup.h
+++ b/include/linux/blk-cgroup.h
@@ -63,12 +63,12 @@ struct blkcg {
@@ -133071,7 +137178,7 @@ index 10648e3..a230bec 100644
};
/*
-@@ -508,7 +508,7 @@ static inline int blkg_stat_init(struct blkg_stat *stat, gfp_t gfp)
+@@ -499,7 +499,7 @@ static inline int blkg_stat_init(struct blkg_stat *stat, gfp_t gfp)
if (ret)
return ret;
@@ -133080,7 +137187,7 @@ index 10648e3..a230bec 100644
return 0;
}
-@@ -546,7 +546,7 @@ static inline uint64_t blkg_stat_read(struct blkg_stat *stat)
+@@ -537,7 +537,7 @@ static inline uint64_t blkg_stat_read(struct blkg_stat *stat)
static inline void blkg_stat_reset(struct blkg_stat *stat)
{
percpu_counter_set(&stat->cpu_cnt, 0);
@@ -133089,7 +137196,7 @@ index 10648e3..a230bec 100644
}
/**
-@@ -559,7 +559,7 @@ static inline void blkg_stat_reset(struct blkg_stat *stat)
+@@ -550,7 +550,7 @@ static inline void blkg_stat_reset(struct blkg_stat *stat)
static inline void blkg_stat_add_aux(struct blkg_stat *to,
struct blkg_stat *from)
{
@@ -133098,7 +137205,7 @@ index 10648e3..a230bec 100644
&to->aux_cnt);
}
-@@ -574,7 +574,7 @@ static inline int blkg_rwstat_init(struct blkg_rwstat *rwstat, gfp_t gfp)
+@@ -565,7 +565,7 @@ static inline int blkg_rwstat_init(struct blkg_rwstat *rwstat, gfp_t gfp)
percpu_counter_destroy(&rwstat->cpu_cnt[i]);
return ret;
}
@@ -133107,7 +137214,7 @@ index 10648e3..a230bec 100644
}
return 0;
}
-@@ -629,7 +629,7 @@ static inline struct blkg_rwstat blkg_rwstat_read(struct blkg_rwstat *rwstat)
+@@ -620,7 +620,7 @@ static inline struct blkg_rwstat blkg_rwstat_read(struct blkg_rwstat *rwstat)
int i;
for (i = 0; i < BLKG_RWSTAT_NR; i++)
@@ -133116,7 +137223,7 @@ index 10648e3..a230bec 100644
percpu_counter_sum_positive(&rwstat->cpu_cnt[i]));
return result;
}
-@@ -646,8 +646,8 @@ static inline uint64_t blkg_rwstat_total(struct blkg_rwstat *rwstat)
+@@ -637,8 +637,8 @@ static inline uint64_t blkg_rwstat_total(struct blkg_rwstat *rwstat)
{
struct blkg_rwstat tmp = blkg_rwstat_read(rwstat);
@@ -133127,7 +137234,7 @@ index 10648e3..a230bec 100644
}
/**
-@@ -660,7 +660,7 @@ static inline void blkg_rwstat_reset(struct blkg_rwstat *rwstat)
+@@ -651,7 +651,7 @@ static inline void blkg_rwstat_reset(struct blkg_rwstat *rwstat)
for (i = 0; i < BLKG_RWSTAT_NR; i++) {
percpu_counter_set(&rwstat->cpu_cnt[i], 0);
@@ -133136,7 +137243,7 @@ index 10648e3..a230bec 100644
}
}
-@@ -678,8 +678,8 @@ static inline void blkg_rwstat_add_aux(struct blkg_rwstat *to,
+@@ -669,8 +669,8 @@ static inline void blkg_rwstat_add_aux(struct blkg_rwstat *to,
int i;
for (i = 0; i < BLKG_RWSTAT_NR; i++)
@@ -133148,7 +137255,7 @@ index 10648e3..a230bec 100644
}
diff --git a/include/linux/blkdev.h b/include/linux/blkdev.h
-index e79055c..262f1ba 100644
+index f6a8161..e26e3a7 100644
--- a/include/linux/blkdev.h
+++ b/include/linux/blkdev.h
@@ -1690,7 +1690,7 @@ struct block_device_operations {
@@ -133174,10 +137281,10 @@ index cceb72f..c9f287a 100644
extern int blk_trace_ioctl(struct block_device *, unsigned, char __user *);
diff --git a/include/linux/cache.h b/include/linux/cache.h
-index 1be04f8..9c2d3e2 100644
+index 1be04f8..f28266d 100644
--- a/include/linux/cache.h
+++ b/include/linux/cache.h
-@@ -26,6 +26,15 @@
+@@ -26,6 +26,16 @@
* after mark_rodata_ro() has been called). These are effectively read-only,
* but may get written to during init, so can't live in .rodata (via "const").
*/
@@ -133186,6 +137293,7 @@ index 1be04f8..9c2d3e2 100644
+# error KERNEXEC requires __read_only
+# endif
+# define __read_only __attribute__((__section__(".data..read_only")))
++# define __ro_after_init __read_only
+#else
+# define __read_only __read_mostly
+#endif
@@ -133275,7 +137383,7 @@ index fccf7f4..1d5925e 100644
extern int cleancache_register_ops(const struct cleancache_ops *ops);
extern void __cleancache_init_fs(struct super_block *);
diff --git a/include/linux/clk-provider.h b/include/linux/clk-provider.h
-index a39c0c5..1518828 100644
+index a428aec..24e7490 100644
--- a/include/linux/clk-provider.h
+++ b/include/linux/clk-provider.h
@@ -218,6 +218,7 @@ struct clk_ops {
@@ -133287,30 +137395,106 @@ index a39c0c5..1518828 100644
/**
* struct clk_init_data - holds init data that's common to all clocks and is
diff --git a/include/linux/compat.h b/include/linux/compat.h
-index f964ef7..0679632 100644
+index 6360939..40d0088 100644
--- a/include/linux/compat.h
+++ b/include/linux/compat.h
-@@ -47,14 +47,15 @@
- COMPAT_SYSCALL_DEFINEx(6, _##name, __VA_ARGS__)
+@@ -30,31 +30,83 @@
+ #define __SC_DELOUSE(t,v) ((t)(unsigned long)(v))
+ #endif
- #define COMPAT_SYSCALL_DEFINEx(x, name, ...) \
+-#define COMPAT_SYSCALL_DEFINE0(name) \
++#ifdef CONFIG_PAX_RAP
++#define RAP_SYS32_SYSCALL_DEFINE0(name) \
++ asmlinkage long rap_sys32_##name(unsigned long a, unsigned long b, unsigned long c, unsigned long d, unsigned long e, unsigned long f)\
++ { \
++ return sys32_##name(); \
++ }
++#else
++#define RAP_SYS32_SYSCALL_DEFINE0(name)
++#endif
++
++#define SYS32_SYSCALL_DEFINE0(name) \
++ asmlinkage long sys32_##name(void); \
++ RAP_SYS32_SYSCALL_DEFINE0(name) \
++ asmlinkage long sys32_##name(void)
++
++#define SYS32_SYSCALL_DEFINE1(name, ...) \
++ COMPAT_SYSCALL_DEFINEx(1, sys32, , _##name, __VA_ARGS__)
++#define SYS32_SYSCALL_DEFINE2(name, ...) \
++ COMPAT_SYSCALL_DEFINEx(2, sys32, , _##name, __VA_ARGS__)
++#define SYS32_SYSCALL_DEFINE3(name, ...) \
++ COMPAT_SYSCALL_DEFINEx(3, sys32, , _##name, __VA_ARGS__)
++#define SYS32_SYSCALL_DEFINE4(name, ...) \
++ COMPAT_SYSCALL_DEFINEx(4, sys32, , _##name, __VA_ARGS__)
++#define SYS32_SYSCALL_DEFINE5(name, ...) \
++ COMPAT_SYSCALL_DEFINEx(5, sys32, , _##name, __VA_ARGS__)
++#define SYS32_SYSCALL_DEFINE6(name, ...) \
++ COMPAT_SYSCALL_DEFINEx(6, sys32, , _##name, __VA_ARGS__)
++
++#ifdef CONFIG_PAX_RAP
++#define RAP_COMPAT_SYSCALL_DEFINE0(name) \
++ asmlinkage long rap_compat_sys_##name(unsigned long a, unsigned long b, unsigned long c, unsigned long d, unsigned long e, unsigned long f)\
++ { \
++ return compat_sys_##name(); \
++ }
++#else
++#define RAP_COMPAT_SYSCALL_DEFINE0(name)
++#endif
++
++#define COMPAT_SYSCALL_DEFINE0(name) \
++ RAP_COMPAT_SYSCALL_DEFINE0(name) \
+ asmlinkage long compat_sys_##name(void)
+
+ #define COMPAT_SYSCALL_DEFINE1(name, ...) \
+- COMPAT_SYSCALL_DEFINEx(1, _##name, __VA_ARGS__)
++ COMPAT_SYSCALL_DEFINEx(1, compat, _sys, _##name, __VA_ARGS__)
+ #define COMPAT_SYSCALL_DEFINE2(name, ...) \
+- COMPAT_SYSCALL_DEFINEx(2, _##name, __VA_ARGS__)
++ COMPAT_SYSCALL_DEFINEx(2, compat, _sys, _##name, __VA_ARGS__)
+ #define COMPAT_SYSCALL_DEFINE3(name, ...) \
+- COMPAT_SYSCALL_DEFINEx(3, _##name, __VA_ARGS__)
++ COMPAT_SYSCALL_DEFINEx(3, compat, _sys, _##name, __VA_ARGS__)
+ #define COMPAT_SYSCALL_DEFINE4(name, ...) \
+- COMPAT_SYSCALL_DEFINEx(4, _##name, __VA_ARGS__)
++ COMPAT_SYSCALL_DEFINEx(4, compat, _sys, _##name, __VA_ARGS__)
+ #define COMPAT_SYSCALL_DEFINE5(name, ...) \
+- COMPAT_SYSCALL_DEFINEx(5, _##name, __VA_ARGS__)
++ COMPAT_SYSCALL_DEFINEx(5, compat, _sys, _##name, __VA_ARGS__)
+ #define COMPAT_SYSCALL_DEFINE6(name, ...) \
+- COMPAT_SYSCALL_DEFINEx(6, _##name, __VA_ARGS__)
++ COMPAT_SYSCALL_DEFINEx(6, compat, _sys, _##name, __VA_ARGS__)
+
+-#define COMPAT_SYSCALL_DEFINEx(x, name, ...) \
- asmlinkage long compat_sys##name(__MAP(x,__SC_DECL,__VA_ARGS__))\
- __attribute__((alias(__stringify(compat_SyS##name)))); \
++#ifdef CONFIG_PAX_RAP
++#define RAP_COMPAT_SYSCALL_DEFINEx(x, prefix, sys, name, ...) \
++ asmlinkage __intentional_overflow(-1) \
++ long rap_##prefix##sys##name(__RAP_MAP(x,__RAP_SC_LONG,__VA_ARGS__))\
++ { \
++ return prefix##sys##name(__MAP(x,__SC_CAST,__VA_ARGS__));\
++ }
++#else
++#define RAP_COMPAT_SYSCALL_DEFINEx(x, prefix, sys, name, ...)
++#endif
++
++#define COMPAT_SYSCALL_DEFINEx(x, prefix, sys, name, ...) \
static inline long C_SYSC##name(__MAP(x,__SC_DECL,__VA_ARGS__));\
- asmlinkage long compat_SyS##name(__MAP(x,__SC_LONG,__VA_ARGS__));\
- asmlinkage long compat_SyS##name(__MAP(x,__SC_LONG,__VA_ARGS__))\
-+ static inline asmlinkage long compat_SyS##name(__MAP(x,__SC_LONG,__VA_ARGS__))\
++ static inline asmlinkage long prefix##_SyS##name(__MAP(x,__SC_LONG,__VA_ARGS__))\
{ \
return C_SYSC##name(__MAP(x,__SC_DELOUSE,__VA_ARGS__)); \
} \
-+ asmlinkage long compat_sys##name(__MAP(x,__SC_DECL,__VA_ARGS__))\
++ asmlinkage long prefix##sys##name(__MAP(x,__SC_DECL,__VA_ARGS__))\
+ { \
-+ return compat_SyS##name(__MAP(x,__SC_ARGS,__VA_ARGS__));\
++ return prefix##_SyS##name(__MAP(x,__SC_ARGS,__VA_ARGS__));\
+ } \
++ RAP_COMPAT_SYSCALL_DEFINEx(x,prefix,sys,name,__VA_ARGS__) \
static inline long C_SYSC##name(__MAP(x,__SC_DECL,__VA_ARGS__))
#ifndef compat_user_stack_pointer
-@@ -318,7 +319,7 @@ compat_sys_get_robust_list(int pid, compat_uptr_t __user *head_ptr,
+@@ -318,7 +370,7 @@ compat_sys_get_robust_list(int pid, compat_uptr_t __user *head_ptr,
compat_size_t __user *len_ptr);
asmlinkage long compat_sys_ipc(u32, int, int, u32, compat_uptr_t, u32);
@@ -133319,7 +137503,7 @@ index f964ef7..0679632 100644
asmlinkage long compat_sys_semctl(int semid, int semnum, int cmd, int arg);
asmlinkage long compat_sys_msgsnd(int msqid, compat_uptr_t msgp,
compat_ssize_t msgsz, int msgflg);
-@@ -327,7 +328,7 @@ asmlinkage long compat_sys_msgrcv(int msqid, compat_uptr_t msgp,
+@@ -327,7 +379,7 @@ asmlinkage long compat_sys_msgrcv(int msqid, compat_uptr_t msgp,
long compat_sys_msgctl(int first, int second, void __user *uptr);
long compat_sys_shmctl(int first, int second, void __user *uptr);
long compat_sys_semtimedop(int semid, struct sembuf __user *tsems,
@@ -133328,7 +137512,7 @@ index f964ef7..0679632 100644
asmlinkage long compat_sys_keyctl(u32 option,
u32 arg2, u32 arg3, u32 arg4, u32 arg5);
asmlinkage long compat_sys_ustat(unsigned dev, struct compat_ustat __user *u32);
-@@ -447,7 +448,7 @@ extern int compat_ptrace_request(struct task_struct *child,
+@@ -446,7 +498,7 @@ extern int compat_ptrace_request(struct task_struct *child,
extern long compat_arch_ptrace(struct task_struct *child, compat_long_t request,
compat_ulong_t addr, compat_ulong_t data);
asmlinkage long compat_sys_ptrace(compat_long_t request, compat_long_t pid,
@@ -133338,7 +137522,7 @@ index f964ef7..0679632 100644
asmlinkage long compat_sys_lookup_dcookie(u32, u32, char __user *, compat_size_t);
/*
diff --git a/include/linux/compiler-gcc.h b/include/linux/compiler-gcc.h
-index 0a0b2d5..3ae2773 100644
+index 928e5ca..dc13b5a 100644
--- a/include/linux/compiler-gcc.h
+++ b/include/linux/compiler-gcc.h
@@ -116,9 +116,9 @@
@@ -133354,7 +137538,7 @@ index 0a0b2d5..3ae2773 100644
#define __maybe_unused __attribute__((unused))
#define __always_unused __attribute__((unused))
-@@ -185,9 +185,56 @@
+@@ -185,16 +185,60 @@
# define __compiletime_warning(message) __attribute__((warning(message)))
# define __compiletime_error(message) __attribute__((error(message)))
#endif /* __CHECKER__ */
@@ -133366,7 +137550,7 @@ index 0a0b2d5..3ae2773 100644
#endif /* GCC_VERSION >= 40300 */
#if GCC_VERSION >= 40500
-+
+
+#ifdef RANDSTRUCT_PLUGIN
+#define __randomize_layout __attribute__((randomize_layout))
+#define __no_randomize_layout __attribute__((no_randomize_layout))
@@ -133383,12 +137567,12 @@ index 0a0b2d5..3ae2773 100644
+#define __intentional_overflow(...) __attribute__((intentional_overflow(__VA_ARGS__)))
+#endif
+
-+#ifndef __CHECKER__
-+#ifdef LATENT_ENTROPY_PLUGIN
-+#define __latent_entropy __attribute__((latent_entropy))
-+#endif
-+#endif
-+
+ #ifndef __CHECKER__
+ #ifdef LATENT_ENTROPY_PLUGIN
+ #define __latent_entropy __attribute__((latent_entropy))
+ #endif
+ #endif
+
+#ifdef INITIFY_PLUGIN
+#define __nocapture(...) __attribute__((nocapture(__VA_ARGS__)))
+#endif
@@ -133408,11 +137592,15 @@ index 0a0b2d5..3ae2773 100644
+#define __unverified_nocapture(...) __attribute__((unverified_nocapture(__VA_ARGS__)))
+#endif
+
++#ifdef RAP_PLUGIN
++#define __rap_hash __attribute__((rap_hash))
++#endif
++
/*
* Mark a position in code as unreachable. This can be used to
* suppress control flow warnings after asm blocks that transfer
diff --git a/include/linux/compiler.h b/include/linux/compiler.h
-index 6685698..688714d 100644
+index cf0fa5d..a7444a7 100644
--- a/include/linux/compiler.h
+++ b/include/linux/compiler.h
@@ -5,11 +5,14 @@
@@ -133515,7 +137703,7 @@ index 6685698..688714d 100644
# define __private
# define ACCESS_PRIVATE(p, member) ((p)->member)
#endif /* __CHECKER__ */
-@@ -200,29 +246,20 @@ void ftrace_likely_update(struct ftrace_branch_data *f, int val, int expect);
+@@ -223,29 +269,20 @@ void ftrace_likely_update(struct ftrace_branch_data *f, int val, int expect);
#include <uapi/linux/types.h>
@@ -133557,7 +137745,7 @@ index 6685698..688714d 100644
* with inlining. Attempt to inline it may cause a build failure.
* https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67368
* '__maybe_unused' allows us to avoid defined-but-not-used warnings.
-@@ -230,29 +267,20 @@ void __read_once_size(const volatile void *p, void *res, int size)
+@@ -253,29 +290,20 @@ void __read_once_size(const volatile void *p, void *res, int size)
static __no_sanitize_address __maybe_unused
void __read_once_size_nocheck(const volatile void *p, void *res, int size)
{
@@ -133595,7 +137783,7 @@ index 6685698..688714d 100644
/*
* Prevent the compiler from merging or refetching reads or writes. The
-@@ -277,29 +305,15 @@ static __always_inline void __write_once_size(volatile void *p, void *res, int s
+@@ -300,29 +328,15 @@ static __always_inline void __write_once_size(volatile void *p, void *res, int s
* required ordering.
*/
@@ -133632,8 +137820,8 @@ index 6685698..688714d 100644
})
#endif /* __KERNEL__ */
-@@ -406,6 +420,50 @@ static __always_inline void __write_once_size(volatile void *p, void *res, int s
- # define __attribute_const__ /* unimplemented */
+@@ -433,6 +447,46 @@ static __always_inline void __write_once_size(volatile void *p, void *res, int s
+ # define __latent_entropy
#endif
+#ifndef __randomize_layout
@@ -133660,14 +137848,6 @@ index 6685698..688714d 100644
+# define __intentional_overflow(...)
+#endif
+
-+#ifndef __latent_entropy
-+# define __latent_entropy
-+#endif
-+
-+#ifndef __nocapture
-+# define __nocapture(...)
-+#endif
-+
+#ifndef const_cast
+# define const_cast(x) (x)
+#endif
@@ -133680,10 +137860,14 @@ index 6685698..688714d 100644
+# define __unverified_nocapture(...)
+#endif
+
++#ifndef __rap_hash
++#define __rap_hash
++#endif
++
/*
* Tell gcc if a function is cold. The compiler will assume any path
* directly leading to the call is unlikely.
-@@ -415,6 +473,22 @@ static __always_inline void __write_once_size(volatile void *p, void *res, int s
+@@ -442,6 +496,22 @@ static __always_inline void __write_once_size(volatile void *p, void *res, int s
#define __cold
#endif
@@ -133706,7 +137890,7 @@ index 6685698..688714d 100644
/* Simple shorthand for a section definition */
#ifndef __section
# define __section(S) __attribute__ ((__section__(#S)))
-@@ -437,6 +511,8 @@ static __always_inline void __write_once_size(volatile void *p, void *res, int s
+@@ -464,6 +534,8 @@ static __always_inline void __write_once_size(volatile void *p, void *res, int s
# define __same_type(a, b) __builtin_types_compatible_p(typeof(a), typeof(b))
#endif
@@ -133715,7 +137899,7 @@ index 6685698..688714d 100644
/* Is this type a native word size -- useful for atomic operations */
#ifndef __native_word
# define __native_word(t) (sizeof(t) == sizeof(char) || sizeof(t) == sizeof(short) || sizeof(t) == sizeof(int) || sizeof(t) == sizeof(long))
-@@ -516,8 +592,9 @@ static __always_inline void __write_once_size(volatile void *p, void *res, int s
+@@ -543,8 +615,9 @@ static __always_inline void __write_once_size(volatile void *p, void *res, int s
*/
#define __ACCESS_ONCE(x) ({ \
__maybe_unused typeof(x) __var = (__force typeof(x)) 0; \
@@ -133766,6 +137950,83 @@ index 32dc0cbd..6e18583 100644
/* flags */
#define CPUFREQ_STICKY (1 << 0) /* driver isn't removed even if
+diff --git a/include/linux/cpuhotplug.h b/include/linux/cpuhotplug.h
+index ba1cad7..4217ad8 100644
+--- a/include/linux/cpuhotplug.h
++++ b/include/linux/cpuhotplug.h
+@@ -130,9 +130,19 @@ enum cpuhp_state {
+ CPUHP_ONLINE,
+ };
+
++union cpuhp_step_startup {
++ int (*single)(unsigned int cpu);
++ int (*multi)(unsigned int cpu, struct hlist_node *node);
++} __no_const;
++
++union cpuhp_step_teardown {
++ int (*single)(unsigned int cpu);
++ int (*multi)(unsigned int cpu, struct hlist_node *node);
++} __no_const;
++
+ int __cpuhp_setup_state(enum cpuhp_state state, const char *name, bool invoke,
+- int (*startup)(unsigned int cpu),
+- int (*teardown)(unsigned int cpu), bool multi_instance);
++ union cpuhp_step_startup startup,
++ union cpuhp_step_teardown teardown, bool multi_instance);
+
+ /**
+ * cpuhp_setup_state - Setup hotplug state callbacks with calling the callbacks
+@@ -146,9 +156,12 @@ int __cpuhp_setup_state(enum cpuhp_state state, const char *name, bool invoke,
+ */
+ static inline int cpuhp_setup_state(enum cpuhp_state state,
+ const char *name,
+- int (*startup)(unsigned int cpu),
+- int (*teardown)(unsigned int cpu))
++ int (*_startup)(unsigned int cpu),
++ int (*_teardown)(unsigned int cpu))
+ {
++ union cpuhp_step_startup startup = { .single = _startup };
++ union cpuhp_step_teardown teardown = { .single = _teardown };
++
+ return __cpuhp_setup_state(state, name, true, startup, teardown, false);
+ }
+
+@@ -165,9 +178,12 @@ static inline int cpuhp_setup_state(enum cpuhp_state state,
+ */
+ static inline int cpuhp_setup_state_nocalls(enum cpuhp_state state,
+ const char *name,
+- int (*startup)(unsigned int cpu),
+- int (*teardown)(unsigned int cpu))
++ int (*_startup)(unsigned int cpu),
++ int (*_teardown)(unsigned int cpu))
+ {
++ union cpuhp_step_startup startup = { .single = _startup };
++ union cpuhp_step_teardown teardown = { .single = _teardown };
++
+ return __cpuhp_setup_state(state, name, false, startup, teardown,
+ false);
+ }
+@@ -186,14 +202,15 @@ static inline int cpuhp_setup_state_nocalls(enum cpuhp_state state,
+ */
+ static inline int cpuhp_setup_state_multi(enum cpuhp_state state,
+ const char *name,
+- int (*startup)(unsigned int cpu,
++ int (*_startup)(unsigned int cpu,
+ struct hlist_node *node),
+- int (*teardown)(unsigned int cpu,
++ int (*_teardown)(unsigned int cpu,
+ struct hlist_node *node))
+ {
+- return __cpuhp_setup_state(state, name, false,
+- (void *) startup,
+- (void *) teardown, true);
++ union cpuhp_step_startup startup = { .multi = _startup };
++ union cpuhp_step_teardown teardown = { .multi = _teardown };
++
++ return __cpuhp_setup_state(state, name, false, startup, teardown, true);
+ }
+
+ int __cpuhp_state_add_instance(enum cpuhp_state state, struct hlist_node *node,
diff --git a/include/linux/cpuidle.h b/include/linux/cpuidle.h
index bb31373..e85eb5f 100644
--- a/include/linux/cpuidle.h
@@ -133851,19 +138112,19 @@ index da7fbf1..c2a221b 100644
return bitmap_weight(cpumask_bits(srcp), nr_cpumask_bits);
}
diff --git a/include/linux/cred.h b/include/linux/cred.h
-index 257db64..a73cf86 100644
+index f0e70a1..0de3207 100644
--- a/include/linux/cred.h
+++ b/include/linux/cred.h
-@@ -35,7 +35,7 @@ struct group_info {
- int nblocks;
- kgid_t small_block[NGROUPS_SMALL];
- kgid_t *blocks[0];
+@@ -30,7 +30,7 @@ struct group_info {
+ atomic_t usage;
+ int ngroups;
+ kgid_t gid[0];
-};
+} __randomize_layout;
/**
* get_group_info - Get a reference to a group info structure
-@@ -153,7 +153,7 @@ struct cred {
+@@ -144,7 +144,7 @@ struct cred {
struct user_namespace *user_ns; /* user_ns the caps and keyrings are relative to. */
struct group_info *group_info; /* supplementary groups for euid/fsgid */
struct rcu_head rcu; /* RCU deletion hook */
@@ -133872,7 +138133,7 @@ index 257db64..a73cf86 100644
extern void __put_cred(struct cred *);
extern void exit_creds(struct task_struct *);
-@@ -211,6 +211,9 @@ static inline void validate_creds_for_do_exit(struct task_struct *tsk)
+@@ -202,6 +202,9 @@ static inline void validate_creds_for_do_exit(struct task_struct *tsk)
static inline void validate_process_creds(void)
{
}
@@ -133882,7 +138143,7 @@ index 257db64..a73cf86 100644
#endif
static inline bool cap_ambient_invariant_ok(const struct cred *cred)
-@@ -355,6 +358,7 @@ static inline void put_cred(const struct cred *_cred)
+@@ -346,6 +349,7 @@ static inline void put_cred(const struct cred *_cred)
#define task_uid(task) (task_cred_xxx((task), uid))
#define task_euid(task) (task_cred_xxx((task), euid))
@@ -133913,10 +138174,10 @@ index 7cee555..65ead50 100644
#define crt_ablkcipher crt_u.ablkcipher
#define crt_blkcipher crt_u.blkcipher
diff --git a/include/linux/ctype.h b/include/linux/ctype.h
-index 653589e..4ef254a 100644
+index f13e4ff..9dc6f74 100644
--- a/include/linux/ctype.h
+++ b/include/linux/ctype.h
-@@ -56,7 +56,7 @@ static inline unsigned char __toupper(unsigned char c)
+@@ -59,7 +59,7 @@ static inline unsigned char __toupper(unsigned char c)
* Fast implementation of tolower() for internal usage. Do not use in your
* code.
*/
@@ -133926,7 +138187,7 @@ index 653589e..4ef254a 100644
return c | 0x20;
}
diff --git a/include/linux/dcache.h b/include/linux/dcache.h
-index 5ff3e9a..fc6b872 100644
+index 5beed7b..2b3dcac 100644
--- a/include/linux/dcache.h
+++ b/include/linux/dcache.h
@@ -102,6 +102,9 @@ struct dentry {
@@ -133967,7 +138228,7 @@ index 5ff3e9a..fc6b872 100644
}
diff --git a/include/linux/debugfs.h b/include/linux/debugfs.h
-index 4d3f0d1..7713e0a 100644
+index 1b413a9..3dd3735 100644
--- a/include/linux/debugfs.h
+++ b/include/linux/debugfs.h
@@ -139,6 +139,8 @@ struct dentry *debugfs_create_size_t(const char *name, umode_t mode,
@@ -133979,16 +138240,7 @@ index 4d3f0d1..7713e0a 100644
struct dentry *debugfs_create_bool(const char *name, umode_t mode,
struct dentry *parent, bool *value);
-@@ -234,7 +236,7 @@ static inline void debugfs_use_file_finish(int srcu_idx)
- { }
-
- #define DEFINE_DEBUGFS_ATTRIBUTE(__fops, __get, __set, __fmt) \
-- static const struct file_operations __fops = { 0 }
-+ static const struct file_operations __fops = { }
-
- static inline struct dentry *debugfs_rename(struct dentry *old_dir, struct dentry *old_dentry,
- struct dentry *new_dir, char *new_name)
-@@ -311,6 +313,12 @@ static inline struct dentry *debugfs_create_atomic_t(const char *name, umode_t m
+@@ -321,6 +323,12 @@ static inline struct dentry *debugfs_create_atomic_t(const char *name, umode_t m
return ERR_PTR(-ENODEV);
}
@@ -134028,10 +138280,10 @@ index 2de4e2e..510a09b8 100644
/**
* struct devfreq - Device devfreq structure
diff --git a/include/linux/device.h b/include/linux/device.h
-index 38f0281..72e7b70 100644
+index bc41e87..88bcdab 100644
--- a/include/linux/device.h
+++ b/include/linux/device.h
-@@ -346,7 +346,7 @@ struct subsys_interface {
+@@ -347,7 +347,7 @@ struct subsys_interface {
struct list_head node;
int (*add_dev)(struct device *dev, struct subsys_interface *sif);
void (*remove_dev)(struct device *dev, struct subsys_interface *sif);
@@ -134040,7 +138292,7 @@ index 38f0281..72e7b70 100644
int subsys_interface_register(struct subsys_interface *sif);
void subsys_interface_unregister(struct subsys_interface *sif);
-@@ -542,7 +542,7 @@ struct device_type {
+@@ -543,7 +543,7 @@ struct device_type {
void (*release)(struct device *dev);
const struct dev_pm_ops *pm;
@@ -134049,7 +138301,7 @@ index 38f0281..72e7b70 100644
/* interface for exporting device attributes */
struct device_attribute {
-@@ -552,11 +552,12 @@ struct device_attribute {
+@@ -553,11 +553,12 @@ struct device_attribute {
ssize_t (*store)(struct device *dev, struct device_attribute *attr,
const char *buf, size_t count);
};
@@ -134064,10 +138316,10 @@ index 38f0281..72e7b70 100644
ssize_t device_show_ulong(struct device *dev, struct device_attribute *attr,
char *buf);
diff --git a/include/linux/dma-mapping.h b/include/linux/dma-mapping.h
-index dc69df0..d8db6b8 100644
+index 08528af..45b9b69 100644
--- a/include/linux/dma-mapping.h
+++ b/include/linux/dma-mapping.h
-@@ -114,7 +114,7 @@ struct dma_map_ops {
+@@ -125,7 +125,7 @@ struct dma_map_ops {
u64 (*get_required_mask)(struct device *dev);
#endif
int is_phys;
@@ -134077,17 +138329,17 @@ index dc69df0..d8db6b8 100644
extern struct dma_map_ops dma_noop_ops;
diff --git a/include/linux/efi.h b/include/linux/efi.h
-index 0148a30..6f9e494 100644
+index cba7177..36d2b60 100644
--- a/include/linux/efi.h
+++ b/include/linux/efi.h
-@@ -1134,6 +1134,7 @@ struct efivar_operations {
+@@ -1167,6 +1167,7 @@ struct efivar_operations {
efi_set_variable_t *set_variable_nonblocking;
efi_query_variable_store_t *query_variable_store;
};
+typedef struct efivar_operations __no_const efivar_operations_no_const;
struct efivars {
- /*
+ struct kset *kset;
diff --git a/include/linux/elf.h b/include/linux/elf.h
index 20fa8d8..3d0dd18 100644
--- a/include/linux/elf.h
@@ -134138,10 +138390,10 @@ index 9ded8c6..e11a2457 100644
+typedef struct ethtool_ops __no_const ethtool_ops_no_const;
#endif /* _LINUX_ETHTOOL_H */
diff --git a/include/linux/extcon.h b/include/linux/extcon.h
-index 6100441..15b9e72 100644
+index b871c0c..3e43dba 100644
--- a/include/linux/extcon.h
+++ b/include/linux/extcon.h
-@@ -123,7 +123,7 @@ struct extcon_dev {
+@@ -214,7 +214,7 @@ struct extcon_dev {
/* /sys/class/extcon/.../mutually_exclusive/... */
struct attribute_group attr_g_muex;
struct attribute **attrs_muex;
@@ -134164,19 +138416,6 @@ index a964d07..09bf71f 100644
#ifdef CONFIG_FB_TILEBLITTING
#define FB_TILE_CURSOR_NONE 0
-diff --git a/include/linux/fdtable.h b/include/linux/fdtable.h
-index 5295535..9852c7e 100644
---- a/include/linux/fdtable.h
-+++ b/include/linux/fdtable.h
-@@ -105,7 +105,7 @@ struct files_struct *get_files_struct(struct task_struct *);
- void put_files_struct(struct files_struct *fs);
- void reset_files_struct(struct files_struct *);
- int unshare_files(struct files_struct **);
--struct files_struct *dup_fd(struct files_struct *, int *);
-+struct files_struct *dup_fd(struct files_struct *, int *) __latent_entropy;
- void do_close_on_exec(struct files_struct *);
- int iterate_fd(struct files_struct *, unsigned,
- int (*)(const void *, struct file *, unsigned),
diff --git a/include/linux/firewire.h b/include/linux/firewire.h
index d4b7683..9feb066 100644
--- a/include/linux/firewire.h
@@ -134191,10 +138430,10 @@ index d4b7683..9feb066 100644
int fw_iso_context_queue(struct fw_iso_context *ctx,
struct fw_iso_packet *packet,
diff --git a/include/linux/fs.h b/include/linux/fs.h
-index 7c39136..69c438a 100644
+index dc0478c..473e4cd 100644
--- a/include/linux/fs.h
+++ b/include/linux/fs.h
-@@ -328,7 +328,7 @@ struct kiocb {
+@@ -329,7 +329,7 @@ struct kiocb {
void (*ki_complete)(struct kiocb *iocb, long ret, long ret2);
void *private;
int ki_flags;
@@ -134203,8 +138442,8 @@ index 7c39136..69c438a 100644
static inline bool is_sync_kiocb(struct kiocb *kiocb)
{
-@@ -444,7 +444,7 @@ struct address_space {
- spinlock_t private_lock; /* for use by the address_space */
+@@ -446,7 +446,7 @@ struct address_space {
+ gfp_t gfp_mask; /* implicit gfp mask for allocations */
struct list_head private_list; /* ditto */
void *private_data; /* ditto */
-} __attribute__((aligned(sizeof(long))));
@@ -134212,7 +138451,7 @@ index 7c39136..69c438a 100644
/*
* On most architectures that alignment is already the case; but
* must be enforced here for CRIS, to let the least significant bit
-@@ -486,7 +486,7 @@ struct block_device {
+@@ -488,7 +488,7 @@ struct block_device {
int bd_fsfreeze_count;
/* Mutex for freeze */
struct mutex bd_fsfreeze_mutex;
@@ -134221,7 +138460,7 @@ index 7c39136..69c438a 100644
/*
* Radix-tree tags, for tagging dirty and writeback pages within the pagecache
-@@ -700,7 +700,7 @@ struct inode {
+@@ -703,7 +703,7 @@ struct inode {
#endif
void *i_private; /* fs or device private pointer */
@@ -134230,7 +138469,7 @@ index 7c39136..69c438a 100644
static inline int inode_unhashed(struct inode *inode)
{
-@@ -910,7 +910,7 @@ struct file {
+@@ -913,7 +913,7 @@ struct file {
struct list_head f_tfile_llink;
#endif /* #ifdef CONFIG_EPOLL */
struct address_space *f_mapping;
@@ -134239,7 +138478,7 @@ index 7c39136..69c438a 100644
struct file_handle {
__u32 handle_bytes;
-@@ -1045,7 +1045,7 @@ struct file_lock {
+@@ -1048,7 +1048,7 @@ struct file_lock {
int state; /* state of grant or error if -ve */
} afs;
} fl_u;
@@ -134248,7 +138487,7 @@ index 7c39136..69c438a 100644
struct file_lock_context {
spinlock_t flc_lock;
-@@ -1432,7 +1432,7 @@ struct super_block {
+@@ -1447,7 +1447,7 @@ struct super_block {
spinlock_t s_inode_wblist_lock;
struct list_head s_inodes_wb; /* writeback inodes */
@@ -134257,7 +138496,7 @@ index 7c39136..69c438a 100644
/* Helper functions so that in most cases filesystems will
* not need to deal directly with kuid_t and kgid_t and can
-@@ -1716,7 +1716,8 @@ struct file_operations {
+@@ -1731,7 +1731,8 @@ struct file_operations {
u64);
ssize_t (*dedupe_file_range)(struct file *, u64, u64, struct file *,
u64);
@@ -134267,7 +138506,7 @@ index 7c39136..69c438a 100644
struct inode_operations {
struct dentry * (*lookup) (struct inode *,struct dentry *, unsigned int);
-@@ -2440,12 +2441,12 @@ static inline void bd_unlink_disk_holder(struct block_device *bdev,
+@@ -2456,12 +2457,12 @@ static inline void bd_unlink_disk_holder(struct block_device *bdev,
#define CHRDEV_MAJOR_HASH_SIZE 255
/* Marks the bottom of the first segment of free char majors */
#define CHRDEV_MAJOR_DYN_END 234
@@ -134282,7 +138521,7 @@ index 7c39136..69c438a 100644
unsigned int count, const char *name);
extern void unregister_chrdev_region(dev_t, unsigned);
extern void chrdev_show(struct seq_file *,off_t);
-@@ -3193,4 +3194,14 @@ static inline bool dir_relax_shared(struct inode *inode)
+@@ -3209,4 +3210,14 @@ static inline bool dir_relax_shared(struct inode *inode)
extern bool path_noexec(const struct path *path);
extern void inode_nohighmem(struct inode *inode);
@@ -134344,11 +138583,11 @@ index 115bb81..e7b812b 100644
/*
* fscache cached network filesystem type
diff --git a/include/linux/fsnotify.h b/include/linux/fsnotify.h
-index eed9e85..21238db 100644
+index b8bcc05..fd88040 100644
--- a/include/linux/fsnotify.h
+++ b/include/linux/fsnotify.h
-@@ -176,6 +176,9 @@ static inline void fsnotify_access(struct file *file)
- struct inode *inode = file_inode(file);
+@@ -180,6 +180,9 @@ static inline void fsnotify_access(struct file *file)
+ struct inode *inode = path->dentry->d_inode;
__u32 mask = FS_ACCESS;
+ if (is_sidechannel_device(inode))
@@ -134357,8 +138596,8 @@ index eed9e85..21238db 100644
if (S_ISDIR(inode->i_mode))
mask |= FS_ISDIR;
-@@ -194,6 +197,9 @@ static inline void fsnotify_modify(struct file *file)
- struct inode *inode = file_inode(file);
+@@ -198,6 +201,9 @@ static inline void fsnotify_modify(struct file *file)
+ struct inode *inode = path->dentry->d_inode;
__u32 mask = FS_MODIFY;
+ if (is_sidechannel_device(inode))
@@ -134367,7 +138606,7 @@ index eed9e85..21238db 100644
if (S_ISDIR(inode->i_mode))
mask |= FS_ISDIR;
-@@ -296,7 +302,7 @@ static inline void fsnotify_change(struct dentry *dentry, unsigned int ia_valid)
+@@ -300,7 +306,7 @@ static inline void fsnotify_change(struct dentry *dentry, unsigned int ia_valid)
*/
static inline const unsigned char *fsnotify_oldname_init(const unsigned char *name)
{
@@ -134377,7 +138616,7 @@ index eed9e85..21238db 100644
/*
diff --git a/include/linux/genhd.h b/include/linux/genhd.h
-index 1dbf52f..b698a75 100644
+index e0341af..b698a75 100644
--- a/include/linux/genhd.h
+++ b/include/linux/genhd.h
@@ -208,7 +208,7 @@ struct gendisk {
@@ -134389,15 +138628,6 @@ index 1dbf52f..b698a75 100644
struct disk_events *ev;
#ifdef CONFIG_BLK_DEV_INTEGRITY
struct kobject integrity_kobj;
-@@ -437,7 +437,7 @@ extern void disk_flush_events(struct gendisk *disk, unsigned int mask);
- extern unsigned int disk_clear_events(struct gendisk *disk, unsigned int mask);
-
- /* drivers/char/random.c */
--extern void add_disk_randomness(struct gendisk *disk);
-+extern void add_disk_randomness(struct gendisk *disk) __latent_entropy;
- extern void rand_initialize_disk(struct gendisk *disk);
-
- static inline sector_t get_start_sect(struct block_device *bdev)
diff --git a/include/linux/genl_magic_func.h b/include/linux/genl_magic_func.h
index 667c311..abac2a7 100644
--- a/include/linux/genl_magic_func.h
@@ -135835,7 +140065,7 @@ index bb3f329..9daed55 100644
unsigned start1, unsigned end1,
unsigned start2, unsigned end2)
diff --git a/include/linux/hugetlb.h b/include/linux/hugetlb.h
-index fe99e6f..b2e62ec 100644
+index 48c76d6..5d503f4 100644
--- a/include/linux/hugetlb.h
+++ b/include/linux/hugetlb.h
@@ -314,7 +314,7 @@ struct hstate {
@@ -135901,7 +140131,7 @@ index 1c7b89a..7dda400 100644
container_of(_dev_attr, struct sensor_device_attribute_2, dev_attr)
diff --git a/include/linux/i2c.h b/include/linux/i2c.h
-index fffdc27..122364f 100644
+index 6422eef..9570baa 100644
--- a/include/linux/i2c.h
+++ b/include/linux/i2c.h
@@ -425,6 +425,7 @@ struct i2c_algorithm {
@@ -135911,7 +140141,7 @@ index fffdc27..122364f 100644
+typedef struct i2c_algorithm __no_const i2c_algorithm_no_const;
/**
- * struct i2c_timings - I2C timing information
+ * struct i2c_lock_operations - represent I2C locking operations
diff --git a/include/linux/if_pppox.h b/include/linux/if_pppox.h
index ba7a9b0..33a0237 100644
--- a/include/linux/if_pppox.h
@@ -135926,28 +140156,10 @@ index ba7a9b0..33a0237 100644
extern int register_pppox_proto(int proto_num, const struct pppox_proto *pp);
extern void unregister_pppox_proto(int proto_num);
diff --git a/include/linux/init.h b/include/linux/init.h
-index 6935d02..5e3f46e 100644
+index e30104c..34661e1 100644
--- a/include/linux/init.h
+++ b/include/linux/init.h
-@@ -39,7 +39,7 @@
-
- /* These are for everybody (although not all archs will actually
- discard it in modules) */
--#define __init __section(.init.text) __cold notrace
-+#define __init __section(.init.text) __cold notrace __latent_entropy
- #define __initdata __section(.init.data)
- #define __initconst __constsection(.init.rodata)
- #define __exitdata __section(.exit.data)
-@@ -86,7 +86,7 @@
- #define __exit __section(.exit.text) __exitused __cold notrace
-
- /* Used for MEMORY_HOTPLUG */
--#define __meminit __section(.meminit.text) __cold notrace
-+#define __meminit __section(.meminit.text) __cold notrace __latent_entropy
- #define __meminitdata __section(.meminit.data)
- #define __meminitconst __constsection(.meminit.rodata)
- #define __memexit __section(.memexit.text) __exitused __cold notrace
-@@ -111,6 +111,12 @@
+@@ -101,6 +101,12 @@
#define __REFDATA .section ".ref.data", "aw"
#define __REFCONST .section ".ref.rodata", "a"
@@ -135961,31 +140173,10 @@ index 6935d02..5e3f46e 100644
/*
* Used for initialization calls..
diff --git a/include/linux/init_task.h b/include/linux/init_task.h
-index f8834f8..9884265 100644
+index 325f649..b16f6af 100644
--- a/include/linux/init_task.h
+++ b/include/linux/init_task.h
-@@ -159,6 +159,12 @@ extern struct task_group root_task_group;
-
- #define INIT_TASK_COMM "swapper"
-
-+#ifdef CONFIG_X86
-+#define INIT_TASK_THREAD_INFO .tinfo = INIT_THREAD_INFO,
-+#else
-+#define INIT_TASK_THREAD_INFO
-+#endif
-+
- #ifdef CONFIG_RT_MUTEXES
- # define INIT_RT_MUTEXES(tsk) \
- .pi_waiters = RB_ROOT, \
-@@ -225,6 +231,7 @@ extern struct task_group root_task_group;
- RCU_POINTER_INITIALIZER(cred, &init_cred), \
- .comm = INIT_TASK_COMM, \
- .thread = INIT_THREAD, \
-+ INIT_TASK_THREAD_INFO \
- .fs = &init_fs, \
- .files = &init_files, \
- .signal = &init_signals, \
-@@ -233,7 +240,6 @@ extern struct task_group root_task_group;
+@@ -244,7 +244,6 @@ extern struct task_group root_task_group;
.pending = { \
.list = LIST_HEAD_INIT(tsk.pending.list), \
.signal = {{0}}}, \
@@ -135994,10 +140185,10 @@ index f8834f8..9884265 100644
.journal_info = NULL, \
.cpu_timers = INIT_CPU_TIMERS(tsk.cpu_timers), \
diff --git a/include/linux/interrupt.h b/include/linux/interrupt.h
-index b6683f0..9c8f391 100644
+index 72f0721..5981526 100644
--- a/include/linux/interrupt.h
+++ b/include/linux/interrupt.h
-@@ -454,8 +454,8 @@ extern const char * const softirq_to_name[NR_SOFTIRQS];
+@@ -462,8 +462,8 @@ extern const char * const softirq_to_name[NR_SOFTIRQS];
struct softirq_action
{
@@ -136008,7 +140199,7 @@ index b6683f0..9c8f391 100644
asmlinkage void do_softirq(void);
asmlinkage void __do_softirq(void);
-@@ -469,7 +469,7 @@ static inline void do_softirq_own_stack(void)
+@@ -477,7 +477,7 @@ static inline void do_softirq_own_stack(void)
}
#endif
@@ -136018,7 +140209,7 @@ index b6683f0..9c8f391 100644
extern void __raise_softirq_irqoff(unsigned int nr);
diff --git a/include/linux/iommu.h b/include/linux/iommu.h
-index a35fb8b..bceb84f 100644
+index 436dc21..a6796a4 100644
--- a/include/linux/iommu.h
+++ b/include/linux/iommu.h
@@ -202,7 +202,7 @@ struct iommu_ops {
@@ -136059,11 +140250,11 @@ index 9d84942..12d5bdf 100644
#endif /* _LINUX_IPC_H */
diff --git a/include/linux/ipc_namespace.h b/include/linux/ipc_namespace.h
-index d10e54f..c68f8af 100644
+index 848e579..65327ee 100644
--- a/include/linux/ipc_namespace.h
+++ b/include/linux/ipc_namespace.h
-@@ -60,7 +60,7 @@ struct ipc_namespace {
- struct user_namespace *user_ns;
+@@ -61,7 +61,7 @@ struct ipc_namespace {
+ struct ucounts *ucounts;
struct ns_common ns;
-};
@@ -136072,10 +140263,10 @@ index d10e54f..c68f8af 100644
extern struct ipc_namespace init_ipc_ns;
extern spinlock_t mq_lock;
diff --git a/include/linux/irq.h b/include/linux/irq.h
-index 0ac26c8..3bb92a3 100644
+index 39e3254..650e968 100644
--- a/include/linux/irq.h
+++ b/include/linux/irq.h
-@@ -408,7 +408,10 @@ struct irq_chip {
+@@ -425,7 +425,10 @@ struct irq_chip {
void (*ipi_send_mask)(struct irq_data *data, const struct cpumask *dest);
unsigned long flags;
@@ -136100,10 +140291,10 @@ index c78a892..124e0b7 100644
#endif /* __IRQCHIP_MMP_H */
diff --git a/include/linux/irqdesc.h b/include/linux/irqdesc.h
-index b51beeb..72974cf 100644
+index c9be579..00414d6 100644
--- a/include/linux/irqdesc.h
+++ b/include/linux/irqdesc.h
-@@ -62,7 +62,7 @@ struct irq_desc {
+@@ -64,7 +64,7 @@ struct irq_desc {
unsigned int irq_count; /* For detecting broken IRQs */
unsigned long last_unhandled; /* Aging timer for unhandled count */
unsigned int irqs_unhandled;
@@ -136140,10 +140331,10 @@ index dfaa1f4..a66f30d 100644
/*
* This transaction is being forced and some process is
diff --git a/include/linux/jiffies.h b/include/linux/jiffies.h
-index 5fdc553..766e169 100644
+index 589d14e..4a7c48c 100644
--- a/include/linux/jiffies.h
+++ b/include/linux/jiffies.h
-@@ -284,19 +284,19 @@ extern unsigned long preset_lpj;
+@@ -288,19 +288,19 @@ extern unsigned long preset_lpj;
extern unsigned int jiffies_to_msecs(const unsigned long j);
extern unsigned int jiffies_to_usecs(const unsigned long j);
@@ -136166,7 +140357,7 @@ index 5fdc553..766e169 100644
{
return (m + (MSEC_PER_SEC / HZ) - 1) / (MSEC_PER_SEC / HZ);
}
-@@ -307,7 +307,7 @@ static inline unsigned long _msecs_to_jiffies(const unsigned int m)
+@@ -311,7 +311,7 @@ static inline unsigned long _msecs_to_jiffies(const unsigned int m)
*
* But first make sure the multiplication result cannot overflow:
*/
@@ -136175,7 +140366,7 @@ index 5fdc553..766e169 100644
{
if (m > jiffies_to_msecs(MAX_JIFFY_OFFSET))
return MAX_JIFFY_OFFSET;
-@@ -318,7 +318,7 @@ static inline unsigned long _msecs_to_jiffies(const unsigned int m)
+@@ -322,7 +322,7 @@ static inline unsigned long _msecs_to_jiffies(const unsigned int m)
* Generic case - multiply, round and divide. But first check that if
* we are doing a net multiplication, that we wouldn't overflow:
*/
@@ -136184,7 +140375,7 @@ index 5fdc553..766e169 100644
{
if (HZ > MSEC_PER_SEC && m > jiffies_to_msecs(MAX_JIFFY_OFFSET))
return MAX_JIFFY_OFFSET;
-@@ -362,14 +362,14 @@ static __always_inline unsigned long msecs_to_jiffies(const unsigned int m)
+@@ -366,14 +366,14 @@ static __always_inline unsigned long msecs_to_jiffies(const unsigned int m)
}
}
@@ -136319,7 +140510,7 @@ index e465bb1..19f605fd 100644
extern struct kgdb_arch arch_kgdb_ops;
diff --git a/include/linux/kmemleak.h b/include/linux/kmemleak.h
-index 4894c68..7824e6a 100644
+index 1c2a328..d61f48c 100644
--- a/include/linux/kmemleak.h
+++ b/include/linux/kmemleak.h
@@ -27,7 +27,7 @@
@@ -136331,7 +140522,7 @@ index 4894c68..7824e6a 100644
extern void kmemleak_alloc_percpu(const void __percpu *ptr, size_t size,
gfp_t gfp) __ref;
extern void kmemleak_free(const void *ptr) __ref;
-@@ -63,7 +63,7 @@ static inline void kmemleak_erase(void **ptr)
+@@ -68,7 +68,7 @@ static inline void kmemleak_erase(void **ptr)
static inline void kmemleak_init(void)
{
}
@@ -136436,10 +140627,10 @@ index e15828f..531fd0a 100644
if (atomic_sub_and_test((int) count, &kref->refcount)) {
release(kref);
diff --git a/include/linux/libata.h b/include/linux/libata.h
-index e37d4f9..0a24569 100644
+index 616eef4..8d208eb 100644
--- a/include/linux/libata.h
+++ b/include/linux/libata.h
-@@ -997,7 +997,7 @@ struct ata_port_operations {
+@@ -998,7 +998,7 @@ struct ata_port_operations {
* fields must be pointers.
*/
const struct ata_port_operations *inherits;
@@ -136449,7 +140640,7 @@ index e37d4f9..0a24569 100644
struct ata_port_info {
unsigned long flags;
diff --git a/include/linux/linkage.h b/include/linux/linkage.h
-index a6a42dd..9787403 100644
+index a6a42dd..4313dcc 100644
--- a/include/linux/linkage.h
+++ b/include/linux/linkage.h
@@ -5,6 +5,7 @@
@@ -136460,7 +140651,24 @@ index a6a42dd..9787403 100644
/* Some toolchains use other characters (e.g. '`') to mark new line in macro */
#ifndef ASM_NL
-@@ -36,6 +37,7 @@
+@@ -22,7 +23,16 @@
+ #endif
+
+ #ifndef cond_syscall
++# ifdef CONFIG_PAX_RAP
++# define rap_cond_syscall(x) \
++ ".weak " VMLINUX_SYMBOL_STR(rap_##x) "\n\t" \
++ ".set " VMLINUX_SYMBOL_STR(rap_##x) "," \
++ VMLINUX_SYMBOL_STR(rap_sys_ni_syscall) "\n\t"
++# else
++# define rap_cond_syscall(x)
++# endif
+ #define cond_syscall(x) asm( \
++ rap_cond_syscall(x) \
+ ".weak " VMLINUX_SYMBOL_STR(x) "\n\t" \
+ ".set " VMLINUX_SYMBOL_STR(x) "," \
+ VMLINUX_SYMBOL_STR(sys_ni_syscall))
+@@ -36,6 +46,7 @@
#endif
#define __page_aligned_data __section(.data..page_aligned) __aligned(PAGE_SIZE)
@@ -136468,7 +140676,26 @@ index a6a42dd..9787403 100644
#define __page_aligned_bss __section(.bss..page_aligned) __aligned(PAGE_SIZE)
/*
-@@ -79,17 +81,40 @@
+@@ -72,6 +83,18 @@
+ #define __ALIGN_STR ".align 4,0x90"
+ #endif
+
++#ifdef CONFIG_PAX_RAP
++# if BITS_PER_LONG == 64
++# define __ASM_RAP_HASH(hash) .quad 0, hash
++# define __ASM_RAP_RET_HASH(hash) .quad hash
++# elif BITS_PER_LONG == 32
++# define __ASM_RAP_HASH(hash) .long 0, hash
++# define __ASM_RAP_RET_HASH(hash) .long hash
++# else
++# error incompatible BITS_PER_LONG
++# endif
++#endif
++
+ #ifdef __ASSEMBLY__
+
+ #ifndef LINKER_SCRIPT
+@@ -79,17 +102,33 @@
#define ALIGN_STR __ALIGN_STR
#ifndef ENTRY
@@ -136497,23 +140724,16 @@ index a6a42dd..9787403 100644
+#endif
+
+#ifdef CONFIG_PAX_RAP
-+#if BITS_PER_LONG == 64
-+#define __ASM_RAP_HASH(hash) .quad 0, hash ASM_NL
-+#elif BITS_PER_LONG == 32
-+#define __ASM_RAP_HASH(hash) .long 0, 0, 0, hash ASM_NL
++# define RAP_ENTRY(name) __ENTRY(name, __ASM_RAP_HASH(__rap_hash_call_##name) ASM_NL)
++# define RAP_WEAK(name) __WEAK(name, __ASM_RAP_HASH(__rap_hash_call_##name) ASM_NL)
+#else
-+#error incompatible BITS_PER_LONG
-+#endif
-+#define RAP_ENTRY(name) __ENTRY(name, __ASM_RAP_HASH(__rap_hash_##name))
-+#define RAP_WEAK(name) __WEAK(name, __ASM_RAP_HASH(__rap_hash_##name))
-+#else
-+#define RAP_ENTRY(name) ENTRY(name)
-+#define RAP_WEAK(name) WEAK(name)
++# define RAP_ENTRY(name) ENTRY(name)
++# define RAP_WEAK(name) WEAK(name)
#endif
#ifndef END
diff --git a/include/linux/list.h b/include/linux/list.h
-index 5183138..645f33d 100644
+index 5809e9a..d20a3b2 100644
--- a/include/linux/list.h
+++ b/include/linux/list.h
@@ -113,6 +113,19 @@ extern void __list_del_entry(struct list_head *entry);
@@ -136710,10 +140930,10 @@ index b10b122..d37b3de 100644
#endif /* __LINUX_LOCKREF_H */
diff --git a/include/linux/lsm_hooks.h b/include/linux/lsm_hooks.h
-index 101bf19..feb307e 100644
+index 558adfa..9127895 100644
--- a/include/linux/lsm_hooks.h
+++ b/include/linux/lsm_hooks.h
-@@ -1831,7 +1831,7 @@ struct security_hook_heads {
+@@ -1866,7 +1866,7 @@ struct security_hook_heads {
struct list_head audit_rule_match;
struct list_head audit_rule_free;
#endif /* CONFIG_AUDIT */
@@ -136722,7 +140942,7 @@ index 101bf19..feb307e 100644
/*
* Security module hook list structure.
-@@ -1841,7 +1841,7 @@ struct security_hook_list {
+@@ -1876,7 +1876,7 @@ struct security_hook_list {
struct list_head list;
struct list_head *head;
union security_list_options hook;
@@ -136781,7 +141001,7 @@ index 6e8b5b2..8e8a37d 100644
u32 remainder;
return div_u64_rem(dividend, divisor, &remainder);
diff --git a/include/linux/memcontrol.h b/include/linux/memcontrol.h
-index 5d8ca6e..0b2174b 100644
+index 2546988..ce9c14d 100644
--- a/include/linux/memcontrol.h
+++ b/include/linux/memcontrol.h
@@ -258,7 +258,7 @@ struct mem_cgroup {
@@ -136832,7 +141052,7 @@ index 5e5b296..629113f 100644
static inline int
vma_dup_policy(struct vm_area_struct *src, struct vm_area_struct *dst)
diff --git a/include/linux/mm.h b/include/linux/mm.h
-index 277cd39..27ecb26 100644
+index 0b5b2e4..8f2773e 100644
--- a/include/linux/mm.h
+++ b/include/linux/mm.h
@@ -107,6 +107,7 @@ extern int mmap_rnd_compat_bits __read_mostly;
@@ -136874,7 +141094,7 @@ index 277cd39..27ecb26 100644
struct mmu_gather;
struct inode;
-@@ -1237,8 +1244,8 @@ int follow_pfn(struct vm_area_struct *vma, unsigned long address,
+@@ -1225,8 +1232,8 @@ int follow_pfn(struct vm_area_struct *vma, unsigned long address,
unsigned long *pfn);
int follow_phys(struct vm_area_struct *vma, unsigned long address,
unsigned int flags, unsigned long *prot, resource_size_t *phys);
@@ -136885,20 +141105,25 @@ index 277cd39..27ecb26 100644
static inline void unmap_shared_mapping_range(struct address_space *mapping,
loff_t const holebegin, loff_t const holelen)
-@@ -1278,9 +1285,9 @@ static inline int fixup_user_fault(struct task_struct *tsk,
+@@ -1266,12 +1273,12 @@ static inline int fixup_user_fault(struct task_struct *tsk,
}
#endif
--extern int access_process_vm(struct task_struct *tsk, unsigned long addr, void *buf, int len, int write);
+-extern int access_process_vm(struct task_struct *tsk, unsigned long addr, void *buf, int len,
++extern ssize_t access_process_vm(struct task_struct *tsk, unsigned long addr, void *buf, size_t len,
+ unsigned int gup_flags);
-extern int access_remote_vm(struct mm_struct *mm, unsigned long addr,
-- void *buf, int len, int write);
-+extern ssize_t access_process_vm(struct task_struct *tsk, unsigned long addr, void *buf, size_t len, int write);
+- void *buf, int len, unsigned int gup_flags);
+-extern int __access_remote_vm(struct task_struct *tsk, struct mm_struct *mm,
+- unsigned long addr, void *buf, int len, unsigned int gup_flags);
+extern ssize_t access_remote_vm(struct mm_struct *mm, unsigned long addr,
-+ void *buf, size_t len, int write);
++ void *buf, size_t len, unsigned int gup_flags);
++extern ssize_t __access_remote_vm(struct task_struct *tsk, struct mm_struct *mm,
++ unsigned long addr, void *buf, size_t len, unsigned int gup_flags);
- long __get_user_pages(struct task_struct *tsk, struct mm_struct *mm,
- unsigned long start, unsigned long nr_pages,
-@@ -1370,39 +1377,11 @@ int clear_page_dirty_for_io(struct page *page);
+ long get_user_pages_remote(struct task_struct *tsk, struct mm_struct *mm,
+ unsigned long start, unsigned long nr_pages,
+@@ -1356,39 +1363,11 @@ int clear_page_dirty_for_io(struct page *page);
int get_cmdline(struct task_struct *task, char *buffer, int buflen);
@@ -136935,10 +141160,10 @@ index 277cd39..27ecb26 100644
- !vma_growsup(vma->vm_next, addr);
-}
-
- int vma_is_stack_for_task(struct vm_area_struct *vma, struct task_struct *t);
+ int vma_is_stack_for_current(struct vm_area_struct *vma);
extern unsigned long move_page_tables(struct vm_area_struct *vma,
-@@ -1547,8 +1526,15 @@ static inline int __pud_alloc(struct mm_struct *mm, pgd_t *pgd,
+@@ -1533,8 +1512,15 @@ static inline int __pud_alloc(struct mm_struct *mm, pgd_t *pgd,
{
return 0;
}
@@ -136954,7 +141179,7 @@ index 277cd39..27ecb26 100644
#endif
#if defined(__PAGETABLE_PMD_FOLDED) || !defined(CONFIG_MMU)
-@@ -1558,6 +1544,12 @@ static inline int __pmd_alloc(struct mm_struct *mm, pud_t *pud,
+@@ -1544,6 +1530,12 @@ static inline int __pmd_alloc(struct mm_struct *mm, pud_t *pud,
return 0;
}
@@ -136967,7 +141192,7 @@ index 277cd39..27ecb26 100644
static inline void mm_nr_pmds_init(struct mm_struct *mm) {}
static inline unsigned long mm_nr_pmds(struct mm_struct *mm)
-@@ -1570,6 +1562,7 @@ static inline void mm_dec_nr_pmds(struct mm_struct *mm) {}
+@@ -1556,6 +1548,7 @@ static inline void mm_dec_nr_pmds(struct mm_struct *mm) {}
#else
int __pmd_alloc(struct mm_struct *mm, pud_t *pud, unsigned long address);
@@ -136975,7 +141200,7 @@ index 277cd39..27ecb26 100644
static inline void mm_nr_pmds_init(struct mm_struct *mm)
{
-@@ -1606,11 +1599,23 @@ static inline pud_t *pud_alloc(struct mm_struct *mm, pgd_t *pgd, unsigned long a
+@@ -1592,11 +1585,23 @@ static inline pud_t *pud_alloc(struct mm_struct *mm, pgd_t *pgd, unsigned long a
NULL: pud_offset(pgd, address);
}
@@ -136999,7 +141224,7 @@ index 277cd39..27ecb26 100644
#endif /* CONFIG_MMU && !__ARCH_HAS_4LEVEL_HACK */
#if USE_SPLIT_PTE_PTLOCKS
-@@ -1995,12 +2000,23 @@ extern struct vm_area_struct *copy_vma(struct vm_area_struct **,
+@@ -1989,12 +1994,23 @@ extern struct vm_area_struct *copy_vma(struct vm_area_struct **,
bool *need_rmap_locks);
extern void exit_mmap(struct mm_struct *);
@@ -137023,7 +141248,7 @@ index 277cd39..27ecb26 100644
if (rlim < RLIM_INFINITY) {
if (((new - start) + (end_data - start_data)) > rlim)
return -ENOSPC;
-@@ -2036,6 +2052,7 @@ extern unsigned long do_mmap(struct file *file, unsigned long addr,
+@@ -2032,6 +2048,7 @@ extern unsigned long do_mmap(struct file *file, unsigned long addr,
unsigned long len, unsigned long prot, unsigned long flags,
vm_flags_t vm_flags, unsigned long pgoff, unsigned long *populate);
extern int do_munmap(struct mm_struct *, unsigned long, size_t);
@@ -137031,7 +141256,7 @@ index 277cd39..27ecb26 100644
static inline unsigned long
do_mmap_pgoff(struct file *file, unsigned long addr,
-@@ -2072,10 +2089,11 @@ struct vm_unmapped_area_info {
+@@ -2068,10 +2085,11 @@ struct vm_unmapped_area_info {
unsigned long high_limit;
unsigned long align_mask;
unsigned long align_offset;
@@ -137045,7 +141270,7 @@ index 277cd39..27ecb26 100644
/*
* Search for an unmapped address range.
-@@ -2087,7 +2105,7 @@ extern unsigned long unmapped_area_topdown(struct vm_unmapped_area_info *info);
+@@ -2083,7 +2101,7 @@ extern unsigned long unmapped_area_topdown(struct vm_unmapped_area_info *info);
* - satisfies (begin_addr & align_mask) == (align_offset & align_mask)
*/
static inline unsigned long
@@ -137054,7 +141279,7 @@ index 277cd39..27ecb26 100644
{
if (info->flags & VM_UNMAPPED_AREA_TOPDOWN)
return unmapped_area_topdown(info);
-@@ -2148,6 +2166,9 @@ extern struct vm_area_struct * find_vma(struct mm_struct * mm, unsigned long add
+@@ -2144,6 +2162,9 @@ extern struct vm_area_struct * find_vma(struct mm_struct * mm, unsigned long add
extern struct vm_area_struct * find_vma_prev(struct mm_struct * mm, unsigned long addr,
struct vm_area_struct **pprev);
@@ -137064,7 +141289,7 @@ index 277cd39..27ecb26 100644
/* Look up the first VMA which intersects the interval start_addr..end_addr-1,
NULL if none. Assume start_addr < end_addr. */
static inline struct vm_area_struct * find_vma_intersection(struct mm_struct * mm, unsigned long start_addr, unsigned long end_addr)
-@@ -2177,10 +2198,10 @@ static inline struct vm_area_struct *find_exact_vma(struct mm_struct *mm,
+@@ -2173,10 +2194,10 @@ static inline struct vm_area_struct *find_exact_vma(struct mm_struct *mm,
}
#ifdef CONFIG_MMU
@@ -137077,7 +141302,7 @@ index 277cd39..27ecb26 100644
{
return __pgprot(0);
}
-@@ -2366,7 +2387,7 @@ extern int get_hwpoison_page(struct page *page);
+@@ -2362,7 +2383,7 @@ extern int get_hwpoison_page(struct page *page);
extern int sysctl_memory_failure_early_kill;
extern int sysctl_memory_failure_recovery;
extern void shake_page(struct page *p, int access);
@@ -137086,7 +141311,7 @@ index 277cd39..27ecb26 100644
extern int soft_offline_page(struct page *page, int flags);
-@@ -2454,5 +2475,11 @@ void __init setup_nr_node_ids(void);
+@@ -2450,5 +2471,11 @@ void __init setup_nr_node_ids(void);
static inline void setup_nr_node_ids(void) {}
#endif
@@ -137099,7 +141324,7 @@ index 277cd39..27ecb26 100644
#endif /* __KERNEL__ */
#endif /* _LINUX_MM_H */
diff --git a/include/linux/mm_types.h b/include/linux/mm_types.h
-index 3982008..bd7e217 100644
+index 08d947f..ceb5da6 100644
--- a/include/linux/mm_types.h
+++ b/include/linux/mm_types.h
@@ -358,7 +358,9 @@ struct vm_area_struct {
@@ -137113,10 +141338,10 @@ index 3982008..bd7e217 100644
struct core_thread {
struct task_struct *task;
-@@ -519,7 +521,25 @@ struct mm_struct {
- #ifdef CONFIG_MMU
- struct work_struct async_put_work;
+@@ -517,7 +519,25 @@ struct mm_struct {
+ atomic_long_t hugetlb_usage;
#endif
+ struct work_struct async_put_work;
-};
+
+#if defined(CONFIG_PAX_NOEXEC) || defined(CONFIG_PAX_ASLR)
@@ -137163,10 +141388,10 @@ index 3ba327a..85cd5ce 100644
}
diff --git a/include/linux/mmzone.h b/include/linux/mmzone.h
-index 7f2ae99..27ca9cf 100644
+index f99c993..224b9e3 100644
--- a/include/linux/mmzone.h
+++ b/include/linux/mmzone.h
-@@ -517,7 +517,7 @@ struct zone {
+@@ -491,7 +491,7 @@ struct zone {
ZONE_PADDING(_pad3_)
/* Zone statistics */
@@ -137175,7 +141400,7 @@ index 7f2ae99..27ca9cf 100644
} ____cacheline_internodealigned_in_smp;
enum pgdat_flags {
-@@ -721,7 +721,7 @@ typedef struct pglist_data {
+@@ -695,7 +695,7 @@ typedef struct pglist_data {
/* Per-node vmstats */
struct per_cpu_nodestat __percpu *per_cpu_nodestats;
@@ -137448,7 +141673,7 @@ index 52666d9..f10563b 100644
.ops = &param_ops_##type, \
.elemsize = sizeof(array[0]), .elem = array }; \
diff --git a/include/linux/mount.h b/include/linux/mount.h
-index 54a594d..1f7fa02 100644
+index 1172cce..2d97d14 100644
--- a/include/linux/mount.h
+++ b/include/linux/mount.h
@@ -67,7 +67,7 @@ struct vfsmount {
@@ -137474,10 +141699,10 @@ index f3f302f..a001305 100644
/* Helper routines for sys_msgsnd and sys_msgrcv */
extern long do_msgsnd(int msqid, long mtype, void __user *mtext,
diff --git a/include/linux/net.h b/include/linux/net.h
-index b9f0ff4..fd3f501 100644
+index cd0c8bd..8c20e41 100644
--- a/include/linux/net.h
+++ b/include/linux/net.h
-@@ -196,7 +196,7 @@ struct net_proto_family {
+@@ -202,7 +202,7 @@ struct net_proto_family {
int (*create)(struct net *net, struct socket *sock,
int protocol, int kern);
struct module *owner;
@@ -137487,10 +141712,10 @@ index b9f0ff4..fd3f501 100644
struct iovec;
struct kvec;
diff --git a/include/linux/netdevice.h b/include/linux/netdevice.h
-index e942c67..6133147 100644
+index d83590e..7bd7c11 100644
--- a/include/linux/netdevice.h
+++ b/include/linux/netdevice.h
-@@ -1307,6 +1307,7 @@ struct net_device_ops {
+@@ -1324,6 +1324,7 @@ struct net_device_ops {
int (*ndo_xdp)(struct net_device *dev,
struct netdev_xdp *xdp);
};
@@ -137498,7 +141723,7 @@ index e942c67..6133147 100644
/**
* enum net_device_priv_flags - &struct net_device priv_flags
-@@ -1636,7 +1637,7 @@ struct net_device {
+@@ -1651,7 +1652,7 @@ struct net_device {
unsigned long base_addr;
int irq;
@@ -137507,7 +141732,7 @@ index e942c67..6133147 100644
/*
* Some hardware also needs these fields (state,dev_list,
-@@ -1676,9 +1677,9 @@ struct net_device {
+@@ -1691,9 +1692,9 @@ struct net_device {
struct net_device_stats stats;
@@ -137520,7 +141745,16 @@ index e942c67..6133147 100644
#ifdef CONFIG_WIRELESS_EXT
const struct iw_handler_def *wireless_handlers;
-@@ -4255,7 +4256,7 @@ static inline bool netif_reduces_vlan_mtu(struct net_device *dev)
+@@ -3364,7 +3365,7 @@ static __always_inline int ____dev_forward_skb(struct net_device *dev,
+ {
+ if (skb_orphan_frags(skb, GFP_ATOMIC) ||
+ unlikely(!is_skb_forwardable(dev, skb))) {
+- atomic_long_inc(&dev->rx_dropped);
++ atomic_long_inc_unchecked(&dev->rx_dropped);
+ kfree_skb(skb);
+ return NET_RX_DROP;
+ }
+@@ -4290,7 +4291,7 @@ static inline bool netif_reduces_vlan_mtu(struct net_device *dev)
return dev->priv_flags & IFF_MACSEC;
}
@@ -137530,10 +141764,10 @@ index e942c67..6133147 100644
/* Logging, debugging and troubleshooting/diagnostic helpers. */
diff --git a/include/linux/netfilter.h b/include/linux/netfilter.h
-index 9230f9a..065b8f8 100644
+index abc7fdc..455cf2e 100644
--- a/include/linux/netfilter.h
+++ b/include/linux/netfilter.h
-@@ -119,7 +119,7 @@ struct nf_sockopt_ops {
+@@ -126,7 +126,7 @@ struct nf_sockopt_ops {
#endif
/* Use the module struct to lock set/get code in place */
struct module *owner;
@@ -137725,7 +141959,7 @@ index b2a0f15..4d7da32 100644
/** create a directory */
struct dentry *oprofilefs_mkdir(struct dentry *parent, char const *name);
diff --git a/include/linux/padata.h b/include/linux/padata.h
-index 113ee62..70198a7 100644
+index 0f9e567..3c370bd 100644
--- a/include/linux/padata.h
+++ b/include/linux/padata.h
@@ -129,7 +129,7 @@ struct parallel_data {
@@ -137738,10 +141972,10 @@ index 113ee62..70198a7 100644
spinlock_t lock ____cacheline_aligned;
unsigned int processed;
diff --git a/include/linux/pagemap.h b/include/linux/pagemap.h
-index d47cc4a..e1c3886 100644
+index 7dbe914..0741609 100644
--- a/include/linux/pagemap.h
+++ b/include/linux/pagemap.h
-@@ -215,7 +215,7 @@ static inline gfp_t readahead_gfp_mask(struct address_space *x)
+@@ -225,7 +225,7 @@ static inline gfp_t readahead_gfp_mask(struct address_space *x)
__GFP_COLD | __GFP_NORETRY | __GFP_NOWARN;
}
@@ -137750,7 +141984,7 @@ index d47cc4a..e1c3886 100644
pgoff_t page_cache_next_hole(struct address_space *mapping,
pgoff_t index, unsigned long max_scan);
-@@ -359,7 +359,7 @@ extern int read_cache_pages(struct address_space *mapping,
+@@ -369,7 +369,7 @@ extern int read_cache_pages(struct address_space *mapping,
static inline struct page *read_mapping_page(struct address_space *mapping,
pgoff_t index, void *data)
{
@@ -137794,6 +142028,26 @@ index 8c78950..0d74ed9 100644
/**
* struct hotplug_slot_info - used to notify the hotplug pci core of the state of the slot
+diff --git a/include/linux/percpu-defs.h b/include/linux/percpu-defs.h
+index 8f16299..8bf7cf0 100644
+--- a/include/linux/percpu-defs.h
++++ b/include/linux/percpu-defs.h
+@@ -173,6 +173,15 @@
+ DEFINE_PER_CPU_SECTION(type, name, "..read_mostly")
+
+ /*
++ * Declaration/definition used for per-CPU variables that must be read only.
++ */
++#define DECLARE_PER_CPU_READ_ONLY(type, name) \
++ DECLARE_PER_CPU_SECTION(type, name, "..read_only")
++
++#define DEFINE_PER_CPU_READ_ONLY(type, name) \
++ DEFINE_PER_CPU_SECTION(type, name, "..read_only")
++
++/*
+ * Intermodule exports for per-CPU variables. sparse forgets about
+ * address space across EXPORT_SYMBOL(), change EXPORT_SYMBOL() to
+ * noop if __CHECKER__.
diff --git a/include/linux/percpu.h b/include/linux/percpu.h
index 56939d3..7fb18e3 100644
--- a/include/linux/percpu.h
@@ -137808,10 +142062,10 @@ index 56939d3..7fb18e3 100644
/*
diff --git a/include/linux/perf_event.h b/include/linux/perf_event.h
-index 2b6b43c..7021115 100644
+index 4741ecd..fd32440 100644
--- a/include/linux/perf_event.h
+++ b/include/linux/perf_event.h
-@@ -575,8 +575,8 @@ struct perf_event {
+@@ -586,8 +586,8 @@ struct perf_event {
enum perf_event_active_state state;
unsigned int attach_state;
@@ -137822,7 +142076,7 @@ index 2b6b43c..7021115 100644
/*
* These are the total time in nanoseconds that the event
-@@ -627,8 +627,8 @@ struct perf_event {
+@@ -638,8 +638,8 @@ struct perf_event {
* These accumulate total time (in nanoseconds) that children
* events have been enabled and running, respectively.
*/
@@ -137833,7 +142087,7 @@ index 2b6b43c..7021115 100644
/*
* Protect attach/detach and child_list:
-@@ -1077,7 +1077,7 @@ static inline void perf_event_task_sched_out(struct task_struct *prev,
+@@ -1100,7 +1100,7 @@ static inline void perf_event_task_sched_out(struct task_struct *prev,
static inline u64 __perf_event_count(struct perf_event *event)
{
@@ -137842,7 +142096,7 @@ index 2b6b43c..7021115 100644
}
extern void perf_event_mmap(struct vm_area_struct *vma);
-@@ -1128,7 +1128,7 @@ static inline int perf_callchain_store(struct perf_callchain_entry_ctx *ctx, u64
+@@ -1151,7 +1151,7 @@ static inline int perf_callchain_store(struct perf_callchain_entry_ctx *ctx, u64
}
}
@@ -137851,7 +142105,7 @@ index 2b6b43c..7021115 100644
extern int sysctl_perf_event_mlock;
extern int sysctl_perf_event_sample_rate;
extern int sysctl_perf_cpu_time_max_percent;
-@@ -1145,19 +1145,24 @@ extern int perf_cpu_time_max_percent_handler(struct ctl_table *table, int write,
+@@ -1168,19 +1168,24 @@ extern int perf_cpu_time_max_percent_handler(struct ctl_table *table, int write,
int perf_event_max_stack_handler(struct ctl_table *table, int write,
void __user *buffer, size_t *lenp, loff_t *ppos);
@@ -137879,7 +142133,7 @@ index 2b6b43c..7021115 100644
}
extern void perf_event_init(void);
-@@ -1317,7 +1322,7 @@ struct perf_pmu_events_attr {
+@@ -1341,7 +1346,7 @@ struct perf_pmu_events_attr {
struct device_attribute attr;
u64 id;
const char *event_str;
@@ -137904,10 +142158,10 @@ index 23705a5..af2bfb4 100644
#define do_each_pid_task(pid, type, task) \
do { \
diff --git a/include/linux/pid_namespace.h b/include/linux/pid_namespace.h
-index 918b117..7af374b7 100644
+index 34cce96..c925afb 100644
--- a/include/linux/pid_namespace.h
+++ b/include/linux/pid_namespace.h
-@@ -45,7 +45,7 @@ struct pid_namespace {
+@@ -46,7 +46,7 @@ struct pid_namespace {
int hide_pid;
int reboot; /* group exit code if this pidns was rebooted */
struct ns_common ns;
@@ -137917,7 +142171,7 @@ index 918b117..7af374b7 100644
extern struct pid_namespace init_pid_ns;
diff --git a/include/linux/pipe_fs_i.h b/include/linux/pipe_fs_i.h
-index 24f5470..deb6089 100644
+index e7497c9..43ebf07 100644
--- a/include/linux/pipe_fs_i.h
+++ b/include/linux/pipe_fs_i.h
@@ -48,10 +48,10 @@ struct pipe_inode_info {
@@ -137948,7 +142202,7 @@ index 06eb353..dbf4a34 100644
/*
* The PM_EVENT_ messages are also used by drivers implementing the legacy
diff --git a/include/linux/pm_domain.h b/include/linux/pm_domain.h
-index 31fec85..97f3906 100644
+index a09fe5c..2b98af0 100644
--- a/include/linux/pm_domain.h
+++ b/include/linux/pm_domain.h
@@ -35,7 +35,7 @@ struct gpd_dev_ops {
@@ -138100,10 +142354,10 @@ index 75e4e30..fcfde15 100644
#define preempt_set_need_resched() \
do { \
diff --git a/include/linux/printk.h b/include/linux/printk.h
-index 696a56b..c7cff38 100644
+index eac1af8..a29982a 100644
--- a/include/linux/printk.h
+++ b/include/linux/printk.h
-@@ -43,7 +43,7 @@ static inline const char *printk_skip_level(const char *buffer)
+@@ -44,7 +44,7 @@ static inline const char *printk_skip_level(const char *buffer)
#define CONSOLE_LOGLEVEL_DEBUG 10 /* issue debug messages */
#define CONSOLE_LOGLEVEL_MOTORMOUTH 15 /* You can't shut this one up */
@@ -138112,7 +142366,7 @@ index 696a56b..c7cff38 100644
#define console_loglevel (console_printk[0])
#define default_message_loglevel (console_printk[1])
-@@ -144,6 +144,8 @@ static inline void printk_nmi_flush(void) { }
+@@ -145,6 +145,8 @@ static inline void printk_nmi_flush(void) { }
static inline void printk_nmi_flush_on_panic(void) { }
#endif /* PRINTK_NMI */
@@ -138121,7 +142375,7 @@ index 696a56b..c7cff38 100644
#ifdef CONFIG_PRINTK
asmlinkage __printf(5, 0)
int vprintk_emit(int facility, int level,
-@@ -171,14 +173,13 @@ __printf(1, 2) __cold int printk_deferred(const char *fmt, ...);
+@@ -172,14 +174,13 @@ __printf(1, 2) __cold int printk_deferred(const char *fmt, ...);
* with all other unrelated printk_ratelimit() callsites. Instead use
* printk_ratelimited() or plain old __ratelimit().
*/
@@ -138196,13 +142450,13 @@ index b97bf2e..f14c92d4 100644
#endif /* _LINUX_PROC_FS_H */
diff --git a/include/linux/proc_ns.h b/include/linux/proc_ns.h
-index de0e771..9e746e9 100644
+index 12cb8bd..00d5162 100644
--- a/include/linux/proc_ns.h
+++ b/include/linux/proc_ns.h
-@@ -18,7 +18,7 @@ struct proc_ns_operations {
- struct ns_common *(*get)(struct task_struct *task);
- void (*put)(struct ns_common *ns);
+@@ -20,7 +20,7 @@ struct proc_ns_operations {
int (*install)(struct nsproxy *nsproxy, struct ns_common *ns);
+ struct user_namespace *(*owner)(struct ns_common *ns);
+ struct ns_common *(*get_parent)(struct ns_common *ns);
-};
+} __do_const __randomize_layout;
@@ -138235,32 +142489,10 @@ index 55107a8..eb06178 100644
extern bool qid_valid(struct kqid qid);
diff --git a/include/linux/random.h b/include/linux/random.h
-index 3d6e981..4925f17 100644
+index 7bd2403..211378b 100644
--- a/include/linux/random.h
+++ b/include/linux/random.h
-@@ -18,9 +18,19 @@ struct random_ready_callback {
- };
-
- extern void add_device_randomness(const void *, unsigned int);
-+
-+#if defined(LATENT_ENTROPY_PLUGIN) && !defined(__CHECKER__)
-+static inline void add_latent_entropy(void)
-+{
-+ add_device_randomness((const void *)&latent_entropy, sizeof(latent_entropy));
-+}
-+#else
-+static inline void add_latent_entropy(void) {}
-+#endif
-+
- extern void add_input_randomness(unsigned int type, unsigned int code,
-- unsigned int value);
--extern void add_interrupt_randomness(int irq, int irq_flags);
-+ unsigned int value) __latent_entropy;
-+extern void add_interrupt_randomness(int irq, int irq_flags) __latent_entropy;
-
- extern void get_random_bytes(void *buf, int nbytes);
- extern int add_random_ready_callback(struct random_ready_callback *rdy);
-@@ -52,6 +62,11 @@ void prandom_seed_full_state(struct rnd_state __percpu *pcpu_state);
+@@ -63,6 +63,11 @@ void prandom_seed_full_state(struct rnd_state __percpu *pcpu_state);
#define prandom_init_once(pcpu_state) \
DO_ONCE(prandom_seed_full_state, (pcpu_state))
@@ -138272,7 +142504,7 @@ index 3d6e981..4925f17 100644
/**
* prandom_u32_max - returns a pseudo-random number in interval [0, ep_ro)
* @ep_ro: right open interval endpoint
-@@ -64,7 +79,7 @@ void prandom_seed_full_state(struct rnd_state __percpu *pcpu_state);
+@@ -75,7 +80,7 @@ void prandom_seed_full_state(struct rnd_state __percpu *pcpu_state);
*
* Returns: pseudo-random number in interval [0, ep_ro)
*/
@@ -138359,10 +142591,10 @@ index 8beb98d..c515d45 100644
* hlist_del_init_rcu - deletes entry from hash list with re-initialization
* @n: the element to delete from the hash list.
diff --git a/include/linux/rcupdate.h b/include/linux/rcupdate.h
-index 1aa62e1..8f67337 100644
+index 01f71e1..20f3e97 100644
--- a/include/linux/rcupdate.h
+++ b/include/linux/rcupdate.h
-@@ -863,6 +863,7 @@ static inline void rcu_preempt_sleep_check(void)
+@@ -868,6 +868,7 @@ static inline void rcu_preempt_sleep_check(void)
* read-side critical sections may be preempted and they may also block, but
* only when acquiring spinlocks that are subject to priority inheritance.
*/
@@ -138370,7 +142602,7 @@ index 1aa62e1..8f67337 100644
static inline void rcu_read_lock(void)
{
__rcu_read_lock();
-@@ -917,6 +918,7 @@ static inline void rcu_read_lock(void)
+@@ -922,6 +923,7 @@ static inline void rcu_read_lock(void)
*
* See rcu_read_lock() for more information.
*/
@@ -138378,7 +142610,7 @@ index 1aa62e1..8f67337 100644
static inline void rcu_read_unlock(void)
{
RCU_LOCKDEP_WARN(!rcu_is_watching(),
-@@ -943,6 +945,7 @@ static inline void rcu_read_unlock(void)
+@@ -948,6 +950,7 @@ static inline void rcu_read_unlock(void)
* rcu_read_unlock_bh() from one task if the matching rcu_read_lock_bh()
* was invoked from some other task.
*/
@@ -138386,7 +142618,7 @@ index 1aa62e1..8f67337 100644
static inline void rcu_read_lock_bh(void)
{
local_bh_disable();
-@@ -957,6 +960,7 @@ static inline void rcu_read_lock_bh(void)
+@@ -962,6 +965,7 @@ static inline void rcu_read_lock_bh(void)
*
* See rcu_read_lock_bh() for more information.
*/
@@ -138394,7 +142626,7 @@ index 1aa62e1..8f67337 100644
static inline void rcu_read_unlock_bh(void)
{
RCU_LOCKDEP_WARN(!rcu_is_watching(),
-@@ -979,6 +983,7 @@ static inline void rcu_read_unlock_bh(void)
+@@ -984,6 +988,7 @@ static inline void rcu_read_unlock_bh(void)
* rcu_read_unlock_sched() from process context if the matching
* rcu_read_lock_sched() was invoked from an NMI handler.
*/
@@ -138402,7 +142634,7 @@ index 1aa62e1..8f67337 100644
static inline void rcu_read_lock_sched(void)
{
preempt_disable();
-@@ -989,6 +994,7 @@ static inline void rcu_read_lock_sched(void)
+@@ -994,6 +999,7 @@ static inline void rcu_read_lock_sched(void)
}
/* Used by lockdep and tracing: cannot be traced, cannot call lockdep. */
@@ -138410,7 +142642,7 @@ index 1aa62e1..8f67337 100644
static inline notrace void rcu_read_lock_sched_notrace(void)
{
preempt_disable_notrace();
-@@ -1000,6 +1006,7 @@ static inline notrace void rcu_read_lock_sched_notrace(void)
+@@ -1005,6 +1011,7 @@ static inline notrace void rcu_read_lock_sched_notrace(void)
*
* See rcu_read_lock_sched for more information.
*/
@@ -138418,7 +142650,7 @@ index 1aa62e1..8f67337 100644
static inline void rcu_read_unlock_sched(void)
{
RCU_LOCKDEP_WARN(!rcu_is_watching(),
-@@ -1010,6 +1017,7 @@ static inline void rcu_read_unlock_sched(void)
+@@ -1015,6 +1022,7 @@ static inline void rcu_read_unlock_sched(void)
}
/* Used by lockdep and tracing: cannot be traced, cannot call lockdep. */
@@ -138480,10 +142712,10 @@ index 8e0c9fe..ac4d221 100644
/**
* struct user_regset_view - available regsets
diff --git a/include/linux/relay.h b/include/linux/relay.h
-index d7c8359..818daf5 100644
+index 68c1448..3ef7baf 100644
--- a/include/linux/relay.h
+++ b/include/linux/relay.h
-@@ -157,7 +157,7 @@ struct rchan_callbacks
+@@ -159,7 +159,7 @@ struct rchan_callbacks
* The callback should return 0 if successful, negative if not.
*/
int (*remove_buf_file)(struct dentry *dentry);
@@ -138520,8 +142752,25 @@ index b46bb56..f5a4748 100644
static inline void anon_vma_merge(struct vm_area_struct *vma,
struct vm_area_struct *next)
+diff --git a/include/linux/rwsem.h b/include/linux/rwsem.h
+index dd1d142..4d6d861 100644
+--- a/include/linux/rwsem.h
++++ b/include/linux/rwsem.h
+@@ -49,6 +49,12 @@ extern struct rw_semaphore *rwsem_down_write_failed_killable(struct rw_semaphore
+ extern struct rw_semaphore *rwsem_wake(struct rw_semaphore *);
+ extern struct rw_semaphore *rwsem_downgrade_wake(struct rw_semaphore *sem);
+
++extern struct rw_semaphore *call_rwsem_down_read_failed(struct rw_semaphore *sem) __rap_hash;
++extern struct rw_semaphore *call_rwsem_down_write_failed(struct rw_semaphore *sem) __rap_hash;
++extern struct rw_semaphore *call_rwsem_down_write_failed_killable(struct rw_semaphore *sem) __rap_hash;
++extern struct rw_semaphore *call_rwsem_wake(struct rw_semaphore *) __rap_hash;
++extern struct rw_semaphore *call_rwsem_downgrade_wake(struct rw_semaphore *sem) __rap_hash;
++
+ /* Include the arch specific part */
+ #include <asm/rwsem.h>
+
diff --git a/include/linux/scatterlist.h b/include/linux/scatterlist.h
-index cb3c8fe..85365ba 100644
+index cb3c8fe..a001ef9 100644
--- a/include/linux/scatterlist.h
+++ b/include/linux/scatterlist.h
@@ -1,6 +1,7 @@
@@ -138532,16 +142781,11 @@ index cb3c8fe..85365ba 100644
#include <linux/string.h>
#include <linux/types.h>
#include <linux/bug.h>
-@@ -136,10 +137,17 @@ static inline struct page *sg_page(struct scatterlist *sg)
+@@ -136,10 +137,12 @@ static inline struct page *sg_page(struct scatterlist *sg)
static inline void sg_set_buf(struct scatterlist *sg, const void *buf,
unsigned int buflen)
{
-+ const void *realbuf = buf;
-+
-+#ifdef CONFIG_GRKERNSEC_KSTACKOVERFLOW
-+ if (object_starts_on_stack(buf))
-+ realbuf = buf - current->stack + current->lowmem_stack;
-+#endif
++ const void *realbuf = gr_convert_stack_address_to_lowmem(buf);
+
#ifdef CONFIG_DEBUG_SG
- BUG_ON(!virt_addr_valid(buf));
@@ -138553,7 +142797,7 @@ index cb3c8fe..85365ba 100644
/*
diff --git a/include/linux/sched.h b/include/linux/sched.h
-index f52d4cc..f20b8f5 100644
+index 75d9a57..3370513 100644
--- a/include/linux/sched.h
+++ b/include/linux/sched.h
@@ -7,7 +7,7 @@
@@ -138573,7 +142817,7 @@ index f52d4cc..f20b8f5 100644
#define VMACACHE_BITS 2
#define VMACACHE_SIZE (1U << VMACACHE_BITS)
-@@ -452,6 +453,18 @@ struct nsproxy;
+@@ -454,6 +455,18 @@ struct nsproxy;
struct user_namespace;
#ifdef CONFIG_MMU
@@ -138592,7 +142836,7 @@ index f52d4cc..f20b8f5 100644
extern void arch_pick_mmap_layout(struct mm_struct *mm);
extern unsigned long
arch_get_unmapped_area(struct file *, unsigned long, unsigned long,
-@@ -791,6 +804,17 @@ struct signal_struct {
+@@ -793,6 +806,17 @@ struct signal_struct {
#ifdef CONFIG_TASKSTATS
struct taskstats *stats;
#endif
@@ -138610,7 +142854,7 @@ index f52d4cc..f20b8f5 100644
#ifdef CONFIG_AUDIT
unsigned audit_tty;
struct tty_audit_buf *tty_audit_buf;
-@@ -808,7 +832,7 @@ struct signal_struct {
+@@ -812,7 +836,7 @@ struct signal_struct {
struct mutex cred_guard_mutex; /* guard against foreign influences on
* credential calculations
* (notably. ptrace) */
@@ -138619,7 +142863,7 @@ index f52d4cc..f20b8f5 100644
/*
* Bits in flags field of signal_struct.
-@@ -863,6 +887,14 @@ struct user_struct {
+@@ -867,6 +891,14 @@ struct user_struct {
struct key *session_keyring; /* UID's default session keyring */
#endif
@@ -138634,7 +142878,7 @@ index f52d4cc..f20b8f5 100644
/* Hash table maintenance information */
struct hlist_node uidhash_node;
kuid_t uid;
-@@ -870,7 +902,7 @@ struct user_struct {
+@@ -874,7 +906,7 @@ struct user_struct {
#if defined(CONFIG_PERF_EVENTS) || defined(CONFIG_BPF_SYSCALL)
atomic_long_t locked_vm;
#endif
@@ -138643,8 +142887,8 @@ index f52d4cc..f20b8f5 100644
extern int uids_sysfs_init(void);
-@@ -1460,6 +1492,9 @@ struct tlbflush_unmap_batch {
- struct task_struct {
+@@ -1482,6 +1514,9 @@ struct task_struct {
+ #endif
volatile long state; /* -1 unrunnable, 0 runnable, >0 stopped */
void *stack;
+#ifdef CONFIG_GRKERNSEC_KSTACKOVERFLOW
@@ -138653,7 +142897,16 @@ index f52d4cc..f20b8f5 100644
atomic_t usage;
unsigned int flags; /* per process flags, defined below */
unsigned int ptrace;
-@@ -1599,8 +1634,8 @@ struct task_struct {
+@@ -1610,6 +1645,8 @@ struct task_struct {
+ struct list_head sibling; /* linkage in my parent's children list */
+ struct task_struct *group_leader; /* threadgroup leader */
+
++ const struct cred __rcu *ptracer_cred; /* Tracer's credentials at attach */
++
+ /*
+ * ptraced is the list of tasks this task is using ptrace on.
+ * This includes both natural children and PTRACE_ATTACH targets.
+@@ -1624,8 +1661,8 @@ struct task_struct {
struct list_head thread_node;
struct completion *vfork_done; /* for vfork() */
@@ -138664,7 +142917,7 @@ index f52d4cc..f20b8f5 100644
cputime_t utime, stime, utimescaled, stimescaled;
cputime_t gtime;
-@@ -1630,12 +1665,6 @@ struct task_struct {
+@@ -1655,12 +1692,6 @@ struct task_struct {
struct task_cputime cputime_expires;
struct list_head cpu_timers[3];
@@ -138677,7 +142930,7 @@ index f52d4cc..f20b8f5 100644
char comm[TASK_COMM_LEN]; /* executable name excluding path
- access with [gs]et_task_comm (which lock
it with task_lock())
-@@ -1651,6 +1680,8 @@ struct task_struct {
+@@ -1676,6 +1707,8 @@ struct task_struct {
/* hung task detection */
unsigned long last_switch_count;
#endif
@@ -138686,7 +142939,7 @@ index f52d4cc..f20b8f5 100644
/* filesystem information */
struct fs_struct *fs;
/* open file information */
-@@ -1661,8 +1692,11 @@ struct task_struct {
+@@ -1686,8 +1719,11 @@ struct task_struct {
struct signal_struct *signal;
struct sighand_struct *sighand;
@@ -138700,16 +142953,7 @@ index f52d4cc..f20b8f5 100644
struct sigpending pending;
unsigned long sas_ss_sp;
-@@ -1698,6 +1732,8 @@ struct task_struct {
- struct rt_mutex_waiter *pi_blocked_on;
- #endif
-
-+ const struct cred __rcu *ptracer_cred; /* Tracer's credentials at attach */
-+
- #ifdef CONFIG_DEBUG_MUTEXES
- /* mutex deadlock detection */
- struct mutex_waiter *blocked_on;
-@@ -1729,6 +1765,10 @@ struct task_struct {
+@@ -1754,6 +1790,10 @@ struct task_struct {
unsigned int in_ubsan;
#endif
@@ -138720,7 +142964,7 @@ index f52d4cc..f20b8f5 100644
/* journalling filesystem info */
void *journal_info;
-@@ -1767,6 +1807,10 @@ struct task_struct {
+@@ -1792,6 +1832,10 @@ struct task_struct {
/* cg_list protected by css_set_lock and tsk->alloc_lock */
struct list_head cg_list;
#endif
@@ -138731,7 +142975,7 @@ index f52d4cc..f20b8f5 100644
#ifdef CONFIG_FUTEX
struct robust_list_head __user *robust_list;
#ifdef CONFIG_COMPAT
-@@ -1882,7 +1926,7 @@ struct task_struct {
+@@ -1907,7 +1951,7 @@ struct task_struct {
* Number of functions that haven't been traced
* because of depth overrun.
*/
@@ -138740,19 +142984,16 @@ index f52d4cc..f20b8f5 100644
/* Pause for the tracing */
atomic_t tracing_graph_pause;
#endif
-@@ -1924,22 +1968,93 @@ struct task_struct {
- #ifdef CONFIG_MMU
- struct task_struct *oom_reaper_list;
- #endif
--/* CPU-specific state of this task */
-- struct thread_struct thread;
--/*
-- * WARNING: on x86, 'thread_struct' contains a variable-sized
-- * structure. It *MUST* be at the end of 'task_struct'.
-- *
-- * Do not put anything below here!
-- */
--};
+@@ -1955,23 +1999,101 @@ struct task_struct {
+ #ifdef CONFIG_THREAD_INFO_IN_TASK
+ /* A live task holds one reference. */
+ atomic_t stack_refcount;
++
++/* thread_info moved to task_struct */
++#ifdef CONFIG_X86
++ struct thread_info tinfo;
++#endif
++#endif
+
+#ifdef CONFIG_GRKERNSEC
+ /* grsecurity */
@@ -138777,11 +143018,22 @@ index f52d4cc..f20b8f5 100644
+ u8 gr_is_chrooted;
+#endif
+
-+/* thread_info moved to task_struct */
-+#ifdef CONFIG_X86
-+ struct thread_info tinfo;
-+#endif
+} __randomize_layout;
++
++#ifdef CONFIG_THREAD_INFO_IN_TASK
++#ifndef current_thread_info
++# define current_thread_info() (&current->thread_info)
++#endif
+ #endif
+-/* CPU-specific state of this task */
+- struct thread_struct thread;
+-/*
+- * WARNING: on x86, 'thread_struct' contains a variable-sized
+- * structure. It *MUST* be at the end of 'task_struct'.
+- *
+- * Do not put anything below here!
+- */
+-};
#ifdef CONFIG_ARCH_WANTS_DYNAMIC_TASK_STRUCT
-extern int arch_task_struct_size __read_mostly;
@@ -138841,10 +143093,10 @@ index f52d4cc..f20b8f5 100644
+extern void pax_report_insns(struct pt_regs *regs, void *pc, void *sp);
+extern void pax_report_refcount_error(struct pt_regs *regs, const char *kind);
+
- /* Future-safe accessor for struct task_struct's cpus_allowed. */
- #define tsk_cpus_allowed(tsk) (&(tsk)->cpus_allowed)
-
-@@ -2052,7 +2167,7 @@ struct pid_namespace;
+ #ifdef CONFIG_VMAP_STACK
+ static inline struct vm_struct *task_stack_vm_area(const struct task_struct *t)
+ {
+@@ -2096,7 +2218,7 @@ struct pid_namespace;
pid_t __task_pid_nr_ns(struct task_struct *task, enum pid_type type,
struct pid_namespace *ns);
@@ -138853,7 +143105,7 @@ index f52d4cc..f20b8f5 100644
{
return tsk->pid;
}
-@@ -2419,6 +2534,48 @@ extern u64 sched_clock_cpu(int cpu);
+@@ -2463,6 +2585,50 @@ extern u64 sched_clock_cpu(int cpu);
extern void sched_clock_init(void);
@@ -138876,6 +143128,8 @@ index f52d4cc..f20b8f5 100644
+}
+#endif
+
++const void *gr_convert_stack_address_to_lowmem(const void *buf);
++
+#ifdef CONFIG_GRKERNSEC
+static inline bool current_is_ptracer(struct task_struct *task, u64 *exec_id)
+{
@@ -138902,17 +143156,7 @@ index f52d4cc..f20b8f5 100644
#ifndef CONFIG_HAVE_UNSTABLE_SCHED_CLOCK
static inline void sched_clock_tick(void)
{
-@@ -2574,7 +2731,9 @@ extern void set_curr_task(int cpu, struct task_struct *p);
- void yield(void);
-
- union thread_union {
-+#ifndef CONFIG_X86
- struct thread_info thread_info;
-+#endif
- unsigned long stack[THREAD_SIZE/sizeof(long)];
- };
-
-@@ -2607,6 +2766,7 @@ extern struct pid_namespace init_pid_ns;
+@@ -2655,6 +2821,7 @@ extern struct pid_namespace init_pid_ns;
*/
extern struct task_struct *find_task_by_vpid(pid_t nr);
@@ -138920,7 +143164,7 @@ index f52d4cc..f20b8f5 100644
extern struct task_struct *find_task_by_pid_ns(pid_t nr,
struct pid_namespace *ns);
-@@ -2638,7 +2798,7 @@ extern void proc_caches_init(void);
+@@ -2686,7 +2853,7 @@ extern void proc_caches_init(void);
extern void flush_signals(struct task_struct *);
extern void ignore_signals(struct task_struct *);
extern void flush_signal_handlers(struct task_struct *, int force_default);
@@ -138929,7 +143173,7 @@ index f52d4cc..f20b8f5 100644
static inline int kernel_dequeue_signal(siginfo_t *info)
{
-@@ -2890,7 +3050,7 @@ extern void __cleanup_sighand(struct sighand_struct *);
+@@ -2952,7 +3119,7 @@ extern void __cleanup_sighand(struct sighand_struct *);
extern void exit_itimers(struct signal_struct *);
extern void flush_itimer_signals(void);
@@ -138938,7 +143182,7 @@ index f52d4cc..f20b8f5 100644
extern int do_execve(struct filename *,
const char __user * const __user *,
-@@ -3005,11 +3165,13 @@ static inline int thread_group_empty(struct task_struct *p)
+@@ -3067,11 +3234,13 @@ static inline int thread_group_empty(struct task_struct *p)
* It must not be nested with write_lock_irq(&tasklist_lock),
* neither inside nor outside.
*/
@@ -138952,7 +143196,16 @@ index f52d4cc..f20b8f5 100644
static inline void task_unlock(struct task_struct *p)
{
spin_unlock(&p->alloc_lock);
-@@ -3095,9 +3257,9 @@ static inline unsigned long *end_of_stack(struct task_struct *p)
+@@ -3145,7 +3314,7 @@ static inline void *task_stack_page(const struct task_struct *task)
+
+ static inline unsigned long *end_of_stack(const struct task_struct *task)
+ {
+- return task->stack;
++ return (unsigned long *)task->stack + 1;
+ }
+
+ #elif !defined(__HAVE_THREAD_FUNCTIONS)
+@@ -3199,13 +3368,24 @@ static inline void put_task_stack(struct task_struct *tsk) {}
#define task_stack_end_corrupted(task) \
(*(end_of_stack(task)) != STACK_END_MAGIC)
@@ -138964,15 +143217,30 @@ index f52d4cc..f20b8f5 100644
return (obj >= stack) && (obj < (stack + THREAD_SIZE));
}
-@@ -3474,7 +3636,7 @@ static inline unsigned long rlimit_max(unsigned int limit)
+
++#if defined(CONFIG_GRKERNSEC_KSTACKOVERFLOW) && defined(CONFIG_X86_64)
++static inline int object_starts_on_irq_stack(const void *obj)
++{
++ const void *stack = this_cpu_read(irq_stack_ptr);
++
++ return (obj >= stack) && (obj < (stack + IRQ_STACK_SIZE));
++}
++#else
++static inline int object_starts_on_irq_stack(const void *obj) { return 0; }
++#endif
++
+ extern void thread_stack_cache_init(void);
+
+ #ifdef CONFIG_DEBUG_STACK_USAGE
+@@ -3600,7 +3780,7 @@ static inline unsigned long rlimit_max(unsigned int limit)
+ #ifdef CONFIG_CPU_FREQ
struct update_util_data {
- void (*func)(struct update_util_data *data,
- u64 time, unsigned long util, unsigned long max);
+ void (*func)(struct update_util_data *data, u64 time, unsigned int flags);
-};
+} __no_const;
void cpufreq_add_update_util_hook(int cpu, struct update_util_data *data,
- void (*func)(struct update_util_data *data, u64 time,
+ void (*func)(struct update_util_data *data, u64 time,
diff --git a/include/linux/scif.h b/include/linux/scif.h
index 49a35d6..c6209dd 100644
--- a/include/linux/scif.h
@@ -138986,8 +143254,36 @@ index 49a35d6..c6209dd 100644
#define SCIF_OPEN_FAILED ((scif_epd_t)-1)
#define SCIF_REGISTER_FAILED ((off_t)-1)
+diff --git a/include/linux/seccomp.h b/include/linux/seccomp.h
+index ecc296c..c61c5f9 100644
+--- a/include/linux/seccomp.h
++++ b/include/linux/seccomp.h
+@@ -7,7 +7,7 @@
+
+ #ifdef CONFIG_SECCOMP
+
+-#include <linux/thread_info.h>
++//#include <linux/thread_info.h>
+ #include <asm/seccomp.h>
+
+ struct seccomp_filter;
+@@ -28,13 +28,7 @@ struct seccomp {
+ };
+
+ #ifdef CONFIG_HAVE_ARCH_SECCOMP_FILTER
+-extern int __secure_computing(const struct seccomp_data *sd);
+-static inline int secure_computing(const struct seccomp_data *sd)
+-{
+- if (unlikely(test_thread_flag(TIF_SECCOMP)))
+- return __secure_computing(sd);
+- return 0;
+-}
++extern int secure_computing(const struct seccomp_data *sd);
+ #else
+ extern void secure_computing_strict(int this_syscall);
+ #endif
diff --git a/include/linux/security.h b/include/linux/security.h
-index 7831cd5..9e82896 100644
+index c2125e9..365bf43 100644
--- a/include/linux/security.h
+++ b/include/linux/security.h
@@ -30,6 +30,7 @@
@@ -139047,7 +143343,7 @@ index fb7eb9c..fcfd102 100644
WARN_ON(s->len > s->size + 1);
diff --git a/include/linux/seq_file.h b/include/linux/seq_file.h
-index f3d45dd..4539816 100644
+index e305b66..44b0ad9 100644
--- a/include/linux/seq_file.h
+++ b/include/linux/seq_file.h
@@ -25,6 +25,9 @@ struct seq_file {
@@ -139191,10 +143487,10 @@ index b63f63e..fe39718 100644
static inline void disallow_signal(int sig)
diff --git a/include/linux/skbuff.h b/include/linux/skbuff.h
-index 0f665cb..fa26c21 100644
+index 32810f2..66eb624 100644
--- a/include/linux/skbuff.h
+++ b/include/linux/skbuff.h
-@@ -906,7 +906,7 @@ struct sk_buff *__alloc_skb(unsigned int size, gfp_t priority, int flags,
+@@ -913,7 +913,7 @@ struct sk_buff *__alloc_skb(unsigned int size, gfp_t priority, int flags,
int node);
struct sk_buff *__build_skb(void *data, unsigned int frag_size);
struct sk_buff *build_skb(void *data, unsigned int frag_size);
@@ -139203,7 +143499,7 @@ index 0f665cb..fa26c21 100644
gfp_t priority)
{
return __alloc_skb(size, priority, 0, NUMA_NO_NODE);
-@@ -2215,7 +2215,7 @@ static inline unsigned char *skb_checksum_start(const struct sk_buff *skb)
+@@ -2223,7 +2223,7 @@ static inline unsigned char *skb_checksum_start(const struct sk_buff *skb)
return skb->head + skb->csum_start;
}
@@ -139212,7 +143508,7 @@ index 0f665cb..fa26c21 100644
{
return skb_transport_header(skb) - skb->data;
}
-@@ -2230,7 +2230,7 @@ static inline u32 skb_inner_network_header_len(const struct sk_buff *skb)
+@@ -2238,7 +2238,7 @@ static inline u32 skb_inner_network_header_len(const struct sk_buff *skb)
return skb->inner_transport_header - skb->inner_network_header;
}
@@ -139221,7 +143517,7 @@ index 0f665cb..fa26c21 100644
{
return skb_network_header(skb) - skb->data;
}
-@@ -2290,7 +2290,7 @@ static inline int pskb_network_may_pull(struct sk_buff *skb, unsigned int len)
+@@ -2298,7 +2298,7 @@ static inline int pskb_network_may_pull(struct sk_buff *skb, unsigned int len)
* NET_IP_ALIGN(2) + ethernet_header(14) + IP_header(20/40) + ports(8)
*/
#ifndef NET_SKB_PAD
@@ -139230,7 +143526,7 @@ index 0f665cb..fa26c21 100644
#endif
int ___pskb_trim(struct sk_buff *skb, unsigned int len);
-@@ -2997,9 +2997,9 @@ struct sk_buff *skb_recv_datagram(struct sock *sk, unsigned flags, int noblock,
+@@ -3041,9 +3041,9 @@ struct sk_buff *skb_recv_datagram(struct sock *sk, unsigned flags, int noblock,
int *err);
unsigned int datagram_poll(struct file *file, struct socket *sock,
struct poll_table_struct *wait);
@@ -139242,7 +143538,7 @@ index 0f665cb..fa26c21 100644
struct msghdr *msg, int size)
{
return skb_copy_datagram_iter(from, offset, &msg->msg_iter, size);
-@@ -3536,6 +3536,9 @@ static inline void nf_reset(struct sk_buff *skb)
+@@ -3575,6 +3575,9 @@ static inline void nf_reset(struct sk_buff *skb)
nf_bridge_put(skb->nf_bridge);
skb->nf_bridge = NULL;
#endif
@@ -139253,7 +143549,7 @@ index 0f665cb..fa26c21 100644
static inline void nf_reset_trace(struct sk_buff *skb)
diff --git a/include/linux/slab.h b/include/linux/slab.h
-index 4293808..9bdcc4e 100644
+index 084b12b..9da238a 100644
--- a/include/linux/slab.h
+++ b/include/linux/slab.h
@@ -15,14 +15,29 @@
@@ -139453,7 +143749,7 @@ index 75f56c2..97880d2 100644
};
diff --git a/include/linux/smp.h b/include/linux/smp.h
-index eccae469..58e69b8 100644
+index 8e0cb7a..a702af8 100644
--- a/include/linux/smp.h
+++ b/include/linux/smp.h
@@ -183,7 +183,9 @@ static inline void smp_init(void) { }
@@ -139798,7 +144094,7 @@ index 5c9c6cd..f16c5c9 100644
#endif /* _LINUX_SUNRPC_ADDR_H */
diff --git a/include/linux/sunrpc/clnt.h b/include/linux/sunrpc/clnt.h
-index 5c02b06..93e07c5 100644
+index 333ad11..1c14c60 100644
--- a/include/linux/sunrpc/clnt.h
+++ b/include/linux/sunrpc/clnt.h
@@ -103,7 +103,7 @@ struct rpc_procinfo {
@@ -139824,7 +144120,7 @@ index 7321ae9..f37a11e 100644
/*
* Mode for mapping cpus to pools.
diff --git a/include/linux/sunrpc/svc_rdma.h b/include/linux/sunrpc/svc_rdma.h
-index 3584bc8..0c8ec4c 100644
+index cc3ae16..abf3af5 100644
--- a/include/linux/sunrpc/svc_rdma.h
+++ b/include/linux/sunrpc/svc_rdma.h
@@ -54,15 +54,15 @@ extern unsigned int svcrdma_max_requests;
@@ -139906,10 +144202,23 @@ index 5c3a5f3..84a8bef 100644
#else
diff --git a/include/linux/syscalls.h b/include/linux/syscalls.h
-index d022390..80f9811 100644
+index 91a740f..a3666d4 100644
--- a/include/linux/syscalls.h
+++ b/include/linux/syscalls.h
-@@ -102,7 +102,14 @@ union bpf_attr;
+@@ -98,11 +98,28 @@ union bpf_attr;
+ #define __MAP6(m,t,a,...) m(t,a), __MAP5(m,__VA_ARGS__)
+ #define __MAP(n,...) __MAP##n(__VA_ARGS__)
+
++#define __RAP_MAP0(m,...) __RAP_MAP1(m,__VA_ARGS__,void,a)
++#define __RAP_MAP1(m,...) __RAP_MAP2(m,__VA_ARGS__,void,b)
++#define __RAP_MAP2(m,...) __RAP_MAP3(m,__VA_ARGS__,void,c)
++#define __RAP_MAP3(m,...) __RAP_MAP4(m,__VA_ARGS__,void,d)
++#define __RAP_MAP4(m,...) __RAP_MAP5(m,__VA_ARGS__,void,e)
++#define __RAP_MAP5(m,...) __RAP_MAP6(m,__VA_ARGS__,void,f)
++#define __RAP_MAP6(m,...) __MAP6(m,__VA_ARGS__)
++#define __RAP_MAP(n,...) __RAP_MAP##n(__VA_ARGS__)
++
+ #define __SC_DECL(t, a) t a
#define __TYPE_IS_L(t) (__same_type((t)0, 0L))
#define __TYPE_IS_UL(t) (__same_type((t)0, 0UL))
#define __TYPE_IS_LL(t) (__same_type((t)0, 0LL) || __same_type((t)0, 0ULL))
@@ -139921,13 +144230,47 @@ index d022390..80f9811 100644
+ __builtin_choose_expr(__type_is_unsigned(t), 0UL, 0L) \
+ ))
+#define __SC_LONG(t, a) __SC_TYPE(t) a
++#define __RAP_SC_LONG(t, a) unsigned long a
+#define __SC_WRAP(t, a) (__SC_TYPE(t)) a
#define __SC_CAST(t, a) (t) a
#define __SC_ARGS(t, a) a
#define __SC_TEST(t, a) (void)BUILD_BUG_ON_ZERO(!__TYPE_IS_LL(t) && sizeof(t) > sizeof(long))
-@@ -192,17 +199,18 @@ extern struct trace_event_functions exit_syscall_print_funcs;
+@@ -175,8 +192,19 @@ extern struct trace_event_functions exit_syscall_print_funcs;
+ #define SYSCALL_METADATA(sname, nb, ...)
+ #endif
+
++#ifdef CONFIG_PAX_RAP
++#define RAP_SYSCALL_DEFINE0(sname) \
++ asmlinkage long rap_sys_##sname(unsigned long a, unsigned long b, unsigned long c, unsigned long d, unsigned long e, unsigned long f)\
++ { \
++ return sys_##sname(); \
++ }
++#else
++#define RAP_SYSCALL_DEFINE0(sname)
++#endif
++
+ #define SYSCALL_DEFINE0(sname) \
+ SYSCALL_METADATA(_##sname, 0); \
++ RAP_SYSCALL_DEFINE0(sname) \
+ asmlinkage long sys_##sname(void)
+
+ #define SYSCALL_DEFINE1(name, ...) SYSCALL_DEFINEx(1, _##name, __VA_ARGS__)
+@@ -191,18 +219,32 @@ extern struct trace_event_functions exit_syscall_print_funcs;
+ __SYSCALL_DEFINEx(x, sname, __VA_ARGS__)
#define __PROTECT(...) asmlinkage_protect(__VA_ARGS__)
++
++#ifdef CONFIG_PAX_RAP
++#define __RAP_SYSCALL_DEFINEx(x, name, ...) \
++ asmlinkage __intentional_overflow(-1) \
++ long rap_sys##name(__RAP_MAP(x,__RAP_SC_LONG,__VA_ARGS__)) \
++ { \
++ return sys##name(__MAP(x,__SC_CAST,__VA_ARGS__)); \
++ }
++#else
++#define __RAP_SYSCALL_DEFINEx(x, name, ...)
++#endif
++
#define __SYSCALL_DEFINEx(x, name, ...) \
- asmlinkage long sys##name(__MAP(x,__SC_DECL,__VA_ARGS__)) \
- __attribute__((alias(__stringify(SyS##name)))); \
@@ -139945,10 +144288,11 @@ index d022390..80f9811 100644
+ { \
+ return SyS##name(__MAP(x,__SC_WRAP,__VA_ARGS__)); \
+ } \
++ __RAP_SYSCALL_DEFINEx(x,name,__VA_ARGS__) \
static inline long SYSC##name(__MAP(x,__SC_DECL,__VA_ARGS__))
asmlinkage long sys32_quotactl(unsigned int cmd, const char __user *special,
-@@ -384,11 +392,11 @@ asmlinkage long sys_sync(void);
+@@ -384,11 +426,11 @@ asmlinkage long sys_sync(void);
asmlinkage long sys_fsync(unsigned int fd);
asmlinkage long sys_fdatasync(unsigned int fd);
asmlinkage long sys_bdflush(int func, long data);
@@ -139964,7 +144308,7 @@ index d022390..80f9811 100644
asmlinkage long sys_truncate(const char __user *path, long length);
asmlinkage long sys_ftruncate(unsigned int fd, unsigned long length);
asmlinkage long sys_stat(const char __user *filename,
-@@ -457,7 +465,7 @@ asmlinkage long sys_remap_file_pages(unsigned long start, unsigned long size,
+@@ -457,7 +499,7 @@ asmlinkage long sys_remap_file_pages(unsigned long start, unsigned long size,
unsigned long prot, unsigned long pgoff,
unsigned long flags);
asmlinkage long sys_msync(unsigned long start, size_t len, int flags);
@@ -139973,7 +144317,7 @@ index d022390..80f9811 100644
asmlinkage long sys_fadvise64_64(int fd, loff_t offset, loff_t len, int advice);
asmlinkage long sys_munmap(unsigned long addr, size_t len);
asmlinkage long sys_mlock(unsigned long start, size_t len);
-@@ -610,7 +618,7 @@ asmlinkage long sys_getsockname(int, struct sockaddr __user *, int __user *);
+@@ -610,7 +652,7 @@ asmlinkage long sys_getsockname(int, struct sockaddr __user *, int __user *);
asmlinkage long sys_getpeername(int, struct sockaddr __user *, int __user *);
asmlinkage long sys_send(int, void __user *, size_t, unsigned);
asmlinkage long sys_sendto(int, void __user *, size_t, unsigned,
@@ -139982,7 +144326,7 @@ index d022390..80f9811 100644
asmlinkage long sys_sendmsg(int fd, struct user_msghdr __user *msg, unsigned flags);
asmlinkage long sys_sendmmsg(int fd, struct mmsghdr __user *msg,
unsigned int vlen, unsigned flags);
-@@ -669,10 +677,10 @@ asmlinkage long sys_msgctl(int msqid, int cmd, struct msqid_ds __user *buf);
+@@ -669,10 +711,10 @@ asmlinkage long sys_msgctl(int msqid, int cmd, struct msqid_ds __user *buf);
asmlinkage long sys_semget(key_t key, int nsems, int semflg);
asmlinkage long sys_semop(int semid, struct sembuf __user *sops,
@@ -139995,7 +144339,7 @@ index d022390..80f9811 100644
const struct timespec __user *timeout);
asmlinkage long sys_shmat(int shmid, char __user *shmaddr, int shmflg);
asmlinkage long sys_shmget(key_t key, size_t size, int flag);
-@@ -706,7 +714,7 @@ asmlinkage long sys_sysfs(int option,
+@@ -706,7 +748,7 @@ asmlinkage long sys_sysfs(int option,
unsigned long arg1, unsigned long arg2);
asmlinkage long sys_syslog(int type, char __user *buf, int len);
asmlinkage long sys_uselib(const char __user *library);
@@ -140004,7 +144348,7 @@ index d022390..80f9811 100644
asmlinkage long sys_ptrace(long request, long pid, unsigned long addr,
unsigned long data);
-@@ -885,7 +893,7 @@ asmlinkage long sys_seccomp(unsigned int op, unsigned int flags,
+@@ -885,7 +927,7 @@ asmlinkage long sys_seccomp(unsigned int op, unsigned int flags,
const char __user *uargs);
asmlinkage long sys_getrandom(char __user *buf, size_t count,
unsigned int flags);
@@ -140027,10 +144371,10 @@ index 27b3b0b..e093dd9 100644
extern void register_syscore_ops(struct syscore_ops *ops);
extern void unregister_syscore_ops(struct syscore_ops *ops);
diff --git a/include/linux/sysctl.h b/include/linux/sysctl.h
-index a4f7203..dcad65f 100644
+index adf4e51..807838b 100644
--- a/include/linux/sysctl.h
+++ b/include/linux/sysctl.h
-@@ -40,12 +40,18 @@ typedef int proc_handler (struct ctl_table *ctl, int write,
+@@ -41,12 +41,18 @@ typedef int proc_handler (struct ctl_table *ctl, int write,
extern int proc_dostring(struct ctl_table *, int,
void __user *, size_t *, loff_t *);
@@ -140049,7 +144393,7 @@ index a4f7203..dcad65f 100644
extern int proc_dointvec_jiffies(struct ctl_table *, int,
void __user *, size_t *, loff_t *);
extern int proc_dointvec_userhz_jiffies(struct ctl_table *, int,
-@@ -116,7 +122,8 @@ struct ctl_table
+@@ -117,7 +123,8 @@ struct ctl_table
struct ctl_table_poll *poll;
void *extra1;
void *extra2;
@@ -140059,6 +144403,19 @@ index a4f7203..dcad65f 100644
struct ctl_node {
struct rb_node node;
+@@ -131,9 +138,9 @@ struct ctl_table_header
+ union {
+ struct {
+ struct ctl_table *ctl_table;
+- int used;
+- int count;
+- int nreg;
++ atomic_t used;
++ atomic_t count;
++ atomic_t nreg;
+ };
+ struct rcu_head rcu;
+ };
diff --git a/include/linux/sysfs.h b/include/linux/sysfs.h
index c6f0f0d..e663567 100644
--- a/include/linux/sysfs.h
@@ -140124,10 +144481,10 @@ index 387fa7d..3fcde6b 100644
#ifdef CONFIG_MAGIC_SYSRQ
diff --git a/include/linux/tcp.h b/include/linux/tcp.h
-index 7be9b12..66bf0a8 100644
+index 647532b..87a727d 100644
--- a/include/linux/tcp.h
+++ b/include/linux/tcp.h
-@@ -68,13 +68,13 @@ struct tcp_fastopen_cookie {
+@@ -74,13 +74,13 @@ struct tcp_fastopen_cookie {
/* This defines a selective acknowledgement block. */
struct tcp_sack_block_wire {
@@ -140145,7 +144502,7 @@ index 7be9b12..66bf0a8 100644
};
/*These are used to set the sack_ok field in struct tcp_options_received */
-@@ -162,7 +162,7 @@ struct tcp_sock {
+@@ -168,7 +168,7 @@ struct tcp_sock {
* total number of data segments in.
*/
u32 rcv_nxt; /* What we want to receive next */
@@ -140154,8 +144511,8 @@ index 7be9b12..66bf0a8 100644
u32 rcv_wup; /* rcv_nxt on last window update sent */
u32 snd_nxt; /* Next sequence we send */
u32 segs_out; /* RFC4898 tcpEStatsPerfSegsOut
-@@ -270,7 +270,7 @@ struct tcp_sock {
- u32 delivered; /* Total data packets delivered incl. rexmits */
+@@ -281,7 +281,7 @@ struct tcp_sock {
+ u32 rate_interval_us; /* saved rate sample: time elapsed */
u32 rcv_wnd; /* Current receiver window */
- u32 write_seq; /* Tail(+1) of data held in tcp send buffer */
@@ -140163,7 +144520,7 @@ index 7be9b12..66bf0a8 100644
u32 notsent_lowat; /* TCP_NOTSENT_LOWAT */
u32 pushed_seq; /* Last pushed seq, required to talk to windows */
u32 lost_out; /* Lost packets */
-@@ -311,7 +311,7 @@ struct tcp_sock {
+@@ -321,7 +321,7 @@ struct tcp_sock {
int undo_retrans; /* number of undoable retransmissions. */
u32 total_retrans; /* Total retransmits for entire connection */
@@ -140173,10 +144530,21 @@ index 7be9b12..66bf0a8 100644
unsigned int keepalive_intvl; /* time interval between keep alive probes */
diff --git a/include/linux/thread_info.h b/include/linux/thread_info.h
-index 2b5b10e..37b4c2c 100644
+index 2873baf..19e866c 100644
--- a/include/linux/thread_info.h
+++ b/include/linux/thread_info.h
-@@ -50,6 +50,13 @@ struct restart_block {
+@@ -14,7 +14,9 @@ struct timespec;
+ struct compat_timespec;
+
+ #ifdef CONFIG_THREAD_INFO_IN_TASK
+-#define current_thread_info() ((struct thread_info *)current)
++#ifndef current_thread_info
++struct thread_info *current_thread_info(void);
++#endif
+ #endif
+
+ /*
+@@ -54,6 +56,13 @@ struct restart_block {
extern long do_no_restart_syscall(struct restart_block *parm);
@@ -140190,7 +144558,38 @@ index 2b5b10e..37b4c2c 100644
#include <linux/bitops.h>
#include <asm/thread_info.h>
-@@ -106,11 +113,11 @@ static inline int test_ti_thread_flag(struct thread_info *ti, int flag)
+@@ -71,6 +80,22 @@ extern long do_no_restart_syscall(struct restart_block *parm);
+ * - pass TIF_xxxx constants to these functions
+ */
+
++#ifdef CONFIG_THREAD_INFO_IN_TASK
++#define set_ti_thread_flag(ti, flag) \
++ set_bit(flag, (unsigned long *)&ti->flags)
++
++#define clear_ti_thread_flag(ti, flag) \
++ clear_bit(flag, (unsigned long *)&ti->flags)
++
++#define test_and_set_ti_thread_flag(ti, flag) \
++ test_and_set_bit(flag, (unsigned long *)&ti->flags)
++
++#define test_and_clear_ti_thread_flag(ti, flag) \
++ test_and_clear_bit(flag, (unsigned long *)&ti->flags)
++
++#define test_ti_thread_flag(ti, flag) \
++ test_bit(flag, (unsigned long *)&ti->flags)
++#else
+ static inline void set_ti_thread_flag(struct thread_info *ti, int flag)
+ {
+ set_bit(flag, (unsigned long *)&ti->flags);
+@@ -95,6 +120,7 @@ static inline int test_ti_thread_flag(struct thread_info *ti, int flag)
+ {
+ return test_bit(flag, (unsigned long *)&ti->flags);
+ }
++#endif
+
+ #define set_thread_flag(flag) \
+ set_ti_thread_flag(current_thread_info(), flag)
+@@ -110,11 +136,11 @@ static inline int test_ti_thread_flag(struct thread_info *ti, int flag)
#define tif_need_resched() test_thread_flag(TIF_NEED_RESCHED)
#ifndef CONFIG_HAVE_ARCH_WITHIN_STACK_FRAMES
@@ -140206,6 +144605,28 @@ index 2b5b10e..37b4c2c 100644
}
#endif
+@@ -134,6 +160,8 @@ static inline void check_object_size(const void *ptr, unsigned long n,
+ { }
+ #endif /* CONFIG_HARDENED_USERCOPY */
+
++bool __access_ok(int type, unsigned long addr, size_t size);
++
+ #endif /* __KERNEL__ */
+
+ #endif /* _LINUX_THREAD_INFO_H */
+diff --git a/include/linux/timer.h b/include/linux/timer.h
+index 51d601f..6769812 100644
+--- a/include/linux/timer.h
++++ b/include/linux/timer.h
+@@ -28,7 +28,7 @@ struct timer_list {
+ #ifdef CONFIG_LOCKDEP
+ struct lockdep_map lockdep_map;
+ #endif
+-};
++} __randomize_layout;
+
+ #ifdef CONFIG_LOCKDEP
+ /*
diff --git a/include/linux/tty.h b/include/linux/tty.h
index 40144f3..610732a 100644
--- a/include/linux/tty.h
@@ -140469,25 +144890,25 @@ index 00a47d0..ed482765 100644
/*
* callback functions for platform
diff --git a/include/linux/user_namespace.h b/include/linux/user_namespace.h
-index 9217169..61e5eeb 100644
+index eb209d4..61030af 100644
--- a/include/linux/user_namespace.h
+++ b/include/linux/user_namespace.h
-@@ -39,7 +39,7 @@ struct user_namespace {
- struct key *persistent_keyring_register;
- struct rw_semaphore persistent_keyring_register_sem;
+@@ -59,7 +59,7 @@ struct user_namespace {
#endif
+ struct ucounts *ucounts;
+ int ucount_max[UCOUNT_COUNTS];
-};
+} __randomize_layout;
- extern struct user_namespace init_user_ns;
-
+ struct ucounts {
+ struct hlist_node node;
diff --git a/include/linux/utsname.h b/include/linux/utsname.h
-index 5093f58..c103e58 100644
+index 60f0bb8..da826ed 100644
--- a/include/linux/utsname.h
+++ b/include/linux/utsname.h
-@@ -25,7 +25,7 @@ struct uts_namespace {
- struct new_utsname name;
+@@ -26,7 +26,7 @@ struct uts_namespace {
struct user_namespace *user_ns;
+ struct ucounts *ucounts;
struct ns_common ns;
-};
+} __randomize_layout;
@@ -140571,7 +144992,7 @@ index 960bedb..1616043 100644
#endif
#endif /* _LINUX_VGA_SWITCHEROO_H_ */
diff --git a/include/linux/vmalloc.h b/include/linux/vmalloc.h
-index 3d9d786..b7e5717 100644
+index 3d9d786..56059bf 100644
--- a/include/linux/vmalloc.h
+++ b/include/linux/vmalloc.h
@@ -19,6 +19,14 @@ struct notifier_block; /* in notifier.h */
@@ -140589,19 +145010,15 @@ index 3d9d786..b7e5717 100644
/* bits [20..32] reserved for arch specific ioremap internals */
/*
-@@ -67,7 +75,11 @@ static inline void vmalloc_init(void)
- }
+@@ -68,6 +76,7 @@ static inline void vmalloc_init(void)
#endif
-+#if defined(CONFIG_GRKERNSEC_KSTACKOVERFLOW) && defined(CONFIG_X86_64)
-+extern void *vzalloc_irq_stack(void);
-+#endif
extern void *vmalloc(unsigned long size);
+extern void *vmalloc_usercopy(unsigned long size);
extern void *vzalloc(unsigned long size);
extern void *vmalloc_user(unsigned long size);
extern void *vmalloc_node(unsigned long size, int node);
-@@ -87,6 +99,10 @@ extern void *vmap(struct page **pages, unsigned int count,
+@@ -87,6 +96,10 @@ extern void *vmap(struct page **pages, unsigned int count,
unsigned long flags, pgprot_t prot);
extern void vunmap(const void *addr);
@@ -140612,7 +145029,7 @@ index 3d9d786..b7e5717 100644
extern int remap_vmalloc_range_partial(struct vm_area_struct *vma,
unsigned long uaddr, void *kaddr,
unsigned long size);
-@@ -151,7 +167,7 @@ extern void free_vm_area(struct vm_struct *area);
+@@ -151,7 +164,7 @@ extern void free_vm_area(struct vm_struct *area);
/* for /dev/kmem */
extern long vread(char *buf, char *addr, unsigned long count);
@@ -140735,7 +145152,7 @@ index 6137719..f925b2f 100644
static inline void __inc_zone_page_state(struct page *page,
diff --git a/include/linux/writeback.h b/include/linux/writeback.h
-index fc1e16c..73b1d36 100644
+index 797100e..8c7ef4a 100644
--- a/include/linux/writeback.h
+++ b/include/linux/writeback.h
@@ -278,8 +278,9 @@ static inline void inode_detach_wb(struct inode *inode)
@@ -140750,7 +145167,7 @@ index fc1e16c..73b1d36 100644
spin_unlock(&inode->i_lock);
}
diff --git a/include/linux/xattr.h b/include/linux/xattr.h
-index 94079ba..ae4c218 100644
+index e77605a..6131f71 100644
--- a/include/linux/xattr.h
+++ b/include/linux/xattr.h
@@ -35,7 +35,7 @@ struct xattr_handler {
@@ -140769,9 +145186,9 @@ index 94079ba..ae4c218 100644
+#ifdef CONFIG_PAX_XATTR_PAX_FLAGS
+ssize_t pax_getxattr(struct dentry *, void *, size_t);
+#endif
+ ssize_t __vfs_getxattr(struct dentry *, struct inode *, const char *, void *, size_t);
ssize_t vfs_getxattr(struct dentry *, const char *, void *, size_t);
ssize_t vfs_listxattr(struct dentry *d, char *list, size_t size);
- int __vfs_setxattr_noperm(struct dentry *, const char *, const void *, size_t, int);
diff --git a/include/linux/zlib.h b/include/linux/zlib.h
index 92dbbd3..13ab0b3 100644
--- a/include/linux/zlib.h
@@ -140794,10 +145211,10 @@ index 92dbbd3..13ab0b3 100644
Returns the number of bytes that needs to be allocated for a per-
stream workspace with the specified parameters. A pointer to this
diff --git a/include/media/v4l2-dev.h b/include/media/v4l2-dev.h
-index a122b1b..bcb7940 100644
+index e657614..6f02e2a 100644
--- a/include/media/v4l2-dev.h
+++ b/include/media/v4l2-dev.h
-@@ -160,7 +160,7 @@ struct v4l2_file_operations {
+@@ -161,7 +161,7 @@ struct v4l2_file_operations {
int (*mmap) (struct file *, struct vm_area_struct *);
int (*open) (struct file *);
int (*release) (struct file *);
@@ -140807,7 +145224,7 @@ index a122b1b..bcb7940 100644
/*
* Newer version of video_device, handled by videodev2.c
diff --git a/include/media/v4l2-device.h b/include/media/v4l2-device.h
-index a9d6aa4..124a822 100644
+index 8ffa940..eaa9cfa 100644
--- a/include/media/v4l2-device.h
+++ b/include/media/v4l2-device.h
@@ -139,7 +139,7 @@ int __must_check v4l2_device_register(struct device *dev,
@@ -140859,10 +145276,10 @@ index 5ee3c68..54f883a 100644
struct l2cap_conn {
struct hci_conn *hcon;
diff --git a/include/net/bonding.h b/include/net/bonding.h
-index 6360c25..6eb51ef 100644
+index f32f7ef..3c316c8 100644
--- a/include/net/bonding.h
+++ b/include/net/bonding.h
-@@ -707,7 +707,7 @@ extern struct rtnl_link_ops bond_link_ops;
+@@ -695,7 +695,7 @@ extern struct rtnl_link_ops bond_link_ops;
static inline void bond_tx_drop(struct net_device *dev, struct sk_buff *skb)
{
@@ -140976,10 +145393,10 @@ index 456e4a6..32ce9c4 100644
struct fib_rule *rule;
u32 table;
diff --git a/include/net/flow.h b/include/net/flow.h
-index d47ef4b..ab39dc5 100644
+index 035aa77..e4a0969 100644
--- a/include/net/flow.h
+++ b/include/net/flow.h
-@@ -243,7 +243,7 @@ void flow_cache_fini(struct net *net);
+@@ -242,7 +242,7 @@ void flow_cache_fini(struct net *net);
void flow_cache_flush(struct net *net);
void flow_cache_flush_deferred(struct net *net);
@@ -141015,7 +145432,7 @@ index 2a1abbf..93305b8 100644
return NET_RX_DROP;
}
diff --git a/include/net/inet_connection_sock.h b/include/net/inet_connection_sock.h
-index 49dcad4..6d2c708 100644
+index 197a30d..677cd909 100644
--- a/include/net/inet_connection_sock.h
+++ b/include/net/inet_connection_sock.h
@@ -65,7 +65,7 @@ struct inet_connection_sock_af_ops {
@@ -141054,10 +145471,10 @@ index 235c781..160d4a3 100644
struct rcu_head rcu;
struct inet_peer *gc_next;
diff --git a/include/net/ip.h b/include/net/ip.h
-index 0ccf6da..5f0319d 100644
+index d3a1078..73cb3cd 100644
--- a/include/net/ip.h
+++ b/include/net/ip.h
-@@ -325,7 +325,7 @@ static inline unsigned int ip_skb_dst_mtu(struct sock *sk,
+@@ -354,7 +354,7 @@ static inline unsigned int ip_skb_dst_mtu(struct sock *sk,
return min(skb_dst(skb)->dev->mtu, IP_MAX_MTU);
}
@@ -141067,10 +145484,10 @@ index 0ccf6da..5f0319d 100644
static inline void ip_select_ident_segs(struct net *net, struct sk_buff *skb,
diff --git a/include/net/ip6_fib.h b/include/net/ip6_fib.h
-index fb961a5..754f4432 100644
+index a74e2aa..bb6d0c4 100644
--- a/include/net/ip6_fib.h
+++ b/include/net/ip6_fib.h
-@@ -248,10 +248,6 @@ struct fib6_table {
+@@ -250,10 +250,6 @@ struct fib6_table {
#define RT6_TABLE_LOCAL RT6_TABLE_MAIN
#endif
@@ -141082,10 +145499,10 @@ index fb961a5..754f4432 100644
* exported functions
*/
diff --git a/include/net/ip_fib.h b/include/net/ip_fib.h
-index 7d4a72e..f4ec499 100644
+index f390c3b..48d7d6b 100644
--- a/include/net/ip_fib.h
+++ b/include/net/ip_fib.h
-@@ -175,7 +175,7 @@ __be32 fib_info_update_nh_saddr(struct net *net, struct fib_nh *nh);
+@@ -189,7 +189,7 @@ static inline void fib_info_offload_dec(struct fib_info *fi)
#define FIB_RES_SADDR(net, res) \
((FIB_RES_NH(res).nh_saddr_genid == \
@@ -141131,7 +145548,7 @@ index cd6018a..996671f 100644
struct list_head est_list; /* estimator list */
spinlock_t est_lock;
diff --git a/include/net/ipv6.h b/include/net/ipv6.h
-index 8fed1cd..3ac5db9 100644
+index f11ca83..bec016e 100644
--- a/include/net/ipv6.h
+++ b/include/net/ipv6.h
@@ -788,7 +788,7 @@ static inline __be32 ip6_make_flowlabel(struct net *net, struct sk_buff *skb,
@@ -141297,10 +145714,10 @@ index c4359e2..76dbc4a 100644
struct llc_sap_state {
u8 curr_state;
diff --git a/include/net/mac80211.h b/include/net/mac80211.h
-index cca510a..04adc84 100644
+index e2dba93..5a752f4 100644
--- a/include/net/mac80211.h
+++ b/include/net/mac80211.h
-@@ -1567,7 +1567,7 @@ enum ieee80211_key_flags {
+@@ -1573,7 +1573,7 @@ enum ieee80211_key_flags {
* @iv_len: The IV length for this key type
*/
struct ieee80211_key_conf {
@@ -141309,7 +145726,7 @@ index cca510a..04adc84 100644
u32 cipher;
u8 icv_len;
u8 iv_len;
-@@ -5358,7 +5358,7 @@ struct ieee80211_tx_rate_control {
+@@ -5421,7 +5421,7 @@ struct ieee80211_tx_rate_control {
struct sk_buff *skb;
struct ieee80211_tx_rate reported_rate;
bool rts, short_preamble;
@@ -141318,7 +145735,7 @@ index cca510a..04adc84 100644
u32 rate_idx_mask;
u8 *rate_idx_mcs_mask;
bool bss;
-@@ -5395,7 +5395,7 @@ struct rate_control_ops {
+@@ -5458,7 +5458,7 @@ struct rate_control_ops {
void (*remove_sta_debugfs)(void *priv, void *priv_sta);
u32 (*get_expected_throughput)(void *priv_sta);
@@ -141359,7 +145776,7 @@ index 8b68384..48fe40e 100644
enum {
NEIGH_ARP_TABLE = 0,
diff --git a/include/net/net_namespace.h b/include/net/net_namespace.h
-index 0933c74..11d1250 100644
+index 0940598..e69bc18 100644
--- a/include/net/net_namespace.h
+++ b/include/net/net_namespace.h
@@ -53,7 +53,7 @@ struct net {
@@ -141371,7 +145788,7 @@ index 0933c74..11d1250 100644
struct list_head list; /* list of network namespaces */
struct list_head cleanup_list; /* namespaces on death row */
-@@ -141,8 +141,8 @@ struct net {
+@@ -142,8 +142,8 @@ struct net {
struct netns_mpls mpls;
#endif
struct sock *diag_nlsk;
@@ -141382,7 +145799,7 @@ index 0933c74..11d1250 100644
#include <linux/seq_file_net.h>
-@@ -277,7 +277,11 @@ static inline struct net *read_pnet(const possible_net_t *pnet)
+@@ -278,7 +278,11 @@ static inline struct net *read_pnet(const possible_net_t *pnet)
#define __net_init __init
#define __net_exit __ref
#define __net_initdata __initdata
@@ -141394,7 +145811,7 @@ index 0933c74..11d1250 100644
#endif
int peernet2id_alloc(struct net *net, struct net *peer);
-@@ -292,7 +296,7 @@ struct pernet_operations {
+@@ -293,7 +297,7 @@ struct pernet_operations {
void (*exit_batch)(struct list_head *net_exit_list);
int *id;
size_t size;
@@ -141403,7 +145820,7 @@ index 0933c74..11d1250 100644
/*
* Use these carefully. If you implement a network device and it
-@@ -340,12 +344,12 @@ static inline void unregister_net_sysctl_table(struct ctl_table_header *header)
+@@ -341,12 +345,12 @@ static inline void unregister_net_sysctl_table(struct ctl_table_header *header)
static inline int rt_genid_ipv4(struct net *net)
{
@@ -141418,7 +145835,7 @@ index 0933c74..11d1250 100644
}
extern void (*__fib6_flush_trees)(struct net *net);
-@@ -372,12 +376,12 @@ static inline void rt_genid_bump_all(struct net *net)
+@@ -373,12 +377,12 @@ static inline void rt_genid_bump_all(struct net *net)
static inline int fnhe_genid(struct net *net)
{
@@ -141434,18 +145851,18 @@ index 0933c74..11d1250 100644
#endif /* __NET_NET_NAMESPACE_H */
diff --git a/include/net/netfilter/nf_conntrack.h b/include/net/netfilter/nf_conntrack.h
-index de45666..6e17c45 100644
+index d9d52c0..e38856d 100644
--- a/include/net/netfilter/nf_conntrack.h
+++ b/include/net/netfilter/nf_conntrack.h
-@@ -297,7 +297,7 @@ static inline unsigned long nf_ct_expires(const struct nf_conn *ct)
+@@ -307,7 +307,7 @@ static inline bool nf_ct_should_gc(const struct nf_conn *ct)
struct kernel_param;
-int nf_conntrack_set_hashsize(const char *val, struct kernel_param *kp);
+int nf_conntrack_set_hashsize(const char *val, const struct kernel_param *kp);
int nf_conntrack_hash_resize(unsigned int hashsize);
- extern unsigned int nf_conntrack_htable_size;
- extern unsigned int nf_conntrack_max;
+
+ extern struct hlist_nulls_head *nf_conntrack_hash;
diff --git a/include/net/netlabel.h b/include/net/netlabel.h
index efe9806..bec155a 100644
--- a/include/net/netlabel.h
@@ -141472,36 +145889,23 @@ index 254a0fc..040f766 100644
}
diff --git a/include/net/netns/conntrack.h b/include/net/netns/conntrack.h
-index 38b1a80..c2d91f1 100644
+index e469e85..657e258 100644
--- a/include/net/netns/conntrack.h
+++ b/include/net/netns/conntrack.h
-@@ -14,10 +14,10 @@ struct nf_conntrack_ecache;
+@@ -14,7 +14,7 @@ struct nf_conntrack_ecache;
struct nf_proto_net {
#ifdef CONFIG_SYSCTL
struct ctl_table_header *ctl_table_header;
- struct ctl_table *ctl_table;
+ ctl_table_no_const *ctl_table;
- #ifdef CONFIG_NF_CONNTRACK_PROC_COMPAT
- struct ctl_table_header *ctl_compat_header;
-- struct ctl_table *ctl_compat_table;
-+ ctl_table_no_const *ctl_compat_table;
- #endif
#endif
unsigned int users;
-@@ -60,7 +60,7 @@ struct nf_ip_net {
- struct nf_icmp_net icmpv6;
- #if defined(CONFIG_SYSCTL) && defined(CONFIG_NF_CONNTRACK_PROC_COMPAT)
- struct ctl_table_header *ctl_table_header;
-- struct ctl_table *ctl_table;
-+ ctl_table_no_const *ctl_table;
- #endif
};
-
diff --git a/include/net/netns/ipv4.h b/include/net/netns/ipv4.h
-index d061ffe..cc6cdb96 100644
+index 7adf438..4080f91 100644
--- a/include/net/netns/ipv4.h
+++ b/include/net/netns/ipv4.h
-@@ -119,7 +119,7 @@ struct netns_ipv4 {
+@@ -118,7 +118,7 @@ struct netns_ipv4 {
struct ping_group_range ping_group_range;
@@ -141510,7 +145914,7 @@ index d061ffe..cc6cdb96 100644
#ifdef CONFIG_SYSCTL
unsigned long *sysctl_local_reserved_ports;
-@@ -136,6 +136,6 @@ struct netns_ipv4 {
+@@ -135,6 +135,6 @@ struct netns_ipv4 {
#ifdef CONFIG_IP_ROUTE_MULTIPATH
int sysctl_fib_multipath_use_neigh;
#endif
@@ -141534,10 +145938,10 @@ index 10d0848..68bc2da 100644
#if IS_ENABLED(CONFIG_NF_DEFRAG_IPV6)
diff --git a/include/net/netns/xfrm.h b/include/net/netns/xfrm.h
-index 24cd394..8310b26 100644
+index 27bb963..931e36e 100644
--- a/include/net/netns/xfrm.h
+++ b/include/net/netns/xfrm.h
-@@ -78,7 +78,7 @@ struct netns_xfrm {
+@@ -76,7 +76,7 @@ struct netns_xfrm {
/* flow cache part */
struct flow_cache flow_cache_global;
@@ -141610,7 +146014,7 @@ index 4a5b9a3..ca27d73 100644
.combine = sctp_csum_combine,
};
diff --git a/include/net/sctp/sm.h b/include/net/sctp/sm.h
-index bafe2a0..f27e53c 100644
+index ca6c971..d4bdc27 100644
--- a/include/net/sctp/sm.h
+++ b/include/net/sctp/sm.h
@@ -80,7 +80,7 @@ typedef void (sctp_timer_event_t) (unsigned long);
@@ -141632,10 +146036,25 @@ index bafe2a0..f27e53c 100644
/* Get the size of a DATA chunk payload. */
diff --git a/include/net/sctp/structs.h b/include/net/sctp/structs.h
-index ced0df3..5d02406 100644
+index 11c3bf2..ce0bf6a 100644
--- a/include/net/sctp/structs.h
+++ b/include/net/sctp/structs.h
-@@ -514,7 +514,7 @@ struct sctp_pf {
+@@ -202,10 +202,12 @@ struct sctp_sock {
+ /* Flags controlling Heartbeat, SACK delay, and Path MTU Discovery. */
+ __u32 param_flags;
+
+- struct sctp_initmsg initmsg;
+ struct sctp_rtoinfo rtoinfo;
+ struct sctp_paddrparams paddrparam;
+- struct sctp_event_subscribe subscribe;
++ struct {
++ struct sctp_event_subscribe subscribe;
++ struct sctp_initmsg initmsg;
++ };
+ struct sctp_assocparams assocparams;
+
+ int user_frag;
+@@ -514,7 +516,7 @@ struct sctp_pf {
void (*to_sk_saddr)(union sctp_addr *, struct sock *sk);
void (*to_sk_daddr)(union sctp_addr *, struct sock *sk);
struct sctp_af *af;
@@ -141688,7 +146107,7 @@ index c9228ad..5543dfb 100644
#define SNMP_INC_STATS(mib, field) \
this_cpu_inc(mib->mibs[field])
diff --git a/include/net/sock.h b/include/net/sock.h
-index c26eab9..7f31228 100644
+index 92b2697..db680f5 100644
--- a/include/net/sock.h
+++ b/include/net/sock.h
@@ -188,7 +188,7 @@ struct sock_common {
@@ -141700,7 +146119,7 @@ index c26eab9..7f31228 100644
/* following fields are padding to force
* offset(struct sock, sk_refcnt) == 128 on 64bit arches
-@@ -364,7 +364,7 @@ struct sock {
+@@ -366,7 +366,7 @@ struct sock {
unsigned int sk_napi_id;
unsigned int sk_ll_usec;
#endif
@@ -141709,7 +146128,16 @@ index c26eab9..7f31228 100644
int sk_rcvbuf;
struct sk_filter __rcu *sk_filter;
-@@ -1069,7 +1069,7 @@ struct proto {
+@@ -1049,6 +1049,8 @@ struct proto {
+ struct kmem_cache *slab;
+ unsigned int obj_size;
+ int slab_flags;
++ size_t useroffset; /* USERCOPY region offset */
++ size_t usersize; /* USERCOPY region size */
+
+ struct percpu_counter *orphan_count;
+
+@@ -1070,7 +1072,7 @@ struct proto {
atomic_t socks;
#endif
int (*diag_destroy)(struct sock *sk, int err);
@@ -141718,7 +146146,7 @@ index c26eab9..7f31228 100644
int proto_register(struct proto *prot, int alloc_slab);
void proto_unregister(struct proto *prot);
-@@ -1156,7 +1156,7 @@ static inline long sk_prot_mem_limits(const struct sock *sk, int index)
+@@ -1167,7 +1169,7 @@ static inline long sk_prot_mem_limits(const struct sock *sk, int index)
return sk->sk_prot->sysctl_mem[index];
}
@@ -141727,7 +146155,7 @@ index c26eab9..7f31228 100644
sk_memory_allocated(const struct sock *sk)
{
return atomic_long_read(sk->sk_prot->memory_allocated);
-@@ -1769,7 +1769,7 @@ static inline bool sk_check_csum_caps(struct sock *sk)
+@@ -1778,7 +1780,7 @@ static inline bool sk_check_csum_caps(struct sock *sk)
}
static inline int skb_do_copy_data_nocache(struct sock *sk, struct sk_buff *skb,
@@ -141736,7 +146164,7 @@ index c26eab9..7f31228 100644
int copy, int offset)
{
if (skb->ip_summed == CHECKSUM_NONE) {
-@@ -2023,7 +2023,7 @@ static inline void sk_stream_moderate_sndbuf(struct sock *sk)
+@@ -2032,7 +2034,7 @@ static inline void sk_stream_moderate_sndbuf(struct sock *sk)
}
}
@@ -141745,7 +146173,7 @@ index c26eab9..7f31228 100644
bool force_schedule);
/**
-@@ -2099,14 +2099,14 @@ struct sock_skb_cb {
+@@ -2108,14 +2110,14 @@ struct sock_skb_cb {
static inline void
sock_skb_set_dropcount(const struct sock *sk, struct sk_buff *skb)
{
@@ -141762,11 +146190,24 @@ index c26eab9..7f31228 100644
}
void __sock_recv_timestamp(struct msghdr *msg, struct sock *sk,
+diff --git a/include/net/strparser.h b/include/net/strparser.h
+index 0c28ad9..60f15c0 100644
+--- a/include/net/strparser.h
++++ b/include/net/strparser.h
+@@ -48,7 +48,7 @@ struct strp_callbacks {
+ void (*rcv_msg)(struct strparser *strp, struct sk_buff *skb);
+ int (*read_sock_done)(struct strparser *strp, int err);
+ void (*abort_parser)(struct strparser *strp, int err);
+-};
++} __no_const;
+
+ struct strp_rx_msg {
+ int full_len;
diff --git a/include/net/tcp.h b/include/net/tcp.h
-index 0de6989..9846ad0 100644
+index 123979f..7bd48e9 100644
--- a/include/net/tcp.h
+++ b/include/net/tcp.h
-@@ -543,7 +543,7 @@ void tcp_retransmit_timer(struct sock *sk);
+@@ -544,7 +544,7 @@ void tcp_retransmit_timer(struct sock *sk);
void tcp_xmit_retransmit_queue(struct sock *);
void tcp_simple_retransmit(struct sock *);
int tcp_trim_head(struct sock *, struct sk_buff *, u32);
@@ -141775,7 +146216,7 @@ index 0de6989..9846ad0 100644
void tcp_send_probe0(struct sock *);
void tcp_send_partial(struct sock *);
-@@ -732,8 +732,8 @@ static inline u32 tcp_skb_timestamp(const struct sk_buff *skb)
+@@ -731,8 +731,8 @@ static inline u32 tcp_skb_timestamp(const struct sk_buff *skb)
* If this grows please adjust skbuff.h:skbuff->cb[xxx] size appropriately.
*/
struct tcp_skb_cb {
@@ -141786,7 +146227,7 @@ index 0de6989..9846ad0 100644
union {
/* Note : tcp_tw_isn is used in input path only
* (isn chosen by tcp_timewait_state_process())
-@@ -763,7 +763,7 @@ struct tcp_skb_cb {
+@@ -762,7 +762,7 @@ struct tcp_skb_cb {
__u8 txstamp_ack:1, /* Record TX timestamp for ack? */
eor:1, /* Is skb MSG_EOR marked? */
unused:6;
@@ -141794,8 +146235,8 @@ index 0de6989..9846ad0 100644
+ __u32 ack_seq __intentional_overflow(-1); /* Sequence number ACK'd */
union {
struct {
- /* There is space for up to 20 bytes */
-@@ -1873,7 +1873,7 @@ static inline void tcp_segs_in(struct tcp_sock *tp, const struct sk_buff *skb)
+ /* There is space for up to 24 bytes */
+@@ -1931,7 +1931,7 @@ static inline void tcp_segs_in(struct tcp_sock *tp, const struct sk_buff *skb)
*/
static inline void tcp_listendrop(const struct sock *sk)
{
@@ -141805,7 +146246,7 @@ index 0de6989..9846ad0 100644
}
diff --git a/include/net/xfrm.h b/include/net/xfrm.h
-index 1793431..2feaff28 100644
+index 31947b9..eb87bd8 100644
--- a/include/net/xfrm.h
+++ b/include/net/xfrm.h
@@ -280,7 +280,6 @@ struct xfrm_dst;
@@ -141906,10 +146347,10 @@ index 92a7d85..1779570 100644
const void *private_data,
u8 private_data_len);
diff --git a/include/rdma/ib_verbs.h b/include/rdma/ib_verbs.h
-index e1f9673..138c39f 100644
+index 5ad43a4..57937f0 100644
--- a/include/rdma/ib_verbs.h
+++ b/include/rdma/ib_verbs.h
-@@ -1190,7 +1190,7 @@ struct ib_sge {
+@@ -1204,7 +1204,7 @@ struct ib_sge {
struct ib_cqe {
void (*done)(struct ib_cq *cq, struct ib_wc *wc);
@@ -142066,10 +146507,10 @@ index feb58d4..9ce81c1 100644
int in_kernel, int size_aligned);
int snd_seq_dump_var_event(const struct snd_seq_event *event,
diff --git a/include/sound/soc.h b/include/sound/soc.h
-index 6144882..abe63c1 100644
+index 4f1c784..ae5c48b 100644
--- a/include/sound/soc.h
+++ b/include/sound/soc.h
-@@ -931,7 +931,7 @@ struct snd_soc_codec_driver {
+@@ -923,7 +923,7 @@ struct snd_soc_codec_driver {
enum snd_soc_dapm_type, int);
bool ignore_pmdown_time; /* Doesn't benefit from pmdown delay */
@@ -142078,7 +146519,7 @@ index 6144882..abe63c1 100644
/* SoC platform interface */
struct snd_soc_platform_driver {
-@@ -958,7 +958,7 @@ struct snd_soc_platform_driver {
+@@ -950,7 +950,7 @@ struct snd_soc_platform_driver {
const struct snd_compr_ops *compr_ops;
int (*bespoke_trigger)(struct snd_pcm_substream *, int);
@@ -142147,7 +146588,7 @@ index 0000000..fb634b7
+/* This part must be outside protection */
+#include <trace/define_trace.h>
diff --git a/include/trace/events/irq.h b/include/trace/events/irq.h
-index f95f25e..87ed448 100644
+index 1c41b74..10fc30d 100644
--- a/include/trace/events/irq.h
+++ b/include/trace/events/irq.h
@@ -51,7 +51,7 @@ SOFTIRQ_NAME_LIST
@@ -142481,10 +146922,10 @@ index 30f5362..8ed8ac9 100644
void *pmi_pal;
u8 *vbe_state_orig; /*
diff --git a/init/Kconfig b/init/Kconfig
-index cac3f09..fcf4fa4 100644
+index 34407f1..0e6a185 100644
--- a/init/Kconfig
+++ b/init/Kconfig
-@@ -31,6 +31,9 @@ menu "General setup"
+@@ -41,6 +41,9 @@ menu "General setup"
config BROKEN
bool
@@ -142494,7 +146935,7 @@ index cac3f09..fcf4fa4 100644
config BROKEN_ON_SMP
bool
depends on BROKEN || !SMP
-@@ -288,7 +291,8 @@ config FHANDLE
+@@ -298,7 +301,8 @@ config FHANDLE
config USELIB
bool "uselib syscall"
@@ -142504,7 +146945,7 @@ index cac3f09..fcf4fa4 100644
help
This option enables the uselib syscall, a system call used in the
dynamic linker from libc5 and earlier. glibc does not use this
-@@ -632,6 +636,7 @@ config RCU_FAST_NO_HZ
+@@ -642,6 +646,7 @@ config RCU_FAST_NO_HZ
config TREE_RCU_TRACE
def_bool RCU_TRACE && ( TREE_RCU || PREEMPT_RCU )
select DEBUG_FS
@@ -142512,7 +146953,7 @@ index cac3f09..fcf4fa4 100644
help
This option provides tracing for the TREE_RCU and
PREEMPT_RCU implementations, permitting Makefile to
-@@ -1158,6 +1163,7 @@ endif # CGROUPS
+@@ -1168,6 +1173,7 @@ endif # CGROUPS
config CHECKPOINT_RESTORE
bool "Checkpoint/restore support" if EXPERT
select PROC_CHILDREN
@@ -142520,7 +146961,7 @@ index cac3f09..fcf4fa4 100644
default n
help
Enables additional kernel features in a sake of checkpoint/restore.
-@@ -1630,7 +1636,7 @@ config ADVISE_SYSCALLS
+@@ -1641,7 +1647,7 @@ config ADVISE_SYSCALLS
config USERFAULTFD
bool "Enable userfaultfd() system call"
select ANON_INODES
@@ -142529,7 +146970,7 @@ index cac3f09..fcf4fa4 100644
help
Enable the userfaultfd() system call that allows to intercept and
handle page faults in userland.
-@@ -1743,7 +1749,7 @@ config SLUB_DEBUG
+@@ -1754,7 +1760,7 @@ config SLUB_DEBUG
config COMPAT_BRK
bool "Disable heap randomization"
@@ -142538,7 +146979,7 @@ index cac3f09..fcf4fa4 100644
help
Randomizing heap placement makes heap exploits harder, but it
also breaks ancient binaries (including anything libc5 based).
-@@ -1761,7 +1767,6 @@ choice
+@@ -1772,7 +1778,6 @@ choice
config SLAB
bool "SLAB"
@@ -142546,7 +146987,7 @@ index cac3f09..fcf4fa4 100644
help
The regular slab allocator that is established and known to work
well in all environments. It organizes cache hot objects in
-@@ -1769,7 +1774,6 @@ config SLAB
+@@ -1780,7 +1785,6 @@ config SLAB
config SLUB
bool "SLUB (Unqueued Allocator)"
@@ -142764,18 +147205,17 @@ index 8cb6db5..d729f50 100644
sys_ioctl(fd, RAID_AUTORUN, raid_autopart);
sys_close(fd);
diff --git a/init/init_task.c b/init/init_task.c
-index ba0a7f36..a7b3aaa 100644
+index 11f83be1..6621763 100644
--- a/init/init_task.c
+++ b/init/init_task.c
-@@ -23,4 +23,8 @@ EXPORT_SYMBOL(init_task);
- * linker map entry.
- */
- union thread_union init_thread_union __init_task_data =
-+#ifdef CONFIG_X86
-+ { .stack[0] = ~0xabcd1234, };
-+#else
- { INIT_THREAD_INFO(init_task) };
-+#endif
+@@ -25,5 +25,7 @@ EXPORT_SYMBOL(init_task);
+ union thread_union init_thread_union __init_task_data = {
+ #ifndef CONFIG_THREAD_INFO_IN_TASK
+ INIT_THREAD_INFO(init_task)
++#elif defined(CONFIG_X86)
++ .stack[0] = ~0xabcd1234L,
+ #endif
+ };
diff --git a/init/initramfs.c b/init/initramfs.c
index b32ad7d..05f6420 100644
--- a/init/initramfs.c
@@ -142888,7 +147328,7 @@ index b32ad7d..05f6420 100644
next_state = Reset;
return 0;
diff --git a/init/main.c b/init/main.c
-index a8a58e2..75fba2e 100644
+index 2858be7..75fba2e 100644
--- a/init/main.c
+++ b/init/main.c
@@ -11,6 +11,10 @@
@@ -142969,7 +147409,7 @@ index a8a58e2..75fba2e 100644
if (initcall_blacklisted(fn))
return -EPERM;
-@@ -777,18 +825,17 @@ int __init_or_module do_one_initcall(initcall_t fn)
+@@ -777,17 +825,15 @@ int __init_or_module do_one_initcall(initcall_t fn)
else
ret = fn();
@@ -142988,11 +147428,9 @@ index a8a58e2..75fba2e 100644
- WARN(msgbuf[0], "initcall %pF returned with %s\n", fn, msgbuf);
+ WARN(*msg1 || *msg2, "initcall %pF returned with%s%s\n", fn, msg1, msg2);
-+ add_latent_entropy();
+ add_latent_entropy();
return ret;
- }
-
-@@ -893,8 +940,8 @@ static int run_init_process(const char *init_filename)
+@@ -894,8 +940,8 @@ static int run_init_process(const char *init_filename)
{
argv_init[0] = init_filename;
return do_execve(getname_kernel(init_filename),
@@ -143003,7 +147441,7 @@ index a8a58e2..75fba2e 100644
}
static int try_to_run_init_process(const char *init_filename)
-@@ -911,6 +958,10 @@ static int try_to_run_init_process(const char *init_filename)
+@@ -912,6 +958,10 @@ static int try_to_run_init_process(const char *init_filename)
return ret;
}
@@ -143014,7 +147452,7 @@ index a8a58e2..75fba2e 100644
static noinline void __init kernel_init_freeable(void);
#ifdef CONFIG_DEBUG_RODATA
-@@ -959,6 +1010,11 @@ static int __ref kernel_init(void *unused)
+@@ -960,6 +1010,11 @@ static int __ref kernel_init(void *unused)
ramdisk_execute_command, ret);
}
@@ -143026,7 +147464,7 @@ index a8a58e2..75fba2e 100644
/*
* We try each of these until one succeeds.
*
-@@ -1016,7 +1072,7 @@ static noinline void __init kernel_init_freeable(void)
+@@ -1017,7 +1072,7 @@ static noinline void __init kernel_init_freeable(void)
do_basic_setup();
/* Open the /dev/console on the rootfs, this should never fail */
@@ -143035,7 +147473,7 @@ index a8a58e2..75fba2e 100644
pr_err("Warning: unable to open an initial console.\n");
(void) sys_dup(0);
-@@ -1029,11 +1085,13 @@ static noinline void __init kernel_init_freeable(void)
+@@ -1030,11 +1085,13 @@ static noinline void __init kernel_init_freeable(void)
if (!ramdisk_execute_command)
ramdisk_execute_command = "/init";
@@ -143162,7 +147600,7 @@ index 68d4e95..1477ded 100644
mq_table.data = get_mq(table);
diff --git a/ipc/mqueue.c b/ipc/mqueue.c
-index 0b13ace..2b586ea 100644
+index 8cbd6e6..38293ad 100644
--- a/ipc/mqueue.c
+++ b/ipc/mqueue.c
@@ -274,6 +274,7 @@ static struct inode *mqueue_get_inode(struct super_block *sb,
@@ -143174,10 +147612,10 @@ index 0b13ace..2b586ea 100644
if (u->mq_bytes + mq_bytes < u->mq_bytes ||
u->mq_bytes + mq_bytes > rlimit(RLIMIT_MSGQUEUE)) {
diff --git a/ipc/msg.c b/ipc/msg.c
-index c6521c2..4e2379d 100644
+index e12307d..de96eac 100644
--- a/ipc/msg.c
+++ b/ipc/msg.c
-@@ -1041,7 +1041,8 @@ void msg_exit_ns(struct ipc_namespace *ns)
+@@ -1031,7 +1031,8 @@ void msg_exit_ns(struct ipc_namespace *ns)
static int sysvipc_msg_proc_show(struct seq_file *s, void *it)
{
struct user_namespace *user_ns = seq_user_ns(s);
@@ -143188,15 +147626,15 @@ index c6521c2..4e2379d 100644
seq_printf(s,
"%10d %10d %4o %10lu %10lu %5u %5u %5u %5u %5u %5u %10lu %10lu %10lu\n",
diff --git a/ipc/msgutil.c b/ipc/msgutil.c
-index a521999..6259e10 100644
+index bf74eaa..dc6dbf7 100644
--- a/ipc/msgutil.c
+++ b/ipc/msgutil.c
@@ -53,7 +53,7 @@ static struct msg_msg *alloc_msg(size_t len)
size_t alen;
alen = min(len, DATALEN_MSG);
-- msg = kmalloc(sizeof(*msg) + alen, GFP_KERNEL);
-+ msg = kmalloc(sizeof(*msg) + alen, GFP_KERNEL|GFP_USERCOPY);
+- msg = kmalloc(sizeof(*msg) + alen, GFP_KERNEL_ACCOUNT);
++ msg = kmalloc(sizeof(*msg) + alen, GFP_KERNEL_ACCOUNT|GFP_USERCOPY);
if (msg == NULL)
return NULL;
@@ -143204,13 +147642,13 @@ index a521999..6259e10 100644
while (len > 0) {
struct msg_msgseg *seg;
alen = min(len, DATALEN_SEG);
-- seg = kmalloc(sizeof(*seg) + alen, GFP_KERNEL);
-+ seg = kmalloc(sizeof(*seg) + alen, GFP_KERNEL|GFP_USERCOPY);
+- seg = kmalloc(sizeof(*seg) + alen, GFP_KERNEL_ACCOUNT);
++ seg = kmalloc(sizeof(*seg) + alen, GFP_KERNEL_ACCOUNT|GFP_USERCOPY);
if (seg == NULL)
goto out_err;
*pseg = seg;
diff --git a/ipc/sem.c b/ipc/sem.c
-index 5e318c5..235b6b0 100644
+index 10b94bc..136c0ae 100644
--- a/ipc/sem.c
+++ b/ipc/sem.c
@@ -1814,7 +1814,7 @@ static int get_queue_result(struct sem_queue *q)
@@ -143222,7 +147660,7 @@ index 5e318c5..235b6b0 100644
{
int error = -EINVAL;
struct sem_array *sma;
-@@ -2049,7 +2049,7 @@ out_free:
+@@ -2049,7 +2049,7 @@ SYSCALL_DEFINE4(semtimedop, int, semid, struct sembuf __user *, tsops,
}
SYSCALL_DEFINE3(semop, int, semid, struct sembuf __user *, tsops,
@@ -143231,7 +147669,7 @@ index 5e318c5..235b6b0 100644
{
return sys_semtimedop(semid, tsops, nsops, NULL);
}
-@@ -2204,7 +2204,8 @@ void exit_sem(struct task_struct *tsk)
+@@ -2206,7 +2206,8 @@ void exit_sem(struct task_struct *tsk)
static int sysvipc_sem_proc_show(struct seq_file *s, void *it)
{
struct user_namespace *user_ns = seq_user_ns(s);
@@ -143348,7 +147786,7 @@ index 798cad1..d6ffc17 100644
if ((requested_mode & ~granted_mode & 0007) &&
!ns_capable(ns->user_ns, CAP_IPC_OWNER))
diff --git a/kernel/audit.c b/kernel/audit.c
-index a8a91bd2..b8f3933 100644
+index f1ca116..7f396f8 100644
--- a/kernel/audit.c
+++ b/kernel/audit.c
@@ -122,7 +122,7 @@ u32 audit_sig_sid = 0;
@@ -143387,7 +147825,7 @@ index a8a91bd2..b8f3933 100644
s.backlog = skb_queue_len(&audit_skb_queue);
s.feature_bitmap = AUDIT_FEATURE_BITMAP_ALL;
s.backlog_wait_time = audit_backlog_wait_time_master;
-@@ -1171,7 +1171,7 @@ static void __net_exit audit_net_exit(struct net *net)
+@@ -1177,7 +1177,7 @@ static void __net_exit audit_net_exit(struct net *net)
netlink_kernel_release(sock);
}
@@ -143397,7 +147835,7 @@ index a8a91bd2..b8f3933 100644
.exit = audit_net_exit,
.id = &audit_net_id,
diff --git a/kernel/auditsc.c b/kernel/auditsc.c
-index 5abf1dc..78861f76 100644
+index 2cd5256..a930e72 100644
--- a/kernel/auditsc.c
+++ b/kernel/auditsc.c
@@ -1954,7 +1954,7 @@ int auditsc_get_stamp(struct audit_context *ctx,
@@ -143419,14 +147857,14 @@ index 5abf1dc..78861f76 100644
task->sessionid = sessionid;
task->loginuid = loginuid;
diff --git a/kernel/bpf/core.c b/kernel/bpf/core.c
-index 03fd23d..4b2832f0 100644
+index aa6d981..d5d0272 100644
--- a/kernel/bpf/core.c
+++ b/kernel/bpf/core.c
@@ -208,6 +208,8 @@ struct bpf_prog *bpf_patch_insn_single(struct bpf_prog *prog, u32 off,
}
#ifdef CONFIG_BPF_JIT
-+extern long __rap_hash___bpf_prog_run;
++extern long __rap_hash_call___bpf_prog_run;
+
struct bpf_binary_header *
bpf_jit_binary_alloc(unsigned int proglen, u8 **image_ptr,
@@ -143465,7 +147903,7 @@ index 03fd23d..4b2832f0 100644
+#ifdef CONFIG_PAX_RAP
+ pax_open_kernel();
-+ *(long *)(*image_ptr - 8) = (long)&__rap_hash___bpf_prog_run;
++ *(long *)(*image_ptr - 8) = (long)&__rap_hash_call___bpf_prog_run;
+ pax_close_kernel();
+#endif
+
@@ -143498,10 +147936,10 @@ index 03fd23d..4b2832f0 100644
/* eBPF JITs can rewrite the program in case constant
* blinding is active. However, in case of error during
diff --git a/kernel/bpf/syscall.c b/kernel/bpf/syscall.c
-index 228f962..ebef033 100644
+index 237f3d6..ea9aac0 100644
--- a/kernel/bpf/syscall.c
+++ b/kernel/bpf/syscall.c
-@@ -827,8 +827,16 @@ SYSCALL_DEFINE3(bpf, int, cmd, union bpf_attr __user *, uattr, unsigned int, siz
+@@ -829,8 +829,16 @@ SYSCALL_DEFINE3(bpf, int, cmd, union bpf_attr __user *, uattr, unsigned int, siz
union bpf_attr attr = {};
int err;
@@ -143520,7 +147958,7 @@ index 228f962..ebef033 100644
if (!access_ok(VERIFY_READ, uattr, 1))
return -EFAULT;
diff --git a/kernel/capability.c b/kernel/capability.c
-index 4984e1f..6ca927c 100644
+index 4984e1f..a5bf6f5 100644
--- a/kernel/capability.c
+++ b/kernel/capability.c
@@ -193,6 +193,9 @@ SYSCALL_DEFINE2(capget, cap_user_header_t, header, cap_user_data_t, dataptr)
@@ -143587,7 +148025,7 @@ index 4984e1f..6ca927c 100644
#endif /* CONFIG_MULTIUSER */
/**
-@@ -486,6 +497,15 @@ bool capable_wrt_inode_uidgid(const struct inode *inode, int cap)
+@@ -486,6 +497,14 @@ bool capable_wrt_inode_uidgid(const struct inode *inode, int cap)
}
EXPORT_SYMBOL(capable_wrt_inode_uidgid);
@@ -143595,8 +148033,7 @@ index 4984e1f..6ca927c 100644
+{
+ struct user_namespace *ns = current_user_ns();
+
-+ return ns_capable_noaudit(ns, cap) && kuid_has_mapping(ns, inode->i_uid) &&
-+ kgid_has_mapping(ns, inode->i_gid);
++ return ns_capable_noaudit(ns, cap) && privileged_wrt_inode_uidgid(ns, inode);
+}
+EXPORT_SYMBOL(capable_wrt_inode_uidgid_nolog);
+
@@ -143604,10 +148041,10 @@ index 4984e1f..6ca927c 100644
* ptracer_capable - Determine if the ptracer holds CAP_SYS_PTRACE in the namespace
* @tsk: The task that may be ptraced
diff --git a/kernel/cgroup.c b/kernel/cgroup.c
-index d6b729b..f78716c 100644
+index 4e2f3de..d50672d 100644
--- a/kernel/cgroup.c
+++ b/kernel/cgroup.c
-@@ -3645,7 +3645,7 @@ static int cgroup_add_file(struct cgroup_subsys_state *css, struct cgroup *cgrp,
+@@ -3656,7 +3656,7 @@ static int cgroup_add_file(struct cgroup_subsys_state *css, struct cgroup *cgrp,
key = &cft->lockdep_key;
#endif
kn = __kernfs_create_file(cgrp->kn, cgroup_file_name(cgrp, cft, name),
@@ -143616,7 +148053,7 @@ index d6b729b..f78716c 100644
NULL, key);
if (IS_ERR(kn))
return PTR_ERR(kn);
-@@ -3749,11 +3749,14 @@ static void cgroup_exit_cftypes(struct cftype *cfts)
+@@ -3760,11 +3760,14 @@ static void cgroup_exit_cftypes(struct cftype *cfts)
/* free copy for custom atomic_write_len, see init_cftypes() */
if (cft->max_write_len && cft->max_write_len != PAGE_SIZE)
kfree(cft->kf_ops);
@@ -143634,7 +148071,7 @@ index d6b729b..f78716c 100644
}
}
-@@ -3784,8 +3787,10 @@ static int cgroup_init_cftypes(struct cgroup_subsys *ss, struct cftype *cfts)
+@@ -3795,8 +3798,10 @@ static int cgroup_init_cftypes(struct cgroup_subsys *ss, struct cftype *cfts)
kf_ops->atomic_write_len = cft->max_write_len;
}
@@ -143647,7 +148084,7 @@ index d6b729b..f78716c 100644
}
return 0;
-@@ -3798,7 +3803,7 @@ static int cgroup_rm_cftypes_locked(struct cftype *cfts)
+@@ -3809,7 +3814,7 @@ static int cgroup_rm_cftypes_locked(struct cftype *cfts)
if (!cfts || !cfts[0].ss)
return -ENOENT;
@@ -143656,7 +148093,7 @@ index d6b729b..f78716c 100644
cgroup_apply_cftypes(cfts, false);
cgroup_exit_cftypes(cfts);
return 0;
-@@ -3855,7 +3860,7 @@ static int cgroup_add_cftypes(struct cgroup_subsys *ss, struct cftype *cfts)
+@@ -3866,7 +3871,7 @@ static int cgroup_add_cftypes(struct cgroup_subsys *ss, struct cftype *cfts)
mutex_lock(&cgroup_mutex);
@@ -143665,7 +148102,7 @@ index d6b729b..f78716c 100644
ret = cgroup_apply_cftypes(cfts, true);
if (ret)
cgroup_rm_cftypes_locked(cfts);
-@@ -3876,8 +3881,10 @@ int cgroup_add_dfl_cftypes(struct cgroup_subsys *ss, struct cftype *cfts)
+@@ -3887,8 +3892,10 @@ int cgroup_add_dfl_cftypes(struct cgroup_subsys *ss, struct cftype *cfts)
{
struct cftype *cft;
@@ -143677,7 +148114,7 @@ index d6b729b..f78716c 100644
return cgroup_add_cftypes(ss, cfts);
}
-@@ -3893,8 +3900,10 @@ int cgroup_add_legacy_cftypes(struct cgroup_subsys *ss, struct cftype *cfts)
+@@ -3904,8 +3911,10 @@ int cgroup_add_legacy_cftypes(struct cgroup_subsys *ss, struct cftype *cfts)
{
struct cftype *cft;
@@ -143689,7 +148126,7 @@ index d6b729b..f78716c 100644
return cgroup_add_cftypes(ss, cfts);
}
-@@ -6066,6 +6075,9 @@ static void cgroup_release_agent(struct work_struct *work)
+@@ -6090,6 +6099,9 @@ static void cgroup_release_agent(struct work_struct *work)
if (!pathbuf || !agentbuf)
goto out;
@@ -143697,9 +148134,9 @@ index d6b729b..f78716c 100644
+ goto out;
+
spin_lock_irq(&css_set_lock);
- path = cgroup_path_ns_locked(cgrp, pathbuf, PATH_MAX, &init_cgroup_ns);
+ ret = cgroup_path_ns_locked(cgrp, pathbuf, PATH_MAX, &init_cgroup_ns);
spin_unlock_irq(&css_set_lock);
-@@ -6522,7 +6534,7 @@ static int cgroup_css_links_read(struct seq_file *seq, void *v)
+@@ -6570,7 +6582,7 @@ static int cgroup_css_links_read(struct seq_file *seq, void *v)
struct task_struct *task;
int count = 0;
@@ -143927,6 +148364,142 @@ index c18b1f1..b9a0132 100644
if (!entry)
return -ENOMEM;
+diff --git a/kernel/cpu.c b/kernel/cpu.c
+index 217fd2e..f665bfe 100644
+--- a/kernel/cpu.c
++++ b/kernel/cpu.c
+@@ -74,16 +74,8 @@ static DEFINE_PER_CPU(struct cpuhp_cpu_state, cpuhp_state);
+ */
+ struct cpuhp_step {
+ const char *name;
+- union {
+- int (*single)(unsigned int cpu);
+- int (*multi)(unsigned int cpu,
+- struct hlist_node *node);
+- } startup;
+- union {
+- int (*single)(unsigned int cpu);
+- int (*multi)(unsigned int cpu,
+- struct hlist_node *node);
+- } teardown;
++ union cpuhp_step_startup startup;
++ union cpuhp_step_teardown teardown;
+ struct hlist_head list;
+ bool skip_onerr;
+ bool cant_stop;
+@@ -644,7 +636,7 @@ static int cpuhp_kick_ap_work(unsigned int cpu)
+ return st->result;
+ }
+
+-static struct smp_hotplug_thread cpuhp_threads = {
++static struct smp_hotplug_thread cpuhp_threads __read_only = {
+ .store = &cpuhp_state.thread,
+ .create = &cpuhp_create,
+ .thread_should_run = cpuhp_should_run,
+@@ -1434,8 +1426,8 @@ static int cpuhp_cb_check(enum cpuhp_state state)
+
+ static void cpuhp_store_callbacks(enum cpuhp_state state,
+ const char *name,
+- int (*startup)(unsigned int cpu),
+- int (*teardown)(unsigned int cpu),
++ union cpuhp_step_startup startup,
++ union cpuhp_step_teardown teardown,
+ bool multi_instance)
+ {
+ /* (Un)Install the callbacks for further cpu hotplug operations */
+@@ -1443,17 +1435,17 @@ static void cpuhp_store_callbacks(enum cpuhp_state state,
+
+ mutex_lock(&cpuhp_state_mutex);
+ sp = cpuhp_get_step(state);
+- sp->startup.single = startup;
+- sp->teardown.single = teardown;
++ sp->startup = startup;
++ sp->teardown = teardown;
+ sp->name = name;
+ sp->multi_instance = multi_instance;
+ INIT_HLIST_HEAD(&sp->list);
+ mutex_unlock(&cpuhp_state_mutex);
+ }
+
+-static void *cpuhp_get_teardown_cb(enum cpuhp_state state)
++static union cpuhp_step_teardown cpuhp_get_teardown_cb(enum cpuhp_state state)
+ {
+- return cpuhp_get_step(state)->teardown.single;
++ return cpuhp_get_step(state)->teardown;
+ }
+
+ /*
+@@ -1590,8 +1582,8 @@ EXPORT_SYMBOL_GPL(__cpuhp_state_add_instance);
+ */
+ int __cpuhp_setup_state(enum cpuhp_state state,
+ const char *name, bool invoke,
+- int (*startup)(unsigned int cpu),
+- int (*teardown)(unsigned int cpu),
++ union cpuhp_step_startup startup,
++ union cpuhp_step_teardown teardown,
+ bool multi_instance)
+ {
+ int cpu, ret = 0;
+@@ -1613,7 +1605,7 @@ int __cpuhp_setup_state(enum cpuhp_state state,
+
+ cpuhp_store_callbacks(state, name, startup, teardown, multi_instance);
+
+- if (!invoke || !startup)
++ if (!invoke || (multi_instance ? !startup.multi : !startup.single))
+ goto out;
+
+ /*
+@@ -1629,9 +1621,12 @@ int __cpuhp_setup_state(enum cpuhp_state state,
+
+ ret = cpuhp_issue_call(cpu, state, true, NULL);
+ if (ret) {
+- if (teardown)
++ union cpuhp_step_startup startup = { .single = NULL };
++ union cpuhp_step_teardown teardown = { .single = NULL };
++
++ if (multi_instance ? !!teardown.multi : !!teardown.single)
+ cpuhp_rollback_install(cpu, state, NULL);
+- cpuhp_store_callbacks(state, NULL, NULL, NULL, false);
++ cpuhp_store_callbacks(state, NULL, startup, teardown, false);
+ goto out;
+ }
+ }
+@@ -1655,7 +1650,7 @@ int __cpuhp_state_remove_instance(enum cpuhp_state state,
+ return -EINVAL;
+
+ get_online_cpus();
+- if (!invoke || !cpuhp_get_teardown_cb(state))
++ if (!invoke || !cpuhp_get_teardown_cb(state).single)
+ goto remove;
+ /*
+ * Call the teardown callback for each present cpu depending
+@@ -1692,6 +1687,8 @@ void __cpuhp_remove_state(enum cpuhp_state state, bool invoke)
+ {
+ struct cpuhp_step *sp = cpuhp_get_step(state);
+ int cpu;
++ union cpuhp_step_startup startup = { .single = NULL };
++ union cpuhp_step_teardown teardown = { .single = NULL };
+
+ BUG_ON(cpuhp_cb_check(state));
+
+@@ -1704,7 +1701,7 @@ void __cpuhp_remove_state(enum cpuhp_state state, bool invoke)
+ goto remove;
+ }
+
+- if (!invoke || !cpuhp_get_teardown_cb(state))
++ if (!invoke || !cpuhp_get_teardown_cb(state).single)
+ goto remove;
+
+ /*
+@@ -1720,7 +1717,7 @@ void __cpuhp_remove_state(enum cpuhp_state state, bool invoke)
+ cpuhp_issue_call(cpu, state, false, NULL);
+ }
+ remove:
+- cpuhp_store_callbacks(state, NULL, NULL, NULL, false);
++ cpuhp_store_callbacks(state, NULL, startup, teardown, false);
+ put_online_cpus();
+ }
+ EXPORT_SYMBOL(__cpuhp_remove_state);
diff --git a/kernel/cred.c b/kernel/cred.c
index 5f264fb..8fc856b 100644
--- a/kernel/cred.c
@@ -144093,7 +148666,7 @@ index 79517e5..a4e120b 100644
/*
* If you are debugging a problem where roundup (the collection of
-@@ -552,7 +552,7 @@ return_normal:
+@@ -552,7 +552,7 @@ static int kgdb_cpu_enter(struct kgdb_state *ks, struct pt_regs *regs,
* kernel will only try for the value of sstep_tries before
* giving up and continuing on.
*/
@@ -144102,7 +148675,7 @@ index 79517e5..a4e120b 100644
(kgdb_info[cpu].task &&
kgdb_info[cpu].task->pid != kgdb_sstep_pid) && --sstep_tries) {
atomic_set(&kgdb_active, -1);
-@@ -654,8 +654,8 @@ cpu_master_loop:
+@@ -654,8 +654,8 @@ static int kgdb_cpu_enter(struct kgdb_state *ks, struct pt_regs *regs,
}
kgdb_restore:
@@ -144171,7 +148744,7 @@ index e9fdb52..cfb547d 100644
new_table.data = &new_value;
ret = proc_dointvec_minmax(&new_table, write, buffer, lenp, ppos);
diff --git a/kernel/events/core.c b/kernel/events/core.c
-index f8c5f5e..00671d2 100644
+index b1cfd74..62fe53a 100644
--- a/kernel/events/core.c
+++ b/kernel/events/core.c
@@ -389,8 +389,15 @@ static struct srcu_struct pmus_srcu;
@@ -144200,7 +148773,7 @@ index f8c5f5e..00671d2 100644
static void cpu_ctx_sched_out(struct perf_cpu_context *cpuctx,
enum event_type_t event_type);
-@@ -1044,8 +1051,9 @@ static void __perf_mux_hrtimer_init(struct perf_cpu_context *cpuctx, int cpu)
+@@ -1052,8 +1059,9 @@ static void __perf_mux_hrtimer_init(struct perf_cpu_context *cpuctx, int cpu)
timer->function = perf_mux_hrtimer_handler;
}
@@ -144211,7 +148784,7 @@ index f8c5f5e..00671d2 100644
struct hrtimer *timer = &cpuctx->hrtimer;
struct pmu *pmu = cpuctx->ctx.pmu;
unsigned long flags;
-@@ -3111,7 +3119,7 @@ void __perf_event_task_sched_in(struct task_struct *prev,
+@@ -3156,7 +3164,7 @@ void __perf_event_task_sched_in(struct task_struct *prev,
perf_pmu_sched_task(prev, task, true);
}
@@ -144220,7 +148793,7 @@ index f8c5f5e..00671d2 100644
{
u64 frequency = event->attr.sample_freq;
u64 sec = NSEC_PER_SEC;
-@@ -4201,9 +4209,9 @@ u64 perf_event_read_value(struct perf_event *event, u64 *enabled, u64 *running)
+@@ -4267,9 +4275,9 @@ u64 perf_event_read_value(struct perf_event *event, u64 *enabled, u64 *running)
total += perf_event_count(event);
*enabled += event->total_time_enabled +
@@ -144232,7 +148805,7 @@ index f8c5f5e..00671d2 100644
list_for_each_entry(child, &event->child_list, child_list) {
(void)perf_event_read(child, false);
-@@ -4235,12 +4243,12 @@ static int __perf_read_group_add(struct perf_event *leader,
+@@ -4301,12 +4309,12 @@ static int __perf_read_group_add(struct perf_event *leader,
*/
if (read_format & PERF_FORMAT_TOTAL_TIME_ENABLED) {
values[n++] += leader->total_time_enabled +
@@ -144247,7 +148820,7 @@ index f8c5f5e..00671d2 100644
}
/*
-@@ -4763,10 +4771,10 @@ void perf_event_update_userpage(struct perf_event *event)
+@@ -4829,10 +4837,10 @@ void perf_event_update_userpage(struct perf_event *event)
userpg->offset -= local64_read(&event->hw.prev_count);
userpg->time_enabled = enabled +
@@ -144260,7 +148833,7 @@ index f8c5f5e..00671d2 100644
arch_perf_update_userpage(event, userpg, now);
-@@ -5468,7 +5476,7 @@ perf_output_sample_ustack(struct perf_output_handle *handle, u64 dump_size,
+@@ -5535,7 +5543,7 @@ perf_output_sample_ustack(struct perf_output_handle *handle, u64 dump_size,
/* Data. */
sp = perf_user_stack_pointer(regs);
@@ -144269,7 +148842,7 @@ index f8c5f5e..00671d2 100644
dyn_size = dump_size - rem;
perf_output_skip(handle, rem);
-@@ -5559,11 +5567,11 @@ static void perf_output_read_one(struct perf_output_handle *handle,
+@@ -5626,11 +5634,11 @@ static void perf_output_read_one(struct perf_output_handle *handle,
values[n++] = perf_event_count(event);
if (read_format & PERF_FORMAT_TOTAL_TIME_ENABLED) {
values[n++] = enabled +
@@ -144283,7 +148856,7 @@ index f8c5f5e..00671d2 100644
}
if (read_format & PERF_FORMAT_ID)
values[n++] = primary_event_id(event);
-@@ -8564,8 +8572,7 @@ perf_event_mux_interval_ms_store(struct device *dev,
+@@ -8705,8 +8713,7 @@ perf_event_mux_interval_ms_store(struct device *dev,
cpuctx = per_cpu_ptr(pmu->pmu_cpu_context, cpu);
cpuctx->hrtimer_interval = ns_to_ktime(NSEC_PER_MSEC * timer);
@@ -144293,7 +148866,7 @@ index f8c5f5e..00671d2 100644
}
put_online_cpus();
mutex_unlock(&mux_interval_mutex);
-@@ -9006,7 +9013,7 @@ perf_event_alloc(struct perf_event_attr *attr, int cpu,
+@@ -9152,7 +9159,7 @@ perf_event_alloc(struct perf_event_attr *attr, int cpu,
event->parent = parent_event;
event->ns = get_pid_ns(task_active_pid_ns(current));
@@ -144302,7 +148875,7 @@ index f8c5f5e..00671d2 100644
event->state = PERF_EVENT_STATE_INACTIVE;
-@@ -9397,6 +9404,11 @@ SYSCALL_DEFINE5(perf_event_open,
+@@ -9587,6 +9594,11 @@ SYSCALL_DEFINE5(perf_event_open,
if (flags & ~PERF_FLAG_ALL)
return -EINVAL;
@@ -144314,7 +148887,7 @@ index f8c5f5e..00671d2 100644
err = perf_copy_attr(attr_uptr, &attr);
if (err)
return err;
-@@ -9914,10 +9926,10 @@ static void sync_child_event(struct perf_event *child_event,
+@@ -10126,10 +10138,10 @@ static void sync_child_event(struct perf_event *child_event,
/*
* Add back the child's count to the parent's count:
*/
@@ -144385,10 +148958,10 @@ index 486fd78..96062d7 100644
/* Callchain handling */
extern struct perf_callchain_entry *
diff --git a/kernel/events/uprobes.c b/kernel/events/uprobes.c
-index 8c50276..457c599 100644
+index f9ec9ad..da594f8 100644
--- a/kernel/events/uprobes.c
+++ b/kernel/events/uprobes.c
-@@ -1695,7 +1695,7 @@ static int is_trap_at_addr(struct mm_struct *mm, unsigned long vaddr)
+@@ -1696,7 +1696,7 @@ static int is_trap_at_addr(struct mm_struct *mm, unsigned long vaddr)
{
struct page *page;
uprobe_opcode_t opcode;
@@ -144398,7 +148971,7 @@ index 8c50276..457c599 100644
pagefault_disable();
result = __get_user(opcode, (uprobe_opcode_t __user *)vaddr);
diff --git a/kernel/exit.c b/kernel/exit.c
-index 091a78b..7d6001b 100644
+index 3076f30..28d8eb4 100644
--- a/kernel/exit.c
+++ b/kernel/exit.c
@@ -170,6 +170,10 @@ void release_task(struct task_struct *p)
@@ -144432,7 +149005,7 @@ index 091a78b..7d6001b 100644
struct list_head *dead)
{
struct task_struct *p, *t, *reaper;
-@@ -731,6 +736,15 @@ void do_exit(long code)
+@@ -731,6 +736,15 @@ void __noreturn do_exit(long code)
int group_dead;
TASKS_RCU(int tasks_rcu_i);
@@ -144448,7 +149021,7 @@ index 091a78b..7d6001b 100644
profile_task_exit(tsk);
kcov_task_exit(tsk);
-@@ -741,15 +755,6 @@ void do_exit(long code)
+@@ -741,15 +755,6 @@ void __noreturn do_exit(long code)
if (unlikely(!tsk->pid))
panic("Attempted to kill the idle task!");
@@ -144464,7 +149037,7 @@ index 091a78b..7d6001b 100644
ptrace_event(PTRACE_EVENT_EXIT, code);
validate_creds_for_do_exit(tsk);
-@@ -812,6 +817,9 @@ void do_exit(long code)
+@@ -812,6 +817,9 @@ void __noreturn do_exit(long code)
tsk->exit_code = code;
taskstats_exit(tsk, group_dead);
@@ -144474,7 +149047,7 @@ index 091a78b..7d6001b 100644
exit_mm(tsk);
if (group_dead)
-@@ -926,7 +934,7 @@ SYSCALL_DEFINE1(exit, int, error_code)
+@@ -905,7 +913,7 @@ SYSCALL_DEFINE1(exit, int, error_code)
* Take down every thread in the group. This is called by fatal signals
* as well as by sys_exit_group (below).
*/
@@ -144483,7 +149056,7 @@ index 091a78b..7d6001b 100644
do_group_exit(int exit_code)
{
struct signal_struct *sig = current->signal;
-@@ -1054,6 +1062,7 @@ static int wait_noreap_copyout(struct wait_opts *wo, struct task_struct *p,
+@@ -1033,6 +1041,7 @@ static int wait_noreap_copyout(struct wait_opts *wo, struct task_struct *p,
* the lock and this task is uninteresting. If we return nonzero, we have
* released the lock and the system call should return.
*/
@@ -144491,7 +149064,7 @@ index 091a78b..7d6001b 100644
static int wait_task_zombie(struct wait_opts *wo, struct task_struct *p)
{
int state, retval, status;
-@@ -1070,6 +1079,7 @@ static int wait_task_zombie(struct wait_opts *wo, struct task_struct *p)
+@@ -1049,6 +1058,7 @@ static int wait_task_zombie(struct wait_opts *wo, struct task_struct *p)
get_task_struct(p);
read_unlock(&tasklist_lock);
@@ -144499,7 +149072,7 @@ index 091a78b..7d6001b 100644
sched_annotate_sleep();
if ((exit_code & 0x7f) == 0) {
-@@ -1092,6 +1102,7 @@ static int wait_task_zombie(struct wait_opts *wo, struct task_struct *p)
+@@ -1071,6 +1081,7 @@ static int wait_task_zombie(struct wait_opts *wo, struct task_struct *p)
* We own this thread, nobody else can reap it.
*/
read_unlock(&tasklist_lock);
@@ -144507,7 +149080,7 @@ index 091a78b..7d6001b 100644
sched_annotate_sleep();
/*
-@@ -1234,6 +1245,8 @@ static int *task_stopped_code(struct task_struct *p, bool ptrace)
+@@ -1213,6 +1224,8 @@ static int *task_stopped_code(struct task_struct *p, bool ptrace)
* search should terminate.
*/
static int wait_task_stopped(struct wait_opts *wo,
@@ -144516,7 +149089,7 @@ index 091a78b..7d6001b 100644
int ptrace, struct task_struct *p)
{
struct siginfo __user *infop;
-@@ -1281,6 +1294,7 @@ unlock_sig:
+@@ -1260,6 +1273,7 @@ static int wait_task_stopped(struct wait_opts *wo,
pid = task_pid_vnr(p);
why = ptrace ? CLD_TRAPPED : CLD_STOPPED;
read_unlock(&tasklist_lock);
@@ -144524,7 +149097,7 @@ index 091a78b..7d6001b 100644
sched_annotate_sleep();
if (unlikely(wo->wo_flags & WNOWAIT))
-@@ -1318,6 +1332,7 @@ unlock_sig:
+@@ -1297,6 +1311,7 @@ static int wait_task_stopped(struct wait_opts *wo,
* the lock and this task is uninteresting. If we return nonzero, we have
* released the lock and the system call should return.
*/
@@ -144532,7 +149105,7 @@ index 091a78b..7d6001b 100644
static int wait_task_continued(struct wait_opts *wo, struct task_struct *p)
{
int retval;
-@@ -1344,6 +1359,7 @@ static int wait_task_continued(struct wait_opts *wo, struct task_struct *p)
+@@ -1323,6 +1338,7 @@ static int wait_task_continued(struct wait_opts *wo, struct task_struct *p)
pid = task_pid_vnr(p);
get_task_struct(p);
read_unlock(&tasklist_lock);
@@ -144540,7 +149113,7 @@ index 091a78b..7d6001b 100644
sched_annotate_sleep();
if (!wo->wo_info) {
-@@ -1373,6 +1389,8 @@ static int wait_task_continued(struct wait_opts *wo, struct task_struct *p)
+@@ -1352,6 +1368,8 @@ static int wait_task_continued(struct wait_opts *wo, struct task_struct *p)
* or another error from security_task_wait(), or still -ECHILD.
*/
static int wait_consider_task(struct wait_opts *wo, int ptrace,
@@ -144549,7 +149122,7 @@ index 091a78b..7d6001b 100644
struct task_struct *p)
{
/*
-@@ -1498,6 +1516,7 @@ static int wait_consider_task(struct wait_opts *wo, int ptrace,
+@@ -1477,6 +1495,7 @@ static int wait_consider_task(struct wait_opts *wo, int ptrace,
* ->notask_error is 0 if there were any eligible children,
* or another error from security_task_wait(), or still -ECHILD.
*/
@@ -144557,7 +149130,7 @@ index 091a78b..7d6001b 100644
static int do_wait_thread(struct wait_opts *wo, struct task_struct *tsk)
{
struct task_struct *p;
-@@ -1512,6 +1531,7 @@ static int do_wait_thread(struct wait_opts *wo, struct task_struct *tsk)
+@@ -1491,6 +1510,7 @@ static int do_wait_thread(struct wait_opts *wo, struct task_struct *tsk)
return 0;
}
@@ -144565,7 +149138,7 @@ index 091a78b..7d6001b 100644
static int ptrace_do_wait(struct wait_opts *wo, struct task_struct *tsk)
{
struct task_struct *p;
-@@ -1575,12 +1595,16 @@ repeat:
+@@ -1554,12 +1574,16 @@ static long do_wait(struct wait_opts *wo)
tsk = current;
do {
retval = do_wait_thread(wo, tsk);
@@ -144622,10 +149195,10 @@ index e820cce..72195de 100644
/* Given an address, look for it in the exception tables. */
diff --git a/kernel/fork.c b/kernel/fork.c
-index 9f8dae7..ead3c277 100644
+index ba8a015..37d2e1d 100644
--- a/kernel/fork.c
+++ b/kernel/fork.c
-@@ -188,13 +188,56 @@ static void free_thread_stack(unsigned long *stack)
+@@ -252,13 +252,68 @@ static void free_thread_stack(struct task_struct *tsk)
void thread_stack_cache_init(void)
{
@@ -144652,7 +149225,7 @@ index 9f8dae7..ead3c277 100644
+
+ for (i = 0; i < THREAD_SIZE / PAGE_SIZE; i++)
+ pages[i] = virt_to_page(*lowmem_stack + (i * PAGE_SIZE));
-+
++
+ /* use VM_IOREMAP to gain THREAD_SIZE alignment */
+ ret = vmap(pages, THREAD_SIZE / PAGE_SIZE, VM_IOREMAP, PAGE_KERNEL);
+ if (ret == NULL) {
@@ -144665,7 +149238,7 @@ index 9f8dae7..ead3c277 100644
+ return ret;
+}
+
-+static inline void gr_free_thread_stack(struct task_struct *tsk, unsigned long *stack)
++static inline void gr_free_thread_stack(struct task_struct *tsk)
+{
+ unmap_process_stacks(tsk);
+}
@@ -144675,44 +149248,59 @@ index 9f8dae7..ead3c277 100644
+{
+ return alloc_thread_stack_node(tsk, node);
+}
-+static inline void gr_free_thread_stack(struct task_struct *tsk, unsigned long *stack)
++static inline void gr_free_thread_stack(struct task_struct *tsk)
+{
-+ free_thread_stack(stack);
++ free_thread_stack(tsk);
+}
+#endif
+
++const void *gr_convert_stack_address_to_lowmem(const void *buf)
++{
++#ifdef CONFIG_GRKERNSEC_KSTACKOVERFLOW
++ if (object_starts_on_stack(buf))
++ return buf - current->stack + current->lowmem_stack;
++ else if (object_starts_on_irq_stack(buf))
++ return buf - (const void *)__this_cpu_read(irq_stack_ptr) + (const void *)__this_cpu_read(irq_stack_ptr_lowmem);
++#endif
++ return buf;
++}
++EXPORT_SYMBOL_GPL(gr_convert_stack_address_to_lowmem);
++
/* SLAB cache for signal_struct structures (tsk->signal) */
static struct kmem_cache *signal_cachep;
-@@ -213,10 +256,14 @@ struct kmem_cache *vm_area_cachep;
- /* SLAB cache for mm_struct structures (tsk->mm) */
- static struct kmem_cache *mm_cachep;
+@@ -279,7 +334,6 @@ static struct kmem_cache *mm_cachep;
--static void account_kernel_stack(unsigned long *stack, int account)
-+static void account_kernel_stack(struct task_struct *tsk, unsigned long *stack, int account)
+ static void account_kernel_stack(struct task_struct *tsk, int account)
{
- /* All stack pages are in the same zone and belong to the same memcg. */
+- void *stack = task_stack_page(tsk);
+ struct vm_struct *vm = task_stack_vm_area(tsk);
+
+ BUILD_BUG_ON(IS_ENABLED(CONFIG_VMAP_STACK) && PAGE_SIZE % 1024 != 0);
+@@ -303,8 +357,12 @@ static void account_kernel_stack(struct task_struct *tsk, int account)
+ * All stack pages are in the same zone and belong to the
+ * same memcg.
+ */
+#ifdef CONFIG_GRKERNSEC_KSTACKOVERFLOW
-+ struct page *first_page = virt_to_page(tsk->lowmem_stack);
++ struct page *first_page = virt_to_page(tsk->lowmem_stack);
+#else
- struct page *first_page = virt_to_page(stack);
++ void *stack = task_stack_page(tsk);
+ struct page *first_page = virt_to_page(stack);
+-
+#endif
+ mod_zone_page_state(page_zone(first_page), NR_KERNEL_STACK_KB,
+ THREAD_SIZE / 1024 * account);
- mod_zone_page_state(page_zone(first_page), NR_KERNEL_STACK_KB,
- THREAD_SIZE / 1024 * account);
-@@ -228,9 +275,9 @@ static void account_kernel_stack(unsigned long *stack, int account)
+@@ -320,7 +378,7 @@ static void release_task_stack(struct task_struct *tsk)
- void free_task(struct task_struct *tsk)
- {
-- account_kernel_stack(tsk->stack, -1);
-+ account_kernel_stack(tsk, tsk->stack, -1);
+ account_kernel_stack(tsk, -1);
arch_release_thread_stack(tsk->stack);
-- free_thread_stack(tsk->stack);
-+ gr_free_thread_stack(tsk, tsk->stack);
- rt_mutex_debug_task_free(tsk);
- ftrace_graph_exit_task(tsk);
- put_seccomp_filter(tsk);
-@@ -297,7 +344,7 @@ static void set_max_threads(unsigned int max_threads_suggested)
+- free_thread_stack(tsk);
++ gr_free_thread_stack(tsk);
+ tsk->stack = NULL;
+ #ifdef CONFIG_VMAP_STACK
+ tsk->stack_vm_area = NULL;
+@@ -422,7 +480,7 @@ static void set_max_threads(unsigned int max_threads_suggested)
#ifdef CONFIG_ARCH_WANTS_DYNAMIC_TASK_STRUCT
/* Initialized by the architecture: */
@@ -144721,7 +149309,7 @@ index 9f8dae7..ead3c277 100644
#endif
void __init fork_init(void)
-@@ -307,9 +354,12 @@ void __init fork_init(void)
+@@ -433,9 +491,14 @@ void __init fork_init(void)
#define ARCH_MIN_TASKALIGN L1_CACHE_BYTES
#endif
/* create a slab on which task_structs can be allocated */
@@ -144731,20 +149319,22 @@ index 9f8dae7..ead3c277 100644
- SLAB_PANIC|SLAB_NOTRACK|SLAB_ACCOUNT, NULL);
+ SLAB_PANIC|SLAB_NOTRACK|SLAB_ACCOUNT,
+ offsetof(struct task_struct, blocked),
-+ sizeof(init_task.blocked) + sizeof(init_task.saved_sigmask),
++ offsetof(struct task_struct, saved_sigmask) -
++ offsetof(struct task_struct, blocked) +
++ sizeof(init_task.saved_sigmask),
+ NULL);
#endif
/* do the arch specific task caches init */
-@@ -342,6 +392,7 @@ static struct task_struct *dup_task_struct(struct task_struct *orig, int node)
- {
+@@ -473,6 +536,7 @@ static struct task_struct *dup_task_struct(struct task_struct *orig, int node)
struct task_struct *tsk;
unsigned long *stack;
+ struct vm_struct *stack_vm_area;
+ void *lowmem_stack;
int err;
if (node == NUMA_NO_NODE)
-@@ -350,7 +401,7 @@ static struct task_struct *dup_task_struct(struct task_struct *orig, int node)
+@@ -481,7 +545,7 @@ static struct task_struct *dup_task_struct(struct task_struct *orig, int node)
if (!tsk)
return NULL;
@@ -144753,18 +149343,17 @@ index 9f8dae7..ead3c277 100644
if (!stack)
goto free_tsk;
-@@ -359,6 +410,10 @@ static struct task_struct *dup_task_struct(struct task_struct *orig, int node)
- goto free_stack;
-
+@@ -495,6 +559,9 @@ static struct task_struct *dup_task_struct(struct task_struct *orig, int node)
+ * functions again.
+ */
tsk->stack = stack;
+#ifdef CONFIG_GRKERNSEC_KSTACKOVERFLOW
+ tsk->lowmem_stack = lowmem_stack;
+#endif
-+
- #ifdef CONFIG_SECCOMP
- /*
- * We must handle setting up seccomp filters once we're under
-@@ -375,7 +430,7 @@ static struct task_struct *dup_task_struct(struct task_struct *orig, int node)
+ #ifdef CONFIG_VMAP_STACK
+ tsk->stack_vm_area = stack_vm_area;
+ #endif
+@@ -521,7 +588,7 @@ static struct task_struct *dup_task_struct(struct task_struct *orig, int node)
set_task_stack_end_magic(tsk);
#ifdef CONFIG_CC_STACKPROTECTOR
@@ -144773,27 +149362,18 @@ index 9f8dae7..ead3c277 100644
#endif
/*
-@@ -390,26 +445,92 @@ static struct task_struct *dup_task_struct(struct task_struct *orig, int node)
- tsk->task_frag.page = NULL;
- tsk->wake_q.next = NULL;
-
-- account_kernel_stack(stack, 1);
-+ account_kernel_stack(tsk, stack, 1);
-
- kcov_task_init(tsk);
-
+@@ -543,20 +610,86 @@ static struct task_struct *dup_task_struct(struct task_struct *orig, int node)
return tsk;
free_stack:
-- free_thread_stack(stack);
-+ gr_free_thread_stack(tsk, stack);
+- free_thread_stack(tsk);
++ gr_free_thread_stack(tsk);
free_tsk:
free_task_struct(tsk);
return NULL;
}
#ifdef CONFIG_MMU
--static int dup_mmap(struct mm_struct *mm, struct mm_struct *oldmm)
+static struct vm_area_struct *dup_vma(struct mm_struct *mm, struct mm_struct *oldmm, struct vm_area_struct *mpnt)
+{
+ struct vm_area_struct *tmp;
@@ -144861,7 +149441,8 @@ index 9f8dae7..ead3c277 100644
+ return NULL;
+}
+
-+static __latent_entropy int dup_mmap(struct mm_struct *mm, struct mm_struct *oldmm)
+ static __latent_entropy int dup_mmap(struct mm_struct *mm,
+ struct mm_struct *oldmm)
{
struct vm_area_struct *mpnt, *tmp, *prev, **pprev;
struct rb_node **rb_link, *rb_parent;
@@ -144870,7 +149451,7 @@ index 9f8dae7..ead3c277 100644
uprobe_start_dup_mmap();
if (down_write_killable(&oldmm->mmap_sem)) {
-@@ -443,52 +564,14 @@ static int dup_mmap(struct mm_struct *mm, struct mm_struct *oldmm)
+@@ -590,52 +723,14 @@ static __latent_entropy int dup_mmap(struct mm_struct *mm,
prev = NULL;
for (mpnt = oldmm->mmap; mpnt; mpnt = mpnt->vm_next) {
@@ -144927,7 +149508,7 @@ index 9f8dae7..ead3c277 100644
}
/*
-@@ -520,6 +603,38 @@ static int dup_mmap(struct mm_struct *mm, struct mm_struct *oldmm)
+@@ -667,6 +762,38 @@ static __latent_entropy int dup_mmap(struct mm_struct *mm,
if (retval)
goto out;
}
@@ -144966,7 +149547,7 @@ index 9f8dae7..ead3c277 100644
/* a new mm has just been created */
arch_dup_mmap(oldmm, mm);
retval = 0;
-@@ -530,14 +645,6 @@ out:
+@@ -677,14 +804,6 @@ static __latent_entropy int dup_mmap(struct mm_struct *mm,
fail_uprobe_end:
uprobe_end_dup_mmap();
return retval;
@@ -144981,7 +149562,7 @@ index 9f8dae7..ead3c277 100644
}
static inline int mm_alloc_pgd(struct mm_struct *mm)
-@@ -860,8 +967,8 @@ struct mm_struct *mm_access(struct task_struct *task, unsigned int mode)
+@@ -1009,8 +1128,8 @@ struct mm_struct *mm_access(struct task_struct *task, unsigned int mode)
return ERR_PTR(err);
mm = get_task_mm(task);
@@ -144992,7 +149573,7 @@ index 9f8dae7..ead3c277 100644
mmput(mm);
mm = ERR_PTR(-EACCES);
}
-@@ -1060,13 +1167,20 @@ static int copy_fs(unsigned long clone_flags, struct task_struct *tsk)
+@@ -1209,13 +1328,20 @@ static int copy_fs(unsigned long clone_flags, struct task_struct *tsk)
spin_unlock(&fs->lock);
return -EAGAIN;
}
@@ -145014,16 +149595,7 @@ index 9f8dae7..ead3c277 100644
return 0;
}
-@@ -1299,7 +1413,7 @@ init_task_pid(struct task_struct *task, enum pid_type type, struct pid *pid)
- * parts of the process environment (as per the clone
- * flags). The actual kick-off is left to the caller.
- */
--static struct task_struct *copy_process(unsigned long clone_flags,
-+static __latent_entropy struct task_struct *copy_process(unsigned long clone_flags,
- unsigned long stack_start,
- unsigned long stack_size,
- int __user *child_tidptr,
-@@ -1371,6 +1485,9 @@ static struct task_struct *copy_process(unsigned long clone_flags,
+@@ -1521,6 +1647,9 @@ static __latent_entropy struct task_struct *copy_process(
DEBUG_LOCKS_WARN_ON(!p->softirqs_enabled);
#endif
retval = -EAGAIN;
@@ -145033,7 +149605,7 @@ index 9f8dae7..ead3c277 100644
if (atomic_read(&p->real_cred->user->processes) >=
task_rlimit(p, RLIMIT_NPROC)) {
if (p->real_cred->user != INIT_USER &&
-@@ -1629,6 +1746,16 @@ static struct task_struct *copy_process(unsigned long clone_flags,
+@@ -1779,6 +1908,16 @@ static __latent_entropy struct task_struct *copy_process(
goto bad_fork_cancel_cgroup;
}
@@ -145050,8 +149622,8 @@ index 9f8dae7..ead3c277 100644
if (likely(p->pid)) {
ptrace_init_task(p, (clone_flags & CLONE_PTRACE) || trace);
-@@ -1720,6 +1847,8 @@ bad_fork_cleanup_count:
- bad_fork_free:
+@@ -1872,6 +2011,8 @@ static __latent_entropy struct task_struct *copy_process(
+ put_task_stack(p);
free_task(p);
fork_out:
+ gr_log_forkfail(retval);
@@ -145059,15 +149631,7 @@ index 9f8dae7..ead3c277 100644
return ERR_PTR(retval);
}
-@@ -1783,6 +1912,7 @@ long _do_fork(unsigned long clone_flags,
-
- p = copy_process(clone_flags, stack_start, stack_size,
- child_tidptr, NULL, trace, tls, NUMA_NO_NODE);
-+ add_latent_entropy();
- /*
- * Do this prior waking up the new thread - the thread pointer
- * might get invalid after that point, if the thread exits quickly.
-@@ -1799,6 +1929,8 @@ long _do_fork(unsigned long clone_flags,
+@@ -1952,6 +2093,8 @@ long _do_fork(unsigned long clone_flags,
if (clone_flags & CLONE_PARENT_SETTID)
put_user(nr, parent_tidptr);
@@ -145076,7 +149640,7 @@ index 9f8dae7..ead3c277 100644
if (clone_flags & CLONE_VFORK) {
p->vfork_done = &vfork;
init_completion(&vfork);
-@@ -1931,11 +2063,12 @@ void __init proc_caches_init(void)
+@@ -2084,11 +2227,12 @@ void __init proc_caches_init(void)
* maximum number of CPU's we can ever have. The cpumask_allocation
* is at the end of the structure, exactly for that reason.
*/
@@ -145091,7 +149655,7 @@ index 9f8dae7..ead3c277 100644
mmap_init();
nsproxy_cache_init();
}
-@@ -1983,7 +2116,7 @@ static int unshare_fs(unsigned long unshare_flags, struct fs_struct **new_fsp)
+@@ -2136,7 +2280,7 @@ static int unshare_fs(unsigned long unshare_flags, struct fs_struct **new_fsp)
return 0;
/* don't need lock here; in the worst case we'll do useless copy */
@@ -145100,7 +149664,7 @@ index 9f8dae7..ead3c277 100644
return 0;
*new_fsp = copy_fs_struct(fs);
-@@ -2096,7 +2229,8 @@ SYSCALL_DEFINE1(unshare, unsigned long, unshare_flags)
+@@ -2249,7 +2393,8 @@ SYSCALL_DEFINE1(unshare, unsigned long, unshare_flags)
fs = current->fs;
spin_lock(&fs->lock);
current->fs = new_fs;
@@ -145110,7 +149674,7 @@ index 9f8dae7..ead3c277 100644
new_fs = NULL;
else
new_fs = fs;
-@@ -2160,7 +2294,7 @@ int unshare_files(struct files_struct **displaced)
+@@ -2313,7 +2458,7 @@ int unshare_files(struct files_struct **displaced)
int sysctl_max_threads(struct ctl_table *table, int write,
void __user *buffer, size_t *lenp, loff_t *ppos)
{
@@ -145120,7 +149684,7 @@ index 9f8dae7..ead3c277 100644
int threads = max_threads;
int min = MIN_THREADS;
diff --git a/kernel/futex.c b/kernel/futex.c
-index 46cb3a3..96207f8 100644
+index 2c4be46..46c5c89 100644
--- a/kernel/futex.c
+++ b/kernel/futex.c
@@ -210,7 +210,7 @@ struct futex_pi_state {
@@ -145141,7 +149705,7 @@ index 46cb3a3..96207f8 100644
static const struct futex_q futex_q_init = {
/* list gets initialized in queue_me()*/
-@@ -494,6 +494,11 @@ get_futex_key(u32 __user *uaddr, int fshared, union futex_key *key, int rw)
+@@ -503,6 +503,11 @@ get_futex_key(u32 __user *uaddr, int fshared, union futex_key *key, int rw)
struct address_space *mapping;
int err, ro = 0;
@@ -145153,7 +149717,7 @@ index 46cb3a3..96207f8 100644
/*
* The futex address must be "naturally" aligned.
*/
-@@ -3270,6 +3275,7 @@ static void __init futex_detect_cmpxchg(void)
+@@ -3279,6 +3284,7 @@ static void __init futex_detect_cmpxchg(void)
{
#ifndef CONFIG_HAVE_FUTEX_CMPXCHG
u32 curval;
@@ -145161,7 +149725,7 @@ index 46cb3a3..96207f8 100644
/*
* This will fail and we want it. Some arch implementations do
-@@ -3281,8 +3287,11 @@ static void __init futex_detect_cmpxchg(void)
+@@ -3290,8 +3296,11 @@ static void __init futex_detect_cmpxchg(void)
* implementation, the non-functional ones will return
* -ENOSYS.
*/
@@ -145187,7 +149751,7 @@ index 4ae3232..5adee02 100644
{
compat_uptr_t base = ptr_to_compat(entry);
diff --git a/kernel/irq/manage.c b/kernel/irq/manage.c
-index 9d592c6..9f6bd5e 100644
+index 6b66959..86dbb48 100644
--- a/kernel/irq/manage.c
+++ b/kernel/irq/manage.c
@@ -972,7 +972,7 @@ static int irq_thread(void *data)
@@ -145200,10 +149764,10 @@ index 9d592c6..9f6bd5e 100644
irq_wake_secondary(desc, action);
diff --git a/kernel/irq/msi.c b/kernel/irq/msi.c
-index 19e9dfb..0766454 100644
+index 8a3e8727..8560eca 100644
--- a/kernel/irq/msi.c
+++ b/kernel/irq/msi.c
-@@ -214,16 +214,18 @@ static void msi_domain_update_dom_ops(struct msi_domain_info *info)
+@@ -236,16 +236,18 @@ static void msi_domain_update_dom_ops(struct msi_domain_info *info)
return;
}
@@ -145227,7 +149791,7 @@ index 19e9dfb..0766454 100644
}
static void msi_domain_update_chip_ops(struct msi_domain_info *info)
-@@ -231,8 +233,11 @@ static void msi_domain_update_chip_ops(struct msi_domain_info *info)
+@@ -253,8 +255,11 @@ static void msi_domain_update_chip_ops(struct msi_domain_info *info)
struct irq_chip *chip = info->chip;
BUG_ON(!chip || !chip->irq_mask || !chip->irq_unmask);
@@ -145255,7 +149819,7 @@ index 5707f97..d526a3d 100644
if (handled != desc->threads_handled_last) {
action_ret = IRQ_HANDLED;
diff --git a/kernel/jump_label.c b/kernel/jump_label.c
-index 93ad6c1..139ea2a 100644
+index a9b8cf5..fc8fafe 100644
--- a/kernel/jump_label.c
+++ b/kernel/jump_label.c
@@ -15,6 +15,7 @@
@@ -145276,7 +149840,7 @@ index 93ad6c1..139ea2a 100644
}
static void jump_label_update(struct static_key *key);
-@@ -475,10 +478,12 @@ static void jump_label_invalidate_module_init(struct module *mod)
+@@ -482,10 +485,12 @@ static void jump_label_invalidate_module_init(struct module *mod)
struct jump_entry *iter_stop = iter_start + mod->num_jump_entries;
struct jump_entry *iter;
@@ -145481,7 +150045,7 @@ index 0277d12..2d2899c 100644
info = call_usermodehelper_setup(modprobe_path, argv, envp, GFP_KERNEL,
NULL, free_modprobe_argv, NULL);
-@@ -121,9 +122,8 @@ out:
+@@ -121,9 +122,8 @@ static int call_modprobe(char *module_name, int wait)
* If module auto-loading support is disabled then this function
* becomes a no-operation.
*/
@@ -145653,7 +150217,7 @@ index 0277d12..2d2899c 100644
kernel_cap_t new_cap;
int err, i;
diff --git a/kernel/kprobes.c b/kernel/kprobes.c
-index d10ab6b..1725fbd 100644
+index d630954..9c0f54d 100644
--- a/kernel/kprobes.c
+++ b/kernel/kprobes.c
@@ -31,6 +31,9 @@
@@ -145727,7 +150291,7 @@ index ee1bc1b..a351806 100644
.name = "notes",
.mode = S_IRUGO,
diff --git a/kernel/locking/lockdep.c b/kernel/locking/lockdep.c
-index 589d763..3962223 100644
+index 4d7ffc0..e0a4504 100644
--- a/kernel/locking/lockdep.c
+++ b/kernel/locking/lockdep.c
@@ -603,6 +603,10 @@ static int static_obj(void *obj)
@@ -145749,7 +150313,7 @@ index 589d763..3962223 100644
printk("the code is fine but needs lockdep annotation.\n");
printk("turning off the locking correctness validator.\n");
dump_stack();
-@@ -3231,7 +3236,7 @@ static int __lock_acquire(struct lockdep_map *lock, unsigned int subclass,
+@@ -3234,7 +3239,7 @@ static int __lock_acquire(struct lockdep_map *lock, unsigned int subclass,
if (!class)
return 0;
}
@@ -145808,7 +150372,7 @@ index a0f61ef..b6aef3c 100644
seq_printf(m, "%40s %14lu %29s %pS\n",
name, stats->contending_point[i],
diff --git a/kernel/module.c b/kernel/module.c
-index 529efae..05499fa 100644
+index 0e54d5b..f9d983b 100644
--- a/kernel/module.c
+++ b/kernel/module.c
@@ -61,6 +61,7 @@
@@ -146012,7 +150576,7 @@ index 529efae..05499fa 100644
pr_warn("%s: per-cpu alignment %li > %li\n",
mod->name, align, PAGE_SIZE);
align = PAGE_SIZE;
-@@ -1198,7 +1243,7 @@ struct module_attribute module_uevent =
+@@ -1200,7 +1245,7 @@ struct module_attribute module_uevent =
static ssize_t show_coresize(struct module_attribute *mattr,
struct module_kobject *mk, char *buffer)
{
@@ -146021,7 +150585,7 @@ index 529efae..05499fa 100644
}
static struct module_attribute modinfo_coresize =
-@@ -1207,7 +1252,7 @@ static struct module_attribute modinfo_coresize =
+@@ -1209,7 +1254,7 @@ static struct module_attribute modinfo_coresize =
static ssize_t show_initsize(struct module_attribute *mattr,
struct module_kobject *mk, char *buffer)
{
@@ -146030,20 +150594,21 @@ index 529efae..05499fa 100644
}
static struct module_attribute modinfo_initsize =
-@@ -1299,12 +1344,29 @@ static int check_version(Elf_Shdr *sechdrs,
+@@ -1301,13 +1346,29 @@ static int check_version(Elf_Shdr *sechdrs,
goto bad_version;
}
+- /* Broken toolchain. Warn once, then let it go.. */
+#ifdef CONFIG_GRKERNSEC_RANDSTRUCT
+ /*
+ * avoid potentially printing jibberish on attempted load
+ * of a module randomized with a different seed
+ */
-+ pr_warn("no symbol version for %s\n", symname);
++ pr_warn_once("no symbol version for %s\n", symname);
+#else
- pr_warn("%s: no symbol version for %s\n", mod->name, symname);
+ pr_warn_once("%s: no symbol version for %s\n", mod->name, symname);
+#endif
- return 0;
+ return 1;
bad_version:
+#ifdef CONFIG_GRKERNSEC_RANDSTRUCT
@@ -146060,7 +150625,7 @@ index 529efae..05499fa 100644
return 0;
}
-@@ -1432,7 +1494,7 @@ resolve_symbol_wait(struct module *mod,
+@@ -1435,7 +1496,7 @@ resolve_symbol_wait(struct module *mod,
*/
#ifdef CONFIG_SYSFS
@@ -146069,7 +150634,7 @@ index 529efae..05499fa 100644
static inline bool sect_empty(const Elf_Shdr *sect)
{
return !(sect->sh_flags & SHF_ALLOC) || sect->sh_size == 0;
-@@ -1570,7 +1632,7 @@ static void add_notes_attrs(struct module *mod, const struct load_info *info)
+@@ -1573,7 +1634,7 @@ static void add_notes_attrs(struct module *mod, const struct load_info *info)
{
unsigned int notes, loaded, i;
struct module_notes_attrs *notes_attrs;
@@ -146078,7 +150643,7 @@ index 529efae..05499fa 100644
/* failed to create section attributes, so can't create notes */
if (!mod->sect_attrs)
-@@ -1682,7 +1744,7 @@ static void del_usage_links(struct module *mod)
+@@ -1685,7 +1746,7 @@ static void del_usage_links(struct module *mod)
static int module_add_modinfo_attrs(struct module *mod)
{
struct module_attribute *attr;
@@ -146087,7 +150652,7 @@ index 529efae..05499fa 100644
int error = 0;
int i;
-@@ -1869,40 +1931,40 @@ static void mod_sysfs_teardown(struct module *mod)
+@@ -1872,40 +1933,40 @@ static void mod_sysfs_teardown(struct module *mod)
static void frob_text(const struct module_layout *layout,
int (*set_memory)(unsigned long start, int num_pages))
{
@@ -146143,7 +150708,7 @@ index 529efae..05499fa 100644
}
/* livepatching wants to disable read-only so it can frob module. */
-@@ -1987,7 +2049,15 @@ static void disable_ro_nx(const struct module_layout *layout)
+@@ -1990,7 +2051,15 @@ static void disable_ro_nx(const struct module_layout *layout)
}
#else
@@ -146160,7 +150725,7 @@ index 529efae..05499fa 100644
static void module_enable_nx(const struct module *mod) { }
static void module_disable_nx(const struct module *mod) { }
#endif
-@@ -2124,16 +2194,19 @@ static void free_module(struct module *mod)
+@@ -2127,16 +2196,19 @@ static void free_module(struct module *mod)
/* This may be empty, but that's OK */
disable_ro_nx(&mod->init_layout);
module_arch_freeing_init(mod);
@@ -146183,7 +150748,7 @@ index 529efae..05499fa 100644
#ifdef CONFIG_MPU
update_protections(current->mm);
-@@ -2202,9 +2275,31 @@ static int simplify_symbols(struct module *mod, const struct load_info *info)
+@@ -2205,9 +2277,31 @@ static int simplify_symbols(struct module *mod, const struct load_info *info)
int ret = 0;
const struct kernel_symbol *ksym;
@@ -146215,7 +150780,7 @@ index 529efae..05499fa 100644
switch (sym[i].st_shndx) {
case SHN_COMMON:
/* Ignore common symbols */
-@@ -2233,7 +2328,9 @@ static int simplify_symbols(struct module *mod, const struct load_info *info)
+@@ -2236,7 +2330,9 @@ static int simplify_symbols(struct module *mod, const struct load_info *info)
ksym = resolve_symbol_wait(mod, info, name);
/* Ok if resolved. */
if (ksym && !IS_ERR(ksym)) {
@@ -146225,7 +150790,7 @@ index 529efae..05499fa 100644
break;
}
-@@ -2252,11 +2349,20 @@ static int simplify_symbols(struct module *mod, const struct load_info *info)
+@@ -2255,11 +2351,20 @@ static int simplify_symbols(struct module *mod, const struct load_info *info)
secbase = (unsigned long)mod_percpu(mod);
else
secbase = info->sechdrs[sym[i].st_shndx].sh_addr;
@@ -146246,7 +150811,7 @@ index 529efae..05499fa 100644
return ret;
}
-@@ -2345,26 +2451,12 @@ static void layout_sections(struct module *mod, struct load_info *info)
+@@ -2348,26 +2453,12 @@ static void layout_sections(struct module *mod, struct load_info *info)
|| s->sh_entsize != ~0UL
|| strstarts(sname, ".init"))
continue;
@@ -146277,7 +150842,7 @@ index 529efae..05499fa 100644
}
pr_debug("Init section allocation order:\n");
-@@ -2378,30 +2470,13 @@ static void layout_sections(struct module *mod, struct load_info *info)
+@@ -2381,30 +2472,13 @@ static void layout_sections(struct module *mod, struct load_info *info)
|| s->sh_entsize != ~0UL
|| !strstarts(sname, ".init"))
continue;
@@ -146313,7 +150878,7 @@ index 529efae..05499fa 100644
}
}
-@@ -2579,7 +2654,7 @@ static void layout_symtab(struct module *mod, struct load_info *info)
+@@ -2582,7 +2656,7 @@ static void layout_symtab(struct module *mod, struct load_info *info)
/* Put symbol section at end of init part of module. */
symsect->sh_flags |= SHF_ALLOC;
@@ -146322,7 +150887,7 @@ index 529efae..05499fa 100644
info->index.sym) | INIT_OFFSET_MASK;
pr_debug("\t%s\n", info->secstrings + symsect->sh_name);
-@@ -2597,23 +2672,23 @@ static void layout_symtab(struct module *mod, struct load_info *info)
+@@ -2600,23 +2674,23 @@ static void layout_symtab(struct module *mod, struct load_info *info)
}
/* Append room for core symbols at end of core part. */
@@ -146355,7 +150920,7 @@ index 529efae..05499fa 100644
}
/*
-@@ -2630,7 +2705,9 @@ static void add_kallsyms(struct module *mod, const struct load_info *info)
+@@ -2633,7 +2707,9 @@ static void add_kallsyms(struct module *mod, const struct load_info *info)
Elf_Shdr *symsec = &info->sechdrs[info->index.sym];
/* Set up to point into init section. */
@@ -146366,7 +150931,7 @@ index 529efae..05499fa 100644
mod->kallsyms->symtab = (void *)symsec->sh_addr;
mod->kallsyms->num_symtab = symsec->sh_size / sizeof(Elf_Sym);
-@@ -2643,8 +2720,8 @@ static void add_kallsyms(struct module *mod, const struct load_info *info)
+@@ -2646,8 +2722,8 @@ static void add_kallsyms(struct module *mod, const struct load_info *info)
= elf_type(&mod->kallsyms->symtab[i], info);
/* Now populate the cut down core kallsyms for after init. */
@@ -146377,7 +150942,7 @@ index 529efae..05499fa 100644
src = mod->kallsyms->symtab;
for (ndst = i = 0; i < mod->kallsyms->num_symtab; i++) {
if (i == 0 || is_livepatch_module(mod) ||
-@@ -2657,6 +2734,8 @@ static void add_kallsyms(struct module *mod, const struct load_info *info)
+@@ -2660,6 +2736,8 @@ static void add_kallsyms(struct module *mod, const struct load_info *info)
}
}
mod->core_kallsyms.num_symtab = ndst;
@@ -146386,7 +150951,7 @@ index 529efae..05499fa 100644
}
#else
static inline void layout_symtab(struct module *mod, struct load_info *info)
-@@ -2924,7 +3003,15 @@ static struct module *setup_load_info(struct load_info *info, int flags)
+@@ -2930,7 +3008,15 @@ static struct module *setup_load_info(struct load_info *info, int flags)
mod = (void *)info->sechdrs[info->index.mod].sh_addr;
if (info->index.sym == 0) {
@@ -146402,7 +150967,7 @@ index 529efae..05499fa 100644
return ERR_PTR(-ENOEXEC);
}
-@@ -2940,8 +3027,16 @@ static struct module *setup_load_info(struct load_info *info, int flags)
+@@ -2946,8 +3032,16 @@ static struct module *setup_load_info(struct load_info *info, int flags)
static int check_modinfo(struct module *mod, struct load_info *info, int flags)
{
const char *modmagic = get_modinfo(info, "vermagic");
@@ -146419,7 +150984,7 @@ index 529efae..05499fa 100644
if (flags & MODULE_INIT_IGNORE_VERMAGIC)
modmagic = NULL;
-@@ -2974,7 +3069,7 @@ static int check_modinfo(struct module *mod, struct load_info *info, int flags)
+@@ -2980,7 +3074,7 @@ static int check_modinfo(struct module *mod, struct load_info *info, int flags)
return err;
/* Set up license info based on the info section */
@@ -146428,7 +150993,7 @@ index 529efae..05499fa 100644
return 0;
}
-@@ -3071,7 +3166,7 @@ static int move_module(struct module *mod, struct load_info *info)
+@@ -3077,7 +3171,7 @@ static int move_module(struct module *mod, struct load_info *info)
void *ptr;
/* Do the allocs. */
@@ -146437,7 +151002,7 @@ index 529efae..05499fa 100644
/*
* The pointer to this block is stored in the module structure
* which is inside the block. Just mark it as not being a
-@@ -3081,11 +3176,11 @@ static int move_module(struct module *mod, struct load_info *info)
+@@ -3087,11 +3181,11 @@ static int move_module(struct module *mod, struct load_info *info)
if (!ptr)
return -ENOMEM;
@@ -146453,7 +151018,7 @@ index 529efae..05499fa 100644
/*
* The pointer to this block is stored in the module structure
* which is inside the block. This block doesn't need to be
-@@ -3094,13 +3189,45 @@ static int move_module(struct module *mod, struct load_info *info)
+@@ -3100,13 +3194,45 @@ static int move_module(struct module *mod, struct load_info *info)
*/
kmemleak_ignore(ptr);
if (!ptr) {
@@ -146503,7 +151068,7 @@ index 529efae..05499fa 100644
/* Transfer each section which specifies SHF_ALLOC */
pr_debug("final section addresses:\n");
-@@ -3111,16 +3238,45 @@ static int move_module(struct module *mod, struct load_info *info)
+@@ -3117,16 +3243,45 @@ static int move_module(struct module *mod, struct load_info *info)
if (!(shdr->sh_flags & SHF_ALLOC))
continue;
@@ -146556,7 +151121,7 @@ index 529efae..05499fa 100644
pr_debug("\t0x%lx %s\n",
(long)shdr->sh_addr, info->secstrings + shdr->sh_name);
}
-@@ -3182,12 +3338,12 @@ static void flush_module_icache(const struct module *mod)
+@@ -3188,12 +3343,12 @@ static void flush_module_icache(const struct module *mod)
* Do it before processing of module parameters, so the module
* can provide parameter accessor functions of its own.
*/
@@ -146575,7 +151140,7 @@ index 529efae..05499fa 100644
set_fs(old_fs);
}
-@@ -3279,8 +3435,10 @@ static void module_deallocate(struct module *mod, struct load_info *info)
+@@ -3285,8 +3440,10 @@ static void module_deallocate(struct module *mod, struct load_info *info)
{
percpu_modfree(mod);
module_arch_freeing_init(mod);
@@ -146588,7 +151153,7 @@ index 529efae..05499fa 100644
}
int __weak module_finalize(const Elf_Ehdr *hdr,
-@@ -3293,7 +3451,9 @@ int __weak module_finalize(const Elf_Ehdr *hdr,
+@@ -3299,7 +3456,9 @@ int __weak module_finalize(const Elf_Ehdr *hdr,
static int post_relocation(struct module *mod, const struct load_info *info)
{
/* Sort exception table now relocations are done. */
@@ -146598,7 +151163,7 @@ index 529efae..05499fa 100644
/* Copy relocated percpu area over. */
percpu_modcopy(mod, (void *)info->sechdrs[info->index.pcpu].sh_addr,
-@@ -3341,13 +3501,15 @@ static void do_mod_ctors(struct module *mod)
+@@ -3347,13 +3506,15 @@ static void do_mod_ctors(struct module *mod)
/* For freeing module_init on success, in case kallsyms traversing */
struct mod_initfree {
struct rcu_head rcu;
@@ -146616,7 +151181,7 @@ index 529efae..05499fa 100644
kfree(m);
}
-@@ -3367,7 +3529,8 @@ static noinline int do_init_module(struct module *mod)
+@@ -3373,7 +3534,8 @@ static noinline int do_init_module(struct module *mod)
ret = -ENOMEM;
goto fail;
}
@@ -146626,7 +151191,7 @@ index 529efae..05499fa 100644
/*
* We want to find out whether @mod uses async during init. Clear
-@@ -3427,11 +3590,10 @@ static noinline int do_init_module(struct module *mod)
+@@ -3433,11 +3595,10 @@ static noinline int do_init_module(struct module *mod)
mod_tree_remove_init(mod);
disable_ro_nx(&mod->init_layout);
module_arch_freeing_init(mod);
@@ -146642,7 +151207,7 @@ index 529efae..05499fa 100644
/*
* We want to free module_init, but be aware that kallsyms may be
* walking this with preempt disabled. In all the failure paths, we
-@@ -3630,9 +3792,38 @@ static int load_module(struct load_info *info, const char __user *uargs,
+@@ -3636,9 +3797,38 @@ static int load_module(struct load_info *info, const char __user *uargs,
if (err)
goto free_unload;
@@ -146681,7 +151246,7 @@ index 529efae..05499fa 100644
/* Fix up syms, so that st_value is a pointer to location. */
err = simplify_symbols(mod, info);
if (err < 0)
-@@ -3648,13 +3839,6 @@ static int load_module(struct load_info *info, const char __user *uargs,
+@@ -3654,13 +3844,6 @@ static int load_module(struct load_info *info, const char __user *uargs,
flush_module_icache(mod);
@@ -146695,7 +151260,7 @@ index 529efae..05499fa 100644
dynamic_debug_setup(info->debug, info->num_debug);
/* Ftrace init must be called in the MODULE_STATE_UNFORMED state */
-@@ -3719,11 +3903,10 @@ static int load_module(struct load_info *info, const char __user *uargs,
+@@ -3725,11 +3908,10 @@ static int load_module(struct load_info *info, const char __user *uargs,
ddebug_cleanup:
dynamic_debug_remove(info->debug);
synchronize_sched();
@@ -146708,7 +151273,7 @@ index 529efae..05499fa 100644
free_unload:
module_unload_free(mod);
unlink_mod:
-@@ -3743,7 +3926,8 @@ static int load_module(struct load_info *info, const char __user *uargs,
+@@ -3749,7 +3931,8 @@ static int load_module(struct load_info *info, const char __user *uargs,
*/
ftrace_release_mod(mod);
/* Free lock-classes; relies on the preceding sync_rcu() */
@@ -146718,7 +151283,7 @@ index 529efae..05499fa 100644
module_deallocate(mod, info);
free_copy:
-@@ -3831,10 +4015,16 @@ static const char *get_ksymbol(struct module *mod,
+@@ -3837,10 +4020,16 @@ static const char *get_ksymbol(struct module *mod,
struct mod_kallsyms *kallsyms = rcu_dereference_sched(mod->kallsyms);
/* At worse, next value is at end of module */
@@ -146738,7 +151303,7 @@ index 529efae..05499fa 100644
/* Scan for closest preceding symbol, and next symbol. (ELF
starts real symbols at 1). */
-@@ -4087,7 +4277,7 @@ static int m_show(struct seq_file *m, void *p)
+@@ -4093,7 +4282,7 @@ static int m_show(struct seq_file *m, void *p)
return 0;
seq_printf(m, "%s %u",
@@ -146747,7 +151312,7 @@ index 529efae..05499fa 100644
print_unload_info(m, mod);
/* Informative for users. */
-@@ -4096,7 +4286,7 @@ static int m_show(struct seq_file *m, void *p)
+@@ -4102,7 +4291,7 @@ static int m_show(struct seq_file *m, void *p)
mod->state == MODULE_STATE_COMING ? "Loading" :
"Live");
/* Used by oprofile and other similar tools. */
@@ -146756,7 +151321,7 @@ index 529efae..05499fa 100644
/* Taints info */
if (mod->taints)
-@@ -4132,7 +4322,17 @@ static const struct file_operations proc_modules_operations = {
+@@ -4138,7 +4327,17 @@ static const struct file_operations proc_modules_operations = {
static int __init proc_modules_init(void)
{
@@ -146774,7 +151339,7 @@ index 529efae..05499fa 100644
return 0;
}
module_init(proc_modules_init);
-@@ -4193,7 +4393,15 @@ struct module *__module_address(unsigned long addr)
+@@ -4199,7 +4398,15 @@ struct module *__module_address(unsigned long addr)
{
struct module *mod;
@@ -146791,7 +151356,7 @@ index 529efae..05499fa 100644
return NULL;
module_assert_mutex_or_preempt();
-@@ -4236,11 +4444,21 @@ bool is_module_text_address(unsigned long addr)
+@@ -4242,11 +4449,21 @@ bool is_module_text_address(unsigned long addr)
*/
struct module *__module_text_address(unsigned long addr)
{
@@ -146816,7 +151381,7 @@ index 529efae..05499fa 100644
mod = NULL;
}
return mod;
-@@ -4270,7 +4488,7 @@ void print_modules(void)
+@@ -4276,7 +4493,7 @@ void print_modules(void)
#ifdef CONFIG_MODVERSIONS
/* Generate the signature for all relevant module structures here.
* If these change, we don't want to try to parse the module. */
@@ -146882,10 +151447,10 @@ index fd2c9ac..6263e05 100644
return -ENOENT;
}
diff --git a/kernel/padata.c b/kernel/padata.c
-index 9932788..7052e20 100644
+index 7848f05..424c303 100644
--- a/kernel/padata.c
+++ b/kernel/padata.c
-@@ -54,7 +54,7 @@ static int padata_cpu_hash(struct parallel_data *pd)
+@@ -55,7 +55,7 @@ static int padata_cpu_hash(struct parallel_data *pd)
* seq_nr mod. number of cpus in use.
*/
@@ -146894,7 +151459,7 @@ index 9932788..7052e20 100644
cpu_index = seq_nr % cpumask_weight(pd->cpumask.pcpu);
return padata_index_to_cpu(pd, cpu_index);
-@@ -428,7 +428,7 @@ static struct parallel_data *padata_alloc_pd(struct padata_instance *pinst,
+@@ -429,7 +429,7 @@ static struct parallel_data *padata_alloc_pd(struct padata_instance *pinst,
padata_init_pqueues(pd);
padata_init_squeues(pd);
setup_timer(&pd->timer, padata_reorder_timer, (unsigned long)pd);
@@ -146904,7 +151469,7 @@ index 9932788..7052e20 100644
atomic_set(&pd->refcnt, 0);
pd->pinst = pinst;
diff --git a/kernel/panic.c b/kernel/panic.c
-index ca8cea1..2de8171 100644
+index e6480e2..fb9cd2a 100644
--- a/kernel/panic.c
+++ b/kernel/panic.c
@@ -56,7 +56,7 @@ EXPORT_SYMBOL(panic_blink);
@@ -146916,7 +151481,7 @@ index ca8cea1..2de8171 100644
{
while (1)
cpu_relax();
-@@ -488,11 +488,11 @@ void __warn(const char *file, int line, void *caller, unsigned taint,
+@@ -521,11 +521,11 @@ void __warn(const char *file, int line, void *caller, unsigned taint,
pr_warn("------------[ cut here ]------------\n");
if (file)
@@ -146930,7 +151495,7 @@ index ca8cea1..2de8171 100644
raw_smp_processor_id(), current->pid, caller);
if (args)
-@@ -523,7 +523,7 @@ void __warn(const char *file, int line, void *caller, unsigned taint,
+@@ -556,7 +556,7 @@ void __warn(const char *file, int line, void *caller, unsigned taint,
}
#ifdef WANT_WARN_ON_SLOWPATH
@@ -146939,7 +151504,7 @@ index ca8cea1..2de8171 100644
{
struct warn_args args;
-@@ -535,7 +535,7 @@ void warn_slowpath_fmt(const char *file, int line, const char *fmt, ...)
+@@ -568,7 +568,7 @@ void warn_slowpath_fmt(const char *file, int line, const char *fmt, ...)
}
EXPORT_SYMBOL(warn_slowpath_fmt);
@@ -146948,7 +151513,7 @@ index ca8cea1..2de8171 100644
unsigned taint, const char *fmt, ...)
{
struct warn_args args;
-@@ -547,7 +547,7 @@ void warn_slowpath_fmt_taint(const char *file, int line,
+@@ -580,7 +580,7 @@ void warn_slowpath_fmt_taint(const char *file, int line,
}
EXPORT_SYMBOL(warn_slowpath_fmt_taint);
@@ -146957,7 +151522,7 @@ index ca8cea1..2de8171 100644
{
__warn(file, line, __builtin_return_address(0), TAINT_WARN, NULL, NULL);
}
-@@ -562,7 +562,8 @@ EXPORT_SYMBOL(warn_slowpath_null);
+@@ -595,7 +595,8 @@ EXPORT_SYMBOL(warn_slowpath_null);
*/
__visible void __stack_chk_fail(void)
{
@@ -147043,10 +151608,10 @@ index f66162f..e950a59 100644
return pid_nr_ns(pid, task_active_pid_ns(current));
}
diff --git a/kernel/pid_namespace.c b/kernel/pid_namespace.c
-index a65ba13..f600dbb 100644
+index eef2ce9..ed438fa 100644
--- a/kernel/pid_namespace.c
+++ b/kernel/pid_namespace.c
-@@ -274,7 +274,7 @@ static int pid_ns_ctl_handler(struct ctl_table *table, int write,
+@@ -293,7 +293,7 @@ static int pid_ns_ctl_handler(struct ctl_table *table, int write,
void __user *buffer, size_t *lenp, loff_t *ppos)
{
struct pid_namespace *pid_ns = task_active_pid_ns(current);
@@ -147056,7 +151621,7 @@ index a65ba13..f600dbb 100644
if (write && !ns_capable(pid_ns->user_ns, CAP_SYS_ADMIN))
return -EPERM;
diff --git a/kernel/power/Kconfig b/kernel/power/Kconfig
-index 68d3ebc..554935d 100644
+index e8517b6..00d81dc 100644
--- a/kernel/power/Kconfig
+++ b/kernel/power/Kconfig
@@ -34,6 +34,7 @@ config HIBERNATE_CALLBACKS
@@ -147067,65 +151632,8 @@ index 68d3ebc..554935d 100644
select HIBERNATE_CALLBACKS
select LZO_COMPRESS
select LZO_DECOMPRESS
-diff --git a/kernel/power/hibernate.c b/kernel/power/hibernate.c
-index 33c79b6..b26dbc4 100644
---- a/kernel/power/hibernate.c
-+++ b/kernel/power/hibernate.c
-@@ -306,8 +306,10 @@ static int create_image(int platform_mode)
- if (error)
- printk(KERN_ERR "PM: Error %d creating hibernation image\n",
- error);
-- if (!in_suspend)
-+ if (!in_suspend) {
- events_check_enabled = false;
-+ clear_free_pages();
-+ }
-
- platform_leave(platform_mode);
-
-@@ -1189,22 +1191,6 @@ static int __init nohibernate_setup(char *str)
- return 1;
- }
-
--static int __init page_poison_nohibernate_setup(char *str)
--{
--#ifdef CONFIG_PAGE_POISONING_ZERO
-- /*
-- * The zeroing option for page poison skips the checks on alloc.
-- * since hibernation doesn't save free pages there's no way to
-- * guarantee the pages will still be zeroed.
-- */
-- if (!strcmp(str, "on")) {
-- pr_info("Disabling hibernation due to page poisoning\n");
-- return nohibernate_setup(str);
-- }
--#endif
-- return 1;
--}
--
- __setup("noresume", noresume_setup);
- __setup("resume_offset=", resume_offset_setup);
- __setup("resume=", resume_setup);
-@@ -1212,4 +1198,3 @@ __setup("hibernate=", hibernate_setup);
- __setup("resumewait", resumewait_setup);
- __setup("resumedelay=", resumedelay_setup);
- __setup("nohibernate", nohibernate_setup);
--__setup("page_poison=", page_poison_nohibernate_setup);
-diff --git a/kernel/power/power.h b/kernel/power/power.h
-index 242d8b8..56d1d0d 100644
---- a/kernel/power/power.h
-+++ b/kernel/power/power.h
-@@ -110,6 +110,8 @@ extern int create_basic_memory_bitmaps(void);
- extern void free_basic_memory_bitmaps(void);
- extern int hibernate_preallocate_memory(void);
-
-+extern void clear_free_pages(void);
-+
- /**
- * Auxiliary structure used for reading the snapshot image data and
- * metadata from and writing them to the list of page backup entries
diff --git a/kernel/power/process.c b/kernel/power/process.c
-index 8f27d5a..e7389a0 100644
+index 2fba066..b7c664c 100644
--- a/kernel/power/process.c
+++ b/kernel/power/process.c
@@ -34,6 +34,7 @@ static int try_to_freeze_tasks(bool user_only)
@@ -147168,38 +151676,29 @@ index 8f27d5a..e7389a0 100644
if (pm_wakeup_pending()) {
diff --git a/kernel/power/snapshot.c b/kernel/power/snapshot.c
-index b022284..48d5ea6 100644
+index 4f0f060..d6c1a7d 100644
--- a/kernel/power/snapshot.c
+++ b/kernel/power/snapshot.c
-@@ -1020,6 +1020,26 @@ static void swsusp_unset_page_forbidden(struct page *page)
- memory_bm_clear_bit(forbidden_pages_map, page_to_pfn(page));
+@@ -1134,7 +1134,7 @@ void free_basic_memory_bitmaps(void)
+
+ void clear_free_pages(void)
+ {
+-#ifdef CONFIG_PAGE_POISONING_ZERO
++#if defined(CONFIG_PAX_MEMORY_SANITIZE) || defined(CONFIG_PAGE_POISONING_ZERO)
+ struct memory_bitmap *bm = free_pages_map;
+ unsigned long pfn;
+
+@@ -1151,7 +1151,7 @@ void clear_free_pages(void)
+ }
+ memory_bm_position_reset(bm);
+ pr_info("PM: free pages cleared after restore\n");
+-#endif /* PAGE_POISONING_ZERO */
++#endif /* CONFIG_PAX_MEMORY_SANITIZE || PAGE_POISONING_ZERO */
}
-+void clear_free_pages(void)
-+{
-+ struct memory_bitmap *bm = free_pages_map;
-+ unsigned long pfn;
-+
-+ if (WARN_ON(!(free_pages_map)))
-+ return;
-+
-+ memory_bm_position_reset(bm);
-+ pfn = memory_bm_next_pfn(bm);
-+ while (pfn != BM_END_OF_MAP) {
-+ if (pfn_valid(pfn))
-+ clear_highpage(pfn_to_page(pfn));
-+
-+ pfn = memory_bm_next_pfn(bm);
-+ }
-+ memory_bm_position_reset(bm);
-+ pr_info("PM: free pages cleared after restore\n");
-+}
-+
/**
- * mark_nosave_pages - Mark pages that should not be saved.
- * @bm: Memory bitmap.
diff --git a/kernel/printk/printk.c b/kernel/printk/printk.c
-index eea6dbc..075ab5e 100644
+index f7a55e9..85fe3ba 100644
--- a/kernel/printk/printk.c
+++ b/kernel/printk/printk.c
@@ -588,7 +588,7 @@ static int log_store(int facility, int level,
@@ -147285,10 +151784,10 @@ index 2dbccf2..f98676c 100644
}
diff --git a/kernel/ptrace.c b/kernel/ptrace.c
-index 7b20bae..ed03ccb 100644
+index 49ba7c1..4936c74 100644
--- a/kernel/ptrace.c
+++ b/kernel/ptrace.c
-@@ -213,7 +213,35 @@ static int ptrace_check_attach(struct task_struct *child, bool ignore_state)
+@@ -244,7 +244,35 @@ static int ptrace_check_attach(struct task_struct *child, bool ignore_state)
return ret;
}
@@ -147325,7 +151824,7 @@ index 7b20bae..ed03ccb 100644
{
if (mode & PTRACE_MODE_NOAUDIT)
return has_ns_capability_noaudit(current, ns, CAP_SYS_PTRACE);
-@@ -228,6 +256,7 @@ static int __ptrace_may_access(struct task_struct *task, unsigned int mode)
+@@ -259,6 +287,7 @@ static int __ptrace_may_access(struct task_struct *task, unsigned int mode)
struct mm_struct *mm;
kuid_t caller_uid;
kgid_t caller_gid;
@@ -147333,7 +151832,7 @@ index 7b20bae..ed03ccb 100644
if (!(mode & PTRACE_MODE_FSCREDS) == !(mode & PTRACE_MODE_REALCREDS)) {
WARN(1, "denying ptrace access check without PTRACE_MODE_*CREDS\n");
-@@ -270,16 +299,28 @@ static int __ptrace_may_access(struct task_struct *task, unsigned int mode)
+@@ -301,16 +330,27 @@ static int __ptrace_may_access(struct task_struct *task, unsigned int mode)
gid_eq(caller_gid, tcred->sgid) &&
gid_eq(caller_gid, tcred->gid))
goto ok;
@@ -147348,7 +151847,6 @@ index 7b20bae..ed03ccb 100644
mm = task->mm;
+ if (mm)
+ dumpable = get_dumpable(mm);
-+
+ rcu_read_lock();
+ if (dumpable != SUID_DUMP_USER &&
+ !ptrace_has_cap(__task_cred(task), mode)) {
@@ -147365,7 +151863,7 @@ index 7b20bae..ed03ccb 100644
return -EPERM;
return security_ptrace_access_check(task, mode);
-@@ -540,7 +581,7 @@ int ptrace_readdata(struct task_struct *tsk, unsigned long src, char __user *dst
+@@ -571,7 +611,7 @@ int ptrace_readdata(struct task_struct *tsk, unsigned long src, char __user *dst
break;
return -EIO;
}
@@ -147374,7 +151872,7 @@ index 7b20bae..ed03ccb 100644
return -EFAULT;
copied += retval;
src += retval;
-@@ -841,7 +882,7 @@ int ptrace_request(struct task_struct *child, long request,
+@@ -873,7 +913,7 @@ int ptrace_request(struct task_struct *child, long request,
bool seized = child->ptrace & PT_SEIZED;
int ret = -EIO;
siginfo_t siginfo, *si;
@@ -147383,7 +151881,7 @@ index 7b20bae..ed03ccb 100644
unsigned long __user *datalp = datavp;
unsigned long flags;
-@@ -1092,14 +1133,21 @@ SYSCALL_DEFINE4(ptrace, long, request, long, pid, unsigned long, addr,
+@@ -1124,14 +1164,21 @@ SYSCALL_DEFINE4(ptrace, long, request, long, pid, unsigned long, addr,
goto out;
}
@@ -147406,16 +151904,16 @@ index 7b20bae..ed03ccb 100644
goto out_put_task_struct;
}
-@@ -1127,7 +1175,7 @@ int generic_ptrace_peekdata(struct task_struct *tsk, unsigned long addr,
- copied = access_process_vm(tsk, addr, &tmp, sizeof(tmp), 0);
+@@ -1159,7 +1206,7 @@ int generic_ptrace_peekdata(struct task_struct *tsk, unsigned long addr,
+ copied = ptrace_access_vm(tsk, addr, &tmp, sizeof(tmp), FOLL_FORCE);
if (copied != sizeof(tmp))
return -EIO;
- return put_user(tmp, (unsigned long __user *)data);
-+ return put_user(tmp, (__force unsigned long __user *)data);
++ return put_user(tmp, (unsigned long __force_user *)data);
}
int generic_ptrace_pokedata(struct task_struct *tsk, unsigned long addr,
-@@ -1220,7 +1268,7 @@ int compat_ptrace_request(struct task_struct *child, compat_long_t request,
+@@ -1255,7 +1302,7 @@ int compat_ptrace_request(struct task_struct *child, compat_long_t request,
}
COMPAT_SYSCALL_DEFINE4(ptrace, compat_long_t, request, compat_long_t, pid,
@@ -147424,7 +151922,7 @@ index 7b20bae..ed03ccb 100644
{
struct task_struct *child;
long ret;
-@@ -1236,14 +1284,21 @@ COMPAT_SYSCALL_DEFINE4(ptrace, compat_long_t, request, compat_long_t, pid,
+@@ -1271,14 +1318,21 @@ COMPAT_SYSCALL_DEFINE4(ptrace, compat_long_t, request, compat_long_t, pid,
goto out;
}
@@ -147448,7 +151946,7 @@ index 7b20bae..ed03ccb 100644
}
diff --git a/kernel/rcu/rcutorture.c b/kernel/rcu/rcutorture.c
-index 971e2b1..dc5637d 100644
+index bf08fee..53beff7 100644
--- a/kernel/rcu/rcutorture.c
+++ b/kernel/rcu/rcutorture.c
@@ -132,12 +132,12 @@ static struct rcu_torture rcu_tortures[10 * RCU_TORTURE_PIPE_LEN];
@@ -147547,7 +152045,7 @@ index 971e2b1..dc5637d 100644
cur_ops->read_delay(&rand);
preempt_disable();
pipe_count = p->rtort_pipe_count;
-@@ -1255,11 +1255,11 @@ rcu_torture_stats_print(void)
+@@ -1256,11 +1256,11 @@ rcu_torture_stats_print(void)
rcu_torture_current,
rcu_torture_current_version,
list_empty(&rcu_torture_freelist),
@@ -147557,13 +152055,13 @@ index 971e2b1..dc5637d 100644
+ atomic_read_unchecked(&n_rcu_torture_alloc),
+ atomic_read_unchecked(&n_rcu_torture_alloc_fail),
+ atomic_read_unchecked(&n_rcu_torture_free));
- pr_cont("rtmbe: %d rtbke: %ld rtbre: %ld ",
+ pr_cont("rtmbe: %d rtbe: %ld rtbke: %ld rtbre: %ld ",
- atomic_read(&n_rcu_torture_mberror),
+ atomic_read_unchecked(&n_rcu_torture_mberror),
+ n_rcu_torture_barrier_error,
n_rcu_torture_boost_ktrerror,
n_rcu_torture_boost_rterror);
- pr_cont("rtbf: %ld rtb: %ld nt: %ld ",
-@@ -1271,17 +1271,17 @@ rcu_torture_stats_print(void)
+@@ -1273,17 +1273,17 @@ rcu_torture_stats_print(void)
n_barrier_successes,
n_barrier_attempts,
n_rcu_torture_barrier_error);
@@ -147584,7 +152082,7 @@ index 971e2b1..dc5637d 100644
WARN_ON_ONCE(1);
}
pr_cont("Reader Pipe: ");
-@@ -1298,7 +1298,7 @@ rcu_torture_stats_print(void)
+@@ -1300,7 +1300,7 @@ rcu_torture_stats_print(void)
pr_alert("%s%s ", torture_type, TORTURE_FLAG);
pr_cont("Free-Block Circulation: ");
for (i = 0; i < RCU_TORTURE_PIPE_LEN + 1; i++) {
@@ -147593,7 +152091,7 @@ index 971e2b1..dc5637d 100644
}
pr_cont("\n");
-@@ -1655,7 +1655,7 @@ rcu_torture_cleanup(void)
+@@ -1636,7 +1636,7 @@ rcu_torture_cleanup(void)
rcu_torture_stats_print(); /* -After- the stats thread is stopped! */
@@ -147602,7 +152100,7 @@ index 971e2b1..dc5637d 100644
rcu_torture_print_module_parms(cur_ops, "End of test: FAILURE");
else if (torture_onoff_failures())
rcu_torture_print_module_parms(cur_ops,
-@@ -1780,18 +1780,18 @@ rcu_torture_init(void)
+@@ -1761,18 +1761,18 @@ rcu_torture_init(void)
rcu_torture_current = NULL;
rcu_torture_current_version = 0;
@@ -147628,7 +152126,7 @@ index 971e2b1..dc5637d 100644
for (i = 0; i < RCU_TORTURE_PIPE_LEN + 1; i++) {
per_cpu(rcu_torture_count, cpu)[i] = 0;
diff --git a/kernel/rcu/tiny.c b/kernel/rcu/tiny.c
-index 944b1b4..45d1d75 100644
+index b23a4d0..fce5eb9 100644
--- a/kernel/rcu/tiny.c
+++ b/kernel/rcu/tiny.c
@@ -42,7 +42,7 @@
@@ -147644,16 +152142,16 @@ index 944b1b4..45d1d75 100644
false));
}
--static void rcu_process_callbacks(struct softirq_action *unused)
+-static __latent_entropy void rcu_process_callbacks(struct softirq_action *unused)
+static __latent_entropy void rcu_process_callbacks(void)
{
__rcu_process_callbacks(&rcu_sched_ctrlblk);
__rcu_process_callbacks(&rcu_bh_ctrlblk);
diff --git a/kernel/rcu/tree.c b/kernel/rcu/tree.c
-index 5d80925..a71654a 100644
+index 10f62c6..2040149 100644
--- a/kernel/rcu/tree.c
+++ b/kernel/rcu/tree.c
-@@ -328,7 +328,7 @@ static void rcu_momentary_dyntick_idle(void)
+@@ -329,7 +329,7 @@ static void rcu_momentary_dyntick_idle(void)
*/
rdtp = this_cpu_ptr(&rcu_dynticks);
smp_mb__before_atomic(); /* Earlier stuff before QS. */
@@ -147662,7 +152160,7 @@ index 5d80925..a71654a 100644
smp_mb__after_atomic(); /* Later stuff after QS. */
break;
}
-@@ -693,10 +693,10 @@ static void rcu_eqs_enter_common(long long oldval, bool user)
+@@ -694,10 +694,10 @@ static void rcu_eqs_enter_common(long long oldval, bool user)
rcu_prepare_for_idle();
/* CPUs seeing atomic_inc() must see prior RCU read-side crit sects */
smp_mb__before_atomic(); /* See above. */
@@ -147675,7 +152173,7 @@ index 5d80925..a71654a 100644
rcu_dynticks_task_enter();
/*
-@@ -829,11 +829,11 @@ static void rcu_eqs_exit_common(long long oldval, int user)
+@@ -830,11 +830,11 @@ static void rcu_eqs_exit_common(long long oldval, int user)
rcu_dynticks_task_exit();
smp_mb__before_atomic(); /* Force ordering w/previous sojourn. */
@@ -147689,7 +152187,7 @@ index 5d80925..a71654a 100644
rcu_cleanup_after_idle();
trace_rcu_dyntick(TPS("End"), oldval, rdtp->dynticks_nesting);
if (IS_ENABLED(CONFIG_RCU_EQS_DEBUG) &&
-@@ -979,12 +979,12 @@ void rcu_nmi_enter(void)
+@@ -980,12 +980,12 @@ void rcu_nmi_enter(void)
* to be in the outermost NMI handler that interrupted an RCU-idle
* period (observation due to Andy Lutomirski).
*/
@@ -147705,7 +152203,7 @@ index 5d80925..a71654a 100644
incby = 1;
}
rdtp->dynticks_nmi_nesting += incby;
-@@ -1009,7 +1009,7 @@ void rcu_nmi_exit(void)
+@@ -1010,7 +1010,7 @@ void rcu_nmi_exit(void)
* to us!)
*/
WARN_ON_ONCE(rdtp->dynticks_nmi_nesting <= 0);
@@ -147714,7 +152212,7 @@ index 5d80925..a71654a 100644
/*
* If the nesting level is not 1, the CPU wasn't RCU-idle, so
-@@ -1024,9 +1024,9 @@ void rcu_nmi_exit(void)
+@@ -1025,9 +1025,9 @@ void rcu_nmi_exit(void)
rdtp->dynticks_nmi_nesting = 0;
/* CPUs seeing atomic_inc() must see prior RCU read-side crit sects */
smp_mb__before_atomic(); /* See above. */
@@ -147726,7 +152224,7 @@ index 5d80925..a71654a 100644
}
/**
-@@ -1039,7 +1039,7 @@ void rcu_nmi_exit(void)
+@@ -1040,7 +1040,7 @@ void rcu_nmi_exit(void)
*/
bool notrace __rcu_is_watching(void)
{
@@ -147735,7 +152233,7 @@ index 5d80925..a71654a 100644
}
/**
-@@ -1122,7 +1122,7 @@ static int rcu_is_cpu_rrupt_from_idle(void)
+@@ -1123,7 +1123,7 @@ static int rcu_is_cpu_rrupt_from_idle(void)
static int dyntick_save_progress_counter(struct rcu_data *rdp,
bool *isidle, unsigned long *maxj)
{
@@ -147744,7 +152242,7 @@ index 5d80925..a71654a 100644
rcu_sysidle_check_cpu(rdp, isidle, maxj);
if ((rdp->dynticks_snap & 0x1) == 0) {
trace_rcu_fqs(rdp->rsp->name, rdp->gpnum, rdp->cpu, TPS("dti"));
-@@ -1147,7 +1147,7 @@ static int rcu_implicit_dynticks_qs(struct rcu_data *rdp,
+@@ -1148,7 +1148,7 @@ static int rcu_implicit_dynticks_qs(struct rcu_data *rdp,
int *rcrmp;
unsigned int snap;
@@ -147753,16 +152251,16 @@ index 5d80925..a71654a 100644
snap = (unsigned int)rdp->dynticks_snap;
/*
-@@ -3013,7 +3013,7 @@ __rcu_process_callbacks(struct rcu_state *rsp)
+@@ -3016,7 +3016,7 @@ __rcu_process_callbacks(struct rcu_state *rsp)
/*
* Do RCU core processing for the current CPU.
*/
--static void rcu_process_callbacks(struct softirq_action *unused)
+-static __latent_entropy void rcu_process_callbacks(struct softirq_action *unused)
+static __latent_entropy void rcu_process_callbacks(void)
{
struct rcu_state *rsp;
-@@ -3750,7 +3750,7 @@ rcu_boot_init_percpu_data(int cpu, struct rcu_state *rsp)
+@@ -3753,7 +3753,7 @@ rcu_boot_init_percpu_data(int cpu, struct rcu_state *rsp)
rdp->grpmask = leaf_node_cpu_bit(rdp->mynode, cpu);
rdp->dynticks = &per_cpu(rcu_dynticks, cpu);
WARN_ON_ONCE(rdp->dynticks->dynticks_nesting != DYNTICK_TASK_EXIT_IDLE);
@@ -147771,7 +152269,7 @@ index 5d80925..a71654a 100644
rdp->cpu = cpu;
rdp->rsp = rsp;
rcu_boot_init_nocb_percpu_data(rdp);
-@@ -3780,8 +3780,8 @@ rcu_init_percpu_data(int cpu, struct rcu_state *rsp)
+@@ -3783,8 +3783,8 @@ rcu_init_percpu_data(int cpu, struct rcu_state *rsp)
init_callback_list(rdp); /* Re-enable callbacks on this CPU. */
rdp->dynticks->dynticks_nesting = DYNTICK_TASK_EXIT_IDLE;
rcu_sysidle_init_percpu_data(rdp->dynticks);
@@ -147783,7 +152281,7 @@ index 5d80925..a71654a 100644
/*
diff --git a/kernel/rcu/tree.h b/kernel/rcu/tree.h
-index f714f87..f49d80b 100644
+index e99a523..08cba8b 100644
--- a/kernel/rcu/tree.h
+++ b/kernel/rcu/tree.h
@@ -111,11 +111,11 @@ struct rcu_dynticks {
@@ -147800,20 +152298,22 @@ index f714f87..f49d80b 100644
/* "Idle" excludes userspace execution. */
unsigned long dynticks_idle_jiffies;
/* End of last non-NMI non-idle period. */
-@@ -400,9 +400,9 @@ struct rcu_data {
+@@ -400,10 +400,10 @@ struct rcu_data {
#ifdef CONFIG_RCU_FAST_NO_HZ
struct rcu_head oom_head;
#endif /* #ifdef CONFIG_RCU_FAST_NO_HZ */
+- atomic_long_t exp_workdone0; /* # done by workqueue. */
- atomic_long_t exp_workdone1; /* # done by others #1. */
- atomic_long_t exp_workdone2; /* # done by others #2. */
- atomic_long_t exp_workdone3; /* # done by others #3. */
++ atomic_long_unchecked_t exp_workdone0; /* # done by workqueue. */
+ atomic_long_unchecked_t exp_workdone1; /* # done by others #1. */
+ atomic_long_unchecked_t exp_workdone2; /* # done by others #2. */
+ atomic_long_unchecked_t exp_workdone3; /* # done by others #3. */
/* 7) Callback offloading. */
#ifdef CONFIG_RCU_NOCB_CPU
-@@ -519,8 +519,8 @@ struct rcu_state {
+@@ -520,8 +520,8 @@ struct rcu_state {
struct mutex exp_mutex; /* Serialize expedited GP. */
struct mutex exp_wake_mutex; /* Serialize wakeup. */
unsigned long expedited_sequence; /* Take a ticket. */
@@ -147825,7 +152325,7 @@ index f714f87..f49d80b 100644
int ncpus_snap; /* # CPUs seen last time. */
diff --git a/kernel/rcu/tree_exp.h b/kernel/rcu/tree_exp.h
-index 6d86ab6..7046dff 100644
+index 78eba41..2b96105 100644
--- a/kernel/rcu/tree_exp.h
+++ b/kernel/rcu/tree_exp.h
@@ -223,14 +223,14 @@ static void rcu_report_exp_rdp(struct rcu_state *rsp, struct rcu_data *rdp,
@@ -147849,13 +152349,13 @@ index 6d86ab6..7046dff 100644
struct rcu_dynticks *rdtp = &per_cpu(rcu_dynticks, cpu);
if (raw_smp_processor_id() == cpu ||
-- !(atomic_add_return(0, &rdtp->dynticks) & 0x1))
-+ !(atomic_add_return_unchecked(0, &rdtp->dynticks) & 0x1))
+- !(atomic_add_return(0, &rdtp->dynticks) & 0x1) ||
++ !(atomic_add_return_unchecked(0, &rdtp->dynticks) & 0x1) ||
+ !(rnp->qsmaskinitnext & rdp->grpmask))
mask_ofl_test |= rdp->grpmask;
}
- mask_ofl_ipi = rnp->expmask & ~mask_ofl_test;
diff --git a/kernel/rcu/tree_plugin.h b/kernel/rcu/tree_plugin.h
-index 85c5a88..4479872 100644
+index 56583e7..e84c7ad 100644
--- a/kernel/rcu/tree_plugin.h
+++ b/kernel/rcu/tree_plugin.h
@@ -1174,7 +1174,7 @@ static void rcu_boost_kthread_setaffinity(struct rcu_node *rnp, int outgoingcpu)
@@ -147921,7 +152421,7 @@ index 85c5a88..4479872 100644
*isidle = false; /* We are not idle! */
return;
diff --git a/kernel/rcu/tree_trace.c b/kernel/rcu/tree_trace.c
-index 86782f9a..2e8c0a3 100644
+index b1f2897..849b980 100644
--- a/kernel/rcu/tree_trace.c
+++ b/kernel/rcu/tree_trace.c
@@ -124,7 +124,7 @@ static void print_one_rcu_data(struct seq_file *m, struct rcu_data *rdp)
@@ -147933,19 +152433,21 @@ index 86782f9a..2e8c0a3 100644
rdp->dynticks->dynticks_nesting,
rdp->dynticks->dynticks_nmi_nesting,
rdp->dynticks_fqs);
-@@ -189,14 +189,14 @@ static int show_rcuexp(struct seq_file *m, void *v)
+@@ -189,15 +189,15 @@ static int show_rcuexp(struct seq_file *m, void *v)
for_each_possible_cpu(cpu) {
rdp = per_cpu_ptr(rsp->rda, cpu);
+- s0 += atomic_long_read(&rdp->exp_workdone0);
- s1 += atomic_long_read(&rdp->exp_workdone1);
- s2 += atomic_long_read(&rdp->exp_workdone2);
- s3 += atomic_long_read(&rdp->exp_workdone3);
++ s0 += atomic_long_read_unchecked(&rdp->exp_workdone0);
+ s1 += atomic_long_read_unchecked(&rdp->exp_workdone1);
+ s2 += atomic_long_read_unchecked(&rdp->exp_workdone2);
+ s3 += atomic_long_read_unchecked(&rdp->exp_workdone3);
}
- seq_printf(m, "s=%lu wd1=%lu wd2=%lu wd3=%lu n=%lu enq=%d sc=%lu\n",
- rsp->expedited_sequence, s1, s2, s3,
+ seq_printf(m, "s=%lu wd0=%lu wd1=%lu wd2=%lu wd3=%lu n=%lu enq=%d sc=%lu\n",
+ rsp->expedited_sequence, s0, s1, s2, s3,
- atomic_long_read(&rsp->expedited_normal),
- atomic_read(&rsp->expedited_need_qs),
+ atomic_long_read_unchecked(&rsp->expedited_normal),
@@ -147997,7 +152499,7 @@ index 9b5f044..b8b0a33 100644
}
__initcall(ioresources_init);
diff --git a/kernel/sched/auto_group.c b/kernel/sched/auto_group.c
-index 418d9b6..45ff39b 100644
+index da39489..c42f50e 100644
--- a/kernel/sched/auto_group.c
+++ b/kernel/sched/auto_group.c
@@ -9,7 +9,7 @@
@@ -148019,10 +152521,10 @@ index 418d9b6..45ff39b 100644
#ifdef CONFIG_RT_GROUP_SCHED
/*
diff --git a/kernel/sched/core.c b/kernel/sched/core.c
-index 44817c6..caeebd2 100644
+index 154fd68..f95f804 100644
--- a/kernel/sched/core.c
+++ b/kernel/sched/core.c
-@@ -2259,7 +2259,7 @@ void set_numabalancing_state(bool enabled)
+@@ -2268,7 +2268,7 @@ void set_numabalancing_state(bool enabled)
int sysctl_numa_balancing(struct ctl_table *table, int write,
void __user *buffer, size_t *lenp, loff_t *ppos)
{
@@ -148031,7 +152533,7 @@ index 44817c6..caeebd2 100644
int err;
int state = static_branch_likely(&sched_numa_balancing);
-@@ -2334,7 +2334,7 @@ static void __init init_schedstats(void)
+@@ -2343,7 +2343,7 @@ static void __init init_schedstats(void)
int sysctl_schedstats(struct ctl_table *table, int write,
void __user *buffer, size_t *lenp, loff_t *ppos)
{
@@ -148040,7 +152542,7 @@ index 44817c6..caeebd2 100644
int err;
int state = static_branch_likely(&sched_schedstats);
-@@ -2784,7 +2784,7 @@ static struct rq *finish_task_switch(struct task_struct *prev)
+@@ -2797,7 +2797,7 @@ static struct rq *finish_task_switch(struct task_struct *prev)
/* rq->lock is NOT held, but preemption is disabled */
static void __balance_callback(struct rq *rq)
{
@@ -148049,7 +152551,7 @@ index 44817c6..caeebd2 100644
void (*func)(struct rq *rq);
unsigned long flags;
-@@ -2792,7 +2792,7 @@ static void __balance_callback(struct rq *rq)
+@@ -2805,7 +2805,7 @@ static void __balance_callback(struct rq *rq)
head = rq->balance_callback;
rq->balance_callback = NULL;
while (head) {
@@ -148058,7 +152560,7 @@ index 44817c6..caeebd2 100644
next = head->next;
head->next = NULL;
head = next;
-@@ -3759,6 +3759,8 @@ int can_nice(const struct task_struct *p, const int nice)
+@@ -3795,6 +3795,8 @@ int can_nice(const struct task_struct *p, const int nice)
/* convert nice value [19,-20] to rlimit style value [1,40] */
int nice_rlim = nice_to_rlimit(nice);
@@ -148067,7 +152569,7 @@ index 44817c6..caeebd2 100644
return (nice_rlim <= task_rlimit(p, RLIMIT_NICE) ||
capable(CAP_SYS_NICE));
}
-@@ -3785,7 +3787,8 @@ SYSCALL_DEFINE1(nice, int, increment)
+@@ -3821,7 +3823,8 @@ SYSCALL_DEFINE1(nice, int, increment)
nice = task_nice(current) + increment;
nice = clamp_val(nice, MIN_NICE, MAX_NICE);
@@ -148077,7 +152579,7 @@ index 44817c6..caeebd2 100644
return -EPERM;
retval = security_task_setnice(current, nice);
-@@ -4095,6 +4098,7 @@ recheck:
+@@ -4131,6 +4134,7 @@ static int __sched_setscheduler(struct task_struct *p,
if (policy != p->policy && !rlim_rtprio)
return -EPERM;
@@ -148085,22 +152587,38 @@ index 44817c6..caeebd2 100644
/* can't increase priority */
if (attr->sched_priority > p->rt_priority &&
attr->sched_priority > rlim_rtprio)
-@@ -7450,6 +7454,14 @@ void __init sched_init(void)
+@@ -7591,6 +7595,30 @@ void __init sched_init(void)
for_each_possible_cpu(i) {
struct rq *rq;
+#if defined(CONFIG_GRKERNSEC_KSTACKOVERFLOW) && defined(CONFIG_X86_64)
-+ void *newstack = vzalloc_irq_stack();
-+ if (newstack == NULL)
++ struct page *newstack_page = alloc_pages_node(cpu_to_node(i), GFP_KERNEL|__GFP_NOTRACK|__GFP_ZERO, IRQ_STACK_ORDER);
++ void *newstack_lowmem = NULL;
++ void *newstack;
++ struct page *pages[IRQ_STACK_SIZE / PAGE_SIZE];
++ unsigned int x;
++
++ if (newstack_page)
++ newstack_lowmem = page_address(newstack_page);
++
++ if (newstack_lowmem == NULL)
+ panic("grsec: Unable to allocate irq stack");
++
++ for (x = 0; x < IRQ_STACK_SIZE / PAGE_SIZE; x++)
++ pages[x] = virt_to_page(newstack_lowmem + (x * PAGE_SIZE));
++
++ newstack = vmap(pages, IRQ_STACK_SIZE / PAGE_SIZE, VM_IOREMAP, PAGE_KERNEL);
++ if (newstack == NULL)
++ panic("grsec: Unable to vmap irq stack");
+ populate_stack(newstack, IRQ_STACK_SIZE);
++ per_cpu(irq_stack_ptr_lowmem, i) = newstack_lowmem + IRQ_STACK_SIZE - 64;
+ per_cpu(irq_stack_ptr, i) = newstack + IRQ_STACK_SIZE - 64;
+#endif
+
rq = cpu_rq(i);
raw_spin_lock_init(&rq->lock);
rq->nr_running = 0;
-@@ -7580,7 +7592,7 @@ void __might_sleep(const char *file, int line, int preempt_offset)
+@@ -7712,7 +7740,7 @@ void __might_sleep(const char *file, int line, int preempt_offset)
*/
WARN_ONCE(current->state != TASK_RUNNING && current->task_state_change,
"do not call blocking ops when !TASK_RUNNING; "
@@ -148110,7 +152628,7 @@ index 44817c6..caeebd2 100644
(void *)current->task_state_change,
(void *)current->task_state_change);
diff --git a/kernel/sched/deadline.c b/kernel/sched/deadline.c
-index 1ce8867..0472a49 100644
+index 37e2449..61f57aa 100644
--- a/kernel/sched/deadline.c
+++ b/kernel/sched/deadline.c
@@ -219,8 +219,8 @@ static inline bool need_pull_dl_task(struct rq *rq, struct task_struct *prev)
@@ -148125,7 +152643,7 @@ index 1ce8867..0472a49 100644
static void push_dl_tasks(struct rq *);
static void pull_dl_task(struct rq *);
diff --git a/kernel/sched/debug.c b/kernel/sched/debug.c
-index 2a0a999..dc593c8 100644
+index fa178b6..4e6c67e 100644
--- a/kernel/sched/debug.c
+++ b/kernel/sched/debug.c
@@ -193,7 +193,7 @@ late_initcall(sched_init_debug);
@@ -148246,7 +152764,7 @@ index 2a0a999..dc593c8 100644
}
#endif /* CONFIG_SYSCTL */
#endif /* CONFIG_SMP */
-@@ -801,7 +810,11 @@ static int __init init_sched_debug_procfs(void)
+@@ -804,7 +813,11 @@ static int __init init_sched_debug_procfs(void)
{
struct proc_dir_entry *pe;
@@ -148259,20 +152777,20 @@ index 2a0a999..dc593c8 100644
return -ENOMEM;
return 0;
diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c
-index 8b3610c..94bbee3 100644
+index c242944..c6a1086 100644
--- a/kernel/sched/fair.c
+++ b/kernel/sched/fair.c
-@@ -8305,7 +8305,7 @@ static void nohz_idle_balance(struct rq *this_rq, enum cpu_idle_type idle) { }
+@@ -8534,7 +8534,7 @@ static void nohz_idle_balance(struct rq *this_rq, enum cpu_idle_type idle) { }
* run_rebalance_domains is triggered when needed from the scheduler tick.
* Also triggered for nohz idle balancing (with nohz_balancing_kick set).
*/
--static void run_rebalance_domains(struct softirq_action *h)
+-static __latent_entropy void run_rebalance_domains(struct softirq_action *h)
+static __latent_entropy void run_rebalance_domains(void)
{
struct rq *this_rq = this_rq();
enum cpu_idle_type idle = this_rq->idle_balance ?
diff --git a/kernel/sched/rt.c b/kernel/sched/rt.c
-index d5690b7..40d1c85 100644
+index 2516b8d..251b6ab 100644
--- a/kernel/sched/rt.c
+++ b/kernel/sched/rt.c
@@ -362,8 +362,8 @@ static inline int has_pushable_tasks(struct rq *rq)
@@ -148287,10 +152805,10 @@ index d5690b7..40d1c85 100644
static void push_rt_tasks(struct rq *);
static void pull_rt_task(struct rq *);
diff --git a/kernel/sched/sched.h b/kernel/sched/sched.h
-index c64fc51..d12559e 100644
+index 055f935..daf399df 100644
--- a/kernel/sched/sched.h
+++ b/kernel/sched/sched.h
-@@ -642,7 +642,10 @@ struct rq {
+@@ -650,7 +650,10 @@ struct rq {
unsigned long cpu_capacity;
unsigned long cpu_capacity_orig;
@@ -148302,7 +152820,7 @@ index c64fc51..d12559e 100644
unsigned char idle_balance;
/* For active balancing */
-@@ -788,7 +791,7 @@ extern int migrate_swap(struct task_struct *, struct task_struct *);
+@@ -813,7 +816,7 @@ extern int migrate_swap(struct task_struct *, struct task_struct *);
static inline void
queue_balance_callback(struct rq *rq,
@@ -148311,7 +152829,7 @@ index c64fc51..d12559e 100644
void (*func)(struct rq *rq))
{
lockdep_assert_held(&rq->lock);
-@@ -796,7 +799,7 @@ queue_balance_callback(struct rq *rq,
+@@ -821,7 +824,7 @@ queue_balance_callback(struct rq *rq,
if (unlikely(head->next))
return;
@@ -148320,7 +152838,7 @@ index c64fc51..d12559e 100644
head->next = rq->balance_callback;
rq->balance_callback = head;
}
-@@ -1253,7 +1256,7 @@ struct sched_class {
+@@ -1278,7 +1281,7 @@ struct sched_class {
#ifdef CONFIG_FAIR_GROUP_SCHED
void (*task_change_group) (struct task_struct *p, int type);
#endif
@@ -148329,7 +152847,7 @@ index c64fc51..d12559e 100644
static inline void put_prev_task(struct rq *rq, struct task_struct *prev)
{
-@@ -1323,7 +1326,7 @@ extern struct dl_bandwidth def_dl_bandwidth;
+@@ -1353,7 +1356,7 @@ extern struct dl_bandwidth def_dl_bandwidth;
extern void init_dl_bandwidth(struct dl_bandwidth *dl_b, u64 period, u64 runtime);
extern void init_dl_task_timer(struct sched_dl_entity *dl_se);
@@ -148338,8 +152856,28 @@ index c64fc51..d12559e 100644
extern void init_entity_runnable_average(struct sched_entity *se);
extern void post_init_entity_util_avg(struct sched_entity *se);
+diff --git a/kernel/seccomp.c b/kernel/seccomp.c
+index 0db7c8a..5e67101 100644
+--- a/kernel/seccomp.c
++++ b/kernel/seccomp.c
+@@ -654,11 +654,14 @@ static int __seccomp_filter(int this_syscall, const struct seccomp_data *sd,
+ }
+ #endif
+
+-int __secure_computing(const struct seccomp_data *sd)
++int secure_computing(const struct seccomp_data *sd)
+ {
+ int mode = current->seccomp.mode;
+ int this_syscall;
+
++ if (likely(!test_thread_flag(TIF_SECCOMP)))
++ return 0;
++
+ if (IS_ENABLED(CONFIG_CHECKPOINT_RESTORE) &&
+ unlikely(current->ptrace & PT_SUSPEND_SECCOMP))
+ return 0;
diff --git a/kernel/signal.c b/kernel/signal.c
-index af21afc..bc14d32 100644
+index 75761ac..5d44ce3 100644
--- a/kernel/signal.c
+++ b/kernel/signal.c
@@ -53,12 +53,12 @@ static struct kmem_cache *sigqueue_cachep;
@@ -148522,7 +153060,7 @@ index af21afc..bc14d32 100644
if (p && (tgid <= 0 || task_tgid_vnr(p) == tgid)) {
error = check_kill_permission(sig, info, p);
/*
-@@ -3196,8 +3231,8 @@ COMPAT_SYSCALL_DEFINE2(sigaltstack,
+@@ -3203,8 +3238,8 @@ COMPAT_SYSCALL_DEFINE2(sigaltstack,
}
seg = get_fs();
set_fs(KERNEL_DS);
@@ -148533,7 +153071,7 @@ index af21afc..bc14d32 100644
compat_user_stack_pointer());
set_fs(seg);
if (ret >= 0 && uoss_ptr) {
-@@ -3481,7 +3516,7 @@ SYSCALL_DEFINE1(ssetmask, int, newmask)
+@@ -3488,7 +3523,7 @@ SYSCALL_DEFINE1(ssetmask, int, newmask)
SYSCALL_DEFINE2(signal, int, sig, __sighandler_t, handler)
{
struct k_sigaction new_sa, old_sa;
@@ -148542,7 +153080,7 @@ index af21afc..bc14d32 100644
new_sa.sa.sa_handler = handler;
new_sa.sa.sa_flags = SA_ONESHOT | SA_NOMASK;
-@@ -3489,7 +3524,7 @@ SYSCALL_DEFINE2(signal, int, sig, __sighandler_t, handler)
+@@ -3496,7 +3531,7 @@ SYSCALL_DEFINE2(signal, int, sig, __sighandler_t, handler)
ret = do_sigaction(sig, &new_sa, &old_sa);
@@ -148552,10 +153090,10 @@ index af21afc..bc14d32 100644
#endif /* __ARCH_WANT_SYS_SIGNAL */
diff --git a/kernel/smp.c b/kernel/smp.c
-index 3aa642d..3200019 100644
+index bba3b20..796c514 100644
--- a/kernel/smp.c
+++ b/kernel/smp.c
-@@ -573,7 +573,7 @@ void __init smp_init(void)
+@@ -574,7 +574,7 @@ void __init smp_init(void)
* early_boot_irqs_disabled is set. Use local_irq_save/restore() instead
* of local_irq_disable/enable().
*/
@@ -148565,7 +153103,7 @@ index 3aa642d..3200019 100644
unsigned long flags;
int ret = 0;
diff --git a/kernel/smpboot.c b/kernel/smpboot.c
-index 13bc43d..e7068a2 100644
+index 4a5c6e7..96ef058 100644
--- a/kernel/smpboot.c
+++ b/kernel/smpboot.c
@@ -13,6 +13,7 @@
@@ -148576,7 +153114,7 @@ index 13bc43d..e7068a2 100644
#include "smpboot.h"
-@@ -303,7 +304,7 @@ int smpboot_register_percpu_thread_cpumask(struct smp_hotplug_thread *plug_threa
+@@ -308,7 +309,7 @@ int smpboot_register_percpu_thread_cpumask(struct smp_hotplug_thread *plug_threa
if (cpumask_test_cpu(cpu, cpumask))
smpboot_unpark_thread(plug_thread, cpu);
}
@@ -148585,7 +153123,7 @@ index 13bc43d..e7068a2 100644
out:
mutex_unlock(&smpboot_threads_lock);
put_online_cpus();
-@@ -321,7 +322,7 @@ void smpboot_unregister_percpu_thread(struct smp_hotplug_thread *plug_thread)
+@@ -326,7 +327,7 @@ void smpboot_unregister_percpu_thread(struct smp_hotplug_thread *plug_thread)
{
get_online_cpus();
mutex_lock(&smpboot_threads_lock);
@@ -148594,7 +153132,7 @@ index 13bc43d..e7068a2 100644
smpboot_destroy_threads(plug_thread);
mutex_unlock(&smpboot_threads_lock);
put_online_cpus();
-@@ -361,7 +362,9 @@ int smpboot_update_cpumask_percpu_thread(struct smp_hotplug_thread *plug_thread,
+@@ -366,7 +367,9 @@ int smpboot_update_cpumask_percpu_thread(struct smp_hotplug_thread *plug_thread,
for_each_cpu_and(cpu, tmp, cpu_online_mask)
smpboot_unpark_thread(plug_thread, cpu);
@@ -148605,7 +153143,7 @@ index 13bc43d..e7068a2 100644
mutex_unlock(&smpboot_threads_lock);
put_online_cpus();
diff --git a/kernel/softirq.c b/kernel/softirq.c
-index 17caf4b..2e68ae7 100644
+index 744fa61..32960f2 100644
--- a/kernel/softirq.c
+++ b/kernel/softirq.c
@@ -53,7 +53,7 @@ irq_cpustat_t irq_stat[NR_CPUS] ____cacheline_aligned;
@@ -148617,7 +153155,7 @@ index 17caf4b..2e68ae7 100644
DEFINE_PER_CPU(struct task_struct *, ksoftirqd);
-@@ -270,7 +270,7 @@ restart:
+@@ -281,7 +281,7 @@ asmlinkage __visible void __softirq_entry __do_softirq(void)
kstat_incr_softirqs_this_cpu(vec_nr);
trace_softirq_entry(vec_nr);
@@ -148626,7 +153164,7 @@ index 17caf4b..2e68ae7 100644
trace_softirq_exit(vec_nr);
if (unlikely(prev_count != preempt_count())) {
pr_err("huh, entered softirq %u %s %p with preempt_count %08x, exited with %08x?\n",
-@@ -430,7 +430,7 @@ void __raise_softirq_irqoff(unsigned int nr)
+@@ -444,7 +444,7 @@ void __raise_softirq_irqoff(unsigned int nr)
or_softirq_pending(1UL << nr);
}
@@ -148635,27 +153173,27 @@ index 17caf4b..2e68ae7 100644
{
softirq_vec[nr].action = action;
}
-@@ -482,7 +482,7 @@ void __tasklet_hi_schedule_first(struct tasklet_struct *t)
+@@ -496,7 +496,7 @@ void __tasklet_hi_schedule_first(struct tasklet_struct *t)
}
EXPORT_SYMBOL(__tasklet_hi_schedule_first);
--static void tasklet_action(struct softirq_action *a)
+-static __latent_entropy void tasklet_action(struct softirq_action *a)
+static __latent_entropy void tasklet_action(void)
{
struct tasklet_struct *list;
-@@ -518,7 +518,7 @@ static void tasklet_action(struct softirq_action *a)
+@@ -532,7 +532,7 @@ static __latent_entropy void tasklet_action(struct softirq_action *a)
}
}
--static void tasklet_hi_action(struct softirq_action *a)
+-static __latent_entropy void tasklet_hi_action(struct softirq_action *a)
+static __latent_entropy void tasklet_hi_action(void)
{
struct tasklet_struct *list;
-@@ -744,7 +744,7 @@ static struct notifier_block cpu_nfb = {
- .notifier_call = cpu_callback
- };
+@@ -743,7 +743,7 @@ static int takeover_tasklets(unsigned int cpu)
+ #define takeover_tasklets NULL
+ #endif /* CONFIG_HOTPLUG_CPU */
-static struct smp_hotplug_thread softirq_threads = {
+static struct smp_hotplug_thread softirq_threads __read_only = {
@@ -148663,10 +153201,10 @@ index 17caf4b..2e68ae7 100644
.thread_should_run = ksoftirqd_should_run,
.thread_fn = run_ksoftirqd,
diff --git a/kernel/stop_machine.c b/kernel/stop_machine.c
-index 4a1ca5f..98ccb56 100644
+index ec9ab2f..94964b5 100644
--- a/kernel/stop_machine.c
+++ b/kernel/stop_machine.c
-@@ -509,7 +509,7 @@ void stop_machine_unpark(int cpu)
+@@ -524,7 +524,7 @@ void stop_machine_unpark(int cpu)
kthread_unpark(stopper->thread);
}
@@ -148724,7 +153262,7 @@ index 89d5be4..441bef3 100644
if (ns_capable(old->user_ns, CAP_SETGID))
new->gid = new->egid = new->sgid = new->fsgid = kgid;
else if (gid_eq(kgid, old->gid) || gid_eq(kgid, old->sgid))
-@@ -418,7 +442,7 @@ error:
+@@ -418,7 +442,7 @@ SYSCALL_DEFINE1(setgid, gid_t, gid)
/*
* change the user struct in a credentials set to match the new UID
*/
@@ -148859,29 +153397,35 @@ index 89d5be4..441bef3 100644
if (!retval) {
if (old_rlim)
diff --git a/kernel/sys_ni.c b/kernel/sys_ni.c
-index 2c5e3a8..301fb1a 100644
+index 635482e..e232efb 100644
--- a/kernel/sys_ni.c
+++ b/kernel/sys_ni.c
-@@ -6,12 +6,12 @@
+@@ -1,17 +1,18 @@
+
+ #include <linux/linkage.h>
+ #include <linux/errno.h>
++#include <linux/syscalls.h>
+
+ #include <asm/unistd.h>
/* we can't #include <linux/syscalls.h> here,
but tell gcc to not warn with -Wmissing-prototypes */
-asmlinkage long sys_ni_syscall(void);
-+asmlinkage long sys_ni_syscall(unsigned long, unsigned long, unsigned long, unsigned long, unsigned long, unsigned long);
++//asmlinkage long sys_ni_syscall(unsigned long, unsigned long, unsigned long, unsigned long, unsigned long, unsigned long);
/*
* Non-implemented system calls get redirected here.
*/
-asmlinkage long sys_ni_syscall(void)
-+asmlinkage long sys_ni_syscall(unsigned long a, unsigned long b, unsigned long c, unsigned long d, unsigned long e, unsigned long f)
++SYSCALL_DEFINE6(ni_syscall, unsigned long, a, unsigned long, b, unsigned long, c, unsigned long, d, unsigned long, e, unsigned long, f)
{
return -ENOSYS;
}
diff --git a/kernel/sysctl.c b/kernel/sysctl.c
-index a13bbda..745603f 100644
+index c1095cd..a6aef25 100644
--- a/kernel/sysctl.c
+++ b/kernel/sysctl.c
-@@ -95,7 +95,6 @@
+@@ -96,7 +96,6 @@
#endif
#if defined(CONFIG_SYSCTL)
@@ -148889,7 +153433,7 @@ index a13bbda..745603f 100644
/* External variables not in a header file. */
extern int suid_dumpable;
#ifdef CONFIG_COREDUMP
-@@ -112,23 +111,25 @@ extern int sysctl_nr_open_min, sysctl_nr_open_max;
+@@ -112,23 +111,25 @@ extern unsigned int sysctl_nr_open_min, sysctl_nr_open_max;
#ifndef CONFIG_MMU
extern int sysctl_nr_trim_pages;
#endif
@@ -149063,7 +153607,7 @@ index a13bbda..745603f 100644
#endif
#if defined(CONFIG_MMU)
{
-@@ -1125,10 +1171,17 @@ static struct ctl_table kern_table[] = {
+@@ -1116,10 +1162,17 @@ static struct ctl_table kern_table[] = {
*/
{
.procname = "perf_event_paranoid",
@@ -149084,7 +153628,7 @@ index a13bbda..745603f 100644
},
{
.procname = "perf_event_mlock_kb",
-@@ -1469,6 +1522,13 @@ static struct ctl_table vm_table[] = {
+@@ -1460,6 +1513,13 @@ static struct ctl_table vm_table[] = {
.proc_handler = proc_dointvec_minmax,
.extra1 = &zero,
},
@@ -149098,7 +153642,7 @@ index a13bbda..745603f 100644
#else
{
.procname = "nr_trim_pages",
-@@ -1988,6 +2048,16 @@ int proc_dostring(struct ctl_table *table, int write,
+@@ -1987,6 +2047,16 @@ int proc_dostring(struct ctl_table *table, int write,
(char __user *)buffer, lenp, ppos);
}
@@ -149115,7 +153659,7 @@ index a13bbda..745603f 100644
static size_t proc_skip_spaces(char **buf)
{
size_t ret;
-@@ -2093,6 +2163,8 @@ static int proc_put_long(void __user **buf, size_t *size, unsigned long val,
+@@ -2092,6 +2162,8 @@ static int proc_put_long(void __user **buf, size_t *size, unsigned long val,
len = strlen(tmp);
if (len > *size)
len = *size;
@@ -149124,7 +153668,7 @@ index a13bbda..745603f 100644
if (copy_to_user(*buf, tmp, len))
return -EFAULT;
*size -= len;
-@@ -2297,6 +2369,44 @@ int proc_douintvec(struct ctl_table *table, int write,
+@@ -2296,6 +2368,44 @@ int proc_douintvec(struct ctl_table *table, int write,
do_proc_douintvec_conv, NULL);
}
@@ -149169,7 +153713,7 @@ index a13bbda..745603f 100644
/*
* Taint values can only be increased
* This means we can safely use a temporary.
-@@ -2304,7 +2414,7 @@ int proc_douintvec(struct ctl_table *table, int write,
+@@ -2303,7 +2413,7 @@ int proc_douintvec(struct ctl_table *table, int write,
static int proc_taint(struct ctl_table *table, int write,
void __user *buffer, size_t *lenp, loff_t *ppos)
{
@@ -149178,7 +153722,7 @@ index a13bbda..745603f 100644
unsigned long tmptaint = get_taint();
int err;
-@@ -2332,16 +2442,14 @@ static int proc_taint(struct ctl_table *table, int write,
+@@ -2331,16 +2441,14 @@ static int proc_taint(struct ctl_table *table, int write,
return err;
}
@@ -149197,7 +153741,7 @@ index a13bbda..745603f 100644
struct do_proc_dointvec_minmax_conv_param {
int *min;
-@@ -2372,6 +2480,32 @@ static int do_proc_dointvec_minmax_conv(bool *negp, unsigned long *lvalp,
+@@ -2371,6 +2479,32 @@ static int do_proc_dointvec_minmax_conv(bool *negp, unsigned long *lvalp,
return 0;
}
@@ -149230,7 +153774,7 @@ index a13bbda..745603f 100644
/**
* proc_dointvec_minmax - read a vector of integers with min/max values
* @table: the sysctl table
-@@ -2399,6 +2533,17 @@ int proc_dointvec_minmax(struct ctl_table *table, int write,
+@@ -2398,6 +2532,17 @@ int proc_dointvec_minmax(struct ctl_table *table, int write,
do_proc_dointvec_minmax_conv, &param);
}
@@ -149269,7 +153813,7 @@ index a13bbda..745603f 100644
EXPORT_SYMBOL(proc_doulongvec_minmax);
EXPORT_SYMBOL(proc_doulongvec_ms_jiffies_minmax);
diff --git a/kernel/taskstats.c b/kernel/taskstats.c
-index b3f05ee..b1b5044 100644
+index cbb387a..99d91f6 100644
--- a/kernel/taskstats.c
+++ b/kernel/taskstats.c
@@ -28,9 +28,12 @@
@@ -149285,7 +153829,7 @@ index b3f05ee..b1b5044 100644
/*
* Maximum length of a cpumask that can be specified in
* the TASKSTATS_CMD_ATTR_REGISTER/DEREGISTER_CPUMASK attribute
-@@ -540,6 +543,9 @@ err:
+@@ -544,6 +547,9 @@ static int cmd_attr_tgid(struct genl_info *info)
static int taskstats_user_cmd(struct sk_buff *skb, struct genl_info *info)
{
@@ -149296,7 +153840,7 @@ index b3f05ee..b1b5044 100644
return cmd_attr_register_cpumask(info);
else if (info->attrs[TASKSTATS_CMD_ATTR_DEREGISTER_CPUMASK])
diff --git a/kernel/time/alarmtimer.c b/kernel/time/alarmtimer.c
-index c3aad68..c4b87f3 100644
+index 12dd190..6d06782 100644
--- a/kernel/time/alarmtimer.c
+++ b/kernel/time/alarmtimer.c
@@ -522,7 +522,7 @@ static int alarm_clock_getres(const clockid_t which_clock, struct timespec *tp)
@@ -149308,7 +153852,7 @@ index c3aad68..c4b87f3 100644
{
struct alarm_base *base = &alarm_bases[clock2alarm(which_clock)];
-@@ -836,7 +836,7 @@ static int __init alarmtimer_init(void)
+@@ -834,7 +834,7 @@ static int __init alarmtimer_init(void)
struct platform_device *pdev;
int error = 0;
int i;
@@ -149330,7 +153874,7 @@ index 9cff0ab..0e69c94 100644
{
struct posix_clock_desc cd;
int err;
-@@ -297,7 +297,7 @@ out:
+@@ -297,7 +297,7 @@ static int pc_clock_adjtime(clockid_t id, struct timex *tx)
return err;
}
@@ -149546,7 +154090,7 @@ index f2826c3..7e6663a 100644
}
diff --git a/kernel/time/time.c b/kernel/time/time.c
-index 667b933..1668952 100644
+index bd62fb8..8b387ee 100644
--- a/kernel/time/time.c
+++ b/kernel/time/time.c
@@ -177,6 +177,11 @@ int do_sys_settimeofday64(const struct timespec64 *tv, const struct timezone *tz
@@ -149583,14 +154127,14 @@ index 46e312e..c96310f 100644
write_seqcount_begin(&tk_core.seq);
diff --git a/kernel/time/timer.c b/kernel/time/timer.c
-index 96db64b..9133bad 100644
+index c611c47..9133bad 100644
--- a/kernel/time/timer.c
+++ b/kernel/time/timer.c
@@ -1647,7 +1647,7 @@ static inline void __run_timers(struct timer_base *base)
/*
* This function runs timers and the timer-tq in bottom half context.
*/
--static void run_timer_softirq(struct softirq_action *h)
+-static __latent_entropy void run_timer_softirq(struct softirq_action *h)
+static __latent_entropy void run_timer_softirq(void)
{
struct timer_base *base = this_cpu_ptr(&timer_bases[BASE_STD]);
@@ -149616,7 +154160,7 @@ index ba7d8b2..aa301b0 100644
}
static void
-@@ -124,11 +128,14 @@ next_one:
+@@ -124,11 +128,14 @@ print_active_timers(struct seq_file *m, struct hrtimer_clock_base *base,
static void
print_base(struct seq_file *m, struct hrtimer_clock_base *base, u64 now)
{
@@ -149717,10 +154261,10 @@ index 087204c..671b5822 100644
return -ENOMEM;
return 0;
diff --git a/kernel/trace/Kconfig b/kernel/trace/Kconfig
-index f4b86e8..18903a2 100644
+index 2a96b06..9c16b00 100644
--- a/kernel/trace/Kconfig
+++ b/kernel/trace/Kconfig
-@@ -107,6 +107,7 @@ config TRACING
+@@ -102,6 +102,7 @@ config TRACING
config GENERIC_TRACER
bool
select TRACING
@@ -149728,7 +154272,7 @@ index f4b86e8..18903a2 100644
#
# Minimum requirements an architecture has to meet for us to
-@@ -120,6 +121,7 @@ config TRACING_SUPPORT
+@@ -115,6 +116,7 @@ config TRACING_SUPPORT
# irqflags tracing for your architecture.
depends on TRACE_IRQFLAGS_SUPPORT || PPC32
depends on STACKTRACE_SUPPORT
@@ -149736,7 +154280,15 @@ index f4b86e8..18903a2 100644
default y
if TRACING_SUPPORT
-@@ -225,6 +227,7 @@ config ENABLE_DEFAULT_TRACERS
+@@ -147,6 +149,7 @@ config FUNCTION_GRAPH_TRACER
+ depends on HAVE_FUNCTION_GRAPH_TRACER
+ depends on FUNCTION_TRACER
+ depends on !X86_32 || !CC_OPTIMIZE_FOR_SIZE
++ depends on !PAX_RAP
+ default y
+ help
+ Enable the kernel to trace a function at both its return
+@@ -255,6 +258,7 @@ config ENABLE_DEFAULT_TRACERS
bool "Trace process context switches and events"
depends on !GENERIC_TRACER
select TRACING
@@ -149744,7 +154296,7 @@ index f4b86e8..18903a2 100644
help
This tracer hooks to various trace points in the kernel,
allowing the user to pick and choose which trace point they
-@@ -378,6 +381,7 @@ config BLK_DEV_IO_TRACE
+@@ -408,6 +412,7 @@ config BLK_DEV_IO_TRACE
depends on BLOCK
select RELAY
select DEBUG_FS
@@ -149752,7 +154304,7 @@ index f4b86e8..18903a2 100644
select TRACEPOINTS
select GENERIC_TRACER
select STACKTRACE
-@@ -402,6 +406,7 @@ config KPROBE_EVENT
+@@ -432,6 +437,7 @@ config KPROBE_EVENT
depends on HAVE_REGS_AND_STACK_ACCESS_API
bool "Enable kprobes-based dynamic events"
select TRACING
@@ -149760,7 +154312,7 @@ index f4b86e8..18903a2 100644
select PROBE_EVENTS
default y
help
-@@ -423,6 +428,7 @@ config UPROBE_EVENT
+@@ -453,6 +459,7 @@ config UPROBE_EVENT
select UPROBES
select PROBE_EVENTS
select TRACING
@@ -149800,7 +154352,7 @@ index dbafc5d..819bd5d 100644
ret = -EIO;
diff --git a/kernel/trace/ftrace.c b/kernel/trace/ftrace.c
-index b1d7f1b..22e2e5b 100644
+index da87b3c..2f63cc9 100644
--- a/kernel/trace/ftrace.c
+++ b/kernel/trace/ftrace.c
@@ -120,8 +120,9 @@ static void ftrace_ops_list_func(unsigned long ip, unsigned long parent_ip,
@@ -149815,7 +154367,7 @@ index b1d7f1b..22e2e5b 100644
#endif
/*
-@@ -2492,13 +2493,18 @@ ftrace_code_disable(struct module *mod, struct dyn_ftrace *rec)
+@@ -2498,13 +2499,18 @@ ftrace_code_disable(struct module *mod, struct dyn_ftrace *rec)
if (unlikely(ftrace_disabled))
return 0;
@@ -149836,7 +154388,7 @@ index b1d7f1b..22e2e5b 100644
}
/*
-@@ -4872,8 +4878,10 @@ static int ftrace_process_locs(struct module *mod,
+@@ -4878,8 +4884,10 @@ static int ftrace_process_locs(struct module *mod,
if (!count)
return 0;
@@ -149847,7 +154399,7 @@ index b1d7f1b..22e2e5b 100644
start_pg = ftrace_allocate_pages(count);
if (!start_pg)
-@@ -5289,7 +5297,8 @@ static void ftrace_ops_list_func(unsigned long ip, unsigned long parent_ip,
+@@ -5295,7 +5303,8 @@ static void ftrace_ops_list_func(unsigned long ip, unsigned long parent_ip,
__ftrace_ops_list_func(ip, parent_ip, NULL, regs);
}
#else
@@ -149857,7 +154409,7 @@ index b1d7f1b..22e2e5b 100644
{
__ftrace_ops_list_func(ip, parent_ip, NULL, NULL);
}
-@@ -5712,8 +5721,12 @@ int ftrace_graph_entry_stub(struct ftrace_graph_ent *trace)
+@@ -5718,8 +5727,12 @@ int ftrace_graph_entry_stub(struct ftrace_graph_ent *trace)
}
/* The callbacks that hook a function */
@@ -149872,7 +154424,7 @@ index b1d7f1b..22e2e5b 100644
trace_func_graph_ent_t ftrace_graph_entry = ftrace_graph_entry_stub;
static trace_func_graph_ent_t __ftrace_graph_entry = ftrace_graph_entry_stub;
-@@ -5746,7 +5759,7 @@ static int alloc_retstack_tasklist(struct ftrace_ret_stack **ret_stack_list)
+@@ -5752,7 +5765,7 @@ static int alloc_retstack_tasklist(struct ftrace_ret_stack **ret_stack_list)
if (t->ret_stack == NULL) {
atomic_set(&t->tracing_graph_pause, 0);
@@ -149881,7 +154433,7 @@ index b1d7f1b..22e2e5b 100644
t->curr_ret_stack = -1;
/* Make sure the tasks see the -1 first: */
smp_wmb();
-@@ -5941,7 +5954,7 @@ void unregister_ftrace_graph(void)
+@@ -5947,7 +5960,7 @@ void unregister_ftrace_graph(void)
goto out;
ftrace_graph_active--;
@@ -149890,7 +154442,7 @@ index b1d7f1b..22e2e5b 100644
ftrace_graph_entry = ftrace_graph_entry_stub;
__ftrace_graph_entry = ftrace_graph_entry_stub;
ftrace_shutdown(&graph_ops, FTRACE_STOP_FUNC_RET);
-@@ -5969,7 +5982,7 @@ static void
+@@ -5975,7 +5988,7 @@ static void
graph_init_task(struct task_struct *t, struct ftrace_ret_stack *ret_stack)
{
atomic_set(&t->tracing_graph_pause, 0);
@@ -150243,7 +154795,7 @@ index 9c14373..5ddd763 100644
*data_page = bpage;
diff --git a/kernel/trace/trace.c b/kernel/trace/trace.c
-index 7bc5676..90db3d8 100644
+index 8696ce6..3bd9109 100644
--- a/kernel/trace/trace.c
+++ b/kernel/trace/trace.c
@@ -3883,7 +3883,7 @@ int trace_keep_overwrite(struct tracer *tracer, u32 mask, int set)
@@ -150256,10 +154808,10 @@ index 7bc5676..90db3d8 100644
/* do nothing if flag is already set */
if (!!(tr->trace_flags & mask) == !!enabled)
diff --git a/kernel/trace/trace.h b/kernel/trace/trace.h
-index f783df4..6d1062f 100644
+index fd24b1f..bdbb85b 100644
--- a/kernel/trace/trace.h
+++ b/kernel/trace/trace.h
-@@ -1610,7 +1610,7 @@ void trace_printk_control(bool enabled);
+@@ -1615,7 +1615,7 @@ void trace_printk_control(bool enabled);
void trace_printk_init_buffers(void);
void trace_printk_start_comm(void);
int trace_keep_overwrite(struct tracer *tracer, u32 mask, int set);
@@ -150316,7 +154868,7 @@ index f3a960e..f4ce9f9 100644
static int hist_show(struct seq_file *m, void *v)
diff --git a/kernel/trace/trace_functions_graph.c b/kernel/trace/trace_functions_graph.c
-index 16047a8..6ca9aaf 100644
+index a17cb1d..5257e6a 100644
--- a/kernel/trace/trace_functions_graph.c
+++ b/kernel/trace/trace_functions_graph.c
@@ -138,7 +138,7 @@ ftrace_push_return_trace(unsigned long ret, unsigned long func, int *depth,
@@ -150328,7 +154880,7 @@ index 16047a8..6ca9aaf 100644
return -EBUSY;
}
-@@ -235,7 +235,7 @@ ftrace_pop_return_trace(struct ftrace_graph_ret *trace, unsigned long *ret,
+@@ -239,7 +239,7 @@ ftrace_pop_return_trace(struct ftrace_graph_ret *trace, unsigned long *ret,
*ret = current->ret_stack[index].ret;
trace->func = current->ret_stack[index].func;
trace->calltime = current->ret_stack[index].calltime;
@@ -150378,7 +154930,7 @@ index cd7480d..f97e6e4 100644
}
entry = ring_buffer_event_data(event);
diff --git a/kernel/trace/trace_output.c b/kernel/trace/trace_output.c
-index 0bb9cf2..f319026 100644
+index 3fc2042..afd22a2 100644
--- a/kernel/trace/trace_output.c
+++ b/kernel/trace/trace_output.c
@@ -717,14 +717,16 @@ int register_trace_event(struct trace_event *event)
@@ -150475,7 +155027,7 @@ index 2a1abba..2a81a78 100644
/* Can't do this from NMI context (can cause deadlocks) */
diff --git a/kernel/trace/trace_syscalls.c b/kernel/trace/trace_syscalls.c
-index b2b6efc..52e0a3d 100644
+index 5e10395..c258d96 100644
--- a/kernel/trace/trace_syscalls.c
+++ b/kernel/trace/trace_syscalls.c
@@ -605,6 +605,8 @@ static int perf_sysenter_enable(struct trace_event_call *call)
@@ -150487,7 +155039,7 @@ index b2b6efc..52e0a3d 100644
mutex_lock(&syscall_trace_lock);
if (!sys_perf_refcount_enter)
-@@ -625,6 +627,8 @@ static void perf_sysenter_disable(struct trace_event_call *call)
+@@ -624,6 +626,8 @@ static void perf_sysenter_disable(struct trace_event_call *call)
int num;
num = ((struct syscall_metadata *)call->data)->syscall_nr;
@@ -150496,7 +155048,7 @@ index b2b6efc..52e0a3d 100644
mutex_lock(&syscall_trace_lock);
sys_perf_refcount_enter--;
-@@ -677,6 +681,8 @@ static int perf_sysexit_enable(struct trace_event_call *call)
+@@ -676,6 +680,8 @@ static int perf_sysexit_enable(struct trace_event_call *call)
int num;
num = ((struct syscall_metadata *)call->data)->syscall_nr;
@@ -150505,7 +155057,7 @@ index b2b6efc..52e0a3d 100644
mutex_lock(&syscall_trace_lock);
if (!sys_perf_refcount_exit)
-@@ -697,6 +703,8 @@ static void perf_sysexit_disable(struct trace_event_call *call)
+@@ -695,6 +701,8 @@ static void perf_sysexit_disable(struct trace_event_call *call)
int num;
num = ((struct syscall_metadata *)call->data)->syscall_nr;
@@ -150690,6 +155242,19 @@ index 618838f..3dc1b9b 100644
};
/**
+diff --git a/kernel/ucount.c b/kernel/ucount.c
+index 4bbd38e..c515805 100644
+--- a/kernel/ucount.c
++++ b/kernel/ucount.c
+@@ -81,7 +81,7 @@ static struct ctl_table user_table[] = {
+ bool setup_userns_sysctls(struct user_namespace *ns)
+ {
+ #ifdef CONFIG_SYSCTL
+- struct ctl_table *tbl;
++ ctl_table_no_const *tbl;
+ setup_sysctl_set(&ns->set, &set_root, set_is_seen);
+ tbl = kmemdup(user_table, sizeof(user_table), GFP_KERNEL);
+ if (tbl) {
diff --git a/kernel/user.c b/kernel/user.c
index b069ccb..c59fe26 100644
--- a/kernel/user.c
@@ -150705,12 +155270,12 @@ index b069ccb..c59fe26 100644
uid_hash_remove(up);
spin_unlock_irqrestore(&uidhash_lock, flags);
diff --git a/kernel/user_namespace.c b/kernel/user_namespace.c
-index 68f5942..8576ce7 100644
+index 86b7854..0c3cfe2 100644
--- a/kernel/user_namespace.c
+++ b/kernel/user_namespace.c
-@@ -84,6 +84,21 @@ int create_user_ns(struct cred *new)
- !kgid_has_mapping(parent_ns, group))
- return -EPERM;
+@@ -76,6 +76,21 @@ int create_user_ns(struct cred *new)
+ struct ucounts *ucounts;
+ int ret, i;
+#ifdef CONFIG_GRKERNSEC
+ /*
@@ -150727,10 +155292,10 @@ index 68f5942..8576ce7 100644
+ return -EPERM;
+#endif
+
- ns = kmem_cache_zalloc(user_ns_cachep, GFP_KERNEL);
- if (!ns)
- return -ENOMEM;
-@@ -988,7 +1003,7 @@ static int userns_install(struct nsproxy *nsproxy, struct ns_common *ns)
+ ret = -ENOSPC;
+ if (parent_ns->level > 32)
+ goto fail;
+@@ -1034,7 +1049,7 @@ static int userns_install(struct nsproxy *nsproxy, struct ns_common *ns)
if (!thread_group_empty(current))
return -EINVAL;
@@ -150766,7 +155331,7 @@ index 6d1020c..ae8f990 100644
.thread_should_run = watchdog_should_run,
.thread_fn = watchdog,
diff --git a/kernel/workqueue.c b/kernel/workqueue.c
-index ef071ca..621135c 100644
+index 479d840..fb60c83 100644
--- a/kernel/workqueue.c
+++ b/kernel/workqueue.c
@@ -1922,9 +1922,8 @@ static void pool_mayday_timeout(unsigned long __pool)
@@ -150791,7 +155356,7 @@ index ef071ca..621135c 100644
{
struct pool_workqueue *pwq = get_work_pwq(work);
struct worker_pool *pool = worker->pool;
-@@ -4573,7 +4571,7 @@ static void rebind_workers(struct worker_pool *pool)
+@@ -4585,7 +4583,7 @@ static void rebind_workers(struct worker_pool *pool)
WARN_ON_ONCE(!(worker_flags & WORKER_UNBOUND));
worker_flags |= WORKER_REBOUND;
worker_flags &= ~WORKER_UNBOUND;
@@ -150931,10 +155496,10 @@ index 11fc39b..e5cfa58 100644
break;
default: /* use template */
diff --git a/lib/Kconfig.debug b/lib/Kconfig.debug
-index cab7405..c65d473 100644
+index a6c8db1..8ff38cd 100644
--- a/lib/Kconfig.debug
+++ b/lib/Kconfig.debug
-@@ -243,6 +243,7 @@ config PAGE_OWNER
+@@ -244,6 +244,7 @@ config PAGE_OWNER
bool "Track page owner"
depends on DEBUG_KERNEL && STACKTRACE_SUPPORT
select DEBUG_FS
@@ -150942,7 +155507,7 @@ index cab7405..c65d473 100644
select STACKTRACE
select STACKDEPOT
select PAGE_EXTENSION
-@@ -259,6 +260,7 @@ config PAGE_OWNER
+@@ -260,6 +261,7 @@ config PAGE_OWNER
config DEBUG_FS
bool "Debug Filesystem"
select SRCU
@@ -150950,7 +155515,7 @@ index cab7405..c65d473 100644
help
debugfs is a virtual file system that kernel developers use to put
debugging files into. Enable this option to be able to read and
-@@ -512,6 +514,7 @@ config DEBUG_KMEMLEAK
+@@ -513,6 +515,7 @@ config DEBUG_KMEMLEAK
bool "Kernel memory leak detector"
depends on DEBUG_KERNEL && HAVE_DEBUG_KMEMLEAK
select DEBUG_FS
@@ -150958,7 +155523,7 @@ index cab7405..c65d473 100644
select STACKTRACE if STACKTRACE_SUPPORT
select KALLSYMS
select CRC32
-@@ -711,6 +714,7 @@ config KCOV
+@@ -712,6 +715,7 @@ config KCOV
select DEBUG_FS
select GCC_PLUGINS if !COMPILE_TEST
select GCC_PLUGIN_SANCOV if !COMPILE_TEST
@@ -150966,7 +155531,7 @@ index cab7405..c65d473 100644
help
KCOV exposes kernel code coverage information in a form suitable
for coverage-guided fuzzing (randomized testing).
-@@ -1012,7 +1016,7 @@ config DEBUG_MUTEXES
+@@ -1013,7 +1017,7 @@ config DEBUG_MUTEXES
config DEBUG_WW_MUTEX_SLOWPATH
bool "Wait/wound mutex debugging: Slowpath testing"
@@ -150975,7 +155540,7 @@ index cab7405..c65d473 100644
select DEBUG_LOCK_ALLOC
select DEBUG_SPINLOCK
select DEBUG_MUTEXES
-@@ -1029,7 +1033,7 @@ config DEBUG_WW_MUTEX_SLOWPATH
+@@ -1030,7 +1034,7 @@ config DEBUG_WW_MUTEX_SLOWPATH
config DEBUG_LOCK_ALLOC
bool "Lock debugging: detect incorrect freeing of live locks"
@@ -150984,7 +155549,7 @@ index cab7405..c65d473 100644
select DEBUG_SPINLOCK
select DEBUG_MUTEXES
select LOCKDEP
-@@ -1043,7 +1047,7 @@ config DEBUG_LOCK_ALLOC
+@@ -1044,7 +1048,7 @@ config DEBUG_LOCK_ALLOC
config PROVE_LOCKING
bool "Lock debugging: prove locking correctness"
@@ -150993,7 +155558,7 @@ index cab7405..c65d473 100644
select LOCKDEP
select DEBUG_SPINLOCK
select DEBUG_MUTEXES
-@@ -1094,7 +1098,7 @@ config LOCKDEP
+@@ -1098,7 +1102,7 @@ config LOCKDEP
config LOCK_STAT
bool "Lock usage statistics"
@@ -151002,7 +155567,7 @@ index cab7405..c65d473 100644
select LOCKDEP
select DEBUG_SPINLOCK
select DEBUG_MUTEXES
-@@ -1507,6 +1511,7 @@ config NOTIFIER_ERROR_INJECTION
+@@ -1511,6 +1515,7 @@ config NOTIFIER_ERROR_INJECTION
tristate "Notifier error injection"
depends on DEBUG_KERNEL
select DEBUG_FS
@@ -151010,7 +155575,7 @@ index cab7405..c65d473 100644
help
This option provides the ability to inject artificial errors to
specified notifier chain callbacks. It is useful to test the error
-@@ -1652,6 +1657,7 @@ config FAIL_MMC_REQUEST
+@@ -1656,6 +1661,7 @@ config FAIL_MMC_REQUEST
config FAIL_FUTEX
bool "Fault-injection capability for futexes"
select DEBUG_FS
@@ -151018,7 +155583,7 @@ index cab7405..c65d473 100644
depends on FAULT_INJECTION && FUTEX
help
Provide fault-injection capability for futexes.
-@@ -1676,6 +1682,7 @@ config LATENCYTOP
+@@ -1680,6 +1686,7 @@ config LATENCYTOP
depends on DEBUG_KERNEL
depends on STACKTRACE_SUPPORT
depends on PROC_FS
@@ -151026,7 +155591,7 @@ index cab7405..c65d473 100644
select FRAME_POINTER if !MIPS && !PPC && !S390 && !MICROBLAZE && !ARM_UNWIND && !ARC
select KALLSYMS
select KALLSYMS_ALL
-@@ -1830,7 +1837,7 @@ endmenu # runtime tests
+@@ -1834,7 +1841,7 @@ endmenu # runtime tests
config PROVIDE_OHCI1394_DMA_INIT
bool "Remote debugging over FireWire early on boot"
@@ -151048,7 +155613,7 @@ index 846e039..63ef284 100644
select STACKTRACE
default n
diff --git a/lib/Makefile b/lib/Makefile
-index 5dc77a8..8c18345 100644
+index 50144a3..21d91da 100644
--- a/lib/Makefile
+++ b/lib/Makefile
@@ -76,7 +76,7 @@ obj-$(CONFIG_BTREE) += btree.o
@@ -151061,7 +155626,7 @@ index 5dc77a8..8c18345 100644
ifneq ($(CONFIG_HAVE_DEC_LOCK),y)
diff --git a/lib/bitmap.c b/lib/bitmap.c
-index eca8808..23b3fd8 100644
+index 0b66f0e..58f3aef 100644
--- a/lib/bitmap.c
+++ b/lib/bitmap.c
@@ -363,7 +363,7 @@ int __bitmap_parse(const char *buf, unsigned int buflen,
@@ -151082,16 +155647,16 @@ index eca8808..23b3fd8 100644
ulen, 1, maskp, nmaskbits);
}
-@@ -509,7 +509,7 @@ static int __bitmap_parselist(const char *buf, unsigned int buflen,
- {
- unsigned a, b;
+@@ -515,7 +515,7 @@ static int __bitmap_parselist(const char *buf, unsigned int buflen,
+ unsigned int a, b, old_a, old_b;
+ unsigned int group_size, used_size;
int c, old_c, totaldigits, ndigits;
- const char __user __force *ubuf = (const char __user __force *)buf;
+ const char __user *ubuf = (const char __force_user *)buf;
- int at_start, in_range;
+ int at_start, in_range, in_partial_range;
totaldigits = c = 0;
-@@ -613,7 +613,7 @@ int bitmap_parselist_user(const char __user *ubuf,
+@@ -655,7 +655,7 @@ int bitmap_parselist_user(const char __user *ubuf,
{
if (!access_ok(VERIFY_READ, ubuf, ulen))
return -EFAULT;
@@ -151114,7 +155679,7 @@ index bc3656e..470f3ab 100644
file = NULL;
line = 0;
diff --git a/lib/debugobjects.c b/lib/debugobjects.c
-index a8e1260..cf8f2be 100644
+index 056052dc..6f17c2e 100644
--- a/lib/debugobjects.c
+++ b/lib/debugobjects.c
@@ -288,7 +288,7 @@ static void debug_object_is_on_stack(void *addr, int onstack)
@@ -151180,10 +155745,10 @@ index 7f34525..c53be4b 100644
u32 high = divisor >> 32;
u64 quot;
diff --git a/lib/dma-debug.c b/lib/dma-debug.c
-index fcfa193..b345d59 100644
+index 8971370..79eb3f27 100644
--- a/lib/dma-debug.c
+++ b/lib/dma-debug.c
-@@ -984,7 +984,7 @@ static int dma_debug_device_change(struct notifier_block *nb, unsigned long acti
+@@ -990,7 +990,7 @@ static int dma_debug_device_change(struct notifier_block *nb, unsigned long acti
void dma_debug_add_bus(struct bus_type *bus)
{
@@ -151192,15 +155757,23 @@ index fcfa193..b345d59 100644
if (dma_debug_disabled())
return;
-@@ -1166,7 +1166,7 @@ static void check_unmap(struct dma_debug_entry *ref)
+@@ -1181,7 +1181,7 @@ static void check_for_stack(struct device *dev,
+ if (PageHighMem(page))
+ return;
+ addr = page_address(page) + offset;
+- if (object_is_on_stack(addr))
++ if (object_starts_on_stack(addr))
+ err_printk(dev, NULL, "DMA-API: device driver maps memory from stack [addr=%p]\n", addr);
+ } else {
+ /* Stack is vmalloced. */
+@@ -1193,6 +1193,7 @@ static void check_for_stack(struct device *dev,
- static void check_for_stack(struct device *dev, void *addr)
- {
-- if (object_is_on_stack(addr))
-+ if (object_starts_on_stack(addr))
- err_printk(dev, NULL, "DMA-API: device driver maps memory from "
- "stack [addr=%p]\n", addr);
- }
+ addr = (u8 *)current->stack + i * PAGE_SIZE + offset;
+ err_printk(dev, NULL, "DMA-API: device driver maps memory from stack [probable addr=%p]\n", addr);
++ dump_stack();
+ break;
+ }
+ }
diff --git a/lib/inflate.c b/lib/inflate.c
index 013a761..c28f3fc 100644
--- a/lib/inflate.c
@@ -151237,15 +155810,15 @@ index 86c8911..f5bfc34 100644
return -ENOMEM;
do {
diff --git a/lib/irq_poll.c b/lib/irq_poll.c
-index 836f7db..44d9849 100644
+index 1d6565e8..effaf13 100644
--- a/lib/irq_poll.c
+++ b/lib/irq_poll.c
@@ -74,7 +74,7 @@ void irq_poll_complete(struct irq_poll *iop)
}
EXPORT_SYMBOL(irq_poll_complete);
--static void irq_poll_softirq(struct softirq_action *h)
-+static __latent_entropy void irq_poll_softirq(void)
+-static void __latent_entropy irq_poll_softirq(struct softirq_action *h)
++static void __latent_entropy irq_poll_softirq(void)
{
struct list_head *list = this_cpu_ptr(&blk_cpu_iopoll);
int rearm = 0, budget = irq_poll_budget;
@@ -151280,7 +155853,7 @@ index 445dcae..cbfd25d 100644
enum kobj_ns_type type = ops->type;
int error;
diff --git a/lib/list_debug.c b/lib/list_debug.c
-index 3859bf6..818741d6 100644
+index 3859bf6..38bdeaa 100644
--- a/lib/list_debug.c
+++ b/lib/list_debug.c
@@ -11,7 +11,9 @@
@@ -151408,7 +155981,7 @@ index 3859bf6..818741d6 100644
}
EXPORT_SYMBOL(__list_del_entry);
-@@ -86,15 +125,85 @@ EXPORT_SYMBOL(list_del);
+@@ -86,15 +125,84 @@ EXPORT_SYMBOL(list_del);
void __list_add_rcu(struct list_head *new,
struct list_head *prev, struct list_head *next)
{
@@ -151495,7 +156068,6 @@ index 3859bf6..818741d6 100644
+
+ pax_open_kernel();
+ __list_del(entry->prev, entry->next);
-+ entry->next = LIST_POISON1;
+ entry->prev = LIST_POISON2;
+ pax_close_kernel();
+}
@@ -151681,7 +156253,7 @@ index fce1e9a..d44559b 100644
if (count > minlen)
memset(dest + minlen, 0, count - minlen);
diff --git a/lib/percpu-refcount.c b/lib/percpu-refcount.c
-index 27fe749..2c0e855 100644
+index 9ac959e..6c94a5e 100644
--- a/lib/percpu-refcount.c
+++ b/lib/percpu-refcount.c
@@ -31,7 +31,7 @@
@@ -151691,8 +156263,8 @@ index 27fe749..2c0e855 100644
-#define PERCPU_COUNT_BIAS (1LU << (BITS_PER_LONG - 1))
+#define PERCPU_COUNT_BIAS (1LU << (BITS_PER_LONG - 2))
+ static DEFINE_SPINLOCK(percpu_ref_switch_lock);
static DECLARE_WAIT_QUEUE_HEAD(percpu_ref_switch_waitq);
-
diff --git a/lib/radix-tree.c b/lib/radix-tree.c
index 8e6d552..3b33b84 100644
--- a/lib/radix-tree.c
@@ -151706,19 +156278,6 @@ index 8e6d552..3b33b84 100644
static inline void *node_to_entry(void *ptr)
{
-diff --git a/lib/random32.c b/lib/random32.c
-index 69ed593..a309235 100644
---- a/lib/random32.c
-+++ b/lib/random32.c
-@@ -47,7 +47,7 @@ static inline void prandom_state_selftest(void)
- }
- #endif
-
--static DEFINE_PER_CPU(struct rnd_state, net_rand_state);
-+static DEFINE_PER_CPU(struct rnd_state, net_rand_state) __latent_entropy;
-
- /**
- * prandom_u32_state - seeded pseudo-random number generator.
diff --git a/lib/rbtree.c b/lib/rbtree.c
index eb8a19f..3cb9b61 100644
--- a/lib/rbtree.c
@@ -151735,10 +156294,10 @@ index eb8a19f..3cb9b61 100644
void rb_insert_color(struct rb_node *node, struct rb_root *root)
diff --git a/lib/rhashtable.c b/lib/rhashtable.c
-index 56054e5..dd1cdc4 100644
+index 32d0ad0..7db49b5 100644
--- a/lib/rhashtable.c
+++ b/lib/rhashtable.c
-@@ -563,8 +563,8 @@ EXPORT_SYMBOL_GPL(rhashtable_walk_exit);
+@@ -651,8 +651,8 @@ EXPORT_SYMBOL_GPL(rhashtable_walk_exit);
* will rewind back to the beginning and you may use it immediately
* by calling rhashtable_walk_next.
*/
@@ -151748,7 +156307,7 @@ index 56054e5..dd1cdc4 100644
{
struct rhashtable *ht = iter->ht;
-@@ -648,8 +648,8 @@ EXPORT_SYMBOL_GPL(rhashtable_walk_next);
+@@ -754,8 +754,8 @@ EXPORT_SYMBOL_GPL(rhashtable_walk_next);
*
* Finish a hash table walk.
*/
@@ -151757,7 +156316,7 @@ index 56054e5..dd1cdc4 100644
- __releases(RCU)
{
struct rhashtable *ht;
- struct bucket_table *tbl = iter->walker->tbl;
+ struct bucket_table *tbl = iter->walker.tbl;
diff --git a/lib/seq_buf.c b/lib/seq_buf.c
index cb18469..20ac511 100644
--- a/lib/seq_buf.c
@@ -151793,10 +156352,10 @@ index 1feed6a..4ede1e9 100644
#endif
}
diff --git a/lib/strncpy_from_user.c b/lib/strncpy_from_user.c
-index 9c5fe81..00657ec 100644
+index 7e35fc4..808ece4 100644
--- a/lib/strncpy_from_user.c
+++ b/lib/strncpy_from_user.c
-@@ -23,7 +23,7 @@
+@@ -24,7 +24,7 @@
*/
static inline long do_strncpy_from_user(char *dst, const char __user *src, long count, unsigned long max)
{
@@ -151996,7 +156555,7 @@ index 0000000..7cd6065
@@ -0,0 +1 @@
+-grsec
diff --git a/mm/Kconfig b/mm/Kconfig
-index be0ee11..8e98a95 100644
+index 86e3e0e..ab679cf 100644
--- a/mm/Kconfig
+++ b/mm/Kconfig
@@ -342,10 +342,11 @@ config KSM
@@ -152042,7 +156601,7 @@ index be0ee11..8e98a95 100644
This option enables code in the zsmalloc to collect various
statistics about whats happening in zsmalloc and exports that
diff --git a/mm/Kconfig.debug b/mm/Kconfig.debug
-index 22f4cd9..ed3f097 100644
+index afcc550..ed3f097 100644
--- a/mm/Kconfig.debug
+++ b/mm/Kconfig.debug
@@ -10,6 +10,7 @@ config PAGE_EXTENSION
@@ -152053,15 +156612,6 @@ index 22f4cd9..ed3f097 100644
depends on !HIBERNATION || ARCH_SUPPORTS_DEBUG_PAGEALLOC && !PPC && !SPARC
depends on !KMEMCHECK
select PAGE_EXTENSION
-@@ -76,8 +77,6 @@ config PAGE_POISONING_ZERO
- no longer necessary to write zeros when GFP_ZERO is used on
- allocation.
-
-- Enabling page poisoning with this option will disable hibernation
--
- If unsure, say N
- bool
-
diff --git a/mm/backing-dev.c b/mm/backing-dev.c
index 8fde443..a8cc381 100644
--- a/mm/backing-dev.c
@@ -152088,7 +156638,7 @@ diff --git a/mm/fadvise.c b/mm/fadvise.c
index 6c707bf..c8d0529 100644
--- a/mm/fadvise.c
+++ b/mm/fadvise.c
-@@ -165,7 +165,7 @@ out:
+@@ -165,7 +165,7 @@ SYSCALL_DEFINE4(fadvise64_64, int, fd, loff_t, offset, loff_t, len, int, advice)
#ifdef __ARCH_WANT_SYS_FADVISE64
@@ -152098,10 +156648,10 @@ index 6c707bf..c8d0529 100644
return sys_fadvise64_64(fd, offset, len, advice);
}
diff --git a/mm/filemap.c b/mm/filemap.c
-index f1da48d..b3151bf 100644
+index d8d7df8..56aaf83 100644
--- a/mm/filemap.c
+++ b/mm/filemap.c
-@@ -2334,7 +2334,7 @@ int generic_file_mmap(struct file * file, struct vm_area_struct * vma)
+@@ -2342,7 +2342,7 @@ int generic_file_mmap(struct file * file, struct vm_area_struct * vma)
struct address_space *mapping = file->f_mapping;
if (!mapping->a_ops->readpage)
@@ -152110,7 +156660,7 @@ index f1da48d..b3151bf 100644
file_accessed(file);
vma->vm_ops = &generic_file_vm_ops;
return 0;
-@@ -2377,7 +2377,7 @@ static struct page *wait_on_page_read(struct page *page)
+@@ -2385,7 +2385,7 @@ static struct page *wait_on_page_read(struct page *page)
static struct page *do_read_cache_page(struct address_space *mapping,
pgoff_t index,
@@ -152119,7 +156669,7 @@ index f1da48d..b3151bf 100644
void *data,
gfp_t gfp)
{
-@@ -2484,7 +2484,7 @@ out:
+@@ -2492,7 +2492,7 @@ static struct page *do_read_cache_page(struct address_space *mapping,
*/
struct page *read_cache_page(struct address_space *mapping,
pgoff_t index,
@@ -152128,7 +156678,7 @@ index f1da48d..b3151bf 100644
void *data)
{
return do_read_cache_page(mapping, index, filler, data, mapping_gfp_mask(mapping));
-@@ -2506,7 +2506,7 @@ struct page *read_cache_page_gfp(struct address_space *mapping,
+@@ -2514,7 +2514,7 @@ struct page *read_cache_page_gfp(struct address_space *mapping,
pgoff_t index,
gfp_t gfp)
{
@@ -152137,7 +156687,7 @@ index f1da48d..b3151bf 100644
return do_read_cache_page(mapping, index, filler, NULL, gfp);
}
-@@ -2536,6 +2536,7 @@ inline ssize_t generic_write_checks(struct kiocb *iocb, struct iov_iter *from)
+@@ -2544,6 +2544,7 @@ inline ssize_t generic_write_checks(struct kiocb *iocb, struct iov_iter *from)
pos = iocb->ki_pos;
if (limit != RLIM_INFINITY) {
@@ -152146,7 +156696,7 @@ index f1da48d..b3151bf 100644
send_sig(SIGXFSZ, current, 0);
return -EFBIG;
diff --git a/mm/gup.c b/mm/gup.c
-index 22cc22e..361d456 100644
+index ec4f827..6a9bb0b 100644
--- a/mm/gup.c
+++ b/mm/gup.c
@@ -370,11 +370,6 @@ static int faultin_page(struct task_struct *tsk, struct vm_area_struct *vma,
@@ -152161,7 +156711,7 @@ index 22cc22e..361d456 100644
if (*flags & FOLL_WRITE)
fault_flags |= FAULT_FLAG_WRITE;
if (*flags & FOLL_REMOTE)
-@@ -548,14 +543,14 @@ long __get_user_pages(struct task_struct *tsk, struct mm_struct *mm,
+@@ -548,14 +543,14 @@ static long __get_user_pages(struct task_struct *tsk, struct mm_struct *mm,
if (!(gup_flags & FOLL_FORCE))
gup_flags |= FOLL_NUMA;
@@ -152178,7 +156728,7 @@ index 22cc22e..361d456 100644
if (!vma && in_gate_area(mm, start)) {
int ret;
ret = get_gate_page(mm, start & PAGE_MASK,
-@@ -567,7 +562,7 @@ long __get_user_pages(struct task_struct *tsk, struct mm_struct *mm,
+@@ -567,7 +562,7 @@ static long __get_user_pages(struct task_struct *tsk, struct mm_struct *mm,
goto next_page;
}
@@ -152187,7 +156737,7 @@ index 22cc22e..361d456 100644
return i ? : -EFAULT;
if (is_vm_hugetlb_page(vma)) {
i = follow_hugetlb_page(mm, vma, pages, vmas,
-@@ -628,7 +623,7 @@ next_page:
+@@ -628,7 +623,7 @@ static long __get_user_pages(struct task_struct *tsk, struct mm_struct *mm,
i += page_increm;
start += page_increm * PAGE_SIZE;
nr_pages -= page_increm;
@@ -152195,7 +156745,7 @@ index 22cc22e..361d456 100644
+ }
return i;
}
- EXPORT_SYMBOL(__get_user_pages);
+
diff --git a/mm/highmem.c b/mm/highmem.c
index 50b4ca6..cf64608 100644
--- a/mm/highmem.c
@@ -152211,7 +156761,7 @@ index 50b4ca6..cf64608 100644
set_page_address(page, NULL);
need_flush = 1;
}
-@@ -255,8 +256,11 @@ start:
+@@ -255,8 +256,11 @@ static inline unsigned long map_new_virtual(struct page *page)
}
}
vaddr = PKMAP_ADDR(last_pkmap_nr);
@@ -152224,7 +156774,7 @@ index 50b4ca6..cf64608 100644
pkmap_count[last_pkmap_nr] = 1;
set_page_address(page, (void *)vaddr);
diff --git a/mm/hugetlb.c b/mm/hugetlb.c
-index 0ddce6a..3f23c4f 100644
+index b6adedb..6222175 100644
--- a/mm/hugetlb.c
+++ b/mm/hugetlb.c
@@ -38,7 +38,72 @@ int hugepages_treat_as_movable;
@@ -152301,7 +156851,7 @@ index 0ddce6a..3f23c4f 100644
/*
* Minimum page order among possible hugepage sizes, set to a proper value
* at boot time.
-@@ -2894,6 +2959,7 @@ static int hugetlb_sysctl_handler_common(bool obey_mempolicy,
+@@ -2913,6 +2978,7 @@ static int hugetlb_sysctl_handler_common(bool obey_mempolicy,
struct ctl_table *table, int write,
void __user *buffer, size_t *length, loff_t *ppos)
{
@@ -152309,7 +156859,7 @@ index 0ddce6a..3f23c4f 100644
struct hstate *h = &default_hstate;
unsigned long tmp = h->max_huge_pages;
int ret;
-@@ -2901,9 +2967,10 @@ static int hugetlb_sysctl_handler_common(bool obey_mempolicy,
+@@ -2920,9 +2986,10 @@ static int hugetlb_sysctl_handler_common(bool obey_mempolicy,
if (!hugepages_supported())
return -EOPNOTSUPP;
@@ -152323,7 +156873,7 @@ index 0ddce6a..3f23c4f 100644
if (ret)
goto out;
-@@ -2938,6 +3005,7 @@ int hugetlb_overcommit_handler(struct ctl_table *table, int write,
+@@ -2957,6 +3024,7 @@ int hugetlb_overcommit_handler(struct ctl_table *table, int write,
struct hstate *h = &default_hstate;
unsigned long tmp;
int ret;
@@ -152331,7 +156881,7 @@ index 0ddce6a..3f23c4f 100644
if (!hugepages_supported())
return -EOPNOTSUPP;
-@@ -2947,9 +3015,10 @@ int hugetlb_overcommit_handler(struct ctl_table *table, int write,
+@@ -2966,9 +3034,10 @@ int hugetlb_overcommit_handler(struct ctl_table *table, int write,
if (write && hstate_is_gigantic(h))
return -EINVAL;
@@ -152345,7 +156895,7 @@ index 0ddce6a..3f23c4f 100644
if (ret)
goto out;
-@@ -3443,6 +3512,27 @@ static void unmap_ref_private(struct mm_struct *mm, struct vm_area_struct *vma,
+@@ -3462,6 +3531,27 @@ static void unmap_ref_private(struct mm_struct *mm, struct vm_area_struct *vma,
i_mmap_unlock_write(mapping);
}
@@ -152373,7 +156923,7 @@ index 0ddce6a..3f23c4f 100644
/*
* Hugetlb_cow() should be called with page lock of the original hugepage held.
* Called with hugetlb_instantiation_mutex held and pte_page locked so we
-@@ -3556,6 +3646,11 @@ retry_avoidcopy:
+@@ -3577,6 +3667,11 @@ static int hugetlb_cow(struct mm_struct *mm, struct vm_area_struct *vma,
make_huge_pte(vma, new_page, 1));
page_remove_rmap(old_page, true);
hugepage_add_new_anon_rmap(new_page, vma, address);
@@ -152385,7 +156935,7 @@ index 0ddce6a..3f23c4f 100644
/* Make the old page be freed below */
new_page = old_page;
}
-@@ -3730,6 +3825,10 @@ retry:
+@@ -3751,6 +3846,10 @@ static int hugetlb_no_page(struct mm_struct *mm, struct vm_area_struct *vma,
&& (vma->vm_flags & VM_SHARED)));
set_huge_pte_at(mm, address, ptep, new_pte);
@@ -152396,7 +156946,7 @@ index 0ddce6a..3f23c4f 100644
hugetlb_count_add(pages_per_huge_page(h), mm);
if ((flags & FAULT_FLAG_WRITE) && !(vma->vm_flags & VM_SHARED)) {
/* Optimization, do the COW without a second fault */
-@@ -3799,6 +3898,10 @@ int hugetlb_fault(struct mm_struct *mm, struct vm_area_struct *vma,
+@@ -3820,6 +3919,10 @@ int hugetlb_fault(struct mm_struct *mm, struct vm_area_struct *vma,
struct address_space *mapping;
int need_wait_lock = 0;
@@ -152407,7 +156957,7 @@ index 0ddce6a..3f23c4f 100644
address &= huge_page_mask(h);
ptep = huge_pte_offset(mm, address);
-@@ -3816,6 +3919,26 @@ int hugetlb_fault(struct mm_struct *mm, struct vm_area_struct *vma,
+@@ -3837,6 +3940,26 @@ int hugetlb_fault(struct mm_struct *mm, struct vm_area_struct *vma,
return VM_FAULT_OOM;
}
@@ -152541,7 +157091,7 @@ index eec1150..af03e3e 100644
void __init hugetlb_cgroup_file_init(void)
diff --git a/mm/internal.h b/mm/internal.h
-index 1501304..e026d61 100644
+index 537ac99..fac1401 100644
--- a/mm/internal.h
+++ b/mm/internal.h
@@ -151,6 +151,7 @@ static inline struct page *pageblock_pfn_to_page(unsigned long start_pfn,
@@ -152552,7 +157102,7 @@ index 1501304..e026d61 100644
extern void prep_compound_page(struct page *page, unsigned int order);
extern void post_alloc_hook(struct page *page, unsigned int order,
gfp_t gfp_flags);
-@@ -251,7 +252,7 @@ static inline bool is_exec_mapping(vm_flags_t flags)
+@@ -252,7 +253,7 @@ static inline bool is_exec_mapping(vm_flags_t flags)
*/
static inline bool is_stack_mapping(vm_flags_t flags)
{
@@ -152562,10 +157112,10 @@ index 1501304..e026d61 100644
/*
diff --git a/mm/kmemleak.c b/mm/kmemleak.c
-index 086292f..702caa3 100644
+index d1380ed9..41c63631 100644
--- a/mm/kmemleak.c
+++ b/mm/kmemleak.c
-@@ -367,7 +367,7 @@ static void print_unreferenced(struct seq_file *seq,
+@@ -369,7 +369,7 @@ static void print_unreferenced(struct seq_file *seq,
for (i = 0; i < object->trace_len; i++) {
void *ptr = (void *)object->trace[i];
@@ -152574,7 +157124,7 @@ index 086292f..702caa3 100644
}
}
-@@ -1959,7 +1959,7 @@ static int __init kmemleak_late_init(void)
+@@ -2010,7 +2010,7 @@ static int __init kmemleak_late_init(void)
return -ENOMEM;
}
@@ -152633,7 +157183,7 @@ index 93fb63e..0aa6448 100644
switch (behavior) {
case MADV_NORMAL:
new_flags = new_flags & ~VM_RAND_READ & ~VM_SEQ_READ;
-@@ -132,6 +136,13 @@ success:
+@@ -132,6 +136,13 @@ static long madvise_behavior(struct vm_area_struct *vma,
/*
* vm_flags is protected by the mmap_sem held in write mode.
*/
@@ -152693,10 +157243,10 @@ index 93fb63e..0aa6448 100644
if (end == start)
return error;
diff --git a/mm/memcontrol.c b/mm/memcontrol.c
-index dddead1..8832645 100644
+index 4c6ade5..5601b72 100644
--- a/mm/memcontrol.c
+++ b/mm/memcontrol.c
-@@ -702,7 +702,7 @@ static void memcg_check_events(struct mem_cgroup *memcg, struct page *page)
+@@ -701,7 +701,7 @@ static void memcg_check_events(struct mem_cgroup *memcg, struct page *page)
mem_cgroup_update_tree(memcg, page);
#if MAX_NUMNODES > 1
if (unlikely(do_numainfo))
@@ -152705,7 +157255,7 @@ index dddead1..8832645 100644
#endif
}
}
-@@ -1318,7 +1318,7 @@ static void mem_cgroup_may_update_nodemask(struct mem_cgroup *memcg)
+@@ -1286,7 +1286,7 @@ static void mem_cgroup_may_update_nodemask(struct mem_cgroup *memcg)
* numainfo_events > 0 means there was at least NUMAINFO_EVENTS_TARGET
* pagein/pageout changes since the last update.
*/
@@ -152714,7 +157264,7 @@ index dddead1..8832645 100644
return;
if (atomic_inc_return(&memcg->numainfo_updating) > 1)
return;
-@@ -1332,7 +1332,7 @@ static void mem_cgroup_may_update_nodemask(struct mem_cgroup *memcg)
+@@ -1300,7 +1300,7 @@ static void mem_cgroup_may_update_nodemask(struct mem_cgroup *memcg)
node_clear(nid, memcg->scan_nodes);
}
@@ -152755,7 +157305,7 @@ index 19e796d..9c8fa80 100644
/*
* free pages are specially detected outside this table:
diff --git a/mm/memory.c b/mm/memory.c
-index 793fe0f..9e24e98 100644
+index cbb1e5e..e8b4bc4 100644
--- a/mm/memory.c
+++ b/mm/memory.c
@@ -427,6 +427,7 @@ static inline void free_pmd_range(struct mmu_gather *tlb, pud_t *pud,
@@ -152844,15 +157394,15 @@ index 793fe0f..9e24e98 100644
}
return insert_page(vma, addr, page, vma->vm_page_prot);
}
-@@ -1650,6 +1675,7 @@ int vm_insert_mixed(struct vm_area_struct *vma, unsigned long addr,
- pfn_t pfn)
- {
+@@ -1652,6 +1677,7 @@ int vm_insert_mixed(struct vm_area_struct *vma, unsigned long addr,
+ pgprot_t pgprot = vma->vm_page_prot;
+
BUG_ON(!(vma->vm_flags & VM_MIXEDMAP));
+ BUG_ON(vma->vm_mirror);
if (addr < vma->vm_start || addr >= vma->vm_end)
return -EFAULT;
-@@ -1903,7 +1929,9 @@ static int apply_to_pmd_range(struct mm_struct *mm, pud_t *pud,
+@@ -1907,7 +1933,9 @@ static int apply_to_pmd_range(struct mm_struct *mm, pud_t *pud,
BUG_ON(pud_huge(*pud));
@@ -152863,7 +157413,7 @@ index 793fe0f..9e24e98 100644
if (!pmd)
return -ENOMEM;
do {
-@@ -1923,7 +1951,9 @@ static int apply_to_pud_range(struct mm_struct *mm, pgd_t *pgd,
+@@ -1927,7 +1955,9 @@ static int apply_to_pud_range(struct mm_struct *mm, pgd_t *pgd,
unsigned long next;
int err;
@@ -152874,7 +157424,7 @@ index 793fe0f..9e24e98 100644
if (!pud)
return -ENOMEM;
do {
-@@ -2119,6 +2149,185 @@ static inline int wp_page_reuse(struct fault_env *fe, pte_t orig_pte,
+@@ -2123,6 +2153,185 @@ static inline int wp_page_reuse(struct fault_env *fe, pte_t orig_pte,
return VM_FAULT_WRITE;
}
@@ -153060,7 +157610,7 @@ index 793fe0f..9e24e98 100644
/*
* Handle the case of a page which we actually need to copy to a new page.
*
-@@ -2174,6 +2383,12 @@ static int wp_page_copy(struct fault_env *fe, pte_t orig_pte,
+@@ -2178,6 +2387,12 @@ static int wp_page_copy(struct fault_env *fe, pte_t orig_pte,
*/
fe->pte = pte_offset_map_lock(mm, fe->pmd, fe->address, &fe->ptl);
if (likely(pte_same(*fe->pte, orig_pte))) {
@@ -153073,7 +157623,7 @@ index 793fe0f..9e24e98 100644
if (old_page) {
if (!PageAnon(old_page)) {
dec_mm_counter_fast(mm,
-@@ -2229,6 +2444,11 @@ static int wp_page_copy(struct fault_env *fe, pte_t orig_pte,
+@@ -2233,6 +2448,11 @@ static int wp_page_copy(struct fault_env *fe, pte_t orig_pte,
page_remove_rmap(old_page, false);
}
@@ -153085,7 +157635,7 @@ index 793fe0f..9e24e98 100644
/* Free the old page.. */
new_page = old_page;
page_copied = 1;
-@@ -2653,6 +2873,11 @@ int do_swap_page(struct fault_env *fe, pte_t orig_pte)
+@@ -2657,6 +2877,11 @@ int do_swap_page(struct fault_env *fe, pte_t orig_pte)
if (mem_cgroup_swap_full(page) ||
(vma->vm_flags & VM_LOCKED) || PageMlocked(page))
try_to_free_swap(page);
@@ -153097,7 +157647,7 @@ index 793fe0f..9e24e98 100644
unlock_page(page);
if (page != swapcache) {
/*
-@@ -2676,6 +2901,12 @@ int do_swap_page(struct fault_env *fe, pte_t orig_pte)
+@@ -2680,6 +2905,12 @@ int do_swap_page(struct fault_env *fe, pte_t orig_pte)
/* No need to invalidate - it was non-present before */
update_mmu_cache(vma, fe->address, fe->pte);
@@ -153110,7 +157660,7 @@ index 793fe0f..9e24e98 100644
unlock:
pte_unmap_unlock(fe->pte, fe->ptl);
out:
-@@ -2695,40 +2926,6 @@ out_release:
+@@ -2699,40 +2930,6 @@ int do_swap_page(struct fault_env *fe, pte_t orig_pte)
}
/*
@@ -153151,7 +157701,7 @@ index 793fe0f..9e24e98 100644
* We enter with non-exclusive mmap_sem (to exclude vma changes,
* but allow concurrent faults), and pte mapped but not yet locked.
* We return with mmap_sem still held, but pte unmapped and unlocked.
-@@ -2737,17 +2934,13 @@ static int do_anonymous_page(struct fault_env *fe)
+@@ -2741,17 +2938,13 @@ static int do_anonymous_page(struct fault_env *fe)
{
struct vm_area_struct *vma = fe->vma;
struct mem_cgroup *memcg;
@@ -153170,7 +157720,7 @@ index 793fe0f..9e24e98 100644
/*
* Use pte_alloc() instead of pte_alloc_map(). We can't run
* pte_offset_map() on pmds where a huge pmd might be created
-@@ -2816,6 +3009,11 @@ static int do_anonymous_page(struct fault_env *fe)
+@@ -2820,6 +3013,11 @@ static int do_anonymous_page(struct fault_env *fe)
return handle_userfault(fe, VM_UFFD_MISSING);
}
@@ -153182,7 +157732,7 @@ index 793fe0f..9e24e98 100644
inc_mm_counter_fast(vma->vm_mm, MM_ANONPAGES);
page_add_new_anon_rmap(page, vma, fe->address, false);
mem_cgroup_commit_charge(page, memcg, false, false);
-@@ -2825,6 +3023,12 @@ setpte:
+@@ -2829,6 +3027,12 @@ static int do_anonymous_page(struct fault_env *fe)
/* No need to invalidate - it was non-present before */
update_mmu_cache(vma, fe->address, fe->pte);
@@ -153195,7 +157745,7 @@ index 793fe0f..9e24e98 100644
unlock:
pte_unmap_unlock(fe->pte, fe->ptl);
return 0;
-@@ -3039,6 +3243,13 @@ int alloc_set_pte(struct fault_env *fe, struct mem_cgroup *memcg,
+@@ -3043,6 +3247,13 @@ int alloc_set_pte(struct fault_env *fe, struct mem_cgroup *memcg,
}
set_pte_at(vma->vm_mm, fe->address, fe->pte, entry);
@@ -153209,7 +157759,7 @@ index 793fe0f..9e24e98 100644
/* no need to invalidate: a not-present page won't be cached */
update_mmu_cache(vma, fe->address, fe->pte);
-@@ -3226,6 +3437,11 @@ static int do_cow_fault(struct fault_env *fe, pgoff_t pgoff)
+@@ -3230,6 +3441,11 @@ static int do_cow_fault(struct fault_env *fe, pgoff_t pgoff)
copy_user_highpage(new_page, fault_page, fe->address, vma);
__SetPageUptodate(new_page);
@@ -153221,7 +157771,7 @@ index 793fe0f..9e24e98 100644
ret |= alloc_set_pte(fe, memcg, new_page);
if (fe->pte)
pte_unmap_unlock(fe->pte, fe->ptl);
-@@ -3235,6 +3451,12 @@ static int do_cow_fault(struct fault_env *fe, pgoff_t pgoff)
+@@ -3239,6 +3455,12 @@ static int do_cow_fault(struct fault_env *fe, pgoff_t pgoff)
} else {
dax_unlock_mapping_entry(vma->vm_file->f_mapping, pgoff);
}
@@ -153234,7 +157784,7 @@ index 793fe0f..9e24e98 100644
if (unlikely(ret & (VM_FAULT_ERROR | VM_FAULT_NOPAGE | VM_FAULT_RETRY)))
goto uncharge_out;
return ret;
-@@ -3552,6 +3774,11 @@ static int handle_pte_fault(struct fault_env *fe)
+@@ -3556,6 +3778,11 @@ static int handle_pte_fault(struct fault_env *fe)
if (fe->flags & FAULT_FLAG_WRITE)
flush_tlb_fix_spurious_fault(fe->vma, fe->address);
}
@@ -153246,7 +157796,7 @@ index 793fe0f..9e24e98 100644
unlock:
pte_unmap_unlock(fe->pte, fe->ptl);
return 0;
-@@ -3575,14 +3802,49 @@ static int __handle_mm_fault(struct vm_area_struct *vma, unsigned long address,
+@@ -3579,14 +3806,49 @@ static int __handle_mm_fault(struct vm_area_struct *vma, unsigned long address,
pgd_t *pgd;
pud_t *pud;
@@ -153300,7 +157850,7 @@ index 793fe0f..9e24e98 100644
int ret = create_huge_pmd(&fe);
if (!(ret & VM_FAULT_FALLBACK))
return ret;
-@@ -3592,7 +3854,7 @@ static int __handle_mm_fault(struct vm_area_struct *vma, unsigned long address,
+@@ -3596,7 +3858,7 @@ static int __handle_mm_fault(struct vm_area_struct *vma, unsigned long address,
barrier();
if (pmd_trans_huge(orig_pmd) || pmd_devmap(orig_pmd)) {
@@ -153309,7 +157859,7 @@ index 793fe0f..9e24e98 100644
return do_huge_pmd_numa_page(&fe, orig_pmd);
if ((fe.flags & FAULT_FLAG_WRITE) &&
-@@ -3667,7 +3929,7 @@ EXPORT_SYMBOL_GPL(handle_mm_fault);
+@@ -3684,7 +3946,7 @@ EXPORT_SYMBOL_GPL(handle_mm_fault);
* Allocate page upper directory.
* We've already handled the fast-path in-line.
*/
@@ -153318,7 +157868,7 @@ index 793fe0f..9e24e98 100644
{
pud_t *new = pud_alloc_one(mm, address);
if (!new)
-@@ -3678,11 +3940,23 @@ int __pud_alloc(struct mm_struct *mm, pgd_t *pgd, unsigned long address)
+@@ -3695,11 +3957,23 @@ int __pud_alloc(struct mm_struct *mm, pgd_t *pgd, unsigned long address)
spin_lock(&mm->page_table_lock);
if (pgd_present(*pgd)) /* Another has populated it */
pud_free(mm, new);
@@ -153342,7 +157892,7 @@ index 793fe0f..9e24e98 100644
#endif /* __PAGETABLE_PUD_FOLDED */
#ifndef __PAGETABLE_PMD_FOLDED
-@@ -3690,7 +3964,7 @@ int __pud_alloc(struct mm_struct *mm, pgd_t *pgd, unsigned long address)
+@@ -3707,7 +3981,7 @@ int __pud_alloc(struct mm_struct *mm, pgd_t *pgd, unsigned long address)
* Allocate page middle directory.
* We've already handled the fast-path in-line.
*/
@@ -153351,7 +157901,7 @@ index 793fe0f..9e24e98 100644
{
pmd_t *new = pmd_alloc_one(mm, address);
if (!new)
-@@ -3702,19 +3976,35 @@ int __pmd_alloc(struct mm_struct *mm, pud_t *pud, unsigned long address)
+@@ -3719,19 +3993,35 @@ int __pmd_alloc(struct mm_struct *mm, pud_t *pud, unsigned long address)
#ifndef __ARCH_HAS_4LEVEL_HACK
if (!pud_present(*pud)) {
mm_inc_nr_pmds(mm);
@@ -153389,7 +157939,7 @@ index 793fe0f..9e24e98 100644
#endif /* __PAGETABLE_PMD_FOLDED */
static int __follow_pte(struct mm_struct *mm, unsigned long address,
-@@ -3824,8 +4114,8 @@ out:
+@@ -3841,8 +4131,8 @@ int follow_phys(struct vm_area_struct *vma,
return ret;
}
@@ -153400,18 +157950,18 @@ index 793fe0f..9e24e98 100644
{
resource_size_t phys_addr;
unsigned long prot = 0;
-@@ -3851,8 +4141,8 @@ EXPORT_SYMBOL_GPL(generic_access_phys);
+@@ -3868,8 +4158,8 @@ EXPORT_SYMBOL_GPL(generic_access_phys);
* Access another process' address space as given in mm. If non-NULL, use the
* given task for page fault accounting.
*/
--static int __access_remote_vm(struct task_struct *tsk, struct mm_struct *mm,
-- unsigned long addr, void *buf, int len, int write)
-+static ssize_t __access_remote_vm(struct task_struct *tsk, struct mm_struct *mm,
-+ unsigned long addr, void *buf, size_t len, int write)
+-int __access_remote_vm(struct task_struct *tsk, struct mm_struct *mm,
+- unsigned long addr, void *buf, int len, unsigned int gup_flags)
++ssize_t __access_remote_vm(struct task_struct *tsk, struct mm_struct *mm,
++ unsigned long addr, void *buf, size_t len, unsigned int gup_flags)
{
struct vm_area_struct *vma;
void *old_buf = buf;
-@@ -3860,7 +4150,7 @@ static int __access_remote_vm(struct task_struct *tsk, struct mm_struct *mm,
+@@ -3878,7 +4168,7 @@ int __access_remote_vm(struct task_struct *tsk, struct mm_struct *mm,
down_read(&mm->mmap_sem);
/* ignore errors, just check how much was successfully transferred */
while (len) {
@@ -153420,25 +157970,25 @@ index 793fe0f..9e24e98 100644
void *maddr;
struct page *page = NULL;
-@@ -3921,8 +4211,8 @@ static int __access_remote_vm(struct task_struct *tsk, struct mm_struct *mm,
+@@ -3939,8 +4229,8 @@ int __access_remote_vm(struct task_struct *tsk, struct mm_struct *mm,
*
* The caller must hold a reference on @mm.
*/
-int access_remote_vm(struct mm_struct *mm, unsigned long addr,
-- void *buf, int len, int write)
+- void *buf, int len, unsigned int gup_flags)
+ssize_t access_remote_vm(struct mm_struct *mm, unsigned long addr,
-+ void *buf, size_t len, int write)
++ void *buf, size_t len, unsigned int gup_flags)
{
- return __access_remote_vm(NULL, mm, addr, buf, len, write);
+ return __access_remote_vm(NULL, mm, addr, buf, len, gup_flags);
}
-@@ -3932,11 +4222,11 @@ int access_remote_vm(struct mm_struct *mm, unsigned long addr,
+@@ -3950,11 +4240,11 @@ int access_remote_vm(struct mm_struct *mm, unsigned long addr,
* Source/target buffer must be kernel space,
* Do not walk the page table directly, use get_user_pages
*/
-int access_process_vm(struct task_struct *tsk, unsigned long addr,
-- void *buf, int len, int write)
+- void *buf, int len, unsigned int gup_flags)
+ssize_t access_process_vm(struct task_struct *tsk, unsigned long addr,
-+ void *buf, size_t len, int write)
++ void *buf, size_t len, unsigned int gup_flags)
{
struct mm_struct *mm;
- int ret;
@@ -153446,8 +157996,46 @@ index 793fe0f..9e24e98 100644
mm = get_task_mm(tsk);
if (!mm)
+@@ -4121,3 +4411,37 @@ void ptlock_free(struct page *page)
+ kmem_cache_free(page_ptl_cachep, page->ptl);
+ }
+ #endif
++
++bool __access_ok(int type, unsigned long addr, size_t size)
++{
++ unsigned long end;
++
++ if (!access_ok_noprefault(type, addr, size))
++ return false;
++
++ if (unlikely(size >= 256 * PAGE_SIZE))
++ return true;
++
++ end = addr + size - 1;
++ if (((end ^ addr) & PAGE_MASK) == 0)
++ return true;
++
++ for (; addr <= end; addr += PAGE_SIZE) {
++ char c;
++
++ if (size > PAGE_SIZE)
++ _cond_resched();
++
++ if (__get_user(c, (char __user *)addr))
++ return true;
++
++ if (type != VERIFY_WRITE)
++ continue;
++
++ if (__put_user(c, (char __user *)addr))
++ return true;
++ }
++
++ return true;
++}
++EXPORT_SYMBOL(__access_ok);
diff --git a/mm/mempolicy.c b/mm/mempolicy.c
-index 2da72a5..845e125 100644
+index f757047..47a173d 100644
--- a/mm/mempolicy.c
+++ b/mm/mempolicy.c
@@ -732,6 +732,10 @@ static int mbind_range(struct mm_struct *mm, unsigned long start,
@@ -153523,10 +158111,10 @@ index 2da72a5..845e125 100644
capable(CAP_SYS_NICE) ? MPOL_MF_MOVE_ALL : MPOL_MF_MOVE);
diff --git a/mm/migrate.c b/mm/migrate.c
-index f7ee04a..41da9dc 100644
+index 66ce6b4..c5f0a41 100644
--- a/mm/migrate.c
+++ b/mm/migrate.c
-@@ -1686,8 +1686,7 @@ SYSCALL_DEFINE6(move_pages, pid_t, pid, unsigned long, nr_pages,
+@@ -1693,8 +1693,7 @@ SYSCALL_DEFINE6(move_pages, pid_t, pid, unsigned long, nr_pages,
*/
tcred = __task_cred(task);
if (!uid_eq(cred->euid, tcred->suid) && !uid_eq(cred->euid, tcred->uid) &&
@@ -153537,7 +158125,7 @@ index f7ee04a..41da9dc 100644
err = -EPERM;
goto out;
diff --git a/mm/mlock.c b/mm/mlock.c
-index 9c91acc..d377a3b 100644
+index cdbed8a..2a0ceb7 100644
--- a/mm/mlock.c
+++ b/mm/mlock.c
@@ -14,6 +14,7 @@
@@ -153548,7 +158136,7 @@ index 9c91acc..d377a3b 100644
#include <linux/sched.h>
#include <linux/export.h>
#include <linux/rmap.h>
-@@ -576,7 +577,7 @@ static int apply_vma_lock_flags(unsigned long start, size_t len,
+@@ -579,7 +580,7 @@ static int apply_vma_lock_flags(unsigned long start, size_t len,
{
unsigned long nstart, end, tmp;
struct vm_area_struct * vma, * prev;
@@ -153557,7 +158145,7 @@ index 9c91acc..d377a3b 100644
VM_BUG_ON(offset_in_page(start));
VM_BUG_ON(len != PAGE_ALIGN(len));
-@@ -585,6 +586,9 @@ static int apply_vma_lock_flags(unsigned long start, size_t len,
+@@ -588,6 +589,9 @@ static int apply_vma_lock_flags(unsigned long start, size_t len,
return -EINVAL;
if (end == start)
return 0;
@@ -153567,7 +158155,7 @@ index 9c91acc..d377a3b 100644
vma = find_vma(current->mm, start);
if (!vma || vma->vm_start > start)
return -ENOMEM;
-@@ -594,8 +598,14 @@ static int apply_vma_lock_flags(unsigned long start, size_t len,
+@@ -597,8 +601,14 @@ static int apply_vma_lock_flags(unsigned long start, size_t len,
prev = vma;
for (nstart = start ; ; ) {
@@ -153583,8 +158171,8 @@ index 9c91acc..d377a3b 100644
newflags |= flags;
/* Here we know that vma->vm_start <= nstart < vma->vm_end. */
-@@ -644,6 +654,10 @@ static __must_check int do_mlock(unsigned long start, size_t len, vm_flags_t fla
- locked += current->mm->locked_vm;
+@@ -696,6 +706,10 @@ static __must_check int do_mlock(unsigned long start, size_t len, vm_flags_t fla
+ }
/* check against resource limits */
+ if (locked > (ULONG_MAX >> PAGE_SHIFT))
@@ -153594,7 +158182,7 @@ index 9c91acc..d377a3b 100644
if ((locked <= lock_limit) || capable(CAP_IPC_LOCK))
error = apply_vma_lock_flags(start, len, flags);
-@@ -725,6 +739,11 @@ static int apply_mlockall_flags(int flags)
+@@ -777,6 +791,11 @@ static int apply_mlockall_flags(int flags)
for (vma = current->mm->mmap; vma ; vma = prev->vm_next) {
vm_flags_t newflags;
@@ -153606,7 +158194,7 @@ index 9c91acc..d377a3b 100644
newflags = vma->vm_flags & VM_LOCKED_CLEAR_MASK;
newflags |= to_add;
-@@ -757,6 +776,10 @@ SYSCALL_DEFINE1(mlockall, int, flags)
+@@ -809,6 +828,10 @@ SYSCALL_DEFINE1(mlockall, int, flags)
return -EINTR;
ret = -ENOMEM;
@@ -153631,7 +158219,7 @@ index 5b72266..dc04ce5 100644
.priority = IPC_CALLBACK_PRI, /* use lowest priority */
};
diff --git a/mm/mmap.c b/mm/mmap.c
-index ca9d91b..b2438f1 100644
+index 1af87c1..72d400b 100644
--- a/mm/mmap.c
+++ b/mm/mmap.c
@@ -44,6 +44,7 @@
@@ -153659,9 +158247,9 @@ index ca9d91b..b2438f1 100644
static void unmap_region(struct mm_struct *mm,
struct vm_area_struct *vma, struct vm_area_struct *prev,
unsigned long start, unsigned long end);
-@@ -89,16 +100,25 @@ static void unmap_region(struct mm_struct *mm,
- * x: (no) no x: (no) yes x: (no) yes x: (yes) yes
- *
+@@ -94,16 +105,25 @@ static void unmap_region(struct mm_struct *mm,
+ * w: (no) no
+ * x: (yes) yes
*/
-pgprot_t protection_map[16] = {
+pgprot_t protection_map[16] __read_only = {
@@ -153688,7 +158276,7 @@ index ca9d91b..b2438f1 100644
}
EXPORT_SYMBOL(vm_get_page_prot);
-@@ -160,6 +180,7 @@ static struct vm_area_struct *remove_vma(struct vm_area_struct *vma)
+@@ -167,6 +187,7 @@ static struct vm_area_struct *remove_vma(struct vm_area_struct *vma)
struct vm_area_struct *next = vma->vm_next;
might_sleep();
@@ -153696,7 +158284,7 @@ index ca9d91b..b2438f1 100644
if (vma->vm_ops && vma->vm_ops->close)
vma->vm_ops->close(vma);
if (vma->vm_file)
-@@ -173,6 +194,7 @@ static int do_brk(unsigned long addr, unsigned long len);
+@@ -180,6 +201,7 @@ static int do_brk(unsigned long addr, unsigned long len);
SYSCALL_DEFINE1(brk, unsigned long, brk)
{
@@ -153704,7 +158292,7 @@ index ca9d91b..b2438f1 100644
unsigned long retval;
unsigned long newbrk, oldbrk;
struct mm_struct *mm = current->mm;
-@@ -204,7 +226,13 @@ SYSCALL_DEFINE1(brk, unsigned long, brk)
+@@ -211,7 +233,13 @@ SYSCALL_DEFINE1(brk, unsigned long, brk)
* segment grow beyond its set limit the in case where the limit is
* not page aligned -Ram Gupta
*/
@@ -153719,7 +158307,7 @@ index ca9d91b..b2438f1 100644
mm->end_data, mm->start_data))
goto out;
-@@ -879,6 +907,12 @@ can_vma_merge_before(struct vm_area_struct *vma, unsigned long vm_flags,
+@@ -1008,6 +1036,12 @@ can_vma_merge_before(struct vm_area_struct *vma, unsigned long vm_flags,
pgoff_t vm_pgoff,
struct vm_userfaultfd_ctx vm_userfaultfd_ctx)
{
@@ -153732,7 +158320,7 @@ index ca9d91b..b2438f1 100644
if (is_mergeable_vma(vma, file, vm_flags, vm_userfaultfd_ctx) &&
is_mergeable_anon_vma(anon_vma, vma->anon_vma, vma)) {
if (vma->vm_pgoff == vm_pgoff)
-@@ -900,6 +934,12 @@ can_vma_merge_after(struct vm_area_struct *vma, unsigned long vm_flags,
+@@ -1029,6 +1063,12 @@ can_vma_merge_after(struct vm_area_struct *vma, unsigned long vm_flags,
pgoff_t vm_pgoff,
struct vm_userfaultfd_ctx vm_userfaultfd_ctx)
{
@@ -153745,7 +158333,7 @@ index ca9d91b..b2438f1 100644
if (is_mergeable_vma(vma, file, vm_flags, vm_userfaultfd_ctx) &&
is_mergeable_anon_vma(anon_vma, vma->anon_vma, vma)) {
pgoff_t vm_pglen;
-@@ -950,6 +990,13 @@ struct vm_area_struct *vma_merge(struct mm_struct *mm,
+@@ -1090,6 +1130,13 @@ struct vm_area_struct *vma_merge(struct mm_struct *mm,
struct vm_area_struct *area, *next;
int err;
@@ -153759,8 +158347,8 @@ index ca9d91b..b2438f1 100644
/*
* We later require that vma->vm_flags == vm_flags,
* so this tests vma->vm_flags & VM_SPECIAL, too.
-@@ -965,6 +1012,15 @@ struct vm_area_struct *vma_merge(struct mm_struct *mm,
- if (next && next->vm_end == end) /* cases 6, 7, 8 */
+@@ -1105,6 +1152,15 @@ struct vm_area_struct *vma_merge(struct mm_struct *mm,
+ if (area && area->vm_end == end) /* cases 6, 7, 8 */
next = next->vm_next;
+#ifdef CONFIG_PAX_SEGMEXEC
@@ -153772,66 +158360,65 @@ index ca9d91b..b2438f1 100644
+ next_m = pax_find_mirror_vma(next);
+#endif
+
- /*
- * Can it merge with the predecessor?
- */
-@@ -987,9 +1043,24 @@ struct vm_area_struct *vma_merge(struct mm_struct *mm,
- /* cases 1, 6 */
- err = vma_adjust(prev, prev->vm_start,
- next->vm_end, prev->vm_pgoff, NULL);
+ /* verify some invariant that must be enforced by the caller */
+ VM_WARN_ON(prev && addr <= prev->vm_start);
+ VM_WARN_ON(area && end > area->vm_end);
+@@ -1133,9 +1189,24 @@ struct vm_area_struct *vma_merge(struct mm_struct *mm,
+ err = __vma_adjust(prev, prev->vm_start,
+ next->vm_end, prev->vm_pgoff, NULL,
+ prev);
- } else /* cases 2, 5, 7 */
+
+#ifdef CONFIG_PAX_SEGMEXEC
+ if (!err && prev_m)
-+ err = vma_adjust(prev_m, prev_m->vm_start,
-+ next_m->vm_end, prev_m->vm_pgoff, NULL);
++ err = __vma_adjust(prev_m, prev_m->vm_start,
++ next_m->vm_end, prev_m->vm_pgoff, NULL, prev_m);
+#endif
+
+ } else { /* cases 2, 5, 7 */
- err = vma_adjust(prev, prev->vm_start,
- end, prev->vm_pgoff, NULL);
+ err = __vma_adjust(prev, prev->vm_start,
+ end, prev->vm_pgoff, NULL, prev);
+
+#ifdef CONFIG_PAX_SEGMEXEC
+ if (!err && prev_m)
-+ err = vma_adjust(prev_m, prev_m->vm_start,
-+ end_m, prev_m->vm_pgoff, NULL);
++ err = __vma_adjust(prev_m, prev_m->vm_start,
++ end_m, prev_m->vm_pgoff, NULL, prev_m);
+#endif
+
+ }
if (err)
return NULL;
khugepaged_enter_vma_merge(prev, vm_flags);
-@@ -1004,12 +1075,27 @@ struct vm_area_struct *vma_merge(struct mm_struct *mm,
+@@ -1150,12 +1221,26 @@ struct vm_area_struct *vma_merge(struct mm_struct *mm,
can_vma_merge_before(next, vm_flags,
anon_vma, file, pgoff+pglen,
vm_userfaultfd_ctx)) {
- if (prev && addr < prev->vm_end) /* case 4 */
+ if (prev && addr < prev->vm_end) { /* case 4 */
- err = vma_adjust(prev, prev->vm_start,
- addr, prev->vm_pgoff, NULL);
-- else /* cases 3, 8 */
+ err = __vma_adjust(prev, prev->vm_start,
+ addr, prev->vm_pgoff, NULL, next);
+- else { /* cases 3, 8 */
+
+#ifdef CONFIG_PAX_SEGMEXEC
+ if (!err && prev_m)
-+ err = vma_adjust(prev_m, prev_m->vm_start,
-+ addr_m, prev_m->vm_pgoff, NULL);
++ err = __vma_adjust(prev_m, prev_m->vm_start,
++ addr_m, prev_m->vm_pgoff, NULL, next_m);
+#endif
+
+ } else { /* cases 3, 8 */
- err = vma_adjust(area, addr, next->vm_end,
- next->vm_pgoff - pglen, NULL);
+ err = __vma_adjust(area, addr, next->vm_end,
+ next->vm_pgoff - pglen, NULL, next);
+
+#ifdef CONFIG_PAX_SEGMEXEC
+ if (!err && area_m)
-+ err = vma_adjust(area_m, addr_m, next_m->vm_end,
-+ next_m->vm_pgoff - pglen, NULL);
++ err = __vma_adjust(area_m, addr_m, next_m->vm_end,
++ next_m->vm_pgoff - pglen, NULL, next_m);
+#endif
+
-+ }
- if (err)
- return NULL;
- khugepaged_enter_vma_merge(area, vm_flags);
-@@ -1139,6 +1225,10 @@ static inline int mlock_future_check(struct mm_struct *mm,
+ /*
+ * In case 3 area is already equal to next and
+ * this is a noop, but in case 8 "area" has
+@@ -1292,6 +1377,10 @@ static inline int mlock_future_check(struct mm_struct *mm,
locked += mm->locked_vm;
lock_limit = rlimit(RLIMIT_MEMLOCK);
lock_limit >>= PAGE_SHIFT;
@@ -153842,7 +158429,7 @@ index ca9d91b..b2438f1 100644
if (locked > lock_limit && !capable(CAP_IPC_LOCK))
return -EAGAIN;
}
-@@ -1167,7 +1257,7 @@ unsigned long do_mmap(struct file *file, unsigned long addr,
+@@ -1320,7 +1409,7 @@ unsigned long do_mmap(struct file *file, unsigned long addr,
* (the exception is when the underlying filesystem is noexec
* mounted, in which case we dont add PROT_EXEC.)
*/
@@ -153851,7 +158438,7 @@ index ca9d91b..b2438f1 100644
if (!(file && path_noexec(&file->f_path)))
prot |= PROT_EXEC;
-@@ -1190,7 +1280,7 @@ unsigned long do_mmap(struct file *file, unsigned long addr,
+@@ -1343,7 +1432,7 @@ unsigned long do_mmap(struct file *file, unsigned long addr,
/* Obtain the address to map to. we verify (or select) it and ensure
* that it represents a valid section of the address space.
*/
@@ -153860,7 +158447,7 @@ index ca9d91b..b2438f1 100644
if (offset_in_page(addr))
return addr;
-@@ -1207,6 +1297,43 @@ unsigned long do_mmap(struct file *file, unsigned long addr,
+@@ -1360,6 +1449,43 @@ unsigned long do_mmap(struct file *file, unsigned long addr,
vm_flags |= calc_vm_prot_bits(prot, pkey) | calc_vm_flag_bits(flags) |
mm->def_flags | VM_MAYREAD | VM_MAYWRITE | VM_MAYEXEC;
@@ -153904,7 +158491,7 @@ index ca9d91b..b2438f1 100644
if (flags & MAP_LOCKED)
if (!can_do_mlock())
return -EPERM;
-@@ -1294,6 +1421,9 @@ unsigned long do_mmap(struct file *file, unsigned long addr,
+@@ -1447,6 +1573,9 @@ unsigned long do_mmap(struct file *file, unsigned long addr,
vm_flags |= VM_NORESERVE;
}
@@ -153914,7 +158501,7 @@ index ca9d91b..b2438f1 100644
addr = mmap_region(file, addr, len, vm_flags, pgoff);
if (!IS_ERR_VALUE(addr) &&
((vm_flags & VM_LOCKED) ||
-@@ -1387,7 +1517,7 @@ int vma_wants_writenotify(struct vm_area_struct *vma)
+@@ -1540,7 +1669,7 @@ int vma_wants_writenotify(struct vm_area_struct *vma, pgprot_t vm_page_prot)
const struct vm_operations_struct *vm_ops = vma->vm_ops;
/* If it was private or non-writable, the write bit is already clear */
@@ -153923,7 +158510,7 @@ index ca9d91b..b2438f1 100644
return 0;
/* The backer wishes to know when pages are first written to? */
-@@ -1438,7 +1568,22 @@ unsigned long mmap_region(struct file *file, unsigned long addr,
+@@ -1591,7 +1720,22 @@ unsigned long mmap_region(struct file *file, unsigned long addr,
struct rb_node **rb_link, *rb_parent;
unsigned long charged = 0;
@@ -153946,7 +158533,7 @@ index ca9d91b..b2438f1 100644
if (!may_expand_vm(mm, vm_flags, len >> PAGE_SHIFT)) {
unsigned long nr_pages;
-@@ -1458,6 +1603,7 @@ unsigned long mmap_region(struct file *file, unsigned long addr,
+@@ -1611,6 +1755,7 @@ unsigned long mmap_region(struct file *file, unsigned long addr,
&rb_parent)) {
if (do_munmap(mm, addr, len))
return -ENOMEM;
@@ -153954,7 +158541,7 @@ index ca9d91b..b2438f1 100644
}
/*
-@@ -1489,6 +1635,16 @@ unsigned long mmap_region(struct file *file, unsigned long addr,
+@@ -1642,6 +1787,16 @@ unsigned long mmap_region(struct file *file, unsigned long addr,
goto unacct_error;
}
@@ -153971,7 +158558,7 @@ index ca9d91b..b2438f1 100644
vma->vm_mm = mm;
vma->vm_start = addr;
vma->vm_end = addr + len;
-@@ -1519,6 +1675,13 @@ unsigned long mmap_region(struct file *file, unsigned long addr,
+@@ -1672,6 +1827,13 @@ unsigned long mmap_region(struct file *file, unsigned long addr,
if (error)
goto unmap_and_free_vma;
@@ -153985,7 +158572,7 @@ index ca9d91b..b2438f1 100644
/* Can addr have changed??
*
* Answer: Yes, several device drivers can do it in their
-@@ -1537,6 +1700,12 @@ unsigned long mmap_region(struct file *file, unsigned long addr,
+@@ -1690,6 +1852,12 @@ unsigned long mmap_region(struct file *file, unsigned long addr,
}
vma_link(mm, vma, prev, rb_link, rb_parent);
@@ -153998,7 +158585,7 @@ index ca9d91b..b2438f1 100644
/* Once vma denies write, undo our temporary denial count */
if (file) {
if (vm_flags & VM_SHARED)
-@@ -1549,6 +1718,7 @@ out:
+@@ -1702,6 +1870,7 @@ unsigned long mmap_region(struct file *file, unsigned long addr,
perf_event_mmap(vma);
vm_stat_account(mm, vm_flags, len >> PAGE_SHIFT);
@@ -154006,7 +158593,7 @@ index ca9d91b..b2438f1 100644
if (vm_flags & VM_LOCKED) {
if (!((vm_flags & VM_SPECIAL) || is_vm_hugetlb_page(vma) ||
vma == get_gate_vma(current->mm)))
-@@ -1586,6 +1756,12 @@ allow_write_and_free_vma:
+@@ -1739,6 +1908,12 @@ unsigned long mmap_region(struct file *file, unsigned long addr,
if (vm_flags & VM_DENYWRITE)
allow_write_access(file);
free_vma:
@@ -154019,7 +158606,7 @@ index ca9d91b..b2438f1 100644
kmem_cache_free(vm_area_cachep, vma);
unacct_error:
if (charged)
-@@ -1593,7 +1769,54 @@ unacct_error:
+@@ -1746,7 +1921,54 @@ unsigned long mmap_region(struct file *file, unsigned long addr,
return error;
}
@@ -154075,7 +158662,7 @@ index ca9d91b..b2438f1 100644
{
/*
* We implement the search by looking for an rbtree node that
-@@ -1646,6 +1869,15 @@ check_current:
+@@ -1799,6 +2021,15 @@ unsigned long unmapped_area(struct vm_unmapped_area_info *info)
/* Check if current node has a suitable gap */
if (gap_start > high_limit)
return -ENOMEM;
@@ -154091,7 +158678,7 @@ index ca9d91b..b2438f1 100644
if (gap_end >= low_limit && gap_end - gap_start >= length)
goto found;
-@@ -1695,7 +1927,7 @@ found:
+@@ -1848,7 +2079,7 @@ unsigned long unmapped_area(struct vm_unmapped_area_info *info)
return gap_start;
}
@@ -154100,7 +158687,7 @@ index ca9d91b..b2438f1 100644
{
struct mm_struct *mm = current->mm;
struct vm_area_struct *vma;
-@@ -1749,6 +1981,15 @@ check_current:
+@@ -1902,6 +2133,15 @@ unsigned long unmapped_area_topdown(struct vm_unmapped_area_info *info)
gap_end = vma->vm_start;
if (gap_end < low_limit)
return -ENOMEM;
@@ -154116,7 +158703,7 @@ index ca9d91b..b2438f1 100644
if (gap_start <= high_limit && gap_end - gap_start >= length)
goto found;
-@@ -1812,6 +2053,7 @@ arch_get_unmapped_area(struct file *filp, unsigned long addr,
+@@ -1965,6 +2205,7 @@ arch_get_unmapped_area(struct file *filp, unsigned long addr,
struct mm_struct *mm = current->mm;
struct vm_area_struct *vma;
struct vm_unmapped_area_info info;
@@ -154124,7 +158711,7 @@ index ca9d91b..b2438f1 100644
if (len > TASK_SIZE - mmap_min_addr)
return -ENOMEM;
-@@ -1819,11 +2061,15 @@ arch_get_unmapped_area(struct file *filp, unsigned long addr,
+@@ -1972,11 +2213,15 @@ arch_get_unmapped_area(struct file *filp, unsigned long addr,
if (flags & MAP_FIXED)
return addr;
@@ -154141,7 +158728,7 @@ index ca9d91b..b2438f1 100644
return addr;
}
-@@ -1832,6 +2078,7 @@ arch_get_unmapped_area(struct file *filp, unsigned long addr,
+@@ -1985,6 +2230,7 @@ arch_get_unmapped_area(struct file *filp, unsigned long addr,
info.low_limit = mm->mmap_base;
info.high_limit = TASK_SIZE;
info.align_mask = 0;
@@ -154149,7 +158736,7 @@ index ca9d91b..b2438f1 100644
return vm_unmapped_area(&info);
}
#endif
-@@ -1850,6 +2097,7 @@ arch_get_unmapped_area_topdown(struct file *filp, const unsigned long addr0,
+@@ -2003,6 +2249,7 @@ arch_get_unmapped_area_topdown(struct file *filp, const unsigned long addr0,
struct mm_struct *mm = current->mm;
unsigned long addr = addr0;
struct vm_unmapped_area_info info;
@@ -154157,7 +158744,7 @@ index ca9d91b..b2438f1 100644
/* requested length too big for entire address space */
if (len > TASK_SIZE - mmap_min_addr)
-@@ -1858,12 +2106,16 @@ arch_get_unmapped_area_topdown(struct file *filp, const unsigned long addr0,
+@@ -2011,12 +2258,16 @@ arch_get_unmapped_area_topdown(struct file *filp, const unsigned long addr0,
if (flags & MAP_FIXED)
return addr;
@@ -154175,7 +158762,7 @@ index ca9d91b..b2438f1 100644
return addr;
}
-@@ -1872,6 +2124,7 @@ arch_get_unmapped_area_topdown(struct file *filp, const unsigned long addr0,
+@@ -2025,6 +2276,7 @@ arch_get_unmapped_area_topdown(struct file *filp, const unsigned long addr0,
info.low_limit = max(PAGE_SIZE, mmap_min_addr);
info.high_limit = mm->mmap_base;
info.align_mask = 0;
@@ -154183,7 +158770,7 @@ index ca9d91b..b2438f1 100644
addr = vm_unmapped_area(&info);
/*
-@@ -1884,6 +2137,12 @@ arch_get_unmapped_area_topdown(struct file *filp, const unsigned long addr0,
+@@ -2037,6 +2289,12 @@ arch_get_unmapped_area_topdown(struct file *filp, const unsigned long addr0,
VM_BUG_ON(addr != -ENOMEM);
info.flags = 0;
info.low_limit = TASK_UNMAPPED_BASE;
@@ -154196,7 +158783,7 @@ index ca9d91b..b2438f1 100644
info.high_limit = TASK_SIZE;
addr = vm_unmapped_area(&info);
}
-@@ -1993,6 +2252,28 @@ find_vma_prev(struct mm_struct *mm, unsigned long addr,
+@@ -2146,6 +2404,28 @@ find_vma_prev(struct mm_struct *mm, unsigned long addr,
return vma;
}
@@ -154225,7 +158812,7 @@ index ca9d91b..b2438f1 100644
/*
* Verify that the stack growth is acceptable and
* update accounting. This is shared with both the
-@@ -2010,8 +2291,7 @@ static int acct_stack_growth(struct vm_area_struct *vma, unsigned long size, uns
+@@ -2163,8 +2443,7 @@ static int acct_stack_growth(struct vm_area_struct *vma, unsigned long size, uns
/* Stack limit test */
actual_size = size;
@@ -154235,7 +158822,7 @@ index ca9d91b..b2438f1 100644
if (actual_size > READ_ONCE(rlim[RLIMIT_STACK].rlim_cur))
return -ENOMEM;
-@@ -2022,6 +2302,10 @@ static int acct_stack_growth(struct vm_area_struct *vma, unsigned long size, uns
+@@ -2175,6 +2454,10 @@ static int acct_stack_growth(struct vm_area_struct *vma, unsigned long size, uns
locked = mm->locked_vm + grow;
limit = READ_ONCE(rlim[RLIMIT_MEMLOCK].rlim_cur);
limit >>= PAGE_SHIFT;
@@ -154246,7 +158833,7 @@ index ca9d91b..b2438f1 100644
if (locked > limit && !capable(CAP_IPC_LOCK))
return -ENOMEM;
}
-@@ -2047,17 +2331,21 @@ static int acct_stack_growth(struct vm_area_struct *vma, unsigned long size, uns
+@@ -2200,17 +2483,21 @@ static int acct_stack_growth(struct vm_area_struct *vma, unsigned long size, uns
* PA-RISC uses this for its stack; IA64 for its Register Backing Store.
* vma is the last one with address > vma->vm_end. Have to extend vma.
*/
@@ -154270,7 +158857,7 @@ index ca9d91b..b2438f1 100644
else
return -ENOMEM;
-@@ -2065,15 +2353,24 @@ int expand_upwards(struct vm_area_struct *vma, unsigned long address)
+@@ -2218,15 +2505,24 @@ int expand_upwards(struct vm_area_struct *vma, unsigned long address)
if (unlikely(anon_vma_prepare(vma)))
return -ENOMEM;
@@ -154297,7 +158884,7 @@ index ca9d91b..b2438f1 100644
unsigned long size, grow;
size = address - vma->vm_start;
-@@ -2111,6 +2408,8 @@ int expand_upwards(struct vm_area_struct *vma, unsigned long address)
+@@ -2264,6 +2560,8 @@ int expand_upwards(struct vm_area_struct *vma, unsigned long address)
}
}
}
@@ -154306,7 +158893,7 @@ index ca9d91b..b2438f1 100644
anon_vma_unlock_write(vma->anon_vma);
khugepaged_enter_vma_merge(vma, vma->vm_flags);
validate_mm(mm);
-@@ -2126,6 +2425,8 @@ int expand_downwards(struct vm_area_struct *vma,
+@@ -2279,6 +2577,8 @@ int expand_downwards(struct vm_area_struct *vma,
{
struct mm_struct *mm = vma->vm_mm;
int error;
@@ -154315,7 +158902,7 @@ index ca9d91b..b2438f1 100644
address &= PAGE_MASK;
error = security_mmap_addr(address);
-@@ -2136,6 +2437,15 @@ int expand_downwards(struct vm_area_struct *vma,
+@@ -2289,6 +2589,15 @@ int expand_downwards(struct vm_area_struct *vma,
if (unlikely(anon_vma_prepare(vma)))
return -ENOMEM;
@@ -154331,7 +158918,7 @@ index ca9d91b..b2438f1 100644
/*
* vma->vm_start/vm_end cannot change under us because the caller
* is required to hold the mmap_sem in read mode. We need the
-@@ -2144,9 +2454,17 @@ int expand_downwards(struct vm_area_struct *vma,
+@@ -2297,9 +2606,17 @@ int expand_downwards(struct vm_area_struct *vma,
anon_vma_lock_write(vma->anon_vma);
/* Somebody else might have raced and expanded it already */
@@ -154350,7 +158937,7 @@ index ca9d91b..b2438f1 100644
size = vma->vm_end - address;
grow = (vma->vm_start - address) >> PAGE_SHIFT;
-@@ -2174,13 +2492,27 @@ int expand_downwards(struct vm_area_struct *vma,
+@@ -2327,13 +2644,27 @@ int expand_downwards(struct vm_area_struct *vma,
vma->vm_pgoff -= grow;
anon_vma_interval_tree_post_update_vma(vma);
vma_gap_update(vma);
@@ -154378,7 +158965,7 @@ index ca9d91b..b2438f1 100644
khugepaged_enter_vma_merge(vma, vma->vm_flags);
validate_mm(mm);
return error;
-@@ -2280,6 +2612,13 @@ static void remove_vma_list(struct mm_struct *mm, struct vm_area_struct *vma)
+@@ -2433,6 +2764,13 @@ static void remove_vma_list(struct mm_struct *mm, struct vm_area_struct *vma)
do {
long nrpages = vma_pages(vma);
@@ -154392,7 +158979,7 @@ index ca9d91b..b2438f1 100644
if (vma->vm_flags & VM_ACCOUNT)
nr_accounted += nrpages;
vm_stat_account(mm, vma->vm_flags, -nrpages);
-@@ -2324,6 +2663,16 @@ detach_vmas_to_be_unmapped(struct mm_struct *mm, struct vm_area_struct *vma,
+@@ -2477,6 +2815,16 @@ detach_vmas_to_be_unmapped(struct mm_struct *mm, struct vm_area_struct *vma,
insertion_point = (prev ? &prev->vm_next : &mm->mmap);
vma->vm_prev = NULL;
do {
@@ -154409,7 +158996,7 @@ index ca9d91b..b2438f1 100644
vma_rb_erase(vma, &mm->mm_rb);
mm->map_count--;
tail_vma = vma;
-@@ -2351,14 +2700,33 @@ static int __split_vma(struct mm_struct *mm, struct vm_area_struct *vma,
+@@ -2504,14 +2852,33 @@ static int __split_vma(struct mm_struct *mm, struct vm_area_struct *vma,
struct vm_area_struct *new;
int err;
@@ -154443,7 +159030,7 @@ index ca9d91b..b2438f1 100644
/* most fields are the same, copy all, and then fixup */
*new = *vma;
-@@ -2371,6 +2739,22 @@ static int __split_vma(struct mm_struct *mm, struct vm_area_struct *vma,
+@@ -2524,6 +2891,22 @@ static int __split_vma(struct mm_struct *mm, struct vm_area_struct *vma,
new->vm_pgoff += ((addr - vma->vm_start) >> PAGE_SHIFT);
}
@@ -154466,7 +159053,7 @@ index ca9d91b..b2438f1 100644
err = vma_dup_policy(vma, new);
if (err)
goto out_free_vma;
-@@ -2391,6 +2775,38 @@ static int __split_vma(struct mm_struct *mm, struct vm_area_struct *vma,
+@@ -2544,6 +2927,38 @@ static int __split_vma(struct mm_struct *mm, struct vm_area_struct *vma,
else
err = vma_adjust(vma, vma->vm_start, addr, vma->vm_pgoff, new);
@@ -154505,7 +159092,7 @@ index ca9d91b..b2438f1 100644
/* Success. */
if (!err)
return 0;
-@@ -2400,10 +2816,18 @@ static int __split_vma(struct mm_struct *mm, struct vm_area_struct *vma,
+@@ -2553,10 +2968,18 @@ static int __split_vma(struct mm_struct *mm, struct vm_area_struct *vma,
new->vm_ops->close(new);
if (new->vm_file)
fput(new->vm_file);
@@ -154525,7 +159112,7 @@ index ca9d91b..b2438f1 100644
kmem_cache_free(vm_area_cachep, new);
return err;
}
-@@ -2415,6 +2839,15 @@ static int __split_vma(struct mm_struct *mm, struct vm_area_struct *vma,
+@@ -2568,6 +2991,15 @@ static int __split_vma(struct mm_struct *mm, struct vm_area_struct *vma,
int split_vma(struct mm_struct *mm, struct vm_area_struct *vma,
unsigned long addr, int new_below)
{
@@ -154541,7 +159128,7 @@ index ca9d91b..b2438f1 100644
if (mm->map_count >= sysctl_max_map_count)
return -ENOMEM;
-@@ -2426,11 +2859,30 @@ int split_vma(struct mm_struct *mm, struct vm_area_struct *vma,
+@@ -2579,11 +3011,30 @@ int split_vma(struct mm_struct *mm, struct vm_area_struct *vma,
* work. This now handles partial unmappings.
* Jeremy Fitzhardinge <jeremy@goop.org>
*/
@@ -154572,7 +159159,7 @@ index ca9d91b..b2438f1 100644
if ((offset_in_page(start)) || start > TASK_SIZE || len > TASK_SIZE-start)
return -EINVAL;
-@@ -2508,6 +2960,8 @@ int do_munmap(struct mm_struct *mm, unsigned long start, size_t len)
+@@ -2661,6 +3112,8 @@ int do_munmap(struct mm_struct *mm, unsigned long start, size_t len)
/* Fix up all other VM information */
remove_vma_list(mm, vma);
@@ -154581,7 +159168,7 @@ index ca9d91b..b2438f1 100644
return 0;
}
-@@ -2516,6 +2970,12 @@ int vm_munmap(unsigned long start, size_t len)
+@@ -2669,6 +3122,12 @@ int vm_munmap(unsigned long start, size_t len)
int ret;
struct mm_struct *mm = current->mm;
@@ -154594,7 +159181,7 @@ index ca9d91b..b2438f1 100644
if (down_write_killable(&mm->mmap_sem))
return -EINTR;
-@@ -2572,6 +3032,11 @@ SYSCALL_DEFINE5(remap_file_pages, unsigned long, start, unsigned long, size,
+@@ -2725,6 +3184,11 @@ SYSCALL_DEFINE5(remap_file_pages, unsigned long, start, unsigned long, size,
vma = find_vma(mm, start);
@@ -154606,7 +159193,7 @@ index ca9d91b..b2438f1 100644
if (!vma || !(vma->vm_flags & VM_SHARED))
goto out;
-@@ -2638,16 +3103,6 @@ out:
+@@ -2791,16 +3255,6 @@ SYSCALL_DEFINE5(remap_file_pages, unsigned long, start, unsigned long, size,
return ret;
}
@@ -154623,7 +159210,7 @@ index ca9d91b..b2438f1 100644
/*
* this is really a simplified "do_mmap". it only handles
* anonymous maps. eventually we may be able to do some
-@@ -2661,6 +3116,7 @@ static int do_brk(unsigned long addr, unsigned long request)
+@@ -2814,6 +3268,7 @@ static int do_brk(unsigned long addr, unsigned long request)
struct rb_node **rb_link, *rb_parent;
pgoff_t pgoff = addr >> PAGE_SHIFT;
int error;
@@ -154631,7 +159218,7 @@ index ca9d91b..b2438f1 100644
len = PAGE_ALIGN(request);
if (len < request)
-@@ -2670,10 +3126,24 @@ static int do_brk(unsigned long addr, unsigned long request)
+@@ -2823,10 +3278,24 @@ static int do_brk(unsigned long addr, unsigned long request)
flags = VM_DATA_DEFAULT_FLAGS | VM_ACCOUNT | mm->def_flags;
@@ -154656,7 +159243,7 @@ index ca9d91b..b2438f1 100644
error = mlock_future_check(mm, mm->def_flags, len);
if (error)
return error;
-@@ -2691,16 +3161,17 @@ static int do_brk(unsigned long addr, unsigned long request)
+@@ -2844,16 +3313,17 @@ static int do_brk(unsigned long addr, unsigned long request)
&rb_parent)) {
if (do_munmap(mm, addr, len))
return -ENOMEM;
@@ -154676,7 +159263,7 @@ index ca9d91b..b2438f1 100644
return -ENOMEM;
/* Can we just expand an old private anonymous mapping? */
-@@ -2714,7 +3185,7 @@ static int do_brk(unsigned long addr, unsigned long request)
+@@ -2867,7 +3337,7 @@ static int do_brk(unsigned long addr, unsigned long request)
*/
vma = kmem_cache_zalloc(vm_area_cachep, GFP_KERNEL);
if (!vma) {
@@ -154685,7 +159272,7 @@ index ca9d91b..b2438f1 100644
return -ENOMEM;
}
-@@ -2728,11 +3199,12 @@ static int do_brk(unsigned long addr, unsigned long request)
+@@ -2881,11 +3351,12 @@ static int do_brk(unsigned long addr, unsigned long request)
vma_link(mm, vma, prev, rb_link, rb_parent);
out:
perf_event_mmap(vma);
@@ -154701,7 +159288,7 @@ index ca9d91b..b2438f1 100644
return 0;
}
-@@ -2796,6 +3268,7 @@ void exit_mmap(struct mm_struct *mm)
+@@ -2949,6 +3420,7 @@ void exit_mmap(struct mm_struct *mm)
while (vma) {
if (vma->vm_flags & VM_ACCOUNT)
nr_accounted += vma_pages(vma);
@@ -154709,7 +159296,7 @@ index ca9d91b..b2438f1 100644
vma = remove_vma(vma);
}
vm_unacct_memory(nr_accounted);
-@@ -2810,6 +3283,10 @@ int insert_vm_struct(struct mm_struct *mm, struct vm_area_struct *vma)
+@@ -2963,6 +3435,10 @@ int insert_vm_struct(struct mm_struct *mm, struct vm_area_struct *vma)
struct vm_area_struct *prev;
struct rb_node **rb_link, *rb_parent;
@@ -154720,7 +159307,7 @@ index ca9d91b..b2438f1 100644
if (find_vma_links(mm, vma->vm_start, vma->vm_end,
&prev, &rb_link, &rb_parent))
return -ENOMEM;
-@@ -2817,6 +3294,9 @@ int insert_vm_struct(struct mm_struct *mm, struct vm_area_struct *vma)
+@@ -2970,6 +3446,9 @@ int insert_vm_struct(struct mm_struct *mm, struct vm_area_struct *vma)
security_vm_enough_memory_mm(mm, vma_pages(vma)))
return -ENOMEM;
@@ -154730,7 +159317,7 @@ index ca9d91b..b2438f1 100644
/*
* The vm_pgoff of a purely anonymous vma should be irrelevant
* until its first write fault, when page's anon_vma and index
-@@ -2834,7 +3314,21 @@ int insert_vm_struct(struct mm_struct *mm, struct vm_area_struct *vma)
+@@ -2987,7 +3466,21 @@ int insert_vm_struct(struct mm_struct *mm, struct vm_area_struct *vma)
vma->vm_pgoff = vma->vm_start >> PAGE_SHIFT;
}
@@ -154752,7 +159339,7 @@ index ca9d91b..b2438f1 100644
return 0;
}
-@@ -2853,6 +3347,8 @@ struct vm_area_struct *copy_vma(struct vm_area_struct **vmap,
+@@ -3006,6 +3499,8 @@ struct vm_area_struct *copy_vma(struct vm_area_struct **vmap,
struct rb_node **rb_link, *rb_parent;
bool faulted_in_anon_vma = true;
@@ -154761,7 +159348,7 @@ index ca9d91b..b2438f1 100644
/*
* If anonymous vma has not yet been faulted, update new pgoff
* to match new location, to increase its chance of merging.
-@@ -2919,27 +3415,70 @@ out:
+@@ -3072,27 +3567,70 @@ struct vm_area_struct *copy_vma(struct vm_area_struct **vmap,
return NULL;
}
@@ -154844,7 +159431,7 @@ index ca9d91b..b2438f1 100644
}
}
-@@ -2948,6 +3487,11 @@ bool may_expand_vm(struct mm_struct *mm, vm_flags_t flags, unsigned long npages)
+@@ -3101,6 +3639,11 @@ bool may_expand_vm(struct mm_struct *mm, vm_flags_t flags, unsigned long npages)
void vm_stat_account(struct mm_struct *mm, vm_flags_t flags, long npages)
{
@@ -154856,7 +159443,7 @@ index ca9d91b..b2438f1 100644
mm->total_vm += npages;
if (is_exec_mapping(flags))
-@@ -3042,6 +3586,22 @@ static struct vm_area_struct *__install_special_mapping(
+@@ -3195,6 +3738,22 @@ static struct vm_area_struct *__install_special_mapping(
vma->vm_start = addr;
vma->vm_end = addr + len;
@@ -154880,13 +159467,13 @@ index ca9d91b..b2438f1 100644
vma->vm_page_prot = vm_get_page_prot(vma->vm_flags);
diff --git a/mm/mprotect.c b/mm/mprotect.c
-index a4830f0..0675c13 100644
+index 1193652..5a4f86e 100644
--- a/mm/mprotect.c
+++ b/mm/mprotect.c
-@@ -25,10 +25,18 @@
+@@ -25,6 +25,13 @@
#include <linux/perf_event.h>
- #include <linux/ksm.h>
#include <linux/pkeys.h>
+ #include <linux/ksm.h>
+#include <linux/sched/sysctl.h>
+
+#ifdef CONFIG_PAX_MPROTECT
@@ -154897,12 +159484,7 @@ index a4830f0..0675c13 100644
#include <asm/uaccess.h>
#include <asm/pgtable.h>
#include <asm/cacheflush.h>
- #include <asm/tlbflush.h>
-+#include <asm/mmu_context.h>
-
- #include "internal.h"
-
-@@ -258,6 +266,48 @@ unsigned long change_protection(struct vm_area_struct *vma, unsigned long start,
+@@ -259,6 +266,48 @@ unsigned long change_protection(struct vm_area_struct *vma, unsigned long start,
return pages;
}
@@ -154943,7 +159525,7 @@ index a4830f0..0675c13 100644
+ if (is_vm_hugetlb_page(vma))
+ hugetlb_change_protection(vma, vma->vm_start, vma->vm_end, vma->vm_page_prot);
+ else
-+ change_protection(vma, vma->vm_start, vma->vm_end, vma->vm_page_prot, vma_wants_writenotify(vma), 0);
++ change_protection(vma, vma->vm_start, vma->vm_end, vma->vm_page_prot, vma_wants_writenotify(vma, vma->vm_page_prot), 0);
+ }
+}
+#endif
@@ -154951,7 +159533,7 @@ index a4830f0..0675c13 100644
int
mprotect_fixup(struct vm_area_struct *vma, struct vm_area_struct **pprev,
unsigned long start, unsigned long end, unsigned long newflags)
-@@ -270,11 +320,29 @@ mprotect_fixup(struct vm_area_struct *vma, struct vm_area_struct **pprev,
+@@ -271,11 +320,29 @@ mprotect_fixup(struct vm_area_struct *vma, struct vm_area_struct **pprev,
int error;
int dirty_accountable = 0;
@@ -154981,7 +159563,7 @@ index a4830f0..0675c13 100644
/*
* If we make a private mapping writable we increase our commit;
* but (without finer accounting) cannot reduce our commit if we
-@@ -295,6 +363,42 @@ mprotect_fixup(struct vm_area_struct *vma, struct vm_area_struct **pprev,
+@@ -296,6 +363,42 @@ mprotect_fixup(struct vm_area_struct *vma, struct vm_area_struct **pprev,
}
}
@@ -155024,7 +159606,7 @@ index a4830f0..0675c13 100644
/*
* First try to merge with previous and/or next vma.
*/
-@@ -326,7 +430,19 @@ success:
+@@ -328,7 +431,19 @@ mprotect_fixup(struct vm_area_struct *vma, struct vm_area_struct **pprev,
* vm_flags and vm_page_prot are protected by the mmap_sem
* held in write mode.
*/
@@ -155041,10 +159623,10 @@ index a4830f0..0675c13 100644
+ mm->binfmt->handle_mprotect(vma, newflags);
+#endif
+
- dirty_accountable = vma_wants_writenotify(vma);
+ dirty_accountable = vma_wants_writenotify(vma, vma->vm_page_prot);
vma_set_page_prot(vma);
-@@ -360,7 +476,7 @@ SYSCALL_DEFINE3(mprotect, unsigned long, start, size_t, len,
+@@ -365,7 +480,7 @@ static int do_mprotect_pkey(unsigned long start, size_t len,
int error = -EINVAL;
const int grows = prot & (PROT_GROWSDOWN|PROT_GROWSUP);
const bool rier = (current->personality & READ_IMPLIES_EXEC) &&
@@ -155053,7 +159635,7 @@ index a4830f0..0675c13 100644
prot &= ~(PROT_GROWSDOWN|PROT_GROWSUP);
if (grows == (PROT_GROWSDOWN|PROT_GROWSUP)) /* can't be both */
-@@ -374,6 +490,17 @@ SYSCALL_DEFINE3(mprotect, unsigned long, start, size_t, len,
+@@ -379,6 +494,17 @@ static int do_mprotect_pkey(unsigned long start, size_t len,
end = start + len;
if (end <= start)
return -ENOMEM;
@@ -155071,7 +159653,7 @@ index a4830f0..0675c13 100644
if (!arch_validate_prot(prot))
return -EINVAL;
-@@ -407,6 +534,11 @@ SYSCALL_DEFINE3(mprotect, unsigned long, start, size_t, len,
+@@ -420,6 +546,11 @@ static int do_mprotect_pkey(unsigned long start, size_t len,
if (start > vma->vm_start)
prev = vma;
@@ -155081,9 +159663,9 @@ index a4830f0..0675c13 100644
+#endif
+
for (nstart = start ; ; ) {
+ unsigned long mask_off_old_flags;
unsigned long newflags;
- int pkey = arch_override_mprotect_pkey(vma, prot, -1);
-@@ -422,6 +554,14 @@ SYSCALL_DEFINE3(mprotect, unsigned long, start, size_t, len,
+@@ -445,6 +576,14 @@ static int do_mprotect_pkey(unsigned long start, size_t len,
/* newflags >> 4 shift VM_MAY% in place of VM_% */
if ((newflags & ~(newflags >> 4)) & (VM_READ | VM_WRITE | VM_EXEC)) {
@@ -155098,7 +159680,7 @@ index a4830f0..0675c13 100644
error = -EACCES;
goto out;
}
-@@ -436,6 +576,9 @@ SYSCALL_DEFINE3(mprotect, unsigned long, start, size_t, len,
+@@ -459,6 +598,9 @@ static int do_mprotect_pkey(unsigned long start, size_t len,
error = mprotect_fixup(vma, &prev, nstart, tmp, newflags);
if (error)
goto out;
@@ -155109,12 +159691,12 @@ index a4830f0..0675c13 100644
if (nstart < prev->vm_end)
diff --git a/mm/mremap.c b/mm/mremap.c
-index da22ad2..f98a3df 100644
+index 30d7d24..65b49cb 100644
--- a/mm/mremap.c
+++ b/mm/mremap.c
-@@ -148,6 +148,12 @@ static void move_ptes(struct vm_area_struct *vma, pmd_t *old_pmd,
- continue;
- pte = ptep_get_and_clear(mm, old_addr, old_pte);
+@@ -162,6 +162,12 @@ static void move_ptes(struct vm_area_struct *vma, pmd_t *old_pmd,
+ if (pte_present(pte) && pte_dirty(pte))
+ force_flush = true;
pte = move_pte(pte, new_vma->vm_page_prot, old_addr, new_addr);
+
+#ifdef CONFIG_ARCH_TRACK_EXEC_LIMIT
@@ -155125,7 +159707,7 @@ index da22ad2..f98a3df 100644
pte = move_soft_dirty_pte(pte);
set_pte_at(mm, new_addr, new_pte, pte);
}
-@@ -357,6 +363,11 @@ static struct vm_area_struct *vma_to_resize(unsigned long addr,
+@@ -373,6 +379,11 @@ static struct vm_area_struct *vma_to_resize(unsigned long addr,
if (is_vm_hugetlb_page(vma))
return ERR_PTR(-EINVAL);
@@ -155137,7 +159719,7 @@ index da22ad2..f98a3df 100644
/* We can't remap across vm area boundaries */
if (old_len > vma->vm_end - addr)
return ERR_PTR(-EFAULT);
-@@ -404,11 +415,19 @@ static unsigned long mremap_to(unsigned long addr, unsigned long old_len,
+@@ -420,11 +431,19 @@ static unsigned long mremap_to(unsigned long addr, unsigned long old_len,
unsigned long ret = -EINVAL;
unsigned long charged = 0;
unsigned long map_flags;
@@ -155158,7 +159740,7 @@ index da22ad2..f98a3df 100644
goto out;
/* Ensure the old/new locations do not overlap */
-@@ -481,6 +500,7 @@ SYSCALL_DEFINE5(mremap, unsigned long, addr, unsigned long, old_len,
+@@ -497,6 +516,7 @@ SYSCALL_DEFINE5(mremap, unsigned long, addr, unsigned long, old_len,
unsigned long ret = -EINVAL;
unsigned long charged = 0;
bool locked = false;
@@ -155166,7 +159748,7 @@ index da22ad2..f98a3df 100644
if (flags & ~(MREMAP_FIXED | MREMAP_MAYMOVE))
return ret;
-@@ -502,6 +522,17 @@ SYSCALL_DEFINE5(mremap, unsigned long, addr, unsigned long, old_len,
+@@ -518,6 +538,17 @@ SYSCALL_DEFINE5(mremap, unsigned long, addr, unsigned long, old_len,
if (!new_len)
return ret;
@@ -155184,7 +159766,7 @@ index da22ad2..f98a3df 100644
if (down_write_killable(&current->mm->mmap_sem))
return -EINTR;
-@@ -553,6 +584,7 @@ SYSCALL_DEFINE5(mremap, unsigned long, addr, unsigned long, old_len,
+@@ -569,6 +600,7 @@ SYSCALL_DEFINE5(mremap, unsigned long, addr, unsigned long, old_len,
new_addr = addr;
}
ret = addr;
@@ -155192,7 +159774,7 @@ index da22ad2..f98a3df 100644
goto out;
}
}
-@@ -576,7 +608,12 @@ SYSCALL_DEFINE5(mremap, unsigned long, addr, unsigned long, old_len,
+@@ -592,7 +624,12 @@ SYSCALL_DEFINE5(mremap, unsigned long, addr, unsigned long, old_len,
goto out;
}
@@ -155206,7 +159788,7 @@ index da22ad2..f98a3df 100644
out:
if (offset_in_page(ret)) {
diff --git a/mm/nommu.c b/mm/nommu.c
-index 95daf81..559c30b 100644
+index 44265e0..e88f9ff 100644
--- a/mm/nommu.c
+++ b/mm/nommu.c
@@ -48,7 +48,6 @@ unsigned long max_mapnr;
@@ -155217,7 +159799,7 @@ index 95daf81..559c30b 100644
atomic_long_t mmap_pages_allocated;
-@@ -836,15 +835,6 @@ struct vm_area_struct *find_vma(struct mm_struct *mm, unsigned long addr)
+@@ -828,15 +827,6 @@ struct vm_area_struct *find_vma(struct mm_struct *mm, unsigned long addr)
EXPORT_SYMBOL(find_vma);
/*
@@ -155233,7 +159815,7 @@ index 95daf81..559c30b 100644
* expand a stack to a given address
* - not supported under NOMMU conditions
*/
-@@ -1509,6 +1499,7 @@ int split_vma(struct mm_struct *mm, struct vm_area_struct *vma,
+@@ -1501,6 +1491,7 @@ int split_vma(struct mm_struct *mm, struct vm_area_struct *vma,
/* most fields are the same, copy all, and then fixup */
*new = *vma;
@@ -155241,39 +159823,39 @@ index 95daf81..559c30b 100644
*region = *vma->vm_region;
new->vm_region = region;
-@@ -1816,8 +1807,8 @@ void filemap_map_pages(struct fault_env *fe,
+@@ -1808,8 +1799,8 @@ void filemap_map_pages(struct fault_env *fe,
}
EXPORT_SYMBOL(filemap_map_pages);
--static int __access_remote_vm(struct task_struct *tsk, struct mm_struct *mm,
-- unsigned long addr, void *buf, int len, int write)
-+static ssize_t __access_remote_vm(struct task_struct *tsk, struct mm_struct *mm,
-+ unsigned long addr, void *buf, size_t len, int write)
+-int __access_remote_vm(struct task_struct *tsk, struct mm_struct *mm,
+- unsigned long addr, void *buf, int len, unsigned int gup_flags)
++ssize_t __access_remote_vm(struct task_struct *tsk, struct mm_struct *mm,
++ unsigned long addr, void *buf, size_t len, unsigned int gup_flags)
{
struct vm_area_struct *vma;
-
-@@ -1858,8 +1849,8 @@ static int __access_remote_vm(struct task_struct *tsk, struct mm_struct *mm,
+ int write = gup_flags & FOLL_WRITE;
+@@ -1851,8 +1842,8 @@ int __access_remote_vm(struct task_struct *tsk, struct mm_struct *mm,
*
* The caller must hold a reference on @mm.
*/
-int access_remote_vm(struct mm_struct *mm, unsigned long addr,
-- void *buf, int len, int write)
+- void *buf, int len, unsigned int gup_flags)
+ssize_t access_remote_vm(struct mm_struct *mm, unsigned long addr,
-+ void *buf, size_t len, int write)
++ void *buf, size_t len, unsigned int gup_flags)
{
- return __access_remote_vm(NULL, mm, addr, buf, len, write);
+ return __access_remote_vm(NULL, mm, addr, buf, len, gup_flags);
}
-@@ -1868,7 +1859,7 @@ int access_remote_vm(struct mm_struct *mm, unsigned long addr,
+@@ -1861,7 +1852,7 @@ int access_remote_vm(struct mm_struct *mm, unsigned long addr,
* Access another process' address space.
* - source/target buffer must be kernel space
*/
--int access_process_vm(struct task_struct *tsk, unsigned long addr, void *buf, int len, int write)
-+ssize_t access_process_vm(struct task_struct *tsk, unsigned long addr, void *buf, size_t len, int write)
+-int access_process_vm(struct task_struct *tsk, unsigned long addr, void *buf, int len,
++ssize_t access_process_vm(struct task_struct *tsk, unsigned long addr, void *buf, size_t len,
+ unsigned int gup_flags)
{
struct mm_struct *mm;
-
diff --git a/mm/page-writeback.c b/mm/page-writeback.c
-index f4cd7d8..982c35d 100644
+index 439cc63..d342d3b 100644
--- a/mm/page-writeback.c
+++ b/mm/page-writeback.c
@@ -902,7 +902,7 @@ static long long pos_ratio_polynom(unsigned long setpoint,
@@ -155286,7 +159868,7 @@ index f4cd7d8..982c35d 100644
struct bdi_writeback *wb = dtc->wb;
unsigned long write_bw = wb->avg_write_bandwidth;
diff --git a/mm/page_alloc.c b/mm/page_alloc.c
-index 212a017..4c850fb 100644
+index f4a02e2..59c5bf35 100644
--- a/mm/page_alloc.c
+++ b/mm/page_alloc.c
@@ -64,6 +64,7 @@
@@ -155297,16 +159879,7 @@ index 212a017..4c850fb 100644
#include <asm/sections.h>
#include <asm/tlbflush.h>
-@@ -676,7 +677,7 @@ static inline void clear_page_guard(struct zone *zone, struct page *page,
- __mod_zone_freepage_state(zone, (1 << order), migratetype);
- }
- #else
--struct page_ext_operations debug_guardpage_ops = { NULL, };
-+struct page_ext_operations debug_guardpage_ops = { .need = NULL, .init = NULL };
- static inline void set_page_guard(struct zone *zone, struct page *page,
- unsigned int order, int migratetype) {}
- static inline void clear_page_guard(struct zone *zone, struct page *page,
-@@ -979,6 +980,10 @@ static __always_inline bool free_pages_prepare(struct page *page,
+@@ -995,6 +996,10 @@ static __always_inline bool free_pages_prepare(struct page *page,
{
int bad = 0;
@@ -155317,7 +159890,7 @@ index 212a017..4c850fb 100644
VM_BUG_ON_PAGE(PageTail(page), page);
trace_mm_page_free(page, order);
-@@ -1025,6 +1030,12 @@ static __always_inline bool free_pages_prepare(struct page *page,
+@@ -1041,6 +1046,12 @@ static __always_inline bool free_pages_prepare(struct page *page,
debug_check_no_obj_freed(page_address(page),
PAGE_SIZE << order);
}
@@ -155330,7 +159903,7 @@ index 212a017..4c850fb 100644
arch_free_page(page, order);
kernel_poison_pages(page, 1 << order, 0);
kernel_map_pages(page, 1 << order, 0);
-@@ -1234,6 +1245,20 @@ static void __free_pages_ok(struct page *page, unsigned int order)
+@@ -1250,6 +1261,15 @@ static void __free_pages_ok(struct page *page, unsigned int order)
local_irq_restore(flags);
}
@@ -155343,15 +159916,10 @@ index 212a017..4c850fb 100644
+}
+early_param("pax_extra_latent_entropy", setup_pax_extra_latent_entropy);
+
-+#ifdef LATENT_ENTROPY_PLUGIN
-+volatile unsigned long latent_entropy __latent_entropy;
-+EXPORT_SYMBOL(latent_entropy);
-+#endif
-+
static void __init __free_pages_boot_core(struct page *page, unsigned int order)
{
unsigned int nr_pages = 1 << order;
-@@ -1249,6 +1274,21 @@ static void __init __free_pages_boot_core(struct page *page, unsigned int order)
+@@ -1265,6 +1285,21 @@ static void __init __free_pages_boot_core(struct page *page, unsigned int order)
__ClearPageReserved(p);
set_page_count(p, 0);
@@ -155373,7 +159941,7 @@ index 212a017..4c850fb 100644
page_zone(page)->managed_pages += nr_pages;
set_page_refcounted(page);
__free_pages(page, order);
-@@ -1305,7 +1345,6 @@ static inline bool __meminit meminit_pfn_in_nid(unsigned long pfn, int node,
+@@ -1321,7 +1356,6 @@ static inline bool __meminit meminit_pfn_in_nid(unsigned long pfn, int node,
}
#endif
@@ -155381,7 +159949,7 @@ index 212a017..4c850fb 100644
void __init __free_pages_bootmem(struct page *page, unsigned long pfn,
unsigned int order)
{
-@@ -1678,8 +1717,8 @@ static inline int check_new_page(struct page *page)
+@@ -1697,8 +1731,8 @@ static inline int check_new_page(struct page *page)
static inline bool free_pages_prezeroed(bool poisoned)
{
@@ -155392,7 +159960,7 @@ index 212a017..4c850fb 100644
}
#ifdef CONFIG_DEBUG_VM
-@@ -1735,11 +1774,13 @@ static void prep_new_page(struct page *page, unsigned int order, gfp_t gfp_flags
+@@ -1754,11 +1788,13 @@ static void prep_new_page(struct page *page, unsigned int order, gfp_t gfp_flags
int i;
bool poisoned = true;
@@ -155406,7 +159974,7 @@ index 212a017..4c850fb 100644
post_alloc_hook(page, order, gfp_flags);
-@@ -2286,8 +2327,9 @@ static void drain_pages(unsigned int cpu)
+@@ -2305,8 +2341,9 @@ static void drain_pages(unsigned int cpu)
* The CPU has to be pinned. When zone parameter is non-NULL, spill just
* the single zone's pages.
*/
@@ -155417,7 +159985,7 @@ index 212a017..4c850fb 100644
int cpu = smp_processor_id();
if (zone)
-@@ -2347,8 +2389,7 @@ void drain_all_pages(struct zone *zone)
+@@ -2366,8 +2403,7 @@ void drain_all_pages(struct zone *zone)
else
cpumask_clear_cpu(cpu, &cpus_with_pcps);
}
@@ -155428,7 +159996,7 @@ index 212a017..4c850fb 100644
#ifdef CONFIG_HIBERNATION
diff --git a/mm/percpu.c b/mm/percpu.c
-index 9903830..5176325 100644
+index 2557143..19f5eca 100644
--- a/mm/percpu.c
+++ b/mm/percpu.c
@@ -133,7 +133,7 @@ static unsigned int pcpu_low_unit_cpu __read_mostly;
@@ -155441,7 +160009,7 @@ index 9903830..5176325 100644
static const int *pcpu_unit_map __read_mostly; /* cpu -> unit */
diff --git a/mm/process_vm_access.c b/mm/process_vm_access.c
-index 07514d4..9989090 100644
+index be8dc8d..d763a78 100644
--- a/mm/process_vm_access.c
+++ b/mm/process_vm_access.c
@@ -13,6 +13,7 @@
@@ -155452,7 +160020,7 @@ index 07514d4..9989090 100644
#include <linux/ptrace.h>
#include <linux/slab.h>
#include <linux/syscalls.h>
-@@ -159,19 +160,19 @@ static ssize_t process_vm_rw_core(pid_t pid, struct iov_iter *iter,
+@@ -162,19 +163,19 @@ static ssize_t process_vm_rw_core(pid_t pid, struct iov_iter *iter,
ssize_t iov_len;
size_t total_len = iov_iter_count(iter);
@@ -155479,7 +160047,7 @@ index 07514d4..9989090 100644
}
if (nr_pages == 0)
-@@ -199,6 +200,11 @@ static ssize_t process_vm_rw_core(pid_t pid, struct iov_iter *iter,
+@@ -202,6 +203,11 @@ static ssize_t process_vm_rw_core(pid_t pid, struct iov_iter *iter,
goto free_proc_pages;
}
@@ -155609,7 +160177,7 @@ index 1ef3640..88c345d 100644
/*
diff --git a/mm/shmem.c b/mm/shmem.c
-index 38aa5e0..9b3e13b 100644
+index 9d32e1c..054adce 100644
--- a/mm/shmem.c
+++ b/mm/shmem.c
@@ -34,7 +34,7 @@
@@ -155630,7 +160198,7 @@ index 38aa5e0..9b3e13b 100644
/*
* shmem_fallocate communicates with shmem_fault or shmem_writepage via
-@@ -3257,6 +3257,24 @@ static int shmem_xattr_handler_set(const struct xattr_handler *handler,
+@@ -3157,6 +3157,24 @@ static int shmem_xattr_handler_set(const struct xattr_handler *handler,
return simple_xattr_set(&info->xattrs, name, value, size, flags);
}
@@ -155655,7 +160223,7 @@ index 38aa5e0..9b3e13b 100644
static const struct xattr_handler shmem_security_xattr_handler = {
.prefix = XATTR_SECURITY_PREFIX,
.get = shmem_xattr_handler_get,
-@@ -3269,6 +3287,14 @@ static const struct xattr_handler shmem_trusted_xattr_handler = {
+@@ -3169,6 +3187,14 @@ static const struct xattr_handler shmem_trusted_xattr_handler = {
.set = shmem_xattr_handler_set,
};
@@ -155670,7 +160238,7 @@ index 38aa5e0..9b3e13b 100644
static const struct xattr_handler *shmem_xattr_handlers[] = {
#ifdef CONFIG_TMPFS_POSIX_ACL
&posix_acl_access_xattr_handler,
-@@ -3276,6 +3302,11 @@ static const struct xattr_handler *shmem_xattr_handlers[] = {
+@@ -3176,6 +3202,11 @@ static const struct xattr_handler *shmem_xattr_handlers[] = {
#endif
&shmem_security_xattr_handler,
&shmem_trusted_xattr_handler,
@@ -155682,7 +160250,7 @@ index 38aa5e0..9b3e13b 100644
NULL
};
-@@ -3655,8 +3686,7 @@ int shmem_fill_super(struct super_block *sb, void *data, int silent)
+@@ -3549,8 +3580,7 @@ int shmem_fill_super(struct super_block *sb, void *data, int silent)
int err = -ENOMEM;
/* Round up to L1_CACHE_BYTES to resist false sharing */
@@ -155693,7 +160261,7 @@ index 38aa5e0..9b3e13b 100644
return -ENOMEM;
diff --git a/mm/slab.c b/mm/slab.c
-index 525a911..b6279c0 100644
+index bd878f0..d96f2c6 100644
--- a/mm/slab.c
+++ b/mm/slab.c
@@ -116,6 +116,7 @@
@@ -155704,7 +160272,7 @@ index 525a911..b6279c0 100644
#include <net/sock.h>
-@@ -284,10 +285,12 @@ static void kmem_cache_node_init(struct kmem_cache_node *parent)
+@@ -285,10 +286,12 @@ static void kmem_cache_node_init(struct kmem_cache_node *parent)
if ((x)->max_freeable < i) \
(x)->max_freeable = i; \
} while (0)
@@ -155721,7 +160289,7 @@ index 525a911..b6279c0 100644
#else
#define STATS_INC_ACTIVE(x) do { } while (0)
#define STATS_DEC_ACTIVE(x) do { } while (0)
-@@ -304,6 +307,8 @@ static void kmem_cache_node_init(struct kmem_cache_node *parent)
+@@ -305,6 +308,8 @@ static void kmem_cache_node_init(struct kmem_cache_node *parent)
#define STATS_INC_ALLOCMISS(x) do { } while (0)
#define STATS_INC_FREEHIT(x) do { } while (0)
#define STATS_INC_FREEMISS(x) do { } while (0)
@@ -155730,7 +160298,7 @@ index 525a911..b6279c0 100644
#endif
#if DEBUG
-@@ -410,7 +415,7 @@ static inline void *index_to_obj(struct kmem_cache *cache, struct page *page,
+@@ -411,7 +416,7 @@ static inline void *index_to_obj(struct kmem_cache *cache, struct page *page,
* reciprocal_divide(offset, cache->reciprocal_buffer_size)
*/
static inline unsigned int obj_to_index(const struct kmem_cache *cache,
@@ -155739,7 +160307,7 @@ index 525a911..b6279c0 100644
{
u32 offset = (obj - page->s_mem);
return reciprocal_divide(offset, cache->reciprocal_buffer_size);
-@@ -1290,7 +1295,7 @@ void __init kmem_cache_init(void)
+@@ -1284,7 +1289,7 @@ void __init kmem_cache_init(void)
create_boot_cache(kmem_cache, "kmem_cache",
offsetof(struct kmem_cache, node) +
nr_node_ids * sizeof(struct kmem_cache_node *),
@@ -155748,7 +160316,7 @@ index 525a911..b6279c0 100644
list_add(&kmem_cache->list, &slab_caches);
slab_state = PARTIAL;
-@@ -1298,8 +1303,8 @@ void __init kmem_cache_init(void)
+@@ -1292,8 +1297,8 @@ void __init kmem_cache_init(void)
* Initialize the caches that provide memory for the kmem_cache_node
* structures first. Without this, further allocations will bug.
*/
@@ -155759,7 +160327,7 @@ index 525a911..b6279c0 100644
slab_state = PARTIAL_NODE;
setup_kmalloc_cache_index_table();
-@@ -1544,7 +1549,7 @@ static void store_stackinfo(struct kmem_cache *cachep, unsigned long *addr,
+@@ -1536,7 +1541,7 @@ static void store_stackinfo(struct kmem_cache *cachep, unsigned long *addr,
while (!kstack_end(sptr)) {
svalue = *sptr++;
@@ -155768,7 +160336,7 @@ index 525a911..b6279c0 100644
*addr++ = svalue;
size -= sizeof(unsigned long);
if (size <= sizeof(unsigned long))
-@@ -1931,7 +1936,7 @@ __kmem_cache_alias(const char *name, size_t size, size_t align,
+@@ -1923,7 +1928,7 @@ __kmem_cache_alias(const char *name, size_t size, size_t align,
cachep = find_mergeable(size, align, flags, name, ctor);
if (cachep) {
@@ -155777,7 +160345,7 @@ index 525a911..b6279c0 100644
/*
* Adjust the object sizes so that we clear
-@@ -2060,6 +2065,8 @@ __kmem_cache_create (struct kmem_cache *cachep, unsigned long flags)
+@@ -2052,6 +2057,8 @@ __kmem_cache_create (struct kmem_cache *cachep, unsigned long flags)
#endif
#endif
@@ -155786,36 +160354,7 @@ index 525a911..b6279c0 100644
/*
* Check that size is in terms of words. This is needed to avoid
* unaligned accesses for some archs when redzoning is used, and makes
-@@ -2482,7 +2489,6 @@ union freelist_init_state {
- unsigned int pos;
- unsigned int *list;
- unsigned int count;
-- unsigned int rand;
- };
- struct rnd_state rnd_state;
- };
-@@ -2508,8 +2514,7 @@ static bool freelist_state_initialize(union freelist_init_state *state,
- } else {
- state->list = cachep->random_seq;
- state->count = count;
-- state->pos = 0;
-- state->rand = rand;
-+ state->pos = rand % count;
- ret = true;
- }
- return ret;
-@@ -2518,7 +2523,9 @@ static bool freelist_state_initialize(union freelist_init_state *state,
- /* Get the next entry on the list and randomize it using a random shift */
- static freelist_idx_t next_random_slot(union freelist_init_state *state)
- {
-- return (state->list[state->pos++] + state->rand) % state->count;
-+ if (state->pos >= state->count)
-+ state->pos = 0;
-+ return state->list[state->pos++];
- }
-
- /* Swap two freelist entries */
-@@ -3524,6 +3531,20 @@ void ___cache_free(struct kmem_cache *cachep, void *objp,
+@@ -3520,6 +3527,20 @@ void ___cache_free(struct kmem_cache *cachep, void *objp,
struct array_cache *ac = cpu_cache_get(cachep);
check_irq_off();
@@ -155836,7 +160375,7 @@ index 525a911..b6279c0 100644
kmemleak_free_recursive(objp, cachep->flags);
objp = cache_free_debugcheck(cachep, objp, caller);
-@@ -3703,7 +3724,7 @@ __do_kmalloc_node(size_t size, gfp_t flags, int node, unsigned long caller)
+@@ -3699,7 +3720,7 @@ __do_kmalloc_node(size_t size, gfp_t flags, int node, unsigned long caller)
return ret;
}
@@ -155845,7 +160384,7 @@ index 525a911..b6279c0 100644
{
return __do_kmalloc_node(size, flags, node, _RET_IP_);
}
-@@ -3723,7 +3744,7 @@ EXPORT_SYMBOL(__kmalloc_node_track_caller);
+@@ -3719,7 +3740,7 @@ EXPORT_SYMBOL(__kmalloc_node_track_caller);
* @flags: the type of memory to allocate (see kmalloc).
* @caller: function caller for debug tracking of the caller
*/
@@ -155854,7 +160393,7 @@ index 525a911..b6279c0 100644
unsigned long caller)
{
struct kmem_cache *cachep;
-@@ -3823,6 +3844,7 @@ void kfree(const void *objp)
+@@ -3819,6 +3840,7 @@ void kfree(const void *objp)
if (unlikely(ZERO_OR_NULL_PTR(objp)))
return;
@@ -155862,7 +160401,7 @@ index 525a911..b6279c0 100644
local_irq_save(flags);
kfree_debugcheck(objp);
c = virt_to_cache(objp);
-@@ -4190,14 +4212,22 @@ void slabinfo_show_stats(struct seq_file *m, struct kmem_cache *cachep)
+@@ -4189,14 +4211,22 @@ void slabinfo_show_stats(struct seq_file *m, struct kmem_cache *cachep)
}
/* cpu stats */
{
@@ -155889,7 +160428,7 @@ index 525a911..b6279c0 100644
#endif
}
-@@ -4434,16 +4464,48 @@ static const struct file_operations proc_slabstats_operations = {
+@@ -4433,16 +4463,48 @@ static const struct file_operations proc_slabstats_operations = {
static int __init slab_proc_init(void)
{
#ifdef CONFIG_DEBUG_SLAB_LEAK
@@ -155940,7 +160479,7 @@ index 525a911..b6279c0 100644
*
* Returns NULL if check passes, otherwise const char * to name of cache
* to indicate an error.
-@@ -4457,17 +4519,23 @@ const char *__check_heap_object(const void *ptr, unsigned long n,
+@@ -4456,17 +4518,23 @@ const char *__check_heap_object(const void *ptr, unsigned long n,
/* Find and validate object. */
cachep = page->slab_cache;
@@ -155970,7 +160509,7 @@ index 525a911..b6279c0 100644
#endif /* CONFIG_HARDENED_USERCOPY */
diff --git a/mm/slab.h b/mm/slab.h
-index 9653f2e..9b9e8cd 100644
+index bc05fdc..ffe0dbc 100644
--- a/mm/slab.h
+++ b/mm/slab.h
@@ -21,8 +21,10 @@ struct kmem_cache {
@@ -156147,7 +160686,7 @@ index 329b038..52e9e91 100644
list_add(&s->list, &slab_caches);
out:
if (err)
-@@ -362,11 +391,13 @@ out_free_cache:
+@@ -362,11 +391,13 @@ static struct kmem_cache *create_cache(const char *name,
}
/*
@@ -156162,7 +160701,7 @@ index 329b038..52e9e91 100644
* @ctor: A constructor for the objects.
*
* Returns a ptr to the cache on success, NULL on failure.
-@@ -385,9 +416,10 @@ out_free_cache:
+@@ -385,9 +416,10 @@ static struct kmem_cache *create_cache(const char *name,
* cacheline. This can be beneficial if you're counting cycles as closely
* as davem.
*/
@@ -156197,7 +160736,7 @@ index 329b038..52e9e91 100644
if (IS_ERR(s)) {
err = PTR_ERR(s);
kfree_const(cache_name);
-@@ -450,8 +485,25 @@ out_unlock:
+@@ -450,8 +485,25 @@ kmem_cache_create(const char *name, size_t size, size_t align,
}
return s;
}
@@ -156531,7 +161070,7 @@ index 5ec1580..eea07f2 100644
if (!slob_page_free(sp)) {
/* This slob page is about to become partially free. Easy! */
sp->units = units;
-@@ -424,11 +434,10 @@ out:
+@@ -424,11 +434,10 @@ static void slob_free(void *block, int size)
*/
static __always_inline void *
@@ -156857,7 +161396,7 @@ index 5ec1580..eea07f2 100644
EXPORT_SYMBOL(kmem_cache_free);
diff --git a/mm/slub.c b/mm/slub.c
-index 9adae58..5527bad 100644
+index 2b3e740..ca3813c 100644
--- a/mm/slub.c
+++ b/mm/slub.c
@@ -34,6 +34,7 @@
@@ -156868,7 +161407,7 @@ index 9adae58..5527bad 100644
#include <trace/events/kmem.h>
-@@ -214,7 +215,7 @@ struct track {
+@@ -210,7 +211,7 @@ struct track {
enum track_item { TRACK_ALLOC, TRACK_FREE };
@@ -156877,7 +161416,7 @@ index 9adae58..5527bad 100644
static int sysfs_slab_add(struct kmem_cache *);
static int sysfs_slab_alias(struct kmem_cache *, const char *);
static void memcg_propagate_slab_attrs(struct kmem_cache *s);
-@@ -240,30 +241,40 @@ static inline void stat(const struct kmem_cache *s, enum stat_item si)
+@@ -236,30 +237,40 @@ static inline void stat(const struct kmem_cache *s, enum stat_item si)
* Core slab cache functions
*******************************************************************/
@@ -156923,7 +161462,7 @@ index 9adae58..5527bad 100644
}
/* Loop over all objects in a slab */
-@@ -569,7 +580,7 @@ static void print_track(const char *s, struct track *t)
+@@ -565,7 +576,7 @@ static void print_track(const char *s, struct track *t)
if (!t->addr)
return;
@@ -156932,7 +161471,18 @@ index 9adae58..5527bad 100644
s, (void *)t->addr, jiffies - t->when, t->cpu, t->pid);
#ifdef CONFIG_STACKTRACE
{
-@@ -2896,6 +2907,23 @@ static __always_inline void do_slab_free(struct kmem_cache *s,
+@@ -1419,6 +1430,10 @@ static int init_cache_random_seq(struct kmem_cache *s)
+ int err;
+ unsigned long i, count = oo_objects(s->oo);
+
++ /* Bailout if already initialised */
++ if (s->random_seq)
++ return 0;
++
+ err = cache_random_seq_create(s, count, GFP_KERNEL);
+ if (err) {
+ pr_err("SLUB: Unable to initialize free list for %s\n",
+@@ -2911,6 +2926,23 @@ static __always_inline void do_slab_free(struct kmem_cache *s,
void *tail_obj = tail ? : head;
struct kmem_cache_cpu *c;
unsigned long tid;
@@ -156956,7 +161506,7 @@ index 9adae58..5527bad 100644
redo:
/*
* Determine the currently cpus per cpu slab.
-@@ -3699,7 +3727,7 @@ static int __init setup_slub_min_objects(char *str)
+@@ -3714,7 +3746,7 @@ static int __init setup_slub_min_objects(char *str)
__setup("slub_min_objects=", setup_slub_min_objects);
@@ -156965,7 +161515,7 @@ index 9adae58..5527bad 100644
{
struct kmem_cache *s;
void *ret;
-@@ -3737,7 +3765,7 @@ static void *kmalloc_large_node(size_t size, gfp_t flags, int node)
+@@ -3752,7 +3784,7 @@ static void *kmalloc_large_node(size_t size, gfp_t flags, int node)
return ptr;
}
@@ -156974,7 +161524,7 @@ index 9adae58..5527bad 100644
{
struct kmem_cache *s;
void *ret;
-@@ -3768,9 +3796,41 @@ void *__kmalloc_node(size_t size, gfp_t flags, int node)
+@@ -3783,9 +3815,41 @@ void *__kmalloc_node(size_t size, gfp_t flags, int node)
EXPORT_SYMBOL(__kmalloc_node);
#endif
@@ -157017,7 +161567,7 @@ index 9adae58..5527bad 100644
*
* Returns NULL if check passes, otherwise const char * to name of cache
* to indicate an error.
-@@ -3780,15 +3840,15 @@ const char *__check_heap_object(const void *ptr, unsigned long n,
+@@ -3795,15 +3859,15 @@ const char *__check_heap_object(const void *ptr, unsigned long n,
{
struct kmem_cache *s;
unsigned long offset;
@@ -157035,7 +161585,7 @@ index 9adae58..5527bad 100644
/* Find offset within object. */
offset = (ptr - page_address(page)) % s->size;
-@@ -3800,11 +3860,16 @@ const char *__check_heap_object(const void *ptr, unsigned long n,
+@@ -3815,11 +3879,16 @@ const char *__check_heap_object(const void *ptr, unsigned long n,
offset -= s->red_left_pad;
}
@@ -157056,7 +161606,7 @@ index 9adae58..5527bad 100644
}
#endif /* CONFIG_HARDENED_USERCOPY */
-@@ -3846,6 +3911,7 @@ void kfree(const void *x)
+@@ -3861,6 +3930,7 @@ void kfree(const void *x)
if (unlikely(ZERO_OR_NULL_PTR(x)))
return;
@@ -157064,7 +161614,7 @@ index 9adae58..5527bad 100644
page = virt_to_head_page(x);
if (unlikely(!PageSlab(page))) {
BUG_ON(!PageCompound(page));
-@@ -4116,7 +4182,7 @@ void __init kmem_cache_init(void)
+@@ -4131,7 +4201,7 @@ void __init kmem_cache_init(void)
kmem_cache = &boot_kmem_cache;
create_boot_cache(kmem_cache_node, "kmem_cache_node",
@@ -157073,7 +161623,7 @@ index 9adae58..5527bad 100644
register_hotmemory_notifier(&slab_memory_callback_nb);
-@@ -4126,7 +4192,7 @@ void __init kmem_cache_init(void)
+@@ -4141,7 +4211,7 @@ void __init kmem_cache_init(void)
create_boot_cache(kmem_cache, "kmem_cache",
offsetof(struct kmem_cache, node) +
nr_node_ids * sizeof(struct kmem_cache_node *),
@@ -157082,7 +161632,7 @@ index 9adae58..5527bad 100644
kmem_cache = bootstrap(&boot_kmem_cache);
-@@ -4166,7 +4232,7 @@ __kmem_cache_alias(const char *name, size_t size, size_t align,
+@@ -4180,7 +4250,7 @@ __kmem_cache_alias(const char *name, size_t size, size_t align,
s = find_mergeable(size, align, flags, name, ctor);
if (s) {
@@ -157091,7 +161641,7 @@ index 9adae58..5527bad 100644
/*
* Adjust the object sizes so that we clear
-@@ -4182,7 +4248,7 @@ __kmem_cache_alias(const char *name, size_t size, size_t align,
+@@ -4196,7 +4266,7 @@ __kmem_cache_alias(const char *name, size_t size, size_t align,
}
if (sysfs_slab_alias(s, name)) {
@@ -157100,7 +161650,7 @@ index 9adae58..5527bad 100644
s = NULL;
}
}
-@@ -4194,6 +4260,8 @@ int __kmem_cache_create(struct kmem_cache *s, unsigned long flags)
+@@ -4208,6 +4278,8 @@ int __kmem_cache_create(struct kmem_cache *s, unsigned long flags)
{
int err;
@@ -157109,7 +161659,7 @@ index 9adae58..5527bad 100644
err = kmem_cache_open(s, flags);
if (err)
return err;
-@@ -4299,7 +4367,7 @@ void *__kmalloc_node_track_caller(size_t size, gfp_t gfpflags,
+@@ -4276,7 +4348,7 @@ void *__kmalloc_node_track_caller(size_t size, gfp_t gfpflags,
}
#endif
@@ -157118,7 +161668,7 @@ index 9adae58..5527bad 100644
static int count_inuse(struct page *page)
{
return page->inuse;
-@@ -4580,7 +4648,11 @@ static int list_locations(struct kmem_cache *s, char *buf,
+@@ -4557,7 +4629,11 @@ static int list_locations(struct kmem_cache *s, char *buf,
len += sprintf(buf + len, "%7ld ", l->count);
if (l->addr)
@@ -157130,7 +161680,7 @@ index 9adae58..5527bad 100644
else
len += sprintf(buf + len, "<not-available>");
-@@ -4678,12 +4750,12 @@ static void __init resiliency_test(void)
+@@ -4655,12 +4731,12 @@ static void __init resiliency_test(void)
validate_slab_cache(kmalloc_caches[9]);
}
#else
@@ -157145,7 +161695,7 @@ index 9adae58..5527bad 100644
enum slab_stat_type {
SL_ALL, /* All slabs */
SL_PARTIAL, /* Only partially allocated slabs */
-@@ -4920,13 +4992,17 @@ static ssize_t ctor_show(struct kmem_cache *s, char *buf)
+@@ -4897,13 +4973,17 @@ static ssize_t ctor_show(struct kmem_cache *s, char *buf)
{
if (!s->ctor)
return 0;
@@ -157164,7 +161714,7 @@ index 9adae58..5527bad 100644
}
SLAB_ATTR_RO(aliases);
-@@ -5014,6 +5090,22 @@ static ssize_t cache_dma_show(struct kmem_cache *s, char *buf)
+@@ -4991,6 +5071,22 @@ static ssize_t cache_dma_show(struct kmem_cache *s, char *buf)
SLAB_ATTR_RO(cache_dma);
#endif
@@ -157187,7 +161737,7 @@ index 9adae58..5527bad 100644
static ssize_t destroy_by_rcu_show(struct kmem_cache *s, char *buf)
{
return sprintf(buf, "%d\n", !!(s->flags & SLAB_DESTROY_BY_RCU));
-@@ -5069,7 +5161,7 @@ static ssize_t trace_store(struct kmem_cache *s, const char *buf,
+@@ -5046,7 +5142,7 @@ static ssize_t trace_store(struct kmem_cache *s, const char *buf,
* as well as cause other issues like converting a mergeable
* cache into an umergeable one.
*/
@@ -157196,7 +161746,7 @@ index 9adae58..5527bad 100644
return -EINVAL;
s->flags &= ~SLAB_TRACE;
-@@ -5187,7 +5279,7 @@ static ssize_t failslab_show(struct kmem_cache *s, char *buf)
+@@ -5164,7 +5260,7 @@ static ssize_t failslab_show(struct kmem_cache *s, char *buf)
static ssize_t failslab_store(struct kmem_cache *s, const char *buf,
size_t length)
{
@@ -157205,7 +161755,7 @@ index 9adae58..5527bad 100644
return -EINVAL;
s->flags &= ~SLAB_FAILSLAB;
-@@ -5319,7 +5411,7 @@ STAT_ATTR(CPU_PARTIAL_NODE, cpu_partial_node);
+@@ -5296,7 +5392,7 @@ STAT_ATTR(CPU_PARTIAL_NODE, cpu_partial_node);
STAT_ATTR(CPU_PARTIAL_DRAIN, cpu_partial_drain);
#endif
@@ -157214,7 +161764,7 @@ index 9adae58..5527bad 100644
&slab_size_attr.attr,
&object_size_attr.attr,
&objs_per_slab_attr.attr,
-@@ -5354,6 +5446,12 @@ static struct attribute *slab_attrs[] = {
+@@ -5331,6 +5427,12 @@ static struct attribute *slab_attrs[] = {
#ifdef CONFIG_ZONE_DMA
&cache_dma_attr.attr,
#endif
@@ -157227,7 +161777,7 @@ index 9adae58..5527bad 100644
#ifdef CONFIG_NUMA
&remote_node_defrag_ratio_attr.attr,
#endif
-@@ -5597,6 +5695,7 @@ static char *create_unique_id(struct kmem_cache *s)
+@@ -5574,6 +5676,7 @@ static char *create_unique_id(struct kmem_cache *s)
return name;
}
@@ -157235,7 +161785,7 @@ index 9adae58..5527bad 100644
static int sysfs_slab_add(struct kmem_cache *s)
{
int err;
-@@ -5668,6 +5767,7 @@ void sysfs_slab_remove(struct kmem_cache *s)
+@@ -5645,6 +5748,7 @@ void sysfs_slab_remove(struct kmem_cache *s)
kobject_del(&s->kobj);
kobject_put(&s->kobj);
}
@@ -157243,7 +161793,7 @@ index 9adae58..5527bad 100644
/*
* Need to buffer aliases during bootup until sysfs becomes
-@@ -5681,6 +5781,7 @@ struct saved_alias {
+@@ -5658,6 +5762,7 @@ struct saved_alias {
static struct saved_alias *alias_list;
@@ -157251,7 +161801,7 @@ index 9adae58..5527bad 100644
static int sysfs_slab_alias(struct kmem_cache *s, const char *name)
{
struct saved_alias *al;
-@@ -5703,6 +5804,7 @@ static int sysfs_slab_alias(struct kmem_cache *s, const char *name)
+@@ -5680,6 +5785,7 @@ static int sysfs_slab_alias(struct kmem_cache *s, const char *name)
alias_list = al;
return 0;
}
@@ -157295,7 +161845,7 @@ index 1e168bf..2dc7328 100644
}
}
diff --git a/mm/swap.c b/mm/swap.c
-index 75c63bb..a4dce20 100644
+index 4dcf852..2c02064 100644
--- a/mm/swap.c
+++ b/mm/swap.c
@@ -91,6 +91,13 @@ static void __put_compound_page(struct page *page)
@@ -157313,7 +161863,7 @@ index 75c63bb..a4dce20 100644
}
diff --git a/mm/swapfile.c b/mm/swapfile.c
-index bf262e4..c5bc390 100644
+index d76b2a1..3678da8 100644
--- a/mm/swapfile.c
+++ b/mm/swapfile.c
@@ -90,7 +90,7 @@ static DEFINE_MUTEX(swapon_mutex);
@@ -157325,7 +161875,7 @@ index bf262e4..c5bc390 100644
static inline unsigned char swap_count(unsigned char ent)
{
-@@ -1979,7 +1979,7 @@ SYSCALL_DEFINE1(swapoff, const char __user *, specialfile)
+@@ -1999,7 +1999,7 @@ SYSCALL_DEFINE1(swapoff, const char __user *, specialfile)
spin_unlock(&swap_lock);
err = 0;
@@ -157334,7 +161884,7 @@ index bf262e4..c5bc390 100644
wake_up_interruptible(&proc_poll_wait);
out_dput:
-@@ -1996,8 +1996,8 @@ static unsigned swaps_poll(struct file *file, poll_table *wait)
+@@ -2016,8 +2016,8 @@ static unsigned swaps_poll(struct file *file, poll_table *wait)
poll_wait(file, &proc_poll_wait, wait);
@@ -157345,7 +161895,7 @@ index bf262e4..c5bc390 100644
return POLLIN | POLLRDNORM | POLLERR | POLLPRI;
}
-@@ -2095,7 +2095,7 @@ static int swaps_open(struct inode *inode, struct file *file)
+@@ -2115,7 +2115,7 @@ static int swaps_open(struct inode *inode, struct file *file)
return ret;
seq = file->private_data;
@@ -157354,7 +161904,7 @@ index bf262e4..c5bc390 100644
return 0;
}
-@@ -2545,7 +2545,7 @@ SYSCALL_DEFINE2(swapon, const char __user *, specialfile, int, swap_flags)
+@@ -2556,7 +2556,7 @@ SYSCALL_DEFINE2(swapon, const char __user *, specialfile, int, swap_flags)
(frontswap_map) ? "FS" : "");
mutex_unlock(&swapon_mutex);
@@ -157364,27 +161914,27 @@ index bf262e4..c5bc390 100644
if (S_ISREG(inode->i_mode))
diff --git a/mm/usercopy.c b/mm/usercopy.c
-index 3c8da0a..62823b9 100644
+index 3c8da0a..3dfb587 100644
--- a/mm/usercopy.c
+++ b/mm/usercopy.c
-@@ -16,15 +16,9 @@
+@@ -16,14 +16,9 @@
#include <linux/mm.h>
#include <linux/slab.h>
+#include <linux/ratelimit.h>
#include <asm/sections.h>
-
+-
-enum {
- BAD_STACK = -1,
- NOT_STACK = 0,
- GOOD_FRAME,
- GOOD_STACK,
-};
--
++#include <asm/uaccess.h>
+
/*
* Checks if a given pointer and length is contained by the current
- * stack frame (if possible).
-@@ -35,11 +29,13 @@ enum {
+@@ -35,11 +30,13 @@ enum {
* GOOD_STACK: fully on the stack (when can't do frame-checking)
* BAD_STACK: error condition (invalid stack position or bad stack frame)
*/
@@ -157402,7 +161952,7 @@ index 3c8da0a..62823b9 100644
/* Object is not on the stack at all. */
if (obj + len <= stack || stackend <= obj)
-@@ -54,25 +50,29 @@ static noinline int check_stack_object(const void *obj, unsigned long len)
+@@ -54,25 +51,29 @@ static noinline int check_stack_object(const void *obj, unsigned long len)
return BAD_STACK;
/* Check if object is safely within a valid frame. */
@@ -157442,7 +161992,7 @@ index 3c8da0a..62823b9 100644
}
/* Returns true if any portion of [ptr,ptr+n) over laps with [low,high). */
-@@ -93,8 +93,17 @@ static bool overlaps(const void *ptr, unsigned long n, unsigned long low,
+@@ -93,8 +94,17 @@ static bool overlaps(const void *ptr, unsigned long n, unsigned long low,
static inline const char *check_kernel_text_object(const void *ptr,
unsigned long n)
{
@@ -157460,7 +162010,7 @@ index 3c8da0a..62823b9 100644
unsigned long textlow_linear, texthigh_linear;
if (overlaps(ptr, n, textlow, texthigh))
-@@ -252,10 +261,15 @@ void __check_object_size(const void *ptr, unsigned long n, bool to_user)
+@@ -252,10 +262,15 @@ void __check_object_size(const void *ptr, unsigned long n, bool to_user)
goto report;
/* Check for bad stack object. */
@@ -157478,7 +162028,7 @@ index 3c8da0a..62823b9 100644
case GOOD_FRAME:
case GOOD_STACK:
/*
-@@ -264,16 +278,12 @@ void __check_object_size(const void *ptr, unsigned long n, bool to_user)
+@@ -264,16 +279,12 @@ void __check_object_size(const void *ptr, unsigned long n, bool to_user)
* process stack (when frame checking not available).
*/
return;
@@ -157499,10 +162049,19 @@ index 3c8da0a..62823b9 100644
report_usercopy(ptr, n, to_user, err);
}
diff --git a/mm/util.c b/mm/util.c
-index 662cddf..ad8d778 100644
+index 1a41553..344fbfb 100644
--- a/mm/util.c
+++ b/mm/util.c
-@@ -239,6 +239,12 @@ int vma_is_stack_for_task(struct vm_area_struct *vma, struct task_struct *t)
+@@ -134,7 +134,7 @@ void *memdup_user(const void __user *src, size_t len)
+ * cause pagefault, which makes it pointless to use GFP_NOFS
+ * or GFP_ATOMIC.
+ */
+- p = kmalloc_track_caller(len, GFP_KERNEL);
++ p = kmalloc_track_caller(len, GFP_KERNEL|GFP_USERCOPY);
+ if (!p)
+ return ERR_PTR(-ENOMEM);
+
+@@ -241,6 +241,12 @@ int vma_is_stack_for_current(struct vm_area_struct *vma)
void arch_pick_mmap_layout(struct mm_struct *mm)
{
mm->mmap_base = TASK_UNMAPPED_BASE;
@@ -157515,7 +162074,7 @@ index 662cddf..ad8d778 100644
mm->get_unmapped_area = arch_get_unmapped_area;
}
#endif
-@@ -432,6 +438,7 @@ unsigned long sysctl_overcommit_kbytes __read_mostly;
+@@ -435,6 +441,7 @@ unsigned long sysctl_overcommit_kbytes __read_mostly;
int sysctl_max_map_count __read_mostly = DEFAULT_MAX_MAP_COUNT;
unsigned long sysctl_user_reserve_kbytes __read_mostly = 1UL << 17; /* 128MB */
unsigned long sysctl_admin_reserve_kbytes __read_mostly = 1UL << 13; /* 8MB */
@@ -157523,7 +162082,7 @@ index 662cddf..ad8d778 100644
int overcommit_ratio_handler(struct ctl_table *table, int write,
void __user *buffer, size_t *lenp,
-@@ -611,6 +618,9 @@ int get_cmdline(struct task_struct *task, char *buffer, int buflen)
+@@ -614,6 +621,9 @@ int get_cmdline(struct task_struct *task, char *buffer, int buflen)
if (!mm->arg_end)
goto out_mm; /* Shh! No looking before we're done */
@@ -157534,7 +162093,7 @@ index 662cddf..ad8d778 100644
arg_start = mm->arg_start;
arg_end = mm->arg_end;
diff --git a/mm/vmalloc.c b/mm/vmalloc.c
-index 91f44e7..8500d40 100644
+index f2481cb..333cf43 100644
--- a/mm/vmalloc.c
+++ b/mm/vmalloc.c
@@ -43,20 +43,65 @@ struct vfree_deferred {
@@ -157762,9 +162321,9 @@ index 91f44e7..8500d40 100644
+ }
+#endif
+
- if (flags & VM_IOREMAP)
- align = 1ul << clamp_t(int, fls_long(size),
- PAGE_SHIFT, IOREMAP_MAX_ORDER);
+ size = PAGE_ALIGN(size);
+ if (unlikely(!size))
+ return NULL;
@@ -1371,7 +1478,11 @@ static struct vm_struct *__get_vm_area_node(unsigned long size,
if (unlikely(!area))
return NULL;
@@ -157829,7 +162388,7 @@ index 91f44e7..8500d40 100644
size = (unsigned long)count << PAGE_SHIFT;
area = get_vm_area_caller(size, flags, __builtin_return_address(0));
if (!area)
-@@ -1684,6 +1823,14 @@ void *__vmalloc_node_range(unsigned long size, unsigned long align,
+@@ -1683,6 +1822,14 @@ void *__vmalloc_node_range(unsigned long size, unsigned long align,
if (!size || (size >> PAGE_SHIFT) > totalram_pages)
goto fail;
@@ -157844,7 +162403,7 @@ index 91f44e7..8500d40 100644
area = __get_vm_area_node(size, align, VM_ALLOC | VM_UNINITIALIZED |
vm_flags, start, end, node, gfp_mask, caller);
if (!area)
-@@ -1737,6 +1884,14 @@ static void *__vmalloc_node(unsigned long size, unsigned long align,
+@@ -1735,6 +1882,14 @@ static void *__vmalloc_node(unsigned long size, unsigned long align,
gfp_mask, prot, 0, node, caller);
}
@@ -157859,24 +162418,7 @@ index 91f44e7..8500d40 100644
void *__vmalloc(unsigned long size, gfp_t gfp_mask, pgprot_t prot)
{
return __vmalloc_node(size, 1, gfp_mask, prot, NUMA_NO_NODE,
-@@ -1751,6 +1906,16 @@ static inline void *__vmalloc_node_flags(unsigned long size,
- node, __builtin_return_address(0));
- }
-
-+#if defined(CONFIG_GRKERNSEC_KSTACKOVERFLOW) && defined(CONFIG_X86_64)
-+void *vzalloc_irq_stack(void)
-+{
-+ return __vmalloc_node(IRQ_STACK_SIZE, IRQ_STACK_SIZE,
-+ GFP_KERNEL | __GFP_NOTRACK | __GFP_ZERO,
-+ PAGE_KERNEL, NUMA_NO_NODE,
-+ __builtin_return_address(0));
-+}
-+#endif
-+
- /**
- * vmalloc - allocate virtually contiguous memory
- * @size: allocation size
-@@ -1860,10 +2025,9 @@ EXPORT_SYMBOL(vzalloc_node);
+@@ -1858,10 +2013,9 @@ EXPORT_SYMBOL(vzalloc_node);
* For tight control over page level allocator and protection flags
* use __vmalloc() instead.
*/
@@ -157888,7 +162430,7 @@ index 91f44e7..8500d40 100644
NUMA_NO_NODE, __builtin_return_address(0));
}
-@@ -2170,6 +2334,8 @@ int remap_vmalloc_range_partial(struct vm_area_struct *vma, unsigned long uaddr,
+@@ -2168,6 +2322,8 @@ int remap_vmalloc_range_partial(struct vm_area_struct *vma, unsigned long uaddr,
{
struct vm_struct *area;
@@ -157897,7 +162439,7 @@ index 91f44e7..8500d40 100644
size = PAGE_ALIGN(size);
if (!PAGE_ALIGNED(uaddr) || !PAGE_ALIGNED(kaddr))
-@@ -2539,7 +2705,7 @@ found:
+@@ -2537,7 +2693,7 @@ struct vm_struct **pcpu_get_vm_areas(const unsigned long *offsets,
/* insert all vm's */
for (area = 0; area < nr_vms; area++)
setup_vmalloc_vm(vms[area], vas[area], VM_ALLOC,
@@ -157906,7 +162448,7 @@ index 91f44e7..8500d40 100644
kfree(vas);
return vms;
-@@ -2652,7 +2818,11 @@ static int s_show(struct seq_file *m, void *p)
+@@ -2650,7 +2806,11 @@ static int s_show(struct seq_file *m, void *p)
v->addr, v->addr + v->size, v->size);
if (v->caller)
@@ -157919,7 +162461,7 @@ index 91f44e7..8500d40 100644
if (v->nr_pages)
seq_printf(m, " pages=%d", v->nr_pages);
diff --git a/mm/vmstat.c b/mm/vmstat.c
-index 89cec42..673413a 100644
+index 604f26a..6e8df6a 100644
--- a/mm/vmstat.c
+++ b/mm/vmstat.c
@@ -27,6 +27,7 @@
@@ -158013,7 +162555,7 @@ index 89cec42..673413a 100644
#ifdef CONFIG_SMP
if (x < 0)
x = 0;
-@@ -1556,10 +1557,22 @@ static void *vmstat_start(struct seq_file *m, loff_t *pos)
+@@ -1477,10 +1478,22 @@ static void *vmstat_start(struct seq_file *m, loff_t *pos)
stat_items_size += sizeof(struct vm_event_state);
#endif
@@ -158037,7 +162579,7 @@ index 89cec42..673413a 100644
for (i = 0; i < NR_VM_ZONE_STAT_ITEMS; i++)
v[i] = global_page_state(i);
v += NR_VM_ZONE_STAT_ITEMS;
-@@ -1656,7 +1669,7 @@ int vmstat_refresh(struct ctl_table *table, int write,
+@@ -1580,7 +1593,7 @@ int vmstat_refresh(struct ctl_table *table, int write,
if (err)
return err;
for (i = 0; i < NR_VM_ZONE_STAT_ITEMS; i++) {
@@ -158046,7 +162588,7 @@ index 89cec42..673413a 100644
if (val < 0) {
switch (i) {
case NR_PAGES_SCANNED:
-@@ -1856,10 +1869,16 @@ static int __init setup_vmstat(void)
+@@ -1791,10 +1804,16 @@ static int __init setup_vmstat(void)
cpu_notifier_register_done();
#endif
#ifdef CONFIG_PROC_FS
@@ -158071,7 +162613,7 @@ diff --git a/net/8021q/vlan.c b/net/8021q/vlan.c
index f2531ad..5792672 100644
--- a/net/8021q/vlan.c
+++ b/net/8021q/vlan.c
-@@ -496,7 +496,7 @@ out:
+@@ -496,7 +496,7 @@ static int vlan_device_event(struct notifier_block *unused, unsigned long event,
return NOTIFY_DONE;
}
@@ -158192,7 +162734,7 @@ index 876fbe8..8bbea9f 100644
#undef __HANDLE_ITEM
}
diff --git a/net/atm/lec.c b/net/atm/lec.c
-index e574a7e..2f5a14d 100644
+index 5d26938..fddc41a 100644
--- a/net/atm/lec.c
+++ b/net/atm/lec.c
@@ -111,9 +111,9 @@ static inline void lec_arp_put(struct lec_arp_table *entry)
@@ -158333,10 +162875,10 @@ index 919a5ce..cc6b444 100644
table = kmemdup(ax25_param_table, sizeof(ax25_param_table), GFP_KERNEL);
if (!table)
diff --git a/net/batman-adv/bat_iv_ogm.c b/net/batman-adv/bat_iv_ogm.c
-index 19b0abd..9a487ee 100644
+index e2d18d0..3af2c54 100644
--- a/net/batman-adv/bat_iv_ogm.c
+++ b/net/batman-adv/bat_iv_ogm.c
-@@ -361,7 +361,7 @@ static int batadv_iv_ogm_iface_enable(struct batadv_hard_iface *hard_iface)
+@@ -368,7 +368,7 @@ static int batadv_iv_ogm_iface_enable(struct batadv_hard_iface *hard_iface)
/* randomize initial seqno to avoid collision */
get_random_bytes(&random_seqno, sizeof(random_seqno));
@@ -158345,7 +162887,7 @@ index 19b0abd..9a487ee 100644
hard_iface->bat_iv.ogm_buff_len = BATADV_OGM_HLEN;
ogm_buff = kmalloc(hard_iface->bat_iv.ogm_buff_len, GFP_ATOMIC);
-@@ -973,9 +973,9 @@ static void batadv_iv_ogm_schedule(struct batadv_hard_iface *hard_iface)
+@@ -953,9 +953,9 @@ static void batadv_iv_ogm_schedule(struct batadv_hard_iface *hard_iface)
batadv_ogm_packet->tvlv_len = htons(tvlv_len);
/* change sequence number to network order */
@@ -158357,7 +162899,7 @@ index 19b0abd..9a487ee 100644
batadv_iv_ogm_slide_own_bcast_window(hard_iface);
-@@ -1673,7 +1673,7 @@ static void batadv_iv_ogm_process(const struct sk_buff *skb, int ogm_offset,
+@@ -1653,7 +1653,7 @@ static void batadv_iv_ogm_process(const struct sk_buff *skb, int ogm_offset,
return;
/* could be changed by schedule_own_packet() */
@@ -158379,11 +162921,24 @@ index 0934730..a8189fc 100644
frag_header.reserved = 0;
frag_header.no = 0;
frag_header.total_size = htons(skb->len);
+diff --git a/net/batman-adv/netlink.c b/net/batman-adv/netlink.c
+index 64cb6ac..37646cc 100644
+--- a/net/batman-adv/netlink.c
++++ b/net/batman-adv/netlink.c
+@@ -141,7 +141,7 @@ batadv_netlink_mesh_info_put(struct sk_buff *msg, struct net_device *soft_iface)
+ nla_put(msg, BATADV_ATTR_MESH_ADDRESS, ETH_ALEN,
+ soft_iface->dev_addr) ||
+ nla_put_u8(msg, BATADV_ATTR_TT_TTVN,
+- (u8)atomic_read(&bat_priv->tt.vn)))
++ (u8)atomic_read_unchecked(&bat_priv->tt.vn)))
+ goto out;
+
+ #ifdef CONFIG_BATMAN_ADV_BLA
diff --git a/net/batman-adv/routing.c b/net/batman-adv/routing.c
-index 3d19947..5c61638 100644
+index 7e8dc64..8ae99ed 100644
--- a/net/batman-adv/routing.c
+++ b/net/batman-adv/routing.c
-@@ -758,7 +758,7 @@ batadv_reroute_unicast_packet(struct batadv_priv *bat_priv,
+@@ -749,7 +749,7 @@ batadv_reroute_unicast_packet(struct batadv_priv *bat_priv,
if (!primary_if)
goto out;
orig_addr = primary_if->net_dev->dev_addr;
@@ -158392,7 +162947,7 @@ index 3d19947..5c61638 100644
} else {
orig_node = batadv_transtable_search(bat_priv, NULL, dst_addr,
vid);
-@@ -834,7 +834,7 @@ static bool batadv_check_unicast_ttvn(struct batadv_priv *bat_priv,
+@@ -825,7 +825,7 @@ static bool batadv_check_unicast_ttvn(struct batadv_priv *bat_priv,
* value is used later to check if the node which sent (or re-routed
* last time) the packet had an updated information or not
*/
@@ -158402,10 +162957,10 @@ index 3d19947..5c61638 100644
orig_node = batadv_orig_hash_find(bat_priv,
unicast_packet->dest);
diff --git a/net/batman-adv/soft-interface.c b/net/batman-adv/soft-interface.c
-index 7527c06..42024c6 100644
+index 49e16b6..da957f1 100644
--- a/net/batman-adv/soft-interface.c
+++ b/net/batman-adv/soft-interface.c
-@@ -180,7 +180,7 @@ static void batadv_interface_set_rx_mode(struct net_device *dev)
+@@ -181,7 +181,7 @@ static void batadv_interface_set_rx_mode(struct net_device *dev)
{
}
@@ -158414,7 +162969,7 @@ index 7527c06..42024c6 100644
struct net_device *soft_iface)
{
struct ethhdr *ethhdr;
-@@ -332,7 +332,7 @@ send:
+@@ -333,7 +333,7 @@ static int batadv_interface_tx(struct sk_buff *skb,
primary_if->net_dev->dev_addr);
/* set broadcast sequence number */
@@ -158423,7 +162978,7 @@ index 7527c06..42024c6 100644
bcast_packet->seqno = htonl(seqno);
batadv_add_bcast_packet_to_list(bat_priv, skb, brd_delay);
-@@ -835,8 +835,8 @@ static int batadv_softif_init_late(struct net_device *dev)
+@@ -813,8 +813,8 @@ static int batadv_softif_init_late(struct net_device *dev)
atomic_set(&bat_priv->batman_queue_left, BATADV_BATMAN_QUEUE_LEN);
atomic_set(&bat_priv->mesh_state, BATADV_MESH_INACTIVE);
@@ -158434,7 +162989,7 @@ index 7527c06..42024c6 100644
atomic_set(&bat_priv->tt.local_changes, 0);
atomic_set(&bat_priv->tt.ogm_append_cnt, 0);
#ifdef CONFIG_BATMAN_ADV_BLA
-@@ -851,7 +851,7 @@ static int batadv_softif_init_late(struct net_device *dev)
+@@ -829,7 +829,7 @@ static int batadv_softif_init_late(struct net_device *dev)
/* randomize initial seqno to avoid collision */
get_random_bytes(&random_seqno, sizeof(random_seqno));
@@ -158443,7 +162998,7 @@ index 7527c06..42024c6 100644
bat_priv->primary_if = NULL;
bat_priv->num_ifaces = 0;
-@@ -1069,7 +1069,7 @@ bool batadv_softif_is_valid(const struct net_device *net_dev)
+@@ -1058,7 +1058,7 @@ bool batadv_softif_is_valid(const struct net_device *net_dev)
return false;
}
@@ -158453,10 +163008,10 @@ index 7527c06..42024c6 100644
.priv_size = sizeof(struct batadv_priv),
.setup = batadv_softif_init_early,
diff --git a/net/batman-adv/sysfs.c b/net/batman-adv/sysfs.c
-index fe9ca94..ae07bdc 100644
+index 02d96f2..08470936 100644
--- a/net/batman-adv/sysfs.c
+++ b/net/batman-adv/sysfs.c
-@@ -146,7 +146,7 @@ struct batadv_attribute batadv_attr_##_name = { \
+@@ -147,7 +147,7 @@ struct batadv_attribute batadv_attr_##_name = { \
#define BATADV_ATTR_SIF_STORE_BOOL(_name, _post_func) \
ssize_t batadv_store_##_name(struct kobject *kobj, \
@@ -158465,7 +163020,7 @@ index fe9ca94..ae07bdc 100644
size_t count) \
{ \
struct net_device *net_dev = batadv_kobj_to_netdev(kobj); \
-@@ -158,7 +158,7 @@ ssize_t batadv_store_##_name(struct kobject *kobj, \
+@@ -159,7 +159,7 @@ ssize_t batadv_store_##_name(struct kobject *kobj, \
#define BATADV_ATTR_SIF_SHOW_BOOL(_name) \
ssize_t batadv_show_##_name(struct kobject *kobj, \
@@ -158474,7 +163029,7 @@ index fe9ca94..ae07bdc 100644
{ \
struct batadv_priv *bat_priv = batadv_kobj_to_batpriv(kobj); \
\
-@@ -178,7 +178,7 @@ ssize_t batadv_show_##_name(struct kobject *kobj, \
+@@ -179,7 +179,7 @@ ssize_t batadv_show_##_name(struct kobject *kobj, \
#define BATADV_ATTR_SIF_STORE_UINT(_name, _var, _min, _max, _post_func) \
ssize_t batadv_store_##_name(struct kobject *kobj, \
@@ -158483,7 +163038,7 @@ index fe9ca94..ae07bdc 100644
size_t count) \
{ \
struct net_device *net_dev = batadv_kobj_to_netdev(kobj); \
-@@ -191,7 +191,7 @@ ssize_t batadv_store_##_name(struct kobject *kobj, \
+@@ -192,7 +192,7 @@ ssize_t batadv_store_##_name(struct kobject *kobj, \
#define BATADV_ATTR_SIF_SHOW_UINT(_name, _var) \
ssize_t batadv_show_##_name(struct kobject *kobj, \
@@ -158492,7 +163047,7 @@ index fe9ca94..ae07bdc 100644
{ \
struct batadv_priv *bat_priv = batadv_kobj_to_batpriv(kobj); \
\
-@@ -209,7 +209,7 @@ ssize_t batadv_show_##_name(struct kobject *kobj, \
+@@ -210,7 +210,7 @@ ssize_t batadv_show_##_name(struct kobject *kobj, \
#define BATADV_ATTR_VLAN_STORE_BOOL(_name, _post_func) \
ssize_t batadv_store_vlan_##_name(struct kobject *kobj, \
@@ -158501,7 +163056,7 @@ index fe9ca94..ae07bdc 100644
size_t count) \
{ \
struct batadv_priv *bat_priv = batadv_vlan_kobj_to_batpriv(kobj);\
-@@ -225,7 +225,7 @@ ssize_t batadv_store_vlan_##_name(struct kobject *kobj, \
+@@ -226,7 +226,7 @@ ssize_t batadv_store_vlan_##_name(struct kobject *kobj, \
#define BATADV_ATTR_VLAN_SHOW_BOOL(_name) \
ssize_t batadv_show_vlan_##_name(struct kobject *kobj, \
@@ -158510,7 +163065,7 @@ index fe9ca94..ae07bdc 100644
{ \
struct batadv_priv *bat_priv = batadv_vlan_kobj_to_batpriv(kobj);\
struct batadv_softif_vlan *vlan = batadv_kobj_to_vlan(bat_priv, \
-@@ -247,7 +247,7 @@ ssize_t batadv_show_vlan_##_name(struct kobject *kobj, \
+@@ -248,7 +248,7 @@ ssize_t batadv_show_vlan_##_name(struct kobject *kobj, \
#define BATADV_ATTR_HIF_STORE_UINT(_name, _var, _min, _max, _post_func) \
ssize_t batadv_store_##_name(struct kobject *kobj, \
@@ -158519,7 +163074,7 @@ index fe9ca94..ae07bdc 100644
size_t count) \
{ \
struct net_device *net_dev = batadv_kobj_to_netdev(kobj); \
-@@ -268,7 +268,7 @@ ssize_t batadv_store_##_name(struct kobject *kobj, \
+@@ -269,7 +269,7 @@ ssize_t batadv_store_##_name(struct kobject *kobj, \
#define BATADV_ATTR_HIF_SHOW_UINT(_name, _var) \
ssize_t batadv_show_##_name(struct kobject *kobj, \
@@ -158528,7 +163083,7 @@ index fe9ca94..ae07bdc 100644
{ \
struct net_device *net_dev = batadv_kobj_to_netdev(kobj); \
struct batadv_hard_iface *hard_iface; \
-@@ -338,13 +338,13 @@ static int batadv_store_bool_attr(char *buff, size_t count,
+@@ -339,13 +339,13 @@ static int batadv_store_bool_attr(char *buff, size_t count,
static inline ssize_t
__batadv_store_bool_attr(char *buff, size_t count,
void (*post_func)(struct net_device *),
@@ -158544,7 +163099,7 @@ index fe9ca94..ae07bdc 100644
attr_store, &changed);
if (post_func && changed)
post_func(net_dev);
-@@ -393,13 +393,13 @@ static int batadv_store_uint_attr(const char *buff, size_t count,
+@@ -394,13 +394,13 @@ static int batadv_store_uint_attr(const char *buff, size_t count,
static ssize_t __batadv_store_uint_attr(const char *buff, size_t count,
int min, int max,
void (*post_func)(struct net_device *),
@@ -158560,7 +163115,7 @@ index fe9ca94..ae07bdc 100644
attr_store);
if (post_func && ret)
post_func(net_dev);
-@@ -408,7 +408,7 @@ static ssize_t __batadv_store_uint_attr(const char *buff, size_t count,
+@@ -409,7 +409,7 @@ static ssize_t __batadv_store_uint_attr(const char *buff, size_t count,
}
static ssize_t batadv_show_bat_algo(struct kobject *kobj,
@@ -158569,7 +163124,7 @@ index fe9ca94..ae07bdc 100644
{
struct batadv_priv *bat_priv = batadv_kobj_to_batpriv(kobj);
-@@ -422,7 +422,7 @@ static void batadv_post_gw_reselect(struct net_device *net_dev)
+@@ -423,7 +423,7 @@ static void batadv_post_gw_reselect(struct net_device *net_dev)
batadv_gw_reselect(bat_priv);
}
@@ -158578,7 +163133,7 @@ index fe9ca94..ae07bdc 100644
char *buff)
{
struct batadv_priv *bat_priv = batadv_kobj_to_batpriv(kobj);
-@@ -447,7 +447,7 @@ static ssize_t batadv_show_gw_mode(struct kobject *kobj, struct attribute *attr,
+@@ -455,7 +455,7 @@ static ssize_t batadv_show_gw_mode(struct kobject *kobj, struct attribute *attr,
}
static ssize_t batadv_store_gw_mode(struct kobject *kobj,
@@ -158587,7 +163142,25 @@ index fe9ca94..ae07bdc 100644
size_t count)
{
struct net_device *net_dev = batadv_kobj_to_netdev(kobj);
-@@ -515,7 +515,7 @@ static ssize_t batadv_store_gw_mode(struct kobject *kobj,
+@@ -530,7 +530,7 @@ static ssize_t batadv_store_gw_mode(struct kobject *kobj,
+ }
+
+ static ssize_t batadv_show_gw_sel_class(struct kobject *kobj,
+- struct attribute *attr, char *buff)
++ struct kobj_attribute *attr, char *buff)
+ {
+ struct batadv_priv *bat_priv = batadv_kobj_to_batpriv(kobj);
+
+@@ -548,7 +548,7 @@ static ssize_t batadv_show_gw_sel_class(struct kobject *kobj,
+ }
+
+ static ssize_t batadv_store_gw_sel_class(struct kobject *kobj,
+- struct attribute *attr, char *buff,
++ struct kobj_attribute *attr, char *buff,
+ size_t count)
+ {
+ struct batadv_priv *bat_priv = batadv_kobj_to_batpriv(kobj);
+@@ -574,7 +574,7 @@ static ssize_t batadv_store_gw_sel_class(struct kobject *kobj,
}
static ssize_t batadv_show_gw_bwidth(struct kobject *kobj,
@@ -158596,7 +163169,7 @@ index fe9ca94..ae07bdc 100644
{
struct batadv_priv *bat_priv = batadv_kobj_to_batpriv(kobj);
u32 down, up;
-@@ -528,7 +528,7 @@ static ssize_t batadv_show_gw_bwidth(struct kobject *kobj,
+@@ -587,7 +587,7 @@ static ssize_t batadv_show_gw_bwidth(struct kobject *kobj,
}
static ssize_t batadv_store_gw_bwidth(struct kobject *kobj,
@@ -158605,7 +163178,7 @@ index fe9ca94..ae07bdc 100644
size_t count)
{
struct net_device *net_dev = batadv_kobj_to_netdev(kobj);
-@@ -549,7 +549,7 @@ static ssize_t batadv_store_gw_bwidth(struct kobject *kobj,
+@@ -608,7 +608,7 @@ static ssize_t batadv_store_gw_bwidth(struct kobject *kobj,
* error code in case of failure
*/
static ssize_t batadv_show_isolation_mark(struct kobject *kobj,
@@ -158614,7 +163187,7 @@ index fe9ca94..ae07bdc 100644
{
struct batadv_priv *bat_priv = batadv_kobj_to_batpriv(kobj);
-@@ -568,7 +568,7 @@ static ssize_t batadv_show_isolation_mark(struct kobject *kobj,
+@@ -627,7 +627,7 @@ static ssize_t batadv_show_isolation_mark(struct kobject *kobj,
* Return: 'count' on success or a negative error code in case of failure
*/
static ssize_t batadv_store_isolation_mark(struct kobject *kobj,
@@ -158623,7 +163196,7 @@ index fe9ca94..ae07bdc 100644
size_t count)
{
struct net_device *net_dev = batadv_kobj_to_netdev(kobj);
-@@ -805,7 +805,7 @@ void batadv_sysfs_del_vlan(struct batadv_priv *bat_priv,
+@@ -876,7 +876,7 @@ void batadv_sysfs_del_vlan(struct batadv_priv *bat_priv,
}
static ssize_t batadv_show_mesh_iface(struct kobject *kobj,
@@ -158632,7 +163205,7 @@ index fe9ca94..ae07bdc 100644
{
struct net_device *net_dev = batadv_kobj_to_netdev(kobj);
struct batadv_hard_iface *hard_iface;
-@@ -829,7 +829,7 @@ static ssize_t batadv_show_mesh_iface(struct kobject *kobj,
+@@ -981,7 +981,7 @@ static void batadv_store_mesh_iface_work(struct work_struct *work)
}
static ssize_t batadv_store_mesh_iface(struct kobject *kobj,
@@ -158641,7 +163214,7 @@ index fe9ca94..ae07bdc 100644
size_t count)
{
struct net_device *net_dev = batadv_kobj_to_netdev(kobj);
-@@ -887,7 +887,7 @@ out:
+@@ -1012,7 +1012,7 @@ static ssize_t batadv_store_mesh_iface(struct kobject *kobj,
}
static ssize_t batadv_show_iface_status(struct kobject *kobj,
@@ -158650,7 +163223,7 @@ index fe9ca94..ae07bdc 100644
{
struct net_device *net_dev = batadv_kobj_to_netdev(kobj);
struct batadv_hard_iface *hard_iface;
-@@ -934,7 +934,7 @@ static ssize_t batadv_show_iface_status(struct kobject *kobj,
+@@ -1059,7 +1059,7 @@ static ssize_t batadv_show_iface_status(struct kobject *kobj,
* Return: 'count' on success or a negative error code in case of failure
*/
static ssize_t batadv_store_throughput_override(struct kobject *kobj,
@@ -158659,7 +163232,7 @@ index fe9ca94..ae07bdc 100644
char *buff, size_t count)
{
struct net_device *net_dev = batadv_kobj_to_netdev(kobj);
-@@ -972,7 +972,7 @@ out:
+@@ -1097,7 +1097,7 @@ static ssize_t batadv_store_throughput_override(struct kobject *kobj,
}
static ssize_t batadv_show_throughput_override(struct kobject *kobj,
@@ -158685,10 +163258,10 @@ index c76021b..3aef377 100644
};
diff --git a/net/batman-adv/translation-table.c b/net/batman-adv/translation-table.c
-index 67f8fa9..4b611eb 100644
+index 0dc85eb..82c6c12 100644
--- a/net/batman-adv/translation-table.c
+++ b/net/batman-adv/translation-table.c
-@@ -664,7 +664,7 @@ bool batadv_tt_local_add(struct net_device *soft_iface, const u8 *addr,
+@@ -722,7 +722,7 @@ bool batadv_tt_local_add(struct net_device *soft_iface, const u8 *addr,
batadv_dbg(BATADV_DBG_TT, bat_priv,
"Creating new local tt entry: %pM (vid: %d, ttvn: %d)\n",
addr, BATADV_PRINT_VID(vid),
@@ -158697,7 +163270,7 @@ index 67f8fa9..4b611eb 100644
ether_addr_copy(tt_local->common.addr, addr);
/* The local entry has to be marked as NEW to avoid to send it in
-@@ -894,7 +894,7 @@ batadv_tt_prepare_tvlv_local_data(struct batadv_priv *bat_priv,
+@@ -952,7 +952,7 @@ batadv_tt_prepare_tvlv_local_data(struct batadv_priv *bat_priv,
}
(*tt_data)->flags = BATADV_NO_FLAGS;
@@ -158706,7 +163279,7 @@ index 67f8fa9..4b611eb 100644
(*tt_data)->num_vlan = htons(num_vlan);
tt_vlan = (struct batadv_tvlv_tt_vlan_data *)(*tt_data + 1);
-@@ -1011,7 +1011,7 @@ int batadv_tt_local_seq_print_text(struct seq_file *seq, void *offset)
+@@ -1070,7 +1070,7 @@ int batadv_tt_local_seq_print_text(struct seq_file *seq, void *offset)
seq_printf(seq,
"Locally retrieved addresses (from %s) announced via TT (TTVN: %u):\n",
@@ -158715,7 +163288,7 @@ index 67f8fa9..4b611eb 100644
seq_puts(seq,
" Client VID Flags Last seen (CRC )\n");
-@@ -2818,7 +2818,7 @@ static bool batadv_send_my_tt_response(struct batadv_priv *bat_priv,
+@@ -3251,7 +3251,7 @@ static bool batadv_send_my_tt_response(struct batadv_priv *bat_priv,
spin_lock_bh(&bat_priv->tt.commit_lock);
@@ -158724,7 +163297,7 @@ index 67f8fa9..4b611eb 100644
req_ttvn = tt_data->ttvn;
orig_node = batadv_orig_hash_find(bat_priv, req_src);
-@@ -2857,7 +2857,7 @@ static bool batadv_send_my_tt_response(struct batadv_priv *bat_priv,
+@@ -3290,7 +3290,7 @@ static bool batadv_send_my_tt_response(struct batadv_priv *bat_priv,
bat_priv->tt.last_changeset_len);
spin_unlock_bh(&bat_priv->tt.last_changeset_lock);
} else {
@@ -158733,7 +163306,7 @@ index 67f8fa9..4b611eb 100644
/* allocate the tvlv, put the tt_data and all the tt_vlan_data
* in the initial part
-@@ -3376,10 +3376,10 @@ static void batadv_tt_local_commit_changes_nolock(struct batadv_priv *bat_priv)
+@@ -3810,10 +3810,10 @@ static void batadv_tt_local_commit_changes_nolock(struct batadv_priv *bat_priv)
batadv_tt_local_update_crc(bat_priv);
/* Increment the TTVN only once per OGM interval */
@@ -158747,10 +163320,10 @@ index 67f8fa9..4b611eb 100644
/* reset the sending counter */
atomic_set(&bat_priv->tt.ogm_append_cnt, BATADV_TT_OGM_APPEND_MAX);
diff --git a/net/batman-adv/types.h b/net/batman-adv/types.h
-index a64522c..168782d 100644
+index b3dd1a3..243607f 100644
--- a/net/batman-adv/types.h
+++ b/net/batman-adv/types.h
-@@ -84,7 +84,7 @@ enum batadv_dhcp_recipient {
+@@ -85,7 +85,7 @@ enum batadv_dhcp_recipient {
struct batadv_hard_iface_bat_iv {
unsigned char *ogm_buff;
int ogm_buff_len;
@@ -158759,7 +163332,7 @@ index a64522c..168782d 100644
};
/**
-@@ -633,7 +633,7 @@ enum batadv_counters {
+@@ -632,7 +632,7 @@ enum batadv_counters {
* @work: work queue callback item for translation table purging
*/
struct batadv_priv_tt {
@@ -158768,7 +163341,7 @@ index a64522c..168782d 100644
atomic_t ogm_append_cnt;
atomic_t local_changes;
struct list_head changes_list;
-@@ -1042,7 +1042,7 @@ struct batadv_priv {
+@@ -1040,7 +1040,7 @@ struct batadv_priv {
atomic_t bonding;
atomic_t fragmentation;
atomic_t packet_size_max;
@@ -158777,7 +163350,7 @@ index a64522c..168782d 100644
#ifdef CONFIG_BATMAN_ADV_BLA
atomic_t bridge_loop_avoidance;
#endif
-@@ -1059,7 +1059,7 @@ struct batadv_priv {
+@@ -1057,7 +1057,7 @@ struct batadv_priv {
#endif
u32 isolation_mark;
u32 isolation_mark_mask;
@@ -158787,10 +163360,10 @@ index a64522c..168782d 100644
atomic_t batman_queue_left;
char num_ifaces;
diff --git a/net/bluetooth/hci_sock.c b/net/bluetooth/hci_sock.c
-index 96f04b7..753db63 100644
+index 48f9471..fc0ddf4 100644
--- a/net/bluetooth/hci_sock.c
+++ b/net/bluetooth/hci_sock.c
-@@ -1482,7 +1482,7 @@ static int hci_sock_setsockopt(struct socket *sock, int level, int optname,
+@@ -1859,7 +1859,7 @@ static int hci_sock_setsockopt(struct socket *sock, int level, int optname,
uf.event_mask[1] = *((u32 *) f->event_mask + 1);
}
@@ -158800,7 +163373,7 @@ index 96f04b7..753db63 100644
err = -EFAULT;
break;
diff --git a/net/bluetooth/l2cap_core.c b/net/bluetooth/l2cap_core.c
-index d4cad29b0..25c71a9 100644
+index 577f1c0..a6706b3 100644
--- a/net/bluetooth/l2cap_core.c
+++ b/net/bluetooth/l2cap_core.c
@@ -3548,8 +3548,10 @@ static int l2cap_parse_conf_rsp(struct l2cap_chan *chan, void *rsp, int len,
@@ -158890,7 +163463,7 @@ index 7511df7..a670df3 100644
err = -EFAULT;
break;
diff --git a/net/bluetooth/rfcomm/tty.c b/net/bluetooth/rfcomm/tty.c
-index 8e385a0..a5bdd8e 100644
+index 2f2cb5e..5b9d8c6 100644
--- a/net/bluetooth/rfcomm/tty.c
+++ b/net/bluetooth/rfcomm/tty.c
@@ -752,7 +752,7 @@ static int rfcomm_tty_open(struct tty_struct *tty, struct file *filp)
@@ -158912,10 +163485,10 @@ index 8e385a0..a5bdd8e 100644
tty_port_close(&dev->port, tty, filp);
}
diff --git a/net/bridge/br_netfilter_hooks.c b/net/bridge/br_netfilter_hooks.c
-index 77e7f69..6572d43 100644
+index 7fbdbae..89ac4a9 100644
--- a/net/bridge/br_netfilter_hooks.c
+++ b/net/bridge/br_netfilter_hooks.c
-@@ -982,13 +982,13 @@ static void __net_exit brnf_exit_net(struct net *net)
+@@ -980,13 +980,13 @@ static void __net_exit brnf_exit_net(struct net *net)
brnet->enabled = false;
}
@@ -158932,10 +163505,10 @@ index 77e7f69..6572d43 100644
};
diff --git a/net/bridge/br_netlink.c b/net/bridge/br_netlink.c
-index f2a29e4..34963c3 100644
+index 0474106..020426d 100644
--- a/net/bridge/br_netlink.c
+++ b/net/bridge/br_netlink.c
-@@ -1395,7 +1395,7 @@ static struct rtnl_af_ops br_af_ops __read_mostly = {
+@@ -1376,7 +1376,7 @@ static struct rtnl_af_ops br_af_ops __read_mostly = {
.get_link_af_size = br_get_link_af_size_filtered,
};
@@ -158945,7 +163518,7 @@ index f2a29e4..34963c3 100644
.priv_size = sizeof(struct net_bridge),
.setup = br_dev_setup,
diff --git a/net/bridge/netfilter/ebtables.c b/net/bridge/netfilter/ebtables.c
-index 0833c25..c649cbf 100644
+index f5c11bb..a74c5a9 100644
--- a/net/bridge/netfilter/ebtables.c
+++ b/net/bridge/netfilter/ebtables.c
@@ -1547,7 +1547,7 @@ static int do_ebt_get_ctl(struct sock *sk, int cmd, void __user *user, int *len)
@@ -158975,6 +163548,19 @@ index 0833c25..c649cbf 100644
ret = -EFAULT;
break;
}
+diff --git a/net/caif/caif_socket.c b/net/caif/caif_socket.c
+index 92cbbd2..a887df35 100644
+--- a/net/caif/caif_socket.c
++++ b/net/caif/caif_socket.c
+@@ -1028,6 +1028,8 @@ static int caif_create(struct net *net, struct socket *sock, int protocol,
+ static struct proto prot = {.name = "PF_CAIF",
+ .owner = THIS_MODULE,
+ .obj_size = sizeof(struct caifsock),
++ .useroffset = offsetof(struct caifsock, conn_req.param),
++ .usersize = sizeof(((struct caifsock *)0)->conn_req.param),
+ };
+
+ if (!capable(CAP_SYS_ADMIN) && !capable(CAP_NET_ADMIN))
diff --git a/net/caif/cfctrl.c b/net/caif/cfctrl.c
index f5afda1..dcf770a 100644
--- a/net/caif/cfctrl.c
@@ -159054,10 +163640,10 @@ index 1108079..1871d16 100644
};
diff --git a/net/can/bcm.c b/net/can/bcm.c
-index 436a753..4d61e73 100644
+index 5e9ed5e..916d38c 100644
--- a/net/can/bcm.c
+++ b/net/can/bcm.c
-@@ -1690,7 +1690,7 @@ static int __init bcm_module_init(void)
+@@ -1699,7 +1699,7 @@ static int __init bcm_module_init(void)
}
/* create /proc/net/can-bcm directory */
@@ -159111,7 +163697,7 @@ index 85ef7bb..84c0fec 100644
if (!can_dir) {
pr_info("can: failed to create /proc/net/can.\n");
diff --git a/net/ceph/ceph_common.c b/net/ceph/ceph_common.c
-index bddfcf6..36880cd 100644
+index 464e885..1fbb9dc 100644
--- a/net/ceph/ceph_common.c
+++ b/net/ceph/ceph_common.c
@@ -5,7 +5,7 @@
@@ -159182,7 +163768,7 @@ index 1cd2ec0..2650ce6 100644
msg->msg_controllen)
return NULL;
return (struct compat_cmsghdr __user *)ptr;
-@@ -201,7 +201,7 @@ Efault:
+@@ -201,7 +201,7 @@ int cmsghdr_from_user_compat_to_kern(struct msghdr *kmsg, struct sock *sk,
int put_cmsg_compat(struct msghdr *kmsg, int level, int type, int len, void *data)
{
@@ -159277,19 +163863,10 @@ index b7de71f..808387d 100644
return err;
diff --git a/net/core/dev.c b/net/core/dev.c
-index 9ce9d72..6221b92 100644
+index df51c50..26e1440 100644
--- a/net/core/dev.c
+++ b/net/core/dev.c
-@@ -1768,7 +1768,7 @@ int __dev_forward_skb(struct net_device *dev, struct sk_buff *skb)
- {
- if (skb_orphan_frags(skb, GFP_ATOMIC) ||
- unlikely(!is_skb_forwardable(dev, skb))) {
-- atomic_long_inc(&dev->rx_dropped);
-+ atomic_long_inc_unchecked(&dev->rx_dropped);
- kfree_skb(skb);
- return NET_RX_DROP;
- }
-@@ -3005,7 +3005,7 @@ static struct sk_buff *validate_xmit_skb(struct sk_buff *skb, struct net_device
+@@ -3000,7 +3000,7 @@ static struct sk_buff *validate_xmit_skb(struct sk_buff *skb, struct net_device
out_kfree_skb:
kfree_skb(skb);
out_null:
@@ -159298,7 +163875,7 @@ index 9ce9d72..6221b92 100644
return NULL;
}
-@@ -3426,7 +3426,7 @@ recursion_alert:
+@@ -3411,7 +3411,7 @@ static int __dev_queue_xmit(struct sk_buff *skb, void *accel_priv)
rc = -ENETDOWN;
rcu_read_unlock_bh();
@@ -159307,7 +163884,7 @@ index 9ce9d72..6221b92 100644
kfree_skb_list(skb);
return rc;
out:
-@@ -3779,7 +3779,7 @@ drop:
+@@ -3764,7 +3764,7 @@ static int enqueue_to_backlog(struct sk_buff *skb, int cpu,
local_irq_restore(flags);
@@ -159316,16 +163893,16 @@ index 9ce9d72..6221b92 100644
kfree_skb(skb);
return NET_RX_DROP;
}
-@@ -3856,7 +3856,7 @@ int netif_rx_ni(struct sk_buff *skb)
+@@ -3841,7 +3841,7 @@ int netif_rx_ni(struct sk_buff *skb)
}
EXPORT_SYMBOL(netif_rx_ni);
--static void net_tx_action(struct softirq_action *h)
+-static __latent_entropy void net_tx_action(struct softirq_action *h)
+static __latent_entropy void net_tx_action(void)
{
struct softnet_data *sd = this_cpu_ptr(&softnet_data);
-@@ -4219,9 +4219,9 @@ ncls:
+@@ -4208,9 +4208,9 @@ static int __netif_receive_skb_core(struct sk_buff *skb, bool pfmemalloc)
} else {
drop:
if (!deliver_exact)
@@ -159337,16 +163914,16 @@ index 9ce9d72..6221b92 100644
kfree_skb(skb);
/* Jamal, now you will not able to escape explaining
* me how you were going to use this. :-)
-@@ -5189,7 +5189,7 @@ out_unlock:
+@@ -5197,7 +5197,7 @@ static int napi_poll(struct napi_struct *n, struct list_head *repoll)
return work;
}
--static void net_rx_action(struct softirq_action *h)
+-static __latent_entropy void net_rx_action(struct softirq_action *h)
+static __latent_entropy void net_rx_action(void)
{
struct softnet_data *sd = this_cpu_ptr(&softnet_data);
unsigned long time_limit = jiffies + 2;
-@@ -7532,9 +7532,9 @@ struct rtnl_link_stats64 *dev_get_stats(struct net_device *dev,
+@@ -7540,9 +7540,9 @@ struct rtnl_link_stats64 *dev_get_stats(struct net_device *dev,
} else {
netdev_stats_to_stats64(storage, &dev->stats);
}
@@ -159359,7 +163936,7 @@ index 9ce9d72..6221b92 100644
return storage;
}
EXPORT_SYMBOL(dev_get_stats);
-@@ -8156,7 +8156,7 @@ static void __net_exit netdev_exit(struct net *net)
+@@ -8167,7 +8167,7 @@ static void __net_exit netdev_exit(struct net *net)
kfree(net->dev_index_head);
}
@@ -159368,7 +163945,7 @@ index 9ce9d72..6221b92 100644
.init = netdev_init,
.exit = netdev_exit,
};
-@@ -8256,7 +8256,7 @@ static void __net_exit default_device_exit_batch(struct list_head *net_list)
+@@ -8267,7 +8267,7 @@ static void __net_exit default_device_exit_batch(struct list_head *net_list)
rtnl_unlock();
}
@@ -159397,10 +163974,10 @@ index b94b1d2..da3ed7c 100644
EXPORT_SYMBOL(dev_load);
diff --git a/net/core/filter.c b/net/core/filter.c
-index cb06ace..3cab3fc 100644
+index b391209..2c5b949 100644
--- a/net/core/filter.c
+++ b/net/core/filter.c
-@@ -596,7 +596,11 @@ do_pass:
+@@ -593,7 +593,11 @@ static int bpf_convert_filter(struct sock_filter *prog, int len,
/* Unknown instruction. */
default:
@@ -159413,7 +163990,7 @@ index cb06ace..3cab3fc 100644
}
insn++;
-@@ -640,7 +644,7 @@ static int check_load_and_stores(const struct sock_filter *filter, int flen)
+@@ -637,7 +641,7 @@ static int check_load_and_stores(const struct sock_filter *filter, int flen)
u16 *masks, memvalid = 0; /* One bit per cell, 16 cells */
int pc, ret = 0;
@@ -159422,7 +163999,7 @@ index cb06ace..3cab3fc 100644
masks = kmalloc_array(flen, sizeof(*masks), GFP_KERNEL);
if (!masks)
-@@ -1086,7 +1090,7 @@ int bpf_prog_create(struct bpf_prog **pfp, struct sock_fprog_kern *fprog)
+@@ -1083,7 +1087,7 @@ int bpf_prog_create(struct bpf_prog **pfp, struct sock_fprog_kern *fprog)
if (!fp)
return -ENOMEM;
@@ -159453,7 +164030,7 @@ index 18e8893..82936b2 100644
flo = fle->object;
if (!flo)
goto ret_object;
-@@ -272,7 +272,7 @@ nocache:
+@@ -272,7 +272,7 @@ flow_cache_lookup(struct net *net, const struct flowi *key, u16 family, u8 dir,
}
flo = resolver(net, key, family, dir, flo, ctx);
if (fle) {
@@ -159463,7 +164040,7 @@ index 18e8893..82936b2 100644
fle->object = flo;
else
diff --git a/net/core/neighbour.c b/net/core/neighbour.c
-index cf26e04c4..e70ca13 100644
+index 2ae929f..fc8150d 100644
--- a/net/core/neighbour.c
+++ b/net/core/neighbour.c
@@ -860,7 +860,7 @@ static void neigh_probe(struct neighbour *neigh)
@@ -159502,7 +164079,7 @@ index cf26e04c4..e70ca13 100644
NEIGH_VAR(neigh->parms, UCAST_PROBES));
neigh->nud_state = NUD_INCOMPLETE;
neigh->updated = now;
-@@ -1156,7 +1156,7 @@ int neigh_update(struct neighbour *neigh, const u8 *lladdr, u8 new,
+@@ -1157,7 +1157,7 @@ int neigh_update(struct neighbour *neigh, const u8 *lladdr, u8 new,
if (new != old) {
neigh_del_timer(neigh);
if (new & NUD_PROBE)
@@ -159511,7 +164088,7 @@ index cf26e04c4..e70ca13 100644
if (new & NUD_IN_TIMER)
neigh_add_timer(neigh, (jiffies +
((new & NUD_REACHABLE) ?
-@@ -1244,7 +1244,7 @@ void __neigh_set_probe_once(struct neighbour *neigh)
+@@ -1245,7 +1245,7 @@ void __neigh_set_probe_once(struct neighbour *neigh)
if (!(neigh->nud_state & NUD_FAILED))
return;
neigh->nud_state = NUD_INCOMPLETE;
@@ -159520,7 +164097,7 @@ index cf26e04c4..e70ca13 100644
neigh_add_timer(neigh,
jiffies + NEIGH_VAR(neigh->parms, RETRANS_TIME));
}
-@@ -2184,7 +2184,7 @@ static int neigh_fill_info(struct sk_buff *skb, struct neighbour *neigh,
+@@ -2185,7 +2185,7 @@ static int neigh_fill_info(struct sk_buff *skb, struct neighbour *neigh,
ci.ndm_refcnt = atomic_read(&neigh->refcnt) - 1;
read_unlock_bh(&neigh->lock);
@@ -159529,7 +164106,7 @@ index cf26e04c4..e70ca13 100644
nla_put(skb, NDA_CACHEINFO, sizeof(ci), &ci))
goto nla_put_failure;
-@@ -2872,7 +2872,7 @@ static int proc_unres_qlen(struct ctl_table *ctl, int write,
+@@ -2873,7 +2873,7 @@ static int proc_unres_qlen(struct ctl_table *ctl, int write,
void __user *buffer, size_t *lenp, loff_t *ppos)
{
int size, ret;
@@ -159538,7 +164115,7 @@ index cf26e04c4..e70ca13 100644
tmp.extra1 = &zero;
tmp.extra2 = &unres_qlen_max;
-@@ -2935,7 +2935,7 @@ static int neigh_proc_dointvec_zero_intmax(struct ctl_table *ctl, int write,
+@@ -2936,7 +2936,7 @@ static int neigh_proc_dointvec_zero_intmax(struct ctl_table *ctl, int write,
void __user *buffer,
size_t *lenp, loff_t *ppos)
{
@@ -159630,10 +164207,10 @@ index 6e4f347..8eff663 100644
static DEVICE_ATTR_RO(carrier_changes);
diff --git a/net/core/net_namespace.c b/net/core/net_namespace.c
-index 2e9a1c2..95e9455 100644
+index 7001da9..494696e 100644
--- a/net/core/net_namespace.c
+++ b/net/core/net_namespace.c
-@@ -528,7 +528,7 @@ static __net_exit void net_ns_net_exit(struct net *net)
+@@ -550,7 +550,7 @@ static __net_exit void net_ns_net_exit(struct net *net)
ns_free_inum(&net->ns);
}
@@ -159642,7 +164219,7 @@ index 2e9a1c2..95e9455 100644
.init = net_ns_net_init,
.exit = net_ns_net_exit,
};
-@@ -777,7 +777,7 @@ static int __register_pernet_operations(struct list_head *list,
+@@ -801,7 +801,7 @@ static int __register_pernet_operations(struct list_head *list,
int error;
LIST_HEAD(net_exit_list);
@@ -159651,7 +164228,7 @@ index 2e9a1c2..95e9455 100644
if (ops->init || (ops->id && ops->size)) {
for_each_net(net) {
error = ops_init(ops, net);
-@@ -790,7 +790,7 @@ static int __register_pernet_operations(struct list_head *list,
+@@ -814,7 +814,7 @@ static int __register_pernet_operations(struct list_head *list,
out_undo:
/* If I have an error cleanup all namespaces I initialized */
@@ -159660,7 +164237,7 @@ index 2e9a1c2..95e9455 100644
ops_exit_list(ops, &net_exit_list);
ops_free_list(ops, &net_exit_list);
return error;
-@@ -801,7 +801,7 @@ static void __unregister_pernet_operations(struct pernet_operations *ops)
+@@ -825,7 +825,7 @@ static void __unregister_pernet_operations(struct pernet_operations *ops)
struct net *net;
LIST_HEAD(net_exit_list);
@@ -159669,7 +164246,25 @@ index 2e9a1c2..95e9455 100644
for_each_net(net)
list_add_tail(&net->exit_list, &net_exit_list);
ops_exit_list(ops, &net_exit_list);
-@@ -935,7 +935,7 @@ int register_pernet_device(struct pernet_operations *ops)
+@@ -838,7 +838,7 @@ static int __register_pernet_operations(struct list_head *list,
+ struct pernet_operations *ops)
+ {
+ if (!init_net_initialized) {
+- list_add_tail(&ops->list, list);
++ pax_list_add_tail((struct list_head *)&ops->list, list);
+ return 0;
+ }
+
+@@ -848,7 +848,7 @@ static int __register_pernet_operations(struct list_head *list,
+ static void __unregister_pernet_operations(struct pernet_operations *ops)
+ {
+ if (!init_net_initialized) {
+- list_del(&ops->list);
++ pax_list_del((struct list_head *)&ops->list);
+ } else {
+ LIST_HEAD(net_exit_list);
+ list_add(&init_net.exit_list, &net_exit_list);
+@@ -968,7 +968,7 @@ int register_pernet_device(struct pernet_operations *ops)
mutex_lock(&net_mutex);
error = register_pernet_operations(&pernet_list, ops);
if (!error && (first_device == &pernet_list))
@@ -159714,7 +164309,7 @@ index 306b8f0..0214187 100644
pr_warn("cannot create /proc/net/%s\n", PG_PROC_DIR);
return -ENODEV;
diff --git a/net/core/rtnetlink.c b/net/core/rtnetlink.c
-index 08c3702..d50e672 100644
+index b7f9ae7..485f01c 100644
--- a/net/core/rtnetlink.c
+++ b/net/core/rtnetlink.c
@@ -61,7 +61,7 @@ struct rtnl_link {
@@ -159726,7 +164321,7 @@ index 08c3702..d50e672 100644
static DEFINE_MUTEX(rtnl_mutex);
-@@ -329,10 +329,13 @@ int __rtnl_link_register(struct rtnl_link_ops *ops)
+@@ -330,10 +330,13 @@ int __rtnl_link_register(struct rtnl_link_ops *ops)
* to use the ops for creating device. So do not
* fill up dellink as well. That disables rtnl_dellink.
*/
@@ -159743,7 +164338,7 @@ index 08c3702..d50e672 100644
return 0;
}
EXPORT_SYMBOL_GPL(__rtnl_link_register);
-@@ -379,7 +382,7 @@ void __rtnl_link_unregister(struct rtnl_link_ops *ops)
+@@ -380,7 +383,7 @@ void __rtnl_link_unregister(struct rtnl_link_ops *ops)
for_each_net(net) {
__rtnl_kill_links(net, ops);
}
@@ -159752,7 +164347,7 @@ index 08c3702..d50e672 100644
}
EXPORT_SYMBOL_GPL(__rtnl_link_unregister);
-@@ -1296,7 +1299,7 @@ static int rtnl_fill_ifinfo(struct sk_buff *skb, struct net_device *dev,
+@@ -1326,7 +1329,7 @@ static int rtnl_fill_ifinfo(struct sk_buff *skb, struct net_device *dev,
(dev->ifalias &&
nla_put_string(skb, IFLA_IFALIAS, dev->ifalias)) ||
nla_put_u32(skb, IFLA_CARRIER_CHANGES,
@@ -159761,7 +164356,7 @@ index 08c3702..d50e672 100644
nla_put_u8(skb, IFLA_PROTO_DOWN, dev->proto_down))
goto nla_put_failure;
-@@ -3832,7 +3835,7 @@ static int rtnetlink_rcv_msg(struct sk_buff *skb, struct nlmsghdr *nlh)
+@@ -4023,7 +4026,7 @@ static int rtnetlink_rcv_msg(struct sk_buff *skb, struct nlmsghdr *nlh)
__rtnl_unlock();
rtnl = net->rtnl;
{
@@ -159823,7 +164418,7 @@ index 2696aef..dbd5807 100644
if (!err)
err = put_user(SCM_RIGHTS, &cm->cmsg_type);
diff --git a/net/core/skbuff.c b/net/core/skbuff.c
-index 3864b4b6..d2cbe83 100644
+index 1e3e008..f3e4944 100644
--- a/net/core/skbuff.c
+++ b/net/core/skbuff.c
@@ -1047,7 +1047,8 @@ static void skb_headers_offset_update(struct sk_buff *skb, int off)
@@ -159836,7 +164431,7 @@ index 3864b4b6..d2cbe83 100644
skb->network_header += off;
if (skb_mac_header_was_set(skb))
skb->mac_header += off;
-@@ -2174,7 +2175,7 @@ EXPORT_SYMBOL(__skb_checksum);
+@@ -2150,7 +2151,7 @@ EXPORT_SYMBOL(__skb_checksum);
__wsum skb_checksum(const struct sk_buff *skb, int offset,
int len, __wsum csum)
{
@@ -159845,7 +164440,7 @@ index 3864b4b6..d2cbe83 100644
.update = csum_partial_ext,
.combine = csum_block_add_ext,
};
-@@ -3432,12 +3433,14 @@ void __init skb_init(void)
+@@ -3456,12 +3457,14 @@ void __init skb_init(void)
skbuff_head_cache = kmem_cache_create("skbuff_head_cache",
sizeof(struct sk_buff),
0,
@@ -159863,7 +164458,7 @@ index 3864b4b6..d2cbe83 100644
}
diff --git a/net/core/sock.c b/net/core/sock.c
-index ba27920..3f998d0 100644
+index bc6543f..d9e3e41 100644
--- a/net/core/sock.c
+++ b/net/core/sock.c
@@ -411,13 +411,13 @@ int __sock_queue_rcv_skb(struct sock *sk, struct sk_buff *skb)
@@ -159900,7 +164495,7 @@ index ba27920..3f998d0 100644
goto discard_and_relse;
}
-@@ -890,19 +890,6 @@ set_rcvbuf:
+@@ -890,19 +890,6 @@ int sock_setsockopt(struct socket *sock, int level, int optname,
}
break;
@@ -159920,7 +164515,7 @@ index ba27920..3f998d0 100644
case SO_ATTACH_REUSEPORT_CBPF:
ret = -EINVAL;
if (optlen == sizeof(struct sock_fprog)) {
-@@ -916,6 +903,20 @@ set_rcvbuf:
+@@ -916,6 +903,20 @@ int sock_setsockopt(struct socket *sock, int level, int optname,
}
break;
@@ -159941,7 +164536,7 @@ index ba27920..3f998d0 100644
case SO_ATTACH_REUSEPORT_EBPF:
ret = -EINVAL;
if (optlen == sizeof(u32)) {
-@@ -929,6 +930,8 @@ set_rcvbuf:
+@@ -929,6 +930,8 @@ int sock_setsockopt(struct socket *sock, int level, int optname,
}
break;
@@ -159989,7 +164584,7 @@ index ba27920..3f998d0 100644
return -EFAULT;
lenout:
if (put_user(len, optlen))
-@@ -1537,7 +1540,7 @@ struct sock *sk_clone_lock(const struct sock *sk, const gfp_t priority)
+@@ -1517,7 +1520,7 @@ struct sock *sk_clone_lock(const struct sock *sk, const gfp_t priority)
newsk->sk_dst_cache = NULL;
newsk->sk_wmem_queued = 0;
newsk->sk_forward_alloc = 0;
@@ -159998,16 +164593,16 @@ index ba27920..3f998d0 100644
newsk->sk_send_head = NULL;
newsk->sk_userlocks = sk->sk_userlocks & ~SOCK_BINDPORT_LOCK;
-@@ -1567,7 +1570,7 @@ struct sock *sk_clone_lock(const struct sock *sk, const gfp_t priority)
+@@ -1547,7 +1550,7 @@ struct sock *sk_clone_lock(const struct sock *sk, const gfp_t priority)
newsk->sk_err_soft = 0;
newsk->sk_priority = 0;
newsk->sk_incoming_cpu = raw_smp_processor_id();
- atomic64_set(&newsk->sk_cookie, 0);
+ atomic64_set_unchecked(&newsk->sk_cookie, 0);
+ mem_cgroup_sk_alloc(newsk);
cgroup_sk_alloc(&newsk->sk_cgrp_data);
-
-@@ -2499,7 +2502,7 @@ void sock_init_data(struct socket *sock, struct sock *sk)
+@@ -2477,7 +2480,7 @@ void sock_init_data(struct socket *sock, struct sock *sk)
*/
smp_wmb();
atomic_set(&sk->sk_refcnt, 1);
@@ -160016,7 +164611,7 @@ index ba27920..3f998d0 100644
}
EXPORT_SYMBOL(sock_init_data);
-@@ -2623,6 +2626,7 @@ void sock_enable_timestamp(struct sock *sk, int flag)
+@@ -2601,6 +2604,7 @@ void sock_enable_timestamp(struct sock *sk, int flag)
int sock_recv_errqueue(struct sock *sk, struct msghdr *msg, int len,
int level, int type)
{
@@ -160024,7 +164619,7 @@ index ba27920..3f998d0 100644
struct sock_exterr_skb *serr;
struct sk_buff *skb;
int copied, err;
-@@ -2644,7 +2648,8 @@ int sock_recv_errqueue(struct sock *sk, struct msghdr *msg, int len,
+@@ -2622,7 +2626,8 @@ int sock_recv_errqueue(struct sock *sk, struct msghdr *msg, int len,
sock_recv_timestamp(msg, sk, skb);
serr = SKB_EXT_ERR(skb);
@@ -160034,7 +164629,18 @@ index ba27920..3f998d0 100644
msg->msg_flags |= MSG_ERRQUEUE;
err = copied;
-@@ -3096,7 +3101,7 @@ static __net_exit void proto_exit_net(struct net *net)
+@@ -2885,8 +2890,9 @@ static int req_prot_init(const struct proto *prot)
+ int proto_register(struct proto *prot, int alloc_slab)
+ {
+ if (alloc_slab) {
+- prot->slab = kmem_cache_create(prot->name, prot->obj_size, 0,
++ prot->slab = kmem_cache_create_usercopy(prot->name, prot->obj_size, 0,
+ SLAB_HWCACHE_ALIGN | prot->slab_flags,
++ prot->useroffset, prot->usersize,
+ NULL);
+
+ if (prot->slab == NULL) {
+@@ -3074,7 +3080,7 @@ static __net_exit void proto_exit_net(struct net *net)
}
@@ -160307,10 +164913,10 @@ index 5325b54..a0d4d69 100644
*lenp = len;
diff --git a/net/dsa/dsa.c b/net/dsa/dsa.c
-index 7e68bc6..09a6073 100644
+index 7899919..a8fa81c 100644
--- a/net/dsa/dsa.c
+++ b/net/dsa/dsa.c
-@@ -269,7 +269,7 @@ const struct dsa_device_ops *dsa_resolve_tag_protocol(int tag_protocol)
+@@ -274,7 +274,7 @@ const struct dsa_device_ops *dsa_resolve_tag_protocol(int tag_protocol)
int dsa_cpu_port_ethtool_setup(struct dsa_switch *ds)
{
struct net_device *master;
@@ -160319,7 +164925,7 @@ index 7e68bc6..09a6073 100644
master = ds->dst->master_netdev;
if (ds->master_netdev)
-@@ -1045,7 +1045,7 @@ static struct packet_type dsa_pack_type __read_mostly = {
+@@ -1050,7 +1050,7 @@ static struct packet_type dsa_pack_type __read_mostly = {
.func = dsa_switch_rcv,
};
@@ -160329,7 +164935,7 @@ index 7e68bc6..09a6073 100644
};
diff --git a/net/dsa/dsa_priv.h b/net/dsa/dsa_priv.h
-index 00077a9..c513046 100644
+index 6cfd738..6cfedd7 100644
--- a/net/dsa/dsa_priv.h
+++ b/net/dsa/dsa_priv.h
@@ -60,7 +60,7 @@ void dsa_cpu_port_ethtool_restore(struct dsa_switch *ds);
@@ -160342,10 +164948,10 @@ index 00077a9..c513046 100644
int port, const char *name);
void dsa_slave_destroy(struct net_device *slave_dev);
diff --git a/net/dsa/slave.c b/net/dsa/slave.c
-index fc91967..b11a825 100644
+index 3ff9d97..a17eb98 100644
--- a/net/dsa/slave.c
+++ b/net/dsa/slave.c
-@@ -906,7 +906,7 @@ static void dsa_slave_poll_controller(struct net_device *dev)
+@@ -982,7 +982,7 @@ static void dsa_slave_poll_controller(struct net_device *dev)
}
#endif
@@ -160371,7 +164977,7 @@ diff --git a/net/hsr/hsr_netlink.c b/net/hsr/hsr_netlink.c
index d4d1617..06282b4 100644
--- a/net/hsr/hsr_netlink.c
+++ b/net/hsr/hsr_netlink.c
-@@ -108,7 +108,7 @@ nla_put_failure:
+@@ -108,7 +108,7 @@ static int hsr_fill_info(struct sk_buff *skb, const struct net_device *dev)
return -EMSGSIZE;
}
@@ -160465,10 +165071,10 @@ index cb7176c..afd2c62 100644
return NULL;
}
diff --git a/net/ipv4/af_inet.c b/net/ipv4/af_inet.c
-index ed22af6..0e88bcd 100644
+index 21514324..fb6543d 100644
--- a/net/ipv4/af_inet.c
+++ b/net/ipv4/af_inet.c
-@@ -1445,7 +1445,7 @@ int inet_recv_error(struct sock *sk, struct msghdr *msg, int len, int *addr_len)
+@@ -1447,7 +1447,7 @@ int inet_recv_error(struct sock *sk, struct msghdr *msg, int len, int *addr_len)
return ip_recv_error(sk, msg, len, addr_len);
#if IS_ENABLED(CONFIG_IPV6)
if (sk->sk_family == AF_INET6)
@@ -160477,7 +165083,7 @@ index ed22af6..0e88bcd 100644
#endif
return -EINVAL;
}
-@@ -1655,7 +1655,7 @@ static __net_exit void ipv4_mib_exit_net(struct net *net)
+@@ -1657,7 +1657,7 @@ static __net_exit void ipv4_mib_exit_net(struct net *net)
free_percpu(net->mib.tcp_statistics);
}
@@ -160486,7 +165092,7 @@ index ed22af6..0e88bcd 100644
.init = ipv4_mib_init_net,
.exit = ipv4_mib_exit_net,
};
-@@ -1696,7 +1696,7 @@ static __net_exit void inet_exit_net(struct net *net)
+@@ -1698,7 +1698,7 @@ static __net_exit void inet_exit_net(struct net *net)
{
}
@@ -160589,7 +165195,7 @@ index 062a67c..cb05c97 100644
if (!forw_hdr)
goto err_reg_ctl;
net->ipv4.forw_hdr = forw_hdr;
-@@ -2375,8 +2380,7 @@ err_reg_ctl:
+@@ -2375,8 +2380,7 @@ static __net_init int devinet_init_net(struct net *net)
err_reg_dflt:
__devinet_sysctl_unregister(all);
err_reg_all:
@@ -160609,10 +165215,10 @@ index 062a67c..cb05c97 100644
.exit = devinet_exit_net,
};
diff --git a/net/ipv4/fib_frontend.c b/net/ipv4/fib_frontend.c
-index 9301308..e164d8d 100644
+index 5b03d7f..6c62eaf 100644
--- a/net/ipv4/fib_frontend.c
+++ b/net/ipv4/fib_frontend.c
-@@ -1151,12 +1151,12 @@ static int fib_inetaddr_event(struct notifier_block *this, unsigned long event,
+@@ -1140,12 +1140,12 @@ static int fib_inetaddr_event(struct notifier_block *this, unsigned long event,
#ifdef CONFIG_IP_ROUTE_MULTIPATH
fib_sync_up(dev, RTNH_F_DEAD);
#endif
@@ -160627,7 +165233,7 @@ index 9301308..e164d8d 100644
if (!ifa->ifa_dev->ifa_list) {
/* Last address was deleted from this interface.
* Disable IP.
-@@ -1196,7 +1196,7 @@ static int fib_netdev_event(struct notifier_block *this, unsigned long event, vo
+@@ -1185,7 +1185,7 @@ static int fib_netdev_event(struct notifier_block *this, unsigned long event, vo
#ifdef CONFIG_IP_ROUTE_MULTIPATH
fib_sync_up(dev, RTNH_F_DEAD);
#endif
@@ -160637,7 +165243,7 @@ index 9301308..e164d8d 100644
break;
case NETDEV_DOWN:
diff --git a/net/ipv4/fib_semantics.c b/net/ipv4/fib_semantics.c
-index e9f5622..975108b 100644
+index 6a40680..c794e51 100644
--- a/net/ipv4/fib_semantics.c
+++ b/net/ipv4/fib_semantics.c
@@ -916,7 +916,7 @@ __be32 fib_info_update_nh_saddr(struct net *net, struct fib_nh *nh)
@@ -160653,7 +165259,7 @@ diff --git a/net/ipv4/icmp.c b/net/ipv4/icmp.c
index 48734ee..3308079 100644
--- a/net/ipv4/icmp.c
+++ b/net/ipv4/icmp.c
-@@ -1228,7 +1228,7 @@ fail:
+@@ -1228,7 +1228,7 @@ static int __net_init icmp_sk_init(struct net *net)
return err;
}
@@ -160678,11 +165284,11 @@ index 61a9dee..e3b4a9b 100644
newicsk->icsk_retransmits = 0;
newicsk->icsk_backoff = 0;
diff --git a/net/ipv4/inet_diag.c b/net/ipv4/inet_diag.c
-index 38c2c47..5d8ebc5 100644
+index e4d16fc..369aae5 100644
--- a/net/ipv4/inet_diag.c
+++ b/net/ipv4/inet_diag.c
-@@ -1029,7 +1029,7 @@ static int inet_diag_rcv_msg_compat(struct sk_buff *skb, struct nlmsghdr *nlh)
- return -EINVAL;
+@@ -1082,7 +1082,7 @@ static int inet_diag_rcv_msg_compat(struct sk_buff *skb, struct nlmsghdr *nlh)
+ return err;
}
{
- struct netlink_dump_control c = {
@@ -160690,8 +165296,8 @@ index 38c2c47..5d8ebc5 100644
.dump = inet_diag_dump_compat,
};
return netlink_dump_start(net->diag_nlsk, skb, nlh, &c);
-@@ -1060,7 +1060,7 @@ static int inet_diag_handler_cmd(struct sk_buff *skb, struct nlmsghdr *h)
- return -EINVAL;
+@@ -1113,7 +1113,7 @@ static int inet_diag_handler_cmd(struct sk_buff *skb, struct nlmsghdr *h)
+ return err;
}
{
- struct netlink_dump_control c = {
@@ -160700,7 +165306,7 @@ index 38c2c47..5d8ebc5 100644
};
return netlink_dump_start(net->diag_nlsk, skb, h, &c);
diff --git a/net/ipv4/inet_hashtables.c b/net/ipv4/inet_hashtables.c
-index 77c20a4..76261b6 100644
+index ca97835..4876208 100644
--- a/net/ipv4/inet_hashtables.c
+++ b/net/ipv4/inet_hashtables.c
@@ -19,6 +19,7 @@
@@ -160711,7 +165317,7 @@ index 77c20a4..76261b6 100644
#include <net/addrconf.h>
#include <net/inet_connection_sock.h>
-@@ -56,6 +57,8 @@ u32 sk_ehashfn(const struct sock *sk)
+@@ -57,6 +58,8 @@ u32 sk_ehashfn(const struct sock *sk)
sk->sk_daddr, sk->sk_dport);
}
@@ -160720,7 +165326,7 @@ index 77c20a4..76261b6 100644
/*
* Allocate and initialize a new local port bind bucket.
* The bindhash mutex for snum's hash chain must be held here.
-@@ -642,6 +645,9 @@ ok:
+@@ -644,6 +647,9 @@ int __inet_hash_connect(struct inet_timewait_death_row *death_row,
spin_unlock(&head->lock);
if (tw)
inet_twsk_deschedule_put(tw);
@@ -160747,7 +165353,7 @@ diff --git a/net/ipv4/inetpeer.c b/net/ipv4/inetpeer.c
index 86fa458..5f601b9 100644
--- a/net/ipv4/inetpeer.c
+++ b/net/ipv4/inetpeer.c
-@@ -445,7 +445,7 @@ relookup:
+@@ -445,7 +445,7 @@ struct inet_peer *inet_getpeer(struct inet_peer_base *base,
if (p) {
p->daddr = *daddr;
atomic_set(&p->refcnt, 1);
@@ -160809,7 +165415,7 @@ index bbe7f72..7a5a57f 100644
return -ENOMEM;
}
diff --git a/net/ipv4/ip_gre.c b/net/ipv4/ip_gre.c
-index 113cc43..9f89876 100644
+index 576f705..8b243be 100644
--- a/net/ipv4/ip_gre.c
+++ b/net/ipv4/ip_gre.c
@@ -110,7 +110,7 @@ static bool log_ecn_error = true;
@@ -160821,7 +165427,7 @@ index 113cc43..9f89876 100644
static int ipgre_tunnel_init(struct net_device *dev);
static int ipgre_net_id __read_mostly;
-@@ -1114,7 +1114,7 @@ static const struct nla_policy ipgre_policy[IFLA_GRE_MAX + 1] = {
+@@ -1095,7 +1095,7 @@ static const struct nla_policy ipgre_policy[IFLA_GRE_MAX + 1] = {
[IFLA_GRE_IGNORE_DF] = { .type = NLA_U8 },
};
@@ -160830,7 +165436,7 @@ index 113cc43..9f89876 100644
.kind = "gre",
.maxtype = IFLA_GRE_MAX,
.policy = ipgre_policy,
-@@ -1129,7 +1129,7 @@ static struct rtnl_link_ops ipgre_link_ops __read_mostly = {
+@@ -1110,7 +1110,7 @@ static struct rtnl_link_ops ipgre_link_ops __read_mostly = {
.get_link_net = ip_tunnel_get_link_net,
};
@@ -160865,10 +165471,10 @@ index d6feabb..9cb3988 100644
ICMP_PROT_UNREACH, 0);
}
diff --git a/net/ipv4/ip_sockglue.c b/net/ipv4/ip_sockglue.c
-index 11ef96e..6901706 100644
+index f226f408..87ab217 100644
--- a/net/ipv4/ip_sockglue.c
+++ b/net/ipv4/ip_sockglue.c
-@@ -1326,7 +1326,8 @@ static int do_ip_getsockopt(struct sock *sk, int level, int optname,
+@@ -1335,7 +1335,8 @@ static int do_ip_getsockopt(struct sock *sk, int level, int optname,
len = min_t(unsigned int, len, opt->optlen);
if (put_user(len, optlen))
return -EFAULT;
@@ -160878,7 +165484,7 @@ index 11ef96e..6901706 100644
return -EFAULT;
return 0;
}
-@@ -1462,7 +1463,7 @@ static int do_ip_getsockopt(struct sock *sk, int level, int optname,
+@@ -1471,7 +1472,7 @@ static int do_ip_getsockopt(struct sock *sk, int level, int optname,
if (sk->sk_type != SOCK_STREAM)
return -ENOPROTOOPT;
@@ -160919,10 +165525,10 @@ index 5d7944f..f7953fe 100644
};
diff --git a/net/ipv4/ipconfig.c b/net/ipv4/ipconfig.c
-index 1d71c40..3f8a6fa 100644
+index 071a785..dda44df 100644
--- a/net/ipv4/ipconfig.c
+++ b/net/ipv4/ipconfig.c
-@@ -334,7 +334,7 @@ static int __init ic_devinet_ioctl(unsigned int cmd, struct ifreq *arg)
+@@ -333,7 +333,7 @@ static int __init ic_devinet_ioctl(unsigned int cmd, struct ifreq *arg)
mm_segment_t oldfs = get_fs();
set_fs(get_ds());
@@ -160931,7 +165537,7 @@ index 1d71c40..3f8a6fa 100644
set_fs(oldfs);
return res;
}
-@@ -345,7 +345,7 @@ static int __init ic_dev_ioctl(unsigned int cmd, struct ifreq *arg)
+@@ -344,7 +344,7 @@ static int __init ic_dev_ioctl(unsigned int cmd, struct ifreq *arg)
mm_segment_t oldfs = get_fs();
set_fs(get_ds());
@@ -160940,7 +165546,7 @@ index 1d71c40..3f8a6fa 100644
set_fs(oldfs);
return res;
}
-@@ -356,7 +356,7 @@ static int __init ic_route_ioctl(unsigned int cmd, struct rtentry *arg)
+@@ -355,7 +355,7 @@ static int __init ic_route_ioctl(unsigned int cmd, struct rtentry *arg)
mm_segment_t oldfs = get_fs();
set_fs(get_ds());
@@ -160950,10 +165556,10 @@ index 1d71c40..3f8a6fa 100644
return res;
}
diff --git a/net/ipv4/ipip.c b/net/ipv4/ipip.c
-index 4ae3f8e..bd0ea72 100644
+index c939258..60b6671 100644
--- a/net/ipv4/ipip.c
+++ b/net/ipv4/ipip.c
-@@ -123,7 +123,7 @@ MODULE_PARM_DESC(log_ecn_error, "Log packets received with corrupted ECN");
+@@ -124,7 +124,7 @@ MODULE_PARM_DESC(log_ecn_error, "Log packets received with corrupted ECN");
static int ipip_net_id __read_mostly;
static int ipip_tunnel_init(struct net_device *dev);
@@ -160962,8 +165568,8 @@ index 4ae3f8e..bd0ea72 100644
static int ipip_err(struct sk_buff *skb, u32 info)
{
-@@ -564,7 +564,7 @@ static const struct nla_policy ipip_policy[IFLA_IPTUN_MAX + 1] = {
- [IFLA_IPTUN_ENCAP_DPORT] = { .type = NLA_U16 },
+@@ -587,7 +587,7 @@ static const struct nla_policy ipip_policy[IFLA_IPTUN_MAX + 1] = {
+ [IFLA_IPTUN_COLLECT_METADATA] = { .type = NLA_FLAG },
};
-static struct rtnl_link_ops ipip_link_ops __read_mostly = {
@@ -160972,7 +165578,7 @@ index 4ae3f8e..bd0ea72 100644
.maxtype = IFLA_IPTUN_MAX,
.policy = ipip_policy,
diff --git a/net/ipv4/netfilter/arp_tables.c b/net/ipv4/netfilter/arp_tables.c
-index b31df59..76740d3 100644
+index 6975384..0004f1c 100644
--- a/net/ipv4/netfilter/arp_tables.c
+++ b/net/ipv4/netfilter/arp_tables.c
@@ -790,13 +790,13 @@ static int compat_table_info(const struct xt_table_info *info,
@@ -161019,7 +165625,7 @@ index b31df59..76740d3 100644
case ARPT_SO_GET_ENTRIES:
diff --git a/net/ipv4/netfilter/ip_tables.c b/net/ipv4/netfilter/ip_tables.c
-index f993545..e98f208 100644
+index 7c00ce9..53d354d 100644
--- a/net/ipv4/netfilter/ip_tables.c
+++ b/net/ipv4/netfilter/ip_tables.c
@@ -958,13 +958,13 @@ static int compat_table_info(const struct xt_table_info *info,
@@ -161079,7 +165685,7 @@ index 4a9e6db..06174e1 100644
pr_err("Unable to proc dir entry\n");
return -ENOMEM;
diff --git a/net/ipv4/ping.c b/net/ipv4/ping.c
-index dcdd5ae..2b7b5a2 100644
+index 96b8e2b..fb38f77 100644
--- a/net/ipv4/ping.c
+++ b/net/ipv4/ping.c
@@ -59,7 +59,7 @@ struct ping_table {
@@ -161091,7 +165697,7 @@ index dcdd5ae..2b7b5a2 100644
EXPORT_SYMBOL_GPL(pingv6_ops);
static u16 ping_port_rover;
-@@ -361,7 +361,7 @@ static int ping_check_bind_addr(struct sock *sk, struct inet_sock *isk,
+@@ -356,7 +356,7 @@ static int ping_check_bind_addr(struct sock *sk, struct inet_sock *isk,
return -ENODEV;
}
}
@@ -161100,7 +165706,7 @@ index dcdd5ae..2b7b5a2 100644
scoped);
rcu_read_unlock();
-@@ -570,7 +570,7 @@ void ping_err(struct sk_buff *skb, int offset, u32 info)
+@@ -565,7 +565,7 @@ void ping_err(struct sk_buff *skb, int offset, u32 info)
}
#if IS_ENABLED(CONFIG_IPV6)
} else if (skb->protocol == htons(ETH_P_IPV6)) {
@@ -161109,7 +165715,7 @@ index dcdd5ae..2b7b5a2 100644
#endif
}
-@@ -588,7 +588,7 @@ void ping_err(struct sk_buff *skb, int offset, u32 info)
+@@ -583,7 +583,7 @@ void ping_err(struct sk_buff *skb, int offset, u32 info)
info, (u8 *)icmph);
#if IS_ENABLED(CONFIG_IPV6)
} else if (family == AF_INET6) {
@@ -161118,7 +165724,7 @@ index dcdd5ae..2b7b5a2 100644
info, (u8 *)icmph);
#endif
}
-@@ -928,10 +928,10 @@ int ping_recvmsg(struct sock *sk, struct msghdr *msg, size_t len, int noblock,
+@@ -923,10 +923,10 @@ int ping_recvmsg(struct sock *sk, struct msghdr *msg, size_t len, int noblock,
}
if (inet6_sk(sk)->rxopt.all)
@@ -161131,7 +165737,7 @@ index dcdd5ae..2b7b5a2 100644
else if (skb->protocol == htons(ETH_P_IP) && isk->cmsg_flags)
ip_cmsg_recv(msg, skb);
#endif
-@@ -1128,7 +1128,7 @@ static void ping_v4_format_sock(struct sock *sp, struct seq_file *f,
+@@ -1123,7 +1123,7 @@ static void ping_v4_format_sock(struct sock *sp, struct seq_file *f,
from_kuid_munged(seq_user_ns(f), sock_i_uid(sp)),
0, sock_i_ino(sp),
atomic_read(&sp->sk_refcnt), sp,
@@ -161141,10 +165747,10 @@ index dcdd5ae..2b7b5a2 100644
static int ping_v4_seq_show(struct seq_file *seq, void *v)
diff --git a/net/ipv4/proc.c b/net/ipv4/proc.c
-index 9f665b6..5900fae 100644
+index 7143ca1..c4b6fac 100644
--- a/net/ipv4/proc.c
+++ b/net/ipv4/proc.c
-@@ -333,7 +333,7 @@ static void icmpmsg_put(struct seq_file *seq)
+@@ -336,7 +336,7 @@ static void icmpmsg_put(struct seq_file *seq)
count = 0;
for (i = 0; i < ICMPMSG_MIB_MAX; i++) {
@@ -161153,7 +165759,7 @@ index 9f665b6..5900fae 100644
if (val) {
type[count] = i;
vals[count++] = val;
-@@ -352,7 +352,7 @@ static void icmp_put(struct seq_file *seq)
+@@ -355,7 +355,7 @@ static void icmp_put(struct seq_file *seq)
{
int i;
struct net *net = seq->private;
@@ -161161,24 +165767,24 @@ index 9f665b6..5900fae 100644
+ atomic_long_unchecked_t *ptr = net->mib.icmpmsg_statistics->mibs;
seq_puts(seq, "\nIcmp: InMsgs InErrors InCsumErrors");
- for (i = 0; icmpmibmap[i].name != NULL; i++)
-@@ -366,13 +366,13 @@ static void icmp_put(struct seq_file *seq)
+ for (i = 0; icmpmibmap[i].name; i++)
+@@ -369,13 +369,13 @@ static void icmp_put(struct seq_file *seq)
snmp_fold_field(net->mib.icmp_statistics, ICMP_MIB_CSUMERRORS));
- for (i = 0; icmpmibmap[i].name != NULL; i++)
+ for (i = 0; icmpmibmap[i].name; i++)
seq_printf(seq, " %lu",
- atomic_long_read(ptr + icmpmibmap[i].index));
+ atomic_long_read_unchecked(ptr + icmpmibmap[i].index));
seq_printf(seq, " %lu %lu",
snmp_fold_field(net->mib.icmp_statistics, ICMP_MIB_OUTMSGS),
snmp_fold_field(net->mib.icmp_statistics, ICMP_MIB_OUTERRORS));
- for (i = 0; icmpmibmap[i].name != NULL; i++)
+ for (i = 0; icmpmibmap[i].name; i++)
seq_printf(seq, " %lu",
- atomic_long_read(ptr + (icmpmibmap[i].index | 0x100)));
+ atomic_long_read_unchecked(ptr + (icmpmibmap[i].index | 0x100)));
}
/*
-@@ -532,7 +532,7 @@ static __net_exit void ip_proc_exit_net(struct net *net)
+@@ -557,7 +557,7 @@ static __net_exit void ip_proc_exit_net(struct net *net)
remove_proc_entry("sockstat", net->proc_net);
}
@@ -161188,7 +165794,7 @@ index 9f665b6..5900fae 100644
.exit = ip_proc_exit_net,
};
diff --git a/net/ipv4/raw.c b/net/ipv4/raw.c
-index 438f50c..96538dd 100644
+index ecbe5a7..8ae8a54 100644
--- a/net/ipv4/raw.c
+++ b/net/ipv4/raw.c
@@ -325,7 +325,7 @@ static int raw_rcv_skb(struct sock *sk, struct sk_buff *skb)
@@ -161200,40 +165806,16 @@ index 438f50c..96538dd 100644
kfree_skb(skb);
return NET_RX_DROP;
}
-@@ -786,16 +786,20 @@ static int raw_init(struct sock *sk)
-
- static int raw_seticmpfilter(struct sock *sk, char __user *optval, int optlen)
- {
-+ struct icmp_filter filter;
-+
- if (optlen > sizeof(struct icmp_filter))
- optlen = sizeof(struct icmp_filter);
-- if (copy_from_user(&raw_sk(sk)->filter, optval, optlen))
-+ if (copy_from_user(&filter, optval, optlen))
- return -EFAULT;
-+ raw_sk(sk)->filter = filter;
- return 0;
- }
-
- static int raw_geticmpfilter(struct sock *sk, char __user *optval, int __user *optlen)
- {
- int len, ret = -EFAULT;
-+ struct icmp_filter filter;
-
- if (get_user(len, optlen))
- goto out;
-@@ -805,8 +809,8 @@ static int raw_geticmpfilter(struct sock *sk, char __user *optval, int __user *o
- if (len > sizeof(struct icmp_filter))
- len = sizeof(struct icmp_filter);
- ret = -EFAULT;
-- if (put_user(len, optlen) ||
-- copy_to_user(optval, &raw_sk(sk)->filter, len))
-+ filter = raw_sk(sk)->filter;
-+ if (put_user(len, optlen) || len > sizeof filter || copy_to_user(optval, &filter, len))
- goto out;
- ret = 0;
- out: return ret;
-@@ -1035,7 +1039,7 @@ static void raw_sock_seq_show(struct seq_file *seq, struct sock *sp, int i)
+@@ -931,6 +931,8 @@ struct proto raw_prot = {
+ .hash = raw_hash_sk,
+ .unhash = raw_unhash_sk,
+ .obj_size = sizeof(struct raw_sock),
++ .useroffset = offsetof(struct raw_sock, filter),
++ .usersize = sizeof(((struct raw_sock *)0)->filter),
+ .h.raw_hash = &raw_v4_hashinfo,
+ #ifdef CONFIG_COMPAT
+ .compat_setsockopt = compat_raw_setsockopt,
+@@ -1029,7 +1031,7 @@ static void raw_sock_seq_show(struct seq_file *seq, struct sock *sp, int i)
0, 0L, 0,
from_kuid_munged(seq_user_ns(seq), sock_i_uid(sp)),
0, sock_i_ino(sp),
@@ -161242,7 +165824,7 @@ index 438f50c..96538dd 100644
}
static int raw_seq_show(struct seq_file *seq, void *v)
-@@ -1098,7 +1102,7 @@ static __net_exit void raw_exit_net(struct net *net)
+@@ -1092,7 +1094,7 @@ static __net_exit void raw_exit_net(struct net *net)
remove_proc_entry("raw", net->proc_net);
}
@@ -161252,7 +165834,7 @@ index 438f50c..96538dd 100644
.exit = raw_exit_net,
};
diff --git a/net/ipv4/route.c b/net/ipv4/route.c
-index 2f23ef1..85c2f0d 100644
+index d851cae..5769b1a 100644
--- a/net/ipv4/route.c
+++ b/net/ipv4/route.c
@@ -232,7 +232,7 @@ static const struct seq_operations rt_cache_seq_ops = {
@@ -161300,7 +165882,7 @@ index 2f23ef1..85c2f0d 100644
static u32 *ip_tstamps __read_mostly;
/* In order to protect privacy, we add a perturbation to identifiers
-@@ -2781,34 +2781,34 @@ static struct ctl_table ipv4_route_flush_table[] = {
+@@ -2777,34 +2777,34 @@ static struct ctl_table ipv4_route_flush_table[] = {
.maxlen = sizeof(int),
.mode = 0200,
.proc_handler = ipv4_sysctl_rtcache_flush,
@@ -161343,7 +165925,7 @@ index 2f23ef1..85c2f0d 100644
err_dup:
return -ENOMEM;
}
-@@ -2823,7 +2823,7 @@ static __net_exit void sysctl_route_net_exit(struct net *net)
+@@ -2819,7 +2819,7 @@ static __net_exit void sysctl_route_net_exit(struct net *net)
kfree(tbl);
}
@@ -161352,7 +165934,7 @@ index 2f23ef1..85c2f0d 100644
.init = sysctl_route_net_init,
.exit = sysctl_route_net_exit,
};
-@@ -2831,14 +2831,14 @@ static __net_initdata struct pernet_operations sysctl_route_ops = {
+@@ -2827,14 +2827,14 @@ static __net_initdata struct pernet_operations sysctl_route_ops = {
static __net_init int rt_genid_init(struct net *net)
{
@@ -161370,7 +165952,7 @@ index 2f23ef1..85c2f0d 100644
.init = rt_genid_init,
};
-@@ -2862,7 +2862,7 @@ static void __net_exit ipv4_inetpeer_exit(struct net *net)
+@@ -2858,7 +2858,7 @@ static void __net_exit ipv4_inetpeer_exit(struct net *net)
kfree(bp);
}
@@ -161379,7 +165961,7 @@ index 2f23ef1..85c2f0d 100644
.init = ipv4_inetpeer_init,
.exit = ipv4_inetpeer_exit,
};
-@@ -2876,11 +2876,7 @@ int __init ip_rt_init(void)
+@@ -2872,11 +2872,7 @@ int __init ip_rt_init(void)
int rc = 0;
int cpu;
@@ -161488,10 +166070,10 @@ index 80bc36b..d70d622 100644
.exit = ipv4_sysctl_exit_net,
};
diff --git a/net/ipv4/tcp_input.c b/net/ipv4/tcp_input.c
-index a756b87..7237f19 100644
+index c71d49c..306109a 100644
--- a/net/ipv4/tcp_input.c
+++ b/net/ipv4/tcp_input.c
-@@ -268,11 +268,13 @@ static void tcp_ecn_rcv_synack(struct tcp_sock *tp, const struct tcphdr *th)
+@@ -288,11 +288,13 @@ static void tcp_ecn_rcv_synack(struct tcp_sock *tp, const struct tcphdr *th)
tp->ecn_flags &= ~TCP_ECN_OK;
}
@@ -161505,7 +166087,7 @@ index a756b87..7237f19 100644
static bool tcp_ecn_rcv_ecn_echo(const struct tcp_sock *tp, const struct tcphdr *th)
{
-@@ -789,7 +791,7 @@ static void tcp_update_pacing_rate(struct sock *sk)
+@@ -811,7 +813,7 @@ static void tcp_update_pacing_rate(struct sock *sk)
* without any lock. We want to make sure compiler wont store
* intermediate values in this location.
*/
@@ -161514,16 +166096,16 @@ index a756b87..7237f19 100644
sk->sk_max_pacing_rate);
}
-@@ -4737,7 +4739,7 @@ static struct sk_buff *tcp_collapse_one(struct sock *sk, struct sk_buff *skb,
+@@ -4801,7 +4803,7 @@ static void tcp_rbtree_insert(struct rb_root *root, struct sk_buff *skb)
+ * Segments with FIN/SYN are not collapsed (only because this
* simplifies code)
*/
- static void
--tcp_collapse(struct sock *sk, struct sk_buff_head *list,
-+__intentional_overflow(5,6) tcp_collapse(struct sock *sk, struct sk_buff_head *list,
- struct sk_buff *head, struct sk_buff *tail,
- u32 start, u32 end)
+-static void
++static void __intentional_overflow(6,7)
+ tcp_collapse(struct sock *sk, struct sk_buff_head *list, struct rb_root *root,
+ struct sk_buff *head, struct sk_buff *tail, u32 start, u32 end)
{
-@@ -5735,6 +5737,7 @@ discard:
+@@ -5820,6 +5822,7 @@ static int tcp_rcv_synsent_state_process(struct sock *sk, struct sk_buff *skb,
tcp_paws_reject(&tp->rx_opt, 0))
goto discard_and_undo;
@@ -161531,7 +166113,7 @@ index a756b87..7237f19 100644
if (th->syn) {
/* We see SYN without ACK. It is attempt of
* simultaneous connect with crossed SYNs.
-@@ -5786,6 +5789,7 @@ discard:
+@@ -5871,6 +5874,7 @@ static int tcp_rcv_synsent_state_process(struct sock *sk, struct sk_buff *skb,
goto discard;
#endif
}
@@ -161539,7 +166121,7 @@ index a756b87..7237f19 100644
/* "fifth, if neither of the SYN or RST bits is set then
* drop the segment and return."
*/
-@@ -5829,7 +5833,7 @@ int tcp_rcv_state_process(struct sock *sk, struct sk_buff *skb)
+@@ -5914,7 +5918,7 @@ int tcp_rcv_state_process(struct sock *sk, struct sk_buff *skb)
goto discard;
if (th->syn) {
@@ -161548,7 +166130,7 @@ index a756b87..7237f19 100644
goto discard;
if (icsk->icsk_af_ops->conn_request(sk, skb) < 0)
return 1;
-@@ -6149,7 +6153,7 @@ struct request_sock *inet_reqsk_alloc(const struct request_sock_ops *ops,
+@@ -6235,7 +6239,7 @@ struct request_sock *inet_reqsk_alloc(const struct request_sock_ops *ops,
#if IS_ENABLED(CONFIG_IPV6)
ireq->pktopts = NULL;
#endif
@@ -161558,12 +166140,12 @@ index a756b87..7237f19 100644
write_pnet(&ireq->ireq_net, sock_net(sk_listener));
ireq->ireq_family = sk_listener->sk_family;
diff --git a/net/ipv4/tcp_ipv4.c b/net/ipv4/tcp_ipv4.c
-index 7b235fa..a8dbb72 100644
+index 2259114..2d5e8a0 100644
--- a/net/ipv4/tcp_ipv4.c
+++ b/net/ipv4/tcp_ipv4.c
-@@ -88,6 +88,10 @@ int sysctl_tcp_tw_reuse __read_mostly;
+@@ -87,6 +87,10 @@
+ int sysctl_tcp_tw_reuse __read_mostly;
int sysctl_tcp_low_latency __read_mostly;
- EXPORT_SYMBOL(sysctl_tcp_low_latency);
+#ifdef CONFIG_GRKERNSEC_BLACKHOLE
+extern int grsec_enable_blackhole;
@@ -161572,7 +166154,7 @@ index 7b235fa..a8dbb72 100644
#ifdef CONFIG_TCP_MD5SIG
static int tcp_v4_md5_hash_hdr(char *md5_hash, const struct tcp_md5sig_key *key,
__be32 daddr, __be32 saddr, const struct tcphdr *th);
-@@ -1428,6 +1432,9 @@ int tcp_v4_do_rcv(struct sock *sk, struct sk_buff *skb)
+@@ -1427,6 +1431,9 @@ int tcp_v4_do_rcv(struct sock *sk, struct sk_buff *skb)
return 0;
reset:
@@ -161582,7 +166164,7 @@ index 7b235fa..a8dbb72 100644
tcp_v4_send_reset(rsk, skb);
discard:
kfree_skb(skb);
-@@ -1610,12 +1617,19 @@ int tcp_v4_rcv(struct sk_buff *skb)
+@@ -1637,12 +1644,19 @@ int tcp_v4_rcv(struct sk_buff *skb)
lookup:
sk = __inet_lookup_skb(&tcp_hashinfo, skb, __tcp_hdrlen(th), th->source,
th->dest, &refcounted);
@@ -161605,7 +166187,7 @@ index 7b235fa..a8dbb72 100644
if (sk->sk_state == TCP_NEW_SYN_RECV) {
struct request_sock *req = inet_reqsk(sk);
-@@ -1707,6 +1721,10 @@ csum_error:
+@@ -1732,6 +1746,10 @@ int tcp_v4_rcv(struct sk_buff *skb)
bad_packet:
__TCP_INC_STATS(net, TCP_MIB_INERRS);
} else {
@@ -161616,7 +166198,7 @@ index 7b235fa..a8dbb72 100644
tcp_v4_send_reset(NULL, skb);
}
-@@ -2445,7 +2463,7 @@ static void __net_exit tcp_sk_exit_batch(struct list_head *net_exit_list)
+@@ -2465,7 +2483,7 @@ static void __net_exit tcp_sk_exit_batch(struct list_head *net_exit_list)
inet_twsk_purge(&tcp_hashinfo, &tcp_death_row, AF_INET);
}
@@ -161626,7 +166208,7 @@ index 7b235fa..a8dbb72 100644
.exit = tcp_sk_exit,
.exit_batch = tcp_sk_exit_batch,
diff --git a/net/ipv4/tcp_metrics.c b/net/ipv4/tcp_metrics.c
-index b617826..c544a96 100644
+index bf1f3b2..83f355d 100644
--- a/net/ipv4/tcp_metrics.c
+++ b/net/ipv4/tcp_metrics.c
@@ -1166,7 +1166,7 @@ static void __net_exit tcp_net_metrics_exit(struct net *net)
@@ -161639,7 +166221,7 @@ index b617826..c544a96 100644
.exit = tcp_net_metrics_exit,
};
diff --git a/net/ipv4/tcp_minisocks.c b/net/ipv4/tcp_minisocks.c
-index 4b95ec4..4a83836 100644
+index 6234eba..8007145 100644
--- a/net/ipv4/tcp_minisocks.c
+++ b/net/ipv4/tcp_minisocks.c
@@ -27,6 +27,10 @@
@@ -161653,7 +166235,7 @@ index 4b95ec4..4a83836 100644
int sysctl_tcp_abort_on_overflow __read_mostly;
struct inet_timewait_death_row tcp_death_row = {
-@@ -784,7 +788,10 @@ embryonic_reset:
+@@ -786,7 +790,10 @@ struct sock *tcp_check_req(struct sock *sk, struct sk_buff *skb,
* avoid becoming vulnerable to outside attack aiming at
* resetting legit local connections.
*/
@@ -161679,7 +166261,7 @@ index f6c50af..1eb9aa5 100644
cnt += width;
}
diff --git a/net/ipv4/tcp_timer.c b/net/ipv4/tcp_timer.c
-index f712b41..b651403 100644
+index 3ea1cf8..9faf8d7 100644
--- a/net/ipv4/tcp_timer.c
+++ b/net/ipv4/tcp_timer.c
@@ -22,6 +22,10 @@
@@ -161693,7 +166275,7 @@ index f712b41..b651403 100644
int sysctl_tcp_thin_linear_timeouts __read_mostly;
/**
-@@ -228,6 +232,13 @@ static int tcp_write_timeout(struct sock *sk)
+@@ -232,6 +236,13 @@ static int tcp_write_timeout(struct sock *sk)
}
}
@@ -161708,7 +166290,7 @@ index f712b41..b651403 100644
syn_set ? 0 : icsk->icsk_user_timeout, syn_set)) {
/* Has it gone just too far? */
diff --git a/net/ipv4/udp.c b/net/ipv4/udp.c
-index a2d54f5..f94953a 100644
+index 5bab6c3..f5f5d03 100644
--- a/net/ipv4/udp.c
+++ b/net/ipv4/udp.c
@@ -87,6 +87,7 @@
@@ -161719,9 +166301,9 @@ index a2d54f5..f94953a 100644
#include <linux/socket.h>
#include <linux/sockios.h>
#include <linux/igmp.h>
-@@ -115,6 +116,10 @@
- #include "udp_impl.h"
+@@ -116,6 +117,10 @@
#include <net/sock_reuseport.h>
+ #include <net/addrconf.h>
+#ifdef CONFIG_GRKERNSEC_BLACKHOLE
+extern int grsec_enable_blackhole;
@@ -161730,7 +166312,7 @@ index a2d54f5..f94953a 100644
struct udp_table udp_table __read_mostly;
EXPORT_SYMBOL(udp_table);
-@@ -614,6 +619,9 @@ static inline bool __udp_is_mcast_sock(struct net *net, struct sock *sk,
+@@ -615,6 +620,9 @@ static inline bool __udp_is_mcast_sock(struct net *net, struct sock *sk,
return true;
}
@@ -161740,7 +166322,7 @@ index a2d54f5..f94953a 100644
/*
* This routine is called by the ICMP module when it gets some
* sort of error condition. If err < 0 then the socket should
-@@ -940,9 +948,18 @@ int udp_sendmsg(struct sock *sk, struct msghdr *msg, size_t len)
+@@ -941,9 +949,18 @@ int udp_sendmsg(struct sock *sk, struct msghdr *msg, size_t len)
dport = usin->sin_port;
if (dport == 0)
return -EINVAL;
@@ -161759,7 +166341,7 @@ index a2d54f5..f94953a 100644
daddr = inet->inet_daddr;
dport = inet->inet_dport;
/* Open fast path for connected socket.
-@@ -1199,7 +1216,7 @@ static int first_packet_length(struct sock *sk)
+@@ -1194,7 +1211,7 @@ static int first_packet_length(struct sock *sk)
IS_UDPLITE(sk));
__UDP_INC_STATS(sock_net(sk), UDP_MIB_INERRORS,
IS_UDPLITE(sk));
@@ -161768,7 +166350,7 @@ index a2d54f5..f94953a 100644
__skb_unlink(skb, rcvq);
__skb_queue_tail(&list_kill, skb);
}
-@@ -1301,10 +1318,13 @@ try_again:
+@@ -1296,10 +1313,13 @@ int udp_recvmsg(struct sock *sk, struct msghdr *msg, size_t len, int noblock,
goto csum_copy_err;
}
@@ -161783,7 +166365,7 @@ index a2d54f5..f94953a 100644
UDP_INC_STATS(sock_net(sk),
UDP_MIB_INERRORS, is_udplite);
}
-@@ -1609,7 +1629,7 @@ csum_error:
+@@ -1613,7 +1633,7 @@ int udp_queue_rcv_skb(struct sock *sk, struct sk_buff *skb)
__UDP_INC_STATS(sock_net(sk), UDP_MIB_CSUMERRORS, is_udplite);
drop:
__UDP_INC_STATS(sock_net(sk), UDP_MIB_INERRORS, is_udplite);
@@ -161792,7 +166374,7 @@ index a2d54f5..f94953a 100644
kfree_skb(skb);
return -1;
}
-@@ -1667,7 +1687,7 @@ start_lookup:
+@@ -1671,7 +1691,7 @@ static int __udp4_lib_mcast_deliver(struct net *net, struct sk_buff *skb,
nskb = skb_clone(skb, GFP_ATOMIC);
if (unlikely(!nskb)) {
@@ -161801,7 +166383,7 @@ index a2d54f5..f94953a 100644
__UDP_INC_STATS(net, UDP_MIB_RCVBUFERRORS,
IS_UDPLITE(sk));
__UDP_INC_STATS(net, UDP_MIB_INERRORS,
-@@ -1808,6 +1828,9 @@ int __udp4_lib_rcv(struct sk_buff *skb, struct udp_table *udptable,
+@@ -1812,6 +1832,9 @@ int __udp4_lib_rcv(struct sk_buff *skb, struct udp_table *udptable,
goto csum_error;
__UDP_INC_STATS(net, UDP_MIB_NOPORTS, proto == IPPROTO_UDPLITE);
@@ -161811,7 +166393,7 @@ index a2d54f5..f94953a 100644
icmp_send(skb, ICMP_DEST_UNREACH, ICMP_PORT_UNREACH, 0);
/*
-@@ -2372,7 +2395,7 @@ static void udp4_format_sock(struct sock *sp, struct seq_file *f,
+@@ -2390,7 +2413,7 @@ static void udp4_format_sock(struct sock *sp, struct seq_file *f,
from_kuid_munged(seq_user_ns(f), sock_i_uid(sp)),
0, sock_i_ino(sp),
atomic_read(&sp->sk_refcnt), sp,
@@ -161847,7 +166429,7 @@ index fd840c7..b517627 100644
struct iphdr *iph = ip_hdr(skb);
int ihl = iph->ihl * 4;
diff --git a/net/ipv4/xfrm4_policy.c b/net/ipv4/xfrm4_policy.c
-index 41f5b50..1b82e10 100644
+index 6a7ff69..658bd4b 100644
--- a/net/ipv4/xfrm4_policy.c
+++ b/net/ipv4/xfrm4_policy.c
@@ -215,11 +215,11 @@ _decode_session4(struct sk_buff *skb, struct flowi *fl, int reverse)
@@ -161931,10 +166513,10 @@ index 542074c..648df74 100644
sizeof(XFRM_MODE_SKB_CB(skb)->flow_lbl));
diff --git a/net/ipv6/addrconf.c b/net/ipv6/addrconf.c
-index 8f2e36f..720a68f 100644
+index 95dfcba3..8410458 100644
--- a/net/ipv6/addrconf.c
+++ b/net/ipv6/addrconf.c
-@@ -179,7 +179,7 @@ static struct ipv6_devconf ipv6_devconf __read_mostly = {
+@@ -199,7 +199,7 @@ static struct ipv6_devconf ipv6_devconf __read_mostly = {
.hop_limit = IPV6_DEFAULT_HOPLIMIT,
.mtu6 = IPV6_MIN_MTU,
.accept_ra = 1,
@@ -161943,7 +166525,7 @@ index 8f2e36f..720a68f 100644
.autoconf = 1,
.force_mld_version = 0,
.mldv1_unsolicited_report_interval = 10 * HZ,
-@@ -224,7 +224,7 @@ static struct ipv6_devconf ipv6_devconf_dflt __read_mostly = {
+@@ -245,7 +245,7 @@ static struct ipv6_devconf ipv6_devconf_dflt __read_mostly = {
.hop_limit = IPV6_DEFAULT_HOPLIMIT,
.mtu6 = IPV6_MIN_MTU,
.accept_ra = 1,
@@ -161952,7 +166534,7 @@ index 8f2e36f..720a68f 100644
.autoconf = 1,
.force_mld_version = 0,
.mldv1_unsolicited_report_interval = 10 * HZ,
-@@ -650,7 +650,7 @@ static int inet6_netconf_dump_devconf(struct sk_buff *skb,
+@@ -667,7 +667,7 @@ static int inet6_netconf_dump_devconf(struct sk_buff *skb,
idx = 0;
head = &net->dev_index_head[h];
rcu_read_lock();
@@ -161961,7 +166543,7 @@ index 8f2e36f..720a68f 100644
net->dev_base_seq;
hlist_for_each_entry_rcu(dev, head, index_hlist) {
if (idx < s_idx)
-@@ -2664,7 +2664,7 @@ int addrconf_set_dstaddr(struct net *net, void __user *arg)
+@@ -2669,7 +2669,7 @@ int addrconf_set_dstaddr(struct net *net, void __user *arg)
p.iph.ihl = 5;
p.iph.protocol = IPPROTO_IPV6;
p.iph.ttl = 64;
@@ -161970,7 +166552,7 @@ index 8f2e36f..720a68f 100644
if (ops->ndo_do_ioctl) {
mm_segment_t oldfs = get_fs();
-@@ -4125,16 +4125,23 @@ static const struct file_operations if6_fops = {
+@@ -4130,16 +4130,23 @@ static const struct file_operations if6_fops = {
.release = seq_release_net,
};
@@ -161995,7 +166577,7 @@ index 8f2e36f..720a68f 100644
}
static struct pernet_operations if6_proc_net_ops = {
-@@ -4753,7 +4760,7 @@ static int inet6_dump_addr(struct sk_buff *skb, struct netlink_callback *cb,
+@@ -4758,7 +4765,7 @@ static int inet6_dump_addr(struct sk_buff *skb, struct netlink_callback *cb,
s_ip_idx = ip_idx = cb->args[2];
rcu_read_lock();
@@ -162004,25 +166586,25 @@ index 8f2e36f..720a68f 100644
for (h = s_h; h < NETDEV_HASHENTRIES; h++, s_idx = 0) {
idx = 0;
head = &net->dev_index_head[h];
-@@ -4966,7 +4973,7 @@ static inline size_t inet6_if_nlmsg_size(void)
+@@ -4973,7 +4980,7 @@ static inline size_t inet6_if_nlmsg_size(void)
+ nla_total_size(inet6_ifla6_size()); /* IFLA_PROTINFO */
}
-static inline void __snmp6_fill_statsdev(u64 *stats, atomic_long_t *mib,
+static inline void __snmp6_fill_statsdev(u64 *stats, atomic_long_unchecked_t *mib,
- int items, int bytes)
+ int bytes)
{
int i;
-@@ -4976,7 +4983,7 @@ static inline void __snmp6_fill_statsdev(u64 *stats, atomic_long_t *mib,
+@@ -4983,7 +4990,7 @@ static inline void __snmp6_fill_statsdev(u64 *stats, atomic_long_t *mib,
/* Use put_unaligned() because stats may not be aligned for u64. */
- put_unaligned(items, &stats[0]);
- for (i = 1; i < items; i++)
+ put_unaligned(ICMP6_MIB_MAX, &stats[0]);
+ for (i = 1; i < ICMP6_MIB_MAX; i++)
- put_unaligned(atomic_long_read(&mib[i]), &stats[i]);
+ put_unaligned(atomic_long_read_unchecked(&mib[i]), &stats[i]);
- memset(&stats[items], 0, pad);
+ memset(&stats[ICMP6_MIB_MAX], 0, pad);
}
-@@ -5433,7 +5440,7 @@ static void __ipv6_ifa_notify(int event, struct inet6_ifaddr *ifp)
+@@ -5442,7 +5449,7 @@ static void __ipv6_ifa_notify(int event, struct inet6_ifaddr *ifp)
rt_genid_bump_ipv6(net);
break;
}
@@ -162031,7 +166613,7 @@ index 8f2e36f..720a68f 100644
}
static void ipv6_ifa_notify(int event, struct inet6_ifaddr *ifp)
-@@ -5453,7 +5460,7 @@ int addrconf_sysctl_forward(struct ctl_table *ctl, int write,
+@@ -5462,7 +5469,7 @@ int addrconf_sysctl_forward(struct ctl_table *ctl, int write,
int *valp = ctl->data;
int val = *valp;
loff_t pos = *ppos;
@@ -162040,16 +166622,7 @@ index 8f2e36f..720a68f 100644
int ret;
/*
-@@ -5476,7 +5483,7 @@ static
- int addrconf_sysctl_hop_limit(struct ctl_table *ctl, int write,
- void __user *buffer, size_t *lenp, loff_t *ppos)
- {
-- struct ctl_table lctl;
-+ ctl_table_no_const lctl;
- int min_hl = 1, max_hl = 255;
-
- lctl = *ctl;
-@@ -5492,7 +5499,7 @@ int addrconf_sysctl_mtu(struct ctl_table *ctl, int write,
+@@ -5487,7 +5494,7 @@ int addrconf_sysctl_mtu(struct ctl_table *ctl, int write,
{
struct inet6_dev *idev = ctl->extra1;
int min_mtu = IPV6_MIN_MTU;
@@ -162058,7 +166631,7 @@ index 8f2e36f..720a68f 100644
lctl = *ctl;
lctl.extra1 = &min_mtu;
-@@ -5567,7 +5574,7 @@ int addrconf_sysctl_disable(struct ctl_table *ctl, int write,
+@@ -5560,7 +5567,7 @@ int addrconf_sysctl_disable(struct ctl_table *ctl, int write,
int *valp = ctl->data;
int val = *valp;
loff_t pos = *ppos;
@@ -162067,7 +166640,7 @@ index 8f2e36f..720a68f 100644
int ret;
/*
-@@ -5632,7 +5639,7 @@ static int addrconf_sysctl_stable_secret(struct ctl_table *ctl, int write,
+@@ -5625,7 +5632,7 @@ static int addrconf_sysctl_stable_secret(struct ctl_table *ctl, int write,
int err;
struct in6_addr addr;
char str[IPV6_MAX_STRLEN];
@@ -162076,7 +166649,7 @@ index 8f2e36f..720a68f 100644
struct net *net = ctl->extra2;
struct ipv6_stable_secret *secret = ctl->data;
-@@ -5701,7 +5708,7 @@ int addrconf_sysctl_ignore_routes_with_linkdown(struct ctl_table *ctl,
+@@ -5694,7 +5701,7 @@ int addrconf_sysctl_ignore_routes_with_linkdown(struct ctl_table *ctl,
int *valp = ctl->data;
int val = *valp;
loff_t pos = *ppos;
@@ -162085,7 +166658,7 @@ index 8f2e36f..720a68f 100644
int ret;
/* ctl->data points to idev->cnf.ignore_routes_when_linkdown
-@@ -6041,7 +6048,7 @@ static int __addrconf_sysctl_register(struct net *net, char *dev_name,
+@@ -6048,7 +6055,7 @@ static int __addrconf_sysctl_register(struct net *net, char *dev_name,
struct inet6_dev *idev, struct ipv6_devconf *p)
{
int i, ifindex;
@@ -162095,10 +166668,10 @@ index 8f2e36f..720a68f 100644
table = kmemdup(addrconf_sysctl, sizeof(addrconf_sysctl), GFP_KERNEL);
diff --git a/net/ipv6/af_inet6.c b/net/ipv6/af_inet6.c
-index b454055..0ac9a2d 100644
+index 46ad699..2ce6cf3 100644
--- a/net/ipv6/af_inet6.c
+++ b/net/ipv6/af_inet6.c
-@@ -794,7 +794,7 @@ static int __net_init inet6_net_init(struct net *net)
+@@ -796,7 +796,7 @@ static int __net_init inet6_net_init(struct net *net)
net->ipv6.sysctl.idgen_retries = 3;
net->ipv6.sysctl.idgen_delay = 1 * HZ;
net->ipv6.sysctl.flowlabel_state_ranges = 0;
@@ -162108,10 +166681,10 @@ index b454055..0ac9a2d 100644
err = ipv6_init_mibs(net);
if (err)
diff --git a/net/ipv6/datagram.c b/net/ipv6/datagram.c
-index 37874e2..d5cd498 100644
+index 8616d17..da5b668 100644
--- a/net/ipv6/datagram.c
+++ b/net/ipv6/datagram.c
-@@ -1032,5 +1032,5 @@ void ip6_dgram_sock_seq_show(struct seq_file *seq, struct sock *sp,
+@@ -1034,5 +1034,5 @@ void ip6_dgram_sock_seq_show(struct seq_file *seq, struct sock *sp,
0,
sock_i_ino(sp),
atomic_read(&sp->sk_refcnt), sp,
@@ -162119,23 +166692,10 @@ index 37874e2..d5cd498 100644
+ atomic_read_unchecked(&sp->sk_drops));
}
diff --git a/net/ipv6/icmp.c b/net/ipv6/icmp.c
-index 7370ad2..7bbfa23 100644
+index 2772004..7bbfa23 100644
--- a/net/ipv6/icmp.c
+++ b/net/ipv6/icmp.c
-@@ -447,8 +447,10 @@ static void icmp6_send(struct sk_buff *skb, u8 type, u8 code, __u32 info,
-
- if (__ipv6_addr_needs_scope_id(addr_type))
- iif = skb->dev->ifindex;
-- else
-- iif = l3mdev_master_ifindex(skb_dst(skb)->dev);
-+ else {
-+ dst = skb_dst(skb);
-+ iif = l3mdev_master_ifindex(dst ? dst->dev : skb->dev);
-+ }
-
- /*
- * Must not send error if the source does not uniquely
-@@ -1073,7 +1075,7 @@ static struct ctl_table ipv6_icmp_table_template[] = {
+@@ -1075,7 +1075,7 @@ static struct ctl_table ipv6_icmp_table_template[] = {
struct ctl_table * __net_init ipv6_icmp_sysctl_init(struct net *net)
{
@@ -162145,10 +166705,10 @@ index 7370ad2..7bbfa23 100644
table = kmemdup(ipv6_icmp_table_template,
sizeof(ipv6_icmp_table_template),
diff --git a/net/ipv6/inet6_hashtables.c b/net/ipv6/inet6_hashtables.c
-index 00cf28a..4699aa3 100644
+index 02761c9..530bd3e 100644
--- a/net/ipv6/inet6_hashtables.c
+++ b/net/ipv6/inet6_hashtables.c
-@@ -178,7 +178,7 @@ struct sock *inet6_lookup(struct net *net, struct inet_hashinfo *hashinfo,
+@@ -179,7 +179,7 @@ struct sock *inet6_lookup(struct net *net, struct inet_hashinfo *hashinfo,
EXPORT_SYMBOL_GPL(inet6_lookup);
static int __inet6_check_established(struct inet_timewait_death_row *death_row,
@@ -162158,7 +166718,7 @@ index 00cf28a..4699aa3 100644
{
struct inet_hashinfo *hinfo = death_row->hashinfo;
diff --git a/net/ipv6/ip6_fib.c b/net/ipv6/ip6_fib.c
-index 771be1f..e592cb8 100644
+index ef54852..56699bb 100644
--- a/net/ipv6/ip6_fib.c
+++ b/net/ipv6/ip6_fib.c
@@ -98,9 +98,9 @@ static int fib6_new_sernum(struct net *net)
@@ -162174,7 +166734,7 @@ index 771be1f..e592cb8 100644
return new;
}
diff --git a/net/ipv6/ip6_gre.c b/net/ipv6/ip6_gre.c
-index edc3daa..c951634 100644
+index d7d6d3a..eaae042 100644
--- a/net/ipv6/ip6_gre.c
+++ b/net/ipv6/ip6_gre.c
@@ -71,8 +71,8 @@ struct ip6gre_net {
@@ -162216,10 +166776,10 @@ index edc3daa..c951634 100644
.maxtype = IFLA_GRE_MAX,
.policy = ip6gre_policy,
diff --git a/net/ipv6/ip6_tunnel.c b/net/ipv6/ip6_tunnel.c
-index da4e7b3..fd21a2d 100644
+index f95437f..9bca401 100644
--- a/net/ipv6/ip6_tunnel.c
+++ b/net/ipv6/ip6_tunnel.c
-@@ -80,7 +80,7 @@ static u32 HASH(const struct in6_addr *addr1, const struct in6_addr *addr2)
+@@ -81,7 +81,7 @@ static u32 HASH(const struct in6_addr *addr1, const struct in6_addr *addr2)
static int ip6_tnl_dev_init(struct net_device *dev);
static void ip6_tnl_dev_setup(struct net_device *dev);
@@ -162228,8 +166788,8 @@ index da4e7b3..fd21a2d 100644
static int ip6_tnl_net_id __read_mostly;
struct ip6_tnl_net {
-@@ -2005,7 +2005,7 @@ static const struct nla_policy ip6_tnl_policy[IFLA_IPTUN_MAX + 1] = {
- [IFLA_IPTUN_ENCAP_DPORT] = { .type = NLA_U16 },
+@@ -2093,7 +2093,7 @@ static const struct nla_policy ip6_tnl_policy[IFLA_IPTUN_MAX + 1] = {
+ [IFLA_IPTUN_COLLECT_METADATA] = { .type = NLA_FLAG },
};
-static struct rtnl_link_ops ip6_link_ops __read_mostly = {
@@ -162238,7 +166798,7 @@ index da4e7b3..fd21a2d 100644
.maxtype = IFLA_IPTUN_MAX,
.policy = ip6_tnl_policy,
diff --git a/net/ipv6/ip6_vti.c b/net/ipv6/ip6_vti.c
-index 5bd3afd..207e6a1 100644
+index c299c1e..b5fd20d 100644
--- a/net/ipv6/ip6_vti.c
+++ b/net/ipv6/ip6_vti.c
@@ -62,7 +62,7 @@ static u32 HASH(const struct in6_addr *addr1, const struct in6_addr *addr2)
@@ -162259,11 +166819,20 @@ index 5bd3afd..207e6a1 100644
.kind = "vti6",
.maxtype = IFLA_VTI_MAX,
.policy = vti6_policy,
+@@ -1161,7 +1161,7 @@ static int vti6_device_event(struct notifier_block *unused,
+ return NOTIFY_DONE;
+ }
+
+-static struct notifier_block vti6_notifier_block __read_mostly = {
++static struct notifier_block vti6_notifier_block = {
+ .notifier_call = vti6_device_event,
+ };
+
diff --git a/net/ipv6/ipv6_sockglue.c b/net/ipv6/ipv6_sockglue.c
-index 5330262..0335f4d 100644
+index 636ec56..03227c3 100644
--- a/net/ipv6/ipv6_sockglue.c
+++ b/net/ipv6/ipv6_sockglue.c
-@@ -1026,7 +1026,7 @@ static int do_ipv6_getsockopt(struct sock *sk, int level, int optname,
+@@ -1027,7 +1027,7 @@ static int do_ipv6_getsockopt(struct sock *sk, int level, int optname,
if (sk->sk_type != SOCK_STREAM)
return -ENOPROTOOPT;
@@ -162273,10 +166842,10 @@ index 5330262..0335f4d 100644
msg.msg_flags = flags;
diff --git a/net/ipv6/ndisc.c b/net/ipv6/ndisc.c
-index fe65cdc..4e70b99 100644
+index d8e6714..24cd49a 100644
--- a/net/ipv6/ndisc.c
+++ b/net/ipv6/ndisc.c
-@@ -683,7 +683,7 @@ static void ndisc_solicit(struct neighbour *neigh, struct sk_buff *skb)
+@@ -680,7 +680,7 @@ static void ndisc_solicit(struct neighbour *neigh, struct sk_buff *skb)
struct in6_addr mcaddr;
struct net_device *dev = neigh->dev;
struct in6_addr *target = (struct in6_addr *)&neigh->primary_key;
@@ -162286,7 +166855,7 @@ index fe65cdc..4e70b99 100644
if (skb && ipv6_chk_addr_and_flags(dev_net(dev), &ipv6_hdr(skb)->saddr,
dev, 1,
diff --git a/net/ipv6/netfilter/ip6_tables.c b/net/ipv6/netfilter/ip6_tables.c
-index 552fac2..32c56ad 100644
+index 55aacea..482ad2e 100644
--- a/net/ipv6/netfilter/ip6_tables.c
+++ b/net/ipv6/netfilter/ip6_tables.c
@@ -988,13 +988,13 @@ static int compat_table_info(const struct xt_table_info *info,
@@ -162333,7 +166902,7 @@ index 552fac2..32c56ad 100644
case IP6T_SO_GET_ENTRIES:
diff --git a/net/ipv6/netfilter/nf_conntrack_reasm.c b/net/ipv6/netfilter/nf_conntrack_reasm.c
-index e4347ae..c7654e7 100644
+index 9948b5c..95b3e7a 100644
--- a/net/ipv6/netfilter/nf_conntrack_reasm.c
+++ b/net/ipv6/netfilter/nf_conntrack_reasm.c
@@ -95,12 +95,11 @@ static struct ctl_table nf_ct_frag6_sysctl_table[] = {
@@ -162375,7 +166944,7 @@ index e4347ae..c7654e7 100644
return -ENOMEM;
}
diff --git a/net/ipv6/ping.c b/net/ipv6/ping.c
-index 0e983b6..655d90b 100644
+index 66e2d9d..fc296ed 100644
--- a/net/ipv6/ping.c
+++ b/net/ipv6/ping.c
@@ -250,6 +250,24 @@ static struct pernet_operations ping_v6_net_ops = {
@@ -162435,10 +167004,10 @@ index 0e983b6..655d90b 100644
inet6_unregister_protosw(&pingv6_protosw);
}
diff --git a/net/ipv6/proc.c b/net/ipv6/proc.c
-index 679253d0..d85dd97 100644
+index cc8e3ae..6572951 100644
--- a/net/ipv6/proc.c
+++ b/net/ipv6/proc.c
-@@ -151,7 +151,7 @@ static const struct snmp_mib snmp6_udplite6_list[] = {
+@@ -156,7 +156,7 @@ static const struct snmp_mib snmp6_udplite6_list[] = {
SNMP_MIB_SENTINEL
};
@@ -162447,7 +167016,7 @@ index 679253d0..d85dd97 100644
{
char name[32];
int i;
-@@ -168,14 +168,14 @@ static void snmp6_seq_show_icmpv6msg(struct seq_file *seq, atomic_long_t *smib)
+@@ -173,14 +173,14 @@ static void snmp6_seq_show_icmpv6msg(struct seq_file *seq, atomic_long_t *smib)
snprintf(name, sizeof(name), "Icmp6%s%s",
i & 0x100 ? "Out" : "In", p);
seq_printf(seq, "%-32s\t%lu\n", name,
@@ -162464,7 +167033,7 @@ index 679253d0..d85dd97 100644
if (!val)
continue;
snprintf(name, sizeof(name), "Icmp6%sType%u",
-@@ -188,7 +188,7 @@ static void snmp6_seq_show_icmpv6msg(struct seq_file *seq, atomic_long_t *smib)
+@@ -193,7 +193,7 @@ static void snmp6_seq_show_icmpv6msg(struct seq_file *seq, atomic_long_t *smib)
* or shared one (smib != NULL)
*/
static void snmp6_seq_show_item(struct seq_file *seq, void __percpu *pcpumib,
@@ -162472,17 +167041,17 @@ index 679253d0..d85dd97 100644
+ atomic_long_unchecked_t *smib,
const struct snmp_mib *itemlist)
{
- int i;
-@@ -197,7 +197,7 @@ static void snmp6_seq_show_item(struct seq_file *seq, void __percpu *pcpumib,
- for (i = 0; itemlist[i].name; i++) {
- val = pcpumib ?
- snmp_fold_field(pcpumib, itemlist[i].entry) :
-- atomic_long_read(smib + itemlist[i].entry);
-+ atomic_long_read_unchecked(smib + itemlist[i].entry);
- seq_printf(seq, "%-32s\t%lu\n", itemlist[i].name, val);
+ unsigned long buff[SNMP_MIB_MAX];
+@@ -209,7 +209,7 @@ static void snmp6_seq_show_item(struct seq_file *seq, void __percpu *pcpumib,
+ } else {
+ for (i = 0; itemlist[i].name; i++)
+ seq_printf(seq, "%-32s\t%lu\n", itemlist[i].name,
+- atomic_long_read(smib + itemlist[i].entry));
++ atomic_long_read_unchecked(smib + itemlist[i].entry));
}
}
-@@ -310,7 +310,7 @@ static int __net_init ipv6_proc_init_net(struct net *net)
+
+@@ -324,7 +324,7 @@ static int __net_init ipv6_proc_init_net(struct net *net)
if (!proc_create("snmp6", S_IRUGO, net->proc_net, &snmp6_seq_fops))
goto proc_snmp6_fail;
@@ -162492,7 +167061,7 @@ index 679253d0..d85dd97 100644
goto proc_dev_snmp6_fail;
return 0;
diff --git a/net/ipv6/raw.c b/net/ipv6/raw.c
-index 590dd1f..97e5bd1 100644
+index 869ffc7..6a811fe 100644
--- a/net/ipv6/raw.c
+++ b/net/ipv6/raw.c
@@ -389,7 +389,7 @@ static inline int rawv6_rcv_skb(struct sock *sk, struct sk_buff *skb)
@@ -162522,7 +167091,7 @@ index 590dd1f..97e5bd1 100644
kfree_skb(skb);
return NET_RX_DROP;
}
-@@ -609,7 +609,7 @@ out:
+@@ -613,7 +613,7 @@ static int rawv6_push_pending_frames(struct sock *sk, struct flowi6 *fl6,
return err;
}
@@ -162531,46 +167100,20 @@ index 590dd1f..97e5bd1 100644
struct flowi6 *fl6, struct dst_entry **dstp,
unsigned int flags)
{
-@@ -930,12 +930,15 @@ do_confirm:
- static int rawv6_seticmpfilter(struct sock *sk, int level, int optname,
- char __user *optval, int optlen)
- {
-+ struct icmp6_filter filter;
-+
- switch (optname) {
- case ICMPV6_FILTER:
- if (optlen > sizeof(struct icmp6_filter))
- optlen = sizeof(struct icmp6_filter);
-- if (copy_from_user(&raw6_sk(sk)->filter, optval, optlen))
-+ if (copy_from_user(&filter, optval, optlen))
- return -EFAULT;
-+ raw6_sk(sk)->filter = filter;
- return 0;
- default:
- return -ENOPROTOOPT;
-@@ -948,6 +951,7 @@ static int rawv6_geticmpfilter(struct sock *sk, int level, int optname,
- char __user *optval, int __user *optlen)
- {
- int len;
-+ struct icmp6_filter filter;
-
- switch (optname) {
- case ICMPV6_FILTER:
-@@ -959,7 +963,8 @@ static int rawv6_geticmpfilter(struct sock *sk, int level, int optname,
- len = sizeof(struct icmp6_filter);
- if (put_user(len, optlen))
- return -EFAULT;
-- if (copy_to_user(optval, &raw6_sk(sk)->filter, len))
-+ filter = raw6_sk(sk)->filter;
-+ if (len > sizeof filter || copy_to_user(optval, &filter, len))
- return -EFAULT;
- return 0;
- default:
+@@ -1257,6 +1257,8 @@ struct proto rawv6_prot = {
+ .hash = raw_hash_sk,
+ .unhash = raw_unhash_sk,
+ .obj_size = sizeof(struct raw6_sock),
++ .useroffset = offsetof(struct raw6_sock, filter),
++ .usersize = sizeof(((struct raw6_sock *)0)->filter),
+ .h.raw_hash = &raw_v6_hashinfo,
+ #ifdef CONFIG_COMPAT
+ .compat_setsockopt = compat_rawv6_setsockopt,
diff --git a/net/ipv6/reassembly.c b/net/ipv6/reassembly.c
-index 2160d5d..6816c42 100644
+index 3815e85..f6cb55b 100644
--- a/net/ipv6/reassembly.c
+++ b/net/ipv6/reassembly.c
-@@ -628,12 +628,11 @@ static struct ctl_table ip6_frags_ctl_table[] = {
+@@ -629,12 +629,11 @@ static struct ctl_table ip6_frags_ctl_table[] = {
static int __net_init ip6_frags_ns_sysctl_register(struct net *net)
{
@@ -162585,7 +167128,7 @@ index 2160d5d..6816c42 100644
if (!table)
goto err_alloc;
-@@ -647,9 +646,10 @@ static int __net_init ip6_frags_ns_sysctl_register(struct net *net)
+@@ -648,9 +647,10 @@ static int __net_init ip6_frags_ns_sysctl_register(struct net *net)
/* Don't export sysctls to unprivileged users */
if (net->user_ns != &init_user_ns)
table[0].procname = NULL;
@@ -162598,7 +167141,7 @@ index 2160d5d..6816c42 100644
if (!hdr)
goto err_reg;
-@@ -657,8 +657,7 @@ static int __net_init ip6_frags_ns_sysctl_register(struct net *net)
+@@ -658,8 +658,7 @@ static int __net_init ip6_frags_ns_sysctl_register(struct net *net)
return 0;
err_reg:
@@ -162609,10 +167152,10 @@ index 2160d5d..6816c42 100644
return -ENOMEM;
}
diff --git a/net/ipv6/route.c b/net/ipv6/route.c
-index 23153ac..08b47f9 100644
+index bff4460..4551e9a 100644
--- a/net/ipv6/route.c
+++ b/net/ipv6/route.c
-@@ -3573,7 +3573,7 @@ struct ctl_table ipv6_route_table_template[] = {
+@@ -3625,7 +3625,7 @@ struct ctl_table ipv6_route_table_template[] = {
struct ctl_table * __net_init ipv6_route_sysctl_init(struct net *net)
{
@@ -162622,7 +167165,7 @@ index 23153ac..08b47f9 100644
table = kmemdup(ipv6_route_table_template,
sizeof(ipv6_route_table_template),
diff --git a/net/ipv6/sit.c b/net/ipv6/sit.c
-index 182b6a9..4d37cba 100644
+index b1cdf80..18a97a9 100644
--- a/net/ipv6/sit.c
+++ b/net/ipv6/sit.c
@@ -74,7 +74,7 @@ static void ipip6_tunnel_setup(struct net_device *dev);
@@ -162657,7 +167200,7 @@ index 69c50e7..ec875fa 100644
struct ctl_table *ipv6_icmp_table;
int err;
diff --git a/net/ipv6/tcp_ipv6.c b/net/ipv6/tcp_ipv6.c
-index af6a09e..3dafd52 100644
+index b9f1fee..3e0f50f 100644
--- a/net/ipv6/tcp_ipv6.c
+++ b/net/ipv6/tcp_ipv6.c
@@ -101,6 +101,10 @@ static void inet6_sk_rx_dst_set(struct sock *sk, const struct sk_buff *skb)
@@ -162671,7 +167214,7 @@ index af6a09e..3dafd52 100644
static __u32 tcp_v6_init_sequence(const struct sk_buff *skb)
{
return secure_tcpv6_sequence_number(ipv6_hdr(skb)->daddr.s6_addr32,
-@@ -1299,6 +1303,9 @@ static int tcp_v6_do_rcv(struct sock *sk, struct sk_buff *skb)
+@@ -1300,6 +1304,9 @@ static int tcp_v6_do_rcv(struct sock *sk, struct sk_buff *skb)
return 0;
reset:
@@ -162681,7 +167224,7 @@ index af6a09e..3dafd52 100644
tcp_v6_send_reset(sk, skb);
discard:
if (opt_skb)
-@@ -1403,12 +1410,20 @@ lookup:
+@@ -1404,12 +1411,20 @@ static int tcp_v6_rcv(struct sk_buff *skb)
sk = __inet6_lookup_skb(&tcp_hashinfo, skb, __tcp_hdrlen(th),
th->source, th->dest, inet6_iif(skb),
&refcounted);
@@ -162704,7 +167247,7 @@ index af6a09e..3dafd52 100644
if (sk->sk_state == TCP_NEW_SYN_RECV) {
struct request_sock *req = inet_reqsk(sk);
-@@ -1500,6 +1515,10 @@ csum_error:
+@@ -1499,6 +1514,10 @@ static int tcp_v6_rcv(struct sk_buff *skb)
bad_packet:
__TCP_INC_STATS(net, TCP_MIB_INERRS);
} else {
@@ -162716,7 +167259,7 @@ index af6a09e..3dafd52 100644
}
diff --git a/net/ipv6/udp.c b/net/ipv6/udp.c
-index fa39ab8..580da9b 100644
+index e4a8000..ae30c92 100644
--- a/net/ipv6/udp.c
+++ b/net/ipv6/udp.c
@@ -78,6 +78,10 @@ static u32 udp6_ehashfn(const struct net *net,
@@ -162730,7 +167273,7 @@ index fa39ab8..580da9b 100644
static u32 udp6_portaddr_hash(const struct net *net,
const struct in6_addr *addr6,
unsigned int port)
-@@ -380,7 +384,7 @@ try_again:
+@@ -380,7 +384,7 @@ int udpv6_recvmsg(struct sock *sk, struct msghdr *msg, size_t len,
if (unlikely(err)) {
trace_kfree_skb(skb, udpv6_recvmsg);
if (!peeked) {
@@ -162739,7 +167282,7 @@ index fa39ab8..580da9b 100644
if (is_udp4)
UDP_INC_STATS(sock_net(sk), UDP_MIB_INERRORS,
is_udplite);
-@@ -647,7 +651,7 @@ csum_error:
+@@ -647,7 +651,7 @@ int udpv6_queue_rcv_skb(struct sock *sk, struct sk_buff *skb)
__UDP6_INC_STATS(sock_net(sk), UDP_MIB_CSUMERRORS, is_udplite);
drop:
__UDP6_INC_STATS(sock_net(sk), UDP_MIB_INERRORS, is_udplite);
@@ -162748,7 +167291,7 @@ index fa39ab8..580da9b 100644
kfree_skb(skb);
return -1;
}
-@@ -728,7 +732,7 @@ start_lookup:
+@@ -728,7 +732,7 @@ static int __udp6_lib_mcast_deliver(struct net *net, struct sk_buff *skb,
}
nskb = skb_clone(skb, GFP_ATOMIC);
if (unlikely(!nskb)) {
@@ -162794,7 +167337,7 @@ index 4e34410..232827a 100644
struct ipv6hdr *iph;
u8 *prevhdr;
diff --git a/net/ipv6/xfrm6_policy.c b/net/ipv6/xfrm6_policy.c
-index 70a86ad..19ab7b0 100644
+index e0f71c0..9b71aad 100644
--- a/net/ipv6/xfrm6_policy.c
+++ b/net/ipv6/xfrm6_policy.c
@@ -216,11 +216,11 @@ _decode_session6(struct sk_buff *skb, struct flowi *fl, int reverse)
@@ -163514,7 +168057,7 @@ index f2280f7..c0a006f 100644
struct irlap_cb *self = (struct irlap_cb *) data;
diff --git a/net/iucv/af_iucv.c b/net/iucv/af_iucv.c
-index 02b45a8..1c09f92 100644
+index 91cbbf1..f2fd581 100644
--- a/net/iucv/af_iucv.c
+++ b/net/iucv/af_iucv.c
@@ -688,10 +688,10 @@ static void __iucv_auto_name(struct iucv_sock *iucv)
@@ -163530,7 +168073,7 @@ index 02b45a8..1c09f92 100644
}
memcpy(iucv->src_name, name, 8);
}
-@@ -1350,7 +1350,7 @@ static int iucv_sock_recvmsg(struct socket *sock, struct msghdr *msg,
+@@ -1353,7 +1353,7 @@ static int iucv_sock_recvmsg(struct socket *sock, struct msghdr *msg,
unsigned int copied, rlen;
struct sk_buff *skb, *rskb, *cskb;
int err = 0;
@@ -163539,7 +168082,7 @@ index 02b45a8..1c09f92 100644
if ((sk->sk_state == IUCV_DISCONN) &&
skb_queue_empty(&iucv->backlog_skb_q) &&
-@@ -1394,9 +1394,8 @@ static int iucv_sock_recvmsg(struct socket *sock, struct msghdr *msg,
+@@ -1397,9 +1397,8 @@ static int iucv_sock_recvmsg(struct socket *sock, struct msghdr *msg,
/* create control message to store iucv msg target class:
* get the trgcls from the control buffer of the skb due to
* fragmentation of original iucv message. */
@@ -163582,7 +168125,7 @@ index f9c9ecb..060751e 100644
return res;
}
diff --git a/net/l2tp/l2tp_eth.c b/net/l2tp/l2tp_eth.c
-index 57fc5a4..310e75b 100644
+index 965f7e3..daa74100 100644
--- a/net/l2tp/l2tp_eth.c
+++ b/net/l2tp/l2tp_eth.c
@@ -42,12 +42,12 @@ struct l2tp_eth {
@@ -163667,10 +168210,10 @@ index 57fc5a4..310e75b 100644
}
diff --git a/net/l2tp/l2tp_ip.c b/net/l2tp/l2tp_ip.c
-index d0e906d..a6abcf4 100644
+index 8938b6b..bd9ca60 100644
--- a/net/l2tp/l2tp_ip.c
+++ b/net/l2tp/l2tp_ip.c
-@@ -611,7 +611,7 @@ static struct inet_protosw l2tp_ip_protosw = {
+@@ -616,7 +616,7 @@ static struct inet_protosw l2tp_ip_protosw = {
.ops = &l2tp_ip_ops,
};
@@ -163680,10 +168223,10 @@ index d0e906d..a6abcf4 100644
.netns_ok = 1,
};
diff --git a/net/l2tp/l2tp_ip6.c b/net/l2tp/l2tp_ip6.c
-index b9c6a41..95592d6 100644
+index aa821cb..045ff78 100644
--- a/net/l2tp/l2tp_ip6.c
+++ b/net/l2tp/l2tp_ip6.c
-@@ -772,7 +772,7 @@ static struct inet_protosw l2tp_ip6_protosw = {
+@@ -777,7 +777,7 @@ static struct inet_protosw l2tp_ip6_protosw = {
.ops = &l2tp_ip6_ops,
};
@@ -163705,297 +168248,11 @@ index 29c509c..c19322a 100644
if (!llc_proc_dir)
goto out;
-diff --git a/net/mac80211/aes_ccm.c b/net/mac80211/aes_ccm.c
-index 7663c28..a4e0d59 100644
---- a/net/mac80211/aes_ccm.c
-+++ b/net/mac80211/aes_ccm.c
-@@ -18,21 +18,24 @@
- #include "key.h"
- #include "aes_ccm.h"
-
--void ieee80211_aes_ccm_encrypt(struct crypto_aead *tfm, u8 *b_0, u8 *aad,
-- u8 *data, size_t data_len, u8 *mic,
-- size_t mic_len)
-+int ieee80211_aes_ccm_encrypt(struct crypto_aead *tfm, u8 *b_0, u8 *aad,
-+ u8 *data, size_t data_len, u8 *mic,
-+ size_t mic_len)
- {
- struct scatterlist sg[3];
-+ struct aead_request *aead_req;
-+ int reqsize = sizeof(*aead_req) + crypto_aead_reqsize(tfm);
-+ u8 *__aad;
-
-- char aead_req_data[sizeof(struct aead_request) +
-- crypto_aead_reqsize(tfm)]
-- __aligned(__alignof__(struct aead_request));
-- struct aead_request *aead_req = (void *) aead_req_data;
-+ aead_req = kzalloc(reqsize + CCM_AAD_LEN, GFP_ATOMIC);
-+ if (!aead_req)
-+ return -ENOMEM;
-
-- memset(aead_req, 0, sizeof(aead_req_data));
-+ __aad = (u8 *)aead_req + reqsize;
-+ memcpy(__aad, aad, CCM_AAD_LEN);
-
- sg_init_table(sg, 3);
-- sg_set_buf(&sg[0], &aad[2], be16_to_cpup((__be16 *)aad));
-+ sg_set_buf(&sg[0], &__aad[2], be16_to_cpup((__be16 *)__aad));
- sg_set_buf(&sg[1], data, data_len);
- sg_set_buf(&sg[2], mic, mic_len);
-
-@@ -41,6 +44,9 @@ void ieee80211_aes_ccm_encrypt(struct crypto_aead *tfm, u8 *b_0, u8 *aad,
- aead_request_set_ad(aead_req, sg[0].length);
-
- crypto_aead_encrypt(aead_req);
-+ kzfree(aead_req);
-+
-+ return 0;
- }
-
- int ieee80211_aes_ccm_decrypt(struct crypto_aead *tfm, u8 *b_0, u8 *aad,
-@@ -48,18 +54,23 @@ int ieee80211_aes_ccm_decrypt(struct crypto_aead *tfm, u8 *b_0, u8 *aad,
- size_t mic_len)
- {
- struct scatterlist sg[3];
-- char aead_req_data[sizeof(struct aead_request) +
-- crypto_aead_reqsize(tfm)]
-- __aligned(__alignof__(struct aead_request));
-- struct aead_request *aead_req = (void *) aead_req_data;
-+ struct aead_request *aead_req;
-+ int reqsize = sizeof(*aead_req) + crypto_aead_reqsize(tfm);
-+ u8 *__aad;
-+ int err;
-
- if (data_len == 0)
- return -EINVAL;
-
-- memset(aead_req, 0, sizeof(aead_req_data));
-+ aead_req = kzalloc(reqsize + CCM_AAD_LEN, GFP_ATOMIC);
-+ if (!aead_req)
-+ return -ENOMEM;
-+
-+ __aad = (u8 *)aead_req + reqsize;
-+ memcpy(__aad, aad, CCM_AAD_LEN);
-
- sg_init_table(sg, 3);
-- sg_set_buf(&sg[0], &aad[2], be16_to_cpup((__be16 *)aad));
-+ sg_set_buf(&sg[0], &__aad[2], be16_to_cpup((__be16 *)__aad));
- sg_set_buf(&sg[1], data, data_len);
- sg_set_buf(&sg[2], mic, mic_len);
-
-@@ -67,7 +78,10 @@ int ieee80211_aes_ccm_decrypt(struct crypto_aead *tfm, u8 *b_0, u8 *aad,
- aead_request_set_crypt(aead_req, sg, sg, data_len + mic_len, b_0);
- aead_request_set_ad(aead_req, sg[0].length);
-
-- return crypto_aead_decrypt(aead_req);
-+ err = crypto_aead_decrypt(aead_req);
-+ kzfree(aead_req);
-+
-+ return err;
- }
-
- struct crypto_aead *ieee80211_aes_key_setup_encrypt(const u8 key[],
-diff --git a/net/mac80211/aes_ccm.h b/net/mac80211/aes_ccm.h
-index 6a73d1e..fcd3254 100644
---- a/net/mac80211/aes_ccm.h
-+++ b/net/mac80211/aes_ccm.h
-@@ -12,12 +12,14 @@
-
- #include <linux/crypto.h>
-
-+#define CCM_AAD_LEN 32
-+
- struct crypto_aead *ieee80211_aes_key_setup_encrypt(const u8 key[],
- size_t key_len,
- size_t mic_len);
--void ieee80211_aes_ccm_encrypt(struct crypto_aead *tfm, u8 *b_0, u8 *aad,
-- u8 *data, size_t data_len, u8 *mic,
-- size_t mic_len);
-+int ieee80211_aes_ccm_encrypt(struct crypto_aead *tfm, u8 *b_0, u8 *aad,
-+ u8 *data, size_t data_len, u8 *mic,
-+ size_t mic_len);
- int ieee80211_aes_ccm_decrypt(struct crypto_aead *tfm, u8 *b_0, u8 *aad,
- u8 *data, size_t data_len, u8 *mic,
- size_t mic_len);
-diff --git a/net/mac80211/aes_gcm.c b/net/mac80211/aes_gcm.c
-index 3afe361f..8a4397c 100644
---- a/net/mac80211/aes_gcm.c
-+++ b/net/mac80211/aes_gcm.c
-@@ -15,20 +15,23 @@
- #include "key.h"
- #include "aes_gcm.h"
-
--void ieee80211_aes_gcm_encrypt(struct crypto_aead *tfm, u8 *j_0, u8 *aad,
-- u8 *data, size_t data_len, u8 *mic)
-+int ieee80211_aes_gcm_encrypt(struct crypto_aead *tfm, u8 *j_0, u8 *aad,
-+ u8 *data, size_t data_len, u8 *mic)
- {
- struct scatterlist sg[3];
-+ struct aead_request *aead_req;
-+ int reqsize = sizeof(*aead_req) + crypto_aead_reqsize(tfm);
-+ u8 *__aad;
-
-- char aead_req_data[sizeof(struct aead_request) +
-- crypto_aead_reqsize(tfm)]
-- __aligned(__alignof__(struct aead_request));
-- struct aead_request *aead_req = (void *)aead_req_data;
-+ aead_req = kzalloc(reqsize + GCM_AAD_LEN, GFP_ATOMIC);
-+ if (!aead_req)
-+ return -ENOMEM;
-
-- memset(aead_req, 0, sizeof(aead_req_data));
-+ __aad = (u8 *)aead_req + reqsize;
-+ memcpy(__aad, aad, GCM_AAD_LEN);
-
- sg_init_table(sg, 3);
-- sg_set_buf(&sg[0], &aad[2], be16_to_cpup((__be16 *)aad));
-+ sg_set_buf(&sg[0], &__aad[2], be16_to_cpup((__be16 *)__aad));
- sg_set_buf(&sg[1], data, data_len);
- sg_set_buf(&sg[2], mic, IEEE80211_GCMP_MIC_LEN);
-
-@@ -37,24 +40,31 @@ void ieee80211_aes_gcm_encrypt(struct crypto_aead *tfm, u8 *j_0, u8 *aad,
- aead_request_set_ad(aead_req, sg[0].length);
-
- crypto_aead_encrypt(aead_req);
-+ kzfree(aead_req);
-+ return 0;
- }
-
- int ieee80211_aes_gcm_decrypt(struct crypto_aead *tfm, u8 *j_0, u8 *aad,
- u8 *data, size_t data_len, u8 *mic)
- {
- struct scatterlist sg[3];
-- char aead_req_data[sizeof(struct aead_request) +
-- crypto_aead_reqsize(tfm)]
-- __aligned(__alignof__(struct aead_request));
-- struct aead_request *aead_req = (void *)aead_req_data;
-+ struct aead_request *aead_req;
-+ int reqsize = sizeof(*aead_req) + crypto_aead_reqsize(tfm);
-+ u8 *__aad;
-+ int err;
-
- if (data_len == 0)
- return -EINVAL;
-
-- memset(aead_req, 0, sizeof(aead_req_data));
-+ aead_req = kzalloc(reqsize + GCM_AAD_LEN, GFP_ATOMIC);
-+ if (!aead_req)
-+ return -ENOMEM;
-+
-+ __aad = (u8 *)aead_req + reqsize;
-+ memcpy(__aad, aad, GCM_AAD_LEN);
-
- sg_init_table(sg, 3);
-- sg_set_buf(&sg[0], &aad[2], be16_to_cpup((__be16 *)aad));
-+ sg_set_buf(&sg[0], &__aad[2], be16_to_cpup((__be16 *)__aad));
- sg_set_buf(&sg[1], data, data_len);
- sg_set_buf(&sg[2], mic, IEEE80211_GCMP_MIC_LEN);
-
-@@ -63,7 +73,10 @@ int ieee80211_aes_gcm_decrypt(struct crypto_aead *tfm, u8 *j_0, u8 *aad,
- data_len + IEEE80211_GCMP_MIC_LEN, j_0);
- aead_request_set_ad(aead_req, sg[0].length);
-
-- return crypto_aead_decrypt(aead_req);
-+ err = crypto_aead_decrypt(aead_req);
-+ kzfree(aead_req);
-+
-+ return err;
- }
-
- struct crypto_aead *ieee80211_aes_gcm_key_setup_encrypt(const u8 key[],
-diff --git a/net/mac80211/aes_gcm.h b/net/mac80211/aes_gcm.h
-index 1347fda..55aed53 100644
---- a/net/mac80211/aes_gcm.h
-+++ b/net/mac80211/aes_gcm.h
-@@ -11,8 +11,10 @@
-
- #include <linux/crypto.h>
-
--void ieee80211_aes_gcm_encrypt(struct crypto_aead *tfm, u8 *j_0, u8 *aad,
-- u8 *data, size_t data_len, u8 *mic);
-+#define GCM_AAD_LEN 32
-+
-+int ieee80211_aes_gcm_encrypt(struct crypto_aead *tfm, u8 *j_0, u8 *aad,
-+ u8 *data, size_t data_len, u8 *mic);
- int ieee80211_aes_gcm_decrypt(struct crypto_aead *tfm, u8 *j_0, u8 *aad,
- u8 *data, size_t data_len, u8 *mic);
- struct crypto_aead *ieee80211_aes_gcm_key_setup_encrypt(const u8 key[],
-diff --git a/net/mac80211/aes_gmac.c b/net/mac80211/aes_gmac.c
-index 3ddd927..bd72a86 100644
---- a/net/mac80211/aes_gmac.c
-+++ b/net/mac80211/aes_gmac.c
-@@ -17,28 +17,27 @@
- #include "key.h"
- #include "aes_gmac.h"
-
--#define GMAC_MIC_LEN 16
--#define GMAC_NONCE_LEN 12
--#define AAD_LEN 20
--
- int ieee80211_aes_gmac(struct crypto_aead *tfm, const u8 *aad, u8 *nonce,
- const u8 *data, size_t data_len, u8 *mic)
- {
- struct scatterlist sg[4];
-- char aead_req_data[sizeof(struct aead_request) +
-- crypto_aead_reqsize(tfm)]
-- __aligned(__alignof__(struct aead_request));
-- struct aead_request *aead_req = (void *)aead_req_data;
-- u8 zero[GMAC_MIC_LEN], iv[AES_BLOCK_SIZE];
-+ u8 *zero, *__aad, iv[AES_BLOCK_SIZE];
-+ struct aead_request *aead_req;
-+ int reqsize = sizeof(*aead_req) + crypto_aead_reqsize(tfm);
-
- if (data_len < GMAC_MIC_LEN)
- return -EINVAL;
-
-- memset(aead_req, 0, sizeof(aead_req_data));
-+ aead_req = kzalloc(reqsize + GMAC_MIC_LEN + GMAC_AAD_LEN, GFP_ATOMIC);
-+ if (!aead_req)
-+ return -ENOMEM;
-+
-+ zero = (u8 *)aead_req + reqsize;
-+ __aad = zero + GMAC_MIC_LEN;
-+ memcpy(__aad, aad, GMAC_AAD_LEN);
-
-- memset(zero, 0, GMAC_MIC_LEN);
- sg_init_table(sg, 4);
-- sg_set_buf(&sg[0], aad, AAD_LEN);
-+ sg_set_buf(&sg[0], __aad, GMAC_AAD_LEN);
- sg_set_buf(&sg[1], data, data_len - GMAC_MIC_LEN);
- sg_set_buf(&sg[2], zero, GMAC_MIC_LEN);
- sg_set_buf(&sg[3], mic, GMAC_MIC_LEN);
-@@ -49,9 +48,10 @@ int ieee80211_aes_gmac(struct crypto_aead *tfm, const u8 *aad, u8 *nonce,
-
- aead_request_set_tfm(aead_req, tfm);
- aead_request_set_crypt(aead_req, sg, sg, 0, iv);
-- aead_request_set_ad(aead_req, AAD_LEN + data_len);
-+ aead_request_set_ad(aead_req, GMAC_AAD_LEN + data_len);
-
- crypto_aead_encrypt(aead_req);
-+ kzfree(aead_req);
-
- return 0;
- }
-diff --git a/net/mac80211/aes_gmac.h b/net/mac80211/aes_gmac.h
-index d328204..32e6442 100644
---- a/net/mac80211/aes_gmac.h
-+++ b/net/mac80211/aes_gmac.h
-@@ -11,6 +11,10 @@
-
- #include <linux/crypto.h>
-
-+#define GMAC_AAD_LEN 20
-+#define GMAC_MIC_LEN 16
-+#define GMAC_NONCE_LEN 12
-+
- struct crypto_aead *ieee80211_aes_gmac_key_setup(const u8 key[],
- size_t key_len);
- int ieee80211_aes_gmac(struct crypto_aead *tfm, const u8 *aad, u8 *nonce,
diff --git a/net/mac80211/cfg.c b/net/mac80211/cfg.c
-index 543b1d4..bead45d 100644
+index fd6541f..d2ec64a 100644
--- a/net/mac80211/cfg.c
+++ b/net/mac80211/cfg.c
-@@ -341,7 +341,7 @@ static int ieee80211_get_key(struct wiphy *wiphy, struct net_device *dev,
+@@ -507,7 +507,7 @@ static int ieee80211_get_key(struct wiphy *wiphy, struct net_device *dev,
switch (key->conf.cipher) {
case WLAN_CIPHER_SUITE_TKIP:
@@ -164004,7 +168261,7 @@ index 543b1d4..bead45d 100644
iv32 = TKIP_PN_TO_IV32(pn64);
iv16 = TKIP_PN_TO_IV16(pn64);
-@@ -381,7 +381,7 @@ static int ieee80211_get_key(struct wiphy *wiphy, struct net_device *dev,
+@@ -547,7 +547,7 @@ static int ieee80211_get_key(struct wiphy *wiphy, struct net_device *dev,
drv_get_key_seq(sdata->local, key, &kseq);
memcpy(seq, kseq.ccmp.pn, 6);
} else {
@@ -164013,7 +168270,7 @@ index 543b1d4..bead45d 100644
seq[0] = pn64;
seq[1] = pn64 >> 8;
seq[2] = pn64 >> 16;
-@@ -543,7 +543,7 @@ static int ieee80211_set_monitor_channel(struct wiphy *wiphy,
+@@ -709,7 +709,7 @@ static int ieee80211_set_monitor_channel(struct wiphy *wiphy,
ret = ieee80211_vif_use_channel(sdata, chandef,
IEEE80211_CHANCTX_EXCLUSIVE);
}
@@ -164022,7 +168279,7 @@ index 543b1d4..bead45d 100644
local->_oper_chandef = *chandef;
ieee80211_hw_config(local, 0);
}
-@@ -3074,7 +3074,7 @@ static void ieee80211_mgmt_frame_register(struct wiphy *wiphy,
+@@ -3237,7 +3237,7 @@ static void ieee80211_mgmt_frame_register(struct wiphy *wiphy,
sdata->vif.probe_req_reg--;
}
@@ -164031,7 +168288,7 @@ index 543b1d4..bead45d 100644
break;
if (sdata->vif.probe_req_reg == 1)
-@@ -3229,8 +3229,8 @@ static int ieee80211_cfg_get_channel(struct wiphy *wiphy,
+@@ -3392,8 +3392,8 @@ static int ieee80211_cfg_get_channel(struct wiphy *wiphy,
if (chanctx_conf) {
*chandef = sdata->vif.bss_conf.chandef;
ret = 0;
@@ -164043,10 +168300,10 @@ index 543b1d4..bead45d 100644
if (local->use_chanctx)
*chandef = local->monitor_chandef;
diff --git a/net/mac80211/debugfs.c b/net/mac80211/debugfs.c
-index 2906c10..65d1f44 100644
+index f56e2f4..d1d756e 100644
--- a/net/mac80211/debugfs.c
+++ b/net/mac80211/debugfs.c
-@@ -263,7 +263,7 @@ static const struct file_operations reset_ops = {
+@@ -170,7 +170,7 @@ static const struct file_operations reset_ops = {
};
#endif
@@ -164087,7 +168344,7 @@ index a2ef95f..5adf27d 100644
(u8)(pn >> 40), (u8)(pn >> 32), (u8)(pn >> 24),
(u8)(pn >> 16), (u8)(pn >> 8), (u8)pn);
diff --git a/net/mac80211/ieee80211_i.h b/net/mac80211/ieee80211_i.h
-index f56d342..6c01d5d 100644
+index 34c2add..322c6a3 100644
--- a/net/mac80211/ieee80211_i.h
+++ b/net/mac80211/ieee80211_i.h
@@ -31,6 +31,7 @@
@@ -164098,7 +168355,7 @@ index f56d342..6c01d5d 100644
#include "key.h"
#include "sta_info.h"
#include "debug.h"
-@@ -1127,7 +1128,7 @@ struct ieee80211_local {
+@@ -1151,7 +1152,7 @@ struct ieee80211_local {
/* also used to protect ampdu_ac_queue and amdpu_ac_stop_refcnt */
spinlock_t queue_stop_reason_lock;
@@ -164108,10 +168365,10 @@ index f56d342..6c01d5d 100644
/* number of interfaces with corresponding FIF_ flags */
int fif_fcsfail, fif_plcpfail, fif_control, fif_other_bss, fif_pspoll,
diff --git a/net/mac80211/iface.c b/net/mac80211/iface.c
-index b123a9e..945cb81 100644
+index 638ec07..706e042 100644
--- a/net/mac80211/iface.c
+++ b/net/mac80211/iface.c
-@@ -551,7 +551,7 @@ int ieee80211_do_open(struct wireless_dev *wdev, bool coming_up)
+@@ -560,7 +560,7 @@ int ieee80211_do_open(struct wireless_dev *wdev, bool coming_up)
break;
}
@@ -164120,7 +168377,7 @@ index b123a9e..945cb81 100644
res = drv_start(local);
if (res)
goto err_del_bss;
-@@ -598,7 +598,7 @@ int ieee80211_do_open(struct wireless_dev *wdev, bool coming_up)
+@@ -607,7 +607,7 @@ int ieee80211_do_open(struct wireless_dev *wdev, bool coming_up)
res = drv_add_interface(local, sdata);
if (res)
goto err_stop;
@@ -164129,7 +168386,7 @@ index b123a9e..945cb81 100644
res = ieee80211_add_virtual_monitor(local);
if (res)
goto err_stop;
-@@ -707,7 +707,7 @@ int ieee80211_do_open(struct wireless_dev *wdev, bool coming_up)
+@@ -718,7 +718,7 @@ int ieee80211_do_open(struct wireless_dev *wdev, bool coming_up)
atomic_inc(&local->iff_allmultis);
if (coming_up)
@@ -164138,7 +168395,7 @@ index b123a9e..945cb81 100644
if (hw_reconf_flags)
ieee80211_hw_config(local, hw_reconf_flags);
-@@ -745,7 +745,7 @@ int ieee80211_do_open(struct wireless_dev *wdev, bool coming_up)
+@@ -756,7 +756,7 @@ int ieee80211_do_open(struct wireless_dev *wdev, bool coming_up)
err_del_interface:
drv_remove_interface(local, sdata);
err_stop:
@@ -164147,7 +168404,7 @@ index b123a9e..945cb81 100644
drv_stop(local);
err_del_bss:
sdata->bss = NULL;
-@@ -913,7 +913,7 @@ static void ieee80211_do_stop(struct ieee80211_sub_if_data *sdata,
+@@ -925,7 +925,7 @@ static void ieee80211_do_stop(struct ieee80211_sub_if_data *sdata,
}
if (going_down)
@@ -164156,7 +168413,7 @@ index b123a9e..945cb81 100644
switch (sdata->vif.type) {
case NL80211_IFTYPE_AP_VLAN:
-@@ -983,7 +983,7 @@ static void ieee80211_do_stop(struct ieee80211_sub_if_data *sdata,
+@@ -1007,7 +1007,7 @@ static void ieee80211_do_stop(struct ieee80211_sub_if_data *sdata,
spin_unlock_bh(&fq->lock);
}
@@ -164165,7 +168422,7 @@ index b123a9e..945cb81 100644
ieee80211_clear_tx_pending(local);
/*
-@@ -1026,7 +1026,7 @@ static void ieee80211_do_stop(struct ieee80211_sub_if_data *sdata,
+@@ -1050,7 +1050,7 @@ static void ieee80211_do_stop(struct ieee80211_sub_if_data *sdata,
if (cancel_scan)
flush_delayed_work(&local->scan_work);
@@ -164174,7 +168431,7 @@ index b123a9e..945cb81 100644
ieee80211_stop_device(local);
/* no reconfiguring after stop! */
-@@ -1037,7 +1037,7 @@ static void ieee80211_do_stop(struct ieee80211_sub_if_data *sdata,
+@@ -1061,7 +1061,7 @@ static void ieee80211_do_stop(struct ieee80211_sub_if_data *sdata,
ieee80211_configure_filter(local);
ieee80211_hw_config(local, hw_reconf_flags);
@@ -164183,7 +168440,7 @@ index b123a9e..945cb81 100644
ieee80211_add_virtual_monitor(local);
}
-@@ -1919,8 +1919,8 @@ void ieee80211_remove_interfaces(struct ieee80211_local *local)
+@@ -1948,8 +1948,8 @@ void ieee80211_remove_interfaces(struct ieee80211_local *local)
*/
cfg80211_shutdown_all_interfaces(local->hw.wiphy);
@@ -164195,7 +168452,7 @@ index b123a9e..945cb81 100644
mutex_lock(&local->iflist_mtx);
list_for_each_entry_safe(sdata, tmp, &local->interfaces, list) {
diff --git a/net/mac80211/main.c b/net/mac80211/main.c
-index d00ea9b..3f2e7f6 100644
+index 1075ac2..0bd82e4 100644
--- a/net/mac80211/main.c
+++ b/net/mac80211/main.c
@@ -170,7 +170,7 @@ int ieee80211_hw_config(struct ieee80211_local *local, u32 changed)
@@ -164208,7 +168465,7 @@ index d00ea9b..3f2e7f6 100644
/*
* Goal:
diff --git a/net/mac80211/pm.c b/net/mac80211/pm.c
-index 00a43a7..ab6deef 100644
+index 28a3a09..fa99879 100644
--- a/net/mac80211/pm.c
+++ b/net/mac80211/pm.c
@@ -19,7 +19,7 @@ int __ieee80211_suspend(struct ieee80211_hw *hw, struct cfg80211_wowlan *wowlan)
@@ -164220,15 +168477,6 @@ index 00a43a7..ab6deef 100644
goto suspend;
ieee80211_scan_cancel(local);
-@@ -178,7 +178,7 @@ int __ieee80211_suspend(struct ieee80211_hw *hw, struct cfg80211_wowlan *wowlan)
- WARN_ON(!list_empty(&local->chanctx_list));
-
- /* stop hardware - this must stop RX */
-- if (local->open_count)
-+ if (local_read(&local->open_count))
- ieee80211_stop_device(local);
-
- suspend:
diff --git a/net/mac80211/rate.c b/net/mac80211/rate.c
index 206698b..847e610 100644
--- a/net/mac80211/rate.c
@@ -164243,10 +168491,10 @@ index 206698b..847e610 100644
if (ieee80211_hw_check(&local->hw, HAS_RATE_CONTROL)) {
diff --git a/net/mac80211/sta_info.c b/net/mac80211/sta_info.c
-index aa58df8..4db13c9 100644
+index 8e05032..504fff9 100644
--- a/net/mac80211/sta_info.c
+++ b/net/mac80211/sta_info.c
-@@ -361,7 +361,7 @@ struct sta_info *sta_info_alloc(struct ieee80211_sub_if_data *sdata,
+@@ -362,7 +362,7 @@ struct sta_info *sta_info_alloc(struct ieee80211_sub_if_data *sdata,
int size = sizeof(struct txq_info) +
ALIGN(hw->txq_data_size, sizeof(void *));
@@ -164256,23 +168504,23 @@ index aa58df8..4db13c9 100644
goto free;
diff --git a/net/mac80211/tx.c b/net/mac80211/tx.c
-index 18b285e..20a4d55 100644
+index dd190ff..c291826 100644
--- a/net/mac80211/tx.c
+++ b/net/mac80211/tx.c
-@@ -3324,7 +3324,7 @@ static bool ieee80211_xmit_fast(struct ieee80211_sub_if_data *sdata,
+@@ -3240,7 +3240,7 @@ static void ieee80211_xmit_fast_finish(struct ieee80211_sub_if_data *sdata,
case WLAN_CIPHER_SUITE_CCMP_256:
case WLAN_CIPHER_SUITE_GCMP:
case WLAN_CIPHER_SUITE_GCMP_256:
-- pn = atomic64_inc_return(&fast_tx->key->conf.tx_pn);
-+ pn = atomic64_inc_return_unchecked(&fast_tx->key->conf.tx_pn);
+- pn = atomic64_inc_return(&key->conf.tx_pn);
++ pn = atomic64_inc_return_unchecked(&key->conf.tx_pn);
crypto_hdr[0] = pn;
crypto_hdr[1] = pn >> 8;
crypto_hdr[4] = pn >> 16;
diff --git a/net/mac80211/util.c b/net/mac80211/util.c
-index 42bf0b6..8dcf0b2 100644
+index 545c79a..5be464c 100644
--- a/net/mac80211/util.c
+++ b/net/mac80211/util.c
-@@ -1762,7 +1762,7 @@ int ieee80211_reconfig(struct ieee80211_local *local)
+@@ -1803,7 +1803,7 @@ int ieee80211_reconfig(struct ieee80211_local *local)
bool suspended = local->suspended;
/* nothing to do if HW shouldn't run */
@@ -164281,7 +168529,7 @@ index 42bf0b6..8dcf0b2 100644
goto wake_up;
#ifdef CONFIG_PM
-@@ -2068,7 +2068,7 @@ int ieee80211_reconfig(struct ieee80211_local *local)
+@@ -2116,7 +2116,7 @@ int ieee80211_reconfig(struct ieee80211_local *local)
mutex_unlock(&local->mtx);
}
@@ -164290,7 +168538,7 @@ index 42bf0b6..8dcf0b2 100644
ieee80211_add_virtual_monitor(local);
/*
-@@ -2102,7 +2102,7 @@ int ieee80211_reconfig(struct ieee80211_local *local)
+@@ -2150,7 +2150,7 @@ int ieee80211_reconfig(struct ieee80211_local *local)
* If this is for hw restart things are still running.
* We may want to change that later, however.
*/
@@ -164299,7 +168547,7 @@ index 42bf0b6..8dcf0b2 100644
drv_reconfig_complete(local, IEEE80211_RECONFIG_TYPE_RESTART);
if (!suspended)
-@@ -2116,7 +2116,7 @@ int ieee80211_reconfig(struct ieee80211_local *local)
+@@ -2164,7 +2164,7 @@ int ieee80211_reconfig(struct ieee80211_local *local)
ieee80211_flush_completed_scan(local, false);
@@ -164309,7 +168557,7 @@ index 42bf0b6..8dcf0b2 100644
list_for_each_entry(sdata, &local->interfaces, list) {
diff --git a/net/mac80211/wpa.c b/net/mac80211/wpa.c
-index b48c1e1..36ee4c2 100644
+index 42ce9bd..36ee4c2 100644
--- a/net/mac80211/wpa.c
+++ b/net/mac80211/wpa.c
@@ -223,7 +223,7 @@ static int tkip_encrypt_skb(struct ieee80211_tx_data *tx, struct sk_buff *skb)
@@ -164321,15 +168569,6 @@ index b48c1e1..36ee4c2 100644
pos = ieee80211_tkip_add_iv(pos, &key->conf, pn);
/* hwaccel - with software IV */
-@@ -405,7 +405,7 @@ static int ccmp_encrypt_skb(struct ieee80211_tx_data *tx, struct sk_buff *skb,
- u8 *pos;
- u8 pn[6];
- u64 pn64;
-- u8 aad[2 * AES_BLOCK_SIZE];
-+ u8 aad[CCM_AAD_LEN];
- u8 b_0[AES_BLOCK_SIZE];
-
- if (info->control.hw_key &&
@@ -444,7 +444,7 @@ static int ccmp_encrypt_skb(struct ieee80211_tx_data *tx, struct sk_buff *skb,
hdr = (struct ieee80211_hdr *) pos;
pos += hdrlen;
@@ -164339,29 +168578,7 @@ index b48c1e1..36ee4c2 100644
pn[5] = pn64;
pn[4] = pn64 >> 8;
-@@ -461,10 +461,8 @@ static int ccmp_encrypt_skb(struct ieee80211_tx_data *tx, struct sk_buff *skb,
-
- pos += IEEE80211_CCMP_HDR_LEN;
- ccmp_special_blocks(skb, pn, b_0, aad);
-- ieee80211_aes_ccm_encrypt(key->u.ccmp.tfm, b_0, aad, pos, len,
-- skb_put(skb, mic_len), mic_len);
--
-- return 0;
-+ return ieee80211_aes_ccm_encrypt(key->u.ccmp.tfm, b_0, aad, pos, len,
-+ skb_put(skb, mic_len), mic_len);
- }
-
-
-@@ -639,7 +637,7 @@ static int gcmp_encrypt_skb(struct ieee80211_tx_data *tx, struct sk_buff *skb)
- u8 *pos;
- u8 pn[6];
- u64 pn64;
-- u8 aad[2 * AES_BLOCK_SIZE];
-+ u8 aad[GCM_AAD_LEN];
- u8 j_0[AES_BLOCK_SIZE];
-
- if (info->control.hw_key &&
-@@ -679,7 +677,7 @@ static int gcmp_encrypt_skb(struct ieee80211_tx_data *tx, struct sk_buff *skb)
+@@ -677,7 +677,7 @@ static int gcmp_encrypt_skb(struct ieee80211_tx_data *tx, struct sk_buff *skb)
hdr = (struct ieee80211_hdr *)pos;
pos += hdrlen;
@@ -164370,20 +168587,7 @@ index b48c1e1..36ee4c2 100644
pn[5] = pn64;
pn[4] = pn64 >> 8;
-@@ -696,10 +694,8 @@ static int gcmp_encrypt_skb(struct ieee80211_tx_data *tx, struct sk_buff *skb)
-
- pos += IEEE80211_GCMP_HDR_LEN;
- gcmp_special_blocks(skb, pn, j_0, aad);
-- ieee80211_aes_gcm_encrypt(key->u.gcmp.tfm, j_0, aad, pos, len,
-- skb_put(skb, IEEE80211_GCMP_MIC_LEN));
--
-- return 0;
-+ return ieee80211_aes_gcm_encrypt(key->u.gcmp.tfm, j_0, aad, pos, len,
-+ skb_put(skb, IEEE80211_GCMP_MIC_LEN));
- }
-
- ieee80211_tx_result
-@@ -957,7 +953,7 @@ ieee80211_crypto_aes_cmac_encrypt(struct ieee80211_tx_data *tx)
+@@ -953,7 +953,7 @@ ieee80211_crypto_aes_cmac_encrypt(struct ieee80211_tx_data *tx)
mmie->key_id = cpu_to_le16(key->conf.keyidx);
/* PN = PN + 1 */
@@ -164392,7 +168596,7 @@ index b48c1e1..36ee4c2 100644
bip_ipn_set64(mmie->sequence_number, pn64);
-@@ -1001,7 +997,7 @@ ieee80211_crypto_aes_cmac_256_encrypt(struct ieee80211_tx_data *tx)
+@@ -997,7 +997,7 @@ ieee80211_crypto_aes_cmac_256_encrypt(struct ieee80211_tx_data *tx)
mmie->key_id = cpu_to_le16(key->conf.keyidx);
/* PN = PN + 1 */
@@ -164401,19 +168605,7 @@ index b48c1e1..36ee4c2 100644
bip_ipn_set64(mmie->sequence_number, pn64);
-@@ -1123,9 +1119,9 @@ ieee80211_crypto_aes_gmac_encrypt(struct ieee80211_tx_data *tx)
- struct ieee80211_key *key = tx->key;
- struct ieee80211_mmie_16 *mmie;
- struct ieee80211_hdr *hdr;
-- u8 aad[20];
-+ u8 aad[GMAC_AAD_LEN];
- u64 pn64;
-- u8 nonce[12];
-+ u8 nonce[GMAC_NONCE_LEN];
-
- if (WARN_ON(skb_queue_len(&tx->skbs) != 1))
- return TX_DROP;
-@@ -1146,7 +1142,7 @@ ieee80211_crypto_aes_gmac_encrypt(struct ieee80211_tx_data *tx)
+@@ -1142,7 +1142,7 @@ ieee80211_crypto_aes_gmac_encrypt(struct ieee80211_tx_data *tx)
mmie->key_id = cpu_to_le16(key->conf.keyidx);
/* PN = PN + 1 */
@@ -164422,17 +168614,8 @@ index b48c1e1..36ee4c2 100644
bip_ipn_set64(mmie->sequence_number, pn64);
-@@ -1171,7 +1167,7 @@ ieee80211_crypto_aes_gmac_decrypt(struct ieee80211_rx_data *rx)
- struct ieee80211_rx_status *status = IEEE80211_SKB_RXCB(skb);
- struct ieee80211_key *key = rx->key;
- struct ieee80211_mmie_16 *mmie;
-- u8 aad[20], mic[16], ipn[6], nonce[12];
-+ u8 aad[GMAC_AAD_LEN], mic[GMAC_MIC_LEN], ipn[6], nonce[GMAC_NONCE_LEN];
- struct ieee80211_hdr *hdr = (struct ieee80211_hdr *)skb->data;
-
- if (!ieee80211_is_mgmt(hdr->frame_control))
diff --git a/net/mac802154/iface.c b/net/mac802154/iface.c
-index 7079cd3..c299f08 100644
+index 06019db..8b752f48 100644
--- a/net/mac802154/iface.c
+++ b/net/mac802154/iface.c
@@ -386,7 +386,7 @@ static int ieee802154_header_create(struct sk_buff *skb,
@@ -164463,10 +168646,10 @@ index 7079cd3..c299f08 100644
/* defaults per 802.15.4-2011 */
wpan_dev->min_be = 3;
diff --git a/net/mpls/af_mpls.c b/net/mpls/af_mpls.c
-index 5c161e7..7bb4eba 100644
+index 5b77377..7bd5994 100644
--- a/net/mpls/af_mpls.c
+++ b/net/mpls/af_mpls.c
-@@ -871,7 +871,7 @@ static int mpls_dev_sysctl_register(struct net_device *dev,
+@@ -873,7 +873,7 @@ static int mpls_dev_sysctl_register(struct net_device *dev,
struct mpls_dev *mdev)
{
char path[sizeof("net/mpls/conf/") + IFNAMSIZ];
@@ -164475,7 +168658,7 @@ index 5c161e7..7bb4eba 100644
int i;
table = kmemdup(&mpls_dev_table, sizeof(mpls_dev_table), GFP_KERNEL);
-@@ -954,7 +954,7 @@ static void mpls_ifdown(struct net_device *dev, int event)
+@@ -956,7 +956,7 @@ static void mpls_ifdown(struct net_device *dev, int event)
/* fall through */
case NETDEV_CHANGE:
nh->nh_flags |= RTNH_F_LINKDOWN;
@@ -164484,16 +168667,16 @@ index 5c161e7..7bb4eba 100644
break;
}
if (event == NETDEV_UNREGISTER)
-@@ -995,7 +995,7 @@ static void mpls_ifup(struct net_device *dev, unsigned int nh_flags)
+@@ -994,7 +994,7 @@ static void mpls_ifup(struct net_device *dev, unsigned int nh_flags)
nh->nh_flags &= ~nh_flags;
} endfor_nexthops(rt);
- ACCESS_ONCE(rt->rt_nhn_alive) = alive;
+ ACCESS_ONCE_RW(rt->rt_nhn_alive) = alive;
}
+ }
- return;
-@@ -1624,7 +1624,7 @@ static int mpls_platform_labels(struct ctl_table *table, int write,
+@@ -1621,7 +1621,7 @@ static int mpls_platform_labels(struct ctl_table *table, int write,
struct net *net = table->data;
int platform_labels = net->mpls.platform_labels;
int ret;
@@ -164502,7 +168685,7 @@ index 5c161e7..7bb4eba 100644
.procname = table->procname,
.data = &platform_labels,
.maxlen = sizeof(int),
-@@ -1654,7 +1654,7 @@ static const struct ctl_table mpls_table[] = {
+@@ -1651,7 +1651,7 @@ static const struct ctl_table mpls_table[] = {
static int mpls_net_init(struct net *net)
{
@@ -164512,10 +168695,10 @@ index 5c161e7..7bb4eba 100644
net->mpls.platform_labels = 0;
net->mpls.platform_label = NULL;
diff --git a/net/netfilter/Kconfig b/net/netfilter/Kconfig
-index 9266cee..767338c 100644
+index e8d56d9..473bc8e 100644
--- a/net/netfilter/Kconfig
+++ b/net/netfilter/Kconfig
-@@ -1148,6 +1148,16 @@ config NETFILTER_XT_MATCH_ESP
+@@ -1166,6 +1166,16 @@ config NETFILTER_XT_MATCH_ESP
To compile it as a module, choose M here. If unsure, say N.
@@ -164533,10 +168716,10 @@ index 9266cee..767338c 100644
tristate '"hashlimit" match support'
depends on IP6_NF_IPTABLES || IP6_NF_IPTABLES=n
diff --git a/net/netfilter/Makefile b/net/netfilter/Makefile
-index 6913454..43686aa 100644
+index c23c3c8..7568d8b 100644
--- a/net/netfilter/Makefile
+++ b/net/netfilter/Makefile
-@@ -145,6 +145,7 @@ obj-$(CONFIG_NETFILTER_XT_MATCH_DEVGROUP) += xt_devgroup.o
+@@ -149,6 +149,7 @@ obj-$(CONFIG_NETFILTER_XT_MATCH_DEVGROUP) += xt_devgroup.o
obj-$(CONFIG_NETFILTER_XT_MATCH_DSCP) += xt_dscp.o
obj-$(CONFIG_NETFILTER_XT_MATCH_ECN) += xt_ecn.o
obj-$(CONFIG_NETFILTER_XT_MATCH_ESP) += xt_esp.o
@@ -164574,7 +168757,7 @@ index a748b0c..90c1df6 100644
.dump = ip_set_dump_start,
.done = ip_set_dump_done,
};
-@@ -2009,7 +2008,7 @@ done:
+@@ -2009,7 +2008,7 @@ ip_set_sockfn_get(struct sock *sk, int optval, void __user *user, int *len)
return ret;
}
@@ -164647,7 +168830,7 @@ index 2c1b498..3bca85c 100644
ip_vs_conn_put(cp);
return ret;
diff --git a/net/netfilter/ipvs/ip_vs_ctl.c b/net/netfilter/ipvs/ip_vs_ctl.c
-index c3c809b..fb97ee5 100644
+index a6e44ef..43e4bb9 100644
--- a/net/netfilter/ipvs/ip_vs_ctl.c
+++ b/net/netfilter/ipvs/ip_vs_ctl.c
@@ -841,7 +841,7 @@ __ip_vs_update_dest(struct ip_vs_service *svc, struct ip_vs_dest *dest,
@@ -164740,10 +168923,10 @@ index 796d70e..8458955 100644
.procname = "lblcr_expiration",
.data = NULL,
diff --git a/net/netfilter/ipvs/ip_vs_sync.c b/net/netfilter/ipvs/ip_vs_sync.c
-index 1b07578..36b88cb 100644
+index 9350530..30644da 100644
--- a/net/netfilter/ipvs/ip_vs_sync.c
+++ b/net/netfilter/ipvs/ip_vs_sync.c
-@@ -611,7 +611,7 @@ static void ip_vs_sync_conn_v0(struct netns_ipvs *ipvs, struct ip_vs_conn *cp,
+@@ -612,7 +612,7 @@ static void ip_vs_sync_conn_v0(struct netns_ipvs *ipvs, struct ip_vs_conn *cp,
cp = cp->control;
if (cp) {
if (cp->flags & IP_VS_CONN_F_TEMPLATE)
@@ -164752,7 +168935,7 @@ index 1b07578..36b88cb 100644
else
pkts = sysctl_sync_threshold(ipvs);
ip_vs_sync_conn(ipvs, cp, pkts);
-@@ -772,7 +772,7 @@ control:
+@@ -773,7 +773,7 @@ void ip_vs_sync_conn(struct netns_ipvs *ipvs, struct ip_vs_conn *cp, int pkts)
if (!cp)
return;
if (cp->flags & IP_VS_CONN_F_TEMPLATE)
@@ -164761,10 +168944,10 @@ index 1b07578..36b88cb 100644
else
pkts = sysctl_sync_threshold(ipvs);
goto sloop;
-@@ -919,7 +919,7 @@ static void ip_vs_proc_conn(struct netns_ipvs *ipvs, struct ip_vs_conn_param *pa
-
- if (opt)
- memcpy(&cp->in_seq, opt, sizeof(*opt));
+@@ -922,7 +922,7 @@ static void ip_vs_proc_conn(struct netns_ipvs *ipvs, struct ip_vs_conn_param *pa
+ cp->in_seq = opt->in_seq;
+ cp->out_seq = opt->out_seq;
+ }
- atomic_set(&cp->in_pkts, sysctl_sync_threshold(ipvs));
+ atomic_set_unchecked(&cp->in_pkts, sysctl_sync_threshold(ipvs));
cp->state = state;
@@ -164806,10 +168989,10 @@ index 45da11a..ef3e5dc 100644
table = kmemdup(acct_sysctl_table, sizeof(acct_sysctl_table),
GFP_KERNEL);
diff --git a/net/netfilter/nf_conntrack_core.c b/net/netfilter/nf_conntrack_core.c
-index 9934b0c..08efb98 100644
+index 0f87e5d..76343a8 100644
--- a/net/netfilter/nf_conntrack_core.c
+++ b/net/netfilter/nf_conntrack_core.c
-@@ -1702,7 +1702,7 @@ int nf_conntrack_hash_resize(unsigned int hashsize)
+@@ -1790,7 +1790,7 @@ int nf_conntrack_hash_resize(unsigned int hashsize)
return 0;
}
@@ -164819,10 +169002,10 @@ index 9934b0c..08efb98 100644
unsigned int hashsize;
int rc;
diff --git a/net/netfilter/nf_conntrack_ecache.c b/net/netfilter/nf_conntrack_ecache.c
-index d28011b..04d5063 100644
+index da9df2d..d8f3df4 100644
--- a/net/netfilter/nf_conntrack_ecache.c
+++ b/net/netfilter/nf_conntrack_ecache.c
-@@ -348,7 +348,7 @@ static struct nf_ct_ext_type event_extend __read_mostly = {
+@@ -354,7 +354,7 @@ static struct nf_ct_ext_type event_extend __read_mostly = {
#ifdef CONFIG_SYSCTL
static int nf_conntrack_event_init_sysctl(struct net *net)
{
@@ -164832,7 +169015,7 @@ index d28011b..04d5063 100644
table = kmemdup(event_sysctl_table, sizeof(event_sysctl_table),
GFP_KERNEL);
diff --git a/net/netfilter/nf_conntrack_helper.c b/net/netfilter/nf_conntrack_helper.c
-index b989b81..2335d60 100644
+index 7341adf..0c5cfd3 100644
--- a/net/netfilter/nf_conntrack_helper.c
+++ b/net/netfilter/nf_conntrack_helper.c
@@ -57,7 +57,7 @@ static struct ctl_table helper_sysctl_table[] = {
@@ -164845,10 +169028,10 @@ index b989b81..2335d60 100644
table = kmemdup(helper_sysctl_table, sizeof(helper_sysctl_table),
GFP_KERNEL);
diff --git a/net/netfilter/nf_conntrack_netlink.c b/net/netfilter/nf_conntrack_netlink.c
-index fdfc71f..f47621a 100644
+index 2754045..c990e35 100644
--- a/net/netfilter/nf_conntrack_netlink.c
+++ b/net/netfilter/nf_conntrack_netlink.c
-@@ -1170,10 +1170,11 @@ static int ctnetlink_get_conntrack(struct net *net, struct sock *ctnl,
+@@ -1188,10 +1188,11 @@ static int ctnetlink_get_conntrack(struct net *net, struct sock *ctnl,
int err;
if (nlh->nlmsg_flags & NLM_F_DUMP) {
@@ -164861,7 +169044,7 @@ index fdfc71f..f47621a 100644
if (cda[CTA_MARK] && cda[CTA_MARK_MASK]) {
struct ctnetlink_filter *filter;
-@@ -1182,9 +1183,9 @@ static int ctnetlink_get_conntrack(struct net *net, struct sock *ctnl,
+@@ -1200,9 +1201,9 @@ static int ctnetlink_get_conntrack(struct net *net, struct sock *ctnl,
if (IS_ERR(filter))
return PTR_ERR(filter);
@@ -164873,7 +169056,7 @@ index fdfc71f..f47621a 100644
}
err = ctnetlink_parse_zone(cda[CTA_ZONE], &zone);
-@@ -1322,7 +1323,7 @@ static int ctnetlink_get_ct_dying(struct net *net, struct sock *ctnl,
+@@ -1340,7 +1341,7 @@ static int ctnetlink_get_ct_dying(struct net *net, struct sock *ctnl,
const struct nlattr * const cda[])
{
if (nlh->nlmsg_flags & NLM_F_DUMP) {
@@ -164882,7 +169065,7 @@ index fdfc71f..f47621a 100644
.dump = ctnetlink_dump_dying,
.done = ctnetlink_done_list,
};
-@@ -1344,7 +1345,7 @@ static int ctnetlink_get_ct_unconfirmed(struct net *net, struct sock *ctnl,
+@@ -1362,7 +1363,7 @@ static int ctnetlink_get_ct_unconfirmed(struct net *net, struct sock *ctnl,
const struct nlattr * const cda[])
{
if (nlh->nlmsg_flags & NLM_F_DUMP) {
@@ -164891,7 +169074,7 @@ index fdfc71f..f47621a 100644
.dump = ctnetlink_dump_unconfirmed,
.done = ctnetlink_done_list,
};
-@@ -2027,7 +2028,7 @@ static int ctnetlink_stat_ct_cpu(struct net *net, struct sock *ctnl,
+@@ -2039,7 +2040,7 @@ static int ctnetlink_stat_ct_cpu(struct net *net, struct sock *ctnl,
const struct nlattr * const cda[])
{
if (nlh->nlmsg_flags & NLM_F_DUMP) {
@@ -164900,7 +169083,7 @@ index fdfc71f..f47621a 100644
.dump = ctnetlink_ct_stat_cpu_dump,
};
return netlink_dump_start(ctnl, skb, nlh, &c);
-@@ -2725,7 +2726,7 @@ static int ctnetlink_dump_exp_ct(struct net *net, struct sock *ctnl,
+@@ -2737,7 +2738,7 @@ static int ctnetlink_dump_exp_ct(struct net *net, struct sock *ctnl,
struct nf_conntrack_tuple_hash *h;
struct nf_conn *ct;
struct nf_conntrack_zone zone;
@@ -164909,7 +169092,7 @@ index fdfc71f..f47621a 100644
.dump = ctnetlink_exp_ct_dump_table,
.done = ctnetlink_exp_done,
};
-@@ -2744,9 +2745,8 @@ static int ctnetlink_dump_exp_ct(struct net *net, struct sock *ctnl,
+@@ -2756,9 +2757,8 @@ static int ctnetlink_dump_exp_ct(struct net *net, struct sock *ctnl,
return -ENOENT;
ct = nf_ct_tuplehash_to_ctrack(h);
@@ -164920,7 +169103,7 @@ index fdfc71f..f47621a 100644
nf_ct_put(ct);
return err;
-@@ -2768,7 +2768,7 @@ static int ctnetlink_get_expect(struct net *net, struct sock *ctnl,
+@@ -2780,7 +2780,7 @@ static int ctnetlink_get_expect(struct net *net, struct sock *ctnl,
if (cda[CTA_EXPECT_MASTER])
return ctnetlink_dump_exp_ct(net, ctnl, skb, nlh, cda);
else {
@@ -164929,7 +169112,7 @@ index fdfc71f..f47621a 100644
.dump = ctnetlink_exp_dump_table,
.done = ctnetlink_exp_done,
};
-@@ -3234,7 +3234,7 @@ static int ctnetlink_stat_exp_cpu(struct net *net, struct sock *ctnl,
+@@ -3246,7 +3246,7 @@ static int ctnetlink_stat_exp_cpu(struct net *net, struct sock *ctnl,
const struct nlattr * const cda[])
{
if (nlh->nlmsg_flags & NLM_F_DUMP) {
@@ -164939,7 +169122,7 @@ index fdfc71f..f47621a 100644
};
return netlink_dump_start(ctnl, skb, nlh, &c);
diff --git a/net/netfilter/nf_conntrack_proto.c b/net/netfilter/nf_conntrack_proto.c
-index b65d586..beec902 100644
+index 8d2c7d8..9155e0c 100644
--- a/net/netfilter/nf_conntrack_proto.c
+++ b/net/netfilter/nf_conntrack_proto.c
@@ -52,7 +52,7 @@ nf_ct_register_sysctl(struct net *net,
@@ -164952,10 +169135,10 @@ index b65d586..beec902 100644
{
if (users > 0)
diff --git a/net/netfilter/nf_conntrack_standalone.c b/net/netfilter/nf_conntrack_standalone.c
-index 9f267c3..ca950e4 100644
+index 5f446cd..e889200 100644
--- a/net/netfilter/nf_conntrack_standalone.c
+++ b/net/netfilter/nf_conntrack_standalone.c
-@@ -529,7 +529,7 @@ static struct ctl_table nf_ct_netfilter_table[] = {
+@@ -533,7 +533,7 @@ static struct ctl_table nf_ct_netfilter_table[] = {
static int nf_conntrack_standalone_init_sysctl(struct net *net)
{
@@ -164978,10 +169161,10 @@ index 7a394df..bd91a8a 100644
table = kmemdup(tstamp_sysctl_table, sizeof(tstamp_sysctl_table),
GFP_KERNEL);
diff --git a/net/netfilter/nf_log.c b/net/netfilter/nf_log.c
-index 1df2c8d..3e79332 100644
+index 3dca90d..29b498f 100644
--- a/net/netfilter/nf_log.c
+++ b/net/netfilter/nf_log.c
-@@ -411,7 +411,7 @@ static const struct file_operations nflog_file_ops = {
+@@ -413,7 +413,7 @@ static const struct file_operations nflog_file_ops = {
#ifdef CONFIG_SYSCTL
static char nf_log_sysctl_fnames[NFPROTO_NUMPROTO-NFPROTO_UNSPEC][3];
@@ -164990,7 +169173,7 @@ index 1df2c8d..3e79332 100644
static int nf_log_proc_dostring(struct ctl_table *table, int write,
void __user *buffer, size_t *lenp, loff_t *ppos)
-@@ -423,7 +423,7 @@ static int nf_log_proc_dostring(struct ctl_table *table, int write,
+@@ -425,7 +425,7 @@ static int nf_log_proc_dostring(struct ctl_table *table, int write,
struct net *net = table->extra2;
if (write) {
@@ -164999,7 +169182,7 @@ index 1df2c8d..3e79332 100644
tmp.data = buf;
r = proc_dostring(&tmp, write, buffer, lenp, ppos);
-@@ -443,13 +443,15 @@ static int nf_log_proc_dostring(struct ctl_table *table, int write,
+@@ -445,13 +445,15 @@ static int nf_log_proc_dostring(struct ctl_table *table, int write,
rcu_assign_pointer(net->nf.nf_loggers[tindex], logger);
mutex_unlock(&nf_log_mutex);
} else {
@@ -165018,7 +169201,7 @@ index 1df2c8d..3e79332 100644
mutex_unlock(&nf_log_mutex);
}
-@@ -459,7 +461,7 @@ static int nf_log_proc_dostring(struct ctl_table *table, int write,
+@@ -461,7 +463,7 @@ static int nf_log_proc_dostring(struct ctl_table *table, int write,
static int netfilter_log_sysctl_init(struct net *net)
{
int i;
@@ -165076,7 +169259,7 @@ index c68c1e5..8b5d670 100644
}
EXPORT_SYMBOL(nf_unregister_sockopt);
diff --git a/net/netfilter/nf_tables_api.c b/net/netfilter/nf_tables_api.c
-index 7e1c876..9b9f9b3 100644
+index e5194f6f..ad76273 100644
--- a/net/netfilter/nf_tables_api.c
+++ b/net/netfilter/nf_tables_api.c
@@ -506,7 +506,7 @@ static int nf_tables_gettable(struct net *net, struct sock *nlsk,
@@ -165097,7 +169280,7 @@ index 7e1c876..9b9f9b3 100644
.dump = nf_tables_dump_chains,
};
return netlink_dump_start(nlsk, skb, nlh, &c);
-@@ -1944,7 +1944,7 @@ static int nf_tables_getrule(struct net *net, struct sock *nlsk,
+@@ -2001,7 +2001,7 @@ static int nf_tables_getrule(struct net *net, struct sock *nlsk,
int err;
if (nlh->nlmsg_flags & NLM_F_DUMP) {
@@ -165106,7 +169289,7 @@ index 7e1c876..9b9f9b3 100644
.dump = nf_tables_dump_rules,
.done = nf_tables_dump_rules_done,
};
-@@ -2666,20 +2666,17 @@ static int nf_tables_getset(struct net *net, struct sock *nlsk,
+@@ -2724,20 +2724,17 @@ static int nf_tables_getset(struct net *net, struct sock *nlsk,
return err;
if (nlh->nlmsg_flags & NLM_F_DUMP) {
@@ -165130,7 +169313,7 @@ index 7e1c876..9b9f9b3 100644
}
/* Only accept unspec with dump */
-@@ -3268,7 +3265,7 @@ static int nf_tables_getsetelem(struct net *net, struct sock *nlsk,
+@@ -3330,7 +3327,7 @@ static int nf_tables_getsetelem(struct net *net, struct sock *nlsk,
return PTR_ERR(set);
if (nlh->nlmsg_flags & NLM_F_DUMP) {
@@ -165244,7 +169427,7 @@ index d44d89b..c834ed3 100644
ret = now > *quota;
diff --git a/net/netfilter/nfnetlink_cthelper.c b/net/netfilter/nfnetlink_cthelper.c
-index e924e95..1e2e233 100644
+index 3b79f34..30666fc 100644
--- a/net/netfilter/nfnetlink_cthelper.c
+++ b/net/netfilter/nfnetlink_cthelper.c
@@ -510,7 +510,7 @@ static int nfnl_cthelper_get(struct net *net, struct sock *nfnl,
@@ -165270,7 +169453,7 @@ index 139e086..73899bc 100644
};
return netlink_dump_start(ctnl, skb, nlh, &c);
diff --git a/net/netfilter/nfnetlink_log.c b/net/netfilter/nfnetlink_log.c
-index 6577db5..1a45ef7 100644
+index eb086a1..68992f7 100644
--- a/net/netfilter/nfnetlink_log.c
+++ b/net/netfilter/nfnetlink_log.c
@@ -85,7 +85,7 @@ static int nfnl_log_net_id __read_mostly;
@@ -165282,7 +169465,7 @@ index 6577db5..1a45ef7 100644
};
static struct nfnl_log_net *nfnl_log_pernet(struct net *net)
-@@ -570,7 +570,7 @@ __build_packet_message(struct nfnl_log_net *log,
+@@ -574,7 +574,7 @@ __build_packet_message(struct nfnl_log_net *log,
/* global sequence number */
if ((inst->flags & NFULNL_CFG_F_SEQ_GLOBAL) &&
nla_put_be32(inst->skb, NFULA_SEQ_GLOBAL,
@@ -165412,10 +169595,10 @@ index 0000000..a7cb915
+MODULE_ALIAS("ipt_gradm");
+MODULE_ALIAS("ip6t_gradm");
diff --git a/net/netfilter/xt_hashlimit.c b/net/netfilter/xt_hashlimit.c
-index 1786968..1ec6dac 100644
+index b89b688..c9383a2 100644
--- a/net/netfilter/xt_hashlimit.c
+++ b/net/netfilter/xt_hashlimit.c
-@@ -869,11 +869,11 @@ static int __net_init hashlimit_proc_net_init(struct net *net)
+@@ -1065,11 +1065,11 @@ static int __net_init hashlimit_proc_net_init(struct net *net)
{
struct hashlimit_net *hashlimit_net = hashlimit_pernet(net);
@@ -165430,10 +169613,10 @@ index 1786968..1ec6dac 100644
remove_proc_entry("ipt_hashlimit", net->proc_net);
return -ENOMEM;
diff --git a/net/netfilter/xt_recent.c b/net/netfilter/xt_recent.c
-index d725a27..14b0c51 100644
+index e3b7a09..ee271ac 100644
--- a/net/netfilter/xt_recent.c
+++ b/net/netfilter/xt_recent.c
-@@ -642,7 +642,7 @@ static int __net_init recent_proc_net_init(struct net *net)
+@@ -639,7 +639,7 @@ static int __net_init recent_proc_net_init(struct net *net)
{
struct recent_net *recent_net = recent_pernet(net);
@@ -165504,7 +169687,7 @@ index 246f29d..1b68023 100644
}
static int netlink_sendmsg(struct socket *sock, struct msghdr *msg, size_t len)
-@@ -2168,7 +2169,9 @@ errout_skb:
+@@ -2168,7 +2169,9 @@ static int netlink_dump(struct sock *sk)
int __netlink_dump_start(struct sock *ssk, struct sk_buff *skb,
const struct nlmsghdr *nlh,
@@ -165554,23 +169737,23 @@ index 246f29d..1b68023 100644
.exit = netlink_net_exit,
};
diff --git a/net/netlink/diag.c b/net/netlink/diag.c
-index 8dd836a..196d1cd 100644
+index a554624..640606e 100644
--- a/net/netlink/diag.c
+++ b/net/netlink/diag.c
-@@ -170,7 +170,7 @@ static int netlink_diag_handler_dump(struct sk_buff *skb, struct nlmsghdr *h)
+@@ -208,7 +208,7 @@ static int netlink_diag_handler_dump(struct sk_buff *skb, struct nlmsghdr *h)
return -EINVAL;
if (h->nlmsg_flags & NLM_F_DUMP) {
- struct netlink_dump_control c = {
+ static struct netlink_dump_control c = {
.dump = netlink_diag_dump,
+ .done = netlink_diag_dump_done,
};
- return netlink_dump_start(net->diag_nlsk, skb, h, &c);
diff --git a/net/netlink/genetlink.c b/net/netlink/genetlink.c
-index a09132a..75aa387 100644
+index 49c28e8..cb3be4d 100644
--- a/net/netlink/genetlink.c
+++ b/net/netlink/genetlink.c
-@@ -571,28 +571,26 @@ static int genl_family_rcv_msg(struct genl_family *family,
+@@ -573,28 +573,26 @@ static int genl_family_rcv_msg(struct genl_family *family,
return -EOPNOTSUPP;
if (!family->parallel_ops) {
@@ -165650,7 +169833,7 @@ index 0e72d95..c082af5 100644
};
diff --git a/net/openvswitch/vport-internal_dev.c b/net/openvswitch/vport-internal_dev.c
-index 95c3614..bfd4a19 100644
+index e7da290..bc85c2f 100644
--- a/net/openvswitch/vport-internal_dev.c
+++ b/net/openvswitch/vport-internal_dev.c
@@ -44,7 +44,7 @@ static struct internal_dev *internal_dev_priv(struct net_device *netdev)
@@ -165717,7 +169900,7 @@ index 7eb955e..479c9a6 100644
static int __init ovs_vxlan_tnl_init(void)
diff --git a/net/packet/af_packet.c b/net/packet/af_packet.c
-index dd23323..746fec2 100644
+index 94e4a59..0339089 100644
--- a/net/packet/af_packet.c
+++ b/net/packet/af_packet.c
@@ -278,7 +278,7 @@ static int packet_direct_xmit(struct sk_buff *skb)
@@ -165763,7 +169946,7 @@ index dd23323..746fec2 100644
}
mutex_lock(&fanout_mutex);
-@@ -2106,7 +2106,7 @@ drop_n_acct:
+@@ -2106,7 +2106,7 @@ static int packet_rcv(struct sk_buff *skb, struct net_device *dev,
is_drop_n_account = true;
spin_lock(&sk->sk_receive_queue.lock);
po->stats.stats1.tp_drops++;
@@ -165922,7 +170105,7 @@ index 8398fee..80a1aca 100644
if (likely(*recent == gen))
return 0;
diff --git a/net/rds/ib.h b/net/rds/ib.h
-index 046f750..33fe942 100644
+index 45ac8e8..2a69ee7 100644
--- a/net/rds/ib.h
+++ b/net/rds/ib.h
@@ -153,7 +153,7 @@ struct rds_ib_connection {
@@ -165970,7 +170153,7 @@ index 606a11f..4c55743 100644
#endif
diff --git a/net/rds/rds.h b/net/rds/rds.h
-index b2d17f0f..42f94e2 100644
+index 67ba67c..e20950c 100644
--- a/net/rds/rds.h
+++ b/net/rds/rds.h
@@ -500,7 +500,7 @@ struct rds_transport {
@@ -165983,7 +170166,7 @@ index b2d17f0f..42f94e2 100644
struct rds_sock {
struct sock rs_sk;
diff --git a/net/rds/tcp.c b/net/rds/tcp.c
-index fcddacc..c6d3c35 100644
+index 20e2923..999f629 100644
--- a/net/rds/tcp.c
+++ b/net/rds/tcp.c
@@ -59,7 +59,7 @@ static int rds_tcp_skbuf_handler(struct ctl_table *ctl, int write,
@@ -166044,10 +170227,10 @@ index 89d09b4..1bc5525 100644
set_fs(oldfs);
}
diff --git a/net/rxrpc/af_rxrpc.c b/net/rxrpc/af_rxrpc.c
-index 88effad..5de1d9c 100644
+index 2d59c9b..fcd4ae0 100644
--- a/net/rxrpc/af_rxrpc.c
+++ b/net/rxrpc/af_rxrpc.c
-@@ -40,7 +40,7 @@ static const struct proto_ops rxrpc_rpc_ops;
+@@ -42,7 +42,7 @@ static const struct proto_ops rxrpc_rpc_ops;
u32 rxrpc_epoch;
/* current debugging ID */
@@ -166055,12 +170238,12 @@ index 88effad..5de1d9c 100644
+atomic_unchecked_t rxrpc_debug_id;
/* count of skbs currently in use */
- atomic_t rxrpc_n_skbs;
+ atomic_t rxrpc_n_tx_skbs, rxrpc_n_rx_skbs;
diff --git a/net/rxrpc/ar-internal.h b/net/rxrpc/ar-internal.h
-index ff83fb1..1b148b0 100644
+index f60e355..edf6530 100644
--- a/net/rxrpc/ar-internal.h
+++ b/net/rxrpc/ar-internal.h
-@@ -85,7 +85,7 @@ struct rxrpc_host_header {
+@@ -122,7 +122,7 @@ struct rxrpc_host_header {
u32 epoch; /* client boot timestamp */
u32 cid; /* connection and channel ID */
u32 callNumber; /* call ID (0 for connection-level packets) */
@@ -166069,107 +170252,29 @@ index ff83fb1..1b148b0 100644
u32 serial; /* serial number of pkt sent to network */
u8 type; /* packet type */
u8 flags; /* packet flags */
-@@ -321,8 +321,8 @@ struct rxrpc_connection {
+@@ -379,7 +379,7 @@ struct rxrpc_connection {
+ u32 local_abort; /* local abort code */
u32 remote_abort; /* remote abort code */
- int error; /* local error incurred */
int debug_id; /* debug ID for printks */
- atomic_t serial; /* packet serial number counter */
-- atomic_t hi_serial; /* highest serial number received */
+ atomic_unchecked_t serial; /* packet serial number counter */
-+ atomic_unchecked_t hi_serial; /* highest serial number received */
- atomic_t avail_chans; /* number of channels available */
+ unsigned int hi_serial; /* highest serial number received */
+ u32 security_nonce; /* response re-use preventer */
u8 size_align; /* data size alignment (for security) */
- u8 header_size; /* rxrpc + security header size */
-@@ -426,7 +426,7 @@ struct rxrpc_call {
- rwlock_t state_lock; /* lock for state transition */
- atomic_t usage;
- atomic_t skb_count; /* Outstanding packets on this call */
-- atomic_t sequence; /* Tx data packet sequence counter */
-+ atomic_unchecked_t sequence; /* Tx data packet sequence counter */
- u32 local_abort; /* local abort code */
- u32 remote_abort; /* remote abort code */
- int error_report; /* Network error (ICMP/local transport) */
-@@ -489,7 +489,7 @@ static inline void rxrpc_abort_call(struct rxrpc_call *call, u32 abort_code)
+@@ -794,7 +794,7 @@ extern const char rxrpc_ack_names[RXRPC_ACK__INVALID + 1][4];
*/
- extern atomic_t rxrpc_n_skbs;
+ extern atomic_t rxrpc_n_tx_skbs, rxrpc_n_rx_skbs;
extern u32 rxrpc_epoch;
-extern atomic_t rxrpc_debug_id;
+extern atomic_unchecked_t rxrpc_debug_id;
extern struct workqueue_struct *rxrpc_workqueue;
/*
-diff --git a/net/rxrpc/call_event.c b/net/rxrpc/call_event.c
-index e60cf65..e7fb167 100644
---- a/net/rxrpc/call_event.c
-+++ b/net/rxrpc/call_event.c
-@@ -157,7 +157,7 @@ static void rxrpc_resend(struct rxrpc_call *call)
-
- _enter("{%d,%d,%d,%d},",
- call->acks_hard, call->acks_unacked,
-- atomic_read(&call->sequence),
-+ atomic_read_unchecked(&call->sequence),
- CIRC_CNT(call->acks_head, call->acks_tail, call->acks_winsz));
-
- stop = false;
-@@ -180,7 +180,7 @@ static void rxrpc_resend(struct rxrpc_call *call)
- sp->need_resend = false;
-
- /* each Tx packet has a new serial number */
-- sp->hdr.serial = atomic_inc_return(&call->conn->serial);
-+ sp->hdr.serial = atomic_inc_return_unchecked(&call->conn->serial);
-
- whdr = (struct rxrpc_wire_header *)txb->head;
- whdr->serial = htonl(sp->hdr.serial);
-@@ -384,7 +384,7 @@ static void rxrpc_rotate_tx_window(struct rxrpc_call *call, u32 hard)
- */
- static void rxrpc_clear_tx_window(struct rxrpc_call *call)
- {
-- rxrpc_rotate_tx_window(call, atomic_read(&call->sequence));
-+ rxrpc_rotate_tx_window(call, atomic_read_unchecked(&call->sequence));
- }
-
- /*
-@@ -609,7 +609,7 @@ process_further:
-
- latest = sp->hdr.serial;
- hard = ntohl(ack.firstPacket);
-- tx = atomic_read(&call->sequence);
-+ tx = atomic_read_unchecked(&call->sequence);
-
- _proto("Rx ACK %%%u { m=%hu f=#%u p=#%u s=%%%u r=%s n=%u }",
- latest,
-@@ -1155,7 +1155,7 @@ skip_msg_init:
- goto maybe_reschedule;
-
- send_ACK_with_skew:
-- ack.maxSkew = htons(atomic_read(&call->conn->hi_serial) -
-+ ack.maxSkew = htons(atomic_read_unchecked(&call->conn->hi_serial) -
- ntohl(ack.serial));
- send_ACK:
- mtu = call->conn->params.peer->if_mtu;
-@@ -1167,7 +1167,7 @@ send_ACK:
- ackinfo.rxMTU = htonl(rxrpc_rx_mtu);
- ackinfo.jumbo_max = htonl(rxrpc_rx_jumbo_max);
-
-- serial = atomic_inc_return(&call->conn->serial);
-+ serial = atomic_inc_return_unchecked(&call->conn->serial);
- whdr.serial = htonl(serial);
- _proto("Tx ACK %%%u { m=%hu f=#%u p=#%u s=%%%u r=%s n=%u }",
- serial,
-@@ -1186,7 +1186,7 @@ send_ACK:
- send_message:
- _debug("send message");
-
-- serial = atomic_inc_return(&call->conn->serial);
-+ serial = atomic_inc_return_unchecked(&call->conn->serial);
- whdr.serial = htonl(serial);
- _proto("Tx %s %%%u", rxrpc_pkts[whdr.type], serial);
- send_message_2:
diff --git a/net/rxrpc/call_object.c b/net/rxrpc/call_object.c
-index ae057e0..9cc546d 100644
+index 1ed18d8..e69a4de 100644
--- a/net/rxrpc/call_object.c
+++ b/net/rxrpc/call_object.c
-@@ -134,7 +134,7 @@ static struct rxrpc_call *rxrpc_alloc_call(gfp_t gfp)
+@@ -145,7 +145,7 @@ struct rxrpc_call *rxrpc_alloc_call(gfp_t gfp)
spin_lock_init(&call->lock);
rwlock_init(&call->state_lock);
atomic_set(&call->usage, 1);
@@ -166179,10 +170284,19 @@ index ae057e0..9cc546d 100644
memset(&call->sock_node, 0xed, sizeof(call->sock_node));
diff --git a/net/rxrpc/conn_event.c b/net/rxrpc/conn_event.c
-index cee0f35..2b9be7f 100644
+index 3f9d8d7..2032f99 100644
--- a/net/rxrpc/conn_event.c
+++ b/net/rxrpc/conn_event.c
-@@ -116,7 +116,7 @@ static int rxrpc_abort_connection(struct rxrpc_connection *conn,
+@@ -112,7 +112,7 @@ static void rxrpc_conn_retransmit_call(struct rxrpc_connection *conn,
+ iov.iov_base = &pkt;
+ iov.iov_len = len;
+
+- serial = atomic_inc_return(&conn->serial);
++ serial = atomic_inc_return_unchecked(&conn->serial);
+ pkt.whdr.serial = htonl(serial);
+
+ switch (chan->last_type) {
+@@ -219,7 +219,7 @@ static int rxrpc_abort_connection(struct rxrpc_connection *conn,
len = iov[0].iov_len + iov[1].iov_len;
@@ -166192,39 +170306,23 @@ index cee0f35..2b9be7f 100644
_proto("Tx CONN ABORT %%%u { %d }", serial, conn->local_abort);
diff --git a/net/rxrpc/conn_object.c b/net/rxrpc/conn_object.c
-index 896d844..ce1390a1 100644
+index e1e83af..3efb1ba 100644
--- a/net/rxrpc/conn_object.c
+++ b/net/rxrpc/conn_object.c
-@@ -52,7 +52,7 @@ struct rxrpc_connection *rxrpc_alloc_connection(gfp_t gfp)
- * on the rxrpc_connections list.
- */
- atomic_set(&conn->usage, 2);
+@@ -51,7 +51,7 @@ struct rxrpc_connection *rxrpc_alloc_connection(gfp_t gfp)
+ skb_queue_head_init(&conn->rx_queue);
+ conn->security = &rxrpc_no_security;
+ spin_lock_init(&conn->state_lock);
- conn->debug_id = atomic_inc_return(&rxrpc_debug_id);
+ conn->debug_id = atomic_inc_return_unchecked(&rxrpc_debug_id);
- atomic_set(&conn->avail_chans, RXRPC_MAXCALLS);
conn->size_align = 4;
- conn->header_size = sizeof(struct rxrpc_wire_header);
-diff --git a/net/rxrpc/input.c b/net/rxrpc/input.c
-index 70bb778..8b3411c 100644
---- a/net/rxrpc/input.c
-+++ b/net/rxrpc/input.c
-@@ -323,9 +323,9 @@ void rxrpc_fast_process_packet(struct rxrpc_call *call, struct sk_buff *skb)
-
- /* track the latest serial number on this connection for ACK packet
- * information */
-- hi_serial = atomic_read(&call->conn->hi_serial);
-+ hi_serial = atomic_read_unchecked(&call->conn->hi_serial);
- while (sp->hdr.serial > hi_serial)
-- hi_serial = atomic_cmpxchg(&call->conn->hi_serial, hi_serial,
-+ hi_serial = atomic_cmpxchg_unchecked(&call->conn->hi_serial, hi_serial,
- sp->hdr.serial);
-
- /* request ACK generation for any ACK or DATA packet that requests
+ conn->idle_timestamp = jiffies;
+ }
diff --git a/net/rxrpc/local_object.c b/net/rxrpc/local_object.c
-index a753796..7151cb1 100644
+index ff4864d..03ca73c 100644
--- a/net/rxrpc/local_object.c
+++ b/net/rxrpc/local_object.c
-@@ -84,7 +84,7 @@ static struct rxrpc_local *rxrpc_alloc_local(const struct sockaddr_rxrpc *srx)
+@@ -93,7 +93,7 @@ static struct rxrpc_local *rxrpc_alloc_local(const struct sockaddr_rxrpc *srx)
spin_lock_init(&local->client_conns_lock);
spin_lock_init(&local->lock);
rwlock_init(&local->services_lock);
@@ -166234,30 +170332,41 @@ index a753796..7151cb1 100644
}
diff --git a/net/rxrpc/output.c b/net/rxrpc/output.c
-index f4bda06..afdfbd2 100644
+index 5dab1ff..164d8d8 100644
--- a/net/rxrpc/output.c
+++ b/net/rxrpc/output.c
-@@ -657,13 +657,13 @@ static int rxrpc_send_data(struct rxrpc_sock *rx,
- memset(skb_put(skb, pad), 0, pad);
- }
+@@ -158,7 +158,7 @@ int rxrpc_send_ack_packet(struct rxrpc_call *call, bool ping)
+ iov[1].iov_len = sizeof(pkt->ackinfo);
+ len = iov[0].iov_len + iov[1].iov_len;
-- seq = atomic_inc_return(&call->sequence);
-+ seq = atomic_inc_return_unchecked(&call->sequence);
-
- sp->hdr.epoch = conn->proto.epoch;
- sp->hdr.cid = call->cid;
- sp->hdr.callNumber = call->call_id;
- sp->hdr.seq = seq;
-- sp->hdr.serial = atomic_inc_return(&conn->serial);
-+ sp->hdr.serial = atomic_inc_return_unchecked(&conn->serial);
- sp->hdr.type = RXRPC_PACKET_TYPE_DATA;
- sp->hdr.userStatus = 0;
- sp->hdr.securityIndex = conn->security_ix;
+- serial = atomic_inc_return(&conn->serial);
++ serial = atomic_inc_return_unchecked(&conn->serial);
+ pkt->whdr.serial = htonl(serial);
+ trace_rxrpc_tx_ack(call, serial,
+ ntohl(pkt->ack.firstPacket),
+@@ -249,7 +249,7 @@ int rxrpc_send_abort_packet(struct rxrpc_call *call)
+ iov[0].iov_base = &pkt;
+ iov[0].iov_len = sizeof(pkt);
+
+- serial = atomic_inc_return(&conn->serial);
++ serial = atomic_inc_return_unchecked(&conn->serial);
+ pkt.whdr.serial = htonl(serial);
+
+ ret = kernel_sendmsg(conn->params.local->socket,
+@@ -278,7 +278,7 @@ int rxrpc_send_data_packet(struct rxrpc_call *call, struct sk_buff *skb,
+ _enter(",{%d}", skb->len);
+
+ /* Each transmission of a Tx packet needs a new serial number */
+- serial = atomic_inc_return(&conn->serial);
++ serial = atomic_inc_return_unchecked(&conn->serial);
+
+ whdr.epoch = htonl(conn->proto.epoch);
+ whdr.cid = htonl(call->cid);
diff --git a/net/rxrpc/peer_object.c b/net/rxrpc/peer_object.c
-index 538e983..854d3fb 100644
+index 862eea6..9f4a15a 100644
--- a/net/rxrpc/peer_object.c
+++ b/net/rxrpc/peer_object.c
-@@ -191,7 +191,7 @@ struct rxrpc_peer *rxrpc_alloc_peer(struct rxrpc_local *local, gfp_t gfp)
+@@ -229,7 +229,7 @@ struct rxrpc_peer *rxrpc_alloc_peer(struct rxrpc_local *local, gfp_t gfp)
peer->service_conns = RB_ROOT;
seqlock_init(&peer->service_conn_lock);
spin_lock_init(&peer->lock);
@@ -166267,25 +170376,23 @@ index 538e983..854d3fb 100644
_leave(" = %p", peer);
diff --git a/net/rxrpc/proc.c b/net/rxrpc/proc.c
-index ced5f07..26cd115 100644
+index 65cd980..dd6af9d 100644
--- a/net/rxrpc/proc.c
+++ b/net/rxrpc/proc.c
-@@ -164,8 +164,8 @@ static int rxrpc_connection_seq_show(struct seq_file *seq, void *v)
+@@ -176,7 +176,7 @@ static int rxrpc_connection_seq_show(struct seq_file *seq, void *v)
atomic_read(&conn->usage),
rxrpc_conn_states[conn->state],
key_serial(conn->params.key),
- atomic_read(&conn->serial),
-- atomic_read(&conn->hi_serial));
+ atomic_read_unchecked(&conn->serial),
-+ atomic_read_unchecked(&conn->hi_serial));
+ conn->hi_serial);
return 0;
- }
diff --git a/net/rxrpc/rxkad.c b/net/rxrpc/rxkad.c
-index 63afa9e..5931eae 100644
+index 4374e7b..c93df58 100644
--- a/net/rxrpc/rxkad.c
+++ b/net/rxrpc/rxkad.c
-@@ -599,7 +599,7 @@ static int rxkad_issue_challenge(struct rxrpc_connection *conn)
+@@ -636,7 +636,7 @@ static int rxkad_issue_challenge(struct rxrpc_connection *conn)
len = iov[0].iov_len + iov[1].iov_len;
@@ -166294,7 +170401,7 @@ index 63afa9e..5931eae 100644
whdr.serial = htonl(serial);
_proto("Tx CHALLENGE %%%u", serial);
-@@ -653,7 +653,7 @@ static int rxkad_send_response(struct rxrpc_connection *conn,
+@@ -690,7 +690,7 @@ static int rxkad_send_response(struct rxrpc_connection *conn,
len = iov[0].iov_len + iov[1].iov_len + iov[2].iov_len;
@@ -166304,7 +170411,7 @@ index 63afa9e..5931eae 100644
_proto("Tx RESPONSE %%%u", serial);
diff --git a/net/sched/sch_generic.c b/net/sched/sch_generic.c
-index 657c133..756ac5e 100644
+index 6cfb6e9..eaa7ef4 100644
--- a/net/sched/sch_generic.c
+++ b/net/sched/sch_generic.c
@@ -362,7 +362,7 @@ void netif_carrier_on(struct net_device *dev)
@@ -166353,7 +170460,7 @@ index 303355c..d6ce615 100644
return nb > 0 ? NET_XMIT_SUCCESS : NET_XMIT_DROP;
}
diff --git a/net/sctp/ipv6.c b/net/sctp/ipv6.c
-index f473779..ec2667c 100644
+index 176af30..585194b 100644
--- a/net/sctp/ipv6.c
+++ b/net/sctp/ipv6.c
@@ -990,7 +990,7 @@ static const struct inet6_protocol sctpv6_protocol = {
@@ -166409,10 +170516,10 @@ index 7b523e3..0fe6a38 100644
static int sctp_v4_protosw_init(void)
diff --git a/net/sctp/sctp_diag.c b/net/sctp/sctp_diag.c
-index cef0cee..2058df7 100644
+index 048954e..1f08508 100644
--- a/net/sctp/sctp_diag.c
+++ b/net/sctp/sctp_diag.c
-@@ -156,7 +156,7 @@ static int inet_sctp_diag_fill(struct sock *sk, struct sctp_association *asoc,
+@@ -157,7 +157,7 @@ static int inet_sctp_diag_fill(struct sock *sk, struct sctp_association *asoc,
mem[SK_MEMINFO_WMEM_QUEUED] = sk->sk_wmem_queued;
mem[SK_MEMINFO_OPTMEM] = atomic_read(&sk->sk_omem_alloc);
mem[SK_MEMINFO_BACKLOG] = sk->sk_backlog.len;
@@ -166422,7 +170529,7 @@ index cef0cee..2058df7 100644
if (nla_put(skb, INET_DIAG_SKMEMINFO, sizeof(mem), &mem) < 0)
goto errout;
diff --git a/net/sctp/sm_sideeffect.c b/net/sctp/sm_sideeffect.c
-index 12d4519..367dae4 100644
+index c345bf1..41a50e5 100644
--- a/net/sctp/sm_sideeffect.c
+++ b/net/sctp/sm_sideeffect.c
@@ -444,7 +444,7 @@ static void sctp_generate_sack_event(unsigned long data)
@@ -166434,7 +170541,7 @@ index 12d4519..367dae4 100644
NULL,
sctp_generate_t1_cookie_event,
sctp_generate_t1_init_event,
-@@ -1097,7 +1097,7 @@ int sctp_do_sm(struct net *net, sctp_event_t event_type, sctp_subtype_t subtype,
+@@ -1091,7 +1091,7 @@ int sctp_do_sm(struct net *net, sctp_event_t event_type, sctp_subtype_t subtype,
const sctp_sm_table_entry_t *state_fn;
sctp_disposition_t status;
int error = 0;
@@ -166444,79 +170551,19 @@ index 12d4519..367dae4 100644
NULL, sctp_cname, sctp_tname, sctp_oname, sctp_pname,
};
diff --git a/net/sctp/socket.c b/net/sctp/socket.c
-index 7b0e059..96ff619 100644
+index ca12aa3..7a691ba 100644
--- a/net/sctp/socket.c
+++ b/net/sctp/socket.c
-@@ -2202,11 +2202,13 @@ static int sctp_setsockopt_events(struct sock *sk, char __user *optval,
- {
- struct sctp_association *asoc;
- struct sctp_ulpevent *event;
-+ struct sctp_event_subscribe subscribe;
-
- if (optlen > sizeof(struct sctp_event_subscribe))
- return -EINVAL;
-- if (copy_from_user(&sctp_sk(sk)->subscribe, optval, optlen))
-+ if (copy_from_user(&subscribe, optval, optlen))
- return -EFAULT;
-+ sctp_sk(sk)->subscribe = subscribe;
-
- /* At the time when a user app subscribes to SCTP_SENDER_DRY_EVENT,
- * if there is no data to be sent or retransmit, the stack will
-@@ -4685,13 +4687,16 @@ static int sctp_getsockopt_disable_fragments(struct sock *sk, int len,
- static int sctp_getsockopt_events(struct sock *sk, int len, char __user *optval,
- int __user *optlen)
- {
-+ struct sctp_event_subscribe subscribe;
-+
- if (len == 0)
- return -EINVAL;
- if (len > sizeof(struct sctp_event_subscribe))
- len = sizeof(struct sctp_event_subscribe);
- if (put_user(len, optlen))
- return -EFAULT;
-- if (copy_to_user(optval, &sctp_sk(sk)->subscribe, len))
-+ subscribe = sctp_sk(sk)->subscribe;
-+ if (copy_to_user(optval, &subscribe, len))
- return -EFAULT;
- return 0;
- }
-@@ -4709,6 +4714,8 @@ static int sctp_getsockopt_events(struct sock *sk, int len, char __user *optval,
- */
- static int sctp_getsockopt_autoclose(struct sock *sk, int len, char __user *optval, int __user *optlen)
- {
-+ __u32 autoclose;
-+
- /* Applicable to UDP-style socket only */
- if (sctp_style(sk, TCP))
- return -EOPNOTSUPP;
-@@ -4717,7 +4724,8 @@ static int sctp_getsockopt_autoclose(struct sock *sk, int len, char __user *optv
+@@ -4719,7 +4719,7 @@ static int sctp_getsockopt_autoclose(struct sock *sk, int len, char __user *optv
len = sizeof(int);
if (put_user(len, optlen))
return -EFAULT;
- if (copy_to_user(optval, &sctp_sk(sk)->autoclose, sizeof(int)))
-+ autoclose = sctp_sk(sk)->autoclose;
-+ if (copy_to_user(optval, &autoclose, sizeof(int)))
- return -EFAULT;
- return 0;
- }
-@@ -5091,12 +5099,15 @@ static int sctp_getsockopt_delayed_ack(struct sock *sk, int len,
- */
- static int sctp_getsockopt_initmsg(struct sock *sk, int len, char __user *optval, int __user *optlen)
- {
-+ struct sctp_initmsg initmsg;
-+
- if (len < sizeof(struct sctp_initmsg))
- return -EINVAL;
- len = sizeof(struct sctp_initmsg);
- if (put_user(len, optlen))
- return -EFAULT;
-- if (copy_to_user(optval, &sctp_sk(sk)->initmsg, len))
-+ initmsg = sctp_sk(sk)->initmsg;
-+ if (copy_to_user(optval, &initmsg, len))
++ if (put_user(sctp_sk(sk)->autoclose, (int __user *)optval))
return -EFAULT;
return 0;
}
-@@ -5137,6 +5148,8 @@ static int sctp_getsockopt_peer_addrs(struct sock *sk, int len,
+@@ -5139,6 +5139,8 @@ static int sctp_getsockopt_peer_addrs(struct sock *sk, int len,
->addr_to_user(sp, &temp);
if (space_left < addrlen)
return -ENOMEM;
@@ -166525,6 +170572,17 @@ index 7b0e059..96ff619 100644
if (copy_to_user(to, &temp, addrlen))
return -EFAULT;
to += addrlen;
+@@ -7854,6 +7856,10 @@ struct proto sctp_prot = {
+ .unhash = sctp_unhash,
+ .get_port = sctp_get_port,
+ .obj_size = sizeof(struct sctp_sock),
++ .useroffset = offsetof(struct sctp_sock, subscribe),
++ .usersize = offsetof(struct sctp_sock, initmsg) -
++ offsetof(struct sctp_sock, subscribe) +
++ sizeof(((struct sctp_sock *)0)->initmsg),
+ .sysctl_mem = sysctl_sctp_mem,
+ .sysctl_rmem = sysctl_sctp_rmem,
+ .sysctl_wmem = sysctl_sctp_wmem,
diff --git a/net/sctp/sysctl.c b/net/sctp/sysctl.c
index daf8554..4ab495b 100644
--- a/net/sctp/sysctl.c
@@ -166575,7 +170633,7 @@ index daf8554..4ab495b 100644
table = kmemdup(sctp_net_table, sizeof(sctp_net_table), GFP_KERNEL);
diff --git a/net/socket.c b/net/socket.c
-index 03bc2c2..d3f4699 100644
+index 73dc69f..ca77f2f 100644
--- a/net/socket.c
+++ b/net/socket.c
@@ -89,6 +89,7 @@
@@ -166603,8 +170661,8 @@ index 03bc2c2..d3f4699 100644
/*
* Statistics counters of the socket lists
-@@ -327,7 +329,7 @@ static struct dentry *sockfs_mount(struct file_system_type *fs_type,
- &sockfs_dentry_operations, SOCKFS_MAGIC);
+@@ -369,7 +371,7 @@ static struct dentry *sockfs_mount(struct file_system_type *fs_type,
+ &sockfs_dentry_operations, SOCKFS_MAGIC);
}
-static struct vfsmount *sock_mnt __read_mostly;
@@ -166612,7 +170670,7 @@ index 03bc2c2..d3f4699 100644
static struct file_system_type sock_fs_type = {
.name = "sockfs",
-@@ -1096,6 +1098,8 @@ int __sock_create(struct net *net, int family, int type, int protocol,
+@@ -1108,6 +1110,8 @@ int __sock_create(struct net *net, int family, int type, int protocol,
return -EAFNOSUPPORT;
if (type < 0 || type >= SOCK_MAX)
return -EINVAL;
@@ -166621,7 +170679,7 @@ index 03bc2c2..d3f4699 100644
/* Compatibility.
-@@ -1112,6 +1116,20 @@ int __sock_create(struct net *net, int family, int type, int protocol,
+@@ -1124,6 +1128,20 @@ int __sock_create(struct net *net, int family, int type, int protocol,
if (err)
return err;
@@ -166642,7 +170700,7 @@ index 03bc2c2..d3f4699 100644
/*
* Allocate the socket and allow the family to set things up. if
* the protocol is 0, the family is instructed to select an appropriate
-@@ -1363,6 +1381,14 @@ SYSCALL_DEFINE3(bind, int, fd, struct sockaddr __user *, umyaddr, int, addrlen)
+@@ -1375,6 +1393,14 @@ SYSCALL_DEFINE3(bind, int, fd, struct sockaddr __user *, umyaddr, int, addrlen)
if (sock) {
err = move_addr_to_kernel(umyaddr, addrlen, &address);
if (err >= 0) {
@@ -166657,7 +170715,7 @@ index 03bc2c2..d3f4699 100644
err = security_socket_bind(sock,
(struct sockaddr *)&address,
addrlen);
-@@ -1371,6 +1397,7 @@ SYSCALL_DEFINE3(bind, int, fd, struct sockaddr __user *, umyaddr, int, addrlen)
+@@ -1383,6 +1409,7 @@ SYSCALL_DEFINE3(bind, int, fd, struct sockaddr __user *, umyaddr, int, addrlen)
(struct sockaddr *)
&address, addrlen);
}
@@ -166665,7 +170723,7 @@ index 03bc2c2..d3f4699 100644
fput_light(sock->file, fput_needed);
}
return err;
-@@ -1394,10 +1421,20 @@ SYSCALL_DEFINE2(listen, int, fd, int, backlog)
+@@ -1406,10 +1433,20 @@ SYSCALL_DEFINE2(listen, int, fd, int, backlog)
if ((unsigned int)backlog > somaxconn)
backlog = somaxconn;
@@ -166686,7 +170744,7 @@ index 03bc2c2..d3f4699 100644
fput_light(sock->file, fput_needed);
}
return err;
-@@ -1441,6 +1478,18 @@ SYSCALL_DEFINE4(accept4, int, fd, struct sockaddr __user *, upeer_sockaddr,
+@@ -1453,6 +1490,18 @@ SYSCALL_DEFINE4(accept4, int, fd, struct sockaddr __user *, upeer_sockaddr,
newsock->type = sock->type;
newsock->ops = sock->ops;
@@ -166705,7 +170763,7 @@ index 03bc2c2..d3f4699 100644
/*
* We don't need try_module_get here, as the listening socket (sock)
* has the protocol module (sock->ops->owner) held.
-@@ -1486,6 +1535,8 @@ SYSCALL_DEFINE4(accept4, int, fd, struct sockaddr __user *, upeer_sockaddr,
+@@ -1498,6 +1547,8 @@ SYSCALL_DEFINE4(accept4, int, fd, struct sockaddr __user *, upeer_sockaddr,
fd_install(newfd, newfile);
err = newfd;
@@ -166714,7 +170772,7 @@ index 03bc2c2..d3f4699 100644
out_put:
fput_light(sock->file, fput_needed);
out:
-@@ -1518,6 +1569,7 @@ SYSCALL_DEFINE3(connect, int, fd, struct sockaddr __user *, uservaddr,
+@@ -1530,6 +1581,7 @@ SYSCALL_DEFINE3(connect, int, fd, struct sockaddr __user *, uservaddr,
int, addrlen)
{
struct socket *sock;
@@ -166722,7 +170780,7 @@ index 03bc2c2..d3f4699 100644
struct sockaddr_storage address;
int err, fput_needed;
-@@ -1528,6 +1580,17 @@ SYSCALL_DEFINE3(connect, int, fd, struct sockaddr __user *, uservaddr,
+@@ -1540,6 +1592,17 @@ SYSCALL_DEFINE3(connect, int, fd, struct sockaddr __user *, uservaddr,
if (err < 0)
goto out_put;
@@ -166740,7 +170798,7 @@ index 03bc2c2..d3f4699 100644
err =
security_socket_connect(sock, (struct sockaddr *)&address, addrlen);
if (err)
-@@ -1550,7 +1613,7 @@ SYSCALL_DEFINE3(getsockname, int, fd, struct sockaddr __user *, usockaddr,
+@@ -1562,7 +1625,7 @@ SYSCALL_DEFINE3(getsockname, int, fd, struct sockaddr __user *, usockaddr,
int __user *, usockaddr_len)
{
struct socket *sock;
@@ -166749,7 +170807,7 @@ index 03bc2c2..d3f4699 100644
int len, err, fput_needed;
sock = sockfd_lookup_light(fd, &err, &fput_needed);
-@@ -1581,7 +1644,7 @@ SYSCALL_DEFINE3(getpeername, int, fd, struct sockaddr __user *, usockaddr,
+@@ -1593,7 +1656,7 @@ SYSCALL_DEFINE3(getpeername, int, fd, struct sockaddr __user *, usockaddr,
int __user *, usockaddr_len)
{
struct socket *sock;
@@ -166758,7 +170816,7 @@ index 03bc2c2..d3f4699 100644
int len, err, fput_needed;
sock = sockfd_lookup_light(fd, &err, &fput_needed);
-@@ -1609,6 +1672,8 @@ SYSCALL_DEFINE3(getpeername, int, fd, struct sockaddr __user *, usockaddr,
+@@ -1621,6 +1684,8 @@ SYSCALL_DEFINE3(getpeername, int, fd, struct sockaddr __user *, usockaddr,
* the protocol.
*/
@@ -166767,7 +170825,7 @@ index 03bc2c2..d3f4699 100644
SYSCALL_DEFINE6(sendto, int, fd, void __user *, buff, size_t, len,
unsigned int, flags, struct sockaddr __user *, addr,
int, addr_len)
-@@ -1672,7 +1737,7 @@ SYSCALL_DEFINE6(recvfrom, int, fd, void __user *, ubuf, size_t, size,
+@@ -1684,7 +1749,7 @@ SYSCALL_DEFINE6(recvfrom, int, fd, void __user *, ubuf, size_t, size,
struct socket *sock;
struct iovec iov;
struct msghdr msg;
@@ -166776,7 +170834,7 @@ index 03bc2c2..d3f4699 100644
int err, err2;
int fput_needed;
-@@ -1917,7 +1982,7 @@ static int ___sys_sendmsg(struct socket *sock, struct user_msghdr __user *msg,
+@@ -1929,7 +1994,7 @@ static int ___sys_sendmsg(struct socket *sock, struct user_msghdr __user *msg,
* checking falls down on this.
*/
if (copy_from_user(ctl_buf,
@@ -166785,7 +170843,7 @@ index 03bc2c2..d3f4699 100644
ctl_len))
goto out_freectl;
msg_sys->msg_control = ctl_buf;
-@@ -2075,7 +2140,7 @@ static int ___sys_recvmsg(struct socket *sock, struct user_msghdr __user *msg,
+@@ -2087,7 +2152,7 @@ static int ___sys_recvmsg(struct socket *sock, struct user_msghdr __user *msg,
ssize_t err;
/* kernel mode address */
@@ -166794,7 +170852,7 @@ index 03bc2c2..d3f4699 100644
/* user mode address pointers */
struct sockaddr __user *uaddr;
-@@ -2721,7 +2786,7 @@ static int ethtool_ioctl(struct net *net, struct compat_ifreq __user *ifr32)
+@@ -2733,7 +2798,7 @@ static int ethtool_ioctl(struct net *net, struct compat_ifreq __user *ifr32)
ifr = compat_alloc_user_space(buf_size);
rxnfc = (void __user *)ifr + ALIGN(sizeof(struct ifreq), 8);
@@ -166803,7 +170861,7 @@ index 03bc2c2..d3f4699 100644
return -EFAULT;
if (put_user(convert_in ? rxnfc : compat_ptr(data),
-@@ -2832,7 +2897,7 @@ static int bond_ioctl(struct net *net, unsigned int cmd,
+@@ -2844,7 +2909,7 @@ static int bond_ioctl(struct net *net, unsigned int cmd,
old_fs = get_fs();
set_fs(KERNEL_DS);
err = dev_ioctl(net, cmd,
@@ -166812,7 +170870,7 @@ index 03bc2c2..d3f4699 100644
set_fs(old_fs);
return err;
-@@ -2925,7 +2990,7 @@ static int compat_sioc_ifmap(struct net *net, unsigned int cmd,
+@@ -2937,7 +3002,7 @@ static int compat_sioc_ifmap(struct net *net, unsigned int cmd,
old_fs = get_fs();
set_fs(KERNEL_DS);
@@ -166821,7 +170879,7 @@ index 03bc2c2..d3f4699 100644
set_fs(old_fs);
if (cmd == SIOCGIFMAP && !err) {
-@@ -3009,7 +3074,7 @@ static int routing_ioctl(struct net *net, struct socket *sock,
+@@ -3021,7 +3086,7 @@ static int routing_ioctl(struct net *net, struct socket *sock,
ret |= get_user(rtdev, &(ur4->rt_dev));
if (rtdev) {
ret |= copy_from_user(devname, compat_ptr(rtdev), 15);
@@ -166830,7 +170888,7 @@ index 03bc2c2..d3f4699 100644
devname[15] = 0;
} else
r4.rt_dev = NULL;
-@@ -3236,8 +3301,8 @@ int kernel_getsockopt(struct socket *sock, int level, int optname,
+@@ -3248,8 +3313,8 @@ int kernel_getsockopt(struct socket *sock, int level, int optname,
int __user *uoptlen;
int err;
@@ -166841,7 +170899,7 @@ index 03bc2c2..d3f4699 100644
set_fs(KERNEL_DS);
if (level == SOL_SOCKET)
-@@ -3257,7 +3322,7 @@ int kernel_setsockopt(struct socket *sock, int level, int optname,
+@@ -3269,7 +3334,7 @@ int kernel_setsockopt(struct socket *sock, int level, int optname,
char __user *uoptval;
int err;
@@ -166878,7 +170936,7 @@ index f0c6a8c..3acb459 100644
.p_replen = GSSX_RES_##name##_sz, \
.p_statidx = GSSX_##proc, \
diff --git a/net/sunrpc/auth_gss/gss_rpc_xdr.c b/net/sunrpc/auth_gss/gss_rpc_xdr.c
-index eeeba5a..c0d96a1 100644
+index 25d9a9c..89a9726 100644
--- a/net/sunrpc/auth_gss/gss_rpc_xdr.c
+++ b/net/sunrpc/auth_gss/gss_rpc_xdr.c
@@ -731,10 +731,12 @@ static int gssx_enc_cb(struct xdr_stream *xdr, struct gssx_cb *cb)
@@ -166896,7 +170954,7 @@ index eeeba5a..c0d96a1 100644
int err;
err = gssx_enc_call_ctx(xdr, &arg->call_ctx);
-@@ -787,10 +789,11 @@ done:
+@@ -787,10 +789,11 @@ void gssx_enc_accept_sec_context(struct rpc_rqst *req,
dprintk("RPC: gssx_enc_accept_sec_context: %d\n", err);
}
@@ -166932,10 +170990,10 @@ index 9d88c62..53396b6 100644
#define gssx_dec_release_handle NULL
#define gssx_enc_get_mic NULL
diff --git a/net/sunrpc/auth_gss/svcauth_gss.c b/net/sunrpc/auth_gss/svcauth_gss.c
-index d858202..307157b 100644
+index 6fdffde..41a4b00 100644
--- a/net/sunrpc/auth_gss/svcauth_gss.c
+++ b/net/sunrpc/auth_gss/svcauth_gss.c
-@@ -1142,7 +1142,7 @@ static int gss_proxy_save_rsc(struct cache_detail *cd,
+@@ -1149,7 +1149,7 @@ static int gss_proxy_save_rsc(struct cache_detail *cd,
uint64_t *handle)
{
struct rsc rsci, *rscp = NULL;
@@ -166944,7 +171002,7 @@ index d858202..307157b 100644
long long ctxh;
struct gss_api_mech *gm = NULL;
time_t expiry;
-@@ -1153,7 +1153,7 @@ static int gss_proxy_save_rsc(struct cache_detail *cd,
+@@ -1160,7 +1160,7 @@ static int gss_proxy_save_rsc(struct cache_detail *cd,
status = -ENOMEM;
/* the handle needs to be just a unique id,
* use a static counter */
@@ -166954,10 +171012,10 @@ index d858202..307157b 100644
/* make a copy for the caller */
*handle = ctxh;
diff --git a/net/sunrpc/cache.c b/net/sunrpc/cache.c
-index 4d8e11f..dcbf350 100644
+index 8aabe12..52b88d4 100644
--- a/net/sunrpc/cache.c
+++ b/net/sunrpc/cache.c
-@@ -1623,7 +1623,7 @@ static int create_cache_proc_entries(struct cache_detail *cd, struct net *net)
+@@ -1624,7 +1624,7 @@ static int create_cache_proc_entries(struct cache_detail *cd, struct net *net)
struct sunrpc_net *sn;
sn = net_generic(net, sunrpc_net_id);
@@ -166967,10 +171025,10 @@ index 4d8e11f..dcbf350 100644
goto out_nomem;
cd->u.procfs.channel_ent = NULL;
diff --git a/net/sunrpc/clnt.c b/net/sunrpc/clnt.c
-index 66f23b3..84d4821 100644
+index b2ae4f1..b89288c 100644
--- a/net/sunrpc/clnt.c
+++ b/net/sunrpc/clnt.c
-@@ -1544,7 +1544,9 @@ call_start(struct rpc_task *task)
+@@ -1547,7 +1547,9 @@ call_start(struct rpc_task *task)
(RPC_IS_ASYNC(task) ? "async" : "sync"));
/* Increment call count */
@@ -167055,7 +171113,7 @@ index 5b30603..d49e23a 100644
struct sockaddr_storage address;
struct sockaddr *sap = (struct sockaddr *)&address;
__be32 *p;
-@@ -992,8 +1002,8 @@ out_fail:
+@@ -992,8 +1002,8 @@ static int rpcb_dec_getaddr(struct rpc_rqst *req, struct xdr_stream *xdr,
static struct rpc_procinfo rpcb_procedures2[] = {
[RPCBPROC_SET] = {
.p_proc = RPCBPROC_SET,
@@ -167155,7 +171213,7 @@ index 5b30603..d49e23a 100644
.p_replen = RPCB_getaddrres_sz,
.p_statidx = RPCBPROC_GETADDR,
diff --git a/net/sunrpc/sched.c b/net/sunrpc/sched.c
-index 9ae5885..3aa6335 100644
+index 5db68b3..174f818 100644
--- a/net/sunrpc/sched.c
+++ b/net/sunrpc/sched.c
@@ -262,9 +262,9 @@ static int rpc_wait_bit_killable(struct wait_bit_key *key, int mode)
@@ -167184,7 +171242,7 @@ index 2ecb994..5afb49f 100644
return -ENOMEM;
diff --git a/net/sunrpc/svc.c b/net/sunrpc/svc.c
-index c5b0cb4..8ef3bff 100644
+index 7c8070e..a3dd59d 100644
--- a/net/sunrpc/svc.c
+++ b/net/sunrpc/svc.c
@@ -50,7 +50,7 @@ EXPORT_SYMBOL_GPL(svc_pool_map);
@@ -167196,7 +171254,7 @@ index c5b0cb4..8ef3bff 100644
{
int *ip = (int *)kp->arg;
struct svc_pool_map *m = &svc_pool_map;
-@@ -80,7 +80,7 @@ out:
+@@ -80,7 +80,7 @@ param_set_pool_mode(const char *val, struct kernel_param *kp)
}
static int
@@ -167205,7 +171263,7 @@ index c5b0cb4..8ef3bff 100644
{
int *ip = (int *)kp->arg;
-@@ -1166,7 +1166,9 @@ svc_process_common(struct svc_rqst *rqstp, struct kvec *argv, struct kvec *resv)
+@@ -1183,7 +1183,9 @@ svc_process_common(struct svc_rqst *rqstp, struct kvec *argv, struct kvec *resv)
svc_putnl(resv, RPC_SUCCESS);
/* Bump per-procedure stats counter */
@@ -167217,7 +171275,7 @@ index c5b0cb4..8ef3bff 100644
/* Initialize storage for argp and resp */
memset(rqstp->rq_argp, 0, procp->pc_argsize);
diff --git a/net/sunrpc/svcauth_unix.c b/net/sunrpc/svcauth_unix.c
-index dfacdc9..3cb08de 100644
+index 64af4f0..199fb48 100644
--- a/net/sunrpc/svcauth_unix.c
+++ b/net/sunrpc/svcauth_unix.c
@@ -470,7 +470,7 @@ static void unix_gid_request(struct cache_detail *cd,
@@ -167362,7 +171420,7 @@ index c846ca9..d5968b4 100644
.proc_handler = read_reset_stat,
},
diff --git a/net/sunrpc/xprtrdma/svc_rdma_recvfrom.c b/net/sunrpc/xprtrdma/svc_rdma_recvfrom.c
-index ad1df97..83b90c7 100644
+index a47c9bd..e1287f0 100644
--- a/net/sunrpc/xprtrdma/svc_rdma_recvfrom.c
+++ b/net/sunrpc/xprtrdma/svc_rdma_recvfrom.c
@@ -200,7 +200,7 @@ int rdma_read_chunk_lcl(struct svcxprt_rdma *xprt,
@@ -167382,8 +171440,8 @@ index ad1df97..83b90c7 100644
+ atomic_inc_unchecked(&rdma_stat_read);
return ret;
err:
- ib_dma_unmap_sg(xprt->sc_cm_id->device,
-@@ -612,7 +612,7 @@ int svc_rdma_recvfrom(struct svc_rqst *rqstp)
+ svc_rdma_put_context(ctxt, 0);
+@@ -610,7 +610,7 @@ int svc_rdma_recvfrom(struct svc_rqst *rqstp)
dto_q);
list_del_init(&ctxt->dto_q);
} else {
@@ -167392,7 +171450,7 @@ index ad1df97..83b90c7 100644
clear_bit(XPT_DATA, &xprt->xpt_flags);
ctxt = NULL;
}
-@@ -629,7 +629,7 @@ int svc_rdma_recvfrom(struct svc_rqst *rqstp)
+@@ -627,7 +627,7 @@ int svc_rdma_recvfrom(struct svc_rqst *rqstp)
}
dprintk("svcrdma: processing ctxt=%p on xprt=%p, rqstp=%p, status=%d\n",
ctxt, rdma_xprt, rqstp, ctxt->wc_status);
@@ -167402,10 +171460,10 @@ index ad1df97..83b90c7 100644
/* Build up the XDR from the receive buffers. */
rdma_build_arg_xdr(rqstp, ctxt, ctxt->byte_len);
diff --git a/net/sunrpc/xprtrdma/svc_rdma_sendto.c b/net/sunrpc/xprtrdma/svc_rdma_sendto.c
-index 3b95b19..914e482 100644
+index f5a91ed..932f587 100644
--- a/net/sunrpc/xprtrdma/svc_rdma_sendto.c
+++ b/net/sunrpc/xprtrdma/svc_rdma_sendto.c
-@@ -307,7 +307,7 @@ static int send_write(struct svcxprt_rdma *xprt, struct svc_rqst *rqstp,
+@@ -349,7 +349,7 @@ static int send_write(struct svcxprt_rdma *xprt, struct svc_rqst *rqstp,
write_wr.remote_addr = to;
/* Post It */
@@ -167415,10 +171473,10 @@ index 3b95b19..914e482 100644
goto err;
return write_len - bc;
diff --git a/net/sunrpc/xprtrdma/svc_rdma_transport.c b/net/sunrpc/xprtrdma/svc_rdma_transport.c
-index a55b8093a..c32fb3b 100644
+index 1334de2..1fa9a7f 100644
--- a/net/sunrpc/xprtrdma/svc_rdma_transport.c
+++ b/net/sunrpc/xprtrdma/svc_rdma_transport.c
-@@ -1310,7 +1310,7 @@ int svc_rdma_send(struct svcxprt_rdma *xprt, struct ib_send_wr *wr)
+@@ -1342,7 +1342,7 @@ int svc_rdma_send(struct svcxprt_rdma *xprt, struct ib_send_wr *wr)
spin_lock_bh(&xprt->sc_lock);
if (xprt->sc_sq_depth < atomic_read(&xprt->sc_sq_count) + wr_count) {
spin_unlock_bh(&xprt->sc_lock);
@@ -167483,7 +171541,7 @@ index 0dd0224..36a22a0 100644
sub->evt.event = htohl(event, sub->swap);
sub->evt.found_lower = htohl(found_lower, sub->swap);
diff --git a/net/unix/af_unix.c b/net/unix/af_unix.c
-index 568f307..e5ca018 100644
+index 2d03d5b..0905d71 100644
--- a/net/unix/af_unix.c
+++ b/net/unix/af_unix.c
@@ -921,6 +921,12 @@ static struct sock *unix_find_other(struct net *net,
@@ -167533,7 +171591,16 @@ index 568f307..e5ca018 100644
done_path_create(&path, dentry);
return err;
}
-@@ -2804,9 +2824,13 @@ static int unix_seq_show(struct seq_file *seq, void *v)
+@@ -995,7 +1015,7 @@ static int unix_bind(struct socket *sock, struct sockaddr *uaddr, int addr_len)
+ unsigned int hash;
+ struct unix_address *addr;
+ struct hlist_head *list;
+- struct path path = { NULL, NULL };
++ struct path path = { };
+
+ err = -EINVAL;
+ if (sunaddr->sun_family != AF_UNIX)
+@@ -2794,9 +2814,13 @@ static int unix_seq_show(struct seq_file *seq, void *v)
seq_puts(seq, "Num RefCount Protocol Flags Type St "
"Inode Path\n");
else {
@@ -167548,12 +171615,13 @@ index 568f307..e5ca018 100644
seq_printf(seq, "%pK: %08X %08X %08X %04X %02X %5lu",
s,
-@@ -2831,10 +2855,29 @@ static int unix_seq_show(struct seq_file *seq, void *v)
+@@ -2821,11 +2845,32 @@ static int unix_seq_show(struct seq_file *seq, void *v)
seq_putc(seq, '@');
i++;
}
- for ( ; i < len; i++)
-- seq_putc(seq, u->addr->name->sun_path[i]);
+- seq_putc(seq, u->addr->name->sun_path[i] ?:
+- '@');
- }
- unix_state_unlock(s);
+ for ( ; i < len; i++) {
@@ -167571,6 +171639,9 @@ index 568f307..e5ca018 100644
+ seq_putc(seq, '\\');
+ seq_putc(seq, '\\');
+ break;
++ case 0:
++ seq_putc(seq, '@');
++ break;
+ default:
+ seq_putc(seq, c);
+ }
@@ -167687,10 +171758,10 @@ index 21e591d..f3a0afc 100644
+ .process_negotiate = vmci_transport_notify_pkt_process_negotiate,
};
diff --git a/net/wireless/scan.c b/net/wireless/scan.c
-index 438143a..b88cdf6 100644
+index 35ad69f..6ac3d49 100644
--- a/net/wireless/scan.c
+++ b/net/wireless/scan.c
-@@ -1732,8 +1732,9 @@ static int ieee80211_scan_results(struct cfg80211_registered_device *rdev,
+@@ -1728,8 +1728,9 @@ static int ieee80211_scan_results(struct cfg80211_registered_device *rdev,
int cfg80211_wext_giwscan(struct net_device *dev,
struct iw_request_info *info,
@@ -167702,7 +171773,7 @@ index 438143a..b88cdf6 100644
int res;
diff --git a/net/wireless/wext-compat.c b/net/wireless/wext-compat.c
-index 9f27221..031b0c4 100644
+index a220156..9d7dc62 100644
--- a/net/wireless/wext-compat.c
+++ b/net/wireless/wext-compat.c
@@ -23,16 +23,19 @@
@@ -167815,7 +171886,7 @@ index 9f27221..031b0c4 100644
struct wireless_dev *wdev = dev->ieee80211_ptr;
retry->disabled = 0;
-@@ -551,8 +562,9 @@ static int cfg80211_set_encryption(struct cfg80211_registered_device *rdev,
+@@ -564,8 +575,9 @@ static int cfg80211_set_encryption(struct cfg80211_registered_device *rdev,
static int cfg80211_wext_siwencode(struct net_device *dev,
struct iw_request_info *info,
@@ -167826,7 +171897,7 @@ index 9f27221..031b0c4 100644
struct wireless_dev *wdev = dev->ieee80211_ptr;
struct cfg80211_registered_device *rdev = wiphy_to_rdev(wdev->wiphy);
int idx, err;
-@@ -611,8 +623,9 @@ static int cfg80211_wext_siwencode(struct net_device *dev,
+@@ -624,8 +636,9 @@ static int cfg80211_wext_siwencode(struct net_device *dev,
static int cfg80211_wext_siwencodeext(struct net_device *dev,
struct iw_request_info *info,
@@ -167837,7 +171908,7 @@ index 9f27221..031b0c4 100644
struct wireless_dev *wdev = dev->ieee80211_ptr;
struct cfg80211_registered_device *rdev = wiphy_to_rdev(wdev->wiphy);
struct iw_encode_ext *ext = (struct iw_encode_ext *) extra;
-@@ -702,8 +715,9 @@ static int cfg80211_wext_siwencodeext(struct net_device *dev,
+@@ -715,8 +728,9 @@ static int cfg80211_wext_siwencodeext(struct net_device *dev,
static int cfg80211_wext_giwencode(struct net_device *dev,
struct iw_request_info *info,
@@ -167848,7 +171919,7 @@ index 9f27221..031b0c4 100644
struct wireless_dev *wdev = dev->ieee80211_ptr;
int idx;
-@@ -739,8 +753,9 @@ static int cfg80211_wext_giwencode(struct net_device *dev,
+@@ -752,8 +766,9 @@ static int cfg80211_wext_giwencode(struct net_device *dev,
static int cfg80211_wext_siwfreq(struct net_device *dev,
struct iw_request_info *info,
@@ -167859,7 +171930,7 @@ index 9f27221..031b0c4 100644
struct wireless_dev *wdev = dev->ieee80211_ptr;
struct cfg80211_registered_device *rdev = wiphy_to_rdev(wdev->wiphy);
struct cfg80211_chan_def chandef = {
-@@ -782,8 +797,9 @@ static int cfg80211_wext_siwfreq(struct net_device *dev,
+@@ -795,8 +810,9 @@ static int cfg80211_wext_siwfreq(struct net_device *dev,
static int cfg80211_wext_giwfreq(struct net_device *dev,
struct iw_request_info *info,
@@ -167870,7 +171941,7 @@ index 9f27221..031b0c4 100644
struct wireless_dev *wdev = dev->ieee80211_ptr;
struct cfg80211_registered_device *rdev = wiphy_to_rdev(wdev->wiphy);
struct cfg80211_chan_def chandef;
-@@ -1041,8 +1057,9 @@ static int cfg80211_set_key_mgt(struct wireless_dev *wdev, u32 key_mgt)
+@@ -1054,8 +1070,9 @@ static int cfg80211_set_key_mgt(struct wireless_dev *wdev, u32 key_mgt)
static int cfg80211_wext_siwauth(struct net_device *dev,
struct iw_request_info *info,
@@ -167881,7 +171952,7 @@ index 9f27221..031b0c4 100644
struct wireless_dev *wdev = dev->ieee80211_ptr;
if (wdev->iftype != NL80211_IFTYPE_STATION)
-@@ -1074,7 +1091,7 @@ static int cfg80211_wext_siwauth(struct net_device *dev,
+@@ -1087,7 +1104,7 @@ static int cfg80211_wext_siwauth(struct net_device *dev,
static int cfg80211_wext_giwauth(struct net_device *dev,
struct iw_request_info *info,
@@ -167890,7 +171961,7 @@ index 9f27221..031b0c4 100644
{
/* XXX: what do we need? */
-@@ -1083,8 +1100,9 @@ static int cfg80211_wext_giwauth(struct net_device *dev,
+@@ -1096,8 +1113,9 @@ static int cfg80211_wext_giwauth(struct net_device *dev,
static int cfg80211_wext_siwpower(struct net_device *dev,
struct iw_request_info *info,
@@ -167901,7 +171972,7 @@ index 9f27221..031b0c4 100644
struct wireless_dev *wdev = dev->ieee80211_ptr;
struct cfg80211_registered_device *rdev = wiphy_to_rdev(wdev->wiphy);
bool ps = wdev->ps;
-@@ -1130,8 +1148,9 @@ static int cfg80211_wext_siwpower(struct net_device *dev,
+@@ -1143,8 +1161,9 @@ static int cfg80211_wext_siwpower(struct net_device *dev,
static int cfg80211_wext_giwpower(struct net_device *dev,
struct iw_request_info *info,
@@ -167912,7 +171983,7 @@ index 9f27221..031b0c4 100644
struct wireless_dev *wdev = dev->ieee80211_ptr;
wrq->disabled = !wdev->ps;
-@@ -1185,8 +1204,9 @@ static int cfg80211_wds_wext_giwap(struct net_device *dev,
+@@ -1198,8 +1217,9 @@ static int cfg80211_wds_wext_giwap(struct net_device *dev,
static int cfg80211_wext_siwrate(struct net_device *dev,
struct iw_request_info *info,
@@ -167923,7 +171994,7 @@ index 9f27221..031b0c4 100644
struct wireless_dev *wdev = dev->ieee80211_ptr;
struct cfg80211_registered_device *rdev = wiphy_to_rdev(wdev->wiphy);
struct cfg80211_bitrate_mask mask;
-@@ -1236,8 +1256,9 @@ static int cfg80211_wext_siwrate(struct net_device *dev,
+@@ -1249,8 +1269,9 @@ static int cfg80211_wext_siwrate(struct net_device *dev,
static int cfg80211_wext_giwrate(struct net_device *dev,
struct iw_request_info *info,
@@ -167934,7 +172005,7 @@ index 9f27221..031b0c4 100644
struct wireless_dev *wdev = dev->ieee80211_ptr;
struct cfg80211_registered_device *rdev = wiphy_to_rdev(wdev->wiphy);
/* we are under RTNL - globally locked - so can use a static struct */
-@@ -1344,8 +1365,9 @@ static struct iw_statistics *cfg80211_wireless_stats(struct net_device *dev)
+@@ -1357,8 +1378,9 @@ static struct iw_statistics *cfg80211_wireless_stats(struct net_device *dev)
static int cfg80211_wext_siwap(struct net_device *dev,
struct iw_request_info *info,
@@ -167945,7 +172016,7 @@ index 9f27221..031b0c4 100644
struct wireless_dev *wdev = dev->ieee80211_ptr;
switch (wdev->iftype) {
-@@ -1362,8 +1384,9 @@ static int cfg80211_wext_siwap(struct net_device *dev,
+@@ -1375,8 +1397,9 @@ static int cfg80211_wext_siwap(struct net_device *dev,
static int cfg80211_wext_giwap(struct net_device *dev,
struct iw_request_info *info,
@@ -167956,7 +172027,7 @@ index 9f27221..031b0c4 100644
struct wireless_dev *wdev = dev->ieee80211_ptr;
switch (wdev->iftype) {
-@@ -1380,8 +1403,9 @@ static int cfg80211_wext_giwap(struct net_device *dev,
+@@ -1393,8 +1416,9 @@ static int cfg80211_wext_giwap(struct net_device *dev,
static int cfg80211_wext_siwessid(struct net_device *dev,
struct iw_request_info *info,
@@ -167967,7 +172038,7 @@ index 9f27221..031b0c4 100644
struct wireless_dev *wdev = dev->ieee80211_ptr;
switch (wdev->iftype) {
-@@ -1396,8 +1420,9 @@ static int cfg80211_wext_siwessid(struct net_device *dev,
+@@ -1409,8 +1433,9 @@ static int cfg80211_wext_siwessid(struct net_device *dev,
static int cfg80211_wext_giwessid(struct net_device *dev,
struct iw_request_info *info,
@@ -167978,7 +172049,7 @@ index 9f27221..031b0c4 100644
struct wireless_dev *wdev = dev->ieee80211_ptr;
data->flags = 0;
-@@ -1415,7 +1440,7 @@ static int cfg80211_wext_giwessid(struct net_device *dev,
+@@ -1428,7 +1453,7 @@ static int cfg80211_wext_giwessid(struct net_device *dev,
static int cfg80211_wext_siwpmksa(struct net_device *dev,
struct iw_request_info *info,
@@ -167987,7 +172058,7 @@ index 9f27221..031b0c4 100644
{
struct wireless_dev *wdev = dev->ieee80211_ptr;
struct cfg80211_registered_device *rdev = wiphy_to_rdev(wdev->wiphy);
-@@ -1455,38 +1480,38 @@ static int cfg80211_wext_siwpmksa(struct net_device *dev,
+@@ -1468,38 +1493,38 @@ static int cfg80211_wext_siwpmksa(struct net_device *dev,
}
static const iw_handler cfg80211_handlers[] = {
@@ -168131,10 +172202,10 @@ index 6250b1c..91c4bc4 100644
iwp->length += essid_compat;
diff --git a/net/wireless/wext-sme.c b/net/wireless/wext-sme.c
-index a4e8af3..f8c0e76 100644
+index 9951638..2f62f7e 100644
--- a/net/wireless/wext-sme.c
+++ b/net/wireless/wext-sme.c
-@@ -330,8 +330,9 @@ int cfg80211_mgd_wext_giwap(struct net_device *dev,
+@@ -329,8 +329,9 @@ int cfg80211_mgd_wext_giwap(struct net_device *dev,
int cfg80211_wext_siwgenie(struct net_device *dev,
struct iw_request_info *info,
@@ -168145,7 +172216,7 @@ index a4e8af3..f8c0e76 100644
struct wireless_dev *wdev = dev->ieee80211_ptr;
struct cfg80211_registered_device *rdev = wiphy_to_rdev(wdev->wiphy);
u8 *ie = extra;
-@@ -380,7 +381,7 @@ int cfg80211_wext_siwgenie(struct net_device *dev,
+@@ -379,7 +380,7 @@ int cfg80211_wext_siwgenie(struct net_device *dev,
int cfg80211_wext_siwmlme(struct net_device *dev,
struct iw_request_info *info,
@@ -168181,10 +172252,10 @@ index 0917f04..f4e3d8c 100644
if (!proc_create("x25/route", S_IRUGO, init_net.proc_net,
diff --git a/net/xfrm/xfrm_policy.c b/net/xfrm/xfrm_policy.c
-index 45f9cf9..73feea61 100644
+index 5bf7e1bf..5ef3f83 100644
--- a/net/xfrm/xfrm_policy.c
+++ b/net/xfrm/xfrm_policy.c
-@@ -332,7 +332,7 @@ static void xfrm_policy_kill(struct xfrm_policy *policy)
+@@ -338,7 +338,7 @@ static void xfrm_policy_kill(struct xfrm_policy *policy)
{
policy->walk.dead = 1;
@@ -168193,7 +172264,7 @@ index 45f9cf9..73feea61 100644
if (del_timer(&policy->polq.hold_timer))
xfrm_pol_put(policy);
-@@ -786,7 +786,7 @@ int xfrm_policy_insert(int dir, struct xfrm_policy *policy, int excl)
+@@ -803,7 +803,7 @@ int xfrm_policy_insert(int dir, struct xfrm_policy *policy, int excl)
else
hlist_add_head(&policy->bydst, chain);
__xfrm_policy_link(policy, dir);
@@ -168202,7 +172273,7 @@ index 45f9cf9..73feea61 100644
/* After previous checking, family can either be AF_INET or AF_INET6 */
if (policy->family == AF_INET)
-@@ -1900,7 +1900,7 @@ xfrm_resolve_and_create_bundle(struct xfrm_policy **pols, int num_pols,
+@@ -1928,7 +1928,7 @@ xfrm_resolve_and_create_bundle(struct xfrm_policy **pols, int num_pols,
xdst->num_pols = num_pols;
memcpy(xdst->pols, pols, sizeof(struct xfrm_policy *) * num_pols);
@@ -168211,7 +172282,7 @@ index 45f9cf9..73feea61 100644
return xdst;
}
-@@ -2714,10 +2714,11 @@ void xfrm_garbage_collect(struct net *net)
+@@ -2742,10 +2742,11 @@ void xfrm_garbage_collect(struct net *net)
}
EXPORT_SYMBOL(xfrm_garbage_collect);
@@ -168224,7 +172295,7 @@ index 45f9cf9..73feea61 100644
static void xfrm_init_pmtu(struct dst_entry *dst)
{
-@@ -2767,7 +2768,7 @@ static int xfrm_bundle_ok(struct xfrm_dst *first)
+@@ -2795,7 +2796,7 @@ static int xfrm_bundle_ok(struct xfrm_dst *first)
if (xdst->xfrm_genid != dst->xfrm->genid)
return 0;
if (xdst->num_pols > 0 &&
@@ -168233,7 +172304,7 @@ index 45f9cf9..73feea61 100644
return 0;
mtu = dst_mtu(dst->child);
-@@ -2854,8 +2855,6 @@ int xfrm_policy_register_afinfo(struct xfrm_policy_afinfo *afinfo)
+@@ -2882,8 +2883,6 @@ int xfrm_policy_register_afinfo(struct xfrm_policy_afinfo *afinfo)
dst_ops->link_failure = xfrm_link_failure;
if (likely(dst_ops->neigh_lookup == NULL))
dst_ops->neigh_lookup = xfrm_neigh_lookup;
@@ -168242,7 +172313,7 @@ index 45f9cf9..73feea61 100644
rcu_assign_pointer(xfrm_policy_afinfo[afinfo->family], afinfo);
}
spin_unlock(&xfrm_policy_afinfo_lock);
-@@ -2889,7 +2888,6 @@ int xfrm_policy_unregister_afinfo(struct xfrm_policy_afinfo *afinfo)
+@@ -2917,7 +2916,6 @@ int xfrm_policy_unregister_afinfo(struct xfrm_policy_afinfo *afinfo)
dst_ops->check = NULL;
dst_ops->negative_advice = NULL;
dst_ops->link_failure = NULL;
@@ -168250,7 +172321,7 @@ index 45f9cf9..73feea61 100644
}
return err;
}
-@@ -3078,7 +3076,7 @@ static void __net_exit xfrm_net_exit(struct net *net)
+@@ -3106,7 +3104,7 @@ static void __net_exit xfrm_net_exit(struct net *net)
xfrm_statistics_fini(net);
}
@@ -168259,7 +172330,7 @@ index 45f9cf9..73feea61 100644
.init = xfrm_net_init,
.exit = xfrm_net_exit,
};
-@@ -3270,7 +3268,7 @@ static int xfrm_policy_migrate(struct xfrm_policy *pol,
+@@ -3299,7 +3297,7 @@ static int xfrm_policy_migrate(struct xfrm_policy *pol,
sizeof(pol->xfrm_vec[i].saddr));
pol->xfrm_vec[i].encap_family = mp->new_family;
/* flush bundles */
@@ -168269,10 +172340,10 @@ index 45f9cf9..73feea61 100644
}
diff --git a/net/xfrm/xfrm_state.c b/net/xfrm/xfrm_state.c
-index a30f898d..3930929 100644
+index 419bf5d..cb5cc3a 100644
--- a/net/xfrm/xfrm_state.c
+++ b/net/xfrm/xfrm_state.c
-@@ -166,12 +166,14 @@ int xfrm_register_type(const struct xfrm_type *type, unsigned short family)
+@@ -184,12 +184,14 @@ int xfrm_register_type(const struct xfrm_type *type, unsigned short family)
if (unlikely(afinfo == NULL))
return -EAFNOSUPPORT;
@@ -168290,7 +172361,7 @@ index a30f898d..3930929 100644
err = -EEXIST;
spin_unlock_bh(&xfrm_type_lock);
xfrm_state_put_afinfo(afinfo);
-@@ -187,13 +189,16 @@ int xfrm_unregister_type(const struct xfrm_type *type, unsigned short family)
+@@ -205,13 +207,16 @@ int xfrm_unregister_type(const struct xfrm_type *type, unsigned short family)
if (unlikely(afinfo == NULL))
return -EAFNOSUPPORT;
@@ -168309,7 +172380,7 @@ index a30f898d..3930929 100644
spin_unlock_bh(&xfrm_type_lock);
xfrm_state_put_afinfo(afinfo);
return err;
-@@ -203,7 +208,6 @@ EXPORT_SYMBOL(xfrm_unregister_type);
+@@ -221,7 +226,6 @@ EXPORT_SYMBOL(xfrm_unregister_type);
static const struct xfrm_type *xfrm_get_type(u8 proto, unsigned short family)
{
struct xfrm_state_afinfo *afinfo;
@@ -168317,7 +172388,7 @@ index a30f898d..3930929 100644
const struct xfrm_type *type;
int modload_attempted = 0;
-@@ -211,9 +215,8 @@ retry:
+@@ -229,9 +233,8 @@ static const struct xfrm_type *xfrm_get_type(u8 proto, unsigned short family)
afinfo = xfrm_state_get_afinfo(family);
if (unlikely(afinfo == NULL))
return NULL;
@@ -168328,7 +172399,7 @@ index a30f898d..3930929 100644
if (unlikely(type && !try_module_get(type->owner)))
type = NULL;
if (!type && !modload_attempted) {
-@@ -247,7 +250,7 @@ int xfrm_register_mode(struct xfrm_mode *mode, int family)
+@@ -265,7 +268,7 @@ int xfrm_register_mode(struct xfrm_mode *mode, int family)
return -EAFNOSUPPORT;
err = -EEXIST;
@@ -168337,7 +172408,7 @@ index a30f898d..3930929 100644
spin_lock_bh(&xfrm_mode_lock);
if (modemap[mode->encap])
goto out;
-@@ -256,8 +259,10 @@ int xfrm_register_mode(struct xfrm_mode *mode, int family)
+@@ -274,8 +277,10 @@ int xfrm_register_mode(struct xfrm_mode *mode, int family)
if (!try_module_get(afinfo->owner))
goto out;
@@ -168349,7 +172420,7 @@ index a30f898d..3930929 100644
err = 0;
out:
-@@ -281,10 +286,12 @@ int xfrm_unregister_mode(struct xfrm_mode *mode, int family)
+@@ -299,10 +304,12 @@ int xfrm_unregister_mode(struct xfrm_mode *mode, int family)
return -EAFNOSUPPORT;
err = -ENOENT;
@@ -168363,7 +172434,7 @@ index a30f898d..3930929 100644
module_put(mode->afinfo->owner);
err = 0;
}
-@@ -1506,10 +1513,10 @@ EXPORT_SYMBOL(xfrm_find_acq_byseq);
+@@ -1543,10 +1550,10 @@ EXPORT_SYMBOL(xfrm_find_acq_byseq);
u32 xfrm_get_acqseq(void)
{
u32 res;
@@ -168376,7 +172447,7 @@ index a30f898d..3930929 100644
} while (!res);
return res;
-@@ -1884,7 +1891,7 @@ static DEFINE_SPINLOCK(xfrm_km_lock);
+@@ -1921,7 +1928,7 @@ static DEFINE_SPINLOCK(xfrm_km_lock);
int xfrm_register_km(struct xfrm_mgr *km)
{
spin_lock_bh(&xfrm_km_lock);
@@ -168385,7 +172456,7 @@ index a30f898d..3930929 100644
spin_unlock_bh(&xfrm_km_lock);
return 0;
}
-@@ -1893,7 +1900,7 @@ EXPORT_SYMBOL(xfrm_register_km);
+@@ -1930,7 +1937,7 @@ EXPORT_SYMBOL(xfrm_register_km);
int xfrm_unregister_km(struct xfrm_mgr *km)
{
spin_lock_bh(&xfrm_km_lock);
@@ -168395,7 +172466,7 @@ index a30f898d..3930929 100644
synchronize_rcu();
return 0;
diff --git a/net/xfrm/xfrm_sysctl.c b/net/xfrm/xfrm_sysctl.c
-index 05a6e3d..6716ec9 100644
+index 35a7e79..35847ab 100644
--- a/net/xfrm/xfrm_sysctl.c
+++ b/net/xfrm/xfrm_sysctl.c
@@ -42,7 +42,7 @@ static struct ctl_table xfrm_table[] = {
@@ -168408,7 +172479,7 @@ index 05a6e3d..6716ec9 100644
__xfrm_sysctl_init(net);
diff --git a/net/xfrm/xfrm_user.c b/net/xfrm/xfrm_user.c
-index 0889209..2645a49 100644
+index 671a1d0..1b8c39e 100644
--- a/net/xfrm/xfrm_user.c
+++ b/net/xfrm/xfrm_user.c
@@ -2471,7 +2471,7 @@ static int xfrm_user_rcv_msg(struct sk_buff *skb, struct nlmsghdr *nlh)
@@ -168433,8 +172504,21 @@ index 1792198..2620ac6 100644
# ld-option
# Usage: LDFLAGS += $(call ld-option, -X)
+diff --git a/scripts/Makefile.build b/scripts/Makefile.build
+index 7675d11..243f9a6 100644
+--- a/scripts/Makefile.build
++++ b/scripts/Makefile.build
+@@ -488,7 +488,7 @@ endif
+
+ quiet_cmd_export_list = EXPORTS $@
+ cmd_export_list = $(OBJDUMP) -h $< | \
+- sed -ne '/___ksymtab/{s/.*+/$(ref_prefix)/;s/ .*/)/;p}' >$(ksyms-lds);\
++ sed -ne '/___ksymtab/s/.*+\([^ ]*\).*/$(ref_prefix)\1)/p' >$(ksyms-lds);\
+ rm -f $(dummy-object);\
+ $(AR) rcs$(KBUILD_ARFLAGS) $(dummy-object);\
+ $(LD) $(ld_flags) -r -o $@ -T $(ksyms-lds) $(dummy-object);\
diff --git a/scripts/Makefile.extrawarn b/scripts/Makefile.extrawarn
-index 53449a6..c1fd180 100644
+index 7c321a6..63c0fde 100644
--- a/scripts/Makefile.extrawarn
+++ b/scripts/Makefile.extrawarn
@@ -28,6 +28,10 @@ warning-1 += $(call cc-option, -Wunused-const-variable)
@@ -168449,18 +172533,18 @@ index 53449a6..c1fd180 100644
warning-2 += -Wcast-align
warning-2 += -Wdisabled-optimization
diff --git a/scripts/Makefile.gcc-plugins b/scripts/Makefile.gcc-plugins
-index 61f0e6d..5486c77 100644
+index 060d2cb..f15dad8 100644
--- a/scripts/Makefile.gcc-plugins
+++ b/scripts/Makefile.gcc-plugins
-@@ -19,16 +19,84 @@ ifdef CONFIG_GCC_PLUGINS
- endif
+@@ -26,16 +26,79 @@ ifdef CONFIG_GCC_PLUGINS
endif
-- GCC_PLUGINS_CFLAGS := $(strip $(addprefix -fplugin=$(objtree)/scripts/gcc-plugins/, $(gcc-plugin-y)) $(gcc-plugin-cflags-y))
+ GCC_PLUGINS_CFLAGS := $(strip $(addprefix -fplugin=$(objtree)/scripts/gcc-plugins/, $(gcc-plugin-y)) $(gcc-plugin-cflags-y))
+ gcc-plugin-$(CONFIG_PAX_CONSTIFY_PLUGIN) += constify_plugin.so
+ gcc-plugin-cflags-$(CONFIG_PAX_CONSTIFY_PLUGIN) += -DCONSTIFY_PLUGIN
-- export PLUGINCC GCC_PLUGINS_CFLAGS GCC_PLUGIN GCC_PLUGIN_SUBDIR SANCOV_PLUGIN
+- export PLUGINCC GCC_PLUGINS_CFLAGS GCC_PLUGIN GCC_PLUGIN_SUBDIR
+- export SANCOV_PLUGIN DISABLE_LATENT_ENTROPY_PLUGIN
+ gcc-plugin-$(CONFIG_PAX_MEMORY_STACKLEAK) += stackleak_plugin.so
+ gcc-plugin-cflags-$(CONFIG_PAX_MEMORY_STACKLEAK) += -DSTACKLEAK_PLUGIN -fplugin-arg-stackleak_plugin-track-lowest-sp=100
+
@@ -168495,13 +172579,6 @@ index 61f0e6d..5486c77 100644
+ gcc-plugin-cflags-$(CONFIG_GRKERNSEC_RANDSTRUCT) += -DRANDSTRUCT_PLUGIN
+ gcc-plugin-cflags-$(CONFIG_GRKERNSEC_RANDSTRUCT_PERFORMANCE) += -fplugin-arg-randomize_layout_plugin-performance-mode
+
-+
-+ gcc-plugin-$(CONFIG_PAX_LATENT_ENTROPY) += latent_entropy_plugin.so
-+ gcc-plugin-cflags-$(CONFIG_PAX_LATENT_ENTROPY) += -DLATENT_ENTROPY_PLUGIN
-+ ifdef CONFIG_PAX_LATENT_ENTROPY
-+ DISABLE_LATENT_ENTROPY_PLUGIN += -fplugin-arg-latent_entropy_plugin-disable
-+ endif
-+
+ gcc-plugin-$(CONFIG_PAX_MEMORY_STRUCTLEAK) += structleak_plugin.so
+ gcc-plugin-cflags-$(CONFIG_PAX_MEMORY_STRUCTLEAK) += -DSTRUCTLEAK_PLUGIN
@@ -168510,6 +172587,7 @@ index 61f0e6d..5486c77 100644
GCC_PLUGINS_CFLAGS := $(filter-out $(SANCOV_PLUGIN), $(GCC_PLUGINS_CFLAGS))
endif
+- KBUILD_CFLAGS += $(GCC_PLUGINS_CFLAGS)
+ gcc-plugin-$(CONFIG_PAX_INITIFY) += initify_plugin.so
+ gcc-plugin-cflags-$(CONFIG_PAX_INITIFY) += -DINITIFY_PLUGIN -fplugin-arg-initify_plugin-search_init_exit_functions
+ gcc-plugin-cflags-$(CONFIG_PAX_INITIFY_VERBOSE) += -fplugin-arg-initify_plugin-verbose -fplugin-arg-initify_plugin-print_missing_attr
@@ -168520,26 +172598,28 @@ index 61f0e6d..5486c77 100644
+
+ gcc-plugin-subdir-$(CONFIG_PAX_RAP) += rap_plugin
+ gcc-plugin-$(CONFIG_PAX_RAP) += rap_plugin/rap_plugin.so
-+ gcc-plugin-cflags-$(CONFIG_PAX_RAP) += -DRAP_PLUGIN -fplugin-arg-rap_plugin-check=call
++ gcc-plugin-cflags-$(CONFIG_PAX_RAP) += -DRAP_PLUGIN -fplugin-arg-rap_plugin-typecheck=call,ret
++ gcc-plugin-cflags-$(CONFIG_PAX_RAP) += -fplugin-arg-rap_plugin-hash=abs-finish
++ gcc-plugin-cflags-$(CONFIG_PAX_RAP) += -fplugin-arg-rap_plugin-hash=abs-ops
++ gcc-plugin-cflags-$(CONFIG_PAX_RAP) += -fplugin-arg-rap_plugin-hash=abs-attr
+# gcc-plugin-cflags-$(CONFIG_PAX_RAP) += -fplugin-arg-rap_plugin-report=func,fptr,abs
++ gcc-plugin-cflags-$(CONFIG_PAX_RAP) += -DX86_RAP_CALL_VECTOR=0x82 -DX86_RAP_RET_VECTOR=0x83
++ gcc-plugin-cflags-$(CONFIG_PAX_RAP) += '-fplugin-arg-rap_plugin-callabort=int $$0x82'
++ gcc-plugin-cflags-$(CONFIG_PAX_RAP) += '-fplugin-arg-rap_plugin-retabort=int $$0x83'
+ gcc-plugin-aflags-$(CONFIG_PAX_RAP) += -DRAP_PLUGIN
-+ ifdef CONFIG_PAX_RAP
-+ RAP_PLUGIN_ABS_CFLAGS := -fplugin-arg-rap_plugin-hash=abs-finish
-+ endif
-+ gcc-plugin-cflags-$(CONFIG_PAX_RAP) += $(RAP_PLUGIN_ABS_CFLAGS)
+
+ GCC_PLUGINS_CFLAGS := $(strip $(addprefix -fplugin=$(objtree)/scripts/gcc-plugins/, $(gcc-plugin-y)) $(gcc-plugin-cflags-y))
+ GCC_PLUGINS_AFLAGS := $(gcc-plugin-aflags-y)
+
-+ export PLUGINCC GCC_PLUGIN GCC_PLUGIN_SUBDIR GCC_PLUGINS_CFLAGS GCC_PLUGINS_AFLAGS SANCOV_PLUGIN
-+ export DISABLE_LATENT_ENTROPY_PLUGIN RAP_PLUGIN_ABS_CFLAGS INITIFY_DISABLE_VERIFY_NOCAPTURE_FUNCTIONS
++ export SHELL_GCC_PLUGINS_CFLAGS := $(subst $$,$$$$,$(value GCC_PLUGINS_CFLAGS))
++ export PLUGINCC GCC_PLUGIN GCC_PLUGIN_SUBDIR GCC_PLUGINS_CFLAGS GCC_PLUGINS_AFLAGS
++ export SANCOV_PLUGIN DISABLE_LATENT_ENTROPY_PLUGIN
++ export INITIFY_DISABLE_VERIFY_NOCAPTURE_FUNCTIONS
+
- KBUILD_CFLAGS += $(GCC_PLUGINS_CFLAGS)
-+ KBUILD_AFLAGS += $(GCC_PLUGINS_AFLAGS)
GCC_PLUGIN := $(gcc-plugin-y)
GCC_PLUGIN_SUBDIR := $(gcc-plugin-subdir-y)
endif
-@@ -41,11 +109,12 @@ ifdef CONFIG_GCC_PLUGINS
+@@ -48,11 +111,12 @@ ifdef CONFIG_GCC_PLUGINS
ifeq ($(PLUGINCC),)
ifneq ($(GCC_PLUGINS_CFLAGS),)
ifeq ($(call cc-ifversion, -ge, 0405, y), y)
@@ -168555,11 +172635,38 @@ index 61f0e6d..5486c77 100644
endif
endif
endif
+diff --git a/scripts/Makefile.lib b/scripts/Makefile.lib
+index 0a07f90..9ddd253 100644
+--- a/scripts/Makefile.lib
++++ b/scripts/Makefile.lib
+@@ -142,6 +142,22 @@ _c_flags += $(if $(patsubst n%,, \
+ $(CFLAGS_KCOV))
+ endif
+
++#
++# Enable gcc plugins for the kernel unless disabled for a file or the entire directory
++# GCC_PLUGINS_file.o:=n will disable gcc plugins for file.o and its suffixed variants (.i, .s, etc)
++# GCC_PLUGINS_file:=n will disable gcc plugins for file only (when the target itself isn't compiler generated or a file at all)
++# GCC_PLUGINS:=n will disable gcc plugins for the entire directory
++#
++ifeq ($(CONFIG_GCC_PLUGINS),y)
++_c_flags += $(if $(patsubst n%,, \
++ $(GCC_PLUGINS_$(basetarget).o)$(GCC_PLUGINS_$(basetarget))$(GCC_PLUGINS)y), \
++ $(value GCC_PLUGINS_CFLAGS))
++_c_flags += $(GCC_PLUGINS_CFLAGS_$(basetarget).o)
++_a_flags += $(if $(patsubst n%,, \
++ $(GCC_PLUGINS_$(basetarget).o)$(GCC_PLUGINS_$(basetarget))$(GCC_PLUGINS)y), \
++ $(GCC_PLUGINS_AFLAGS))
++endif
++
+ # If building the kernel in a separate objtree expand all occurrences
+ # of -Idir to -I$(srctree)/dir except for absolute paths (starting with '/').
+
diff --git a/scripts/basic/fixdep.c b/scripts/basic/fixdep.c
-index 746ec1e..994846b 100644
+index fff818b..e4c9e7f 100644
--- a/scripts/basic/fixdep.c
+++ b/scripts/basic/fixdep.c
-@@ -197,7 +197,7 @@ static unsigned int strhash(const char *str, unsigned int sz)
+@@ -191,7 +191,7 @@ static unsigned int strhash(const char *str, unsigned int sz)
/*
* Lookup a value in the configuration string.
*/
@@ -168568,7 +172675,7 @@ index 746ec1e..994846b 100644
{
struct item *aux;
-@@ -230,7 +230,7 @@ static void define_config(const char *name, int len, unsigned int hash)
+@@ -224,7 +224,7 @@ static void define_config(const char *name, int len, unsigned int hash)
/*
* Record the use of a CONFIG_* word.
*/
@@ -168577,27 +172684,6 @@ index 746ec1e..994846b 100644
{
unsigned int hash = strhash(m, slen);
-@@ -243,9 +243,9 @@ static void use_config(const char *m, int slen)
-
- static void parse_config_file(const char *map, size_t len)
- {
-- const int *end = (const int *) (map + len);
-+ const unsigned int *end = (const unsigned int *) (map + len);
- /* start at +1, so that p can never be < map */
-- const int *m = (const int *) map + 1;
-+ const unsigned int *m = (const unsigned int *) map + 1;
- const char *p, *q;
-
- for (; m < end; m++) {
-@@ -449,7 +449,7 @@ static void print_deps(void)
- static void traps(void)
- {
- static char test[] __attribute__((aligned(sizeof(int)))) = "CONF";
-- int *p = (int *)test;
-+ unsigned int *p = (unsigned int *)test;
-
- if (*p != INT_CONF) {
- fprintf(stderr, "fixdep: sizeof(int) != 4 or wrong endianness? %#x\n",
diff --git a/scripts/dtc/checks.c b/scripts/dtc/checks.c
index 386f956..a3b3365 100644
--- a/scripts/dtc/checks.c
@@ -168753,6 +172839,16 @@ index e229b84..7141e8e 100644
return node->phandle;
while (get_node_by_phandle(root, phandle))
+diff --git a/scripts/gcc-ld b/scripts/gcc-ld
+index cadab9a..28153db 100755
+--- a/scripts/gcc-ld
++++ b/scripts/gcc-ld
+@@ -26,4 +26,4 @@ while [ "$1" != "" ] ; do
+ shift
+ done
+
+-exec $CC $ARGS
++exec /bin/sh -c "$CC $ARGS $SHELL_GCC_PLUGINS_CFLAGS"
diff --git a/scripts/gcc-plugins/.gitignore b/scripts/gcc-plugins/.gitignore
new file mode 100644
index 0000000..de92ed9
@@ -168808,7 +172904,7 @@ index 8b29dc1..ec1516e 100644
diff --git a/scripts/gcc-plugins/checker_plugin.c b/scripts/gcc-plugins/checker_plugin.c
new file mode 100644
-index 0000000..27fed8d
+index 0000000..c16753c
--- /dev/null
+++ b/scripts/gcc-plugins/checker_plugin.c
@@ -0,0 +1,491 @@
@@ -169272,7 +173368,7 @@ index 0000000..27fed8d
+ PASS_INFO(context, "phiprop", 1, PASS_POS_INSERT_AFTER);
+
+ if (!plugin_default_version_check(version, &gcc_version)) {
-+ error(G_("incompatible gcc/plugin versions"));
++ error_gcc_version(version);
+ return 1;
+ }
+
@@ -169305,7 +173401,7 @@ index 0000000..27fed8d
+}
diff --git a/scripts/gcc-plugins/colorize_plugin.c b/scripts/gcc-plugins/colorize_plugin.c
new file mode 100644
-index 0000000..a229d00
+index 0000000..c8c62e9
--- /dev/null
+++ b/scripts/gcc-plugins/colorize_plugin.c
@@ -0,0 +1,158 @@
@@ -169406,7 +173502,7 @@ index 0000000..a229d00
+#define NO_GATE
+#include "gcc-generate-simple_ipa-pass.h"
+
-+static void colorize_start_unit(void *gcc_data, void *user_data)
++static void colorize_start_unit(void *gcc_data __unused, void *user_data __unused)
+{
+ colorize_arm();
+}
@@ -169433,7 +173529,7 @@ index 0000000..a229d00
+ PASS_INFO(colorize_rearm, "*free_lang_data", 1, PASS_POS_INSERT_AFTER);
+
+ if (!plugin_default_version_check(version, &gcc_version)) {
-+ error(G_("incompatible gcc/plugin versions"));
++ error_gcc_version(version);
+ return 1;
+ }
+
@@ -169469,7 +173565,7 @@ index 0000000..a229d00
+}
diff --git a/scripts/gcc-plugins/constify_plugin.c b/scripts/gcc-plugins/constify_plugin.c
new file mode 100644
-index 0000000..3cd0652
+index 0000000..42f2209
--- /dev/null
+++ b/scripts/gcc-plugins/constify_plugin.c
@@ -0,0 +1,577 @@
@@ -169666,7 +173762,7 @@ index 0000000..3cd0652
+ TREE_TYPE(node) = new_type;
+}
+
-+static tree handle_no_const_attribute(tree *node, tree name, tree args, int flags, bool *no_add_attrs)
++static tree handle_no_const_attribute(tree *node, tree name, tree args __unused, int flags __unused, bool *no_add_attrs)
+{
+ tree type;
+ constify_info cinfo = {
@@ -169746,11 +173842,9 @@ index 0000000..3cd0652
+ TYPE_READONLY(type) = 1;
+ C_TYPE_FIELDS_READONLY(type) = 1;
+ TYPE_CONSTIFY_VISITED(type) = 1;
-+// TYPE_ATTRIBUTES(type) = copy_list(TYPE_ATTRIBUTES(type));
-+// TYPE_ATTRIBUTES(type) = tree_cons(get_identifier("do_const"), NULL_TREE, TYPE_ATTRIBUTES(type));
+}
+
-+static tree handle_do_const_attribute(tree *node, tree name, tree args, int flags, bool *no_add_attrs)
++static tree handle_do_const_attribute(tree *node, tree name, tree args __unused, int flags __unused, bool *no_add_attrs)
+{
+ *no_add_attrs = true;
+ if (!TYPE_P(*node)) {
@@ -169809,7 +173903,7 @@ index 0000000..3cd0652
+ register_attribute(&do_const_attr);
+}
+
-+static void finish_type(void *event_data, void *data)
++static void finish_type(void *event_data, void *data __unused)
+{
+ tree type = (tree)event_data;
+ constify_info cinfo = {
@@ -169856,6 +173950,8 @@ index 0000000..3cd0652
+ return;
+ }
+ constify_type(type);
++// TYPE_ATTRIBUTES(type) = copy_list(TYPE_ATTRIBUTES(type));
++// TYPE_ATTRIBUTES(type) = tree_cons(get_identifier("do_const"), NULL_TREE, TYPE_ATTRIBUTES(type));
+ return;
+ }
+
@@ -169941,7 +174037,7 @@ index 0000000..3cd0652
+// inform(DECL_SOURCE_LOCATION(var), "constified variable %qE moved into .rodata", var);
+}
+
-+static void check_global_variables(void *event_data, void *data)
++static void check_global_variables(void *event_data __unused, void *data __unused)
+{
+ varpool_node_ptr node;
+
@@ -170000,7 +174096,7 @@ index 0000000..3cd0652
+ return old_section_type_flags(decl, name, reloc);
+}
+
-+static void constify_start_unit(void *gcc_data, void *user_data)
++static void constify_start_unit(void *gcc_data __unused, void *user_data __unused)
+{
+// size_t i;
+
@@ -170022,7 +174118,7 @@ index 0000000..3cd0652
+ PASS_INFO(check_local_variables, "ssa", 1, PASS_POS_INSERT_BEFORE);
+
+ if (!plugin_default_version_check(version, &gcc_version)) {
-+ error(G_("incompatible gcc/plugin versions"));
++ error_gcc_version(version);
+ return 1;
+ }
+
@@ -170051,7 +174147,7 @@ index 0000000..3cd0652
+ return 0;
+}
diff --git a/scripts/gcc-plugins/cyc_complexity_plugin.c b/scripts/gcc-plugins/cyc_complexity_plugin.c
-index 34df974..2b01d4d 100644
+index 8af7db0..f618028 100644
--- a/scripts/gcc-plugins/cyc_complexity_plugin.c
+++ b/scripts/gcc-plugins/cyc_complexity_plugin.c
@@ -1,5 +1,5 @@
@@ -170061,21 +174157,8 @@ index 34df974..2b01d4d 100644
* Licensed under the GPL v2, or (at your option) v3
*
* Homepage:
-@@ -20,7 +20,7 @@
-
- #include "gcc-common.h"
-
--int plugin_is_GPL_compatible;
-+__visible int plugin_is_GPL_compatible;
-
- static struct plugin_info cyc_complexity_plugin_info = {
- .version = "20160225",
-@@ -49,15 +49,11 @@ static unsigned int cyc_complexity_execute(void)
-
- #include "gcc-generate-gimple-pass.h"
-
--int plugin_init(struct plugin_name_args *plugin_info, struct plugin_gcc_version *version)
-+__visible int plugin_init(struct plugin_name_args *plugin_info, struct plugin_gcc_version *version)
+@@ -52,15 +52,11 @@ static unsigned int cyc_complexity_execute(void)
+ __visible int plugin_init(struct plugin_name_args *plugin_info, struct plugin_gcc_version *version)
{
const char * const plugin_name = plugin_info->base_name;
- struct register_pass_info cyc_complexity_pass_info;
@@ -170087,9 +174170,13 @@ index 34df974..2b01d4d 100644
+ PASS_INFO(cyc_complexity, "ssa", 1, PASS_POS_INSERT_AFTER);
if (!plugin_default_version_check(version, &gcc_version)) {
- error(G_("incompatible gcc/plugin versions"));
+- error(G_("incompatible gcc/plugin versions"));
++ error_gcc_version(version);
+ return 1;
+ }
+
diff --git a/scripts/gcc-plugins/gcc-common.h b/scripts/gcc-plugins/gcc-common.h
-index 172850b..879f0d5 100644
+index 12262c0..aab4a5e 100644
--- a/scripts/gcc-plugins/gcc-common.h
+++ b/scripts/gcc-plugins/gcc-common.h
@@ -21,14 +21,22 @@
@@ -170115,13 +174202,9 @@ index 172850b..879f0d5 100644
#include "timevar.h"
#include "params.h"
-@@ -39,13 +47,22 @@
- #include "hash-map.h"
+@@ -43,12 +51,18 @@
+ #include "memmodel.h"
#endif
-
-+#if BUILDING_GCC_VERSION >= 7000
-+#include "memmodel.h"
-+#endif
#include "emit-rtl.h"
+//#include "reload.h"
+//#include "ira.h"
@@ -170138,7 +174221,7 @@ index 172850b..879f0d5 100644
#if BUILDING_GCC_VERSION == 4005
#include <sys/mman.h>
-@@ -57,6 +74,8 @@
+@@ -60,6 +74,8 @@
#endif
#if BUILDING_GCC_VERSION >= 4006
@@ -170147,7 +174230,7 @@ index 172850b..879f0d5 100644
#include "c-family/c-common.h"
#else
#include "c-common.h"
-@@ -75,8 +94,13 @@
+@@ -78,8 +94,13 @@
#endif
#include "diagnostic.h"
@@ -170161,7 +174244,7 @@ index 172850b..879f0d5 100644
#include "predict.h"
#include "ipa-utils.h"
-@@ -87,10 +111,14 @@
+@@ -90,6 +111,7 @@
#include "internal-fn.h"
#include "gimple-expr.h"
#include "gimple-fold.h"
@@ -170169,14 +174252,7 @@ index 172850b..879f0d5 100644
#include "context.h"
#include "tree-ssa-alias.h"
#include "tree-ssa.h"
- #include "stringpool.h"
-+#if BUILDING_GCC_VERSION >= 7000
-+#include "tree-vrp.h"
-+#endif
- #include "tree-ssanames.h"
- #include "print-tree.h"
- #include "tree-eh.h"
-@@ -109,27 +137,33 @@
+@@ -115,28 +137,34 @@
#include "ssa-iterators.h"
#endif
@@ -170216,12 +174292,14 @@ index 172850b..879f0d5 100644
+void dump_gimple_stmt(pretty_printer *, gimple, int, int);
#endif
- #define __unused __attribute__((__unused__))
-+#define __visible __attribute__((visibility("default")))
+-#define __unused __attribute__((__unused__))
++#define __unused __attribute__((unused))
+ #define __visible __attribute__((visibility("default")))
++#define __weak __attribute__((weak))
#define DECL_NAME_POINTER(node) IDENTIFIER_POINTER(DECL_NAME(node))
#define DECL_NAME_LENGTH(node) IDENTIFIER_LENGTH(DECL_NAME(node))
-@@ -139,6 +173,29 @@ extern void dump_gimple_stmt(pretty_printer *, gimple, int, int);
+@@ -146,6 +174,36 @@ extern void dump_gimple_stmt(pretty_printer *, gimple, int, int);
/* should come from c-tree.h if only it were installed for gcc 4.5... */
#define C_TYPE_FIELDS_READONLY(TYPE) TREE_LANG_FLAG_1(TYPE)
@@ -170240,6 +174318,13 @@ index 172850b..879f0d5 100644
+ return cstr;
+}
+
++static inline void error_gcc_version(struct plugin_gcc_version *version)
++{
++ error(G_("incompatible gcc/plugin versions: need %s %s %s %s but have %s %s %s %s"),
++ gcc_version.basever, gcc_version.datestamp, gcc_version.devphase, gcc_version.revision,
++ version->basever, version->datestamp, version->devphase, version->revision);
++}
++
+#define PASS_INFO(NAME, REF, ID, POS) \
+struct register_pass_info NAME##_pass_info = { \
+ .pass = make_##NAME##_pass(), \
@@ -170251,7 +174336,7 @@ index 172850b..879f0d5 100644
#if BUILDING_GCC_VERSION == 4005
#define FOR_EACH_LOCAL_DECL(FUN, I, D) \
for (tree vars = (FUN)->local_decls, (I) = 0; \
-@@ -165,6 +222,7 @@ static inline bool gimple_call_builtin_p(gimple stmt, enum built_in_function cod
+@@ -172,6 +230,7 @@ static inline bool gimple_call_builtin_p(gimple stmt, enum built_in_function cod
fndecl = gimple_call_fndecl(stmt);
if (!fndecl || DECL_BUILT_IN_CLASS(fndecl) != BUILT_IN_NORMAL)
return false;
@@ -170259,55 +174344,60 @@ index 172850b..879f0d5 100644
return DECL_FUNCTION_CODE(fndecl) == code;
}
-@@ -286,6 +344,22 @@ static inline struct cgraph_node *cgraph_next_function_with_gimple_body(struct c
- return NULL;
+@@ -345,6 +404,23 @@ static inline bool gimple_store_p(gimple gs)
+ static inline void gimple_init_singleton(gimple g __unused)
+ {
}
-
-+static inline bool cgraph_for_node_and_aliases(cgraph_node_ptr node, bool (*callback)(cgraph_node_ptr, void *), void *data, bool include_overwritable)
-+{
-+ cgraph_node_ptr alias;
+
-+ if (callback(node, data))
-+ return true;
++enum expand_modifier {
++ EXPAND_NORMAL = 0,
++ EXPAND_STACK_PARM,
++ EXPAND_SUM,
++ EXPAND_CONST_ADDRESS,
++ EXPAND_INITIALIZER,
++ EXPAND_WRITE,
++ EXPAND_MEMORY
++};
+
-+ for (alias = node->same_body; alias; alias = alias->next) {
-+ if (include_overwritable || cgraph_function_body_availability(alias) > AVAIL_OVERWRITABLE)
-+ if (cgraph_for_node_and_aliases(alias, callback, data, include_overwritable))
-+ return true;
-+ }
++rtx expand_expr_real(tree, rtx, enum machine_mode, enum expand_modifier, rtx *);
+
-+ return false;
-+}
-+
- #define FOR_EACH_FUNCTION_WITH_GIMPLE_BODY(node) \
- for ((node) = cgraph_first_function_with_gimple_body(); (node); \
- (node) = cgraph_next_function_with_gimple_body(node))
-@@ -398,6 +472,7 @@ typedef union gimple_statement_d gassign;
- typedef union gimple_statement_d gcall;
- typedef union gimple_statement_d gcond;
- typedef union gimple_statement_d gdebug;
-+typedef union gimple_statement_d ggoto;
- typedef union gimple_statement_d gphi;
- typedef union gimple_statement_d greturn;
-
-@@ -451,6 +526,16 @@ static inline const gdebug *as_a_const_gdebug(const_gimple stmt)
- return stmt;
- }
-
-+static inline ggoto *as_a_ggoto(gimple stmt)
++static inline rtx expand_expr(tree exp, rtx target, enum machine_mode mode, enum expand_modifier modifier)
+{
-+ return stmt;
++ return expand_expr_real(exp, target, mode, modifier, NULL);
+}
+ #endif
+
+ #if BUILDING_GCC_VERSION == 4007 || BUILDING_GCC_VERSION == 4008
+@@ -518,6 +594,28 @@ static inline const greturn *as_a_const_greturn(const_gimple stmt)
+ #define create_var_ann(var)
+ #define TODO_dump_func 0
+ #define TODO_dump_cgraph 0
+
-+static inline const ggoto *as_a_const_ggoto(const_gimple stmt)
++#define VEC(T, A) vec<T, va_##A>
++#define VEC_safe_push(T, A, V, O) vec_safe_push((V), (O));
++#endif
++
++#if BUILDING_GCC_VERSION == 4008 || BUILDING_GCC_VERSION == 4009
++enum expand_modifier {
++ EXPAND_NORMAL = 0,
++ EXPAND_STACK_PARM,
++ EXPAND_SUM,
++ EXPAND_CONST_ADDRESS,
++ EXPAND_INITIALIZER,
++ EXPAND_WRITE,
++ EXPAND_MEMORY
++};
++
++rtx expand_expr_real(tree, rtx, enum machine_mode, enum expand_modifier, rtx *, bool);
++
++static inline rtx expand_expr(tree exp, rtx target, enum machine_mode mode, enum expand_modifier modifier)
+{
-+ return stmt;
++ return expand_expr_real(exp, target, mode, modifier, NULL, false);
+}
-+
- static inline gphi *as_a_gphi(gimple stmt)
- {
- return stmt;
-@@ -493,8 +578,18 @@ static inline const greturn *as_a_const_greturn(const_gimple stmt)
+ #endif
+
+ #if BUILDING_GCC_VERSION <= 4009
+@@ -527,6 +625,8 @@ static inline const greturn *as_a_const_greturn(const_gimple stmt)
#define section_name_prefix LTO_SECTION_NAME_PREFIX
#define fatal_error(loc, gmsgid, ...) fatal_error((gmsgid), __VA_ARGS__)
@@ -170315,43 +174405,8 @@ index 172850b..879f0d5 100644
+
typedef struct rtx_def rtx_insn;
-+static inline const char *get_decl_section_name(const_tree decl)
-+{
-+ if (DECL_SECTION_NAME(decl) == NULL_TREE)
-+ return NULL;
-+
-+ return TREE_STRING_POINTER(DECL_SECTION_NAME(decl));
-+}
-+
- static inline void set_decl_section_name(tree node, const char *value)
- {
- if (value)
-@@ -510,6 +605,7 @@ typedef struct gimple_statement_base gassign;
- typedef struct gimple_statement_call gcall;
- typedef struct gimple_statement_base gcond;
- typedef struct gimple_statement_base gdebug;
-+typedef struct gimple_statement_base ggoto;
- typedef struct gimple_statement_phi gphi;
- typedef struct gimple_statement_base greturn;
-
-@@ -563,6 +659,16 @@ static inline const gdebug *as_a_const_gdebug(const_gimple stmt)
- return stmt;
- }
-
-+static inline ggoto *as_a_ggoto(gimple stmt)
-+{
-+ return stmt;
-+}
-+
-+static inline const ggoto *as_a_const_ggoto(const_gimple stmt)
-+{
-+ return stmt;
-+}
-+
- static inline gphi *as_a_gphi(gimple stmt)
- {
- return as_a<gphi>(stmt);
-@@ -590,6 +696,11 @@ static inline const greturn *as_a_const_greturn(const_gimple stmt)
+ static inline const char *get_decl_section_name(const_tree decl)
+@@ -643,6 +743,11 @@ static inline const greturn *as_a_const_greturn(const_gimple stmt)
#define NODE_DECL(node) (node)->decl
#define cgraph_node_name(node) (node)->name()
#define NODE_IMPLICIT_ALIAS(node) (node)->cpp_implicit_alias
@@ -170363,7 +174418,7 @@ index 172850b..879f0d5 100644
#endif
#if BUILDING_GCC_VERSION >= 5000 && BUILDING_GCC_VERSION < 6000
-@@ -608,8 +719,15 @@ inline bool is_a_helper<const gassign *>::test(const_gimple gs)
+@@ -661,6 +766,8 @@ inline bool is_a_helper<const gassign *>::test(const_gimple gs)
#define TODO_verify_stmts TODO_verify_il
#define TODO_verify_rtl_sharing TODO_verify_il
@@ -170371,80 +174426,12 @@ index 172850b..879f0d5 100644
+
#define INSN_DELETED_P(insn) (insn)->deleted()
-+static inline const char *get_decl_section_name(const_tree decl)
-+{
-+ return DECL_SECTION_NAME(decl);
-+}
-+
- /* symtab/cgraph related */
- #define debug_cgraph_node(node) (node)->debug()
- #define cgraph_get_node(decl) cgraph_node::get(decl)
-@@ -618,6 +736,7 @@ inline bool is_a_helper<const gassign *>::test(const_gimple gs)
- #define cgraph_n_nodes symtab->cgraph_count
- #define cgraph_max_uid symtab->cgraph_max_uid
- #define varpool_get_node(decl) varpool_node::get(decl)
-+#define dump_varpool_node(file, node) (node)->dump(file)
-
- #define cgraph_create_edge(caller, callee, call_stmt, count, freq, nest) \
- (caller)->create_edge((callee), (call_stmt), (count), (freq))
-@@ -673,6 +792,11 @@ static inline cgraph_node_ptr cgraph_alias_target(cgraph_node_ptr node)
- return node->get_alias_target();
- }
-
-+static inline bool cgraph_for_node_and_aliases(cgraph_node_ptr node, bool (*callback)(cgraph_node_ptr, void *), void *data, bool include_overwritable)
-+{
-+ return node->call_for_symbol_thunks_and_aliases(callback, data, include_overwritable);
-+}
-+
- static inline struct cgraph_node_hook_list *cgraph_add_function_insertion_hook(cgraph_node_hook hook, void *data)
- {
- return symtab->add_cgraph_insertion_hook(hook, data);
-@@ -730,6 +854,13 @@ static inline gimple gimple_build_assign_with_ops(enum tree_code subcode, tree l
-
- template <>
- template <>
-+inline bool is_a_helper<const ggoto *>::test(const_gimple gs)
-+{
-+ return gs->code == GIMPLE_GOTO;
-+}
-+
-+template <>
-+template <>
- inline bool is_a_helper<const greturn *>::test(const_gimple gs)
- {
- return gs->code == GIMPLE_RETURN;
-@@ -765,6 +896,16 @@ static inline const gcall *as_a_const_gcall(const_gimple stmt)
- return as_a<const gcall *>(stmt);
- }
-
-+static inline ggoto *as_a_ggoto(gimple stmt)
-+{
-+ return as_a<ggoto *>(stmt);
-+}
-+
-+static inline const ggoto *as_a_const_ggoto(const_gimple stmt)
-+{
-+ return as_a<const ggoto *>(stmt);
-+}
-+
- static inline gphi *as_a_gphi(gimple stmt)
- {
- return as_a<gphi *>(stmt);
-@@ -827,4 +968,9 @@ static inline void debug_gimple_stmt(const_gimple s)
- #define debug_gimple_stmt(s) debug_gimple_stmt(CONST_CAST_GIMPLE(s))
- #endif
-
-+#if BUILDING_GCC_VERSION >= 7000
-+#define get_inner_reference(exp, pbitsize, pbitpos, poffset, pmode, punsignedp, preversep, pvolatilep, keep_aligning) \
-+ get_inner_reference(exp, pbitsize, pbitpos, poffset, pmode, punsignedp, preversep, pvolatilep)
-+#endif
-+
- #endif
+ static inline const char *get_decl_section_name(const_tree decl)
diff --git a/scripts/gcc-plugins/gcc-generate-gimple-pass.h b/scripts/gcc-plugins/gcc-generate-gimple-pass.h
index 526c3c7..831300b 100644
--- a/scripts/gcc-plugins/gcc-generate-gimple-pass.h
+++ b/scripts/gcc-plugins/gcc-generate-gimple-pass.h
-@@ -119,7 +119,7 @@ public:
+@@ -119,7 +119,7 @@ class _PASS_NAME_PASS : public gimple_opt_pass {
#endif
#endif
@@ -170513,7 +174500,7 @@ index 0000000..7514850
+fi
diff --git a/scripts/gcc-plugins/initify_plugin.c b/scripts/gcc-plugins/initify_plugin.c
new file mode 100644
-index 0000000..0fa1d7f
+index 0000000..ad28ed6
--- /dev/null
+++ b/scripts/gcc-plugins/initify_plugin.c
@@ -0,0 +1,1831 @@
@@ -172305,7 +176292,7 @@ index 0000000..0fa1d7f
+ PASS_INFO(initify, "inline", 1, PASS_POS_INSERT_AFTER);
+
+ if (!plugin_default_version_check(version, &gcc_version)) {
-+ error(G_("incompatible gcc/plugin versions"));
++ error_gcc_version(version);
+ return 1;
+ }
+
@@ -172350,7 +176337,7 @@ index 0000000..0fa1d7f
+}
diff --git a/scripts/gcc-plugins/kallocstat_plugin.c b/scripts/gcc-plugins/kallocstat_plugin.c
new file mode 100644
-index 0000000..0a9214d
+index 0000000..446fdcb
--- /dev/null
+++ b/scripts/gcc-plugins/kallocstat_plugin.c
@@ -0,0 +1,131 @@
@@ -172476,7 +176463,7 @@ index 0000000..0a9214d
+ PASS_INFO(kallocstat, "ssa", 1, PASS_POS_INSERT_AFTER);
+
+ if (!plugin_default_version_check(version, &gcc_version)) {
-+ error(G_("incompatible gcc/plugin versions"));
++ error_gcc_version(version);
+ return 1;
+ }
+
@@ -172487,10 +176474,10 @@ index 0000000..0a9214d
+}
diff --git a/scripts/gcc-plugins/kernexec_plugin.c b/scripts/gcc-plugins/kernexec_plugin.c
new file mode 100644
-index 0000000..1a35a0c
+index 0000000..0085726
--- /dev/null
+++ b/scripts/gcc-plugins/kernexec_plugin.c
-@@ -0,0 +1,393 @@
+@@ -0,0 +1,401 @@
+/*
+ * Copyright 2011-2017 by the PaX Team <pageexec@freemail.hu>
+ * Licensed under the GPL v2
@@ -172599,8 +176586,8 @@ index 0000000..1a35a0c
+ update_stmt(assign_intptr);
+
+ // apply logical or to temporary unsigned long and bitmask
-+ kernexec_mask = build_int_cstu(long_long_unsigned_type_node, 0x8000000000000000LL);
-+// kernexec_mask = build_int_cstu(long_long_unsigned_type_node, 0xffffffff80000000LL);
++ kernexec_mask = build_int_cstu(long_long_unsigned_type_node, 0x8000000000000000ULL);
++// kernexec_mask = build_int_cstu(long_long_unsigned_type_node, 0xffffffff80000000ULL);
+ orptr = fold_build2(BIT_IOR_EXPR, long_long_unsigned_type_node, intptr, kernexec_mask);
+ intptr = make_ssa_name(SSA_NAME_VAR(intptr), NULL);
+ assign_intptr = gimple_build_assign(intptr, orptr);
@@ -172695,8 +176682,13 @@ index 0000000..1a35a0c
+ continue;
+ if (TREE_CODE(fn) == ADDR_EXPR)
+ continue;
-+ if (TREE_CODE(fn) != SSA_NAME)
++ if (TREE_CODE(fn) == INTEGER_CST)
++ continue;
++
++ if (TREE_CODE(fn) != SSA_NAME) {
++debug_tree(fn);
+ gcc_unreachable();
++ }
+
+ // ... through a function pointer
+ if (SSA_NAME_VAR(fn) != NULL_TREE) {
@@ -172842,11 +176834,14 @@ index 0000000..1a35a0c
+ int i;
+
+ PASS_INFO(kernexec_reload, "early_optimizations", 1, PASS_POS_INSERT_BEFORE);
-+ PASS_INFO(kernexec_fptr, "early_optimizations", 1, PASS_POS_INSERT_BEFORE);
++// unfortunately PRE can screw up fptr types from unions...
++// see cpuhp_step_startup/cpuhp_step_teardown and kernel.cpu.c:cpuhp_invoke_callback
++// PASS_INFO(kernexec_fptr, "early_optimizations", 1, PASS_POS_INSERT_BEFORE);
++ PASS_INFO(kernexec_fptr, "pre", 1, PASS_POS_INSERT_AFTER);
+ PASS_INFO(kernexec_retaddr, "pro_and_epilogue", 1, PASS_POS_INSERT_AFTER);
+
+ if (!plugin_default_version_check(version, &gcc_version)) {
-+ error(G_("incompatible gcc/plugin versions"));
++ error_gcc_version(version);
+ return 1;
+ }
+
@@ -172885,59 +176880,72 @@ index 0000000..1a35a0c
+ return 0;
+}
diff --git a/scripts/gcc-plugins/latent_entropy_plugin.c b/scripts/gcc-plugins/latent_entropy_plugin.c
-new file mode 100644
-index 0000000..d5a37cb
---- /dev/null
+index dff390f..1de194b 100644
+--- a/scripts/gcc-plugins/latent_entropy_plugin.c
+++ b/scripts/gcc-plugins/latent_entropy_plugin.c
-@@ -0,0 +1,609 @@
-+/*
+@@ -1,5 +1,5 @@
+ /*
+- * Copyright 2012-2016 by the PaX Team <pageexec@freemail.hu>
+ * Copyright 2012-2017 by the PaX Team <pageexec@freemail.hu>
-+ * Copyright 2016 by Emese Revfy <re.emese@gmail.com>
-+ * Licensed under the GPL v2
-+ *
-+ * Note: the choice of the license means that the compilation process is
-+ * NOT 'eligible' as defined by gcc's library exception to the GPL v3,
-+ * but for the kernel it doesn't matter since it doesn't link against
-+ * any of the gcc libraries
-+ *
-+ * This gcc plugin helps generate a little bit of entropy from program state,
-+ * used throughout the uptime of the kernel. Here is an instrumentation example:
-+ *
-+ * before:
-+ * void __latent_entropy test(int argc, char *argv[])
-+ * {
+ * Copyright 2016 by Emese Revfy <re.emese@gmail.com>
+ * Licensed under the GPL v2
+ *
+@@ -14,10 +14,7 @@
+ * before:
+ * void __latent_entropy test(int argc, char *argv[])
+ * {
+- * if (argc <= 1)
+- * printf("%s: no command arguments :(\n", *argv);
+- * else
+- * printf("%s: %d command arguments!\n", *argv, args - 1);
+ * printf("%u %s\n", argc, *argv);
-+ * }
-+ *
-+ * after:
-+ * void __latent_entropy test(int argc, char *argv[])
-+ * {
-+ * // latent_entropy_execute() 1.
-+ * unsigned long local_entropy;
-+ * // init_local_entropy() 1.
+ * }
+ *
+ * after:
+@@ -26,35 +23,37 @@
+ * // latent_entropy_execute() 1.
+ * unsigned long local_entropy;
+ * // init_local_entropy() 1.
+- * void *local_entropy_frameaddr;
+ * void *local_entropy_frame_addr;
-+ * // init_local_entropy() 3.
+ * // init_local_entropy() 3.
+- * unsigned long tmp_latent_entropy;
+ * unsigned long temp_latent_entropy;
-+ *
-+ * // init_local_entropy() 2.
+ *
+ * // init_local_entropy() 2.
+- * local_entropy_frameaddr = __builtin_frame_address(0);
+- * local_entropy = (unsigned long) local_entropy_frameaddr;
+ * local_entropy_frame_addr = __builtin_frame_address(0);
+ * local_entropy = (unsigned long) local_entropy_frame_addr;
-+ *
-+ * // init_local_entropy() 4.
+ *
+ * // init_local_entropy() 4.
+- * tmp_latent_entropy = latent_entropy;
+ * temp_latent_entropy = latent_entropy;
-+ * // init_local_entropy() 5.
+ * // init_local_entropy() 5.
+- * local_entropy ^= tmp_latent_entropy;
+ * local_entropy ^= temp_latent_entropy;
-+ *
-+ * // latent_entropy_execute() 3.
+ *
+ * // latent_entropy_execute() 3.
+- * if (argc <= 1) {
+- * // perturb_local_entropy()
+- * local_entropy += 4623067384293424948;
+- * printf("%s: no command arguments :(\n", *argv);
+- * // perturb_local_entropy()
+- * } else {
+- * local_entropy ^= 3896280633962944730;
+- * printf("%s: %d command arguments!\n", *argv, args - 1);
+- * }
+ * local_entropy += 4623067384293424948;
+ *
+ * printf("%u %s\n", argc, *argv);
-+ *
-+ * // latent_entropy_execute() 4.
+ *
+ * // latent_entropy_execute() 4.
+- * tmp_latent_entropy = rol(tmp_latent_entropy, local_entropy);
+- * latent_entropy = tmp_latent_entropy;
+ * temp_latent_entropy = rol(temp_latent_entropy, local_entropy);
+ * latent_entropy = temp_latent_entropy;
-+ * }
-+ *
+ * }
+ *
+ * It would look like this in C:
+ *
+ * unsigned long local_entropy = latent_entropy;
@@ -172946,559 +176954,477 @@ index 0000000..d5a37cb
+ * local_entropy += 9876543210;
+ * latent_entropy = rol(local_entropy, 1234509876);
+ *
-+ * TODO:
-+ * - add ipa pass to identify not explicitly marked candidate functions
-+ * - mix in more program state (function arguments/return values,
-+ * loop variables, etc)
-+ * - more instrumentation control via attribute parameters
-+ *
-+ * BUGS:
-+ * - none known
-+ *
-+ * Options:
-+ * -fplugin-arg-latent_entropy_plugin-disable
-+ *
-+ * Attribute: __attribute__((latent_entropy))
-+ * The latent_entropy gcc attribute can be only on functions and variables.
-+ * If it is on a function then the plugin will instrument it. If the attribute
-+ * is on a variable then the plugin will initialize it with a random value.
-+ * The variable must be an integer, an integer array type or a structure
-+ * with integer fields.
-+ */
-+
-+#include "gcc-common.h"
-+
-+__visible int plugin_is_GPL_compatible;
-+
-+static GTY(()) tree latent_entropy_decl;
-+
-+static struct plugin_info latent_entropy_plugin_info = {
+ * TODO:
+ * - add ipa pass to identify not explicitly marked candidate functions
+ * - mix in more program state (function arguments/return values,
+@@ -82,11 +81,12 @@ __visible int plugin_is_GPL_compatible;
+ static GTY(()) tree latent_entropy_decl;
+
+ static struct plugin_info latent_entropy_plugin_info = {
+- .version = "201606141920vanilla",
+ .version = "20161210",
-+ .help = "disable\tturn off latent entropy instrumentation\n",
-+};
-+
-+static unsigned HOST_WIDE_INT seed;
-+
-+/*
-+ * get_random_seed() (this is a GCC function) generates the seed.
-+ * This is a simple random generator without any cryptographic security because
-+ * the entropy doesn't come from here.
-+ */
-+static unsigned HOST_WIDE_INT get_random_const(void)
-+{
-+ unsigned int i;
-+ unsigned HOST_WIDE_INT ret = 0;
+ .help = "disable\tturn off latent entropy instrumentation\n",
+ };
+
+ static unsigned HOST_WIDE_INT seed;
+
+ /*
+ * get_random_seed() (this is a GCC function) generates the seed.
+ * This is a simple random generator without any cryptographic security because
+@@ -97,7 +97,7 @@ static unsigned HOST_WIDE_INT get_random_const(void)
+ unsigned int i;
+ unsigned HOST_WIDE_INT ret = 0;
+
+- for (i = 0; i < 8 * sizeof(ret); i++) {
+ for (i = 0; i < 8 * sizeof ret; i++) {
-+ ret = (ret << 1) | (seed & 1);
-+ seed >>= 1;
-+ if (ret & 1)
-+ seed ^= 0xD800000000000000ULL;
-+ }
-+
-+ return ret;
-+}
-+
-+static tree tree_get_random_const(tree type)
-+{
-+ unsigned long long mask;
-+
-+ mask = 1ULL << (TREE_INT_CST_LOW(TYPE_SIZE(type)) - 1);
-+ mask = 2 * (mask - 1) + 1;
-+
-+ if (TYPE_UNSIGNED(type))
-+ return build_int_cstu(type, mask & get_random_const());
-+ return build_int_cst(type, mask & get_random_const());
-+}
-+
+ ret = (ret << 1) | (seed & 1);
+ seed >>= 1;
+ if (ret & 1)
+@@ -119,10 +119,7 @@ static tree tree_get_random_const(tree type)
+ return build_int_cst(type, mask & get_random_const());
+ }
+
+-static tree handle_latent_entropy_attribute(tree *node, tree name,
+- tree args __unused,
+- int flags __unused,
+- bool *no_add_attrs)
+static tree handle_latent_entropy_attribute(tree *node, tree name, tree args __unused, int flags __unused, bool *no_add_attrs)
-+{
-+ tree type;
-+#if BUILDING_GCC_VERSION <= 4007
-+ VEC(constructor_elt, gc) *vals;
-+#else
-+ vec<constructor_elt, va_gc> *vals;
-+#endif
-+
-+ switch (TREE_CODE(*node)) {
-+ default:
-+ *no_add_attrs = true;
+ {
+ tree type;
+ #if BUILDING_GCC_VERSION <= 4007
+@@ -134,22 +131,19 @@ static tree handle_latent_entropy_attribute(tree *node, tree name,
+ switch (TREE_CODE(*node)) {
+ default:
+ *no_add_attrs = true;
+- error("%qE attribute only applies to functions and variables",
+- name);
+ error("%qE attribute only applies to functions and variables", name);
-+ break;
-+
-+ case VAR_DECL:
-+ if (DECL_INITIAL(*node)) {
-+ *no_add_attrs = true;
+ break;
+
+ case VAR_DECL:
+ if (DECL_INITIAL(*node)) {
+ *no_add_attrs = true;
+- error("variable %qD with %qE attribute must not be initialized",
+- *node, name);
+ error("variable %qD with %qE attribute must not be initialized", *node, name);
-+ break;
-+ }
-+
-+ if (!TREE_STATIC(*node)) {
-+ *no_add_attrs = true;
+ break;
+ }
+
+ if (!TREE_STATIC(*node)) {
+ *no_add_attrs = true;
+- error("variable %qD with %qE attribute must not be local",
+- *node, name);
+ error("variable %qD with %qE attribute must not be local", *node, name);
-+ break;
-+ }
-+
-+ type = TREE_TYPE(*node);
-+ switch (TREE_CODE(type)) {
-+ default:
-+ *no_add_attrs = true;
+ break;
+ }
+
+@@ -157,28 +151,29 @@ static tree handle_latent_entropy_attribute(tree *node, tree name,
+ switch (TREE_CODE(type)) {
+ default:
+ *no_add_attrs = true;
+- error("variable %qD with %qE attribute must be an integer or a fixed length integer array type or a fixed sized structure with integer fields",
+- *node, name);
+ error("variable %qD with %qE attribute must be an integer"
+ " or a fixed length integer array type"
+ " or a fixed sized structure with integer fields", *node, name);
-+ break;
-+
-+ case RECORD_TYPE: {
+ break;
+
+ case RECORD_TYPE: {
+- tree fld, lst = TYPE_FIELDS(type);
+ tree field;
-+ unsigned int nelt = 0;
-+
+ unsigned int nelt = 0;
+
+- for (fld = lst; fld; nelt++, fld = TREE_CHAIN(fld)) {
+ for (field = TYPE_FIELDS(type); field; nelt++, field = TREE_CHAIN(field)) {
-+ tree fieldtype;
-+
+ tree fieldtype;
+
+- fieldtype = TREE_TYPE(fld);
+ fieldtype = TREE_TYPE(field);
-+ if (TREE_CODE(fieldtype) == INTEGER_TYPE)
-+ continue;
-+
-+ *no_add_attrs = true;
+ if (TREE_CODE(fieldtype) == INTEGER_TYPE)
+ continue;
+
+ *no_add_attrs = true;
+- error("structure variable %qD with %qE attribute has a non-integer field %qE",
+- *node, name, fld);
+ error("structure variable %qD with %qE attribute has"
+ " a non-integer field %qE", *node, name, field);
-+ break;
-+ }
-+
+ break;
+ }
+
+- if (fld)
+ if (field)
-+ break;
-+
-+#if BUILDING_GCC_VERSION <= 4007
-+ vals = VEC_alloc(constructor_elt, gc, nelt);
-+#else
-+ vec_alloc(vals, nelt);
-+#endif
-+
+ break;
+
+ #if BUILDING_GCC_VERSION <= 4007
+@@ -187,15 +182,16 @@ static tree handle_latent_entropy_attribute(tree *node, tree name,
+ vec_alloc(vals, nelt);
+ #endif
+
+- for (fld = lst; fld; fld = TREE_CHAIN(fld)) {
+- tree random_const, fld_t = TREE_TYPE(fld);
+ for (field = TYPE_FIELDS(type); field; field = TREE_CHAIN(field)) {
+ tree random_const;
-+
+
+- random_const = tree_get_random_const(fld_t);
+- CONSTRUCTOR_APPEND_ELT(vals, fld, random_const);
+ random_const = tree_get_random_const(TREE_TYPE(field));
+ CONSTRUCTOR_APPEND_ELT(vals, field, random_const);
-+ }
-+
-+ /* Initialize the fields with random constants */
-+ DECL_INITIAL(*node) = build_constructor(type, vals);
+ }
+
+ /* Initialize the fields with random constants */
+ DECL_INITIAL(*node) = build_constructor(type, vals);
+//debug_tree(DECL_INITIAL(*node));
-+ break;
-+ }
-+
-+ /* Initialize the variable with a random constant */
-+ case INTEGER_TYPE:
-+ DECL_INITIAL(*node) = tree_get_random_const(type);
-+ break;
-+
-+ case ARRAY_TYPE: {
-+ tree elt_type, array_size, elt_size;
-+ unsigned int i, nelt;
-+
-+ elt_type = TREE_TYPE(type);
-+ elt_size = TYPE_SIZE_UNIT(TREE_TYPE(type));
-+ array_size = TYPE_SIZE_UNIT(type);
-+
+ break;
+ }
+
+@@ -207,24 +203,19 @@ static tree handle_latent_entropy_attribute(tree *node, tree name,
+ case ARRAY_TYPE: {
+ tree elt_type, array_size, elt_size;
+ unsigned int i, nelt;
+- HOST_WIDE_INT array_size_int, elt_size_int;
+
+ elt_type = TREE_TYPE(type);
+ elt_size = TYPE_SIZE_UNIT(TREE_TYPE(type));
+ array_size = TYPE_SIZE_UNIT(type);
+
+- if (TREE_CODE(elt_type) != INTEGER_TYPE || !array_size
+- || TREE_CODE(array_size) != INTEGER_CST) {
+ if (TREE_CODE(elt_type) != INTEGER_TYPE || !array_size || TREE_CODE(array_size) != INTEGER_CST) {
-+ *no_add_attrs = true;
+ *no_add_attrs = true;
+- error("array variable %qD with %qE attribute must be a fixed length integer array type",
+- *node, name);
+ error("array variable %qD with %qE attribute must be"
+ " a fixed length integer array type", *node, name);
-+ break;
-+ }
-+
+ break;
+ }
+
+- array_size_int = TREE_INT_CST_LOW(array_size);
+- elt_size_int = TREE_INT_CST_LOW(elt_size);
+- nelt = array_size_int / elt_size_int;
+-
+ nelt = TREE_INT_CST_LOW(array_size) / TREE_INT_CST_LOW(elt_size);
-+#if BUILDING_GCC_VERSION <= 4007
-+ vals = VEC_alloc(constructor_elt, gc, nelt);
-+#else
-+ vec_alloc(vals, nelt);
-+#endif
-+
-+ for (i = 0; i < nelt; i++) {
+ #if BUILDING_GCC_VERSION <= 4007
+ vals = VEC_alloc(constructor_elt, gc, nelt);
+ #else
+@@ -232,17 +223,14 @@ static tree handle_latent_entropy_attribute(tree *node, tree name,
+ #endif
+
+ for (i = 0; i < nelt; i++) {
+- tree cst = size_int(i);
+- tree rand_cst = tree_get_random_const(elt_type);
+ tree random_const = tree_get_random_const(elt_type);
-+
+
+- CONSTRUCTOR_APPEND_ELT(vals, cst, rand_cst);
+ CONSTRUCTOR_APPEND_ELT(vals, size_int(i), random_const);
-+ }
-+
+ }
+
+- /*
+- * Initialize the elements of the array with random
+- * constants
+- */
+ /* Initialize the elements of the array with random constants */
-+ DECL_INITIAL(*node) = build_constructor(type, vals);
+ DECL_INITIAL(*node) = build_constructor(type, vals);
+//debug_tree(DECL_INITIAL(*node));
-+ break;
-+ }
-+ }
-+ break;
-+
-+ case FUNCTION_DECL:
-+ break;
-+ }
-+
-+ return NULL_TREE;
-+}
-+
-+static struct attribute_spec latent_entropy_attr = {
-+ .name = "latent_entropy",
-+ .min_length = 0,
-+ .max_length = 0,
-+ .decl_required = true,
-+ .type_required = false,
-+ .function_type_required = false,
-+ .handler = handle_latent_entropy_attribute,
-+#if BUILDING_GCC_VERSION >= 4007
-+ .affects_type_identity = false
-+#endif
-+};
-+
-+static void register_attributes(void *event_data __unused, void *data __unused)
-+{
-+ register_attribute(&latent_entropy_attr);
-+}
-+
-+static bool latent_entropy_gate(void)
-+{
-+ /* don't bother with noreturn functions for now */
-+ if (TREE_THIS_VOLATILE(current_function_decl))
-+ return false;
-+
-+ /* gcc-4.5 doesn't discover some trivial noreturn functions */
-+ if (EDGE_COUNT(EXIT_BLOCK_PTR_FOR_FN(cfun)->preds) == 0)
-+ return false;
-+
+ break;
+ }
+ }
+@@ -275,8 +263,6 @@ static void register_attributes(void *event_data __unused, void *data __unused)
+
+ static bool latent_entropy_gate(void)
+ {
+- tree list;
+-
+ /* don't bother with noreturn functions for now */
+ if (TREE_THIS_VOLATILE(current_function_decl))
+ return false;
+@@ -285,11 +271,10 @@ static bool latent_entropy_gate(void)
+ if (EDGE_COUNT(EXIT_BLOCK_PTR_FOR_FN(cfun)->preds) == 0)
+ return false;
+
+- list = DECL_ATTRIBUTES(current_function_decl);
+- return lookup_attribute("latent_entropy", list) != NULL_TREE;
+ return lookup_attribute("latent_entropy", DECL_ATTRIBUTES(current_function_decl)) != NULL_TREE;
-+}
-+
+ }
+
+-static tree create_var(tree type, const char *name)
+static tree create_a_tmp_var(tree type, const char *name)
-+{
-+ tree var;
-+
-+ var = create_tmp_var(type, name);
-+ add_referenced_var(var);
-+ mark_sym_for_renaming(var);
-+ return var;
-+}
-+
-+/*
-+ * Set up the next operation and its constant operand to use in the latent
-+ * entropy PRNG. When RHS is specified, the request is for perturbing the
-+ * local latent entropy variable, otherwise it is for perturbing the global
-+ * latent entropy variable where the two operands are already given by the
-+ * local and global latent entropy variables themselves.
-+ *
-+ * The operation is one of add/xor/rol when instrumenting the local entropy
-+ * variable and one of add/xor when perturbing the global entropy variable.
-+ * Rotation is not used for the latter case because it would transmit less
-+ * entropy to the global variable than the other two operations.
-+ */
-+static enum tree_code get_op(tree *rhs)
-+{
-+ static enum tree_code op;
-+ unsigned HOST_WIDE_INT random_const;
-+
-+ random_const = get_random_const();
-+
-+ switch (op) {
-+ case BIT_XOR_EXPR:
-+ op = PLUS_EXPR;
-+ break;
-+
-+ case PLUS_EXPR:
-+ if (rhs) {
-+ op = LROTATE_EXPR;
-+ /*
-+ * This code limits the value of random_const to
-+ * the size of a long for the rotation
-+ */
-+ random_const %= TYPE_PRECISION(long_unsigned_type_node);
-+ break;
-+ }
-+
-+ case LROTATE_EXPR:
-+ default:
-+ op = BIT_XOR_EXPR;
-+ break;
-+ }
-+ if (rhs)
-+ *rhs = build_int_cstu(long_unsigned_type_node, random_const);
-+ return op;
-+}
-+
-+static void perturb_local_entropy(basic_block bb, tree local_entropy)
-+{
-+ gimple_stmt_iterator gsi;
-+ gimple assign;
-+ tree rhs;
-+ enum tree_code op;
-+
-+ op = get_op(&rhs);
+ {
+ tree var;
+
+@@ -344,12 +329,6 @@ static enum tree_code get_op(tree *rhs)
+ return op;
+ }
+
+-static gimple create_assign(enum tree_code code, tree lhs, tree op1,
+- tree op2)
+-{
+- return gimple_build_assign_with_ops(code, lhs, op1, op2);
+-}
+-
+ static void perturb_local_entropy(basic_block bb, tree local_entropy)
+ {
+ gimple_stmt_iterator gsi;
+@@ -358,21 +337,21 @@ static void perturb_local_entropy(basic_block bb, tree local_entropy)
+ enum tree_code op;
+
+ op = get_op(&rhs);
+- assign = create_assign(op, local_entropy, local_entropy, rhs);
+ assign = gimple_build_assign_with_ops(op, local_entropy, local_entropy, rhs);
-+ gsi = gsi_after_labels(bb);
-+ gsi_insert_before(&gsi, assign, GSI_NEW_STMT);
-+ update_stmt(assign);
+ gsi = gsi_after_labels(bb);
+ gsi_insert_before(&gsi, assign, GSI_NEW_STMT);
+ update_stmt(assign);
+//debug_bb(bb);
-+}
-+
+ }
+
+-static void __perturb_latent_entropy(gimple_stmt_iterator *gsi,
+- tree local_entropy)
+static void __perturb_latent_entropy(gimple_stmt_iterator *gsi, tree local_entropy)
-+{
-+ gimple assign;
-+ tree temp;
-+ enum tree_code op;
-+
-+ /* 1. create temporary copy of latent_entropy */
+ {
+ gimple assign;
+ tree temp;
+ enum tree_code op;
+
+ /* 1. create temporary copy of latent_entropy */
+- temp = create_var(long_unsigned_type_node, "temp_latent_entropy");
+ temp = create_a_tmp_var(long_unsigned_type_node, "temp_latent_entropy");
-+
-+ /* 2. read... */
-+ add_referenced_var(latent_entropy_decl);
-+ mark_sym_for_renaming(latent_entropy_decl);
-+ assign = gimple_build_assign(temp, latent_entropy_decl);
-+ gsi_insert_before(gsi, assign, GSI_NEW_STMT);
-+ update_stmt(assign);
-+
-+ /* 3. ...modify... */
-+ op = get_op(NULL);
+
+ /* 2. read... */
+ add_referenced_var(latent_entropy_decl);
+@@ -383,7 +362,7 @@ static void __perturb_latent_entropy(gimple_stmt_iterator *gsi,
+
+ /* 3. ...modify... */
+ op = get_op(NULL);
+- assign = create_assign(op, temp, temp, local_entropy);
+ assign = gimple_build_assign_with_ops(op, temp, temp, local_entropy);
-+ gsi_insert_after(gsi, assign, GSI_NEW_STMT);
-+ update_stmt(assign);
-+
-+ /* 4. ...write latent_entropy */
-+ assign = gimple_build_assign(latent_entropy_decl, temp);
-+ gsi_insert_after(gsi, assign, GSI_NEW_STMT);
-+ update_stmt(assign);
-+}
-+
-+static bool handle_tail_calls(basic_block bb, tree local_entropy)
-+{
-+ gimple_stmt_iterator gsi;
-+
-+ for (gsi = gsi_start_bb(bb); !gsi_end_p(gsi); gsi_next(&gsi)) {
-+ gcall *call;
-+ gimple stmt = gsi_stmt(gsi);
-+
-+ if (!is_gimple_call(stmt))
-+ continue;
-+
-+ call = as_a_gcall(stmt);
-+ if (!gimple_call_tail_p(call))
-+ continue;
-+
-+ __perturb_latent_entropy(&gsi, local_entropy);
-+ return true;
-+ }
-+
-+ return false;
-+}
-+
-+static void perturb_latent_entropy(tree local_entropy)
-+{
-+ edge_iterator ei;
-+ edge e, last_bb_e;
-+ basic_block last_bb;
-+
-+ gcc_assert(single_pred_p(EXIT_BLOCK_PTR_FOR_FN(cfun)));
-+ last_bb_e = single_pred_edge(EXIT_BLOCK_PTR_FOR_FN(cfun));
-+
-+ FOR_EACH_EDGE(e, ei, last_bb_e->src->preds) {
-+ if (ENTRY_BLOCK_PTR_FOR_FN(cfun) == e->src)
-+ continue;
-+ if (EXIT_BLOCK_PTR_FOR_FN(cfun) == e->src)
-+ continue;
-+
-+ handle_tail_calls(e->src, local_entropy);
-+ }
-+
-+ last_bb = single_pred(EXIT_BLOCK_PTR_FOR_FN(cfun));
-+ if (!handle_tail_calls(last_bb, local_entropy)) {
-+ gimple_stmt_iterator gsi = gsi_last_bb(last_bb);
-+
-+ __perturb_latent_entropy(&gsi, local_entropy);
-+ }
+ gsi_insert_after(gsi, assign, GSI_NEW_STMT);
+ update_stmt(assign);
+
+@@ -439,20 +418,20 @@ static void perturb_latent_entropy(tree local_entropy)
+
+ __perturb_latent_entropy(&gsi, local_entropy);
+ }
+//debug_bb(single_pred(EXIT_BLOCK_PTR_FOR_FN(cfun)));
-+}
-+
-+static void init_local_entropy(basic_block bb, tree local_entropy)
-+{
-+ gimple assign, call;
+ }
+
+ static void init_local_entropy(basic_block bb, tree local_entropy)
+ {
+ gimple assign, call;
+- tree frame_addr, rand_const, tmp, fndecl, udi_frame_addr;
+ tree frame_addr, rand_const, temp, fndecl, udi_frame_addr;
-+ enum tree_code op;
-+ gimple_stmt_iterator gsi = gsi_after_labels(bb);
-+
+ enum tree_code op;
+- unsigned HOST_WIDE_INT rand_cst;
+ gimple_stmt_iterator gsi = gsi_after_labels(bb);
+
+- /* 1. create local_entropy_frameaddr */
+- frame_addr = create_var(ptr_type_node, "local_entropy_frameaddr");
+ /* 1. create local_entropy_frame_addr */
+ frame_addr = create_a_tmp_var(ptr_type_node, "local_entropy_frame_addr");
-+
+
+- /* 2. local_entropy_frameaddr = __builtin_frame_address() */
+ /* 2. local_entropy_frame_addr = __builtin_frame_address() */
-+ fndecl = builtin_decl_implicit(BUILT_IN_FRAME_ADDRESS);
-+ call = gimple_build_call(fndecl, 1, integer_zero_node);
-+ gimple_call_set_lhs(call, frame_addr);
-+ gsi_insert_before(&gsi, call, GSI_NEW_STMT);
-+ update_stmt(call);
-+
-+ udi_frame_addr = fold_convert(long_unsigned_type_node, frame_addr);
-+ assign = gimple_build_assign(local_entropy, udi_frame_addr);
-+ gsi_insert_after(&gsi, assign, GSI_NEW_STMT);
-+ update_stmt(assign);
-+
-+ /* 3. create temporary copy of latent_entropy */
+ fndecl = builtin_decl_implicit(BUILT_IN_FRAME_ADDRESS);
+ call = gimple_build_call(fndecl, 1, integer_zero_node);
+ gimple_call_set_lhs(call, frame_addr);
+@@ -465,26 +444,26 @@ static void init_local_entropy(basic_block bb, tree local_entropy)
+ update_stmt(assign);
+
+ /* 3. create temporary copy of latent_entropy */
+- tmp = create_var(long_unsigned_type_node, "temp_latent_entropy");
+ temp = create_a_tmp_var(long_unsigned_type_node, "temp_latent_entropy");
-+
-+ /* 4. read the global entropy variable into local entropy */
-+ add_referenced_var(latent_entropy_decl);
-+ mark_sym_for_renaming(latent_entropy_decl);
+
+ /* 4. read the global entropy variable into local entropy */
+ add_referenced_var(latent_entropy_decl);
+ mark_sym_for_renaming(latent_entropy_decl);
+- assign = gimple_build_assign(tmp, latent_entropy_decl);
+ assign = gimple_build_assign(temp, latent_entropy_decl);
-+ gsi_insert_after(&gsi, assign, GSI_NEW_STMT);
-+ update_stmt(assign);
-+
+ gsi_insert_after(&gsi, assign, GSI_NEW_STMT);
+ update_stmt(assign);
+
+- /* 5. mix local_entropy_frameaddr into local entropy */
+- assign = create_assign(BIT_XOR_EXPR, local_entropy, local_entropy, tmp);
+ /* 5. mix local_entropy_frame_addr into local entropy */
+ assign = gimple_build_assign_with_ops(BIT_XOR_EXPR, local_entropy, local_entropy, temp);
-+ gsi_insert_after(&gsi, assign, GSI_NEW_STMT);
-+ update_stmt(assign);
-+
+ gsi_insert_after(&gsi, assign, GSI_NEW_STMT);
+ update_stmt(assign);
+
+- rand_cst = get_random_const();
+- rand_const = build_int_cstu(long_unsigned_type_node, rand_cst);
+ rand_const = build_int_cstu(long_unsigned_type_node, get_random_const());
-+ op = get_op(NULL);
+ op = get_op(NULL);
+- assign = create_assign(op, local_entropy, local_entropy, rand_const);
+ assign = gimple_build_assign_with_ops(op, local_entropy, local_entropy, rand_const);
-+ gsi_insert_after(&gsi, assign, GSI_NEW_STMT);
-+ update_stmt(assign);
+ gsi_insert_after(&gsi, assign, GSI_NEW_STMT);
+ update_stmt(assign);
+//debug_bb(bb);
-+}
-+
-+static bool create_latent_entropy_decl(void)
-+{
-+ varpool_node_ptr node;
-+
-+ if (latent_entropy_decl != NULL_TREE)
-+ return true;
-+
-+ FOR_EACH_VARIABLE(node) {
+ }
+
+ static bool create_latent_entropy_decl(void)
+@@ -495,16 +474,15 @@ static bool create_latent_entropy_decl(void)
+ return true;
+
+ FOR_EACH_VARIABLE(node) {
+- tree name, var = NODE_DECL(node);
+ tree var = NODE_DECL(node);
-+
-+ if (DECL_NAME_LENGTH(var) < sizeof("latent_entropy") - 1)
-+ continue;
+
+ if (DECL_NAME_LENGTH(var) < sizeof("latent_entropy") - 1)
+ continue;
+-
+- name = DECL_NAME(var);
+- if (strcmp(IDENTIFIER_POINTER(name), "latent_entropy"))
+ if (strcmp(IDENTIFIER_POINTER(DECL_NAME(var)), "latent_entropy"))
-+ continue;
-+
-+ latent_entropy_decl = var;
+ continue;
+
+ latent_entropy_decl = var;
+// debug_tree(var);
-+ break;
-+ }
-+
-+ return latent_entropy_decl != NULL_TREE;
-+}
-+
-+static unsigned int latent_entropy_execute(void)
-+{
-+ basic_block bb;
-+ tree local_entropy;
-+
+ break;
+ }
+
+@@ -516,32 +494,35 @@ static unsigned int latent_entropy_execute(void)
+ basic_block bb;
+ tree local_entropy;
+
+- if (!create_latent_entropy_decl())
+ if (!create_latent_entropy_decl()) {
+// debug_tree(current_function_decl);
-+ return 0;
+ return 0;
+ }
-+
+
+- /* prepare for step 2 below */
+//fprintf(stderr, "latent_entropy: %s\n", IDENTIFIER_POINTER(DECL_NAME(current_function_decl)));
+
+ /* 2. initialize local entropy variable */
-+ gcc_assert(single_succ_p(ENTRY_BLOCK_PTR_FOR_FN(cfun)));
-+ bb = single_succ(ENTRY_BLOCK_PTR_FOR_FN(cfun));
-+ if (!single_pred_p(bb)) {
+ gcc_assert(single_succ_p(ENTRY_BLOCK_PTR_FOR_FN(cfun)));
+ bb = single_succ(ENTRY_BLOCK_PTR_FOR_FN(cfun));
+ if (!single_pred_p(bb)) {
+// gcc_assert(bb_loop_depth(bb) || (bb->flags & BB_IRREDUCIBLE_LOOP));
-+ split_edge(single_succ_edge(ENTRY_BLOCK_PTR_FOR_FN(cfun)));
-+ gcc_assert(single_succ_p(ENTRY_BLOCK_PTR_FOR_FN(cfun)));
-+ bb = single_succ(ENTRY_BLOCK_PTR_FOR_FN(cfun));
-+ }
-+
-+ /* 1. create the local entropy variable */
+ split_edge(single_succ_edge(ENTRY_BLOCK_PTR_FOR_FN(cfun)));
+ gcc_assert(single_succ_p(ENTRY_BLOCK_PTR_FOR_FN(cfun)));
+ bb = single_succ(ENTRY_BLOCK_PTR_FOR_FN(cfun));
+ }
+
+ /* 1. create the local entropy variable */
+- local_entropy = create_var(long_unsigned_type_node, "local_entropy");
+ local_entropy = create_a_tmp_var(long_unsigned_type_node, "local_entropy");
-+
-+ /* 2. initialize the local entropy variable */
-+ init_local_entropy(bb, local_entropy);
-+
-+ bb = bb->next_bb;
-+
+
+ /* 2. initialize the local entropy variable */
+ init_local_entropy(bb, local_entropy);
+
+ bb = bb->next_bb;
+
+- /*
+- * 3. instrument each BB with an operation on the
+- * local entropy variable
+- */
+ /* 3. instrument each BB with an operation on the local entropy variable */
-+ while (bb != EXIT_BLOCK_PTR_FOR_FN(cfun)) {
-+ perturb_local_entropy(bb, local_entropy);
+ while (bb != EXIT_BLOCK_PTR_FOR_FN(cfun)) {
+ perturb_local_entropy(bb, local_entropy);
+//debug_bb(bb);
-+ bb = bb->next_bb;
-+ };
-+
-+ /* 4. mix local entropy into the global entropy variable */
-+ perturb_latent_entropy(local_entropy);
-+ return 0;
-+}
-+
+ bb = bb->next_bb;
+ };
+
+@@ -550,11 +531,9 @@ static unsigned int latent_entropy_execute(void)
+ return 0;
+ }
+
+-static void latent_entropy_start_unit(void *gcc_data __unused,
+- void *user_data __unused)
+static void latent_entropy_start_unit(void *gcc_data __unused, void *user_data __unused)
-+{
+ {
+- tree type, id;
+- int quals;
+ tree latent_entropy_type;
-+
-+ seed = get_random_seed(false);
-+
-+ if (in_lto_p)
-+ return;
-+
-+ /* extern volatile unsigned long latent_entropy */
+
+ seed = get_random_seed(false);
+
+@@ -562,10 +541,8 @@ static void latent_entropy_start_unit(void *gcc_data __unused,
+ return;
+
+ /* extern volatile unsigned long latent_entropy */
+- quals = TYPE_QUALS(long_unsigned_type_node) | TYPE_QUAL_VOLATILE;
+- type = build_qualified_type(long_unsigned_type_node, quals);
+- id = get_identifier("latent_entropy");
+- latent_entropy_decl = build_decl(UNKNOWN_LOCATION, VAR_DECL, id, type);
+ latent_entropy_type = build_qualified_type(long_unsigned_type_node, TYPE_QUALS(long_unsigned_type_node) | TYPE_QUAL_VOLATILE);
+ latent_entropy_decl = build_decl(UNKNOWN_LOCATION, VAR_DECL, get_identifier("latent_entropy"), latent_entropy_type);
-+
-+ TREE_STATIC(latent_entropy_decl) = 1;
-+ TREE_PUBLIC(latent_entropy_decl) = 1;
-+ TREE_USED(latent_entropy_decl) = 1;
-+ DECL_PRESERVE_P(latent_entropy_decl) = 1;
-+ TREE_THIS_VOLATILE(latent_entropy_decl) = 1;
-+ DECL_EXTERNAL(latent_entropy_decl) = 1;
-+ DECL_ARTIFICIAL(latent_entropy_decl) = 1;
-+ lang_hooks.decls.pushdecl(latent_entropy_decl);
+
+ TREE_STATIC(latent_entropy_decl) = 1;
+ TREE_PUBLIC(latent_entropy_decl) = 1;
+@@ -575,16 +552,18 @@ static void latent_entropy_start_unit(void *gcc_data __unused,
+ DECL_EXTERNAL(latent_entropy_decl) = 1;
+ DECL_ARTIFICIAL(latent_entropy_decl) = 1;
+ lang_hooks.decls.pushdecl(latent_entropy_decl);
+// DECL_ASSEMBLER_NAME(latent_entropy_decl);
+// varpool_finalize_decl(latent_entropy_decl);
+// varpool_mark_needed_node(latent_entropy_decl);
-+}
-+
-+#define PASS_NAME latent_entropy
-+#define PROPERTIES_REQUIRED PROP_gimple_leh | PROP_cfg
+ }
+
+ #define PASS_NAME latent_entropy
+ #define PROPERTIES_REQUIRED PROP_gimple_leh | PROP_cfg
+-#define TODO_FLAGS_FINISH TODO_verify_ssa | TODO_verify_stmts | TODO_dump_func \
+- | TODO_update_ssa
+//#define TODO_FLAGS_START TODO_verify_ssa | TODO_verify_flow | TODO_verify_stmts
+#define TODO_FLAGS_FINISH TODO_verify_ssa | TODO_verify_stmts | TODO_dump_func | TODO_update_ssa
-+#include "gcc-generate-gimple-pass.h"
-+
+ #include "gcc-generate-gimple-pass.h"
+
+-__visible int plugin_init(struct plugin_name_args *plugin_info,
+- struct plugin_gcc_version *version)
+__visible int plugin_init(struct plugin_name_args *plugin_info, struct plugin_gcc_version *version)
-+{
-+ bool enabled = true;
-+ const char * const plugin_name = plugin_info->base_name;
-+ const int argc = plugin_info->argc;
-+ const struct plugin_argument * const argv = plugin_info->argv;
-+ int i;
-+
-+ static const struct ggc_root_tab gt_ggc_r_gt_latent_entropy[] = {
-+ {
-+ .base = &latent_entropy_decl,
-+ .nelt = 1,
-+ .stride = sizeof(latent_entropy_decl),
-+ .cb = &gt_ggc_mx_tree_node,
-+ .pchw = &gt_pch_nx_tree_node
-+ },
-+ LAST_GGC_ROOT_TAB
-+ };
-+
+ {
+ bool enabled = true;
+ const char * const plugin_name = plugin_info->base_name;
+@@ -592,12 +571,6 @@ __visible int plugin_init(struct plugin_name_args *plugin_info,
+ const struct plugin_argument * const argv = plugin_info->argv;
+ int i;
+
+- struct register_pass_info latent_entropy_pass_info;
+-
+- latent_entropy_pass_info.pass = make_latent_entropy_pass();
+- latent_entropy_pass_info.reference_pass_name = "optimized";
+- latent_entropy_pass_info.ref_pass_instance_number = 1;
+- latent_entropy_pass_info.pos_op = PASS_POS_INSERT_BEFORE;
+ static const struct ggc_root_tab gt_ggc_r_gt_latent_entropy[] = {
+ {
+ .base = &latent_entropy_decl,
+@@ -609,8 +582,10 @@ __visible int plugin_init(struct plugin_name_args *plugin_info,
+ LAST_GGC_ROOT_TAB
+ };
+
+ PASS_INFO(latent_entropy, "optimized", 1, PASS_POS_INSERT_BEFORE);
+
-+ if (!plugin_default_version_check(version, &gcc_version)) {
-+ error(G_("incompatible gcc/plugin versions"));
-+ return 1;
-+ }
-+
-+ for (i = 0; i < argc; ++i) {
-+ if (!(strcmp(argv[i].key, "disable"))) {
-+ enabled = false;
-+ continue;
-+ }
+ if (!plugin_default_version_check(version, &gcc_version)) {
+- error(G_("incompatible gcc/plugin versions"));
++ error_gcc_version(version);
+ return 1;
+ }
+
+@@ -619,21 +594,16 @@ __visible int plugin_init(struct plugin_name_args *plugin_info,
+ enabled = false;
+ continue;
+ }
+- error(G_("unkown option '-fplugin-arg-%s-%s'"), plugin_name, argv[i].key);
+ error(G_("unknown option '-fplugin-arg-%s-%s'"), plugin_name, argv[i].key);
-+ }
-+
+ }
+
+- register_callback(plugin_name, PLUGIN_INFO, NULL,
+- &latent_entropy_plugin_info);
+ register_callback(plugin_name, PLUGIN_INFO, NULL, &latent_entropy_plugin_info);
-+ if (enabled) {
+ if (enabled) {
+- register_callback(plugin_name, PLUGIN_START_UNIT,
+- &latent_entropy_start_unit, NULL);
+- register_callback(plugin_name, PLUGIN_REGISTER_GGC_ROOTS,
+- NULL, (void *)&gt_ggc_r_gt_latent_entropy);
+- register_callback(plugin_name, PLUGIN_PASS_MANAGER_SETUP, NULL,
+- &latent_entropy_pass_info);
+ register_callback(plugin_name, PLUGIN_START_UNIT, &latent_entropy_start_unit, NULL);
+ register_callback(plugin_name, PLUGIN_REGISTER_GGC_ROOTS, NULL, (void *)&gt_ggc_r_gt_latent_entropy);
+ register_callback(plugin_name, PLUGIN_PASS_MANAGER_SETUP, NULL, &latent_entropy_pass_info);
-+ }
+ }
+- register_callback(plugin_name, PLUGIN_ATTRIBUTES, register_attributes,
+- NULL);
+ register_callback(plugin_name, PLUGIN_ATTRIBUTES, register_attributes, NULL);
-+
-+ return 0;
-+}
+
+ return 0;
+ }
diff --git a/scripts/gcc-plugins/randomize_layout_plugin.c b/scripts/gcc-plugins/randomize_layout_plugin.c
new file mode 100644
index 0000000..71911c82
@@ -174459,10 +178385,10 @@ index 0000000..f2a0a03
+clean-files += *.so
diff --git a/scripts/gcc-plugins/rap_plugin/rap.h b/scripts/gcc-plugins/rap_plugin/rap.h
new file mode 100644
-index 0000000..f6a284d
+index 0000000..f0e20ee
--- /dev/null
+++ b/scripts/gcc-plugins/rap_plugin/rap.h
-@@ -0,0 +1,36 @@
+@@ -0,0 +1,45 @@
+#ifndef RAP_H_INCLUDED
+#define RAP_H_INCLUDED
+
@@ -174481,32 +178407,41 @@ index 0000000..f6a284d
+extern bool report_fptr_hash;
+
+extern GTY(()) tree rap_hash_type_node;
++extern const char *rap_abort_ret;
++extern const char *rap_abort_call;
++extern bool enable_type_ret, enable_type_call;
+
+void siphash24fold(unsigned char *out, const unsigned char *in, unsigned long long inlen, const unsigned char *k);
+void rap_calculate_func_hashes(void *event_data, void *data);
+rap_hash_t rap_hash_function_type(const_tree fntype, rap_hash_flags_t flags);
+rap_hash_t rap_hash_function_decl(const_tree fndecl, rap_hash_flags_t flags);
+rap_hash_t rap_hash_function_node_imprecise(cgraph_node_ptr node);
++tree get_rap_hash(gimple_seq *stmts, location_t loc, tree fptr, HOST_WIDE_INT rap_hash_offset);
+const_tree type_name(const_tree type);
+tree create_new_var(tree type, const char *name);
+
+gimple barrier(tree var, bool full);
++bool rap_cmodel_check(void);
+
+#if BUILDING_GCC_VERSION >= 4009
++opt_pass *make_rap_ret_pass(void);
+opt_pass *make_rap_fptr_pass(void);
++opt_pass *make_rap_mark_retloc_pass(void);
+#else
++struct opt_pass *make_rap_ret_pass(void);
+struct opt_pass *make_rap_fptr_pass(void);
++struct opt_pass *make_rap_mark_retloc_pass(void);
+#endif
+
+#endif
diff --git a/scripts/gcc-plugins/rap_plugin/rap_fptr_pass.c b/scripts/gcc-plugins/rap_plugin/rap_fptr_pass.c
new file mode 100644
-index 0000000..2f53f14
+index 0000000..09e1377
--- /dev/null
+++ b/scripts/gcc-plugins/rap_plugin/rap_fptr_pass.c
-@@ -0,0 +1,220 @@
+@@ -0,0 +1,278 @@
+/*
-+ * Copyright 2012-2016 by PaX Team <pageexec@freemail.hu>
++ * Copyright 2012-2017 by PaX Team <pageexec@freemail.hu>
+ * Licensed under the GPL v2
+ *
+ * Homepage: http://pax.grsecurity.net/
@@ -174518,21 +178453,7 @@ index 0000000..2f53f14
+
+static bool rap_fptr_gate(void)
+{
-+#ifdef TARGET_386
-+ tree section;
-+
-+ if (!TARGET_64BIT || ix86_cmodel != CM_KERNEL)
-+ return true;
-+
-+ section = lookup_attribute("section", DECL_ATTRIBUTES(current_function_decl));
-+ if (!section || !TREE_VALUE(section))
-+ return true;
-+
-+ section = TREE_VALUE(TREE_VALUE(section));
-+ return strncmp(TREE_STRING_POINTER(section), ".vsyscall_", 10);
-+#else
-+#error unsupported target
-+#endif
++ return rap_cmodel_check();
+}
+
+static tree build_rap_hash(gimple call_stmt, tree fntype)
@@ -174545,43 +178466,26 @@ index 0000000..2f53f14
+ return build_int_cst_type(rap_hash_type_node, hash.hash);
+}
+
-+// check the function hash of the target of the fptr
-+static basic_block rap_instrument_fptr(gimple_stmt_iterator *gsi)
++// extract the rap_hash stored at an offset from ptr
++tree get_rap_hash(gimple_seq *stmts, location_t loc, tree fptr, HOST_WIDE_INT rap_hash_offset)
+{
-+ gimple assign_hash, check_hash, call_stmt, stmt;
-+ location_t loc;
-+ tree computed_hash, target_hash, fptr, fntype;
++ gimple assign_hash;
++ tree target_hash;
+#if BUILDING_GCC_VERSION == 4005
+ tree fptr2;
+#endif
-+ basic_block cond_bb, join_bb, true_bb;
-+ edge e;
-+ const HOST_WIDE_INT rap_hash_offset = TARGET_64BIT ? 2 * sizeof(rap_hash_t) : sizeof(rap_hash_t);
-+
-+ call_stmt = gsi_stmt(*gsi);
-+ loc = gimple_location(call_stmt);
-+ fptr = gimple_call_fn(call_stmt);
-+ fntype = TREE_TYPE(TREE_TYPE(fptr));
-+
-+ if (TREE_CODE(fntype) == FUNCTION_TYPE) {
-+ computed_hash = build_rap_hash(call_stmt, fntype);
-+ } else {
-+ debug_tree(fntype);
-+ gcc_unreachable();
-+ }
+
-+ // target_hash = ((s64*)fptr)[-rap_hash_offset]
++ // target_hash = *(long*)((void*)fptr + rap_hash_offset)
+ target_hash = create_tmp_var(rap_hash_type_node, "rap_hash");
+ add_referenced_var(target_hash);
+ target_hash = make_ssa_name(target_hash, NULL);
+#if BUILDING_GCC_VERSION == 4005
+ fptr2 = create_tmp_var(ptr_type_node, "rap_fptr2");
+ fptr2 = make_ssa_name(fptr2, NULL);
-+ assign_hash = gimple_build_assign(fptr2, build2(POINTER_PLUS_EXPR, ptr_type_node, fptr, build_int_cst_type(sizetype, -rap_hash_offset)));
++ assign_hash = gimple_build_assign(fptr2, build2(POINTER_PLUS_EXPR, ptr_type_node, fptr, build_int_cst_type(sizetype, rap_hash_offset)));
+ gimple_set_location(assign_hash, loc);
+ SSA_NAME_DEF_STMT(fptr2) = assign_hash;
-+ gsi_insert_before(gsi, assign_hash, GSI_SAME_STMT);
-+ update_stmt(assign_hash);
++ gimple_seq_add_stmt(stmts, assign_hash);
+ fptr = gimple_get_lhs(assign_hash);
+
+ fptr2 = create_tmp_var(build_pointer_type(rap_hash_type_node), "rap_fptr2");
@@ -174589,24 +178493,82 @@ index 0000000..2f53f14
+ assign_hash = gimple_build_assign(fptr2, fold_convert(build_pointer_type(TREE_TYPE(target_hash)), fptr));
+ gimple_set_location(assign_hash, loc);
+ SSA_NAME_DEF_STMT(fptr2) = assign_hash;
-+ gsi_insert_before(gsi, assign_hash, GSI_SAME_STMT);
-+ update_stmt(assign_hash);
++ gimple_seq_add_stmt(stmts, assign_hash);
+ fptr = gimple_get_lhs(assign_hash);
+
+ assign_hash = gimple_build_assign(target_hash, build1(INDIRECT_REF, rap_hash_type_node, fptr));
+#else
-+ assign_hash = gimple_build_assign(target_hash, build2(MEM_REF, rap_hash_type_node, fptr, build_int_cst_type(build_pointer_type(rap_hash_type_node), -rap_hash_offset)));
++ assign_hash = gimple_build_assign(target_hash, build2(MEM_REF, rap_hash_type_node, fptr, build_int_cst_type(build_pointer_type(rap_hash_type_node), rap_hash_offset)));
+#endif
+ gimple_set_location(assign_hash, loc);
+ SSA_NAME_DEF_STMT(target_hash) = assign_hash;
-+ gsi_insert_before(gsi, assign_hash, GSI_NEW_STMT);
-+ update_stmt(assign_hash);
++ gimple_seq_add_stmt(stmts, assign_hash);
++
++ return target_hash;
++}
++
++static void rap_mark_retloc(gimple_stmt_iterator *gsi, tree computed_hash)
++{
++ gimple stmt;
++ VEC(tree, gc) *inputs = NULL;
++ VEC(tree, gc) *clobbers = NULL;
++ tree input, clobber, fndecl;
++
++ fndecl = gimple_call_fndecl(gsi_stmt(*gsi));
++ if (fndecl && is_simple_builtin(fndecl))
++ return;
++
++ input = build_tree_list(NULL_TREE, build_const_char_string(2, "i"));
++ input = chainon(NULL_TREE, build_tree_list(input, computed_hash));
++ VEC_safe_push(tree, gc, inputs, input);
++
++ clobber = build_tree_list(NULL_TREE, build_const_char_string(3, "cx"));
++ VEC_safe_push(tree, gc, clobbers, clobber);
++
++ stmt = gimple_build_asm_vec("", inputs, NULL, NULL, NULL);
++ gimple_asm_set_volatile(as_a_gasm(stmt), true);
++ gimple_set_location(stmt, gimple_location(gsi_stmt(*gsi)));
++ gsi_insert_before(gsi, stmt, GSI_SAME_STMT);
++}
++
++// check the function hash of the target of the fptr
++static void rap_instrument_fptr(gimple_stmt_iterator *gsi)
++{
++ gimple check_hash, call_stmt, stmt;
++ gimple_seq stmts = NULL;
++ location_t loc;
++ tree computed_hash, target_hash, fptr, fntype;
++ basic_block cond_bb, join_bb, true_bb;
++ edge e;
++ HOST_WIDE_INT rap_hash_offset;
++
++ call_stmt = gsi_stmt(*gsi);
++ loc = gimple_location(call_stmt);
++ fptr = gimple_call_fn(call_stmt);
++ fntype = TREE_TYPE(TREE_TYPE(fptr));
++
++ if (TREE_CODE(fntype) == FUNCTION_TYPE) {
++ computed_hash = build_rap_hash(call_stmt, fntype);
++ } else {
++ debug_tree(fntype);
++ gcc_unreachable();
++ }
++
++ if (UNITS_PER_WORD == 8)
++ rap_hash_offset = 2 * sizeof(rap_hash_t);
++ else if (UNITS_PER_WORD == 4)
++ rap_hash_offset = sizeof(rap_hash_t);
++ else
++ gcc_unreachable();
++
++ target_hash = get_rap_hash(&stmts, loc, fptr, -rap_hash_offset);
++ gsi_insert_seq_before(gsi, stmts, GSI_SAME_STMT);
+
+ // compare target_hash against computed function hash
+ // bail out on mismatch
+ check_hash = gimple_build_cond(NE_EXPR, target_hash, computed_hash, NULL_TREE, NULL_TREE);
+ gimple_set_location(check_hash, loc);
-+ gsi_insert_after(gsi, check_hash, GSI_NEW_STMT);
++ gsi_insert_before(gsi, check_hash, GSI_NEW_STMT);
+
+ cond_bb = gimple_bb(gsi_stmt(*gsi));
+ gcc_assert(!gsi_end_p(*gsi));
@@ -174630,16 +178592,26 @@ index 0000000..2f53f14
+
+ *gsi = gsi_start_bb(true_bb);
+
-+ // this fake dependency is to prevent PRE from merging this BB with others of the same kind
-+ stmt = barrier(fptr, false);
-+ gimple_set_location(stmt, loc);
-+ gsi_insert_after(gsi, stmt, GSI_CONTINUE_LINKING);
++ if (rap_abort_call) {
++ stmt = gimple_build_asm_vec(rap_abort_call, NULL, NULL, NULL, NULL);
++ gimple_asm_set_volatile(as_a_gasm(stmt), true);
++ gimple_set_location(stmt, loc);
++ gsi_insert_after(gsi, stmt, GSI_CONTINUE_LINKING);
++
++ stmt = gimple_build_call(builtin_decl_implicit(BUILT_IN_UNREACHABLE), 0);
++ } else {
++ // this fake dependency is to prevent PRE from merging this BB with others of the same kind
++ stmt = barrier(fptr, false);
++ gimple_set_location(stmt, loc);
++ gsi_insert_after(gsi, stmt, GSI_CONTINUE_LINKING);
++
++ stmt = gimple_build_call(builtin_decl_implicit(BUILT_IN_TRAP), 0);
++ }
+
-+ stmt = gimple_build_call(builtin_decl_implicit(BUILT_IN_TRAP), 0);
+ gimple_set_location(stmt, loc);
+ gsi_insert_after(gsi, stmt, GSI_CONTINUE_LINKING);
+
-+ return join_bb;
++ *gsi = gsi_start_bb(join_bb);
+}
+
+// find all language level function pointer dereferences and verify the target function
@@ -174659,8 +178631,9 @@ index 0000000..2f53f14
+
+ for (gsi = gsi_start_bb(bb); !gsi_end_p(gsi); gsi_next(&gsi)) {
+ // gimple match: h_1 = get_fptr (); D.2709_3 = h_1 (x_2(D));
-+ tree fptr, fntype;
++ tree fptr, fntype, computed_hash;
+ gimple call_stmt;
++ rap_hash_t hash;
+
+ // is it a call ...
+ call_stmt = gsi_stmt(gsi);
@@ -174679,6 +178652,9 @@ index 0000000..2f53f14
+ gcc_unreachable();
+
+ case ADDR_EXPR:
++ hash = rap_hash_function_type(TREE_TYPE(TREE_OPERAND(fptr, 0)), imprecise_rap_hash_flags);
++ computed_hash = build_int_cst_type(rap_hash_type_node, -hash.hash);
++ rap_mark_retloc(&gsi, computed_hash);
+ continue;
+
+ case SSA_NAME:
@@ -174704,14 +178680,31 @@ index 0000000..2f53f14
+
+ // ... through a function pointer
+ fntype = TREE_TYPE(fptr);
-+ if (TREE_CODE(fntype) != POINTER_TYPE)
++ if (TREE_CODE(fntype) != POINTER_TYPE) {
++ gcc_assert(TREE_CODE(fntype) == FUNCTION_TYPE || TREE_CODE(fntype) == METHOD_TYPE);
++ hash = rap_hash_function_type(fntype, imprecise_rap_hash_flags);
++ computed_hash = build_int_cst_type(rap_hash_type_node, -hash.hash);
++ rap_mark_retloc(&gsi, computed_hash);
+ continue;
++ }
+
+ fntype = TREE_TYPE(fntype);
+ gcc_assert(TREE_CODE(fntype) == FUNCTION_TYPE || TREE_CODE(fntype) == METHOD_TYPE);
+
-+ bb = rap_instrument_fptr(&gsi);
-+ gsi = gsi_start_bb(bb);
++ if (enable_type_call) {
++ rap_instrument_fptr(&gsi);
++ bb = gsi_bb(gsi);
++ gcc_assert(call_stmt == gsi_stmt(gsi));
++ }
++
++ if (enable_type_ret) {
++ hash = rap_hash_function_type(fntype, imprecise_rap_hash_flags);
++ computed_hash = build_int_cst_type(rap_hash_type_node, -hash.hash);
++ rap_mark_retloc(&gsi, computed_hash);
++ }
++
++ bb = gsi_bb(gsi);
++ gcc_assert(call_stmt == gsi_stmt(gsi));
+ }
+ }
+
@@ -175113,10 +179106,10 @@ index 0000000..161102f
+}
diff --git a/scripts/gcc-plugins/rap_plugin/rap_plugin.c b/scripts/gcc-plugins/rap_plugin/rap_plugin.c
new file mode 100644
-index 0000000..998fc0f
+index 0000000..3a3ac17
--- /dev/null
+++ b/scripts/gcc-plugins/rap_plugin/rap_plugin.c
-@@ -0,0 +1,505 @@
+@@ -0,0 +1,778 @@
+/*
+ * Copyright 2012-2017 by PaX Team <pageexec@freemail.hu>
+ * Licensed under the GPL v2
@@ -175136,9 +179129,11 @@ index 0000000..998fc0f
+__visible int plugin_is_GPL_compatible;
+
+static struct plugin_info rap_plugin_info = {
-+ .version = "201604272100",
-+ .help = "check=call\tenable the corresponding features\n"
-+ "hash=abs,abs-finish,const,volatile\n"
++ .version = "201612091515",
++ .help = "typecheck=ret,call\tenable the corresponding type hash checking based features\n"
++ "retabort=ud2\t\t\toverride __builtin_trap with specified asm for both kinds of return address checking\n"
++ "callabort=ud2\t\t\toverride __builtin_trap with specified asm for indirect call checking\n"
++ "hash=abs,abs-finish,abs-ops,abs-attr,const,volatile\n"
+ "report=func,fptr,abs\n"
+};
+
@@ -175150,6 +179145,11 @@ index 0000000..998fc0f
+tree rap_hash_type_node;
+
+static bool report_func_hash, report_abs_hash;
++const char *rap_abort_ret;
++const char *rap_abort_call;
++
++bool enable_type_ret = false;
++bool enable_type_call = false;
+
+// create the equivalent of
+// asm volatile("" : : : "memory");
@@ -175224,7 +179224,7 @@ index 0000000..998fc0f
+static const struct gcc_debug_hooks *old_debug_hooks;
+static struct gcc_debug_hooks rap_debug_hooks;
+
-+static bool __rap_cgraph_indirectly_callable(cgraph_node_ptr node, void *data)
++static bool __rap_cgraph_indirectly_callable(cgraph_node_ptr node, void *data __unused)
+{
+#if BUILDING_GCC_VERSION >= 4008
+ if (NODE_SYMBOL(node)->externally_visible)
@@ -175244,9 +179244,9 @@ index 0000000..998fc0f
+ return cgraph_for_node_and_aliases(node, __rap_cgraph_indirectly_callable, NULL, true);
+}
+
-+static void rap_hash_align(tree decl)
++static void rap_hash_align(const_tree decl)
+{
-+ const unsigned HOST_WIDE_INT rap_hash_offset = TARGET_64BIT ? 2 * sizeof(rap_hash_t) : sizeof(rap_hash_t);
++ unsigned HOST_WIDE_INT rap_hash_offset;
+ unsigned HOST_WIDE_INT skip;
+
+ skip = 1ULL << align_functions_log;
@@ -175256,6 +179256,13 @@ index 0000000..998fc0f
+ if (!optimize_function_for_speed_p(cfun))
+ return;
+
++ if (UNITS_PER_WORD == 8)
++ rap_hash_offset = 2 * sizeof(rap_hash_t);
++ else if (UNITS_PER_WORD == 4)
++ rap_hash_offset = sizeof(rap_hash_t);
++ else
++ gcc_unreachable();
++
+ if (skip <= rap_hash_offset)
+ return;
+
@@ -175301,21 +179308,41 @@ index 0000000..998fc0f
+ if (report_func_hash)
+ inform(DECL_SOURCE_LOCATION(decl), "func rap_hash: %x %s", imprecise_rap_hash.hash, IDENTIFIER_POINTER(DECL_ASSEMBLER_NAME(decl)));
+
-+ if (TARGET_64BIT)
-+ fprintf(asm_out_file, "\t.quad %#lx\t%s __rap_hash_%s\n", (long)imprecise_rap_hash.hash, ASM_COMMENT_START, IDENTIFIER_POINTER(DECL_ASSEMBLER_NAME(decl)));
++ if (UNITS_PER_WORD == 8)
++ fprintf(asm_out_file, "\t.quad %#llx\t%s __rap_hash_call_%s\n", (long long)imprecise_rap_hash.hash, ASM_COMMENT_START, IDENTIFIER_POINTER(DECL_ASSEMBLER_NAME(decl)));
+ else
-+ fprintf(asm_out_file, "\t.long %#x\t%s __rap_hash_%s\n", imprecise_rap_hash.hash, ASM_COMMENT_START, IDENTIFIER_POINTER(DECL_ASSEMBLER_NAME(decl)));
++ fprintf(asm_out_file, "\t.long %#x\t%s __rap_hash_call_%s\n", imprecise_rap_hash.hash, ASM_COMMENT_START, IDENTIFIER_POINTER(DECL_ASSEMBLER_NAME(decl)));
+}
+
-+static void rap_start_unit_common(void *gcc_data __unused, void *user_data __unused)
++static void rap_emit_hash_symbol(const char *type, const char *asmname, rap_hash_t hash)
+{
-+ rap_hash_type_node = long_integer_type_node;
++ char *name = NULL;
+
-+ if (debug_hooks)
-+ rap_debug_hooks = *debug_hooks;
-+ rap_debug_hooks.begin_function = rap_begin_function;
-+ old_debug_hooks = debug_hooks;
-+ debug_hooks = &rap_debug_hooks;
++ gcc_assert(asprintf(&name, "__rap_hash_%s_%s", type, asmname) != -1);
++
++ fprintf(asm_out_file, "\t.pushsection .text\n");
++
++ fprintf(asm_out_file, GLOBAL_ASM_OP " %s\n", name);
++ if (UNITS_PER_WORD == 8)
++ fprintf(asm_out_file, "\t.offset %#018llx\n", (long long)hash.hash);
++ else if (UNITS_PER_WORD == 4)
++ fprintf(asm_out_file, "\t.offset %#010x\n", hash.hash);
++ else
++ gcc_unreachable();
++
++ ASM_OUTPUT_TYPE_DIRECTIVE(asm_out_file, name, "object");
++ ASM_OUTPUT_LABEL(asm_out_file, name);
++ free(name);
++
++ fprintf(asm_out_file, "\t.popsection\n");
++}
++
++static void rap_emit_hash_symbols(const char *asmname, rap_hash_t hash)
++{
++
++ rap_emit_hash_symbol("call", asmname, hash);
++ hash.hash = -hash.hash;
++ rap_emit_hash_symbol("ret", asmname, hash);
+}
+
+/*
@@ -175324,10 +179351,10 @@ index 0000000..998fc0f
+ - non-static functions
+ - use visibility instead?
+
-+ .globl __rap_hash_func
++ .globl __rap_hash_call_func
+ .offset 0xhash_for_func
-+ .type __rap_hash_func, @object
-+ __rap_hash_func:
++ .type __rap_hash_call_func, @object
++ __rap_hash_call_func:
+ .previous
+*/
+static void rap_finish_unit(void *gcc_data __unused, void *user_data __unused)
@@ -175341,11 +179368,10 @@ index 0000000..998fc0f
+ FOR_EACH_FUNCTION(node) {
+ tree fndecl;
+ const char *asmname;
-+ char *name = NULL;
+
++ if (node->thunk.thunk_p || node->alias)
++ continue;
+ if (cgraph_function_body_availability(node) >= AVAIL_INTERPOSABLE) {
-+ if (node->thunk.thunk_p || node->alias)
-+ continue;
+ if (!rap_cgraph_indirectly_callable(node))
+ continue;
+ }
@@ -175377,35 +179403,21 @@ index 0000000..998fc0f
+ asmname++;
+
+ gcc_assert(asmname[0]);
-+ gcc_assert(asprintf(&name, "__rap_hash_%s", asmname) != -1);
+
+ hash = rap_hash_function_node_imprecise(node);
+ if (report_abs_hash)
+ inform(DECL_SOURCE_LOCATION(fndecl), "abs rap_hash: %x %s", hash.hash, IDENTIFIER_POINTER(DECL_ASSEMBLER_NAME(fndecl)));
-+
-+ fprintf(asm_out_file, GLOBAL_ASM_OP " %s\n", name);
-+ if (TARGET_64BIT)
-+ fprintf(asm_out_file, "\t.offset %#lx\n", (long)hash.hash);
-+ else
-+ fprintf(asm_out_file, "\t.offset %#x\n", hash.hash);
-+ ASM_OUTPUT_TYPE_DIRECTIVE(asm_out_file, name, "object");
-+ ASM_OUTPUT_LABEL(asm_out_file, name);
-+ free(name);
++ rap_emit_hash_symbols(asmname, hash);
+ }
-+
-+ if (hash.hash)
-+ fprintf(asm_out_file, "\t.previous\n");
+}
+
-+#if BUILDING_GCC_VERSION >= 4007
+// emit the rap hash as an absolute symbol for all functions seen in the frontend
+// this is necessary as later unreferenced nodes will be removed yet we'd like to emit as many hashes as possible
-+static void rap_finish_decl(void *event_data, void *data __unused)
++static void rap_emit_hash_symbols_finish_decl(void *event_data, void *data __unused)
+{
+ tree fndecl = (tree)event_data;
+ rap_hash_t hash;
+ const char *asmname;
-+ char *name = NULL;
+
+ if (fndecl == error_mark_node)
+ return;
@@ -175428,25 +179440,192 @@ index 0000000..998fc0f
+ if (strchr(asmname, '.'))
+ return;
+
-+ gcc_assert(asprintf(&name, "__rap_hash_%s", asmname) != -1);
-+
+ hash = rap_hash_function_decl(fndecl, imprecise_rap_hash_flags);
-+
++ rap_emit_hash_symbols(asmname, hash);
+ if (report_abs_hash)
+ inform(DECL_SOURCE_LOCATION(fndecl), "abs rap_hash: %x %s", hash.hash, asmname);
++}
+
-+ fprintf(asm_out_file, GLOBAL_ASM_OP " %s\n", name);
-+ if (TARGET_64BIT)
-+ fprintf(asm_out_file, "\t.offset %#lx\n", (long)hash.hash);
-+ else
-+ fprintf(asm_out_file, "\t.offset %#x\n", hash.hash);
-+ ASM_OUTPUT_TYPE_DIRECTIVE(asm_out_file, name, "object");
-+ ASM_OUTPUT_LABEL(asm_out_file, name);
-+ free(name);
++static void rap_emit_hash_symbols_finish_decl_attr(void *event_data, void *data)
++{
++ tree fndecl = (tree)event_data;
++
++ if (fndecl == error_mark_node)
++ return;
+
-+ fprintf(asm_out_file, "\t.previous\n");
++ if (TREE_CODE(fndecl) != FUNCTION_DECL)
++ return;
++
++ if (!lookup_attribute("rap_hash", TYPE_ATTRIBUTES(TREE_TYPE(fndecl))))
++ return;
++
++ rap_emit_hash_symbols_finish_decl(event_data, data);
+}
++
++static void rap_emit_hash_symbols_type(const_tree type, const char *prefix)
++{
++ const_tree field;
++
++ if (TYPE_FIELDS(type) == NULL_TREE)
++ return;
++
++ // TODO skip constified types for now
++ if (TYPE_READONLY(type))
++ return;
++
++ // create the prefix if it hasn't been done yet
++ if (!*prefix) {
++ const_tree name = type_name(type);
++
++ // skip an anonymous struct embedded inside another one
++ // we'll see it when we walk the parent later
++ if (!name)
++ return;
++
++ prefix = IDENTIFIER_POINTER(name);
++ gcc_assert(*prefix);
++ }
++
++ for (field = TYPE_FIELDS(type); field; field = TREE_CHAIN(field)) {
++ const_tree fieldtype, fieldname;
++ char *hashname = NULL, *newprefix = NULL;
++ rap_hash_t hash;
++
++ fieldtype = TREE_TYPE(field);
++ switch (TREE_CODE(fieldtype)) {
++ default:
++ continue;
++
++ case RECORD_TYPE:
++ case UNION_TYPE:
++ fieldname = DECL_NAME(field);
++ if (!fieldname)
++ continue;
++ gcc_assert(asprintf(&newprefix, "%s.%s", prefix, IDENTIFIER_POINTER(fieldname)) != -1);
++ rap_emit_hash_symbols_type(fieldtype, newprefix);
++ free(newprefix);
++ continue;
++
++ case POINTER_TYPE:
++ fieldtype = TREE_TYPE(fieldtype);
++ if (TREE_CODE(fieldtype) != FUNCTION_TYPE)
++ continue;
++
++ hash = rap_hash_function_type(fieldtype, imprecise_rap_hash_flags);
++ fieldname = DECL_NAME(field);
++ gcc_assert(fieldname);
++ gcc_assert(asprintf(&hashname, "%s.%s", prefix, IDENTIFIER_POINTER(fieldname)) != -1);
++ if (report_abs_hash)
++ inform(DECL_SOURCE_LOCATION(field), "abs rap_hash: %x %s", hash.hash, hashname);
++ rap_emit_hash_symbols(hashname, hash);
++ free(hashname);
++ continue;
++ }
++ }
++}
++
++static void rap_emit_hash_symbols_finish_type(void *event_data, void *data __unused)
++{
++ const_tree type = (const_tree)event_data;
++
++ if (type == NULL_TREE || type == error_mark_node)
++ return;
++
++ if (!lookup_attribute("rap_hash", TYPE_ATTRIBUTES(type)))
++ return;
++
++ switch (TREE_CODE(type)) {
++ default:
++ debug_tree(type);
++ gcc_unreachable();
++
++#if BUILDING_GCC_VERSION >= 5000
++ case ENUMERAL_TYPE:
+#endif
++ case UNION_TYPE:
++ break;
++
++ case RECORD_TYPE:
++ rap_emit_hash_symbols_type(type, "");
++ break;
++ }
++}
++
++static void rap_assembly_start(void)
++{
++ gcc_assert(debug_hooks == &rap_debug_hooks);
++
++ // chain to previous callback
++ if (old_debug_hooks && old_debug_hooks->assembly_start)
++ old_debug_hooks->assembly_start();
++
++#ifdef TARGET_386
++ if (enable_type_call) {
++ fprintf(asm_out_file,
++ "\t.macro rap_indirect_call target hash\n"
++ "\t\tjmp 2001f\n"
++ "\t\t%s __rap_hash_ret_\\hash\n"
++ "\t\t.skip 8-(2002f-2001f),0xcc\n"
++ "\t2001: call \\target\n"
++ "\t2002:\n"
++ "\t.endm\n",
++ (UNITS_PER_WORD == 8 ? ".quad" : ".long")
++ );
++
++ fprintf(asm_out_file,
++ "\t.macro rap_direct_call target hash=""\n"
++ "\t\t.ifb \\hash\n"
++ "\t\trap_indirect_call \\target \\target\n"
++ "\t\t.else\n"
++ "\t\trap_indirect_call \\target \\hash\n"
++ "\t\t.endif\n"
++ "\t.endm\n"
++ );
++ }
++
++ if (enable_type_ret) {
++ fprintf(asm_out_file,
++ "\t.macro rap_ret target\n"
++ "\t\tret\n"
++ "\t.endm\n"
++ );
++ }
++#else
++#error unsupported target
++#endif
++}
++
++static void (*old_override_options_after_change)(void);
++
++static void rap_override_options_after_change(void)
++{
++ if (old_override_options_after_change)
++ old_override_options_after_change();
++
++#if BUILDING_GCC_VERSION >= 5000
++ flag_ipa_icf_functions = 0;
++#endif
++ flag_crossjumping = 0;
++ flag_optimize_sibling_calls = 0;
++}
++
++static void rap_start_unit_common(void *gcc_data __unused, void *user_data __unused)
++{
++ rap_hash_type_node = long_integer_type_node;
++
++ if (debug_hooks)
++ rap_debug_hooks = *debug_hooks;
++
++ if (enable_type_call || enable_type_ret)
++ rap_debug_hooks.assembly_start = rap_assembly_start;
++ rap_debug_hooks.begin_function = rap_begin_function;
++
++ old_debug_hooks = debug_hooks;
++ debug_hooks = &rap_debug_hooks;
++
++ old_override_options_after_change = targetm.override_options_after_change;
++ targetm.override_options_after_change = rap_override_options_after_change;
++}
+
+static bool rap_unignore_gate(void)
+{
@@ -175486,6 +179665,44 @@ index 0000000..998fc0f
+ return true;
+}
+
++static tree handle_rap_hash_attribute(tree *node, tree name, tree args __unused, int flags, bool *no_add_attrs)
++{
++ *no_add_attrs = true;
++
++ gcc_assert(TYPE_P(*node));
++
++ switch (TREE_CODE(*node)) {
++ default:
++ error("%qE attribute applies to structure and function types only (%qT)", name, *node);
++ return NULL_TREE;
++
++ case FUNCTION_TYPE:
++ case RECORD_TYPE:
++ break;
++ }
++
++ *no_add_attrs = false;
++ return NULL_TREE;
++}
++
++static struct attribute_spec rap_hash_attr = {
++ .name = "rap_hash",
++ .min_length = 0,
++ .max_length = 0,
++ .decl_required = false,
++ .type_required = true,
++ .function_type_required = false,
++ .handler = handle_rap_hash_attribute,
++#if BUILDING_GCC_VERSION >= 4007
++ .affects_type_identity = true
++#endif
++};
++
++static void register_attributes(void *event_data __unused, void *data __unused)
++{
++ register_attribute(&rap_hash_attr);
++}
++
+EXPORTED_CONST struct ggc_root_tab gt_ggc_r_gt_rap[] = {
+ {
+ .base = &rap_hash_type_node,
@@ -175503,14 +179720,18 @@ index 0000000..998fc0f
+ const char * const plugin_name = plugin_info->base_name;
+ const int argc = plugin_info->argc;
+ const struct plugin_argument * const argv = plugin_info->argv;
-+ bool enable_call = false;
-+ bool enable_abs = false, enable_abs_finish = false;
++ bool enable_abs = false;
++ bool enable_abs_finish = false;
++ bool enable_abs_ops = false;
++ bool enable_abs_attr = false;
+
-+ PASS_INFO(rap_fptr, "nrv", 1, PASS_POS_INSERT_AFTER);
-+ PASS_INFO(rap_unignore, "final", 1, PASS_POS_INSERT_BEFORE);
++ PASS_INFO(rap_ret, "optimized", 1, PASS_POS_INSERT_AFTER);
++ PASS_INFO(rap_fptr, "rap_ret", 1, PASS_POS_INSERT_AFTER);
++ PASS_INFO(rap_mark_retloc, "mach", 1, PASS_POS_INSERT_AFTER);
++ PASS_INFO(rap_unignore, "final", 1, PASS_POS_INSERT_BEFORE);
+
+ if (!rap_version_check(version, &gcc_version)) {
-+ error(G_("incompatible gcc/plugin versions"));
++ error_gcc_version(version);
+ return 1;
+ }
+
@@ -175526,7 +179747,7 @@ index 0000000..998fc0f
+ if (!strcmp(argv[i].key, "disable"))
+ continue;
+
-+ if (!strcmp(argv[i].key, "check")) {
++ if (!strcmp(argv[i].key, "typecheck")) {
+ char *values, *value, *saveptr;
+
+ if (!argv[i].value) {
@@ -175537,8 +179758,10 @@ index 0000000..998fc0f
+ values = xstrdup(argv[i].value);
+ value = strtok_r(values, ",", &saveptr);
+ while (value) {
-+ if (!strcmp(value, "call"))
-+ enable_call = true;
++ if (!strcmp(value, "ret"))
++ enable_type_ret = true;
++ else if (!strcmp(value, "call"))
++ enable_type_call = true;
+ else
+ error(G_("unknown value supplied for option '-fplugin-arg-%s-%s=%s'"), plugin_name, argv[i].key, value);
+ value = strtok_r(NULL, ",", &saveptr);
@@ -175547,6 +179770,26 @@ index 0000000..998fc0f
+ continue;
+ }
+
++ if (!strcmp(argv[i].key, "retabort")) {
++ if (!argv[i].value) {
++ error(G_("no value supplied for option '-fplugin-arg-%s-%s'"), plugin_name, argv[i].key);
++ continue;
++ }
++
++ rap_abort_ret = xstrdup(argv[i].value);
++ continue;
++ }
++
++ if (!strcmp(argv[i].key, "callabort")) {
++ if (!argv[i].value) {
++ error(G_("no value supplied for option '-fplugin-arg-%s-%s'"), plugin_name, argv[i].key);
++ continue;
++ }
++
++ rap_abort_call = xstrdup(argv[i].value);
++ continue;
++ }
++
+ if (!strcmp(argv[i].key, "hash")) {
+ char *values, *value, *saveptr;
+
@@ -175562,6 +179805,10 @@ index 0000000..998fc0f
+ enable_abs = enable_abs_finish = true;
+ else if (!strcmp(value, "abs-finish"))
+ enable_abs_finish = true;
++ else if (!strcmp(value, "abs-ops"))
++ enable_abs_ops = true;
++ else if (!strcmp(value, "abs-attr"))
++ enable_abs_attr = true;
+// else if (!strcmp(value, "const"))
+// imprecise_rap_hash_flags.qual_const = 1;
+// else if (!strcmp(value, "volatile"))
@@ -175604,24 +179851,392 @@ index 0000000..998fc0f
+
+ register_callback(plugin_name, PLUGIN_INFO, NULL, &rap_plugin_info);
+
-+ if (enable_call) {
-+#if BUILDING_GCC_VERSION >= 4007
++ if (enable_type_ret) {
++ flag_crossjumping = 0;
++ flag_optimize_sibling_calls = 0;
++ register_callback(plugin_name, PLUGIN_PASS_MANAGER_SETUP, NULL, &rap_ret_pass_info);
++ register_callback(plugin_name, PLUGIN_PASS_MANAGER_SETUP, NULL, &rap_mark_retloc_pass_info);
++ }
++
++ if (enable_type_call || enable_type_ret) {
+ if (enable_abs)
-+ register_callback(plugin_name, PLUGIN_FINISH_DECL, rap_finish_decl, NULL);
++#if BUILDING_GCC_VERSION >= 4007
++ register_callback(plugin_name, PLUGIN_FINISH_DECL, rap_emit_hash_symbols_finish_decl, NULL);
++#else
++ register_callback(plugin_name, PLUGIN_PRE_GENERICIZE, rap_emit_hash_symbols_finish_decl, NULL);
++#endif
++ if (enable_abs_ops)
++ register_callback(plugin_name, PLUGIN_FINISH_TYPE, rap_emit_hash_symbols_finish_type, NULL);
++ if (enable_abs_attr)
++#if BUILDING_GCC_VERSION >= 4007
++ register_callback(plugin_name, PLUGIN_FINISH_DECL, rap_emit_hash_symbols_finish_decl_attr, NULL);
+#else
-+#warning TODO
++ register_callback(plugin_name, PLUGIN_PRE_GENERICIZE, rap_emit_hash_symbols_finish_decl_attr, NULL);
+#endif
++ register_callback(plugin_name, PLUGIN_ATTRIBUTES, register_attributes, NULL);
+ register_callback(plugin_name, PLUGIN_PASS_MANAGER_SETUP, NULL, &rap_unignore_pass_info);
+ register_callback(plugin_name, PLUGIN_START_UNIT, rap_start_unit_common, NULL);
+ register_callback(plugin_name, PLUGIN_REGISTER_GGC_ROOTS, NULL, (void *)&gt_ggc_r_gt_rap);
+ if (enable_abs_finish)
+ register_callback(plugin_name, PLUGIN_FINISH_UNIT, rap_finish_unit, NULL);
-+ register_callback(plugin_name, PLUGIN_PASS_MANAGER_SETUP, NULL, &rap_fptr_pass_info);
+ register_callback(plugin_name, PLUGIN_ALL_IPA_PASSES_START, rap_calculate_func_hashes, NULL);
++
++ if (!enable_type_ret)
++ rap_fptr_pass_info.reference_pass_name = "optimized";
++ register_callback(plugin_name, PLUGIN_PASS_MANAGER_SETUP, NULL, &rap_fptr_pass_info);
+ }
+
+ return 0;
+}
+diff --git a/scripts/gcc-plugins/rap_plugin/rap_ret_pass.c b/scripts/gcc-plugins/rap_plugin/rap_ret_pass.c
+new file mode 100644
+index 0000000..690f8d3
+--- /dev/null
++++ b/scripts/gcc-plugins/rap_plugin/rap_ret_pass.c
+@@ -0,0 +1,343 @@
++/*
++ * Copyright 2012-2017 by PaX Team <pageexec@freemail.hu>
++ * Licensed under the GPL v2
++ *
++ * Homepage: http://pax.grsecurity.net/
++ */
++
++#include "rap.h"
++
++bool rap_cmodel_check(void)
++{
++#ifdef TARGET_386
++ tree section;
++
++ if (!TARGET_64BIT || ix86_cmodel != CM_KERNEL)
++ return true;
++
++ section = lookup_attribute("section", DECL_ATTRIBUTES(current_function_decl));
++ if (!section || !TREE_VALUE(section))
++ return true;
++
++ section = TREE_VALUE(TREE_VALUE(section));
++ return strncmp(TREE_STRING_POINTER(section), ".vsyscall_", 10);
++#else
++#error unsupported target
++#endif
++}
++
++static bool rap_ret_gate(void)
++{
++ return rap_cmodel_check();
++}
++
++tree create_new_var(tree type, const char *name)
++{
++ tree var;
++
++ var = create_tmp_var(type, name);
++ add_referenced_var(var);
++// mark_sym_for_renaming(var);
++ return var;
++}
++
++/*
++ * insert the equivalent of
++ * return (unsigned long)__builtin_return_address(0);
++ */
++static tree get_retaddr(gimple_seq *stmts)
++{
++ gimple stmt;
++ tree retaddr_ptr;
++
++ stmt = barrier(NULL_TREE, true);
++ gimple_seq_add_stmt(stmts, stmt);
++
++ // copy the return address into a temporary variable
++ retaddr_ptr = create_new_var(ptr_type_node, "rap_retaddr_exit_ptr");
++ stmt = gimple_build_call(builtin_decl_implicit(BUILT_IN_RETURN_ADDRESS), 1, integer_zero_node);
++ retaddr_ptr = make_ssa_name(retaddr_ptr, stmt);
++ gimple_call_set_lhs(stmt, retaddr_ptr);
++ gimple_seq_add_stmt(stmts, stmt);
++
++ return retaddr_ptr;
++}
++
++/*
++ * insert the equivalent of
++ * if (*(long *)((void *)retaddr+N) != (long)-function_hash) abort();
++ */
++static void check_retaddr(gimple_stmt_iterator *gsi, tree new_retaddr)
++{
++ gimple stmt;
++ location_t loc;
++ basic_block cond_bb, join_bb, true_bb;
++ edge e;
++
++ gcc_assert(!gsi_end_p(*gsi));
++ loc = gimple_location(gsi_stmt(*gsi));
++
++ gimple_seq stmts = NULL;
++ tree target_hash, computed_hash;
++ rap_hash_t hash;
++
++#ifdef TARGET_386
++ if (TARGET_64BIT)
++ target_hash = get_rap_hash(&stmts, loc, new_retaddr, -16);
++ else
++ target_hash = get_rap_hash(&stmts, loc, new_retaddr, -10);
++#else
++#error unsupported target
++#endif
++
++ if (gsi_end_p(*gsi) || !stmt_ends_bb_p(gsi_stmt(*gsi)))
++ gsi_insert_seq_after(gsi, stmts, GSI_CONTINUE_LINKING);
++ else {
++ gsi_insert_seq_before(gsi, stmts, GSI_SAME_STMT);
++ gsi_prev(gsi);
++ }
++
++ hash = rap_hash_function_type(TREE_TYPE(current_function_decl), imprecise_rap_hash_flags);
++ computed_hash = build_int_cst_type(rap_hash_type_node, -hash.hash);
++
++ stmt = gimple_build_cond(NE_EXPR, target_hash, computed_hash, NULL_TREE, NULL_TREE);
++ gimple_set_location(stmt, loc);
++ gsi_insert_after(gsi, stmt, GSI_CONTINUE_LINKING);
++
++ cond_bb = gimple_bb(gsi_stmt(*gsi));
++ e = split_block(cond_bb, gsi_stmt(*gsi));
++ cond_bb = e->src;
++ join_bb = e->dest;
++ e->flags = EDGE_FALSE_VALUE;
++ e->probability = REG_BR_PROB_BASE;
++
++ true_bb = create_empty_bb(join_bb);
++ make_edge(cond_bb, true_bb, EDGE_TRUE_VALUE | EDGE_PRESERVE);
++
++ set_immediate_dominator(CDI_DOMINATORS, true_bb, cond_bb);
++ set_immediate_dominator(CDI_DOMINATORS, join_bb, cond_bb);
++
++ gcc_assert(cond_bb->loop_father == join_bb->loop_father);
++ add_bb_to_loop(true_bb, cond_bb->loop_father);
++
++ // insert call to builtin_trap or rap_abort_ret
++ *gsi = gsi_start_bb(true_bb);
++
++ if (rap_abort_ret) {
++ stmt = gimple_build_asm_vec(rap_abort_ret, NULL, NULL, NULL, NULL);
++ gimple_asm_set_volatile(as_a_gasm(stmt), true);
++ gimple_set_location(stmt, loc);
++ gsi_insert_after(gsi, stmt, GSI_CONTINUE_LINKING);
++
++ stmt = gimple_build_call(builtin_decl_implicit(BUILT_IN_UNREACHABLE), 0);
++ } else
++ stmt = gimple_build_call(builtin_decl_implicit(BUILT_IN_TRAP), 0);
++
++ gimple_set_location(stmt, loc);
++ gsi_insert_after(gsi, stmt, GSI_CONTINUE_LINKING);
++
++ *gsi = gsi_after_labels(join_bb);
++}
++
++static unsigned int rap_ret_execute(void)
++{
++ edge e;
++ edge_iterator ei;
++
++ loop_optimizer_init(LOOPS_NORMAL | LOOPS_HAVE_RECORDED_EXITS);
++ gcc_assert(current_loops);
++
++ calculate_dominance_info(CDI_DOMINATORS);
++ calculate_dominance_info(CDI_POST_DOMINATORS);
++
++ FOR_EACH_EDGE(e, ei, EXIT_BLOCK_PTR_FOR_FN(cfun)->preds) {
++ gimple_stmt_iterator gsi;
++ gimple_seq stmts = NULL;
++ tree new_retaddr;
++
++ gsi = gsi_last_nondebug_bb(e->src);
++ gcc_assert(!gsi_end_p(gsi));
++ gcc_assert(gimple_code(gsi_stmt(gsi)) == GIMPLE_RETURN);
++
++ new_retaddr = get_retaddr(&stmts);
++ gsi_insert_seq_before(&gsi, stmts, GSI_SAME_STMT);
++ gsi_prev(&gsi);
++ check_retaddr(&gsi, new_retaddr);
++ }
++
++ free_dominance_info(CDI_DOMINATORS);
++ free_dominance_info(CDI_POST_DOMINATORS);
++ loop_optimizer_finalize();
++ return 0;
++}
++
++#define PASS_NAME rap_ret
++#define PROPERTIES_REQUIRED PROP_cfg
++#define TODO_FLAGS_FINISH TODO_verify_ssa | TODO_verify_stmts | TODO_dump_func | TODO_remove_unused_locals | TODO_update_ssa | TODO_cleanup_cfg | TODO_ggc_collect | TODO_rebuild_cgraph_edges | TODO_verify_flow
++#include "gcc-generate-gimple-pass.h"
++
++// find and remove the asm mark from the given insn up in its basic block
++static tree rap_find_retloc_mark(rtx_insn *insn)
++{
++ basic_block bb;
++ rtx_insn *hash;
++
++#if BUILDING_GCC_VERSION == 4005
++ FOR_EACH_BB_FN(bb, cfun) {
++ rtx_insn *i;
++
++ FOR_BB_INSNS(bb, i) {
++ if (i == insn)
++ break;
++ }
++ if (i == insn)
++ break;
++ }
++#else
++ bb = BLOCK_FOR_INSN(insn);
++#endif
++ gcc_assert(bb);
++ gcc_assert(BB_HEAD(bb));
++
++ for (hash = insn; hash && hash != PREV_INSN(BB_HEAD(bb)); hash = PREV_INSN(hash)) {
++ tree computed_hash;
++ rtx body;
++
++ if (!INSN_P(hash))
++ continue;
++
++ body = PATTERN(hash);
++
++ if (GET_CODE(body) != PARALLEL)
++ continue;
++
++ body = XVECEXP(body, 0, 0);
++ if (GET_CODE(body) != ASM_OPERANDS)
++ continue;
++
++ if (ASM_OPERANDS_INPUT_LENGTH(body) != 1)
++ continue;
++
++ body = ASM_OPERANDS_INPUT(body, 0);
++ if (!CONST_INT_P(body))
++ continue;
++
++ computed_hash = build_int_cst_type(rap_hash_type_node, INTVAL(body));
++ delete_insn_and_edges(hash);
++ return computed_hash;;
++ }
++
++ return NULL_TREE;
++}
++
++static tree rap_get_direct_call_retloc_mark(rtx_insn *insn)
++{
++ rap_hash_t func_hash;
++ rtx body;
++ tree fntype;
++
++ body = PATTERN(insn);
++ if (GET_CODE(body) == SET)
++ body = SET_SRC(body);
++ if (GET_CODE(body) != CALL)
++ return NULL_TREE;
++
++ body = XEXP(body, 0);
++ gcc_assert(GET_CODE(body) == MEM);
++ if (GET_CODE(XEXP(body, 0)) != SYMBOL_REF)
++ return NULL_TREE;
++
++ fntype = SYMBOL_REF_DECL(XEXP(body, 0));
++ gcc_assert(TREE_CODE(fntype) == FUNCTION_DECL);
++ fntype = TREE_TYPE(fntype);
++ func_hash = rap_hash_function_type(fntype, imprecise_rap_hash_flags);
++ return build_int_cst_type(rap_hash_type_node, -func_hash.hash);
++}
++
++static unsigned int rap_mark_retloc_execute(void)
++{
++ rtx_insn *insn;
++
++ for (insn = get_insns(); insn; insn = NEXT_INSN(insn)) {
++ rtvec argvec, constraintvec, labelvec;
++ rtx mark, label1, label2;
++ tree computed_hash = NULL_TREE;
++
++ if (INSN_DELETED_P(insn))
++ continue;
++
++ // rtl match (call_insn (set (reg) (call (mem))))
++ if (!CALL_P(insn))
++ continue;
++
++ gcc_assert(!SIBLING_CALL_P(insn));
++
++ if (find_reg_note(insn, REG_NORETURN, 0))
++ continue;
++
++ argvec = rtvec_alloc(1);
++ constraintvec = rtvec_alloc(1);
++ labelvec = rtvec_alloc(2);
++
++#ifdef TARGET_386
++ if (TARGET_64BIT)
++ mark = gen_rtx_ASM_OPERANDS(VOIDmode, ggc_strdup("jmp %l1 ; .quad %c0 ; .skip 8-(%l2-%l1),0xcc"), empty_string, 0, argvec, constraintvec, labelvec, INSN_LOCATION(insn));
++ else
++ mark = gen_rtx_ASM_OPERANDS(VOIDmode, ggc_strdup("jmp %l1 ; .long %c0 ; .skip 6-(%l2-%l1),0xcc"), empty_string, 0, argvec, constraintvec, labelvec, INSN_LOCATION(insn));
++#else
++#error unsupported target
++#endif
++ MEM_VOLATILE_P(mark) = 1;
++
++ computed_hash = rap_find_retloc_mark(insn);
++
++ // gcc can insert calls to memcpy/memmove/etc in RTL
++ if (!computed_hash)
++ computed_hash = rap_get_direct_call_retloc_mark(insn);
++
++ // due to optimizations, the return location mark(s) could have ended up in preceding blocks
++ if (!computed_hash) {
++ edge e;
++ edge_iterator ei;
++ tree h;
++
++ FOR_EACH_EDGE(e, ei, BLOCK_FOR_INSN(insn)->preds) {
++ gcc_assert(single_succ_p(e->src));
++ h = rap_find_retloc_mark(BB_END(e->src));
++ gcc_assert(h);
++
++ if (computed_hash)
++ gcc_assert(tree_to_shwi(h) == tree_to_shwi(computed_hash));
++ else
++ computed_hash = h;
++ }
++ }
++
++ gcc_assert(computed_hash);
++ ASM_OPERANDS_INPUT(mark, 0) = expand_expr(computed_hash, NULL_RTX, VOIDmode, EXPAND_INITIALIZER);
++
++ ASM_OPERANDS_INPUT_CONSTRAINT_EXP(mark, 0) = gen_rtx_ASM_INPUT_loc(DImode, ggc_strdup("i"), UNKNOWN_LOCATION);
++
++ label1 = gen_label_rtx();
++ label2 = gen_label_rtx();
++ ASM_OPERANDS_LABEL(mark, 0) = label1;
++ ASM_OPERANDS_LABEL(mark, 1) = label2;
++
++ emit_insn_before(mark, insn);
++
++ emit_label_before(label1, insn);
++ LABEL_NUSES(label1)++;
++ do {
++ insn = NEXT_INSN(insn);
++ } while (GET_CODE(insn) == NOTE && NOTE_KIND(insn) == NOTE_INSN_CALL_ARG_LOCATION);
++ emit_label_before(label2, insn);
++ LABEL_NUSES(label2)++;
++ }
++
++ return 0;
++}
++
++#define PASS_NAME rap_mark_retloc
++#define NO_GATE
++#define TODO_FLAGS_FINISH TODO_dump_func | TODO_verify_rtl_sharing
++#include "gcc-generate-rtl-pass.h"
diff --git a/scripts/gcc-plugins/rap_plugin/sip.c b/scripts/gcc-plugins/rap_plugin/sip.c
new file mode 100644
index 0000000..65bc1cd
@@ -175725,7 +180340,7 @@ index 0000000..65bc1cd
+ U64TO8_LE(out, b);
+}
diff --git a/scripts/gcc-plugins/sancov_plugin.c b/scripts/gcc-plugins/sancov_plugin.c
-index aedd611..f39cee3 100644
+index 7ea0b3f..111e99d 100644
--- a/scripts/gcc-plugins/sancov_plugin.c
+++ b/scripts/gcc-plugins/sancov_plugin.c
@@ -1,5 +1,5 @@
@@ -175735,15 +180350,6 @@ index aedd611..f39cee3 100644
* Licensed under the GPL v2, or (at your option) v3
*
* Homepage:
-@@ -21,7 +21,7 @@
-
- #include "gcc-common.h"
-
--int plugin_is_GPL_compatible;
-+__visible int plugin_is_GPL_compatible;
-
- tree sancov_fndecl;
-
@@ -62,6 +62,7 @@ static unsigned int sancov_execute(void)
#include "gcc-generate-gimple-pass.h"
@@ -175758,15 +180364,14 @@ index aedd611..f39cee3 100644
}
+#endif
--int plugin_init(struct plugin_name_args *plugin_info, struct plugin_gcc_version *version)
-+__visible int plugin_init(struct plugin_name_args *plugin_info, struct plugin_gcc_version *version)
+ __visible int plugin_init(struct plugin_name_args *plugin_info, struct plugin_gcc_version *version)
{
int i;
- struct register_pass_info sancov_plugin_pass_info;
const char * const plugin_name = plugin_info->base_name;
const int argc = plugin_info->argc;
const struct plugin_argument * const argv = plugin_info->argv;
-@@ -107,14 +108,11 @@ int plugin_init(struct plugin_name_args *plugin_info, struct plugin_gcc_version
+@@ -107,17 +108,14 @@ __visible int plugin_init(struct plugin_name_args *plugin_info, struct plugin_gc
};
/* BBs can be split afterwards?? */
@@ -175782,8 +180387,12 @@ index aedd611..f39cee3 100644
- sancov_plugin_pass_info.pos_op = PASS_POS_INSERT_BEFORE;
if (!plugin_default_version_check(version, &gcc_version)) {
- error(G_("incompatible gcc/plugin versions"));
-@@ -126,7 +124,7 @@ int plugin_init(struct plugin_name_args *plugin_info, struct plugin_gcc_version
+- error(G_("incompatible gcc/plugin versions"));
++ error_gcc_version(version);
+ return 1;
+ }
+
+@@ -126,7 +124,7 @@ __visible int plugin_init(struct plugin_name_args *plugin_info, struct plugin_gc
enable = false;
continue;
}
@@ -175792,7 +180401,7 @@ index aedd611..f39cee3 100644
}
register_callback(plugin_name, PLUGIN_INFO, NULL, &sancov_plugin_info);
-@@ -137,7 +135,7 @@ int plugin_init(struct plugin_name_args *plugin_info, struct plugin_gcc_version
+@@ -137,7 +135,7 @@ __visible int plugin_init(struct plugin_name_args *plugin_info, struct plugin_gc
#if BUILDING_GCC_VERSION < 6000
register_callback(plugin_name, PLUGIN_START_UNIT, &sancov_start_unit, NULL);
register_callback(plugin_name, PLUGIN_REGISTER_GGC_ROOTS, NULL, (void *)&gt_ggc_r_gt_sancov);
@@ -188420,10 +193029,10 @@ index 0000000..74e91b2
+enable_so_zpios_read_fndecl_64734 zpios_read fndecl 3 64734 NULL
diff --git a/scripts/gcc-plugins/size_overflow_plugin/e_fields.data b/scripts/gcc-plugins/size_overflow_plugin/e_fields.data
new file mode 100644
-index 0000000..6b5367db
+index 0000000..1181e93
--- /dev/null
+++ b/scripts/gcc-plugins/size_overflow_plugin/e_fields.data
-@@ -0,0 +1,16261 @@
+@@ -0,0 +1,16321 @@
+recv_ctrl_pipe_us_data_0_fields recv_ctrl_pipe us_data 0 0 NULL
+__earlyonly_bootmem_alloc_fndecl_3_fields __earlyonly_bootmem_alloc fndecl 2-3-4 3 NULL
+size_ttm_mem_reg_8_fields size ttm_mem_reg 0 8 NULL
@@ -188436,20 +193045,19 @@ index 0000000..6b5367db
+max_cache_pages_snd_emu10k1_24_fields max_cache_pages snd_emu10k1 0 24 &dma_buf_sz_sxgbe_priv_data_24_fields
+T9_reportid_max_mxt_data_25_fields T9_reportid_max mxt_data 0 25 NULL
+max_frags_vxge_hw_fifo_config_26_fields max_frags vxge_hw_fifo_config 0 26 NULL
-+ocfs2_xattr_get_clusters_fndecl_34_fields ocfs2_xattr_get_clusters fndecl 0 34 NULL nohasharray
-+ath10k_core_create_fndecl_34_fields ath10k_core_create fndecl 1 34 &ocfs2_xattr_get_clusters_fndecl_34_fields
++ocfs2_xattr_get_clusters_fndecl_34_fields ocfs2_xattr_get_clusters fndecl 0 34 NULL
+total_drm_buf_35_fields total drm_buf 0 35 NULL
+sis5595_device_add_fndecl_39_fields sis5595_device_add fndecl 1 39 NULL
+nr_rings_blkfront_info_42_fields nr_rings blkfront_info 0 42 NULL
+mc_vram_size_amdgpu_mc_45_fields mc_vram_size amdgpu_mc 0 45 NULL
-+pattern_len_tcf_em_text_57_fields pattern_len tcf_em_text 0 57 NULL nohasharray
-+p54_init_common_fndecl_57_fields p54_init_common fndecl 1 57 &pattern_len_tcf_em_text_57_fields
++pattern_len_tcf_em_text_57_fields pattern_len tcf_em_text 0 57 NULL
+rx_desc_count_i40evf_adapter_62_fields rx_desc_count i40evf_adapter 0 62 NULL
+len_nf_ct_ext_63_fields len nf_ct_ext 0 63 NULL
+sl811_hc_init_fndecl_66_fields sl811_hc_init fndecl 2-3 66 NULL
+cipso_v4_delopt_fndecl_67_fields cipso_v4_delopt fndecl 0 67 NULL
++npages_mlx5_pages_req_70_fields npages mlx5_pages_req 0 70 NULL
+mtt_seg_size_mthca_limits_72_fields mtt_seg_size mthca_limits 0 72 NULL
-+iov_iter_get_pages_alloc_fndecl_76_fields iov_iter_get_pages_alloc fndecl 0 76 NULL
++iov_iter_get_pages_alloc_fndecl_76_fields iov_iter_get_pages_alloc fndecl 3 76 NULL
+iwch_reject_cr_fndecl_78_fields iwch_reject_cr fndecl 3 78 NULL
+data_size_data_queue_85_fields data_size data_queue 0 85 NULL
+ceph_dir_llseek_fndecl_99_fields ceph_dir_llseek fndecl 2 99 NULL
@@ -188457,14 +193065,12 @@ index 0000000..6b5367db
+ncp_do_request_fndecl_102_fields ncp_do_request fndecl 2-4-0 102 NULL
+fi_blkno_ocfs2_find_inode_args_104_fields fi_blkno ocfs2_find_inode_args 0 104 NULL
+phase_snd_usb_endpoint_106_fields phase snd_usb_endpoint 0 106 NULL
-+num_leds_hidled_config_108_fields num_leds hidled_config 0 108 NULL
+add_new_gdb_meta_bg_fndecl_116_fields add_new_gdb_meta_bg fndecl 3 116 NULL
+buffer_min_vardecl_floppy_c_117_fields buffer_min vardecl_floppy.c 0 117 NULL
+needed_tailroom_net_device_118_fields needed_tailroom net_device 0 118 NULL
+send_remove_xattr_fndecl_122_fields send_remove_xattr fndecl 4 122 NULL
+in_ep_rtl_usb_128_fields in_ep rtl_usb 0 128 NULL nohasharray
+number_i40e_aqc_list_capabilities_element_resp_128_fields number i40e_aqc_list_capabilities_element_resp 0 128 &in_ep_rtl_usb_128_fields
-+in_num_nct6683_data_132_fields in_num nct6683_data 0 132 NULL
+xfs_dir_removename_fndecl_133_fields xfs_dir_removename fndecl 7 133 NULL
+nr_pages_dma_mapping_136_fields nr_pages dma_mapping 0 136 NULL
+data_offset_netup_dma_139_fields data_offset netup_dma 0 139 NULL nohasharray
@@ -188472,14 +193078,20 @@ index 0000000..6b5367db
+n_mac_vlan_filters_vfpf_set_q_filters_tlv_142_fields n_mac_vlan_filters vfpf_set_q_filters_tlv 0 142 NULL
+leaf_move_items_fndecl_145_fields leaf_move_items fndecl 4 145 NULL
+ir_context_support_fw_ohci_147_fields ir_context_support fw_ohci 0 147 NULL
-+uvc_endpoint_max_bpi_fndecl_155_fields uvc_endpoint_max_bpi fndecl 0 155 NULL
++xfs_reflink_unshare_fndecl_155_fields xfs_reflink_unshare fndecl 2-3 155 NULL nohasharray
++uvc_endpoint_max_bpi_fndecl_155_fields uvc_endpoint_max_bpi fndecl 0 155 &xfs_reflink_unshare_fndecl_155_fields nohasharray
++rereg_umr_fndecl_155_fields rereg_umr fndecl 5 155 &uvc_endpoint_max_bpi_fndecl_155_fields
+ext4_ext_remove_space_fndecl_170_fields ext4_ext_remove_space fndecl 3-2 170 NULL
+vfs_write_fndecl_176_fields vfs_write fndecl 3-0 176 NULL
+length_sl811h_ep_186_fields length sl811h_ep 0 186 NULL
-+sddr55_write_data_fndecl_188_fields sddr55_write_data fndecl 3 188 NULL
++sddr55_write_data_fndecl_188_fields sddr55_write_data fndecl 4-3 188 NULL
++mptctl_do_fw_download_fndecl_190_fields mptctl_do_fw_download fndecl 3 190 NULL
++brcmf_iovar_data_set_fndecl_192_fields brcmf_iovar_data_set fndecl 4 192 NULL
++give_pages_fndecl_198_fields give_pages fndecl 3 198 NULL
+sys_pwrite64_fndecl_206_fields sys_pwrite64 fndecl 3 206 NULL
+xfs_zero_file_space_fndecl_211_fields xfs_zero_file_space fndecl 2-3 211 NULL nohasharray
+bn_shadow_fndecl_211_fields bn_shadow fndecl 2 211 &xfs_zero_file_space_fndecl_211_fields
++cxgb_alloc_mem_fndecl_212_fields cxgb_alloc_mem fndecl 1 212 NULL
+copies_r10conf_216_fields copies r10conf 0 216 NULL
+drm_universal_plane_init_fndecl_219_fields drm_universal_plane_init fndecl 6 219 NULL
+encap_hlen_ip6_tnl_encap_ops_223_fields encap_hlen ip6_tnl_encap_ops 0 223 NULL
@@ -188488,13 +193100,16 @@ index 0000000..6b5367db
+ocfs2_mark_extent_refcounted_fndecl_240_fields ocfs2_mark_extent_refcounted fndecl 6-4 240 NULL
+musb_readw_vardecl_241_fields musb_readw vardecl 0 241 NULL
+sysv_inode_by_name_fndecl_242_fields sysv_inode_by_name fndecl 0 242 NULL
++__f2fs_issue_discard_async_fndecl_243_fields __f2fs_issue_discard_async fndecl 3-2 243 NULL
+offset_nvkm_vma_248_fields offset nvkm_vma 0 248 NULL
+amdgpu_vm_directory_size_fndecl_249_fields amdgpu_vm_directory_size fndecl 0 249 NULL
+ixgbevf_change_mtu_fndecl_251_fields ixgbevf_change_mtu fndecl 2 251 NULL nohasharray
+pclk_limit_ov6650_251_fields pclk_limit ov6650 0 251 &ixgbevf_change_mtu_fndecl_251_fields
+minimum_acpi_address32_attribute_256_fields minimum acpi_address32_attribute 0 256 NULL
++venus_symlink_fndecl_257_fields venus_symlink fndecl 6-4 257 NULL
+l2cap_parse_conf_req_fndecl_260_fields l2cap_parse_conf_req fndecl 0 260 NULL
+max_can_queue_fc_fcp_internal_270_fields max_can_queue fc_fcp_internal 0 270 NULL
++ceph_aes_crypt_fndecl_271_fields ceph_aes_crypt fndecl 5 271 NULL
+dbg_leb_change_fndecl_272_fields dbg_leb_change fndecl 4 272 NULL
+tcp_current_mss_fndecl_275_fields tcp_current_mss fndecl 0 275 NULL
+vmbus_sendpacket_multipagebuffer_fndecl_276_fields vmbus_sendpacket_multipagebuffer fndecl 4 276 NULL
@@ -188506,19 +193121,20 @@ index 0000000..6b5367db
+tx_ring_size_mvneta_port_307_fields tx_ring_size mvneta_port 0 307 NULL
+omapdss_update_prop_fndecl_309_fields omapdss_update_prop fndecl 3 309 NULL
+cfpkt_create_pfx_fndecl_313_fields cfpkt_create_pfx fndecl 2 313 NULL
-+MaxBufferSize_negotiate_rsp_314_fields MaxBufferSize negotiate_rsp 0 314 NULL
++MaxBufferSize_negotiate_rsp_314_fields MaxBufferSize negotiate_rsp 0 314 NULL nohasharray
++ip_num_acl_subject_label_314_fields ip_num acl_subject_label 0 314 &MaxBufferSize_negotiate_rsp_314_fields
+name_len_jffs2_raw_xattr_318_fields name_len jffs2_raw_xattr 0 318 NULL
+bo_handle_count_drm_vc4_submit_cl_326_fields bo_handle_count drm_vc4_submit_cl 0 326 NULL
+start_fb_cmap_user_333_fields start fb_cmap_user 0 333 NULL
+block_size_se_dev_attrib_334_fields block_size se_dev_attrib 0 334 NULL
+xfs_file_iomap_begin_fndecl_341_fields xfs_file_iomap_begin fndecl 2-3 341 NULL
++force_baud_ftdi_private_342_fields force_baud ftdi_private 0 342 NULL
+udl_submit_urb_fndecl_353_fields udl_submit_urb fndecl 3 353 NULL
+tx_idx_bchannel_355_fields tx_idx bchannel 0 355 NULL
+link_buf_size_dvb_ca_slot_365_fields link_buf_size dvb_ca_slot 0 365 NULL
+length_st21nfca_atr_req_366_fields length st21nfca_atr_req 0 366 NULL
+setup_ctxt_fndecl_374_fields setup_ctxt fndecl 2 374 NULL
+cxgbit_ppod_init_idata_fndecl_384_fields cxgbit_ppod_init_idata fndecl 4 384 NULL
-+duplex_tg3_link_config_395_fields duplex tg3_link_config 0 395 NULL
+keyspan_pda_write_fndecl_398_fields keyspan_pda_write fndecl 4 398 NULL
+cyberjack_write_fndecl_399_fields cyberjack_write fndecl 4 399 NULL
+fcp_resid_bnx2fc_cmd_412_fields fcp_resid bnx2fc_cmd 0 412 NULL
@@ -188531,31 +193147,29 @@ index 0000000..6b5367db
+rx_buf_sz_rhine_private_435_fields rx_buf_sz rhine_private 0 435 NULL
+id_alias_prop_438_fields id alias_prop 0 438 NULL
+get_conn_info_fndecl_440_fields get_conn_info fndecl 4 440 NULL
-+intr_count_ql_adapter_442_fields intr_count ql_adapter 0 442 NULL nohasharray
-+pdata_size_mfd_cell_442_fields pdata_size mfd_cell 0 442 &intr_count_ql_adapter_442_fields
++intr_count_ql_adapter_442_fields intr_count ql_adapter 0 442 NULL
+challenge_len_ieee802_11_elems_444_fields challenge_len ieee802_11_elems 0 444 NULL nohasharray
+btrfs_map_bio_fndecl_444_fields btrfs_map_bio fndecl 0 444 &challenge_len_ieee802_11_elems_444_fields
-+cem_build_path_fndecl_451_fields cem_build_path fndecl 0 451 NULL
+pkts_acked_yeah_452_fields pkts_acked yeah 0 452 NULL
-+root_entry_lctp_fndecl_459_fields root_entry_lctp fndecl 0 459 NULL
++__kfifo_max_r_fndecl_459_fields __kfifo_max_r fndecl 0-1-2 459 NULL nohasharray
++root_entry_lctp_fndecl_459_fields root_entry_lctp fndecl 0 459 &__kfifo_max_r_fndecl_459_fields
+e_shnum_elf64_hdr_461_fields e_shnum elf64_hdr 0 461 NULL
+udf_load_logicalvol_fndecl_471_fields udf_load_logicalvol fndecl 2 471 NULL
+mlx5_ib_rereg_user_mr_fndecl_473_fields mlx5_ib_rereg_user_mr fndecl 5-4 473 NULL
+make_checksum_v2_fndecl_475_fields make_checksum_v2 fndecl 3-5 475 NULL
-+map_write_fndecl_480_fields map_write fndecl 3 480 NULL
+diva_alloc_dma_map_fndecl_485_fields diva_alloc_dma_map fndecl 2 485 NULL
+ext_start_xfs_extent_486_fields ext_start xfs_extent 0 486 NULL
+consumed_sg_mapping_iter_487_fields consumed sg_mapping_iter 0 487 NULL
+nr_local_rds_rdma_args_488_fields nr_local rds_rdma_args 0 488 NULL
+sp2_read_i2c_fndecl_489_fields sp2_read_i2c fndecl 4 489 NULL
++MoxaPortSetBaud_fndecl_490_fields MoxaPortSetBaud fndecl 0-2 490 NULL
+edid_store_fndecl_491_fields edid_store fndecl 6 491 NULL
-+max_seg_sz_mmc_test_area_502_fields max_seg_sz mmc_test_area 0 502 NULL
-+tracing_map_create_fndecl_506_fields tracing_map_create fndecl 2-1 506 NULL nohasharray
-+wa_xfer_status_to_errno_fndecl_506_fields wa_xfer_status_to_errno fndecl 0 506 &tracing_map_create_fndecl_506_fields
++max_seg_sz_mmc_test_area_502_fields max_seg_sz mmc_test_area 0 502 NULL nohasharray
++ll_mtu_ipw_hardware_502_fields ll_mtu ipw_hardware 0 502 &max_seg_sz_mmc_test_area_502_fields
++wa_xfer_status_to_errno_fndecl_506_fields wa_xfer_status_to_errno fndecl 0 506 NULL
+hlen_ip6_tnl_510_fields hlen ip6_tnl 0 510 NULL
+gfn_guest_walkerEPT_517_fields gfn guest_walkerEPT 0 517 NULL
+dig_rate_snd_bt87x_board_522_fields dig_rate snd_bt87x_board 0 522 NULL
-+read_mv88e6xxx_ops_525_fields read mv88e6xxx_ops 0 525 NULL
+v9fs_xattr_set_acl_fndecl_526_fields v9fs_xattr_set_acl fndecl 6 526 NULL
+videobuf_read_zerocopy_fndecl_546_fields videobuf_read_zerocopy fndecl 3 546 NULL
+iscsi_add_hdr_fndecl_551_fields iscsi_add_hdr fndecl 2 551 NULL
@@ -188564,44 +193178,39 @@ index 0000000..6b5367db
+cmd_amdkfd_ioctl_desc_560_fields cmd amdkfd_ioctl_desc 0 560 NULL
+disk_secno_bplus_leaf_node_574_fields disk_secno bplus_leaf_node 0 574 NULL
+ext4_swap_extents_fndecl_577_fields ext4_swap_extents fndecl 6-0-5-4 577 NULL
-+log_mc_entry_sz_mlx4_init_hca_param_595_fields log_mc_entry_sz mlx4_init_hca_param 0 595 NULL
+max_send_sge_ib_qp_cap_601_fields max_send_sge ib_qp_cap 0 601 NULL
+nr_groups_pcpu_alloc_info_602_fields nr_groups pcpu_alloc_info 0 602 NULL
-+xfs_bmapi_read_fndecl_603_fields xfs_bmapi_read fndecl 0-3-2 603 NULL nohasharray
++xfs_bmapi_read_fndecl_603_fields xfs_bmapi_read fndecl 2-3-0 603 NULL nohasharray
+lcm_not_zero_fndecl_603_fields lcm_not_zero fndecl 0-1-2 603 &xfs_bmapi_read_fndecl_603_fields nohasharray
-+sock_xmit_fndecl_603_fields sock_xmit fndecl 4 603 &lcm_not_zero_fndecl_603_fields
++sock_xmit_fndecl_603_fields sock_xmit fndecl 4 603 &lcm_not_zero_fndecl_603_fields nohasharray
++mxser_set_baud_fndecl_603_fields mxser_set_baud fndecl 2 603 &sock_xmit_fndecl_603_fields
+ceph_oloc_encoding_size_fndecl_604_fields ceph_oloc_encoding_size fndecl 0 604 NULL nohasharray
+FormattedSize_erase_unit_header_t_604_fields FormattedSize erase_unit_header_t 0 604 &ceph_oloc_encoding_size_fndecl_604_fields
-+pvr2_v4l2_ioctl_fndecl_605_fields pvr2_v4l2_ioctl fndecl 2 605 NULL
+num_queue_pairs_i40e_virtchnl_vf_resource_613_fields num_queue_pairs i40e_virtchnl_vf_resource 0 613 NULL
+virt_end_dm_thin_new_mapping_616_fields virt_end dm_thin_new_mapping 0 616 NULL
+maxsize_tm6000_endpoint_618_fields maxsize tm6000_endpoint 0 618 NULL
-+priv_size_mlxsw_driver_636_fields priv_size mlxsw_driver 0 636 NULL nohasharray
-+hfi1_make_grh_fndecl_636_fields hfi1_make_grh fndecl 0 636 &priv_size_mlxsw_driver_636_fields
++priv_size_mlxsw_driver_636_fields priv_size mlxsw_driver 0 636 NULL
+ieee80211_rx_mgmt_beacon_fndecl_637_fields ieee80211_rx_mgmt_beacon fndecl 3 637 NULL
+msg_len_dvb_diseqc_master_cmd_643_fields msg_len dvb_diseqc_master_cmd 0 643 NULL nohasharray
+d1_vring_rx_mac_643_fields d1 vring_rx_mac 0 643 &msg_len_dvb_diseqc_master_cmd_643_fields
-+size_si_sm_handlers_648_fields size si_sm_handlers 0 648 NULL
-+ddp_ppod_write_idata_fndecl_649_fields ddp_ppod_write_idata fndecl 5 649 NULL nohasharray
-+set_vmcore_list_offsets_fndecl_649_fields set_vmcore_list_offsets fndecl 2-1 649 &ddp_ppod_write_idata_fndecl_649_fields
++ddp_ppod_write_idata_fndecl_649_fields ddp_ppod_write_idata fndecl 5 649 NULL
+fat_sync_bhs_fndecl_655_fields fat_sync_bhs fndecl 0 655 NULL
++header_length_irda_usb_cb_657_fields header_length irda_usb_cb 0 657 NULL
+rtsx_usb_read_ppbuf_fndecl_659_fields rtsx_usb_read_ppbuf fndecl 3 659 NULL
+start_async_extent_663_fields start async_extent 0 663 NULL
+tx_max_size_cxgbi_device_664_fields tx_max_size cxgbi_device 0 664 NULL
+cw_cursor_fndecl_666_fields cw_cursor fndecl 4 666 NULL
+__push_leaf_left_fndecl_667_fields __push_leaf_left fndecl 8 667 NULL
+dccph_seq2_dccp_hdr_669_fields dccph_seq2 dccp_hdr 0 669 NULL
-+num_leds_led_pwm_platform_data_670_fields num_leds led_pwm_platform_data 0 670 NULL
-+lbs_highsnr_write_fndecl_671_fields lbs_highsnr_write fndecl 3 671 NULL
+skb_size_nx_host_rds_ring_672_fields skb_size nx_host_rds_ring 0 672 NULL
+bond_change_mtu_fndecl_674_fields bond_change_mtu fndecl 2 674 NULL
+mac_len_sk_buff_676_fields mac_len sk_buff 0 676 NULL
+mbox_offset_sst_res_info_678_fields mbox_offset sst_res_info 0 678 NULL
+page_order_sg_scatter_hold_679_fields page_order sg_scatter_hold 0 679 NULL
-+stats_count_smsdvb_debugfs_683_fields stats_count smsdvb_debugfs 0 683 NULL
+get_eeprom_len_ethtool_ops_686_fields get_eeprom_len ethtool_ops 0 686 NULL
+follow_page_pte_fndecl_687_fields follow_page_pte fndecl 2 687 NULL
+mchip_get_frame_fndecl_692_fields mchip_get_frame fndecl 0 692 NULL
++rxq_size_cxgb4_uld_info_717_fields rxq_size cxgb4_uld_info 0 717 NULL
+sig_size_s3fwrn5_fw_info_719_fields sig_size s3fwrn5_fw_info 0 719 NULL
+qib_ib_rcv_fndecl_734_fields qib_ib_rcv fndecl 4 734 NULL
+tsi148_alloc_resource_fndecl_736_fields tsi148_alloc_resource fndecl 2 736 NULL
@@ -188621,10 +193230,10 @@ index 0000000..6b5367db
+extent_direct_795_fields extent direct 0 795 NULL
+height_qxl_head_799_fields height qxl_head 0 799 NULL
+pci_iomap_range_fndecl_809_fields pci_iomap_range fndecl 4-3 809 NULL
-+sdp1length__SpiCfgData_813_fields sdp1length _SpiCfgData 0 813 NULL
+alloc_nvdimm_map_fndecl_828_fields alloc_nvdimm_map fndecl 3-2 828 NULL
+mdata_ofsh_cyttsp4_sysinfo_data_844_fields mdata_ofsh cyttsp4_sysinfo_data 0 844 NULL
-+s_inopb_ufs_sb_private_info_849_fields s_inopb ufs_sb_private_info 0 849 NULL
++s_inopb_ufs_sb_private_info_849_fields s_inopb ufs_sb_private_info 0 849 NULL nohasharray
++map_sg_attrs_ib_dma_mapping_ops_849_fields map_sg_attrs ib_dma_mapping_ops 0 849 &s_inopb_ufs_sb_private_info_849_fields
+rsi_copy_to_card_fndecl_858_fields rsi_copy_to_card fndecl 3 858 NULL
+unix_seqpacket_recvmsg_fndecl_861_fields unix_seqpacket_recvmsg fndecl 3 861 NULL
+qi_dqperchunk_xfs_quotainfo_863_fields qi_dqperchunk xfs_quotainfo 0 863 NULL
@@ -188634,7 +193243,8 @@ index 0000000..6b5367db
+forw_xfs_attr3_icleaf_hdr_895_fields forw xfs_attr3_icleaf_hdr 0 895 &orinoco_change_mtu_fndecl_895_fields
+p_srate_f_uac2_opts_896_fields p_srate f_uac2_opts 0 896 NULL
+vm_normal_page_fndecl_897_fields vm_normal_page fndecl 2 897 NULL
-+rdma_copy_tail_fndecl_898_fields rdma_copy_tail fndecl 3 898 NULL nohasharray
++i915_vma_insert_fndecl_898_fields i915_vma_insert fndecl 2-4 898 NULL nohasharray
++rdma_copy_tail_fndecl_898_fields rdma_copy_tail fndecl 3 898 &i915_vma_insert_fndecl_898_fields nohasharray
+cpu_mask_len_res_opts_898_fields cpu_mask_len res_opts 0 898 &rdma_copy_tail_fndecl_898_fields
+user_bs_factor_ide_tape_obj_906_fields user_bs_factor ide_tape_obj 0 906 NULL
+good_bytes_nfs_pgio_header_909_fields good_bytes nfs_pgio_header 0 909 NULL
@@ -188642,9 +193252,9 @@ index 0000000..6b5367db
+set_args_iw_priv_args_916_fields set_args iw_priv_args 0 916 NULL
+post_fifo_size__adpt_hba_919_fields post_fifo_size _adpt_hba 0 919 NULL
+nci_nfcc_loopback_fndecl_923_fields nci_nfcc_loopback fndecl 3 923 NULL
-+status_word_gem_rxd_925_fields status_word gem_rxd 0 925 NULL nohasharray
-+video_hsize_solo_dev_925_fields video_hsize solo_dev 0 925 &status_word_gem_rxd_925_fields nohasharray
-+amt_complete_orangefs_io_response_925_fields amt_complete orangefs_io_response 0 925 &video_hsize_solo_dev_925_fields
++video_hsize_solo_dev_925_fields video_hsize solo_dev 0 925 NULL nohasharray
++status_word_gem_rxd_925_fields status_word gem_rxd 0 925 &video_hsize_solo_dev_925_fields nohasharray
++amt_complete_orangefs_io_response_925_fields amt_complete orangefs_io_response 0 925 &status_word_gem_rxd_925_fields
+isofs_bread_fndecl_929_fields isofs_bread fndecl 2 929 NULL
+xpnet_dev_change_mtu_fndecl_932_fields xpnet_dev_change_mtu fndecl 2 932 NULL
+nfrags_pkt_gl_937_fields nfrags pkt_gl 0 937 NULL
@@ -188655,11 +193265,10 @@ index 0000000..6b5367db
+length_ndis_80211_bssid_ex_955_fields length ndis_80211_bssid_ex 0 955 NULL
+xfs_bmap_rtalloc_fndecl_958_fields xfs_bmap_rtalloc fndecl 0 958 NULL
+size_wl3501_md_ind_961_fields size wl3501_md_ind 0 961 NULL
-+calculate_sizes_fndecl_962_fields calculate_sizes fndecl 2 962 NULL
-+compat_sys_preadv64_fndecl_968_fields compat_sys_preadv64 fndecl 3 968 NULL
++avc_tuner_tuneqpsk_fndecl_978_fields avc_tuner_tuneqpsk fndecl 0 978 NULL
+tx_ring_size_tx_queue_982_fields tx_ring_size tx_queue 0 982 NULL
-+s_blocks_count_hi_ext4_super_block_983_fields s_blocks_count_hi ext4_super_block 0 983 NULL nohasharray
-+em28xx_alloc_urbs_fndecl_983_fields em28xx_alloc_urbs fndecl 5-6 983 &s_blocks_count_hi_ext4_super_block_983_fields
++em28xx_alloc_urbs_fndecl_983_fields em28xx_alloc_urbs fndecl 5-6 983 NULL nohasharray
++s_blocks_count_hi_ext4_super_block_983_fields s_blocks_count_hi ext4_super_block 0 983 &em28xx_alloc_urbs_fndecl_983_fields
+nd_integrity_init_fndecl_985_fields nd_integrity_init fndecl 2 985 NULL nohasharray
+sm501_create_subio_fndecl_985_fields sm501_create_subio fndecl 4-3 985 &nd_integrity_init_fndecl_985_fields
+esp6_get_mtu_fndecl_987_fields esp6_get_mtu fndecl 0-2 987 NULL
@@ -188669,9 +193278,10 @@ index 0000000..6b5367db
+reserve_metadata_bytes_fndecl_1002_fields reserve_metadata_bytes fndecl 0 1002 NULL
+cpu_count_MPT3SAS_ADAPTER_1003_fields cpu_count MPT3SAS_ADAPTER 0 1003 NULL
+xfs_dir3_leafn_read_fndecl_1004_fields xfs_dir3_leafn_read fndecl 3 1004 NULL
-+__dm_get_module_param_fndecl_1008_fields __dm_get_module_param fndecl 2-3-0 1008 NULL
++__dm_get_module_param_fndecl_1008_fields __dm_get_module_param fndecl 0 1008 NULL
+assoc_req_len_wmi_connect_event_1014_fields assoc_req_len wmi_connect_event 0 1014 NULL
+i2c_smbus_check_pec_fndecl_1018_fields i2c_smbus_check_pec fndecl 0 1018 NULL
++offset_kmem_cache_1021_fields offset kmem_cache 0 1021 NULL
+nvram_size_chip_desc_1022_fields nvram_size chip_desc 0 1022 NULL
+len_wcn36xx_hal_msg_header_1023_fields len wcn36xx_hal_msg_header 0 1023 NULL
+dlm_len_mt76_fw_header_1030_fields dlm_len mt76_fw_header 0 1030 NULL
@@ -188681,6 +193291,7 @@ index 0000000..6b5367db
+ssb_admatch_size_fndecl_1041_fields ssb_admatch_size fndecl 0-1 1041 &page_shift_mlx5_buf_1041_fields
+iv_len_txentry_desc_1042_fields iv_len txentry_desc 0 1042 NULL nohasharray
+address_length_acpi_resource_fixed_io_1042_fields address_length acpi_resource_fixed_io 0 1042 &iv_len_txentry_desc_1042_fields
++vnic_dev_get_res_count_fndecl_1044_fields vnic_dev_get_res_count fndecl 0 1044 NULL
+read_data_done_iscsi_datain_req_1049_fields read_data_done iscsi_datain_req 0 1049 NULL nohasharray
+registers_gen_74x164_chip_1049_fields registers gen_74x164_chip 0 1049 &read_data_done_iscsi_datain_req_1049_fields
+amdgpu_cgs_alloc_gpu_mem_fndecl_1052_fields amdgpu_cgs_alloc_gpu_mem fndecl 3 1052 NULL nohasharray
@@ -188691,8 +193302,7 @@ index 0000000..6b5367db
+cw_clear_fndecl_1066_fields cw_clear fndecl 5-3-4-6 1066 NULL
+len_left_brcmf_sdio_hdrinfo_1067_fields len_left brcmf_sdio_hdrinfo 0 1067 NULL nohasharray
+tcp_scalable_cong_avoid_fndecl_1067_fields tcp_scalable_cong_avoid fndecl 3 1067 &len_left_brcmf_sdio_hdrinfo_1067_fields
-+i_dno_hpfs_inode_info_1070_fields i_dno hpfs_inode_info 0 1070 NULL nohasharray
-+line__mgslpc_info_1070_fields line _mgslpc_info 0 1070 &i_dno_hpfs_inode_info_1070_fields
++i_dno_hpfs_inode_info_1070_fields i_dno hpfs_inode_info 0 1070 NULL
+num_min_snd_ratden_1071_fields num_min snd_ratden 0 1071 NULL
+private_data_len_iw_cm_conn_param_1076_fields private_data_len iw_cm_conn_param 0 1076 NULL
+rq_wqe_count_mlx5_ib_create_qp_1079_fields rq_wqe_count mlx5_ib_create_qp 0 1079 NULL
@@ -188701,22 +193311,23 @@ index 0000000..6b5367db
+libipw_classify_fndecl_1089_fields libipw_classify fndecl 0 1089 NULL
+data_start_msdos_sb_info_1100_fields data_start msdos_sb_info 0 1100 NULL
+rx_ring_count_e1000_adapter_1107_fields rx_ring_count e1000_adapter 0 1107 NULL
++cmd_sg_entries_vardecl_ib_srp_c_1108_fields cmd_sg_entries vardecl_ib_srp.c 0 1108 NULL
+ResponseDataLength__MPI2_SMP_PASSTHROUGH_REPLY_1113_fields ResponseDataLength _MPI2_SMP_PASSTHROUGH_REPLY 0 1113 NULL
+io_free_memtype_fndecl_1116_fields io_free_memtype fndecl 1-2 1116 NULL
-+slave_cnt_bonding_1119_fields slave_cnt bonding 0 1119 NULL
++gb_operation_get_payload_size_max_fndecl_1118_fields gb_operation_get_payload_size_max fndecl 0 1118 NULL
+rxkad_decrypt_ticket_fndecl_1120_fields rxkad_decrypt_ticket fndecl 3 1120 NULL
+ctl_in_pipe_brcmf_usbdev_info_1124_fields ctl_in_pipe brcmf_usbdev_info 0 1124 NULL
+forw_xfs_dir3_icleaf_hdr_1136_fields forw xfs_dir3_icleaf_hdr 0 1136 NULL
+log_num_mlx4_resource_1137_fields log_num mlx4_resource 0 1137 NULL
+alloc_rss_size_i40e_pf_1138_fields alloc_rss_size i40e_pf 0 1138 NULL
-+p54spi_spi_read_fndecl_1149_fields p54spi_spi_read fndecl 4 1149 NULL
++usblp_new_writeurb_fndecl_1149_fields usblp_new_writeurb fndecl 2 1149 NULL nohasharray
++p54spi_spi_read_fndecl_1149_fields p54spi_spi_read fndecl 4 1149 &usblp_new_writeurb_fndecl_1149_fields
+offset_mirror_1150_fields offset mirror 0 1150 NULL
+ntfs_rl_vcn_to_lcn_fndecl_1155_fields ntfs_rl_vcn_to_lcn fndecl 0-2 1155 NULL
+cbuf_data_fndecl_1158_fields cbuf_data fndecl 0 1158 NULL
+sysctl_tcp_max_reordering_vardecl_1161_fields sysctl_tcp_max_reordering vardecl 0 1161 NULL
+rtsx_usb_write_ppbuf_fndecl_1165_fields rtsx_usb_write_ppbuf fndecl 3 1165 NULL
-+nfs4_acl_bytes_fndecl_1168_fields nfs4_acl_bytes fndecl 1 1168 NULL nohasharray
-+sg_len_mmc_data_1168_fields sg_len mmc_data 0 1168 &nfs4_acl_bytes_fndecl_1168_fields
++sg_len_mmc_data_1168_fields sg_len mmc_data 0 1168 NULL
+__set_xattr_fndecl_1176_fields __set_xattr fndecl 5-3 1176 NULL nohasharray
+indata_len_ceph_osd_req_op_1176_fields indata_len ceph_osd_req_op 0 1176 &__set_xattr_fndecl_1176_fields
+br_vlan_add_fndecl_1177_fields br_vlan_add fndecl 2 1177 NULL
@@ -188726,6 +193337,7 @@ index 0000000..6b5367db
+nfs4_get_security_label_fndecl_1201_fields nfs4_get_security_label fndecl 3 1201 NULL nohasharray
+rx_sdu_size_tsap_cb_1201_fields rx_sdu_size tsap_cb 0 1201 &nfs4_get_security_label_fndecl_1201_fields
+pvscsi_ring_pages_vardecl_vmw_pvscsi_c_1202_fields pvscsi_ring_pages vardecl_vmw_pvscsi.c 0 1202 NULL
++scsi_log_dump_sense_fndecl_1206_fields scsi_log_dump_sense fndecl 5 1206 NULL
+max_sge_mvumi_hba_1213_fields max_sge mvumi_hba 0 1213 NULL
+max_transfer_bytes_storvsc_device_1221_fields max_transfer_bytes storvsc_device 0 1221 NULL
+max_pkt_size_au0828_dev_1222_fields max_pkt_size au0828_dev 0 1222 NULL nohasharray
@@ -188734,36 +193346,34 @@ index 0000000..6b5367db
+pfkey_sendmsg_fndecl_1225_fields pfkey_sendmsg fndecl 3 1225 NULL
+i_sblock_bfs_inode_info_1228_fields i_sblock bfs_inode_info 0 1228 NULL
+cached_dev_cache_miss_fndecl_1232_fields cached_dev_cache_miss fndecl 4 1232 NULL
++depth_sbitmap_1234_fields depth sbitmap 0 1234 NULL
+prev_chunk_sectors_r5conf_1237_fields prev_chunk_sectors r5conf 0 1237 NULL
+elf_headers_sz_kimage_arch_1238_fields elf_headers_sz kimage_arch 0 1238 NULL
+buffer_dma_zd_usb_interrupt_1239_fields buffer_dma zd_usb_interrupt 0 1239 NULL
+iwl_mvm_sta_tx_agg_start_fndecl_1243_fields iwl_mvm_sta_tx_agg_start fndecl 4 1243 NULL
+dlc_leaf_msg_log_message_1244_fields dlc leaf_msg_log_message 0 1244 NULL
-+max_vports_lpfc_hba_1253_fields max_vports lpfc_hba 0 1253 NULL
+find_highest_prio_tid_fndecl_1254_fields find_highest_prio_tid fndecl 0 1254 NULL
-+num_slaves_mlx4_dev_1258_fields num_slaves mlx4_dev 0 1258 NULL
+alloc32_mon_bin_get32_1260_fields alloc32 mon_bin_get32 0 1260 NULL
+nfs_readdir_xdr_filler_fndecl_1265_fields nfs_readdir_xdr_filler fndecl 0 1265 NULL
+nlmsg_len_nlmsghdr_1272_fields nlmsg_len nlmsghdr 0 1272 NULL
+bictcp_cong_avoid_fndecl_1278_fields bictcp_cong_avoid fndecl 3 1278 NULL
-+__lbtf_cmd_async_fndecl_1280_fields __lbtf_cmd_async fndecl 4 1280 NULL
++__lbtf_cmd_async_fndecl_1280_fields __lbtf_cmd_async fndecl 4 1280 NULL nohasharray
++sst_fill_and_send_cmd_fndecl_1280_fields sst_fill_and_send_cmd fndecl 7 1280 &__lbtf_cmd_async_fndecl_1280_fields
+ocfs2_read_extent_block_fndecl_1285_fields ocfs2_read_extent_block fndecl 0-2 1285 NULL
+fw_epd_frame_1293_fields fw epd_frame 0 1293 NULL
+ieee80211_stop_rx_ba_session_offl_fndecl_1297_fields ieee80211_stop_rx_ba_session_offl fndecl 3 1297 NULL
+prv_size_override_lpss_device_desc_1301_fields prv_size_override lpss_device_desc 0 1301 NULL
+wMaxControlMessage_usb_cdc_mbim_desc_1308_fields wMaxControlMessage usb_cdc_mbim_desc 0 1308 NULL
+vmw_kms_stdu_surface_dirty_fndecl_1310_fields vmw_kms_stdu_surface_dirty fndecl 8 1310 NULL
-+txhdr_len_mlxsw_driver_1313_fields txhdr_len mlxsw_driver 0 1313 NULL nohasharray
-+number_snd_pcm_substream_1313_fields number snd_pcm_substream 0 1313 &txhdr_len_mlxsw_driver_1313_fields nohasharray
-+curr_resync_mddev_1313_fields curr_resync mddev 0 1313 &number_snd_pcm_substream_1313_fields
-+vd_cbr_au_count_gru_vma_data_1314_fields vd_cbr_au_count gru_vma_data 0 1314 NULL
++number_snd_pcm_substream_1313_fields number snd_pcm_substream 0 1313 NULL nohasharray
++txhdr_len_mlxsw_driver_1313_fields txhdr_len mlxsw_driver 0 1313 &number_snd_pcm_substream_1313_fields nohasharray
++curr_resync_mddev_1313_fields curr_resync mddev 0 1313 &txhdr_len_mlxsw_driver_1313_fields
+win_size_async_state_1326_fields win_size async_state 0 1326 NULL
+ufs_alloc_lastblock_fndecl_1339_fields ufs_alloc_lastblock fndecl 2 1339 NULL
+fat_parse_short_fndecl_1348_fields fat_parse_short fndecl 0 1348 NULL
++ipr_number_of_msix_vardecl_ipr_c_1349_fields ipr_number_of_msix vardecl_ipr.c 0 1349 NULL
+current_limit_memblock_1350_fields current_limit memblock 0 1350 NULL
-+ccp_set_dm_area_fndecl_1351_fields ccp_set_dm_area fndecl 4 1351 NULL
+found_index_locate_info_1355_fields found_index locate_info 0 1355 NULL
-+smaps_pte_entry_fndecl_1359_fields smaps_pte_entry fndecl 2 1359 NULL
+MemReadHSCX_fndecl_1364_fields MemReadHSCX fndecl 0 1364 NULL
+len_btrfs_ordered_sum_1365_fields len btrfs_ordered_sum 0 1365 NULL nohasharray
+ssram_size_telemetry_unit_config_1365_fields ssram_size telemetry_unit_config 0 1365 &len_btrfs_ordered_sum_1365_fields
@@ -188771,11 +193381,14 @@ index 0000000..6b5367db
+len_orinoco_scan_data_1370_fields len orinoco_scan_data 0 1370 NULL nohasharray
+dlen_hci_sco_hdr_1370_fields dlen hci_sco_hdr 0 1370 &len_orinoco_scan_data_1370_fields
+v_total_aty128_crtc_1375_fields v_total aty128_crtc 0 1375 NULL
++reiserfs_get_block_fndecl_1379_fields reiserfs_get_block fndecl 2 1379 NULL
+rx_tpa_start_cmp_hdr_info_rx_tpa_start_cmp_ext_1380_fields rx_tpa_start_cmp_hdr_info rx_tpa_start_cmp_ext 0 1380 NULL
++uartclk_uart_port_1381_fields uartclk uart_port 0 1381 NULL
+w_drm_vmw_rect_1383_fields w drm_vmw_rect 0 1383 NULL
+ieee80211_probereq_get_fndecl_1384_fields ieee80211_probereq_get fndecl 5-4 1384 NULL
+vlen_nfsd3_writeargs_1388_fields vlen nfsd3_writeargs 0 1388 NULL
+smsc911x_rx_get_rxstatus_fndecl_1389_fields smsc911x_rx_get_rxstatus fndecl 0 1389 NULL
++clk_calc_new_rates_fndecl_1391_fields clk_calc_new_rates fndecl 2 1391 NULL
+stepped_offset_skb_seq_state_1395_fields stepped_offset skb_seq_state 0 1395 NULL
+len_wsm_hdr_1398_fields len wsm_hdr 0 1398 NULL
+dev_size_amd_flash_info_1399_fields dev_size amd_flash_info 0 1399 NULL
@@ -188783,8 +193396,7 @@ index 0000000..6b5367db
+num_hsi_port_1406_fields num hsi_port 0 1406 NULL
+ec_hdr_alsize_ubi_device_1411_fields ec_hdr_alsize ubi_device 0 1411 NULL
+ubifs_leb_write_fndecl_1412_fields ubifs_leb_write fndecl 5-4 1412 NULL
-+copy_pages_to_kvecs_fndecl_1417_fields copy_pages_to_kvecs fndecl 0 1417 NULL
-+fill_gap_fndecl_1418_fields fill_gap fndecl 4-3 1418 NULL
++fill_gap_fndecl_1418_fields fill_gap fndecl 3-4 1418 NULL
+wpa_ie_len_orinoco_private_1421_fields wpa_ie_len orinoco_private 0 1421 NULL nohasharray
+reg_umr_fndecl_1421_fields reg_umr fndecl 3 1421 &wpa_ie_len_orinoco_private_1421_fields
+bch_dump_read_fndecl_1422_fields bch_dump_read fndecl 3 1422 NULL
@@ -188809,29 +193421,28 @@ index 0000000..6b5367db
+n_channels_ieee80211_supported_band_1494_fields n_channels ieee80211_supported_band 0 1494 NULL
+blocks_count_ext4_new_group_data_1496_fields blocks_count ext4_new_group_data 0 1496 NULL
+ext4_mpage_readpages_fndecl_1499_fields ext4_mpage_readpages fndecl 4 1499 NULL
-+cx18_copy_buf_to_user_fndecl_1500_fields cx18_copy_buf_to_user fndecl 4 1500 NULL nohasharray
-+num_step_snd_ratden_1500_fields num_step snd_ratden 0 1500 &cx18_copy_buf_to_user_fndecl_1500_fields
++num_step_snd_ratden_1500_fields num_step snd_ratden 0 1500 NULL
+bo_info_size_drm_amdgpu_bo_list_in_1510_fields bo_info_size drm_amdgpu_bo_list_in 0 1510 NULL
+dma_data_req_size_ivtv_1512_fields dma_data_req_size ivtv 0 1512 NULL
+initiate_new_session_fndecl_1514_fields initiate_new_session fndecl 6 1514 NULL nohasharray
+__break_lease_fndecl_1514_fields __break_lease fndecl 0 1514 &initiate_new_session_fndecl_1514_fields
+sk_sndbuf_sock_1516_fields sk_sndbuf sock 0 1516 NULL
+shmem_file_setup_fndecl_1517_fields shmem_file_setup fndecl 2 1517 NULL
++btrfs_set_extent_delalloc_fndecl_1526_fields btrfs_set_extent_delalloc fndecl 3-2 1526 NULL
+buf_size_mlx4_ib_qp_1529_fields buf_size mlx4_ib_qp 0 1529 NULL
+max_rqe_ocrdma_dev_attr_1534_fields max_rqe ocrdma_dev_attr 0 1534 NULL
+grcan_allocate_dma_buffers_fndecl_1535_fields grcan_allocate_dma_buffers fndecl 2-3 1535 NULL
-+readlink_inode_operations_1540_fields readlink inode_operations 0 1540 NULL
+__es_remove_extent_fndecl_1544_fields __es_remove_extent fndecl 0-3-2 1544 NULL
++__aa_kvmalloc_fndecl_1547_fields __aa_kvmalloc fndecl 1 1547 NULL
+max_gs_mlx4_srq_1550_fields max_gs mlx4_srq 0 1550 NULL
+prio_read_fndecl_1564_fields prio_read fndecl 2 1564 NULL
-+i2cdev_write_fndecl_1565_fields i2cdev_write fndecl 3 1565 NULL
+alignment_acpi_resource_io_1569_fields alignment acpi_resource_io 0 1569 NULL
-+mc13xxx_get_num_regulators_dt_fndecl_1571_fields mc13xxx_get_num_regulators_dt fndecl 0 1571 NULL
++kmem_zalloc_large_fndecl_1572_fields kmem_zalloc_large fndecl 1 1572 NULL
+size_drm_qxl_alloc_1578_fields size drm_qxl_alloc 0 1578 NULL
+ndesc_srp_map_state_1582_fields ndesc srp_map_state 0 1582 NULL
++num_of_specs_ib_uverbs_flow_attr_1588_fields num_of_specs ib_uverbs_flow_attr 0 1588 NULL
+sector_clone_info_1593_fields sector clone_info 0 1593 NULL
-+size_icp_qat_uof_batch_init_1600_fields size icp_qat_uof_batch_init 0 1600 NULL nohasharray
-+length_cpc_can_msg_1600_fields length cpc_can_msg 0 1600 &size_icp_qat_uof_batch_init_1600_fields
++length_cpc_can_msg_1600_fields length cpc_can_msg 0 1600 NULL
+block_size_c2port_ops_1610_fields block_size c2port_ops 0 1610 NULL
+pppoe_sendmsg_fndecl_1612_fields pppoe_sendmsg fndecl 3 1612 NULL
+rawv6_send_hdrinc_fndecl_1625_fields rawv6_send_hdrinc fndecl 3 1625 NULL nohasharray
@@ -188845,17 +193456,17 @@ index 0000000..6b5367db
+onenand_fill_auto_oob_fndecl_1663_fields onenand_fill_auto_oob fndecl 4 1663 NULL
+rds_tcp_sendmsg_fndecl_1668_fields rds_tcp_sendmsg fndecl 3 1668 NULL
+num_clips_drm_vmw_present_arg_1671_fields num_clips drm_vmw_present_arg 0 1671 NULL
-+hidraw_send_report_fndecl_1674_fields hidraw_send_report fndecl 3 1674 NULL
++vzalloc_node_fndecl_1683_fields vzalloc_node fndecl 1 1683 NULL
+rsrc_len_usb_hcd_1686_fields rsrc_len usb_hcd 0 1686 NULL
+file_size_squashfs_ldir_inode_1687_fields file_size squashfs_ldir_inode 0 1687 NULL
+remain_bytes_asc_q_done_info_1696_fields remain_bytes asc_q_done_info 0 1696 NULL
+size_grcan_dma_buffer_1702_fields size grcan_dma_buffer 0 1702 NULL
+divasa_remap_pci_bar_fndecl_1710_fields divasa_remap_pci_bar fndecl 4-3 1710 NULL nohasharray
-+get_cap_size_qlcnic_hardware_ops_1710_fields get_cap_size qlcnic_hardware_ops 0 1710 &divasa_remap_pci_bar_fndecl_1710_fields
++get_cap_size_qlcnic_hardware_ops_1710_fields get_cap_size qlcnic_hardware_ops 0 1710 &divasa_remap_pci_bar_fndecl_1710_fields nohasharray
++setup_msi_irqs_x86_msi_ops_1710_fields setup_msi_irqs x86_msi_ops 0 1710 &get_cap_size_qlcnic_hardware_ops_1710_fields
+ext4_getblk_fndecl_1720_fields ext4_getblk fndecl 3 1720 NULL
+osd_req_op_notify_init_fndecl_1721_fields osd_req_op_notify_init fndecl 7 1721 NULL
+yres_drm_cmdline_mode_1722_fields yres drm_cmdline_mode 0 1722 NULL
-+qtd_fill_fndecl_1725_fields qtd_fill fndecl 4-5-2-0-3 1725 NULL
+submit_io_fndecl_1726_fields submit_io fndecl 3 1726 NULL
+ts_num_ids_nfsd4_test_stateid_1732_fields ts_num_ids nfsd4_test_stateid 0 1732 NULL nohasharray
+xfs_rmap_get_rec_fndecl_1732_fields xfs_rmap_get_rec fndecl 0 1732 &ts_num_ids_nfsd4_test_stateid_1732_fields
@@ -188869,7 +193480,8 @@ index 0000000..6b5367db
+ad_sd_write_reg_fndecl_1743_fields ad_sd_write_reg fndecl 3 1743 &nr_packets_saa7134_ts_1743_fields
+sectorsize_btrfs_root_1747_fields sectorsize btrfs_root 0 1747 NULL
+si4713_send_command_fndecl_1750_fields si4713_send_command fndecl 6 1750 NULL
-+hugetlbfs_fallocate_fndecl_1752_fields hugetlbfs_fallocate fndecl 3 1752 NULL
++copy_module_from_user_fndecl_1751_fields copy_module_from_user fndecl 2 1751 NULL
++hugetlbfs_fallocate_fndecl_1752_fields hugetlbfs_fallocate fndecl 3-4 1752 NULL
+ext4_remove_blocks_fndecl_1754_fields ext4_remove_blocks fndecl 5 1754 NULL nohasharray
+st_nci_hci_dm_field_generator_fndecl_1754_fields st_nci_hci_dm_field_generator fndecl 3 1754 &ext4_remove_blocks_fndecl_1754_fields
+len_pda_custom_wrapper_1757_fields len pda_custom_wrapper 0 1757 NULL
@@ -188881,7 +193493,8 @@ index 0000000..6b5367db
+key_length_mwifiex_wep_key_1784_fields key_length mwifiex_wep_key 0 1784 NULL
+__of_translate_address_fndecl_1786_fields __of_translate_address fndecl 0 1786 NULL
+pitch_radeonfb_info_1792_fields pitch radeonfb_info 0 1792 NULL
-+vub300_usb_bulk_msg_fndecl_1799_fields vub300_usb_bulk_msg fndecl 4-2 1799 NULL nohasharray
++reiserfs_add_entry_fndecl_1797_fields reiserfs_add_entry fndecl 4 1797 NULL
++vub300_usb_bulk_msg_fndecl_1799_fields vub300_usb_bulk_msg fndecl 2-4 1799 NULL nohasharray
+security_inode_killpriv_fndecl_1799_fields security_inode_killpriv fndecl 0 1799 &vub300_usb_bulk_msg_fndecl_1799_fields
+wl1273_fm_write_data_fndecl_1803_fields wl1273_fm_write_data fndecl 3 1803 NULL
+num_mtt_segs_mthca_limits_1806_fields num_mtt_segs mthca_limits 0 1806 NULL
@@ -188893,8 +193506,6 @@ index 0000000..6b5367db
+bufsize_saa7134_dmasound_1821_fields bufsize saa7134_dmasound 0 1821 NULL
+lleft_ext4_allocation_request_1823_fields lleft ext4_allocation_request 0 1823 NULL
+__add_prelim_ref_fndecl_1828_fields __add_prelim_ref fndecl 6-5 1828 NULL
-+dev_number_vardecl_rio_mport_cdev_c_1836_fields dev_number vardecl_rio_mport_cdev.c 0 1836 NULL
-+cpu_port_b53_device_1841_fields cpu_port b53_device 0 1841 NULL
+walk_system_ram_range_fndecl_1842_fields walk_system_ram_range fndecl 2-1 1842 NULL
+check_free_sectors_fndecl_1843_fields check_free_sectors fndecl 2 1843 NULL
+ncpus_xen_mc_physcpuinfo_1849_fields ncpus xen_mc_physcpuinfo 0 1849 NULL
@@ -188902,34 +193513,36 @@ index 0000000..6b5367db
+maximum_cx88_ctrl_1852_fields maximum cx88_ctrl 0 1852 NULL
+dm_write_async_fndecl_1859_fields dm_write_async fndecl 3 1859 NULL
+rxq_req_tg3_1873_fields rxq_req tg3 0 1873 NULL
-+buf_size_cx18_stream_1878_fields buf_size cx18_stream 0 1878 NULL nohasharray
-+sisusb_bulkin_msg_fndecl_1878_fields sisusb_bulkin_msg fndecl 4-2 1878 &buf_size_cx18_stream_1878_fields
-+__clear_user_fndecl_1885_fields __clear_user fndecl 0 1885 NULL nohasharray
-+menu_count_uvc_control_mapping_1885_fields menu_count uvc_control_mapping 0 1885 &__clear_user_fndecl_1885_fields
++sisusb_bulkin_msg_fndecl_1878_fields sisusb_bulkin_msg fndecl 2-4 1878 NULL nohasharray
++buf_size_cx18_stream_1878_fields buf_size cx18_stream 0 1878 &sisusb_bulkin_msg_fndecl_1878_fields
++num_vmdq_vsis_i40e_pf_1882_fields num_vmdq_vsis i40e_pf 0 1882 NULL
++__clear_user_fndecl_1885_fields __clear_user fndecl 0 1885 NULL
+vmxnet3_get_hdr_len_fndecl_1891_fields vmxnet3_get_hdr_len fndecl 0 1891 NULL
+cq_ecount_lpfc_sli4_hba_1907_fields cq_ecount lpfc_sli4_hba 0 1907 NULL
+ca91cx42_master_set_fndecl_1913_fields ca91cx42_master_set fndecl 4 1913 NULL
+fix_unclean_leb_fndecl_1927_fields fix_unclean_leb fndecl 3 1927 NULL
+convert_ip_to_linear_fndecl_1933_fields convert_ip_to_linear fndecl 0 1933 NULL
++length_usnic_uiom_reg_1937_fields length usnic_uiom_reg 0 1937 NULL
++usblp_write_fndecl_1945_fields usblp_write fndecl 3 1945 NULL
+sv_resid_sym_ccb_1947_fields sv_resid sym_ccb 0 1947 NULL
+ieee80211_get_mesh_hdrlen_fndecl_1948_fields ieee80211_get_mesh_hdrlen fndecl 0 1948 NULL
+num_adcs_cs42xx8_driver_data_1953_fields num_adcs cs42xx8_driver_data 0 1953 NULL
-+dax_major_vardecl_dax_c_1960_fields dax_major vardecl_dax.c 0 1960 NULL
+shmem_getpage_fndecl_1965_fields shmem_getpage fndecl 2 1965 NULL
+xlog_get_bp_fndecl_1966_fields xlog_get_bp fndecl 2 1966 NULL
++tty_buffer_request_room_fndecl_1967_fields tty_buffer_request_room fndecl 0 1967 NULL
+partitionLength_partitionDesc_1977_fields partitionLength partitionDesc 0 1977 NULL nohasharray
+to_dio_submit_1977_fields to dio_submit 0 1977 &partitionLength_partitionDesc_1977_fields nohasharray
+of_irq_get_byname_fndecl_1977_fields of_irq_get_byname fndecl 0 1977 &to_dio_submit_1977_fields
-+tipc_sendmcast_fndecl_1981_fields tipc_sendmcast fndecl 4 1981 NULL nohasharray
-+ll_md_brw_size_ll_sb_info_1981_fields ll_md_brw_size ll_sb_info 0 1981 &tipc_sendmcast_fndecl_1981_fields
++tipc_sendmcast_fndecl_1981_fields tipc_sendmcast fndecl 4 1981 NULL
+i5k_find_amb_registers_fndecl_1986_fields i5k_find_amb_registers fndecl 2 1986 NULL
+acpi_dev_gpio_irq_get_fndecl_1997_fields acpi_dev_gpio_irq_get fndecl 0 1997 NULL
+total_memory_vbe_ib_1999_fields total_memory vbe_ib 0 1999 NULL
+idx_len_tg3_rx_buffer_desc_2006_fields idx_len tg3_rx_buffer_desc 0 2006 NULL
+ipv6_skip_exthdr_fndecl_2016_fields ipv6_skip_exthdr fndecl 0-2 2016 NULL
+madvise_vma_fndecl_2019_fields madvise_vma fndecl 4-3 2019 NULL
-+complicated_alloc_urb_fndecl_2022_fields complicated_alloc_urb fndecl 2 2022 NULL nohasharray
-+doc_probe_fndecl_2022_fields doc_probe fndecl 1 2022 &complicated_alloc_urb_fndecl_2022_fields
++complicated_alloc_urb_fndecl_2022_fields complicated_alloc_urb fndecl 2-3 2022 NULL nohasharray
++ec_i2c_count_message_fndecl_2022_fields ec_i2c_count_message fndecl 0-2 2022 &complicated_alloc_urb_fndecl_2022_fields nohasharray
++doc_probe_fndecl_2022_fields doc_probe fndecl 1 2022 &ec_i2c_count_message_fndecl_2022_fields
+vga_vram_base_vardecl_vgacon_c_2024_fields vga_vram_base vardecl_vgacon.c 0 2024 NULL
+max_write_fuse_conn_2028_fields max_write fuse_conn 0 2028 NULL
+process_adv_report_fndecl_2030_fields process_adv_report fndecl 9 2030 NULL
@@ -188944,8 +193557,8 @@ index 0000000..6b5367db
+getgain_fndecl_2059_fields getgain fndecl 0 2059 &wdt87xx_i2c_xfer_fndecl_2059_fields
+receive_n_bytes_fndecl_2063_fields receive_n_bytes fndecl 3 2063 NULL
+val_bytes_regmap_format_2064_fields val_bytes regmap_format 0 2064 NULL
++usbat_flash_read_data_fndecl_2065_fields usbat_flash_read_data fndecl 4 2065 NULL
+total_copied_iscsi_segment_2071_fields total_copied iscsi_segment 0 2071 NULL
-+mei_io_cb_alloc_buf_fndecl_2088_fields mei_io_cb_alloc_buf fndecl 0 2088 NULL
+__kernel_write_fndecl_2090_fields __kernel_write fndecl 3-0 2090 NULL
+rxd_size_bdx_priv_2091_fields rxd_size bdx_priv 0 2091 NULL
+sensor_xres_em28xx_v4l2_2095_fields sensor_xres em28xx_v4l2 0 2095 NULL
@@ -188958,22 +193571,22 @@ index 0000000..6b5367db
+hdrs_min_io_size_ubi_device_2134_fields hdrs_min_io_size ubi_device 0 2134 NULL
+offset_resp_ies_ndis_80211_assoc_info_2135_fields offset_resp_ies ndis_80211_assoc_info 0 2135 NULL
+count_skge_ring_2140_fields count skge_ring 0 2140 NULL
-+capacity_p9_fcall_2144_fields capacity p9_fcall 0 2144 NULL nohasharray
-+xfs_do_writepage_fndecl_2144_fields xfs_do_writepage fndecl 0 2144 &capacity_p9_fcall_2144_fields
++xfs_do_writepage_fndecl_2144_fields xfs_do_writepage fndecl 0 2144 NULL nohasharray
++capacity_p9_fcall_2144_fields capacity p9_fcall 0 2144 &xfs_do_writepage_fndecl_2144_fields
+multi_ios_hda_gen_spec_2147_fields multi_ios hda_gen_spec 0 2147 NULL
+ioc_len_obd_ioctl_hdr_2148_fields ioc_len obd_ioctl_hdr 0 2148 NULL
+mpc_new_length_vardecl_mpparse_c_2163_fields mpc_new_length vardecl_mpparse.c 0 2163 NULL nohasharray
+block_size__drive_info_struct_2163_fields block_size _drive_info_struct 0 2163 &mpc_new_length_vardecl_mpparse_c_2163_fields
-+log_early_fndecl_2170_fields log_early fndecl 3 2170 NULL
+read_size_perf_event_2173_fields read_size perf_event 0 2173 NULL
+ext4_setup_next_flex_gd_fndecl_2174_fields ext4_setup_next_flex_gd fndecl 4 2174 NULL
++intel_modeset_setup_plane_state_fndecl_2179_fields intel_modeset_setup_plane_state fndecl 5-6 2179 NULL
+rate_max_audioformat_2186_fields rate_max audioformat 0 2186 NULL nohasharray
+max_txsz_ulp_iscsi_info_2186_fields max_txsz ulp_iscsi_info 0 2186 &rate_max_audioformat_2186_fields
++bus_bm_cmd_send_i2400m_2189_fields bus_bm_cmd_send i2400m 0 2189 NULL
+ast_ttm_tt_create_fndecl_2190_fields ast_ttm_tt_create fndecl 2 2190 NULL
-+__alloc_reserved_percpu_fndecl_2196_fields __alloc_reserved_percpu fndecl 1 2196 NULL
-+max_header_size_irlan_provider_cb_2198_fields max_header_size irlan_provider_cb 0 2198 NULL nohasharray
-+num_vlans_b53_device_2198_fields num_vlans b53_device 0 2198 &max_header_size_irlan_provider_cb_2198_fields
-+ib_map_mr_sg_fndecl_2213_fields ib_map_mr_sg fndecl 0-5 2213 NULL
++max_header_size_irlan_provider_cb_2198_fields max_header_size irlan_provider_cb 0 2198 NULL
++s_blocks_per_group_ext4_sb_info_2201_fields s_blocks_per_group ext4_sb_info 0 2201 NULL
++ib_map_mr_sg_fndecl_2213_fields ib_map_mr_sg fndecl 5-0 2213 NULL
+valuelen_xfs_attr_inactive_list_2216_fields valuelen xfs_attr_inactive_list 0 2216 NULL
+DH_length_eg_ctrl_info_2234_fields DH_length eg_ctrl_info 0 2234 NULL
+nfs_proc_readdir_fndecl_2240_fields nfs_proc_readdir fndecl 5 2240 NULL
@@ -188981,11 +193594,12 @@ index 0000000..6b5367db
+s_mb_group_prealloc_ext4_sb_info_2246_fields s_mb_group_prealloc ext4_sb_info 0 2246 NULL
+d_reclen_ufs_dir_entry_2247_fields d_reclen ufs_dir_entry 0 2247 NULL
+xfs_rmap_finish_one_fndecl_2257_fields xfs_rmap_finish_one fndecl 6 2257 NULL
-+ncommunities_intel_pinctrl_soc_data_2270_fields ncommunities intel_pinctrl_soc_data 0 2270 NULL
++compat_rw_copy_check_uvector_fndecl_2274_fields compat_rw_copy_check_uvector fndecl 0 2274 NULL
+transport_init_se_cmd_fndecl_2277_fields transport_init_se_cmd fndecl 4 2277 NULL
+num_touchids_mxt_data_2284_fields num_touchids mxt_data 0 2284 NULL
+write_phy_fndecl_2290_fields write_phy fndecl 3 2290 NULL
+scrub_extent_fndecl_2293_fields scrub_extent fndecl 3-2-9-4 2293 NULL
++proc_sched_autogroup_set_nice_fndecl_2296_fields proc_sched_autogroup_set_nice fndecl 2 2296 NULL
+bulk_out_endpointAddr_usb_lcd_2303_fields bulk_out_endpointAddr usb_lcd 0 2303 NULL
+sensf_res_len_nfc_target_2304_fields sensf_res_len nfc_target 0 2304 NULL
+af9033_wr_regs_fndecl_2314_fields af9033_wr_regs fndecl 4 2314 NULL
@@ -188998,18 +193612,20 @@ index 0000000..6b5367db
+memsz_kexec_segment_2340_fields memsz kexec_segment 0 2340 NULL
+sg_copy_to_buffer_fndecl_2349_fields sg_copy_to_buffer fndecl 4 2349 NULL
+sk_gso_max_size_sock_2353_fields sk_gso_max_size sock 0 2353 NULL
-+internal_set_rx_headroom_fndecl_2359_fields internal_set_rx_headroom fndecl 2 2359 NULL
++cipso_v4_map_cat_enum_hton_fndecl_2359_fields cipso_v4_map_cat_enum_hton fndecl 0 2359 NULL nohasharray
++internal_set_rx_headroom_fndecl_2359_fields internal_set_rx_headroom fndecl 2 2359 &cipso_v4_map_cat_enum_hton_fndecl_2359_fields
+ReplUnitNum_nftl_uci0_2366_fields ReplUnitNum nftl_uci0 0 2366 NULL
-+packet_size_st5481_in_2373_fields packet_size st5481_in 0 2373 NULL nohasharray
-+count_brcmf_pno_scanresults_le_2373_fields count brcmf_pno_scanresults_le 0 2373 &packet_size_st5481_in_2373_fields
++count_brcmf_pno_scanresults_le_2373_fields count brcmf_pno_scanresults_le 0 2373 NULL nohasharray
++packet_size_st5481_in_2373_fields packet_size st5481_in 0 2373 &count_brcmf_pno_scanresults_le_2373_fields
+d_reclen_vxfs_direct_2382_fields d_reclen vxfs_direct 0 2382 NULL
+cache_block_lba_msb_data_2385_fields cache_block_lba msb_data 0 2385 NULL
+tx_buffer_size_peak_usb_adapter_2386_fields tx_buffer_size peak_usb_adapter 0 2386 NULL
-+pcifront_rescan_root_fndecl_2389_fields pcifront_rescan_root fndecl 2-3 2389 NULL
++pcifront_rescan_root_fndecl_2389_fields pcifront_rescan_root fndecl 3 2389 NULL
+check_and_mark_free_block_fndecl_2391_fields check_and_mark_free_block fndecl 2 2391 NULL
+xfs_bmap_add_free_fndecl_2392_fields xfs_bmap_add_free fndecl 3-4 2392 NULL
+asd_get_cmdctx_size_fndecl_2408_fields asd_get_cmdctx_size fndecl 0 2408 NULL
+pci_cardbus_resource_alignment_fndecl_2410_fields pci_cardbus_resource_alignment fndecl 0 2410 NULL
++__jfs_getxattr_fndecl_2412_fields __jfs_getxattr fndecl 0 2412 NULL
+cfi_intelext_write_buffers_fndecl_2417_fields cfi_intelext_write_buffers fndecl 3 2417 NULL
+get_count_dm_space_map_2419_fields get_count dm_space_map 0 2419 NULL
+phys_addr_sfi_rtc_table_entry_2421_fields phys_addr sfi_rtc_table_entry 0 2421 NULL
@@ -189023,23 +193639,23 @@ index 0000000..6b5367db
+key_len_key_params_2447_fields key_len key_params 0 2447 NULL nohasharray
+hrqsize_nvme_rdma_cm_req_2447_fields hrqsize nvme_rdma_cm_req 0 2447 &key_len_key_params_2447_fields
+fb_base_bochs_device_2461_fields fb_base bochs_device 0 2461 NULL
-+tcp_tso_autosize_fndecl_2464_fields tcp_tso_autosize fndecl 0-2 2464 NULL
-+proc_maps_open_fndecl_2468_fields proc_maps_open fndecl 4 2468 NULL
+maxpacket_usb_ep_2473_fields maxpacket usb_ep 0 2473 NULL
-+gpio_devt_vardecl_gpiolib_c_2478_fields gpio_devt vardecl_gpiolib.c 0 2478 NULL
+ixgb_change_mtu_fndecl_2482_fields ixgb_change_mtu fndecl 2 2482 NULL
+num_vf_en_nicpf_2486_fields num_vf_en nicpf 0 2486 NULL
+tcp_sacktag_one_fndecl_2487_fields tcp_sacktag_one fndecl 7 2487 NULL
++ocfs2_xattr_get_nolock_fndecl_2493_fields ocfs2_xattr_get_nolock fndecl 0 2493 NULL
+in_ports_f_midi_opts_2502_fields in_ports f_midi_opts 0 2502 NULL
+vfs_copy_file_range_fndecl_2503_fields vfs_copy_file_range fndecl 0-5 2503 NULL
+hard_mtu_lan78xx_net_2507_fields hard_mtu lan78xx_net 0 2507 NULL
+size_arpt_replace_2509_fields size arpt_replace 0 2509 NULL
+unmap_alignment_scsi_disk_2514_fields unmap_alignment scsi_disk 0 2514 NULL
++rc_startblock_xfs_refcount_irec_2526_fields rc_startblock xfs_refcount_irec 0 2526 NULL
+usbpn_set_mtu_fndecl_2527_fields usbpn_set_mtu fndecl 2 2527 NULL
++vfio_unpin_pages_fndecl_2528_fields vfio_unpin_pages fndecl 0 2528 NULL
+__nf_nat_mangle_tcp_packet_fndecl_2531_fields __nf_nat_mangle_tcp_packet fndecl 6-8 2531 NULL
+should_remove_suid_fndecl_2532_fields should_remove_suid fndecl 0 2532 NULL
+l2down_create_fndecl_2536_fields l2down_create fndecl 4 2536 NULL
-+mthca_alloc_init_fndecl_2537_fields mthca_alloc_init fndecl 3 2537 NULL
++mthca_alloc_init_fndecl_2537_fields mthca_alloc_init fndecl 3-2 2537 NULL
+tcp_shifted_skb_fndecl_2543_fields tcp_shifted_skb fndecl 4 2543 NULL
+__wa_seg_submit_fndecl_2547_fields __wa_seg_submit fndecl 0 2547 NULL
+__kmem_cache_alias_fndecl_2551_fields __kmem_cache_alias fndecl 2 2551 NULL
@@ -189048,7 +193664,9 @@ index 0000000..6b5367db
+b_error_xfs_buf_2563_fields b_error xfs_buf 0 2563 NULL
+active_duplex_niu_link_config_2566_fields active_duplex niu_link_config 0 2566 NULL
+hdsp_external_sample_rate_fndecl_2568_fields hdsp_external_sample_rate fndecl 0 2568 NULL
-+extend_brk_fndecl_2574_fields extend_brk fndecl 2-1 2574 NULL
++bmp280_regmap_spi_read_fndecl_2573_fields bmp280_regmap_spi_read fndecl 3-5 2573 NULL
++extend_brk_fndecl_2574_fields extend_brk fndecl 2-1 2574 NULL nohasharray
++sec_size_nvm_dev_2574_fields sec_size nvm_dev 0 2574 &extend_brk_fndecl_2574_fields
+skb_checksum_trimmed_fndecl_2576_fields skb_checksum_trimmed fndecl 2 2576 NULL nohasharray
+aio_offset_iocb_2576_fields aio_offset iocb 0 2576 &skb_checksum_trimmed_fndecl_2576_fields
+ieee80211_reserve_tid_fndecl_2578_fields ieee80211_reserve_tid fndecl 2 2578 NULL
@@ -189057,43 +193675,49 @@ index 0000000..6b5367db
+page_cache_tree_insert_fndecl_2600_fields page_cache_tree_insert fndecl 0 2600 NULL
+maxfrsize_bfa_fcs_rport_s_2601_fields maxfrsize bfa_fcs_rport_s 0 2601 NULL
+ld_active_tgt_count_lov_desc_2613_fields ld_active_tgt_count lov_desc 0 2613 NULL
-+of_phandle_iterator_init_fndecl_2614_fields of_phandle_iterator_init fndecl 0 2614 NULL
+dst_maxburst_dma_slave_config_2619_fields dst_maxburst dma_slave_config 0 2619 NULL
++len_whc_std_2626_fields len whc_std 0 2626 NULL
+ptn3460_read_bytes_fndecl_2627_fields ptn3460_read_bytes fndecl 4 2627 NULL
-+snd_soc_params_to_frame_size_fndecl_2630_fields snd_soc_params_to_frame_size fndecl 0 2630 NULL
++snd_soc_params_to_frame_size_fndecl_2630_fields snd_soc_params_to_frame_size fndecl 0 2630 NULL nohasharray
++total_vm_mm_struct_2630_fields total_vm mm_struct 0 2630 &snd_soc_params_to_frame_size_fndecl_2630_fields
+radeon_vram_location_fndecl_2634_fields radeon_vram_location fndecl 3 2634 NULL
+regmap_spi_gather_write_fndecl_2639_fields regmap_spi_gather_write fndecl 3-5 2639 NULL
-+rx_bufshift_rtl_stats_2641_fields rx_bufshift rtl_stats 0 2641 NULL
++rx_bufshift_rtl_stats_2641_fields rx_bufshift rtl_stats 0 2641 NULL nohasharray
++max_mcast_mac_be_resources_2641_fields max_mcast_mac be_resources 0 2641 &rx_bufshift_rtl_stats_2641_fields
+sys_read_fndecl_2644_fields sys_read fndecl 3 2644 NULL
++hci_uart_set_speeds_fndecl_2646_fields hci_uart_set_speeds fndecl 2-3 2646 NULL
+bitmap_cond_end_sync_fndecl_2649_fields bitmap_cond_end_sync fndecl 2 2649 NULL
+max_low_pfn_mapped_vardecl_2650_fields max_low_pfn_mapped vardecl 0 2650 NULL
-+resync_max_mddev_2658_fields resync_max mddev 0 2658 NULL nohasharray
-+pktgen_alloc_skb_fndecl_2658_fields pktgen_alloc_skb fndecl 3 2658 &resync_max_mddev_2658_fields
++resync_max_mddev_2658_fields resync_max mddev 0 2658 NULL
+dlen_hci_acl_hdr_2672_fields dlen hci_acl_hdr 0 2672 NULL
+ee_block_ext4_extent_2673_fields ee_block ext4_extent 0 2673 NULL
-+bbt_erase_shift_bbm_info_2675_fields bbt_erase_shift bbm_info 0 2675 NULL
++scif_user_recv_fndecl_2675_fields scif_user_recv fndecl 3 2675 NULL nohasharray
++bbt_erase_shift_bbm_info_2675_fields bbt_erase_shift bbm_info 0 2675 &scif_user_recv_fndecl_2675_fields
+TmpDcm_zoran_jpg_settings_2679_fields TmpDcm zoran_jpg_settings 0 2679 NULL
+mad_len_ib_mad_recv_wc_2683_fields mad_len ib_mad_recv_wc 0 2683 NULL
+logo_lines_vardecl_fbcon_c_2685_fields logo_lines vardecl_fbcon.c 0 2685 NULL
+pkt_finish_packet_fndecl_2701_fields pkt_finish_packet fndecl 2 2701 NULL
+crash_shrink_memory_fndecl_2706_fields crash_shrink_memory fndecl 1 2706 NULL
-+src_len_ccp_sha_engine_2711_fields src_len ccp_sha_engine 0 2711 NULL
++zoran_write_fndecl_2711_fields zoran_write fndecl 3 2711 NULL nohasharray
++src_len_ccp_sha_engine_2711_fields src_len ccp_sha_engine 0 2711 &zoran_write_fndecl_2711_fields
+u132_hcd_bulk_output_sent_fndecl_2715_fields u132_hcd_bulk_output_sent fndecl 4 2715 NULL
+mt7601u_usb_alloc_buf_fndecl_2716_fields mt7601u_usb_alloc_buf fndecl 2 2716 NULL
+bytesused_v4l2_buffer_2717_fields bytesused v4l2_buffer 0 2717 NULL
++handle_received_packet_fndecl_2730_fields handle_received_packet fndecl 3 2730 NULL
+get_res_add_size_fndecl_2740_fields get_res_add_size fndecl 0 2740 NULL
-+iov_iter_get_pages_fndecl_2747_fields iov_iter_get_pages fndecl 0-4-3 2747 NULL
++iov_iter_get_pages_fndecl_2747_fields iov_iter_get_pages fndecl 3-4-0 2747 NULL
+of_flat_dt_translate_address_fndecl_2750_fields of_flat_dt_translate_address fndecl 0 2750 NULL
+mem_vardecl_applicom_c_2753_fields mem vardecl_applicom.c 0 2753 NULL
+rfcomm_send_test_fndecl_2760_fields rfcomm_send_test fndecl 4 2760 NULL
-+next_swap_swap_map_page_2761_fields next_swap swap_map_page 0 2761 NULL
+size_rx_module_layout_2762_fields size_rx module_layout 0 2762 NULL
+ecryptfs_write_fndecl_2763_fields ecryptfs_write fndecl 4-3 2763 NULL
+u_ssize_user32_2770_fields u_ssize user32 0 2770 NULL
-+ieee80211_alloc_hw_nm_fndecl_2774_fields ieee80211_alloc_hw_nm fndecl 1 2774 NULL
++peer_gen_tipc_mon_state_2774_fields peer_gen tipc_mon_state 0 2774 NULL
+batadv_check_unicast_packet_fndecl_2775_fields batadv_check_unicast_packet fndecl 3 2775 NULL nohasharray
+fw_mon_size_iwl_trans_pcie_2775_fields fw_mon_size iwl_trans_pcie 0 2775 &batadv_check_unicast_packet_fndecl_2775_fields
++ceph_find_or_create_string_fndecl_2777_fields ceph_find_or_create_string fndecl 2 2777 NULL
+num_bo_handles_drm_virtgpu_execbuffer_2779_fields num_bo_handles drm_virtgpu_execbuffer 0 2779 NULL
++fpu_kernel_xstate_size_vardecl_2787_fields fpu_kernel_xstate_size vardecl 0 2787 NULL
+uhci_result_common_fndecl_2788_fields uhci_result_common fndecl 0 2788 NULL
+pkcs7_sig_note_skid_fndecl_2795_fields pkcs7_sig_note_skid fndecl 5 2795 NULL
+iobase_vardecl_l440gx_c_2797_fields iobase vardecl_l440gx.c 0 2797 NULL
@@ -189111,8 +193735,8 @@ index 0000000..6b5367db
+ureg_align_qib_devdata_2841_fields ureg_align qib_devdata 0 2841 NULL
+max_data_size_ath6kl_bmi_2842_fields max_data_size ath6kl_bmi 0 2842 NULL
+dccm2_len_iwl_cfg_2852_fields dccm2_len iwl_cfg 0 2852 NULL
-+bit_offset_nvmem_cell_2856_fields bit_offset nvmem_cell 0 2856 NULL nohasharray
-+phys_size_hfs_inode_info_2856_fields phys_size hfs_inode_info 0 2856 &bit_offset_nvmem_cell_2856_fields
++phys_size_hfs_inode_info_2856_fields phys_size hfs_inode_info 0 2856 NULL nohasharray
++bit_offset_nvmem_cell_2856_fields bit_offset nvmem_cell 0 2856 &phys_size_hfs_inode_info_2856_fields
+btrfs_reloc_clone_csums_fndecl_2862_fields btrfs_reloc_clone_csums fndecl 3-2 2862 NULL
+q_depth_nvme_dev_2866_fields q_depth nvme_dev 0 2866 NULL
+max_sst_algo_control_2868_fields max sst_algo_control 0 2868 NULL
@@ -189127,10 +193751,9 @@ index 0000000..6b5367db
+pca953x_setup_gpio_fndecl_2892_fields pca953x_setup_gpio fndecl 2 2892 NULL nohasharray
+ieee80211_tdls_add_chan_switch_resp_ies_fndecl_2892_fields ieee80211_tdls_add_chan_switch_resp_ies fndecl 7 2892 &pca953x_setup_gpio_fndecl_2892_fields
+set_max_cos_est_fndecl_2893_fields set_max_cos_est fndecl 0 2893 NULL
-+xfs_bmapi_reserve_delalloc_fndecl_2901_fields xfs_bmapi_reserve_delalloc fndecl 2 2901 NULL nohasharray
-+nf_ct_seq_adjust_fndecl_2901_fields nf_ct_seq_adjust fndecl 4 2901 &xfs_bmapi_reserve_delalloc_fndecl_2901_fields
++nf_ct_seq_adjust_fndecl_2901_fields nf_ct_seq_adjust fndecl 4 2901 NULL
++mem_rw_fndecl_2902_fields mem_rw fndecl 3 2902 NULL
+tda1004x_do_upload_fndecl_2916_fields tda1004x_do_upload fndecl 3 2916 NULL
-+snd_hdac_acomp_get_eld_fndecl_2924_fields snd_hdac_acomp_get_eld fndecl 0 2924 NULL
+discard_swap_cluster_fndecl_2926_fields discard_swap_cluster fndecl 3-2 2926 NULL
+bytes_left_nfs_direct_req_2928_fields bytes_left nfs_direct_req 0 2928 NULL nohasharray
+rx_buf_size_octeon_nic_if_config_2928_fields rx_buf_size octeon_nic_if_config 0 2928 &bytes_left_nfs_direct_req_2928_fields
@@ -189158,9 +193781,9 @@ index 0000000..6b5367db
+offset_fuse_notify_retrieve_out_2999_fields offset fuse_notify_retrieve_out 0 2999 NULL
+page_cnt_qed_chain_3000_fields page_cnt qed_chain 0 3000 NULL
+hdr_len_iscsi_task_3003_fields hdr_len iscsi_task 0 3003 NULL
-+id_rio_mport_3010_fields id rio_mport 0 3010 NULL
++ena_change_mtu_fndecl_3009_fields ena_change_mtu fndecl 2 3009 NULL
+rdma_build_arg_xdr_fndecl_3012_fields rdma_build_arg_xdr fndecl 3 3012 NULL
-+acpi_rsdp_vardecl_osl_c_3017_fields acpi_rsdp vardecl_osl.c 0 3017 NULL
++mem_write_fndecl_3019_fields mem_write fndecl 3 3019 NULL
+de_rec_len_gfs2_dirent_3029_fields de_rec_len gfs2_dirent 0 3029 NULL
+dual_channel_active_fndecl_3033_fields dual_channel_active fndecl 0 3033 NULL
+num_hwfns_qed_dev_3034_fields num_hwfns qed_dev 0 3034 NULL
@@ -189169,9 +193792,8 @@ index 0000000..6b5367db
+skb_seq_read_fndecl_3054_fields skb_seq_read fndecl 0-1 3054 NULL
+size_ecryptfs_cache_info_3056_fields size ecryptfs_cache_info 0 3056 NULL
+prepare_to_wait_event_fndecl_3060_fields prepare_to_wait_event fndecl 0 3060 NULL
-+ntfs_map_runlist_fndecl_3068_fields ntfs_map_runlist fndecl 2 3068 NULL nohasharray
-+dst_addr_width_dma_slave_config_3068_fields dst_addr_width dma_slave_config 0 3068 &ntfs_map_runlist_fndecl_3068_fields
-+compat_process_vm_rw_fndecl_3069_fields compat_process_vm_rw fndecl 3 3069 NULL
++dst_addr_width_dma_slave_config_3068_fields dst_addr_width dma_slave_config 0 3068 NULL nohasharray
++ntfs_map_runlist_fndecl_3068_fields ntfs_map_runlist fndecl 2 3068 &dst_addr_width_dma_slave_config_3068_fields
+punch_hole_fndecl_3070_fields punch_hole fndecl 2-3 3070 NULL
+hbuf_max_len_mei_hw_ops_3071_fields hbuf_max_len mei_hw_ops 0 3071 NULL
+height_au0828_dev_3073_fields height au0828_dev 0 3073 NULL
@@ -189184,9 +193806,7 @@ index 0000000..6b5367db
+vol_cdev_direct_write_fndecl_3100_fields vol_cdev_direct_write fndecl 3 3100 NULL
+mt76_init_sband_fndecl_3112_fields mt76_init_sband fndecl 4 3112 NULL
+fb_alloc_cmap_gfp_fndecl_3115_fields fb_alloc_cmap_gfp fndecl 2 3115 NULL
-+edid_write_fndecl_3118_fields edid_write fndecl 3 3118 NULL
-+key_size_tracing_map_3119_fields key_size tracing_map 0 3119 NULL nohasharray
-+ipip6_tunnel_change_mtu_fndecl_3119_fields ipip6_tunnel_change_mtu fndecl 2 3119 &key_size_tracing_map_3119_fields nohasharray
++ipip6_tunnel_change_mtu_fndecl_3119_fields ipip6_tunnel_change_mtu fndecl 2 3119 NULL nohasharray
+blk_rq_map_user_fndecl_3119_fields blk_rq_map_user fndecl 5 3119 &ipip6_tunnel_change_mtu_fndecl_3119_fields nohasharray
+controller_function_ms_boot_attr_info_3119_fields controller_function ms_boot_attr_info 0 3119 &blk_rq_map_user_fndecl_3119_fields
+status_whc_qhead_3133_fields status whc_qhead 0 3133 NULL
@@ -189200,33 +193820,33 @@ index 0000000..6b5367db
+iseg_base_mlx5_core_dev_3151_fields iseg_base mlx5_core_dev 0 3151 NULL
+udf_get_last_session_fndecl_3152_fields udf_get_last_session fndecl 0 3152 NULL
+mmio_size_drm_mga_private_3160_fields mmio_size drm_mga_private 0 3160 NULL
-+prealloc_size_ich_pcm_table_3162_fields prealloc_size ich_pcm_table 0 3162 NULL nohasharray
++max_rx_aggregation_subframes_ieee80211_sta_3162_fields max_rx_aggregation_subframes ieee80211_sta 0 3162 NULL nohasharray
++prealloc_size_ich_pcm_table_3162_fields prealloc_size ich_pcm_table 0 3162 &max_rx_aggregation_subframes_ieee80211_sta_3162_fields nohasharray
+sys_sendto_fndecl_3162_fields sys_sendto fndecl 3 3162 &prealloc_size_ich_pcm_table_3162_fields
+send_ext_msg_udp_fndecl_3163_fields send_ext_msg_udp fndecl 3 3163 NULL
+cfv_alloc_and_copy_skb_fndecl_3167_fields cfv_alloc_and_copy_skb fndecl 4 3167 NULL
+bytes_per_pixel_vivid_dev_3174_fields bytes_per_pixel vivid_dev 0 3174 NULL
+keyspan_write_fndecl_3189_fields keyspan_write fndecl 4 3189 NULL
-+min_io_size_ubi_device_3191_fields min_io_size ubi_device 0 3191 NULL
++min_io_size_ubi_device_3191_fields min_io_size ubi_device 0 3191 NULL nohasharray
++uvc_alloc_entity_fndecl_3191_fields uvc_alloc_entity fndecl 3 3191 &min_io_size_ubi_device_3191_fields
+mspi_apply_cpu_mode_quirks_fndecl_3197_fields mspi_apply_cpu_mode_quirks fndecl 0-4 3197 NULL
+lcd_hblank_len_atyfb_par_3198_fields lcd_hblank_len atyfb_par 0 3198 NULL
-+import_iovec_fndecl_3201_fields import_iovec fndecl 3 3201 NULL
-+num_leds_led_platform_data_3203_fields num_leds led_platform_data 0 3203 NULL
-+bus_count_i2c_mux_pinctrl_platform_data_3204_fields bus_count i2c_mux_pinctrl_platform_data 0 3204 NULL
++import_iovec_fndecl_3201_fields import_iovec fndecl 0 3201 NULL
+chunk_size_mdu_array_info_s_3205_fields chunk_size mdu_array_info_s 0 3205 NULL
++sisusb_send_packet_fndecl_3208_fields sisusb_send_packet fndecl 2 3208 NULL
+usbvision_set_output_fndecl_3216_fields usbvision_set_output fndecl 2-3 3216 NULL
+rx_buffer_len_ixgb_adapter_3217_fields rx_buffer_len ixgb_adapter 0 3217 NULL nohasharray
+cw1200_sdio_memcpy_fromio_fndecl_3217_fields cw1200_sdio_memcpy_fromio fndecl 4 3217 &rx_buffer_len_ixgb_adapter_3217_fields
+mad_size_ib_mad_private_3230_fields mad_size ib_mad_private 0 3230 NULL
+sq_num_entries_c4iw_qp_attributes_3234_fields sq_num_entries c4iw_qp_attributes 0 3234 NULL
-+lbs_rdbbp_write_fndecl_3237_fields lbs_rdbbp_write fndecl 3 3237 NULL
-+inlen_ib_udata_3242_fields inlen ib_udata 0 3242 NULL
+uniforms_size_drm_vc4_submit_cl_3245_fields uniforms_size drm_vc4_submit_cl 0 3245 NULL
+max_wqe_ocrdma_dev_attr_3246_fields max_wqe ocrdma_dev_attr 0 3246 NULL
+s_max_sge_rvt_qp_3248_fields s_max_sge rvt_qp 0 3248 NULL
+of_property_match_string_fndecl_3250_fields of_property_match_string fndecl 0 3250 NULL
+shmem_kernel_file_setup_fndecl_3251_fields shmem_kernel_file_setup fndecl 2 3251 NULL
++sbc_check_prot_fndecl_3258_fields sbc_check_prot fndecl 4 3258 NULL
+taglen_cb_compound_hdr_res_3259_fields taglen cb_compound_hdr_res 0 3259 NULL
-+compat_sys_readv_fndecl_3260_fields compat_sys_readv fndecl 3 3260 NULL
++xsize_mxt_data_3260_fields xsize mxt_data 0 3260 NULL
+altera_set_ir_post_fndecl_3271_fields altera_set_ir_post fndecl 2 3271 NULL
+doff_tcphdr_3280_fields doff tcphdr 0 3280 NULL nohasharray
+ds1305_nvram_read_fndecl_3280_fields ds1305_nvram_read fndecl 6 3280 &doff_tcphdr_3280_fields
@@ -189234,36 +193854,39 @@ index 0000000..6b5367db
+cfg80211_rx_assoc_resp_fndecl_3285_fields cfg80211_rx_assoc_resp fndecl 4 3285 &stolen_base_drm_psb_private_3285_fields
+read_configfs_bin_attribute_3290_fields read configfs_bin_attribute 0 3290 NULL
+check_eofblocks_fl_fndecl_3293_fields check_eofblocks_fl fndecl 0 3293 NULL
-+iov_count_iscsi_data_count_3301_fields iov_count iscsi_data_count 0 3301 NULL
+rds_page_remainder_alloc_fndecl_3303_fields rds_page_remainder_alloc fndecl 2 3303 NULL
+transfer_size_zr364xx_pipeinfo_3312_fields transfer_size zr364xx_pipeinfo 0 3312 NULL
++intel_engine_create_scratch_fndecl_3318_fields intel_engine_create_scratch fndecl 2 3318 NULL
+bulk_out_ep_irda_usb_cb_3322_fields bulk_out_ep irda_usb_cb 0 3322 NULL
-+length_ima_digest_data_3329_fields length ima_digest_data 0 3329 NULL
+i_xattr_loc_ocfs2_dinode_3335_fields i_xattr_loc ocfs2_dinode 0 3335 NULL
-+fc_cpu_mask_vardecl_3336_fields fc_cpu_mask vardecl 0 3336 NULL
+amdtp_dot_set_parameters_fndecl_3341_fields amdtp_dot_set_parameters fndecl 3 3341 NULL
+base_drm_agp_head_3348_fields base drm_agp_head 0 3348 NULL nohasharray
+curchunk_hdrlen_drm_dp_sideband_msg_rx_3348_fields curchunk_hdrlen drm_dp_sideband_msg_rx 0 3348 &base_drm_agp_head_3348_fields
+ext4_finish_convert_inline_dir_fndecl_3350_fields ext4_finish_convert_inline_dir fndecl 5 3350 NULL
+pgt_bits_nvkm_mmu_func_3353_fields pgt_bits nvkm_mmu_func 0 3353 NULL nohasharray
+max_bands_multiq_sched_data_3353_fields max_bands multiq_sched_data 0 3353 &pgt_bits_nvkm_mmu_func_3353_fields
++sysctl_nr_open_vardecl_3355_fields sysctl_nr_open vardecl 0 3355 NULL
++bbr_set_pacing_rate_fndecl_3356_fields bbr_set_pacing_rate fndecl 3-2 3356 NULL
+__process_changed_new_xattr_fndecl_3360_fields __process_changed_new_xattr fndecl 6-4 3360 NULL
+essidlen_zd1201_3366_fields essidlen zd1201 0 3366 NULL
++frame_size_stk_camera_3367_fields frame_size stk_camera 0 3367 NULL
+xfs_dir3_leaf_get_buf_fndecl_3380_fields xfs_dir3_leaf_get_buf fndecl 2 3380 NULL
+phys_hw_bank_3381_fields phys hw_bank 0 3381 NULL
+udf_split_extents_fndecl_3382_fields udf_split_extents fndecl 3 3382 NULL
-+pgoff_vm_fault_3385_fields pgoff vm_fault 0 3385 NULL
++nvdimm_set_config_data_fndecl_3384_fields nvdimm_set_config_data fndecl 4 3384 NULL
++pgoff_vm_fault_3385_fields pgoff vm_fault 0 3385 NULL nohasharray
++drbd_bm_resize_fndecl_3385_fields drbd_bm_resize fndecl 2 3385 &pgoff_vm_fault_3385_fields
+xfs_iext_realloc_direct_fndecl_3386_fields xfs_iext_realloc_direct fndecl 2 3386 NULL
-+rport_priv_size_fc_lport_3388_fields rport_priv_size fc_lport 0 3388 NULL nohasharray
-+beacon_ie_len_wmi_connect_event_3388_fields beacon_ie_len wmi_connect_event 0 3388 &rport_priv_size_fc_lport_3388_fields
++beacon_ie_len_wmi_connect_event_3388_fields beacon_ie_len wmi_connect_event 0 3388 NULL nohasharray
++rport_priv_size_fc_lport_3388_fields rport_priv_size fc_lport 0 3388 &beacon_ie_len_wmi_connect_event_3388_fields
+xz_dec_lzma2_reset_fndecl_3390_fields xz_dec_lzma2_reset fndecl 2 3390 NULL
+max_frame_size_nes_vnic_3395_fields max_frame_size nes_vnic 0 3395 NULL nohasharray
+st_nci_hci_dm_get_data_fndecl_3395_fields st_nci_hci_dm_get_data fndecl 3 3395 &max_frame_size_nes_vnic_3395_fields
+xfs_bmap_isaeof_fndecl_3401_fields xfs_bmap_isaeof fndecl 0 3401 NULL
+pos_in_item_treepath_3409_fields pos_in_item treepath 0 3409 NULL
+minLen_group_data_3411_fields minLen group_data 0 3411 NULL
-+scsi_report_opcode_fndecl_3412_fields scsi_report_opcode fndecl 3 3412 NULL
+mtu_tipc_link_entry_3415_fields mtu tipc_link_entry 0 3415 NULL
++venus_create_fndecl_3416_fields venus_create fndecl 4 3416 NULL
+opts1_RxDesc_3421_fields opts1 RxDesc 0 3421 NULL
+rionet_change_mtu_fndecl_3422_fields rionet_change_mtu fndecl 2 3422 NULL
+rlim_cur_rlimit_3431_fields rlim_cur rlimit 0 3431 NULL nohasharray
@@ -189272,21 +193895,23 @@ index 0000000..6b5367db
+gfs2_meta_read_fndecl_3434_fields gfs2_meta_read fndecl 2 3434 NULL
+len_nft_bitwise_3441_fields len nft_bitwise 0 3441 NULL
+uc_inSize_upc_req_3444_fields uc_inSize upc_req 0 3444 NULL
-+cifs_read_page_from_socket_fndecl_3452_fields cifs_read_page_from_socket fndecl 3 3452 NULL
++cifs_read_page_from_socket_fndecl_3452_fields cifs_read_page_from_socket fndecl 3-0 3452 NULL
+rpipe_check_aim_fndecl_3456_fields rpipe_check_aim fndecl 0 3456 NULL
+s_itb_per_group_ext4_sb_info_3459_fields s_itb_per_group ext4_sb_info 0 3459 NULL
+adfs_dir_read_fndecl_3464_fields adfs_dir_read fndecl 2 3464 NULL
+intel_th_populate_fndecl_3473_fields intel_th_populate fndecl 4 3473 NULL
+acpi_aml_write_fndecl_3476_fields acpi_aml_write fndecl 3 3476 NULL nohasharray
+ngpios_chv_community_3476_fields ngpios chv_community 0 3476 &acpi_aml_write_fndecl_3476_fields
-+chip_send_contexts_hfi1_devdata_3481_fields chip_send_contexts hfi1_devdata 0 3481 NULL nohasharray
-+namelen_xfs_dir2_sf_entry_3481_fields namelen xfs_dir2_sf_entry 0 3481 &chip_send_contexts_hfi1_devdata_3481_fields
++namelen_xfs_dir2_sf_entry_3481_fields namelen xfs_dir2_sf_entry 0 3481 NULL nohasharray
++chip_send_contexts_hfi1_devdata_3481_fields chip_send_contexts hfi1_devdata 0 3481 &namelen_xfs_dir2_sf_entry_3481_fields
+xfer_len_nvme_trans_io_cdb_3486_fields xfer_len nvme_trans_io_cdb 0 3486 NULL
+from_dio_submit_3494_fields from dio_submit 0 3494 NULL
+hs_bkt_bits_cfs_hash_3509_fields hs_bkt_bits cfs_hash 0 3509 NULL
-+statesize_hash_alg_common_3517_fields statesize hash_alg_common 0 3517 NULL
+gru_vtop_fndecl_3522_fields gru_vtop fndecl 2 3522 NULL
++cipso_v4_gentag_rng_fndecl_3532_fields cipso_v4_gentag_rng fndecl 0 3532 NULL
+cl_out_max_entry_size_mvumi_hs_page1_3540_fields cl_out_max_entry_size mvumi_hs_page1 0 3540 NULL
++dvb_dmxdev_buffer_read_fndecl_3545_fields dvb_dmxdev_buffer_read fndecl 0 3545 NULL
++irtty_change_speed_fndecl_3547_fields irtty_change_speed fndecl 2 3547 NULL
+mult_count_ide_drive_s_3550_fields mult_count ide_drive_s 0 3550 NULL
+ocfs2_read_xattr_bucket_fndecl_3553_fields ocfs2_read_xattr_bucket fndecl 2 3553 NULL
+sg_copy_from_buffer_fndecl_3557_fields sg_copy_from_buffer fndecl 0-4 3557 NULL
@@ -189294,7 +193919,6 @@ index 0000000..6b5367db
+page_cache_sync_readahead_fndecl_3569_fields page_cache_sync_readahead fndecl 4 3569 NULL nohasharray
+nr_clk_ids_samsung_cmu_info_3569_fields nr_clk_ids samsung_cmu_info 0 3569 &page_cache_sync_readahead_fndecl_3569_fields
+encode_diropargs3_fndecl_3574_fields encode_diropargs3 fndecl 4 3574 NULL
-+len_capiloaddatapart_3577_fields len capiloaddatapart 0 3577 NULL
+pkcs7_view_content_fndecl_3589_fields pkcs7_view_content fndecl 3 3589 NULL nohasharray
+ddr_av_base_mthca_av_table_3589_fields ddr_av_base mthca_av_table 0 3589 &pkcs7_view_content_fndecl_3589_fields
+ip_vs_icmp_xmit_fndecl_3590_fields ip_vs_icmp_xmit fndecl 4 3590 NULL nohasharray
@@ -189313,30 +193937,29 @@ index 0000000..6b5367db
+tail_timestamp_event_queue_3626_fields tail timestamp_event_queue 0 3626 NULL
+cbuf_eat_fndecl_3631_fields cbuf_eat fndecl 2 3631 NULL
+out_words_ib_uverbs_cmd_hdr_3637_fields out_words ib_uverbs_cmd_hdr 0 3637 NULL
-+xfs_attr3_leaf_freextent_fndecl_3639_fields xfs_attr3_leaf_freextent fndecl 4-3 3639 NULL nohasharray
-+vmci_transport_queue_pair_alloc_fndecl_3639_fields vmci_transport_queue_pair_alloc fndecl 3-4 3639 &xfs_attr3_leaf_freextent_fndecl_3639_fields
-+count_phm_clock_voltage_dependency_table_3642_fields count phm_clock_voltage_dependency_table 0 3642 NULL
++xfs_attr3_leaf_freextent_fndecl_3639_fields xfs_attr3_leaf_freextent fndecl 3-4 3639 NULL nohasharray
++vmci_transport_queue_pair_alloc_fndecl_3639_fields vmci_transport_queue_pair_alloc fndecl 4-3 3639 &xfs_attr3_leaf_freextent_fndecl_3639_fields
++s_desc_size_ext4_sb_info_3652_fields s_desc_size ext4_sb_info 0 3652 NULL
+pci_id_imc_uncore_pci_dev_3656_fields pci_id imc_uncore_pci_dev 0 3656 NULL
-+c_plan_ahead_disk_conf_3660_fields c_plan_ahead disk_conf 0 3660 NULL
-+im_len_xfs_imap_3661_fields im_len xfs_imap 0 3661 NULL nohasharray
-+ext2_get_blocks_fndecl_3661_fields ext2_get_blocks fndecl 0 3661 &im_len_xfs_imap_3661_fields
++im_len_xfs_imap_3661_fields im_len xfs_imap 0 3661 NULL
+arch_reserve_mem_area_fndecl_3662_fields arch_reserve_mem_area fndecl 2 3662 NULL
+aper_base_amdgpu_mc_3664_fields aper_base amdgpu_mc 0 3664 NULL
+child_cnt_ubifs_znode_3667_fields child_cnt ubifs_znode 0 3667 NULL
+bio_find_or_create_slab_fndecl_3671_fields bio_find_or_create_slab fndecl 1 3671 NULL
+interfaces_count_ffs_data_3677_fields interfaces_count ffs_data 0 3677 NULL
-+alloc_orinocodev_fndecl_3688_fields alloc_orinocodev fndecl 1 3688 NULL
+len_mic_mw_3689_fields len mic_mw 0 3689 NULL
+ath10k_wmi_tlv_op_gen_vdev_sta_uapsd_fndecl_3692_fields ath10k_wmi_tlv_op_gen_vdev_sta_uapsd fndecl 5 3692 NULL
+vmw_cmdbuf_space_pool_fndecl_3702_fields vmw_cmdbuf_space_pool fndecl 3 3702 NULL nohasharray
+get_urb_error_fndecl_3702_fields get_urb_error fndecl 0 3702 &vmw_cmdbuf_space_pool_fndecl_3702_fields
+ceph_msg_data_add_pages_fndecl_3704_fields ceph_msg_data_add_pages fndecl 3 3704 NULL
+vlan_netdev_private_3705_fields vlan netdev_private 0 3705 NULL
++setup_wLength_dev_data_3714_fields setup_wLength dev_data 0 3714 NULL
+len_sctp_auth_bytes_3715_fields len sctp_auth_bytes 0 3715 NULL
+byte_len_ib_wc_3716_fields byte_len ib_wc 0 3716 NULL
++dvb_create_media_entity_fndecl_3720_fields dvb_create_media_entity fndecl 3 3720 NULL
+test_find_delalloc_fndecl_3723_fields test_find_delalloc fndecl 1 3723 NULL
+len_amp_assoc_3724_fields len amp_assoc 0 3724 NULL
-+__v4l2_ctrl_modify_range_fndecl_3726_fields __v4l2_ctrl_modify_range fndecl 2-5 3726 NULL
++__v4l2_ctrl_modify_range_fndecl_3726_fields __v4l2_ctrl_modify_range fndecl 2-3-5 3726 NULL
+mcs_wrap_fir_skb_fndecl_3729_fields mcs_wrap_fir_skb fndecl 0 3729 NULL
+peer_buf_alloc_virtio_vsock_sock_3738_fields peer_buf_alloc virtio_vsock_sock 0 3738 NULL
+nr_reserved_tags_blk_mq_tags_3751_fields nr_reserved_tags blk_mq_tags 0 3751 NULL
@@ -189348,25 +193971,25 @@ index 0000000..6b5367db
+fl_starve_thres_sge_3779_fields fl_starve_thres sge 0 3779 NULL
+cxgbi_ppm_init_fndecl_3787_fields cxgbi_ppm_init fndecl 6 3787 NULL
+rx_status_len_ath9k_hw_capabilities_3793_fields rx_status_len ath9k_hw_capabilities 0 3793 NULL
-+concat_writev_fndecl_3800_fields concat_writev fndecl 4-3 3800 NULL
++concat_writev_fndecl_3800_fields concat_writev fndecl 4 3800 NULL
+nfc_hci_send_event_fndecl_3807_fields nfc_hci_send_event fndecl 5 3807 NULL
-+nextLineNumber_vardecl_rocket_c_3809_fields nextLineNumber vardecl_rocket.c 0 3809 NULL
+ip_last_used_group_ocfs2_inode_info_3814_fields ip_last_used_group ocfs2_inode_info 0 3814 NULL
+e_cpos_ocfs2_extent_rec_3815_fields e_cpos ocfs2_extent_rec 0 3815 NULL
-+fnic_trace_debugfs_lseek_fndecl_3819_fields fnic_trace_debugfs_lseek fndecl 2 3819 NULL nohasharray
-+dccp_recvmsg_fndecl_3819_fields dccp_recvmsg fndecl 3 3819 &fnic_trace_debugfs_lseek_fndecl_3819_fields
++dccp_recvmsg_fndecl_3819_fields dccp_recvmsg fndecl 3 3819 NULL nohasharray
++fnic_trace_debugfs_lseek_fndecl_3819_fields fnic_trace_debugfs_lseek fndecl 2 3819 &dccp_recvmsg_fndecl_3819_fields
+bits_per_word_spi_device_3828_fields bits_per_word spi_device 0 3828 NULL
-+bnxt_gro_func_5730x_fndecl_3830_fields bnxt_gro_func_5730x fndecl 2 3830 NULL
++bnxt_gro_func_5730x_fndecl_3830_fields bnxt_gro_func_5730x fndecl 2 3830 NULL nohasharray
++mei_nfc_send_fndecl_3830_fields mei_nfc_send fndecl 3 3830 &bnxt_gro_func_5730x_fndecl_3830_fields
+num_counters_ipt_replace_3837_fields num_counters ipt_replace 0 3837 NULL
+error_btrfs_end_io_wq_3838_fields error btrfs_end_io_wq 0 3838 NULL
+find_end_of_node_fndecl_3843_fields find_end_of_node fndecl 0-3-1-2 3843 NULL
+bg_inode_table_hi_ext4_group_desc_3844_fields bg_inode_table_hi ext4_group_desc 0 3844 NULL
+btrfs_dirty_pages_fndecl_3848_fields btrfs_dirty_pages fndecl 6-5 3848 NULL
+ocfs2_free_clusters_fndecl_3866_fields ocfs2_free_clusters fndecl 4 3866 NULL
-+minlen_fstrim_range_3870_fields minlen fstrim_range 0 3870 NULL
+size_of_priv_dvb_usb_adapter_fe_properties_3875_fields size_of_priv dvb_usb_adapter_fe_properties 0 3875 NULL
+fs_div_hfs_sb_info_3890_fields fs_div hfs_sb_info 0 3890 NULL
+snd_pcm_lib_preallocate_pages_fndecl_3892_fields snd_pcm_lib_preallocate_pages fndecl 4 3892 NULL
++arch_gnttab_init_fndecl_3893_fields arch_gnttab_init fndecl 1 3893 NULL
+rootdir_empty_fndecl_3895_fields rootdir_empty fndecl 2 3895 NULL
+xfs_extent_busy_trim_fndecl_3898_fields xfs_extent_busy_trim fndecl 3-2 3898 NULL
+gfs2_meta_wipe_fndecl_3900_fields gfs2_meta_wipe fndecl 2 3900 NULL
@@ -189376,18 +193999,18 @@ index 0000000..6b5367db
+cfpkt_set_prio_fndecl_3935_fields cfpkt_set_prio fndecl 2 3935 NULL
+unix_dgram_sendmsg_fndecl_3944_fields unix_dgram_sendmsg fndecl 3 3944 NULL
+atalk_recvmsg_fndecl_3950_fields atalk_recvmsg fndecl 3 3950 NULL
++connection_speed_acpi_resource_spi_serialbus_3953_fields connection_speed acpi_resource_spi_serialbus 0 3953 NULL
+mem_end_pci_params_3955_fields mem_end pci_params 0 3955 NULL
+backup_src_sz_kimage_arch_3957_fields backup_src_sz kimage_arch 0 3957 NULL nohasharray
+resync_min_mddev_3957_fields resync_min mddev 0 3957 &backup_src_sz_kimage_arch_3957_fields
-+make_le_item_head_fndecl_3961_fields make_le_item_head fndecl 4-5-6 3961 NULL
++make_le_item_head_fndecl_3961_fields make_le_item_head fndecl 6-4 3961 NULL
+hpfs_de_as_down_as_possible_fndecl_3967_fields hpfs_de_as_down_as_possible fndecl 0-2 3967 NULL
+dgram_sendmsg_fndecl_3972_fields dgram_sendmsg fndecl 3 3972 NULL
+wrbs_per_cxn_hba_parameters_3974_fields wrbs_per_cxn hba_parameters 0 3974 NULL
-+uc_cnt_ncsi_rsp_gc_pkt_3982_fields uc_cnt ncsi_rsp_gc_pkt 0 3982 NULL nohasharray
-+r_len_rvt_qp_3982_fields r_len rvt_qp 0 3982 &uc_cnt_ncsi_rsp_gc_pkt_3982_fields
++r_len_rvt_qp_3982_fields r_len rvt_qp 0 3982 NULL nohasharray
++uc_cnt_ncsi_rsp_gc_pkt_3982_fields uc_cnt ncsi_rsp_gc_pkt 0 3982 &r_len_rvt_qp_3982_fields
+num_entries_aper_size_info_lvl2_3983_fields num_entries aper_size_info_lvl2 0 3983 NULL
-+num_pages_ttm_mem_reg_3986_fields num_pages ttm_mem_reg 0 3986 NULL nohasharray
-+nv50_chan_create_fndecl_3986_fields nv50_chan_create fndecl 6 3986 &num_pages_ttm_mem_reg_3986_fields
++num_pages_ttm_mem_reg_3986_fields num_pages ttm_mem_reg 0 3986 NULL
+i2400m_rx_trace_fndecl_3988_fields i2400m_rx_trace fndecl 3 3988 NULL
+tp_len_tpacket2_hdr_3990_fields tp_len tpacket2_hdr 0 3990 NULL nohasharray
+__acpi_register_gsi_vardecl_3990_fields __acpi_register_gsi vardecl 0 3990 &tp_len_tpacket2_hdr_3990_fields
@@ -189395,11 +194018,10 @@ index 0000000..6b5367db
+opt_nflen_ipv6_txoptions_3998_fields opt_nflen ipv6_txoptions 0 3998 NULL nohasharray
+len_be_queue_info_3998_fields len be_queue_info 0 3998 &opt_nflen_ipv6_txoptions_3998_fields
+buffer_bytes_max_snd_pcm_hardware_4001_fields buffer_bytes_max snd_pcm_hardware 0 4001 NULL
-+t4_init_clip_tbl_fndecl_4007_fields t4_init_clip_tbl fndecl 1-2 4007 NULL nohasharray
-+format_supported_num_psb_intel_sdvo_connector_4007_fields format_supported_num psb_intel_sdvo_connector 0 4007 &t4_init_clip_tbl_fndecl_4007_fields
-+rx_data_max_size_sst_generic_ipc_4011_fields rx_data_max_size sst_generic_ipc 0 4011 NULL nohasharray
-+onenand_default_block_markbad_fndecl_4011_fields onenand_default_block_markbad fndecl 2 4011 &rx_data_max_size_sst_generic_ipc_4011_fields
-+bioset_create_nobvec_fndecl_4015_fields bioset_create_nobvec fndecl 2-1 4015 NULL
++t4_init_clip_tbl_fndecl_4007_fields t4_init_clip_tbl fndecl 1-2 4007 NULL
++onenand_default_block_markbad_fndecl_4011_fields onenand_default_block_markbad fndecl 2 4011 NULL nohasharray
++rx_data_max_size_sst_generic_ipc_4011_fields rx_data_max_size sst_generic_ipc 0 4011 &onenand_default_block_markbad_fndecl_4011_fields
++bioset_create_nobvec_fndecl_4015_fields bioset_create_nobvec fndecl 2 4015 NULL
+f1_id_amd64_family_type_4017_fields f1_id amd64_family_type 0 4017 NULL
+rtl2830_regmap_gather_write_fndecl_4018_fields rtl2830_regmap_gather_write fndecl 5 4018 NULL
+b_size_mon_reader_bin_4021_fields b_size mon_reader_bin 0 4021 NULL
@@ -189409,7 +194031,6 @@ index 0000000..6b5367db
+MsgLength__MSG_EVENT_NOTIFY_REPLY_4038_fields MsgLength _MSG_EVENT_NOTIFY_REPLY 0 4038 NULL
+brcmf_sdio_txpkt_hdalign_fndecl_4040_fields brcmf_sdio_txpkt_hdalign fndecl 0 4040 NULL
+user_mss_tcp_options_received_4043_fields user_mss tcp_options_received 0 4043 NULL
-+scsi_execute_req_flags_fndecl_4044_fields scsi_execute_req_flags fndecl 5 4044 NULL
+tx_data_count_hso_serial_4046_fields tx_data_count hso_serial 0 4046 NULL
+prepare_header_fndecl_4047_fields prepare_header fndecl 0 4047 NULL
+ssid_len_cfg80211_connect_params_4052_fields ssid_len cfg80211_connect_params 0 4052 NULL
@@ -189417,7 +194038,6 @@ index 0000000..6b5367db
+cfg80211_notify_new_peer_candidate_fndecl_4073_fields cfg80211_notify_new_peer_candidate fndecl 4 4073 NULL
+iscsi_max_snd_data_seg_len_dev_db_entry_4074_fields iscsi_max_snd_data_seg_len dev_db_entry 0 4074 NULL
+do_validate_mem_fndecl_4075_fields do_validate_mem fndecl 3-2 4075 NULL
-+mlx4_en_get_num_flows_fndecl_4078_fields mlx4_en_get_num_flows fndecl 0 4078 NULL
+IOCRequestFrameSize_mpt3sas_facts_4079_fields IOCRequestFrameSize mpt3sas_facts 0 4079 NULL
+__set_extent_bit_fndecl_4083_fields __set_extent_bit fndecl 0-3-2 4083 NULL
+n_drm_r128_depth_4085_fields n drm_r128_depth 0 4085 NULL
@@ -189427,8 +194047,8 @@ index 0000000..6b5367db
+num_pipes_intel_device_info_4092_fields num_pipes intel_device_info 0 4092 NULL
+sca_keylength_sctp_authkey_4095_fields sca_keylength sctp_authkey 0 4095 NULL
+ae_res_sd_4099_fields ae_res sd 0 4099 NULL
-+nbuttons_tca6416_keys_platform_data_4107_fields nbuttons tca6416_keys_platform_data 0 4107 NULL nohasharray
-+special_ixgb_rx_desc_4107_fields special ixgb_rx_desc 0 4107 &nbuttons_tca6416_keys_platform_data_4107_fields
++special_ixgb_rx_desc_4107_fields special ixgb_rx_desc 0 4107 NULL nohasharray
++nbuttons_tca6416_keys_platform_data_4107_fields nbuttons tca6416_keys_platform_data 0 4107 &special_ixgb_rx_desc_4107_fields
+blkno_xfs_da_args_4112_fields blkno xfs_da_args 0 4112 NULL
+vringh_iov_pull_kern_fndecl_4115_fields vringh_iov_pull_kern fndecl 3 4115 NULL
+read_reg_fndecl_4120_fields read_reg fndecl 0 4120 NULL
@@ -189441,21 +194061,25 @@ index 0000000..6b5367db
+interleave_cfi_private_4153_fields interleave cfi_private 0 4153 NULL
+ocfs2_readpages_fndecl_4156_fields ocfs2_readpages fndecl 4 4156 NULL nohasharray
+num_msix_vec_be_adapter_4156_fields num_msix_vec be_adapter 0 4156 &ocfs2_readpages_fndecl_4156_fields
++batadv_tt_local_add_fndecl_4159_fields batadv_tt_local_add fndecl 3 4159 NULL
++saa7146_vmalloc_build_pgtable_fndecl_4183_fields saa7146_vmalloc_build_pgtable fndecl 2 4183 NULL
+team_change_mtu_fndecl_4186_fields team_change_mtu fndecl 2 4186 NULL
+iin_ep_usbtmc_device_data_4195_fields iin_ep usbtmc_device_data 0 4195 NULL
+xfs_bmap_add_extent_hole_real_fndecl_4199_fields xfs_bmap_add_extent_hole_real fndecl 0 4199 NULL
+wBeaconInfoLength_uwb_rc_evt_beacon_WUSB_0100_4200_fields wBeaconInfoLength uwb_rc_evt_beacon_WUSB_0100 0 4200 NULL
+bd_dev_block_device_4202_fields bd_dev block_device 0 4202 NULL
-+parent___prelim_ref_4206_fields parent __prelim_ref 0 4206 NULL nohasharray
-+sample_bits_snd_soc_dai_4206_fields sample_bits snd_soc_dai 0 4206 &parent___prelim_ref_4206_fields
++sample_bits_snd_soc_dai_4206_fields sample_bits snd_soc_dai 0 4206 NULL nohasharray
++parent___prelim_ref_4206_fields parent __prelim_ref 0 4206 &sample_bits_snd_soc_dai_4206_fields
+rx_page_order_il_hw_params_4208_fields rx_page_order il_hw_params 0 4208 NULL
+rx_pkt_offset_rxpd_4210_fields rx_pkt_offset rxpd 0 4210 NULL
+max_vectors_i40e_virtchnl_vf_resource_4213_fields max_vectors i40e_virtchnl_vf_resource 0 4213 NULL
-+ext2_setsize_fndecl_4215_fields ext2_setsize fndecl 2 4215 NULL
++ext2_setsize_fndecl_4215_fields ext2_setsize fndecl 2 4215 NULL nohasharray
++nci_hci_set_param_fndecl_4215_fields nci_hci_set_param fndecl 5 4215 &ext2_setsize_fndecl_4215_fields
+count_sc_config_sizes_4217_fields count sc_config_sizes 0 4217 NULL
+store_pending_adv_report_fndecl_4222_fields store_pending_adv_report fndecl 7 4222 NULL
+nilfs_segbuf_map_fndecl_4225_fields nilfs_segbuf_map fndecl 3 4225 NULL
+__nla_put_fndecl_4226_fields __nla_put fndecl 3 4226 NULL
++len_bpf_prog_4232_fields len bpf_prog 0 4232 NULL
+data_len_nci_data_4237_fields data_len nci_data 0 4237 NULL
+ip6gre_err_fndecl_4238_fields ip6gre_err fndecl 5 4238 NULL
+alloc_size_debug_buffer_4240_fields alloc_size debug_buffer 0 4240 NULL
@@ -189464,23 +194088,21 @@ index 0000000..6b5367db
+duplex_ethtool_cmd_4250_fields duplex ethtool_cmd 0 4250 &ieee80211_mesh_rx_mgmt_action_fndecl_4250_fields
+fb_y_vmw_fb_par_4260_fields fb_y vmw_fb_par 0 4260 NULL
+user_width_soc_camera_device_4262_fields user_width soc_camera_device 0 4262 NULL
++ntids_tid_info_4263_fields ntids tid_info 0 4263 NULL
+nilfs_gccache_submit_read_node_fndecl_4267_fields nilfs_gccache_submit_read_node fndecl 2-3 4267 NULL
+ide_set_pio_fndecl_4272_fields ide_set_pio fndecl 2 4272 NULL
+mp_map_pin_to_irq_fndecl_4276_fields mp_map_pin_to_irq fndecl 1 4276 NULL
-+fuse_ioctl_copy_user_fndecl_4279_fields fuse_ioctl_copy_user fndecl 4-3 4279 NULL
+rx_packet_len_nci_uart_4280_fields rx_packet_len nci_uart 0 4280 NULL
++mrp_request_join_fndecl_4281_fields mrp_request_join fndecl 4 4281 NULL
+gfs2_getbuf_fndecl_4283_fields gfs2_getbuf fndecl 2 4283 NULL
+route_mtu_cached_xfrm_dst_4288_fields route_mtu_cached xfrm_dst 0 4288 NULL
-+connector_count_drm_fb_helper_4290_fields connector_count drm_fb_helper 0 4290 NULL
+h_next_leaf_blk_ocfs2_extent_block_4292_fields h_next_leaf_blk ocfs2_extent_block 0 4292 NULL
+src_h_drm_plane_state_4303_fields src_h drm_plane_state 0 4303 NULL nohasharray
+maxpacket_musb_qh_4303_fields maxpacket musb_qh 0 4303 &src_h_drm_plane_state_4303_fields
-+nr_gpios_gpio_regulator_config_4306_fields nr_gpios gpio_regulator_config 0 4306 NULL
+rx_frm_len_mask_macb_4310_fields rx_frm_len_mask macb 0 4310 NULL
+bufsize_i2c_hid_4318_fields bufsize i2c_hid 0 4318 NULL
+old_chunk_dm_exception_4333_fields old_chunk dm_exception 0 4333 NULL
+length_rbd_obj_request_4337_fields length rbd_obj_request 0 4337 NULL
-+stripe_len_btrfs_raid_bio_4340_fields stripe_len btrfs_raid_bio 0 4340 NULL
+v4l2_ctrl_new_fndecl_4341_fields v4l2_ctrl_new fndecl 8-12-7-10 4341 NULL
+key_len_neigh_table_4347_fields key_len neigh_table 0 4347 NULL
+scrbuf_size_sisusb_usb_data_4350_fields scrbuf_size sisusb_usb_data 0 4350 NULL
@@ -189501,19 +194123,20 @@ index 0000000..6b5367db
+skb_realloc_headroom_fndecl_4399_fields skb_realloc_headroom fndecl 2 4399 NULL
+leadin_ignore_xpnet_message_4402_fields leadin_ignore xpnet_message 0 4402 NULL
+page_ofs__ntfs_inode_4407_fields page_ofs _ntfs_inode 0 4407 NULL
-+rxe_reg_user_mr_fndecl_4415_fields rxe_reg_user_mr fndecl 2-3 4415 NULL
++rxe_reg_user_mr_fndecl_4415_fields rxe_reg_user_mr fndecl 3-2 4415 NULL
+new_bytenr_backref_node_4416_fields new_bytenr backref_node 0 4416 NULL
+bRefresh_usb_endpoint_descriptor_4444_fields bRefresh usb_endpoint_descriptor 0 4444 NULL
+number_mdu_disk_info_s_4445_fields number mdu_disk_info_s 0 4445 NULL
+width_simplefb_params_4449_fields width simplefb_params 0 4449 NULL
-+nfsd_read_fndecl_4451_fields nfsd_read fndecl 3-5 4451 NULL
++nfsd_read_fndecl_4451_fields nfsd_read fndecl 3 4451 NULL
+ieee80211_key_alloc_fndecl_4452_fields ieee80211_key_alloc fndecl 3 4452 NULL
+mnt_want_write_file_fndecl_4456_fields mnt_want_write_file fndecl 0 4456 NULL
-+sftid_base_tid_info_4462_fields sftid_base tid_info 0 4462 NULL
+fifo_size_fritz_bcs_4463_fields fifo_size fritz_bcs 0 4463 NULL
+kernel_read_fndecl_4468_fields kernel_read fndecl 0-4 4468 NULL nohasharray
+filemap_map_pages_fndecl_4468_fields filemap_map_pages fndecl 2 4468 &kernel_read_fndecl_4468_fields
+complete_request_fndecl_4479_fields complete_request fndecl 2 4479 NULL
++__spi_split_transfer_maxsize_fndecl_4482_fields __spi_split_transfer_maxsize fndecl 4 4482 NULL
++remap_io_mapping_fndecl_4484_fields remap_io_mapping fndecl 3-2 4484 NULL
+hdmi_create_eld_ctl_fndecl_4485_fields hdmi_create_eld_ctl fndecl 2 4485 NULL
+hdr_len_l2tp_session_4486_fields hdr_len l2tp_session 0 4486 NULL nohasharray
+fragments_squashfs_super_block_4486_fields fragments squashfs_super_block 0 4486 &hdr_len_l2tp_session_4486_fields
@@ -189522,7 +194145,6 @@ index 0000000..6b5367db
+load_xattr_datum_fndecl_4505_fields load_xattr_datum fndecl 0 4505 NULL
+__mei_cl_recv_fndecl_4519_fields __mei_cl_recv fndecl 0-3 4519 NULL
+result_MOSDOpReply_4530_fields result MOSDOpReply 0 4530 NULL
-+to_irq_gpio_chip_4534_fields to_irq gpio_chip 0 4534 NULL
+ovl_posix_acl_xattr_set_fndecl_4535_fields ovl_posix_acl_xattr_set fndecl 6 4535 NULL
+log_ind_tbl_size_ib_rwq_ind_table_init_attr_4542_fields log_ind_tbl_size ib_rwq_ind_table_init_attr 0 4542 NULL
+nfs3_proc_readdir_fndecl_4544_fields nfs3_proc_readdir fndecl 5 4544 NULL
@@ -189532,66 +194154,65 @@ index 0000000..6b5367db
+qdepth_uas_dev_info_4551_fields qdepth uas_dev_info 0 4551 NULL
+__collapse_huge_page_swapin_fndecl_4553_fields __collapse_huge_page_swapin fndecl 3 4553 NULL nohasharray
+data_len_o2net_msg_4553_fields data_len o2net_msg 0 4553 &__collapse_huge_page_swapin_fndecl_4553_fields
-+usbnet_write_cmd_fndecl_4556_fields usbnet_write_cmd fndecl 7 4556 NULL
+hwcursor_size_sis_video_info_4560_fields hwcursor_size sis_video_info 0 4560 NULL
+channels_snd_korg1212_4562_fields channels snd_korg1212 0 4562 NULL
+usbvision_rvmalloc_fndecl_4564_fields usbvision_rvmalloc fndecl 1 4564 NULL
+word1_pkt_stat_desc_4565_fields word1 pkt_stat_desc 0 4565 NULL
+far_copies_geom_4570_fields far_copies geom 0 4570 NULL
+dlen_nft_set_4577_fields dlen nft_set 0 4577 NULL
++gen_tipc_mon_domain_4585_fields gen tipc_mon_domain 0 4585 NULL
+netvsc_recv_callback_fndecl_4592_fields netvsc_recv_callback fndecl 6 4592 NULL
+rx_buf_sz_gem_4593_fields rx_buf_sz gem 0 4593 NULL nohasharray
+cxd2841er_read_regs_fndecl_4593_fields cxd2841er_read_regs fndecl 5 4593 &rx_buf_sz_gem_4593_fields
++__efi_memmap_alloc_early_fndecl_4601_fields __efi_memmap_alloc_early fndecl 1-0 4601 NULL
+header_size_partition_4606_fields header_size partition 0 4606 NULL
+btrfs_del_inode_extref_fndecl_4607_fields btrfs_del_inode_extref fndecl 4 4607 NULL
-+hdr_dwords_verbs_txreq_4608_fields hdr_dwords verbs_txreq 0 4608 NULL
+max_event_log_size_iwl_base_params_4612_fields max_event_log_size iwl_base_params 0 4612 NULL
+sxgbe_change_mtu_fndecl_4613_fields sxgbe_change_mtu fndecl 2 4613 NULL
-+tm6000_i2c_send_regs_fndecl_4617_fields tm6000_i2c_send_regs fndecl 5 4617 NULL
+cksumlength_gss_krb5_enctype_4630_fields cksumlength gss_krb5_enctype 0 4630 NULL
+tcam_size_mc5_4631_fields tcam_size mc5 0 4631 NULL nohasharray
+size_minus_one_mxt_object_4631_fields size_minus_one mxt_object 0 4631 &tcam_size_mc5_4631_fields
+total_bytes__osd_req_data_segment_4634_fields total_bytes _osd_req_data_segment 0 4634 NULL
-+setup_efi_state_fndecl_4639_fields setup_efi_state fndecl 4-5-2-3 4639 NULL
++setup_efi_state_fndecl_4639_fields setup_efi_state fndecl 5-2-4-3 4639 NULL
+irq_nvecs_bnx2_4644_fields irq_nvecs bnx2 0 4644 NULL
+read_eeprom_bytes_fndecl_4649_fields read_eeprom_bytes fndecl 4 4649 NULL
+size_simple_transaction_argresp_4650_fields size simple_transaction_argresp 0 4650 NULL
-+ie_len_mesh_setup_4661_fields ie_len mesh_setup 0 4661 NULL
+buffer_size_smsusb_device_t_4667_fields buffer_size smsusb_device_t 0 4667 NULL
+overridesize_vardecl_nandsim_c_4668_fields overridesize vardecl_nandsim.c 0 4668 NULL
+r10_sync_page_io_fndecl_4672_fields r10_sync_page_io fndecl 3-2 4672 NULL
+bytenr_btrfs_ordered_sum_4679_fields bytenr btrfs_ordered_sum 0 4679 NULL
-+dm_get_reserved_bio_based_ios_fndecl_4680_fields dm_get_reserved_bio_based_ios fndecl 0 4680 NULL
+l1_dirbase_vardecl_acpi_extlog_c_4681_fields l1_dirbase vardecl_acpi_extlog.c 0 4681 NULL
-+_rtl92s_get_h2c_cmdlen_fndecl_4683_fields _rtl92s_get_h2c_cmdlen fndecl 0 4683 NULL
++drm_rect_calc_hscale_relaxed_fndecl_4683_fields drm_rect_calc_hscale_relaxed fndecl 3-4-0 4683 NULL nohasharray
++_rtl92s_get_h2c_cmdlen_fndecl_4683_fields _rtl92s_get_h2c_cmdlen fndecl 0 4683 &drm_rect_calc_hscale_relaxed_fndecl_4683_fields
+snd_pcm_hw_param_near_fndecl_4691_fields snd_pcm_hw_param_near fndecl 4 4691 NULL
+optlen_ip_options_4698_fields optlen ip_options 0 4698 NULL
+bpf_func_bpf_prog_4701_fields bpf_func bpf_prog 0 4701 NULL
+xdr_decode_word_fndecl_4707_fields xdr_decode_word fndecl 2 4707 NULL
+count_user_sgentry64_4714_fields count user_sgentry64 0 4714 NULL
+hpfs_ea_remove_fndecl_4717_fields hpfs_ea_remove fndecl 4-2 4717 NULL
-+bits_pca955x_chipdef_4718_fields bits pca955x_chipdef 0 4718 NULL
+next_fpm_addr_i40iw_hmc_pble_rsrc_4719_fields next_fpm_addr i40iw_hmc_pble_rsrc 0 4719 NULL
-+cur_swap_swap_map_handle_4724_fields cur_swap swap_map_handle 0 4724 NULL
+next_page_mpage_da_data_4726_fields next_page mpage_da_data 0 4726 NULL
+displacement_bts_phys_4728_fields displacement bts_phys 0 4728 NULL
+net2272_read_packet_fndecl_4735_fields net2272_read_packet fndecl 4 4735 NULL
+ndigits_ecdh_ctx_4737_fields ndigits ecdh_ctx 0 4737 NULL
+qla82xx_pci_mem_read_direct_fndecl_4739_fields qla82xx_pci_mem_read_direct fndecl 2 4739 NULL
-+smk_set_cipso_fndecl_4744_fields smk_set_cipso fndecl 3 4744 NULL
++root_dm_cache_metadata_4742_fields root dm_cache_metadata 0 4742 NULL
+num_srq_mthca_profile_4747_fields num_srq mthca_profile 0 4747 NULL
+netlbl_catmap_setrng_fndecl_4749_fields netlbl_catmap_setrng fndecl 2 4749 NULL
+page_offset_i40e_rx_buffer_4750_fields page_offset i40e_rx_buffer 0 4750 NULL
+format_count_drm_plane_4754_fields format_count drm_plane 0 4754 NULL
+maxpacket_sl811h_ep_4755_fields maxpacket sl811h_ep 0 4755 NULL
-+igbvf_receive_skb_fndecl_4757_fields igbvf_receive_skb fndecl 5 4757 NULL
++igbvf_receive_skb_fndecl_4757_fields igbvf_receive_skb fndecl 5 4757 NULL nohasharray
++bfr_len_hash_wr_param_4757_fields bfr_len hash_wr_param 0 4757 &igbvf_receive_skb_fndecl_4757_fields
+read_reg_cc770_priv_4760_fields read_reg cc770_priv 0 4760 NULL
++fw_load_from_user_helper_fndecl_4763_fields fw_load_from_user_helper fndecl 0 4763 NULL
+max_i2s_chan_img_i2s_in_4765_fields max_i2s_chan img_i2s_in 0 4765 NULL
+iomap_begin_iomap_ops_4769_fields iomap_begin iomap_ops 0 4769 NULL nohasharray
+map_sz_cyttsp4_sysinfo_ofs_4769_fields map_sz cyttsp4_sysinfo_ofs 0 4769 &iomap_begin_iomap_ops_4769_fields
+length_property_4777_fields length property 0 4777 NULL
+stride_snd_usb_endpoint_4779_fields stride snd_usb_endpoint 0 4779 NULL
-+qed_ilt_cli_blk_fill_fndecl_4780_fields qed_ilt_cli_blk_fill fndecl 4-5 4780 NULL
++max_tfr_mmc_test_area_4780_fields max_tfr mmc_test_area 0 4780 NULL nohasharray
++qed_ilt_cli_blk_fill_fndecl_4780_fields qed_ilt_cli_blk_fill fndecl 5-4 4780 &max_tfr_mmc_test_area_4780_fields
+n_channels_cfg80211_scan_request_4785_fields n_channels cfg80211_scan_request 0 4785 NULL nohasharray
+crtc_vsync_start_drm_display_mode_4785_fields crtc_vsync_start drm_display_mode 0 4785 &n_channels_cfg80211_scan_request_4785_fields
+fmc_send_cmd_fndecl_4800_fields fmc_send_cmd fndecl 5-0 4800 NULL
@@ -189599,8 +194220,8 @@ index 0000000..6b5367db
+set_indirect_ea_fndecl_4810_fields set_indirect_ea fndecl 5-3 4810 NULL
+INFTL_deleteblock_fndecl_4811_fields INFTL_deleteblock fndecl 2 4811 NULL
+length_reiserfs_security_handle_4813_fields length reiserfs_security_handle 0 4813 NULL
-+buffer_size_ide_tape_obj_4815_fields buffer_size ide_tape_obj 0 4815 NULL nohasharray
-+width_tw686x_video_channel_4815_fields width tw686x_video_channel 0 4815 &buffer_size_ide_tape_obj_4815_fields
++width_tw686x_video_channel_4815_fields width tw686x_video_channel 0 4815 NULL nohasharray
++buffer_size_ide_tape_obj_4815_fields buffer_size ide_tape_obj 0 4815 &width_tw686x_video_channel_4815_fields
+drm_mode_vrefresh_fndecl_4817_fields drm_mode_vrefresh fndecl 0 4817 NULL
+ov534_reg_read_fndecl_4820_fields ov534_reg_read fndecl 0 4820 NULL
+ext4_dir_llseek_fndecl_4826_fields ext4_dir_llseek fndecl 2 4826 NULL
@@ -189615,35 +194236,33 @@ index 0000000..6b5367db
+hash_size_cache_detail_4852_fields hash_size cache_detail 0 4852 NULL
+iommu_bit_gk20a_instmem_4857_fields iommu_bit gk20a_instmem 0 4857 NULL nohasharray
+start__iohandle_4857_fields start _iohandle 0 4857 &iommu_bit_gk20a_instmem_4857_fields
-+max_tgts_snic_fw_info_4861_fields max_tgts snic_fw_info 0 4861 NULL
+encode_path_fndecl_4865_fields encode_path fndecl 3 4865 NULL
++s_desc_per_block_ext4_sb_info_4867_fields s_desc_per_block ext4_sb_info 0 4867 NULL
+i40e_reserve_msix_vectors_fndecl_4870_fields i40e_reserve_msix_vectors fndecl 0 4870 NULL
+i_lenEAttr_udf_inode_info_4872_fields i_lenEAttr udf_inode_info 0 4872 NULL nohasharray
+find_overflow_devnum_fndecl_4872_fields find_overflow_devnum fndecl 0 4872 &i_lenEAttr_udf_inode_info_4872_fields
++x_drm_mode_set_4876_fields x drm_mode_set 0 4876 NULL
+out_args_qlcnic_mailbox_metadata_4881_fields out_args qlcnic_mailbox_metadata 0 4881 NULL
-+op_remote_addr_rm_atomic_op_4890_fields op_remote_addr rm_atomic_op 0 4890 NULL
-+mlx4_get_eqs_per_port_fndecl_4892_fields mlx4_get_eqs_per_port fndecl 0 4892 NULL
-+credits_send_context_info_4894_fields credits send_context_info 0 4894 NULL nohasharray
-+snd_interval_refine_min_fndecl_4894_fields snd_interval_refine_min fndecl 2 4894 &credits_send_context_info_4894_fields nohasharray
++snd_interval_refine_min_fndecl_4894_fields snd_interval_refine_min fndecl 2 4894 NULL nohasharray
+sc_datablk_cnt_nilfs_sc_info_4894_fields sc_datablk_cnt nilfs_sc_info 0 4894 &snd_interval_refine_min_fndecl_4894_fields
+head_circ_buf_4897_fields head circ_buf 0 4897 NULL
+wMaxSegmentSize_usb_cdc_ether_desc_4898_fields wMaxSegmentSize usb_cdc_ether_desc 0 4898 NULL
-+upper_size_to_lower_size_fndecl_4899_fields upper_size_to_lower_size fndecl 2-0 4899 NULL
++upper_size_to_lower_size_fndecl_4899_fields upper_size_to_lower_size fndecl 0-2 4899 NULL
+need_tx_headroom_prism2_helper_functions_4902_fields need_tx_headroom prism2_helper_functions 0 4902 NULL
-+build_verbs_ulp_payload_fndecl_4906_fields build_verbs_ulp_payload fndecl 3 4906 NULL
+rcvhdrq_size_hfi1_ctxtdata_4912_fields rcvhdrq_size hfi1_ctxtdata 0 4912 NULL
+leaf_copy_items_fndecl_4923_fields leaf_copy_items fndecl 5 4923 NULL
+ui_size_ubifs_inode_4934_fields ui_size ubifs_inode 0 4934 NULL
+bpp_drm_mode_fb_cmd_4936_fields bpp drm_mode_fb_cmd 0 4936 NULL
+mlx5_ib_db_map_user_fndecl_4950_fields mlx5_ib_db_map_user fndecl 2 4950 NULL nohasharray
-+update_tind_extent_range_fndecl_4950_fields update_tind_extent_range fndecl 3 4950 &mlx5_ib_db_map_user_fndecl_4950_fields
++update_tind_extent_range_fndecl_4950_fields update_tind_extent_range fndecl 3 4950 &mlx5_ib_db_map_user_fndecl_4950_fields nohasharray
++read_tape_fndecl_4950_fields read_tape fndecl 2 4950 &update_tind_extent_range_fndecl_4950_fields
+myri10ge_get_txrx_fndecl_4953_fields myri10ge_get_txrx fndecl 2 4953 NULL
+radeon_align_pitch_fndecl_4969_fields radeon_align_pitch fndecl 0-2 4969 NULL
+len_htc_record_hdr_4978_fields len htc_record_hdr 0 4978 NULL
+len_i40iw_sge_4979_fields len i40iw_sge 0 4979 NULL
+t_data_nents_se_cmd_4981_fields t_data_nents se_cmd 0 4981 NULL
+buffer_size_most_channel_config_4986_fields buffer_size most_channel_config 0 4986 NULL
-+stripe_unit_ore_layout_4991_fields stripe_unit ore_layout 0 4991 NULL
++scif_send_fndecl_4988_fields scif_send fndecl 3 4988 NULL
+__mt7601u_dma_fw_fndecl_4994_fields __mt7601u_dma_fw fndecl 4 4994 NULL
+kmem_cache_create_fndecl_5007_fields kmem_cache_create fndecl 2-3 5007 NULL
+read_int_fndecl_5009_fields read_int fndecl 0 5009 NULL
@@ -189651,29 +194270,28 @@ index 0000000..6b5367db
+xfs_qm_dqget_fndecl_5012_fields xfs_qm_dqget fndecl 0 5012 NULL nohasharray
+o2net_send_message_fndecl_5012_fields o2net_send_message fndecl 4 5012 &xfs_qm_dqget_fndecl_5012_fields nohasharray
+mgmt_limited_event_fndecl_5012_fields mgmt_limited_event fndecl 4 5012 &o2net_send_message_fndecl_5012_fields
-+xenvif_gop_skb_fndecl_5015_fields xenvif_gop_skb fndecl 0 5015 NULL
+info1_htt_rx_indication_hdr_5016_fields info1 htt_rx_indication_hdr 0 5016 NULL
+hard_header_len_net_device_5025_fields hard_header_len net_device 0 5025 NULL
+ubifs_unpack_bits_fndecl_5033_fields ubifs_unpack_bits fndecl 0-3 5033 NULL
+ext2_xattr_security_set_fndecl_5039_fields ext2_xattr_security_set fndecl 6 5039 NULL nohasharray
+nr_pages_firmware_buf_5039_fields nr_pages firmware_buf 0 5039 &ext2_xattr_security_set_fndecl_5039_fields
-+device_tg3_dev_id_5042_fields device tg3_dev_id 0 5042 NULL nohasharray
-+mlx4_log_num_mgm_entry_size_vardecl_5042_fields mlx4_log_num_mgm_entry_size vardecl 0 5042 &device_tg3_dev_id_5042_fields
++device_tg3_dev_id_5042_fields device tg3_dev_id 0 5042 NULL
+start_vhost_umem_node_5046_fields start vhost_umem_node 0 5046 NULL
+index_squashfs_dir_index_5053_fields index squashfs_dir_index 0 5053 NULL
+rcvidx_IsdnCardState_5055_fields rcvidx IsdnCardState 0 5055 NULL nohasharray
+compress_raw_buf_fndecl_5055_fields compress_raw_buf fndecl 0 5055 &rcvidx_IsdnCardState_5055_fields
++bbr_lt_bw_interval_done_fndecl_5056_fields bbr_lt_bw_interval_done fndecl 2 5056 NULL
+ext4_llseek_fndecl_5060_fields ext4_llseek fndecl 2 5060 NULL
++reg_create_fndecl_5061_fields reg_create fndecl 6 5061 NULL
+len_BufferControl_5068_fields len BufferControl 0 5068 NULL
-+cmd_q_count_ccp_device_5069_fields cmd_q_count ccp_device 0 5069 NULL
+size_compat_arpt_replace_5071_fields size compat_arpt_replace 0 5071 NULL
+ie_len_cfg80211_scan_request_5073_fields ie_len cfg80211_scan_request 0 5073 NULL
-+brcmf_sdiod_txglomsz_vardecl_common_c_5079_fields brcmf_sdiod_txglomsz vardecl_common.c 0 5079 NULL
++chcr_aes_xts_setkey_fndecl_5079_fields chcr_aes_xts_setkey fndecl 3 5079 NULL nohasharray
++brcmf_sdiod_txglomsz_vardecl_common_c_5079_fields brcmf_sdiod_txglomsz vardecl_common.c 0 5079 &chcr_aes_xts_setkey_fndecl_5079_fields
+udf_do_extend_file_fndecl_5093_fields udf_do_extend_file fndecl 4 5093 NULL nohasharray
+domain_a_len_ccp_ecc_point_math_5093_fields domain_a_len ccp_ecc_point_math 0 5093 &udf_do_extend_file_fndecl_5093_fields
+at25_ee_write_fndecl_5099_fields at25_ee_write fndecl 4-2 5099 NULL
+default_file_splice_write_fndecl_5103_fields default_file_splice_write fndecl 4 5103 NULL
-+efi_get_runtime_map_desc_size_fndecl_5111_fields efi_get_runtime_map_desc_size fndecl 0 5111 NULL
+mem_eni_dev_5112_fields mem eni_dev 0 5112 NULL
+num_banks_adf_hw_device_data_5115_fields num_banks adf_hw_device_data 0 5115 NULL
+__link_buffer_fndecl_5117_fields __link_buffer fndecl 2 5117 NULL nohasharray
@@ -189681,13 +194299,13 @@ index 0000000..6b5367db
+num_gpio_tc3589x_5118_fields num_gpio tc3589x 0 5118 NULL
+replay_log_leb_fndecl_5123_fields replay_log_leb fndecl 3 5123 NULL
+ocfs2_trim_extent_fndecl_5124_fields ocfs2_trim_extent fndecl 0-4-3 5124 NULL
-+ccp_init_sg_workarea_fndecl_5128_fields ccp_init_sg_workarea fndecl 4 5128 NULL
++data_length_core_rx_gsi_offload_cqe_5128_fields data_length core_rx_gsi_offload_cqe 0 5128 NULL
+fuse_dev_splice_write_fndecl_5131_fields fuse_dev_splice_write fndecl 4 5131 NULL
+nfs4_init_callback_netid_fndecl_5134_fields nfs4_init_callback_netid fndecl 0 5134 NULL
+rate_num_snd_pcm_hw_params_5135_fields rate_num snd_pcm_hw_params 0 5135 NULL
-+channel_count_il_priv_5138_fields channel_count il_priv 0 5138 NULL nohasharray
-+rlen_si2157_cmd_5138_fields rlen si2157_cmd 0 5138 &channel_count_il_priv_5138_fields
-+__nvme_submit_user_cmd_fndecl_5142_fields __nvme_submit_user_cmd fndecl 4-7 5142 NULL
++rlen_si2157_cmd_5138_fields rlen si2157_cmd 0 5138 NULL nohasharray
++channel_count_il_priv_5138_fields channel_count il_priv 0 5138 &rlen_si2157_cmd_5138_fields
++__nvme_submit_user_cmd_fndecl_5142_fields __nvme_submit_user_cmd fndecl 6-4-7 5142 NULL
+xefi_blockcount_xfs_extent_free_item_5146_fields xefi_blockcount xfs_extent_free_item 0 5146 NULL nohasharray
+csio_scsi_eqsize_vardecl_5146_fields csio_scsi_eqsize vardecl 0 5146 &xefi_blockcount_xfs_extent_free_item_5146_fields
+ocfs2_iget_fndecl_5154_fields ocfs2_iget fndecl 2 5154 NULL
@@ -189717,17 +194335,20 @@ index 0000000..6b5367db
+xlog_find_verify_log_record_fndecl_5285_fields xlog_find_verify_log_record fndecl 2 5285 NULL
+count_mpc8xxx_spi_5287_fields count mpc8xxx_spi 0 5287 NULL
+slba_nvme_dsm_range_5292_fields slba nvme_dsm_range 0 5292 NULL
-+lpt_hght_ubifs_info_5299_fields lpt_hght ubifs_info 0 5299 NULL nohasharray
-+dma_offset_freelQ_5299_fields dma_offset freelQ 0 5299 &lpt_hght_ubifs_info_5299_fields
++dma_offset_freelQ_5299_fields dma_offset freelQ 0 5299 NULL nohasharray
++lpt_hght_ubifs_info_5299_fields lpt_hght ubifs_info 0 5299 &dma_offset_freelQ_5299_fields
++tx_nr_rings_bnxt_5306_fields tx_nr_rings bnxt 0 5306 NULL
++max_baud_rate_pl2303_type_data_5309_fields max_baud_rate pl2303_type_data 0 5309 NULL
+beep_amp_alc_spec_5315_fields beep_amp alc_spec 0 5315 NULL
+matchsize_xt_match_5320_fields matchsize xt_match 0 5320 NULL
-+___alloc_bootmem_node_fndecl_5329_fields ___alloc_bootmem_node fndecl 3-4-5 5329 NULL
++___alloc_bootmem_node_fndecl_5329_fields ___alloc_bootmem_node fndecl 3-2-4-5 5329 NULL
+devcd_read_from_sgtable_fndecl_5341_fields devcd_read_from_sgtable fndecl 2-5-3 5341 NULL nohasharray
+jfs_quota_read_fndecl_5341_fields jfs_quota_read fndecl 5 5341 &devcd_read_from_sgtable_fndecl_5341_fields
-+lock_and_cleanup_extent_if_need_fndecl_5347_fields lock_and_cleanup_extent_if_need fndecl 5-4 5347 NULL
++lock_and_cleanup_extent_if_need_fndecl_5347_fields lock_and_cleanup_extent_if_need fndecl 5-4 5347 NULL nohasharray
++mlx5_sriov_enable_fndecl_5347_fields mlx5_sriov_enable fndecl 2 5347 &lock_and_cleanup_extent_if_need_fndecl_5347_fields
+data_count_iscsi_task_5350_fields data_count iscsi_task 0 5350 NULL
-+brcmf_usb_send_ctl_fndecl_5357_fields brcmf_usb_send_ctl fndecl 3 5357 NULL nohasharray
-+fmc_device_register_n_fndecl_5357_fields fmc_device_register_n fndecl 2 5357 &brcmf_usb_send_ctl_fndecl_5357_fields
++brcmf_usb_send_ctl_fndecl_5357_fields brcmf_usb_send_ctl fndecl 3 5357 NULL
++result_cpuhp_cpu_state_5358_fields result cpuhp_cpu_state 0 5358 NULL
+michael_mic_fndecl_5363_fields michael_mic fndecl 5 5363 NULL
+nfs4_proc_readdir_fndecl_5367_fields nfs4_proc_readdir fndecl 5 5367 NULL
+xfs_buf_read_uncached_fndecl_5369_fields xfs_buf_read_uncached fndecl 2-3 5369 NULL
@@ -189737,27 +194358,23 @@ index 0000000..6b5367db
+block_size_squashfs_sb_info_5378_fields block_size squashfs_sb_info 0 5378 &max_header_size_irlan_client_cb_5378_fields
+skbprio_ip_set_ext_5381_fields skbprio ip_set_ext 0 5381 NULL nohasharray
+flash_dev_cache_miss_fndecl_5381_fields flash_dev_cache_miss fndecl 4 5381 &skbprio_ip_set_ext_5381_fields
-+fuse_perform_write_fndecl_5386_fields fuse_perform_write fndecl 0-4 5386 NULL
-+max_gen_clk_probe_fndecl_5389_fields max_gen_clk_probe fndecl 5 5389 NULL
++fuse_perform_write_fndecl_5386_fields fuse_perform_write fndecl 4-0 5386 NULL
+check_iommu_size_fndecl_5390_fields check_iommu_size fndecl 0-2-1 5390 NULL
+pcibios_window_alignment_fndecl_5391_fields pcibios_window_alignment fndecl 0 5391 NULL
+error_thin_bio_list_fndecl_5394_fields error_thin_bio_list fndecl 3 5394 NULL
-+remap_oldmem_pfn_checked_fndecl_5398_fields remap_oldmem_pfn_checked fndecl 2-3 5398 NULL nohasharray
-+snd_hda_get_connections_fndecl_5398_fields snd_hda_get_connections fndecl 0 5398 &remap_oldmem_pfn_checked_fndecl_5398_fields
+len_iw_mgmt_info_element_5411_fields len iw_mgmt_info_element 0 5411 NULL
-+rq_size_i40iw_puda_rsrc_info_5413_fields rq_size i40iw_puda_rsrc_info 0 5413 NULL
+ies_len_user_conn_req_5414_fields ies_len user_conn_req 0 5414 NULL
-+value_xen_pci_op_5416_fields value xen_pci_op 0 5416 NULL
+allocmin_nilfs_sufile_info_5418_fields allocmin nilfs_sufile_info 0 5418 NULL
+reg_size_intel_iommu_5423_fields reg_size intel_iommu 0 5423 NULL nohasharray
+nilfs_sufile_truncate_range_fndecl_5423_fields nilfs_sufile_truncate_range fndecl 3-2 5423 &reg_size_intel_iommu_5423_fields
++port_mad_size_fndecl_5434_fields port_mad_size fndecl 0 5434 NULL
+sigmadsp_read_i2c_fndecl_5435_fields sigmadsp_read_i2c fndecl 4 5435 NULL
+size_drm_radeon_gem_create_5440_fields size drm_radeon_gem_create 0 5440 NULL
+cap_nvme_loop_ctrl_5458_fields cap nvme_loop_ctrl 0 5458 NULL
+vlen_nfsd_writeargs_5461_fields vlen nfsd_writeargs 0 5461 NULL
+btrfs_fiemap_fndecl_5462_fields btrfs_fiemap fndecl 4-3 5462 NULL
-+num_stations_il_priv_5465_fields num_stations il_priv 0 5465 NULL
+acpi_register_gsi_ioapic_fndecl_5477_fields acpi_register_gsi_ioapic fndecl 2 5477 NULL
++efi_memmap_install_fndecl_5480_fields efi_memmap_install fndecl 2-1 5480 NULL
+max_pkeys_mthca_dev_lim_5481_fields max_pkeys mthca_dev_lim 0 5481 NULL
+virtio_transport_put_credit_fndecl_5482_fields virtio_transport_put_credit fndecl 2 5482 NULL
+valuelen_xfs_attr_sf_entry_5490_fields valuelen xfs_attr_sf_entry 0 5490 NULL
@@ -189765,7 +194382,6 @@ index 0000000..6b5367db
+s_fpb_ufs_sb_private_info_5504_fields s_fpb ufs_sb_private_info 0 5504 NULL
+__tipc_sendmsg_fndecl_5510_fields __tipc_sendmsg fndecl 3 5510 NULL
+vmw_execbuf_submit_cmdbuf_fndecl_5516_fields vmw_execbuf_submit_cmdbuf fndecl 3 5516 NULL
-+smk_write_rules_list_fndecl_5526_fields smk_write_rules_list fndecl 3 5526 NULL
+line_slgt_info_5527_fields line slgt_info 0 5527 NULL
+ceph_tcp_sendpage_fndecl_5531_fields ceph_tcp_sendpage fndecl 0-4 5531 NULL
+batadv_arp_get_type_fndecl_5538_fields batadv_arp_get_type fndecl 3 5538 NULL nohasharray
@@ -189783,7 +194399,8 @@ index 0000000..6b5367db
+nblocks_range2trim_5574_fields nblocks range2trim 0 5574 NULL
+target_check_max_data_sg_nents_fndecl_5575_fields target_check_max_data_sg_nents fndecl 3 5575 NULL
+i2c_read_eeprom_fndecl_5583_fields i2c_read_eeprom fndecl 5 5583 NULL
-+nfqnl_get_sk_secctx_fndecl_5586_fields nfqnl_get_sk_secctx fndecl 0 5586 NULL
++nfqnl_get_sk_secctx_fndecl_5586_fields nfqnl_get_sk_secctx fndecl 0 5586 NULL nohasharray
++from_buffer_fndecl_5586_fields from_buffer fndecl 3 5586 &nfqnl_get_sk_secctx_fndecl_5586_fields
+bg_itable_unused_lo_ext4_group_desc_5594_fields bg_itable_unused_lo ext4_group_desc 0 5594 NULL
+memory_map_bottom_up_fndecl_5599_fields memory_map_bottom_up fndecl 1 5599 NULL
+scsiback_send_response_fndecl_5601_fields scsiback_send_response fndecl 4 5601 NULL
@@ -189799,7 +194416,6 @@ index 0000000..6b5367db
+platform_mmio_alloc_vardecl_platform_pci_c_5635_fields platform_mmio_alloc vardecl_platform-pci.c 0 5635 &screen_width_vardecl_hyperv_fb_c_5635_fields
+num_counters_compat_ip6t_replace_5636_fields num_counters compat_ip6t_replace 0 5636 NULL
+udpv6_recvmsg_fndecl_5638_fields udpv6_recvmsg fndecl 3 5638 NULL
-+efi_memdesc_size_efi_info_5654_fields efi_memdesc_size efi_info 0 5654 NULL
+__spi_map_msg_fndecl_5657_fields __spi_map_msg fndecl 0 5657 NULL nohasharray
+dev_id_pci_id_descr_5657_fields dev_id pci_id_descr 0 5657 &__spi_map_msg_fndecl_5657_fields
+vmw_kms_stdu_dma_fndecl_5659_fields vmw_kms_stdu_dma fndecl 7 5659 NULL
@@ -189809,15 +194425,15 @@ index 0000000..6b5367db
+blklen_regcache_rbtree_node_5679_fields blklen regcache_rbtree_node 0 5679 NULL nohasharray
+mtu_ppp_channel_5679_fields mtu ppp_channel 0 5679 &blklen_regcache_rbtree_node_5679_fields
+ext4_es_alloc_extent_fndecl_5681_fields ext4_es_alloc_extent fndecl 2-3 5681 NULL
-+_find_first_zero_bit_le_fndecl_5684_fields _find_first_zero_bit_le fndecl 0 5684 NULL
-+bio_alloc_mddev_fndecl_5685_fields bio_alloc_mddev fndecl 2 5685 NULL
+lbtf_cmd_async_fndecl_5691_fields lbtf_cmd_async fndecl 4 5691 NULL
+s_blocks_count_ext2_super_block_5695_fields s_blocks_count ext2_super_block 0 5695 NULL
+write_bytes_to_xdr_buf_fndecl_5702_fields write_bytes_to_xdr_buf fndecl 4-2 5702 NULL
+virtnet_change_mtu_fndecl_5709_fields virtnet_change_mtu fndecl 2 5709 NULL
+zm_wmfw_adsp1_alg_hdr_5710_fields zm wmfw_adsp1_alg_hdr 0 5710 NULL
++sys_fcntl_fndecl_5712_fields sys_fcntl fndecl 3 5712 NULL
+vt_hdr_vxfs_typed_5715_fields vt_hdr vxfs_typed 0 5715 NULL
+hfsplus_get_block_fndecl_5725_fields hfsplus_get_block fndecl 2 5725 NULL
++max_order_mlx4_buddy_5738_fields max_order mlx4_buddy 0 5738 NULL
+max_phys_sect_nvm_dev_ops_5745_fields max_phys_sect nvm_dev_ops 0 5745 NULL
+scrbuf_sisusb_usb_data_5749_fields scrbuf sisusb_usb_data 0 5749 NULL
+skb_checksum_maybe_trim_fndecl_5755_fields skb_checksum_maybe_trim fndecl 2 5755 NULL
@@ -189825,21 +194441,20 @@ index 0000000..6b5367db
+setup_extent_mapping_fndecl_5768_fields setup_extent_mapping fndecl 3-2-4 5768 NULL
+xfs_map_at_offset_fndecl_5785_fields xfs_map_at_offset fndecl 4 5785 NULL
+mc_handle_file_pte_fndecl_5787_fields mc_handle_file_pte fndecl 2 5787 NULL
-+bq32k_read_fndecl_5789_fields bq32k_read fndecl 4 5789 NULL
++qed_ll2b_complete_rx_gsi_packet_fndecl_5789_fields qed_ll2b_complete_rx_gsi_packet fndecl 5 5789 NULL nohasharray
++bq32k_read_fndecl_5789_fields bq32k_read fndecl 4 5789 &qed_ll2b_complete_rx_gsi_packet_fndecl_5789_fields
+pci_mem_start_vardecl_5790_fields pci_mem_start vardecl 0 5790 NULL
-+msix_count_i40e_info_5794_fields msix_count i40e_info 0 5794 NULL nohasharray
-+init_req_packet_fndecl_5794_fields init_req_packet fndecl 4 5794 &msix_count_i40e_info_5794_fields
++rx_hard_ack_rxrpc_call_5791_fields rx_hard_ack rxrpc_call 0 5791 NULL
++init_req_packet_fndecl_5794_fields init_req_packet fndecl 4 5794 NULL
+p9_check_zc_errors_fndecl_5806_fields p9_check_zc_errors fndecl 4 5806 NULL
+usb_ftdi_elan_edset_output_fndecl_5808_fields usb_ftdi_elan_edset_output fndecl 0 5808 NULL
-+NumPhys__CONFIG_PAGE_SAS_EXPANDER_0_5809_fields NumPhys _CONFIG_PAGE_SAS_EXPANDER_0 0 5809 NULL nohasharray
-+ubifs_recover_size_accum_fndecl_5809_fields ubifs_recover_size_accum fndecl 4 5809 &NumPhys__CONFIG_PAGE_SAS_EXPANDER_0_5809_fields
-+length_uwb_ie_hdr_5811_fields length uwb_ie_hdr 0 5811 NULL nohasharray
-+firmware_data_write_fndecl_5811_fields firmware_data_write fndecl 6-5 5811 &length_uwb_ie_hdr_5811_fields
++ubifs_recover_size_accum_fndecl_5809_fields ubifs_recover_size_accum fndecl 4 5809 NULL nohasharray
++NumPhys__CONFIG_PAGE_SAS_EXPANDER_0_5809_fields NumPhys _CONFIG_PAGE_SAS_EXPANDER_0 0 5809 &ubifs_recover_size_accum_fndecl_5809_fields
++firmware_data_write_fndecl_5811_fields firmware_data_write fndecl 6-5 5811 NULL nohasharray
++length_uwb_ie_hdr_5811_fields length uwb_ie_hdr 0 5811 &firmware_data_write_fndecl_5811_fields
+ncp_read_bounce_fndecl_5812_fields ncp_read_bounce fndecl 8 5812 NULL
+compr_flush_fndecl_5826_fields compr_flush fndecl 2 5826 NULL
-+dvbdmx_write_fndecl_5836_fields dvbdmx_write fndecl 3 5836 NULL
-+start_uffdio_range_5837_fields start uffdio_range 0 5837 NULL nohasharray
-+synproxy_options_size_fndecl_5837_fields synproxy_options_size fndecl 0 5837 &start_uffdio_range_5837_fields
++synproxy_options_size_fndecl_5837_fields synproxy_options_size fndecl 0 5837 NULL
+i2c_mux_add_adapter_fndecl_5840_fields i2c_mux_add_adapter fndecl 2 5840 NULL
+transferred_vardecl_shuttle_usbat_c_5845_fields transferred vardecl_shuttle_usbat.c 0 5845 NULL
+sound_insert_unit_fndecl_5861_fields sound_insert_unit fndecl 3-4 5861 NULL
@@ -189849,21 +194464,22 @@ index 0000000..6b5367db
+get_rx_status_altera_dmaops_5878_fields get_rx_status altera_dmaops 0 5878 NULL nohasharray
+sq_db_page_mthca_create_qp_5878_fields sq_db_page mthca_create_qp 0 5878 &get_rx_status_altera_dmaops_5878_fields
+cydata_ofsh_cyttsp4_sysinfo_data_5887_fields cydata_ofsh cyttsp4_sysinfo_data 0 5887 NULL
-+entity_internal_idx_max_media_device_5890_fields entity_internal_idx_max media_device 0 5890 NULL nohasharray
-+max_sg_count_hpt_iop_request_get_config_5890_fields max_sg_count hpt_iop_request_get_config 0 5890 &entity_internal_idx_max_media_device_5890_fields
++max_sg_count_hpt_iop_request_get_config_5890_fields max_sg_count hpt_iop_request_get_config 0 5890 NULL nohasharray
++entity_internal_idx_max_media_device_5890_fields entity_internal_idx_max media_device 0 5890 &max_sg_count_hpt_iop_request_get_config_5890_fields
+force_max_req_size_vardecl_vub300_c_5891_fields force_max_req_size vardecl_vub300.c 0 5891 NULL
+dma_common_pages_remap_fndecl_5893_fields dma_common_pages_remap fndecl 2 5893 NULL
+size_squashfs_dir_entry_5896_fields size squashfs_dir_entry 0 5896 NULL
+__nla_reserve_fndecl_5901_fields __nla_reserve fndecl 3 5901 NULL
+alloc_rx_slot_fndecl_5908_fields alloc_rx_slot fndecl 0 5908 NULL
-+bytes_drm_i915_error_state_buf_5909_fields bytes drm_i915_error_state_buf 0 5909 NULL
+sctp_tsnmap_num_gabs_fndecl_5915_fields sctp_tsnmap_num_gabs fndecl 0 5915 NULL
+ocfs2_reflink_xattr_buckets_fndecl_5931_fields ocfs2_reflink_xattr_buckets fndecl 7 5931 NULL
-+sq_size_i40iw_puda_rsrc_info_5933_fields sq_size i40iw_puda_rsrc_info 0 5933 NULL
++length_rdma_cqe_responder_5933_fields length rdma_cqe_responder 0 5933 NULL
+intel_gtt_unmap_memory_fndecl_5935_fields intel_gtt_unmap_memory fndecl 2 5935 NULL
+num_of_paging_blk_iwl_mvm_5936_fields num_of_paging_blk iwl_mvm 0 5936 NULL
++ceph_x_encrypt_fndecl_5938_fields ceph_x_encrypt fndecl 4 5938 NULL
+max_attributes_pmbus_data_5939_fields max_attributes pmbus_data 0 5939 NULL
+ide_config_drive_speed_fndecl_5940_fields ide_config_drive_speed fndecl 2 5940 NULL
++vid_switchdev_obj_port_mdb_5943_fields vid switchdev_obj_port_mdb 0 5943 NULL
+buffer_blocks_osst_buffer_5944_fields buffer_blocks osst_buffer 0 5944 NULL
+max_header_size_irda_sock_5950_fields max_header_size irda_sock 0 5950 NULL
+height_tm6000_fh_5952_fields height tm6000_fh 0 5952 NULL
@@ -189874,12 +194490,14 @@ index 0000000..6b5367db
+allocmax_nilfs_sufile_info_5969_fields allocmax nilfs_sufile_info 0 5969 NULL
+f2fs_setxattr_fndecl_5975_fields f2fs_setxattr fndecl 5 5975 NULL
+xfs_trans_roll_fndecl_5977_fields xfs_trans_roll fndecl 0 5977 NULL
-+nfsd4_encode_dirent_fndecl_5983_fields nfsd4_encode_dirent fndecl 3 5983 NULL nohasharray
-+do_rc_ack_fndecl_5983_fields do_rc_ack fndecl 3 5983 &nfsd4_encode_dirent_fndecl_5983_fields
++nfsd4_encode_dirent_fndecl_5983_fields nfsd4_encode_dirent fndecl 3 5983 NULL
++arch_io_free_memtype_wc_fndecl_5999_fields arch_io_free_memtype_wc fndecl 1-2 5999 NULL
+snd_hdac_read_parm_uncached_fndecl_6000_fields snd_hdac_read_parm_uncached fndecl 0 6000 NULL
+clk_recalc_fndecl_6001_fields clk_recalc fndecl 0-2 6001 NULL
++__clk_notify_fndecl_6004_fields __clk_notify fndecl 4 6004 NULL
+afs_vnode_store_data_fndecl_6011_fields afs_vnode_store_data fndecl 4-5 6011 NULL
+code_size_fw_bl_desc_6013_fields code_size fw_bl_desc 0 6013 NULL
++clk_core_set_rate_nolock_fndecl_6018_fields clk_core_set_rate_nolock fndecl 2 6018 NULL
+max_discard_sectors_queue_limits_6023_fields max_discard_sectors queue_limits 0 6023 NULL nohasharray
+status_register_read_fndecl_6023_fields status_register_read fndecl 4 6023 &max_discard_sectors_queue_limits_6023_fields
+wqe_cnt_mlx5_ib_wq_6024_fields wqe_cnt mlx5_ib_wq 0 6024 NULL
@@ -189887,17 +194505,20 @@ index 0000000..6b5367db
+xlog_bwrite_fndecl_6028_fields xlog_bwrite fndecl 2 6028 NULL
+size_drm_vc4_create_shader_bo_6033_fields size drm_vc4_create_shader_bo 0 6033 NULL
+msix_map_region_fndecl_6035_fields msix_map_region fndecl 2 6035 NULL
++push_pipe_fndecl_6041_fields push_pipe fndecl 2-0 6041 NULL nohasharray
++ceph_create_snap_context_fndecl_6041_fields ceph_create_snap_context fndecl 1 6041 &push_pipe_fndecl_6041_fields
+cmipci_sb_reg_decode_fndecl_6048_fields cmipci_sb_reg_decode fndecl 2 6048 NULL
+n_ssids_cfg80211_scan_request_6049_fields n_ssids cfg80211_scan_request 0 6049 NULL
++scif_rb_space_fndecl_6052_fields scif_rb_space fndecl 0 6052 NULL
+dmi_len_vardecl_dmi_scan_c_6054_fields dmi_len vardecl_dmi_scan.c 0 6054 NULL nohasharray
+ext4_inode_table_fndecl_6054_fields ext4_inode_table fndecl 0 6054 &dmi_len_vardecl_dmi_scan_c_6054_fields
+map_base_tpm_inf_dev_6056_fields map_base tpm_inf_dev 0 6056 NULL
-+reqsize_kpp_alg_6064_fields reqsize kpp_alg 0 6064 NULL
+length_hci_ev_le_advertising_info_6074_fields length hci_ev_le_advertising_info 0 6074 NULL
+elog_len_extlog_l1_head_6075_fields elog_len extlog_l1_head 0 6075 NULL
+ioctx_alloc_fndecl_6081_fields ioctx_alloc fndecl 1 6081 NULL
-+remote_miu_nfc_llcp_sock_6088_fields remote_miu nfc_llcp_sock 0 6088 NULL nohasharray
-+pcifront_scan_root_fndecl_6088_fields pcifront_scan_root fndecl 2-3 6088 &remote_miu_nfc_llcp_sock_6088_fields
++__get_user_pages_unlocked_fndecl_6088_fields __get_user_pages_unlocked fndecl 3 6088 NULL nohasharray
++remote_miu_nfc_llcp_sock_6088_fields remote_miu nfc_llcp_sock 0 6088 &__get_user_pages_unlocked_fndecl_6088_fields nohasharray
++pcifront_scan_root_fndecl_6088_fields pcifront_scan_root fndecl 3 6088 &remote_miu_nfc_llcp_sock_6088_fields
+channel_num_ad9523_channel_spec_6095_fields channel_num ad9523_channel_spec 0 6095 NULL
+__gfs2_xattr_set_fndecl_6098_fields __gfs2_xattr_set fndecl 4 6098 NULL
+alloc_irdadev_fndecl_6103_fields alloc_irdadev fndecl 1 6103 NULL
@@ -189919,21 +194540,25 @@ index 0000000..6b5367db
+ubifs_xattr_set_fndecl_6192_fields ubifs_xattr_set fndecl 6 6192 NULL
+start_mtd_oob_buf64_6198_fields start mtd_oob_buf64 0 6198 NULL
+__geneve_change_mtu_fndecl_6199_fields __geneve_change_mtu fndecl 2 6199 NULL
-+__einj_error_trigger_fndecl_6200_fields __einj_error_trigger fndecl 1 6200 NULL
-+__send_write_same_fndecl_6201_fields __send_write_same fndecl 0 6201 NULL
++venus_rename_fndecl_6200_fields venus_rename fndecl 4-5 6200 NULL
++__send_write_same_fndecl_6201_fields __send_write_same fndecl 0 6201 NULL nohasharray
++dm_btree_cursor_begin_fndecl_6201_fields dm_btree_cursor_begin fndecl 2 6201 &__send_write_same_fndecl_6201_fields
+height_linux_logo_6207_fields height linux_logo 0 6207 NULL nohasharray
+digi_write_oob_command_fndecl_6207_fields digi_write_oob_command fndecl 3 6207 &height_linux_logo_6207_fields
+index_lola_stream_6210_fields index lola_stream 0 6210 NULL nohasharray
+dac_channels_pcm_oxygen_model_6210_fields dac_channels_pcm oxygen_model 0 6210 &index_lola_stream_6210_fields
-+bnxt_calc_nr_ring_pages_fndecl_6213_fields bnxt_calc_nr_ring_pages fndecl 1-2-0 6213 NULL
++bnxt_calc_nr_ring_pages_fndecl_6213_fields bnxt_calc_nr_ring_pages fndecl 0-2-1 6213 NULL
+val_bits_regmap_config_6218_fields val_bits regmap_config 0 6218 NULL
+sc_ssid_len_wl18xx_event_mailbox_6223_fields sc_ssid_len wl18xx_event_mailbox 0 6223 NULL
++xfs_free_ag_extent_fndecl_6224_fields xfs_free_ag_extent fndecl 5-0 6224 NULL
+nr_sects_rrpc_6227_fields nr_sects rrpc 0 6227 NULL
+bytenr_backref_node_6238_fields bytenr backref_node 0 6238 NULL
++i915_gem_get_ggtt_alignment_fndecl_6239_fields i915_gem_get_ggtt_alignment fndecl 2 6239 NULL
+ag_xfs_fstrm_item_6243_fields ag xfs_fstrm_item 0 6243 NULL
+mode_offset_pktcdvd_device_6248_fields mode_offset pktcdvd_device 0 6248 NULL
+rxq_cnt_tg3_6249_fields rxq_cnt tg3 0 6249 NULL
+ubifs_leb_change_fndecl_6254_fields ubifs_leb_change fndecl 4 6254 NULL
++send_mbox_fndecl_6260_fields send_mbox fndecl 4 6260 NULL
+bNumInterfaces_usb_config_descriptor_6265_fields bNumInterfaces usb_config_descriptor 0 6265 NULL nohasharray
+blkno_xfs_bmalloca_6265_fields blkno xfs_bmalloca 0 6265 &bNumInterfaces_usb_config_descriptor_6265_fields
+xs_setup_xprt_fndecl_6266_fields xs_setup_xprt fndecl 3-2 6266 NULL
@@ -189941,53 +194566,58 @@ index 0000000..6b5367db
+dm_cell_error_fndecl_6277_fields dm_cell_error fndecl 3 6277 NULL
+copy_out_args_fndecl_6283_fields copy_out_args fndecl 3 6283 NULL
+regmap_i2c_gather_write_fndecl_6284_fields regmap_i2c_gather_write fndecl 3-5 6284 NULL
-+gnet_stats_copy_app_fndecl_6286_fields gnet_stats_copy_app fndecl 3 6286 NULL
++xfs_refcount_adjust_fndecl_6286_fields xfs_refcount_adjust fndecl 2-3 6286 NULL nohasharray
++gnet_stats_copy_app_fndecl_6286_fields gnet_stats_copy_app fndecl 3 6286 &xfs_refcount_adjust_fndecl_6286_fields
+_snd_pcm_lib_alloc_vmalloc_buffer_fndecl_6287_fields _snd_pcm_lib_alloc_vmalloc_buffer fndecl 2 6287 NULL
+hOver_plus_panel_info_6297_fields hOver_plus panel_info 0 6297 NULL
-+lpuart_copy_rx_to_tty_fndecl_6298_fields lpuart_copy_rx_to_tty fndecl 3 6298 NULL
++iin_wMaxPacketSize_usbtmc_device_data_6306_fields iin_wMaxPacketSize usbtmc_device_data 0 6306 NULL
++em28xx_audio_ep_packet_size_fndecl_6311_fields em28xx_audio_ep_packet_size fndecl 0 6311 NULL
+sectors_r1bio_6323_fields sectors r1bio 0 6323 NULL
-+max_ustore_icp_qat_fw_loader_hal_handle_6327_fields max_ustore icp_qat_fw_loader_hal_handle 0 6327 NULL nohasharray
-+totalhigh_sysinfo_6327_fields totalhigh sysinfo 0 6327 &max_ustore_icp_qat_fw_loader_hal_handle_6327_fields
-+asd_get_devctx_size_fndecl_6335_fields asd_get_devctx_size fndecl 0 6335 NULL nohasharray
-+raid5_build_block_fndecl_6335_fields raid5_build_block fndecl 2 6335 &asd_get_devctx_size_fndecl_6335_fields
++totalhigh_sysinfo_6327_fields totalhigh sysinfo 0 6327 NULL nohasharray
++max_ustore_icp_qat_fw_loader_hal_handle_6327_fields max_ustore icp_qat_fw_loader_hal_handle 0 6327 &totalhigh_sysinfo_6327_fields
++cipso_v4_gentag_rbm_fndecl_6335_fields cipso_v4_gentag_rbm fndecl 0 6335 NULL nohasharray
++raid5_build_block_fndecl_6335_fields raid5_build_block fndecl 2 6335 &cipso_v4_gentag_rbm_fndecl_6335_fields nohasharray
++asd_get_devctx_size_fndecl_6335_fields asd_get_devctx_size fndecl 0 6335 &raid5_build_block_fndecl_6335_fields
+h_max_out_saa7146_standard_6339_fields h_max_out saa7146_standard 0 6339 NULL
-+orinoco_set_key_fndecl_6341_fields orinoco_set_key fndecl 5 6341 NULL nohasharray
-+i40e_align_l2obj_base_fndecl_6341_fields i40e_align_l2obj_base fndecl 0-1 6341 &orinoco_set_key_fndecl_6341_fields
++orinoco_set_key_fndecl_6341_fields orinoco_set_key fndecl 5-7 6341 NULL nohasharray
++i40e_align_l2obj_base_fndecl_6341_fields i40e_align_l2obj_base fndecl 0 6341 &orinoco_set_key_fndecl_6341_fields
+n_o_ps_usb_stream_kernel_6346_fields n_o_ps usb_stream_kernel 0 6346 NULL
+wbuf_ofs_jffs2_sb_info_6347_fields wbuf_ofs jffs2_sb_info 0 6347 NULL
++flags_fcoe_fcf_6349_fields flags fcoe_fcf 0 6349 NULL
+chipid_to_nrcores_fndecl_6352_fields chipid_to_nrcores fndecl 0 6352 NULL
+pci_mmconfig_insert_fndecl_6353_fields pci_mmconfig_insert fndecl 3-4-5 6353 NULL
+lrf_body_len_nfsd4_layoutreturn_6359_fields lrf_body_len nfsd4_layoutreturn 0 6359 NULL
+len_p54_rx_data_6362_fields len p54_rx_data 0 6362 NULL
-+sisusb_send_bulk_msg_fndecl_6363_fields sisusb_send_bulk_msg fndecl 2 6363 NULL
++sisusb_send_bulk_msg_fndecl_6363_fields sisusb_send_bulk_msg fndecl 2-3 6363 NULL
+alloc_sja1000dev_fndecl_6367_fields alloc_sja1000dev fndecl 1 6367 NULL
+elants_i2c_execute_command_fndecl_6371_fields elants_i2c_execute_command fndecl 3-5 6371 NULL nohasharray
+recover_head_fndecl_6371_fields recover_head fndecl 3 6371 &elants_i2c_execute_command_fndecl_6371_fields
++command_p_header80_6374_fields command p_header80 0 6374 NULL
+xfs_buf_associate_memory_fndecl_6376_fields xfs_buf_associate_memory fndecl 3 6376 NULL
+blkfactor_dio_submit_6380_fields blkfactor dio_submit 0 6380 NULL nohasharray
+cur_inode_size_send_ctx_6380_fields cur_inode_size send_ctx 0 6380 &blkfactor_dio_submit_6380_fields
+tail_hid_debug_list_6381_fields tail hid_debug_list 0 6381 NULL
+xfs_rtallocate_extent_near_fndecl_6383_fields xfs_rtallocate_extent_near fndecl 3-5-9-0 6383 NULL
+snd_info_entry_llseek_fndecl_6384_fields snd_info_entry_llseek fndecl 2 6384 NULL
-+wps_probe_req_ie_len_mlme_priv_6393_fields wps_probe_req_ie_len mlme_priv 0 6393 NULL
+max_agbno_xfs_alloc_arg_6395_fields max_agbno xfs_alloc_arg 0 6395 NULL
+i_file_acl_ext2_inode_info_6396_fields i_file_acl ext2_inode_info 0 6396 NULL
+compat_sys_ppoll_fndecl_6405_fields compat_sys_ppoll fndecl 2 6405 NULL
+alloc_blocks_hfs_inode_info_6406_fields alloc_blocks hfs_inode_info 0 6406 NULL
+brcmf_chip_sysmem_ramsize_fndecl_6407_fields brcmf_chip_sysmem_ramsize fndecl 0 6407 NULL
+copy_from_iter_fndecl_6410_fields copy_from_iter fndecl 2-0 6410 NULL
-+fwnet_change_mtu_fndecl_6424_fields fwnet_change_mtu fndecl 2 6424 NULL nohasharray
-+x509_note_serial_fndecl_6424_fields x509_note_serial fndecl 5 6424 &fwnet_change_mtu_fndecl_6424_fields
++fwnet_change_mtu_fndecl_6424_fields fwnet_change_mtu fndecl 2 6424 NULL
+de_entrylen_reiserfs_dir_entry_6426_fields de_entrylen reiserfs_dir_entry 0 6426 NULL
+sys_brk_fndecl_6435_fields sys_brk fndecl 1 6435 NULL
-+parse_dcb20_entry_fndecl_6440_fields parse_dcb20_entry fndecl 3 6440 NULL
++nvme_iod_alloc_size_fndecl_6444_fields nvme_iod_alloc_size fndecl 0-3 6444 NULL
+i40iw_qp_roundup_fndecl_6447_fields i40iw_qp_roundup fndecl 0 6447 NULL
+max_packet_sz_tx_musb_hw_ep_6448_fields max_packet_sz_tx musb_hw_ep 0 6448 NULL
++extent_clear_unlock_delalloc_fndecl_6449_fields extent_clear_unlock_delalloc fndecl 2-3 6449 NULL
+snd_hammerfall_get_buffer_fndecl_6450_fields snd_hammerfall_get_buffer fndecl 3 6450 NULL
+out_epnum_usb_gadget_6453_fields out_epnum usb_gadget 0 6453 NULL
+iov_iter_advance_fndecl_6457_fields iov_iter_advance fndecl 2 6457 NULL
+xtTruncate_fndecl_6468_fields xtTruncate fndecl 3 6468 NULL
-+dx_fb_image_6483_fields dx fb_image 0 6483 NULL
++dx_fb_image_6483_fields dx fb_image 0 6483 NULL nohasharray
++xfs_mod_fdblocks_fndecl_6483_fields xfs_mod_fdblocks fndecl 0 6483 &dx_fb_image_6483_fields
+datasize_vub300_mmc_host_6490_fields datasize vub300_mmc_host 0 6490 NULL nohasharray
+beep_amp_ad198x_spec_6490_fields beep_amp ad198x_spec 0 6490 &datasize_vub300_mmc_host_6490_fields
+inc_remap_and_issue_cell_fndecl_6505_fields inc_remap_and_issue_cell fndecl 3 6505 NULL
@@ -189995,36 +194625,33 @@ index 0000000..6b5367db
+vfs_setpos_fndecl_6511_fields vfs_setpos fndecl 2 6511 NULL
+base_size_aac_dev_6512_fields base_size aac_dev 0 6512 NULL
+l2_fhdr_vlan_tag_l2_fhdr_6516_fields l2_fhdr_vlan_tag l2_fhdr 0 6516 NULL
-+lbs_highrssi_write_fndecl_6520_fields lbs_highrssi_write fndecl 3 6520 NULL
+copy_page_from_iter_fndecl_6523_fields copy_page_from_iter fndecl 3-0 6523 NULL
+sector_start_dm_target_spec_6526_fields sector_start dm_target_spec 0 6526 NULL
++bytes_cifs_readdata_6533_fields bytes cifs_readdata 0 6533 NULL
+size_i40iw_kmem_info_6537_fields size i40iw_kmem_info 0 6537 NULL nohasharray
+size_ubifs_wbuf_6537_fields size ubifs_wbuf 0 6537 &size_i40iw_kmem_info_6537_fields
+tx_ring_size_vmxnet3_adapter_6541_fields tx_ring_size vmxnet3_adapter 0 6541 NULL
+fe_logical_ext4_free_extent_6542_fields fe_logical ext4_free_extent 0 6542 NULL
+sent_user_sdma_request_6545_fields sent user_sdma_request 0 6545 NULL
++max_vfs_vardecl_igb_main_c_6547_fields max_vfs vardecl_igb_main.c 0 6547 NULL
+pcm_snd_bebob_stream_formation_6548_fields pcm snd_bebob_stream_formation 0 6548 NULL nohasharray
+count_ixgb_desc_ring_6548_fields count ixgb_desc_ring 0 6548 &pcm_snd_bebob_stream_formation_6548_fields
+jffs2_security_setxattr_fndecl_6550_fields jffs2_security_setxattr fndecl 6 6550 NULL
+xlog_do_log_recovery_fndecl_6557_fields xlog_do_log_recovery fndecl 3 6557 NULL
-+active_duplex_tg3_link_config_6559_fields active_duplex tg3_link_config 0 6559 NULL
+cxgbit_xmit_pdu_fndecl_6562_fields cxgbit_xmit_pdu fndecl 5 6562 NULL
+verity_verify_io_fndecl_6564_fields verity_verify_io fndecl 0 6564 NULL
-+num_x_edt_ft5x06_ts_data_6566_fields num_x edt_ft5x06_ts_data 0 6566 NULL
++i915_gem_object_ggtt_pin_fndecl_6569_fields i915_gem_object_ggtt_pin fndecl 3-5 6569 NULL
+ath6kl_wmi_connect_cmd_fndecl_6571_fields ath6kl_wmi_connect_cmd fndecl 2 6571 NULL
+rts51x_write_mem_fndecl_6573_fields rts51x_write_mem fndecl 4 6573 NULL
+log_num_qps_mlx4_init_hca_param_6574_fields log_num_qps mlx4_init_hca_param 0 6574 NULL
-+vmcore_remap_oldmem_pfn_fndecl_6577_fields vmcore_remap_oldmem_pfn fndecl 2-3-4 6577 NULL
+gcd_fndecl_6579_fields gcd fndecl 0 6579 NULL
+argc_tomoyo_condition_6587_fields argc tomoyo_condition 0 6587 NULL
-+wil_write_file_rxon_fndecl_6590_fields wil_write_file_rxon fndecl 3 6590 NULL
+capture_frlog_rme96_6593_fields capture_frlog rme96 0 6593 NULL
+pci_get_device_fndecl_6606_fields pci_get_device fndecl 2 6606 NULL
+dma_map_page_fndecl_6607_fields dma_map_page fndecl 0 6607 NULL
+irda_sendmsg_ultra_fndecl_6612_fields irda_sendmsg_ultra fndecl 3 6612 NULL nohasharray
+osst_execute_fndecl_6612_fields osst_execute fndecl 6-3 6612 &irda_sendmsg_ultra_fndecl_6612_fields
+num_tasks_qed_iscsi_pf_params_6614_fields num_tasks qed_iscsi_pf_params 0 6614 NULL
-+size_synthhid_msg_hdr_6615_fields size synthhid_msg_hdr 0 6615 NULL
+ocfs2_mark_extent_written_fndecl_6620_fields ocfs2_mark_extent_written fndecl 6-4 6620 NULL
+ath_recv_fndecl_6621_fields ath_recv fndecl 3 6621 NULL
+num_outputs_drm_vmw_update_layout_arg_6623_fields num_outputs drm_vmw_update_layout_arg 0 6623 NULL
@@ -190036,23 +194663,26 @@ index 0000000..6b5367db
+xmit_count_modem_info_6639_fields xmit_count modem_info 0 6639 NULL
+bpp_xvip_video_format_6640_fields bpp xvip_video_format 0 6640 NULL
+irlan_provider_connect_indication_fndecl_6644_fields irlan_provider_connect_indication fndecl 5 6644 NULL
++rate_clk_rate_request_6649_fields rate clk_rate_request 0 6649 NULL
+local_payload_max_nfc_digital_dev_6651_fields local_payload_max nfc_digital_dev 0 6651 NULL
+length_acpi_namestring_info_6654_fields length acpi_namestring_info 0 6654 NULL
+async_error_osd_request_6658_fields async_error osd_request 0 6658 NULL
-+persistent_commit_merge_fndecl_6660_fields persistent_commit_merge fndecl 2 6660 NULL
++cp_recv_size_rpcrdma_connect_private_6660_fields cp_recv_size rpcrdma_connect_private 0 6660 NULL nohasharray
++persistent_commit_merge_fndecl_6660_fields persistent_commit_merge fndecl 2 6660 &cp_recv_size_rpcrdma_connect_private_6660_fields
+orinoco_add_extscan_result_fndecl_6668_fields orinoco_add_extscan_result fndecl 3 6668 NULL nohasharray
+io_reserve_memtype_fndecl_6668_fields io_reserve_memtype fndecl 1-2 6668 &orinoco_add_extscan_result_fndecl_6668_fields
+pkt_size_meta_sock_cmd_6669_fields pkt_size meta_sock_cmd 0 6669 NULL
+img_imem_size_fw_hdr_6675_fields img_imem_size fw_hdr 0 6675 NULL
+compatsize_xt_match_6677_fields compatsize xt_match 0 6677 NULL
-+lpfc_debugfs_lseek_fndecl_6679_fields lpfc_debugfs_lseek fndecl 2 6679 NULL
+issue_discard_fndecl_6682_fields issue_discard fndecl 0-2-3 6682 NULL
+present_pages_zone_6685_fields present_pages zone 0 6685 NULL
+ac_2order_ext4_allocation_context_6690_fields ac_2order ext4_allocation_context 0 6690 NULL
+param_ssp_completion_resp_6691_fields param ssp_completion_resp 0 6691 NULL
+esize___kfifo_6692_fields esize __kfifo 0 6692 NULL
+max_recvmsg_len_netlink_sock_6699_fields max_recvmsg_len netlink_sock 0 6699 NULL
-+length_p_header80_6708_fields length p_header80 0 6708 NULL
++gsm_control_message_fndecl_6706_fields gsm_control_message fndecl 4 6706 NULL
++do_ipv6_setsockopt_fndecl_6708_fields do_ipv6_setsockopt fndecl 5 6708 NULL nohasharray
++length_p_header80_6708_fields length p_header80 0 6708 &do_ipv6_setsockopt_fndecl_6708_fields
+raw_recvmsg_fndecl_6710_fields raw_recvmsg fndecl 3 6710 NULL
+sample_rate_mixart_mgr_6716_fields sample_rate mixart_mgr 0 6716 NULL
+ssb_sdio_block_read_fndecl_6721_fields ssb_sdio_block_read fndecl 3 6721 NULL
@@ -190060,11 +194690,14 @@ index 0000000..6b5367db
+mtd_ooblayout_set_databytes_fndecl_6733_fields mtd_ooblayout_set_databytes fndecl 4 6733 NULL
+end_discard_fndecl_6736_fields end_discard fndecl 2 6736 NULL nohasharray
+size_ORANGEFS_sys_attr_s_6736_fields size ORANGEFS_sys_attr_s 0 6736 &end_discard_fndecl_6736_fields
++num_vectors_qed_int_param_6741_fields num_vectors qed_int_param 0 6741 NULL
+alloc_size__osd_req_data_segment_6757_fields alloc_size _osd_req_data_segment 0 6757 NULL
++um_idi_write_fndecl_6758_fields um_idi_write fndecl 3 6758 NULL
+tun_opts_len_sw_flow_key_6759_fields tun_opts_len sw_flow_key 0 6759 NULL
+al_stripe_size_resize_parms_6766_fields al_stripe_size resize_parms 0 6766 NULL
+start_mtd_oob_buf_6767_fields start mtd_oob_buf 0 6767 NULL
-+rx_pkt_ram_iadev_priv_6768_fields rx_pkt_ram iadev_priv 0 6768 NULL
++rx_pkt_ram_iadev_priv_6768_fields rx_pkt_ram iadev_priv 0 6768 NULL nohasharray
++gfs2_alloc_sort_buffer_fndecl_6768_fields gfs2_alloc_sort_buffer fndecl 1 6768 &rx_pkt_ram_iadev_priv_6768_fields
+sg_tablesize_Scsi_Host_6769_fields sg_tablesize Scsi_Host 0 6769 NULL
+xhci_align_td_fndecl_6773_fields xhci_align_td fndecl 3 6773 NULL
+dn_recvmsg_fndecl_6774_fields dn_recvmsg fndecl 3 6774 NULL
@@ -190072,6 +194705,7 @@ index 0000000..6b5367db
+asn_1_decode_fndecl_6777_fields asn_1_decode fndecl 0 6777 NULL
+bio_phys_segments_fndecl_6778_fields bio_phys_segments fndecl 0 6778 NULL
+ecryptfs_send_message_fndecl_6785_fields ecryptfs_send_message fndecl 2 6785 NULL
++alloc_and_copy_string_fndecl_6786_fields alloc_and_copy_string fndecl 2 6786 NULL
+bio_integrity_advance_fndecl_6791_fields bio_integrity_advance fndecl 2 6791 NULL
+st21nfca_im_send_atr_req_fndecl_6792_fields st21nfca_im_send_atr_req fndecl 3 6792 NULL
+xfs_da_shrink_inode_fndecl_6796_fields xfs_da_shrink_inode fndecl 2 6796 NULL
@@ -190082,25 +194716,26 @@ index 0000000..6b5367db
+ip6ip6_err_fndecl_6807_fields ip6ip6_err fndecl 5 6807 NULL
+nfc_digital_allocate_device_fndecl_6810_fields nfc_digital_allocate_device fndecl 4 6810 NULL
+tx_pipe_at76_priv_6815_fields tx_pipe at76_priv 0 6815 NULL
-+minor_miscdevice_6818_fields minor miscdevice 0 6818 NULL
+hs_rehash_bits_cfs_hash_6820_fields hs_rehash_bits cfs_hash 0 6820 NULL
+bfs_iget_fndecl_6821_fields bfs_iget fndecl 2 6821 NULL
+chip_rcv_contexts_hfi1_devdata_6824_fields chip_rcv_contexts hfi1_devdata 0 6824 NULL
+centre_vertically_fndecl_6833_fields centre_vertically fndecl 2 6833 NULL
+xfs_dialloc_ag_finobt_near_fndecl_6835_fields xfs_dialloc_ag_finobt_near fndecl 1 6835 NULL
-+copy_page_to_iter_fndecl_6842_fields copy_page_to_iter fndecl 3-0 6842 NULL
-+intel_framebuffer_size_for_mode_fndecl_6849_fields intel_framebuffer_size_for_mode fndecl 0-2 6849 NULL
-+kclist_add_private_fndecl_6853_fields kclist_add_private fndecl 1-2 6853 NULL
++copy_page_to_iter_fndecl_6842_fields copy_page_to_iter fndecl 2-3-0 6842 NULL
++intel_framebuffer_size_for_mode_fndecl_6849_fields intel_framebuffer_size_for_mode fndecl 0-2 6849 NULL nohasharray
++__ceph_getxattr_fndecl_6849_fields __ceph_getxattr fndecl 0 6849 &intel_framebuffer_size_for_mode_fndecl_6849_fields
++len_mgmt_hdr_6850_fields len mgmt_hdr 0 6850 NULL
+bg_channels_libipw_geo_6854_fields bg_channels libipw_geo 0 6854 NULL
-+hdlc_empty_fifo_fndecl_6862_fields hdlc_empty_fifo fndecl 2 6862 NULL
-+qib_user_sdma_num_pages_fndecl_6864_fields qib_user_sdma_num_pages fndecl 0 6864 NULL
-+offset_amp_assoc_6875_fields offset amp_assoc 0 6875 NULL
++hdlc_empty_fifo_fndecl_6862_fields hdlc_empty_fifo fndecl 2 6862 NULL nohasharray
++max_lmac_bgx_6862_fields max_lmac bgx 0 6862 &hdlc_empty_fifo_fndecl_6862_fields
++buffer_kbs_vardecl_st_c_6866_fields buffer_kbs vardecl_st.c 0 6866 NULL
++size_vb2_fileio_buf_6875_fields size vb2_fileio_buf 0 6875 NULL nohasharray
++offset_amp_assoc_6875_fields offset amp_assoc 0 6875 &size_vb2_fileio_buf_6875_fields
+ima_collect_measurement_fndecl_6876_fields ima_collect_measurement fndecl 4 6876 NULL
+xres_fb_videomode_6878_fields xres fb_videomode 0 6878 NULL
+rxbufferhandle_kaweth_device_6883_fields rxbufferhandle kaweth_device 0 6883 NULL
-+usbnet_write_cmd_nopm_fndecl_6889_fields usbnet_write_cmd_nopm fndecl 7 6889 NULL
-+hpfs_bplus_lookup_fndecl_6896_fields hpfs_bplus_lookup fndecl 0-4 6896 NULL nohasharray
-+index_mlx5_uar_6896_fields index mlx5_uar 0 6896 &hpfs_bplus_lookup_fndecl_6896_fields
++index_mlx5_uar_6896_fields index mlx5_uar 0 6896 NULL nohasharray
++hpfs_bplus_lookup_fndecl_6896_fields hpfs_bplus_lookup fndecl 0-4 6896 &index_mlx5_uar_6896_fields
+link_duplex_e1000_adapter_6902_fields link_duplex e1000_adapter 0 6902 NULL
+jfs_quota_write_fndecl_6903_fields jfs_quota_write fndecl 5 6903 NULL
+offset_clone_root_6907_fields offset clone_root 0 6907 NULL
@@ -190109,7 +194744,6 @@ index 0000000..6b5367db
+maxbufsize__isdn_driver_6917_fields maxbufsize _isdn_driver 0 6917 NULL
+drm_gtf_mode_complex_fndecl_6918_fields drm_gtf_mode_complex fndecl 3-2-4-7-9-10-8 6918 NULL
+buflen_packet_command_6926_fields buflen packet_command 0 6926 NULL
-+multi_src_desc_6933_fields multi src_desc 0 6933 NULL
+nbytes_ide_cmd_6945_fields nbytes ide_cmd 0 6945 NULL
+spare_per_sector_mtk_nfc_nand_chip_6948_fields spare_per_sector mtk_nfc_nand_chip 0 6948 NULL
+max_namelen_fscrypt_operations_6956_fields max_namelen fscrypt_operations 0 6956 NULL
@@ -190118,11 +194752,12 @@ index 0000000..6b5367db
+af9013_write_ofsm_regs_fndecl_6965_fields af9013_write_ofsm_regs fndecl 4 6965 NULL
+ufs_free_blocks_fndecl_6968_fields ufs_free_blocks fndecl 3-2 6968 NULL
+odm_group_width_pnfs_osd_data_map_6977_fields odm_group_width pnfs_osd_data_map 0 6977 NULL
++mq_msg_max_ipc_namespace_6978_fields mq_msg_max ipc_namespace 0 6978 NULL
+async_set_registers_fndecl_6987_fields async_set_registers fndecl 3 6987 NULL
+log_start_r5l_log_6989_fields log_start r5l_log 0 6989 NULL
+sq_spare_wqes_mlx4_ib_qp_6994_fields sq_spare_wqes mlx4_ib_qp 0 6994 NULL
+rx_agg_nr_pages_bnxt_7000_fields rx_agg_nr_pages bnxt 0 7000 NULL
-+mpa_frame_size_nes_cm_node_7002_fields mpa_frame_size nes_cm_node 0 7002 NULL
++gnttab_max_grant_frames_fndecl_7002_fields gnttab_max_grant_frames fndecl 0 7002 NULL
+p_start_nilfs_period_7008_fields p_start nilfs_period 0 7008 NULL
+s_groups_count_ext4_sb_info_7012_fields s_groups_count ext4_sb_info 0 7012 NULL
+ocfs2_cache_cluster_dealloc_fndecl_7016_fields ocfs2_cache_cluster_dealloc fndecl 3-2 7016 NULL
@@ -190132,21 +194767,19 @@ index 0000000..6b5367db
+virtio_gpu_alloc_object_fndecl_7030_fields virtio_gpu_alloc_object fndecl 2 7030 NULL
+h_sync_strt_wid_crtc_7033_fields h_sync_strt_wid crtc 0 7033 NULL
+fat_short2lower_uni_fndecl_7036_fields fat_short2lower_uni fndecl 0 7036 NULL
++mq_msg_default_ipc_namespace_7041_fields mq_msg_default ipc_namespace 0 7041 NULL
+n_krcv_queues_hfi1_devdata_7042_fields n_krcv_queues hfi1_devdata 0 7042 NULL
+fp_msix_cnt_qed_int_params_7045_fields fp_msix_cnt qed_int_params 0 7045 NULL
+iforce_send_packet_fndecl_7050_fields iforce_send_packet fndecl 2 7050 NULL
-+srq_entry_sz_mlx4_dev_cap_7052_fields srq_entry_sz mlx4_dev_cap 0 7052 NULL
+packet_size_usbatm_channel_7056_fields packet_size usbatm_channel 0 7056 NULL
+__btrfs_drop_extents_fndecl_7058_fields __btrfs_drop_extents fndecl 6-5 7058 NULL
-+dccph_doff_dccp_hdr_7060_fields dccph_doff dccp_hdr 0 7060 NULL nohasharray
-+ddebug_proc_write_fndecl_7060_fields ddebug_proc_write fndecl 3 7060 &dccph_doff_dccp_hdr_7060_fields
++dccph_doff_dccp_hdr_7060_fields dccph_doff dccp_hdr 0 7060 NULL
+total_VFs_pci_sriov_7061_fields total_VFs pci_sriov 0 7061 NULL
+i_dir_start_lookup_ext4_inode_info_7062_fields i_dir_start_lookup ext4_inode_info 0 7062 NULL
+jt_size_gfx_firmware_header_v1_0_7064_fields jt_size gfx_firmware_header_v1_0 0 7064 NULL
-+lua_sysfs_read_fndecl_7069_fields lua_sysfs_read fndecl 6 7069 NULL
-+command_hdac_bus_ops_7079_fields command hdac_bus_ops 0 7079 NULL
+orangefs_bufmap_size_query_fndecl_7085_fields orangefs_bufmap_size_query fndecl 0 7085 NULL
+pref_height_vmw_display_unit_7089_fields pref_height vmw_display_unit 0 7089 NULL
++get_vm_area_fndecl_7091_fields get_vm_area fndecl 1 7091 NULL
+dma_mt7601u_dma_buf_7098_fields dma mt7601u_dma_buf 0 7098 NULL
+rtl8139_change_mtu_fndecl_7099_fields rtl8139_change_mtu fndecl 2 7099 NULL
+nvkm_fifo_chan_ctor_fndecl_7101_fields nvkm_fifo_chan_ctor fndecl 11 7101 NULL
@@ -190154,11 +194787,12 @@ index 0000000..6b5367db
+nfsd4_encode_readv_fndecl_7110_fields nfsd4_encode_readv fndecl 4 7110 NULL
+udf_table_free_blocks_fndecl_7114_fields udf_table_free_blocks fndecl 4-5 7114 NULL
+rsxx_dma_queue_bio_fndecl_7118_fields rsxx_dma_queue_bio fndecl 0 7118 NULL
++report_size_hid_global_7127_fields report_size hid_global 0 7127 NULL
+svc_getnl_fndecl_7131_fields svc_getnl fndecl 0 7131 NULL
-+vc_origin_vc_data_7148_fields vc_origin vc_data 0 7148 NULL
-+ea_secno_fnode_7151_fields ea_secno fnode 0 7151 NULL nohasharray
-+privsize_nft_set_ops_7151_fields privsize nft_set_ops 0 7151 &ea_secno_fnode_7151_fields
-+nv50_disp_new__fndecl_7152_fields nv50_disp_new_ fndecl 4 7152 NULL
++nstids_tid_info_7139_fields nstids tid_info 0 7139 NULL
++__i915_vma_do_pin_fndecl_7148_fields __i915_vma_do_pin fndecl 2-4 7148 NULL nohasharray
++vc_origin_vc_data_7148_fields vc_origin vc_data 0 7148 &__i915_vma_do_pin_fndecl_7148_fields
++ea_secno_fnode_7151_fields ea_secno fnode 0 7151 NULL
+newblocks_xfs_growfs_rt_7154_fields newblocks xfs_growfs_rt 0 7154 NULL
+num_packets_st5481_in_7161_fields num_packets st5481_in 0 7161 NULL
+__add_to_page_cache_locked_fndecl_7168_fields __add_to_page_cache_locked fndecl 0 7168 NULL
@@ -190171,8 +194805,7 @@ index 0000000..6b5367db
+acc_accl_accessdata_dn_7186_fields acc_accl accessdata_dn 0 7186 NULL
+vc_rows_vc_data_7192_fields vc_rows vc_data 0 7192 NULL nohasharray
+__shmem_file_setup_fndecl_7192_fields __shmem_file_setup fndecl 2 7192 &vc_rows_vc_data_7192_fields nohasharray
-+ic_size_xlog_in_core_7192_fields ic_size xlog_in_core 0 7192 &__shmem_file_setup_fndecl_7192_fields nohasharray
-+remote_addr_ib_atomic_wr_7192_fields remote_addr ib_atomic_wr 0 7192 &ic_size_xlog_in_core_7192_fields
++ic_size_xlog_in_core_7192_fields ic_size xlog_in_core 0 7192 &__shmem_file_setup_fndecl_7192_fields
+mmc_calc_max_discard_fndecl_7198_fields mmc_calc_max_discard fndecl 0 7198 NULL
+length_pnfs_layout_range_7207_fields length pnfs_layout_range 0 7207 NULL
+__wa_populate_dto_urb_fndecl_7208_fields __wa_populate_dto_urb fndecl 3-4 7208 NULL
@@ -190180,7 +194813,6 @@ index 0000000..6b5367db
+drbd_drain_block_fndecl_7210_fields drbd_drain_block fndecl 2 7210 &size_srp_iu_7210_fields
+rivafb_do_maximize_fndecl_7212_fields rivafb_do_maximize fndecl 3-4 7212 NULL nohasharray
+eq_ecount_lpfc_sli4_hba_7212_fields eq_ecount lpfc_sli4_hba 0 7212 &rivafb_do_maximize_fndecl_7212_fields
-+max_id_Scsi_Host_7217_fields max_id Scsi_Host 0 7217 NULL
+num_chipselect_spi_gpio_platform_data_7218_fields num_chipselect spi_gpio_platform_data 0 7218 NULL
+__inet_lookup_listener_fndecl_7235_fields __inet_lookup_listener fndecl 4 7235 NULL
+s_mb_last_group_ext4_sb_info_7240_fields s_mb_last_group ext4_sb_info 0 7240 NULL
@@ -190191,71 +194823,68 @@ index 0000000..6b5367db
+iscsi_recv_pdu_fndecl_7264_fields iscsi_recv_pdu fndecl 4 7264 NULL
+xlog_bread_fndecl_7272_fields xlog_bread fndecl 2 7272 NULL
+vc_saved_x_vc_data_7275_fields vc_saved_x vc_data 0 7275 NULL
-+num_asq_entries_i40e_adminq_info_7278_fields num_asq_entries i40e_adminq_info 0 7278 NULL
+hsync_psb_pipe_7286_fields hsync psb_pipe 0 7286 NULL
+trailer_len_dst_entry_7294_fields trailer_len dst_entry 0 7294 NULL
+cmd_size_vmw_view_7295_fields cmd_size vmw_view 0 7295 NULL nohasharray
+ubifs_update_one_lp_fndecl_7295_fields ubifs_update_one_lp fndecl 3 7295 &cmd_size_vmw_view_7295_fields
-+num_channels_lp55xx_platform_data_7299_fields num_channels lp55xx_platform_data 0 7299 NULL
++strp_recv_fndecl_7311_fields strp_recv fndecl 4-3 7311 NULL
+value_apei_exec_context_7318_fields value apei_exec_context 0 7318 NULL
-+fdir_filter_count_ixgbe_adapter_7322_fields fdir_filter_count ixgbe_adapter 0 7322 NULL
+check_index_in_prev_nodes_fndecl_7324_fields check_index_in_prev_nodes fndecl 2 7324 NULL nohasharray
+bus_num_dw_pci_controller_7324_fields bus_num dw_pci_controller 0 7324 &check_index_in_prev_nodes_fndecl_7324_fields
+generic_write_end_fndecl_7325_fields generic_write_end fndecl 0-5 7325 NULL
+mtd_ooblayout_get_databytes_fndecl_7335_fields mtd_ooblayout_get_databytes fndecl 4 7335 NULL nohasharray
+control_cnt_pvr2_hdw_7335_fields control_cnt pvr2_hdw 0 7335 &mtd_ooblayout_get_databytes_fndecl_7335_fields
-+name_len_ubi_volume_info_7350_fields name_len ubi_volume_info 0 7350 NULL
++try_write_vid_and_data_fndecl_7348_fields try_write_vid_and_data fndecl 6-5 7348 NULL
+btusb_recv_intr_fndecl_7351_fields btusb_recv_intr fndecl 3 7351 NULL nohasharray
+jpegqual_s2255_vc_7351_fields jpegqual s2255_vc 0 7351 &btusb_recv_intr_fndecl_7351_fields
+mesh_fwd_csa_frame_fndecl_7353_fields mesh_fwd_csa_frame fndecl 3 7353 NULL
+mcp251x_spi_trans_fndecl_7356_fields mcp251x_spi_trans fndecl 2 7356 NULL
+dm_vcalloc_fndecl_7357_fields dm_vcalloc fndecl 2-1 7357 NULL
+sysctl_tcp_base_mss_netns_ipv4_7363_fields sysctl_tcp_base_mss netns_ipv4 0 7363 NULL
-+sys_fadvise64_fndecl_7365_fields sys_fadvise64 fndecl 2-3 7365 NULL
++sys_fadvise64_fndecl_7365_fields sys_fadvise64 fndecl 2 7365 NULL
+check_left_item_operations_7369_fields check_left item_operations 0 7369 NULL
+e_value_size_ext2_xattr_entry_7373_fields e_value_size ext2_xattr_entry 0 7373 NULL
+bufsize_pstore_info_7375_fields bufsize pstore_info 0 7375 NULL
-+shmem_swapin_fndecl_7376_fields shmem_swapin fndecl 4 7376 NULL nohasharray
-+scsi_mode_sense_fndecl_7376_fields scsi_mode_sense fndecl 5 7376 &shmem_swapin_fndecl_7376_fields
++shmem_swapin_fndecl_7376_fields shmem_swapin fndecl 4 7376 NULL
+c67x00_create_td_fndecl_7377_fields c67x00_create_td fndecl 4 7377 NULL
+fs_ablocks_hfs_sb_info_7381_fields fs_ablocks hfs_sb_info 0 7381 NULL
+amd8111e_change_mtu_fndecl_7389_fields amd8111e_change_mtu fndecl 2 7389 NULL
+qed_eq_alloc_fndecl_7396_fields qed_eq_alloc fndecl 2 7396 NULL
+v_tot_disp_crtc_7400_fields v_tot_disp crtc 0 7400 NULL
++calipso_genopt_fndecl_7401_fields calipso_genopt fndecl 0 7401 NULL
+ext4_ext_zeroout_fndecl_7404_fields ext4_ext_zeroout fndecl 0 7404 NULL
+fw_sent_bcm203x_data_7405_fields fw_sent bcm203x_data 0 7405 NULL
++ln_namelen_lu_name_7408_fields ln_namelen lu_name 0 7408 NULL
+__ip_append_data_fndecl_7411_fields __ip_append_data fndecl 9-8 7411 NULL
+default_value_cx88_ctrl_7412_fields default_value cx88_ctrl 0 7412 NULL
-+block_ack_param_set_host_cmd_ds_11n_addba_req_7415_fields block_ack_param_set host_cmd_ds_11n_addba_req 0 7415 NULL nohasharray
-+htotal_psb_pipe_7415_fields htotal psb_pipe 0 7415 &block_ack_param_set_host_cmd_ds_11n_addba_req_7415_fields nohasharray
++htotal_psb_pipe_7415_fields htotal psb_pipe 0 7415 NULL nohasharray
+xfs_dialloc_ag_fndecl_7415_fields xfs_dialloc_ag fndecl 3 7415 &htotal_psb_pipe_7415_fields
++st_write_fndecl_7417_fields st_write fndecl 3 7417 NULL
++__kfifo_peek_n_fndecl_7422_fields __kfifo_peek_n fndecl 0 7422 NULL
+mirror_sd_gl860_7430_fields mirror sd_gl860 0 7430 NULL
-+hdrsize_genl_family_7432_fields hdrsize genl_family 0 7432 NULL nohasharray
-+residue_dma_tx_state_7432_fields residue dma_tx_state 0 7432 &hdrsize_genl_family_7432_fields
++residue_dma_tx_state_7432_fields residue dma_tx_state 0 7432 NULL nohasharray
++hdrsize_genl_family_7432_fields hdrsize genl_family 0 7432 &residue_dma_tx_state_7432_fields
+data_len_sk_buff_7447_fields data_len sk_buff 0 7447 NULL
+size_vmci_handle_arr_7457_fields size vmci_handle_arr 0 7457 NULL
+__multipath_map_bio_fndecl_7459_fields __multipath_map_bio fndecl 0 7459 NULL
+len_sk_buff_7460_fields len sk_buff 0 7460 NULL
+hpfs_alloc_sector_fndecl_7462_fields hpfs_alloc_sector fndecl 0-4-3-2 7462 NULL
+Length__SECURITY_BUFFER_7467_fields Length _SECURITY_BUFFER 0 7467 NULL
-+buffer_dma_ehci_qtd_7468_fields buffer_dma ehci_qtd 0 7468 NULL
+block_to_sectors_fndecl_7472_fields block_to_sectors fndecl 0-2 7472 NULL
+devmem_is_allowed_fndecl_7475_fields devmem_is_allowed fndecl 1 7475 NULL
+status_c67x00_urb_priv_7480_fields status c67x00_urb_priv 0 7480 NULL
-+rxrpc_server_keyring_fndecl_7484_fields rxrpc_server_keyring fndecl 3 7484 NULL
+header_len_eth_fast_path_rx_tpa_start_cqe_7488_fields header_len eth_fast_path_rx_tpa_start_cqe 0 7488 NULL
+s_log_block_size_ext2_super_block_7490_fields s_log_block_size ext2_super_block 0 7490 NULL
+cookie_rds_atomic_args_7495_fields cookie rds_atomic_args 0 7495 NULL
++can_nice_fndecl_7498_fields can_nice fndecl 2 7498 NULL
+ri_lsegs_start_nilfs_recovery_info_7501_fields ri_lsegs_start nilfs_recovery_info 0 7501 NULL
+all_tables_size_vardecl_tables_c_7504_fields all_tables_size vardecl_tables.c 0 7504 NULL
+btrfs_truncate_inode_items_fndecl_7511_fields btrfs_truncate_inode_items fndecl 4 7511 NULL
+ext4_mb_load_buddy_gfp_fndecl_7524_fields ext4_mb_load_buddy_gfp fndecl 2-0 7524 NULL
-+xfs_iomap_eof_want_preallocate_fndecl_7527_fields xfs_iomap_eof_want_preallocate fndecl 4-3 7527 NULL
+cfg_hba_queue_depth_lpfc_hba_7534_fields cfg_hba_queue_depth lpfc_hba 0 7534 NULL
+delta_mmap_mm_struct_7536_fields delta_mmap mm_struct 0 7536 NULL
+length_ndis_80211_ssid_7537_fields length ndis_80211_ssid 0 7537 NULL
+raid10_resize_fndecl_7562_fields raid10_resize fndecl 2 7562 NULL
-+max_channels_snd_pcm_chmap_7565_fields max_channels snd_pcm_chmap 0 7565 NULL
+duplicateIXtree_fndecl_7568_fields duplicateIXtree fndecl 3-2 7568 NULL
+wqe_fcoe_cqe_7572_fields wqe fcoe_cqe 0 7572 NULL
+mISDN_sock_sendmsg_fndecl_7584_fields mISDN_sock_sendmsg fndecl 3 7584 NULL nohasharray
@@ -190263,16 +194892,18 @@ index 0000000..6b5367db
+tuple_size_blk_integrity_7585_fields tuple_size blk_integrity 0 7585 NULL
+length_sctp_chunkhdr_7587_fields length sctp_chunkhdr 0 7587 NULL
+ftdi_elan_edset_input_fndecl_7588_fields ftdi_elan_edset_input fndecl 0 7588 NULL
++data_size_efi_setvariable_7593_fields data_size efi_setvariable 0 7593 NULL
+scan_index_iio_chan_spec_7597_fields scan_index iio_chan_spec 0 7597 NULL nohasharray
+num_regions_wm_adsp_fw_caps_7597_fields num_regions wm_adsp_fw_caps 0 7597 &scan_index_iio_chan_spec_7597_fields
+q_blkno_xfs_dquot_7601_fields q_blkno xfs_dquot 0 7601 NULL
+pathmtu_sctp_transport_7603_fields pathmtu sctp_transport 0 7603 NULL
+fuse_listxattr_fndecl_7605_fields fuse_listxattr fndecl 3 7605 NULL
+pzl_urb_dequeue_fndecl_7607_fields pzl_urb_dequeue fndecl 3 7607 NULL
-+report_size_hid_field_7609_fields report_size hid_field 0 7609 NULL
-+rcvidx_w6692B_hw_7613_fields rcvidx w6692B_hw 0 7613 NULL
++rcvidx_w6692B_hw_7613_fields rcvidx w6692B_hw 0 7613 NULL nohasharray
++wFormatVersion_ms_bootblock_header_7613_fields wFormatVersion ms_bootblock_header 0 7613 &rcvidx_w6692B_hw_7613_fields
+id_hid_report_7618_fields id hid_report 0 7618 NULL
+drm_fb_helper_fill_var_fndecl_7619_fields drm_fb_helper_fill_var fndecl 4-3 7619 NULL
++amdgpu_bo_create_kernel_fndecl_7620_fields amdgpu_bo_create_kernel fndecl 2 7620 NULL
+physical_scrub_page_7621_fields physical scrub_page 0 7621 NULL
+block_udf_vds_record_7623_fields block udf_vds_record 0 7623 NULL
+ocfs2_free_suballoc_bits_fndecl_7627_fields ocfs2_free_suballoc_bits fndecl 5 7627 NULL
@@ -190283,7 +194914,6 @@ index 0000000..6b5367db
+s_fsize_ufs_sb_private_info_7659_fields s_fsize ufs_sb_private_info 0 7659 NULL
+brcmf_proto_bcdc_txdata_fndecl_7662_fields brcmf_proto_bcdc_txdata fndecl 3 7662 NULL
+to_perf_branch_entry_7663_fields to perf_branch_entry 0 7663 NULL
-+rds_sendmsg_fndecl_7675_fields rds_sendmsg fndecl 3 7675 NULL
+nfsd_max_blksize_vardecl_7678_fields nfsd_max_blksize vardecl 0 7678 NULL
+shmem_read_mapping_page_gfp_fndecl_7681_fields shmem_read_mapping_page_gfp fndecl 2 7681 NULL
+l1oip_socket_send_fndecl_7685_fields l1oip_socket_send fndecl 7 7685 NULL nohasharray
@@ -190293,22 +194923,21 @@ index 0000000..6b5367db
+n_tty_receive_buf_real_raw_fndecl_7696_fields n_tty_receive_buf_real_raw fndecl 4 7696 NULL
+hdr_len_virtio_net_hdr_7704_fields hdr_len virtio_net_hdr 0 7704 NULL nohasharray
+rf_cpos_ocfs2_refcount_block_7704_fields rf_cpos ocfs2_refcount_block 0 7704 &hdr_len_virtio_net_hdr_7704_fields
++fd_vfid_fip_fab_desc_7711_fields fd_vfid fip_fab_desc 0 7711 NULL
+stride_pci_sriov_7712_fields stride pci_sriov 0 7712 NULL
-+i915_gem_get_gtt_size_fndecl_7714_fields i915_gem_get_gtt_size fndecl 0-2 7714 NULL
+controller_number_ms_boot_attr_info_7716_fields controller_number ms_boot_attr_info 0 7716 NULL
+ceph_pool_perm_check_fndecl_7729_fields ceph_pool_perm_check fndecl 0 7729 NULL nohasharray
+if_ipx_offset_ipx_interface_7729_fields if_ipx_offset ipx_interface 0 7729 &ceph_pool_perm_check_fndecl_7729_fields
+get_num_rx_queues_rtnl_link_ops_7733_fields get_num_rx_queues rtnl_link_ops 0 7733 NULL
+access_remote_vm_fndecl_7734_fields access_remote_vm fndecl 4-2 7734 NULL
+vxres_aty128_crtc_7753_fields vxres aty128_crtc 0 7753 NULL
-+mlx4_enable_sriov_fndecl_7756_fields mlx4_enable_sriov fndecl 3-4 7756 NULL nohasharray
++mlx4_enable_sriov_fndecl_7756_fields mlx4_enable_sriov fndecl 4-3 7756 NULL nohasharray
+max_eq_lpfc_max_cfg_param_7756_fields max_eq lpfc_max_cfg_param 0 7756 &mlx4_enable_sriov_fndecl_7756_fields nohasharray
+ide_get_best_pio_mode_fndecl_7756_fields ide_get_best_pio_mode fndecl 0-2-3 7756 &max_eq_lpfc_max_cfg_param_7756_fields
+xfs_dir2_free_read_fndecl_7759_fields xfs_dir2_free_read fndecl 3 7759 NULL
+pps_devt_vardecl_pps_c_7772_fields pps_devt vardecl_pps.c 0 7772 NULL
+maxcmd_nvme_ctrl_7774_fields maxcmd nvme_ctrl 0 7774 NULL
-+t_data_nents_orig_se_cmd_7775_fields t_data_nents_orig se_cmd 0 7775 NULL nohasharray
-+len_aqm_info_7775_fields len aqm_info 0 7775 &t_data_nents_orig_se_cmd_7775_fields
++t_data_nents_orig_se_cmd_7775_fields t_data_nents_orig se_cmd 0 7775 NULL
+mode_size_cyttsp4_sysinfo_ofs_7780_fields mode_size cyttsp4_sysinfo_ofs 0 7780 NULL
+mmu_private_affs_inode_info_7785_fields mmu_private affs_inode_info 0 7785 NULL
+read_index_wm_adsp_compr_buf_7788_fields read_index wm_adsp_compr_buf 0 7788 NULL
@@ -190317,10 +194946,9 @@ index 0000000..6b5367db
+__clk_speculate_rates_fndecl_7795_fields __clk_speculate_rates fndecl 2 7795 NULL
+remove_advertising_fndecl_7798_fields remove_advertising fndecl 4 7798 NULL
+qnx4_get_block_fndecl_7810_fields qnx4_get_block fndecl 2 7810 NULL
-+cciss_max_sectors_ctlr_info_7811_fields cciss_max_sectors ctlr_info 0 7811 NULL nohasharray
-+len_nfs_diropargs_7811_fields len nfs_diropargs 0 7811 &cciss_max_sectors_ctlr_info_7811_fields
++len_nfs_diropargs_7811_fields len nfs_diropargs 0 7811 NULL nohasharray
++cciss_max_sectors_ctlr_info_7811_fields cciss_max_sectors ctlr_info 0 7811 &len_nfs_diropargs_7811_fields
+plen_hci_event_hdr_7815_fields plen hci_event_hdr 0 7815 NULL
-+length_scsi_mode_data_7819_fields length scsi_mode_data 0 7819 NULL
+get_pipe_fndecl_7825_fields get_pipe fndecl 0-2 7825 NULL
+x1_virtio_gpu_framebuffer_7830_fields x1 virtio_gpu_framebuffer 0 7830 NULL
+rtpref_nfs_fsinfo_7835_fields rtpref nfs_fsinfo 0 7835 NULL
@@ -190331,27 +194959,28 @@ index 0000000..6b5367db
+wqe_shift_mlx4_ib_wq_7860_fields wqe_shift mlx4_ib_wq 0 7860 NULL
+n_vifs_ath10k_mac_change_chanctx_arg_7864_fields n_vifs ath10k_mac_change_chanctx_arg 0 7864 NULL
+s_fpbshift_ufs_sb_private_info_7865_fields s_fpbshift ufs_sb_private_info 0 7865 NULL
-+cyapa_i2c_read_fndecl_7870_fields cyapa_i2c_read fndecl 3 7870 NULL nohasharray
-+ata_host_alloc_pinfo_fndecl_7870_fields ata_host_alloc_pinfo fndecl 3 7870 &cyapa_i2c_read_fndecl_7870_fields
++cyapa_i2c_read_fndecl_7870_fields cyapa_i2c_read fndecl 3 7870 NULL
+mapped_vram_mb862xxfb_par_7872_fields mapped_vram mb862xxfb_par 0 7872 NULL
+iscsi_tcp_dgst_header_fndecl_7878_fields iscsi_tcp_dgst_header fndecl 3 7878 NULL
+rxstatus_epic_rx_desc_7884_fields rxstatus epic_rx_desc 0 7884 NULL nohasharray
-+sd_read_data_fndecl_7884_fields sd_read_data fndecl 3 7884 &rxstatus_epic_rx_desc_7884_fields nohasharray
-+freecom_readdata_fndecl_7884_fields freecom_readdata fndecl 4 7884 &sd_read_data_fndecl_7884_fields
++freecom_readdata_fndecl_7884_fields freecom_readdata fndecl 4 7884 &rxstatus_epic_rx_desc_7884_fields nohasharray
++sd_read_data_fndecl_7884_fields sd_read_data fndecl 3 7884 &freecom_readdata_fndecl_7884_fields
+ath6kl_wmi_send_mgmt_cmd_fndecl_7888_fields ath6kl_wmi_send_mgmt_cmd fndecl 2 7888 NULL
++i2400m_unknown_barker_fndecl_7903_fields i2400m_unknown_barker fndecl 3 7903 NULL
+ath6kl_wmi_info_req_cmd_fndecl_7906_fields ath6kl_wmi_info_req_cmd fndecl 2 7906 NULL
+mode_id_vbe_mode_ib_7913_fields mode_id vbe_mode_ib 0 7913 NULL
+rx_ring_size_vmxnet3_adapter_7917_fields rx_ring_size vmxnet3_adapter 0 7917 NULL
-+ccw_bmove_fndecl_7918_fields ccw_bmove fndecl 5-7-3-8-6-4 7918 NULL nohasharray
-+remote_addr_ib_rdma_wr_7918_fields remote_addr ib_rdma_wr 0 7918 &ccw_bmove_fndecl_7918_fields
++ccw_bmove_fndecl_7918_fields ccw_bmove fndecl 5-7-3-8-6-4 7918 NULL
++uvesafb_setpalette_fndecl_7922_fields uvesafb_setpalette fndecl 2 7922 NULL
+raid5_size_fndecl_7933_fields raid5_size fndecl 0-3-2 7933 NULL
+hfi1_max_sges_vardecl_7935_fields hfi1_max_sges vardecl 0 7935 NULL
+__locate_fndecl_7939_fields __locate fndecl 3-0 7939 NULL
+jp_journal_size_journal_params_7943_fields jp_journal_size journal_params 0 7943 NULL
-+psb_unlocked_ioctl_fndecl_7949_fields psb_unlocked_ioctl fndecl 2 7949 NULL
++xfs_iomap_write_allocate_fndecl_7950_fields xfs_iomap_write_allocate fndecl 0 7950 NULL
+num_sdma_hfi1_devdata_7951_fields num_sdma hfi1_devdata 0 7951 NULL
+jme_change_mtu_fndecl_7964_fields jme_change_mtu fndecl 2 7964 NULL
+ticket_len_rxk5_key_7970_fields ticket_len rxk5_key 0 7970 NULL
++_sp2d_alloc_fndecl_7971_fields _sp2d_alloc fndecl 1 7971 NULL
+peb_count_ubi_device_7987_fields peb_count ubi_device 0 7987 NULL
+bin_buffer_size_configfs_buffer_7988_fields bin_buffer_size configfs_buffer 0 7988 NULL
+initrd_end_vardecl_7989_fields initrd_end vardecl 0 7989 NULL
@@ -190361,7 +194990,6 @@ index 0000000..6b5367db
+encode_opaque_fixed_fndecl_8013_fields encode_opaque_fixed fndecl 3 8013 &find_resource_fndecl_8013_fields nohasharray
+ocfs2_read_quota_phys_block_fndecl_8013_fields ocfs2_read_quota_phys_block fndecl 2 8013 &encode_opaque_fixed_fndecl_8013_fields
+max_mtu_mlx4_en_priv_8015_fields max_mtu mlx4_en_priv 0 8015 NULL
-+keyctl_instantiate_key_iov_fndecl_8026_fields keyctl_instantiate_key_iov fndecl 3 8026 NULL
+period_size_snd_pcm_runtime_8027_fields period_size snd_pcm_runtime 0 8027 NULL
+length_e1000_rx_desc_8032_fields length e1000_rx_desc 0 8032 NULL
+mcast_mtu_ipoib_dev_priv_8033_fields mcast_mtu ipoib_dev_priv 0 8033 NULL
@@ -190382,35 +195010,38 @@ index 0000000..6b5367db
+ali1535_smba_vardecl_i2c_ali1535_c_8095_fields ali1535_smba vardecl_i2c-ali1535.c 0 8095 NULL
+sd_complete_frame_fndecl_8096_fields sd_complete_frame fndecl 3 8096 NULL
+batchcount_kmem_cache_8098_fields batchcount kmem_cache 0 8098 NULL
-+sddr55_read_data_fndecl_8099_fields sddr55_read_data fndecl 3 8099 NULL
++sddr55_read_data_fndecl_8099_fields sddr55_read_data fndecl 4-3 8099 NULL
+rx_cmp_meta_data_rx_cmp_ext_8103_fields rx_cmp_meta_data rx_cmp_ext 0 8103 NULL
-+__kmalloc_reserve_fndecl_8107_fields __kmalloc_reserve fndecl 1 8107 NULL
+tgt_count_blogic_adapter_8109_fields tgt_count blogic_adapter 0 8109 NULL nohasharray
+nr_relocs_drm_etnaviv_gem_submit_8109_fields nr_relocs drm_etnaviv_gem_submit 0 8109 &tgt_count_blogic_adapter_8109_fields
+speed_channel_8113_fields speed channel 0 8113 NULL
+up_dnode_8116_fields up dnode 0 8116 NULL
++__copy_user_nocache_fndecl_8122_fields __copy_user_nocache fndecl 0 8122 NULL
+m_pblk_f2fs_map_blocks_8129_fields m_pblk f2fs_map_blocks 0 8129 NULL
+jffs2_scan_inode_node_fndecl_8132_fields jffs2_scan_inode_node fndecl 4 8132 NULL
+cfg_size_pci_dev_8134_fields cfg_size pci_dev 0 8134 NULL
-+ucNumDPMLevels__ATOM_PPLIB_STATE_V2_8137_fields ucNumDPMLevels _ATOM_PPLIB_STATE_V2 0 8137 NULL nohasharray
-+wpa_ie_len_libipw_network_8137_fields wpa_ie_len libipw_network 0 8137 &ucNumDPMLevels__ATOM_PPLIB_STATE_V2_8137_fields
++wpa_ie_len_libipw_network_8137_fields wpa_ie_len libipw_network 0 8137 NULL nohasharray
++write_mem_fndecl_8137_fields write_mem fndecl 3 8137 &wpa_ie_len_libipw_network_8137_fields nohasharray
++ucNumDPMLevels__ATOM_PPLIB_STATE_V2_8137_fields ucNumDPMLevels _ATOM_PPLIB_STATE_V2 0 8137 &write_mem_fndecl_8137_fields
+max_xmit_dlength_iscsi_conn_8139_fields max_xmit_dlength iscsi_conn 0 8139 NULL nohasharray
+nct6683_find_fndecl_8139_fields nct6683_find fndecl 0 8139 &max_xmit_dlength_iscsi_conn_8139_fields
+iic_tpm_write_long_fndecl_8143_fields iic_tpm_write_long fndecl 3 8143 NULL
-+sys_preadv_fndecl_8159_fields sys_preadv fndecl 3 8159 NULL
+hr_start_block_o2hb_region_8162_fields hr_start_block o2hb_region 0 8162 NULL
+num_custom_params_pinctrl_desc_8163_fields num_custom_params pinctrl_desc 0 8163 NULL
-+read_len_ddb_flashio_8164_fields read_len ddb_flashio 0 8164 NULL nohasharray
-+devnum_denali_nand_info_8164_fields devnum denali_nand_info 0 8164 &read_len_ddb_flashio_8164_fields
++devnum_denali_nand_info_8164_fields devnum denali_nand_info 0 8164 NULL nohasharray
++read_len_ddb_flashio_8164_fields read_len ddb_flashio 0 8164 &devnum_denali_nand_info_8164_fields
+tidoffset_user_sdma_request_8166_fields tidoffset user_sdma_request 0 8166 NULL
++ubifs_scanned_corruption_fndecl_8170_fields ubifs_scanned_corruption fndecl 3 8170 NULL
+tx_ring_count_igb_adapter_8171_fields tx_ring_count igb_adapter 0 8171 NULL
++jumpshot_write_data_fndecl_8172_fields jumpshot_write_data fndecl 4 8172 NULL
+blksz_mmc_data_8174_fields blksz mmc_data 0 8174 NULL nohasharray
+ptr_mask_efx_tx_queue_8174_fields ptr_mask efx_tx_queue 0 8174 &blksz_mmc_data_8174_fields
+avail_ubifs_wbuf_8176_fields avail ubifs_wbuf 0 8176 NULL
+pdu_read_fndecl_8183_fields pdu_read fndecl 3 8183 NULL
-+mwifiex_get_common_rates_fndecl_8184_fields mwifiex_get_common_rates fndecl 3 8184 NULL
++nsftids_tid_info_8187_fields nsftids tid_info 0 8187 NULL
+brcms_c_get_header_len_fndecl_8189_fields brcms_c_get_header_len fndecl 0 8189 NULL
+resource_alignment_fndecl_8199_fields resource_alignment fndecl 0 8199 NULL
++efi_memmap_split_count_fndecl_8208_fields efi_memmap_split_count fndecl 0 8208 NULL
+tx_ring_count_fm10k_intfc_8210_fields tx_ring_count fm10k_intfc 0 8210 NULL
+mmap_size_kioctx_8213_fields mmap_size kioctx 0 8213 NULL
+clear_extent_bit_fndecl_8215_fields clear_extent_bit fndecl 2-3 8215 NULL nohasharray
@@ -190419,12 +195050,13 @@ index 0000000..6b5367db
+be_f_offset_pnfs_block_extent_8222_fields be_f_offset pnfs_block_extent 0 8222 NULL
+eeprom_size_iwl_base_params_8231_fields eeprom_size iwl_base_params 0 8231 NULL
+ir_freecount_xfs_inobt_rec_incore_8237_fields ir_freecount xfs_inobt_rec_incore 0 8237 NULL
++dump_data_bytes_fndecl_8240_fields dump_data_bytes fndecl 3 8240 NULL
+ocfs2_remove_extent_fndecl_8243_fields ocfs2_remove_extent fndecl 4-3 8243 NULL
+num_tasks_per_conn_iscsi_kwqe_init1_8249_fields num_tasks_per_conn iscsi_kwqe_init1 0 8249 NULL
+vmw_cursor_update_dmabuf_fndecl_8254_fields vmw_cursor_update_dmabuf fndecl 4-3 8254 NULL
+default_erasesize_fndecl_8255_fields default_erasesize fndecl 0 8255 NULL
+address_acpi_table_bert_8260_fields address acpi_table_bert 0 8260 NULL
-+xfs_unmap_extent_fndecl_8261_fields xfs_unmap_extent fndecl 2-3 8261 NULL
++xfs_unmap_extent_fndecl_8261_fields xfs_unmap_extent fndecl 2 8261 NULL
+buf_size_ispstat_buffer_8262_fields buf_size ispstat_buffer 0 8262 NULL
+datablkcnt_capi_register_params_8263_fields datablkcnt capi_register_params 0 8263 NULL
+cow_file_range_inline_fndecl_8264_fields cow_file_range_inline fndecl 4-3 8264 NULL
@@ -190432,45 +195064,49 @@ index 0000000..6b5367db
+datablklen_capi_register_params_8275_fields datablklen capi_register_params 0 8275 NULL
+cdc_ncm_check_tx_max_fndecl_8278_fields cdc_ncm_check_tx_max fndecl 0-2 8278 NULL
+msg_len_rndis_message_8281_fields msg_len rndis_message 0 8281 NULL
-+__sg_free_table_fndecl_8283_fields __sg_free_table fndecl 2 8283 NULL nohasharray
-+expectedlen_drbg_testvec_8283_fields expectedlen drbg_testvec 0 8283 &__sg_free_table_fndecl_8283_fields
-+tail_len_cfg80211_beacon_data_8293_fields tail_len cfg80211_beacon_data 0 8293 NULL nohasharray
-+ixgbe_read_pci_cfg_word_fndecl_8293_fields ixgbe_read_pci_cfg_word fndecl 0 8293 &tail_len_cfg80211_beacon_data_8293_fields
++__sg_free_table_fndecl_8283_fields __sg_free_table fndecl 2 8283 NULL
++rxrpc_kernel_recv_data_fndecl_8286_fields rxrpc_kernel_recv_data fndecl 4 8286 NULL
++tail_len_cfg80211_beacon_data_8293_fields tail_len cfg80211_beacon_data 0 8293 NULL
+ns_blocks_per_segment_the_nilfs_8295_fields ns_blocks_per_segment the_nilfs 0 8295 NULL nohasharray
-+f2fs_grab_bio_fndecl_8295_fields f2fs_grab_bio fndecl 2-3 8295 &ns_blocks_per_segment_the_nilfs_8295_fields
-+c_data_len_pvr2_ioread_8300_fields c_data_len pvr2_ioread 0 8300 NULL nohasharray
-+offset_nft_payload_set_8300_fields offset nft_payload_set 0 8300 &c_data_len_pvr2_ioread_8300_fields
++f2fs_grab_bio_fndecl_8295_fields f2fs_grab_bio fndecl 2 8295 &ns_blocks_per_segment_the_nilfs_8295_fields
++offset_nft_payload_set_8300_fields offset nft_payload_set 0 8300 NULL nohasharray
++c_data_len_pvr2_ioread_8300_fields c_data_len pvr2_ioread 0 8300 &offset_nft_payload_set_8300_fields
+iova_mlx5_core_mkey_8304_fields iova mlx5_core_mkey 0 8304 NULL
+ath6kl_fwlog_read_fndecl_8310_fields ath6kl_fwlog_read fndecl 3 8310 NULL
++xfs_rmapbt_calc_reserves_fndecl_8315_fields xfs_rmapbt_calc_reserves fndecl 2 8315 NULL
+max_data_size_ircomm_tty_cb_8316_fields max_data_size ircomm_tty_cb 0 8316 NULL nohasharray
+group_trans_num_acl_subject_label_8316_fields group_trans_num acl_subject_label 0 8316 &max_data_size_ircomm_tty_cb_8316_fields
+depth_vim2m_fmt_8319_fields depth vim2m_fmt 0 8319 NULL nohasharray
+msg_len_drm_dp_sideband_msg_hdr_8319_fields msg_len drm_dp_sideband_msg_hdr 0 8319 &depth_vim2m_fmt_8319_fields
+sv_max_payload_svc_serv_8322_fields sv_max_payload svc_serv 0 8322 NULL
-+vga_video_font_height_vardecl_vgacon_c_8324_fields vga_video_font_height vardecl_vgacon.c 0 8324 NULL
++vga_video_font_height_vardecl_vgacon_c_8324_fields vga_video_font_height vardecl_vgacon.c 0 8324 NULL nohasharray
++run_test_both_formats_fndecl_8324_fields run_test_both_formats fndecl 2-3 8324 &vga_video_font_height_vardecl_vgacon_c_8324_fields
+xfs_bmap_longest_free_extent_fndecl_8327_fields xfs_bmap_longest_free_extent fndecl 2-0 8327 NULL
+vhci_urb_dequeue_fndecl_8333_fields vhci_urb_dequeue fndecl 3 8333 NULL
+sec_per_lun_nvm_dev_8335_fields sec_per_lun nvm_dev 0 8335 NULL
+disks_stripe_head_8349_fields disks stripe_head 0 8349 NULL
-+req_pay_size_qlcnic_bc_trans_8353_fields req_pay_size qlcnic_bc_trans 0 8353 NULL nohasharray
-+ch_do_scsi_fndecl_8353_fields ch_do_scsi fndecl 5 8353 &req_pay_size_qlcnic_bc_trans_8353_fields
-+__nvm_submit_ppa_fndecl_8355_fields __nvm_submit_ppa fndecl 6 8355 NULL
-+srp_map_sg_entry_fndecl_8356_fields srp_map_sg_entry fndecl 0 8356 NULL
++req_pay_size_qlcnic_bc_trans_8353_fields req_pay_size qlcnic_bc_trans 0 8353 NULL
++cpuhp_down_callbacks_fndecl_8356_fields cpuhp_down_callbacks fndecl 0 8356 NULL
++__xfs_reflink_allocate_cow_fndecl_8368_fields __xfs_reflink_allocate_cow fndecl 3 8368 NULL
+qat_rsa_set_n_fndecl_8373_fields qat_rsa_set_n fndecl 3 8373 NULL
-+rx_size_i2400mu_8374_fields rx_size i2400mu 0 8374 NULL
++rx_size_i2400mu_8374_fields rx_size i2400mu 0 8374 NULL nohasharray
++venus_link_fndecl_8374_fields venus_link fndecl 5 8374 &rx_size_i2400mu_8374_fields
+height_deinterlace_q_data_8376_fields height deinterlace_q_data 0 8376 NULL
-+do_writepages_fndecl_8382_fields do_writepages fndecl 0 8382 NULL
++ar_reserved_xfs_ag_resv_8382_fields ar_reserved xfs_ag_resv 0 8382 NULL nohasharray
++do_writepages_fndecl_8382_fields do_writepages fndecl 0 8382 &ar_reserved_xfs_ag_resv_8382_fields
+current_read_offset_scif_rb_8387_fields current_read_offset scif_rb 0 8387 NULL
+depth_tc_sfq_qopt_v1_8394_fields depth tc_sfq_qopt_v1 0 8394 NULL
+ceph_pagelist_append_fndecl_8397_fields ceph_pagelist_append fndecl 3 8397 NULL
+pkt_size_data_cmd_8407_fields pkt_size data_cmd 0 8407 NULL
++length_ipw_tx_packet_8408_fields length ipw_tx_packet 0 8408 NULL
+wNdpOutPayloadRemainder_usb_cdc_ncm_ntb_parameters_8415_fields wNdpOutPayloadRemainder usb_cdc_ncm_ntb_parameters 0 8415 NULL
-+ring_blocks_vxge_hw_ring_config_8417_fields ring_blocks vxge_hw_ring_config 0 8417 NULL nohasharray
-+get_power_state_size_pp_hwmgr_func_8417_fields get_power_state_size pp_hwmgr_func 0 8417 &ring_blocks_vxge_hw_ring_config_8417_fields
++ring_blocks_vxge_hw_ring_config_8417_fields ring_blocks vxge_hw_ring_config 0 8417 NULL
+numdu_nvme_get_log_page_command_8433_fields numdu nvme_get_log_page_command 0 8433 NULL
++accum_len__strp_rx_msg_8434_fields accum_len _strp_rx_msg 0 8434 NULL
+block_dm_buffer_8440_fields block dm_buffer 0 8440 NULL
+offset_l2tp_session_8443_fields offset l2tp_session 0 8443 NULL
+frame_size_tlan_list_8446_fields frame_size tlan_list 0 8446 NULL
++di_cowextsize_xfs_icdinode_8447_fields di_cowextsize xfs_icdinode 0 8447 NULL
+numqueues_tun_struct_8450_fields numqueues tun_struct 0 8450 NULL
+ql_process_mac_split_rx_intr_fndecl_8452_fields ql_process_mac_split_rx_intr fndecl 4 8452 NULL nohasharray
+len_scifioctl_msg_8452_fields len scifioctl_msg 0 8452 &ql_process_mac_split_rx_intr_fndecl_8452_fields
@@ -190482,7 +195118,6 @@ index 0000000..6b5367db
+lbytes_tree_balance_8472_fields lbytes tree_balance 0 8472 NULL
+screen_size_fb_info_8480_fields screen_size fb_info 0 8480 NULL
+length_btrfs_bio_stripe_8481_fields length btrfs_bio_stripe 0 8481 NULL
-+i915_gem_get_gtt_alignment_fndecl_8484_fields i915_gem_get_gtt_alignment fndecl 2 8484 NULL
+max_feed_count_dvb_usb_fe_adapter_8487_fields max_feed_count dvb_usb_fe_adapter 0 8487 NULL
+ecryptfs_send_message_locked_fndecl_8490_fields ecryptfs_send_message_locked fndecl 2 8490 NULL
+tid_iwl_compressed_ba_resp_8492_fields tid iwl_compressed_ba_resp 0 8492 NULL
@@ -190494,7 +195129,6 @@ index 0000000..6b5367db
+follows_u132_command_8527_fields follows u132_command 0 8527 NULL
+alloc_blksz_shift_hfsplus_sb_info_8530_fields alloc_blksz_shift hfsplus_sb_info 0 8530 NULL
+strnlen_user_fndecl_8532_fields strnlen_user fndecl 2 8532 NULL
-+hfi1_seq_lseek_fndecl_8536_fields hfi1_seq_lseek fndecl 2 8536 NULL
+r5l_recovery_flush_one_stripe_fndecl_8538_fields r5l_recovery_flush_one_stripe fndecl 3 8538 NULL
+overlay_out_left_vivid_dev_8540_fields overlay_out_left vivid_dev 0 8540 NULL
+limit_kmem_cache_8541_fields limit kmem_cache 0 8541 NULL
@@ -190516,14 +195150,13 @@ index 0000000..6b5367db
+uar_scratch_entry_sz_mthca_dev_lim_8606_fields uar_scratch_entry_sz mthca_dev_lim 0 8606 NULL
+seq_buf_commit_fndecl_8608_fields seq_buf_commit fndecl 2 8608 NULL
+irq_spi_device_8610_fields irq spi_device 0 8610 NULL
-+transfer_size_fndecl_8623_fields transfer_size fndecl 1-2-0-3 8623 NULL
++transfer_size_fndecl_8623_fields transfer_size fndecl 0-1-2-3 8623 NULL
+block_size_cache_args_8648_fields block_size cache_args 0 8648 NULL
+e_value_offs_ext4_xattr_entry_8650_fields e_value_offs ext4_xattr_entry 0 8650 NULL
+xfs_bmap_worst_indlen_fndecl_8651_fields xfs_bmap_worst_indlen fndecl 0 8651 NULL
+truncate_size_ceph_mds_reply_inode_8652_fields truncate_size ceph_mds_reply_inode 0 8652 NULL nohasharray
+mr_len_rpcrdma_mr_seg_8652_fields mr_len rpcrdma_mr_seg 0 8652 &truncate_size_ceph_mds_reply_inode_8652_fields
+mtd_ooblayout_count_bytes_fndecl_8654_fields mtd_ooblayout_count_bytes fndecl 0 8654 NULL
-+__alloc_percpu_gfp_fndecl_8664_fields __alloc_percpu_gfp fndecl 1 8664 NULL
+vbi_end_bttv_8666_fields vbi_end bttv 0 8666 NULL
+ext4_zero_range_fndecl_8667_fields ext4_zero_range fndecl 2-3 8667 NULL
+reserve_pfn_range_fndecl_8670_fields reserve_pfn_range fndecl 1-2 8670 NULL
@@ -190531,12 +195164,11 @@ index 0000000..6b5367db
+write_data_done_iscsi_cmd_8676_fields write_data_done iscsi_cmd 0 8676 NULL
+aml_offset_acpi_rsconvert_info_8678_fields aml_offset acpi_rsconvert_info 0 8678 NULL
+status_whc_urb_8685_fields status whc_urb 0 8685 NULL
++end_data_prctl_mm_map_8687_fields end_data prctl_mm_map 0 8687 NULL
+mtd_add_partition_fndecl_8688_fields mtd_add_partition fndecl 3 8688 NULL
+env_start_mm_struct_8690_fields env_start mm_struct 0 8690 NULL
+mpeglines_vardecl_cx231xx_417_c_8691_fields mpeglines vardecl_cx231xx-417.c 0 8691 NULL
-+blk_mq_update_nr_requests_fndecl_8694_fields blk_mq_update_nr_requests fndecl 2 8694 NULL
+NumEraseUnits_erase_unit_header_t_8696_fields NumEraseUnits erase_unit_header_t 0 8696 NULL
-+iblock_execute_rw_fndecl_8701_fields iblock_execute_rw fndecl 3 8701 NULL
+hpfs_prefetch_sectors_fndecl_8708_fields hpfs_prefetch_sectors fndecl 2 8708 NULL
+max_unmap_blocks_scsi_disk_8709_fields max_unmap_blocks scsi_disk 0 8709 NULL
+ieee80211_send_auth_fndecl_8716_fields ieee80211_send_auth fndecl 6 8716 NULL nohasharray
@@ -190551,6 +195183,7 @@ index 0000000..6b5367db
+size_kmem_cache_8740_fields size kmem_cache 0 8740 NULL
+fd_execute_unmap_fndecl_8745_fields fd_execute_unmap fndecl 3-2 8745 NULL
+perf_ustack_task_size_fndecl_8746_fields perf_ustack_task_size fndecl 0 8746 NULL
++max_epid_fjes_hw_8751_fields max_epid fjes_hw 0 8751 NULL
+_netlbl_catmap_getnode_fndecl_8754_fields _netlbl_catmap_getnode fndecl 2 8754 NULL
+my_skb_align_fndecl_8755_fields my_skb_align fndecl 2 8755 NULL
+snd_pcm_hw_param_set_fndecl_8761_fields snd_pcm_hw_param_set fndecl 4 8761 NULL
@@ -190558,19 +195191,20 @@ index 0000000..6b5367db
+max_swap_info_struct_8767_fields max swap_info_struct 0 8767 NULL
+max_pfn_radeon_vm_manager_8768_fields max_pfn radeon_vm_manager 0 8768 NULL
+amdtp_stream_set_parameters_fndecl_8769_fields amdtp_stream_set_parameters fndecl 3 8769 NULL
++gfs2_adjust_quota_fndecl_8777_fields gfs2_adjust_quota fndecl 2 8777 NULL
+data_dma_powermate_device_8783_fields data_dma powermate_device 0 8783 NULL
+rx_tr_cfv_info_8786_fields rx_tr cfv_info 0 8786 NULL nohasharray
+__pg_advance_sg_page_iter_8786_fields __pg_advance sg_page_iter 0 8786 &rx_tr_cfv_info_8786_fields
+nfs_setup_write_request_fndecl_8793_fields nfs_setup_write_request fndecl 3-4 8793 NULL
+lcd_vblank_len_atyfb_par_8796_fields lcd_vblank_len atyfb_par 0 8796 NULL
+logic_start_scrub_parity_8798_fields logic_start scrub_parity 0 8798 NULL
-+dio_read_error_fndecl_8803_fields dio_read_error fndecl 5-6-4 8803 NULL
++dio_read_error_fndecl_8803_fields dio_read_error fndecl 4-6-5 8803 NULL
+write_ext_msg_fndecl_8804_fields write_ext_msg fndecl 3 8804 NULL
+amdgpu_gart_size_vardecl_8805_fields amdgpu_gart_size vardecl 0 8805 NULL
+info3_wmi_data_hdr_8808_fields info3 wmi_data_hdr 0 8808 NULL
-+ieee80211_hdrlen_fndecl_8814_fields ieee80211_hdrlen fndecl 0 8814 NULL
++ieee80211_hdrlen_fndecl_8814_fields ieee80211_hdrlen fndecl 0 8814 NULL nohasharray
++batadv_tt_global_add_fndecl_8814_fields batadv_tt_global_add fndecl 4 8814 &ieee80211_hdrlen_fndecl_8814_fields
+dma_alloc_pages_fndecl_8819_fields dma_alloc_pages fndecl 3 8819 NULL
-+shmem_user_xattr_handler_set_fndecl_8823_fields shmem_user_xattr_handler_set fndecl 6 8823 NULL
+dma_buf_mmap_fndecl_8825_fields dma_buf_mmap fndecl 3 8825 NULL
+nfs4_xattr_get_nfs4_label_fndecl_8827_fields nfs4_xattr_get_nfs4_label fndecl 6 8827 NULL
+buflow_ring_desc_ex_8829_fields buflow ring_desc_ex 0 8829 NULL
@@ -190582,24 +195216,28 @@ index 0000000..6b5367db
+blkno2_xfs_da_args_8858_fields blkno2 xfs_da_args 0 8858 NULL
+alloc_extent_buffer_fndecl_8862_fields alloc_extent_buffer fndecl 2 8862 NULL
+__memblock_free_early_fndecl_8876_fields __memblock_free_early fndecl 2-1 8876 NULL
-+fill_packet_fndecl_8877_fields fill_packet fndecl 5 8877 NULL nohasharray
-+jfs_readpages_fndecl_8877_fields jfs_readpages fndecl 4 8877 &fill_packet_fndecl_8877_fields
++jfs_readpages_fndecl_8877_fields jfs_readpages fndecl 4 8877 NULL nohasharray
++fill_packet_fndecl_8877_fields fill_packet fndecl 5 8877 &jfs_readpages_fndecl_8877_fields
+root_entry_uctp_fndecl_8878_fields root_entry_uctp fndecl 0 8878 NULL
+icsk_ext_hdr_len_inet_connection_sock_8885_fields icsk_ext_hdr_len inet_connection_sock 0 8885 NULL
+playback_frlog_rme32_8891_fields playback_frlog rme32 0 8891 NULL
+via_lock_rate_fndecl_8895_fields via_lock_rate fndecl 2 8895 NULL
-+a_data_exec_8906_fields a_data exec 0 8906 NULL
++bits_per_pixel_fb_var_screeninfo_8906_fields bits_per_pixel fb_var_screeninfo 0 8906 NULL nohasharray
++a_data_exec_8906_fields a_data exec 0 8906 &bits_per_pixel_fb_var_screeninfo_8906_fields
++init_speed_hci_uart_proto_8908_fields init_speed hci_uart_proto 0 8908 NULL
+xfs_filestream_new_ag_fndecl_8916_fields xfs_filestream_new_ag fndecl 0 8916 NULL
+_xfs_buf_get_pages_fndecl_8920_fields _xfs_buf_get_pages fndecl 2 8920 NULL
+xfs_bmbt_update_fndecl_8922_fields xfs_bmbt_update fndecl 0 8922 NULL
+data_size_mdp_superblock_1_8925_fields data_size mdp_superblock_1 0 8925 NULL
++fip_flags_fip_header_8926_fields fip_flags fip_header 0 8926 NULL
+nbufread_gspca_dev_8934_fields nbufread gspca_dev 0 8934 NULL
++nfsd_copy_file_range_fndecl_8935_fields nfsd_copy_file_range fndecl 5 8935 NULL
++i40e_pci_sriov_enable_fndecl_8949_fields i40e_pci_sriov_enable fndecl 2 8949 NULL
+tree_root_btrfs_root_backup_8950_fields tree_root btrfs_root_backup 0 8950 NULL
+get_arg_page_fndecl_8953_fields get_arg_page fndecl 2 8953 NULL
+rx_metadata_offset_brcmf_msgbuf_8954_fields rx_metadata_offset brcmf_msgbuf 0 8954 NULL
+nfrags_pktgen_dev_8956_fields nfrags pktgen_dev 0 8956 NULL
+pkt_align_fndecl_8963_fields pkt_align fndecl 2-3 8963 NULL
-+ncommunities_byt_pinctrl_soc_data_8965_fields ncommunities byt_pinctrl_soc_data 0 8965 NULL
+fromlen_nfs_symlinkargs_8967_fields fromlen nfs_symlinkargs 0 8967 NULL
+wm8776_field_set_fndecl_8970_fields wm8776_field_set fndecl 2 8970 NULL
+size_sg_pool_8971_fields size sg_pool 0 8971 NULL
@@ -190609,6 +195247,7 @@ index 0000000..6b5367db
+iomap_file_buffered_write_fndecl_8986_fields iomap_file_buffered_write fndecl 0 8986 NULL
+link_duplex_netxen_adapter_8988_fields link_duplex netxen_adapter 0 8988 NULL
+block_begin_dm_cell_key_8992_fields block_begin dm_cell_key 0 8992 NULL
++vmalloc_user_fndecl_8999_fields vmalloc_user fndecl 1 8999 NULL
+scatterwalk_map_and_copy_fndecl_9005_fields scatterwalk_map_and_copy fndecl 3 9005 NULL
+pcan_usb_decode_data_fndecl_9023_fields pcan_usb_decode_data fndecl 2 9023 NULL
+xen_del_extra_mem_fndecl_9024_fields xen_del_extra_mem fndecl 2-1 9024 NULL nohasharray
@@ -190617,6 +195256,7 @@ index 0000000..6b5367db
+report_desc_size_mousevsc_dev_9027_fields report_desc_size mousevsc_dev 0 9027 NULL
+nextread_isowbuf_t_9028_fields nextread isowbuf_t 0 9028 NULL nohasharray
+offset_gro_remcsum_9028_fields offset gro_remcsum 0 9028 &nextread_isowbuf_t_9028_fields
++t4_alloc_mem_fndecl_9029_fields t4_alloc_mem fndecl 1 9029 NULL
+wDescriptorLength_hid_class_descriptor_9030_fields wDescriptorLength hid_class_descriptor 0 9030 NULL
+svc_create_pooled_fndecl_9043_fields svc_create_pooled fndecl 2 9043 NULL
+raid_disks_geom_9044_fields raid_disks geom 0 9044 NULL
@@ -190631,36 +195271,34 @@ index 0000000..6b5367db
+nilfs_dat_read_fndecl_9076_fields nilfs_dat_read fndecl 2 9076 NULL
+advertised_mtu_tipc_link_9077_fields advertised_mtu tipc_link 0 9077 NULL
+out_int_pipe_usbtest_dev_9078_fields out_int_pipe usbtest_dev 0 9078 NULL
++count_afs_call_9081_fields count afs_call 0 9081 NULL
+start_brk_mm_struct_9085_fields start_brk mm_struct 0 9085 NULL
+optlen_rdma_ucm_set_option_9087_fields optlen rdma_ucm_set_option 0 9087 NULL
+event_count_Fsm_9088_fields event_count Fsm 0 9088 NULL
+width_fb_fillrect_9090_fields width fb_fillrect 0 9090 NULL
+vmci_qp_alloc_fndecl_9094_fields vmci_qp_alloc fndecl 5-3 9094 NULL
-+limit_parsed_partitions_9099_fields limit parsed_partitions 0 9099 NULL
+logical_id_i40e_aqc_list_capabilities_element_resp_9102_fields logical_id i40e_aqc_list_capabilities_element_resp 0 9102 NULL
+keylen_ieee80211_key_conf_9103_fields keylen ieee80211_key_conf 0 9103 NULL
-+s_blocks_count_lo_ext4_super_block_9106_fields s_blocks_count_lo ext4_super_block 0 9106 NULL nohasharray
-+fragment_size_cfrfml_9106_fields fragment_size cfrfml 0 9106 &s_blocks_count_lo_ext4_super_block_9106_fields
++fragment_size_cfrfml_9106_fields fragment_size cfrfml 0 9106 NULL nohasharray
++s_blocks_count_lo_ext4_super_block_9106_fields s_blocks_count_lo ext4_super_block 0 9106 &fragment_size_cfrfml_9106_fields
+x38_channel_num_vardecl_x38_edac_c_9109_fields x38_channel_num vardecl_x38_edac.c 0 9109 NULL
+qla4_82xx_pci_mem_write_2M_fndecl_9117_fields qla4_82xx_pci_mem_write_2M fndecl 2 9117 NULL
+numEntries__ATOM_PPLIB_VCE_Clock_Voltage_Limit_Table_9118_fields numEntries _ATOM_PPLIB_VCE_Clock_Voltage_Limit_Table 0 9118 NULL
+break_ksm_fndecl_9124_fields break_ksm fndecl 2 9124 NULL
+skl_substream_alloc_pages_fndecl_9125_fields skl_substream_alloc_pages fndecl 3 9125 NULL
+xfs_alloc_put_freelist_fndecl_9126_fields xfs_alloc_put_freelist fndecl 0 9126 NULL
-+compat_readv_fndecl_9127_fields compat_readv fndecl 3 9127 NULL
++ttm_get_kernel_zone_memory_size_fndecl_9130_fields ttm_get_kernel_zone_memory_size fndecl 0 9130 NULL
+neigh_priv_len_net_device_9133_fields neigh_priv_len net_device 0 9133 NULL
+read_buffer_length_adu_device_9140_fields read_buffer_length adu_device 0 9140 NULL
+size_ip6t_replace_9148_fields size ip6t_replace 0 9148 NULL
+cifs_uncached_read_into_pages_fndecl_9150_fields cifs_uncached_read_into_pages fndecl 3 9150 NULL
+ext_capab_len_station_parameters_9152_fields ext_capab_len station_parameters 0 9152 NULL
+fill_readbuf_fndecl_9155_fields fill_readbuf fndecl 3 9155 NULL
-+percpu_max_size_percpu_ida_9157_fields percpu_max_size percpu_ida 0 9157 NULL
+depth_saa7134_format_9167_fields depth saa7134_format 0 9167 NULL
+ib_qib_max_sges_vardecl_9168_fields ib_qib_max_sges vardecl 0 9168 NULL
+alloc_queue_pairs_i40e_vsi_9174_fields alloc_queue_pairs i40e_vsi 0 9174 NULL
+offset_hv_multipage_buffer_9175_fields offset hv_multipage_buffer 0 9175 NULL
-+__ext4_handle_dirty_super_fndecl_9177_fields __ext4_handle_dirty_super fndecl 0 9177 NULL nohasharray
-+hid_input_report_fndecl_9177_fields hid_input_report fndecl 4 9177 &__ext4_handle_dirty_super_fndecl_9177_fields
++__ext4_handle_dirty_super_fndecl_9177_fields __ext4_handle_dirty_super fndecl 0 9177 NULL
+b_size_buffer_head_9178_fields b_size buffer_head 0 9178 NULL
+max_vfio_pci_fill_info_9182_fields max vfio_pci_fill_info 0 9182 NULL
+chunk_sectors_queue_limits_9183_fields chunk_sectors queue_limits 0 9183 NULL
@@ -190671,13 +195309,10 @@ index 0000000..6b5367db
+buflen_xfs_fsop_attrlist_handlereq_9199_fields buflen xfs_fsop_attrlist_handlereq 0 9199 NULL
+efx_rx_packet_fndecl_9200_fields efx_rx_packet fndecl 4-3 9200 NULL
+byte_per_page_nand_onfi_params_9202_fields byte_per_page nand_onfi_params 0 9202 NULL
-+max_pages_ib_fmr_attr_9206_fields max_pages ib_fmr_attr 0 9206 NULL nohasharray
-+tx_max_datagrams_cdc_ncm_ctx_9206_fields tx_max_datagrams cdc_ncm_ctx 0 9206 &max_pages_ib_fmr_attr_9206_fields
-+hw_token_ehci_qh_hw_9208_fields hw_token ehci_qh_hw 0 9208 NULL
++__vma_adjust_fndecl_9204_fields __vma_adjust fndecl 3-4-2 9204 NULL
++tx_max_datagrams_cdc_ncm_ctx_9206_fields tx_max_datagrams cdc_ncm_ctx 0 9206 NULL
+mesh_rx_path_sel_frame_fndecl_9210_fields mesh_rx_path_sel_frame fndecl 3 9210 NULL
-+sae_data_len_cfg80211_auth_request_9212_fields sae_data_len cfg80211_auth_request 0 9212 NULL nohasharray
-+num_pin_hdac_hdmi_priv_9212_fields num_pin hdac_hdmi_priv 0 9212 &sae_data_len_cfg80211_auth_request_9212_fields
-+num_msix_vectors_vf_i40e_hw_capabilities_9215_fields num_msix_vectors_vf i40e_hw_capabilities 0 9215 NULL
++sae_data_len_cfg80211_auth_request_9212_fields sae_data_len cfg80211_auth_request 0 9212 NULL
+zram_meta_alloc_fndecl_9221_fields zram_meta_alloc fndecl 2 9221 NULL
+pcicfg_size_sst_pdata_9222_fields pcicfg_size sst_pdata 0 9222 NULL
+ext4_create_inline_data_fndecl_9231_fields ext4_create_inline_data fndecl 3 9231 NULL
@@ -190685,52 +195320,53 @@ index 0000000..6b5367db
+i2400mu_rx_size_grow_fndecl_9246_fields i2400mu_rx_size_grow fndecl 0 9246 NULL
+phys_pmd_init_fndecl_9251_fields phys_pmd_init fndecl 0-2-3 9251 NULL nohasharray
+vram_start_vml_info_9251_fields vram_start vml_info 0 9251 &phys_pmd_init_fndecl_9251_fields
++n_sbufs_stk_camera_9256_fields n_sbufs stk_camera 0 9256 NULL
+sk_priority_sock_9258_fields sk_priority sock 0 9258 NULL
+nsid_nvmet_ns_9259_fields nsid nvmet_ns 0 9259 NULL
+buffer_size_snd_rawmidi_runtime_9267_fields buffer_size snd_rawmidi_runtime 0 9267 NULL
+netlbl_bitmap_walk_fndecl_9270_fields netlbl_bitmap_walk fndecl 0-3 9270 NULL
+wl1251_sdio_write_fndecl_9274_fields wl1251_sdio_write fndecl 4 9274 NULL
++lsm_stripe_count_lov_stripe_md_9277_fields lsm_stripe_count lov_stripe_md 0 9277 NULL
+ResponseDataLength__MSG_SMP_PASSTHROUGH_REPLY_9278_fields ResponseDataLength _MSG_SMP_PASSTHROUGH_REPLY 0 9278 NULL
+nr_pages_start_info_9283_fields nr_pages start_info 0 9283 NULL nohasharray
+regmap_encx24j600_write_fndecl_9283_fields regmap_encx24j600_write fndecl 3 9283 &nr_pages_start_info_9283_fields
+offset_ivtv_dma_page_info_9286_fields offset ivtv_dma_page_info 0 9286 NULL
+rx_cmd_ep_usb_card_rec_9290_fields rx_cmd_ep usb_card_rec 0 9290 NULL nohasharray
+get_ramsize_brcmf_bus_ops_9290_fields get_ramsize brcmf_bus_ops 0 9290 &rx_cmd_ep_usb_card_rec_9290_fields nohasharray
-+format_reserved_ms_boot_header_9290_fields format_reserved ms_boot_header 0 9290 &get_ramsize_brcmf_bus_ops_9290_fields
-+cxd2820r_wr_regs_fndecl_9307_fields cxd2820r_wr_regs fndecl 4 9307 NULL
++buffer_bytes_st_buffer_9290_fields buffer_bytes st_buffer 0 9290 &get_ramsize_brcmf_bus_ops_9290_fields nohasharray
++format_reserved_ms_boot_header_9290_fields format_reserved ms_boot_header 0 9290 &buffer_bytes_st_buffer_9290_fields
+sys_splice_fndecl_9308_fields sys_splice fndecl 5 9308 NULL
+fcoe_conn_context_id_fcoe_kcqe_9316_fields fcoe_conn_context_id fcoe_kcqe 0 9316 NULL
+find_mergeable_fndecl_9318_fields find_mergeable fndecl 2 9318 NULL
+in_packet_size_pcm_runtime_9321_fields in_packet_size pcm_runtime 0 9321 NULL
-+pages_in_io_dio_submit_9326_fields pages_in_io dio_submit 0 9326 NULL
+extLength_long_ad_9328_fields extLength long_ad 0 9328 NULL
+ttm_bo_ioremap_fndecl_9337_fields ttm_bo_ioremap fndecl 3-2 9337 NULL
+htree_dirblock_to_tree_fndecl_9339_fields htree_dirblock_to_tree fndecl 3 9339 NULL
+di_size_xfs_icdinode_9350_fields di_size xfs_icdinode 0 9350 NULL
+tse_init_rx_buffer_fndecl_9354_fields tse_init_rx_buffer fndecl 3 9354 NULL
-+length_property_entry_9357_fields length property_entry 0 9357 NULL nohasharray
-+offset_ore_io_state_9357_fields offset ore_io_state 0 9357 &length_property_entry_9357_fields
++length_property_entry_9357_fields length property_entry 0 9357 NULL
+stv6110x_write_regs_fndecl_9359_fields stv6110x_write_regs fndecl 4 9359 NULL
+qib_qp_rcv_fndecl_9365_fields qib_qp_rcv fndecl 5 9365 NULL
+compat_sys_get_mempolicy_fndecl_9366_fields compat_sys_get_mempolicy fndecl 4 9366 NULL
+mt2060_writeregs_fndecl_9371_fields mt2060_writeregs fndecl 3 9371 NULL
++skx_count_chabox_fndecl_9372_fields skx_count_chabox fndecl 0 9372 NULL
+le_adv_data_len_hci_conn_9377_fields le_adv_data_len hci_conn 0 9377 NULL
+mss_clamp_tcp_options_received_9378_fields mss_clamp tcp_options_received 0 9378 NULL
+fix_priv_head_fndecl_9385_fields fix_priv_head fndecl 2 9385 NULL
+nr_uart_driver_9391_fields nr uart_driver 0 9391 NULL
+dr_pre_altera_jtag_9393_fields dr_pre altera_jtag 0 9393 NULL
-+ubifs_tnc_add_nm_fndecl_9397_fields ubifs_tnc_add_nm fndecl 5-4 9397 NULL
++ubifs_tnc_add_nm_fndecl_9397_fields ubifs_tnc_add_nm fndecl 4-5 9397 NULL
+sr_bg_blkno_ocfs2_suballoc_result_9401_fields sr_bg_blkno ocfs2_suballoc_result 0 9401 NULL
+caif_seqpkt_recvmsg_fndecl_9402_fields caif_seqpkt_recvmsg fndecl 3 9402 NULL
+sht3x_read_from_command_fndecl_9403_fields sht3x_read_from_command fndecl 5 9403 NULL
+exclude_mem_range_fndecl_9404_fields exclude_mem_range fndecl 2-3 9404 NULL
++run_test_fndecl_9409_fields run_test fndecl 3-4 9409 NULL
+blk_queue_physical_block_size_fndecl_9410_fields blk_queue_physical_block_size fndecl 2 9410 NULL nohasharray
+goodix_get_cfg_len_fndecl_9410_fields goodix_get_cfg_len fndecl 0 9410 &blk_queue_physical_block_size_fndecl_9410_fields
+return_size_drm_amdgpu_info_9414_fields return_size drm_amdgpu_info 0 9414 NULL
+acpi_ex_system_memory_space_handler_fndecl_9419_fields acpi_ex_system_memory_space_handler fndecl 2 9419 NULL
+r592_read_fifo_pio_fndecl_9421_fields r592_read_fifo_pio fndecl 3 9421 NULL
+dlen_garp_attr_9422_fields dlen garp_attr 0 9422 NULL
-+bcma_hcd_create_pdev_fndecl_9430_fields bcma_hcd_create_pdev fndecl 3-5 9430 NULL
+ext4_restore_inline_data_fndecl_9436_fields ext4_restore_inline_data fndecl 5 9436 NULL
+height_stk1160_9446_fields height stk1160 0 9446 NULL
+mtdchar_readoob_fndecl_9459_fields mtdchar_readoob fndecl 3 9459 NULL
@@ -190744,7 +195380,7 @@ index 0000000..6b5367db
+cap_width_usbtv_norm_params_9538_fields cap_width usbtv_norm_params 0 9538 NULL
+nilfs_mdt_forget_block_fndecl_9543_fields nilfs_mdt_forget_block fndecl 2 9543 NULL
+cnt_i40iw_hmc_obj_info_9546_fields cnt i40iw_hmc_obj_info 0 9546 NULL
-+__bio_alloc_fndecl_9552_fields __bio_alloc fndecl 2-3 9552 NULL
++__bio_alloc_fndecl_9552_fields __bio_alloc fndecl 2 9552 NULL
+rt2x00queue_insert_l2pad_fndecl_9553_fields rt2x00queue_insert_l2pad fndecl 2 9553 NULL
+display_byte_stride_vivid_dev_9554_fields display_byte_stride vivid_dev 0 9554 NULL
+rx_skb_reserve_vardecl_he_c_9559_fields rx_skb_reserve vardecl_he.c 0 9559 NULL
@@ -190768,14 +195404,13 @@ index 0000000..6b5367db
+num_fcxps_vardecl_9630_fields num_fcxps vardecl 0 9630 NULL
+ubifs_wbuf_seek_nolock_fndecl_9634_fields ubifs_wbuf_seek_nolock fndecl 3 9634 NULL
+fc_host_post_vendor_event_fndecl_9636_fields fc_host_post_vendor_event fndecl 3 9636 NULL
-+copy_to_iter_fndecl_9638_fields copy_to_iter fndecl 2 9638 NULL
++copy_to_iter_fndecl_9638_fields copy_to_iter fndecl 2-0 9638 NULL
+fd_do_prot_unmap_fndecl_9639_fields fd_do_prot_unmap fndecl 3 9639 NULL
+num_nodes_hdac_device_9647_fields num_nodes hdac_device 0 9647 NULL
+dict_size_lzma_header_9654_fields dict_size lzma_header 0 9654 NULL nohasharray
+height_drm_vmw_size_9654_fields height drm_vmw_size 0 9654 &dict_size_lzma_header_9654_fields
+x509_akid_note_name_fndecl_9656_fields x509_akid_note_name fndecl 5 9656 NULL
+wm8400_register_regulator_fndecl_9660_fields wm8400_register_regulator fndecl 2 9660 NULL
-+hugetlb_cow_fndecl_9665_fields hugetlb_cow fndecl 3 9665 NULL
+hr_slots_per_page_o2hb_region_9668_fields hr_slots_per_page o2hb_region 0 9668 NULL
+PCI_Address_DAC960_Controller_9669_fields PCI_Address DAC960_Controller 0 9669 NULL
+xen_blkif_max_ring_order_vardecl_xen_blkfront_c_9681_fields xen_blkif_max_ring_order vardecl_xen-blkfront.c 0 9681 NULL
@@ -190788,22 +195423,22 @@ index 0000000..6b5367db
+max_num_pmkids_wiphy_9691_fields max_num_pmkids wiphy 0 9691 NULL
+fill_from_dev_buffer_fndecl_9695_fields fill_from_dev_buffer fndecl 3 9695 NULL
+adp5589_build_gpiomap_fndecl_9697_fields adp5589_build_gpiomap fndecl 0 9697 NULL
++pkt_len_virtio_vsock_pkt_info_9698_fields pkt_len virtio_vsock_pkt_info 0 9698 NULL
+phys_addr_ntb_transport_mw_9704_fields phys_addr ntb_transport_mw 0 9704 NULL
+payload_len_cfg80211_wowlan_tcp_9706_fields payload_len cfg80211_wowlan_tcp 0 9706 NULL
+sr_write_async_fndecl_9707_fields sr_write_async fndecl 3 9707 NULL
++reloc_count_flat_hdr_9712_fields reloc_count flat_hdr 0 9712 NULL
+xprt_rdma_max_inline_write_vardecl_transport_c_9715_fields xprt_rdma_max_inline_write vardecl_transport.c 0 9715 NULL
-+n_functions_gcov_info_9722_fields n_functions gcov_info 0 9722 NULL nohasharray
-+page_size_dataflash_9722_fields page_size dataflash 0 9722 &n_functions_gcov_info_9722_fields
++page_size_dataflash_9722_fields page_size dataflash 0 9722 NULL
+setup_port_fndecl_9724_fields setup_port fndecl 5-4 9724 NULL nohasharray
-+start_bidx_of_node_fndecl_9724_fields start_bidx_of_node fndecl 0-1 9724 &setup_port_fndecl_9724_fields nohasharray
-+ieee80211_build_preq_ies_band_fndecl_9724_fields ieee80211_build_preq_ies_band fndecl 0 9724 &start_bidx_of_node_fndecl_9724_fields
++ieee80211_build_preq_ies_band_fndecl_9724_fields ieee80211_build_preq_ies_band fndecl 0 9724 &setup_port_fndecl_9724_fields nohasharray
++start_bidx_of_node_fndecl_9724_fields start_bidx_of_node fndecl 0-1 9724 &ieee80211_build_preq_ies_band_fndecl_9724_fields
+mask_myri10ge_tx_buf_9725_fields mask myri10ge_tx_buf 0 9725 NULL
+midi_out_ports_snd_efw_9740_fields midi_out_ports snd_efw 0 9740 NULL
-+sg_cnt_nvmet_req_9742_fields sg_cnt nvmet_req 0 9742 NULL
+key_sz_qat_rsa_ctx_9743_fields key_sz qat_rsa_ctx 0 9743 NULL
+__alloc_bootmem_fndecl_9753_fields __alloc_bootmem fndecl 2-3 9753 NULL
++inlen_mbox_info_9756_fields inlen mbox_info 0 9756 NULL
+hbuf_free_slots_mei_hw_ops_9760_fields hbuf_free_slots mei_hw_ops 0 9760 NULL
-+hidraw_write_fndecl_9763_fields hidraw_write fndecl 3 9763 NULL
+index_sdio_uart_port_9769_fields index sdio_uart_port 0 9769 NULL
+stat_ethoc_bd_9775_fields stat ethoc_bd 0 9775 NULL
+vmlfb_alloc_vram_area_fndecl_9776_fields vmlfb_alloc_vram_area fndecl 2 9776 NULL
@@ -190824,17 +195459,16 @@ index 0000000..6b5367db
+ppm_find_unused_entries_fndecl_9823_fields ppm_find_unused_entries fndecl 0 9823 NULL
+pref_erase_mmc_card_9824_fields pref_erase mmc_card 0 9824 NULL
+flags_rtl8187se_rx_desc_9826_fields flags rtl8187se_rx_desc 0 9826 NULL
++list_bytes_osdv1_attributes_list_header_9829_fields list_bytes osdv1_attributes_list_header 0 9829 NULL
+section_count_f2fs_super_block_9832_fields section_count f2fs_super_block 0 9832 NULL
+sectors_r10bio_9834_fields sectors r10bio 0 9834 NULL
+msc_buffer_contig_alloc_fndecl_9835_fields msc_buffer_contig_alloc fndecl 2 9835 NULL
+msg_length_sms_msg_hdr_9842_fields msg_length sms_msg_hdr 0 9842 NULL
+complete_read_super_fndecl_9844_fields complete_read_super fndecl 3 9844 NULL
-+sge_length_rvt_sge_9845_fields sge_length rvt_sge 0 9845 NULL
+pg_count_agp_allocate_9853_fields pg_count agp_allocate 0 9853 NULL
+data_size_virtio_gpu_vbuffer_9856_fields data_size virtio_gpu_vbuffer 0 9856 NULL
+vlan_id_rlb_client_info_9858_fields vlan_id rlb_client_info 0 9858 NULL
+videobuf_read_one_fndecl_9862_fields videobuf_read_one fndecl 3 9862 NULL
-+arvo_sysfs_read_fndecl_9874_fields arvo_sysfs_read fndecl 6 9874 NULL
+xfs_seek_hole_data_fndecl_9883_fields xfs_seek_hole_data fndecl 2 9883 NULL
+v4l_nbufs_vardecl_9889_fields v4l_nbufs vardecl 0 9889 NULL
+ovfx2_pkt_scan_fndecl_9901_fields ovfx2_pkt_scan fndecl 3 9901 NULL nohasharray
@@ -190845,8 +195479,7 @@ index 0000000..6b5367db
+ep_in_ksdazzle_cb_9917_fields ep_in ksdazzle_cb 0 9917 NULL
+__ceph_do_getattr_fndecl_9918_fields __ceph_do_getattr fndecl 0 9918 NULL
+audit_log_n_string_fndecl_9930_fields audit_log_n_string fndecl 3 9930 NULL
-+num_wsm_set_tx_rate_retry_policy_9933_fields num wsm_set_tx_rate_retry_policy 0 9933 NULL
-+_usb_writeN_sync_fndecl_9937_fields _usb_writeN_sync fndecl 4 9937 NULL
++len_load_info_9931_fields len load_info 0 9931 NULL
+r_rcv_len_rvt_qp_9940_fields r_rcv_len rvt_qp 0 9940 NULL
+num_chan_pl330_config_9943_fields num_chan pl330_config 0 9943 NULL
+buffer_len_bnad_debug_info_9948_fields buffer_len bnad_debug_info 0 9948 NULL
@@ -190859,35 +195492,33 @@ index 0000000..6b5367db
+reada_find_extent_fndecl_9973_fields reada_find_extent fndecl 2 9973 NULL
+count_tun_filter_9984_fields count tun_filter 0 9984 NULL
+start_extent_buffer_9986_fields start extent_buffer 0 9986 NULL
-+map_sg_ib_dma_mapping_ops_9988_fields map_sg ib_dma_mapping_ops 0 9988 NULL
+hugepage_add_anon_rmap_fndecl_9989_fields hugepage_add_anon_rmap fndecl 3 9989 NULL
+dm_rh_region_to_sector_fndecl_9992_fields dm_rh_region_to_sector fndecl 0-2 9992 NULL
+cyy_readb_fndecl_10011_fields cyy_readb fndecl 0 10011 NULL
+setifbcnt_fndecl_10012_fields setifbcnt fndecl 3 10012 NULL
-+_create_sg_bios_fndecl_10015_fields _create_sg_bios fndecl 4 10015 NULL
+nouveau_sgdma_create_ttm_fndecl_10022_fields nouveau_sgdma_create_ttm fndecl 2 10022 NULL
+skb_append_datato_frags_fndecl_10028_fields skb_append_datato_frags fndecl 5 10028 NULL
+add_dataflash_otp_fndecl_10031_fields add_dataflash_otp fndecl 4-3 10031 NULL
++alloc_msi_entry_fndecl_10032_fields alloc_msi_entry fndecl 2 10032 NULL
+__cookie_v6_check_fndecl_10035_fields __cookie_v6_check fndecl 0 10035 NULL
+mwifiex_send_tdls_action_frame_fndecl_10044_fields mwifiex_send_tdls_action_frame fndecl 7 10044 NULL
+sisusbcon_scroll_fndecl_10048_fields sisusbcon_scroll fndecl 5-2-3 10048 NULL
++send_buf_size_netvsc_device_10051_fields send_buf_size netvsc_device 0 10051 NULL
+ath6kl_wmi_powermode_cmd_fndecl_10052_fields ath6kl_wmi_powermode_cmd fndecl 2 10052 NULL
+musb_urb_dequeue_fndecl_10056_fields musb_urb_dequeue fndecl 3 10056 NULL
+dm_bufio_prefetch_fndecl_10057_fields dm_bufio_prefetch fndecl 2 10057 NULL
+bio_detain_range_fndecl_10064_fields bio_detain_range fndecl 2-3 10064 NULL
+rx_buf_sz_sis190_private_10068_fields rx_buf_sz sis190_private 0 10068 NULL
+max_pages_fuse_req_10069_fields max_pages fuse_req 0 10069 NULL
-+num_channels_cap11xx_hw_model_10072_fields num_channels cap11xx_hw_model 0 10072 NULL
-+sg_size_octnic_gather_10076_fields sg_size octnic_gather 0 10076 NULL
+ocfs2_refcount_xattr_tree_rec_fndecl_10077_fields ocfs2_refcount_xattr_tree_rec fndecl 3 10077 NULL
+read_csr_fndecl_10078_fields read_csr fndecl 0 10078 NULL
+nbr_fingers_rmi_2d_sensor_10079_fields nbr_fingers rmi_2d_sensor 0 10079 NULL
+mlxsw_emad_process_status_fndecl_10083_fields mlxsw_emad_process_status fndecl 0 10083 NULL
-+height_virtio_gpu_rect_10085_fields height virtio_gpu_rect 0 10085 NULL
++height_virtio_gpu_rect_10085_fields height virtio_gpu_rect 0 10085 NULL nohasharray
++size_i915_vma_10085_fields size i915_vma 0 10085 &height_virtio_gpu_rect_10085_fields
+ssb_admatch_base_fndecl_10086_fields ssb_admatch_base fndecl 0-1 10086 NULL
+__send_changing_extent_only_fndecl_10090_fields __send_changing_extent_only fndecl 0 10090 NULL
-+pskb_extract_fndecl_10092_fields pskb_extract fndecl 2-3 10092 NULL nohasharray
-+pinctrl_utils_add_map_configs_fndecl_10092_fields pinctrl_utils_add_map_configs fndecl 7 10092 &pskb_extract_fndecl_10092_fields
++pskb_extract_fndecl_10092_fields pskb_extract fndecl 2-3 10092 NULL
+em28xx_init_usb_xfer_fndecl_10106_fields em28xx_init_usb_xfer fndecl 5-6 10106 NULL
+req_sz__MPT_ADAPTER_10113_fields req_sz _MPT_ADAPTER 0 10113 NULL
+total_len_extlog_l1_head_10117_fields total_len extlog_l1_head 0 10117 NULL nohasharray
@@ -190899,38 +195530,36 @@ index 0000000..6b5367db
+parent_overlap_rbd_device_10127_fields parent_overlap rbd_device 0 10127 NULL
+max_bu_buf_len_ubifs_info_10130_fields max_bu_buf_len ubifs_info 0 10130 NULL
+ieee80211_rx_mgmt_auth_fndecl_10133_fields ieee80211_rx_mgmt_auth fndecl 3 10133 NULL
++num_inbound_streams_sctp_inithdr_10138_fields num_inbound_streams sctp_inithdr 0 10138 NULL
+qlcnic_83xx_diag_alloc_res_fndecl_10139_fields qlcnic_83xx_diag_alloc_res fndecl 3 10139 NULL
-+xprt_rdma_allocate_fndecl_10143_fields xprt_rdma_allocate fndecl 2 10143 NULL
+ns_cno_the_nilfs_10144_fields ns_cno the_nilfs 0 10144 NULL
-+mcs7830_set_reg_fndecl_10150_fields mcs7830_set_reg fndecl 3 10150 NULL
-+udp_tun_rx_dst_fndecl_10154_fields udp_tun_rx_dst fndecl 5 10154 NULL
+error_block_length_acpi_hest_generic_10170_fields error_block_length acpi_hest_generic 0 10170 NULL
+cluster_size_msdos_sb_info_10172_fields cluster_size msdos_sb_info 0 10172 NULL
+s_inopf_ufs_sb_private_info_10174_fields s_inopf ufs_sb_private_info 0 10174 NULL nohasharray
-+count_i40iw_hmc_del_obj_info_10174_fields count i40iw_hmc_del_obj_info 0 10174 &s_inopf_ufs_sb_private_info_10174_fields nohasharray
-+substream_count_snd_rawmidi_str_10174_fields substream_count snd_rawmidi_str 0 10174 &count_i40iw_hmc_del_obj_info_10174_fields
++count_i40iw_hmc_del_obj_info_10174_fields count i40iw_hmc_del_obj_info 0 10174 &s_inopf_ufs_sb_private_info_10174_fields
+acpi_sci_ioapic_setup_fndecl_10182_fields acpi_sci_ioapic_setup fndecl 4 10182 NULL
++transport_alloc_session_tags_fndecl_10186_fields transport_alloc_session_tags fndecl 3-2 10186 NULL
+xfrm6_init_path_fndecl_10187_fields xfrm6_init_path fndecl 3 10187 NULL
+size_erst_erange_10188_fields size erst_erange 0 10188 NULL
+PagesPerBlock_ms_lib_ctrl_10191_fields PagesPerBlock ms_lib_ctrl 0 10191 NULL
+tx_buf_size_mwifiex_adapter_10198_fields tx_buf_size mwifiex_adapter 0 10198 NULL
+valid_super_block_f2fs_sb_info_10206_fields valid_super_block f2fs_sb_info 0 10206 NULL
+xfs_trans_commit_fndecl_10211_fields xfs_trans_commit fndecl 0 10211 NULL
-+old_log_size_persistent_ram_zone_10215_fields old_log_size persistent_ram_zone 0 10215 NULL
+__ext4_journal_get_write_access_fndecl_10217_fields __ext4_journal_get_write_access fndecl 0 10217 NULL
+ext4_xattr_set_handle_fndecl_10221_fields ext4_xattr_set_handle fndecl 6 10221 NULL
-+uac2_ctl_value_size_fndecl_10224_fields uac2_ctl_value_size fndecl 0 10224 NULL
+pci_hotplug_bus_size_vardecl_10230_fields pci_hotplug_bus_size vardecl 0 10230 NULL
-+input_get_new_minor_fndecl_10235_fields input_get_new_minor fndecl 0 10235 NULL
-+iio_devt_vardecl_industrialio_core_c_10237_fields iio_devt vardecl_industrialio-core.c 0 10237 NULL nohasharray
-+req_pages_pvscsi_adapter_10237_fields req_pages pvscsi_adapter 0 10237 &iio_devt_vardecl_industrialio_core_c_10237_fields
-+uarc_size_mthca_uar_table_10238_fields uarc_size mthca_uar_table 0 10238 NULL
-+bv_len_bio_vec_10239_fields bv_len bio_vec 0 10239 NULL
++qlcnic_set_sds_ring_count_fndecl_10232_fields qlcnic_set_sds_ring_count fndecl 2 10232 NULL
++xfs_setfilesize_fndecl_10233_fields xfs_setfilesize fndecl 3-2 10233 NULL
++req_pages_pvscsi_adapter_10237_fields req_pages pvscsi_adapter 0 10237 NULL
++dio_get_pages_alloc_fndecl_10238_fields dio_get_pages_alloc fndecl 2 10238 NULL
++bv_len_bio_vec_10239_fields bv_len bio_vec 0 10239 NULL nohasharray
++do_fcntl_fndecl_10239_fields do_fcntl fndecl 3 10239 &bv_len_bio_vec_10239_fields
+q1_depth_bna_rx_config_10241_fields q1_depth bna_rx_config 0 10241 NULL
+smallpageshift_sddr55_card_info_10244_fields smallpageshift sddr55_card_info 0 10244 NULL
+irias_add_octseq_attrib_fndecl_10252_fields irias_add_octseq_attrib fndecl 4 10252 NULL nohasharray
+diva_os_get_context_size_fndecl_10252_fields diva_os_get_context_size fndecl 0 10252 &irias_add_octseq_attrib_fndecl_10252_fields
+filelayout_get_dense_offset_fndecl_10253_fields filelayout_get_dense_offset fndecl 0 10253 NULL
++agg_buf_sz_vardecl_r8152_c_10254_fields agg_buf_sz vardecl_r8152.c 0 10254 NULL
+iscsi_sw_tcp_send_hdr_prep_fndecl_10261_fields iscsi_sw_tcp_send_hdr_prep fndecl 3 10261 NULL
+sdebug_store_sectors_vardecl_scsi_debug_c_10267_fields sdebug_store_sectors vardecl_scsi_debug.c 0 10267 NULL
+jffs2_scan_dirent_node_fndecl_10268_fields jffs2_scan_dirent_node fndecl 4 10268 NULL
@@ -190941,18 +195570,18 @@ index 0000000..6b5367db
+ieee80211_tdls_add_chan_switch_req_ies_fndecl_10304_fields ieee80211_tdls_add_chan_switch_req_ies fndecl 6 10304 NULL
+qede_fill_frag_skb_fndecl_10307_fields qede_fill_frag_skb fndecl 4 10307 NULL
+drm_dp_dual_mode_read_fndecl_10313_fields drm_dp_dual_mode_read fndecl 4 10313 NULL
-+scsi_vpd_inquiry_fndecl_10315_fields scsi_vpd_inquiry fndecl 4 10315 NULL
+xfs_rmap_map_extent_fndecl_10318_fields xfs_rmap_map_extent fndecl 0 10318 NULL
+blk_stack_limits_fndecl_10332_fields blk_stack_limits fndecl 3 10332 NULL
+xfs_get_blocks_dax_fault_fndecl_10335_fields xfs_get_blocks_dax_fault fndecl 2 10335 NULL
+down_bplus_internal_node_10336_fields down bplus_internal_node 0 10336 NULL
++boot_max_nr_grant_frames_vardecl_grant_table_c_10337_fields boot_max_nr_grant_frames vardecl_grant-table.c 0 10337 NULL
+len_xdr_buf_10338_fields len xdr_buf 0 10338 NULL
+sector_size_btt_10339_fields sector_size btt 0 10339 NULL
++try_recover_peb_fndecl_10351_fields try_recover_peb fndecl 6-5 10351 NULL
+s_no_blocks_logfs_super_10354_fields s_no_blocks logfs_super 0 10354 NULL
+num_mgms_mlx4_caps_10367_fields num_mgms mlx4_caps 0 10367 NULL
-+vmcoreinfo_max_size_vardecl_10370_fields vmcoreinfo_max_size vardecl 0 10370 NULL
-+len_mt7601u_dma_buf_10376_fields len mt7601u_dma_buf 0 10376 NULL nohasharray
-+ssid_len_libipw_network_10376_fields ssid_len libipw_network 0 10376 &len_mt7601u_dma_buf_10376_fields
++ssid_len_libipw_network_10376_fields ssid_len libipw_network 0 10376 NULL nohasharray
++len_mt7601u_dma_buf_10376_fields len mt7601u_dma_buf 0 10376 &ssid_len_libipw_network_10376_fields
+size_synthvid_msg_hdr_10391_fields size synthvid_msg_hdr 0 10391 NULL
+arg_ax25_ctl_struct_10392_fields arg ax25_ctl_struct 0 10392 NULL
+iomem_base_myri10ge_priv_10393_fields iomem_base myri10ge_priv 0 10393 NULL
@@ -190964,18 +195593,18 @@ index 0000000..6b5367db
+_osd_req_sizeof_alist_header_fndecl_10405_fields _osd_req_sizeof_alist_header fndecl 0 10405 NULL nohasharray
+num_vss_cfgs_wm8994_pdata_10405_fields num_vss_cfgs wm8994_pdata 0 10405 &_osd_req_sizeof_alist_header_fndecl_10405_fields
+zap_vma_ptes_fndecl_10406_fields zap_vma_ptes fndecl 3-2 10406 NULL
++jfs_xattr_set_fndecl_10409_fields jfs_xattr_set fndecl 6 10409 NULL
+addr_page_req_dsc_10411_fields addr page_req_dsc 0 10411 NULL
+off_xtsplit_10412_fields off xtsplit 0 10412 NULL
+max_ctrl_size_ims_pcu_10413_fields max_ctrl_size ims_pcu 0 10413 NULL
+nent_mlx4_eq_10414_fields nent mlx4_eq 0 10414 NULL
+size_xt_table_info_10415_fields size xt_table_info 0 10415 NULL
-+num_chipselect_spi_master_10420_fields num_chipselect spi_master 0 10420 NULL
+spi_async_locked_fndecl_10422_fields spi_async_locked fndecl 0 10422 NULL
+byte_count_iwl_rx_mpdu_res_start_10437_fields byte_count iwl_rx_mpdu_res_start 0 10437 NULL nohasharray
+flip_sd_gl860_10437_fields flip sd_gl860 0 10437 &byte_count_iwl_rx_mpdu_res_start_10437_fields
+alloc_switch_ctx_fndecl_10438_fields alloc_switch_ctx fndecl 3 10438 NULL
+radeon_gem_object_create_fndecl_10441_fields radeon_gem_object_create fndecl 2 10441 NULL
-+expand_inode_data_fndecl_10442_fields expand_inode_data fndecl 2-3 10442 NULL
++expand_inode_data_fndecl_10442_fields expand_inode_data fndecl 3-2 10442 NULL
+wrfilled_cyberjack_private_10444_fields wrfilled cyberjack_private 0 10444 NULL
+p9dirent_read_fndecl_10450_fields p9dirent_read fndecl 3-0 10450 NULL
+ext4_write_inline_data_end_fndecl_10452_fields ext4_write_inline_data_end fndecl 0-4 10452 NULL
@@ -190983,13 +195612,13 @@ index 0000000..6b5367db
+length_acpi_mem_space_context_10460_fields length acpi_mem_space_context 0 10460 NULL
+vxlan_change_mtu_fndecl_10464_fields vxlan_change_mtu fndecl 2 10464 NULL nohasharray
+__btt_map_write_fndecl_10464_fields __btt_map_write fndecl 0 10464 &vxlan_change_mtu_fndecl_10464_fields
-+notesize_fndecl_10467_fields notesize fndecl 0 10467 NULL nohasharray
-+wNdpOutDivisor_usb_cdc_ncm_ntb_parameters_10467_fields wNdpOutDivisor usb_cdc_ncm_ntb_parameters 0 10467 &notesize_fndecl_10467_fields
-+__genwqe_readq_fndecl_10470_fields __genwqe_readq fndecl 0 10470 NULL
++wNdpOutDivisor_usb_cdc_ncm_ntb_parameters_10467_fields wNdpOutDivisor usb_cdc_ncm_ntb_parameters 0 10467 NULL nohasharray
++notesize_fndecl_10467_fields notesize fndecl 0 10467 &wNdpOutDivisor_usb_cdc_ncm_ntb_parameters_10467_fields
+devnum_usb_device_10474_fields devnum usb_device 0 10474 NULL
+signature_mspro_attribute_10483_fields signature mspro_attribute 0 10483 NULL
-+out_min_chans_snd_card_asihpi_10490_fields out_min_chans snd_card_asihpi 0 10490 NULL
-+msb_cache_read_fndecl_10494_fields msb_cache_read fndecl 5 10494 NULL
++out_min_chans_snd_card_asihpi_10490_fields out_min_chans snd_card_asihpi 0 10490 NULL nohasharray
++avc_tuner_dsd_dvb_c_fndecl_10490_fields avc_tuner_dsd_dvb_c fndecl 0 10490 &out_min_chans_snd_card_asihpi_10490_fields
++msb_cache_read_fndecl_10494_fields msb_cache_read fndecl 5-2 10494 NULL
+xfs_bmap_punch_delalloc_range_fndecl_10503_fields xfs_bmap_punch_delalloc_range fndecl 2 10503 NULL
+cidlen_he_rbrq_10504_fields cidlen he_rbrq 0 10504 NULL
+nouveau_channel_prep_fndecl_10506_fields nouveau_channel_prep fndecl 3 10506 NULL
@@ -190999,17 +195628,15 @@ index 0000000..6b5367db
+slba_nvme_rw_command_10529_fields slba nvme_rw_command 0 10529 NULL
+rsa_offset_intel_guc_fw_10530_fields rsa_offset intel_guc_fw 0 10530 NULL
+stride_cobalt_stream_10537_fields stride cobalt_stream 0 10537 NULL
++cros_ec_prepare_tx_fndecl_10539_fields cros_ec_prepare_tx fndecl 0 10539 NULL
+logical_scrub_page_10540_fields logical scrub_page 0 10540 NULL
+xen_set_callback_via_fndecl_10541_fields xen_set_callback_via fndecl 1 10541 NULL
-+emi62_writememory_fndecl_10544_fields emi62_writememory fndecl 4 10544 NULL
+isofs_get_last_session_fndecl_10547_fields isofs_get_last_session fndecl 0 10547 NULL nohasharray
+y_skip_top_mt9m001_10547_fields y_skip_top mt9m001 0 10547 &isofs_get_last_session_fndecl_10547_fields
+nv_change_mtu_fndecl_10551_fields nv_change_mtu fndecl 2 10551 NULL
+new_leaf_fndecl_10553_fields new_leaf fndecl 3 10553 NULL
+id_hsi_controller_10557_fields id hsi_controller 0 10557 NULL
+tcf_csum_ipv6_icmp_fndecl_10562_fields tcf_csum_ipv6_icmp fndecl 3 10562 NULL
-+dbg_dest_reg_num_iwl_fw_10568_fields dbg_dest_reg_num iwl_fw 0 10568 NULL
-+num_send_contexts_hfi1_devdata_10569_fields num_send_contexts hfi1_devdata 0 10569 NULL
+cnt_rsxx_reg_access_10573_fields cnt rsxx_reg_access 0 10573 NULL
+sb_bsize_shift_gfs2_sb_host_10575_fields sb_bsize_shift gfs2_sb_host 0 10575 NULL nohasharray
+ds_write_shift_logfs_disk_super_10575_fields ds_write_shift logfs_disk_super 0 10575 &sb_bsize_shift_gfs2_sb_host_10575_fields
@@ -191018,6 +195645,8 @@ index 0000000..6b5367db
+buf_idx_mei_cl_cb_10585_fields buf_idx mei_cl_cb 0 10585 NULL nohasharray
+vmw_compat_shader_add_fndecl_10585_fields vmw_compat_shader_add fndecl 6 10585 &buf_idx_mei_cl_cb_10585_fields
+pcmcia_make_resource_fndecl_10591_fields pcmcia_make_resource fndecl 2-1 10591 NULL
++uart_set_options_fndecl_10592_fields uart_set_options fndecl 3 10592 NULL
++wcn36xx_smd_send_and_wait_fndecl_10595_fields wcn36xx_smd_send_and_wait fndecl 2 10595 NULL
+size_ib_uverbs_flow_attr_10597_fields size ib_uverbs_flow_attr 0 10597 NULL
+max_frame_size_atl1_hw_10601_fields max_frame_size atl1_hw 0 10601 NULL
+uremainder64_st_cmdstatus_10606_fields uremainder64 st_cmdstatus 0 10606 NULL
@@ -191032,13 +195661,12 @@ index 0000000..6b5367db
+length_iomap_10641_fields length iomap 0 10641 NULL
+tcp_sendpage_fndecl_10646_fields tcp_sendpage fndecl 4-3 10646 NULL
+cxgbit_map_skb_fndecl_10650_fields cxgbit_map_skb fndecl 4-3 10650 NULL
-+smk_write_relabel_self_fndecl_10657_fields smk_write_relabel_self fndecl 3 10657 NULL
+memory_size_vhost_memory_region_10658_fields memory_size vhost_memory_region 0 10658 NULL
+tlv_put_fndecl_10659_fields tlv_put fndecl 4 10659 NULL
+start_mtd_oob_buf32_10664_fields start mtd_oob_buf32 0 10664 NULL
+len_ahd_dma_seg_10667_fields len ahd_dma_seg 0 10667 NULL
-+nfc_targets_found_fndecl_10669_fields nfc_targets_found fndecl 3 10669 NULL
+radeon_ttm_tt_create_fndecl_10672_fields radeon_ttm_tt_create fndecl 2 10672 NULL
++mmc_test_simple_transfer_fndecl_10675_fields mmc_test_simple_transfer fndecl 6-5-3 10675 NULL
+word_size_e1000_nvm_info_10681_fields word_size e1000_nvm_info 0 10681 NULL nohasharray
+xfs_rtfind_forw_fndecl_10681_fields xfs_rtfind_forw fndecl 3-0 10681 &word_size_e1000_nvm_info_10681_fields
+tlen_sc18is602_10682_fields tlen sc18is602 0 10682 NULL
@@ -191046,7 +195674,6 @@ index 0000000..6b5367db
+extract_icmp6_fields_fndecl_10685_fields extract_icmp6_fields fndecl 2 10685 NULL
+num_frames_usb_usbvision_10687_fields num_frames usb_usbvision 0 10687 NULL
+alauda_read_block_raw_fndecl_10688_fields alauda_read_block_raw fndecl 4 10688 NULL
-+rx_ba_win_size_conf_ht_setting_10692_fields rx_ba_win_size conf_ht_setting 0 10692 NULL
+gigaset_initbcs_fndecl_10693_fields gigaset_initbcs fndecl 3 10693 NULL
+afs_write_begin_fndecl_10704_fields afs_write_begin fndecl 3-4 10704 NULL
+xfs_alloc_read_agf_fndecl_10710_fields xfs_alloc_read_agf fndecl 3-0 10710 NULL
@@ -191057,25 +195684,26 @@ index 0000000..6b5367db
+blocks_dm_verity_fec_10728_fields blocks dm_verity_fec 0 10728 &ipv6_recv_error_fndecl_10728_fields
+xen_p2m_size_vardecl_10730_fields xen_p2m_size vardecl 0 10730 NULL
+iomem_reg_shift_serial_struct_10733_fields iomem_reg_shift serial_struct 0 10733 NULL
-+ntp_fltr_count_bnxt_10734_fields ntp_fltr_count bnxt 0 10734 NULL
+sb_dirblklog_xfs_sb_10738_fields sb_dirblklog xfs_sb 0 10738 NULL
+__memblock_find_range_bottom_up_fndecl_10739_fields __memblock_find_range_bottom_up fndecl 0-4-1-2 10739 NULL
-+BufSizeShift_qinfo_chip_10746_fields BufSizeShift qinfo_chip 0 10746 NULL nohasharray
-+page_errors_dio_10746_fields page_errors dio 0 10746 &BufSizeShift_qinfo_chip_10746_fields
++pipe_get_pages_alloc_fndecl_10743_fields pipe_get_pages_alloc fndecl 3-0 10743 NULL
++page_errors_dio_10746_fields page_errors dio 0 10746 NULL nohasharray
++BufSizeShift_qinfo_chip_10746_fields BufSizeShift qinfo_chip 0 10746 &page_errors_dio_10746_fields
+next_blkoff_curseg_info_10751_fields next_blkoff curseg_info 0 10751 NULL
+NumEraseRegions_cfi_ident_10753_fields NumEraseRegions cfi_ident 0 10753 NULL
+write_head_fndecl_10754_fields write_head fndecl 4 10754 NULL
+adu_write_fndecl_10756_fields adu_write fndecl 3 10756 NULL
+data_start_dm_verity_10759_fields data_start dm_verity 0 10759 NULL
+new_chunk_core_exception_10765_fields new_chunk core_exception 0 10765 NULL
-+ocrdma_reg_user_mr_fndecl_10777_fields ocrdma_reg_user_mr fndecl 2-3 10777 NULL
++ocrdma_reg_user_mr_fndecl_10777_fields ocrdma_reg_user_mr fndecl 3-2 10777 NULL
+amdgpu_ttm_tt_create_fndecl_10779_fields amdgpu_ttm_tt_create fndecl 2 10779 NULL
+unallocated_pble_i40iw_hmc_pble_rsrc_10784_fields unallocated_pble i40iw_hmc_pble_rsrc 0 10784 NULL
-+pnode_sz_ubifs_info_10791_fields pnode_sz ubifs_info 0 10791 NULL nohasharray
-+ea_write_fndecl_10791_fields ea_write fndecl 3 10791 &pnode_sz_ubifs_info_10791_fields
++ea_write_fndecl_10791_fields ea_write fndecl 3 10791 NULL nohasharray
++pnode_sz_ubifs_info_10791_fields pnode_sz ubifs_info 0 10791 &ea_write_fndecl_10791_fields
+read32_brcmf_buscore_ops_10795_fields read32 brcmf_buscore_ops 0 10795 NULL
+set_config_fndecl_10797_fields set_config fndecl 0 10797 NULL
-+num_events_kfd_ioctl_wait_events_args_10811_fields num_events kfd_ioctl_wait_events_args 0 10811 NULL
++num_events_kfd_ioctl_wait_events_args_10811_fields num_events kfd_ioctl_wait_events_args 0 10811 NULL nohasharray
++rtgt_cnt_snic_disc_10811_fields rtgt_cnt snic_disc 0 10811 &num_events_kfd_ioctl_wait_events_args_10811_fields
+hstcp_cong_avoid_fndecl_10814_fields hstcp_cong_avoid fndecl 3 10814 NULL nohasharray
+page_offset_sw_rx_data_10814_fields page_offset sw_rx_data 0 10814 &hstcp_cong_avoid_fndecl_10814_fields
+ssb_sdio_block_write_fndecl_10815_fields ssb_sdio_block_write fndecl 3 10815 NULL nohasharray
@@ -191092,26 +195720,25 @@ index 0000000..6b5367db
+v_size_nilfs_argv_10857_fields v_size nilfs_argv 0 10857 NULL
+h_stk_size_10859_fields h stk_size 0 10859 NULL
+size_fuse_notify_retrieve_out_10862_fields size fuse_notify_retrieve_out 0 10862 NULL
-+ezusb_fill_req_fndecl_10868_fields ezusb_fill_req fndecl 0-2 10868 NULL nohasharray
-+ts_packet_count_cx23885_tsport_10868_fields ts_packet_count cx23885_tsport 0 10868 &ezusb_fill_req_fndecl_10868_fields
++command_p_header95_10867_fields command p_header95 0 10867 NULL
++ts_packet_count_cx23885_tsport_10868_fields ts_packet_count cx23885_tsport 0 10868 NULL nohasharray
++ezusb_fill_req_fndecl_10868_fields ezusb_fill_req fndecl 0-2 10868 &ts_packet_count_cx23885_tsport_10868_fields
+p9stat_read_fndecl_10869_fields p9stat_read fndecl 3 10869 NULL
+pci_mmconfig_alloc_fndecl_10875_fields pci_mmconfig_alloc fndecl 2-3-4 10875 NULL
+w9968cf_pkt_scan_fndecl_10878_fields w9968cf_pkt_scan fndecl 3 10878 NULL
+sgl_map_user_pages_fndecl_10881_fields sgl_map_user_pages fndecl 3 10881 NULL
+num_streams_lola_pcm_10882_fields num_streams lola_pcm 0 10882 NULL
-+run_apei_exec_ins_type_10886_fields run apei_exec_ins_type 0 10886 NULL
+drv_tss_rings_qlcnic_adapter_10887_fields drv_tss_rings qlcnic_adapter 0 10887 NULL
+spu_write_fndecl_10889_fields spu_write fndecl 4 10889 NULL
+max_sge_per_wr_iwch_rnic_attributes_10892_fields max_sge_per_wr iwch_rnic_attributes 0 10892 NULL
+ecryptfs_lower_header_size_fndecl_10894_fields ecryptfs_lower_header_size fndecl 0 10894 NULL
+slot_device_offset_controller_10895_fields slot_device_offset controller 0 10895 NULL
-+table_size_acpi_einj_trigger_10899_fields table_size acpi_einj_trigger 0 10899 NULL
+i2c_hid_get_report_length_fndecl_10901_fields i2c_hid_get_report_length fndecl 0 10901 NULL nohasharray
+n_cell_devs_intel_soc_pmic_config_10901_fields n_cell_devs intel_soc_pmic_config 0 10901 &i2c_hid_get_report_length_fndecl_10901_fields
+udf_read_ptagged_fndecl_10905_fields udf_read_ptagged fndecl 3 10905 NULL
++vfio_lock_acct_fndecl_10907_fields vfio_lock_acct fndecl 1 10907 NULL
+auxdev_llseek_fndecl_10911_fields auxdev_llseek fndecl 2 10911 NULL
-+data_len_rndis_packet_10918_fields data_len rndis_packet 0 10918 NULL nohasharray
-+compat_sys_msgsnd_fndecl_10918_fields compat_sys_msgsnd fndecl 3 10918 &data_len_rndis_packet_10918_fields
++data_len_rndis_packet_10918_fields data_len rndis_packet 0 10918 NULL
+isdn_audio_adpcm2xlaw_fndecl_10927_fields isdn_audio_adpcm2xlaw fndecl 0 10927 NULL
+ieee802154_max_payload_fndecl_10928_fields ieee802154_max_payload fndecl 0 10928 NULL
+ud_bmove_fndecl_10929_fields ud_bmove fndecl 8-6-4-7-5-3 10929 NULL
@@ -191121,14 +195748,13 @@ index 0000000..6b5367db
+max_i2c_msg_len_r820t_config_10951_fields max_i2c_msg_len r820t_config 0 10951 NULL nohasharray
+acc_passl_accessdata_dn_10951_fields acc_passl accessdata_dn 0 10951 &max_i2c_msg_len_r820t_config_10951_fields
+num_lan_qps_i40e_pf_10953_fields num_lan_qps i40e_pf 0 10953 NULL
-+iov_iter_init_fndecl_10954_fields iov_iter_init fndecl 5-4 10954 NULL
++iov_iter_init_fndecl_10954_fields iov_iter_init fndecl 5 10954 NULL
+drm_fb_helper_fill_fix_fndecl_10963_fields drm_fb_helper_fill_fix fndecl 2 10963 NULL
+jffs2_flash_read_fndecl_10968_fields jffs2_flash_read fndecl 0 10968 NULL
+agp_remap_fndecl_10970_fields agp_remap fndecl 2 10970 NULL
+sys_ftruncate_fndecl_10972_fields sys_ftruncate fndecl 2 10972 NULL
+buffer_count_drm_i915_gem_execbuffer_10978_fields buffer_count drm_i915_gem_execbuffer 0 10978 NULL
+ssid_len_wl1271_scan_10981_fields ssid_len wl1271_scan 0 10981 NULL
-+lbs_wrbbp_write_fndecl_10987_fields lbs_wrbbp_write fndecl 3 10987 NULL
+l2cap_build_conf_rsp_fndecl_10988_fields l2cap_build_conf_rsp fndecl 0 10988 NULL
+msize_vardecl_pmc551_c_10989_fields msize vardecl_pmc551.c 0 10989 NULL nohasharray
+vxfs_blkiget_fndecl_10989_fields vxfs_blkiget fndecl 3-2 10989 &msize_vardecl_pmc551_c_10989_fields
@@ -191136,8 +195762,7 @@ index 0000000..6b5367db
+bitmap_size_dma_iommu_mapping_10997_fields bitmap_size dma_iommu_mapping 0 10997 NULL
+l2nbperpage_jfs_sb_info_11000_fields l2nbperpage jfs_sb_info 0 11000 NULL
+il4965_tx_agg_stop_fndecl_11004_fields il4965_tx_agg_stop fndecl 4 11004 NULL
-+xfs_bmap_add_extent_unwritten_real_fndecl_11006_fields xfs_bmap_add_extent_unwritten_real fndecl 0 11006 NULL nohasharray
-+dccp_setsockopt_ccid_fndecl_11006_fields dccp_setsockopt_ccid fndecl 4 11006 &xfs_bmap_add_extent_unwritten_real_fndecl_11006_fields
++xfs_bmap_add_extent_unwritten_real_fndecl_11006_fields xfs_bmap_add_extent_unwritten_real fndecl 0 11006 NULL
+drm_gtf2_m_fndecl_11007_fields drm_gtf2_m fndecl 0 11007 NULL
+height_v4l2_pix_format_mplane_11015_fields height v4l2_pix_format_mplane 0 11015 NULL
+xferred_ScsiReqBlk_11017_fields xferred ScsiReqBlk 0 11017 NULL
@@ -191146,6 +195771,7 @@ index 0000000..6b5367db
+len_hif_scatter_req_11022_fields len hif_scatter_req 0 11022 NULL
+preallocate_pcm_pages_fndecl_11026_fields preallocate_pcm_pages fndecl 2 11026 NULL
+count_vfio_irq_set_11027_fields count vfio_irq_set 0 11027 NULL
++drm_dp_sideband_msg_build_fndecl_11028_fields drm_dp_sideband_msg_build fndecl 3 11028 NULL
+len_nfs3_mknodargs_11030_fields len nfs3_mknodargs 0 11030 NULL
+sectors_per_block_pool_11035_fields sectors_per_block pool 0 11035 NULL
+namelen_xfs_dir2_data_entry_11036_fields namelen xfs_dir2_data_entry 0 11036 NULL nohasharray
@@ -191159,7 +195785,7 @@ index 0000000..6b5367db
+entry_fat_entry_11079_fields entry fat_entry 0 11079 NULL
+irda_sendmsg_dgram_fndecl_11080_fields irda_sendmsg_dgram fndecl 3 11080 NULL
+do_brk_fndecl_11101_fields do_brk fndecl 1-2 11101 NULL
-+acpi_processor_power_verify_fndecl_11105_fields acpi_processor_power_verify fndecl 0 11105 NULL
++mbox_alloc_fndecl_11103_fields mbox_alloc fndecl 3 11103 NULL
+__getblk_gfp_fndecl_11107_fields __getblk_gfp fndecl 3-2 11107 NULL nohasharray
+ext4_acl_from_disk_fndecl_11107_fields ext4_acl_from_disk fndecl 2 11107 &__getblk_gfp_fndecl_11107_fields
+wTotalBlockNumber_ms_bootblock_sysinf_11108_fields wTotalBlockNumber ms_bootblock_sysinf 0 11108 NULL
@@ -191180,14 +195806,12 @@ index 0000000..6b5367db
+drv_rss_rings_qlcnic_adapter_11169_fields drv_rss_rings qlcnic_adapter 0 11169 NULL
+udf_tread_fndecl_11173_fields udf_tread fndecl 2 11173 NULL
+payload_len_fc_bsg_buffer_11175_fields payload_len fc_bsg_buffer 0 11175 NULL
-+c4iw_init_resource_fndecl_11178_fields c4iw_init_resource fndecl 2-3 11178 NULL
+jp_journal_1st_block_journal_params_11180_fields jp_journal_1st_block journal_params 0 11180 NULL
+ilo_major_vardecl_hpilo_c_11181_fields ilo_major vardecl_hpilo.c 0 11181 NULL
+xtInsert_fndecl_11182_fields xtInsert fndecl 5-4 11182 NULL
+fwd_cnt_virtio_vsock_hdr_11188_fields fwd_cnt virtio_vsock_hdr 0 11188 NULL
+sys_get_mempolicy_fndecl_11192_fields sys_get_mempolicy fndecl 4 11192 NULL
+resid_virtio_scsi_cmd_resp_11193_fields resid virtio_scsi_cmd_resp 0 11193 NULL
-+get_user_pages_remote_fndecl_11197_fields get_user_pages_remote fndecl 0-3 11197 NULL
+t4vf_fl_pkt_align_fndecl_11203_fields t4vf_fl_pkt_align fndecl 0 11203 NULL nohasharray
+perf_output_begin_fndecl_11203_fields perf_output_begin fndecl 3 11203 &t4vf_fl_pkt_align_fndecl_11203_fields
+vb2_fop_write_fndecl_11207_fields vb2_fop_write fndecl 3 11207 NULL
@@ -191196,12 +195820,15 @@ index 0000000..6b5367db
+mq_create_fndecl_11210_fields mq_create fndecl 1 11210 NULL
+vid_end_switchdev_obj_port_vlan_11218_fields vid_end switchdev_obj_port_vlan 0 11218 NULL
+num_encoder_drm_mode_config_11220_fields num_encoder drm_mode_config 0 11220 NULL
++bcd2000_dump_buffer_fndecl_11234_fields bcd2000_dump_buffer fndecl 3 11234 NULL
+hdr_len_ieee80211_cipher_scheme_11241_fields hdr_len ieee80211_cipher_scheme 0 11241 NULL
+nfsd_get_default_max_blksize_fndecl_11251_fields nfsd_get_default_max_blksize fndecl 0 11251 NULL
++iso_buffers_usb_line6_11254_fields iso_buffers usb_line6 0 11254 NULL
+ds1305_nvram_write_fndecl_11267_fields ds1305_nvram_write fndecl 6 11267 NULL
+hactive_videomode_11268_fields hactive videomode 0 11268 NULL
+btcx_align_fndecl_11269_fields btcx_align fndecl 4 11269 NULL nohasharray
-+vii_size_vxfs_inode_info_11269_fields vii_size vxfs_inode_info 0 11269 &btcx_align_fndecl_11269_fields
++rxrpc_recvmsg_data_fndecl_11269_fields rxrpc_recvmsg_data fndecl 5 11269 &btcx_align_fndecl_11269_fields nohasharray
++vii_size_vxfs_inode_info_11269_fields vii_size vxfs_inode_info 0 11269 &rxrpc_recvmsg_data_fndecl_11269_fields
+snd_midi_event_encode_byte_fndecl_11281_fields snd_midi_event_encode_byte fndecl 0 11281 NULL
+btrfs_set_prop_fndecl_11284_fields btrfs_set_prop fndecl 4 11284 NULL
+mxuport_prepare_write_buffer_fndecl_11292_fields mxuport_prepare_write_buffer fndecl 3 11292 NULL
@@ -191215,6 +195842,7 @@ index 0000000..6b5367db
+len_skl_ext_manifest_hdr_11331_fields len skl_ext_manifest_hdr 0 11331 NULL
+page_size_ib_umem_11335_fields page_size ib_umem 0 11335 NULL
+charcount_console_font_11338_fields charcount console_font 0 11338 NULL
++command_p_header100_11343_fields command p_header100 0 11343 NULL
+s_sbbase_ufs_sb_private_info_11344_fields s_sbbase ufs_sb_private_info 0 11344 NULL
+update_devnum_fndecl_11348_fields update_devnum fndecl 2 11348 NULL
+vlanid_full_rx_done_desc_11354_fields vlanid full_rx_done_desc 0 11354 NULL
@@ -191224,15 +195852,13 @@ index 0000000..6b5367db
+build_dpcd_write_fndecl_11376_fields build_dpcd_write fndecl 4 11376 NULL
+xz_dec_init_fndecl_11382_fields xz_dec_init fndecl 2 11382 NULL
+alloc_streams_hc_driver_11390_fields alloc_streams hc_driver 0 11390 NULL
++max_tchs_cyttsp4_opcfg_11393_fields max_tchs cyttsp4_opcfg 0 11393 NULL
+xfs_alloc_ag_vextent_small_fndecl_11407_fields xfs_alloc_ag_vextent_small fndecl 0 11407 NULL
+setup_data_setup_header_11411_fields setup_data setup_header 0 11411 NULL
+in_args_qlcnic_mailbox_metadata_11413_fields in_args qlcnic_mailbox_metadata 0 11413 NULL
-+iso_packets_buffer_init_fndecl_11414_fields iso_packets_buffer_init fndecl 4 11414 NULL
-+mc13xxx_add_subdevice_pdata_fndecl_11426_fields mc13xxx_add_subdevice_pdata fndecl 4 11426 NULL
-+smt_build_frame_fndecl_11428_fields smt_build_frame fndecl 4 11428 NULL
++isdn_ppp_write_fndecl_11430_fields isdn_ppp_write fndecl 4 11430 NULL
+rule_cnt_ethtool_rxnfc_11436_fields rule_cnt ethtool_rxnfc 0 11436 NULL nohasharray
+rxBytesRemaining_edgeport_serial_11436_fields rxBytesRemaining edgeport_serial 0 11436 &rule_cnt_ethtool_rxnfc_11436_fields
-+sys_preadv2_fndecl_11439_fields sys_preadv2 fndecl 3 11439 NULL
+NFTL_findfreeblock_fndecl_11466_fields NFTL_findfreeblock fndecl 0 11466 NULL
+lower_margin_fb_var_screeninfo_11469_fields lower_margin fb_var_screeninfo 0 11469 NULL
+id_header_size_perf_event_11470_fields id_header_size perf_event 0 11470 NULL
@@ -191240,9 +195866,10 @@ index 0000000..6b5367db
+hsync_len_videomode_11474_fields hsync_len videomode 0 11474 NULL
+iov_shorten_fndecl_11481_fields iov_shorten fndecl 3 11481 NULL nohasharray
+c_cpos_ocfs2_write_cluster_desc_11481_fields c_cpos ocfs2_write_cluster_desc 0 11481 &iov_shorten_fndecl_11481_fields
-+num_crtc_drm_mode_config_11484_fields num_crtc drm_mode_config 0 11484 NULL
-+length_RioCommand_11495_fields length RioCommand 0 11495 NULL nohasharray
-+get_ablock_fndecl_11495_fields get_ablock fndecl 2 11495 &length_RioCommand_11495_fields
++num_crtc_drm_mode_config_11484_fields num_crtc drm_mode_config 0 11484 NULL nohasharray
++wReportDescLength_gb_hid_desc_response_11484_fields wReportDescLength gb_hid_desc_response 0 11484 &num_crtc_drm_mode_config_11484_fields
++get_ablock_fndecl_11495_fields get_ablock fndecl 2 11495 NULL nohasharray
++length_RioCommand_11495_fields length RioCommand 0 11495 &get_ablock_fndecl_11495_fields
+batadv_max_header_len_fndecl_11496_fields batadv_max_header_len fndecl 0 11496 NULL
+qcaspi_write_burst_fndecl_11497_fields qcaspi_write_burst fndecl 3 11497 NULL
+prepare_write_buffer_usb_serial_driver_11498_fields prepare_write_buffer usb_serial_driver 0 11498 NULL
@@ -191260,12 +195887,13 @@ index 0000000..6b5367db
+find_compression_threshold_fndecl_11575_fields find_compression_threshold fndecl 3 11575 NULL nohasharray
+__ocfs2_add_entry_fndecl_11575_fields __ocfs2_add_entry fndecl 4 11575 &find_compression_threshold_fndecl_11575_fields
+ram_header_offset_qxl_rom_11576_fields ram_header_offset qxl_rom 0 11576 NULL
++brcmf_fil_iovar_data_get_fndecl_11579_fields brcmf_fil_iovar_data_get fndecl 4 11579 NULL
+next_index_jfs_inode_info_11588_fields next_index jfs_inode_info 0 11588 NULL
+add_advertising_fndecl_11602_fields add_advertising fndecl 4 11602 NULL
-+prev_free_msdos_sb_info_11603_fields prev_free msdos_sb_info 0 11603 NULL nohasharray
-+spi_execute_fndecl_11603_fields spi_execute fndecl 5 11603 &prev_free_msdos_sb_info_11603_fields
++prev_free_msdos_sb_info_11603_fields prev_free msdos_sb_info 0 11603 NULL
+desc_num_hnae_ring_11610_fields desc_num hnae_ring 0 11610 NULL
+frame_length_spi_message_11612_fields frame_length spi_message 0 11612 NULL
++batadv_tt_hash_find_fndecl_11619_fields batadv_tt_hash_find fndecl 3 11619 NULL
+word1_atl1e_recv_ret_status_11620_fields word1 atl1e_recv_ret_status 0 11620 NULL
+btrfs_add_ordered_extent_dio_fndecl_11621_fields btrfs_add_ordered_extent_dio fndecl 4-2-3 11621 NULL
+dataLen_PVSCSIRingCmpDesc_11627_fields dataLen PVSCSIRingCmpDesc 0 11627 NULL
@@ -191274,26 +195902,29 @@ index 0000000..6b5367db
+peek_head_len_fndecl_11632_fields peek_head_len fndecl 0 11632 &posix_acl_init_fndecl_11632_fields nohasharray
+dtl1_write_fndecl_11632_fields dtl1_write fndecl 0 11632 &peek_head_len_fndecl_11632_fields
+num_mon_ceph_options_11640_fields num_mon ceph_options 0 11640 NULL
++vmw_execbuf_process_fndecl_11642_fields vmw_execbuf_process fndecl 5 11642 NULL
+ath6kl_get_num_reg_fndecl_11647_fields ath6kl_get_num_reg fndecl 0 11647 NULL
-+bulk_size_cam_11663_fields bulk_size cam 0 11663 NULL
-+__setup_root_fndecl_11664_fields __setup_root fndecl 2-1 11664 NULL nohasharray
-+num_snd_ratnum_11664_fields num snd_ratnum 0 11664 &__setup_root_fndecl_11664_fields
++bulk_size_cam_11663_fields bulk_size cam 0 11663 NULL nohasharray
++count_mm_mlocked_page_nr_fndecl_11663_fields count_mm_mlocked_page_nr fndecl 0-3-2 11663 &bulk_size_cam_11663_fields
++num_snd_ratnum_11664_fields num snd_ratnum 0 11664 NULL nohasharray
++__setup_root_fndecl_11664_fields __setup_root fndecl 2-1 11664 &num_snd_ratnum_11664_fields
+align_pnp_mem_11669_fields align pnp_mem 0 11669 NULL
+i915_stolen_to_physical_fndecl_11685_fields i915_stolen_to_physical fndecl 0 11685 NULL nohasharray
+erasesize_mtd_erase_region_info_11685_fields erasesize mtd_erase_region_info 0 11685 &i915_stolen_to_physical_fndecl_11685_fields
+tx_tail_len_pn533_frame_ops_11694_fields tx_tail_len pn533_frame_ops 0 11694 NULL
+stride_efifb_dmi_info_11695_fields stride efifb_dmi_info 0 11695 NULL
+num_rates_wmi_rate_set_arg_11696_fields num_rates wmi_rate_set_arg 0 11696 NULL
++mlx5_query_port_qetcr_reg_fndecl_11697_fields mlx5_query_port_qetcr_reg fndecl 3 11697 NULL
+__i2c_read_fndecl_11698_fields __i2c_read fndecl 6-3 11698 NULL
+shared_mic_nid_ca0132_spec_11702_fields shared_mic_nid ca0132_spec 0 11702 NULL
-+__vma_reservation_common_fndecl_11707_fields __vma_reservation_common fndecl 3 11707 NULL nohasharray
-+mwifiex_debug_mask_write_fndecl_11707_fields mwifiex_debug_mask_write fndecl 3 11707 &__vma_reservation_common_fndecl_11707_fields
-+phys_lcr_base__synclinkmp_info_11713_fields phys_lcr_base _synclinkmp_info 0 11713 NULL nohasharray
-+logical_packages_vardecl_smpboot_c_11713_fields logical_packages vardecl_smpboot.c 0 11713 &phys_lcr_base__synclinkmp_info_11713_fields
++__vma_reservation_common_fndecl_11707_fields __vma_reservation_common fndecl 3 11707 NULL
++phys_lcr_base__synclinkmp_info_11713_fields phys_lcr_base _synclinkmp_info 0 11713 NULL
+sizeof_partition_entry__gpt_header_11718_fields sizeof_partition_entry _gpt_header 0 11718 NULL
+ocfs2_write_cluster_fndecl_11719_fields ocfs2_write_cluster fndecl 9 11719 NULL
++ipv6_renew_options_fndecl_11728_fields ipv6_renew_options fndecl 5 11728 NULL
++base_address_acpi_pcct_hw_reduced_11735_fields base_address acpi_pcct_hw_reduced 0 11735 NULL
+ov511_pkt_scan_fndecl_11737_fields ov511_pkt_scan fndecl 3 11737 NULL
-+gart_pin_size_radeon_device_11745_fields gart_pin_size radeon_device 0 11745 NULL
++ena_enable_msix_and_set_admin_interrupts_fndecl_11745_fields ena_enable_msix_and_set_admin_interrupts fndecl 2 11745 NULL
+symlink_size_squashfs_symlink_inode_11747_fields symlink_size squashfs_symlink_inode 0 11747 NULL nohasharray
+psn_modify_mask_rvt_driver_params_11747_fields psn_modify_mask rvt_driver_params 0 11747 &symlink_size_squashfs_symlink_inode_11747_fields
+log_num_cqs_mlx4_init_hca_param_11748_fields log_num_cqs mlx4_init_hca_param 0 11748 NULL
@@ -191302,28 +195933,31 @@ index 0000000..6b5367db
+num_mtt_mthca_profile_11767_fields num_mtt mthca_profile 0 11767 NULL
+length_acpi_dmar_header_11768_fields length acpi_dmar_header 0 11768 NULL
+grow_buffers_fndecl_11774_fields grow_buffers fndecl 3-2 11774 NULL
-+num_fences_sync_file_11779_fields num_fences sync_file 0 11779 NULL
+pci_scan_child_bus_fndecl_11784_fields pci_scan_child_bus fndecl 0 11784 NULL
-+svc_pool_map_init_percpu_fndecl_11792_fields svc_pool_map_init_percpu fndecl 0 11792 NULL nohasharray
-+iscsi_sw_tcp_session_create_fndecl_11792_fields iscsi_sw_tcp_session_create fndecl 3 11792 &svc_pool_map_init_percpu_fndecl_11792_fields
++svc_pool_map_init_percpu_fndecl_11792_fields svc_pool_map_init_percpu fndecl 0 11792 NULL
++p9_client_prepare_req_fndecl_11803_fields p9_client_prepare_req fndecl 3 11803 NULL
++pe_startblock_xfs_phys_extent_11804_fields pe_startblock xfs_phys_extent 0 11804 NULL
+depth_cx23885_fmt_11806_fields depth cx23885_fmt 0 11806 NULL
-+max_hw_sectors_queue_limits_11815_fields max_hw_sectors queue_limits 0 11815 NULL nohasharray
-+depth_tw686x_format_11815_fields depth tw686x_format 0 11815 &max_hw_sectors_queue_limits_11815_fields nohasharray
-+num_resources_nd_namespace_blk_11815_fields num_resources nd_namespace_blk 0 11815 &depth_tw686x_format_11815_fields
++xfs_refcount_find_shared_fndecl_11811_fields xfs_refcount_find_shared fndecl 2 11811 NULL
++depth_tw686x_format_11815_fields depth tw686x_format 0 11815 NULL nohasharray
++num_resources_nd_namespace_blk_11815_fields num_resources nd_namespace_blk 0 11815 &depth_tw686x_format_11815_fields nohasharray
++max_hw_sectors_queue_limits_11815_fields max_hw_sectors queue_limits 0 11815 &num_resources_nd_namespace_blk_11815_fields
+be_change_mtu_fndecl_11828_fields be_change_mtu fndecl 2 11828 NULL
+acpi_allocate_root_table_fndecl_11829_fields acpi_allocate_root_table fndecl 1 11829 NULL
+length_TAG_TW_SG_Entry_ISO_11846_fields length TAG_TW_SG_Entry_ISO 0 11846 NULL
+number_of_packets_urb_11853_fields number_of_packets urb 0 11853 NULL nohasharray
+add_to_page_cache_lru_fndecl_11853_fields add_to_page_cache_lru fndecl 0 11853 &number_of_packets_urb_11853_fields
++sg_tablesize_srp_target_port_11858_fields sg_tablesize srp_target_port 0 11858 NULL
+s_nsegments_nilfs_super_block_11865_fields s_nsegments nilfs_super_block 0 11865 NULL
+heads_ssfdcr_record_11869_fields heads ssfdcr_record 0 11869 NULL
++lt_last_delivered_bbr_11873_fields lt_last_delivered bbr 0 11873 NULL
+domain_child_num_acl_role_label_11875_fields domain_child_num acl_role_label 0 11875 NULL
+dm_btree_lookup_next_fndecl_11876_fields dm_btree_lookup_next fndecl 2 11876 NULL
+idetape_queue_rw_tail_fndecl_11881_fields idetape_queue_rw_tail fndecl 3 11881 NULL
+bochs_dispi_read_fndecl_11885_fields bochs_dispi_read fndecl 0 11885 NULL nohasharray
-+leaf_dealloc_fndecl_11885_fields leaf_dealloc fndecl 4 11885 &bochs_dispi_read_fndecl_11885_fields
-+num_channels_iw_scan_req_11889_fields num_channels iw_scan_req 0 11889 NULL nohasharray
-+create_object_fndecl_11889_fields create_object fndecl 1-2 11889 &num_channels_iw_scan_req_11889_fields
++leaf_dealloc_fndecl_11885_fields leaf_dealloc fndecl 4-3 11885 &bochs_dispi_read_fndecl_11885_fields
++num_channels_iw_scan_req_11889_fields num_channels iw_scan_req 0 11889 NULL
++gb_operation_message_alloc_fndecl_11891_fields gb_operation_message_alloc fndecl 3 11891 NULL
+vfs_read_fndecl_11892_fields vfs_read fndecl 0-3 11892 NULL
+llcp_tlv16_fndecl_11893_fields llcp_tlv16 fndecl 0 11893 NULL
+flaglen_ring_desc_ex_11894_fields flaglen ring_desc_ex 0 11894 NULL
@@ -191343,11 +195977,11 @@ index 0000000..6b5367db
+max_rdma_atomic_rvt_driver_params_11957_fields max_rdma_atomic rvt_driver_params 0 11957 NULL
+qla4_82xx_pci_set_window_fndecl_11958_fields qla4_82xx_pci_set_window fndecl 0-2 11958 NULL
+per_vf_cids_qed_tm_iids_11959_fields per_vf_cids qed_tm_iids 0 11959 NULL
-+bsg_major_vardecl_bsg_c_11972_fields bsg_major vardecl_bsg.c 0 11972 NULL
-+pcpu_nr_groups_vardecl_percpu_c_11974_fields pcpu_nr_groups vardecl_percpu.c 0 11974 NULL
++red_left_pad_kmem_cache_11964_fields red_left_pad kmem_cache 0 11964 NULL
+i_xattr_nid_f2fs_inode_info_11976_fields i_xattr_nid f2fs_inode_info 0 11976 NULL
+ath10k_htt_rx_crypto_param_len_fndecl_11982_fields ath10k_htt_rx_crypto_param_len fndecl 0 11982 NULL
+total_mapping_size_fndecl_11985_fields total_mapping_size fndecl 0 11985 NULL
++me_len_xfs_map_extent_11992_fields me_len xfs_map_extent 0 11992 NULL
+virtualUnits_INFTLPartition_11994_fields virtualUnits INFTLPartition 0 11994 NULL
+rx_buffer_size_peak_usb_adapter_11997_fields rx_buffer_size peak_usb_adapter 0 11997 NULL
+error_data_insert_op_12006_fields error data_insert_op 0 12006 NULL
@@ -191359,6 +195993,7 @@ index 0000000..6b5367db
+yres_fb_var_screeninfo_12023_fields yres fb_var_screeninfo 0 12023 NULL
+xfs_dir2_sf_addname_easy_fndecl_12024_fields xfs_dir2_sf_addname_easy fndecl 4 12024 NULL
+arm_iommu_create_mapping_fndecl_12027_fields arm_iommu_create_mapping fndecl 3 12027 NULL
++sisusb_write_mem_bulk_fndecl_12029_fields sisusb_write_mem_bulk fndecl 4 12029 NULL
+scsi_cmds_max_iscsi_session_12037_fields scsi_cmds_max iscsi_session 0 12037 NULL
+rf_suballoc_bit_ocfs2_refcount_block_12038_fields rf_suballoc_bit ocfs2_refcount_block 0 12038 NULL
+__mm_populate_fndecl_12039_fields __mm_populate fndecl 2-1 12039 NULL
@@ -191369,38 +196004,35 @@ index 0000000..6b5367db
+prio_io_fndecl_12053_fields prio_io fndecl 2 12053 NULL
+ata_exec_internal_fndecl_12059_fields ata_exec_internal fndecl 6 12059 NULL
+l1oip_law_to_4bit_fndecl_12061_fields l1oip_law_to_4bit fndecl 0 12061 NULL
-+bufsize_st5481_in_12064_fields bufsize st5481_in 0 12064 NULL nohasharray
-+devm_ioremap_fndecl_12064_fields devm_ioremap fndecl 3-2 12064 &bufsize_st5481_in_12064_fields
++devm_ioremap_fndecl_12064_fields devm_ioremap fndecl 3-2 12064 NULL nohasharray
++bufsize_st5481_in_12064_fields bufsize st5481_in 0 12064 &devm_ioremap_fndecl_12064_fields
+recover_peb_fndecl_12069_fields recover_peb fndecl 7-6 12069 NULL
-+count_afs_permits_12072_fields count afs_permits 0 12072 NULL nohasharray
-+rw_verify_area_fndecl_12072_fields rw_verify_area fndecl 0 12072 &count_afs_permits_12072_fields
++rw_verify_area_fndecl_12072_fields rw_verify_area fndecl 0 12072 NULL nohasharray
++count_afs_permits_12072_fields count afs_permits 0 12072 &rw_verify_area_fndecl_12072_fields
+lirc_register_driver_fndecl_12073_fields lirc_register_driver fndecl 0 12073 NULL
+ttm_pool_update_free_locked_fndecl_12074_fields ttm_pool_update_free_locked fndecl 2 12074 NULL
+cirrus_bo_create_fndecl_12083_fields cirrus_bo_create fndecl 2 12083 NULL
+d_size_size_entry_12084_fields d_size size_entry 0 12084 NULL
+nr_relocs_drm_nouveau_gem_pushbuf_12085_fields nr_relocs drm_nouveau_gem_pushbuf 0 12085 NULL
+security_socket_recvmsg_fndecl_12091_fields security_socket_recvmsg fndecl 0 12091 NULL
-+nla_len_nlattr_12092_fields nla_len nlattr 0 12092 NULL nohasharray
-+iwl_mvm_check_ratid_empty_fndecl_12092_fields iwl_mvm_check_ratid_empty fndecl 3 12092 &nla_len_nlattr_12092_fields
++iwl_mvm_check_ratid_empty_fndecl_12092_fields iwl_mvm_check_ratid_empty fndecl 3 12092 NULL nohasharray
++nla_len_nlattr_12092_fields nla_len nlattr 0 12092 &iwl_mvm_check_ratid_empty_fndecl_12092_fields
+n_posix_ace_state_array_12096_fields n posix_ace_state_array 0 12096 NULL
+pad_size_asd_flash_de_12100_fields pad_size asd_flash_de 0 12100 NULL
-+lpfc_debugfs_dumpHostSlim_data_fndecl_12108_fields lpfc_debugfs_dumpHostSlim_data fndecl 0 12108 NULL nohasharray
-+__ipgre_rcv_fndecl_12108_fields __ipgre_rcv fndecl 4 12108 &lpfc_debugfs_dumpHostSlim_data_fndecl_12108_fields
++__ipgre_rcv_fndecl_12108_fields __ipgre_rcv fndecl 4 12108 NULL
+mirror_array_cnt_nfs4_ff_layout_segment_12109_fields mirror_array_cnt nfs4_ff_layout_segment 0 12109 NULL
-+length_framebuf_12110_fields length framebuf 0 12110 NULL nohasharray
-+prism2_set_genericelement_fndecl_12110_fields prism2_set_genericelement fndecl 3 12110 &length_framebuf_12110_fields
++prism2_set_genericelement_fndecl_12110_fields prism2_set_genericelement fndecl 3 12110 NULL nohasharray
++length_framebuf_12110_fields length framebuf 0 12110 &prism2_set_genericelement_fndecl_12110_fields
+ocfs2_dio_get_block_fndecl_12116_fields ocfs2_dio_get_block fndecl 2 12116 NULL
+vb2_dc_get_userptr_fndecl_12119_fields vb2_dc_get_userptr fndecl 2-3 12119 NULL nohasharray
+get_num_tx_queues_rtnl_link_ops_12119_fields get_num_tx_queues rtnl_link_ops 0 12119 &vb2_dc_get_userptr_fndecl_12119_fields
+super_1_rdev_size_change_fndecl_12120_fields super_1_rdev_size_change fndecl 2 12120 NULL
+ies_len_network_info_12121_fields ies_len network_info 0 12121 NULL
-+mwifiex_hscfg_write_fndecl_12125_fields mwifiex_hscfg_write fndecl 3 12125 NULL
+key_size_ccp_rsa_engine_12126_fields key_size ccp_rsa_engine 0 12126 NULL
+ProgRegShift_cfi_intelext_programming_regioninfo_12129_fields ProgRegShift cfi_intelext_programming_regioninfo 0 12129 NULL
+ext4_fiemap_fndecl_12131_fields ext4_fiemap fndecl 4-3 12131 NULL
+metablock_size_btrfsic_state_12137_fields metablock_size btrfsic_state 0 12137 NULL
+writeset_alloc_fndecl_12139_fields writeset_alloc fndecl 2 12139 NULL
-+service_name_len_sockaddr_nfc_llcp_12145_fields service_name_len sockaddr_nfc_llcp 0 12145 NULL
+gfs2_rgrp_send_discards_fndecl_12149_fields gfs2_rgrp_send_discards fndecl 2 12149 NULL
+ql_is_link_full_dup_fndecl_12152_fields ql_is_link_full_dup fndecl 0 12152 NULL
+find_block_fndecl_12156_fields find_block fndecl 0-3 12156 NULL
@@ -191409,37 +196041,40 @@ index 0000000..6b5367db
+nfs42_proc_copy_fndecl_12169_fields nfs42_proc_copy fndecl 4 12169 NULL nohasharray
+__alloc_ei_netdev_fndecl_12169_fields __alloc_ei_netdev fndecl 1 12169 &nfs42_proc_copy_fndecl_12169_fields
+index_cosm_device_12170_fields index cosm_device 0 12170 NULL
-+of_phandle_iterator_next_fndecl_12171_fields of_phandle_iterator_next fndecl 0 12171 NULL
+num_ch_nvm_id_group_12177_fields num_ch nvm_id_group 0 12177 NULL nohasharray
+brcmf_sdio_tx_ctrlframe_fndecl_12177_fields brcmf_sdio_tx_ctrlframe fndecl 3 12177 &num_ch_nvm_id_group_12177_fields
+hsqsize_nvme_rdma_cm_req_12178_fields hsqsize nvme_rdma_cm_req 0 12178 NULL
+rx_count_rx_header_12180_fields rx_count rx_header 0 12180 NULL
-+default_file_splice_read_fndecl_12182_fields default_file_splice_read fndecl 4 12182 NULL
++iov_iter_pipe_fndecl_12182_fields iov_iter_pipe fndecl 4 12182 NULL nohasharray
++default_file_splice_read_fndecl_12182_fields default_file_splice_read fndecl 4 12182 &iov_iter_pipe_fndecl_12182_fields
+nci_conn_max_data_pkt_payload_size_fndecl_12183_fields nci_conn_max_data_pkt_payload_size fndecl 0 12183 NULL
+se_callback_addr_len_nfsd4_setclientid_12186_fields se_callback_addr_len nfsd4_setclientid 0 12186 NULL
+alignment_acpi_resource_memory24_12188_fields alignment acpi_resource_memory24 0 12188 NULL
+max_qp_sz_mlx4_dev_cap_12189_fields max_qp_sz mlx4_dev_cap 0 12189 NULL
+tipc_max_domain_size_vardecl_12193_fields tipc_max_domain_size vardecl 0 12193 NULL
++vlan_fc_lport_12194_fields vlan fc_lport 0 12194 NULL
+handle_gk20a_instobj_dma_12206_fields handle gk20a_instobj_dma 0 12206 NULL
+lmc_crcSize_lmc___softc_12208_fields lmc_crcSize lmc___softc 0 12208 NULL
-+length_cifs_io_parms_12209_fields length cifs_io_parms 0 12209 NULL
+vmci_transport_set_min_buffer_size_fndecl_12216_fields vmci_transport_set_min_buffer_size fndecl 2 12216 NULL
++hci_sock_sendmsg_fndecl_12231_fields hci_sock_sendmsg fndecl 3 12231 NULL
+virtscsi_kick_cmd_fndecl_12237_fields virtscsi_kick_cmd fndecl 3-4 12237 NULL
+btrfs_alloc_data_chunk_ondemand_fndecl_12238_fields btrfs_alloc_data_chunk_ondemand fndecl 0 12238 NULL
+generic_file_llseek_size_fndecl_12242_fields generic_file_llseek_size fndecl 2-5 12242 NULL
+synproxy_tstamp_adjust_fndecl_12243_fields synproxy_tstamp_adjust fndecl 2 12243 NULL
++len_qedr_create_cq_ureq_12246_fields len qedr_create_cq_ureq 0 12246 NULL
+tipc_bearer_mtu_fndecl_12247_fields tipc_bearer_mtu fndecl 0 12247 NULL
+max_pkt_size_em28xx_usb_bufs_12248_fields max_pkt_size em28xx_usb_bufs 0 12248 NULL
+write_block_fndecl_12253_fields write_block fndecl 3 12253 NULL
+hpfs_map_fnode_fndecl_12255_fields hpfs_map_fnode fndecl 2 12255 NULL
+endpoint_snd_usX2Y_substream_12267_fields endpoint snd_usX2Y_substream 0 12267 NULL
+cur_page_len_dio_submit_12271_fields cur_page_len dio_submit 0 12271 NULL
++xfs_trim_extent_fndecl_12274_fields xfs_trim_extent fndecl 2-3 12274 NULL
++handle_fcp_fndecl_12283_fields handle_fcp fndecl 9 12283 NULL
+sb_sectsize_xfs_sb_12294_fields sb_sectsize xfs_sb 0 12294 NULL
+ino_num_inode_management_12296_fields ino_num inode_management 0 12296 NULL
+bm_find_next_fndecl_12298_fields bm_find_next fndecl 0-2 12298 NULL
+size_btrfs_ioctl_logical_ino_args_12299_fields size btrfs_ioctl_logical_ino_args 0 12299 NULL
+max_y_fb_monspecs_12303_fields max_y fb_monspecs 0 12303 NULL
-+hib_submit_io_fndecl_12308_fields hib_submit_io fndecl 3 12308 NULL
+hr_blocks_o2hb_region_12318_fields hr_blocks o2hb_region 0 12318 NULL nohasharray
+mthca_max_data_size_fndecl_12318_fields mthca_max_data_size fndecl 0-3 12318 &hr_blocks_o2hb_region_12318_fields
+length_sg_mapping_iter_12324_fields length sg_mapping_iter 0 12324 NULL nohasharray
@@ -191448,18 +196083,19 @@ index 0000000..6b5367db
+no_of_triplet_mwifiex_802_11d_domain_reg_12326_fields no_of_triplet mwifiex_802_11d_domain_reg 0 12326 NULL
+s_log_block_size_nilfs_super_block_12332_fields s_log_block_size nilfs_super_block 0 12332 NULL
+read_regr_pi_protocol_12333_fields read_regr pi_protocol 0 12333 NULL
-+status_w840_rx_desc_12335_fields status w840_rx_desc 0 12335 NULL nohasharray
-+snd_hdac_bus_exec_verb_unlocked_fndecl_12335_fields snd_hdac_bus_exec_verb_unlocked fndecl 0 12335 &status_w840_rx_desc_12335_fields
++status_w840_rx_desc_12335_fields status w840_rx_desc 0 12335 NULL
+out_usbnet_12337_fields out usbnet 0 12337 NULL
+base_shift_iwl_fw_dbg_dest_tlv_12341_fields base_shift iwl_fw_dbg_dest_tlv 0 12341 NULL
+dccps_iss_dccp_sock_12346_fields dccps_iss dccp_sock 0 12346 NULL
+ocfs2_symlink_get_block_fndecl_12352_fields ocfs2_symlink_get_block fndecl 2 12352 NULL
+td_done_fndecl_12358_fields td_done fndecl 0 12358 NULL
-+limit_scaled_size_lock_fndecl_12359_fields limit_scaled_size_lock fndecl 5-6 12359 NULL
++limit_scaled_size_lock_fndecl_12359_fields limit_scaled_size_lock fndecl 5-6 12359 NULL nohasharray
++igb_pci_sriov_configure_fndecl_12359_fields igb_pci_sriov_configure fndecl 2 12359 &limit_scaled_size_lock_fndecl_12359_fields
+ioremap_uc_fndecl_12363_fields ioremap_uc fndecl 2-1 12363 NULL
+xb_blkno_ocfs2_xattr_block_12365_fields xb_blkno ocfs2_xattr_block 0 12365 NULL
+num_subdevs_v4l2_async_notifier_12368_fields num_subdevs v4l2_async_notifier 0 12368 NULL
+xfs_alloc_fixup_trees_fndecl_12372_fields xfs_alloc_fixup_trees fndecl 0 12372 NULL
++cmd_media_ioctl_info_12373_fields cmd media_ioctl_info 0 12373 NULL
+iscsi_segment_seek_sg_fndecl_12378_fields iscsi_segment_seek_sg fndecl 5-4 12378 NULL
+rx_prefix_size_efx_nic_12381_fields rx_prefix_size efx_nic 0 12381 NULL
+serial8250_port_size_fndecl_12384_fields serial8250_port_size fndecl 0 12384 NULL nohasharray
@@ -191470,45 +196106,45 @@ index 0000000..6b5367db
+data_segment_bytes_gru_create_context_req_12392_fields data_segment_bytes gru_create_context_req 0 12392 NULL
+num_ufbufs_vardecl_12394_fields num_ufbufs vardecl 0 12394 NULL
+buffer_size_zoran_buffer_col_12398_fields buffer_size zoran_buffer_col 0 12398 NULL
-+ieee802154_alloc_hw_fndecl_12400_fields ieee802154_alloc_hw fndecl 1 12400 NULL
+acl_len_nfs_setaclargs_12402_fields acl_len nfs_setaclargs 0 12402 NULL
++skl_max_scale_fndecl_12403_fields skl_max_scale fndecl 0 12403 NULL
+length_iw_point_12404_fields length iw_point 0 12404 NULL
+reg_read_fndecl_12405_fields reg_read fndecl 4 12405 NULL
+p9_fd_write_fndecl_12417_fields p9_fd_write fndecl 3-0 12417 NULL
+dccp_insert_fn_opt_fndecl_12419_fields dccp_insert_fn_opt fndecl 5 12419 NULL
++cx231xx_init_vbi_isoc_fndecl_12422_fields cx231xx_init_vbi_isoc fndecl 4-2 12422 NULL
+len_SL_component_12428_fields len SL_component 0 12428 NULL
-+ext4_quota_read_fndecl_12429_fields ext4_quota_read fndecl 5 12429 NULL
++ext4_quota_read_fndecl_12429_fields ext4_quota_read fndecl 5 12429 NULL nohasharray
++add_pid_filter_fndecl_12429_fields add_pid_filter fndecl 0 12429 &ext4_quota_read_fndecl_12429_fields
+pkey_tbl_len_ib_port_attr_12434_fields pkey_tbl_len ib_port_attr 0 12434 NULL
+hcd_priv_size_hc_driver_12440_fields hcd_priv_size hc_driver 0 12440 NULL
+radix_tree_load_root_fndecl_12442_fields radix_tree_load_root fndecl 0 12442 NULL nohasharray
+informationLength_fileEntry_12442_fields informationLength fileEntry 0 12442 &radix_tree_load_root_fndecl_12442_fields
+divisor_tc_sfq_qopt_12444_fields divisor tc_sfq_qopt 0 12444 NULL
+ie_len_cfg80211_connect_params_12446_fields ie_len cfg80211_connect_params 0 12446 NULL
-+ceph_sync_write_fndecl_12447_fields ceph_sync_write fndecl 3-0 12447 NULL nohasharray
-+u132_endp_urb_dequeue_fndecl_12447_fields u132_endp_urb_dequeue fndecl 4 12447 &ceph_sync_write_fndecl_12447_fields
++u132_endp_urb_dequeue_fndecl_12447_fields u132_endp_urb_dequeue fndecl 4 12447 NULL nohasharray
++ceph_sync_write_fndecl_12447_fields ceph_sync_write fndecl 0-3 12447 &u132_endp_urb_dequeue_fndecl_12447_fields
+length_iwl_wipan_noa_attribute_12449_fields length iwl_wipan_noa_attribute 0 12449 NULL nohasharray
+GetRecvByte_fndecl_12449_fields GetRecvByte fndecl 0 12449 &length_iwl_wipan_noa_attribute_12449_fields
+len_qlcnic_flt_header_12450_fields len qlcnic_flt_header 0 12450 NULL
+rx_padding_usbatm_driver_12455_fields rx_padding usbatm_driver 0 12455 NULL
+platform_get_irq_fndecl_12459_fields platform_get_irq fndecl 0 12459 NULL
-+keyspan_setup_urb_fndecl_12461_fields keyspan_setup_urb fndecl 6-3-2 12461 NULL
-+num_cq_mthca_profile_12463_fields num_cq mthca_profile 0 12463 NULL
++keyspan_setup_urb_fndecl_12461_fields keyspan_setup_urb fndecl 3-2-6 12461 NULL
++num_cq_mthca_profile_12463_fields num_cq mthca_profile 0 12463 NULL nohasharray
++mmio_phys_amd_iommu_12463_fields mmio_phys amd_iommu 0 12463 &num_cq_mthca_profile_12463_fields
+tp_block_nr_tpacket_req_12465_fields tp_block_nr tpacket_req 0 12465 NULL
+num_leds_pca9532_chip_info_12471_fields num_leds pca9532_chip_info 0 12471 NULL
+tcp_cong_avoid_ai_fndecl_12478_fields tcp_cong_avoid_ai fndecl 2-3 12478 NULL
-+ih_item_len_item_head_12495_fields ih_item_len item_head 0 12495 NULL nohasharray
-+vgacon_adjust_height_fndecl_12495_fields vgacon_adjust_height fndecl 2 12495 &ih_item_len_item_head_12495_fields
-+blk_update_nr_requests_fndecl_12497_fields blk_update_nr_requests fndecl 2 12497 NULL
++vgacon_adjust_height_fndecl_12495_fields vgacon_adjust_height fndecl 2 12495 NULL nohasharray
++ih_item_len_item_head_12495_fields ih_item_len item_head 0 12495 &vgacon_adjust_height_fndecl_12495_fields
+map_off_xfs_dir2_leaf_map_info_12499_fields map_off xfs_dir2_leaf_map_info 0 12499 NULL
+dccp_feat_valid_nn_length_fndecl_12500_fields dccp_feat_valid_nn_length fndecl 0 12500 NULL
+response_length_be_cmd_resp_hdr_12501_fields response_length be_cmd_resp_hdr 0 12501 NULL
+nclips_saa7134_dev_12507_fields nclips saa7134_dev 0 12507 NULL
+udlen_nft_set_12510_fields udlen nft_set 0 12510 NULL
+brcmf_chip_tcm_ramsize_fndecl_12513_fields brcmf_chip_tcm_ramsize fndecl 0 12513 NULL
-+max_tchs_cyttsp4_sysinfo_ofs_12516_fields max_tchs cyttsp4_sysinfo_ofs 0 12516 NULL
+madvise_dontneed_fndecl_12517_fields madvise_dontneed fndecl 3-4 12517 NULL
-+alloc_skb_with_frags_fndecl_12518_fields alloc_skb_with_frags fndecl 2 12518 NULL nohasharray
-+num_pointers_whc_std_12518_fields num_pointers whc_std 0 12518 &alloc_skb_with_frags_fndecl_12518_fields
++alloc_skb_with_frags_fndecl_12518_fields alloc_skb_with_frags fndecl 2 12518 NULL
+video_read_fndecl_12519_fields video_read fndecl 3 12519 NULL
+index_mtd_info_12524_fields index mtd_info 0 12524 NULL
+al_tr_number_to_on_disk_sector_fndecl_12526_fields al_tr_number_to_on_disk_sector fndecl 0 12526 NULL
@@ -191519,36 +196155,36 @@ index 0000000..6b5367db
+qword_get_fndecl_12549_fields qword_get fndecl 0 12549 NULL
+recv_dless_read_fndecl_12554_fields recv_dless_read fndecl 4 12554 NULL
+qnx6_readpages_fndecl_12570_fields qnx6_readpages fndecl 4 12570 NULL
++pe_len_xfs_phys_extent_12574_fields pe_len xfs_phys_extent 0 12574 NULL
+address_length_acpi_resource_memory32_12576_fields address_length acpi_resource_memory32 0 12576 NULL
+rate_den_snd_pcm_hw_params_12586_fields rate_den snd_pcm_hw_params 0 12586 NULL
+acpi_tb_acquire_temp_table_fndecl_12590_fields acpi_tb_acquire_temp_table fndecl 2 12590 NULL nohasharray
+raid_disk_md_rdev_12590_fields raid_disk md_rdev 0 12590 &acpi_tb_acquire_temp_table_fndecl_12590_fields
+pt1_nr_tables_vardecl_pt1_c_12591_fields pt1_nr_tables vardecl_pt1.c 0 12591 NULL
-+pci_scan_root_bus_msi_fndecl_12593_fields pci_scan_root_bus_msi fndecl 2 12593 NULL nohasharray
-+offset_rvt_mregion_12593_fields offset rvt_mregion 0 12593 &pci_scan_root_bus_msi_fndecl_12593_fields
++pci_scan_root_bus_msi_fndecl_12593_fields pci_scan_root_bus_msi fndecl 2 12593 NULL
+pn544_hci_probe_fndecl_12594_fields pn544_hci_probe fndecl 6-4 12594 NULL
+dev_rsize_hid_device_12597_fields dev_rsize hid_device 0 12597 NULL
+sx_fb_copyarea_12600_fields sx fb_copyarea 0 12600 NULL
-+wqe_sz_mlx5e_rq_12601_fields wqe_sz mlx5e_rq 0 12601 NULL
+desc_shift_orangefs_bufmap_12603_fields desc_shift orangefs_bufmap 0 12603 NULL
+blk_limits_io_opt_fndecl_12606_fields blk_limits_io_opt fndecl 2 12606 NULL
++rt_priority_task_struct_12608_fields rt_priority task_struct 0 12608 NULL
++rate_si5351_clkout_config_12610_fields rate si5351_clkout_config 0 12610 NULL
+a4t_cs_init_fndecl_12613_fields a4t_cs_init fndecl 3 12613 NULL
+pty_vivid_rds_gen_12619_fields pty vivid_rds_gen 0 12619 NULL
+maxpacket_r8a66597_td_12628_fields maxpacket r8a66597_td 0 12628 NULL
+nilfs_btnode_submit_block_fndecl_12635_fields nilfs_btnode_submit_block fndecl 3-2 12635 NULL nohasharray
+length_wep_key_12635_fields length wep_key 0 12635 &nilfs_btnode_submit_block_fndecl_12635_fields
+xfs_dir2_block_sfsize_fndecl_12636_fields xfs_dir2_block_sfsize fndecl 0 12636 NULL
-+pattern_len_cfg80211_pkt_pattern_12639_fields pattern_len cfg80211_pkt_pattern 0 12639 NULL nohasharray
-+reg_w_buf_fndecl_12639_fields reg_w_buf fndecl 3 12639 &pattern_len_cfg80211_pkt_pattern_12639_fields
++pattern_len_cfg80211_pkt_pattern_12639_fields pattern_len cfg80211_pkt_pattern 0 12639 NULL
+current_count_sectors_vardecl_floppy_c_12647_fields current_count_sectors vardecl_floppy.c 0 12647 NULL nohasharray
+size_of_pci_range_12647_fields size of_pci_range 0 12647 &current_count_sectors_vardecl_floppy_c_12647_fields
+local_nentries_xpc_openclose_args_12648_fields local_nentries xpc_openclose_args 0 12648 NULL
-+fdir_pf_active_filters_i40e_pf_12654_fields fdir_pf_active_filters i40e_pf 0 12654 NULL
+sl_encaps_fndecl_12658_fields sl_encaps fndecl 3 12658 NULL
+get_index_fndecl_12660_fields get_index fndecl 0 12660 NULL
+onenand_transfer_auto_oob_fndecl_12663_fields onenand_transfer_auto_oob fndecl 3 12663 NULL
+linear_hugepage_index_fndecl_12664_fields linear_hugepage_index fndecl 0-2 12664 NULL
+sg_offset_iscsi_segment_12667_fields sg_offset iscsi_segment 0 12667 NULL
++max_message_size_spi_master_12668_fields max_message_size spi_master 0 12668 NULL
+beacon_buf_size_mwifiex_bssdescriptor_12674_fields beacon_buf_size mwifiex_bssdescriptor 0 12674 NULL nohasharray
+last_page_snd_trident_memblk_arg_12674_fields last_page snd_trident_memblk_arg 0 12674 &beacon_buf_size_mwifiex_bssdescriptor_12674_fields
+doorbell_base_kfd_dev_12677_fields doorbell_base kfd_dev 0 12677 NULL
@@ -191557,18 +196193,18 @@ index 0000000..6b5367db
+src_height_tpg_data_12686_fields src_height tpg_data 0 12686 NULL
+ttm_object_file_init_fndecl_12687_fields ttm_object_file_init fndecl 2 12687 NULL
+ns_nsegments_the_nilfs_12690_fields ns_nsegments the_nilfs 0 12690 NULL
++transport_init_session_tags_fndecl_12691_fields transport_init_session_tags fndecl 2-1 12691 NULL
+dn_neigh_elist_fndecl_12712_fields dn_neigh_elist fndecl 0 12712 NULL
+total_len_ocrdma_hdr_wqe_12714_fields total_len ocrdma_hdr_wqe 0 12714 NULL
-+rdma_rw_init_mr_wrs_fndecl_12719_fields rdma_rw_init_mr_wrs fndecl 7 12719 NULL
+ss_in_channels_hdsp_12726_fields ss_in_channels hdsp 0 12726 NULL nohasharray
+apbt_address_vardecl_apb_timer_c_12726_fields apbt_address vardecl_apb_timer.c 0 12726 &ss_in_channels_hdsp_12726_fields
++start_brk_prctl_mm_map_12729_fields start_brk prctl_mm_map 0 12729 NULL
+btrfs_truncate_item_fndecl_12731_fields btrfs_truncate_item fndecl 3 12731 NULL
+xfs_iomap_write_direct_fndecl_12733_fields xfs_iomap_write_direct fndecl 2 12733 NULL
+count_nfsd3_readres_12745_fields count nfsd3_readres 0 12745 NULL
+aead_assoclen_aead_ctx_12755_fields aead_assoclen aead_ctx 0 12755 NULL nohasharray
+nfsd4_encode_splice_read_fndecl_12755_fields nfsd4_encode_splice_read fndecl 4 12755 &aead_assoclen_aead_ctx_12755_fields
+reserve_memtype_fndecl_12762_fields reserve_memtype fndecl 1-2 12762 NULL
-+offset_kcm_rx_msg_12764_fields offset kcm_rx_msg 0 12764 NULL
+wl1251_sdio_read_fndecl_12773_fields wl1251_sdio_read fndecl 4 12773 NULL
+rx_max_pg_ring_bnx2_12789_fields rx_max_pg_ring bnx2 0 12789 NULL
+sb_fseg_start_nilfs_segment_buffer_12802_fields sb_fseg_start nilfs_segment_buffer 0 12802 NULL
@@ -191576,7 +196212,6 @@ index 0000000..6b5367db
+object_num_mxt_info_12810_fields object_num mxt_info 0 12810 NULL
+psn_rxe_req_info_12812_fields psn rxe_req_info 0 12812 NULL
+new_stripe_sectors_dm_raid_superblock_12813_fields new_stripe_sectors dm_raid_superblock 0 12813 NULL
-+subdev_ioctl_fndecl_12818_fields subdev_ioctl fndecl 2 12818 NULL
+xen_pirq_from_irq_fndecl_12820_fields xen_pirq_from_irq fndecl 0 12820 NULL
+__videobuf_mmap_setup_fndecl_12822_fields __videobuf_mmap_setup fndecl 3-0 12822 NULL
+falcon_spi_device_init_fndecl_12835_fields falcon_spi_device_init fndecl 4 12835 NULL
@@ -191585,25 +196220,26 @@ index 0000000..6b5367db
+snd_interval_refine_max_fndecl_12865_fields snd_interval_refine_max fndecl 2 12865 NULL
+badblockpos_bbm_info_12867_fields badblockpos bbm_info 0 12867 NULL
+frameoffset_b43legacy_dmaring_12869_fields frameoffset b43legacy_dmaring 0 12869 NULL
-+dt_remember_or_free_map_fndecl_12872_fields dt_remember_or_free_map fndecl 5 12872 NULL
-+max_ddbs_hw_profile_12873_fields max_ddbs hw_profile 0 12873 NULL
+tcp_remove_reno_sacks_fndecl_12874_fields tcp_remove_reno_sacks fndecl 2 12874 NULL
+rx_buf_size_qede_rx_queue_12878_fields rx_buf_size qede_rx_queue 0 12878 NULL
+length_i2c_hid_cmd_12879_fields length i2c_hid_cmd 0 12879 NULL
+response_length_ib_uverbs_ex_create_cq_resp_12889_fields response_length ib_uverbs_ex_create_cq_resp 0 12889 NULL
+udp_uncompress_fndecl_12890_fields udp_uncompress fndecl 2 12890 NULL
++max_response_pages_fndecl_12895_fields max_response_pages fndecl 0 12895 NULL
+offset_ceph_dentry_info_12896_fields offset ceph_dentry_info 0 12896 NULL
+early_init_dt_alloc_memory_arch_fndecl_12899_fields early_init_dt_alloc_memory_arch fndecl 2-1 12899 NULL
+ccw_cursor_fndecl_12903_fields ccw_cursor fndecl 4 12903 NULL
-+capinc_tty_write_fndecl_12904_fields capinc_tty_write fndecl 3 12904 NULL
-+physaddr_hfi1_devdata_12906_fields physaddr hfi1_devdata 0 12906 NULL nohasharray
-+add_children_fndecl_12906_fields add_children fndecl 2 12906 &physaddr_hfi1_devdata_12906_fields
++ri_startblock_xfs_refcount_intent_12904_fields ri_startblock xfs_refcount_intent 0 12904 NULL nohasharray
++capinc_tty_write_fndecl_12904_fields capinc_tty_write fndecl 3 12904 &ri_startblock_xfs_refcount_intent_12904_fields
++add_children_fndecl_12906_fields add_children fndecl 2 12906 NULL
+max_reportid_mxt_data_12917_fields max_reportid mxt_data 0 12917 NULL
++gsm_stuff_frame_fndecl_12918_fields gsm_stuff_frame fndecl 0 12918 NULL
+m_lblk_ext4_map_blocks_12920_fields m_lblk ext4_map_blocks 0 12920 NULL
+qs_out_channels_hdspm_12922_fields qs_out_channels hdspm 0 12922 NULL
+idetape_mtioctop_fndecl_12923_fields idetape_mtioctop fndecl 3 12923 NULL
+ath6kl_wmi_disconnect_cmd_fndecl_12926_fields ath6kl_wmi_disconnect_cmd fndecl 2 12926 NULL
-+asymmetric_verify_fndecl_12932_fields asymmetric_verify fndecl 3 12932 NULL
++obufsize_sisusb_usb_data_12932_fields obufsize sisusb_usb_data 0 12932 NULL nohasharray
++asymmetric_verify_fndecl_12932_fields asymmetric_verify fndecl 3 12932 &obufsize_sisusb_usb_data_12932_fields
+ext4_split_extent_at_fndecl_12936_fields ext4_split_extent_at fndecl 4 12936 NULL
+vlan_id_vlan_dev_priv_12939_fields vlan_id vlan_dev_priv 0 12939 NULL
+xlog_clear_stale_blocks_fndecl_12940_fields xlog_clear_stale_blocks fndecl 2 12940 NULL
@@ -191611,79 +196247,80 @@ index 0000000..6b5367db
+gfs2_meta_indirect_buffer_fndecl_12942_fields gfs2_meta_indirect_buffer fndecl 3 12942 NULL
+get_rate_snd_ice1712_12947_fields get_rate snd_ice1712 0 12947 NULL
+st_nci_se_io_fndecl_12948_fields st_nci_se_io fndecl 4 12948 NULL
-+vb2_dc_attach_dmabuf_fndecl_12950_fields vb2_dc_attach_dmabuf fndecl 3 12950 NULL nohasharray
-+nr_segments_blkif_request_rw_12950_fields nr_segments blkif_request_rw 0 12950 &vb2_dc_attach_dmabuf_fndecl_12950_fields
++vb2_dc_attach_dmabuf_fndecl_12950_fields vb2_dc_attach_dmabuf fndecl 3 12950 NULL
+verity_verify_level_fndecl_12951_fields verity_verify_level fndecl 0 12951 NULL
+dom_size_fndecl_12958_fields dom_size fndecl 0 12958 NULL
+vm_start_vm_area_struct_12960_fields vm_start vm_area_struct 0 12960 NULL
+data_pipe_mts_transfer_context_12962_fields data_pipe mts_transfer_context 0 12962 NULL
+apei_exec_ctx_set_input_fndecl_12968_fields apei_exec_ctx_set_input fndecl 2 12968 NULL
+clone_update_extent_map_fndecl_12984_fields clone_update_extent_map fndecl 4-5 12984 NULL
++num_outbound_streams_sctp_inithdr_12987_fields num_outbound_streams sctp_inithdr 0 12987 NULL
+rohm_i2c_burst_read_fndecl_12996_fields rohm_i2c_burst_read fndecl 4 12996 NULL
+xdr_reserve_space_fndecl_12997_fields xdr_reserve_space fndecl 2 12997 NULL
+end_file_extent_cluster_13001_fields end file_extent_cluster 0 13001 NULL
+pm3fb_size_memory_fndecl_13002_fields pm3fb_size_memory fndecl 0 13002 NULL
-+gfs2_fsync_fndecl_13014_fields gfs2_fsync fndecl 2-3 13014 NULL nohasharray
++gfs2_fsync_fndecl_13014_fields gfs2_fsync fndecl 2 13014 NULL nohasharray
+mcp795_rtcc_write_fndecl_13014_fields mcp795_rtcc_write fndecl 4 13014 &gfs2_fsync_fndecl_13014_fields
+sg_alloc_table_from_pages_fndecl_13015_fields sg_alloc_table_from_pages fndecl 5-4 13015 NULL
+arg_end_mm_struct_13016_fields arg_end mm_struct 0 13016 NULL
+mp_override_legacy_irq_fndecl_13017_fields mp_override_legacy_irq fndecl 4 13017 NULL
+do_mbind_fndecl_13022_fields do_mbind fndecl 2-1 13022 NULL
-+format_supported_num_intel_sdvo_connector_13024_fields format_supported_num intel_sdvo_connector 0 13024 NULL
-+__free_memory_core_fndecl_13029_fields __free_memory_core fndecl 0-1-2 13029 NULL
++__free_memory_core_fndecl_13029_fields __free_memory_core fndecl 0-1-2 13029 NULL nohasharray
++xfs_reflink_cancel_cow_range_fndecl_13029_fields xfs_reflink_cancel_cow_range fndecl 2-3 13029 &__free_memory_core_fndecl_13029_fields
+copy_align_dma_device_13054_fields copy_align dma_device 0 13054 NULL
+sco_sock_recvmsg_fndecl_13055_fields sco_sock_recvmsg fndecl 3 13055 NULL
+hfront_porch_videomode_13056_fields hfront_porch videomode 0 13056 NULL
-+p_offset_elf64_phdr_13061_fields p_offset elf64_phdr 0 13061 NULL
-+xfs_bunmapi_fndecl_13063_fields xfs_bunmapi fndecl 3-4 13063 NULL
++xfs_bunmapi_fndecl_13063_fields xfs_bunmapi fndecl 3 13063 NULL
+__ocfs2_dx_dir_leaf_insert_fndecl_13066_fields __ocfs2_dx_dir_leaf_insert fndecl 4 13066 NULL
+read_disk_sb_fndecl_13071_fields read_disk_sb fndecl 2 13071 NULL
+amd756_ioport_vardecl_i2c_amd756_c_13072_fields amd756_ioport vardecl_i2c-amd756.c 0 13072 NULL
+first_p2m_pfn_start_info_13081_fields first_p2m_pfn start_info 0 13081 NULL
+envc_tomoyo_condition_13082_fields envc tomoyo_condition 0 13082 NULL
++xfs_reflink_dirty_extents_fndecl_13083_fields xfs_reflink_dirty_extents fndecl 2-3 13083 NULL
+c4iw_reject_cr_fndecl_13085_fields c4iw_reject_cr fndecl 3 13085 NULL
+hard_mtu_usbnet_13093_fields hard_mtu usbnet 0 13093 NULL nohasharray
-+cursg_ofs_ide_cmd_13093_fields cursg_ofs ide_cmd 0 13093 &hard_mtu_usbnet_13093_fields
++vrambase_sisusb_usb_data_13093_fields vrambase sisusb_usb_data 0 13093 &hard_mtu_usbnet_13093_fields nohasharray
++cursg_ofs_ide_cmd_13093_fields cursg_ofs ide_cmd 0 13093 &vrambase_sisusb_usb_data_13093_fields
+set_wep_key_fndecl_13094_fields set_wep_key fndecl 4 13094 NULL
-+ocfs2_cow_sync_writeback_fndecl_13102_fields ocfs2_cow_sync_writeback fndecl 3-4 13102 NULL nohasharray
++end_data_mm_struct_13099_fields end_data mm_struct 0 13099 NULL
++ocfs2_cow_sync_writeback_fndecl_13102_fields ocfs2_cow_sync_writeback fndecl 3 13102 NULL nohasharray
+user_trans_num_acl_subject_label_13102_fields user_trans_num acl_subject_label 0 13102 &ocfs2_cow_sync_writeback_fndecl_13102_fields
+__qp_memcpy_from_queue_fndecl_13103_fields __qp_memcpy_from_queue fndecl 4-3 13103 NULL
+cx24117_readregN_fndecl_13105_fields cx24117_readregN fndecl 4 13105 NULL
+num_qp_mlx4_profile_13106_fields num_qp mlx4_profile 0 13106 NULL
+au_verfsize_rpc_auth_13110_fields au_verfsize rpc_auth 0 13110 NULL
-+wIELength_uwb_rc_evt_drp_WUSB_0100_13117_fields wIELength uwb_rc_evt_drp_WUSB_0100 0 13117 NULL nohasharray
-+DecodeMatrix_fndecl_13117_fields DecodeMatrix fndecl 0 13117 &wIELength_uwb_rc_evt_drp_WUSB_0100_13117_fields
++y_drm_mode_set_13114_fields y drm_mode_set 0 13114 NULL
++DecodeMatrix_fndecl_13117_fields DecodeMatrix fndecl 0 13117 NULL nohasharray
++wIELength_uwb_rc_evt_drp_WUSB_0100_13117_fields wIELength uwb_rc_evt_drp_WUSB_0100 0 13117 &DecodeMatrix_fndecl_13117_fields
++sys_setpriority_fndecl_13132_fields sys_setpriority fndecl 3 13132 NULL
+source_pad_adv76xx_state_13133_fields source_pad adv76xx_state 0 13133 NULL
+genwqe_sriov_configure_fndecl_13139_fields genwqe_sriov_configure fndecl 2 13139 NULL
-+mousedev_reserve_minor_fndecl_13143_fields mousedev_reserve_minor fndecl 0 13143 NULL
+viafb_bpp_vardecl_viafbdev_c_13145_fields viafb_bpp vardecl_viafbdev.c 0 13145 NULL
-+max_response_packet_size_ec_response_get_protocol_info_13148_fields max_response_packet_size ec_response_get_protocol_info 0 13148 NULL
++max_response_packet_size_ec_response_get_protocol_info_13148_fields max_response_packet_size ec_response_get_protocol_info 0 13148 NULL nohasharray
++phys_map_efi_memory_map_data_13148_fields phys_map efi_memory_map_data 0 13148 &max_response_packet_size_ec_response_get_protocol_info_13148_fields
+key_affs_ext_key_13149_fields key affs_ext_key 0 13149 NULL
+calc_available_memory_size_fndecl_13151_fields calc_available_memory_size fndecl 0 13151 NULL
-+EraseUnitSize_erase_unit_header_t_13154_fields EraseUnitSize erase_unit_header_t 0 13154 NULL nohasharray
-+len_mtd_write_req_13154_fields len mtd_write_req 0 13154 &EraseUnitSize_erase_unit_header_t_13154_fields
++len_mtd_write_req_13154_fields len mtd_write_req 0 13154 NULL nohasharray
++EraseUnitSize_erase_unit_header_t_13154_fields EraseUnitSize erase_unit_header_t 0 13154 &len_mtd_write_req_13154_fields
+header_size_dw_guc_css_header_13157_fields header_size_dw guc_css_header 0 13157 NULL
+num_pg_nvm_id_group_13160_fields num_pg nvm_id_group 0 13160 NULL
-+nr_possible_cpus_uv_hub_info_s_13164_fields nr_possible_cpus uv_hub_info_s 0 13164 NULL
+hpfs_add_to_dnode_fndecl_13167_fields hpfs_add_to_dnode fndecl 4-2 13167 NULL
-+len_rsv_13186_fields len rsv 0 13186 NULL nohasharray
-+nouveau_compat_ioctl_fndecl_13186_fields nouveau_compat_ioctl fndecl 2 13186 &len_rsv_13186_fields
-+blocksize_f2fs_sb_info_13191_fields blocksize f2fs_sb_info 0 13191 NULL
++sccnxp_set_baud_fndecl_13180_fields sccnxp_set_baud fndecl 0-2 13180 NULL
++len_rsv_13186_fields len rsv 0 13186 NULL
+pos_out_f2fs_move_range_13192_fields pos_out f2fs_move_range 0 13192 NULL
+generic_access_phys_fndecl_13197_fields generic_access_phys fndecl 2-4 13197 NULL
+roots_dm_verity_fec_13203_fields roots dm_verity_fec 0 13203 NULL
++rxrpc_fill_out_ack_fndecl_13208_fields rxrpc_fill_out_ack fndecl 0 13208 NULL
+buf_size_in_bytes_kfd_ioctl_dbg_address_watch_args_13210_fields buf_size_in_bytes kfd_ioctl_dbg_address_watch_args 0 13210 NULL
-+height_usbtv_13217_fields height usbtv 0 13217 NULL nohasharray
-+vmd_find_free_domain_fndecl_13217_fields vmd_find_free_domain fndecl 0 13217 &height_usbtv_13217_fields
-+create_boot_cache_fndecl_13218_fields create_boot_cache fndecl 3 13218 NULL
++height_usbtv_13217_fields height usbtv 0 13217 NULL
+total_xfer_len_sas_task_13219_fields total_xfer_len sas_task 0 13219 NULL
+ath5k_common_padpos_fndecl_13221_fields ath5k_common_padpos fndecl 0 13221 NULL
+tcp_copy_to_iovec_fndecl_13227_fields tcp_copy_to_iovec fndecl 3 13227 NULL
+len_hi_sigma_action_13229_fields len_hi sigma_action 0 13229 NULL
-+mtdram_init_device_fndecl_13236_fields mtdram_init_device fndecl 3 13236 NULL
++mtdram_init_device_fndecl_13236_fields mtdram_init_device fndecl 3 13236 NULL nohasharray
++xfs_getbmapx_fix_eof_hole_fndecl_13236_fields xfs_getbmapx_fix_eof_hole fndecl 6 13236 &mtdram_init_device_fndecl_13236_fields
+ipxitf_alloc_fndecl_13238_fields ipxitf_alloc fndecl 6 13238 NULL
+max_mthca_wq_13240_fields max mthca_wq 0 13240 NULL
-+update_sge_fndecl_13245_fields update_sge fndecl 2 13245 NULL
+sq_psn_ib_qp_attr_13249_fields sq_psn ib_qp_attr 0 13249 NULL
+dst_base_apei_exec_context_13252_fields dst_base apei_exec_context 0 13252 NULL
+maxsize_p9_trans_module_13254_fields maxsize p9_trans_module 0 13254 NULL
@@ -191693,30 +196330,36 @@ index 0000000..6b5367db
+maxid_scif_info_13259_fields maxid scif_info 0 13259 &blocklen_bytes_drbg_core_13259_fields
+rsp_pay_size_qlcnic_bc_trans_13274_fields rsp_pay_size qlcnic_bc_trans 0 13274 NULL
+xfs_iomap_write_unwritten_fndecl_13278_fields xfs_iomap_write_unwritten fndecl 3-2 13278 NULL
++num_ofld_uld_adapter_13281_fields num_ofld_uld adapter 0 13281 NULL
+status_usb_iso_packet_descriptor_13287_fields status usb_iso_packet_descriptor 0 13287 NULL
+num_bytes_sigma_fw_chunk_control_13289_fields num_bytes sigma_fw_chunk_control 0 13289 NULL
+ioc_plen1_libcfs_ioctl_data_13297_fields ioc_plen1 libcfs_ioctl_data 0 13297 NULL
-+sys_writev_fndecl_13299_fields sys_writev fndecl 3 13299 NULL
+alloc_page_buffers_fndecl_13304_fields alloc_page_buffers fndecl 2 13304 NULL
+__vhost_get_user_fndecl_13313_fields __vhost_get_user fndecl 3 13313 NULL
-+token_size_iw_ioctl_description_13319_fields token_size iw_ioctl_description 0 13319 NULL
-+gfs2_submit_bhs_fndecl_13320_fields gfs2_submit_bhs fndecl 4 13320 NULL
++token_size_iw_ioctl_description_13319_fields token_size iw_ioctl_description 0 13319 NULL nohasharray
++req_len_snic_req_info_13319_fields req_len snic_req_info 0 13319 &token_size_iw_ioctl_description_13319_fields
+slhc_uncompress_fndecl_13322_fields slhc_uncompress fndecl 0-3 13322 NULL
+skb_zerocopy_headlen_fndecl_13325_fields skb_zerocopy_headlen fndecl 0 13325 NULL
++msi_check_msi_domain_ops_13329_fields msi_check msi_domain_ops 0 13329 NULL
+ver_tid_offset_hfi1_kdeth_header_13330_fields ver_tid_offset hfi1_kdeth_header 0 13330 NULL
+csum_and_copy_from_iter_fndecl_13338_fields csum_and_copy_from_iter fndecl 2 13338 NULL
+copy_buffer_fndecl_13339_fields copy_buffer fndecl 1-2-3 13339 NULL
++brcmf_usb_dl_cmd_fndecl_13344_fields brcmf_usb_dl_cmd fndecl 4 13344 NULL
++x25_asy_change_mtu_fndecl_13347_fields x25_asy_change_mtu fndecl 2 13347 NULL
+compat_mtw_from_user_fndecl_13351_fields compat_mtw_from_user fndecl 0 13351 NULL
+subctxt_cnt_hfi1_ctxtdata_13355_fields subctxt_cnt hfi1_ctxtdata 0 13355 NULL
+carl9170_handle_mpdu_fndecl_13359_fields carl9170_handle_mpdu fndecl 3 13359 NULL
++hhf_zalloc_fndecl_13363_fields hhf_zalloc fndecl 1 13363 NULL
+data_len_user_sdma_request_13365_fields data_len user_sdma_request 0 13365 NULL nohasharray
+unit_mddev_13365_fields unit mddev 0 13365 &data_len_user_sdma_request_13365_fields
+ihl_iphdr_13367_fields ihl iphdr 0 13367 NULL
++sd_size_stat_data_13368_fields sd_size stat_data 0 13368 NULL
+len_nft_payload_set_13371_fields len nft_payload_set 0 13371 NULL
+ep_response_mts_desc_13372_fields ep_response mts_desc 0 13372 NULL
+num_pages_ttm_tt_13376_fields num_pages ttm_tt 0 13376 NULL
+xfs_trans_alloc_fndecl_13381_fields xfs_trans_alloc fndecl 3-0 13381 NULL
-+ds_in_channels_hdspm_13382_fields ds_in_channels hdspm 0 13382 NULL
++ds_in_channels_hdspm_13382_fields ds_in_channels hdspm 0 13382 NULL nohasharray
++T5_msg_size_mxt_data_13382_fields T5_msg_size mxt_data 0 13382 &ds_in_channels_hdspm_13382_fields
+rules_all_snd_pcm_hw_constraints_13387_fields rules_all snd_pcm_hw_constraints 0 13387 NULL
+chunk_size_lirc_buffer_13388_fields chunk_size lirc_buffer 0 13388 NULL
+beep_amp_conexant_spec_13390_fields beep_amp conexant_spec 0 13390 NULL
@@ -191724,35 +196367,32 @@ index 0000000..6b5367db
+cmdsts__BufferDesc_13393_fields cmdsts _BufferDesc 0 13393 &ic_offset_xlog_in_core_13393_fields
+memblock_add_fndecl_13394_fields memblock_add fndecl 1-2 13394 NULL
+nfs42_fallocate_fndecl_13396_fields nfs42_fallocate fndecl 3-4 13396 NULL
-+i_size_write_fndecl_13397_fields i_size_write fndecl 2 13397 NULL nohasharray
-+mp_payload_len_fcoe_mp_rsp_union_13397_fields mp_payload_len fcoe_mp_rsp_union 0 13397 &i_size_write_fndecl_13397_fields
++mp_payload_len_fcoe_mp_rsp_union_13397_fields mp_payload_len fcoe_mp_rsp_union 0 13397 NULL nohasharray
++i_size_write_fndecl_13397_fields i_size_write fndecl 2 13397 &mp_payload_len_fcoe_mp_rsp_union_13397_fields
+microread_probe_fndecl_13400_fields microread_probe fndecl 6-4 13400 NULL nohasharray
+slgt_device_count_vardecl_synclink_gt_c_13400_fields slgt_device_count vardecl_synclink_gt.c 0 13400 &microread_probe_fndecl_13400_fields
+rmmio_base_cirrus_device_13402_fields rmmio_base cirrus_device 0 13402 NULL
+nfs_proc_readlink_fndecl_13404_fields nfs_proc_readlink fndecl 4-3 13404 NULL
-+subdevices_count_snd_rawmidi_info_13408_fields subdevices_count snd_rawmidi_info 0 13408 NULL
+add_free_nid_fndecl_13412_fields add_free_nid fndecl 2 13412 NULL
+extra_len_request_13419_fields extra_len request 0 13419 NULL
-+cp210x_write_reg_block_fndecl_13420_fields cp210x_write_reg_block fndecl 4 13420 NULL
+i2c_smbus_xfer_fndecl_13421_fields i2c_smbus_xfer fndecl 0 13421 NULL
+tx_headroom_ieee80211_local_13423_fields tx_headroom ieee80211_local 0 13423 NULL
+do_direct_IO_fndecl_13424_fields do_direct_IO fndecl 0 13424 NULL
+mtd_ooblayout_set_bytes_fndecl_13425_fields mtd_ooblayout_set_bytes fndecl 4 13425 NULL
+di_nblocks_xfs_icdinode_13426_fields di_nblocks xfs_icdinode 0 13426 NULL
+get_origin_minimum_chunksize_fndecl_13432_fields get_origin_minimum_chunksize fndecl 0 13432 NULL
-+promote_fndecl_13442_fields promote fndecl 4-3 13442 NULL nohasharray
-+mwifiex_memrw_write_fndecl_13442_fields mwifiex_memrw_write fndecl 3 13442 &promote_fndecl_13442_fields
++promote_fndecl_13442_fields promote fndecl 4-3 13442 NULL
+nports_adapter_params_13446_fields nports adapter_params 0 13446 NULL
+fill_read_buf_fndecl_13455_fields fill_read_buf fndecl 0 13455 NULL
-+max_eq_mlx4_func_cap_13461_fields max_eq mlx4_func_cap 0 13461 NULL nohasharray
-+me_start_ocfs2_move_extents_13461_fields me_start ocfs2_move_extents 0 13461 &max_eq_mlx4_func_cap_13461_fields
++me_start_ocfs2_move_extents_13461_fields me_start ocfs2_move_extents 0 13461 NULL nohasharray
++max_eq_mlx4_func_cap_13461_fields max_eq mlx4_func_cap 0 13461 &me_start_ocfs2_move_extents_13461_fields
+flaglen_ring_desc_13468_fields flaglen ring_desc 0 13468 NULL
+ufs_alloc_fragments_fndecl_13472_fields ufs_alloc_fragments fndecl 2-0 13472 NULL
+height_bttv_fh_13473_fields height bttv_fh 0 13473 NULL
+multipath_end_bh_io_fndecl_13474_fields multipath_end_bh_io fndecl 2 13474 NULL
+req_ie_length_ndis_80211_assoc_info_13477_fields req_ie_length ndis_80211_assoc_info 0 13477 NULL
-+n_regulators_da9063_dev_model_13479_fields n_regulators da9063_dev_model 0 13479 NULL
+ext4_convert_unwritten_extents_fndecl_13483_fields ext4_convert_unwritten_extents fndecl 3-4 13483 NULL
++get_send_sge_fndecl_13485_fields get_send_sge fndecl 0-2 13485 NULL
+size_jffs2_full_dnode_13487_fields size jffs2_full_dnode 0 13487 NULL
+sk_datalen_svc_sock_13490_fields sk_datalen svc_sock 0 13490 NULL nohasharray
+i_section_size_iso_inode_info_13490_fields i_section_size iso_inode_info 0 13490 &sk_datalen_svc_sock_13490_fields
@@ -191760,43 +196400,47 @@ index 0000000..6b5367db
+curchunk_len_drm_dp_sideband_msg_rx_13501_fields curchunk_len drm_dp_sideband_msg_rx 0 13501 NULL
+sendpage_proto_ops_13505_fields sendpage proto_ops 0 13505 NULL
+il4965_txq_check_empty_fndecl_13515_fields il4965_txq_check_empty fndecl 3 13515 NULL
-+scif_vreadfrom_fndecl_13516_fields scif_vreadfrom fndecl 4-3 13516 NULL
-+len_unix_address_13517_fields len unix_address 0 13517 NULL nohasharray
-+max_channels_cmipci_13517_fields max_channels cmipci 0 13517 &len_unix_address_13517_fields
++scif_vreadfrom_fndecl_13516_fields scif_vreadfrom fndecl 3-4 13516 NULL
++max_channels_cmipci_13517_fields max_channels cmipci 0 13517 NULL nohasharray
++len_unix_address_13517_fields len unix_address 0 13517 &max_channels_cmipci_13517_fields
+av_buf_head_dccp_ackvec_13528_fields av_buf_head dccp_ackvec 0 13528 NULL
++ppp_print_buffer_fndecl_13530_fields ppp_print_buffer fndecl 3 13530 NULL
+max_index_rxe_type_info_13532_fields max_index rxe_type_info 0 13532 NULL
+max_ws_blocks_scsi_disk_13533_fields max_ws_blocks scsi_disk 0 13533 NULL
+find_rsb_nodir_fndecl_13537_fields find_rsb_nodir fndecl 3 13537 NULL
-+nes_reg_user_mr_fndecl_13553_fields nes_reg_user_mr fndecl 2-3 13553 NULL nohasharray
++p_filesz_elf64_phdr_13545_fields p_filesz elf64_phdr 0 13545 NULL
++nes_reg_user_mr_fndecl_13553_fields nes_reg_user_mr fndecl 3-2 13553 NULL nohasharray
+nvme_trans_send_download_fw_cmd_fndecl_13553_fields nvme_trans_send_download_fw_cmd fndecl 4 13553 &nes_reg_user_mr_fndecl_13553_fields
+context_id_fcoe_kwqe_conn_destroy_13555_fields context_id fcoe_kwqe_conn_destroy 0 13555 NULL
-+__devcgroup_inode_permission_fndecl_13559_fields __devcgroup_inode_permission fndecl 0 13559 NULL nohasharray
-+retrans_out_tcp_sock_13559_fields retrans_out tcp_sock 0 13559 &__devcgroup_inode_permission_fndecl_13559_fields nohasharray
-+iomap_apply_fndecl_13559_fields iomap_apply fndecl 0 13559 &retrans_out_tcp_sock_13559_fields
++retrans_out_tcp_sock_13559_fields retrans_out tcp_sock 0 13559 NULL nohasharray
++__devcgroup_inode_permission_fndecl_13559_fields __devcgroup_inode_permission fndecl 0 13559 &retrans_out_tcp_sock_13559_fields nohasharray
++iomap_apply_fndecl_13559_fields iomap_apply fndecl 0 13559 &__devcgroup_inode_permission_fndecl_13559_fields
+capture_periodsize_rme96_13564_fields capture_periodsize rme96 0 13564 NULL
+edt_ft5x06_ts_readwrite_fndecl_13570_fields edt_ft5x06_ts_readwrite fndecl 2-4 13570 NULL
-+pitch_drm_mode_create_dumb_13574_fields pitch drm_mode_create_dumb 0 13574 NULL nohasharray
-+amdtp_stream_get_max_payload_fndecl_13574_fields amdtp_stream_get_max_payload fndecl 0 13574 &pitch_drm_mode_create_dumb_13574_fields
++avc_tuner_dsd_dvb_t_fndecl_13571_fields avc_tuner_dsd_dvb_t fndecl 0 13571 NULL
++pitch_drm_mode_create_dumb_13574_fields pitch drm_mode_create_dumb 0 13574 NULL
+fd_do_prot_fill_fndecl_13583_fields fd_do_prot_fill fndecl 5-3 13583 NULL
+ring_size_r600_ih_13586_fields ring_size r600_ih 0 13586 NULL
+ceph_renew_caps_fndecl_13593_fields ceph_renew_caps fndecl 0 13593 NULL nohasharray
-+lines_nvkm_gpio_func_13593_fields lines nvkm_gpio_func 0 13593 &ceph_renew_caps_fndecl_13593_fields nohasharray
-+vfio_info_cap_add_fndecl_13593_fields vfio_info_cap_add fndecl 2 13593 &lines_nvkm_gpio_func_13593_fields
-+__skb_flow_dissect_fndecl_13594_fields __skb_flow_dissect fndecl 6 13594 NULL nohasharray
++lines_nvkm_gpio_func_13593_fields lines nvkm_gpio_func 0 13593 &ceph_renew_caps_fndecl_13593_fields
++__skb_flow_dissect_fndecl_13594_fields __skb_flow_dissect fndecl 6-7 13594 NULL nohasharray
+video_v_start_saa7134_tvnorm_13594_fields video_v_start saa7134_tvnorm 0 13594 &__skb_flow_dissect_fndecl_13594_fields
+sysctl_wmem_default_vardecl_13596_fields sysctl_wmem_default vardecl 0 13596 NULL
+fb_x_vmw_fb_par_13597_fields fb_x vmw_fb_par 0 13597 NULL
+size_drm_mm_node_13605_fields size drm_mm_node 0 13605 NULL
+id_pcap_subdev_13609_fields id pcap_subdev 0 13609 NULL
-+size_sm501_mem_13611_fields size sm501_mem 0 13611 NULL
++cipso_v4_map_cat_rbm_hton_fndecl_13611_fields cipso_v4_map_cat_rbm_hton fndecl 0 13611 NULL nohasharray
++size_sm501_mem_13611_fields size sm501_mem 0 13611 &cipso_v4_map_cat_rbm_hton_fndecl_13611_fields
+nvoices_snd_seq_oss_reg_13613_fields nvoices snd_seq_oss_reg 0 13613 NULL
+us122l_start_fndecl_13617_fields us122l_start fndecl 2-3 13617 NULL
+softback_top_vardecl_fbcon_c_13621_fields softback_top vardecl_fbcon.c 0 13621 NULL nohasharray
+mpt_entry_sz_mthca_dev_lim_13621_fields mpt_entry_sz mthca_dev_lim 0 13621 &softback_top_vardecl_fbcon_c_13621_fields
+desc_size_efi_memory_map_13622_fields desc_size efi_memory_map 0 13622 NULL
+num_mgms_mthca_limits_13629_fields num_mgms mthca_limits 0 13629 NULL
-+w5100_probe_fndecl_13635_fields w5100_probe fndecl 3 13635 NULL
-+x1_drm_clip_rect_13637_fields x1 drm_clip_rect 0 13637 NULL
++rx_copybreak_ena_ring_13635_fields rx_copybreak ena_ring 0 13635 NULL nohasharray
++w5100_probe_fndecl_13635_fields w5100_probe fndecl 3 13635 &rx_copybreak_ena_ring_13635_fields
++x1_drm_clip_rect_13637_fields x1 drm_clip_rect 0 13637 NULL nohasharray
++max_dpcd_transaction_bytes_drm_dp_mst_topology_mgr_13637_fields max_dpcd_transaction_bytes drm_dp_mst_topology_mgr 0 13637 &x1_drm_clip_rect_13637_fields
+xenbus_map_ring_valloc_hvm_fndecl_13638_fields xenbus_map_ring_valloc_hvm fndecl 3 13638 NULL
+nbytes_ata_queued_cmd_13642_fields nbytes ata_queued_cmd 0 13642 NULL
+npools_svc_pool_map_13643_fields npools svc_pool_map 0 13643 NULL nohasharray
@@ -191806,40 +196450,40 @@ index 0000000..6b5367db
+page_len_xdr_buf_13652_fields page_len xdr_buf 0 13652 NULL
+width_s2255_vc_13661_fields width s2255_vc 0 13661 NULL
+length_rbd_img_request_13674_fields length rbd_img_request 0 13674 NULL
-+vsync_psb_pipe_13675_fields vsync psb_pipe 0 13675 NULL
++vsync_psb_pipe_13675_fields vsync psb_pipe 0 13675 NULL nohasharray
++snbep_pci2phy_map_init_fndecl_13675_fields snbep_pci2phy_map_init fndecl 1 13675 &vsync_psb_pipe_13675_fields
+fixup_pmc551_fndecl_13679_fields fixup_pmc551 fndecl 0 13679 NULL
+nfc_hci_send_cmd_async_fndecl_13680_fields nfc_hci_send_cmd_async fndecl 5 13680 NULL
++vhost_copy_from_user_fndecl_13681_fields vhost_copy_from_user fndecl 4 13681 NULL
+receive_big_fndecl_13686_fields receive_big fndecl 5 13686 NULL
+writing_osst_buffer_13689_fields writing osst_buffer 0 13689 NULL
+hpfs_free_sectors_fndecl_13696_fields hpfs_free_sectors fndecl 3 13696 NULL
+skb_size_qlcnic_host_rds_ring_13698_fields skb_size qlcnic_host_rds_ring 0 13698 NULL
+bos_desc_fndecl_13715_fields bos_desc fndecl 0 13715 NULL
+valuelen_lo_extended_attribute_13722_fields valuelen_lo extended_attribute 0 13722 NULL
-+wsm_buf_reserve_fndecl_13730_fields wsm_buf_reserve fndecl 2 13730 NULL
+channels_max_snd_soc_pcm_stream_13737_fields channels_max snd_soc_pcm_stream 0 13737 NULL nohasharray
+mfd_add_device_fndecl_13737_fields mfd_add_device fndecl 6-2 13737 &channels_max_snd_soc_pcm_stream_13737_fields
+nr_segments_vscsiif_request_13741_fields nr_segments vscsiif_request 0 13741 NULL
+len_tcf_em_nbyte_13742_fields len tcf_em_nbyte 0 13742 NULL
-+write_pipe_ezusb_priv_13743_fields write_pipe ezusb_priv 0 13743 NULL
++cipso_v4_genopt_fndecl_13743_fields cipso_v4_genopt fndecl 0 13743 NULL nohasharray
++write_pipe_ezusb_priv_13743_fields write_pipe ezusb_priv 0 13743 &cipso_v4_genopt_fndecl_13743_fields
+level_guest_walker32_13749_fields level guest_walker32 0 13749 NULL
+length_rio_mport_maint_io_13751_fields length rio_mport_maint_io 0 13751 NULL
+txglomsz_brcmfmac_sdio_pd_13752_fields txglomsz brcmfmac_sdio_pd 0 13752 NULL
+compat_sys_recv_fndecl_13753_fields compat_sys_recv fndecl 3 13753 NULL
-+numrx_velocity_opt_13754_fields numrx velocity_opt 0 13754 NULL nohasharray
-+length_core_conn_create_data_13754_fields length core_conn_create_data 0 13754 &numrx_velocity_opt_13754_fields
++length_core_conn_create_data_13754_fields length core_conn_create_data 0 13754 NULL nohasharray
++numrx_velocity_opt_13754_fields numrx velocity_opt 0 13754 &length_core_conn_create_data_13754_fields
+xfs_alloc_pagf_init_fndecl_13761_fields xfs_alloc_pagf_init fndecl 3-0 13761 NULL
+encrypt_headroom_ieee80211_sub_if_data_13764_fields encrypt_headroom ieee80211_sub_if_data 0 13764 NULL
+ar5523_cmd_read_fndecl_13766_fields ar5523_cmd_read fndecl 4 13766 NULL
+len_nci_set_config_param_13768_fields len nci_set_config_param 0 13768 NULL
-+ecryptfs_miscdev_write_fndecl_13772_fields ecryptfs_miscdev_write fndecl 3 13772 NULL
++xfs_file_iomap_begin_delay_fndecl_13771_fields xfs_file_iomap_begin_delay fndecl 2-3 13771 NULL
+do_tcp_rcv_fndecl_13775_fields do_tcp_rcv fndecl 3 13775 NULL
+check_extent_to_block_fndecl_13780_fields check_extent_to_block fndecl 2-3 13780 NULL
+ue_size_asd_bios_chim_struct_13782_fields ue_size asd_bios_chim_struct 0 13782 NULL
+build_data_key_fndecl_13784_fields build_data_key fndecl 2 13784 NULL
-+num_channels_xilly_endpoint_13791_fields num_channels xilly_endpoint 0 13791 NULL
+tipc_conn_sendmsg_fndecl_13792_fields tipc_conn_sendmsg fndecl 5 13792 NULL
+reply_sz__MPT_ADAPTER_13794_fields reply_sz _MPT_ADAPTER 0 13794 NULL
-+riocm_cdev_add_fndecl_13803_fields riocm_cdev_add fndecl 1 13803 NULL
+fifo_size_sram_channel_13811_fields fifo_size sram_channel 0 13811 NULL
+shared_kmem_cache_13812_fields shared kmem_cache 0 13812 NULL
+fifo_depth_fsl_ssi_private_13814_fields fifo_depth fsl_ssi_private 0 13814 NULL
@@ -191851,12 +196495,13 @@ index 0000000..6b5367db
+inet6_lookup_fndecl_13832_fields inet6_lookup fndecl 4 13832 NULL
+logical_offset_btrfs_dio_private_13833_fields logical_offset btrfs_dio_private 0 13833 NULL
+acpi_os_get_root_pointer_fndecl_13835_fields acpi_os_get_root_pointer fndecl 0 13835 NULL
-+cypress_write_fndecl_13836_fields cypress_write fndecl 4 13836 NULL
++cypress_write_fndecl_13836_fields cypress_write fndecl 4 13836 NULL nohasharray
++qed_ll2_acquire_connection_fndecl_13836_fields qed_ll2_acquire_connection fndecl 4-3 13836 &cypress_write_fndecl_13836_fields
+ceph_fallocate_fndecl_13837_fields ceph_fallocate fndecl 4-3 13837 NULL
+nr_vecs_biovec_slab_13838_fields nr_vecs biovec_slab 0 13838 NULL
+init_memory_mapping_fndecl_13840_fields init_memory_mapping fndecl 0 13840 NULL
+resize_user_fndecl_13857_fields resize_user fndecl 3 13857 NULL
-+sddr09_read_data_fndecl_13860_fields sddr09_read_data fndecl 2 13860 NULL
++sddr09_read_data_fndecl_13860_fields sddr09_read_data fndecl 3-2 13860 NULL
+starting_offset_mpt3_diag_read_buffer_13869_fields starting_offset mpt3_diag_read_buffer 0 13869 NULL
+pack_sg_list_fndecl_13874_fields pack_sg_list fndecl 5 13874 NULL
+front_len_ceph_msg_header_13876_fields front_len ceph_msg_header 0 13876 NULL
@@ -191873,22 +196518,21 @@ index 0000000..6b5367db
+unix_stream_read_actor_fndecl_13931_fields unix_stream_read_actor fndecl 2-3 13931 NULL
+s_firstdatazone_minix_sb_info_13932_fields s_firstdatazone minix_sb_info 0 13932 NULL
+service_operation_fndecl_13940_fields service_operation fndecl 0 13940 NULL
-+kvirt_to_phys_fndecl_13941_fields kvirt_to_phys fndecl 0 13941 NULL
-+__usbnet_write_cmd_fndecl_13951_fields __usbnet_write_cmd fndecl 7 13951 NULL
+start_ubifs_bud_13964_fields start ubifs_bud 0 13964 NULL
+u132_hcd_configure_input_recv_fndecl_13969_fields u132_hcd_configure_input_recv fndecl 4 13969 NULL
-+nla_append_fndecl_13971_fields nla_append fndecl 2 13971 NULL
++nla_append_fndecl_13971_fields nla_append fndecl 2 13971 NULL nohasharray
++nes_dump_mem_fndecl_13971_fields nes_dump_mem fndecl 3 13971 &nla_append_fndecl_13971_fields
+yres_panel_info_13976_fields yres panel_info 0 13976 NULL
+isdn_tty_handleDLEdown_fndecl_13981_fields isdn_tty_handleDLEdown fndecl 0 13981 NULL
-+rd_size_uhid_device_13986_fields rd_size uhid_device 0 13986 NULL
+libipw_alloc_txb_fndecl_13992_fields libipw_alloc_txb fndecl 3-2 13992 NULL
+size_urb_list_13995_fields size urb_list 0 13995 NULL
-+n_channels_iwl_mcc_update_resp_v1_13997_fields n_channels iwl_mcc_update_resp_v1 0 13997 NULL
++i2400mu_notification_grok_fndecl_13997_fields i2400mu_notification_grok fndecl 3 13997 NULL nohasharray
++n_channels_iwl_mcc_update_resp_v1_13997_fields n_channels iwl_mcc_update_resp_v1 0 13997 &i2400mu_notification_grok_fndecl_13997_fields
+pnp_add_io_resource_fndecl_14000_fields pnp_add_io_resource fndecl 3-2 14000 NULL
+blkno_xfs_da_state_blk_14003_fields blkno xfs_da_state_blk 0 14003 NULL nohasharray
-+wanted_disk_byte___prelim_ref_14003_fields wanted_disk_byte __prelim_ref 0 14003 &blkno_xfs_da_state_blk_14003_fields nohasharray
-+i_len_xfs_log_iovec_14003_fields i_len xfs_log_iovec 0 14003 &wanted_disk_byte___prelim_ref_14003_fields nohasharray
-+nilfs_read_super_root_block_fndecl_14003_fields nilfs_read_super_root_block fndecl 2 14003 &i_len_xfs_log_iovec_14003_fields
++i_len_xfs_log_iovec_14003_fields i_len xfs_log_iovec 0 14003 &blkno_xfs_da_state_blk_14003_fields nohasharray
++wanted_disk_byte___prelim_ref_14003_fields wanted_disk_byte __prelim_ref 0 14003 &i_len_xfs_log_iovec_14003_fields nohasharray
++nilfs_read_super_root_block_fndecl_14003_fields nilfs_read_super_root_block fndecl 2 14003 &wanted_disk_byte___prelim_ref_14003_fields
+buffer_top_vardecl_nm256_c_14008_fields buffer_top vardecl_nm256.c 0 14008 NULL
+n_phy_mvs_chip_info_14009_fields n_phy mvs_chip_info 0 14009 NULL
+queue_userspace_packet_fndecl_14011_fields queue_userspace_packet fndecl 5 14011 NULL
@@ -191907,10 +196551,11 @@ index 0000000..6b5367db
+xfs_alloc_vextent_fndecl_14057_fields xfs_alloc_vextent fndecl 0 14057 &ocfs2_xattr_ibody_get_fndecl_14057_fields nohasharray
+nl80211_send_connect_result_fndecl_14057_fields nl80211_send_connect_result fndecl 5-7 14057 &xfs_alloc_vextent_fndecl_14057_fields
+btrfs_fallocate_fndecl_14060_fields btrfs_fallocate fndecl 4-3 14060 NULL
-+entry_number_user_desc_14065_fields entry_number user_desc 0 14065 NULL nohasharray
-+mgmt_device_connected_fndecl_14065_fields mgmt_device_connected fndecl 5 14065 &entry_number_user_desc_14065_fields
++mgmt_device_connected_fndecl_14065_fields mgmt_device_connected fndecl 5 14065 NULL nohasharray
++entry_number_user_desc_14065_fields entry_number user_desc 0 14065 &mgmt_device_connected_fndecl_14065_fields
+cyttsp_spi_write_block_data_fndecl_14068_fields cyttsp_spi_write_block_data fndecl 4 14068 NULL
+error_async_submit_bio_14075_fields error async_submit_bio 0 14075 NULL
++cdns_uart_calc_baud_divs_fndecl_14083_fields cdns_uart_calc_baud_divs fndecl 0-2-1 14083 NULL
+end_switchdev_vlan_dump_14086_fields end switchdev_vlan_dump 0 14086 NULL
+phantom_major_vardecl_phantom_c_14093_fields phantom_major vardecl_phantom.c 0 14093 NULL
+__ext4_handle_dirty_metadata_fndecl_14098_fields __ext4_handle_dirty_metadata fndecl 0 14098 NULL
@@ -191923,13 +196568,10 @@ index 0000000..6b5367db
+i2400m_net_rx_fndecl_14129_fields i2400m_net_rx fndecl 5 14129 NULL
+size_uhid_input2_req_14140_fields size uhid_input2_req 0 14140 NULL
+cros_ec_spi_receive_packet_fndecl_14142_fields cros_ec_spi_receive_packet fndecl 2 14142 NULL
-+vmcoreinfo_size_vardecl_14149_fields vmcoreinfo_size vardecl 0 14149 NULL
-+dqi_entry_size_qtree_mem_dqinfo_14150_fields dqi_entry_size qtree_mem_dqinfo 0 14150 NULL
+short_len_fat_ioctl_filldir_callback_14151_fields short_len fat_ioctl_filldir_callback 0 14151 NULL
+page_size_at24_platform_data_14152_fields page_size at24_platform_data 0 14152 NULL
+num_ratios_coreclk_soc_desc_14154_fields num_ratios coreclk_soc_desc 0 14154 NULL
+range_min_regmap_range_node_14166_fields range_min regmap_range_node 0 14166 NULL
-+vfs_writev_fndecl_14168_fields vfs_writev fndecl 3 14168 NULL
+ocfs2_read_blocks_sync_fndecl_14169_fields ocfs2_read_blocks_sync fndecl 2 14169 NULL
+cmd_len_scsi_cmnd_14171_fields cmd_len scsi_cmnd 0 14171 NULL nohasharray
+nd_size_in_nd_cmd_pkg_14171_fields nd_size_in nd_cmd_pkg 0 14171 &cmd_len_scsi_cmnd_14171_fields
@@ -191940,26 +196582,28 @@ index 0000000..6b5367db
+cmbox_vardecl_rio_cm_c_14182_fields cmbox vardecl_rio_cm.c 0 14182 NULL
+curr_tx_buf_size_mwifiex_adapter_14186_fields curr_tx_buf_size mwifiex_adapter 0 14186 NULL
+cfpkt_add_trail_fndecl_14191_fields cfpkt_add_trail fndecl 3 14191 NULL
-+rxrpc_request_key_fndecl_14192_fields rxrpc_request_key fndecl 3 14192 NULL
+offset_iscsi_datain_14195_fields offset iscsi_datain 0 14195 NULL
+middle_len_ceph_msg_header_14196_fields middle_len ceph_msg_header 0 14196 NULL
+len_hv_multipage_buffer_14208_fields len hv_multipage_buffer 0 14208 NULL nohasharray
+get_rx_fifo_content_fndecl_14208_fields get_rx_fifo_content fndecl 0 14208 &len_hv_multipage_buffer_14208_fields
++chcr_aes_cbc_setkey_fndecl_14211_fields chcr_aes_cbc_setkey fndecl 3 14211 NULL
+cmd_bounce_size_vmw_sw_context_14217_fields cmd_bounce_size vmw_sw_context 0 14217 NULL
+num_gsm_mux_14221_fields num gsm_mux 0 14221 NULL
+e1000_copybreak_fndecl_14223_fields e1000_copybreak fndecl 3 14223 NULL
+hpfs_remove_dtree_fndecl_14224_fields hpfs_remove_dtree fndecl 2 14224 NULL
-+hw_token_fotg210_qtd_14233_fields hw_token fotg210_qtd 0 14233 NULL
++usb_submit_urb_fndecl_14237_fields usb_submit_urb fndecl 0 14237 NULL
+create_lease_size_smb_version_values_14240_fields create_lease_size smb_version_values 0 14240 NULL
+backup_load_addr_kimage_arch_14243_fields backup_load_addr kimage_arch 0 14243 NULL nohasharray
+ath6kl_wmi_test_cmd_fndecl_14243_fields ath6kl_wmi_test_cmd fndecl 3 14243 &backup_load_addr_kimage_arch_14243_fields nohasharray
+virtqueue_add_inbuf_fndecl_14243_fields virtqueue_add_inbuf fndecl 3 14243 &ath6kl_wmi_test_cmd_fndecl_14243_fields
-+write_buf_fndecl_14247_fields write_buf fndecl 3 14247 NULL
++write_buf_fndecl_14247_fields write_buf fndecl 3 14247 NULL nohasharray
++vid_batadv_tt_common_entry_14247_fields vid batadv_tt_common_entry 0 14247 &write_buf_fndecl_14247_fields
+__wmi_send_fndecl_14259_fields __wmi_send fndecl 4 14259 NULL nohasharray
+cy8ctmg110_read_regs_fndecl_14259_fields cy8ctmg110_read_regs fndecl 3 14259 &__wmi_send_fndecl_14259_fields nohasharray
+octeon_allocate_device_mem_fndecl_14259_fields octeon_allocate_device_mem fndecl 2 14259 &cy8ctmg110_read_regs_fndecl_14259_fields
+nr_blocks_msc_window_14262_fields nr_blocks msc_window 0 14262 NULL
+size_drm_scatter_gather_14264_fields size drm_scatter_gather 0 14264 NULL
++dma_maxburst_lpss8250_14267_fields dma_maxburst lpss8250 0 14267 NULL
+nilfs_sufile_block_get_segment_usage_fndecl_14278_fields nilfs_sufile_block_get_segment_usage fndecl 2 14278 NULL
+transfer_spi_master_14283_fields transfer spi_master 0 14283 NULL
+yscroll_display_14301_fields yscroll display 0 14301 NULL
@@ -191971,27 +196615,28 @@ index 0000000..6b5367db
+ath6kl_wmi_ap_profile_commit_fndecl_14329_fields ath6kl_wmi_ap_profile_commit fndecl 2 14329 NULL
+data_offset_md_rdev_14330_fields data_offset md_rdev 0 14330 NULL
+mask_myri10ge_rx_buf_14339_fields mask myri10ge_rx_buf 0 14339 NULL
++carl9170_cmd_callback_fndecl_14341_fields carl9170_cmd_callback fndecl 2 14341 NULL
+loop_start_patch_info_14350_fields loop_start patch_info 0 14350 NULL
+vnet_hdr_sz_macvtap_queue_14351_fields vnet_hdr_sz macvtap_queue 0 14351 NULL
+do_sys_truncate_fndecl_14355_fields do_sys_truncate fndecl 2 14355 NULL
+current_committed_pstore_14356_fields current_committed pstore 0 14356 NULL
+blkno_attrlist_cursor_kern_14361_fields blkno attrlist_cursor_kern 0 14361 NULL
++size_set_mib_buffer_14366_fields size set_mib_buffer 0 14366 NULL
+max_tokens_iw_ioctl_description_14373_fields max_tokens iw_ioctl_description 0 14373 NULL nohasharray
+do_jffs2_setxattr_fndecl_14373_fields do_jffs2_setxattr fndecl 5 14373 &max_tokens_iw_ioctl_description_14373_fields nohasharray
+dm_bufio_get_fndecl_14373_fields dm_bufio_get fndecl 2 14373 &do_jffs2_setxattr_fndecl_14373_fields
+length_scsiif_request_segment_14376_fields length scsiif_request_segment 0 14376 NULL
+start_extent_map_14377_fields start extent_map 0 14377 NULL
-+num_phys__sas_node_14384_fields num_phys _sas_node 0 14384 NULL
+blks_per_lun_nvm_dev_14387_fields blks_per_lun nvm_dev 0 14387 NULL nohasharray
+word15_lpfc_mbx_read_config_14387_fields word15 lpfc_mbx_read_config 0 14387 &blks_per_lun_nvm_dev_14387_fields
+dma_in_iguanair_14391_fields dma_in iguanair 0 14391 NULL
+sisusbcon_scroll_area_fndecl_14392_fields sisusbcon_scroll_area fndecl 3-4 14392 NULL
+run_delalloc_nocow_fndecl_14395_fields run_delalloc_nocow fndecl 3-4 14395 NULL
++ssize_usbat_info_14405_fields ssize usbat_info 0 14405 NULL
+jffs2_add_physical_node_ref_fndecl_14406_fields jffs2_add_physical_node_ref fndecl 3-2 14406 NULL
+min_snd_interval_14412_fields min snd_interval 0 14412 NULL nohasharray
-+rl_space_gfs2_rgrp_list_14412_fields rl_space gfs2_rgrp_list 0 14412 &min_snd_interval_14412_fields nohasharray
-+crtc_hblank_start_drm_display_mode_14412_fields crtc_hblank_start drm_display_mode 0 14412 &rl_space_gfs2_rgrp_list_14412_fields
-+num_channels_hsi_config_14414_fields num_channels hsi_config 0 14414 NULL
++crtc_hblank_start_drm_display_mode_14412_fields crtc_hblank_start drm_display_mode 0 14412 &min_snd_interval_14412_fields nohasharray
++rl_space_gfs2_rgrp_list_14412_fields rl_space gfs2_rgrp_list 0 14412 &crtc_hblank_start_drm_display_mode_14412_fields
+bigdirlen_adfs_bigdirentry_14420_fields bigdirlen adfs_bigdirentry 0 14420 NULL
+xlog_recover_process_one_iunlink_fndecl_14426_fields xlog_recover_process_one_iunlink fndecl 2 14426 NULL
+snd_cwnd_used_tcp_sock_14431_fields snd_cwnd_used tcp_sock 0 14431 NULL
@@ -192004,8 +196649,7 @@ index 0000000..6b5367db
+ntfs_sync_mft_mirror_fndecl_14470_fields ntfs_sync_mft_mirror fndecl 2 14470 NULL
+lpfc_sli_probe_sriov_nr_virtfn_fndecl_14471_fields lpfc_sli_probe_sriov_nr_virtfn fndecl 2 14471 NULL
+cache_nat_entry_fndecl_14475_fields cache_nat_entry fndecl 2 14475 NULL nohasharray
-+num_chn_netvsc_device_14475_fields num_chn netvsc_device 0 14475 &cache_nat_entry_fndecl_14475_fields nohasharray
-+rdmarc_entry_sz_mlx4_dev_cap_14475_fields rdmarc_entry_sz mlx4_dev_cap 0 14475 &num_chn_netvsc_device_14475_fields
++num_chn_netvsc_device_14475_fields num_chn netvsc_device 0 14475 &cache_nat_entry_fndecl_14475_fields
+groups_netlink_table_14476_fields groups netlink_table 0 14476 NULL
+acpi_hw_get_access_bit_width_fndecl_14478_fields acpi_hw_get_access_bit_width fndecl 0-2 14478 NULL nohasharray
+t1_change_mtu_fndecl_14478_fields t1_change_mtu fndecl 2 14478 &acpi_hw_get_access_bit_width_fndecl_14478_fields
@@ -192013,19 +196657,19 @@ index 0000000..6b5367db
+rx_unit_if_sdio_card_14483_fields rx_unit if_sdio_card 0 14483 NULL
+ntfs_perform_write_fndecl_14496_fields ntfs_perform_write fndecl 3-0 14496 NULL
+btrfs_lookup_bio_sums_dio_fndecl_14498_fields btrfs_lookup_bio_sums_dio fndecl 4 14498 NULL
-+free_area_init_node_fndecl_14500_fields free_area_init_node fndecl 3 14500 NULL
++gsm_control_send_fndecl_14499_fields gsm_control_send fndecl 4 14499 NULL
+num_vq_mic_device_desc_14503_fields num_vq mic_device_desc 0 14503 NULL
+end_code_mm_struct_14519_fields end_code mm_struct 0 14519 NULL
++volume_p_header100_14528_fields volume p_header100 0 14528 NULL
+viafb_second_offset_vardecl_viafbdev_c_14533_fields viafb_second_offset vardecl_viafbdev.c 0 14533 NULL
+size_ichxrom_window_14540_fields size ichxrom_window 0 14540 NULL
+len_extent_info_14542_fields len extent_info 0 14542 NULL
+ieee80211_get_hdrlen_from_skb_fndecl_14543_fields ieee80211_get_hdrlen_from_skb fndecl 0 14543 NULL
-+word17_lpfc_mbx_read_config_14545_fields word17 lpfc_mbx_read_config 0 14545 NULL nohasharray
-+ctrl_set_croph_fndecl_14545_fields ctrl_set_croph fndecl 3 14545 &word17_lpfc_mbx_read_config_14545_fields
++ctrl_set_croph_fndecl_14545_fields ctrl_set_croph fndecl 3 14545 NULL nohasharray
++word17_lpfc_mbx_read_config_14545_fields word17 lpfc_mbx_read_config 0 14545 &ctrl_set_croph_fndecl_14545_fields
+snd_ftu_create_effect_switch_fndecl_14546_fields snd_ftu_create_effect_switch fndecl 3-2 14546 NULL
-+lsave_cnt_ubifs_info_14547_fields lsave_cnt ubifs_info 0 14547 NULL
+len_btrfsic_block_data_ctx_14548_fields len btrfsic_block_data_ctx 0 14548 NULL
-+__alloc_memory_core_early_fndecl_14550_fields __alloc_memory_core_early fndecl 3-4-5 14550 NULL nohasharray
++__alloc_memory_core_early_fndecl_14550_fields __alloc_memory_core_early fndecl 3-2-4-5 14550 NULL nohasharray
+bus_shift_altera_uart_platform_uart_14550_fields bus_shift altera_uart_platform_uart 0 14550 &__alloc_memory_core_early_fndecl_14550_fields
+rn_snamelen_nfsd4_rename_14552_fields rn_snamelen nfsd4_rename 0 14552 NULL
+size_tso_t_14553_fields size tso_t 0 14553 NULL
@@ -192033,18 +196677,20 @@ index 0000000..6b5367db
+data_sector_size_mmc_ext_csd_14571_fields data_sector_size mmc_ext_csd 0 14571 NULL
+buffer_size_ncp_server_14574_fields buffer_size ncp_server 0 14574 NULL
+acpi_io_base_intel_pmc_ipc_dev_14580_fields acpi_io_base intel_pmc_ipc_dev 0 14580 NULL
-+btrfs_wait_ordered_range_fndecl_14581_fields btrfs_wait_ordered_range fndecl 2-3 14581 NULL
++btrfs_wait_ordered_range_fndecl_14581_fields btrfs_wait_ordered_range fndecl 2 14581 NULL
+be_length_pnfs_block_extent_14586_fields be_length pnfs_block_extent 0 14586 NULL
+link_pipe_fndecl_14595_fields link_pipe fndecl 3 14595 NULL
+static_start_pccard_mem_map_14601_fields static_start pccard_mem_map 0 14601 NULL
-+nes_netdev_change_mtu_fndecl_14604_fields nes_netdev_change_mtu fndecl 2 14604 NULL
++nes_netdev_change_mtu_fndecl_14604_fields nes_netdev_change_mtu fndecl 2 14604 NULL nohasharray
++dwc3_prepare_one_trb_fndecl_14604_fields dwc3_prepare_one_trb fndecl 4 14604 &nes_netdev_change_mtu_fndecl_14604_fields
+__get_user_pages_fndecl_14607_fields __get_user_pages fndecl 0-3 14607 NULL
-+mqd_size_aligned_kfd_device_info_14609_fields mqd_size_aligned kfd_device_info 0 14609 NULL nohasharray
-+get_next_sit_page_fndecl_14609_fields get_next_sit_page fndecl 2 14609 &mqd_size_aligned_kfd_device_info_14609_fields nohasharray
-+skb_split_fndecl_14609_fields skb_split fndecl 3 14609 &get_next_sit_page_fndecl_14609_fields
++skb_split_fndecl_14609_fields skb_split fndecl 3 14609 NULL nohasharray
++get_next_sit_page_fndecl_14609_fields get_next_sit_page fndecl 2 14609 &skb_split_fndecl_14609_fields nohasharray
++mqd_size_aligned_kfd_device_info_14609_fields mqd_size_aligned kfd_device_info 0 14609 &get_next_sit_page_fndecl_14609_fields
+alb_send_lp_vid_fndecl_14613_fields alb_send_lp_vid fndecl 4 14613 NULL
+recv_bulk_pipe_us_data_14615_fields recv_bulk_pipe us_data 0 14615 NULL
+node_scif_dev_14623_fields node scif_dev 0 14623 NULL
++vmw_execbuf_cmdbuf_fndecl_14639_fields vmw_execbuf_cmdbuf fndecl 4 14639 NULL
+length_comedi_lrange_14641_fields length comedi_lrange 0 14641 NULL
+SSIDsize_bss_info_14644_fields SSIDsize bss_info 0 14644 NULL
+dln2_gpio_get_pin_count_fndecl_14646_fields dln2_gpio_get_pin_count fndecl 0 14646 NULL
@@ -192054,6 +196700,7 @@ index 0000000..6b5367db
+write_dst_fndecl_14653_fields write_dst fndecl 3 14653 &get_sb_block_fndecl_14653_fields
+wNdpOutAlignment_usb_cdc_ncm_ntb_parameters_14656_fields wNdpOutAlignment usb_cdc_ncm_ntb_parameters 0 14656 NULL
+__btrfs_qgroup_release_data_fndecl_14664_fields __btrfs_qgroup_release_data fndecl 2-3 14664 NULL
++mlx5_query_ports_check_fndecl_14668_fields mlx5_query_ports_check fndecl 3 14668 NULL
+log_pmtu_rvt_qp_14669_fields log_pmtu rvt_qp 0 14669 NULL
+ext2_try_to_allocate_fndecl_14672_fields ext2_try_to_allocate fndecl 0-4 14672 NULL
+sg_tablesize_usb_bus_14673_fields sg_tablesize usb_bus 0 14673 NULL
@@ -192061,23 +196708,23 @@ index 0000000..6b5367db
+file_size_squashfs_reg_inode_14679_fields file_size squashfs_reg_inode 0 14679 NULL
+x86_virt_bits_cpuinfo_x86_14680_fields x86_virt_bits cpuinfo_x86 0 14680 NULL
+mtu_vnic_devcmd_notify_14682_fields mtu vnic_devcmd_notify 0 14682 NULL
-+rx_queue_entry_next_fndecl_14688_fields rx_queue_entry_next fndecl 0 14688 NULL
++rx_queue_entry_next_fndecl_14688_fields rx_queue_entry_next fndecl 0 14688 NULL nohasharray
++stream_sctp_datahdr_14688_fields stream sctp_datahdr 0 14688 &rx_queue_entry_next_fndecl_14688_fields
++ibmasm_new_command_fndecl_14689_fields ibmasm_new_command fndecl 2 14689 NULL
+max_srq_sge_ib_device_attr_14690_fields max_srq_sge ib_device_attr 0 14690 NULL
-+smt_fill_path_fndecl_14692_fields smt_fill_path fndecl 0 14692 NULL
+ttm_tt_init_fndecl_14694_fields ttm_tt_init fndecl 3 14694 NULL
+sq_depth_p9_rdma_opts_14698_fields sq_depth p9_rdma_opts 0 14698 NULL
+__do_fault_fndecl_14700_fields __do_fault fndecl 2 14700 NULL
+__alloc_bootmem_low_node_fndecl_14701_fields __alloc_bootmem_low_node fndecl 3-4 14701 NULL
-+AdapterFibsSize_aac_init_14712_fields AdapterFibsSize aac_init 0 14712 NULL
+p_fill_from_dev_buffer_fndecl_14716_fields p_fill_from_dev_buffer fndecl 4-3 14716 NULL
+ftop_swregs_state_14719_fields ftop swregs_state 0 14719 NULL
++cxgbi_device_portmap_create_fndecl_14720_fields cxgbi_device_portmap_create fndecl 3 14720 NULL
+frag_id_qede_agg_info_14725_fields frag_id qede_agg_info 0 14725 NULL
+mmc_spi_data_do_fndecl_14728_fields mmc_spi_data_do fndecl 4 14728 NULL
+or51132_writebuf_fndecl_14730_fields or51132_writebuf fndecl 3 14730 NULL
+hdrlen_ppp_file_14734_fields hdrlen ppp_file 0 14734 NULL nohasharray
+ath9k_htc_rx_msg_fndecl_14734_fields ath9k_htc_rx_msg fndecl 3 14734 &hdrlen_ppp_file_14734_fields
-+ext2_find_near_fndecl_14741_fields ext2_find_near fndecl 0 14741 NULL nohasharray
-+channels_usb_mixer_elem_info_14741_fields channels usb_mixer_elem_info 0 14741 &ext2_find_near_fndecl_14741_fields
++ext2_find_near_fndecl_14741_fields ext2_find_near fndecl 0 14741 NULL
+mcs_unwrap_fir_fndecl_14742_fields mcs_unwrap_fir fndecl 3 14742 NULL
+cifs_read_from_socket_fndecl_14743_fields cifs_read_from_socket fndecl 0-3 14743 NULL
+mlx4_alloc_icm_coherent_fndecl_14745_fields mlx4_alloc_icm_coherent fndecl 3 14745 NULL
@@ -192095,6 +196742,7 @@ index 0000000..6b5367db
+read_fn_xusb_udc_14819_fields read_fn xusb_udc 0 14819 NULL
+wDescriptorLength_hid_descriptor_14825_fields wDescriptorLength hid_descriptor 0 14825 NULL
+tg3_change_mtu_fndecl_14826_fields tg3_change_mtu fndecl 2 14826 NULL
++mlx5_core_sriov_configure_fndecl_14829_fields mlx5_core_sriov_configure fndecl 2 14829 NULL
+residual_length_response_14830_fields residual_length response 0 14830 NULL
+sis5595_base_vardecl_i2c_sis5595_c_14832_fields sis5595_base vardecl_i2c-sis5595.c 0 14832 NULL
+shift_arg_pages_fndecl_14835_fields shift_arg_pages fndecl 2 14835 NULL
@@ -192103,7 +196751,6 @@ index 0000000..6b5367db
+channels_cea_sad_14862_fields channels cea_sad 0 14862 NULL
+verity_hash_for_block_fndecl_14864_fields verity_hash_for_block fndecl 0 14864 NULL
+iwl_pcie_alloc_fw_monitor_fndecl_14872_fields iwl_pcie_alloc_fw_monitor fndecl 2 14872 NULL
-+pg_first_page_collect_14888_fields pg_first page_collect 0 14888 NULL
+invalidate_inode_pages2_range_fndecl_14896_fields invalidate_inode_pages2_range fndecl 0-3 14896 NULL
+crtc_vsync_end_drm_display_mode_14898_fields crtc_vsync_end drm_display_mode 0 14898 NULL
+nkeys_tc_pedit_sel_14899_fields nkeys tc_pedit_sel 0 14899 NULL
@@ -192113,32 +196760,36 @@ index 0000000..6b5367db
+entry_size_neigh_table_14911_fields entry_size neigh_table 0 14911 NULL
+in_pipe_usbtest_dev_14914_fields in_pipe usbtest_dev 0 14914 NULL
+blocksize_bcma_sflash_tbl_e_14917_fields blocksize bcma_sflash_tbl_e 0 14917 NULL
-+pskb_carve_inside_nonlinear_fndecl_14925_fields pskb_carve_inside_nonlinear fndecl 2-3 14925 NULL
++pskb_carve_inside_nonlinear_fndecl_14925_fields pskb_carve_inside_nonlinear fndecl 3-2 14925 NULL
+e1000_frag_len_fndecl_14930_fields e1000_frag_len fndecl 0 14930 NULL
+insert_mappable_node_fndecl_14938_fields insert_mappable_node fndecl 3 14938 NULL nohasharray
+get_allocated_memblock_reserved_regions_info_fndecl_14938_fields get_allocated_memblock_reserved_regions_info fndecl 0 14938 &insert_mappable_node_fndecl_14938_fields
+decrypted_datalen_encrypted_key_payload_14939_fields decrypted_datalen encrypted_key_payload 0 14939 NULL
+len_hif_scatter_item_14940_fields len hif_scatter_item 0 14940 NULL
++dump_smb_fndecl_14947_fields dump_smb fndecl 2 14947 NULL
+tailout_ignore_xpnet_message_14949_fields tailout_ignore xpnet_message 0 14949 NULL
-+dvb_ca_en50221_io_ioctl_fndecl_14953_fields dvb_ca_en50221_io_ioctl fndecl 2 14953 NULL
++msi_verify_entries_fndecl_14953_fields msi_verify_entries fndecl 0 14953 NULL
+ext4_mb_get_buddy_page_lock_fndecl_14972_fields ext4_mb_get_buddy_page_lock fndecl 0 14972 NULL
+l2cap_build_conf_req_fndecl_14978_fields l2cap_build_conf_req fndecl 0 14978 NULL
+romfs_iget_fndecl_14980_fields romfs_iget fndecl 2 14980 NULL
-+fuse_read_update_size_fndecl_14982_fields fuse_read_update_size fndecl 2 14982 NULL
+canon_head_n_tty_data_14983_fields canon_head n_tty_data 0 14983 NULL nohasharray
+icv_len_ieee80211_key_conf_14983_fields icv_len ieee80211_key_conf 0 14983 &canon_head_n_tty_data_14983_fields
+raid_disks_raid_set_14993_fields raid_disks raid_set 0 14993 NULL
-+drbd_bm_words_fndecl_15003_fields drbd_bm_words fndecl 0 15003 NULL
++drbd_bm_words_fndecl_15003_fields drbd_bm_words fndecl 0 15003 NULL nohasharray
++length_sge_ieee1212_15003_fields length sge_ieee1212 0 15003 &drbd_bm_words_fndecl_15003_fields
+alloc_gtt_mem_fndecl_15005_fields alloc_gtt_mem fndecl 2 15005 NULL
+cxgbi_ddp_ppm_setup_fndecl_15008_fields cxgbi_ddp_ppm_setup fndecl 4 15008 NULL
+buffers_ivtv_stream_15020_fields buffers ivtv_stream 0 15020 NULL
+macvtap_do_read_fndecl_15021_fields macvtap_do_read fndecl 0 15021 NULL
++lhs_hci_mrvl_pkt_15028_fields lhs hci_mrvl_pkt 0 15028 NULL
+iotlb_access_ok_fndecl_15032_fields iotlb_access_ok fndecl 3 15032 NULL
+saddr_fsl_edma_hw_tcd_15034_fields saddr fsl_edma_hw_tcd 0 15034 NULL
+orangefs_inode_getxattr_fndecl_15036_fields orangefs_inode_getxattr fndecl 0 15036 NULL
+num_rar_entries_ixgbe_mac_info_15039_fields num_rar_entries ixgbe_mac_info 0 15039 NULL
+mpeglines_vardecl_cx23885_417_c_15042_fields mpeglines vardecl_cx23885-417.c 0 15042 NULL nohasharray
-+partitionStartingLocation_partitionDesc_15042_fields partitionStartingLocation partitionDesc 0 15042 &mpeglines_vardecl_cx23885_417_c_15042_fields
++rts51x_read_mem_fndecl_15042_fields rts51x_read_mem fndecl 4 15042 &mpeglines_vardecl_cx23885_417_c_15042_fields nohasharray
++partitionStartingLocation_partitionDesc_15042_fields partitionStartingLocation partitionDesc 0 15042 &rts51x_read_mem_fndecl_15042_fields
++oper_speed_hci_uart_proto_15044_fields oper_speed hci_uart_proto 0 15044 NULL
+dec_pending_fndecl_15045_fields dec_pending fndecl 2 15045 NULL
+handle_event_fsnotify_ops_15054_fields handle_event fsnotify_ops 0 15054 NULL nohasharray
+buf_len_htc_packet_15054_fields buf_len htc_packet 0 15054 &handle_event_fsnotify_ops_15054_fields
@@ -192150,7 +196801,6 @@ index 0000000..6b5367db
+ctrlbuf_dma_usbhid_device_15067_fields ctrlbuf_dma usbhid_device 0 15067 NULL nohasharray
+lpt_offs_bits_ubifs_info_15067_fields lpt_offs_bits ubifs_info 0 15067 &ctrlbuf_dma_usbhid_device_15067_fields
+write_len_ddb_flashio_15069_fields write_len ddb_flashio 0 15069 NULL
-+n_values_i2c_mux_reg_platform_data_15073_fields n_values i2c_mux_reg_platform_data 0 15073 NULL
+saturation_sd_gl860_15076_fields saturation sd_gl860 0 15076 NULL
+xfs_rtcheck_range_fndecl_15077_fields xfs_rtcheck_range fndecl 3-0 15077 NULL
+bm_words_bm_xfer_ctx_15081_fields bm_words bm_xfer_ctx 0 15081 NULL
@@ -192170,16 +196820,15 @@ index 0000000..6b5367db
+copy_oldmem_page_fndecl_15143_fields copy_oldmem_page fndecl 1 15143 NULL
+mid_get_vbt_data_r1_fndecl_15145_fields mid_get_vbt_data_r1 fndecl 2 15145 NULL
+sysctl_tcp_min_tso_segs_vardecl_15146_fields sysctl_tcp_min_tso_segs vardecl 0 15146 NULL
-+elem_size_snd_array_15155_fields elem_size snd_array 0 15155 NULL
+i_disk_sec_hpfs_inode_info_15165_fields i_disk_sec hpfs_inode_info 0 15165 NULL
+ovl_dir_llseek_fndecl_15169_fields ovl_dir_llseek fndecl 2 15169 NULL
+xfs_idata_realloc_fndecl_15172_fields xfs_idata_realloc fndecl 2 15172 NULL
+si_namelen_nfsd4_secinfo_15174_fields si_namelen nfsd4_secinfo 0 15174 NULL
+perform_sglist_fndecl_15184_fields perform_sglist fndecl 3-6 15184 NULL
+nr_pages_videobuf_dmabuf_15190_fields nr_pages videobuf_dmabuf 0 15190 NULL
++sg_len_mmc_test_area_15192_fields sg_len mmc_test_area 0 15192 NULL
+ucStateEntrySize__ATOM_PPLIB_POWERPLAYTABLE_15196_fields ucStateEntrySize _ATOM_PPLIB_POWERPLAYTABLE 0 15196 NULL
+p9_client_write_fndecl_15200_fields p9_client_write fndecl 0 15200 NULL
-+mwifiex_regrdwr_write_fndecl_15202_fields mwifiex_regrdwr_write fndecl 3 15202 NULL
+size_nforce2_smbus_15203_fields size nforce2_smbus 0 15203 NULL
+top_qxl_urect_15205_fields top qxl_urect 0 15205 NULL
+simple_setattr_fndecl_15209_fields simple_setattr fndecl 0 15209 NULL
@@ -192188,45 +196837,46 @@ index 0000000..6b5367db
+vals_size_ceph_inode_xattrs_info_15217_fields vals_size ceph_inode_xattrs_info 0 15217 NULL
+len_policydb_15230_fields len policydb 0 15230 NULL nohasharray
+mtd_ooblayout_get_eccbytes_fndecl_15230_fields mtd_ooblayout_get_eccbytes fndecl 4 15230 &len_policydb_15230_fields
-+sisusb_bulkout_msg_fndecl_15233_fields sisusb_bulkout_msg fndecl 5-3 15233 NULL nohasharray
++sisusb_bulkout_msg_fndecl_15233_fields sisusb_bulkout_msg fndecl 3-5 15233 NULL nohasharray
+hfsplus_ext_lastblock_fndecl_15233_fields hfsplus_ext_lastblock fndecl 0 15233 &sisusb_bulkout_msg_fndecl_15233_fields
+surface_width_drm_fb_helper_surface_size_15237_fields surface_width drm_fb_helper_surface_size 0 15237 NULL
+len_sock_fprog_15239_fields len sock_fprog 0 15239 NULL
+do_setxattr_fndecl_15243_fields do_setxattr fndecl 5 15243 NULL
++protocol_hdlc_header_15245_fields protocol hdlc_header 0 15245 NULL
+result_wa_seg_15248_fields result wa_seg 0 15248 NULL nohasharray
+ide_cdrom_register_fndecl_15248_fields ide_cdrom_register fndecl 2 15248 &result_wa_seg_15248_fields
+sb_rextsize_xfs_sb_15250_fields sb_rextsize xfs_sb 0 15250 NULL
+ecryptfs_read_lower_page_segment_fndecl_15255_fields ecryptfs_read_lower_page_segment fndecl 4 15255 NULL
+rmsg_size_hv_netvsc_packet_15256_fields rmsg_size hv_netvsc_packet 0 15256 NULL
-+dm_block_location_fndecl_15260_fields dm_block_location fndecl 0 15260 NULL
++dm_block_location_fndecl_15260_fields dm_block_location fndecl 0 15260 NULL nohasharray
++msb_mark_page_bad_fndecl_15260_fields msb_mark_page_bad fndecl 2 15260 &dm_block_location_fndecl_15260_fields
+writequeue_entry_complete_fndecl_15264_fields writequeue_entry_complete fndecl 2 15264 NULL
+inode_bmap_fndecl_15269_fields inode_bmap fndecl 0 15269 NULL
-+bstr_printf_fndecl_15271_fields bstr_printf fndecl 0 15271 NULL
+recursive_scan_fndecl_15275_fields recursive_scan fndecl 5 15275 NULL
-+num_connectors_ucsi_capability_15281_fields num_connectors ucsi_capability 0 15281 NULL
-+nsect_ide_taskfile_15283_fields nsect ide_taskfile 0 15283 NULL
+srp_max_req_size_vardecl_ib_srpt_c_15291_fields srp_max_req_size vardecl_ib_srpt.c 0 15291 NULL
++cx24120_writeregs_fndecl_15295_fields cx24120_writeregs fndecl 4 15295 NULL
+residual_virtio_scsi_inhdr_15299_fields residual virtio_scsi_inhdr 0 15299 NULL
+scd_size_idt77252_dev_15300_fields scd_size idt77252_dev 0 15300 NULL
-+fm10k_get_pcie_msix_count_generic_fndecl_15305_fields fm10k_get_pcie_msix_count_generic fndecl 0 15305 NULL
+__sg_alloc_table_fndecl_15308_fields __sg_alloc_table fndecl 2-3-0 15308 NULL
-+channels_max_hdac_chmap_15316_fields channels_max hdac_chmap 0 15316 NULL
++snic_hex_dump_fndecl_15315_fields snic_hex_dump fndecl 3 15315 NULL
+hpfs_dir_lseek_fndecl_15324_fields hpfs_dir_lseek fndecl 2 15324 NULL
+__smq_create_fndecl_15325_fields __smq_create fndecl 1 15325 NULL
+ehci_urb_dequeue_fndecl_15333_fields ehci_urb_dequeue fndecl 3 15333 NULL
+dup_to_netobj_fndecl_15336_fields dup_to_netobj fndecl 3 15336 NULL
+min_io_size_ubifs_info_15340_fields min_io_size ubifs_info 0 15340 NULL
-+num_subdevs_xvip_composite_device_15342_fields num_subdevs xvip_composite_device 0 15342 NULL
++iser_alloc_fmr_pool_fndecl_15341_fields iser_alloc_fmr_pool fndecl 3 15341 NULL
+sc18is602_txrx_fndecl_15346_fields sc18is602_txrx fndecl 0 15346 NULL
+check_can_nocow_fndecl_15347_fields check_can_nocow fndecl 2 15347 NULL
+efx_rx_mk_skb_fndecl_15349_fields efx_rx_mk_skb fndecl 5-3 15349 NULL
+s_cluster_bits_ext4_sb_info_15353_fields s_cluster_bits ext4_sb_info 0 15353 NULL
++journal_init_common_fndecl_15367_fields journal_init_common fndecl 3 15367 NULL
+num_total_plane_drm_mode_config_15377_fields num_total_plane drm_mode_config 0 15377 NULL
+s_last_psn_rvt_qp_15390_fields s_last_psn rvt_qp 0 15390 NULL
+size_mtd_info_15393_fields size mtd_info 0 15393 NULL
+iomap_to_bh_fndecl_15399_fields iomap_to_bh fndecl 2 15399 NULL
+rds_ib_ring_init_fndecl_15404_fields rds_ib_ring_init fndecl 2 15404 NULL
+get_perf_callchain_fndecl_15408_fields get_perf_callchain fndecl 2 15408 NULL
++setup_buffering_fndecl_15419_fields setup_buffering fndecl 3 15419 NULL
+count_nfs42_write_res_15421_fields count nfs42_write_res 0 15421 NULL
+logical_reada_extent_15426_fields logical reada_extent 0 15426 NULL
+num_saved_mc_saved_data_15429_fields num_saved mc_saved_data 0 15429 NULL nohasharray
@@ -192239,7 +196889,6 @@ index 0000000..6b5367db
+code_page_dir_hpfs_spare_block_15449_fields code_page_dir hpfs_spare_block 0 15449 NULL
+regmap_spi_write_fndecl_15476_fields regmap_spi_write fndecl 3 15476 NULL
+mmio_len_fb_fix_screeninfo_15477_fields mmio_len fb_fix_screeninfo 0 15477 NULL
-+hidma_ll_init_fndecl_15486_fields hidma_ll_init fndecl 2 15486 NULL
+__ext_tree_remove_fndecl_15489_fields __ext_tree_remove fndecl 2-3 15489 NULL nohasharray
+priv_size_iscsit_transport_15489_fields priv_size iscsit_transport 0 15489 &__ext_tree_remove_fndecl_15489_fields
+old_oblock_policy_result_15494_fields old_oblock policy_result 0 15494 NULL
@@ -192251,51 +196900,53 @@ index 0000000..6b5367db
+wl1273_fm_get_tx_ctune_fndecl_15534_fields wl1273_fm_get_tx_ctune fndecl 0 15534 &btrfs_clone_files_fndecl_15534_fields
+xlog_do_recovery_pass_fndecl_15537_fields xlog_do_recovery_pass fndecl 3 15537 NULL
+space_bits_ubifs_info_15538_fields space_bits ubifs_info 0 15538 NULL
++hi_priority_depth_MPT3SAS_ADAPTER_15543_fields hi_priority_depth MPT3SAS_ADAPTER 0 15543 NULL
+index_btframe_15545_fields index btframe 0 15545 NULL
+data_length_mts_transfer_context_15546_fields data_length mts_transfer_context 0 15546 NULL
-+kernfs_iop_setxattr_fndecl_15550_fields kernfs_iop_setxattr fndecl 5 15550 NULL
+lowpan_xmit_fragment_fndecl_15552_fields lowpan_xmit_fragment fndecl 4-6 15552 NULL
+ep_in_kingsun_cb_15553_fields ep_in kingsun_cb 0 15553 NULL
-+num_odfs_clkgen_pll_data_15554_fields num_odfs clkgen_pll_data 0 15554 NULL
++diff_usnic_uiom_reg_15554_fields diff usnic_uiom_reg 0 15554 NULL nohasharray
++num_odfs_clkgen_pll_data_15554_fields num_odfs clkgen_pll_data 0 15554 &diff_usnic_uiom_reg_15554_fields
+video_buffer_size_vivid_dev_15556_fields video_buffer_size vivid_dev 0 15556 NULL
-+node_start_pfn_pglist_data_15561_fields node_start_pfn pglist_data 0 15561 NULL
++max_sges_qedr_qp_hwq_info_15558_fields max_sges qedr_qp_hwq_info 0 15558 NULL
+swiotlb_late_init_with_tbl_fndecl_15566_fields swiotlb_late_init_with_tbl fndecl 2 15566 NULL nohasharray
+push_frame_fndecl_15566_fields push_frame fndecl 2 15566 &swiotlb_late_init_with_tbl_fndecl_15566_fields
+s_map2blk_adfs_sb_info_15569_fields s_map2blk adfs_sb_info 0 15569 NULL
+nsblk_do_bvec_fndecl_15572_fields nsblk_do_bvec fndecl 0 15572 NULL
++raid_set_alloc_fndecl_15581_fields raid_set_alloc fndecl 3 15581 NULL
+acpi20_efi_15582_fields acpi20 efi 0 15582 NULL
+NumTransferUnits_erase_unit_header_t_15585_fields NumTransferUnits erase_unit_header_t 0 15585 NULL
+__split_and_process_non_flush_fndecl_15587_fields __split_and_process_non_flush fndecl 0 15587 NULL
++mlx5e_create_rqt_fndecl_15591_fields mlx5e_create_rqt fndecl 2 15591 NULL
+tx_ring_count_ixgbe_adapter_15595_fields tx_ring_count ixgbe_adapter 0 15595 NULL
+memsz_fifo_15603_fields memsz fifo 0 15603 NULL
+len_nfs3_createargs_15604_fields len nfs3_createargs 0 15604 NULL
-+do_add_page_to_bio_fndecl_15612_fields do_add_page_to_bio fndecl 10-4-2 15612 NULL
++do_add_page_to_bio_fndecl_15612_fields do_add_page_to_bio fndecl 10-4 15612 NULL
++udf_compute_nr_groups_fndecl_15617_fields udf_compute_nr_groups fndecl 0 15617 NULL
+ch_r_head_jsm_channel_15625_fields ch_r_head jsm_channel 0 15625 NULL
+nents_sg_table_15627_fields nents sg_table 0 15627 NULL nohasharray
+drm_addmap_core_fndecl_15627_fields drm_addmap_core fndecl 3-2 15627 &nents_sg_table_15627_fields
-+sensor_hub_get_physical_device_count_fndecl_15630_fields sensor_hub_get_physical_device_count fndecl 0 15630 NULL nohasharray
-+i915_error_state_buf_init_fndecl_15630_fields i915_error_state_buf_init fndecl 4 15630 &sensor_hub_get_physical_device_count_fndecl_15630_fields
++lov_alloc_memmd_fndecl_15630_fields lov_alloc_memmd fndecl 2 15630 NULL
+mcs_wrap_mir_skb_fndecl_15633_fields mcs_wrap_mir_skb fndecl 0 15633 NULL
+end_bttv_vbi_fmt_15637_fields end bttv_vbi_fmt 0 15637 NULL
+dma_in_redrat3_dev_15639_fields dma_in redrat3_dev 0 15639 NULL
+akid_raw_issuer_size_x509_parse_context_15651_fields akid_raw_issuer_size x509_parse_context 0 15651 NULL
-+extra_msdu_prefix_len_lib80211_crypto_ops_15654_fields extra_msdu_prefix_len lib80211_crypto_ops 0 15654 NULL nohasharray
-+mapped_vram_radeonfb_info_15654_fields mapped_vram radeonfb_info 0 15654 &extra_msdu_prefix_len_lib80211_crypto_ops_15654_fields nohasharray
-+read_bytes_from_xdr_buf_fndecl_15654_fields read_bytes_from_xdr_buf fndecl 4-2 15654 &mapped_vram_radeonfb_info_15654_fields
++mapped_vram_radeonfb_info_15654_fields mapped_vram radeonfb_info 0 15654 NULL nohasharray
++read_bytes_from_xdr_buf_fndecl_15654_fields read_bytes_from_xdr_buf fndecl 4-2 15654 &mapped_vram_radeonfb_info_15654_fields nohasharray
++extra_msdu_prefix_len_lib80211_crypto_ops_15654_fields extra_msdu_prefix_len lib80211_crypto_ops 0 15654 &read_bytes_from_xdr_buf_fndecl_15654_fields
+kvm_pv_enable_async_pf_fndecl_15662_fields kvm_pv_enable_async_pf fndecl 2 15662 NULL
+sb_rblocks_xfs_sb_15668_fields sb_rblocks xfs_sb 0 15668 NULL
+wsize_p9_conn_15686_fields wsize p9_conn 0 15686 NULL
+total_bnx2x_sriov_15692_fields total bnx2x_sriov 0 15692 NULL
-+num_bytes_sigmadsp_control_15699_fields num_bytes sigmadsp_control 0 15699 NULL
-+btrfs_test_extent_io_fndecl_15701_fields btrfs_test_extent_io fndecl 2 15701 NULL
++btrfs_test_extent_io_fndecl_15701_fields btrfs_test_extent_io fndecl 1-2 15701 NULL
+iov_len_kvec_15702_fields iov_len kvec 0 15702 NULL
+xprt_rdma_max_inline_read_vardecl_15703_fields xprt_rdma_max_inline_read vardecl 0 15703 NULL
+numa_scan_offset_mm_struct_15710_fields numa_scan_offset mm_struct 0 15710 NULL
+name_len_nilfs_dir_entry_15715_fields name_len nilfs_dir_entry 0 15715 NULL
+user_size_drm_i915_gem_userptr_15716_fields user_size drm_i915_gem_userptr 0 15716 NULL
+di_xblk_qnx4_inode_entry_15719_fields di_xblk qnx4_inode_entry 0 15719 NULL
-+n_window_iwl_queue_15731_fields n_window iwl_queue 0 15731 NULL
-+setup_boot_parameters_fndecl_15734_fields setup_boot_parameters fndecl 5-6-3-4 15734 NULL
++datafab_write_data_fndecl_15723_fields datafab_write_data fndecl 4 15723 NULL
++setup_boot_parameters_fndecl_15734_fields setup_boot_parameters fndecl 6-3-5-4 15734 NULL
+amdtp_am824_set_parameters_fndecl_15737_fields amdtp_am824_set_parameters fndecl 4-3 15737 NULL
+lcd_height_atyfb_par_15743_fields lcd_height atyfb_par 0 15743 NULL
+num_locks_dlm_migratable_lockres_15745_fields num_locks dlm_migratable_lockres 0 15745 NULL
@@ -192308,14 +196959,13 @@ index 0000000..6b5367db
+con_out_kvec_skip_fndecl_15753_fields con_out_kvec_skip fndecl 0 15753 &transfer_done_snd_usb_substream_15753_fields
+xres__sisbios_mode_15754_fields xres _sisbios_mode 0 15754 NULL
+sockid_uv_gam_range_entry_15756_fields sockid uv_gam_range_entry 0 15756 NULL
-+udf_add_aext_fndecl_15762_fields udf_add_aext fndecl 4 15762 NULL nohasharray
-+devm_kmalloc_fndecl_15762_fields devm_kmalloc fndecl 2 15762 &udf_add_aext_fndecl_15762_fields
++udf_add_aext_fndecl_15762_fields udf_add_aext fndecl 4 15762 NULL
+niu_change_mtu_fndecl_15765_fields niu_change_mtu fndecl 2 15765 NULL
+header_read_sd_15767_fields header_read sd 0 15767 NULL
+mc13xxx_spi_write_fndecl_15768_fields mc13xxx_spi_write fndecl 3 15768 NULL
+irttp_connect_confirm_fndecl_15769_fields irttp_connect_confirm fndecl 4-5 15769 NULL
-+rdma_read_chunk_lcl_fndecl_15778_fields rdma_read_chunk_lcl fndecl 7-8 15778 NULL nohasharray
-+ntfs_copy_from_user_iter_fndecl_15778_fields ntfs_copy_from_user_iter fndecl 5-3 15778 &rdma_read_chunk_lcl_fndecl_15778_fields
++ntfs_copy_from_user_iter_fndecl_15778_fields ntfs_copy_from_user_iter fndecl 5-3 15778 NULL nohasharray
++rdma_read_chunk_lcl_fndecl_15778_fields rdma_read_chunk_lcl fndecl 7 15778 &ntfs_copy_from_user_iter_fndecl_15778_fields
+xfs_bmap_split_extent_at_fndecl_15780_fields xfs_bmap_split_extent_at fndecl 3 15780 NULL
+PacketLength_wa_xfer_packet_status_len_hwaiso_15781_fields PacketLength wa_xfer_packet_status_len_hwaiso 0 15781 NULL
+vde_ast_vbios_enhtable_15784_fields vde ast_vbios_enhtable 0 15784 NULL
@@ -192326,9 +196976,7 @@ index 0000000..6b5367db
+btintel_secure_send_fndecl_15805_fields btintel_secure_send fndecl 3 15805 NULL
+st33zp24_spi_recv_fndecl_15816_fields st33zp24_spi_recv fndecl 4 15816 NULL
+copy_perf_raw_frag_15819_fields copy perf_raw_frag 0 15819 NULL
-+unpack_str_fndecl_15821_fields unpack_str fndecl 0 15821 NULL
+length_idma64_desc_15822_fields length idma64_desc 0 15822 NULL
-+n_match_sets_cfg80211_sched_scan_request_15823_fields n_match_sets cfg80211_sched_scan_request 0 15823 NULL
+provider_out_words_ib_uverbs_ex_cmd_hdr_15828_fields provider_out_words ib_uverbs_ex_cmd_hdr 0 15828 NULL
+word13_lpfc_mbx_read_config_15832_fields word13 lpfc_mbx_read_config 0 15832 NULL
+ocfs2_read_blocks_fndecl_15834_fields ocfs2_read_blocks fndecl 0-2 15834 NULL
@@ -192340,8 +196988,7 @@ index 0000000..6b5367db
+net2272_read_fndecl_15850_fields net2272_read fndecl 0 15850 NULL
+sb_set_blocksize_fndecl_15860_fields sb_set_blocksize fndecl 2-0 15860 NULL
+period_bytes_min_snd_pcm_hardware_15864_fields period_bytes_min snd_pcm_hardware 0 15864 NULL
-+msg_ctlmax_ipc_namespace_15868_fields msg_ctlmax ipc_namespace 0 15868 NULL
-+o2net_send_tcp_msg_fndecl_15876_fields o2net_send_tcp_msg fndecl 4-3 15876 NULL
++o2net_send_tcp_msg_fndecl_15876_fields o2net_send_tcp_msg fndecl 4 15876 NULL
+ie_len_cfg80211_auth_request_15886_fields ie_len cfg80211_auth_request 0 15886 NULL nohasharray
+dp_init_fndecl_15886_fields dp_init fndecl 0 15886 &ie_len_cfg80211_auth_request_15886_fields
+ext4_get_block_trans_fndecl_15889_fields ext4_get_block_trans fndecl 2 15889 NULL
@@ -192352,15 +196999,16 @@ index 0000000..6b5367db
+flags_v4l2_ioctl_info_15905_fields flags v4l2_ioctl_info 0 15905 NULL
+status_pch_udc_data_dma_desc_15911_fields status pch_udc_data_dma_desc 0 15911 NULL
+rh_queue_status_fndecl_15921_fields rh_queue_status fndecl 0 15921 NULL
-+group_width_ore_layout_15927_fields group_width ore_layout 0 15927 NULL nohasharray
-+btt_do_bvec_fndecl_15927_fields btt_do_bvec fndecl 0 15927 &group_width_ore_layout_15927_fields
-+npages_gssx_arg_accept_sec_context_15939_fields npages gssx_arg_accept_sec_context 0 15939 NULL
++btt_do_bvec_fndecl_15927_fields btt_do_bvec fndecl 0 15927 NULL nohasharray
++group_width_ore_layout_15927_fields group_width ore_layout 0 15927 &btt_do_bvec_fndecl_15927_fields
++npages_gssx_arg_accept_sec_context_15939_fields npages gssx_arg_accept_sec_context 0 15939 NULL nohasharray
++clk_factor_round_rate_fndecl_15939_fields clk_factor_round_rate fndecl 2 15939 &npages_gssx_arg_accept_sec_context_15939_fields
+netlink_sendmsg_fndecl_15943_fields netlink_sendmsg fndecl 3 15943 NULL
+num_rss_qs_be_adapter_15944_fields num_rss_qs be_adapter 0 15944 NULL
+xfs_ialloc_pagi_init_fndecl_15952_fields xfs_ialloc_pagi_init fndecl 3 15952 NULL
+mcp795_rtcc_read_fndecl_15956_fields mcp795_rtcc_read fndecl 4 15956 NULL
-+ebt_buf_add_pad_fndecl_15958_fields ebt_buf_add_pad fndecl 0 15958 NULL nohasharray
-+nr_rtc_mem_15958_fields nr rtc_mem 0 15958 &ebt_buf_add_pad_fndecl_15958_fields
++nr_rtc_mem_15958_fields nr rtc_mem 0 15958 NULL nohasharray
++ebt_buf_add_pad_fndecl_15958_fields ebt_buf_add_pad fndecl 0 15958 &nr_rtc_mem_15958_fields
+data_dma_usb_acecad_15962_fields data_dma usb_acecad 0 15962 NULL
+splice_pipe_to_pipe_fndecl_15964_fields splice_pipe_to_pipe fndecl 3 15964 NULL
+brcmf_bus_add_txhdrlen_fndecl_15969_fields brcmf_bus_add_txhdrlen fndecl 2 15969 NULL
@@ -192393,8 +197041,8 @@ index 0000000..6b5367db
+xfs_alloc_fix_freelist_fndecl_16057_fields xfs_alloc_fix_freelist fndecl 0 16057 NULL
+ts_packet_size_cx231xx_tsport_16063_fields ts_packet_size cx231xx_tsport 0 16063 NULL
+ddp_ppod_init_idata_fndecl_16064_fields ddp_ppod_init_idata fndecl 4 16064 NULL
-+set_parameters_fndecl_16066_fields set_parameters fndecl 8-7 16066 NULL nohasharray
-+compat_sys_sendfile64_fndecl_16066_fields compat_sys_sendfile64 fndecl 4 16066 &set_parameters_fndecl_16066_fields
++compat_sys_sendfile64_fndecl_16066_fields compat_sys_sendfile64 fndecl 4 16066 NULL nohasharray
++set_parameters_fndecl_16066_fields set_parameters fndecl 8-7 16066 &compat_sys_sendfile64_fndecl_16066_fields
+post_one_send_fndecl_16067_fields post_one_send fndecl 4 16067 NULL
+max_rxd_qlcnic_adapter_16074_fields max_rxd qlcnic_adapter 0 16074 NULL
+target_set_nacl_queue_depth_fndecl_16084_fields target_set_nacl_queue_depth fndecl 3 16084 NULL
@@ -192408,18 +197056,19 @@ index 0000000..6b5367db
+brcmf_usb_dl_send_bulk_fndecl_16113_fields brcmf_usb_dl_send_bulk fndecl 3 16113 NULL nohasharray
+xillybus_llseek_fndecl_16113_fields xillybus_llseek fndecl 2 16113 &brcmf_usb_dl_send_bulk_fndecl_16113_fields
+tx_bytes_queued_ipw_tty_16114_fields tx_bytes_queued ipw_tty 0 16114 NULL
++dm_array_cursor_begin_fndecl_16123_fields dm_array_cursor_begin fndecl 2 16123 NULL
+mip4_i2c_xfer_fndecl_16131_fields mip4_i2c_xfer fndecl 3-5 16131 NULL
+vf_count_efx_nic_16134_fields vf_count efx_nic 0 16134 NULL
+hci_req_add_ev_fndecl_16136_fields hci_req_add_ev fndecl 3 16136 NULL
+port_length_c67x00_td_16141_fields port_length c67x00_td 0 16141 NULL
-+len_virtio_vsock_pkt_16148_fields len virtio_vsock_pkt 0 16148 NULL nohasharray
-+samples_per_line_v4l2_vbi_format_16148_fields samples_per_line v4l2_vbi_format 0 16148 &len_virtio_vsock_pkt_16148_fields
++samples_per_line_v4l2_vbi_format_16148_fields samples_per_line v4l2_vbi_format 0 16148 NULL nohasharray
++len_virtio_vsock_pkt_16148_fields len virtio_vsock_pkt 0 16148 &samples_per_line_v4l2_vbi_format_16148_fields
+vlan_tag_eth_fast_path_rx_reg_cqe_16155_fields vlan_tag eth_fast_path_rx_reg_cqe 0 16155 NULL
+max_packet_length_mv_dqh_16157_fields max_packet_length mv_dqh 0 16157 NULL
+beep_amp_via_spec_16168_fields beep_amp via_spec 0 16168 NULL
+read_for_csum_fndecl_16170_fields read_for_csum fndecl 2-3 16170 NULL
++reiserfs_commit_write_fndecl_16171_fields reiserfs_commit_write fndecl 4 16171 NULL
+ath6kl_wmi_set_keepalive_cmd_fndecl_16174_fields ath6kl_wmi_set_keepalive_cmd fndecl 2 16174 NULL
-+rxrpc_recvmsg_fndecl_16178_fields rxrpc_recvmsg fndecl 3 16178 NULL
+board_span_myri10ge_priv_16182_fields board_span myri10ge_priv 0 16182 NULL nohasharray
+minor_lirc_driver_16182_fields minor lirc_driver 0 16182 &board_span_myri10ge_priv_16182_fields
+pathlen_nfs_symlinkargs_16183_fields pathlen nfs_symlinkargs 0 16183 NULL
@@ -192428,10 +197077,8 @@ index 0000000..6b5367db
+offset_user_sdma_iovec_16195_fields offset user_sdma_iovec 0 16195 NULL
+vid_hdr_offs_mtd_dev_param_16199_fields vid_hdr_offs mtd_dev_param 0 16199 NULL
+blksize_mtd_blktrans_ops_16221_fields blksize mtd_blktrans_ops 0 16221 NULL
-+port_hdspm_16225_fields port hdspm 0 16225 NULL
+mmio_vardecl_via_wdt_c_16227_fields mmio vardecl_via_wdt.c 0 16227 NULL
+m_in_maxlevels_xfs_mount_16231_fields m_in_maxlevels xfs_mount 0 16231 NULL
-+n_targets_nci_dev_16233_fields n_targets nci_dev 0 16233 NULL
+operand_1_len_ccp_ecc_modular_math_16234_fields operand_1_len ccp_ecc_modular_math 0 16234 NULL
+ks8851_rdreg32_fndecl_16240_fields ks8851_rdreg32 fndecl 0 16240 NULL
+len_wmi_p2p_rx_probe_req_event_16241_fields len wmi_p2p_rx_probe_req_event 0 16241 NULL
@@ -192439,15 +197086,14 @@ index 0000000..6b5367db
+used_count_pvr2_buffer_16246_fields used_count pvr2_buffer 0 16246 &__wl12xx_spi_raw_write_fndecl_16246_fields
+num_r_vecs_nfp_net_16247_fields num_r_vecs nfp_net 0 16247 NULL
+offs_ubifs_scan_node_16253_fields offs ubifs_scan_node 0 16253 NULL
-+xfs_getbmapx_fix_eof_hole_fndecl_16255_fields xfs_getbmapx_fix_eof_hole fndecl 5 16255 NULL
+num_desc__drm_via_sg_info_16262_fields num_desc _drm_via_sg_info 0 16262 NULL
+length_scsi_data_buffer_16267_fields length scsi_data_buffer 0 16267 NULL
+s_fpg_ufs_sb_private_info_16269_fields s_fpg ufs_sb_private_info 0 16269 NULL
+s_inodes_per_group_ext2_sb_info_16273_fields s_inodes_per_group ext2_sb_info 0 16273 NULL
+_max_length_ieee80211_radiotap_iterator_16274_fields _max_length ieee80211_radiotap_iterator 0 16274 NULL
-+hfi1_skip_sge_fndecl_16275_fields hfi1_skip_sge fndecl 2 16275 NULL
+mmio_size_sis_video_info_16284_fields mmio_size sis_video_info 0 16284 NULL
+find_ibft_region_fndecl_16285_fields find_ibft_region fndecl 0 16285 NULL
++num_queues_qede_dev_16291_fields num_queues qede_dev 0 16291 NULL
+isdn_tty_countDLE_fndecl_16304_fields isdn_tty_countDLE fndecl 0 16304 NULL
+len_ieee80211_vendor_radiotap_16308_fields len ieee80211_vendor_radiotap 0 16308 NULL nohasharray
+wm_adsp_compr_copy_fndecl_16308_fields wm_adsp_compr_copy fndecl 3 16308 &len_ieee80211_vendor_radiotap_16308_fields
@@ -192455,8 +197101,10 @@ index 0000000..6b5367db
+memblock_mark_mirror_fndecl_16321_fields memblock_mark_mirror fndecl 2-1 16321 NULL
+major_tty_driver_16323_fields major tty_driver 0 16323 NULL
+AscGetMaxDmaCount_fndecl_16326_fields AscGetMaxDmaCount fndecl 0 16326 NULL
-+__ax88179_write_cmd_fndecl_16341_fields __ax88179_write_cmd fndecl 5 16341 NULL
-+max_vfs_be_resources_16343_fields max_vfs be_resources 0 16343 NULL
++len_gb_raw_send_request_16340_fields len gb_raw_send_request 0 16340 NULL
++sys_dup2_fndecl_16343_fields sys_dup2 fndecl 2 16343 NULL nohasharray
++max_vfs_be_resources_16343_fields max_vfs be_resources 0 16343 &sys_dup2_fndecl_16343_fields
++page_offset_mlx5_srq_attr_16345_fields page_offset mlx5_srq_attr 0 16345 NULL
+fuse_dir_compat_ioctl_fndecl_16346_fields fuse_dir_compat_ioctl fndecl 2 16346 NULL
+channels_snd_emu10k1_fx8010_pcm_16368_fields channels snd_emu10k1_fx8010_pcm 0 16368 NULL
+udf_get_pblock_virt15_fndecl_16373_fields udf_get_pblock_virt15 fndecl 4 16373 NULL
@@ -192464,8 +197112,8 @@ index 0000000..6b5367db
+len_iwl_mvm_dump_desc_16383_fields len iwl_mvm_dump_desc 0 16383 NULL
+sr_set_blocklength_fndecl_16390_fields sr_set_blocklength fndecl 2 16390 NULL
+max_nr_frames_gnttab_query_size_16393_fields max_nr_frames gnttab_query_size 0 16393 NULL
-+pci_map_page_fndecl_16395_fields pci_map_page fndecl 0 16395 NULL nohasharray
-+set_pio_mode_fndecl_16395_fields set_pio_mode fndecl 2 16395 &pci_map_page_fndecl_16395_fields
++set_pio_mode_fndecl_16395_fields set_pio_mode fndecl 2 16395 NULL nohasharray
++pci_map_page_fndecl_16395_fields pci_map_page fndecl 0 16395 &set_pio_mode_fndecl_16395_fields
+usbat_execute_command_fndecl_16400_fields usbat_execute_command fndecl 3 16400 NULL
+compress_sliced_buf_fndecl_16402_fields compress_sliced_buf fndecl 0-2 16402 NULL
+statelen_drbg_core_16405_fields statelen drbg_core 0 16405 NULL
@@ -192475,22 +197123,21 @@ index 0000000..6b5367db
+n_sectors_hpfs_super_block_16421_fields n_sectors hpfs_super_block 0 16421 NULL
+bNrInPins_uac_selector_unit_descriptor_16423_fields bNrInPins uac_selector_unit_descriptor 0 16423 NULL nohasharray
+per_vf_cids_qed_cdu_iids_16423_fields per_vf_cids qed_cdu_iids 0 16423 &bNrInPins_uac_selector_unit_descriptor_16423_fields
-+gem_allocate_guc_obj_fndecl_16428_fields gem_allocate_guc_obj fndecl 2 16428 NULL
+vm_start_usb_memory_16438_fields vm_start usb_memory 0 16438 NULL
+numa_emulation_fndecl_16441_fields numa_emulation fndecl 2 16441 NULL
+ep_in_usbtest_info_16442_fields ep_in usbtest_info 0 16442 NULL
+pcmcia_irq_pcmcia_socket_16443_fields pcmcia_irq pcmcia_socket 0 16443 NULL
-+ReadHSCX_fndecl_16444_fields ReadHSCX fndecl 0 16444 NULL
++ReadHSCX_fndecl_16444_fields ReadHSCX fndecl 0 16444 NULL nohasharray
++garp_request_join_fndecl_16444_fields garp_request_join fndecl 4 16444 &ReadHSCX_fndecl_16444_fields
+mpu3050_xyz_read_reg_fndecl_16445_fields mpu3050_xyz_read_reg fndecl 3 16445 NULL
+endp_in_zd1201_16446_fields endp_in zd1201 0 16446 NULL
+frame_size_au0828_dev_16447_fields frame_size au0828_dev 0 16447 NULL
-+sdhci_alloc_host_fndecl_16454_fields sdhci_alloc_host fndecl 2 16454 NULL
-+wiimote_queue_fndecl_16469_fields wiimote_queue fndecl 3 16469 NULL
+sec_per_pg_nvm_dev_16472_fields sec_per_pg nvm_dev 0 16472 NULL
+prism2_change_mtu_fndecl_16473_fields prism2_change_mtu fndecl 2 16473 NULL
-+m_sectbb_log_xfs_mount_16477_fields m_sectbb_log xfs_mount 0 16477 NULL nohasharray
-+nfs_proc_symlink_fndecl_16477_fields nfs_proc_symlink fndecl 4 16477 &m_sectbb_log_xfs_mount_16477_fields
++nfs_proc_symlink_fndecl_16477_fields nfs_proc_symlink fndecl 4 16477 NULL nohasharray
++m_sectbb_log_xfs_mount_16477_fields m_sectbb_log xfs_mount 0 16477 &nfs_proc_symlink_fndecl_16477_fields
+msg_count_amd8111e_rx_dr_16493_fields msg_count amd8111e_rx_dr 0 16493 NULL
++ptrace_access_vm_fndecl_16494_fields ptrace_access_vm fndecl 4-2 16494 NULL
+sq_size_i40iw_qp_uk_init_info_16496_fields sq_size i40iw_qp_uk_init_info 0 16496 NULL
+blksz_fw_dl_mwifiex_pcie_device_16498_fields blksz_fw_dl mwifiex_pcie_device 0 16498 NULL
+max_srq_wqes_mthca_limits_16499_fields max_srq_wqes mthca_limits 0 16499 NULL
@@ -192500,7 +197147,8 @@ index 0000000..6b5367db
+btrfs_block_rsv_add_fndecl_16520_fields btrfs_block_rsv_add fndecl 0 16520 NULL
+blocks_available_dio_submit_16522_fields blocks_available dio_submit 0 16522 NULL
+xb_suballoc_loc_ocfs2_xattr_block_16523_fields xb_suballoc_loc ocfs2_xattr_block 0 16523 NULL
-+io_throttle_count_vnic_snic_config_16529_fields io_throttle_count vnic_snic_config 0 16529 NULL
++io_throttle_count_vnic_snic_config_16529_fields io_throttle_count vnic_snic_config 0 16529 NULL nohasharray
++gb_raw_send_fndecl_16529_fields gb_raw_send fndecl 2 16529 &io_throttle_count_vnic_snic_config_16529_fields
+hfi1_max_qp_wrs_vardecl_16533_fields hfi1_max_qp_wrs vardecl 0 16533 NULL nohasharray
+comm_size_perf_comm_event_16533_fields comm_size perf_comm_event 0 16533 &hfi1_max_qp_wrs_vardecl_16533_fields
+lpt_lebs_ubifs_info_16535_fields lpt_lebs ubifs_info 0 16535 NULL
@@ -192510,16 +197158,18 @@ index 0000000..6b5367db
+max_mthca_srq_16551_fields max mthca_srq 0 16551 NULL
+max_srq_sz_mlx4_dev_cap_16554_fields max_srq_sz mlx4_dev_cap 0 16554 NULL
+result_wa_xfer_16568_fields result wa_xfer 0 16568 NULL
++__mei_cl_send_fndecl_16571_fields __mei_cl_send fndecl 3 16571 NULL
+descriptor_elements_timb_dma_platform_data_channel_16581_fields descriptor_elements timb_dma_platform_data_channel 0 16581 NULL
+segment_count_sit_f2fs_super_block_16582_fields segment_count_sit f2fs_super_block 0 16582 NULL
+n_phy_pm8001_chip_info_16585_fields n_phy pm8001_chip_info 0 16585 NULL
++target_alloc_session_fndecl_16588_fields target_alloc_session fndecl 3-2 16588 NULL
+len_atmel_priv_ioctl_16592_fields len atmel_priv_ioctl 0 16592 NULL
+send_to_group_fndecl_16600_fields send_to_group fndecl 0 16600 NULL
+ext4_group_extend_fndecl_16613_fields ext4_group_extend fndecl 3 16613 NULL
+coda_upcall_fndecl_16614_fields coda_upcall fndecl 2 16614 NULL
-+uc_outSize_upc_req_16629_fields uc_outSize upc_req 0 16629 NULL nohasharray
-+xfs_bmap_btalloc_nullfb_fndecl_16629_fields xfs_bmap_btalloc_nullfb fndecl 0 16629 &uc_outSize_upc_req_16629_fields nohasharray
-+ext_tree_remove_fndecl_16629_fields ext_tree_remove fndecl 3-4 16629 &xfs_bmap_btalloc_nullfb_fndecl_16629_fields
++xfs_bmap_btalloc_nullfb_fndecl_16629_fields xfs_bmap_btalloc_nullfb fndecl 0 16629 NULL nohasharray
++ext_tree_remove_fndecl_16629_fields ext_tree_remove fndecl 3-4 16629 &xfs_bmap_btalloc_nullfb_fndecl_16629_fields nohasharray
++uc_outSize_upc_req_16629_fields uc_outSize upc_req 0 16629 &ext_tree_remove_fndecl_16629_fields
+crtc_hsync_start_drm_display_mode_16643_fields crtc_hsync_start drm_display_mode 0 16643 NULL
+svc_pool_map_init_pernode_fndecl_16648_fields svc_pool_map_init_pernode fndecl 0 16648 NULL
+nfc_hci_allocate_device_fndecl_16649_fields nfc_hci_allocate_device fndecl 8-6 16649 NULL
@@ -192529,13 +197179,13 @@ index 0000000..6b5367db
+core_alua_write_tpg_metadata_fndecl_16659_fields core_alua_write_tpg_metadata fndecl 3 16659 NULL
+li_total_channels_vardecl_16663_fields li_total_channels vardecl 0 16663 NULL
+memblock_remove_fndecl_16669_fields memblock_remove fndecl 2-1 16669 NULL
-+of_dma_match_channel_fndecl_16675_fields of_dma_match_channel fndecl 3 16675 NULL
-+dlfb_get_edid_fndecl_16677_fields dlfb_get_edid fndecl 0 16677 NULL nohasharray
-+ext_mem_k_screen_info_16677_fields ext_mem_k screen_info 0 16677 &dlfb_get_edid_fndecl_16677_fields
-+smaps_pte_range_fndecl_16684_fields smaps_pte_range fndecl 2 16684 NULL
++ext_mem_k_screen_info_16677_fields ext_mem_k screen_info 0 16677 NULL nohasharray
++dlfb_get_edid_fndecl_16677_fields dlfb_get_edid fndecl 0 16677 &ext_mem_k_screen_info_16677_fields
+hue_sd_gl860_16686_fields hue sd_gl860 0 16686 NULL
+__alloc_objio_seg_fndecl_16688_fields __alloc_objio_seg fndecl 1 16688 NULL
-+jffs2_scan_xref_node_fndecl_16692_fields jffs2_scan_xref_node fndecl 4 16692 NULL
++jffs2_scan_xref_node_fndecl_16692_fields jffs2_scan_xref_node fndecl 4 16692 NULL nohasharray
++nvmet_get_log_page_len_fndecl_16692_fields nvmet_get_log_page_len fndecl 0 16692 &jffs2_scan_xref_node_fndecl_16692_fields
++efx_ef10_pci_sriov_enable_fndecl_16694_fields efx_ef10_pci_sriov_enable fndecl 2 16694 NULL
+llcp_tlv_miux_fndecl_16699_fields llcp_tlv_miux fndecl 0 16699 NULL
+ad714x_spi_read_fndecl_16700_fields ad714x_spi_read fndecl 4 16700 NULL
+tlv_buf_len_mwifiex_scan_cmd_config_16702_fields tlv_buf_len mwifiex_scan_cmd_config 0 16702 NULL
@@ -192551,33 +197201,35 @@ index 0000000..6b5367db
+width_qxl_head_16734_fields width qxl_head 0 16734 NULL
+nchannels_twl6030_gpadc_platform_data_16736_fields nchannels twl6030_gpadc_platform_data 0 16736 NULL
+udf_add_extendedattr_fndecl_16737_fields udf_add_extendedattr fndecl 2 16737 NULL
++xfs_reflink_end_cow_fndecl_16740_fields xfs_reflink_end_cow fndecl 2-3 16740 NULL
+blockshift_sddr55_card_info_16749_fields blockshift sddr55_card_info 0 16749 NULL
+lib80211_wep_encrypt_fndecl_16752_fields lib80211_wep_encrypt fndecl 2 16752 NULL
+skb_pull_rcsum_fndecl_16757_fields skb_pull_rcsum fndecl 2 16757 NULL
-+discard_next_dnode_fndecl_16758_fields discard_next_dnode fndecl 2 16758 NULL
+ucNumEntries__ATOM_Tonga_PCIE_Table_16761_fields ucNumEntries _ATOM_Tonga_PCIE_Table 0 16761 NULL
+__vfs_write_fndecl_16765_fields __vfs_write fndecl 3-0 16765 NULL
-+num_q_csio_wrm_16770_fields num_q csio_wrm 0 16770 NULL nohasharray
-+cluster_vardecl_pd_c_16770_fields cluster vardecl_pd.c 0 16770 &num_q_csio_wrm_16770_fields
++cluster_vardecl_pd_c_16770_fields cluster vardecl_pd.c 0 16770 NULL
+cfg80211_classify8021d_fndecl_16771_fields cfg80211_classify8021d fndecl 0 16771 NULL
++key_len_iw_encode_ext_16773_fields key_len iw_encode_ext 0 16773 NULL
+security_inode_need_killpriv_fndecl_16777_fields security_inode_need_killpriv fndecl 0 16777 NULL
+qxl_draw_opaque_fb_fndecl_16781_fields qxl_draw_opaque_fb fndecl 2 16781 NULL
+u132_hcd_giveback_urb_fndecl_16783_fields u132_hcd_giveback_urb fndecl 4 16783 NULL nohasharray
+extra_prefix_len_ieee80211_crypto_ops_16783_fields extra_prefix_len ieee80211_crypto_ops 0 16783 &u132_hcd_giveback_urb_fndecl_16783_fields
+iscsit_build_text_rsp_fndecl_16784_fields iscsit_build_text_rsp fndecl 0 16784 NULL nohasharray
+num_pfns_virtio_balloon_16784_fields num_pfns virtio_balloon 0 16784 &iscsit_build_text_rsp_fndecl_16784_fields
++efi_memmap_init_late_fndecl_16787_fields efi_memmap_init_late fndecl 2-1 16787 NULL
+get_string_fndecl_16789_fields get_string fndecl 0 16789 NULL
+batch_shrinker_16806_fields batch shrinker 0 16806 NULL
+ieee80211_tx_ba_session_handle_start_fndecl_16807_fields ieee80211_tx_ba_session_handle_start fndecl 2 16807 NULL
-+spu_subctxt_cnt_qib_user_info_16810_fields spu_subctxt_cnt qib_user_info 0 16810 NULL nohasharray
-+iscsit_map_iovec_fndecl_16810_fields iscsit_map_iovec fndecl 4-3-0 16810 &spu_subctxt_cnt_qib_user_info_16810_fields
++iscsit_map_iovec_fndecl_16810_fields iscsit_map_iovec fndecl 4-3 16810 NULL nohasharray
++spu_subctxt_cnt_qib_user_info_16810_fields spu_subctxt_cnt qib_user_info 0 16810 &iscsit_map_iovec_fndecl_16810_fields
+csecs_nvm_id_group_16817_fields csecs nvm_id_group 0 16817 NULL
+offset_btrfs_disk_key_16819_fields offset btrfs_disk_key 0 16819 NULL
+vxlan_gro_remcsum_fndecl_16823_fields vxlan_gro_remcsum fndecl 4-2 16823 NULL
+count_range_bits_fndecl_16830_fields count_range_bits fndecl 0-3 16830 NULL
+audit_send_reply_fndecl_16835_fields audit_send_reply fndecl 7 16835 NULL
+nr_p2m_frames_start_info_16837_fields nr_p2m_frames start_info 0 16837 NULL
-+alignment_ubi_mkvol_req_16842_fields alignment ubi_mkvol_req 0 16842 NULL
++esrt_data_size_vardecl_esrt_c_16842_fields esrt_data_size vardecl_esrt.c 0 16842 NULL nohasharray
++alignment_ubi_mkvol_req_16842_fields alignment ubi_mkvol_req 0 16842 &esrt_data_size_vardecl_esrt_c_16842_fields
+tx_headroom_nfc_digital_dev_16844_fields tx_headroom nfc_digital_dev 0 16844 NULL
+ccp_do_cmac_update_fndecl_16848_fields ccp_do_cmac_update fndecl 2 16848 NULL
+base_jfs_log_16858_fields base jfs_log 0 16858 NULL
@@ -192587,61 +197239,57 @@ index 0000000..6b5367db
+size_nvs_page_16880_fields size nvs_page 0 16880 NULL
+cik_get_csb_size_fndecl_16882_fields cik_get_csb_size fndecl 0 16882 NULL
+odm_stripe_unit_pnfs_osd_data_map_16884_fields odm_stripe_unit pnfs_osd_data_map 0 16884 NULL
-+dma_buf_size_ddb_output_16886_fields dma_buf_size ddb_output 0 16886 NULL nohasharray
-+from_offset_xt_string_info_16886_fields from_offset xt_string_info 0 16886 &dma_buf_size_ddb_output_16886_fields
++from_offset_xt_string_info_16886_fields from_offset xt_string_info 0 16886 NULL nohasharray
++dma_buf_size_ddb_output_16886_fields dma_buf_size ddb_output 0 16886 &from_offset_xt_string_info_16886_fields
++sl_change_mtu_fndecl_16887_fields sl_change_mtu fndecl 2 16887 NULL
+register_sound_special_device_fndecl_16891_fields register_sound_special_device fndecl 2 16891 NULL
+buf_sz_ath10k_pci_pipe_16896_fields buf_sz ath10k_pci_pipe 0 16896 NULL
+cqe_size_mlx4_caps_16902_fields cqe_size mlx4_caps 0 16902 NULL
+integrity_digsig_verify_fndecl_16903_fields integrity_digsig_verify fndecl 3 16903 NULL
+msi2500_ctrl_msg_fndecl_16907_fields msi2500_ctrl_msg fndecl 0 16907 NULL
+tx_ring_order_vardecl_main_c_16915_fields tx_ring_order vardecl_main.c 0 16915 NULL
-+fsnotify_fndecl_16916_fields fsnotify fndecl 0 16916 NULL nohasharray
-+idx_mxser_board_16916_fields idx mxser_board 0 16916 &fsnotify_fndecl_16916_fields
++fsnotify_fndecl_16916_fields fsnotify fndecl 0 16916 NULL
+geneve_build_header_fndecl_16917_fields geneve_build_header fndecl 4 16917 NULL
+bpf_program_num_elem_xt_bpf_info_16920_fields bpf_program_num_elem xt_bpf_info 0 16920 NULL
-+gpp_size_intel_community_16924_fields gpp_size intel_community 0 16924 NULL
+cont_size_rock_state_16925_fields cont_size rock_state 0 16925 NULL
+snd_rawmidi_transmit_fndecl_16928_fields snd_rawmidi_transmit fndecl 0-3 16928 NULL
+sys_mbind_fndecl_16933_fields sys_mbind fndecl 2-1 16933 NULL
-+size_intel_ringbuffer_16937_fields size intel_ringbuffer 0 16937 NULL
+ath10k_wmi_alloc_skb_fndecl_16949_fields ath10k_wmi_alloc_skb fndecl 2 16949 NULL nohasharray
+rrpc_map_page_fndecl_16949_fields rrpc_map_page fndecl 2 16949 &ath10k_wmi_alloc_skb_fndecl_16949_fields
+len_pcan_usb_pro_rxmsg_16950_fields len pcan_usb_pro_rxmsg 0 16950 NULL
+intel_framebuffer_pitch_for_width_fndecl_16956_fields intel_framebuffer_pitch_for_width fndecl 0-2-1 16956 NULL
+minor_oss_minor_dev_16965_fields minor oss_minor_dev 0 16965 NULL
+__alloc_dummy_extent_buffer_fndecl_16969_fields __alloc_dummy_extent_buffer fndecl 2-3 16969 NULL
-+cifs_sync_write_fndecl_16972_fields cifs_sync_write fndecl 6 16972 NULL
+fat_reserved_fat_bios_param_block_16977_fields fat_reserved fat_bios_param_block 0 16977 NULL
+virtio_gpu_alloc_cmd_fndecl_16978_fields virtio_gpu_alloc_cmd fndecl 3 16978 NULL
+size_drm_vmw_shader_create_arg_16979_fields size drm_vmw_shader_create_arg 0 16979 NULL
-+inquiry_len_scsi_device_16981_fields inquiry_len scsi_device 0 16981 NULL
-+num_cs_dw_spi_16989_fields num_cs dw_spi 0 16989 NULL
++num_tx_queues_ixgbe_adapter_16981_fields num_tx_queues ixgbe_adapter 0 16981 NULL nohasharray
++inquiry_len_scsi_device_16981_fields inquiry_len scsi_device 0 16981 &num_tx_queues_ixgbe_adapter_16981_fields
++baud_earlycon_device_16992_fields baud earlycon_device 0 16992 NULL
+src_base_apei_exec_context_16995_fields src_base apei_exec_context 0 16995 NULL
+endp_out2_zd1201_16998_fields endp_out2 zd1201 0 16998 NULL
-+cifs_min_rcv_vardecl_17001_fields cifs_min_rcv vardecl 0 17001 NULL
+xfs_dir_replace_fndecl_17002_fields xfs_dir_replace fndecl 7 17002 NULL
-+id_rtc_device_17005_fields id rtc_device 0 17005 NULL
-+snd_hdac_bus_exec_verb_fndecl_17009_fields snd_hdac_bus_exec_verb fndecl 0 17009 NULL
++offset_ipw_tx_packet_17004_fields offset ipw_tx_packet 0 17004 NULL
+consumed_unix_skb_parms_17012_fields consumed unix_skb_parms 0 17012 NULL
+ds_segment_shift_logfs_disk_super_17013_fields ds_segment_shift logfs_disk_super 0 17013 NULL
-+rq_size_i40iw_qp_uk_init_info_17016_fields rq_size i40iw_qp_uk_init_info 0 17016 NULL nohasharray
-+u132_hcd_abandon_urb_fndecl_17016_fields u132_hcd_abandon_urb fndecl 4 17016 &rq_size_i40iw_qp_uk_init_info_17016_fields
++u132_hcd_abandon_urb_fndecl_17016_fields u132_hcd_abandon_urb fndecl 4 17016 NULL nohasharray
++rq_size_i40iw_qp_uk_init_info_17016_fields rq_size i40iw_qp_uk_init_info 0 17016 &u132_hcd_abandon_urb_fndecl_17016_fields
+num_pads_media_entity_17022_fields num_pads media_entity 0 17022 NULL
+ext4_mb_load_buddy_fndecl_17030_fields ext4_mb_load_buddy fndecl 2-0 17030 NULL
+ast_get_vram_info_fndecl_17034_fields ast_get_vram_info fndecl 0 17034 NULL
+hw_context_size_drm_i915_private_17036_fields hw_context_size drm_i915_private 0 17036 NULL
+inuse_kmem_cache_17038_fields inuse kmem_cache 0 17038 NULL
+alloc_targets_fndecl_17049_fields alloc_targets fndecl 2 17049 NULL
++spi_write_then_read_fndecl_17050_fields spi_write_then_read fndecl 3-5 17050 NULL
+ext4_ext_map_blocks_fndecl_17053_fields ext4_ext_map_blocks fndecl 0 17053 NULL nohasharray
+max_sge_rds_ib_device_17053_fields max_sge rds_ib_device 0 17053 &ext4_ext_map_blocks_fndecl_17053_fields
++xfs_refcount_lookup_ge_fndecl_17063_fields xfs_refcount_lookup_ge fndecl 2 17063 NULL
+ufx_submit_urb_fndecl_17065_fields ufx_submit_urb fndecl 3 17065 NULL
-+number_of_packets_usbip_header_cmd_submit_17069_fields number_of_packets usbip_header_cmd_submit 0 17069 NULL
++venus_lookup_fndecl_17066_fields venus_lookup fndecl 4 17066 NULL
+ext2_commit_chunk_fndecl_17074_fields ext2_commit_chunk fndecl 3 17074 NULL
+vmbus_sendpacket_pagebuffer_ctl_fndecl_17076_fields vmbus_sendpacket_pagebuffer_ctl fndecl 5 17076 NULL
+offset_xen_netif_tx_request_17081_fields offset xen_netif_tx_request 0 17081 NULL
-+rsp_que_len_qla_hw_data_17082_fields rsp_que_len qla_hw_data 0 17082 NULL nohasharray
-+ax88179_read_cmd_fndecl_17082_fields ax88179_read_cmd fndecl 5 17082 &rsp_que_len_qla_hw_data_17082_fields
-+ccp_prepare_data_fndecl_17091_fields ccp_prepare_data fndecl 4 17091 NULL
++rsp_que_len_qla_hw_data_17082_fields rsp_que_len qla_hw_data 0 17082 NULL
+xfs_file_fallocate_fndecl_17093_fields xfs_file_fallocate fndecl 3-4 17093 NULL
+obfuscate_tx_buffer_fndecl_17095_fields obfuscate_tx_buffer fndecl 0-2 17095 NULL nohasharray
+copy_data_fndecl_17095_fields copy_data fndecl 6 17095 &obfuscate_tx_buffer_fndecl_17095_fields
@@ -192653,14 +197301,11 @@ index 0000000..6b5367db
+sdio_readsb_fndecl_17108_fields sdio_readsb fndecl 4 17108 NULL
+count_stframe_17112_fields count stframe 0 17112 NULL
+zoneshift_alauda_media_info_17115_fields zoneshift alauda_media_info 0 17115 NULL
-+xfs_iomap_prealloc_size_fndecl_17118_fields xfs_iomap_prealloc_size fndecl 3 17118 NULL
+sample_rate_pcxhr_mgr_17120_fields sample_rate pcxhr_mgr 0 17120 NULL
-+ixgbe_get_pcie_msix_count_generic_fndecl_17122_fields ixgbe_get_pcie_msix_count_generic fndecl 0 17122 NULL
+hci_sock_recvmsg_fndecl_17131_fields hci_sock_recvmsg fndecl 3 17131 NULL
+fsl_edma_desc_residue_fndecl_17134_fields fsl_edma_desc_residue fndecl 0 17134 NULL
+irq_stmpe_variant_block_17137_fields irq stmpe_variant_block 0 17137 NULL
+irq_dma_yealink_dev_17149_fields irq_dma yealink_dev 0 17149 NULL
-+size_buf_image_desc_17151_fields size_buf image_desc 0 17151 NULL
+unmap_region_fndecl_17166_fields unmap_region fndecl 1 17166 NULL
+x86_clflush_size_cpuinfo_x86_17167_fields x86_clflush_size cpuinfo_x86 0 17167 NULL
+mcp251x_hw_tx_frame_fndecl_17170_fields mcp251x_hw_tx_frame fndecl 3 17170 NULL
@@ -192677,25 +197322,26 @@ index 0000000..6b5367db
+vsync_start_drm_display_mode_17229_fields vsync_start drm_display_mode 0 17229 NULL
+ioread32be_fndecl_17230_fields ioread32be fndecl 0 17230 NULL
+__btrfs_add_ordered_extent_fndecl_17234_fields __btrfs_add_ordered_extent fndecl 4-2-3 17234 NULL
-+alloc_isa_irq_from_domain_fndecl_17243_fields alloc_isa_irq_from_domain fndecl 2 17243 NULL
++vxge_device_register_fndecl_17243_fields vxge_device_register fndecl 4 17243 NULL nohasharray
++alloc_isa_irq_from_domain_fndecl_17243_fields alloc_isa_irq_from_domain fndecl 2 17243 &vxge_device_register_fndecl_17243_fields
+relocated_ramdisk_vardecl_17246_fields relocated_ramdisk vardecl 0 17246 NULL
+count_acpi_object_package_17250_fields count acpi_object_package 0 17250 NULL
+len_spi_ioc_transfer_17252_fields len spi_ioc_transfer 0 17252 NULL
+bm_resync_fo_drbd_device_17253_fields bm_resync_fo drbd_device 0 17253 NULL nohasharray
+LastFreeEUN_INFTLrecord_17253_fields LastFreeEUN INFTLrecord 0 17253 &bm_resync_fo_drbd_device_17253_fields
-+num_vfs_be_adapter_17257_fields num_vfs be_adapter 0 17257 NULL nohasharray
-+sctp_v6_err_fndecl_17257_fields sctp_v6_err fndecl 5 17257 &num_vfs_be_adapter_17257_fields
++sctp_v6_err_fndecl_17257_fields sctp_v6_err fndecl 5 17257 NULL nohasharray
++num_vfs_be_adapter_17257_fields num_vfs be_adapter 0 17257 &sctp_v6_err_fndecl_17257_fields
+page_to_skb_fndecl_17261_fields page_to_skb fndecl 5-4-6 17261 NULL
+line_uart_port_17263_fields line uart_port 0 17263 NULL
+fat_sec_per_clus_fat_bios_param_block_17264_fields fat_sec_per_clus fat_bios_param_block 0 17264 NULL
+alloc_candev_fndecl_17267_fields alloc_candev fndecl 2-1 17267 NULL
+macsec_finalize_skb_fndecl_17269_fields macsec_finalize_skb fndecl 2-3 17269 NULL
-+bnx2_rx_skb_fndecl_17272_fields bnx2_rx_skb fndecl 5-4 17272 NULL nohasharray
-+offs_nand_bbt_descr_17272_fields offs nand_bbt_descr 0 17272 &bnx2_rx_skb_fndecl_17272_fields
++bnx2_rx_skb_fndecl_17272_fields bnx2_rx_skb fndecl 5-4 17272 NULL
+w_stk_size_17273_fields w stk_size 0 17273 NULL nohasharray
+size_msdos_dir_entry_17273_fields size msdos_dir_entry 0 17273 &w_stk_size_17273_fields
+desired_speed_ide_drive_s_17293_fields desired_speed ide_drive_s 0 17293 NULL
+xfs_alloc_find_best_extent_fndecl_17294_fields xfs_alloc_find_best_extent fndecl 0 17294 NULL
++rtl8821ae_c2h_packet_handler_fndecl_17297_fields rtl8821ae_c2h_packet_handler fndecl 3 17297 NULL
+sup_segnum_nilfs_suinfo_update_17298_fields sup_segnum nilfs_suinfo_update 0 17298 NULL
+div_round_integer_fndecl_17300_fields div_round_integer fndecl 0-2-1 17300 NULL
+read_reg_sja1000_priv_17306_fields read_reg sja1000_priv 0 17306 NULL
@@ -192708,38 +197354,42 @@ index 0000000..6b5367db
+reserved_eqs_mlx4_caps_17333_fields reserved_eqs mlx4_caps 0 17333 NULL
+freeblk_xfs_da_geometry_17334_fields freeblk xfs_da_geometry 0 17334 NULL
+dev_count_kvm_io_bus_17340_fields dev_count kvm_io_bus 0 17340 NULL
-+MaxBuses__MSG_IOC_FACTS_REPLY_17350_fields MaxBuses _MSG_IOC_FACTS_REPLY 0 17350 NULL
+tipc_alloc_entry_fndecl_17360_fields tipc_alloc_entry fndecl 2 17360 NULL
+udf_tgetblk_fndecl_17362_fields udf_tgetblk fndecl 2 17362 NULL nohasharray
+cxgb4i_max_connect_vardecl_cxgb4i_c_17362_fields cxgb4i_max_connect vardecl_cxgb4i.c 0 17362 &udf_tgetblk_fndecl_17362_fields
+config_desc_fndecl_17365_fields config_desc fndecl 0 17365 NULL
++rmmio_size_amdgpu_device_17366_fields rmmio_size amdgpu_device 0 17366 NULL
+pn533_set_configuration_fndecl_17370_fields pn533_set_configuration fndecl 4 17370 NULL nohasharray
+num_txd_qlcnic_adapter_17370_fields num_txd qlcnic_adapter 0 17370 &pn533_set_configuration_fndecl_17370_fields
+name_len_vardecl_initramfs_c_17373_fields name_len vardecl_initramfs.c 0 17373 NULL
+acl_len_nfs_getaclargs_17378_fields acl_len nfs_getaclargs 0 17378 NULL
+vram_total_vardecl_uvesafb_c_17381_fields vram_total vardecl_uvesafb.c 0 17381 NULL
++scatt_size_eata_info_17383_fields scatt_size eata_info 0 17383 NULL
+hw_hdr_len_cardstate_17385_fields hw_hdr_len cardstate 0 17385 NULL
+ata_read_log_page_fndecl_17386_fields ata_read_log_page fndecl 5 17386 NULL
+mtd_ooblayout_count_freebytes_fndecl_17388_fields mtd_ooblayout_count_freebytes fndecl 0 17388 NULL
+raw_issuer_size_pkcs7_parse_context_17399_fields raw_issuer_size pkcs7_parse_context 0 17399 NULL
+cxgbit_put_login_tx_fndecl_17403_fields cxgbit_put_login_tx fndecl 3 17403 NULL
-+num_channels_ad5592r_state_17408_fields num_channels ad5592r_state 0 17408 NULL
+snd_hda_create_spdif_in_ctls_fndecl_17414_fields snd_hda_create_spdif_in_ctls fndecl 2 17414 NULL
+dlm_master_lookup_fndecl_17417_fields dlm_master_lookup fndecl 4 17417 NULL
+l2up_create_fndecl_17421_fields l2up_create fndecl 3 17421 NULL
-+max_in_queue_skl_module_cfg_17438_fields max_in_queue skl_module_cfg 0 17438 NULL
++gsmld_receive_buf_fndecl_17440_fields gsmld_receive_buf fndecl 4 17440 NULL
+dd_fcvport_size_fc_function_template_17449_fields dd_fcvport_size fc_function_template 0 17449 NULL
+nvme_char_major_vardecl_core_c_17452_fields nvme_char_major vardecl_core.c 0 17452 NULL
+reply_size_ncp_server_17456_fields reply_size ncp_server 0 17456 NULL
+bufsz_kexec_segment_17458_fields bufsz kexec_segment 0 17458 NULL
+__alloc_bootmem_node_nopanic_fndecl_17459_fields __alloc_bootmem_node_nopanic fndecl 3-4 17459 NULL
+custom_sig_size_s3fwrn5_fw_image_17467_fields custom_sig_size s3fwrn5_fw_image 0 17467 NULL
-+sddr09_write_inplace_fndecl_17484_fields sddr09_write_inplace fndecl 4-3 17484 NULL
++cipso_v4_map_lvl_hton_fndecl_17481_fields cipso_v4_map_lvl_hton fndecl 0 17481 NULL
++sddr09_write_inplace_fndecl_17484_fields sddr09_write_inplace fndecl 4-3 17484 NULL nohasharray
++replace_fd_fndecl_17484_fields replace_fd fndecl 1 17484 &sddr09_write_inplace_fndecl_17484_fields
+e_block_mb_cache_entry_17485_fields e_block mb_cache_entry 0 17485 NULL
-+mlx4_ib_reg_user_mr_fndecl_17492_fields mlx4_ib_reg_user_mr fndecl 2-3 17492 NULL
++len_tmc_drvdata_17487_fields len tmc_drvdata 0 17487 NULL
++mlx4_ib_reg_user_mr_fndecl_17492_fields mlx4_ib_reg_user_mr fndecl 3-2 17492 NULL
+qp_memcpy_from_queue_fndecl_17500_fields qp_memcpy_from_queue fndecl 5-4 17500 NULL
+user_buffer_offset_binder_proc_17508_fields user_buffer_offset binder_proc 0 17508 NULL
+invalidate_fndecl_17509_fields invalidate fndecl 4-3 17509 NULL
++brcmf_fil_iovar_data_set_fndecl_17512_fields brcmf_fil_iovar_data_set fndecl 4 17512 NULL
+npages_free_dma_pool_17513_fields npages_free dma_pool 0 17513 NULL nohasharray
+read_dst_fndecl_17513_fields read_dst fndecl 3 17513 &npages_free_dma_pool_17513_fields
+id_rtsx_pcr_17526_fields id rtsx_pcr 0 17526 NULL
@@ -192750,6 +197400,7 @@ index 0000000..6b5367db
+wdm_read_fndecl_17542_fields wdm_read fndecl 3 17542 NULL nohasharray
+num_pln_nvm_id_group_17542_fields num_pln nvm_id_group 0 17542 &wdm_read_fndecl_17542_fields
+root_cluster_msdos_sb_info_17547_fields root_cluster msdos_sb_info 0 17547 NULL
++len_nft_range_expr_17551_fields len nft_range_expr 0 17551 NULL
+mlx4_en_rx_skb_fndecl_17554_fields mlx4_en_rx_skb fndecl 4 17554 NULL
+mchip_comp_read_frame_fndecl_17555_fields mchip_comp_read_frame fndecl 0-1 17555 NULL
+ufs_truncate_fndecl_17556_fields ufs_truncate fndecl 2 17556 NULL
@@ -192764,25 +197415,22 @@ index 0000000..6b5367db
+ent_bread_fatent_operations_17603_fields ent_bread fatent_operations 0 17603 &qlf_len_xfs_dq_logformat_17603_fields
+isoc_ep_stk_camera_17604_fields isoc_ep stk_camera 0 17604 NULL
+nr_planes_nvm_dev_17609_fields nr_planes nvm_dev 0 17609 NULL
-+nes_reject_fndecl_17612_fields nes_reject fndecl 3 17612 NULL
+min_alloc_order_gen_pool_17628_fields min_alloc_order gen_pool 0 17628 NULL
+num_peri_pl330_config_17630_fields num_peri pl330_config 0 17630 NULL
-+num_channels_iio_hwmon_state_17633_fields num_channels iio_hwmon_state 0 17633 NULL
-+zero_pfn_vardecl_17635_fields zero_pfn vardecl 0 17635 NULL
+video_linelength_sis_video_info_17642_fields video_linelength sis_video_info 0 17642 NULL
+wl12xx_sdio_raw_read_fndecl_17648_fields wl12xx_sdio_raw_read fndecl 4 17648 NULL
-+mscode_note_digest_fndecl_17651_fields mscode_note_digest fndecl 5 17651 NULL
+buf_len_ceph_none_authorizer_17652_fields buf_len ceph_none_authorizer 0 17652 NULL
+size_mem_array_17655_fields size mem_array 0 17655 NULL
++_request_firmware_fndecl_17657_fields _request_firmware fndecl 0 17657 NULL
+btrfs_dedupe_file_range_fndecl_17658_fields btrfs_dedupe_file_range fndecl 2-5 17658 NULL nohasharray
+snd_wscale_tcp_options_received_17658_fields snd_wscale tcp_options_received 0 17658 &btrfs_dedupe_file_range_fndecl_17658_fields
++batadv_tt_add_temporary_global_entry_fndecl_17661_fields batadv_tt_add_temporary_global_entry fndecl 4 17661 NULL
+stereo_cmipci_sb_reg_17667_fields stereo cmipci_sb_reg 0 17667 NULL
+maybe_insert_hole_fndecl_17668_fields maybe_insert_hole fndecl 4-3 17668 NULL
+f2fs_update_extent_cache_range_fndecl_17671_fields f2fs_update_extent_cache_range fndecl 4-2-3 17671 NULL
+vdma_mem_alloc_fndecl_17672_fields vdma_mem_alloc fndecl 1 17672 NULL
+whci_capdata_quirks_fndecl_17683_fields whci_capdata_quirks fndecl 0-2 17683 NULL
-+NFTL_formatblock_fndecl_17684_fields NFTL_formatblock fndecl 2 17684 NULL nohasharray
-+iov_misc_count_iscsi_cmd_17684_fields iov_misc_count iscsi_cmd 0 17684 &NFTL_formatblock_fndecl_17684_fields
++NFTL_formatblock_fndecl_17684_fields NFTL_formatblock fndecl 2 17684 NULL
+ivtv_copy_buf_to_user_fndecl_17692_fields ivtv_copy_buf_to_user fndecl 4 17692 NULL
+opcfg_ofs_cyttsp4_sysinfo_ofs_17693_fields opcfg_ofs cyttsp4_sysinfo_ofs 0 17693 NULL
+bytes_left_ccp_sg_workarea_17701_fields bytes_left ccp_sg_workarea 0 17701 NULL
@@ -192804,7 +197452,6 @@ index 0000000..6b5367db
+pkg_len_hanwang_features_17749_fields pkg_len hanwang_features 0 17749 NULL nohasharray
+sock_no_sendpage_fndecl_17749_fields sock_no_sendpage fndecl 0-4 17749 &pkg_len_hanwang_features_17749_fields
+sector_size_scsi_device_17750_fields sector_size scsi_device 0 17750 NULL
-+cmd_per_lun_Scsi_Host_17757_fields cmd_per_lun Scsi_Host 0 17757 NULL
+g_token_size_fndecl_17759_fields g_token_size fndecl 0-2 17759 NULL nohasharray
+actual_length_spi_message_17759_fields actual_length spi_message 0 17759 &g_token_size_fndecl_17759_fields
+max_queues_fm10k_mac_info_17760_fields max_queues fm10k_mac_info 0 17760 NULL
@@ -192821,6 +197468,7 @@ index 0000000..6b5367db
+telem_punit_ssram_base_intel_pmc_ipc_dev_17821_fields telem_punit_ssram_base intel_pmc_ipc_dev 0 17821 NULL
+i_blkbits_inode_17823_fields i_blkbits inode 0 17823 NULL
+tipc_recvmsg_fndecl_17825_fields tipc_recvmsg fndecl 3 17825 NULL
++curbuf_pipe_inode_info_17844_fields curbuf pipe_inode_info 0 17844 NULL
+mid_get_vbt_data_r10_fndecl_17847_fields mid_get_vbt_data_r10 fndecl 2 17847 NULL
+cifs_lockv_fndecl_17853_fields cifs_lockv fndecl 6-5 17853 NULL
+discard_alignment_queue_limits_17856_fields discard_alignment queue_limits 0 17856 NULL
@@ -192828,67 +197476,81 @@ index 0000000..6b5367db
+bip_vcnt_bio_integrity_payload_17865_fields bip_vcnt bio_integrity_payload 0 17865 NULL
+secondary_tail_adu_device_17874_fields secondary_tail adu_device 0 17874 NULL
+max_pkt_size_au0828_usb_isoc_ctl_17891_fields max_pkt_size au0828_usb_isoc_ctl 0 17891 NULL
-+next_portid_vardecl_rio_c_17897_fields next_portid vardecl_rio.c 0 17897 NULL
+del_ba_param_set_host_cmd_ds_11n_delba_17899_fields del_ba_param_set host_cmd_ds_11n_delba 0 17899 NULL
+s_firstinodezone_sysv_sb_info_17901_fields s_firstinodezone sysv_sb_info 0 17901 NULL
+used_aead_ctx_17910_fields used aead_ctx 0 17910 NULL
-+leb_start_ubifs_info_17911_fields leb_start ubifs_info 0 17911 NULL
-+msb_write_block_fndecl_17912_fields msb_write_block fndecl 5-2-3 17912 NULL
++leb_start_ubifs_info_17911_fields leb_start ubifs_info 0 17911 NULL nohasharray
++arch_gnttab_valloc_fndecl_17911_fields arch_gnttab_valloc fndecl 2 17911 &leb_start_ubifs_info_17911_fields
++msb_write_block_fndecl_17912_fields msb_write_block fndecl 5-2-3 17912 NULL nohasharray
++fd_size_fip_size_desc_17912_fields fd_size fip_size_desc 0 17912 &msb_write_block_fndecl_17912_fields
+osd_req_read_sg_kern_fndecl_17913_fields osd_req_read_sg_kern fndecl 5 17913 NULL
+rx_agg_cmp_len_flags_type_rx_agg_cmp_17914_fields rx_agg_cmp_len_flags_type rx_agg_cmp 0 17914 NULL nohasharray
+sg_pcopy_to_buffer_fndecl_17914_fields sg_pcopy_to_buffer fndecl 5-4 17914 &rx_agg_cmp_len_flags_type_rx_agg_cmp_17914_fields
+br_blockcount_xfs_bmbt_irec_17931_fields br_blockcount xfs_bmbt_irec 0 17931 NULL
+mmio_base_sis_video_info_17941_fields mmio_base sis_video_info 0 17941 NULL
-+__vxge_hw_mempool_create_fndecl_17944_fields __vxge_hw_mempool_create fndecl 3-6-4 17944 NULL
-+do_msgrcv_fndecl_17946_fields do_msgrcv fndecl 3 17946 NULL
++__vxge_hw_mempool_create_fndecl_17944_fields __vxge_hw_mempool_create fndecl 3-2-6-4 17944 NULL
+rtl2830_regmap_read_fndecl_17947_fields rtl2830_regmap_read fndecl 3-5 17947 NULL
+ath6kl_wmi_data_sync_send_fndecl_17951_fields ath6kl_wmi_data_sync_send fndecl 4 17951 NULL
++videobuf_dma_init_kernel_fndecl_17952_fields videobuf_dma_init_kernel fndecl 3 17952 NULL
+dm_io_fndecl_17953_fields dm_io fndecl 0 17953 NULL
-+pkt_align_netvsc_device_17961_fields pkt_align netvsc_device 0 17961 NULL nohasharray
-+cydata_size_cyttsp4_sysinfo_ofs_17961_fields cydata_size cyttsp4_sysinfo_ofs 0 17961 &pkt_align_netvsc_device_17961_fields
++pkt_align_netvsc_device_17961_fields pkt_align netvsc_device 0 17961 NULL
+scan_async_group_fndecl_17964_fields scan_async_group fndecl 3 17964 NULL
+do_tee_fndecl_17969_fields do_tee fndecl 3 17969 NULL
+ab3100_get_register_page_interruptible_fndecl_17972_fields ab3100_get_register_page_interruptible fndecl 4 17972 NULL
++cpuhp_invoke_callback_fndecl_17975_fields cpuhp_invoke_callback fndecl 0 17975 NULL
+length_ore_io_state_17977_fields length ore_io_state 0 17977 NULL
+nilfs_set_last_segment_fndecl_17983_fields nilfs_set_last_segment fndecl 2 17983 NULL
+data3_sisusb_command_17984_fields data3 sisusb_command 0 17984 NULL nohasharray
+pci_addr_of_pci_range_17984_fields pci_addr of_pci_range 0 17984 &data3_sisusb_command_17984_fields
++channels_tiadc_device_17992_fields channels tiadc_device 0 17992 NULL
+fill_inquiry_response_fndecl_17994_fields fill_inquiry_response fndecl 3 17994 NULL
++cipso_v4_gentag_enum_fndecl_17997_fields cipso_v4_gentag_enum fndecl 0 17997 NULL
+get_context_size_fndecl_17999_fields get_context_size fndecl 0 17999 NULL
++order_per_bit_cma_18000_fields order_per_bit cma 0 18000 NULL
+target_xcopy_read_source_fndecl_18003_fields target_xcopy_read_source fndecl 5 18003 NULL
++ofldqsets_sge_18006_fields ofldqsets sge 0 18006 NULL
+data_xfer_length_aac_srb_reply_18012_fields data_xfer_length aac_srb_reply 0 18012 NULL nohasharray
+size_aper_size_info_8_18012_fields size aper_size_info_8 0 18012 &data_xfer_length_aac_srb_reply_18012_fields
+rx_frag_size_vardecl_be_main_c_18017_fields rx_frag_size vardecl_be_main.c 0 18017 NULL
+raid56_parity_recover_fndecl_18019_fields raid56_parity_recover fndecl 0 18019 NULL
+wimax_msg_fndecl_18021_fields wimax_msg fndecl 4 18021 NULL
+sl811h_urb_dequeue_fndecl_18025_fields sl811h_urb_dequeue fndecl 3 18025 NULL
-+rawv6_recvmsg_fndecl_18026_fields rawv6_recvmsg fndecl 3 18026 NULL
-+fcoe_hmc_filt_num_i40e_pf_18027_fields fcoe_hmc_filt_num i40e_pf 0 18027 NULL
++rawv6_recvmsg_fndecl_18026_fields rawv6_recvmsg fndecl 3 18026 NULL nohasharray
++ceph_kvmalloc_fndecl_18026_fields ceph_kvmalloc fndecl 1 18026 &rawv6_recvmsg_fndecl_18026_fields
++mq_msgsize_max_ipc_namespace_18027_fields mq_msgsize_max ipc_namespace 0 18027 NULL nohasharray
++fcoe_hmc_filt_num_i40e_pf_18027_fields fcoe_hmc_filt_num i40e_pf 0 18027 &mq_msgsize_max_ipc_namespace_18027_fields
+splice_read_file_operations_18028_fields splice_read file_operations 0 18028 NULL
++start_data_mm_struct_18029_fields start_data mm_struct 0 18029 NULL
+virtio_gpu_cmd_transfer_to_host_2d_fndecl_18040_fields virtio_gpu_cmd_transfer_to_host_2d fndecl 5-4 18040 NULL
+read_device_fndecl_18043_fields read_device fndecl 3 18043 NULL
++ld_usb_write_fndecl_18045_fields ld_usb_write fndecl 3 18045 NULL
+len_ib_ucm_private_data_18046_fields len ib_ucm_private_data 0 18046 NULL
+xfer_len_iscsi_seq_18047_fields xfer_len iscsi_seq 0 18047 NULL
+sctp_make_op_error_fndecl_18050_fields sctp_make_op_error fndecl 5-6 18050 NULL
+ts_packet_size_cx23885_tsport_18052_fields ts_packet_size cx23885_tsport 0 18052 NULL
++broadwell_calc_cdclk_fndecl_18055_fields broadwell_calc_cdclk fndecl 0 18055 NULL
++ena_sriov_configure_fndecl_18060_fields ena_sriov_configure fndecl 2 18060 NULL
++max_sge_qedr_device_attr_18068_fields max_sge qedr_device_attr 0 18068 NULL
+vb2_vmalloc_attach_dmabuf_fndecl_18073_fields vb2_vmalloc_attach_dmabuf fndecl 3 18073 NULL
+req_ie_len_brcmf_cfg80211_connect_info_18083_fields req_ie_len brcmf_cfg80211_connect_info 0 18083 NULL
++_osdv2_req_encode_common_fndecl_18086_fields _osdv2_req_encode_common fndecl 2 18086 NULL
+bits_per_pixel_drm_framebuffer_18087_fields bits_per_pixel drm_framebuffer 0 18087 NULL
+di_nextents_xfs_icdinode_18090_fields di_nextents xfs_icdinode 0 18090 NULL
-+mv88e6xxx_smi_read_fndecl_18107_fields mv88e6xxx_smi_read fndecl 0 18107 NULL
++inode2sd_fndecl_18094_fields inode2sd fndecl 3 18094 NULL
++stack_size_flat_hdr_18108_fields stack_size flat_hdr 0 18108 NULL
+btrfs_qgroup_reserve_data_fndecl_18109_fields btrfs_qgroup_reserve_data fndecl 0-3-2 18109 NULL
+addr_width_fsl_edma_slave_config_18115_fields addr_width fsl_edma_slave_config 0 18115 NULL
+befs_read_datastream_fndecl_18116_fields befs_read_datastream fndecl 3 18116 NULL
-+mod_len_ccp_ecc_engine_18119_fields mod_len ccp_ecc_engine 0 18119 NULL nohasharray
-+index_vardecl_ali5451_c_18119_fields index vardecl_ali5451.c 0 18119 &mod_len_ccp_ecc_engine_18119_fields
++index_vardecl_ali5451_c_18119_fields index vardecl_ali5451.c 0 18119 NULL nohasharray
++mod_len_ccp_ecc_engine_18119_fields mod_len ccp_ecc_engine 0 18119 &index_vardecl_ali5451_c_18119_fields
+send_mpa_reject_fndecl_18124_fields send_mpa_reject fndecl 3 18124 NULL
+bnx2x_num_queues_vardecl_18126_fields bnx2x_num_queues vardecl 0 18126 NULL
+reshape_request_fndecl_18130_fields reshape_request fndecl 2 18130 NULL
+fs_start_hfs_sb_info_18132_fields fs_start hfs_sb_info 0 18132 NULL
+num_ddr_avs_mthca_av_table_18139_fields num_ddr_avs mthca_av_table 0 18139 NULL
+i_iget5_block_iso_inode_info_18143_fields i_iget5_block iso_inode_info 0 18143 NULL
-+mtu_net_device_18148_fields mtu net_device 0 18148 NULL nohasharray
-+softback_in_vardecl_fbcon_c_18148_fields softback_in vardecl_fbcon.c 0 18148 &mtu_net_device_18148_fields
++softback_in_vardecl_fbcon_c_18148_fields softback_in vardecl_fbcon.c 0 18148 NULL nohasharray
++mtu_net_device_18148_fields mtu net_device 0 18148 &softback_in_vardecl_fbcon_c_18148_fields
+send_max_size_send_ctx_18149_fields send_max_size send_ctx 0 18149 NULL
+read_word_onenand_chip_18150_fields read_word onenand_chip 0 18150 NULL
+bmv_length_getbmapx_18151_fields bmv_length getbmapx 0 18151 NULL
@@ -192905,21 +197567,22 @@ index 0000000..6b5367db
+fw_size_intel_dmc_header_18214_fields fw_size intel_dmc_header 0 18214 NULL
+ext4_issue_zeroout_fndecl_18225_fields ext4_issue_zeroout fndecl 4-0-3 18225 NULL
+ql_process_mac_rx_skb_fndecl_18226_fields ql_process_mac_rx_skb fndecl 5-4 18226 NULL
++xen_xlate_map_ballooned_pages_fndecl_18227_fields xen_xlate_map_ballooned_pages fndecl 3 18227 NULL
+xf_block_size_i40iw_hmc_fpm_misc_18228_fields xf_block_size i40iw_hmc_fpm_misc 0 18228 NULL
+nvkm_fifo_ctor_fndecl_18233_fields nvkm_fifo_ctor fndecl 4 18233 NULL
+vol_id_ubi_volume_18238_fields vol_id ubi_volume 0 18238 NULL
+ocfs2_insert_extent_fndecl_18242_fields ocfs2_insert_extent fndecl 4-3 18242 NULL
+payload_size_vmci_datagram_18243_fields payload_size vmci_datagram 0 18243 NULL
-+scif_writeto_fndecl_18246_fields scif_writeto fndecl 2-4-3 18246 NULL
++scif_writeto_fndecl_18246_fields scif_writeto fndecl 3-2-4 18246 NULL
+next_free_transient_c_18248_fields next_free transient_c 0 18248 NULL
+inet_recv_error_fndecl_18251_fields inet_recv_error fndecl 3 18251 NULL
+rxf_size_bdx_priv_18260_fields rxf_size bdx_priv 0 18260 NULL
+end_extent_state_18270_fields end extent_state 0 18270 NULL
+sfi_check_table_fndecl_18279_fields sfi_check_table fndecl 1 18279 NULL
+_nfs4_get_security_label_fndecl_18285_fields _nfs4_get_security_label fndecl 3 18285 NULL
++new_rate_clk_notifier_data_18286_fields new_rate clk_notifier_data 0 18286 NULL
+scif_create_window_fndecl_18291_fields scif_create_window fndecl 2 18291 NULL
+tda18218_rd_regs_fndecl_18293_fields tda18218_rd_regs fndecl 4-2 18293 NULL
-+mlx5_core_create_vfs_fndecl_18298_fields mlx5_core_create_vfs fndecl 2 18298 NULL
+index_sg_device_18304_fields index sg_device 0 18304 NULL
+essid_len_iw_scan_req_18306_fields essid_len iw_scan_req 0 18306 NULL nohasharray
+offset_cxgbit_lro_cb_18306_fields offset cxgbit_lro_cb 0 18306 &essid_len_iw_scan_req_18306_fields
@@ -192927,20 +197590,18 @@ index 0000000..6b5367db
+twl4030_init_irq_fndecl_18308_fields twl4030_init_irq fndecl 0 18308 NULL
+e820_end_of_low_ram_pfn_fndecl_18324_fields e820_end_of_low_ram_pfn fndecl 0 18324 NULL
+radeon_sa_bo_manager_init_fndecl_18326_fields radeon_sa_bo_manager_init fndecl 3 18326 NULL
-+unit_hfi1_devdata_18328_fields unit hfi1_devdata 0 18328 NULL nohasharray
-+page_shift_rvt_mregion_18328_fields page_shift rvt_mregion 0 18328 &unit_hfi1_devdata_18328_fields
++page_shift_rvt_mregion_18328_fields page_shift rvt_mregion 0 18328 NULL nohasharray
++unit_hfi1_devdata_18328_fields unit hfi1_devdata 0 18328 &page_shift_rvt_mregion_18328_fields
+hdlcdrv_register_fndecl_18331_fields hdlcdrv_register fndecl 2 18331 NULL
+taps_oslec_state_18332_fields taps oslec_state 0 18332 NULL
+m_blockmask_xfs_mount_18334_fields m_blockmask xfs_mount 0 18334 NULL
+xfs_da_reada_buf_fndecl_18349_fields xfs_da_reada_buf fndecl 2 18349 NULL
+rfcomm_send_frame_fndecl_18352_fields rfcomm_send_frame fndecl 3 18352 NULL
-+elfnotes_sz_vardecl_vmcore_c_18357_fields elfnotes_sz vardecl_vmcore.c 0 18357 NULL nohasharray
-+vm_pgoff_vm_area_struct_18357_fields vm_pgoff vm_area_struct 0 18357 &elfnotes_sz_vardecl_vmcore_c_18357_fields
-+lbs_rdrf_write_fndecl_18361_fields lbs_rdrf_write fndecl 3 18361 NULL
++vm_pgoff_vm_area_struct_18357_fields vm_pgoff vm_area_struct 0 18357 NULL
+tso_build_data_fndecl_18365_fields tso_build_data fndecl 3 18365 NULL
+ascii2desc_fndecl_18370_fields ascii2desc fndecl 0-3 18370 NULL
+ecryptfs_write_lower_fndecl_18373_fields ecryptfs_write_lower fndecl 4 18373 NULL
-+extent_write_locked_range_fndecl_18375_fields extent_write_locked_range fndecl 3-4 18375 NULL nohasharray
++extent_write_locked_range_fndecl_18375_fields extent_write_locked_range fndecl 3 18375 NULL nohasharray
+perf_output_sample_ustack_fndecl_18375_fields perf_output_sample_ustack fndecl 2 18375 &extent_write_locked_range_fndecl_18375_fields
+len_btrfs_ordered_extent_18377_fields len btrfs_ordered_extent 0 18377 NULL
+lc_last_wr_nfsd4_layoutcommit_18378_fields lc_last_wr nfsd4_layoutcommit 0 18378 NULL nohasharray
@@ -192953,7 +197614,6 @@ index 0000000..6b5367db
+veth_change_mtu_fndecl_18405_fields veth_change_mtu fndecl 2 18405 NULL nohasharray
+lo_offset_loop_info64_18405_fields lo_offset loop_info64 0 18405 &veth_change_mtu_fndecl_18405_fields
+max_psize_uac2_rtd_params_18407_fields max_psize uac2_rtd_params 0 18407 NULL
-+acm_alloc_minor_fndecl_18412_fields acm_alloc_minor fndecl 0 18412 NULL
+bNrChannels_uac2_as_header_descriptor_18413_fields bNrChannels uac2_as_header_descriptor 0 18413 NULL
+ath6kl_wmi_ap_set_mlme_fndecl_18414_fields ath6kl_wmi_ap_set_mlme fndecl 2 18414 NULL
+hlen_hfi1_packet_18431_fields hlen hfi1_packet 0 18431 NULL
@@ -192965,15 +197625,17 @@ index 0000000..6b5367db
+copy_range_nfulnl_instance_18460_fields copy_range nfulnl_instance 0 18460 NULL nohasharray
+max_entries_bpf_map_18460_fields max_entries bpf_map 0 18460 &copy_range_nfulnl_instance_18460_fields
+bsize_jfs_sb_info_18477_fields bsize jfs_sb_info 0 18477 NULL
++bbr_bw_fndecl_18480_fields bbr_bw fndecl 0 18480 NULL
+ring_buffer_size_netup_dma_18485_fields ring_buffer_size netup_dma 0 18485 NULL
+mdata_ofsl_cyttsp4_sysinfo_data_18486_fields mdata_ofsl cyttsp4_sysinfo_data 0 18486 NULL
++xfs_refcount_adjust_cow_fndecl_18494_fields xfs_refcount_adjust_cow fndecl 2-3 18494 NULL
+sfi_map_table_fndecl_18501_fields sfi_map_table fndecl 1 18501 NULL
-+run_test_both_formats_fndecl_18505_fields run_test_both_formats fndecl 2-3 18505 NULL
+vxfs_getfsh_fndecl_18506_fields vxfs_getfsh fndecl 2 18506 NULL
+tx_queue_len_net_device_18511_fields tx_queue_len net_device 0 18511 NULL
+iwl_queue_init_fndecl_18522_fields iwl_queue_init fndecl 2 18522 NULL nohasharray
+scat_entries_hif_scatter_req_18522_fields scat_entries hif_scatter_req 0 18522 &iwl_queue_init_fndecl_18522_fields
+ttm_bo_init_fndecl_18524_fields ttm_bo_init fndecl 3 18524 NULL
++max_tx_buffers_qed_roce_ll2_params_18535_fields max_tx_buffers qed_roce_ll2_params 0 18535 NULL
+progress_kcopyd_job_18540_fields progress kcopyd_job 0 18540 NULL
+sect_floppy_struct_18543_fields sect floppy_struct 0 18543 NULL
+ubi_leb_write_fndecl_18549_fields ubi_leb_write fndecl 5-4 18549 NULL
@@ -192982,14 +197644,16 @@ index 0000000..6b5367db
+single_sz_msc_18554_fields single_sz msc 0 18554 NULL nohasharray
+ucode_size_bytes_common_firmware_header_18554_fields ucode_size_bytes common_firmware_header 0 18554 &single_sz_msc_18554_fields
+memblock_reserve_fndecl_18556_fields memblock_reserve fndecl 1-2 18556 NULL
++tw686x_set_format_fndecl_18558_fields tw686x_set_format fndecl 3-4 18558 NULL
+riva_get_memlen_fndecl_18562_fields riva_get_memlen fndecl 0 18562 NULL
+change_protection_fndecl_18568_fields change_protection fndecl 3-2 18568 NULL
++__max_nr_grant_frames_fndecl_18578_fields __max_nr_grant_frames fndecl 0 18578 NULL
+index_xtsplit_18586_fields index xtsplit 0 18586 NULL
-+nbuttons_gpio_keys_platform_data_18590_fields nbuttons gpio_keys_platform_data 0 18590 NULL
+omfs_fill_chain_fndecl_18591_fields omfs_fill_chain fndecl 3 18591 NULL
+brcmu_pkt_buf_get_skb_fndecl_18599_fields brcmu_pkt_buf_get_skb fndecl 1 18599 NULL
+extLocation_extent_ad_18601_fields extLocation extent_ad 0 18601 NULL
+num_of_queues_iwl_base_params_18606_fields num_of_queues iwl_base_params 0 18606 NULL
++dev_pm_opp_set_rate_fndecl_18607_fields dev_pm_opp_set_rate fndecl 2 18607 NULL
+size_uhid_input_req_18611_fields size uhid_input_req 0 18611 NULL
+befs_get_block_fndecl_18612_fields befs_get_block fndecl 2 18612 NULL
+dstpos_isdnhdlc_vars_18616_fields dstpos isdnhdlc_vars 0 18616 NULL nohasharray
@@ -193001,9 +197665,8 @@ index 0000000..6b5367db
+rbd_parent_request_create_fndecl_18646_fields rbd_parent_request_create fndecl 3-2 18646 NULL
+speaker_outs_auto_pin_cfg_18648_fields speaker_outs auto_pin_cfg 0 18648 NULL
+ax25_sendmsg_fndecl_18649_fields ax25_sendmsg fndecl 3 18649 NULL
-+bioset_create_fndecl_18655_fields bioset_create fndecl 2-1 18655 NULL
-+MaxDevices__MSG_IOC_FACTS_REPLY_18656_fields MaxDevices _MSG_IOC_FACTS_REPLY 0 18656 NULL nohasharray
-+ext2_xattr_set_fndecl_18656_fields ext2_xattr_set fndecl 5 18656 &MaxDevices__MSG_IOC_FACTS_REPLY_18656_fields
++bioset_create_fndecl_18655_fields bioset_create fndecl 2 18655 NULL
++ext2_xattr_set_fndecl_18656_fields ext2_xattr_set fndecl 5 18656 NULL
+compat_copy_entries_fndecl_18658_fields compat_copy_entries fndecl 0 18658 NULL
+length_vb2_plane_18662_fields length vb2_plane 0 18662 NULL
+gfs2_unstuffer_page_fndecl_18663_fields gfs2_unstuffer_page fndecl 3 18663 NULL
@@ -193012,11 +197675,8 @@ index 0000000..6b5367db
+len_xdr_netobj_18672_fields len xdr_netobj 0 18672 NULL
+pn_recvmsg_fndecl_18676_fields pn_recvmsg fndecl 3 18676 NULL
+nr_clk_regs_samsung_cmu_info_18678_fields nr_clk_regs samsung_cmu_info 0 18678 NULL
-+ldm_frag_add_fndecl_18680_fields ldm_frag_add fndecl 2 18680 NULL
+ocd_max_easize_obd_connect_data_18682_fields ocd_max_easize obd_connect_data 0 18682 NULL
-+domain_pci_sysdata_18686_fields domain pci_sysdata 0 18686 NULL
-+i2c_wr_max_cx24120_config_18687_fields i2c_wr_max cx24120_config 0 18687 NULL nohasharray
-+length_iwl_nvm_access_resp_18687_fields length iwl_nvm_access_resp 0 18687 &i2c_wr_max_cx24120_config_18687_fields
++i2c_wr_max_cx24120_config_18687_fields i2c_wr_max cx24120_config 0 18687 NULL
+num_tc_net_device_18703_fields num_tc net_device 0 18703 NULL
+size_rxdone_entry_desc_18704_fields size rxdone_entry_desc 0 18704 NULL
+den_step_snd_ratnum_18705_fields den_step snd_ratnum 0 18705 NULL nohasharray
@@ -193024,6 +197684,7 @@ index 0000000..6b5367db
+ent_get_fatent_operations_18715_fields ent_get fatent_operations 0 18715 NULL
+read_reg_isar_hw_18717_fields read_reg isar_hw 0 18717 NULL
+feature_len_mic_device_desc_18719_fields feature_len mic_device_desc 0 18719 NULL
++__az6007_write_fndecl_18721_fields __az6007_write fndecl 6 18721 NULL
+max_pkeys_ib_device_attr_18722_fields max_pkeys ib_device_attr 0 18722 NULL
+trf7970a_read_cont_fndecl_18728_fields trf7970a_read_cont fndecl 4 18728 NULL
+ioapic_copy_alloc_attr_fndecl_18729_fields ioapic_copy_alloc_attr fndecl 3 18729 NULL
@@ -193033,37 +197694,38 @@ index 0000000..6b5367db
+rdb_per_qp_mthca_profile_18738_fields rdb_per_qp mthca_profile 0 18738 NULL
+bulk_out_ipheth_device_18739_fields bulk_out ipheth_device 0 18739 NULL
+o2net_recv_tcp_msg_fndecl_18741_fields o2net_recv_tcp_msg fndecl 3-0 18741 NULL
-+count_configs_fndecl_18742_fields count_configs fndecl 0 18742 NULL
+max_sges_ocrdma_qp_hwq_info_18746_fields max_sges ocrdma_qp_hwq_info 0 18746 NULL
+seq_end_offset_iscsi_cmd_18748_fields seq_end_offset iscsi_cmd 0 18748 NULL
+max_in_size_ims_pcu_18752_fields max_in_size ims_pcu 0 18752 NULL
+__ocfs2_error_fndecl_18758_fields __ocfs2_error fndecl 0 18758 NULL
+i_pos_msdos_inode_info_18764_fields i_pos msdos_inode_info 0 18764 NULL
++ppp_cp_parse_cr_fndecl_18765_fields ppp_cp_parse_cr fndecl 4-2 18765 NULL
+xdr_get_next_encode_buffer_fndecl_18770_fields xdr_get_next_encode_buffer fndecl 2 18770 NULL nohasharray
-+adjust_memory_fndecl_18770_fields adjust_memory fndecl 3-4 18770 &xdr_get_next_encode_buffer_fndecl_18770_fields
++__mmc_test_cmds_during_tfr_fndecl_18770_fields __mmc_test_cmds_during_tfr fndecl 2 18770 &xdr_get_next_encode_buffer_fndecl_18770_fields nohasharray
++adjust_memory_fndecl_18770_fields adjust_memory fndecl 3-4 18770 &__mmc_test_cmds_during_tfr_fndecl_18770_fields
+data_len_ieee80211_mgd_auth_data_18778_fields data_len ieee80211_mgd_auth_data 0 18778 NULL
-+nvif_device_init_fndecl_18779_fields nvif_device_init fndecl 5 18779 NULL
+cur_len_drm_dp_sideband_msg_tx_18787_fields cur_len drm_dp_sideband_msg_tx 0 18787 NULL
-+mcopy_atomic_fndecl_18790_fields mcopy_atomic fndecl 2 18790 NULL
+isdn_ppp_skb_push_fndecl_18791_fields isdn_ppp_skb_push fndecl 2 18791 NULL
+sctp_abort_pkt_new_fndecl_18794_fields sctp_abort_pkt_new fndecl 6 18794 NULL
+max_low_pfn_vardecl_18798_fields max_low_pfn vardecl 0 18798 NULL
-+usb_ep_set_maxpacket_limit_fndecl_18800_fields usb_ep_set_maxpacket_limit fndecl 2 18800 NULL
++xfs_refcount_free_cow_extent_fndecl_18800_fields xfs_refcount_free_cow_extent fndecl 3-4 18800 NULL nohasharray
++usb_ep_set_maxpacket_limit_fndecl_18800_fields usb_ep_set_maxpacket_limit fndecl 2 18800 &xfs_refcount_free_cow_extent_fndecl_18800_fields
+readbuffers_v4l2_captureparm_18801_fields readbuffers v4l2_captureparm 0 18801 NULL
++rd_length_gfs2_rgrpd_18804_fields rd_length gfs2_rgrpd 0 18804 NULL
+md_capture_size_netxen_minidump_18805_fields md_capture_size netxen_minidump 0 18805 NULL
++xfs_file_clone_range_fndecl_18812_fields xfs_file_clone_range fndecl 2-4-5 18812 NULL
+ssb_ioremap_fndecl_18815_fields ssb_ioremap fndecl 2 18815 NULL
+length_xfs_extent_busy_18817_fields length xfs_extent_busy 0 18817 NULL
+tx_cnt_IsdnCardState_18819_fields tx_cnt IsdnCardState 0 18819 NULL
+shmem_seek_hole_data_fndecl_18824_fields shmem_seek_hole_data fndecl 0-2-3 18824 NULL
-+p_memsz_elf32_phdr_18830_fields p_memsz elf32_phdr 0 18830 NULL nohasharray
-+clk_num_clk_onecell_data_18830_fields clk_num clk_onecell_data 0 18830 &p_memsz_elf32_phdr_18830_fields
++p_memsz_elf32_phdr_18830_fields p_memsz elf32_phdr 0 18830 NULL
+num_entries_compat_ipt_replace_18835_fields num_entries compat_ipt_replace 0 18835 NULL
+xfs_inobt_insert_rec_fndecl_18839_fields xfs_inobt_insert_rec fndecl 4 18839 NULL
+rsn_ie_len_hostap_bss_info_18840_fields rsn_ie_len hostap_bss_info 0 18840 NULL
+number_snd_card_18845_fields number snd_card 0 18845 NULL
+exynos_drm_gem_init_fndecl_18846_fields exynos_drm_gem_init fndecl 2 18846 NULL
-+n_targets_rsxx_cardinfo_18847_fields n_targets rsxx_cardinfo 0 18847 NULL nohasharray
-+process_measurement_fndecl_18847_fields process_measurement fndecl 3 18847 &n_targets_rsxx_cardinfo_18847_fields
++process_measurement_fndecl_18847_fields process_measurement fndecl 3 18847 NULL nohasharray
++n_targets_rsxx_cardinfo_18847_fields n_targets rsxx_cardinfo 0 18847 &process_measurement_fndecl_18847_fields
+taglen_nfsd4_compoundargs_18849_fields taglen nfsd4_compoundargs 0 18849 NULL nohasharray
+master_xfer_i2c_algorithm_18849_fields master_xfer i2c_algorithm 0 18849 &taglen_nfsd4_compoundargs_18849_fields
+usb_descriptor_fillbuf_fndecl_18853_fields usb_descriptor_fillbuf fndecl 0 18853 NULL nohasharray
@@ -193075,21 +197737,20 @@ index 0000000..6b5367db
+allocate_cnodes_fndecl_18882_fields allocate_cnodes fndecl 1 18882 &rx_buffer_len_atl1_adapter_18882_fields
+min_index_rxe_type_info_18888_fields min_index rxe_type_info 0 18888 NULL
+rxd_rfsw_s_smt_fp_rxd_18889_fields rxd_rfsw s_smt_fp_rxd 0 18889 NULL
++get_checkpoint_version_fndecl_18893_fields get_checkpoint_version fndecl 2 18893 NULL
+nr_stripes_bcache_device_18895_fields nr_stripes bcache_device 0 18895 NULL
+rx_ps_hdr_size_igbvf_adapter_18896_fields rx_ps_hdr_size igbvf_adapter 0 18896 NULL nohasharray
+r592_write_fifo_pio_fndecl_18896_fields r592_write_fifo_pio fndecl 3 18896 &rx_ps_hdr_size_igbvf_adapter_18896_fields
+nilfs_max_size_fndecl_18901_fields nilfs_max_size fndecl 0-1 18901 NULL nohasharray
+op_dmaoff_rm_data_op_18901_fields op_dmaoff rm_data_op 0 18901 &nilfs_max_size_fndecl_18901_fields
++sbc_get_write_same_sectors_fndecl_18902_fields sbc_get_write_same_sectors fndecl 0 18902 NULL
+pep_sendmsg_fndecl_18903_fields pep_sendmsg fndecl 3 18903 NULL
+extent_invalidatepage_fndecl_18906_fields extent_invalidatepage fndecl 3 18906 NULL
+sectors_ssfdcr_record_18912_fields sectors ssfdcr_record 0 18912 NULL
+dccpd_opt_len_dccp_skb_cb_18917_fields dccpd_opt_len dccp_skb_cb 0 18917 NULL
-+fuse_write_update_size_fndecl_18918_fields fuse_write_update_size fndecl 2 18918 NULL
-+cciss_allocate_sg_chain_blocks_fndecl_18923_fields cciss_allocate_sg_chain_blocks fndecl 2 18923 NULL
+capacity_vmci_handle_arr_18924_fields capacity vmci_handle_arr 0 18924 NULL
+segment_size_kaweth_ethernet_configuration_18925_fields segment_size kaweth_ethernet_configuration 0 18925 NULL nohasharray
+vxfs_bread_fndecl_18925_fields vxfs_bread fndecl 2 18925 &segment_size_kaweth_ethernet_configuration_18925_fields
-+size_gf100_gr_18928_fields size gf100_gr 0 18928 NULL
+ad714x_i2c_read_fndecl_18930_fields ad714x_i2c_read fndecl 4 18930 NULL
+maxReplyBytes_mpt_ioctl_command_18942_fields maxReplyBytes mpt_ioctl_command 0 18942 NULL
+read_pci_config_fndecl_18943_fields read_pci_config fndecl 0 18943 NULL
@@ -193100,15 +197761,16 @@ index 0000000..6b5367db
+qla82xx_pci_mem_read_2M_fndecl_18955_fields qla82xx_pci_mem_read_2M fndecl 2 18955 NULL
+encx24j600_raw_write_fndecl_18957_fields encx24j600_raw_write fndecl 4 18957 NULL nohasharray
+rss_queues_igb_adapter_18957_fields rss_queues igb_adapter 0 18957 &encx24j600_raw_write_fndecl_18957_fields
-+new_sync_read_fndecl_18960_fields new_sync_read fndecl 0-3 18960 NULL nohasharray
-+clear_refs_pte_range_fndecl_18960_fields clear_refs_pte_range fndecl 2 18960 &new_sync_read_fndecl_18960_fields
++new_sync_read_fndecl_18960_fields new_sync_read fndecl 0-3 18960 NULL
+file_offset_btrfs_ordered_extent_18963_fields file_offset btrfs_ordered_extent 0 18963 NULL
+len_dm_target_18965_fields len dm_target 0 18965 NULL
++mlx4_en_create_tx_ring_fndecl_18977_fields mlx4_en_create_tx_ring fndecl 3 18977 NULL
+read_off_videobuf_queue_18978_fields read_off videobuf_queue 0 18978 NULL
+rcount_mkiss_18984_fields rcount mkiss 0 18984 NULL nohasharray
+l2cap_sock_sendmsg_fndecl_18984_fields l2cap_sock_sendmsg fndecl 3 18984 &rcount_mkiss_18984_fields
+preferred_bpp_intel_fbdev_18985_fields preferred_bpp intel_fbdev 0 18985 NULL
+p9_get_mapped_pages_fndecl_18988_fields p9_get_mapped_pages fndecl 0 18988 NULL
++outlen_mbox_info_18991_fields outlen mbox_info 0 18991 NULL
+ttm_bo_kmap_ttm_fndecl_18993_fields ttm_bo_kmap_ttm fndecl 3 18993 NULL
+virtio_gpu_alloc_cmd_resp_fndecl_18996_fields virtio_gpu_alloc_cmd_resp fndecl 4-5 18996 NULL
+end_sk_buff_18998_fields end sk_buff 0 18998 NULL
@@ -193123,7 +197785,6 @@ index 0000000..6b5367db
+next_scan_nid_f2fs_nm_info_19036_fields next_scan_nid f2fs_nm_info 0 19036 NULL
+scrollback_max_vardecl_fbcon_c_19040_fields scrollback_max vardecl_fbcon.c 0 19040 NULL
+tsize_nfs2_fsstat_19041_fields tsize nfs2_fsstat 0 19041 NULL
-+len_ath10k_dump_file_data_19052_fields len ath10k_dump_file_data 0 19052 NULL
+dma_usb_request_19054_fields dma usb_request 0 19054 NULL
+mod_len_extent_map_19058_fields mod_len extent_map 0 19058 NULL
+count_sgmapraw_19066_fields count sgmapraw 0 19066 NULL
@@ -193135,18 +197796,18 @@ index 0000000..6b5367db
+mei_hbm_cl_flow_control_req_fndecl_19089_fields mei_hbm_cl_flow_control_req fndecl 0 19089 NULL
+sb_logsectsize_xfs_sb_19098_fields sb_logsectsize xfs_sb 0 19098 NULL
+walk_node_fndecl_19114_fields walk_node fndecl 2 19114 NULL
-+ceph_entity_name_encode_fndecl_19115_fields ceph_entity_name_encode fndecl 0 19115 NULL
-+mv88e6xxx_read_fndecl_19142_fields mv88e6xxx_read fndecl 0 19142 NULL
+ssid_len_ieee80211_mgd_assoc_data_19143_fields ssid_len ieee80211_mgd_assoc_data 0 19143 NULL
+ctrl_set_res_hor_fndecl_19146_fields ctrl_set_res_hor fndecl 3 19146 NULL
+pgbase_nfs_readlinkargs_19150_fields pgbase nfs_readlinkargs 0 19150 NULL
-+inftl_write_oob_fndecl_19154_fields inftl_write_oob fndecl 2-3 19154 NULL
++inftl_write_oob_fndecl_19154_fields inftl_write_oob fndecl 2 19154 NULL
+do_get_thread_area_fndecl_19157_fields do_get_thread_area fndecl 2 19157 NULL
+__mnt_want_write_fndecl_19160_fields __mnt_want_write fndecl 0 19160 NULL
+page_array_size_firmware_buf_19163_fields page_array_size firmware_buf 0 19163 NULL
+ve_attrlen_nfsd4_verify_19164_fields ve_attrlen nfsd4_verify 0 19164 NULL
++ms_nvme_ns_19166_fields ms nvme_ns 0 19166 NULL
+dma_start_hi_rx_buf_desc_19167_fields dma_start_hi rx_buf_desc 0 19167 NULL
+isp116x_urb_dequeue_fndecl_19169_fields isp116x_urb_dequeue fndecl 3 19169 NULL
++max_pages_per_mr_srp_device_19171_fields max_pages_per_mr srp_device 0 19171 NULL
+xfs_mru_cache_insert_fndecl_19180_fields xfs_mru_cache_insert fndecl 0 19180 NULL
+mic_read_spad_fndecl_19184_fields mic_read_spad fndecl 0 19184 NULL
+crypto_authenc_esn_copy_fndecl_19188_fields crypto_authenc_esn_copy fndecl 2 19188 NULL nohasharray
@@ -193156,14 +197817,12 @@ index 0000000..6b5367db
+nci_allocate_device_fndecl_19192_fields nci_allocate_device fndecl 3 19192 NULL
+slot_nr_nfs4_slot_19196_fields slot_nr nfs4_slot 0 19196 NULL
+decode_height_yuv_playback_info_19201_fields decode_height yuv_playback_info 0 19201 NULL
-+extent_clear_unlock_delalloc_fndecl_19205_fields extent_clear_unlock_delalloc fndecl 2-3 19205 NULL
+irq_dma_handle_ttusb_dec_19208_fields irq_dma_handle ttusb_dec 0 19208 NULL
+m25p80_write_reg_fndecl_19209_fields m25p80_write_reg fndecl 4 19209 NULL
+size_afs_file_status_19215_fields size afs_file_status 0 19215 NULL
+extensions_edid_19218_fields extensions edid 0 19218 NULL
+lfb_size_screen_info_19219_fields lfb_size screen_info 0 19219 NULL
+vmw_cmdbuf_alloc_fndecl_19226_fields vmw_cmdbuf_alloc fndecl 2 19226 NULL
-+csio_add_debugfs_mem_fndecl_19228_fields csio_add_debugfs_mem fndecl 4 19228 NULL
+__ai_size_pcpu_alloc_info_19229_fields __ai_size pcpu_alloc_info 0 19229 NULL
+offset_iomap_19237_fields offset iomap 0 19237 NULL
+spi_populate_ppr_msg_fndecl_19239_fields spi_populate_ppr_msg fndecl 0 19239 NULL
@@ -193179,20 +197838,17 @@ index 0000000..6b5367db
+get_packet_fndecl_19296_fields get_packet fndecl 3 19296 NULL
+vxge_change_mtu_fndecl_19297_fields vxge_change_mtu fndecl 2 19297 NULL
+ext_len_xfs_extent_19299_fields ext_len xfs_extent 0 19299 NULL
-+num_alt_cx231xx_video_mode_19301_fields num_alt cx231xx_video_mode 0 19301 NULL
+ubi_calc_fm_size_fndecl_19302_fields ubi_calc_fm_size fndecl 0 19302 NULL
+copy_vma_fndecl_19303_fields copy_vma fndecl 2-3-4 19303 NULL
-+port_priv_size_rocker_world_ops_19308_fields port_priv_size rocker_world_ops 0 19308 NULL nohasharray
-+cl_cpg_ocfs2_chain_list_19308_fields cl_cpg ocfs2_chain_list 0 19308 &port_priv_size_rocker_world_ops_19308_fields
++cl_cpg_ocfs2_chain_list_19308_fields cl_cpg ocfs2_chain_list 0 19308 NULL nohasharray
++port_priv_size_rocker_world_ops_19308_fields port_priv_size rocker_world_ops 0 19308 &cl_cpg_ocfs2_chain_list_19308_fields
+ve4_indsize_vxfs_ext4_19315_fields ve4_indsize vxfs_ext4 0 19315 NULL
+reply_sz_MPT3SAS_ADAPTER_19317_fields reply_sz MPT3SAS_ADAPTER 0 19317 NULL
+bpp_vardecl_nvidia_c_19325_fields bpp vardecl_nvidia.c 0 19325 NULL
+meta_dev_len_disk_conf_19326_fields meta_dev_len disk_conf 0 19326 NULL
-+mlx4_alloc_resize_buf_fndecl_19329_fields mlx4_alloc_resize_buf fndecl 3 19329 NULL
+pkt_len_or_gro_seg_len_eth_fast_path_rx_cqe_19330_fields pkt_len_or_gro_seg_len eth_fast_path_rx_cqe 0 19330 NULL nohasharray
+finish_request_fndecl_19330_fields finish_request fndecl 4 19330 &pkt_len_or_gro_seg_len_eth_fast_path_rx_cqe_19330_fields
+rule_size_fib_rules_ops_19335_fields rule_size fib_rules_ops 0 19335 NULL
-+do_writev_fndecl_19339_fields do_writev fndecl 3 19339 NULL
+sock_alloc_send_pskb_fndecl_19354_fields sock_alloc_send_pskb fndecl 3 19354 NULL
+ds_channels_snd_rme9652_19357_fields ds_channels snd_rme9652 0 19357 NULL
+lpfc_sriov_nr_virtfn_init_fndecl_19359_fields lpfc_sriov_nr_virtfn_init fndecl 2 19359 NULL nohasharray
@@ -193234,8 +197890,7 @@ index 0000000..6b5367db
+add_device_fndecl_19489_fields add_device fndecl 2 19489 &drm_gtf_mode_fndecl_19489_fields
+length_mwifiex_types_power_group_19491_fields length mwifiex_types_power_group 0 19491 NULL
+len_ib_ucm_sidr_req_19499_fields len ib_ucm_sidr_req 0 19499 NULL
-+libfc_vport_create_fndecl_19500_fields libfc_vport_create fndecl 2 19500 NULL
-+access_process_vm_fndecl_19503_fields access_process_vm fndecl 4-2 19503 NULL
++access_process_vm_fndecl_19503_fields access_process_vm fndecl 4-0-2 19503 NULL
+size_rvt_rq_19507_fields size rvt_rq 0 19507 NULL
+sctp_sendmsg_fndecl_19508_fields sctp_sendmsg fndecl 3 19508 NULL
+dev_cdev_19510_fields dev cdev 0 19510 NULL
@@ -193247,11 +197902,11 @@ index 0000000..6b5367db
+in_dma_usb_keyspan_19540_fields in_dma usb_keyspan 0 19540 NULL
+entries_size_ebt_table_info_19543_fields entries_size ebt_table_info 0 19543 NULL nohasharray
+nilfs_sufile_set_alloc_range_fndecl_19543_fields nilfs_sufile_set_alloc_range fndecl 3-2 19543 &entries_size_ebt_table_info_19543_fields
-+get_response_hdac_bus_ops_19545_fields get_response hdac_bus_ops 0 19545 NULL
+read_code_fndecl_19550_fields read_code fndecl 4 19550 NULL
+send_size_send_ctx_19552_fields send_size send_ctx 0 19552 NULL
+softback_curr_vardecl_fbcon_c_19553_fields softback_curr vardecl_fbcon.c 0 19553 NULL
-+cmpt_entry_sz_mlx4_dev_cap_19564_fields cmpt_entry_sz mlx4_dev_cap 0 19564 NULL
++at76_set_card_command_fndecl_19556_fields at76_set_card_command fndecl 4 19556 NULL
++__xfs_refcount_add_fndecl_19559_fields __xfs_refcount_add fndecl 4-5-0 19559 NULL
+uni16_to_x8_fndecl_19571_fields uni16_to_x8 fndecl 0 19571 NULL
+sd_pkt_scan_bayer_fndecl_19581_fields sd_pkt_scan_bayer fndecl 3 19581 NULL
+ath6kl_wmi_set_txe_notify_fndecl_19582_fields ath6kl_wmi_set_txe_notify fndecl 2 19582 NULL
@@ -193262,6 +197917,7 @@ index 0000000..6b5367db
+icc_empty_fifo_fndecl_19594_fields icc_empty_fifo fndecl 2 19594 NULL
+xdr_stream_pos_fndecl_19598_fields xdr_stream_pos fndecl 0 19598 NULL
+command_size_drm_qxl_command_19601_fields command_size drm_qxl_command 0 19601 NULL
++rmi_f54_get_report_size_fndecl_19604_fields rmi_f54_get_report_size fndecl 0 19604 NULL
+readpos_seq_buf_19607_fields readpos seq_buf 0 19607 NULL
+gspca_frame_add_fndecl_19612_fields gspca_frame_add fndecl 4 19612 NULL
+logical_btrfs_io_bio_19616_fields logical btrfs_io_bio 0 19616 NULL
@@ -193272,28 +197928,29 @@ index 0000000..6b5367db
+set_fp_int_qed_common_ops_19644_fields set_fp_int qed_common_ops 0 19644 NULL nohasharray
+pcfg_ofsh_cyttsp4_sysinfo_data_19644_fields pcfg_ofsh cyttsp4_sysinfo_data 0 19644 &set_fp_int_qed_common_ops_19644_fields
+memory_maker_code_mspro_sys_info_19650_fields memory_maker_code mspro_sys_info 0 19650 NULL
++get_rq_pas_size_fndecl_19651_fields get_rq_pas_size fndecl 0 19651 NULL
+af9033_rd_regs_fndecl_19652_fields af9033_rd_regs fndecl 4 19652 NULL
+hr_itemcount_hsm_request_19657_fields hr_itemcount hsm_request 0 19657 NULL
+configfs_dir_lseek_fndecl_19658_fields configfs_dir_lseek fndecl 2 19658 NULL
+peer_fwd_cnt_virtio_vsock_sock_19661_fields peer_fwd_cnt virtio_vsock_sock 0 19661 NULL
-+tty_register_device_fndecl_19667_fields tty_register_device fndecl 2 19667 NULL
+videobuf_vmalloc_to_sg_fndecl_19671_fields videobuf_vmalloc_to_sg fndecl 2 19671 NULL
+recv_intr_pipe_us_data_19678_fields recv_intr_pipe us_data 0 19678 NULL
-+num_leds_adp8860_backlight_platform_data_19687_fields num_leds adp8860_backlight_platform_data 0 19687 NULL
+depth_em28xx_fmt_19696_fields depth em28xx_fmt 0 19696 NULL nohasharray
+size_pkt_hdr_19696_fields size pkt_hdr 0 19696 &depth_em28xx_fmt_19696_fields nohasharray
+pcnt_bits_ubifs_info_19696_fields pcnt_bits ubifs_info 0 19696 &size_pkt_hdr_19696_fields nohasharray
+prealloc_bufsz_comedi_async_19696_fields prealloc_bufsz comedi_async 0 19696 &pcnt_bits_ubifs_info_19696_fields
++st_fixed_buffer_size_vardecl_st_c_19699_fields st_fixed_buffer_size vardecl_st.c 0 19699 NULL
+gfs2_file_splice_write_fndecl_19705_fields gfs2_file_splice_write fndecl 4 19705 NULL
+max_blksize_sdio_func_19715_fields max_blksize sdio_func 0 19715 NULL
+LastFreeEUN_NFTLrecord_19717_fields LastFreeEUN NFTLrecord 0 19717 NULL
+slots_end_qxl_rom_19718_fields slots_end qxl_rom 0 19718 NULL
+fat32_info_sector_fat_bios_param_block_19727_fields fat32_info_sector fat_bios_param_block 0 19727 NULL
++bytesperline_v4l2_pix_format_19741_fields bytesperline v4l2_pix_format 0 19741 NULL
+writelen_iuu_private_19742_fields writelen iuu_private 0 19742 NULL
+drbd_csum_ee_size_fndecl_19743_fields drbd_csum_ee_size fndecl 4 19743 NULL
+ntb_netdev_change_mtu_fndecl_19744_fields ntb_netdev_change_mtu fndecl 2 19744 NULL
-+nmap_ib_umem_19745_fields nmap ib_umem 0 19745 NULL nohasharray
-+nftl_write_oob_fndecl_19745_fields nftl_write_oob fndecl 2-3 19745 &nmap_ib_umem_19745_fields
++nftl_write_oob_fndecl_19745_fields nftl_write_oob fndecl 2 19745 NULL nohasharray
++nmap_ib_umem_19745_fields nmap ib_umem 0 19745 &nftl_write_oob_fndecl_19745_fields
+f2fs_i_size_write_fndecl_19746_fields f2fs_i_size_write fndecl 2 19746 NULL
+c67x00_giveback_urb_fndecl_19761_fields c67x00_giveback_urb fndecl 3 19761 NULL
+vram_base_qxl_device_19773_fields vram_base qxl_device 0 19773 NULL
@@ -193308,47 +197965,50 @@ index 0000000..6b5367db
+svcrdma_max_bc_requests_vardecl_19819_fields svcrdma_max_bc_requests vardecl 0 19819 NULL
+oid_printf_vargs_fndecl_19821_fields oid_printf_vargs fndecl 0 19821 NULL
+vring_new_virtqueue_fndecl_19828_fields vring_new_virtqueue fndecl 2 19828 NULL
-+_osd_req_list_objects_fndecl_19839_fields _osd_req_list_objects fndecl 6 19839 NULL
++__nfs4_get_acl_uncached_fndecl_19830_fields __nfs4_get_acl_uncached fndecl 3 19830 NULL
++_osd_req_list_objects_fndecl_19839_fields _osd_req_list_objects fndecl 2 19839 NULL
+buf_used_uvc_video_queue_19843_fields buf_used uvc_video_queue 0 19843 NULL
+fbmem_start_viafb_dev_19849_fields fbmem_start viafb_dev 0 19849 NULL
+num_jumbo_rxd_qlcnic_adapter_19850_fields num_jumbo_rxd qlcnic_adapter 0 19850 NULL
+qp_guest_endpoint_create_fndecl_19852_fields qp_guest_endpoint_create fndecl 5-4 19852 NULL nohasharray
+real_size_in_page_qed_ilt_cli_blk_19852_fields real_size_in_page qed_ilt_cli_blk 0 19852 &qp_guest_endpoint_create_fndecl_19852_fields
+i5k_channel_probe_fndecl_19853_fields i5k_channel_probe fndecl 2 19853 NULL
++me_startoff_xfs_map_extent_19869_fields me_startoff xfs_map_extent 0 19869 NULL
+max_msix_vectors_ixgbe_mac_info_19874_fields max_msix_vectors ixgbe_mac_info 0 19874 NULL
+msb_do_write_request_fndecl_19885_fields msb_do_write_request fndecl 2 19885 NULL
-+size_sst_block_19887_fields size sst_block 0 19887 NULL
+ide_find_dma_mode_fndecl_19889_fields ide_find_dma_mode fndecl 0 19889 NULL
-+kmemleak_alloc_fndecl_19891_fields kmemleak_alloc fndecl 2 19891 NULL
+register_sound_midi_fndecl_19894_fields register_sound_midi fndecl 2 19894 NULL
-+i915_gem_object_pin_fndecl_19904_fields i915_gem_object_pin fndecl 4 19904 NULL
+truncate_inline_extent_fndecl_19906_fields truncate_inline_extent fndecl 5 19906 NULL
+__pool_find_fndecl_19911_fields __pool_find fndecl 3 19911 NULL
+slot_dlm_slot_19913_fields slot dlm_slot 0 19913 NULL
+maxLen_group_data_19920_fields maxLen group_data 0 19920 NULL
-+xt_compat_add_offset_fndecl_19922_fields xt_compat_add_offset fndecl 0 19922 NULL nohasharray
-+cp_change_mtu_fndecl_19922_fields cp_change_mtu fndecl 2 19922 &xt_compat_add_offset_fndecl_19922_fields nohasharray
-+do_readv_fndecl_19922_fields do_readv fndecl 3 19922 &cp_change_mtu_fndecl_19922_fields
++cp_change_mtu_fndecl_19922_fields cp_change_mtu fndecl 2 19922 NULL nohasharray
++xt_compat_add_offset_fndecl_19922_fields xt_compat_add_offset fndecl 0 19922 &cp_change_mtu_fndecl_19922_fields
+sector_number_phys_req_19923_fields sector_number phys_req 0 19923 NULL
++brcmu_dbg_hex_dump_fndecl_19925_fields brcmu_dbg_hex_dump fndecl 2 19925 NULL
+xfs_rmap_btrec_to_irec_fndecl_19931_fields xfs_rmap_btrec_to_irec fndecl 0 19931 NULL nohasharray
+iic_tpm_write_generic_fndecl_19931_fields iic_tpm_write_generic fndecl 3 19931 &xfs_rmap_btrec_to_irec_fndecl_19931_fields
++phys_map_efi_memory_map_19932_fields phys_map efi_memory_map 0 19932 NULL
+unix_stream_sendmsg_fndecl_19940_fields unix_stream_sendmsg fndecl 3 19940 NULL
+wusbhc_giveback_urb_fndecl_19954_fields wusbhc_giveback_urb fndecl 3 19954 NULL
++check_crc_fndecl_19956_fields check_crc fndecl 2 19956 NULL
+ipoib_sendq_size_vardecl_19969_fields ipoib_sendq_size vardecl 0 19969 NULL
+src_len_ccp_passthru_engine_19970_fields src_len ccp_passthru_engine 0 19970 NULL
+end_iwl_prph_range_19976_fields end iwl_prph_range 0 19976 NULL
+size_packet_settings_19984_fields size packet_settings 0 19984 NULL
+palign_qib_devdata_19988_fields palign qib_devdata 0 19988 NULL
++f2fs_insert_range_fndecl_19990_fields f2fs_insert_range fndecl 3-2 19990 NULL
+ocfs2_defrag_extent_fndecl_19994_fields ocfs2_defrag_extent fndecl 3-2 19994 NULL
-+move_extent_per_page_fndecl_20004_fields move_extent_per_page fndecl 5-6-4-3 20004 NULL
++move_extent_per_page_fndecl_20004_fields move_extent_per_page fndecl 6-5-4-3 20004 NULL
+copybreak_vardecl_sky2_c_20006_fields copybreak vardecl_sky2.c 0 20006 NULL
+def_bpp_sm501_platdata_fbsub_20007_fields def_bpp sm501_platdata_fbsub 0 20007 NULL
++tx_nr_rings_per_tc_bnxt_20008_fields tx_nr_rings_per_tc bnxt 0 20008 NULL
+i_inline_size_ext4_inode_info_20015_fields i_inline_size ext4_inode_info 0 20015 NULL
+y_drm_fb_helper_crtc_20016_fields y drm_fb_helper_crtc 0 20016 NULL nohasharray
+start_bus_number_acpi_mcfg_allocation_20016_fields start_bus_number acpi_mcfg_allocation 0 20016 &y_drm_fb_helper_crtc_20016_fields
+ctl_dma_cm109_dev_20023_fields ctl_dma cm109_dev 0 20023 NULL
-+build_skb_fndecl_20027_fields build_skb fndecl 2 20027 NULL nohasharray
-+zone_absent_pages_in_node_fndecl_20027_fields zone_absent_pages_in_node fndecl 0 20027 &build_skb_fndecl_20027_fields
++zone_absent_pages_in_node_fndecl_20027_fields zone_absent_pages_in_node fndecl 0 20027 NULL nohasharray
++build_skb_fndecl_20027_fields build_skb fndecl 2 20027 &zone_absent_pages_in_node_fndecl_20027_fields
+nr_max310x_devtype_20030_fields nr max310x_devtype 0 20030 NULL
+sample_rate_lola_20032_fields sample_rate lola 0 20032 NULL
+block_size_osst_tape_20034_fields block_size osst_tape 0 20034 NULL
@@ -193358,18 +198018,18 @@ index 0000000..6b5367db
+id_len_netdev_phys_item_id_20043_fields id_len netdev_phys_item_id 0 20043 &batadv_interface_change_mtu_fndecl_20043_fields
+max_rqst_sz_nfs4_channel_attrs_20083_fields max_rqst_sz nfs4_channel_attrs 0 20083 NULL
+rxsize_grcan_device_config_20087_fields rxsize grcan_device_config 0 20087 NULL
-+submit_rtpg_fndecl_20091_fields submit_rtpg fndecl 3 20091 NULL
+bnx2_set_rx_ring_size_fndecl_20092_fields bnx2_set_rx_ring_size fndecl 2 20092 NULL
+r8712_read32_fndecl_20095_fields r8712_read32 fndecl 0 20095 NULL
+reg_count_cs_extent_def_20096_fields reg_count cs_extent_def 0 20096 NULL
+dm_bufio_get_block_number_fndecl_20097_fields dm_bufio_get_block_number fndecl 0 20097 NULL
+qla82xx_pci_mem_write_direct_fndecl_20099_fields qla82xx_pci_mem_write_direct fndecl 2 20099 NULL
++base_baud_mid8250_board_20100_fields base_baud mid8250_board 0 20100 NULL
+minimum_v4l2_ctrl_20103_fields minimum v4l2_ctrl 0 20103 NULL
+precopy_buffers_fndecl_20104_fields precopy_buffers fndecl 3 20104 NULL
-+accum_len_kcm_rx_msg_20108_fields accum_len kcm_rx_msg 0 20108 NULL
+max_acl_len_hci_rp_read_data_block_size_20119_fields max_acl_len hci_rp_read_data_block_size 0 20119 NULL
+d_nhash_vxfs_dirblk_20122_fields d_nhash vxfs_dirblk 0 20122 NULL
-+ao_chans_pci224_board_20129_fields ao_chans pci224_board 0 20129 NULL
++source_sctphdr_20129_fields source sctphdr 0 20129 NULL nohasharray
++ao_chans_pci224_board_20129_fields ao_chans pci224_board 0 20129 &source_sctphdr_20129_fields
+btrfs_punch_hole_fndecl_20130_fields btrfs_punch_hole fndecl 3-2 20130 NULL
+in_ep_snd_usb_midi_endpoint_info_20132_fields in_ep snd_usb_midi_endpoint_info 0 20132 NULL
+data_sectors_per_block_partition_20138_fields data_sectors_per_block partition 0 20138 NULL
@@ -193406,14 +198066,12 @@ index 0000000..6b5367db
+size_vx_ibl_info_20282_fields size vx_ibl_info 0 20282 NULL
+soc_mbus_bytes_per_line_fndecl_20288_fields soc_mbus_bytes_per_line fndecl 0-1 20288 NULL
+blk_queue_io_min_fndecl_20293_fields blk_queue_io_min fndecl 2 20293 NULL
-+total_blocks_partition_20302_fields total_blocks partition 0 20302 NULL nohasharray
-+gen8_get_total_gtt_size_fndecl_20302_fields gen8_get_total_gtt_size fndecl 0-1 20302 &total_blocks_partition_20302_fields
-+mpegbufs_vardecl_cx231xx_417_c_20303_fields mpegbufs vardecl_cx231xx-417.c 0 20303 NULL
++gen8_get_total_gtt_size_fndecl_20302_fields gen8_get_total_gtt_size fndecl 0-1 20302 NULL nohasharray
++total_blocks_partition_20302_fields total_blocks partition 0 20302 &gen8_get_total_gtt_size_fndecl_20302_fields
+fallback_aper_order_vardecl_20308_fields fallback_aper_order vardecl 0 20308 NULL
+xfs_dir2_leaf_trim_data_fndecl_20310_fields xfs_dir2_leaf_trim_data fndecl 3 20310 NULL nohasharray
+index_vardecl_nm256_c_20310_fields index vardecl_nm256.c 0 20310 &xfs_dir2_leaf_trim_data_fndecl_20310_fields
+cas_change_mtu_fndecl_20320_fields cas_change_mtu fndecl 2 20320 NULL
-+num_cvts_hdmi_spec_20322_fields num_cvts hdmi_spec 0 20322 NULL
+qlf_blkno_xfs_dq_logformat_20330_fields qlf_blkno xfs_dq_logformat 0 20330 NULL
+ss_out_channels_hdspm_20338_fields ss_out_channels hdspm 0 20338 NULL
+offset_videobuf_dmabuf_20339_fields offset videobuf_dmabuf 0 20339 NULL
@@ -193429,12 +198087,12 @@ index 0000000..6b5367db
+opts1_rx_desc_20387_fields opts1 rx_desc 0 20387 NULL
+btrfs_del_items_fndecl_20388_fields btrfs_del_items fndecl 5 20388 NULL
+sw_nchannels_stm_data_20389_fields sw_nchannels stm_data 0 20389 NULL
-+sys_pwritev2_fndecl_20390_fields sys_pwritev2 fndecl 3 20390 NULL
+leb_size_ubi_device_20396_fields leb_size ubi_device 0 20396 NULL
+regulator_register_always_on_fndecl_20403_fields regulator_register_always_on fndecl 1 20403 NULL
+shmem_alloc_and_acct_page_fndecl_20407_fields shmem_alloc_and_acct_page fndecl 4 20407 NULL
+num_units_wlan_host_mem_req_20410_fields num_units wlan_host_mem_req 0 20410 NULL
+mc_rreg_radeon_device_20418_fields mc_rreg radeon_device 0 20418 NULL
++xfs_refcount_recover_cow_leftovers_fndecl_20419_fields xfs_refcount_recover_cow_leftovers fndecl 2 20419 NULL
+sd_log_head_gfs2_sbd_20435_fields sd_log_head gfs2_sbd 0 20435 NULL
+blob_len_trusted_key_payload_20437_fields blob_len trusted_key_payload 0 20437 NULL nohasharray
+raw_skid_size_x509_certificate_20437_fields raw_skid_size x509_certificate 0 20437 &blob_len_trusted_key_payload_20437_fields
@@ -193444,42 +198102,47 @@ index 0000000..6b5367db
+stride_banshee_reg_20459_fields stride banshee_reg 0 20459 NULL
+gigaset_if_receive_fndecl_20462_fields gigaset_if_receive fndecl 3 20462 NULL
+xfs_setsize_buftarg_fndecl_20465_fields xfs_setsize_buftarg fndecl 2 20465 NULL
-+tx_data_fndecl_20470_fields tx_data fndecl 4-3 20470 NULL
++tx_data_fndecl_20470_fields tx_data fndecl 4 20470 NULL
+wMaxCommand_usb_cdc_dmm_desc_20473_fields wMaxCommand usb_cdc_dmm_desc 0 20473 NULL
+vlen_nfsd3_readargs_20476_fields vlen nfsd3_readargs 0 20476 NULL
++gsm_control_rls_fndecl_20490_fields gsm_control_rls fndecl 3 20490 NULL
+rose_recvmsg_fndecl_20491_fields rose_recvmsg fndecl 3 20491 NULL
+ext4_ext_insert_index_fndecl_20492_fields ext4_ext_insert_index fndecl 4 20492 NULL
+pref_width_vmw_display_unit_20493_fields pref_width vmw_display_unit 0 20493 NULL
++pageshift_sddr09_card_info_20494_fields pageshift sddr09_card_info 0 20494 NULL
++nrbchan_mISDNdevice_20497_fields nrbchan mISDNdevice 0 20497 NULL
+ocfs2_extend_xattr_bucket_fndecl_20499_fields ocfs2_extend_xattr_bucket fndecl 4 20499 NULL
+aac_rkt_ioremap_fndecl_20502_fields aac_rkt_ioremap fndecl 2 20502 NULL
+nzones_adfs_discrecord_20503_fields nzones adfs_discrecord 0 20503 NULL nohasharray
+max_pfn_mapped_vardecl_20503_fields max_pfn_mapped vardecl 0 20503 &nzones_adfs_discrecord_20503_fields nohasharray
+id_platform_device_20503_fields id platform_device 0 20503 &max_pfn_mapped_vardecl_20503_fields
-+tty_port_register_device_attr_fndecl_20510_fields tty_port_register_device_attr fndecl 3 20510 NULL
+newImageSize_mpt_ioctl_replace_fw_20513_fields newImageSize mpt_ioctl_replace_fw 0 20513 NULL
+cifs_write_fndecl_20515_fields cifs_write fndecl 4 20515 NULL
+ufs_write_end_fndecl_20517_fields ufs_write_end fndecl 5 20517 NULL
+vdc_mem_base_vml_par_20521_fields vdc_mem_base vml_par 0 20521 NULL
+xtAppend_fndecl_20525_fields xtAppend fndecl 4 20525 NULL
+expand_downwards_fndecl_20533_fields expand_downwards fndecl 2 20533 NULL nohasharray
-+sr_read_fndecl_20533_fields sr_read fndecl 3 20533 &expand_downwards_fndecl_20533_fields
++buffer_size_persistent_ram_zone_20533_fields buffer_size persistent_ram_zone 0 20533 &expand_downwards_fndecl_20533_fields
+pnfs_generic_pg_init_write_fndecl_20539_fields pnfs_generic_pg_init_write fndecl 3 20539 NULL
++mlx5_core_req_pages_handler_fndecl_20540_fields mlx5_core_req_pages_handler fndecl 3 20540 NULL
+s_first_data_block_ext2_super_block_20541_fields s_first_data_block ext2_super_block 0 20541 NULL
+dti_buf_size_wahc_20547_fields dti_buf_size wahc 0 20547 NULL
+crtc_hdisplay_drm_display_mode_20548_fields crtc_hdisplay drm_display_mode 0 20548 NULL
+dataflash_write_fndecl_20550_fields dataflash_write fndecl 2-3 20550 NULL
+dma_base_sst_pdata_20554_fields dma_base sst_pdata 0 20554 NULL
-+nvm_submit_ppa_fndecl_20560_fields nvm_submit_ppa fndecl 7 20560 NULL
-+mtdchar_writeoob_fndecl_20562_fields mtdchar_writeoob fndecl 3-4 20562 NULL
++mtdchar_writeoob_fndecl_20562_fields mtdchar_writeoob fndecl 3 20562 NULL
+sg_write_fndecl_20563_fields sg_write fndecl 3 20563 NULL
+free_extents_btrfs_free_space_ctl_20566_fields free_extents btrfs_free_space_ctl 0 20566 NULL
+m25p80_read_fndecl_20568_fields m25p80_read fndecl 3 20568 NULL
++isdn_readbchan_fndecl_20570_fields isdn_readbchan fndecl 5 20570 NULL
+check_defrag_in_cache_fndecl_20573_fields check_defrag_in_cache fndecl 3-2 20573 NULL
+hp_outs_auto_pin_cfg_20574_fields hp_outs auto_pin_cfg 0 20574 NULL
+fifo_size_pxa_ep_20587_fields fifo_size pxa_ep 0 20587 NULL
+nrof_flowrings_brcmf_pcie_shared_info_20590_fields nrof_flowrings brcmf_pcie_shared_info 0 20590 NULL
++kernel_read_file_from_path_fndecl_20595_fields kernel_read_file_from_path fndecl 0 20595 NULL
+target_complete_cmd_with_length_fndecl_20597_fields target_complete_cmd_with_length fndecl 3 20597 NULL
+max_deviceinfo_size_pnfs_layoutdriver_type_20599_fields max_deviceinfo_size pnfs_layoutdriver_type 0 20599 NULL
++clk_hw_register_fixed_factor_fndecl_20600_fields clk_hw_register_fixed_factor fndecl 5 20600 NULL
+bblog_shift_mdp_superblock_1_20604_fields bblog_shift mdp_superblock_1 0 20604 NULL
+get_alt_usb_function_20605_fields get_alt usb_function 0 20605 NULL nohasharray
+cdrom_read_block_fndecl_20605_fields cdrom_read_block fndecl 4-6 20605 &get_alt_usb_function_20605_fields
@@ -193490,8 +198153,8 @@ index 0000000..6b5367db
+num_comp_vectors_ib_device_20639_fields num_comp_vectors ib_device 0 20639 NULL
+hpi_outstream_write_buf_fndecl_20645_fields hpi_outstream_write_buf fndecl 3 20645 NULL
+offset_iscsi_seq_20646_fields offset iscsi_seq 0 20646 NULL
-+nr_pages_ore_io_state_20648_fields nr_pages ore_io_state 0 20648 NULL
-+m_pblk_ext4_map_blocks_20649_fields m_pblk ext4_map_blocks 0 20649 NULL
++m_pblk_ext4_map_blocks_20649_fields m_pblk ext4_map_blocks 0 20649 NULL nohasharray
++cpuhp_ap_offline_fndecl_20649_fields cpuhp_ap_offline fndecl 0 20649 &m_pblk_ext4_map_blocks_20649_fields
+dlm_process_incoming_buffer_fndecl_20665_fields dlm_process_incoming_buffer fndecl 0 20665 NULL nohasharray
+max_feed_count_dvb_usb_adapter_20665_fields max_feed_count dvb_usb_adapter 0 20665 &dlm_process_incoming_buffer_fndecl_20665_fields
+shim_size_sst_res_info_20670_fields shim_size sst_res_info 0 20670 NULL
@@ -193499,7 +198162,6 @@ index 0000000..6b5367db
+max_qp_wr_ib_device_attr_20681_fields max_qp_wr ib_device_attr 0 20681 NULL
+write_to_8820_fndecl_20687_fields write_to_8820 fndecl 3 20687 NULL
+num_evt_qs_be_adapter_20688_fields num_evt_qs be_adapter 0 20688 NULL
-+num_row_gpios_matrix_keypad_platform_data_20696_fields num_row_gpios matrix_keypad_platform_data 0 20696 NULL
+erase_size_vardecl_mtdram_c_20704_fields erase_size vardecl_mtdram.c 0 20704 NULL
+err_dev_e752x_dev_info_20708_fields err_dev e752x_dev_info 0 20708 NULL
+src_len_ccp_rsa_engine_20712_fields src_len ccp_rsa_engine 0 20712 NULL
@@ -193507,14 +198169,13 @@ index 0000000..6b5367db
+dlc_rx_msg_20720_fields dlc rx_msg 0 20720 NULL
+add_range_fndecl_20721_fields add_range fndecl 5-4 20721 NULL
+txq_data_size_ieee80211_hw_20725_fields txq_data_size ieee80211_hw 0 20725 NULL
-+max_io_length_ore_layout_20738_fields max_io_length ore_layout 0 20738 NULL
+read_data_done_iscsi_cmd_20745_fields read_data_done iscsi_cmd 0 20745 NULL
++msgbuflen_blogic_adapter_20746_fields msgbuflen blogic_adapter 0 20746 NULL
+sb_pseg_start_nilfs_segment_buffer_20750_fields sb_pseg_start nilfs_segment_buffer 0 20750 NULL
+ath6kl_wmi_probedssid_cmd_fndecl_20751_fields ath6kl_wmi_probedssid_cmd fndecl 2 20751 NULL
+TransferCount__MPI2_SCSI_IO_REPLY_20759_fields TransferCount _MPI2_SCSI_IO_REPLY 0 20759 NULL
+r_readdir_offset_ceph_mds_request_20764_fields r_readdir_offset ceph_mds_request 0 20764 NULL
-+read_in_block_fndecl_20766_fields read_in_block fndecl 3 20766 NULL nohasharray
-+init_tx_ring_fndecl_20766_fields init_tx_ring fndecl 4 20766 &read_in_block_fndecl_20766_fields
++read_in_block_fndecl_20766_fields read_in_block fndecl 3 20766 NULL
+channels_min_snd_soc_pcm_stream_20771_fields channels_min snd_soc_pcm_stream 0 20771 NULL nohasharray
+tx_ring_size_mlx4_en_port_profile_20771_fields tx_ring_size mlx4_en_port_profile 0 20771 &channels_min_snd_soc_pcm_stream_20771_fields
+ltab_sz_ubifs_info_20776_fields ltab_sz ubifs_info 0 20776 NULL
@@ -193526,16 +198187,17 @@ index 0000000..6b5367db
+map_size_pcmcia_socket_20792_fields map_size pcmcia_socket 0 20792 NULL
+max_seg_size_mmc_host_20795_fields max_seg_size mmc_host 0 20795 NULL nohasharray
+pos_vb2_fileio_buf_20795_fields pos vb2_fileio_buf 0 20795 &max_seg_size_mmc_host_20795_fields
-+win_sz_wmi_addba_req_event_20803_fields win_sz wmi_addba_req_event 0 20803 NULL nohasharray
-+namelen_xfs_da_args_20803_fields namelen xfs_da_args 0 20803 &win_sz_wmi_addba_req_event_20803_fields
++namelen_xfs_da_args_20803_fields namelen xfs_da_args 0 20803 NULL nohasharray
++win_sz_wmi_addba_req_event_20803_fields win_sz wmi_addba_req_event 0 20803 &namelen_xfs_da_args_20803_fields
+mgmt_index_event_fndecl_20813_fields mgmt_index_event fndecl 4 20813 NULL
+rcvidx_isac_20815_fields rcvidx isac 0 20815 NULL
-+via686a_device_add_fndecl_20823_fields via686a_device_add fndecl 1 20823 NULL
++start_nd_mapping_20823_fields start nd_mapping 0 20823 NULL nohasharray
++via686a_device_add_fndecl_20823_fields via686a_device_add fndecl 1 20823 &start_nd_mapping_20823_fields
+drm_fb_helper_single_fb_probe_fndecl_20828_fields drm_fb_helper_single_fb_probe fndecl 2 20828 NULL nohasharray
+do_cow_fault_fndecl_20828_fields do_cow_fault fndecl 2 20828 &drm_fb_helper_single_fb_probe_fndecl_20828_fields
++xfs_map_cow_fndecl_20832_fields xfs_map_cow fndecl 0 20832 NULL
+compat_do_ip6t_set_ctl_fndecl_20835_fields compat_do_ip6t_set_ctl fndecl 4 20835 NULL
-+num_crtc_radeon_device_20838_fields num_crtc radeon_device 0 20838 NULL nohasharray
-+adv_smbus_read_byte_data_check_fndecl_20838_fields adv_smbus_read_byte_data_check fndecl 0 20838 &num_crtc_radeon_device_20838_fields
++adv_smbus_read_byte_data_check_fndecl_20838_fields adv_smbus_read_byte_data_check fndecl 0 20838 NULL
+pathlen_nfs3_symlinkargs_20843_fields pathlen nfs3_symlinkargs 0 20843 NULL
+udp_sendpage_fndecl_20845_fields udp_sendpage fndecl 4 20845 NULL
+store_limit_l_fscache_object_20847_fields store_limit_l fscache_object 0 20847 NULL
@@ -193554,7 +198216,6 @@ index 0000000..6b5367db
+cl_local_node_o2nm_cluster_20896_fields cl_local_node o2nm_cluster 0 20896 NULL
+idiag_info_size_inet_diag_handler_20898_fields idiag_info_size inet_diag_handler 0 20898 NULL
+locks_mandatory_area_fndecl_20899_fields locks_mandatory_area fndecl 0 20899 NULL
-+check_vendor_extension_fndecl_20901_fields check_vendor_extension fndecl 1 20901 NULL
+num_rows_vardecl_arcfb_c_20902_fields num_rows vardecl_arcfb.c 0 20902 NULL
+radeon_vm_directory_size_fndecl_20909_fields radeon_vm_directory_size fndecl 0 20909 NULL
+n_dir_band_hpfs_super_block_20914_fields n_dir_band hpfs_super_block 0 20914 NULL
@@ -193568,9 +198229,9 @@ index 0000000..6b5367db
+dbDiscardAG_fndecl_20969_fields dbDiscardAG fndecl 0 20969 NULL
+pskb_carve_fndecl_20971_fields pskb_carve fndecl 2 20971 NULL
+offset_fuse_notify_store_out_20985_fields offset fuse_notify_store_out 0 20985 NULL
-+dy_fb_image_20988_fields dy fb_image 0 20988 NULL nohasharray
-+arvo_sysfs_write_fndecl_20988_fields arvo_sysfs_write fndecl 6 20988 &dy_fb_image_20988_fields
++dy_fb_image_20988_fields dy fb_image 0 20988 NULL
+gfn_guest_walker32_20990_fields gfn guest_walker32 0 20990 NULL
++rx_dma_rng_buf_len_lpuart_port_21007_fields rx_dma_rng_buf_len lpuart_port 0 21007 NULL
+cxns_per_ctrl_hba_parameters_21008_fields cxns_per_ctrl hba_parameters 0 21008 NULL
+controller_function_mspro_sys_info_21011_fields controller_function mspro_sys_info 0 21011 NULL
+s_log_cluster_size_ext4_super_block_21014_fields s_log_cluster_size ext4_super_block 0 21014 NULL
@@ -193578,11 +198239,11 @@ index 0000000..6b5367db
+create_one_cdev_fndecl_21023_fields create_one_cdev fndecl 2 21023 NULL
+__build_skb_fndecl_21024_fields __build_skb fndecl 2 21024 NULL
+minix_new_block_fndecl_21026_fields minix_new_block fndecl 0 21026 NULL
-+uea_send_modem_cmd_fndecl_21027_fields uea_send_modem_cmd fndecl 3 21027 NULL
+count_debug_buffer_21028_fields count debug_buffer 0 21028 NULL
+fw_resource_count_efi_system_resource_table_21033_fields fw_resource_count efi_system_resource_table 0 21033 NULL
+start_range_21034_fields start range 0 21034 NULL
+crtc_vdisplay_drm_display_mode_21037_fields crtc_vdisplay drm_display_mode 0 21037 NULL
++garp_attr_create_fndecl_21048_fields garp_attr_create fndecl 3 21048 NULL
+vary_usbtest_param_32_21050_fields vary usbtest_param_32 0 21050 NULL
+erase_shift_onenand_chip_21052_fields erase_shift onenand_chip 0 21052 NULL nohasharray
+tx_queues_rt2x00_ops_21052_fields tx_queues rt2x00_ops 0 21052 &erase_shift_onenand_chip_21052_fields
@@ -193593,7 +198254,6 @@ index 0000000..6b5367db
+usbip_recv_fndecl_21076_fields usbip_recv fndecl 3 21076 NULL
+consume_size_qp_entry_21087_fields consume_size qp_entry 0 21087 NULL
+queue_pages_test_walk_fndecl_21089_fields queue_pages_test_walk fndecl 2-1 21089 NULL
-+max_counters_mlx4_caps_21095_fields max_counters mlx4_caps 0 21095 NULL
+ext4_block_truncate_page_fndecl_21098_fields ext4_block_truncate_page fndecl 3 21098 NULL
+ext4_bg_has_super_fndecl_21104_fields ext4_bg_has_super fndecl 0 21104 NULL
+sge_size_ieee_MPT3SAS_ADAPTER_21108_fields sge_size_ieee MPT3SAS_ADAPTER 0 21108 NULL
@@ -193602,14 +198262,15 @@ index 0000000..6b5367db
+dm_rh_get_region_size_fndecl_21112_fields dm_rh_get_region_size fndecl 0 21112 NULL
+memblock_mark_hotplug_fndecl_21114_fields memblock_mark_hotplug fndecl 2-1 21114 NULL nohasharray
+fpm_base_addr_i40iw_hmc_pble_rsrc_21114_fields fpm_base_addr i40iw_hmc_pble_rsrc 0 21114 &memblock_mark_hotplug_fndecl_21114_fields
-+max_slots_ocfs2_super_21115_fields max_slots ocfs2_super 0 21115 NULL nohasharray
-+hdlc_irq_one_fndecl_21115_fields hdlc_irq_one fndecl 2 21115 &max_slots_ocfs2_super_21115_fields
-+header_length_scsi_mode_data_21117_fields header_length scsi_mode_data 0 21117 NULL
-+chunk_mask_dm_exception_store_21121_fields chunk_mask dm_exception_store 0 21121 NULL
++hdlc_irq_one_fndecl_21115_fields hdlc_irq_one fndecl 2 21115 NULL nohasharray
++max_slots_ocfs2_super_21115_fields max_slots ocfs2_super 0 21115 &hdlc_irq_one_fndecl_21115_fields
++hdrlen_ipv6_opt_hdr_21121_fields hdrlen ipv6_opt_hdr 0 21121 NULL nohasharray
++chunk_mask_dm_exception_store_21121_fields chunk_mask dm_exception_store 0 21121 &hdrlen_ipv6_opt_hdr_21121_fields nohasharray
++cdce925_clk_best_parent_rate_fndecl_21121_fields cdce925_clk_best_parent_rate fndecl 2 21121 &chunk_mask_dm_exception_store_21121_fields
+produce_size_vmci_transport_21124_fields produce_size vmci_transport 0 21124 NULL
+s_desc_per_block_bits_ext4_sb_info_21130_fields s_desc_per_block_bits ext4_sb_info 0 21130 NULL
+do_add_counters_fndecl_21131_fields do_add_counters fndecl 3 21131 NULL
-+xfs_bmbt_lookup_eq_fndecl_21134_fields xfs_bmbt_lookup_eq fndecl 3-4-2 21134 NULL
++xfs_bmbt_lookup_eq_fndecl_21134_fields xfs_bmbt_lookup_eq fndecl 3-2-4 21134 NULL
+cp_pack_start_sum_f2fs_checkpoint_21142_fields cp_pack_start_sum f2fs_checkpoint 0 21142 NULL
+clk_get_rate_fndecl_21147_fields clk_get_rate fndecl 0 21147 NULL nohasharray
+copied_iscsi_segment_21147_fields copied iscsi_segment 0 21147 &clk_get_rate_fndecl_21147_fields
@@ -193617,6 +198278,7 @@ index 0000000..6b5367db
+ext4_xattr_find_entry_fndecl_21162_fields ext4_xattr_find_entry fndecl 0 21162 NULL
+nd_size_out_nd_cmd_pkg_21165_fields nd_size_out nd_cmd_pkg 0 21165 NULL
+gfs2_dir_get_existing_buffer_fndecl_21172_fields gfs2_dir_get_existing_buffer fndecl 2 21172 NULL
++mei_write_fndecl_21174_fields mei_write fndecl 3 21174 NULL
+udf_try_read_meta_fndecl_21178_fields udf_try_read_meta fndecl 4 21178 NULL
+usage_index_hid_local_21183_fields usage_index hid_local 0 21183 NULL
+init_ppi_data_fndecl_21184_fields init_ppi_data fndecl 2 21184 NULL
@@ -193624,7 +198286,7 @@ index 0000000..6b5367db
+ucNumEntries__ATOM_PPLIB_Clock_Voltage_Dependency_Table_21191_fields ucNumEntries _ATOM_PPLIB_Clock_Voltage_Dependency_Table 0 21191 NULL
+sb_inodesize_xfs_sb_21192_fields sb_inodesize xfs_sb 0 21192 NULL
+usbnet_write_cmd_async_fndecl_21200_fields usbnet_write_cmd_async fndecl 7 21200 NULL
-+drm_plane_helper_update_fndecl_21218_fields drm_plane_helper_update fndecl 6-10-7-11 21218 NULL
++drm_plane_helper_update_fndecl_21218_fields drm_plane_helper_update fndecl 6-8-4-10-7-9-5-11 21218 NULL
+hpfs_get_4sectors_fndecl_21224_fields hpfs_get_4sectors fndecl 2 21224 NULL
+vfio_pci_register_dev_region_fndecl_21228_fields vfio_pci_register_dev_region fndecl 5 21228 NULL
+tx_ptr_catc_21231_fields tx_ptr catc 0 21231 NULL nohasharray
@@ -193640,10 +198302,8 @@ index 0000000..6b5367db
+ufs_clear_frags_fndecl_21263_fields ufs_clear_frags fndecl 2 21263 NULL
+vc_resize_fndecl_21266_fields vc_resize fndecl 3-2 21266 NULL nohasharray
+num_fh_nfs4_filelayout_segment_21266_fields num_fh nfs4_filelayout_segment 0 21266 &vc_resize_fndecl_21266_fields
-+elfcorebuf_sz_vardecl_vmcore_c_21270_fields elfcorebuf_sz vardecl_vmcore.c 0 21270 NULL
+gsi_top_vardecl_21275_fields gsi_top vardecl 0 21275 NULL
-+skb_splice_bits_fndecl_21278_fields skb_splice_bits fndecl 0 21278 NULL nohasharray
-+ulimit_ulp_iscsi_info_21278_fields ulimit ulp_iscsi_info 0 21278 &skb_splice_bits_fndecl_21278_fields
++ulimit_ulp_iscsi_info_21278_fields ulimit ulp_iscsi_info 0 21278 NULL
+hsync_len_fb_var_screeninfo_21279_fields hsync_len fb_var_screeninfo 0 21279 NULL
+height_simplefb_params_21280_fields height simplefb_params 0 21280 NULL nohasharray
+plen_nci_ctrl_hdr_21280_fields plen nci_ctrl_hdr 0 21280 &height_simplefb_params_21280_fields
@@ -193653,44 +198313,44 @@ index 0000000..6b5367db
+count_nfsd3_readdirres_21299_fields count nfsd3_readdirres 0 21299 &osd_yres_vardecl_ivtvfb_c_21299_fields nohasharray
+efx_rx_deliver_fndecl_21299_fields efx_rx_deliver fndecl 4 21299 &count_nfsd3_readdirres_21299_fields
+wSamplesPerFrame_uac_format_type_ii_discrete_descriptor_21300_fields wSamplesPerFrame uac_format_type_ii_discrete_descriptor 0 21300 NULL
-+nvdimm_major_vardecl_21302_fields nvdimm_major vardecl 0 21302 NULL
+xblk_next_xblk_qnx4_xblk_21303_fields xblk_next_xblk qnx4_xblk 0 21303 NULL
+tx_num_pg_ch_pm_21307_fields tx_num_pg ch_pm 0 21307 NULL
+num_paths_bna_rx_config_21315_fields num_paths bna_rx_config 0 21315 NULL
+fuse_copy_page_fndecl_21316_fields fuse_copy_page fndecl 4-3 21316 NULL
+tcp_fragment_fndecl_21318_fields tcp_fragment fndecl 3 21318 NULL
-+packet_present_len_cfg80211_wowlan_wakeup_21321_fields packet_present_len cfg80211_wowlan_wakeup 0 21321 NULL
++packet_present_len_cfg80211_wowlan_wakeup_21321_fields packet_present_len cfg80211_wowlan_wakeup 0 21321 NULL nohasharray
++sq_len_queue_set_21321_fields sq_len queue_set 0 21321 &packet_present_len_cfg80211_wowlan_wakeup_21321_fields
+mincore_unmapped_range_fndecl_21322_fields mincore_unmapped_range fndecl 1 21322 NULL
+UniformBlockSizeShift_qinfo_chip_21323_fields UniformBlockSizeShift qinfo_chip 0 21323 NULL
-+cm_copy_private_data_fndecl_21330_fields cm_copy_private_data fndecl 2 21330 NULL
+word14_lpfc_mbx_read_config_21331_fields word14 lpfc_mbx_read_config 0 21331 NULL
-+i915_compat_ioctl_fndecl_21339_fields i915_compat_ioctl fndecl 2 21339 NULL
++max_lag_mlxsw_resources_21339_fields max_lag mlxsw_resources 0 21339 NULL
+fl_dump_key_val_fndecl_21344_fields fl_dump_key_val fndecl 6 21344 NULL
++rpcrdma_prepare_send_sges_fndecl_21346_fields rpcrdma_prepare_send_sges fndecl 3 21346 NULL
+cur_aead_sg_list_21347_fields cur aead_sg_list 0 21347 NULL nohasharray
+snd_util_mem_alloc_fndecl_21347_fields snd_util_mem_alloc fndecl 2 21347 &cur_aead_sg_list_21347_fields
+h_blkno_ocfs2_extent_block_21357_fields h_blkno ocfs2_extent_block 0 21357 NULL nohasharray
+nfs_direct_wait_fndecl_21357_fields nfs_direct_wait fndecl 0 21357 &h_blkno_ocfs2_extent_block_21357_fields
+videobuf_pages_to_sg_fndecl_21359_fields videobuf_pages_to_sg fndecl 3-4-2 21359 NULL
+igbvf_change_mtu_fndecl_21361_fields igbvf_change_mtu fndecl 2 21361 NULL
-+pad_ieee80211_vendor_radiotap_21376_fields pad ieee80211_vendor_radiotap 0 21376 NULL nohasharray
-+len_idma64_hw_desc_21376_fields len idma64_hw_desc 0 21376 &pad_ieee80211_vendor_radiotap_21376_fields
++dest_sctphdr_21370_fields dest sctphdr 0 21370 NULL
++len_idma64_hw_desc_21376_fields len idma64_hw_desc 0 21376 NULL nohasharray
++pad_ieee80211_vendor_radiotap_21376_fields pad ieee80211_vendor_radiotap 0 21376 &len_idma64_hw_desc_21376_fields
+chunk_size_dm_exception_store_21381_fields chunk_size dm_exception_store 0 21381 NULL
+inppos_net_local_21383_fields inppos net_local 0 21383 NULL
+num_vfs_enic_21386_fields num_vfs enic 0 21386 NULL
-+cids_per_vf_qed_conn_type_cfg_21393_fields cids_per_vf qed_conn_type_cfg 0 21393 NULL nohasharray
-+vc_scan_lines_vc_data_21393_fields vc_scan_lines vc_data 0 21393 &cids_per_vf_qed_conn_type_cfg_21393_fields
++vc_scan_lines_vc_data_21393_fields vc_scan_lines vc_data 0 21393 NULL nohasharray
++cids_per_vf_qed_conn_type_cfg_21393_fields cids_per_vf qed_conn_type_cfg 0 21393 &vc_scan_lines_vc_data_21393_fields
+pg_count_agp_allocate32_21404_fields pg_count agp_allocate32 0 21404 NULL
+ext4_inode_blocks_set_fndecl_21407_fields ext4_inode_blocks_set fndecl 0 21407 NULL
++mesh_id_len_ieee80211_if_mesh_21412_fields mesh_id_len ieee80211_if_mesh 0 21412 NULL
+rx_desc_size_rtl8xxxu_fileops_21415_fields rx_desc_size rtl8xxxu_fileops 0 21415 NULL
+st33zp24_spi_send_fndecl_21416_fields st33zp24_spi_send fndecl 4 21416 NULL
+ex_length_extent_s_21417_fields ex_length extent_s 0 21417 NULL
+mtu_rxe_qp_21422_fields mtu rxe_qp 0 21422 NULL nohasharray
+ping_recvmsg_fndecl_21422_fields ping_recvmsg fndecl 3 21422 &mtu_rxe_qp_21422_fields
-+managed_pages_zone_21425_fields managed_pages zone 0 21425 NULL nohasharray
-+cp2112_i2c_write_req_fndecl_21425_fields cp2112_i2c_write_req fndecl 0-4 21425 &managed_pages_zone_21425_fields
++managed_pages_zone_21425_fields managed_pages zone 0 21425 NULL
+bounce_offs_xhci_segment_21437_fields bounce_offs xhci_segment 0 21437 NULL
+intbufferhandle_kaweth_device_21438_fields intbufferhandle kaweth_device 0 21438 NULL
-+sctp_setsockopt_auth_key_fndecl_21442_fields sctp_setsockopt_auth_key fndecl 3 21442 NULL
+major_vardecl_pg_c_21451_fields major vardecl_pg.c 0 21451 NULL
+buffer_size_vardecl_event_buffer_c_21452_fields buffer_size vardecl_event_buffer.c 0 21452 NULL
+video_width_sis_video_info_21454_fields video_width sis_video_info 0 21454 NULL
@@ -193698,7 +198358,8 @@ index 0000000..6b5367db
+indirect2direct_fndecl_21459_fields indirect2direct fndecl 6 21459 NULL
+ezusb_access_ltv_fndecl_21485_fields ezusb_access_ltv fndecl 3 21485 NULL
+mmio_start_fb_fix_screeninfo_21486_fields mmio_start fb_fix_screeninfo 0 21486 NULL
-+fuse_do_ioctl_fndecl_21491_fields fuse_do_ioctl fndecl 2 21491 NULL
++fuse_do_ioctl_fndecl_21491_fields fuse_do_ioctl fndecl 2 21491 NULL nohasharray
++num_channels_ep93xx_dma_platform_data_21491_fields num_channels ep93xx_dma_platform_data 0 21491 &fuse_do_ioctl_fndecl_21491_fields
+hpfs_ea_ext_remove_fndecl_21492_fields hpfs_ea_ext_remove fndecl 4-2 21492 NULL
+memsize_vgastate_21493_fields memsize vgastate 0 21493 NULL nohasharray
+num_iac_hci_cp_write_current_iac_lap_21493_fields num_iac hci_cp_write_current_iac_lap 0 21493 &memsize_vgastate_21493_fields
@@ -193709,7 +198370,6 @@ index 0000000..6b5367db
+c67x00_urb_dequeue_fndecl_21522_fields c67x00_urb_dequeue fndecl 3 21522 &fifo_size_hscx_hw_21522_fields
+data_offset_mdp_superblock_1_21524_fields data_offset mdp_superblock_1 0 21524 NULL
+xennet_max_queues_vardecl_xen_netfront_c_21530_fields xennet_max_queues vardecl_xen-netfront.c 0 21530 NULL
-+ooblen_mtd_oob_ops_21531_fields ooblen mtd_oob_ops 0 21531 NULL
+hfsplus_find_init_fndecl_21533_fields hfsplus_find_init fndecl 0 21533 NULL nohasharray
+nr_bos_drm_msm_gem_submit_21533_fields nr_bos drm_msm_gem_submit 0 21533 &hfsplus_find_init_fndecl_21533_fields
+zr364xx_read_fndecl_21537_fields zr364xx_read fndecl 3 21537 NULL
@@ -193720,6 +198380,7 @@ index 0000000..6b5367db
+sl_max_ip6_sf_socklist_21563_fields sl_max ip6_sf_socklist 0 21563 NULL
+log_sq_stride_mlx4_ib_create_qp_21564_fields log_sq_stride mlx4_ib_create_qp 0 21564 NULL
+total_len_ieee802_11_elems_21565_fields total_len ieee802_11_elems 0 21565 NULL
++baud_cdns_uart_21567_fields baud cdns_uart 0 21567 NULL
+rtl_port_map_fndecl_21570_fields rtl_port_map fndecl 2-1 21570 NULL
+start_resource_21572_fields start resource 0 21572 NULL nohasharray
+cont_extent_rock_state_21572_fields cont_extent rock_state 0 21572 &start_resource_21572_fields
@@ -193732,7 +198393,6 @@ index 0000000..6b5367db
+st_kim_recv_fndecl_21600_fields st_kim_recv fndecl 3 21600 NULL
+irq_dma_cm109_dev_21602_fields irq_dma cm109_dev 0 21602 NULL nohasharray
+do_otp_write_fndecl_21602_fields do_otp_write fndecl 2 21602 &irq_dma_cm109_dev_21602_fields
-+roccat_common2_send_fndecl_21605_fields roccat_common2_send fndecl 4 21605 NULL
+hfcpci_empty_fifo_fndecl_21608_fields hfcpci_empty_fifo fndecl 4 21608 NULL nohasharray
+p54spi_spi_write_dma_fndecl_21608_fields p54spi_spi_write_dma fndecl 4 21608 &hfcpci_empty_fifo_fndecl_21608_fields nohasharray
+snd_seq_pool_new_fndecl_21608_fields snd_seq_pool_new fndecl 1 21608 &p54spi_spi_write_dma_fndecl_21608_fields
@@ -193743,17 +198403,16 @@ index 0000000..6b5367db
+num_snaps_ceph_snap_realm_21623_fields num_snaps ceph_snap_realm 0 21623 NULL
+sector_r1bio_21627_fields sector r1bio 0 21627 NULL
+__lbtf_cmd_fndecl_21631_fields __lbtf_cmd fndecl 4 21631 NULL
-+ath6kl_usb_bmi_write_fndecl_21637_fields ath6kl_usb_bmi_write fndecl 3 21637 NULL
+hlength_iscsi_hdr_21640_fields hlength iscsi_hdr 0 21640 NULL
-+elf_kcore_store_hdr_fndecl_21642_fields elf_kcore_store_hdr fndecl 2-3 21642 NULL
+ra_meta_pages_cond_fndecl_21647_fields ra_meta_pages_cond fndecl 2 21647 NULL
-+nvram_npiv_size_qla_hw_data_21652_fields nvram_npiv_size qla_hw_data 0 21652 NULL nohasharray
-+ioremap_nocache_fndecl_21652_fields ioremap_nocache fndecl 2-1 21652 &nvram_npiv_size_qla_hw_data_21652_fields
++ioremap_nocache_fndecl_21652_fields ioremap_nocache fndecl 2-1 21652 NULL nohasharray
++nvram_npiv_size_qla_hw_data_21652_fields nvram_npiv_size qla_hw_data 0 21652 &ioremap_nocache_fndecl_21652_fields
+cxd2841er_write_regs_fndecl_21655_fields cxd2841er_write_regs fndecl 5 21655 NULL
+tps6507x_i2c_read_device_fndecl_21660_fields tps6507x_i2c_read_device fndecl 3 21660 NULL
+overlay_cap_left_vivid_dev_21663_fields overlay_cap_left vivid_dev 0 21663 NULL
+update_pmkid_fndecl_21666_fields update_pmkid fndecl 4 21666 NULL
+length_ccp_dma_info_21671_fields length ccp_dma_info 0 21671 NULL
++start_data_prctl_mm_map_21673_fields start_data prctl_mm_map 0 21673 NULL
+ext4_dio_get_block_overwrite_fndecl_21684_fields ext4_dio_get_block_overwrite fndecl 2 21684 NULL
+in_min_chans_snd_card_asihpi_21686_fields in_min_chans snd_card_asihpi 0 21686 NULL
+mfw_mb_length_qed_mcp_info_21688_fields mfw_mb_length qed_mcp_info 0 21688 NULL
@@ -193761,12 +198420,12 @@ index 0000000..6b5367db
+__ieee80211_get_mesh_hdrlen_fndecl_21692_fields __ieee80211_get_mesh_hdrlen fndecl 0 21692 &fc_fcp_send_data_fndecl_21692_fields
+resync_max_sectors_mddev_21693_fields resync_max_sectors mddev 0 21693 NULL
+max_pkt_size_pktgen_dev_21696_fields max_pkt_size pktgen_dev 0 21696 NULL
-+dm_write_fndecl_21698_fields dm_write fndecl 3 21698 NULL
+amdgpu_irq_create_mapping_fndecl_21701_fields amdgpu_irq_create_mapping fndecl 0 21701 NULL
+ext4_get_inode_loc_fndecl_21703_fields ext4_get_inode_loc fndecl 0 21703 NULL
-+pread_dvb_ringbuffer_21708_fields pread dvb_ringbuffer 0 21708 NULL nohasharray
-+nfsacl_encode_fndecl_21708_fields nfsacl_encode fndecl 2-0 21708 &pread_dvb_ringbuffer_21708_fields
++nfsacl_encode_fndecl_21708_fields nfsacl_encode fndecl 2-0 21708 NULL nohasharray
++pread_dvb_ringbuffer_21708_fields pread dvb_ringbuffer 0 21708 &nfsacl_encode_fndecl_21708_fields
+get_rndis_request_fndecl_21709_fields get_rndis_request fndecl 3 21709 NULL
++tid_iwl_mvm_compressed_ba_ratid_21715_fields tid iwl_mvm_compressed_ba_ratid 0 21715 NULL
+residual_fcpio_icmnd_cmpl_21718_fields residual fcpio_icmnd_cmpl 0 21718 NULL
+set_blocksize_fndecl_21720_fields set_blocksize fndecl 2 21720 NULL
+len_nfs4_label_21722_fields len nfs4_label 0 21722 NULL
@@ -193774,17 +198433,15 @@ index 0000000..6b5367db
+hpfs_set_ea_fndecl_21731_fields hpfs_set_ea fndecl 5 21731 NULL
+groups_netlink_kernel_cfg_21741_fields groups netlink_kernel_cfg 0 21741 NULL
+blk_rq_map_integrity_sg_fndecl_21744_fields blk_rq_map_integrity_sg fndecl 0 21744 NULL
-+smk_write_syslog_fndecl_21746_fields smk_write_syslog fndecl 3 21746 NULL
+skb_ts_get_next_block_fndecl_21748_fields skb_ts_get_next_block fndecl 1 21748 NULL
+intel_tile_size_fndecl_21749_fields intel_tile_size fndecl 0 21749 NULL
-+__ceph_setxattr_fndecl_21751_fields __ceph_setxattr fndecl 4 21751 NULL
-+id_gpio_device_21753_fields id gpio_device 0 21753 NULL
++__ceph_setxattr_fndecl_21751_fields __ceph_setxattr fndecl 4 21751 NULL nohasharray
++length_ena_eth_io_rx_cdesc_base_21751_fields length ena_eth_io_rx_cdesc_base 0 21751 &__ceph_setxattr_fndecl_21751_fields
+bufsiz_mousedev_client_21759_fields bufsiz mousedev_client 0 21759 NULL
+width_tm6000_fh_21761_fields width tm6000_fh 0 21761 NULL
+req_lim_delta_srp_login_rsp_21762_fields req_lim_delta srp_login_rsp 0 21762 NULL
+next_checkpoint_r5l_log_21765_fields next_checkpoint r5l_log 0 21765 NULL
+br_startblock_xfs_bmbt_irec_21769_fields br_startblock xfs_bmbt_irec 0 21769 NULL
-+regmap_get_val_bytes_fndecl_21774_fields regmap_get_val_bytes fndecl 0 21774 NULL
+byte_len_spi_eeprom_21786_fields byte_len spi_eeprom 0 21786 NULL
+tpg_alloc_fndecl_21789_fields tpg_alloc fndecl 2 21789 NULL
+find_group_dir_fndecl_21790_fields find_group_dir fndecl 0 21790 NULL
@@ -193797,12 +198454,8 @@ index 0000000..6b5367db
+snd_pcm_plug_slave_format_fndecl_21831_fields snd_pcm_plug_slave_format fndecl 0-1 21831 NULL
+nfs4_copy_file_range_fndecl_21835_fields nfs4_copy_file_range fndecl 4 21835 NULL
+firm_cfg_version_AdapterControlBlock_21836_fields firm_cfg_version AdapterControlBlock 0 21836 NULL
-+n_descsz_elf32_note_21838_fields n_descsz elf32_note 0 21838 NULL nohasharray
-+device_create_vargs_fndecl_21838_fields device_create_vargs fndecl 3 21838 &n_descsz_elf32_note_21838_fields
-+__find_xattr_fndecl_21846_fields __find_xattr fndecl 6 21846 NULL
+length_acpi_table_desc_21847_fields length acpi_table_desc 0 21847 NULL
+sge_control2_sge_params_21854_fields sge_control2 sge_params 0 21854 NULL
-+update_hidden_ssid_fndecl_21871_fields update_hidden_ssid fndecl 0 21871 NULL
+sizeimage_vim2m_q_data_21875_fields sizeimage vim2m_q_data 0 21875 NULL nohasharray
+ext4_zero_partial_blocks_fndecl_21875_fields ext4_zero_partial_blocks fndecl 3-4 21875 &sizeimage_vim2m_q_data_21875_fields
+ad_sd_read_reg_fndecl_21876_fields ad_sd_read_reg fndecl 3 21876 NULL
@@ -193815,44 +198468,48 @@ index 0000000..6b5367db
+sym_compute_residual_fndecl_21916_fields sym_compute_residual fndecl 0 21916 NULL
+error_bio_and_error_21918_fields error bio_and_error 0 21918 NULL
+addr_width_snd_dmaengine_dai_dma_data_21920_fields addr_width snd_dmaengine_dai_dma_data 0 21920 NULL
++ceph_osdc_new_request_fndecl_21921_fields ceph_osdc_new_request fndecl 7 21921 NULL
+membase_pm8001_hba_memspace_21924_fields membase pm8001_hba_memspace 0 21924 NULL
+ath6kl_sdio_bmi_read_fndecl_21930_fields ath6kl_sdio_bmi_read fndecl 3 21930 NULL
+rx_eth_fndecl_21931_fields rx_eth fndecl 4 21931 NULL
+page_cache_async_readahead_fndecl_21944_fields page_cache_async_readahead fndecl 5 21944 NULL
++ysize_mxt_data_21945_fields ysize mxt_data 0 21945 NULL
+in_pipe_ttusb_dec_21947_fields in_pipe ttusb_dec 0 21947 NULL
+kvm_hv_set_msr_fndecl_21951_fields kvm_hv_set_msr fndecl 3 21951 NULL
++do_update_counters_fndecl_21952_fields do_update_counters fndecl 4 21952 NULL
+nrprocs_rpc_version_21954_fields nrprocs rpc_version 0 21954 NULL
-+sel_write_avc_cache_threshold_fndecl_21955_fields sel_write_avc_cache_threshold fndecl 3 21955 NULL
+length_iscsi_datain_21959_fields length iscsi_datain 0 21959 NULL
+ocfs2_find_refcount_rec_in_rl_fndecl_21962_fields ocfs2_find_refcount_rec_in_rl fndecl 3-4 21962 NULL
+num_desc_qlcnic_host_rds_ring_21963_fields num_desc qlcnic_host_rds_ring 0 21963 NULL
+reg_page_map_set_fndecl_21967_fields reg_page_map_set fndecl 0 21967 NULL
-+ms_os_descs_ext_prop_count_ffs_data_21971_fields ms_os_descs_ext_prop_count ffs_data 0 21971 NULL nohasharray
-+vram_size_ast_private_21971_fields vram_size ast_private 0 21971 &ms_os_descs_ext_prop_count_ffs_data_21971_fields nohasharray
-+dblock_gfs2_journal_extent_21971_fields dblock gfs2_journal_extent 0 21971 &vram_size_ast_private_21971_fields
++vram_size_ast_private_21971_fields vram_size ast_private 0 21971 NULL nohasharray
++dblock_gfs2_journal_extent_21971_fields dblock gfs2_journal_extent 0 21971 &vram_size_ast_private_21971_fields nohasharray
++ms_os_descs_ext_prop_count_ffs_data_21971_fields ms_os_descs_ext_prop_count ffs_data 0 21971 &dblock_gfs2_journal_extent_21971_fields
+bulk_out_size_usb_cardstate_21974_fields bulk_out_size usb_cardstate 0 21974 NULL
+max_data_sg_nents_target_core_fabric_ops_21975_fields max_data_sg_nents target_core_fabric_ops 0 21975 NULL nohasharray
-+fat_start_msdos_sb_info_21975_fields fat_start msdos_sb_info 0 21975 &max_data_sg_nents_target_core_fabric_ops_21975_fields
++fat_start_msdos_sb_info_21975_fields fat_start msdos_sb_info 0 21975 &max_data_sg_nents_target_core_fabric_ops_21975_fields nohasharray
++mlx4_buddy_init_fndecl_21975_fields mlx4_buddy_init fndecl 2 21975 &fat_start_msdos_sb_info_21975_fields
+donor_start_move_extent_21977_fields donor_start move_extent 0 21977 NULL nohasharray
+nxt200x_writebytes_fndecl_21977_fields nxt200x_writebytes fndecl 4 21977 &donor_start_move_extent_21977_fields
+cfg1_base_pcie_port_21978_fields cfg1_base pcie_port 0 21978 NULL
+calc_fat_clusters_fndecl_21982_fields calc_fat_clusters fndecl 0 21982 NULL
++_scif_send_fndecl_21987_fields _scif_send fndecl 3-0 21987 NULL
+split_nodes_interleave_fndecl_21988_fields split_nodes_interleave fndecl 3-5-4 21988 NULL
+skb_rx_extra_cxgbi_device_21990_fields skb_rx_extra cxgbi_device 0 21990 NULL
-+sr_read_cmd_fndecl_21992_fields sr_read_cmd fndecl 5 21992 NULL
+sec_per_clus_msdos_sb_info_21995_fields sec_per_clus msdos_sb_info 0 21995 NULL
+ath6kl_wmi_bssinfo_event_rx_fndecl_22000_fields ath6kl_wmi_bssinfo_event_rx fndecl 3 22000 NULL
+ath6kl_wmi_set_tx_pwr_cmd_fndecl_22001_fields ath6kl_wmi_set_tx_pwr_cmd fndecl 2 22001 NULL
+length_ib_sge_22002_fields length ib_sge 0 22002 NULL
+vmx_create_vcpu_fndecl_22003_fields vmx_create_vcpu fndecl 2 22003 NULL
+video_v_stop_saa7134_tvnorm_22005_fields video_v_stop saa7134_tvnorm 0 22005 NULL
++num_pointers_user_acl_role_db_22011_fields num_pointers user_acl_role_db 0 22011 NULL
+itd1000_write_regs_fndecl_22013_fields itd1000_write_regs fndecl 4 22013 NULL
+atio_q_length_qlt_hw_data_22018_fields atio_q_length qlt_hw_data 0 22018 NULL
+cal_data_len_ath10k_hw_params_22021_fields cal_data_len ath10k_hw_params 0 22021 NULL nohasharray
+buffer_size_nm256_22021_fields buffer_size nm256 0 22021 &cal_data_len_ath10k_hw_params_22021_fields
+GlobalCredits__MSG_IOC_FACTS_REPLY_22031_fields GlobalCredits _MSG_IOC_FACTS_REPLY 0 22031 NULL
-+nv50_dmac_create_fndecl_22035_fields nv50_dmac_create fndecl 6 22035 NULL
+vmw_du_crtc_cursor_set2_fndecl_22036_fields vmw_du_crtc_cursor_set2 fndecl 5-4 22036 NULL
++rtl8723be_c2h_packet_handler_fndecl_22040_fields rtl8723be_c2h_packet_handler fndecl 3 22040 NULL
+dm_exception_store_set_chunk_size_fndecl_22042_fields dm_exception_store_set_chunk_size fndecl 2 22042 NULL
+mmc_queue_map_sg_fndecl_22053_fields mmc_queue_map_sg fndecl 0 22053 NULL
+held_root_thin_disk_superblock_22055_fields held_root thin_disk_superblock 0 22055 NULL
@@ -193863,18 +198520,18 @@ index 0000000..6b5367db
+l2t_start_adapter_22066_fields l2t_start adapter 0 22066 &i2c_wr_max_tda18218_config_22066_fields
+rom_base_qxl_device_22067_fields rom_base qxl_device 0 22067 NULL
+ufs_free_fragments_fndecl_22074_fields ufs_free_fragments fndecl 2 22074 NULL
++sfq_alloc_fndecl_22078_fields sfq_alloc fndecl 1 22078 NULL
+iuu_uart_write_fndecl_22079_fields iuu_uart_write fndecl 4 22079 NULL
+absent_pages_in_range_fndecl_22083_fields absent_pages_in_range fndecl 0-1-2 22083 NULL nohasharray
+rx_ring_size_mlx4_en_port_profile_22083_fields rx_ring_size mlx4_en_port_profile 0 22083 &absent_pages_in_range_fndecl_22083_fields
-+fib_nhs_fib_info_22091_fields fib_nhs fib_info 0 22091 NULL nohasharray
-+err_mlxsw_reg_trans_22091_fields err mlxsw_reg_trans 0 22091 &fib_nhs_fib_info_22091_fields
++err_mlxsw_reg_trans_22091_fields err mlxsw_reg_trans 0 22091 NULL nohasharray
++fib_nhs_fib_info_22091_fields fib_nhs fib_info 0 22091 &err_mlxsw_reg_trans_22091_fields
+horus3a_write_regs_fndecl_22092_fields horus3a_write_regs fndecl 4 22092 NULL
++mgt_response_to_str_fndecl_22094_fields mgt_response_to_str fndecl 0 22094 NULL
+size_drm_i915_gem_pread_22096_fields size drm_i915_gem_pread 0 22096 NULL nohasharray
+frame_seq_number_osst_tape_22096_fields frame_seq_number osst_tape 0 22096 &size_drm_i915_gem_pread_22096_fields
+osd_req_op_extent_update_fndecl_22097_fields osd_req_op_extent_update fndecl 3 22097 NULL
-+allocsz_cfv_info_22104_fields allocsz cfv_info 0 22104 NULL
-+offset_vmcore_22117_fields offset vmcore 0 22117 NULL nohasharray
-+size_perf_output_handle_22117_fields size perf_output_handle 0 22117 &offset_vmcore_22117_fields
++size_perf_output_handle_22117_fields size perf_output_handle 0 22117 NULL
+xfs_da_get_buf_fndecl_22120_fields xfs_da_get_buf fndecl 3 22120 NULL
+qgroup_reserve_fndecl_22126_fields qgroup_reserve fndecl 0 22126 NULL
+small_ttm_pool_opts_22131_fields small ttm_pool_opts 0 22131 NULL nohasharray
@@ -193889,13 +198546,11 @@ index 0000000..6b5367db
+regmap_encx24j600_spi_write_fndecl_22146_fields regmap_encx24j600_spi_write fndecl 4 22146 &svc_rdma_xdr_encode_error_fndecl_22146_fields
+max_cos_bnx2x_22147_fields max_cos bnx2x 0 22147 NULL
+cmd_pipe_uas_dev_info_22148_fields cmd_pipe uas_dev_info 0 22148 NULL
-+seg_size_ib_mad_send_buf_22149_fields seg_size ib_mad_send_buf 0 22149 NULL
-+ppp_cp_event_fndecl_22150_fields ppp_cp_event fndecl 6 22150 NULL
++ppp_cp_event_fndecl_22150_fields ppp_cp_event fndecl 6-2 22150 NULL
+rxq_entries_efx_nic_22154_fields rxq_entries efx_nic 0 22154 NULL
+collect_rx_frame_fndecl_22155_fields collect_rx_frame fndecl 3 22155 NULL
+i40iw_alloc_mr_fndecl_22161_fields i40iw_alloc_mr fndecl 3 22161 NULL
+rs_datalen_ath5k_rx_status_22164_fields rs_datalen ath5k_rx_status 0 22164 NULL
-+tm6000_i2c_recv_regs16_fndecl_22166_fields tm6000_i2c_recv_regs16 fndecl 5 22166 NULL
+set_fast_connectable_fndecl_22171_fields set_fast_connectable fndecl 4 22171 NULL
+name_len_ceph_inode_xattr_22177_fields name_len ceph_inode_xattr 0 22177 NULL
+rts51x_bulk_transport_special_fndecl_22181_fields rts51x_bulk_transport_special fndecl 6 22181 NULL
@@ -193904,7 +198559,6 @@ index 0000000..6b5367db
+sector_packet_data_22197_fields sector packet_data 0 22197 NULL
+length_ntlmssp2_name_22211_fields length ntlmssp2_name 0 22211 NULL
+req_len_brcmf_cfg80211_assoc_ielen_le_22213_fields req_len brcmf_cfg80211_assoc_ielen_le 0 22213 NULL
-+s_len_rvt_qp_22217_fields s_len rvt_qp 0 22217 NULL
+ram_size_async_extent_22219_fields ram_size async_extent 0 22219 NULL nohasharray
+hlen_cxgbit_lro_pdu_cb_22219_fields hlen cxgbit_lro_pdu_cb 0 22219 &ram_size_async_extent_22219_fields
+s_dirsize_minix_sb_info_22225_fields s_dirsize minix_sb_info 0 22225 NULL
@@ -193915,6 +198569,7 @@ index 0000000..6b5367db
+ieee80211_check_pending_bar_fndecl_22244_fields ieee80211_check_pending_bar fndecl 3 22244 NULL
+rf_suballoc_loc_ocfs2_refcount_block_22248_fields rf_suballoc_loc ocfs2_refcount_block 0 22248 NULL
+hfsplus_asc2uni_fndecl_22252_fields hfsplus_asc2uni fndecl 0 22252 NULL
++receive_data_fndecl_22256_fields receive_data fndecl 2 22256 NULL
+bbio_error_fndecl_22264_fields bbio_error fndecl 3 22264 NULL
+usCRTC_V_Total__ATOM_MODE_TIMING_22265_fields usCRTC_V_Total _ATOM_MODE_TIMING 0 22265 NULL
+mangle_contents_fndecl_22272_fields mangle_contents fndecl 4-6 22272 NULL
@@ -193922,18 +198577,18 @@ index 0000000..6b5367db
+reord_tcp_sacktag_state_22281_fields reord tcp_sacktag_state 0 22281 &gtt_total_entries__intel_private_22281_fields
+scif_get_phys_fndecl_22295_fields scif_get_phys fndecl 0-1 22295 NULL
+gfs2_listxattr_fndecl_22298_fields gfs2_listxattr fndecl 3 22298 NULL
-+s_psn_rvt_qp_22305_fields s_psn rvt_qp 0 22305 NULL
-+read_head_n_tty_data_22317_fields read_head n_tty_data 0 22317 NULL nohasharray
-+index_start_nozomi_22317_fields index_start nozomi 0 22317 &read_head_n_tty_data_22317_fields
++read_head_n_tty_data_22317_fields read_head n_tty_data 0 22317 NULL
+swiotlb_late_init_with_default_size_fndecl_22319_fields swiotlb_late_init_with_default_size fndecl 1 22319 NULL
+be_fill_queue_fndecl_22320_fields be_fill_queue fndecl 2 22320 NULL
+vc_size_row_vc_data_22325_fields vc_size_row vc_data 0 22325 NULL
+user_data_len_uioc_22327_fields user_data_len uioc 0 22327 NULL
+atmel_change_mtu_fndecl_22328_fields atmel_change_mtu fndecl 2 22328 NULL
+limit_sfq_sched_data_22334_fields limit sfq_sched_data 0 22334 NULL
++f2fs_getxattr_fndecl_22337_fields f2fs_getxattr fndecl 0 22337 NULL
+verity_hash_final_fndecl_22340_fields verity_hash_final fndecl 0 22340 NULL
+mtu_tipc_link_22341_fields mtu tipc_link 0 22341 NULL
-+svc_recvfrom_fndecl_22345_fields svc_recvfrom fndecl 0-4-3 22345 NULL
++vid_batadv_orig_node_vlan_22342_fields vid batadv_orig_node_vlan 0 22342 NULL
++svc_recvfrom_fndecl_22345_fields svc_recvfrom fndecl 0-4 22345 NULL
+drv_info_size_mwifiex_adapter_22352_fields drv_info_size mwifiex_adapter 0 22352 NULL
+tlv_put_string_fndecl_22356_fields tlv_put_string fndecl 4 22356 NULL
+genwqe_alloc_sync_sgl_fndecl_22358_fields genwqe_alloc_sync_sgl fndecl 4 22358 NULL
@@ -193943,6 +198598,7 @@ index 0000000..6b5367db
+digi_write_fndecl_22372_fields digi_write fndecl 4 22372 NULL
+nr_luns_rrpc_22379_fields nr_luns rrpc 0 22379 NULL
+exposure_step_sd_22386_fields exposure_step sd 0 22386 NULL
++ecc_size_persistent_ram_ecc_info_22390_fields ecc_size persistent_ram_ecc_info 0 22390 NULL
+phys_lcr_base_mgsl_struct_22391_fields phys_lcr_base mgsl_struct 0 22391 NULL
+m25p80_write_fndecl_22392_fields m25p80_write fndecl 3 22392 NULL
+clipt_end_adapter_22397_fields clipt_end adapter 0 22397 NULL
@@ -193956,33 +198612,33 @@ index 0000000..6b5367db
+max_ccb_vardecl_hpilo_c_22414_fields max_ccb vardecl_hpilo.c 0 22414 NULL
+oti6858_write_fndecl_22423_fields oti6858_write fndecl 4 22423 NULL
+bbRcvSizeMsb_csp_22425_fields bbRcvSizeMsb csp 0 22425 NULL
++nfc_llcp_send_ui_frame_fndecl_22429_fields nfc_llcp_send_ui_frame fndecl 5 22429 NULL
+add_size_pci_dev_resource_22434_fields add_size pci_dev_resource 0 22434 NULL
-+vxlan_build_skb_fndecl_22447_fields vxlan_build_skb fndecl 3 22447 NULL
++vxlan_build_skb_fndecl_22447_fields vxlan_build_skb fndecl 3 22447 NULL nohasharray
++do_send_fragment_fndecl_22447_fields do_send_fragment fndecl 3 22447 &vxlan_build_skb_fndecl_22447_fields
+frame_len_ksz_desc_rx_stat_22454_fields frame_len ksz_desc_rx_stat 0 22454 NULL
+ntfs_attr_vcn_to_lcn_nolock_fndecl_22455_fields ntfs_attr_vcn_to_lcn_nolock fndecl 2 22455 NULL
-+oid_printf_vargs_fndecl_22457_fields oid_printf_vargs fndecl 0 22457 NULL nohasharray
-+llc_ui_recvmsg_fndecl_22457_fields llc_ui_recvmsg fndecl 3 22457 &oid_printf_vargs_fndecl_22457_fields
++llc_ui_recvmsg_fndecl_22457_fields llc_ui_recvmsg fndecl 3 22457 NULL nohasharray
++oid_printf_vargs_fndecl_22457_fields oid_printf_vargs fndecl 0 22457 &llc_ui_recvmsg_fndecl_22457_fields
+mon_bin_ioctl_fndecl_22464_fields mon_bin_ioctl fndecl 3 22464 NULL nohasharray
+ceph_zero_pagecache_range_fndecl_22464_fields ceph_zero_pagecache_range fndecl 3-2 22464 &mon_bin_ioctl_fndecl_22464_fields
+s35390a_set_reg_fndecl_22468_fields s35390a_set_reg fndecl 4 22468 NULL
+vmbus_sendpacket_fndecl_22469_fields vmbus_sendpacket fndecl 3 22469 NULL
+s_data_blksize_affs_sb_info_22478_fields s_data_blksize affs_sb_info 0 22478 NULL
-+vram_size_aty128fb_par_22489_fields vram_size aty128fb_par 0 22489 NULL nohasharray
-+hid_report_raw_event_fndecl_22489_fields hid_report_raw_event fndecl 4 22489 &vram_size_aty128fb_par_22489_fields
++vram_size_aty128fb_par_22489_fields vram_size aty128fb_par 0 22489 NULL
+find_group_other_fndecl_22490_fields find_group_other fndecl 0 22490 NULL
+offset_rbd_img_request_22494_fields offset rbd_img_request 0 22494 NULL
+tx_hr_cfv_info_22495_fields tx_hr cfv_info 0 22495 NULL
+size_drm_virtgpu_execbuffer_22498_fields size drm_virtgpu_execbuffer 0 22498 NULL
+hiface_pcm_init_urb_fndecl_22500_fields hiface_pcm_init_urb fndecl 3 22500 NULL
-+irq_bcma_device_22505_fields irq bcma_device 0 22505 NULL
+ctx_len_xfrm_sec_ctx_22511_fields ctx_len xfrm_sec_ctx 0 22511 NULL
-+total_cnt_i40iw_pble_alloc_22514_fields total_cnt i40iw_pble_alloc 0 22514 NULL nohasharray
-+h_mode_size_22514_fields h mode_size 0 22514 &total_cnt_i40iw_pble_alloc_22514_fields
++h_mode_size_22514_fields h mode_size 0 22514 NULL nohasharray
++total_cnt_i40iw_pble_alloc_22514_fields total_cnt i40iw_pble_alloc 0 22514 &h_mode_size_22514_fields
+ls_lvblen_dlm_ls_22525_fields ls_lvblen dlm_ls 0 22525 NULL
+ocfs2_bg_discontig_add_extent_fndecl_22531_fields ocfs2_bg_discontig_add_extent fndecl 4 22531 NULL
+pci_iomap_wc_range_fndecl_22536_fields pci_iomap_wc_range fndecl 4-3 22536 NULL
-+eq_cnt_ocrdma_dev_22537_fields eq_cnt ocrdma_dev 0 22537 NULL
-+last_checkpoint_r5l_log_22540_fields last_checkpoint r5l_log 0 22540 NULL
++drm_rect_rotate_fndecl_22540_fields drm_rect_rotate fndecl 2-3 22540 NULL nohasharray
++last_checkpoint_r5l_log_22540_fields last_checkpoint r5l_log 0 22540 &drm_rect_rotate_fndecl_22540_fields
+submit_queue_fndecl_22542_fields submit_queue fndecl 5 22542 NULL
+clsb_isar_reg_22551_fields clsb isar_reg 0 22551 NULL
+sadb_x_ctx_len_sadb_x_sec_ctx_22553_fields sadb_x_ctx_len sadb_x_sec_ctx 0 22553 NULL
@@ -193991,11 +198647,13 @@ index 0000000..6b5367db
+carl9170_rx_stream_fndecl_22565_fields carl9170_rx_stream fndecl 3 22565 NULL
+fsync_file_operations_22566_fields fsync file_operations 0 22566 NULL
+burst_fsl_edma_slave_config_22570_fields burst fsl_edma_slave_config 0 22570 NULL
++adc12138_mode_programming_fndecl_22579_fields adc12138_mode_programming fndecl 4 22579 NULL
+id_rfcomm_dev_22580_fields id rfcomm_dev 0 22580 NULL
+qlcnic_pci_sriov_configure_fndecl_22588_fields qlcnic_pci_sriov_configure fndecl 2 22588 NULL nohasharray
+rx_queue_size_pxa168_eth_platform_data_22588_fields rx_queue_size pxa168_eth_platform_data 0 22588 &qlcnic_pci_sriov_configure_fndecl_22588_fields
+scif_rb_get_next_fndecl_22601_fields scif_rb_get_next fndecl 3 22601 NULL
+tx_data_max_size_sst_generic_ipc_22604_fields tx_data_max_size sst_generic_ipc 0 22604 NULL
++brcmf_fil_cmd_data_get_fndecl_22605_fields brcmf_fil_cmd_data_get fndecl 4 22605 NULL
+maxauthsize_aead_alg_22608_fields maxauthsize aead_alg 0 22608 NULL nohasharray
+btrfs_submit_compressed_write_fndecl_22608_fields btrfs_submit_compressed_write fndecl 4 22608 &maxauthsize_aead_alg_22608_fields
+count_mspro_attribute_22612_fields count mspro_attribute 0 22612 NULL
@@ -194006,14 +198664,13 @@ index 0000000..6b5367db
+length_obj_key_22626_fields length obj_key 0 22626 NULL
+n_compat_sel_arg_struct_22628_fields n compat_sel_arg_struct 0 22628 NULL
+hci_si_event_fndecl_22639_fields hci_si_event fndecl 3 22639 NULL
-+scif_vwriteto_fndecl_22640_fields scif_vwriteto fndecl 4-3 22640 NULL
++scif_vwriteto_fndecl_22640_fields scif_vwriteto fndecl 3-4 22640 NULL
+num_rcv_bufs_visornic_devdata_22643_fields num_rcv_bufs visornic_devdata 0 22643 NULL
+queue_size_snd_timer_params_22646_fields queue_size snd_timer_params 0 22646 NULL
+do_msgsnd_fndecl_22648_fields do_msgsnd fndecl 4 22648 NULL
+isight_decode_fndecl_22650_fields isight_decode fndecl 4 22650 NULL
+sample_rate_usb_stream_config_22662_fields sample_rate usb_stream_config 0 22662 NULL
+sw_start_stm_data_22665_fields sw_start stm_data 0 22665 NULL
-+pointer_kmemleak_object_22670_fields pointer kmemleak_object 0 22670 NULL
+ieee80211_mesh_rx_bcn_presp_fndecl_22678_fields ieee80211_mesh_rx_bcn_presp fndecl 4 22678 NULL
+fbcon_redraw_softback_fndecl_22679_fields fbcon_redraw_softback fndecl 3 22679 NULL
+vlan_tag_bnx2x_agg_info_22683_fields vlan_tag bnx2x_agg_info 0 22683 NULL
@@ -194023,9 +198680,10 @@ index 0000000..6b5367db
+qca_recv_fndecl_22690_fields qca_recv fndecl 3 22690 NULL
+ctl_dma_yealink_dev_22696_fields ctl_dma yealink_dev 0 22696 NULL
+len_vring_desc_22700_fields len vring_desc 0 22700 NULL
++supplies_count_gb_power_supplies_22705_fields supplies_count gb_power_supplies 0 22705 NULL
+alloc_vudc_device_fndecl_22709_fields alloc_vudc_device fndecl 1 22709 NULL
+brcmf_sdio_read_control_fndecl_22712_fields brcmf_sdio_read_control fndecl 3 22712 NULL
-+scif_rb_write_fndecl_22718_fields scif_rb_write fndecl 3 22718 NULL
++scif_rb_write_fndecl_22718_fields scif_rb_write fndecl 0-3 22718 NULL
+tail_inbuf_t_22719_fields tail inbuf_t 0 22719 NULL nohasharray
+fc_trace_max_entries_vardecl_fnic_trace_c_22719_fields fc_trace_max_entries vardecl_fnic_trace.c 0 22719 &tail_inbuf_t_22719_fields
+SMB2_ioctl_fndecl_22721_fields SMB2_ioctl fndecl 8 22721 NULL
@@ -194038,6 +198696,8 @@ index 0000000..6b5367db
+num_fcoe_qps_i40e_pf_22740_fields num_fcoe_qps i40e_pf 0 22740 NULL
+iwlagn_pass_packet_to_mac80211_fndecl_22746_fields iwlagn_pass_packet_to_mac80211 fndecl 3 22746 NULL
+rambase_brcmf_chip_22773_fields rambase brcmf_chip 0 22773 NULL
++efi_memmap_alloc_fndecl_22776_fields efi_memmap_alloc fndecl 1-0 22776 NULL
++ndr_mappings_nd_region_22782_fields ndr_mappings nd_region 0 22782 NULL
+orig_video_cols_screen_info_22783_fields orig_video_cols screen_info 0 22783 NULL
+submit_bh_wbc_fndecl_22789_fields submit_bh_wbc fndecl 0 22789 NULL
+reqsize_akcipher_alg_22792_fields reqsize akcipher_alg 0 22792 NULL
@@ -194047,15 +198707,18 @@ index 0000000..6b5367db
+my_inptr_vardecl_initramfs_c_22809_fields my_inptr vardecl_initramfs.c 0 22809 NULL
+aper_size_amdgpu_mc_22824_fields aper_size amdgpu_mc 0 22824 NULL
+tx_size_uart_8250_dma_22825_fields tx_size uart_8250_dma 0 22825 NULL
++virtio_transport_alloc_pkt_fndecl_22828_fields virtio_transport_alloc_pkt fndecl 2 22828 NULL
+gigaset_initdriver_fndecl_22839_fields gigaset_initdriver fndecl 1 22839 NULL
+lan78xx_change_mtu_fndecl_22844_fields lan78xx_change_mtu fndecl 2 22844 NULL
+sys_mremap_fndecl_22848_fields sys_mremap fndecl 5-3-1-2 22848 NULL nohasharray
+clean_io_failure_fndecl_22848_fields clean_io_failure fndecl 4 22848 &sys_mremap_fndecl_22848_fields
++nau8825_set_sysclk_fndecl_22849_fields nau8825_set_sysclk fndecl 4 22849 NULL
+rlen_si2168_cmd_22851_fields rlen si2168_cmd 0 22851 NULL
+var2_apei_exec_context_22852_fields var2 apei_exec_context 0 22852 NULL
+utf8s_to_utf16s_fndecl_22856_fields utf8s_to_utf16s fndecl 0 22856 NULL
+size_proc_dir_entry_22859_fields size proc_dir_entry 0 22859 NULL
-+test_eb_bitmaps_fndecl_22861_fields test_eb_bitmaps fndecl 2 22861 NULL
++test_eb_bitmaps_fndecl_22861_fields test_eb_bitmaps fndecl 1-2 22861 NULL
++sst_fill_and_send_cmd_unlocked_fndecl_22862_fields sst_fill_and_send_cmd_unlocked fndecl 7 22862 NULL
+xs_sendpages_fndecl_22864_fields xs_sendpages fndecl 5 22864 NULL
+hpfs_get_block_fndecl_22865_fields hpfs_get_block fndecl 2 22865 NULL
+usCRTC_H_SyncStart__ATOM_MODE_TIMING_22868_fields usCRTC_H_SyncStart _ATOM_MODE_TIMING 0 22868 NULL
@@ -194063,13 +198726,14 @@ index 0000000..6b5367db
+enc28j60_mem_read_fndecl_22875_fields enc28j60_mem_read fndecl 3 22875 NULL
+count_nfs3_readdirargs_22881_fields count nfs3_readdirargs 0 22881 NULL
+len_prism2_download_area_22884_fields len prism2_download_area 0 22884 NULL
++length_usbtest_param_32_22886_fields length usbtest_param_32 0 22886 NULL
+frag_len_atmel_private_22893_fields frag_len atmel_private 0 22893 NULL
+snap_names_len_rbd_image_header_ondisk_22898_fields snap_names_len rbd_image_header_ondisk 0 22898 NULL
+ima_post_read_file_fndecl_22903_fields ima_post_read_file fndecl 3 22903 NULL nohasharray
+lpfc_fcp_io_channel_init_fndecl_22903_fields lpfc_fcp_io_channel_init fndecl 2 22903 &ima_post_read_file_fndecl_22903_fields
+count_ioctl_gntdev_map_grant_ref_22904_fields count ioctl_gntdev_map_grant_ref 0 22904 NULL
-+num_y_edt_ft5x06_ts_data_22905_fields num_y edt_ft5x06_ts_data 0 22905 NULL
+membase_phys_efx_nic_22907_fields membase_phys efx_nic 0 22907 NULL
++vmalloc_32_fndecl_22908_fields vmalloc_32 fndecl 1 22908 NULL
+cfg80211_report_obss_beacon_fndecl_22910_fields cfg80211_report_obss_beacon fndecl 3 22910 NULL
+tty_audit_log_fndecl_22915_fields tty_audit_log fndecl 4 22915 NULL
+len_policy_load_memory_22916_fields len policy_load_memory 0 22916 NULL
@@ -194083,20 +198747,21 @@ index 0000000..6b5367db
+num_counters_ip6t_replace_22944_fields num_counters ip6t_replace 0 22944 NULL
+bulk_out_usbatm_driver_22950_fields bulk_out usbatm_driver 0 22950 NULL
+al_stripe_size_4k_drbd_md_22954_fields al_stripe_size_4k drbd_md 0 22954 NULL
++cp210x_quantise_baudrate_fndecl_22961_fields cp210x_quantise_baudrate fndecl 0-1 22961 NULL
+osd_full_h_yuv_playback_info_22967_fields osd_full_h yuv_playback_info 0 22967 NULL
+data_swap_cluster_info_22969_fields data swap_cluster_info 0 22969 NULL
+i2400m_rx_ctl_ack_fndecl_22972_fields i2400m_rx_ctl_ack fndecl 3 22972 NULL
+nilfs_palloc_init_blockgroup_fndecl_22978_fields nilfs_palloc_init_blockgroup fndecl 2 22978 NULL
+do_mmap_fndecl_22981_fields do_mmap fndecl 3-0-7 22981 NULL
+max_pkt_size_stk1160_isoc_ctl_22983_fields max_pkt_size stk1160_isoc_ctl 0 22983 NULL
-+sector_size_flash_info_22990_fields sector_size flash_info 0 22990 NULL nohasharray
-+snd_hdac_read_fndecl_22990_fields snd_hdac_read fndecl 0 22990 &sector_size_flash_info_22990_fields
++sector_size_flash_info_22990_fields sector_size flash_info 0 22990 NULL
+p54spi_spi_write_fndecl_22994_fields p54spi_spi_write fndecl 4 22994 NULL
+size_wil_memio_block_22999_fields size wil_memio_block 0 22999 NULL nohasharray
-+total_xfs_da_args_22999_fields total xfs_da_args 0 22999 &size_wil_memio_block_22999_fields
++total_xfs_da_args_22999_fields total xfs_da_args 0 22999 &size_wil_memio_block_22999_fields nohasharray
++generic_file_splice_read_fndecl_22999_fields generic_file_splice_read fndecl 4 22999 &total_xfs_da_args_22999_fields
+ipw_packet_received_skb_fndecl_23005_fields ipw_packet_received_skb fndecl 2 23005 NULL
+pos_coredump_params_23014_fields pos coredump_params 0 23014 NULL
-+memblock_alloc_range_fndecl_23015_fields memblock_alloc_range fndecl 2-3-4 23015 NULL nohasharray
++memblock_alloc_range_fndecl_23015_fields memblock_alloc_range fndecl 2-1-3-4 23015 NULL nohasharray
+fb_height_drm_fb_helper_surface_size_23015_fields fb_height drm_fb_helper_surface_size 0 23015 &memblock_alloc_range_fndecl_23015_fields nohasharray
+desc_size_data_queue_23015_fields desc_size data_queue 0 23015 &fb_height_drm_fb_helper_surface_size_23015_fields nohasharray
+tx_size_iscsi_cmd_23015_fields tx_size iscsi_cmd 0 23015 &desc_size_data_queue_23015_fields
@@ -194115,6 +198780,7 @@ index 0000000..6b5367db
+ueth_change_mtu_fndecl_23057_fields ueth_change_mtu fndecl 2 23057 NULL
+agp_base_radeon_mc_23066_fields agp_base radeon_mc 0 23066 NULL nohasharray
+fe_start_ext4_free_extent_23066_fields fe_start ext4_free_extent 0 23066 &agp_base_radeon_mc_23066_fields
++scif_rb_count_fndecl_23076_fields scif_rb_count fndecl 0 23076 NULL
+fm10k_iov_configure_fndecl_23078_fields fm10k_iov_configure fndecl 2 23078 NULL
+ext_ofs_sym_ccb_23085_fields ext_ofs sym_ccb 0 23085 NULL
+devfn_pci_dev_23093_fields devfn pci_dev 0 23093 NULL
@@ -194122,7 +198788,6 @@ index 0000000..6b5367db
+s_cluster_ratio_ext4_sb_info_23095_fields s_cluster_ratio ext4_sb_info 0 23095 &l2_len_ovs_frag_data_23095_fields
+qla27xx_fwdt_template_default_size_fndecl_23103_fields qla27xx_fwdt_template_default_size fndecl 0 23103 NULL
+__minimum_chunk_size_fndecl_23105_fields __minimum_chunk_size fndecl 0 23105 NULL
-+max_elts_tracing_map_23116_fields max_elts tracing_map 0 23116 NULL
+aim_vdev_read_fndecl_23120_fields aim_vdev_read fndecl 3 23120 NULL
+xfs_rmap_unmap_fndecl_23123_fields xfs_rmap_unmap fndecl 0 23123 NULL nohasharray
+sq_max_sges_c4iw_qp_attributes_23123_fields sq_max_sges c4iw_qp_attributes 0 23123 &xfs_rmap_unmap_fndecl_23123_fields
@@ -194137,30 +198802,28 @@ index 0000000..6b5367db
+isdn_audio_xlaw2adpcm_fndecl_23162_fields isdn_audio_xlaw2adpcm fndecl 0 23162 NULL
+gfs2_xattr_set_fndecl_23165_fields gfs2_xattr_set fndecl 6 23165 NULL
+width_linux_logo_23166_fields width linux_logo 0 23166 NULL
-+memblock_alloc_base_fndecl_23169_fields memblock_alloc_base fndecl 2-0-3 23169 NULL nohasharray
++memblock_alloc_base_fndecl_23169_fields memblock_alloc_base fndecl 2-1-0-3 23169 NULL nohasharray
+MaxIoCommands_aac_init_23169_fields MaxIoCommands aac_init 0 23169 &memblock_alloc_base_fndecl_23169_fields
+xfs_sb_verify_fndecl_23173_fields xfs_sb_verify fndecl 0 23173 NULL
-+cyttsp_probe_fndecl_23175_fields cyttsp_probe fndecl 4 23175 NULL
+x_res_vbe_mode_ib_23177_fields x_res vbe_mode_ib 0 23177 NULL
+udf_current_aext_fndecl_23183_fields udf_current_aext fndecl 0 23183 NULL
+__reuseport_alloc_fndecl_23190_fields __reuseport_alloc fndecl 1 23190 NULL
+seq_lseek_fndecl_23197_fields seq_lseek fndecl 2 23197 NULL
+offs_aim_fh_23201_fields offs aim_fh 0 23201 NULL
+read_swap_header_fndecl_23222_fields read_swap_header fndecl 0 23222 NULL
-+vid_hdr_offset_ubi_device_23225_fields vid_hdr_offset ubi_device 0 23225 NULL nohasharray
-+clk_core_get_rate_fndecl_23225_fields clk_core_get_rate fndecl 0 23225 &vid_hdr_offset_ubi_device_23225_fields
++clk_core_get_rate_fndecl_23225_fields clk_core_get_rate fndecl 0 23225 NULL nohasharray
++vid_hdr_offset_ubi_device_23225_fields vid_hdr_offset ubi_device 0 23225 &clk_core_get_rate_fndecl_23225_fields
+xfs_defer_finish_fndecl_23226_fields xfs_defer_finish fndecl 0 23226 NULL
+win_size_tool_mw_23227_fields win_size tool_mw 0 23227 NULL
+nvkm_client_map_fndecl_23228_fields nvkm_client_map fndecl 3-2 23228 NULL
+ubifs_prep_grp_node_fndecl_23231_fields ubifs_prep_grp_node fndecl 3 23231 NULL
+sb_min_blocksize_fndecl_23239_fields sb_min_blocksize fndecl 0-2 23239 NULL
++num_rxd_rx_ring_config_23240_fields num_rxd rx_ring_config 0 23240 NULL
+dir_per_block_bits_msdos_sb_info_23245_fields dir_per_block_bits msdos_sb_info 0 23245 NULL
+ksm_madvise_fndecl_23247_fields ksm_madvise fndecl 2 23247 NULL
+__alloc_bootmem_node_fndecl_23259_fields __alloc_bootmem_node fndecl 3-4 23259 NULL
-+ndescs_gpio_descs_23267_fields ndescs gpio_descs 0 23267 NULL
-+devm_ioremap_nocache_fndecl_23271_fields devm_ioremap_nocache fndecl 3-2 23271 NULL nohasharray
-+bufblocks_vardecl_saa6588_c_23271_fields bufblocks vardecl_saa6588.c 0 23271 &devm_ioremap_nocache_fndecl_23271_fields
-+cifs_read_fndecl_23274_fields cifs_read fndecl 3 23274 NULL
++avc_data_length_firedtv_23266_fields avc_data_length firedtv 0 23266 NULL
++devm_ioremap_nocache_fndecl_23271_fields devm_ioremap_nocache fndecl 3-2 23271 NULL
+udf_table_new_block_fndecl_23276_fields udf_table_new_block fndecl 0 23276 NULL
+start_blkpg_partition_23281_fields start blkpg_partition 0 23281 NULL
+n_tty_receive_buf2_fndecl_23286_fields n_tty_receive_buf2 fndecl 4 23286 NULL
@@ -194169,19 +198832,19 @@ index 0000000..6b5367db
+vtbl_slots_ubi_device_23293_fields vtbl_slots ubi_device 0 23293 NULL
+get_node_info_fndecl_23296_fields get_node_info fndecl 2 23296 NULL
+fnic_get_trace_data_fndecl_23305_fields fnic_get_trace_data fndecl 0 23305 NULL
++transfersize_scsi_cmnd_23314_fields transfersize scsi_cmnd 0 23314 NULL
+s_blocks_per_segment_nilfs_super_block_23318_fields s_blocks_per_segment nilfs_super_block 0 23318 NULL
+max_send_sge_ocrdma_dev_attr_23321_fields max_send_sge ocrdma_dev_attr 0 23321 NULL
+naces_nfs4_acl_23334_fields naces nfs4_acl 0 23334 NULL
-+max_wr_rd_sge_ocrdma_mbx_query_config_23340_fields max_wr_rd_sge ocrdma_mbx_query_config 0 23340 NULL nohasharray
-+num_outputs_clkgena_divmux_data_23340_fields num_outputs clkgena_divmux_data 0 23340 &max_wr_rd_sge_ocrdma_mbx_query_config_23340_fields
++max_wr_rd_sge_ocrdma_mbx_query_config_23340_fields max_wr_rd_sge ocrdma_mbx_query_config 0 23340 NULL
+max_header_size_tsap_cb_23342_fields max_header_size tsap_cb 0 23342 NULL
-+compat_sys_vmsplice_fndecl_23344_fields compat_sys_vmsplice fndecl 3 23344 NULL
+mark_block_processed_fndecl_23353_fields mark_block_processed fndecl 3-2 23353 NULL nohasharray
+pci_iov_virtfn_devfn_fndecl_23353_fields pci_iov_virtfn_devfn fndecl 0-2 23353 &mark_block_processed_fndecl_23353_fields
+vxres_crtc_23359_fields vxres crtc 0 23359 NULL
+v9fs_fid_xattr_get_fndecl_23361_fields v9fs_fid_xattr_get fndecl 4 23361 NULL
+default_blksize_st_modedef_23371_fields default_blksize st_modedef 0 23371 NULL
+kernel_map_sync_memtype_fndecl_23381_fields kernel_map_sync_memtype fndecl 1 23381 NULL
++atomic_cdclk_freq_drm_i915_private_23382_fields atomic_cdclk_freq drm_i915_private 0 23382 NULL
+length_dmi_header_23383_fields length dmi_header 0 23383 NULL
+pcpu_atom_size_vardecl_percpu_c_23384_fields pcpu_atom_size vardecl_percpu.c 0 23384 NULL
+sf_entsize_xfs_dir_ops_23386_fields sf_entsize xfs_dir_ops 0 23386 NULL nohasharray
@@ -194192,35 +198855,36 @@ index 0000000..6b5367db
+xfs_alloc_file_space_fndecl_23394_fields xfs_alloc_file_space fndecl 2-3 23394 NULL
+de_name_len_gfs2_dirent_23398_fields de_name_len gfs2_dirent 0 23398 NULL
+max_cmds_ips_ha_23401_fields max_cmds ips_ha 0 23401 NULL
++map_block_for_writepage_fndecl_23405_fields map_block_for_writepage fndecl 3 23405 NULL
+max_socks_sock_reuseport_23407_fields max_socks sock_reuseport 0 23407 NULL
+nx_fw_cmd_set_gbe_port_fndecl_23412_fields nx_fw_cmd_set_gbe_port fndecl 3 23412 NULL
+cifs_write_end_fndecl_23416_fields cifs_write_end fndecl 5 23416 NULL
+max_snd_interval_23422_fields max snd_interval 0 23422 NULL
+__qib_get_user_pages_fndecl_23426_fields __qib_get_user_pages fndecl 1 23426 NULL
++read_size_vz89x_chip_data_23430_fields read_size vz89x_chip_data 0 23430 NULL
++log_size_mlx5_srq_attr_23431_fields log_size mlx5_srq_attr 0 23431 NULL
+ftdi_instances_vardecl_ftdi_elan_c_23438_fields ftdi_instances vardecl_ftdi-elan.c 0 23438 NULL
-+set_xfer_rate_fndecl_23440_fields set_xfer_rate fndecl 2 23440 NULL
+seg_size_wa_xfer_23450_fields seg_size wa_xfer 0 23450 NULL
+name_len_ocfs2_dir_entry_23452_fields name_len ocfs2_dir_entry 0 23452 NULL
+virtio_transport_stream_dequeue_fndecl_23453_fields virtio_transport_stream_dequeue fndecl 3 23453 NULL
-+nct6775_create_attr_group_fndecl_23454_fields nct6775_create_attr_group fndecl 3 23454 NULL
-+max_size_virtio_gpu_drv_capset_23460_fields max_size virtio_gpu_drv_capset 0 23460 NULL
++max_size_virtio_gpu_drv_capset_23460_fields max_size virtio_gpu_drv_capset 0 23460 NULL nohasharray
++size_mwifiex_opt_sleep_confirm_23460_fields size mwifiex_opt_sleep_confirm 0 23460 &max_size_virtio_gpu_drv_capset_23460_fields
++get_user_pages_fndecl_23467_fields get_user_pages fndecl 0-1 23467 NULL
+rsi_sdio_write_register_multiple_fndecl_23471_fields rsi_sdio_write_register_multiple fndecl 4 23471 NULL
+offset_ttm_bus_placement_23475_fields offset ttm_bus_placement 0 23475 NULL
+coda_psdev_write_fndecl_23484_fields coda_psdev_write fndecl 3 23484 NULL
+control_skge_rx_desc_23486_fields control skge_rx_desc 0 23486 NULL
-+egr_sz_sge_23500_fields egr_sz sge 0 23500 NULL
+mxt_read_and_process_messages_fndecl_23502_fields mxt_read_and_process_messages fndecl 2-0 23502 NULL
-+rxHeader2_edgeport_serial_23525_fields rxHeader2 edgeport_serial 0 23525 NULL
-+s_cur_size_rvt_qp_23528_fields s_cur_size rvt_qp 0 23528 NULL
+pf_tids_total_qed_tm_iids_23535_fields pf_tids_total qed_tm_iids 0 23535 NULL
+offset_crypto_cts_reqctx_23536_fields offset crypto_cts_reqctx 0 23536 NULL
+ieee80211_new_mesh_header_fndecl_23538_fields ieee80211_new_mesh_header fndecl 0 23538 NULL
+ring_size_per_user_data_23539_fields ring_size per_user_data 0 23539 NULL
+FbUsableSize_nvidia_par_23541_fields FbUsableSize nvidia_par 0 23541 NULL
++msi_capability_init_fndecl_23543_fields msi_capability_init fndecl 2-0 23543 NULL
+ebt_size_mwt_fndecl_23547_fields ebt_size_mwt fndecl 0 23547 NULL
+ufs_inode_getblock_fndecl_23550_fields ufs_inode_getblock fndecl 4-3-2-0 23550 NULL
-+n_fields_tracing_map_23556_fields n_fields tracing_map 0 23556 NULL nohasharray
-+ast_fbdev_set_base_fndecl_23556_fields ast_fbdev_set_base fndecl 2 23556 &n_fields_tracing_map_23556_fields
++xfs_refcount_split_extent_fndecl_23555_fields xfs_refcount_split_extent fndecl 2 23555 NULL
++ast_fbdev_set_base_fndecl_23556_fields ast_fbdev_set_base fndecl 2 23556 NULL
+xfs_dabuf_map_fndecl_23558_fields xfs_dabuf_map fndecl 2 23558 NULL
+p_chmask_f_uac2_opts_23559_fields p_chmask f_uac2_opts 0 23559 NULL
+bdx_change_mtu_fndecl_23561_fields bdx_change_mtu fndecl 2 23561 NULL nohasharray
@@ -194229,8 +198893,7 @@ index 0000000..6b5367db
+secblob_len_cifs_spnego_msg_23580_fields secblob_len cifs_spnego_msg 0 23580 NULL
+rx_max_size_cxgbi_device_23582_fields rx_max_size cxgbi_device 0 23582 NULL
+resource_length_aml_resource_large_header_23584_fields resource_length aml_resource_large_header 0 23584 NULL
-+nr_devices_ssb_bus_23589_fields nr_devices ssb_bus 0 23589 NULL nohasharray
-+platform_device_add_data_fndecl_23589_fields platform_device_add_data fndecl 3 23589 &nr_devices_ssb_bus_23589_fields
++nr_devices_ssb_bus_23589_fields nr_devices ssb_bus 0 23589 NULL
+hugetlb_no_page_fndecl_23597_fields hugetlb_no_page fndecl 5 23597 NULL
+c67x00_probe_sie_fndecl_23602_fields c67x00_probe_sie fndecl 3 23602 NULL
+mthca_alloc_icm_pages_fndecl_23615_fields mthca_alloc_icm_pages fndecl 2 23615 NULL
@@ -194248,10 +198911,11 @@ index 0000000..6b5367db
+piobcnt4k_qib_devdata_23655_fields piobcnt4k qib_devdata 0 23655 NULL
+viafb_bpp1_vardecl_viafbdev_c_23657_fields viafb_bpp1 vardecl_viafbdev.c 0 23657 NULL
+cmtp_send_interopmsg_fndecl_23659_fields cmtp_send_interopmsg fndecl 7 23659 NULL
-+reg_list_size_bytes_rlc_firmware_header_v2_0_23660_fields reg_list_size_bytes rlc_firmware_header_v2_0 0 23660 NULL nohasharray
-+elem_count_mlxsw_pci_queue_ops_23660_fields elem_count mlxsw_pci_queue_ops 0 23660 &reg_list_size_bytes_rlc_firmware_header_v2_0_23660_fields nohasharray
-+unix_stream_sendpage_fndecl_23660_fields unix_stream_sendpage fndecl 4-3 23660 &elem_count_mlxsw_pci_queue_ops_23660_fields
++unix_stream_sendpage_fndecl_23660_fields unix_stream_sendpage fndecl 3-4 23660 NULL nohasharray
++elem_count_mlxsw_pci_queue_ops_23660_fields elem_count mlxsw_pci_queue_ops 0 23660 &unix_stream_sendpage_fndecl_23660_fields nohasharray
++reg_list_size_bytes_rlc_firmware_header_v2_0_23660_fields reg_list_size_bytes rlc_firmware_header_v2_0 0 23660 &elem_count_mlxsw_pci_queue_ops_23660_fields
+fat_length_msdos_sb_info_23672_fields fat_length msdos_sb_info 0 23672 NULL
++mlx5_core_access_reg_fndecl_23674_fields mlx5_core_access_reg fndecl 3-5 23674 NULL
+xfs_get_blocks_fndecl_23679_fields xfs_get_blocks fndecl 2 23679 NULL nohasharray
+__send_discard_fndecl_23679_fields __send_discard fndecl 0 23679 &xfs_get_blocks_fndecl_23679_fields
+xfs_ialloc_next_ag_fndecl_23680_fields xfs_ialloc_next_ag fndecl 0 23680 NULL
@@ -194282,39 +198946,39 @@ index 0000000..6b5367db
+tail_p9_rdir_23781_fields tail p9_rdir 0 23781 NULL
+count_uvc_debugfs_buffer_23783_fields count uvc_debugfs_buffer 0 23783 NULL
+nr_kvm_irq_routing_23794_fields nr kvm_irq_routing 0 23794 NULL
-+ubi_attach_mtd_dev_fndecl_23797_fields ubi_attach_mtd_dev fndecl 3 23797 NULL nohasharray
-+parity_devs_raid_type_23797_fields parity_devs raid_type 0 23797 &ubi_attach_mtd_dev_fndecl_23797_fields
++parity_devs_raid_type_23797_fields parity_devs raid_type 0 23797 NULL nohasharray
++ubi_attach_mtd_dev_fndecl_23797_fields ubi_attach_mtd_dev fndecl 3 23797 &parity_devs_raid_type_23797_fields
+free_tiger_ch_23798_fields free tiger_ch 0 23798 NULL
+ra_offset_xfs_dir2_leaf_map_info_23799_fields ra_offset xfs_dir2_leaf_map_info 0 23799 NULL
++nr_node_ids_vardecl_23803_fields nr_node_ids vardecl 0 23803 NULL
+sctp_skb_pull_fndecl_23806_fields sctp_skb_pull fndecl 2-0 23806 NULL
+cdrom_read_cdda_bpc_fndecl_23812_fields cdrom_read_cdda_bpc fndecl 4 23812 NULL
-+carl9170_alloc_fndecl_23816_fields carl9170_alloc fndecl 1 23816 NULL
-+dma_tx_size_sxgbe_priv_data_23821_fields dma_tx_size sxgbe_priv_data 0 23821 NULL
+ocfs2_get_refcount_tree_fndecl_23824_fields ocfs2_get_refcount_tree fndecl 2 23824 NULL
+intel_fake_agp_alloc_by_type_fndecl_23826_fields intel_fake_agp_alloc_by_type fndecl 1 23826 NULL nohasharray
+nbytes_ahash_request_23826_fields nbytes ahash_request 0 23826 &intel_fake_agp_alloc_by_type_fndecl_23826_fields
-+bios_hardcoded_edid_size_radeon_mode_info_23827_fields bios_hardcoded_edid_size radeon_mode_info 0 23827 NULL nohasharray
-+__xfs_dir3_free_read_fndecl_23827_fields __xfs_dir3_free_read fndecl 3 23827 &bios_hardcoded_edid_size_radeon_mode_info_23827_fields
++__xfs_dir3_free_read_fndecl_23827_fields __xfs_dir3_free_read fndecl 3 23827 NULL
+vbi_v_stop_0_saa7134_tvnorm_23830_fields vbi_v_stop_0 saa7134_tvnorm 0 23830 NULL nohasharray
+t4_fl_pkt_align_fndecl_23830_fields t4_fl_pkt_align fndecl 0 23830 &vbi_v_stop_0_saa7134_tvnorm_23830_fields
++rx_desc_get_l3_pad_bytes_ath10k_hw_ops_23832_fields rx_desc_get_l3_pad_bytes ath10k_hw_ops 0 23832 NULL
+buffer_total_count_pvr2_stream_23834_fields buffer_total_count pvr2_stream 0 23834 NULL
+key_dm_region_23838_fields key dm_region 0 23838 NULL
+compressed_bio_alloc_fndecl_23839_fields compressed_bio_alloc fndecl 2 23839 NULL
+rx_buf_size_skge_port_23843_fields rx_buf_size skge_port 0 23843 NULL
-+tidcnt_qib_tid_info_23847_fields tidcnt qib_tid_info 0 23847 NULL nohasharray
-+osd_request_async_done_fndecl_23847_fields osd_request_async_done fndecl 2 23847 &tidcnt_qib_tid_info_23847_fields
-+SpareReplUnitNum_nftl_uci0_23850_fields SpareReplUnitNum nftl_uci0 0 23850 NULL
++osd_request_async_done_fndecl_23847_fields osd_request_async_done fndecl 2 23847 NULL nohasharray
++tidcnt_qib_tid_info_23847_fields tidcnt qib_tid_info 0 23847 &osd_request_async_done_fndecl_23847_fields
++efx_ef10_sriov_configure_fndecl_23850_fields efx_ef10_sriov_configure fndecl 2 23850 NULL nohasharray
++SpareReplUnitNum_nftl_uci0_23850_fields SpareReplUnitNum nftl_uci0 0 23850 &efx_ef10_sriov_configure_fndecl_23850_fields
+am_length_compat_xfs_attr_multiop_23853_fields am_length compat_xfs_attr_multiop 0 23853 NULL
+max_srq_wqes_mlx4_caps_23857_fields max_srq_wqes mlx4_caps 0 23857 NULL
+rtl_tx_agg_stop_fndecl_23865_fields rtl_tx_agg_stop fndecl 4 23865 NULL nohasharray
+clutsize_linux_logo_23865_fields clutsize linux_logo 0 23865 &rtl_tx_agg_stop_fndecl_23865_fields
+vdisplay_drm_display_mode_23870_fields vdisplay drm_display_mode 0 23870 NULL
-+c_data_offs_pvr2_ioread_23876_fields c_data_offs pvr2_ioread 0 23876 NULL nohasharray
-+ohead_offs_ubifs_info_23876_fields ohead_offs ubifs_info 0 23876 &c_data_offs_pvr2_ioread_23876_fields
++ohead_offs_ubifs_info_23876_fields ohead_offs ubifs_info 0 23876 NULL nohasharray
++c_data_offs_pvr2_ioread_23876_fields c_data_offs pvr2_ioread 0 23876 &ohead_offs_ubifs_info_23876_fields
+macsec_change_mtu_fndecl_23882_fields macsec_change_mtu fndecl 2 23882 NULL nohasharray
+operand_2_len_ccp_ecc_modular_math_23882_fields operand_2_len ccp_ecc_modular_math 0 23882 &macsec_change_mtu_fndecl_23882_fields
-+sb_dirband_size_hpfs_sb_info_23890_fields sb_dirband_size hpfs_sb_info 0 23890 NULL nohasharray
-+bytes_snd_dma_buffer_23890_fields bytes snd_dma_buffer 0 23890 &sb_dirband_size_hpfs_sb_info_23890_fields
++bytes_snd_dma_buffer_23890_fields bytes snd_dma_buffer 0 23890 NULL nohasharray
++sb_dirband_size_hpfs_sb_info_23890_fields sb_dirband_size hpfs_sb_info 0 23890 &bytes_snd_dma_buffer_23890_fields
+in_base_pos_ceph_connection_23892_fields in_base_pos ceph_connection 0 23892 NULL
+__skb_to_sgvec_fndecl_23899_fields __skb_to_sgvec fndecl 0-4-3 23899 NULL
+block_log_squashfs_sb_info_23905_fields block_log squashfs_sb_info 0 23905 NULL
@@ -194326,30 +198990,31 @@ index 0000000..6b5367db
+rd_data_gfs2_rgrpd_23919_fields rd_data gfs2_rgrpd 0 23919 &tcp_init_cwnd_fndecl_23919_fields
+nr_items_list_lru_one_23925_fields nr_items list_lru_one 0 23925 NULL
+p9_client_readdir_fndecl_23927_fields p9_client_readdir fndecl 0-3 23927 NULL
-+input_buffer_size_vardecl_seq_midi_c_23961_fields input_buffer_size vardecl_seq_midi.c 0 23961 NULL
+mtd_ooblayout_set_eccbytes_fndecl_23964_fields mtd_ooblayout_set_eccbytes fndecl 4 23964 NULL
+rx_ip_align_efx_nic_23965_fields rx_ip_align efx_nic 0 23965 NULL
+fw_status_len_wl1271_23974_fields fw_status_len wl1271 0 23974 NULL nohasharray
+memblock_add_range_fndecl_23974_fields memblock_add_range fndecl 2-3 23974 &fw_status_len_wl1271_23974_fields
+li_channels__DIVA_CAPI_ADAPTER_23977_fields li_channels _DIVA_CAPI_ADAPTER 0 23977 NULL
++sinfo_stream_sctp_sndrcvinfo_23982_fields sinfo_stream sctp_sndrcvinfo 0 23982 NULL
+vsync_len_fb_var_screeninfo_23987_fields vsync_len fb_var_screeninfo 0 23987 NULL
+length_acpi_object_string_23992_fields length acpi_object_string 0 23992 NULL
+EventDataLength__MPI2_EVENT_NOTIFICATION_REPLY_23993_fields EventDataLength _MPI2_EVENT_NOTIFICATION_REPLY 0 23993 NULL
-+usb_stream_next_packet_size_fndecl_23994_fields usb_stream_next_packet_size fndecl 0 23994 NULL
++usb_stream_next_packet_size_fndecl_23994_fields usb_stream_next_packet_size fndecl 0 23994 NULL nohasharray
++usbfs_snoop_max_vardecl_devio_c_23994_fields usbfs_snoop_max vardecl_devio.c 0 23994 &usb_stream_next_packet_size_fndecl_23994_fields
+anchor_udf_options_24004_fields anchor udf_options 0 24004 NULL
+dir_band_start_hpfs_super_block_24005_fields dir_band_start hpfs_super_block 0 24005 NULL
++baud_max3100_port_24012_fields baud max3100_port 0 24012 NULL
+truncate_setsize_fndecl_24013_fields truncate_setsize fndecl 2 24013 NULL
+ath6kl_wmi_bssfilter_cmd_fndecl_24014_fields ath6kl_wmi_bssfilter_cmd fndecl 2 24014 NULL
+vlan_id_bond_vlan_tag_24019_fields vlan_id bond_vlan_tag 0 24019 NULL nohasharray
+xfs_bmap_btalloc_fndecl_24019_fields xfs_bmap_btalloc fndecl 0 24019 &vlan_id_bond_vlan_tag_24019_fields
+minimum_pcc_memory_resource_24022_fields minimum pcc_memory_resource 0 24022 NULL
-+iscsi_session_setup_fndecl_24023_fields iscsi_session_setup fndecl 4 24023 NULL
+btt_map_write_fndecl_24029_fields btt_map_write fndecl 0 24029 NULL nohasharray
+fill_user_desc_fndecl_24029_fields fill_user_desc fndecl 2 24029 &btt_map_write_fndecl_24029_fields
+bpp__sisbios_mode_24033_fields bpp _sisbios_mode 0 24033 NULL
+mbo_offs_aim_channel_24035_fields mbo_offs aim_channel 0 24035 NULL
-+namelen_cramfs_inode_24036_fields namelen cramfs_inode 0 24036 NULL nohasharray
-+__radix_tree_preload_fndecl_24036_fields __radix_tree_preload fndecl 0 24036 &namelen_cramfs_inode_24036_fields
++__radix_tree_preload_fndecl_24036_fields __radix_tree_preload fndecl 0 24036 NULL nohasharray
++namelen_cramfs_inode_24036_fields namelen cramfs_inode 0 24036 &__radix_tree_preload_fndecl_24036_fields
+obj_size_request_sock_ops_24037_fields obj_size request_sock_ops 0 24037 NULL
+chunk_mask_geom_24040_fields chunk_mask geom 0 24040 NULL
+start_switch_path_24046_fields start switch_path 0 24046 NULL
@@ -194359,10 +199024,10 @@ index 0000000..6b5367db
+erase_shift_mmc_card_24051_fields erase_shift mmc_card 0 24051 &size_pernet_operations_24051_fields
+osst_int_ioctl_fndecl_24052_fields osst_int_ioctl fndecl 4 24052 NULL
+jbd2_journal_dirty_metadata_fndecl_24067_fields jbd2_journal_dirty_metadata fndecl 0 24067 NULL
++xfs_refcount_lookup_le_fndecl_24074_fields xfs_refcount_lookup_le fndecl 2 24074 NULL
+fnic_get_stats_data_fndecl_24075_fields fnic_get_stats_data fndecl 0 24075 NULL
+h_sync_strt_wid_aty128_crtc_24079_fields h_sync_strt_wid aty128_crtc 0 24079 NULL
+tun_hlen_ip6_tnl_24081_fields tun_hlen ip6_tnl 0 24081 NULL
-+cylinders_ssfdcr_record_24084_fields cylinders ssfdcr_record 0 24084 NULL
+gfs2_meta_new_fndecl_24087_fields gfs2_meta_new fndecl 2 24087 NULL
+pat_pagerange_is_ram_fndecl_24089_fields pat_pagerange_is_ram fndecl 1-2 24089 NULL
+mw_count_ntb_transport_ctx_24094_fields mw_count ntb_transport_ctx 0 24094 NULL
@@ -194382,14 +199047,15 @@ index 0000000..6b5367db
+um_idi_read_fndecl_24129_fields um_idi_read fndecl 3 24129 NULL
+ieee80211_assoc_success_fndecl_24131_fields ieee80211_assoc_success fndecl 4 24131 NULL
+radix_tree_locate_item_fndecl_24133_fields radix_tree_locate_item fndecl 0 24133 NULL
-+num_snaps_ceph_snap_context_24136_fields num_snaps ceph_snap_context 0 24136 NULL nohasharray
-+error_state_read_fndecl_24136_fields error_state_read fndecl 6-5 24136 &num_snaps_ceph_snap_context_24136_fields
-+transp_elsa_hw_24137_fields transp elsa_hw 0 24137 NULL
++num_snaps_ceph_snap_context_24136_fields num_snaps ceph_snap_context 0 24136 NULL
++transp_elsa_hw_24137_fields transp elsa_hw 0 24137 NULL nohasharray
++scif_user_send_fndecl_24137_fields scif_user_send fndecl 3 24137 &transp_elsa_hw_24137_fields
+key_update_fndecl_24140_fields key_update fndecl 3 24140 NULL
+elem_size_v4l2_ctrl_config_24141_fields elem_size v4l2_ctrl_config 0 24141 NULL nohasharray
+segs_wa_xfer_24141_fields segs wa_xfer 0 24141 &elem_size_v4l2_ctrl_config_24141_fields nohasharray
+sdram_size_solo_dev_24141_fields sdram_size solo_dev 0 24141 &segs_wa_xfer_24141_fields
+t_task_nolb_se_cmd_24142_fields t_task_nolb se_cmd 0 24142 NULL
++len_event_data_24144_fields len event_data 0 24144 NULL
+fat_fat_length_fat_bios_param_block_24145_fields fat_fat_length fat_bios_param_block 0 24145 NULL
+initial_tsn_sctp_inithdr_host_24149_fields initial_tsn sctp_inithdr_host 0 24149 NULL
+lro_add_page_fndecl_24166_fields lro_add_page fndecl 4 24166 NULL
@@ -194397,8 +199063,7 @@ index 0000000..6b5367db
+ppp_sync_input_fndecl_24167_fields ppp_sync_input fndecl 4 24167 &__alloc_extent_buffer_fndecl_24167_fields
+vram_start_radeon_mc_24170_fields vram_start radeon_mc 0 24170 NULL
+bpp_drm_mode_create_dumb_24171_fields bpp drm_mode_create_dumb 0 24171 NULL
-+ttymajor_vardecl_synclink_c_24173_fields ttymajor vardecl_synclink.c 0 24173 NULL nohasharray
-+drop_count_codel_stats_24173_fields drop_count codel_stats 0 24173 &ttymajor_vardecl_synclink_c_24173_fields
++ttymajor_vardecl_synclink_c_24173_fields ttymajor vardecl_synclink.c 0 24173 NULL
+top_v4l2_rect_24176_fields top v4l2_rect 0 24176 NULL
+ext4_split_extent_fndecl_24180_fields ext4_split_extent fndecl 0 24180 NULL
+st21nfca_hci_dm_get_data_fndecl_24183_fields st21nfca_hci_dm_get_data fndecl 3 24183 NULL
@@ -194411,21 +199076,22 @@ index 0000000..6b5367db
+erase_size_falcon_spi_device_24212_fields erase_size falcon_spi_device 0 24212 NULL
+amdgpu_benchmark_move_fndecl_24214_fields amdgpu_benchmark_move fndecl 2 24214 NULL
+size_drm_gem_object_24219_fields size drm_gem_object 0 24219 NULL
++stride_usbatm_channel_24224_fields stride usbatm_channel 0 24224 NULL
+nid_free_nid_24229_fields nid free_nid 0 24229 NULL
+get_ramdisk_size_fndecl_24233_fields get_ramdisk_size fndecl 0 24233 NULL
+udf_process_sequence_fndecl_24235_fields udf_process_sequence fndecl 2 24235 NULL
-+sys_msgrcv_fndecl_24236_fields sys_msgrcv fndecl 3 24236 NULL
++num_tx_queues_fm10k_intfc_24236_fields num_tx_queues fm10k_intfc 0 24236 NULL
++max_sqe_qedr_device_attr_24239_fields max_sqe qedr_device_attr 0 24239 NULL
+common_qdepth_blogic_adapter_24241_fields common_qdepth blogic_adapter 0 24241 NULL
+pcicfg_base_sst_pdata_24243_fields pcicfg_base sst_pdata 0 24243 NULL
-+vlan_qos_vlan_ioctl_args_24244_fields vlan_qos vlan_ioctl_args 0 24244 NULL nohasharray
-+qi_dqchunklen_xfs_quotainfo_24244_fields qi_dqchunklen xfs_quotainfo 0 24244 &vlan_qos_vlan_ioctl_args_24244_fields
++qi_dqchunklen_xfs_quotainfo_24244_fields qi_dqchunklen xfs_quotainfo 0 24244 NULL nohasharray
++vlan_qos_vlan_ioctl_args_24244_fields vlan_qos vlan_ioctl_args 0 24244 &qi_dqchunklen_xfs_quotainfo_24244_fields
+vmbus_sendpacket_mpb_desc_fndecl_24250_fields vmbus_sendpacket_mpb_desc fndecl 3-5 24250 NULL
+inode_ext2_dir_entry_2_24254_fields inode ext2_dir_entry_2 0 24254 NULL
+ali1535_offset_vardecl_i2c_ali1535_c_24257_fields ali1535_offset vardecl_i2c-ali1535.c 0 24257 NULL
+crtc_hblank_end_drm_display_mode_24268_fields crtc_hblank_end drm_display_mode 0 24268 NULL
+totalsize_microcode_header_intel_24274_fields totalsize microcode_header_intel 0 24274 NULL
-+vb2_vmalloc_get_userptr_fndecl_24276_fields vb2_vmalloc_get_userptr fndecl 2-3 24276 NULL
-+ccp_reverse_set_dm_area_fndecl_24279_fields ccp_reverse_set_dm_area fndecl 4-3 24279 NULL
++vb2_vmalloc_get_userptr_fndecl_24276_fields vb2_vmalloc_get_userptr fndecl 3-2 24276 NULL
+blockshift_alauda_card_info_24288_fields blockshift alauda_card_info 0 24288 NULL
+_do_truncate_fndecl_24296_fields _do_truncate fndecl 2 24296 NULL
+sg_copy_buffer_fndecl_24297_fields sg_copy_buffer fndecl 0-5-4 24297 NULL
@@ -194434,8 +199100,8 @@ index 0000000..6b5367db
+io_apic_get_redir_entries_fndecl_24313_fields io_apic_get_redir_entries fndecl 0 24313 NULL nohasharray
+udc_get_ppbdu_rxbytes_fndecl_24313_fields udc_get_ppbdu_rxbytes fndecl 0 24313 &io_apic_get_redir_entries_fndecl_24313_fields nohasharray
+dm_accept_partial_bio_fndecl_24313_fields dm_accept_partial_bio fndecl 2 24313 &udc_get_ppbdu_rxbytes_fndecl_24313_fields
-+pstore_file_llseek_fndecl_24314_fields pstore_file_llseek fndecl 2 24314 NULL nohasharray
-+pch_udc_create_dma_chain_fndecl_24314_fields pch_udc_create_dma_chain fndecl 3 24314 &pstore_file_llseek_fndecl_24314_fields
++pch_udc_create_dma_chain_fndecl_24314_fields pch_udc_create_dma_chain fndecl 3 24314 NULL nohasharray
++pstore_file_llseek_fndecl_24314_fields pstore_file_llseek fndecl 2 24314 &pch_udc_create_dma_chain_fndecl_24314_fields
+byte_per_page_nand_jedec_params_24315_fields byte_per_page nand_jedec_params 0 24315 NULL
+remove_monitor_info_fndecl_24319_fields remove_monitor_info fndecl 3 24319 NULL
+zlib_deflate_workspacesize_fndecl_24330_fields zlib_deflate_workspacesize fndecl 2-1 24330 NULL
@@ -194454,45 +199120,44 @@ index 0000000..6b5367db
+ieee_il3945_rate_info_24363_fields ieee il3945_rate_info 0 24363 NULL
+dst_h_yuv_frame_info_24364_fields dst_h yuv_frame_info 0 24364 NULL
+len_ath6kl_mgmt_buff_24368_fields len ath6kl_mgmt_buff 0 24368 NULL
-+atr_len_cm4000_dev_24376_fields atr_len cm4000_dev 0 24376 NULL nohasharray
-+igb_add_rx_frag_fndecl_24376_fields igb_add_rx_frag fndecl 3 24376 &atr_len_cm4000_dev_24376_fields
++igb_add_rx_frag_fndecl_24376_fields igb_add_rx_frag fndecl 3 24376 NULL nohasharray
++atr_len_cm4000_dev_24376_fields atr_len cm4000_dev 0 24376 &igb_add_rx_frag_fndecl_24376_fields
+virt_begin_dm_thin_new_mapping_24377_fields virt_begin dm_thin_new_mapping 0 24377 NULL
+wqe_shift_mthca_srq_24381_fields wqe_shift mthca_srq 0 24381 NULL
+read_reg_c_can_priv_24389_fields read_reg c_can_priv 0 24389 NULL
+demote_then_promote_fndecl_24392_fields demote_then_promote fndecl 5-3-4 24392 NULL
+tail_sk_buff_24399_fields tail sk_buff 0 24399 NULL
-+compat_sys_preadv_fndecl_24404_fields compat_sys_preadv fndecl 3 24404 NULL
+max_frame_size_slgt_info_24405_fields max_frame_size slgt_info 0 24405 NULL
+hfs_ext_find_block_fndecl_24406_fields hfs_ext_find_block fndecl 0-2 24406 NULL
-+max_scbs_hw_profile_24409_fields max_scbs hw_profile 0 24409 NULL
+helene_read_regs_fndecl_24410_fields helene_read_regs fndecl 4 24410 NULL
+start_soundfont_sample_info_24413_fields start soundfont_sample_info 0 24413 NULL
+mtu_ArcProto_24415_fields mtu ArcProto 0 24415 NULL nohasharray
+trailer_size_orangefs_downcall_s_24415_fields trailer_size orangefs_downcall_s 0 24415 &mtu_ArcProto_24415_fields
-+__percpu_ida_init_fndecl_24416_fields __percpu_ida_init fndecl 3 24416 NULL
+srq_entry_sz_mthca_dev_lim_24422_fields srq_entry_sz mthca_dev_lim 0 24422 NULL
+init_cdrom_command_fndecl_24438_fields init_cdrom_command fndecl 3 24438 NULL
+usHBlanking_Time__ATOM_DTD_FORMAT_24440_fields usHBlanking_Time _ATOM_DTD_FORMAT 0 24440 NULL
+dwTransferLength_wa_xfer_result_24445_fields dwTransferLength wa_xfer_result 0 24445 NULL
++batadv_tt_global_del_fndecl_24455_fields batadv_tt_global_del fndecl 4 24455 NULL
+s_last_pseg_nilfs_super_block_24457_fields s_last_pseg nilfs_super_block 0 24457 NULL
+drbd_bm_find_next_fndecl_24464_fields drbd_bm_find_next fndecl 0-2 24464 NULL
+remap_to_cache_fndecl_24467_fields remap_to_cache fndecl 3 24467 NULL
-+unlink_queued_fndecl_24470_fields unlink_queued fndecl 4-2 24470 NULL
++unlink_queued_fndecl_24470_fields unlink_queued fndecl 2-4 24470 NULL
+rq_db_page_mthca_create_qp_24471_fields rq_db_page mthca_create_qp 0 24471 NULL
+get_filter_fndecl_24472_fields get_filter fndecl 0 24472 NULL
+qset_remove_urb_fndecl_24474_fields qset_remove_urb fndecl 4 24474 NULL
++rtl_get_hwinfo_fndecl_24480_fields rtl_get_hwinfo fndecl 3 24480 NULL
+elog_base_vardecl_acpi_extlog_c_24485_fields elog_base vardecl_acpi_extlog.c 0 24485 NULL
+WriteBlock_fndecl_24489_fields WriteBlock fndecl 3 24489 NULL nohasharray
+shim_phy_add_intel_sst_drv_24489_fields shim_phy_add intel_sst_drv 0 24489 &WriteBlock_fndecl_24489_fields
+sensor_yres_em28xx_v4l2_24490_fields sensor_yres em28xx_v4l2 0 24490 NULL
+max_wr_rxe_sq_24496_fields max_wr rxe_sq 0 24496 NULL nohasharray
-+len_ceph_crypto_key_24496_fields len ceph_crypto_key 0 24496 &max_wr_rxe_sq_24496_fields nohasharray
-+drv_block_st_partstat_24496_fields drv_block st_partstat 0 24496 &len_ceph_crypto_key_24496_fields
++drv_block_st_partstat_24496_fields drv_block st_partstat 0 24496 &max_wr_rxe_sq_24496_fields
+buf_sz_rx_info_24497_fields buf_sz rx_info 0 24497 NULL
++default_priority_binder_proc_24499_fields default_priority binder_proc 0 24499 NULL
+virtio_gpu_get_vbuf_fndecl_24501_fields virtio_gpu_get_vbuf fndecl 2-3 24501 NULL
+sys_sendfile64_fndecl_24508_fields sys_sendfile64 fndecl 4 24508 NULL
-+mask_len_ccp_passthru_nomap_engine_24509_fields mask_len ccp_passthru_nomap_engine 0 24509 NULL nohasharray
-+octeon_allocate_device_fndecl_24509_fields octeon_allocate_device fndecl 2 24509 &mask_len_ccp_passthru_nomap_engine_24509_fields
++octeon_allocate_device_fndecl_24509_fields octeon_allocate_device fndecl 2 24509 NULL nohasharray
++mask_len_ccp_passthru_nomap_engine_24509_fields mask_len ccp_passthru_nomap_engine 0 24509 &octeon_allocate_device_fndecl_24509_fields
+max_size_usb_fifo_24517_fields max_size usb_fifo 0 24517 NULL
+vc_y_vc_data_24521_fields vc_y vc_data 0 24521 NULL
+size_firmware_24525_fields size firmware 0 24525 NULL
@@ -194510,7 +199175,6 @@ index 0000000..6b5367db
+len_mlxsw_reg_info_24575_fields len mlxsw_reg_info 0 24575 NULL
+blk_extent_info_24576_fields blk extent_info 0 24576 NULL
+pkt_size_gspca_dev_24583_fields pkt_size gspca_dev 0 24583 NULL
-+joydev_handle_JSIOCSBTNMAP_fndecl_24584_fields joydev_handle_JSIOCSBTNMAP fndecl 3 24584 NULL
+chunk_shift_geom_24589_fields chunk_shift geom 0 24589 NULL
+st_int_write_fndecl_24593_fields st_int_write fndecl 0 24593 NULL
+img_width_zoran_jpg_settings_24594_fields img_width zoran_jpg_settings 0 24594 NULL
@@ -194522,25 +199186,22 @@ index 0000000..6b5367db
+datalen_ip_tunnel_prl_24610_fields datalen ip_tunnel_prl 0 24610 NULL nohasharray
+bts_buffer_base_debug_store_24610_fields bts_buffer_base debug_store 0 24610 &datalen_ip_tunnel_prl_24610_fields
+irda_connect_indication_fndecl_24616_fields irda_connect_indication fndecl 4-5 24616 NULL
-+dm_read_fndecl_24617_fields dm_read fndecl 3 24617 NULL
+ntfs_new_extent_inode_fndecl_24624_fields ntfs_new_extent_inode fndecl 2 24624 NULL
+qlcnic_process_rcv_diag_fndecl_24628_fields qlcnic_process_rcv_diag fndecl 3 24628 NULL
++compat_sys_fcntl_fndecl_24629_fields compat_sys_fcntl fndecl 3 24629 NULL
+elan_i2c_read_block_fndecl_24636_fields elan_i2c_read_block fndecl 4 24636 NULL
+desc_count_orangefs_bufmap_24642_fields desc_count orangefs_bufmap 0 24642 NULL nohasharray
+len_n_flags_il_rx_pkt_24642_fields len_n_flags il_rx_pkt 0 24642 &desc_count_orangefs_bufmap_24642_fields
+data_mcp_cmd_response_24644_fields data mcp_cmd_response 0 24644 NULL
-+num_reg_defaults_regmap_config_24645_fields num_reg_defaults regmap_config 0 24645 NULL
+array_len_xdr_array2_desc_24652_fields array_len xdr_array2_desc 0 24652 NULL
+cur_sg_ore_per_dev_state_24654_fields cur_sg ore_per_dev_state 0 24654 NULL
-+crypto_init_drbg_state_ops_24657_fields crypto_init drbg_state_ops 0 24657 NULL
+offset_musb_qh_24658_fields offset musb_qh 0 24658 NULL
+lcd_hsync_dly_atyfb_par_24660_fields lcd_hsync_dly atyfb_par 0 24660 NULL
+out_iso_pipe_usbtest_dev_24664_fields out_iso_pipe usbtest_dev 0 24664 NULL
+spidev_read_fndecl_24668_fields spidev_read fndecl 3 24668 NULL nohasharray
+rds_ib_sysctl_max_recv_wr_vardecl_24668_fields rds_ib_sysctl_max_recv_wr vardecl 0 24668 &spidev_read_fndecl_24668_fields
+rx_pipe_brcmf_usbdev_info_24671_fields rx_pipe brcmf_usbdev_info 0 24671 NULL
-+id_platform_device_info_24673_fields id platform_device_info 0 24673 NULL nohasharray
-+pinctrl_utils_reserve_map_fndecl_24673_fields pinctrl_utils_reserve_map fndecl 5 24673 &id_platform_device_info_24673_fields
++id_platform_device_info_24673_fields id platform_device_info 0 24673 NULL
+uhci_fixup_short_transfer_fndecl_24676_fields uhci_fixup_short_transfer fndecl 0 24676 NULL
+src_width_tpg_data_24681_fields src_width tpg_data 0 24681 NULL
+st95hf_spi_send_fndecl_24687_fields st95hf_spi_send fndecl 3 24687 NULL
@@ -194548,29 +199209,28 @@ index 0000000..6b5367db
+ocfs2_split_tree_fndecl_24695_fields ocfs2_split_tree fndecl 5 24695 NULL
+iwl_mvm_pass_packet_to_mac80211_fndecl_24696_fields iwl_mvm_pass_packet_to_mac80211 fndecl 7-6 24696 NULL
+align_tun_struct_24697_fields align tun_struct 0 24697 NULL
++transport_generic_map_mem_to_cmd_fndecl_24700_fields transport_generic_map_mem_to_cmd fndecl 3 24700 NULL
+rio_request_inb_dbell_fndecl_24701_fields rio_request_inb_dbell fndecl 4-3 24701 NULL
+size_aper_size_info_16_24703_fields size aper_size_info_16 0 24703 NULL
+block_ack_param_set_host_cmd_ds_11n_addba_rsp_24704_fields block_ack_param_set host_cmd_ds_11n_addba_rsp 0 24704 NULL
+start_qla_flt_region_24707_fields start qla_flt_region 0 24707 NULL
-+_mv88e6xxx_reg_read_fndecl_24718_fields _mv88e6xxx_reg_read fndecl 0 24718 NULL
-+nfp_net_change_mtu_fndecl_24719_fields nfp_net_change_mtu fndecl 2 24719 NULL
++queue_depth_blk_mq_tag_set_24719_fields queue_depth blk_mq_tag_set 0 24719 NULL nohasharray
++nfp_net_change_mtu_fndecl_24719_fields nfp_net_change_mtu fndecl 2 24719 &queue_depth_blk_mq_tag_set_24719_fields
+qxl_ttm_tt_create_fndecl_24720_fields qxl_ttm_tt_create fndecl 2 24720 NULL
+drm_gem_cma_create_with_handle_fndecl_24721_fields drm_gem_cma_create_with_handle fndecl 3 24721 NULL
+bfs_get_block_fndecl_24726_fields bfs_get_block fndecl 2 24726 NULL
-+outlen_ib_udata_24729_fields outlen ib_udata 0 24729 NULL
+pkts_acked_htcp_24730_fields pkts_acked htcp 0 24730 NULL
+VBP_kyrofb_info_24731_fields VBP kyrofb_info 0 24731 NULL
++xfs_bounce_unaligned_dio_write_fndecl_24735_fields xfs_bounce_unaligned_dio_write fndecl 2 24735 NULL
+shmem_undo_range_fndecl_24742_fields shmem_undo_range fndecl 2-3 24742 NULL
+set_ltab_fndecl_24745_fields set_ltab fndecl 3 24745 NULL
+ud_putcs_fndecl_24751_fields ud_putcs fndecl 4-6-5 24751 NULL
+data_dotdot_offset_xfs_dir_ops_24758_fields data_dotdot_offset xfs_dir_ops 0 24758 NULL
+scif_create_pinned_pages_fndecl_24761_fields scif_create_pinned_pages fndecl 1 24761 NULL nohasharray
-+inftl_read_oob_fndecl_24761_fields inftl_read_oob fndecl 2-3 24761 &scif_create_pinned_pages_fndecl_24761_fields
++inftl_read_oob_fndecl_24761_fields inftl_read_oob fndecl 2 24761 &scif_create_pinned_pages_fndecl_24761_fields
+xlog_state_switch_iclogs_fndecl_24782_fields xlog_state_switch_iclogs fndecl 3 24782 NULL
-+afs_proc_rootcell_write_fndecl_24797_fields afs_proc_rootcell_write fndecl 3 24797 NULL
+usHSyncWidth__ATOM_DTD_FORMAT_24801_fields usHSyncWidth _ATOM_DTD_FORMAT 0 24801 NULL nohasharray
-+vhost_vsock_alloc_pkt_fndecl_24801_fields vhost_vsock_alloc_pkt fndecl 2 24801 &usHSyncWidth__ATOM_DTD_FORMAT_24801_fields nohasharray
-+index_vardecl_atiixp_c_24801_fields index vardecl_atiixp.c 0 24801 &vhost_vsock_alloc_pkt_fndecl_24801_fields
++index_vardecl_atiixp_c_24801_fields index vardecl_atiixp.c 0 24801 &usHSyncWidth__ATOM_DTD_FORMAT_24801_fields
+mprotect_fixup_fndecl_24803_fields mprotect_fixup fndecl 4-3 24803 NULL
+__read_extent_tree_block_fndecl_24804_fields __read_extent_tree_block fndecl 4 24804 NULL
+copy_to_urb_quirk_fndecl_24807_fields copy_to_urb_quirk fndecl 0-4 24807 NULL
@@ -194586,10 +199246,11 @@ index 0000000..6b5367db
+param_size_preview_update_24836_fields param_size preview_update 0 24836 NULL
+alloc_fddidev_fndecl_24837_fields alloc_fddidev fndecl 1 24837 NULL
+ceph_osdc_notify_ack_fndecl_24848_fields ceph_osdc_notify_ack fndecl 7 24848 NULL
-+wLength_usbdevfs_ctrltransfer_24851_fields wLength usbdevfs_ctrltransfer 0 24851 NULL nohasharray
-+cx88_alsa_dma_init_fndecl_24851_fields cx88_alsa_dma_init fndecl 2 24851 &wLength_usbdevfs_ctrltransfer_24851_fields
++cx88_alsa_dma_init_fndecl_24851_fields cx88_alsa_dma_init fndecl 2 24851 NULL nohasharray
++wLength_usbdevfs_ctrltransfer_24851_fields wLength usbdevfs_ctrltransfer 0 24851 &cx88_alsa_dma_init_fndecl_24851_fields
+pa_len_ext4_prealloc_space_24852_fields pa_len ext4_prealloc_space 0 24852 NULL
+body_len_vardecl_initramfs_c_24853_fields body_len vardecl_initramfs.c 0 24853 NULL
++sdebug_sector_size_vardecl_scsi_debug_c_24855_fields sdebug_sector_size vardecl_scsi_debug.c 0 24855 NULL
+bgpio_init_fndecl_24861_fields bgpio_init fndecl 3 24861 NULL
+__videobuf_copy_to_user_fndecl_24876_fields __videobuf_copy_to_user fndecl 0 24876 NULL
+x86_cache_alignment_cpuinfo_x86_24878_fields x86_cache_alignment cpuinfo_x86 0 24878 NULL
@@ -194613,19 +199274,20 @@ index 0000000..6b5367db
+max_sectors_per_io_vardecl_megaraid_c_24934_fields max_sectors_per_io vardecl_megaraid.c 0 24934 NULL
+rtl_download_firmware_fndecl_24937_fields rtl_download_firmware fndecl 3 24937 NULL
+key_len_cfg80211_connect_params_24952_fields key_len cfg80211_connect_params 0 24952 NULL
-+size_video_still_picture_24955_fields size video_still_picture 0 24955 NULL
++vmalloc_fndecl_24955_fields vmalloc fndecl 1 24955 NULL nohasharray
++size_video_still_picture_24955_fields size video_still_picture 0 24955 &vmalloc_fndecl_24955_fields
+pkts_acked_ack_sample_24969_fields pkts_acked ack_sample 0 24969 NULL
+pppol2tp_sendmsg_fndecl_24975_fields pppol2tp_sendmsg fndecl 3 24975 NULL nohasharray
+system_dir_blkno_ocfs2_super_24975_fields system_dir_blkno ocfs2_super 0 24975 &pppol2tp_sendmsg_fndecl_24975_fields nohasharray
+max_dma_count_asc_dvc_var_24975_fields max_dma_count asc_dvc_var 0 24975 &system_dir_blkno_ocfs2_super_24975_fields
+i_rbytes_ceph_inode_info_24976_fields i_rbytes ceph_inode_info 0 24976 NULL
+vringh_iov_pull_user_fndecl_24984_fields vringh_iov_pull_user fndecl 3 24984 NULL
++batadv_tt_global_hash_find_fndecl_24987_fields batadv_tt_global_hash_find fndecl 3 24987 NULL
+dr_suballoc_bit_ocfs2_dx_root_block_24992_fields dr_suballoc_bit ocfs2_dx_root_block 0 24992 NULL
+ql_process_mac_rx_page_fndecl_24996_fields ql_process_mac_rx_page fndecl 4-5 24996 NULL
+__rh_find_fndecl_24997_fields __rh_find fndecl 2 24997 NULL
+jfs_extendfs_fndecl_25001_fields jfs_extendfs fndecl 2-3 25001 NULL
-+xfrm_state_mtu_fndecl_25007_fields xfrm_state_mtu fndecl 0-2 25007 NULL nohasharray
-+sdp0length__SpiCfgData_25007_fields sdp0length _SpiCfgData 0 25007 &xfrm_state_mtu_fndecl_25007_fields
++xfrm_state_mtu_fndecl_25007_fields xfrm_state_mtu fndecl 0-2 25007 NULL
+memory_map_top_down_fndecl_25011_fields memory_map_top_down fndecl 1-2 25011 NULL
+ifx_spi_write_fndecl_25016_fields ifx_spi_write fndecl 3 25016 NULL nohasharray
+_c4iw_write_mem_dma_fndecl_25016_fields _c4iw_write_mem_dma fndecl 3 25016 &ifx_spi_write_fndecl_25016_fields
@@ -194633,18 +199295,16 @@ index 0000000..6b5367db
+rx_agg_ring_size_bnxt_25021_fields rx_agg_ring_size bnxt 0 25021 NULL
+num_bd_ethoc_25022_fields num_bd ethoc 0 25022 NULL
+_rtl_usb_tx_urb_setup_fndecl_25024_fields _rtl_usb_tx_urb_setup fndecl 3 25024 NULL
-+height_fb_fillrect_25027_fields height fb_fillrect 0 25027 NULL nohasharray
-+iwl_nvm_read_section_fndecl_25027_fields iwl_nvm_read_section fndecl 0 25027 &height_fb_fillrect_25027_fields nohasharray
-+hint_count_acpi_nfit_flush_address_25027_fields hint_count acpi_nfit_flush_address 0 25027 &iwl_nvm_read_section_fndecl_25027_fields
++height_fb_fillrect_25027_fields height fb_fillrect 0 25027 NULL
+vlan_cq_enet_rq_desc_25028_fields vlan cq_enet_rq_desc 0 25028 NULL nohasharray
+error_nfs_direct_req_25028_fields error nfs_direct_req 0 25028 &vlan_cq_enet_rq_desc_25028_fields
+crc_size_cas_25030_fields crc_size cas 0 25030 NULL nohasharray
+size_sym_tblmove_25030_fields size sym_tblmove 0 25030 &crc_size_cas_25030_fields
+pagesize_nand_flash_dev_25033_fields pagesize nand_flash_dev 0 25033 NULL
++bnx2fc_process_unsol_compl_fndecl_25035_fields bnx2fc_process_unsol_compl fndecl 2 25035 NULL
+dma_size_netup_unidvb_dev_25039_fields dma_size netup_unidvb_dev 0 25039 NULL
+db_free_next_ocfs2_dir_block_trailer_25041_fields db_free_next ocfs2_dir_block_trailer 0 25041 NULL
+stv0299_readregs_fndecl_25043_fields stv0299_readregs fndecl 4 25043 NULL
-+ieee80211_amsdu_to_8023s_fndecl_25050_fields ieee80211_amsdu_to_8023s fndecl 5 25050 NULL
+aio_private_file_fndecl_25052_fields aio_private_file fndecl 2 25052 NULL
+hci_logging_frame_fndecl_25057_fields hci_logging_frame fndecl 3 25057 NULL
+size_object_info_25058_fields size object_info 0 25058 NULL
@@ -194653,11 +199313,10 @@ index 0000000..6b5367db
+ovl_alloc_entry_fndecl_25069_fields ovl_alloc_entry fndecl 1 25069 NULL
+ocfs2_truncate_rec_fndecl_25080_fields ocfs2_truncate_rec fndecl 7 25080 NULL
+length_bus_request_25082_fields length bus_request 0 25082 NULL
-+k_offset_offset_v1_25084_fields k_offset offset_v1 0 25084 NULL nohasharray
-+id_count_ocfs2_inline_data_25084_fields id_count ocfs2_inline_data 0 25084 &k_offset_offset_v1_25084_fields nohasharray
-+len_ocrdma_sge_25084_fields len ocrdma_sge 0 25084 &id_count_ocfs2_inline_data_25084_fields
-+dwc3_prepare_one_trb_fndecl_25092_fields dwc3_prepare_one_trb fndecl 4 25092 NULL nohasharray
-+duty_ec_response_pwm_get_duty_25092_fields duty ec_response_pwm_get_duty 0 25092 &dwc3_prepare_one_trb_fndecl_25092_fields
++len_ocrdma_sge_25084_fields len ocrdma_sge 0 25084 NULL nohasharray
++id_count_ocfs2_inline_data_25084_fields id_count ocfs2_inline_data 0 25084 &len_ocrdma_sge_25084_fields nohasharray
++k_offset_offset_v1_25084_fields k_offset offset_v1 0 25084 &id_count_ocfs2_inline_data_25084_fields
++duty_ec_response_pwm_get_duty_25092_fields duty ec_response_pwm_get_duty 0 25092 NULL
+hidp_send_intr_message_fndecl_25093_fields hidp_send_intr_message fndecl 4 25093 NULL
+ext4_xattr_block_get_fndecl_25095_fields ext4_xattr_block_get fndecl 0 25095 NULL
+coff_ddb_input_25097_fields coff ddb_input 0 25097 NULL
@@ -194677,10 +199336,11 @@ index 0000000..6b5367db
+rate_max_snd_pcm_hardware_25149_fields rate_max snd_pcm_hardware 0 25149 NULL
+numchips_cfi_private_25154_fields numchips cfi_private 0 25154 NULL
+vram_base_cirrus_mc_25157_fields vram_base cirrus_mc 0 25157 NULL
-+si476x_core_send_command_fndecl_25160_fields si476x_core_send_command fndecl 4-6 25160 NULL
++si476x_core_send_command_fndecl_25160_fields si476x_core_send_command fndecl 6-4 25160 NULL
+max_transfer_size_mvumi_hba_25161_fields max_transfer_size mvumi_hba 0 25161 NULL
+tcp_syn_options_fndecl_25174_fields tcp_syn_options fndecl 0 25174 NULL
-+s_writesize_logfs_super_25176_fields s_writesize logfs_super 0 25176 NULL
++s_writesize_logfs_super_25176_fields s_writesize logfs_super 0 25176 NULL nohasharray
++cipso_v4_map_cat_rng_hton_fndecl_25176_fields cipso_v4_map_cat_rng_hton fndecl 0 25176 &s_writesize_logfs_super_25176_fields
+btrfs_create_repair_bio_fndecl_25181_fields btrfs_create_repair_bio fndecl 5 25181 NULL
+heapstart_sis_video_info_25184_fields heapstart sis_video_info 0 25184 NULL
+coex_tx_win_size_mwifiex_adapter_25195_fields coex_tx_win_size mwifiex_adapter 0 25195 NULL
@@ -194694,44 +199354,44 @@ index 0000000..6b5367db
+eth_get_headlen_fndecl_25213_fields eth_get_headlen fndecl 0-2 25213 NULL
+ext4_insert_range_fndecl_25217_fields ext4_insert_range fndecl 2-3 25217 NULL
+ocfs2_xattr_bucket_value_truncate_fndecl_25220_fields ocfs2_xattr_bucket_value_truncate fndecl 4 25220 NULL
++jumpshot_read_data_fndecl_25228_fields jumpshot_read_data fndecl 4 25228 NULL
+validate_checkpoint_fndecl_25229_fields validate_checkpoint fndecl 2 25229 NULL
+show_configfs_attribute_25232_fields show configfs_attribute 0 25232 NULL
+spy_number_iw_spy_data_25234_fields spy_number iw_spy_data 0 25234 NULL
+offset_zatm_pool_info_25250_fields offset zatm_pool_info 0 25250 NULL
+fpnum_omap3isp_ccdc_fpc_25254_fields fpnum omap3isp_ccdc_fpc 0 25254 NULL
-+of_property_read_string_helper_fndecl_25257_fields of_property_read_string_helper fndecl 5 25257 NULL
+btrfs_submit_direct_fndecl_25259_fields btrfs_submit_direct fndecl 3 25259 NULL
+ar5523_cmd_fndecl_25261_fields ar5523_cmd fndecl 4 25261 NULL
+start_page_swap_extent_25262_fields start_page swap_extent 0 25262 NULL nohasharray
+first_cluster_group_blkno_ocfs2_super_25262_fields first_cluster_group_blkno ocfs2_super 0 25262 &start_page_swap_extent_25262_fields
+ext4_get_next_extent_fndecl_25267_fields ext4_get_next_extent fndecl 3-2 25267 NULL nohasharray
+vol_id_ubi_mkvol_req_25267_fields vol_id ubi_mkvol_req 0 25267 &ext4_get_next_extent_fndecl_25267_fields
-+get_fold_mark_fndecl_25272_fields get_fold_mark fndecl 2 25272 NULL nohasharray
-+out_iovs_fuse_ioctl_out_25272_fields out_iovs fuse_ioctl_out 0 25272 &get_fold_mark_fndecl_25272_fields
++get_fold_mark_fndecl_25272_fields get_fold_mark fndecl 2 25272 NULL
+authorizer_len_ceph_msg_connect_reply_25279_fields authorizer_len ceph_msg_connect_reply 0 25279 NULL
+dst_put_ci_fndecl_25284_fields dst_put_ci fndecl 3 25284 NULL
+ex_bn_extent_s_25293_fields ex_bn extent_s 0 25293 NULL
+string_length_acpi_resource_source_25296_fields string_length acpi_resource_source 0 25296 NULL
+part_start_hfs_sb_info_25310_fields part_start hfs_sb_info 0 25310 NULL
-+vmw_cursor_update_image_fndecl_25311_fields vmw_cursor_update_image fndecl 4-3 25311 NULL nohasharray
-+sz_m1_mlx5_wq_cyc_25311_fields sz_m1 mlx5_wq_cyc 0 25311 &vmw_cursor_update_image_fndecl_25311_fields
++offset_rchan_buf_25311_fields offset rchan_buf 0 25311 NULL nohasharray
++vmw_cursor_update_image_fndecl_25311_fields vmw_cursor_update_image fndecl 4-3 25311 &offset_rchan_buf_25311_fields
+cropw_val_pvr2_hdw_25312_fields cropw_val pvr2_hdw 0 25312 NULL
+resindex_dma_base_sst_acpi_desc_25313_fields resindex_dma_base sst_acpi_desc 0 25313 NULL
+fw_size_bcm203x_data_25314_fields fw_size bcm203x_data 0 25314 NULL
+num_desc_nx_host_rds_ring_25321_fields num_desc nx_host_rds_ring 0 25321 NULL
+cnt_i40e_hmc_obj_info_25322_fields cnt i40e_hmc_obj_info 0 25322 NULL
-+iscsi_tcp_conn_setup_fndecl_25323_fields iscsi_tcp_conn_setup fndecl 2 25323 NULL
++rq_cnt_queue_set_25323_fields rq_cnt queue_set 0 25323 NULL
+max_outstanding_tx_usbcan_msg_softinfo_25327_fields max_outstanding_tx usbcan_msg_softinfo 0 25327 NULL
+bmv_count_getbmapx_25336_fields bmv_count getbmapx 0 25336 NULL
+width_deinterlace_q_data_25337_fields width deinterlace_q_data 0 25337 NULL
+vc_init_fndecl_25338_fields vc_init fndecl 2-3 25338 NULL
+enc_key_size_ecryptfs_key_record_25340_fields enc_key_size ecryptfs_key_record 0 25340 NULL nohasharray
-+bytesperline_zoran_v4l_settings_25340_fields bytesperline zoran_v4l_settings 0 25340 &enc_key_size_ecryptfs_key_record_25340_fields nohasharray
-+xfs_inobt_lookup_fndecl_25340_fields xfs_inobt_lookup fndecl 2 25340 &bytesperline_zoran_v4l_settings_25340_fields
++xfs_inobt_lookup_fndecl_25340_fields xfs_inobt_lookup fndecl 2 25340 &enc_key_size_ecryptfs_key_record_25340_fields nohasharray
++bytesperline_zoran_v4l_settings_25340_fields bytesperline zoran_v4l_settings 0 25340 &xfs_inobt_lookup_fndecl_25340_fields
+svc_meta_len_htc_conn_service_msg_25346_fields svc_meta_len htc_conn_service_msg 0 25346 NULL nohasharray
+init_data_size_il4965_firmware_pieces_25346_fields init_data_size il4965_firmware_pieces 0 25346 &svc_meta_len_htc_conn_service_msg_25346_fields
-+skb_add_rx_frag_fndecl_25355_fields skb_add_rx_frag fndecl 2-5-6-4 25355 NULL
-+spi_rd_buf_fndecl_25357_fields spi_rd_buf fndecl 4 25357 NULL
++skb_add_rx_frag_fndecl_25355_fields skb_add_rx_frag fndecl 2-4-5-6 25355 NULL
++spi_rd_buf_fndecl_25357_fields spi_rd_buf fndecl 4 25357 NULL nohasharray
++determine_rate_clk_ops_25357_fields determine_rate clk_ops 0 25357 &spi_rd_buf_fndecl_25357_fields
+bfs_move_block_fndecl_25369_fields bfs_move_block fndecl 1-2 25369 NULL
+encode_string_fndecl_25371_fields encode_string fndecl 2 25371 NULL
+sddr55_bulk_transport_fndecl_25377_fields sddr55_bulk_transport fndecl 4 25377 NULL nohasharray
@@ -194754,6 +199414,7 @@ index 0000000..6b5367db
+i2c_write_fndecl_25439_fields i2c_write fndecl 4 25439 NULL nohasharray
+free_pfn_range_fndecl_25439_fields free_pfn_range fndecl 1-2 25439 &i2c_write_fndecl_25439_fields
+size_xen_netif_tx_request_25440_fields size xen_netif_tx_request 0 25440 NULL
++alloc_vm_area_fndecl_25446_fields alloc_vm_area fndecl 1 25446 NULL
+ds_nvme_lbaf_25461_fields ds nvme_lbaf 0 25461 NULL
+sddr09_send_scsi_command_fndecl_25467_fields sddr09_send_scsi_command fndecl 3 25467 NULL nohasharray
+id_stmpe_platform_data_25467_fields id stmpe_platform_data 0 25467 &sddr09_send_scsi_command_fndecl_25467_fields
@@ -194762,8 +199423,8 @@ index 0000000..6b5367db
+playback_periodsize_rme96_25479_fields playback_periodsize rme96 0 25479 NULL
+chunk_sectors_mddev_25484_fields chunk_sectors mddev 0 25484 NULL
+got_frame_fndecl_25487_fields got_frame fndecl 2 25487 NULL
-+next_cmd_len_sg_fd_25494_fields next_cmd_len sg_fd 0 25494 NULL nohasharray
-+rx_transfer_len_hif_device_usb_25494_fields rx_transfer_len hif_device_usb 0 25494 &next_cmd_len_sg_fd_25494_fields
++rx_transfer_len_hif_device_usb_25494_fields rx_transfer_len hif_device_usb 0 25494 NULL nohasharray
++next_cmd_len_sg_fd_25494_fields next_cmd_len sg_fd 0 25494 &rx_transfer_len_hif_device_usb_25494_fields
+size_map_info_25510_fields size map_info 0 25510 NULL
+hidp_send_message_fndecl_25511_fields hidp_send_message fndecl 6 25511 NULL
+btrfs_qgroup_reserve_meta_fndecl_25512_fields btrfs_qgroup_reserve_meta fndecl 0 25512 NULL
@@ -194772,7 +199433,6 @@ index 0000000..6b5367db
+base_aperture_25525_fields base aperture 0 25525 NULL
+xfs_dq_get_next_id_fndecl_25529_fields xfs_dq_get_next_id fndecl 4-0 25529 NULL nohasharray
+cuse_file_ioctl_fndecl_25529_fields cuse_file_ioctl fndecl 2 25529 &xfs_dq_get_next_id_fndecl_25529_fields
-+smk_write_unconfined_fndecl_25530_fields smk_write_unconfined fndecl 3 25530 NULL
+screen_fb_size_vardecl_hyperv_fb_c_25531_fields screen_fb_size vardecl_hyperv_fb.c 0 25531 NULL
+memblock_mem_limit_remove_map_fndecl_25533_fields memblock_mem_limit_remove_map fndecl 1 25533 NULL
+size_i40e_hmc_obj_info_25536_fields size i40e_hmc_obj_info 0 25536 NULL
@@ -194780,13 +199440,12 @@ index 0000000..6b5367db
+f_adc_rtl2832_sdr_dev_25544_fields f_adc rtl2832_sdr_dev 0 25544 NULL
+width_efifb_dmi_info_25557_fields width efifb_dmi_info 0 25557 NULL
+udf_extend_file_fndecl_25558_fields udf_extend_file fndecl 2 25558 NULL
-+cp2112_write_req_fndecl_25559_fields cp2112_write_req fndecl 0-5 25559 NULL
+update_wqe_psn_fndecl_25563_fields update_wqe_psn fndecl 4 25563 NULL
+iommu_map_mmio_space_fndecl_25569_fields iommu_map_mmio_space fndecl 2-1 25569 NULL
+num_stations_iwl_priv_25574_fields num_stations iwl_priv 0 25574 NULL
-+hpi_outstream_ancillary_read_fndecl_25575_fields hpi_outstream_ancillary_read fndecl 4 25575 NULL nohasharray
-+wsm_write_mib_fndecl_25575_fields wsm_write_mib fndecl 4 25575 &hpi_outstream_ancillary_read_fndecl_25575_fields
-+lpage_size_genwqe_sgl_25578_fields lpage_size genwqe_sgl 0 25578 NULL
++hpi_outstream_ancillary_read_fndecl_25575_fields hpi_outstream_ancillary_read fndecl 4 25575 NULL
++len_qed_roce_ll2_buffer_25578_fields len qed_roce_ll2_buffer 0 25578 NULL nohasharray
++lpage_size_genwqe_sgl_25578_fields lpage_size genwqe_sgl 0 25578 &len_qed_roce_ll2_buffer_25578_fields
+bytes_per_pixel_usbvision_v4l2_format_st_25584_fields bytes_per_pixel usbvision_v4l2_format_st 0 25584 NULL nohasharray
+be_cmd_set_sriov_config_fndecl_25584_fields be_cmd_set_sriov_config fndecl 3 25584 &bytes_per_pixel_usbvision_v4l2_format_st_25584_fields
+test_ofs_cyttsp4_sysinfo_ofs_25587_fields test_ofs cyttsp4_sysinfo_ofs 0 25587 NULL
@@ -194794,27 +199453,31 @@ index 0000000..6b5367db
+s_partition_len_udf_part_map_25593_fields s_partition_len udf_part_map 0 25593 NULL nohasharray
+MaxReplyDescriptorPostQueueDepth_mpt3sas_facts_25593_fields MaxReplyDescriptorPostQueueDepth mpt3sas_facts 0 25593 &s_partition_len_udf_part_map_25593_fields
+pcm_playback_analog_channels_snd_tscm_spec_25594_fields pcm_playback_analog_channels snd_tscm_spec 0 25594 NULL
++nciq_sge_uld_rxq_info_25601_fields nciq sge_uld_rxq_info 0 25601 NULL
+txdata_desc_size_vmxnet3_tx_queue_25615_fields txdata_desc_size vmxnet3_tx_queue 0 25615 NULL
+matroxfb_test_and_set_rounding_fndecl_25619_fields matroxfb_test_and_set_rounding fndecl 0-2 25619 NULL
++ceph_osdc_alloc_request_fndecl_25622_fields ceph_osdc_alloc_request fndecl 3 25622 NULL
+pmcraid_major_vardecl_pmcraid_c_25627_fields pmcraid_major vardecl_pmcraid.c 0 25627 NULL
+status_xen_netif_rx_response_25634_fields status xen_netif_rx_response 0 25634 NULL nohasharray
+ocfs2_trim_group_fndecl_25634_fields ocfs2_trim_group fndecl 0 25634 &status_xen_netif_rx_response_25634_fields
+khugepaged_scan_shmem_fndecl_25649_fields khugepaged_scan_shmem fndecl 3 25649 NULL
-+rpipe_get_by_ep_fndecl_25656_fields rpipe_get_by_ep fndecl 0 25656 NULL
-+getxattr_inode_operations_25660_fields getxattr inode_operations 0 25660 NULL
++nvmet_rdma_alloc_sgl_fndecl_25655_fields nvmet_rdma_alloc_sgl fndecl 3 25655 NULL
++rpipe_get_by_ep_fndecl_25656_fields rpipe_get_by_ep fndecl 0 25656 NULL nohasharray
++cp_send_size_rpcrdma_connect_private_25656_fields cp_send_size rpcrdma_connect_private 0 25656 &rpipe_get_by_ep_fndecl_25656_fields
+btt_write_pg_fndecl_25661_fields btt_write_pg fndecl 0 25661 NULL
+eec_entry_sz_mthca_dev_lim_25665_fields eec_entry_sz mthca_dev_lim 0 25665 NULL
-+HWPartsNum_qinfo_chip_25666_fields HWPartsNum qinfo_chip 0 25666 NULL nohasharray
-+m_ag_maxlevels_xfs_mount_25666_fields m_ag_maxlevels xfs_mount 0 25666 &HWPartsNum_qinfo_chip_25666_fields
++m_ag_maxlevels_xfs_mount_25666_fields m_ag_maxlevels xfs_mount 0 25666 NULL nohasharray
++HWPartsNum_qinfo_chip_25666_fields HWPartsNum qinfo_chip 0 25666 &m_ag_maxlevels_xfs_mount_25666_fields
++bnxt_change_mtu_fndecl_25675_fields bnxt_change_mtu fndecl 2 25675 NULL
+tsi148_master_set_fndecl_25678_fields tsi148_master_set fndecl 4 25678 NULL
+get_user_page_nowait_fndecl_25679_fields get_user_page_nowait fndecl 1 25679 NULL
+layout_mdp_superblock_s_25680_fields layout mdp_superblock_s 0 25680 NULL
-+max_cmd_per_lun_vardecl_megaraid_c_25693_fields max_cmd_per_lun vardecl_megaraid.c 0 25693 NULL
++amdgpu_ttm_get_gtt_mem_size_fndecl_25689_fields amdgpu_ttm_get_gtt_mem_size fndecl 0 25689 NULL
+chv_get_total_gtt_size_fndecl_25701_fields chv_get_total_gtt_size fndecl 0-1 25701 NULL nohasharray
+xh_num_buckets_ocfs2_xattr_header_25701_fields xh_num_buckets ocfs2_xattr_header 0 25701 &chv_get_total_gtt_size_fndecl_25701_fields
+val_ilt_cfg_pair_25703_fields val ilt_cfg_pair 0 25703 NULL
-+ir_post_altera_jtag_25704_fields ir_post altera_jtag 0 25704 NULL nohasharray
-+sysctl_numa_balancing_scan_size_vardecl_25704_fields sysctl_numa_balancing_scan_size vardecl 0 25704 &ir_post_altera_jtag_25704_fields
++sysctl_numa_balancing_scan_size_vardecl_25704_fields sysctl_numa_balancing_scan_size vardecl 0 25704 NULL nohasharray
++ir_post_altera_jtag_25704_fields ir_post altera_jtag 0 25704 &sysctl_numa_balancing_scan_size_vardecl_25704_fields
+metadata_bnxt_tpa_info_25705_fields metadata bnxt_tpa_info 0 25705 NULL nohasharray
+cmnd_out_ep_vub300_mmc_host_25705_fields cmnd_out_ep vub300_mmc_host 0 25705 &metadata_bnxt_tpa_info_25705_fields nohasharray
+get_bio_block_fndecl_25705_fields get_bio_block fndecl 0 25705 &cmnd_out_ep_vub300_mmc_host_25705_fields
@@ -194824,10 +199487,11 @@ index 0000000..6b5367db
+left_margin_fb_var_screeninfo_25722_fields left_margin fb_var_screeninfo 0 25722 NULL
+data_cnt_adv_scsi_req_q_25725_fields data_cnt adv_scsi_req_q 0 25725 NULL
+raid1_resize_fndecl_25735_fields raid1_resize fndecl 2 25735 NULL
-+res_cnt_common_sol_cqe_25739_fields res_cnt common_sol_cqe 0 25739 NULL
++res_cnt_common_sol_cqe_25739_fields res_cnt common_sol_cqe 0 25739 NULL nohasharray
++get_pas_size_fndecl_25739_fields get_pas_size fndecl 0 25739 &res_cnt_common_sol_cqe_25739_fields
+ms_read_copyblock_fndecl_25740_fields ms_read_copyblock fndecl 7 25740 NULL
+ext4_da_map_blocks_fndecl_25744_fields ext4_da_map_blocks fndecl 2 25744 NULL
-+iov_iter_kvec_fndecl_25747_fields iov_iter_kvec fndecl 5-4 25747 NULL
++iov_iter_kvec_fndecl_25747_fields iov_iter_kvec fndecl 5 25747 NULL
+tics_vardecl_hfcpci_c_25752_fields tics vardecl_hfcpci.c 0 25752 NULL
+access_width_acpi_generic_address_25756_fields access_width acpi_generic_address 0 25756 NULL
+buffer_size_command_25757_fields buffer_size command 0 25757 NULL
@@ -194836,20 +199500,18 @@ index 0000000..6b5367db
+src_len_ccp_aes_engine_25770_fields src_len ccp_aes_engine 0 25770 NULL
+event_len_fanotify_event_metadata_25772_fields event_len fanotify_event_metadata 0 25772 NULL
+qla82xx_pci_mem_write_2M_fndecl_25790_fields qla82xx_pci_mem_write_2M fndecl 2 25790 NULL
-+num_prealloc_crypto_pages_vardecl_crypto_c_25796_fields num_prealloc_crypto_pages vardecl_crypto.c 0 25796 NULL
++lt_bw_bbr_25794_fields lt_bw bbr 0 25794 NULL
+stolen_base_i915_gem_mm_25807_fields stolen_base i915_gem_mm 0 25807 NULL
+sgentry_align_brcmf_sdio_25813_fields sgentry_align brcmf_sdio 0 25813 NULL nohasharray
+lf_depth_gfs2_leaf_25813_fields lf_depth gfs2_leaf 0 25813 &sgentry_align_brcmf_sdio_25813_fields
+fjes_change_mtu_fndecl_25818_fields fjes_change_mtu fndecl 2 25818 NULL
+__kfifo_in_fndecl_25822_fields __kfifo_in fndecl 0 25822 NULL
-+pages_per_rd_bio_scrub_ctx_25831_fields pages_per_rd_bio scrub_ctx 0 25831 NULL
+depth_cx25821_fmt_25832_fields depth cx25821_fmt 0 25832 NULL
+cookie_offset_nfsd4_readdir_25834_fields cookie_offset nfsd4_readdir 0 25834 NULL
+mmc_test_area_map_fndecl_25839_fields mmc_test_area_map fndecl 2-4 25839 NULL
+start_cxgb4_range_25845_fields start cxgb4_range 0 25845 NULL
-+rvt_reg_user_mr_fndecl_25852_fields rvt_reg_user_mr fndecl 2-3-4 25852 NULL
++rvt_reg_user_mr_fndecl_25852_fields rvt_reg_user_mr fndecl 3-2 25852 NULL
+ric_ies_len_cfg80211_ft_event_params_25853_fields ric_ies_len cfg80211_ft_event_params 0 25853 NULL
-+do_tune_cpucache_fndecl_25855_fields do_tune_cpucache fndecl 3-4 25855 NULL
+asize_mypriv_25864_fields asize mypriv 0 25864 NULL
+usVBlanking_Time__ATOM_DTD_FORMAT_25867_fields usVBlanking_Time _ATOM_DTD_FORMAT 0 25867 NULL
+ndlc_probe_fndecl_25869_fields ndlc_probe fndecl 4 25869 NULL
@@ -194859,43 +199521,46 @@ index 0000000..6b5367db
+sb_agblocks_xfs_sb_25887_fields sb_agblocks xfs_sb 0 25887 NULL
+width_virtio_gpu_rect_25892_fields width virtio_gpu_rect 0 25892 NULL nohasharray
+q_num_tx_buffers_qede_dev_25892_fields q_num_tx_buffers qede_dev 0 25892 &width_virtio_gpu_rect_25892_fields
-+gid_tbl_len_ib_port_immutable_25893_fields gid_tbl_len ib_port_immutable 0 25893 NULL nohasharray
-+i915_gem_batch_pool_get_fndecl_25893_fields i915_gem_batch_pool_get fndecl 2 25893 &gid_tbl_len_ib_port_immutable_25893_fields nohasharray
-+intf_num_smi_info_25893_fields intf_num smi_info 0 25893 &i915_gem_batch_pool_get_fndecl_25893_fields
++i915_gem_batch_pool_get_fndecl_25893_fields i915_gem_batch_pool_get fndecl 2 25893 NULL nohasharray
++offset_usnic_uiom_reg_25893_fields offset usnic_uiom_reg 0 25893 &i915_gem_batch_pool_get_fndecl_25893_fields nohasharray
++intf_num_smi_info_25893_fields intf_num smi_info 0 25893 &offset_usnic_uiom_reg_25893_fields nohasharray
++gid_tbl_len_ib_port_immutable_25893_fields gid_tbl_len ib_port_immutable 0 25893 &intf_num_smi_info_25893_fields
+vram_remap_vardecl_uvesafb_c_25907_fields vram_remap vardecl_uvesafb.c 0 25907 NULL
+sit_blocks_sit_info_25908_fields sit_blocks sit_info 0 25908 NULL
+acpi_get_override_irq_fndecl_25918_fields acpi_get_override_irq fndecl 1 25918 NULL
++dce_v8_0_get_num_crtc_fndecl_25924_fields dce_v8_0_get_num_crtc fndecl 0 25924 NULL
+__rs_setup_recovery_fndecl_25935_fields __rs_setup_recovery fndecl 2 25935 NULL
+ircomm_tty_connect_indication_fndecl_25936_fields ircomm_tty_connect_indication fndecl 4-5 25936 NULL
-+smk_write_onlycap_fndecl_25939_fields smk_write_onlycap fndecl 3 25939 NULL
+n_piobufs_efx_ef10_nic_data_25940_fields n_piobufs efx_ef10_nic_data 0 25940 NULL
+shmem_getpage_gfp_fndecl_25948_fields shmem_getpage_gfp fndecl 2 25948 NULL
+__xfs_bmbt_get_all_fndecl_25952_fields __xfs_bmbt_get_all fndecl 2-1 25952 NULL
+cyttsp_spi_read_block_data_fndecl_25954_fields cyttsp_spi_read_block_data fndecl 4 25954 NULL
-+len_xsd_sockmsg_25963_fields len xsd_sockmsg 0 25963 NULL nohasharray
-+vchnl_vf_send_add_hmc_objs_req_fndecl_25963_fields vchnl_vf_send_add_hmc_objs_req fndecl 5 25963 &len_xsd_sockmsg_25963_fields
++vchnl_vf_send_add_hmc_objs_req_fndecl_25963_fields vchnl_vf_send_add_hmc_objs_req fndecl 5 25963 NULL nohasharray
++len_xsd_sockmsg_25963_fields len xsd_sockmsg 0 25963 &vchnl_vf_send_add_hmc_objs_req_fndecl_25963_fields
+ieee802154_hdr_get_sechdr_fndecl_25965_fields ieee802154_hdr_get_sechdr fndecl 0 25965 NULL
+memblock_remove_range_fndecl_25969_fields memblock_remove_range fndecl 3-2 25969 NULL
-+fuse_getxattr_fndecl_25975_fields fuse_getxattr fndecl 5 25975 NULL
+vscnprintf_fndecl_25984_fields vscnprintf fndecl 0 25984 NULL
+ns_blocksize_bits_the_nilfs_25985_fields ns_blocksize_bits the_nilfs 0 25985 NULL
+split_state_fndecl_25992_fields split_state fndecl 0-4 25992 NULL
+vga_vram_size_vardecl_vgacon_c_25995_fields vga_vram_size vardecl_vgacon.c 0 25995 NULL
+get_sum_page_fndecl_26000_fields get_sum_page fndecl 2 26000 NULL
++data_vm_mm_struct_26005_fields data_vm mm_struct 0 26005 NULL
+len_ieee_types_header_26006_fields len ieee_types_header 0 26006 NULL
+udplite_getfrag_fndecl_26012_fields udplite_getfrag fndecl 4 26012 NULL
-+core_name_size_vardecl_coredump_c_26013_fields core_name_size vardecl_coredump.c 0 26013 NULL
+ufs_load_cylinder_fndecl_26018_fields ufs_load_cylinder fndecl 2 26018 NULL
+platform_id_cb710_chip_26021_fields platform_id cb710_chip 0 26021 NULL
+touch_max_wacom_features_26029_fields touch_max wacom_features 0 26029 NULL
++tas571x_reg_read_multiword_fndecl_26030_fields tas571x_reg_read_multiword fndecl 4 26030 NULL
+__gfs2_fallocate_fndecl_26035_fields __gfs2_fallocate fndecl 4-3 26035 NULL
++hex_dump_to_buffer_fndecl_26039_fields hex_dump_to_buffer fndecl 0-2-4-3 26039 NULL
+EraseSize_NFTLrecord_26040_fields EraseSize NFTLrecord 0 26040 NULL
-+rds_buf_vardecl_radio_wl1273_c_26043_fields rds_buf vardecl_radio-wl1273.c 0 26043 NULL
+ll_recv_fndecl_26047_fields ll_recv fndecl 3 26047 NULL
+md_template_size_netxen_minidump_26050_fields md_template_size netxen_minidump 0 26050 NULL
+l2cap_send_cmd_fndecl_26055_fields l2cap_send_cmd fndecl 4 26055 NULL
+physical_for_dev_replace_scrub_copy_nocow_ctx_26059_fields physical_for_dev_replace scrub_copy_nocow_ctx 0 26059 NULL
+nfc_hci_hcp_message_tx_fndecl_26069_fields nfc_hci_hcp_message_tx fndecl 6 26069 NULL
++dataflash_read_user_otp_fndecl_26075_fields dataflash_read_user_otp fndecl 3-2 26075 NULL
++qed_ll2_acquire_connection_rx_fndecl_26083_fields qed_ll2_acquire_connection_rx fndecl 3 26083 NULL
+remap_to_origin_then_cache_fndecl_26084_fields remap_to_origin_then_cache fndecl 4 26084 NULL
+skb_buf_size_vmxnet3_adapter_26088_fields skb_buf_size vmxnet3_adapter 0 26088 NULL
+vmci_transport_set_max_buffer_size_fndecl_26089_fields vmci_transport_set_max_buffer_size fndecl 2 26089 NULL
@@ -194906,7 +199571,6 @@ index 0000000..6b5367db
+log_store_fndecl_26118_fields log_store fndecl 8 26118 NULL
+maxflows_sfq_sched_data_26122_fields maxflows sfq_sched_data 0 26122 NULL
+plane_mode_nvm_dev_26134_fields plane_mode nvm_dev 0 26134 NULL
-+bits_per_pin_pcs_device_26141_fields bits_per_pin pcs_device 0 26141 NULL
+size_cyttsp4_tch_rec_params_26150_fields size cyttsp4_tch_rec_params 0 26150 NULL
+reno_count_yeah_26151_fields reno_count yeah 0 26151 NULL
+hid_register_report_fndecl_26154_fields hid_register_report fndecl 3 26154 NULL
@@ -194915,33 +199579,35 @@ index 0000000..6b5367db
+src_sz_max_ce_attr_26172_fields src_sz_max ce_attr 0 26172 NULL
+ci_buffer_size_dlm_config_info_26176_fields ci_buffer_size dlm_config_info 0 26176 NULL
+qcaspi_burst_len_vardecl_qca_spi_c_26179_fields qcaspi_burst_len vardecl_qca_spi.c 0 26179 NULL
-+virtio_transport_get_credit_fndecl_26188_fields virtio_transport_get_credit fndecl 0-2 26188 NULL nohasharray
-+video_vsize_solo_dev_26188_fields video_vsize solo_dev 0 26188 &virtio_transport_get_credit_fndecl_26188_fields
++video_vsize_solo_dev_26188_fields video_vsize solo_dev 0 26188 NULL nohasharray
++virtio_transport_get_credit_fndecl_26188_fields virtio_transport_get_credit fndecl 0-2 26188 &video_vsize_solo_dev_26188_fields
+drm_atomic_plane_set_property_fndecl_26190_fields drm_atomic_plane_set_property fndecl 4 26190 NULL nohasharray
+level_guest_walkerEPT_26190_fields level guest_walkerEPT 0 26190 &drm_atomic_plane_set_property_fndecl_26190_fields
+rq_num_pas_mlx5_ib_rwq_26195_fields rq_num_pas mlx5_ib_rwq 0 26195 NULL
+gue_remcsum_fndecl_26202_fields gue_remcsum fndecl 4 26202 NULL
+et131x_change_mtu_fndecl_26203_fields et131x_change_mtu fndecl 2 26203 NULL
-+off_virtio_vsock_pkt_26209_fields off virtio_vsock_pkt 0 26209 NULL nohasharray
-+bfad_debugfs_write_regrd_fndecl_26209_fields bfad_debugfs_write_regrd fndecl 3 26209 &off_virtio_vsock_pkt_26209_fields
++rc_blockcount_xfs_refcount_irec_26208_fields rc_blockcount xfs_refcount_irec 0 26208 NULL
++off_virtio_vsock_pkt_26209_fields off virtio_vsock_pkt 0 26209 NULL
+s_log_zone_size_isofs_sb_info_26211_fields s_log_zone_size isofs_sb_info 0 26211 NULL
+dev_cnt_usnic_uiom_pd_26213_fields dev_cnt usnic_uiom_pd 0 26213 NULL
-+sst_wake_up_block_fndecl_26217_fields sst_wake_up_block fndecl 6 26217 NULL
-+dr_post_altera_jtag_26219_fields dr_post altera_jtag 0 26219 NULL nohasharray
-+ufx_handle_damage_fndecl_26219_fields ufx_handle_damage fndecl 5-4 26219 &dr_post_altera_jtag_26219_fields
++ufx_handle_damage_fndecl_26219_fields ufx_handle_damage fndecl 5-4 26219 NULL nohasharray
++dr_post_altera_jtag_26219_fields dr_post altera_jtag 0 26219 &ufx_handle_damage_fndecl_26219_fields
+base_snd_cs46xx_region_26223_fields base snd_cs46xx_region 0 26223 NULL
+hfi1_dev_vardecl_device_c_26237_fields hfi1_dev vardecl_device.c 0 26237 NULL
+shift_rtl8xxxu_rxdesc24_26240_fields shift rtl8xxxu_rxdesc24 0 26240 NULL nohasharray
+tct_size_idt77252_dev_26240_fields tct_size idt77252_dev 0 26240 &shift_rtl8xxxu_rxdesc24_26240_fields
+max_srq_wr_ib_device_attr_26242_fields max_srq_wr ib_device_attr 0 26242 NULL
++t4_init_sched_fndecl_26247_fields t4_init_sched fndecl 1 26247 NULL
+can_gather_numa_stats_fndecl_26254_fields can_gather_numa_stats fndecl 3 26254 NULL
+den_snd_ratden_26264_fields den snd_ratden 0 26264 NULL
++jumbo_size_qset_params_26273_fields jumbo_size qset_params 0 26273 NULL
+decompress_pstore_zbackend_26274_fields decompress pstore_zbackend 0 26274 NULL
+fw_realloc_buffer_fndecl_26275_fields fw_realloc_buffer fndecl 2 26275 NULL
+width_stk1160_26279_fields width stk1160 0 26279 NULL
+simple_io_fndecl_26280_fields simple_io fndecl 4 26280 NULL nohasharray
+xlate_dev_mem_ptr_fndecl_26280_fields xlate_dev_mem_ptr fndecl 1 26280 &simple_io_fndecl_26280_fields
-+send_write_fndecl_26285_fields send_write fndecl 6-0-5-4 26285 NULL
++send_write_fndecl_26285_fields send_write fndecl 6-0-5 26285 NULL
++tx_data_length_hso_serial_26287_fields tx_data_length hso_serial 0 26287 NULL
+size_rsn_ie_t_26289_fields size rsn_ie_t 0 26289 NULL
+hub_port_connect_fndecl_26292_fields hub_port_connect fndecl 2 26292 NULL nohasharray
+sc_max_sge_svcxprt_rdma_26292_fields sc_max_sge svcxprt_rdma 0 26292 &hub_port_connect_fndecl_26292_fields
@@ -194949,11 +199615,9 @@ index 0000000..6b5367db
+devm_gen_pool_create_fndecl_26295_fields devm_gen_pool_create fndecl 2 26295 NULL
+count_rio_transaction_26296_fields count rio_transaction 0 26296 NULL
+xskip_mt9t031_26297_fields xskip mt9t031 0 26297 NULL
-+model_data_size_oxygen_model_26304_fields model_data_size oxygen_model 0 26304 NULL nohasharray
-+xhci_common_hub_descriptor_fndecl_26304_fields xhci_common_hub_descriptor fndecl 3 26304 &model_data_size_oxygen_model_26304_fields
++xhci_common_hub_descriptor_fndecl_26304_fields xhci_common_hub_descriptor fndecl 3 26304 NULL nohasharray
++model_data_size_oxygen_model_26304_fields model_data_size oxygen_model 0 26304 &xhci_common_hub_descriptor_fndecl_26304_fields
+w5200_spi_readbulk_fndecl_26307_fields w5200_spi_readbulk fndecl 4 26307 NULL
-+debugfs_create_file_size_fndecl_26309_fields debugfs_create_file_size fndecl 6 26309 NULL
-+used_core_name_26313_fields used core_name 0 26313 NULL
+drxdap_fasi_write_block_fndecl_26315_fields drxdap_fasi_write_block fndecl 3 26315 NULL
+irlan_connect_indication_fndecl_26316_fields irlan_connect_indication fndecl 5 26316 NULL
+mc_mask_radeon_mc_26322_fields mc_mask radeon_mc 0 26322 NULL
@@ -194963,25 +199627,28 @@ index 0000000..6b5367db
+scif_pin_pages_fndecl_26337_fields scif_pin_pages fndecl 2 26337 &maxchild_usb_device_26337_fields
+broadcast_xmt_max_payload_fwnet_device_26343_fields broadcast_xmt_max_payload fwnet_device 0 26343 NULL
+vmw_cotable_resize_fndecl_26346_fields vmw_cotable_resize fndecl 2 26346 NULL
-+hugetlbfs_pagecache_present_fndecl_26350_fields hugetlbfs_pagecache_present fndecl 3 26350 NULL nohasharray
-+blkdev_readpages_fndecl_26350_fields blkdev_readpages fndecl 4 26350 &hugetlbfs_pagecache_present_fndecl_26350_fields
-+__ocfs2_remove_xattr_range_fndecl_26353_fields __ocfs2_remove_xattr_range fndecl 5-4-3 26353 NULL
-+kovaplus_sysfs_read_fndecl_26362_fields kovaplus_sysfs_read fndecl 6 26362 NULL
-+scsi_eh_prep_cmnd_fndecl_26365_fields scsi_eh_prep_cmnd fndecl 5 26365 NULL
++blkdev_readpages_fndecl_26350_fields blkdev_readpages fndecl 4 26350 NULL nohasharray
++hugetlbfs_pagecache_present_fndecl_26350_fields hugetlbfs_pagecache_present fndecl 3 26350 &blkdev_readpages_fndecl_26350_fields
++__ocfs2_remove_xattr_range_fndecl_26353_fields __ocfs2_remove_xattr_range fndecl 5-4-3 26353 NULL nohasharray
++da7219_set_dai_sysclk_fndecl_26353_fields da7219_set_dai_sysclk fndecl 3 26353 &__ocfs2_remove_xattr_range_fndecl_26353_fields
++ioread16_fndecl_26365_fields ioread16 fndecl 0 26365 NULL nohasharray
++scsi_eh_prep_cmnd_fndecl_26365_fields scsi_eh_prep_cmnd fndecl 5 26365 &ioread16_fndecl_26365_fields
+max_mthca_alloc_26367_fields max mthca_alloc 0 26367 NULL
+xpnet_send_fndecl_26368_fields xpnet_send fndecl 3-4 26368 NULL nohasharray
+ts_tsid_gru_thread_state_26368_fields ts_tsid gru_thread_state 0 26368 &xpnet_send_fndecl_26368_fields
+buffer_length_TAG_TW_Ioctl_Driver_Command_26369_fields buffer_length TAG_TW_Ioctl_Driver_Command 0 26369 NULL
+ac_last_group_ocfs2_alloc_context_26384_fields ac_last_group ocfs2_alloc_context 0 26384 NULL
+dccp_sendmsg_fndecl_26385_fields dccp_sendmsg fndecl 3 26385 NULL
++mrp_attr_create_fndecl_26390_fields mrp_attr_create fndecl 3 26390 NULL
+dict_size_comp_opts_26391_fields dict_size comp_opts 0 26391 NULL
+maximum_num_physicals_aac_dev_26393_fields maximum_num_physicals aac_dev 0 26393 NULL
++lcd_write_fndecl_26394_fields lcd_write fndecl 3 26394 NULL
+transcnt_elsa_hw_26395_fields transcnt elsa_hw 0 26395 NULL
+ea_init_fndecl_26400_fields ea_init fndecl 5 26400 NULL
+gbuffers_vardecl_meye_c_26402_fields gbuffers vardecl_meye.c 0 26402 NULL
-+bad_peb_limit_ubi_device_26403_fields bad_peb_limit ubi_device 0 26403 NULL nohasharray
-+xhci_giveback_urb_in_irq_fndecl_26403_fields xhci_giveback_urb_in_irq fndecl 3 26403 &bad_peb_limit_ubi_device_26403_fields
-+netlbl_catmap_walk_fndecl_26405_fields netlbl_catmap_walk fndecl 2 26405 NULL
++xhci_giveback_urb_in_irq_fndecl_26403_fields xhci_giveback_urb_in_irq fndecl 3 26403 NULL nohasharray
++bad_peb_limit_ubi_device_26403_fields bad_peb_limit ubi_device 0 26403 &xhci_giveback_urb_in_irq_fndecl_26403_fields
++netlbl_catmap_walk_fndecl_26405_fields netlbl_catmap_walk fndecl 0-2 26405 NULL
+height_drm_mode_create_dumb_26406_fields height drm_mode_create_dumb 0 26406 NULL
+residualByteCnt_status_entry_26414_fields residualByteCnt status_entry 0 26414 NULL
+crtc_htotal_drm_display_mode_26418_fields crtc_htotal drm_display_mode 0 26418 NULL
@@ -195005,8 +199672,7 @@ index 0000000..6b5367db
+nr_kioctx_table_26477_fields nr kioctx_table 0 26477 NULL
+btt_read_pg_fndecl_26478_fields btt_read_pg fndecl 0 26478 NULL
+len_seq_buf_26481_fields len seq_buf 0 26481 NULL
-+pte_to_pagemap_entry_fndecl_26482_fields pte_to_pagemap_entry fndecl 3 26482 NULL nohasharray
-+page_cache_next_hole_fndecl_26482_fields page_cache_next_hole fndecl 0-2 26482 &pte_to_pagemap_entry_fndecl_26482_fields
++page_cache_next_hole_fndecl_26482_fields page_cache_next_hole fndecl 0-2 26482 NULL
+max_osd_ceph_osdmap_26483_fields max_osd ceph_osdmap 0 26483 NULL
+__ip6_append_data_fndecl_26484_fields __ip6_append_data fndecl 10-9 26484 NULL
+count_xfs_dir2_sf_hdr_26486_fields count xfs_dir2_sf_hdr 0 26486 NULL
@@ -195018,10 +199684,11 @@ index 0000000..6b5367db
+drm_fb_helper_dirty_fndecl_26526_fields drm_fb_helper_dirty fndecl 3-5-2-4 26526 NULL nohasharray
+t4_max_cq_depth_c4iw_hw_queue_26526_fields t4_max_cq_depth c4iw_hw_queue 0 26526 &drm_fb_helper_dirty_fndecl_26526_fields
+devm_memremap_fndecl_26527_fields devm_memremap fndecl 3-2 26527 NULL
++vmap_fndecl_26530_fields vmap fndecl 2 26530 NULL
+sync_buf_offs_pvr2_ioread_26534_fields sync_buf_offs pvr2_ioread 0 26534 NULL
+myri10ge_max_slices_vardecl_myri10ge_c_26536_fields myri10ge_max_slices vardecl_myri10ge.c 0 26536 NULL
-+rss_lut_size_i40evf_adapter_26546_fields rss_lut_size i40evf_adapter 0 26546 NULL nohasharray
-+onenand_write_fndecl_26546_fields onenand_write fndecl 2 26546 &rss_lut_size_i40evf_adapter_26546_fields
++onenand_write_fndecl_26546_fields onenand_write fndecl 2 26546 NULL nohasharray
++rss_lut_size_i40evf_adapter_26546_fields rss_lut_size i40evf_adapter 0 26546 &onenand_write_fndecl_26546_fields
+pci_irq_pcmcia_socket_26558_fields pci_irq pcmcia_socket 0 26558 NULL
+maxdepth_sfq_sched_data_26560_fields maxdepth sfq_sched_data 0 26560 NULL
+fifo_blocks_vxge_hw_fifo_config_26565_fields fifo_blocks vxge_hw_fifo_config 0 26565 NULL
@@ -195043,15 +199710,14 @@ index 0000000..6b5367db
+smscore_load_firmware_family2_fndecl_26621_fields smscore_load_firmware_family2 fndecl 3 26621 NULL
+hub_port_connect_change_fndecl_26625_fields hub_port_connect_change fndecl 2 26625 NULL
+data_len_ipmi_msg_26626_fields data_len ipmi_msg 0 26626 NULL
-+hdac_hdmi_fill_widget_info_fndecl_26629_fields hdac_hdmi_fill_widget_info fndecl 8 26629 NULL
+l2_fhdr_pkt_len_l2_fhdr_26630_fields l2_fhdr_pkt_len l2_fhdr 0 26630 NULL
+facs_acpi_table_fadt_26632_fields facs acpi_table_fadt 0 26632 NULL
+mpt_lan_receive_post_turbo_fndecl_26635_fields mpt_lan_receive_post_turbo fndecl 2 26635 NULL
+qxl_draw_dirty_fb_fndecl_26636_fields qxl_draw_dirty_fb fndecl 7 26636 NULL
+i40e_change_mtu_fndecl_26637_fields i40e_change_mtu fndecl 2 26637 NULL
-+h_length_dlm_header_26639_fields h_length dlm_header 0 26639 NULL nohasharray
-+aac_sa_ioremap_fndecl_26639_fields aac_sa_ioremap fndecl 2 26639 &h_length_dlm_header_26639_fields nohasharray
-+irias_new_octseq_value_fndecl_26639_fields irias_new_octseq_value fndecl 2 26639 &aac_sa_ioremap_fndecl_26639_fields
++aac_sa_ioremap_fndecl_26639_fields aac_sa_ioremap fndecl 2 26639 NULL nohasharray
++h_length_dlm_header_26639_fields h_length dlm_header 0 26639 &aac_sa_ioremap_fndecl_26639_fields nohasharray
++irias_new_octseq_value_fndecl_26639_fields irias_new_octseq_value fndecl 2 26639 &h_length_dlm_header_26639_fields
+fh_size_knfsd_fh_26641_fields fh_size knfsd_fh 0 26641 NULL
+size_drm_global_reference_26642_fields size drm_global_reference 0 26642 NULL nohasharray
+sys_madvise_fndecl_26642_fields sys_madvise fndecl 2-1 26642 &size_drm_global_reference_26642_fields
@@ -195068,38 +199734,35 @@ index 0000000..6b5367db
+oobsize_mtd_info_26683_fields oobsize mtd_info 0 26683 NULL
+swap_cgroup_swapon_fndecl_26685_fields swap_cgroup_swapon fndecl 2 26685 NULL
+rx_buff_len_amd8111e_priv_26693_fields rx_buff_len amd8111e_priv 0 26693 NULL
-+raw_request_hid_ll_driver_26699_fields raw_request hid_ll_driver 0 26699 NULL
+packet_snd_fndecl_26705_fields packet_snd fndecl 3 26705 NULL
+musb_ep_program_fndecl_26707_fields musb_ep_program fndecl 7 26707 NULL
+x509_extract_name_segment_fndecl_26716_fields x509_extract_name_segment fndecl 5 26716 NULL
-+i915_gem_obj_ggtt_offset_view_fndecl_26723_fields i915_gem_obj_ggtt_offset_view fndecl 0 26723 NULL
+max_transfer_size_rndis_init_c_26725_fields max_transfer_size rndis_init_c 0 26725 NULL
+fuse_copy_pages_fndecl_26731_fields fuse_copy_pages fndecl 2 26731 NULL
+ocfs2_xattr_set_handle_fndecl_26732_fields ocfs2_xattr_set_handle fndecl 7 26732 NULL
+minor_uart_driver_26739_fields minor uart_driver 0 26739 NULL
-+add_index_fndecl_26744_fields add_index fndecl 0 26744 NULL nohasharray
-+xfs_filestream_lookup_ag_fndecl_26744_fields xfs_filestream_lookup_ag fndecl 0 26744 &add_index_fndecl_26744_fields
++xfs_filestream_lookup_ag_fndecl_26744_fields xfs_filestream_lookup_ag fndecl 0 26744 NULL nohasharray
++add_index_fndecl_26744_fields add_index fndecl 0 26744 &xfs_filestream_lookup_ag_fndecl_26744_fields
++xfs_refcount_alloc_cow_extent_fndecl_26749_fields xfs_refcount_alloc_cow_extent fndecl 0 26749 NULL
+block_size_befs_sb_info_26751_fields block_size befs_sb_info 0 26751 NULL
+raw_serial_size_pkcs7_parse_context_26761_fields raw_serial_size pkcs7_parse_context 0 26761 NULL
-+nAcks_rxrpc_ackpacket_26767_fields nAcks rxrpc_ackpacket 0 26767 NULL
+tipc_send_stream_fndecl_26771_fields tipc_send_stream fndecl 3 26771 NULL
-+rdma_rw_init_single_wr_fndecl_26775_fields rdma_rw_init_single_wr fndecl 4-5 26775 NULL
-+hb_size_hashbin_t_26779_fields hb_size hashbin_t 0 26779 NULL
++rdma_rw_init_single_wr_fndecl_26775_fields rdma_rw_init_single_wr fndecl 4 26775 NULL
+__perf_event_read_size_fndecl_26786_fields __perf_event_read_size fndecl 2 26786 NULL
+max_support_points_edt_ft5x06_ts_data_26799_fields max_support_points edt_ft5x06_ts_data 0 26799 NULL
+ocfs2_cache_block_dealloc_fndecl_26800_fields ocfs2_cache_block_dealloc fndecl 6-5-4 26800 NULL
+width_v4l2_rect_26802_fields width v4l2_rect 0 26802 NULL
+dwc2_hsotg_set_ep_maxpacket_fndecl_26815_fields dwc2_hsotg_set_ep_maxpacket fndecl 3 26815 NULL
+ramdisk_image_setup_header_26821_fields ramdisk_image setup_header 0 26821 NULL
-+qlcnic_max_rings_fndecl_26823_fields qlcnic_max_rings fndecl 2 26823 NULL
++qlcnic_max_rings_fndecl_26823_fields qlcnic_max_rings fndecl 0-2 26823 NULL
+l2tp_ip_recvmsg_fndecl_26826_fields l2tp_ip_recvmsg fndecl 3 26826 NULL
+bEndpointAddress_usb_endpoint_descriptor_26829_fields bEndpointAddress usb_endpoint_descriptor 0 26829 NULL
+vc_screenbuf_size_vc_data_26832_fields vc_screenbuf_size vc_data 0 26832 NULL nohasharray
+ath6kl_wmi_add_del_mcast_filter_cmd_fndecl_26832_fields ath6kl_wmi_add_del_mcast_filter_cmd fndecl 2 26832 &vc_screenbuf_size_vc_data_26832_fields
+header_sectors_per_block_partition_26836_fields header_sectors_per_block partition 0 26836 NULL
++hint_root_dm_cache_metadata_26838_fields hint_root dm_cache_metadata 0 26838 NULL
+size_sram_reserve_26839_fields size sram_reserve 0 26839 NULL
+offset_resource_entry_26851_fields offset resource_entry 0 26851 NULL
-+sizeof_flush_fndecl_26863_fields sizeof_flush fndecl 0 26863 NULL
+osd_req_add_get_attr_page_fndecl_26866_fields osd_req_add_get_attr_page fndecl 4 26866 NULL
+try_get_cap_refs_fndecl_26867_fields try_get_cap_refs fndecl 0 26867 NULL
+dlc_usb_8dev_rx_msg_26873_fields dlc usb_8dev_rx_msg 0 26873 NULL nohasharray
@@ -195107,18 +199770,16 @@ index 0000000..6b5367db
+pci_address_to_pio_fndecl_26876_fields pci_address_to_pio fndecl 0-1 26876 NULL
+mwifiex_sdio_card_to_host_mp_aggr_fndecl_26877_fields mwifiex_sdio_card_to_host_mp_aggr fndecl 2 26877 NULL
+n_allocated_vis_efx_ef10_nic_data_26878_fields n_allocated_vis efx_ef10_nic_data 0 26878 NULL
-+us122l_ctl_msg_fndecl_26881_fields us122l_ctl_msg fndecl 8 26881 NULL
+dev_bytenr_btrfsic_block_data_ctx_26882_fields dev_bytenr btrfsic_block_data_ctx 0 26882 NULL nohasharray
+sym_set_cam_result_error_fndecl_26882_fields sym_set_cam_result_error fndecl 3 26882 &dev_bytenr_btrfsic_block_data_ctx_26882_fields
+out_skip_ceph_connection_26886_fields out_skip ceph_connection 0 26886 NULL
+xdr_process_buf_fndecl_26887_fields xdr_process_buf fndecl 3-2 26887 NULL
+head_floppy_struct_26890_fields head floppy_struct 0 26890 NULL
-+len_f2fs_defragment_26892_fields len f2fs_defragment 0 26892 NULL nohasharray
-+agno_xfs_alloc_arg_26892_fields agno xfs_alloc_arg 0 26892 &len_f2fs_defragment_26892_fields
-+find_get_pages_contig_fndecl_26902_fields find_get_pages_contig fndecl 0 26902 NULL
++agno_xfs_alloc_arg_26892_fields agno xfs_alloc_arg 0 26892 NULL nohasharray
++len_f2fs_defragment_26892_fields len f2fs_defragment 0 26892 &agno_xfs_alloc_arg_26892_fields
+raid_disks_r5conf_26904_fields raid_disks r5conf 0 26904 NULL
-+ctx_len_xfrm_user_sec_ctx_26911_fields ctx_len xfrm_user_sec_ctx 0 26911 NULL nohasharray
-+stack_user_size_perf_sample_data_26911_fields stack_user_size perf_sample_data 0 26911 &ctx_len_xfrm_user_sec_ctx_26911_fields
++stack_user_size_perf_sample_data_26911_fields stack_user_size perf_sample_data 0 26911 NULL nohasharray
++ctx_len_xfrm_user_sec_ctx_26911_fields ctx_len xfrm_user_sec_ctx 0 26911 &stack_user_size_perf_sample_data_26911_fields
+port_event_fndecl_26912_fields port_event fndecl 2 26912 NULL
+num_slots_rtsx_pcr_26914_fields num_slots rtsx_pcr 0 26914 NULL
+hscx_empty_fifo_fndecl_26915_fields hscx_empty_fifo fndecl 2 26915 NULL nohasharray
@@ -195128,10 +199789,12 @@ index 0000000..6b5367db
+nvmet_rdma_use_inline_sg_fndecl_26919_fields nvmet_rdma_use_inline_sg fndecl 2-3 26919 &get_wep_key_fndecl_26919_fields
+amdgpu_bo_create_restricted_fndecl_26920_fields amdgpu_bo_create_restricted fndecl 2 26920 NULL
+to_skip_sd_26922_fields to_skip sd 0 26922 NULL
++jfs_xattr_set_os2_fndecl_26923_fields jfs_xattr_set_os2 fndecl 6 26923 NULL
+count_vnic_res_26925_fields count vnic_res 0 26925 NULL
+major_intel_th_26929_fields major intel_th 0 26929 NULL
+get_bits_fndecl_26938_fields get_bits fndecl 0-2 26938 NULL
+granularity_vx_ibl_info_26939_fields granularity vx_ibl_info 0 26939 NULL
++arch_io_reserve_memtype_wc_fndecl_26940_fields arch_io_reserve_memtype_wc fndecl 1-2 26940 NULL
+tx_nr_pages_bnxt_26942_fields tx_nr_pages bnxt 0 26942 NULL
+il4965_pass_packet_to_mac80211_fndecl_26945_fields il4965_pass_packet_to_mac80211 fndecl 3 26945 NULL
+br_vlan_set_default_pvid_fndecl_26946_fields br_vlan_set_default_pvid fndecl 2 26946 NULL nohasharray
@@ -195151,25 +199814,24 @@ index 0000000..6b5367db
+ctrl_out_pipe_hfcusb_data_26981_fields ctrl_out_pipe hfcusb_data 0 26981 NULL
+num_waitchks_drm_tegra_submit_26983_fields num_waitchks drm_tegra_submit 0 26983 NULL
+skd_skreq_prep_buffering_fndecl_26987_fields skd_skreq_prep_buffering fndecl 3 26987 NULL
-+__tipc_send_stream_fndecl_26990_fields __tipc_send_stream fndecl 3 26990 NULL nohasharray
-+smb_sendv_fndecl_26990_fields smb_sendv fndecl 3 26990 &__tipc_send_stream_fndecl_26990_fields
++__tipc_send_stream_fndecl_26990_fields __tipc_send_stream fndecl 3 26990 NULL
+address_length_acpi_address64_attribute_26992_fields address_length acpi_address64_attribute 0 26992 NULL
+delete_empty_dnode_fndecl_26994_fields delete_empty_dnode fndecl 2 26994 NULL
+buffer_bytes_snd_card_asihpi_pcm_26997_fields buffer_bytes snd_card_asihpi_pcm 0 26997 NULL
+ser_write_chunk_vardecl_caif_serial_c_26999_fields ser_write_chunk vardecl_caif_serial.c 0 26999 NULL
+get_mpc_size_fndecl_27000_fields get_mpc_size fndecl 0 27000 NULL
+task_array_size_cnic_local_27004_fields task_array_size cnic_local 0 27004 NULL
-+n_tty_receive_buf_common_fndecl_27013_fields n_tty_receive_buf_common fndecl 4 27013 NULL
++nau8825_configure_sysclk_fndecl_27013_fields nau8825_configure_sysclk fndecl 3 27013 NULL nohasharray
++n_tty_receive_buf_common_fndecl_27013_fields n_tty_receive_buf_common fndecl 4 27013 &nau8825_configure_sysclk_fndecl_27013_fields
+nfs4_set_security_label_fndecl_27018_fields nfs4_set_security_label fndecl 3 27018 NULL
-+ath6kl_cfg80211_connect_event_fndecl_27024_fields ath6kl_cfg80211_connect_event fndecl 9-8 27024 NULL
+dx_fb_copyarea_27025_fields dx fb_copyarea 0 27025 NULL
+shift_radix_tree_node_27029_fields shift radix_tree_node 0 27029 NULL nohasharray
+__bufio_new_fndecl_27029_fields __bufio_new fndecl 2 27029 &shift_radix_tree_node_27029_fields
++may_expand_vm_fndecl_27030_fields may_expand_vm fndecl 3 27030 NULL
+overhead_sctp_packet_27032_fields overhead sctp_packet 0 27032 NULL
-+rdma_rw_ctx_signature_init_fndecl_27033_fields rdma_rw_ctx_signature_init fndecl 9 27033 NULL
++skb_splice_bits_fndecl_27037_fields skb_splice_bits fndecl 0 27037 NULL
+read_capacity_16_fndecl_27039_fields read_capacity_16 fndecl 0 27039 NULL
+device_pci_dev_27044_fields device pci_dev 0 27044 NULL
-+ext_prop_data_store_fndecl_27045_fields ext_prop_data_store fndecl 3 27045 NULL
+remains_vardecl_initramfs_c_27049_fields remains vardecl_initramfs.c 0 27049 NULL
+brcmf_sdiod_ramrw_fndecl_27055_fields brcmf_sdiod_ramrw fndecl 5-3 27055 NULL
+indices_fm10k_ring_feature_27057_fields indices fm10k_ring_feature 0 27057 NULL
@@ -195180,23 +199842,20 @@ index 0000000..6b5367db
+max_wqes_rqes_per_q_ocrdma_mbx_query_config_27086_fields max_wqes_rqes_per_q ocrdma_mbx_query_config 0 27086 NULL
+far_set_size_geom_27088_fields far_set_size geom 0 27088 NULL
+vid_hdr_aloffset_ubi_device_27089_fields vid_hdr_aloffset ubi_device 0 27089 NULL
-+mei_devt_vardecl_main_c_27090_fields mei_devt vardecl_main.c 0 27090 NULL nohasharray
-+file_size_perf_mmap_event_27090_fields file_size perf_mmap_event 0 27090 &mei_devt_vardecl_main_c_27090_fields
++file_size_perf_mmap_event_27090_fields file_size perf_mmap_event 0 27090 NULL nohasharray
++mei_devt_vardecl_main_c_27090_fields mei_devt vardecl_main.c 0 27090 &file_size_perf_mmap_event_27090_fields
+num_counters_compat_arpt_replace_27091_fields num_counters compat_arpt_replace 0 27091 NULL
-+native_chipselects_mpc8xxx_spi_27093_fields native_chipselects mpc8xxx_spi 0 27093 NULL
+__btrfs_alloc_chunk_fndecl_27105_fields __btrfs_alloc_chunk fndecl 3 27105 NULL nohasharray
+i_suballoc_bit_ocfs2_dinode_27105_fields i_suballoc_bit ocfs2_dinode 0 27105 &__btrfs_alloc_chunk_fndecl_27105_fields
+iser_max_sectors_vardecl_27108_fields iser_max_sectors vardecl 0 27108 NULL
-+len_lpfc_debug_27115_fields len lpfc_debug 0 27115 NULL nohasharray
-+usb_hcd_link_urb_to_ep_fndecl_27115_fields usb_hcd_link_urb_to_ep fndecl 0 27115 &len_lpfc_debug_27115_fields
++usb_hcd_link_urb_to_ep_fndecl_27115_fields usb_hcd_link_urb_to_ep fndecl 0 27115 NULL
+gpa_gfn_to_hva_cache_27125_fields gpa gfn_to_hva_cache 0 27125 NULL
+mwifiex_sdio_card_to_host_fndecl_27127_fields mwifiex_sdio_card_to_host fndecl 4 27127 NULL nohasharray
+non_atomic_pte_lookup_fndecl_27127_fields non_atomic_pte_lookup fndecl 2 27127 &mwifiex_sdio_card_to_host_fndecl_27127_fields
+pd_count_ocrdma_alloc_pd_range_rsp_27128_fields pd_count ocrdma_alloc_pd_range_rsp 0 27128 NULL
-+sys32_fadvise64_fndecl_27136_fields sys32_fadvise64 fndecl 4 27136 NULL
-+mtu_rfcomm_dlc_27139_fields mtu rfcomm_dlc 0 27139 NULL nohasharray
-+mappable_base_i915_ggtt_27139_fields mappable_base i915_ggtt 0 27139 &mtu_rfcomm_dlc_27139_fields nohasharray
-+dwc_get_residue_fndecl_27139_fields dwc_get_residue fndecl 0 27139 &mappable_base_i915_ggtt_27139_fields
++dwc_get_residue_fndecl_27139_fields dwc_get_residue fndecl 0 27139 NULL nohasharray
++mtu_rfcomm_dlc_27139_fields mtu rfcomm_dlc 0 27139 &dwc_get_residue_fndecl_27139_fields nohasharray
++mappable_base_i915_ggtt_27139_fields mappable_base i915_ggtt 0 27139 &mtu_rfcomm_dlc_27139_fields
+rx_ps_bsize0_e1000_adapter_27144_fields rx_ps_bsize0 e1000_adapter 0 27144 NULL
+_nfs4_proc_readdir_fndecl_27153_fields _nfs4_proc_readdir fndecl 5 27153 NULL
+xor_align_dma_device_27155_fields xor_align dma_device 0 27155 NULL nohasharray
@@ -195222,72 +199881,70 @@ index 0000000..6b5367db
+num_prior_parent_snaps_ceph_mds_snap_realm_27215_fields num_prior_parent_snaps ceph_mds_snap_realm 0 27215 NULL
+sdio_memcpy_fromio_fndecl_27218_fields sdio_memcpy_fromio fndecl 4 27218 NULL
+sym_prepare_nego_fndecl_27219_fields sym_prepare_nego fndecl 0 27219 NULL
++em_canid_change_fndecl_27221_fields em_canid_change fndecl 3 27221 NULL
+bm_bn_xfs_buf_map_27223_fields bm_bn xfs_buf_map 0 27223 NULL
+gsm_dlci_data_fndecl_27224_fields gsm_dlci_data fndecl 3 27224 NULL
+arm_db_page_mthca_create_cq_27227_fields arm_db_page mthca_create_cq 0 27227 NULL
++vma_add_reservation_fndecl_27233_fields vma_add_reservation fndecl 3 27233 NULL
+iwl_store_ucode_sec_fndecl_27235_fields iwl_store_ucode_sec fndecl 4 27235 NULL
-+qib_cfgctxts_vardecl_27236_fields qib_cfgctxts vardecl 0 27236 NULL nohasharray
-+acks_winsz_rxrpc_call_27236_fields acks_winsz rxrpc_call 0 27236 &qib_cfgctxts_vardecl_27236_fields
++qib_cfgctxts_vardecl_27236_fields qib_cfgctxts vardecl 0 27236 NULL
+do_splice_fndecl_27239_fields do_splice fndecl 5 27239 NULL
+hfsplus_brec_find_fndecl_27243_fields hfsplus_brec_find fndecl 0 27243 NULL
+name_len_ceph_mds_reply_dir_entry_27245_fields name_len ceph_mds_reply_dir_entry 0 27245 NULL
-+sisusb_recv_bulk_msg_fndecl_27246_fields sisusb_recv_bulk_msg fndecl 3-2 27246 NULL
++sisusb_recv_bulk_msg_fndecl_27246_fields sisusb_recv_bulk_msg fndecl 2-3 27246 NULL
+skb_read_pdu_data_fndecl_27249_fields skb_read_pdu_data fndecl 4 27249 NULL
-+zoneshift_alauda_card_info_27252_fields zoneshift alauda_card_info 0 27252 NULL nohasharray
-+ocfs2_xattr_value_truncate_fndecl_27252_fields ocfs2_xattr_value_truncate fndecl 3 27252 &zoneshift_alauda_card_info_27252_fields
++ocfs2_xattr_value_truncate_fndecl_27252_fields ocfs2_xattr_value_truncate fndecl 3 27252 NULL nohasharray
++zoneshift_alauda_card_info_27252_fields zoneshift alauda_card_info 0 27252 &ocfs2_xattr_value_truncate_fndecl_27252_fields
+amb_base_i5k_amb_data_27255_fields amb_base i5k_amb_data 0 27255 NULL
-+num_tx_qs_be_adapter_27257_fields num_tx_qs be_adapter 0 27257 NULL
-+__platform_create_bundle_fndecl_27260_fields __platform_create_bundle fndecl 6-4 27260 NULL
++datafab_read_data_fndecl_27257_fields datafab_read_data fndecl 4 27257 NULL nohasharray
++num_tx_qs_be_adapter_27257_fields num_tx_qs be_adapter 0 27257 &datafab_read_data_fndecl_27257_fields
+sector_drbd_interval_27266_fields sector drbd_interval 0 27266 NULL
-+alloc_swapdev_block_fndecl_27267_fields alloc_swapdev_block fndecl 0 27267 NULL
+truesize_iwl_rx_cmd_buffer_27273_fields truesize iwl_rx_cmd_buffer 0 27273 NULL
+bios_hardcoded_edid_size_amdgpu_mode_info_27277_fields bios_hardcoded_edid_size amdgpu_mode_info 0 27277 NULL
+netxen_process_rcv_fndecl_27279_fields netxen_process_rcv fndecl 4 27279 NULL
-+alloc_async_fndecl_27283_fields alloc_async fndecl 1 27283 NULL
+sector_r10bio_27298_fields sector r10bio 0 27298 NULL
+offset_mlx5_ib_wq_27302_fields offset mlx5_ib_wq 0 27302 NULL
-+ath6kl_connect_event_fndecl_27304_fields ath6kl_connect_event fndecl 7-9-8 27304 NULL
++ath6kl_connect_event_fndecl_27304_fields ath6kl_connect_event fndecl 7 27304 NULL
+gpu_mem_size_vml_par_27308_fields gpu_mem_size vml_par 0 27308 NULL
+sctp_recvmsg_fndecl_27314_fields sctp_recvmsg fndecl 3 27314 NULL
+chunk_sectors_r5conf_27317_fields chunk_sectors r5conf 0 27317 NULL
+lpe_size_sst_pdata_27329_fields lpe_size sst_pdata 0 27329 NULL
++block_size_persistent_ram_ecc_info_27331_fields block_size persistent_ram_ecc_info 0 27331 NULL
+write_buffer_fndecl_27339_fields write_buffer fndecl 2-0 27339 NULL
+align_pad_cqe_rx_t_27341_fields align_pad cqe_rx_t 0 27341 NULL
+sndbuf_tun_struct_27345_fields sndbuf tun_struct 0 27345 NULL
+acpi_os_map_iomem_fndecl_27346_fields acpi_os_map_iomem fndecl 2-1 27346 NULL nohasharray
-+add_numbered_child_fndecl_27346_fields add_numbered_child fndecl 7-8-3-5 27346 &acpi_os_map_iomem_fndecl_27346_fields
++add_numbered_child_fndecl_27346_fields add_numbered_child fndecl 7-8-3 27346 &acpi_os_map_iomem_fndecl_27346_fields
+pix_format_set_size_fndecl_27356_fields pix_format_set_size fndecl 3-4 27356 NULL
+static_data_priv_len_wl1271_27357_fields static_data_priv_len wl1271 0 27357 NULL
+xfs_bmap_last_offset_fndecl_27364_fields xfs_bmap_last_offset fndecl 0 27364 NULL
-+find_new_extents_fndecl_27368_fields find_new_extents fndecl 5 27368 NULL
-+channels_pda_pa_curve_data_27369_fields channels pda_pa_curve_data 0 27369 NULL nohasharray
-+pci_iov_remove_virtfn_fndecl_27369_fields pci_iov_remove_virtfn fndecl 2 27369 &channels_pda_pa_curve_data_27369_fields
-+num_altsetting_usb_interface_27371_fields num_altsetting usb_interface 0 27371 NULL
-+mod_len_ccp_rsa_engine_27374_fields mod_len ccp_rsa_engine 0 27374 NULL nohasharray
-+urb_size_tm6000_core_27374_fields urb_size tm6000_core 0 27374 &mod_len_ccp_rsa_engine_27374_fields
++ext_tree_layoutupdate_size_fndecl_27368_fields ext_tree_layoutupdate_size fndecl 0-2 27368 NULL nohasharray
++find_new_extents_fndecl_27368_fields find_new_extents fndecl 5 27368 &ext_tree_layoutupdate_size_fndecl_27368_fields
++pci_iov_remove_virtfn_fndecl_27369_fields pci_iov_remove_virtfn fndecl 2 27369 NULL nohasharray
++channels_pda_pa_curve_data_27369_fields channels pda_pa_curve_data 0 27369 &pci_iov_remove_virtfn_fndecl_27369_fields
++mod_len_ccp_rsa_engine_27374_fields mod_len ccp_rsa_engine 0 27374 NULL
+dwNtbOutMaxSize_usb_cdc_ncm_ntb_parameters_27384_fields dwNtbOutMaxSize usb_cdc_ncm_ntb_parameters 0 27384 NULL
+frame_size_audioformat_27394_fields frame_size audioformat 0 27394 NULL
+ccid_kmem_cache_create_fndecl_27397_fields ccid_kmem_cache_create fndecl 1 27397 NULL
+iscsit_xmit_nondatain_pdu_fndecl_27400_fields iscsit_xmit_nondatain_pdu fndecl 4 27400 NULL
-+btrfs_copy_from_user_fndecl_27405_fields btrfs_copy_from_user fndecl 0-1-2 27405 NULL nohasharray
-+m_bsize_xfs_mount_27405_fields m_bsize xfs_mount 0 27405 &btrfs_copy_from_user_fndecl_27405_fields
++m_bsize_xfs_mount_27405_fields m_bsize xfs_mount 0 27405 NULL nohasharray
++btrfs_copy_from_user_fndecl_27405_fields btrfs_copy_from_user fndecl 0-1-2 27405 &m_bsize_xfs_mount_27405_fields
+max_payload_rpc_xprt_27408_fields max_payload rpc_xprt 0 27408 NULL
+bucket_table_alloc_fndecl_27422_fields bucket_table_alloc fndecl 2 27422 NULL
-+service_name_len_nfc_llcp_sock_27424_fields service_name_len nfc_llcp_sock 0 27424 NULL nohasharray
-+dst_frames_snd_pcm_plugin_27424_fields dst_frames snd_pcm_plugin 0 27424 &service_name_len_nfc_llcp_sock_27424_fields
++dst_frames_snd_pcm_plugin_27424_fields dst_frames snd_pcm_plugin 0 27424 NULL nohasharray
++service_name_len_nfc_llcp_sock_27424_fields service_name_len nfc_llcp_sock 0 27424 &dst_frames_snd_pcm_plugin_27424_fields
++max_nan_de_entries_ieee80211_hw_27425_fields max_nan_de_entries ieee80211_hw 0 27425 NULL
+build_virtual_key_fndecl_27427_fields build_virtual_key fndecl 2 27427 NULL
+ad9523_read_fndecl_27434_fields ad9523_read fndecl 2 27434 NULL
-+__fsnotify_parent_fndecl_27437_fields __fsnotify_parent fndecl 0 27437 NULL nohasharray
-+qp_memcpy_to_queue_fndecl_27437_fields qp_memcpy_to_queue fndecl 5-2 27437 &__fsnotify_parent_fndecl_27437_fields
++qp_memcpy_to_queue_fndecl_27437_fields qp_memcpy_to_queue fndecl 5-2 27437 NULL nohasharray
++__fsnotify_parent_fndecl_27437_fields __fsnotify_parent fndecl 0 27437 &qp_memcpy_to_queue_fndecl_27437_fields
+regmap_spi_async_write_fndecl_27439_fields regmap_spi_async_write fndecl 3-5 27439 NULL
+produce_size_vmci_qp_alloc_info_vmvm_27440_fields produce_size vmci_qp_alloc_info_vmvm 0 27440 NULL
-+mpwqe_log_num_strides_mlx5e_params_27444_fields mpwqe_log_num_strides mlx5e_params 0 27444 NULL
+radeon_vm_block_size_vardecl_27445_fields radeon_vm_block_size vardecl 0 27445 NULL
+lpfc_sriov_nr_virtfn_vardecl_lpfc_attr_c_27446_fields lpfc_sriov_nr_virtfn vardecl_lpfc_attr.c 0 27446 NULL
+dm_table_get_num_targets_fndecl_27451_fields dm_table_get_num_targets fndecl 0 27451 NULL
+fec_read_bufs_fndecl_27452_fields fec_read_bufs fndecl 3 27452 NULL
-+set_offset_v2_k_type_fndecl_27455_fields set_offset_v2_k_type fndecl 2 27455 NULL nohasharray
-+num_modes_max1363_chip_info_27455_fields num_modes max1363_chip_info 0 27455 &set_offset_v2_k_type_fndecl_27455_fields
++set_offset_v2_k_type_fndecl_27455_fields set_offset_v2_k_type fndecl 2 27455 NULL
+xfs_dir3_data_init_fndecl_27460_fields xfs_dir3_data_init fndecl 2 27460 NULL
+io_opt_queue_limits_27462_fields io_opt queue_limits 0 27462 NULL
+next_header_vardecl_initramfs_c_27464_fields next_header vardecl_initramfs.c 0 27464 NULL
@@ -195295,17 +199952,20 @@ index 0000000..6b5367db
+max_slots_nfs4_slot_table_27470_fields max_slots nfs4_slot_table 0 27470 NULL
+window_alignment_fndecl_27476_fields window_alignment fndecl 0 27476 NULL
+size_btrfs_ioctl_ino_path_args_27477_fields size btrfs_ioctl_ino_path_args 0 27477 NULL
-+image_swsusp_header_27481_fields image swsusp_header 0 27481 NULL
++max_mr_qedr_device_attr_27478_fields max_mr qedr_device_attr 0 27478 NULL nohasharray
++mq_msgsize_default_ipc_namespace_27478_fields mq_msgsize_default ipc_namespace 0 27478 &max_mr_qedr_device_attr_27478_fields
++do_iter_readv_writev_fndecl_27481_fields do_iter_readv_writev fndecl 0 27481 NULL
+min_pnp_mem_27484_fields min pnp_mem 0 27484 NULL
+kim_int_recv_fndecl_27486_fields kim_int_recv fndecl 3 27486 NULL nohasharray
+snd_seq_fifo_resize_fndecl_27486_fields snd_seq_fifo_resize fndecl 2 27486 &kim_int_recv_fndecl_27486_fields
+status_udc_data_dma_27488_fields status udc_data_dma 0 27488 NULL
-+local_nentries_xpc_channel_27489_fields local_nentries xpc_channel 0 27489 NULL nohasharray
-+drbd_send_drequest_csum_fndecl_27489_fields drbd_send_drequest_csum fndecl 5 27489 &local_nentries_xpc_channel_27489_fields
++drbd_send_drequest_csum_fndecl_27489_fields drbd_send_drequest_csum fndecl 5 27489 NULL
+pool_rsvd_cxgbi_ppm_27491_fields pool_rsvd cxgbi_ppm 0 27491 NULL
+wb_index_nfs_page_27494_fields wb_index nfs_page 0 27494 NULL
+ocfs2_xa_value_truncate_fndecl_27495_fields ocfs2_xa_value_truncate fndecl 2 27495 NULL
+qib_mmap_mem_fndecl_27496_fields qib_mmap_mem fndecl 3 27496 NULL
++rq_size_srpt_rdma_ch_27500_fields rq_size srpt_rdma_ch 0 27500 NULL
++rx_buf_size_bnx2x_fastpath_27506_fields rx_buf_size bnx2x_fastpath 0 27506 NULL
+max_qp_sz_mthca_dev_lim_27511_fields max_qp_sz mthca_dev_lim 0 27511 NULL
+stripe_len_map_lookup_27512_fields stripe_len map_lookup 0 27512 NULL
+vis_h_yuv_frame_info_27514_fields vis_h yuv_frame_info 0 27514 NULL
@@ -195316,18 +199976,17 @@ index 0000000..6b5367db
+dwc2_hsotg_rx_data_fndecl_27540_fields dwc2_hsotg_rx_data fndecl 3 27540 NULL
+max_mem_ttm_mem_zone_27542_fields max_mem ttm_mem_zone 0 27542 NULL nohasharray
+onenand_mlc_read_ops_nolock_fndecl_27542_fields onenand_mlc_read_ops_nolock fndecl 2 27542 &max_mem_ttm_mem_zone_27542_fields
-+sr_write_fndecl_27546_fields sr_write fndecl 3 27546 NULL
+snd_pcm_plug_slave_size_fndecl_27548_fields snd_pcm_plug_slave_size fndecl 0-2 27548 NULL
+remap_and_issue_fndecl_27555_fields remap_and_issue fndecl 3 27555 NULL
-+total_cpus_vardecl_27560_fields total_cpus vardecl 0 27560 NULL
+pipe_in_rtl8xxxu_priv_27564_fields pipe_in rtl8xxxu_priv 0 27564 NULL
-+sddr09_write_data_fndecl_27565_fields sddr09_write_data fndecl 2 27565 NULL
++sddr09_write_data_fndecl_27565_fields sddr09_write_data fndecl 3-2 27565 NULL
+size_gf100_gr_fuc_27570_fields size gf100_gr_fuc 0 27570 NULL
+disabled_cpus_vardecl_27577_fields disabled_cpus vardecl 0 27577 NULL
+count_cxgbi_task_data_27578_fields count cxgbi_task_data 0 27578 NULL
+gfx_v8_0_get_csb_size_fndecl_27579_fields gfx_v8_0_get_csb_size fndecl 0 27579 NULL nohasharray
+dev_count_vardecl_smsc_ircc2_c_27579_fields dev_count vardecl_smsc-ircc2.c 0 27579 &gfx_v8_0_get_csb_size_fndecl_27579_fields
+nregions_vhost_memory_27586_fields nregions vhost_memory 0 27586 NULL
++active_key_id_sctp_association_27587_fields active_key_id sctp_association 0 27587 NULL
+phys_addr_rio_mport_mapping_27591_fields phys_addr rio_mport_mapping 0 27591 NULL
+xfs_bmap_alloc_fndecl_27599_fields xfs_bmap_alloc fndecl 0 27599 NULL
+btrfs_get_blocks_direct_fndecl_27603_fields btrfs_get_blocks_direct fndecl 2 27603 NULL
@@ -195339,15 +199998,17 @@ index 0000000..6b5367db
+read_isac_isac_27627_fields read_isac isac 0 27627 NULL
+data_length_se_cmd_27629_fields data_length se_cmd 0 27629 NULL
+group_size_rcv_array_data_27633_fields group_size rcv_array_data 0 27633 NULL
++snoop_urb_data_fndecl_27635_fields snoop_urb_data fndecl 2 27635 NULL
+st_scsi_execute_fndecl_27643_fields st_scsi_execute fndecl 5 27643 NULL
+bsize_videobuf_buffer_27645_fields bsize videobuf_buffer 0 27645 NULL
+period_frames_usb_stream_config_27656_fields period_frames usb_stream_config 0 27656 NULL
+WriteRegs_fndecl_27658_fields WriteRegs fndecl 4 27658 NULL
+xen_get_pages_limit_fndecl_27661_fields xen_get_pages_limit fndecl 0 27661 NULL
++gb_operation_create_common_fndecl_27662_fields gb_operation_create_common fndecl 4 27662 NULL
+ceph_osdc_wait_request_fndecl_27663_fields ceph_osdc_wait_request fndecl 0 27663 NULL
+efx_ef10_mem_map_size_fndecl_27664_fields efx_ef10_mem_map_size fndecl 0 27664 NULL
+size_compat_ip6t_replace_27672_fields size compat_ip6t_replace 0 27672 NULL
-+ib_umem_get_fndecl_27678_fields ib_umem_get fndecl 2-3 27678 NULL
++ib_umem_get_fndecl_27678_fields ib_umem_get fndecl 3-2 27678 NULL
+bnx2x_iov_init_one_fndecl_27687_fields bnx2x_iov_init_one fndecl 3 27687 NULL
+mt9m111_get_global_gain_fndecl_27689_fields mt9m111_get_global_gain fndecl 0 27689 NULL
+ipv6_get_l4proto_fndecl_27691_fields ipv6_get_l4proto fndecl 2 27691 NULL
@@ -195356,13 +200017,10 @@ index 0000000..6b5367db
+snd_pcm_plugin_alloc_fndecl_27703_fields snd_pcm_plugin_alloc fndecl 2 27703 NULL
+actual_size_mlx4_en_rx_ring_27705_fields actual_size mlx4_en_rx_ring 0 27705 NULL
+sequence_num_usb_ftdi_27707_fields sequence_num usb_ftdi 0 27707 NULL
-+niu_rx_skb_append_fndecl_27708_fields niu_rx_skb_append fndecl 4-5-3 27708 NULL
++niu_rx_skb_append_fndecl_27708_fields niu_rx_skb_append fndecl 4-3-5 27708 NULL
+ns83820_change_mtu_fndecl_27711_fields ns83820_change_mtu fndecl 2 27711 NULL
-+sdhci_pltfm_init_fndecl_27712_fields sdhci_pltfm_init fndecl 3 27712 NULL
-+ioat_dca_count_dca_slots_fndecl_27732_fields ioat_dca_count_dca_slots fndecl 0 27732 NULL
+ieee80211_ie_split_vendor_fndecl_27738_fields ieee80211_ie_split_vendor fndecl 0-3 27738 NULL nohasharray
+qla27xx_fwdt_calculate_dump_size_fndecl_27738_fields qla27xx_fwdt_calculate_dump_size fndecl 0 27738 &ieee80211_ie_split_vendor_fndecl_27738_fields
-+word_size_e1000_eeprom_info_27741_fields word_size e1000_eeprom_info 0 27741 NULL
+sparse_mem_maps_populate_node_fndecl_27758_fields sparse_mem_maps_populate_node fndecl 4 27758 NULL
+pool_ns_len_ceph_mds_reply_info_in_27761_fields pool_ns_len ceph_mds_reply_info_in 0 27761 NULL
+nr_sendmsg_fndecl_27763_fields nr_sendmsg fndecl 3 27763 NULL
@@ -195388,16 +200046,13 @@ index 0000000..6b5367db
+corruption_check_size_vardecl_check_c_27830_fields corruption_check_size vardecl_check.c 0 27830 NULL
+nfp_net_rx_alloc_one_fndecl_27831_fields nfp_net_rx_alloc_one fndecl 3 27831 NULL
+number_of_effective_blocks_ms_boot_attr_info_27832_fields number_of_effective_blocks ms_boot_attr_info 0 27832 NULL
-+type_kqid_27833_fields type kqid 0 27833 NULL
+num_bcma_bus_27835_fields num bcma_bus 0 27835 NULL
+adm8211_tx_raw_fndecl_27839_fields adm8211_tx_raw fndecl 3-4 27839 NULL
-+cfg_niq_csio_hw_27842_fields cfg_niq csio_hw 0 27842 NULL nohasharray
-+__getblk_slow_fndecl_27842_fields __getblk_slow fndecl 3-2 27842 &cfg_niq_csio_hw_27842_fields
++__getblk_slow_fndecl_27842_fields __getblk_slow fndecl 3-2 27842 NULL
+dd_bsg_size_fc_function_template_27852_fields dd_bsg_size fc_function_template 0 27852 NULL
+size_pnp_port_27856_fields size pnp_port 0 27856 NULL
+xfs_da3_node_read_fndecl_27858_fields xfs_da3_node_read fndecl 3 27858 NULL
-+ngroups_rcv_array_data_27872_fields ngroups rcv_array_data 0 27872 NULL nohasharray
-+max_slave_count_w1_master_27872_fields max_slave_count w1_master 0 27872 &ngroups_rcv_array_data_27872_fields
++ngroups_rcv_array_data_27872_fields ngroups rcv_array_data 0 27872 NULL
+lo_len_nfsd4_lookup_27874_fields lo_len nfsd4_lookup 0 27874 NULL
+l_blkno_lbuf_27876_fields l_blkno lbuf 0 27876 NULL
+msb_sg_copy_fndecl_27886_fields msb_sg_copy fndecl 5-4 27886 NULL
@@ -195408,7 +200063,6 @@ index 0000000..6b5367db
+__lbs_cmd_fndecl_27904_fields __lbs_cmd fndecl 4 27904 &rvt_resize_cq_fndecl_27904_fields
+reada_tree_block_flagged_fndecl_27912_fields reada_tree_block_flagged fndecl 2 27912 NULL
+tp_datalen_bcm5974_config_27927_fields tp_datalen bcm5974_config 0 27927 NULL
-+numchips_lpddr_private_27938_fields numchips lpddr_private 0 27938 NULL
+get_burstcount_fndecl_27942_fields get_burstcount fndecl 0 27942 NULL nohasharray
+capacity_cdrom_device_info_27942_fields capacity cdrom_device_info 0 27942 &get_burstcount_fndecl_27942_fields
+handle_mm_fault_fndecl_27947_fields handle_mm_fault fndecl 2 27947 NULL
@@ -195416,6 +200070,8 @@ index 0000000..6b5367db
+usbat_hp8200e_rw_block_test_fndecl_27957_fields usbat_hp8200e_rw_block_test fndecl 12 27957 NULL
+size_plx_pci_channel_map_27958_fields size plx_pci_channel_map 0 27958 NULL
+xfs_bmap_last_extent_fndecl_27964_fields xfs_bmap_last_extent fndecl 0 27964 NULL
++i_namelen_f2fs_inode_27967_fields i_namelen f2fs_inode 0 27967 NULL
++msi_prepare_msi_domain_ops_27969_fields msi_prepare msi_domain_ops 0 27969 NULL
+fat_build_inode_fndecl_27970_fields fat_build_inode fndecl 3 27970 NULL
+iip_ubifs_znode_27974_fields iip ubifs_znode 0 27974 NULL
+sxgbe_init_rx_buffers_fndecl_27984_fields sxgbe_init_rx_buffers fndecl 4 27984 NULL
@@ -195428,25 +200084,26 @@ index 0000000..6b5367db
+ubifs_end_scan_fndecl_28000_fields ubifs_end_scan fndecl 4 28000 &page_count_scrub_block_28000_fields
+max_x_fb_monspecs_28003_fields max_x fb_monspecs 0 28003 NULL
+bytes_str_to_int_fndecl_28004_fields bytes_str_to_int fndecl 0 28004 NULL
++scif_recv_fndecl_28006_fields scif_recv fndecl 3 28006 NULL
+resp_ie_len_brcmf_cfg80211_connect_info_28007_fields resp_ie_len brcmf_cfg80211_connect_info 0 28007 NULL
+memtest_fndecl_28012_fields memtest fndecl 2 28012 NULL
+ext4_bg_num_gdb_nometa_fndecl_28014_fields ext4_bg_num_gdb_nometa fndecl 0 28014 NULL
+iwl_read_prph_no_grab_fndecl_28026_fields iwl_read_prph_no_grab fndecl 0 28026 NULL
++evtchn_alloc_ring_fndecl_28034_fields evtchn_alloc_ring fndecl 1 28034 NULL
+assign_irq_fndecl_28035_fields assign_irq fndecl 1 28035 NULL
+min_size_vx_ibl_info_28043_fields min_size vx_ibl_info 0 28043 NULL
+new_chunk_dm_exception_28044_fields new_chunk dm_exception 0 28044 NULL
-+num_intr_mic_intr_info_28048_fields num_intr mic_intr_info 0 28048 NULL
+vc_top_vc_data_28051_fields vc_top vc_data 0 28051 NULL
+virtio_gpu_cmd_set_scanout_fndecl_28053_fields virtio_gpu_cmd_set_scanout fndecl 4-5 28053 NULL
+maxpacket_usbnet_28054_fields maxpacket usbnet 0 28054 NULL
+cl_nodelen_rpc_clnt_28055_fields cl_nodelen rpc_clnt 0 28055 NULL
+xfs_end_io_direct_write_fndecl_28060_fields xfs_end_io_direct_write fndecl 3-2 28060 NULL
++s_imap_blocks_minix_sb_info_28062_fields s_imap_blocks minix_sb_info 0 28062 NULL
+gfs2_llseek_fndecl_28067_fields gfs2_llseek fndecl 2 28067 NULL
+nr_cmds_drm_msm_gem_submit_28071_fields nr_cmds drm_msm_gem_submit 0 28071 NULL
+rsi_prepare_skb_fndecl_28075_fields rsi_prepare_skb fndecl 4-3 28075 NULL
+qla4_82xx_pci_mem_write_direct_fndecl_28076_fields qla4_82xx_pci_mem_write_direct fndecl 2 28076 NULL
+abituguru_detect_fndecl_28078_fields abituguru_detect fndecl 0 28078 NULL
-+bio_slab_max_vardecl_bio_c_28087_fields bio_slab_max vardecl_bio.c 0 28087 NULL
+ddr_start_mthca_dev_28088_fields ddr_start mthca_dev 0 28088 NULL
+xlog_state_get_iclog_space_fndecl_28090_fields xlog_state_get_iclog_space fndecl 2 28090 NULL
+vxfs_read_olt_fndecl_28091_fields vxfs_read_olt fndecl 2 28091 NULL
@@ -195455,8 +200112,7 @@ index 0000000..6b5367db
+ath6kl_wmi_set_wmm_txop_fndecl_28102_fields ath6kl_wmi_set_wmm_txop fndecl 2 28102 NULL
+udf_check_anchor_block_fndecl_28107_fields udf_check_anchor_block fndecl 2 28107 NULL
+gru_alloc_thread_state_fndecl_28109_fields gru_alloc_thread_state fndecl 2 28109 NULL
-+ufs_inode_getfrag_fndecl_28110_fields ufs_inode_getfrag fndecl 3-0 28110 NULL nohasharray
-+nfs_readdir_make_qstr_fndecl_28110_fields nfs_readdir_make_qstr fndecl 3 28110 &ufs_inode_getfrag_fndecl_28110_fields
++ufs_inode_getfrag_fndecl_28110_fields ufs_inode_getfrag fndecl 3-0 28110 NULL
+comm_base_mlx4_fw_28125_fields comm_base mlx4_fw 0 28125 NULL
+xfs_get_extsz_hint_fndecl_28128_fields xfs_get_extsz_hint fndecl 0 28128 NULL
+wLength_usb_ctrlrequest_28143_fields wLength usb_ctrlrequest 0 28143 NULL
@@ -195483,7 +200139,8 @@ index 0000000..6b5367db
+lec_change_mtu_fndecl_28213_fields lec_change_mtu fndecl 2 28213 NULL
+blk_rq_map_sg_fndecl_28215_fields blk_rq_map_sg fndecl 0 28215 NULL
+mpt_base_mthca_mr_table_28221_fields mpt_base mthca_mr_table 0 28221 NULL
-+s_blocksize_bits_super_block_28225_fields s_blocksize_bits super_block 0 28225 NULL
++s_blocksize_bits_super_block_28225_fields s_blocksize_bits super_block 0 28225 NULL nohasharray
++wil_seq_hexdump_fndecl_28225_fields wil_seq_hexdump fndecl 3 28225 &s_blocksize_bits_super_block_28225_fields
+space_slots_btrfs_ioctl_space_args_28231_fields space_slots btrfs_ioctl_space_args 0 28231 NULL
+mux_device_request_fndecl_28235_fields mux_device_request fndecl 7 28235 NULL nohasharray
+l2cap_mtu_vardecl_core_c_28235_fields l2cap_mtu vardecl_core.c 0 28235 &mux_device_request_fndecl_28235_fields
@@ -195492,6 +200149,7 @@ index 0000000..6b5367db
+loop_end_patch_info_28242_fields loop_end patch_info 0 28242 NULL
+btrfs_qgroup_free_data_fndecl_28246_fields btrfs_qgroup_free_data fndecl 2-3 28246 NULL nohasharray
+ino_bfs_dirent_28246_fields ino bfs_dirent 0 28246 &btrfs_qgroup_free_data_fndecl_28246_fields
++baud_base_serial_struct_28251_fields baud_base serial_struct 0 28251 NULL
+bcm_tx_send_fndecl_28258_fields bcm_tx_send fndecl 4 28258 NULL
+count_e1000_tx_ring_28261_fields count e1000_tx_ring 0 28261 NULL nohasharray
+ea_set_i_fndecl_28261_fields ea_set_i fndecl 5 28261 &count_e1000_tx_ring_28261_fields
@@ -195507,31 +200165,31 @@ index 0000000..6b5367db
+save_total_len_pch_spi_data_28296_fields save_total_len pch_spi_data 0 28296 NULL
+flags2_psb_s_28305_fields flags2 psb_s 0 28305 NULL
+__xfs_get_blocks_fndecl_28308_fields __xfs_get_blocks fndecl 2 28308 NULL
-+sst25l_read_fndecl_28315_fields sst25l_read fndecl 3 28315 NULL
-+npages_mlx4_buf_28321_fields npages mlx4_buf 0 28321 NULL
++intel_ring_create_vma_fndecl_28315_fields intel_ring_create_vma fndecl 2 28315 NULL nohasharray
++sst25l_read_fndecl_28315_fields sst25l_read fndecl 3 28315 &intel_ring_create_vma_fndecl_28315_fields
+size_ORANGEFS_dev_map_desc_28323_fields size ORANGEFS_dev_map_desc 0 28323 NULL
+atmel_read_fndecl_28325_fields atmel_read fndecl 4 28325 NULL
+raw_descs_length_ffs_data_28328_fields raw_descs_length ffs_data 0 28328 NULL
+max_segment_size_brcmf_sdio_dev_28330_fields max_segment_size brcmf_sdio_dev 0 28330 NULL nohasharray
+size_videobuf_dmabuf_28330_fields size videobuf_dmabuf 0 28330 &max_segment_size_brcmf_sdio_dev_28330_fields
-+asix_read_cmd_fndecl_28334_fields asix_read_cmd fndecl 5 28334 NULL
++sys_pkey_mprotect_fndecl_28339_fields sys_pkey_mprotect fndecl 2-1 28339 NULL
+ie_length_ndis_80211_bssid_ex_28346_fields ie_length ndis_80211_bssid_ex 0 28346 NULL
+irq_domain_alloc_irqs_recursive_fndecl_28349_fields irq_domain_alloc_irqs_recursive fndecl 0 28349 NULL
-+c4iw_reg_user_mr_fndecl_28358_fields c4iw_reg_user_mr fndecl 2-3 28358 NULL
++msi_domain_prepare_irqs_fndecl_28353_fields msi_domain_prepare_irqs fndecl 0 28353 NULL
++j_blocksize_journal_s_28358_fields j_blocksize journal_s 0 28358 NULL nohasharray
++c4iw_reg_user_mr_fndecl_28358_fields c4iw_reg_user_mr fndecl 3-2 28358 &j_blocksize_journal_s_28358_fields
+pmcraid_notify_aen_fndecl_28361_fields pmcraid_notify_aen fndecl 3 28361 NULL
+carl9170_rx_fndecl_28363_fields carl9170_rx fndecl 3 28363 NULL
+kvm_lapic_enable_pv_eoi_fndecl_28370_fields kvm_lapic_enable_pv_eoi fndecl 2 28370 NULL
+snd_emu10k1_fx8010_tram_setup_fndecl_28371_fields snd_emu10k1_fx8010_tram_setup fndecl 2 28371 NULL
-+count_atl1e_tx_ring_28372_fields count atl1e_tx_ring 0 28372 NULL nohasharray
-+hostap_80211_get_hdrlen_fndecl_28372_fields hostap_80211_get_hdrlen fndecl 0 28372 &count_atl1e_tx_ring_28372_fields
++hostap_80211_get_hdrlen_fndecl_28372_fields hostap_80211_get_hdrlen fndecl 0 28372 NULL nohasharray
++count_atl1e_tx_ring_28372_fields count atl1e_tx_ring 0 28372 &hostap_80211_get_hdrlen_fndecl_28372_fields
++init_tid_tabs_fndecl_28375_fields init_tid_tabs fndecl 4-3-2 28375 NULL
+pktlen_rtl8xxxu_rxdesc16_28378_fields pktlen rtl8xxxu_rxdesc16 0 28378 NULL
+iova_ib_mr_28381_fields iova ib_mr 0 28381 NULL
-+paddr_vmcoreinfo_note_fndecl_28388_fields paddr_vmcoreinfo_note fndecl 0 28388 NULL
-+dst_uffdio_copy_28391_fields dst uffdio_copy 0 28391 NULL
+interrupt_in_endpointAddress_usb_serial_port_28398_fields interrupt_in_endpointAddress usb_serial_port 0 28398 NULL
-+cxd2820r_rd_regs_fndecl_28402_fields cxd2820r_rd_regs fndecl 4 28402 NULL
++clk_multiplier_round_rate_fndecl_28401_fields clk_multiplier_round_rate fndecl 2 28401 NULL
+length_rxe_sge_28408_fields length rxe_sge 0 28408 NULL
-+platform_device_add_resources_fndecl_28410_fields platform_device_add_resources fndecl 3 28410 NULL
+channel_bc_state_28411_fields channel bc_state 0 28411 NULL
+dma_size_cx25821_audio_dev_28423_fields dma_size cx25821_audio_dev 0 28423 NULL
+at24_eeprom_read_mac_fndecl_28426_fields at24_eeprom_read_mac fndecl 4 28426 NULL
@@ -195539,7 +200197,7 @@ index 0000000..6b5367db
+jfs_issue_discard_fndecl_28440_fields jfs_issue_discard fndecl 3-2 28440 NULL
+sb_agcount_xfs_sb_28441_fields sb_agcount xfs_sb 0 28441 NULL nohasharray
+mgmt_event_fndecl_28441_fields mgmt_event fndecl 4 28441 &sb_agcount_xfs_sb_28441_fields
-+iscsi_iser_session_create_fndecl_28447_fields iscsi_iser_session_create fndecl 3 28447 NULL
++stripe_size_bcache_device_28454_fields stripe_size bcache_device 0 28454 NULL
+mi_entries_per_block_nilfs_mdt_info_28458_fields mi_entries_per_block nilfs_mdt_info 0 28458 NULL nohasharray
+st_nci_hci_dm_vdc_value_comparison_fndecl_28458_fields st_nci_hci_dm_vdc_value_comparison fndecl 3 28458 &mi_entries_per_block_nilfs_mdt_info_28458_fields
+irda_connect_confirm_fndecl_28460_fields irda_connect_confirm fndecl 4-5 28460 NULL nohasharray
@@ -195548,8 +200206,7 @@ index 0000000..6b5367db
+md_offset_drbd_md_28466_fields md_offset drbd_md 0 28466 NULL
+osd_upper_vardecl_ivtvfb_c_28473_fields osd_upper vardecl_ivtvfb.c 0 28473 NULL nohasharray
+ath6kl_wmi_add_wow_pattern_cmd_fndecl_28473_fields ath6kl_wmi_add_wow_pattern_cmd fndecl 4-2 28473 &osd_upper_vardecl_ivtvfb_c_28473_fields
-+pa_pstart_ext4_prealloc_space_28478_fields pa_pstart ext4_prealloc_space 0 28478 NULL nohasharray
-+mgslpc_device_count_vardecl_synclink_cs_c_28478_fields mgslpc_device_count vardecl_synclink_cs.c 0 28478 &pa_pstart_ext4_prealloc_space_28478_fields
++pa_pstart_ext4_prealloc_space_28478_fields pa_pstart ext4_prealloc_space 0 28478 NULL
+block_size_sd_28480_fields block_size sd 0 28480 NULL
+amdgpu_align_pitch_fndecl_28483_fields amdgpu_align_pitch fndecl 0-2 28483 NULL
+service_map_len_wmi_svc_rdy_ev_arg_28484_fields service_map_len wmi_svc_rdy_ev_arg 0 28484 NULL
@@ -195563,9 +200220,8 @@ index 0000000..6b5367db
+xen_add_extra_mem_fndecl_28519_fields xen_add_extra_mem fndecl 1-2 28519 NULL
+free_tind_blocks_fndecl_28525_fields free_tind_blocks fndecl 3 28525 NULL
+src_width_snd_pcm_plugin_28529_fields src_width snd_pcm_plugin 0 28529 NULL
-+max_rds_rings_qlcnic_adapter_28536_fields max_rds_rings qlcnic_adapter 0 28536 NULL
+ext4_bread_fndecl_28538_fields ext4_bread fndecl 3 28538 NULL
-+btcx_screen_clips_fndecl_28540_fields btcx_screen_clips fndecl 1-2-0-5 28540 NULL
++btcx_screen_clips_fndecl_28540_fields btcx_screen_clips fndecl 1-2 28540 NULL
+fou_recv_pull_fndecl_28542_fields fou_recv_pull fndecl 3 28542 NULL
+md_minor_mdp_superblock_s_28551_fields md_minor mdp_superblock_s 0 28551 NULL
+len_s3fwrn5_fw_header_28556_fields len s3fwrn5_fw_header 0 28556 NULL
@@ -195574,34 +200230,35 @@ index 0000000..6b5367db
+PRO_RATE_DEFAULT_vardecl_ice1712_c_28563_fields PRO_RATE_DEFAULT vardecl_ice1712.c 0 28563 NULL
+wm_adsp_write_data_word_fndecl_28566_fields wm_adsp_write_data_word fndecl 0 28566 NULL
+size_vhost_iotlb_msg_28568_fields size vhost_iotlb_msg 0 28568 NULL
++nvme_npages_fndecl_28569_fields nvme_npages fndecl 0-1 28569 NULL
+out_max_chans_snd_card_asihpi_28574_fields out_max_chans snd_card_asihpi 0 28574 NULL
-+max_rdma_sge_ocrdma_dev_attr_28585_fields max_rdma_sge ocrdma_dev_attr 0 28585 NULL nohasharray
-+charcount_console_font_op_28585_fields charcount console_font_op 0 28585 &max_rdma_sge_ocrdma_dev_attr_28585_fields
++max_rdma_sge_ocrdma_dev_attr_28585_fields max_rdma_sge ocrdma_dev_attr 0 28585 NULL
+uhci_map_status_fndecl_28591_fields uhci_map_status fndecl 0 28591 NULL
+icsk_pmtu_cookie_inet_connection_sock_28598_fields icsk_pmtu_cookie inet_connection_sock 0 28598 NULL
+n_devs_pci_id_table_28599_fields n_devs pci_id_table 0 28599 NULL
+status_smsc9420_dma_desc_28600_fields status smsc9420_dma_desc 0 28600 NULL
+stride_usX2Ydev_28605_fields stride usX2Ydev 0 28605 NULL
+zone_spanned_pages_in_node_fndecl_28608_fields zone_spanned_pages_in_node fndecl 0 28608 NULL
-+ubifs_scan_a_node_fndecl_28611_fields ubifs_scan_a_node fndecl 0 28611 NULL
++ubifs_scan_a_node_fndecl_28611_fields ubifs_scan_a_node fndecl 0 28611 NULL nohasharray
++hmac_id_sctp_authhdr_28611_fields hmac_id sctp_authhdr 0 28611 &ubifs_scan_a_node_fndecl_28611_fields
+msb_erase_block_fndecl_28612_fields msb_erase_block fndecl 2 28612 NULL
-+ccmp_encrypt_skb_fndecl_28613_fields ccmp_encrypt_skb fndecl 3 28613 NULL nohasharray
-+vsscanf_fndecl_28613_fields vsscanf fndecl 0 28613 &ccmp_encrypt_skb_fndecl_28613_fields
++ccmp_encrypt_skb_fndecl_28613_fields ccmp_encrypt_skb fndecl 3 28613 NULL
+gru_assign_context_number_fndecl_28616_fields gru_assign_context_number fndecl 0 28616 NULL
+s_inode_size_ext4_sb_info_28625_fields s_inode_size ext4_sb_info 0 28625 NULL
-+cdc_ncm_min_dgram_size_fndecl_28632_fields cdc_ncm_min_dgram_size fndecl 0 28632 NULL
++cdc_ncm_min_dgram_size_fndecl_28632_fields cdc_ncm_min_dgram_size fndecl 0 28632 NULL nohasharray
++_get_block_create_0_fndecl_28632_fields _get_block_create_0 fndecl 2 28632 &cdc_ncm_min_dgram_size_fndecl_28632_fields
+key_size_ethtool_rxfh_28633_fields key_size ethtool_rxfh 0 28633 NULL nohasharray
+drbd_recv_all_fndecl_28633_fields drbd_recv_all fndecl 3 28633 &key_size_ethtool_rxfh_28633_fields
+log_max_len_server_hdr_28634_fields log_max_len server_hdr 0 28634 NULL
+device_count_vardecl_mts64_c_28635_fields device_count vardecl_mts64.c 0 28635 NULL
-+usb_stream_new_fndecl_28646_fields usb_stream_new fndecl 6-8-5-7-3-4 28646 NULL
-+cw1200_spi_memcpy_fromio_fndecl_28649_fields cw1200_spi_memcpy_fromio fndecl 4 28649 NULL nohasharray
-+rvt_rkey_ok_fndecl_28649_fields rvt_rkey_ok fndecl 3-4 28649 &cw1200_spi_memcpy_fromio_fndecl_28649_fields
++usb_stream_new_fndecl_28646_fields usb_stream_new fndecl 6-8-3-4-5-7 28646 NULL
++cw1200_spi_memcpy_fromio_fndecl_28649_fields cw1200_spi_memcpy_fromio fndecl 4 28649 NULL
+cur_offset_drm_dp_sideband_msg_tx_28655_fields cur_offset drm_dp_sideband_msg_tx 0 28655 NULL
+set_mr_fileds_fndecl_28677_fields set_mr_fileds fndecl 4 28677 NULL
+x25_create_facilities_fndecl_28684_fields x25_create_facilities fndecl 0 28684 NULL
-+phys_size_perf_mw_28685_fields phys_size perf_mw 0 28685 NULL
-+fill_isoc_urb_fndecl_28690_fields fill_isoc_urb fndecl 6-5-3 28690 NULL
++phys_size_perf_mw_28685_fields phys_size perf_mw 0 28685 NULL nohasharray
++tty_encode_baud_rate_fndecl_28685_fields tty_encode_baud_rate fndecl 3 28685 &phys_size_perf_mw_28685_fields
++fill_isoc_urb_fndecl_28690_fields fill_isoc_urb fndecl 6-3-5 28690 NULL
+_c4iw_write_mem_inline_fndecl_28691_fields _c4iw_write_mem_inline fndecl 3 28691 NULL
+rx_agg_buf_size_rtl8xxxu_fileops_28692_fields rx_agg_buf_size rtl8xxxu_fileops 0 28692 NULL
+stolen_size_psb_gtt_28693_fields stolen_size psb_gtt 0 28693 NULL
@@ -195610,8 +200267,6 @@ index 0000000..6b5367db
+data_len_rndis_data_hdr_28701_fields data_len rndis_data_hdr 0 28701 NULL
+cw_bmove_fndecl_28704_fields cw_bmove fndecl 7-5-3-6-8-4 28704 NULL nohasharray
+size_fuse_notify_store_out_28704_fields size fuse_notify_store_out 0 28704 &cw_bmove_fndecl_28704_fields
-+CIFSSMBWrite2_fndecl_28705_fields CIFSSMBWrite2 fndecl 5 28705 NULL
-+mlx4_init_cmpt_table_fndecl_28706_fields mlx4_init_cmpt_table fndecl 3 28706 NULL
+nilfs_bmap_lookup_contig_fndecl_28717_fields nilfs_bmap_lookup_contig fndecl 0 28717 NULL
+phys_smscore_buffer_t_28719_fields phys smscore_buffer_t 0 28719 NULL nohasharray
+start_fjes_hw_resource_28719_fields start fjes_hw_resource 0 28719 &phys_smscore_buffer_t_28719_fields
@@ -195619,18 +200274,23 @@ index 0000000..6b5367db
+xfs_rtcheck_alloc_range_fndecl_28722_fields xfs_rtcheck_alloc_range fndecl 3 28722 NULL
+lpsn_rvt_swqe_28723_fields lpsn rvt_swqe 0 28723 NULL
+note_last_dentry_fndecl_28724_fields note_last_dentry fndecl 4 28724 NULL
-+num_pports_qib_devdata_28736_fields num_pports qib_devdata 0 28736 NULL nohasharray
-+vdi_size_vxfs_dinode_28736_fields vdi_size vxfs_dinode 0 28736 &num_pports_qib_devdata_28736_fields
++vdi_size_vxfs_dinode_28736_fields vdi_size vxfs_dinode 0 28736 NULL nohasharray
++num_pports_qib_devdata_28736_fields num_pports qib_devdata 0 28736 &vdi_size_vxfs_dinode_28736_fields
++size_mspro_sys_attr_28742_fields size mspro_sys_attr 0 28742 NULL
+ns_pseg_offset_the_nilfs_28744_fields ns_pseg_offset the_nilfs 0 28744 NULL
++pci_msi_setup_msi_irqs_fndecl_28755_fields pci_msi_setup_msi_irqs fndecl 0 28755 NULL
+src_h_yuv_frame_info_28759_fields src_h yuv_frame_info 0 28759 NULL
+enc28j60_packet_write_fndecl_28762_fields enc28j60_packet_write fndecl 2 28762 NULL
+ncp_write_kernel_fndecl_28776_fields ncp_write_kernel fndecl 4 28776 NULL
++snic_print_desc_fndecl_28784_fields snic_print_desc fndecl 3 28784 NULL
+cow_file_range_fndecl_28790_fields cow_file_range fndecl 3-4 28790 NULL
+tcp_parse_fastopen_option_fndecl_28793_fields tcp_parse_fastopen_option fndecl 1 28793 NULL
++fill_swm_input_fndecl_28799_fields fill_swm_input fndecl 0 28799 NULL
+psbfb_alloc_fndecl_28804_fields psbfb_alloc fndecl 2 28804 NULL
-+items_max_vxge_hw_mempool_28806_fields items_max vxge_hw_mempool 0 28806 NULL
-+e820_remove_range_fndecl_28810_fields e820_remove_range fndecl 1-2 28810 NULL nohasharray
-+ide_queue_pc_tail_fndecl_28810_fields ide_queue_pc_tail fndecl 5 28810 &e820_remove_range_fndecl_28810_fields
++items_max_vxge_hw_mempool_28806_fields items_max vxge_hw_mempool 0 28806 NULL nohasharray
++brcmf_fil_bsscfg_data_set_fndecl_28806_fields brcmf_fil_bsscfg_data_set fndecl 4 28806 &items_max_vxge_hw_mempool_28806_fields
++e820_remove_range_fndecl_28810_fields e820_remove_range fndecl 1-2 28810 NULL
++sisusb_send_bridge_packet_fndecl_28818_fields sisusb_send_bridge_packet fndecl 2 28818 NULL
+ceph_build_auth_fndecl_28825_fields ceph_build_auth fndecl 0 28825 NULL nohasharray
+oid_printf_vargs_fndecl_28825_fields oid_printf_vargs fndecl 0 28825 &ceph_build_auth_fndecl_28825_fields
+sdio_memcpy_toio_fndecl_28828_fields sdio_memcpy_toio fndecl 4 28828 NULL
@@ -195638,9 +200298,7 @@ index 0000000..6b5367db
+right_qxl_urect_28833_fields right qxl_urect 0 28833 NULL nohasharray
+ivtv_udma_get_page_info_fndecl_28833_fields ivtv_udma_get_page_info fndecl 2-3 28833 &right_qxl_urect_28833_fields
+dm_table_add_target_fndecl_28838_fields dm_table_add_target fndecl 4-3 28838 NULL
-+sctp_setsockopt_hmac_ident_fndecl_28852_fields sctp_setsockopt_hmac_ident fndecl 3 28852 NULL
-+dsp_buffer_alloc_fndecl_28855_fields dsp_buffer_alloc fndecl 2 28855 NULL nohasharray
-+hdac_hdmi_create_dais_fndecl_28855_fields hdac_hdmi_create_dais fndecl 4 28855 &dsp_buffer_alloc_fndecl_28855_fields
++dsp_buffer_alloc_fndecl_28855_fields dsp_buffer_alloc fndecl 2 28855 NULL
+pf_cids_qed_src_iids_28859_fields pf_cids qed_src_iids 0 28859 NULL
+mt9t031_set_params_fndecl_28862_fields mt9t031_set_params fndecl 4-3 28862 NULL
+tx_pending_ethtool_ringparam_28864_fields tx_pending ethtool_ringparam 0 28864 NULL nohasharray
@@ -195664,26 +200322,27 @@ index 0000000..6b5367db
+port_c67x00_urb_priv_28917_fields port c67x00_urb_priv 0 28917 NULL
+c_ssize_f_uac2_opts_28922_fields c_ssize f_uac2_opts 0 28922 NULL
+suspend_nvs_register_fndecl_28923_fields suspend_nvs_register fndecl 2-1 28923 NULL
++ar_asked_xfs_ag_resv_28935_fields ar_asked xfs_ag_resv 0 28935 NULL
+pgs_per_blk_nvm_dev_28942_fields pgs_per_blk nvm_dev 0 28942 NULL nohasharray
+bts_index_debug_store_28942_fields bts_index debug_store 0 28942 &pgs_per_blk_nvm_dev_28942_fields
+alsa_index_vardecl_thinkpad_acpi_c_28952_fields alsa_index vardecl_thinkpad_acpi.c 0 28952 NULL
+gb_len_pn533_28959_fields gb_len pn533 0 28959 NULL
+hpfs_alloc_anode_fndecl_28960_fields hpfs_alloc_anode fndecl 2 28960 NULL nohasharray
+hci_cmd_sync_fndecl_28960_fields hci_cmd_sync fndecl 3 28960 &hpfs_alloc_anode_fndecl_28960_fields
-+usb_stor_bulk_transfer_buf_fndecl_28961_fields usb_stor_bulk_transfer_buf fndecl 4-2 28961 NULL
++usb_stor_bulk_transfer_buf_fndecl_28961_fields usb_stor_bulk_transfer_buf fndecl 2-4 28961 NULL
+tcp_send_rcvq_fndecl_28967_fields tcp_send_rcvq fndecl 3 28967 NULL
+ath6kl_wmi_set_wow_mode_cmd_fndecl_28969_fields ath6kl_wmi_set_wow_mode_cmd fndecl 2 28969 NULL
+sctp_transport_update_pmtu_fndecl_28973_fields sctp_transport_update_pmtu fndecl 3 28973 NULL
+syncmaxsize_snd_usb_endpoint_28987_fields syncmaxsize snd_usb_endpoint 0 28987 NULL
+aper_size_agp_kern_info_28990_fields aper_size agp_kern_info 0 28990 NULL
+klen_WepKeyRid_28997_fields klen WepKeyRid 0 28997 NULL
-+ext4_get_inline_size_fndecl_28998_fields ext4_get_inline_size fndecl 0 28998 NULL
+handle_unit_fndecl_29000_fields handle_unit fndecl 0-1 29000 NULL nohasharray
+rawsize_nd_namespace_label_29000_fields rawsize nd_namespace_label 0 29000 &handle_unit_fndecl_29000_fields
+len_p54p_desc_29001_fields len p54p_desc 0 29001 NULL nohasharray
+buf_read_ptr_comedi_async_29001_fields buf_read_ptr comedi_async 0 29001 &len_p54p_desc_29001_fields
+nl80211_send_mgmt_fndecl_29002_fields nl80211_send_mgmt fndecl 7 29002 NULL
+num_lns_csio_hw_29004_fields num_lns csio_hw 0 29004 NULL
++__kfifo_out_peek_fndecl_29010_fields __kfifo_out_peek fndecl 0-3 29010 NULL
+ivtvfb_prep_dec_dma_to_device_fndecl_29011_fields ivtvfb_prep_dec_dma_to_device fndecl 4 29011 NULL
+sb_dmap_hpfs_sb_info_29020_fields sb_dmap hpfs_sb_info 0 29020 NULL
+j_len_reiserfs_journal_list_29021_fields j_len reiserfs_journal_list 0 29021 NULL
@@ -195715,12 +200374,14 @@ index 0000000..6b5367db
+W6692B_empty_fifo_fndecl_29159_fields W6692B_empty_fifo fndecl 2 29159 NULL
+md_dump_size_qla_hw_data_29160_fields md_dump_size qla_hw_data 0 29160 NULL
+error_bio_list_fndecl_29166_fields error_bio_list fndecl 2 29166 NULL
-+surface_height_drm_fb_helper_surface_size_29174_fields surface_height drm_fb_helper_surface_size 0 29174 NULL
++surface_height_drm_fb_helper_surface_size_29174_fields surface_height drm_fb_helper_surface_size 0 29174 NULL nohasharray
++dwc2_hsotg_send_reply_fndecl_29174_fields dwc2_hsotg_send_reply fndecl 4 29174 &surface_height_drm_fb_helper_surface_size_29174_fields
+num_segments_acpi_namestring_info_29180_fields num_segments acpi_namestring_info 0 29180 NULL nohasharray
+dma_in_streamzap_ir_29180_fields dma_in streamzap_ir 0 29180 &num_segments_acpi_namestring_info_29180_fields
+ircomm_control_indication_fndecl_29186_fields ircomm_control_indication fndecl 3 29186 NULL
+em28xx_i2c_read_block_fndecl_29188_fields em28xx_i2c_read_block fndecl 5 29188 NULL
+report_nb8800_rx_desc_29192_fields report nb8800_rx_desc 0 29192 NULL
++brcmf_config_wowl_pattern_fndecl_29198_fields brcmf_config_wowl_pattern fndecl 4 29198 NULL
+HFC_inw_nodebug_hfc_multi_29199_fields HFC_inw_nodebug hfc_multi 0 29199 NULL
+vcc_sendmsg_fndecl_29205_fields vcc_sendmsg fndecl 3 29205 NULL
+x25_parse_facilities_fndecl_29207_fields x25_parse_facilities fndecl 0 29207 NULL
@@ -195730,11 +200391,9 @@ index 0000000..6b5367db
+change_pte_range_fndecl_29232_fields change_pte_range fndecl 3 29232 NULL
+rq_pagesz_smb_rqst_29240_fields rq_pagesz smb_rqst 0 29240 NULL
+sb_dirband_start_hpfs_sb_info_29242_fields sb_dirband_start hpfs_sb_info 0 29242 NULL
-+count_qed_tid_seg_29243_fields count qed_tid_seg 0 29243 NULL
+ubifs_recover_log_leb_fndecl_29244_fields ubifs_recover_log_leb fndecl 3 29244 NULL
+sg_pcopy_from_buffer_fndecl_29248_fields sg_pcopy_from_buffer fndecl 0-5-4 29248 NULL
+offset_rbd_obj_request_29253_fields offset rbd_obj_request 0 29253 NULL
-+hfi1_copy_sge_fndecl_29257_fields hfi1_copy_sge fndecl 3 29257 NULL
+i_dir_acl_ext2_inode_29264_fields i_dir_acl ext2_inode 0 29264 NULL
+maxlen_ctl_table_29268_fields maxlen ctl_table 0 29268 NULL nohasharray
+sisusb_lseek_fndecl_29268_fields sisusb_lseek fndecl 2 29268 &maxlen_ctl_table_29268_fields
@@ -195743,7 +200402,9 @@ index 0000000..6b5367db
+convert_dma_width_fndecl_29278_fields convert_dma_width fndecl 0 29278 NULL
+reg_shift_sccnxp_pdata_29283_fields reg_shift sccnxp_pdata 0 29283 NULL
+sh_last_alloc_nilfs_sufile_header_29285_fields sh_last_alloc nilfs_sufile_header 0 29285 NULL
++vmbus_open_fndecl_29289_fields vmbus_open fndecl 2-3 29289 NULL
+data_len_ceph_msg_header_29290_fields data_len ceph_msg_header 0 29290 NULL
++btmrvl_sdio_host_to_card_fndecl_29291_fields btmrvl_sdio_host_to_card fndecl 3 29291 NULL
+leb_start_ubi_device_29292_fields leb_start ubi_device 0 29292 NULL
+user_ptr_drm_i915_gem_userptr_29294_fields user_ptr drm_i915_gem_userptr 0 29294 NULL
+set_powered_fndecl_29298_fields set_powered fndecl 4 29298 NULL
@@ -195760,51 +200421,49 @@ index 0000000..6b5367db
+compat_do_arpt_set_ctl_fndecl_29323_fields compat_do_arpt_set_ctl fndecl 4 29323 NULL
+gather_pte_stats_fndecl_29329_fields gather_pte_stats fndecl 2 29329 NULL
+scan_map_fndecl_29331_fields scan_map fndecl 0 29331 NULL
-+n_reg_rules_ieee80211_regdomain_29334_fields n_reg_rules ieee80211_regdomain 0 29334 NULL nohasharray
-+compat_sys_msgrcv_fndecl_29334_fields compat_sys_msgrcv fndecl 3 29334 &n_reg_rules_ieee80211_regdomain_29334_fields
++n_reg_rules_ieee80211_regdomain_29334_fields n_reg_rules ieee80211_regdomain 0 29334 NULL
+y_res_vbe_mode_ib_29340_fields y_res vbe_mode_ib 0 29340 NULL
+sctp_icmp_frag_needed_fndecl_29342_fields sctp_icmp_frag_needed fndecl 4 29342 NULL
+sgeCnt_aac_raw_io2_29350_fields sgeCnt aac_raw_io2 0 29350 NULL
+size_tc_action_ops_29352_fields size tc_action_ops 0 29352 NULL
-+alloced_snd_array_29353_fields alloced snd_array 0 29353 NULL
+receive_copy_fndecl_29355_fields receive_copy fndecl 3 29355 NULL
-+max_sgs_per_cmd_snic_fw_info_29357_fields max_sgs_per_cmd snic_fw_info 0 29357 NULL nohasharray
-+xfs_attr3_leaf_read_fndecl_29357_fields xfs_attr3_leaf_read fndecl 3 29357 &max_sgs_per_cmd_snic_fw_info_29357_fields
++xfs_attr3_leaf_read_fndecl_29357_fields xfs_attr3_leaf_read fndecl 3 29357 NULL nohasharray
++max_sgs_per_cmd_snic_fw_info_29357_fields max_sgs_per_cmd snic_fw_info 0 29357 &xfs_attr3_leaf_read_fndecl_29357_fields
+s_dat_entry_size_nilfs_super_block_29359_fields s_dat_entry_size nilfs_super_block 0 29359 NULL
+qt2160_read_block_fndecl_29365_fields qt2160_read_block fndecl 4 29365 NULL
+dummy_perform_transfer_fndecl_29372_fields dummy_perform_transfer fndecl 0-3 29372 NULL
+n_devices_whc_29373_fields n_devices whc 0 29373 NULL
+ppm_get_entries_fndecl_29375_fields ppm_get_entries fndecl 0 29375 NULL
-+count_e1000_rx_ring_29377_fields count e1000_rx_ring 0 29377 NULL nohasharray
-+l2bsize_jfs_sb_info_29377_fields l2bsize jfs_sb_info 0 29377 &count_e1000_rx_ring_29377_fields
++l2bsize_jfs_sb_info_29377_fields l2bsize jfs_sb_info 0 29377 NULL nohasharray
++count_e1000_rx_ring_29377_fields count e1000_rx_ring 0 29377 &l2bsize_jfs_sb_info_29377_fields
+extHint_fndecl_29378_fields extHint fndecl 2 29378 NULL
+next_cluster_fat_boot_fsinfo_29380_fields next_cluster fat_boot_fsinfo 0 29380 NULL
-+acpi_id_xenpf_pcpuinfo_29393_fields acpi_id xenpf_pcpuinfo 0 29393 NULL
++write_buffer_size_vardecl_ldusb_c_29393_fields write_buffer_size vardecl_ldusb.c 0 29393 NULL nohasharray
++acpi_id_xenpf_pcpuinfo_29393_fields acpi_id xenpf_pcpuinfo 0 29393 &write_buffer_size_vardecl_ldusb_c_29393_fields
+tun_net_change_mtu_fndecl_29398_fields tun_net_change_mtu fndecl 2 29398 NULL
+__alloc_bootmem_low_nopanic_fndecl_29400_fields __alloc_bootmem_low_nopanic fndecl 2-3 29400 NULL
+hpfs_map_sector_fndecl_29402_fields hpfs_map_sector fndecl 2 29402 NULL
-+num_leds_mc13xxx_leds_platform_data_29405_fields num_leds mc13xxx_leds_platform_data 0 29405 NULL
+sisfb_mem_sis_video_info_29418_fields sisfb_mem sis_video_info 0 29418 NULL
+udf_name_to_CS0_fndecl_29420_fields udf_name_to_CS0 fndecl 0 29420 NULL
+get_next_page_offset_fndecl_29421_fields get_next_page_offset fndecl 0-2 29421 NULL
+xop_data_nents_xcopy_op_29423_fields xop_data_nents xcopy_op 0 29423 NULL
-+ath_descdma_setup_fndecl_29426_fields ath_descdma_setup fndecl 5 29426 NULL
-+block_extra_size_snd_util_memhdr_29432_fields block_extra_size snd_util_memhdr 0 29432 NULL
+size_vm_struct_29439_fields size vm_struct 0 29439 NULL
+xfs_attr3_rmt_blocks_fndecl_29445_fields xfs_attr3_rmt_blocks fndecl 0-2 29445 NULL
+ep_in_dln2_dev_29451_fields ep_in dln2_dev 0 29451 NULL
-+ebt_buf_add_fndecl_29456_fields ebt_buf_add fndecl 0-3 29456 NULL
++ebt_buf_add_fndecl_29456_fields ebt_buf_add fndecl 0 29456 NULL
+vol_cdev_llseek_fndecl_29458_fields vol_cdev_llseek fndecl 2 29458 NULL
++tso_segs_goal_tcp_congestion_ops_29460_fields tso_segs_goal tcp_congestion_ops 0 29460 NULL
+read_into_pages_cifs_readdata_29473_fields read_into_pages cifs_readdata 0 29473 NULL
+i2c_hid_set_or_send_report_fndecl_29475_fields i2c_hid_set_or_send_report fndecl 5 29475 NULL
+macvtap_put_user_fndecl_29476_fields macvtap_put_user fndecl 0 29476 NULL
++rts51x_read_status_fndecl_29477_fields rts51x_read_status fndecl 4 29477 NULL
+tx_header_len_pn533_frame_ops_29478_fields tx_header_len pn533_frame_ops 0 29478 NULL
+ns_last_pseg_the_nilfs_29482_fields ns_last_pseg the_nilfs 0 29482 NULL
+qs_out_channels_hdsp_29483_fields qs_out_channels hdsp 0 29483 NULL
-+phys_out_snd_efw_29490_fields phys_out snd_efw 0 29490 NULL nohasharray
-+befs_bt_read_node_fndecl_29490_fields befs_bt_read_node fndecl 4 29490 &phys_out_snd_efw_29490_fields
++placement_offset_core_rx_fast_path_cqe_29485_fields placement_offset core_rx_fast_path_cqe 0 29485 NULL
++befs_bt_read_node_fndecl_29490_fields befs_bt_read_node fndecl 4 29490 NULL nohasharray
++phys_out_snd_efw_29490_fields phys_out snd_efw 0 29490 &befs_bt_read_node_fndecl_29490_fields
+pcpu_fc_alloc_fndecl_29497_fields pcpu_fc_alloc fndecl 3-2 29497 NULL
-+n_leds_pca963x_chipdef_29498_fields n_leds pca963x_chipdef 0 29498 NULL
+cx23885_alsa_dma_init_fndecl_29499_fields cx23885_alsa_dma_init fndecl 2 29499 NULL
+raid_disks_mdu_array_info_s_29501_fields raid_disks mdu_array_info_s 0 29501 NULL
+type_length_fru_type_length_29503_fields type_length fru_type_length 0 29503 NULL
@@ -195830,7 +200489,6 @@ index 0000000..6b5367db
+device_size_r5l_log_29609_fields device_size r5l_log 0 29609 NULL
+__vxlan_change_mtu_fndecl_29617_fields __vxlan_change_mtu fndecl 4 29617 NULL
+efd_group_ext4_free_data_29619_fields efd_group ext4_free_data 0 29619 NULL
-+dccp_feat_clone_sp_val_fndecl_29621_fields dccp_feat_clone_sp_val fndecl 3 29621 NULL
+nr_cells_axp20x_dev_29628_fields nr_cells axp20x_dev 0 29628 NULL
+escd_size_escd_info_struc_29631_fields escd_size escd_info_struc 0 29631 NULL
+cxgbit_ddp_reserve_fndecl_29637_fields cxgbit_ddp_reserve fndecl 3 29637 NULL
@@ -195844,13 +200502,17 @@ index 0000000..6b5367db
+max_dev_sectors_queue_limits_29654_fields max_dev_sectors queue_limits 0 29654 NULL
+items_per_memblock_vxge_hw_mempool_29661_fields items_per_memblock vxge_hw_mempool 0 29661 NULL
+pci_cfg_space_size_fndecl_29666_fields pci_cfg_space_size fndecl 0 29666 NULL
++get_user_pages_unlocked_fndecl_29677_fields get_user_pages_unlocked fndecl 0-1 29677 NULL
+mon_buff_area_alloc_contiguous_fndecl_29680_fields mon_buff_area_alloc_contiguous fndecl 2 29680 NULL nohasharray
+rtsx_usb_seq_read_register_fndecl_29680_fields rtsx_usb_seq_read_register fndecl 3 29680 &mon_buff_area_alloc_contiguous_fndecl_29680_fields
+comps_used_isert_device_29683_fields comps_used isert_device 0 29683 NULL
+APP_len_camera_data_29686_fields APP_len camera_data 0 29686 NULL
++i40e_pci_sriov_configure_fndecl_29688_fields i40e_pci_sriov_configure fndecl 2 29688 NULL
+size_tool_mw_29693_fields size tool_mw 0 29693 NULL
+osd_req_write_sg_kern_fndecl_29697_fields osd_req_write_sg_kern fndecl 5 29697 NULL
+qlcnic_pci_sriov_enable_fndecl_29700_fields qlcnic_pci_sriov_enable fndecl 2 29700 NULL
++lmm_stripe_count_lov_user_md_v1_29706_fields lmm_stripe_count lov_user_md_v1 0 29706 NULL
++get_vm_area_caller_fndecl_29708_fields get_vm_area_caller fndecl 1 29708 NULL
+ocfs2_add_refcounted_extent_fndecl_29709_fields ocfs2_add_refcounted_extent fndecl 6-7-5 29709 NULL
+ieee80211_stop_tx_ba_cb_irqsafe_fndecl_29711_fields ieee80211_stop_tx_ba_cb_irqsafe fndecl 3 29711 NULL
+SGE_size__MPT_ADAPTER_29715_fields SGE_size _MPT_ADAPTER 0 29715 NULL
@@ -195858,33 +200520,36 @@ index 0000000..6b5367db
+ca91cx42_alloc_resource_fndecl_29717_fields ca91cx42_alloc_resource fndecl 2 29717 NULL
+ext4_itable_unused_count_fndecl_29718_fields ext4_itable_unused_count fndecl 0 29718 NULL
+page_count_orangefs_bufmap_29723_fields page_count orangefs_bufmap 0 29723 NULL
-+bpp_aty128_crtc_29724_fields bpp aty128_crtc 0 29724 NULL nohasharray
-+sel_write_disable_fndecl_29724_fields sel_write_disable fndecl 3 29724 &bpp_aty128_crtc_29724_fields
++bpp_aty128_crtc_29724_fields bpp aty128_crtc 0 29724 NULL
+num_resources_mfd_cell_29733_fields num_resources mfd_cell 0 29733 NULL nohasharray
+Zlen_hfc_multi_29733_fields Zlen hfc_multi 0 29733 &num_resources_mfd_cell_29733_fields
+__ceph_tcp_sendpage_fndecl_29744_fields __ceph_tcp_sendpage fndecl 0-4 29744 NULL
+bounce_len_xhci_segment_29759_fields bounce_len xhci_segment 0 29759 NULL
-+mmio_phys_ivhd_header_29762_fields mmio_phys ivhd_header 0 29762 NULL
+ext4_write_begin_fndecl_29763_fields ext4_write_begin fndecl 4-3 29763 NULL
-+physical_scrub_bio_29776_fields physical scrub_bio 0 29776 NULL
++drm_primary_helper_update_fndecl_29776_fields drm_primary_helper_update fndecl 8-4-9-5 29776 NULL nohasharray
++physical_scrub_bio_29776_fields physical scrub_bio 0 29776 &drm_primary_helper_update_fndecl_29776_fields
+ath6kl_wmi_ap_set_dtim_cmd_fndecl_29779_fields ath6kl_wmi_ap_set_dtim_cmd fndecl 2 29779 NULL
+eqp_bdi_bd_list_29780_fields eqp_bdi bd_list 0 29780 NULL
+io_min_queue_limits_29785_fields io_min queue_limits 0 29785 NULL
++xfs_refcount_adjust_cow_extents_fndecl_29786_fields xfs_refcount_adjust_cow_extents fndecl 2-3 29786 NULL
+cfg_num_tx_irqs_be_adapter_29787_fields cfg_num_tx_irqs be_adapter 0 29787 NULL
+first_index_zap_details_29790_fields first_index zap_details 0 29790 NULL
+blk_queue_max_discard_sectors_fndecl_29799_fields blk_queue_max_discard_sectors fndecl 2 29799 NULL
+cxgb3_get_cpl_reply_skb_fndecl_29807_fields cxgb3_get_cpl_reply_skb fndecl 2 29807 NULL nohasharray
+i_disksize_ext4_inode_info_29807_fields i_disksize ext4_inode_info 0 29807 &cxgb3_get_cpl_reply_skb_fndecl_29807_fields
++otp_read_fndecl_29809_fields otp_read fndecl 5-4-2 29809 NULL
+skb_transmit_mlxsw_bus_29815_fields skb_transmit mlxsw_bus 0 29815 NULL
+vmw_shader_define_fndecl_29819_fields vmw_shader_define fndecl 5 29819 NULL
+double_offset_smbios_cru64_info_29825_fields double_offset smbios_cru64_info 0 29825 NULL
+num_ports_ohci_hcd_29835_fields num_ports ohci_hcd 0 29835 NULL
++fq_alloc_node_fndecl_29850_fields fq_alloc_node fndecl 1 29850 NULL
+rr_len_rpcrdma_rep_29856_fields rr_len rpcrdma_rep 0 29856 NULL
+pvr2_buffer_get_count_fndecl_29860_fields pvr2_buffer_get_count fndecl 0 29860 NULL
+lower_vardecl_matroxfb_base_c_29861_fields lower vardecl_matroxfb_base.c 0 29861 NULL nohasharray
+bnx2x_get_num_non_def_sbs_fndecl_29861_fields bnx2x_get_num_non_def_sbs fndecl 0-2 29861 &lower_vardecl_matroxfb_base_c_29861_fields
+bfs_add_entry_fndecl_29864_fields bfs_add_entry fndecl 4 29864 NULL
+alloc_vmap_area_fndecl_29865_fields alloc_vmap_area fndecl 1-2-3 29865 NULL
++nd_cmd_out_size_fndecl_29867_fields nd_cmd_out_size fndecl 0-7 29867 NULL
+xprt_complete_rqst_fndecl_29874_fields xprt_complete_rqst fndecl 2 29874 NULL
+fat_attach_fndecl_29877_fields fat_attach fndecl 2 29877 NULL
+current_size_ncp_server_29882_fields current_size ncp_server 0 29882 NULL
@@ -195904,23 +200569,24 @@ index 0000000..6b5367db
+pvr2_ioread_read_fndecl_29939_fields pvr2_ioread_read fndecl 3 29939 NULL
+__iscsi_complete_pdu_fndecl_29941_fields __iscsi_complete_pdu fndecl 4 29941 NULL
+spi_sync_fndecl_29944_fields spi_sync fndecl 0 29944 NULL
-+s_min_extra_isize_ext4_super_block_29952_fields s_min_extra_isize ext4_super_block 0 29952 NULL nohasharray
-+cciss_proc_write_fndecl_29952_fields cciss_proc_write fndecl 3 29952 &s_min_extra_isize_ext4_super_block_29952_fields
++s_min_extra_isize_ext4_super_block_29952_fields s_min_extra_isize ext4_super_block 0 29952 NULL
+opts1_mask_rtl8169_private_29953_fields opts1_mask rtl8169_private 0 29953 NULL
+max_mlx5_core_srq_29956_fields max mlx5_core_srq 0 29956 NULL nohasharray
+state_count_Fsm_29956_fields state_count Fsm 0 29956 &max_mlx5_core_srq_29956_fields nohasharray
+implemented_capacity_ms_boot_attr_info_29956_fields implemented_capacity ms_boot_attr_info 0 29956 &state_count_Fsm_29956_fields
+memconsole_length_vardecl_memconsole_c_29962_fields memconsole_length vardecl_memconsole.c 0 29962 NULL
+c_phys_ocfs2_write_cluster_desc_29971_fields c_phys ocfs2_write_cluster_desc 0 29971 NULL
-+ds_in_channels_hdsp_29975_fields ds_in_channels hdsp 0 29975 NULL nohasharray
-+mutex_lock_killable_fndecl_29975_fields mutex_lock_killable fndecl 0 29975 &ds_in_channels_hdsp_29975_fields
++mutex_lock_killable_fndecl_29975_fields mutex_lock_killable fndecl 0 29975 NULL nohasharray
++ds_in_channels_hdsp_29975_fields ds_in_channels hdsp 0 29975 &mutex_lock_killable_fndecl_29975_fields
+i_suballoc_loc_ocfs2_dinode_29986_fields i_suballoc_loc ocfs2_dinode 0 29986 NULL nohasharray
+ubi_leb_change_fndecl_29986_fields ubi_leb_change fndecl 4 29986 &i_suballoc_loc_ocfs2_dinode_29986_fields
+init_size_il4965_firmware_pieces_29990_fields init_size il4965_firmware_pieces 0 29990 NULL
++reply_max_afs_call_29997_fields reply_max afs_call 0 29997 NULL
+snd_pcm_lib_preallocate_pages1_fndecl_30002_fields snd_pcm_lib_preallocate_pages1 fndecl 2 30002 NULL
+btrfs_add_ordered_extent_compress_fndecl_30005_fields btrfs_add_ordered_extent_compress fndecl 4-2-3 30005 NULL
+obj_offset_ore_striping_info_30010_fields obj_offset ore_striping_info 0 30010 NULL
-+size_fstioc_write_30011_fields size fstioc_write 0 30011 NULL
++max_speed_hz_spi_master_30011_fields max_speed_hz spi_master 0 30011 NULL nohasharray
++size_fstioc_write_30011_fields size fstioc_write 0 30011 &max_speed_hz_spi_master_30011_fields
+period_em28xx_audio_30017_fields period em28xx_audio 0 30017 NULL
+send_hole_fndecl_30019_fields send_hole fndecl 2 30019 NULL
+netlbl_catmap_setbit_fndecl_30024_fields netlbl_catmap_setbit fndecl 2 30024 NULL
@@ -195930,10 +200596,11 @@ index 0000000..6b5367db
+io_throttle_count_vnic_fc_config_30064_fields io_throttle_count vnic_fc_config 0 30064 NULL
+add_swap_extent_fndecl_30065_fields add_swap_extent fndecl 2-4-3 30065 NULL nohasharray
+get_dump_page_fndecl_30065_fields get_dump_page fndecl 1 30065 &add_swap_extent_fndecl_30065_fields
++xfs_refcount_find_right_extents_fndecl_30067_fields xfs_refcount_find_right_extents fndecl 4-5 30067 NULL
+psb_gem_create_fndecl_30068_fields psb_gem_create fndecl 3 30068 NULL
+to_ifla_vlan_qos_mapping_30070_fields to ifla_vlan_qos_mapping 0 30070 NULL
-+SYSC_io_setup_fndecl_30071_fields SYSC_io_setup fndecl 1 30071 NULL nohasharray
-+SenseLen__ErrorInfo_struct_30071_fields SenseLen _ErrorInfo_struct 0 30071 &SYSC_io_setup_fndecl_30071_fields
++SenseLen__ErrorInfo_struct_30071_fields SenseLen _ErrorInfo_struct 0 30071 NULL nohasharray
++SYSC_io_setup_fndecl_30071_fields SYSC_io_setup fndecl 1 30071 &SenseLen__ErrorInfo_struct_30071_fields
+mwifiex_send_tdls_data_frame_fndecl_30072_fields mwifiex_send_tdls_data_frame fndecl 7 30072 NULL
+wapi_ie_len_mwifiex_private_30073_fields wapi_ie_len mwifiex_private 0 30073 NULL
+cur_pos_kobil_private_30076_fields cur_pos kobil_private 0 30076 NULL
@@ -195941,7 +200608,7 @@ index 0000000..6b5367db
+num_pages_vmw_mob_30089_fields num_pages vmw_mob 0 30089 NULL
+ie_len_ieee80211_mgd_assoc_data_30093_fields ie_len ieee80211_mgd_assoc_data 0 30093 NULL
+id_watchdog_device_30094_fields id watchdog_device 0 30094 NULL
-+length_ehci_qtd_30102_fields length ehci_qtd 0 30102 NULL
++tcfv_push_prio_tcf_vlan_30101_fields tcfv_push_prio tcf_vlan 0 30101 NULL
+mmc_test_seq_write_perf_fndecl_30107_fields mmc_test_seq_write_perf fndecl 2 30107 NULL
+of_translate_address_fndecl_30111_fields of_translate_address fndecl 0 30111 NULL
+read_iwl_rxq_30117_fields read iwl_rxq 0 30117 NULL
@@ -195952,10 +200619,12 @@ index 0000000..6b5367db
+chunk_len_nfcmrvl_fw_dnld_30149_fields chunk_len nfcmrvl_fw_dnld 0 30149 NULL
+i915_gem_object_create_stolen_for_preallocated_fndecl_30151_fields i915_gem_object_create_stolen_for_preallocated fndecl 4-2-3 30151 NULL nohasharray
+hpfs_remove_fnode_fndecl_30151_fields hpfs_remove_fnode fndecl 2 30151 &i915_gem_object_create_stolen_for_preallocated_fndecl_30151_fields
++num_tx_queues_ixgbevf_adapter_30155_fields num_tx_queues ixgbevf_adapter 0 30155 NULL
+scif_get_node_ids_fndecl_30156_fields scif_get_node_ids fndecl 0 30156 NULL
+buffer_len_fnic_dbgfs_30157_fields buffer_len fnic_dbgfs 0 30157 NULL
+iobuf_dma_us_data_30159_fields iobuf_dma us_data 0 30159 NULL
-+mmio_base_drm_mga_private_30161_fields mmio_base drm_mga_private 0 30161 NULL
++xfs_reflink_cancel_cow_blocks_fndecl_30161_fields xfs_reflink_cancel_cow_blocks fndecl 3-4 30161 NULL nohasharray
++mmio_base_drm_mga_private_30161_fields mmio_base drm_mga_private 0 30161 &xfs_reflink_cancel_cow_blocks_fndecl_30161_fields
+bulk_in_size_hdpvr_device_30165_fields bulk_in_size hdpvr_device 0 30165 NULL
+rx_buf_sz_epic_private_30166_fields rx_buf_sz epic_private 0 30166 NULL nohasharray
+hash_start_dm_verity_30166_fields hash_start dm_verity 0 30166 &rx_buf_sz_epic_private_30166_fields
@@ -195966,7 +200635,7 @@ index 0000000..6b5367db
+prism2_ap_get_sta_qual_fndecl_30181_fields prism2_ap_get_sta_qual fndecl 0 30181 NULL
+in_ep_num_rtl_hal_usbint_cfg_30182_fields in_ep_num rtl_hal_usbint_cfg 0 30182 NULL
+alloc_pci_root_info_fndecl_30198_fields alloc_pci_root_info fndecl 2-1 30198 NULL
-+pos_drm_i915_error_state_buf_30203_fields pos drm_i915_error_state_buf 0 30203 NULL
++buf_len_uvesafb_task_30200_fields buf_len uvesafb_task 0 30200 NULL
+pipe_size_renesas_usbhs_driver_param_30206_fields pipe_size renesas_usbhs_driver_param 0 30206 NULL
+len_header_msg_30207_fields len header_msg 0 30207 NULL
+bm_bits_bm_xfer_ctx_30221_fields bm_bits bm_xfer_ctx 0 30221 NULL nohasharray
@@ -195975,18 +200644,18 @@ index 0000000..6b5367db
+major_vardecl_pt_c_30228_fields major vardecl_pt.c 0 30228 NULL
+vtag_atl1e_recv_ret_status_30229_fields vtag atl1e_recv_ret_status 0 30229 NULL
+tcp_header_len_tcp_sock_30231_fields tcp_header_len tcp_sock 0 30231 NULL
-+_brk_start_vardecl_setup_c_30236_fields _brk_start vardecl_setup.c 0 30236 NULL nohasharray
-+SetLineNumber_fndecl_30236_fields SetLineNumber fndecl 0 30236 &_brk_start_vardecl_setup_c_30236_fields
++_brk_start_vardecl_setup_c_30236_fields _brk_start vardecl_setup.c 0 30236 NULL
+numblocks_bcma_sflash_tbl_e_30237_fields numblocks bcma_sflash_tbl_e 0 30237 NULL
+reiserfs_breada_fndecl_30247_fields reiserfs_breada fndecl 3-2 30247 NULL
+ndisc_fill_redirect_hdr_option_fndecl_30248_fields ndisc_fill_redirect_hdr_option fndecl 3 30248 NULL
+compat_sys_truncate_fndecl_30258_fields compat_sys_truncate fndecl 2 30258 NULL
++pci_msi_vec_count_fndecl_30261_fields pci_msi_vec_count fndecl 0 30261 NULL
+max_host_qng_adv_dvc_var_30264_fields max_host_qng adv_dvc_var 0 30264 NULL
++tda10048_writeregbulk_fndecl_30265_fields tda10048_writeregbulk fndecl 4 30265 NULL
+sys_sendfile_fndecl_30267_fields sys_sendfile fndecl 4 30267 NULL nohasharray
+rawsock_recvmsg_fndecl_30267_fields rawsock_recvmsg fndecl 3 30267 &sys_sendfile_fndecl_30267_fields
+tda665x_write_fndecl_30269_fields tda665x_write fndecl 3 30269 NULL nohasharray
+start_discovery_internal_fndecl_30269_fields start_discovery_internal fndecl 5 30269 &tda665x_write_fndecl_30269_fields
-+minor_count_vardecl_30272_fields minor_count vardecl 0 30272 NULL
+data_size_netup_dma_30274_fields data_size netup_dma 0 30274 NULL
+blockshift_alauda_media_info_30287_fields blockshift alauda_media_info 0 30287 NULL
+xfs_collapse_file_space_fndecl_30288_fields xfs_collapse_file_space fndecl 2-3 30288 NULL
@@ -195996,10 +200665,10 @@ index 0000000..6b5367db
+wlength_at76_rx_buffer_30301_fields wlength at76_rx_buffer 0 30301 NULL
+m_ts_msg_msg_30307_fields m_ts msg_msg 0 30307 NULL
+ki_pos_kiocb_30312_fields ki_pos kiocb 0 30312 NULL
-+private_data_len_iw_cm_event_30313_fields private_data_len iw_cm_event 0 30313 NULL
+wbuf_pagesize_jffs2_sb_info_30318_fields wbuf_pagesize jffs2_sb_info 0 30318 NULL
+ccp_prep_dma_memcpy_fndecl_30323_fields ccp_prep_dma_memcpy fndecl 4 30323 NULL
+name_len_discovery_t_30331_fields name_len discovery_t 0 30331 NULL
++cpuhp_ap_online_fndecl_30345_fields cpuhp_ap_online fndecl 0 30345 NULL
+acpi_os_map_memory_fndecl_30346_fields acpi_os_map_memory fndecl 2-1 30346 NULL
+overflow_maj_vardecl_ucm_c_30347_fields overflow_maj vardecl_ucm.c 0 30347 NULL
+p_ssize_f_uac2_opts_30353_fields p_ssize f_uac2_opts 0 30353 NULL
@@ -196009,21 +200678,20 @@ index 0000000..6b5367db
+max_r2t_iscsi_session_30376_fields max_r2t iscsi_session 0 30376 NULL
+pnp_add_bus_resource_fndecl_30381_fields pnp_add_bus_resource fndecl 3-2 30381 NULL
+qnx4_iget_fndecl_30383_fields qnx4_iget fndecl 2 30383 NULL
-+max_span_mlxsw_resources_30386_fields max_span mlxsw_resources 0 30386 NULL
-+get_callback_via_fndecl_30387_fields get_callback_via fndecl 0 30387 NULL
++crtc_y_drm_plane_state_30390_fields crtc_y drm_plane_state 0 30390 NULL
+ssid_len_cfg80211_ssid_30393_fields ssid_len cfg80211_ssid 0 30393 NULL
+datalen_port100_frame_30394_fields datalen port100_frame 0 30394 NULL
-+i2c_mux_alloc_fndecl_30395_fields i2c_mux_alloc fndecl 4-3 30395 NULL
+ocfs2_dx_entry_list_insert_fndecl_30397_fields ocfs2_dx_entry_list_insert fndecl 3 30397 NULL
+blkdev_write_end_fndecl_30399_fields blkdev_write_end fndecl 5 30399 NULL
-+dbgp_control_msg_fndecl_30405_fields dbgp_control_msg fndecl 7 30405 NULL
++skl_calc_cdclk_fndecl_30405_fields skl_calc_cdclk fndecl 0 30405 NULL nohasharray
++dbgp_control_msg_fndecl_30405_fields dbgp_control_msg fndecl 7 30405 &skl_calc_cdclk_fndecl_30405_fields
+queue_size_nvmf_ctrl_options_30406_fields queue_size nvmf_ctrl_options 0 30406 NULL
-+hwm_tx_init_fndecl_30411_fields hwm_tx_init fndecl 4 30411 NULL
-+flat_state_cnt_vardecl_processor_idle_c_30427_fields flat_state_cnt vardecl_processor_idle.c 0 30427 NULL
++nvec_used_msi_desc_30409_fields nvec_used msi_desc 0 30409 NULL
+width_bttv_fh_30432_fields width bttv_fh 0 30432 NULL
+ubifs_write_node_fndecl_30441_fields ubifs_write_node fndecl 3-5 30441 NULL
+be_get_dump_len_fndecl_30442_fields be_get_dump_len fndecl 0 30442 NULL
+count_snd_kcontrol_new_30443_fields count snd_kcontrol_new 0 30443 NULL
++copy_pipe_to_iter_fndecl_30444_fields copy_pipe_to_iter fndecl 2 30444 NULL
+num_channels_iio_dev_30451_fields num_channels iio_dev 0 30451 NULL
+max_fr_pages_nvme_rdma_ctrl_30453_fields max_fr_pages nvme_rdma_ctrl 0 30453 NULL
+xfs_rmap_convert_extent_fndecl_30455_fields xfs_rmap_convert_extent fndecl 0 30455 NULL
@@ -196032,24 +200700,25 @@ index 0000000..6b5367db
+__qp_memcpy_to_queue_fndecl_30472_fields __qp_memcpy_to_queue fndecl 4-2 30472 NULL
+nouveau_gem_new_fndecl_30476_fields nouveau_gem_new fndecl 2 30476 NULL nohasharray
+packet_size_ncp_server_30476_fields packet_size ncp_server 0 30476 &nouveau_gem_new_fndecl_30476_fields
-+btrfs_sync_file_fndecl_30480_fields btrfs_sync_file fndecl 2-3 30480 NULL nohasharray
++btrfs_sync_file_fndecl_30480_fields btrfs_sync_file fndecl 2 30480 NULL nohasharray
+produce_size_vmci_qp_alloc_info_30480_fields produce_size vmci_qp_alloc_info 0 30480 &btrfs_sync_file_fndecl_30480_fields
++additional_sense_code_scsi_sense_descriptor_based_30482_fields additional_sense_code scsi_sense_descriptor_based 0 30482 NULL
+xdr_buf_trim_fndecl_30485_fields xdr_buf_trim fndecl 2 30485 NULL
+data_len_ib_ucm_sidr_rep_30488_fields data_len ib_ucm_sidr_rep 0 30488 NULL
+height_s2255_vc_30492_fields height s2255_vc 0 30492 NULL
+nfcwilink_send_bts_cmd_fndecl_30497_fields nfcwilink_send_bts_cmd fndecl 3 30497 NULL
+tolen_nfs3_linkargs_30505_fields tolen nfs3_linkargs 0 30505 NULL
++ip_list_hash_size_vardecl_xt_recent_c_30522_fields ip_list_hash_size vardecl_xt_recent.c 0 30522 NULL
+buf_start_lo_rx_buf_desc_30523_fields buf_start_lo rx_buf_desc 0 30523 NULL
-+nvme_submit_sync_cmd_fndecl_30530_fields nvme_submit_sync_cmd fndecl 4 30530 NULL
+send_command_fndecl_30531_fields send_command fndecl 4 30531 NULL
-+InitiatorRecvDataSegmentLength_iscsi_conn_ops_30535_fields InitiatorRecvDataSegmentLength iscsi_conn_ops 0 30535 NULL
+len_nfsd_readlinkres_30541_fields len nfsd_readlinkres 0 30541 NULL
++xen_blkif_max_segments_vardecl_xen_blkfront_c_30543_fields xen_blkif_max_segments vardecl_xen-blkfront.c 0 30543 NULL
+nfcid_len_pn533_target_type_a_30554_fields nfcid_len pn533_target_type_a 0 30554 NULL
+left_vardecl_matroxfb_base_c_30557_fields left vardecl_matroxfb_base.c 0 30557 NULL
+min_size_rhashtable_params_30562_fields min_size rhashtable_params 0 30562 NULL
+entries_usb_sg_request_30570_fields entries usb_sg_request 0 30570 NULL
-+key_len_ubifs_info_30572_fields key_len ubifs_info 0 30572 NULL nohasharray
-+s_iblkno_ufs_sb_private_info_30572_fields s_iblkno ufs_sb_private_info 0 30572 &key_len_ubifs_info_30572_fields
++s_iblkno_ufs_sb_private_info_30572_fields s_iblkno ufs_sb_private_info 0 30572 NULL nohasharray
++key_len_ubifs_info_30572_fields key_len ubifs_info 0 30572 &s_iblkno_ufs_sb_private_info_30572_fields
+udf_get_pblock_virt20_fndecl_30574_fields udf_get_pblock_virt20 fndecl 4 30574 NULL
+mid_get_vbt_data_r0_fndecl_30575_fields mid_get_vbt_data_r0 fndecl 2 30575 NULL nohasharray
+pio_ide_pio_info_30575_fields pio ide_pio_info 0 30575 &mid_get_vbt_data_r0_fndecl_30575_fields
@@ -196057,17 +200726,15 @@ index 0000000..6b5367db
+delta_stack_mm_struct_30582_fields delta_stack mm_struct 0 30582 NULL nohasharray
+ida_get_new_above_fndecl_30582_fields ida_get_new_above fndecl 0 30582 &delta_stack_mm_struct_30582_fields
+max_intr_slots_myri10ge_priv_30588_fields max_intr_slots myri10ge_priv 0 30588 NULL
-+group_ext4_new_group_data_30590_fields group ext4_new_group_data 0 30590 NULL nohasharray
-+rsize_cifs_sb_info_30590_fields rsize cifs_sb_info 0 30590 &group_ext4_new_group_data_30590_fields
++group_ext4_new_group_data_30590_fields group ext4_new_group_data 0 30590 NULL
+read_edid_block_fndecl_30591_fields read_edid_block fndecl 4 30591 NULL
-+size_drm_savage_cmdbuf_30592_fields size drm_savage_cmdbuf 0 30592 NULL nohasharray
-+readsize_acm_30592_fields readsize acm 0 30592 &size_drm_savage_cmdbuf_30592_fields
++readsize_acm_30592_fields readsize acm 0 30592 NULL nohasharray
++size_drm_savage_cmdbuf_30592_fields size drm_savage_cmdbuf 0 30592 &readsize_acm_30592_fields
+sctp_addto_chunk_fndecl_30597_fields sctp_addto_chunk fndecl 2 30597 NULL
+ext4_collapse_range_fndecl_30598_fields ext4_collapse_range fndecl 3-2 30598 NULL
+offset_drm_i915_gem_pread_30601_fields offset drm_i915_gem_pread 0 30601 NULL
+update_backups_fndecl_30602_fields update_backups fndecl 2 30602 NULL
+add_ino_fndecl_30603_fields add_ino fndecl 4 30603 NULL
-+rx_win_size_mwifiex_add_ba_param_30610_fields rx_win_size mwifiex_add_ba_param 0 30610 NULL
+total_data_placed_lpfc_wcqe_complete_30612_fields total_data_placed lpfc_wcqe_complete 0 30612 NULL nohasharray
+blk_sz_os_dat_entry_s_30612_fields blk_sz os_dat_entry_s 0 30612 &total_data_placed_lpfc_wcqe_complete_30612_fields
+ieee802_11_parse_elems_crc_fndecl_30615_fields ieee802_11_parse_elems_crc fndecl 2 30615 NULL
@@ -196076,9 +200743,7 @@ index 0000000..6b5367db
+gtt_start_amdgpu_mc_30639_fields gtt_start amdgpu_mc 0 30639 NULL
+catc_ctrl_async_fndecl_30648_fields catc_ctrl_async fndecl 7 30648 NULL
+drbd_md_sync_page_io_fndecl_30651_fields drbd_md_sync_page_io fndecl 3 30651 NULL
-+size_vmcore_30652_fields size vmcore 0 30652 NULL
-+start_numa_memblk_30656_fields start numa_memblk 0 30656 NULL nohasharray
-+TargetRecvDataSegmentLength_iscsi_conn_ops_30656_fields TargetRecvDataSegmentLength iscsi_conn_ops 0 30656 &start_numa_memblk_30656_fields
++start_numa_memblk_30656_fields start numa_memblk 0 30656 NULL
+ext4_mb_new_blocks_fndecl_30662_fields ext4_mb_new_blocks fndecl 0 30662 NULL
+tun_put_user_fndecl_30676_fields tun_put_user fndecl 0 30676 NULL
+max_count_pvr2_buffer_30678_fields max_count pvr2_buffer 0 30678 NULL
@@ -196092,21 +200757,21 @@ index 0000000..6b5367db
+hdsp_spdif_sample_rate_fndecl_30700_fields hdsp_spdif_sample_rate fndecl 0 30700 NULL
+bin_cl_size_drm_vc4_submit_cl_30710_fields bin_cl_size drm_vc4_submit_cl 0 30710 NULL
+numPhys_PVSCSIConfigPageController_30726_fields numPhys PVSCSIConfigPageController 0 30726 NULL
-+lbs_threshold_write_fndecl_30733_fields lbs_threshold_write fndecl 5 30733 NULL
+num_descriptors_pmc_ctx_30735_fields num_descriptors pmc_ctx 0 30735 NULL
+nci_hci_send_data_fndecl_30741_fields nci_hci_send_data fndecl 5 30741 NULL
+pitch_drm_mode_fb_cmd_30757_fields pitch drm_mode_fb_cmd 0 30757 NULL
-+n_scan_channels_iwl_ucode_capabilities_30761_fields n_scan_channels iwl_ucode_capabilities 0 30761 NULL
+leb_size_ubifs_info_30775_fields leb_size ubifs_info 0 30775 NULL
+nzones_high_adfs_discrecord_30776_fields nzones_high adfs_discrecord 0 30776 NULL
+isoc_in_pipe_ttusb_30778_fields isoc_in_pipe ttusb 0 30778 NULL
++xfs_refcountbt_calc_reserves_fndecl_30785_fields xfs_refcountbt_calc_reserves fndecl 2 30785 NULL
++baudrate_nfcmrvl_fw_uart_config_30786_fields baudrate nfcmrvl_fw_uart_config 0 30786 NULL
+hdrlen_brcmf_pub_30788_fields hdrlen brcmf_pub 0 30788 NULL nohasharray
+num_blk_nvm_id_group_30788_fields num_blk nvm_id_group 0 30788 &hdrlen_brcmf_pub_30788_fields
-+fcoe_ddp_xid_net_device_30789_fields fcoe_ddp_xid net_device 0 30789 NULL
++batadv_send_roam_adv_fndecl_30791_fields batadv_send_roam_adv fndecl 3 30791 NULL
+netup_write_i2c_fndecl_30793_fields netup_write_i2c fndecl 5 30793 NULL
+wr_sz_csio_q_30799_fields wr_sz csio_q 0 30799 NULL
-+fwlen_mpt_fw_xfer_30803_fields fwlen mpt_fw_xfer 0 30803 NULL nohasharray
-+extra_mpdu_postfix_len_lib80211_crypto_ops_30803_fields extra_mpdu_postfix_len lib80211_crypto_ops 0 30803 &fwlen_mpt_fw_xfer_30803_fields
++extra_mpdu_postfix_len_lib80211_crypto_ops_30803_fields extra_mpdu_postfix_len lib80211_crypto_ops 0 30803 NULL nohasharray
++fwlen_mpt_fw_xfer_30803_fields fwlen mpt_fw_xfer 0 30803 &extra_mpdu_postfix_len_lib80211_crypto_ops_30803_fields
+ResidualCnt_ErrorInfo_30806_fields ResidualCnt ErrorInfo 0 30806 NULL
+sadb_key_bits_sadb_key_30808_fields sadb_key_bits sadb_key 0 30808 NULL nohasharray
+buf_dma_gtco_30808_fields buf_dma gtco 0 30808 &sadb_key_bits_sadb_key_30808_fields
@@ -196124,6 +200789,7 @@ index 0000000..6b5367db
+opt_addr_space_ndisc_ops_30830_fields opt_addr_space ndisc_ops 0 30830 NULL
+f2fs_read_data_pages_fndecl_30837_fields f2fs_read_data_pages fndecl 4 30837 NULL
+resp_size_virtio_gpu_vbuffer_30847_fields resp_size virtio_gpu_vbuffer 0 30847 NULL
++xfs_free_extent_fndecl_30849_fields xfs_free_extent fndecl 2-3 30849 NULL
+notify_offset_multiplier_virtio_pci_device_30853_fields notify_offset_multiplier virtio_pci_device 0 30853 NULL
+count_acpi_object_list_30856_fields count acpi_object_list 0 30856 NULL nohasharray
+default_pvid_net_bridge_30856_fields default_pvid net_bridge 0 30856 &count_acpi_object_list_30856_fields
@@ -196136,9 +200802,9 @@ index 0000000..6b5367db
+r_clusters_ocfs2_refcount_rec_30873_fields r_clusters ocfs2_refcount_rec 0 30873 &sddr09_send_command_fndecl_30873_fields
+current_page_mspro_block_data_30876_fields current_page mspro_block_data 0 30876 NULL
+dma_buf_sz_stmmac_priv_30880_fields dma_buf_sz stmmac_priv 0 30880 NULL
-+max_ti_iu_len_srpt_rdma_ch_30887_fields max_ti_iu_len srpt_rdma_ch 0 30887 NULL nohasharray
-+ocfs2_xattr_get_rec_fndecl_30887_fields ocfs2_xattr_get_rec fndecl 0 30887 &max_ti_iu_len_srpt_rdma_ch_30887_fields nohasharray
-+fifo_size_serial8250_config_30887_fields fifo_size serial8250_config 0 30887 &ocfs2_xattr_get_rec_fndecl_30887_fields
++ocfs2_xattr_get_rec_fndecl_30887_fields ocfs2_xattr_get_rec fndecl 0 30887 NULL nohasharray
++fifo_size_serial8250_config_30887_fields fifo_size serial8250_config 0 30887 &ocfs2_xattr_get_rec_fndecl_30887_fields nohasharray
++max_ti_iu_len_srpt_rdma_ch_30887_fields max_ti_iu_len srpt_rdma_ch 0 30887 &fifo_size_serial8250_config_30887_fields
+queue_received_packet_fndecl_30890_fields queue_received_packet fndecl 5 30890 NULL
+sc_rq_depth_svcxprt_rdma_30899_fields sc_rq_depth svcxprt_rdma 0 30899 NULL
+compat_sys_keyctl_fndecl_30900_fields compat_sys_keyctl fndecl 4 30900 NULL
@@ -196155,6 +200821,7 @@ index 0000000..6b5367db
+page_len_gssp_in_token_30948_fields page_len gssp_in_token 0 30948 NULL
+pvr2_stream_setup_fndecl_30955_fields pvr2_stream_setup fndecl 3 30955 NULL
+leaf_shift_right_fndecl_30957_fields leaf_shift_right fndecl 3 30957 NULL
++msi_domain_alloc_irqs_fndecl_30960_fields msi_domain_alloc_irqs fndecl 0 30960 NULL
+ring_start__drm_i810_init_30964_fields ring_start _drm_i810_init 0 30964 NULL
+max_sdu_atm_trafprm_30969_fields max_sdu atm_trafprm 0 30969 NULL
+mt7601u_rx_skb_from_seg_fndecl_30971_fields mt7601u_rx_skb_from_seg fndecl 5 30971 NULL
@@ -196165,13 +200832,15 @@ index 0000000..6b5367db
+ext4_mark_iloc_dirty_fndecl_30980_fields ext4_mark_iloc_dirty fndecl 0 30980 NULL
+offset_nfsd_readargs_30989_fields offset nfsd_readargs 0 30989 NULL
+vti6_change_mtu_fndecl_30995_fields vti6_change_mtu fndecl 2 30995 NULL
-+l2cap_create_connless_pdu_fndecl_30997_fields l2cap_create_connless_pdu fndecl 3 30997 NULL
++l2cap_create_connless_pdu_fndecl_30997_fields l2cap_create_connless_pdu fndecl 3 30997 NULL nohasharray
++splice_to_pipe_fndecl_30997_fields splice_to_pipe fndecl 0 30997 &l2cap_create_connless_pdu_fndecl_30997_fields
+lro_append_pkt_fndecl_31003_fields lro_append_pkt fndecl 4 31003 NULL
+hdpvr_read_fndecl_31018_fields hdpvr_read fndecl 3 31018 NULL
+ipoib_change_mtu_fndecl_31020_fields ipoib_change_mtu fndecl 2 31020 NULL
+DevSize_cfi_ident_31031_fields DevSize cfi_ident 0 31031 NULL
+tcf_csum_ipv4_icmp_fndecl_31033_fields tcf_csum_ipv4_icmp fndecl 3 31033 NULL
-+ocfs2_clear_ext_refcount_fndecl_31035_fields ocfs2_clear_ext_refcount fndecl 4-3 31035 NULL
++ocfs2_clear_ext_refcount_fndecl_31035_fields ocfs2_clear_ext_refcount fndecl 4-3 31035 NULL nohasharray
++internal_depth_MPT3SAS_ADAPTER_31035_fields internal_depth MPT3SAS_ADAPTER 0 31035 &ocfs2_clear_ext_refcount_fndecl_31035_fields
+hfsplus_bnode_read_u16_fndecl_31037_fields hfsplus_bnode_read_u16 fndecl 0 31037 NULL
+migrate_misplaced_transhuge_page_fndecl_31041_fields migrate_misplaced_transhuge_page fndecl 5 31041 NULL
+qla82xx_pci_set_window_fndecl_31044_fields qla82xx_pci_set_window fndecl 0-2 31044 NULL
@@ -196180,11 +200849,12 @@ index 0000000..6b5367db
+vlan_tag_qede_agg_info_31052_fields vlan_tag qede_agg_info 0 31052 NULL
+ceph_sync_setxattr_fndecl_31053_fields ceph_sync_setxattr fndecl 4 31053 NULL
+nr_bytes_scif_rma_req_31055_fields nr_bytes scif_rma_req 0 31055 NULL
-+pci_sriov_get_totalvfs_fndecl_31059_fields pci_sriov_get_totalvfs fndecl 0 31059 NULL nohasharray
-+__get_data_block_fndecl_31059_fields __get_data_block fndecl 2 31059 &pci_sriov_get_totalvfs_fndecl_31059_fields nohasharray
-+t4_max_qp_depth_c4iw_hw_queue_31059_fields t4_max_qp_depth c4iw_hw_queue 0 31059 &__get_data_block_fndecl_31059_fields
++__get_data_block_fndecl_31059_fields __get_data_block fndecl 2 31059 NULL nohasharray
++pci_sriov_get_totalvfs_fndecl_31059_fields pci_sriov_get_totalvfs fndecl 0 31059 &__get_data_block_fndecl_31059_fields nohasharray
++t4_max_qp_depth_c4iw_hw_queue_31059_fields t4_max_qp_depth c4iw_hw_queue 0 31059 &pci_sriov_get_totalvfs_fndecl_31059_fields
+drbd_bm_bits_fndecl_31061_fields drbd_bm_bits fndecl 0 31061 NULL
+si_lf_eblk_bfs_sb_info_31064_fields si_lf_eblk bfs_sb_info 0 31064 NULL
++gb_operation_response_alloc_fndecl_31065_fields gb_operation_response_alloc fndecl 2 31065 NULL
+hdr_offset_xfrm_type_31067_fields hdr_offset xfrm_type 0 31067 NULL
+bulk_in_endpointAddress_usb_serial_port_31069_fields bulk_in_endpointAddress usb_serial_port 0 31069 NULL
+segsize_musb_qh_31074_fields segsize musb_qh 0 31074 NULL
@@ -196197,6 +200867,7 @@ index 0000000..6b5367db
+s_segsize_logfs_super_31101_fields s_segsize logfs_super 0 31101 NULL
+max3421_transfer_in_done_fndecl_31109_fields max3421_transfer_in_done fndecl 0 31109 NULL
+status_tulip_desc_t_31113_fields status tulip_desc_t 0 31113 NULL
++reiserfs_write_end_fndecl_31117_fields reiserfs_write_end fndecl 5-3 31117 NULL
+dm_bm_read_lock_fndecl_31121_fields dm_bm_read_lock fndecl 2 31121 NULL
+uhci_result_isochronous_fndecl_31133_fields uhci_result_isochronous fndecl 0 31133 NULL nohasharray
+write_device_fndecl_31133_fields write_device fndecl 3 31133 &uhci_result_isochronous_fndecl_31133_fields
@@ -196217,10 +200888,10 @@ index 0000000..6b5367db
+st_int_recv_fndecl_31196_fields st_int_recv fndecl 3 31196 &alloc_huge_page_noerr_fndecl_31196_fields
+wr_ep_alauda_info_31218_fields wr_ep alauda_info 0 31218 NULL
+io_size_smbus_lpc_sch_info_31219_fields io_size_smbus lpc_sch_info 0 31219 NULL
++put_pfn_fndecl_31225_fields put_pfn fndecl 0 31225 NULL
+fl_align_sge_31227_fields fl_align sge 0 31227 NULL
+mcs_unwrap_mir_fndecl_31228_fields mcs_unwrap_mir fndecl 3 31228 NULL nohasharray
-+iscsi_tcp_segment_done_fndecl_31228_fields iscsi_tcp_segment_done fndecl 4 31228 &mcs_unwrap_mir_fndecl_31228_fields nohasharray
-+choose_log_fs_mgm_entry_size_fndecl_31228_fields choose_log_fs_mgm_entry_size fndecl 0 31228 &iscsi_tcp_segment_done_fndecl_31228_fields
++iscsi_tcp_segment_done_fndecl_31228_fields iscsi_tcp_segment_done fndecl 4 31228 &mcs_unwrap_mir_fndecl_31228_fields
+kaweth_control_fndecl_31233_fields kaweth_control fndecl 8-2 31233 NULL
+len_ip_vs_iphdr_31235_fields len ip_vs_iphdr 0 31235 NULL
+hybla_cong_avoid_fndecl_31239_fields hybla_cong_avoid fndecl 3 31239 NULL
@@ -196228,16 +200899,19 @@ index 0000000..6b5367db
+virtio_gpu_dirty_update_fndecl_31253_fields virtio_gpu_dirty_update fndecl 4-3-5-6 31253 NULL
+source_id_acpi_hest_header_31256_fields source_id acpi_hest_header 0 31256 NULL
+rbdr_len_queue_set_31258_fields rbdr_len queue_set 0 31258 NULL
++drm_rect_rotate_inv_fndecl_31263_fields drm_rect_rotate_inv fndecl 2-3 31263 NULL
+orig_video_lines_screen_info_31267_fields orig_video_lines screen_info 0 31267 NULL nohasharray
+data_dma_hanwang_31267_fields data_dma hanwang 0 31267 &orig_video_lines_screen_info_31267_fields
+vm_iomap_memory_fndecl_31269_fields vm_iomap_memory fndecl 2 31269 NULL
++mtu_qed_ll2_params_31270_fields mtu qed_ll2_params 0 31270 NULL
+end_incl_vringh_range_31272_fields end_incl vringh_range 0 31272 NULL
-+ascot2e_read_regs_fndecl_31273_fields ascot2e_read_regs fndecl 4 31273 NULL
++do_mprotect_pkey_fndecl_31273_fields do_mprotect_pkey fndecl 2-1 31273 NULL nohasharray
++ascot2e_read_regs_fndecl_31273_fields ascot2e_read_regs fndecl 4 31273 &do_mprotect_pkey_fndecl_31273_fields
+max_handles_radeon_uvd_31276_fields max_handles radeon_uvd 0 31276 NULL
+packet_length_rc_config_31278_fields packet_length rc_config 0 31278 NULL
+irq_pcmcia_device_31283_fields irq pcmcia_device 0 31283 NULL
+mmap_base_kioctx_31285_fields mmap_base kioctx 0 31285 NULL
-+handle_request_fndecl_31291_fields handle_request fndecl 9 31291 NULL
++igb_enable_sriov_fndecl_31288_fields igb_enable_sriov fndecl 2 31288 NULL
+nfs_readdir_page_filler_fndecl_31292_fields nfs_readdir_page_filler fndecl 5 31292 NULL
+avail_wm_adsp_compr_buf_31294_fields avail wm_adsp_compr_buf 0 31294 NULL
+fs_shift_hfsplus_sb_info_31309_fields fs_shift hfsplus_sb_info 0 31309 NULL
@@ -196256,13 +200930,11 @@ index 0000000..6b5367db
+size_power_iwl_fw_dbg_dest_tlv_31357_fields size_power iwl_fw_dbg_dest_tlv 0 31357 NULL
+device_acpiphp_slot_31359_fields device acpiphp_slot 0 31359 NULL
+romfs_dev_strcmp_fndecl_31365_fields romfs_dev_strcmp fndecl 4-2 31365 NULL
-+rcvhdrq_phys_hfi1_ctxtdata_31388_fields rcvhdrq_phys hfi1_ctxtdata 0 31388 NULL
-+s_stripe_ext4_sb_info_31391_fields s_stripe ext4_sb_info 0 31391 NULL
++s_stripe_ext4_sb_info_31391_fields s_stripe ext4_sb_info 0 31391 NULL nohasharray
++packet_length_core_rx_fast_path_cqe_31391_fields packet_length core_rx_fast_path_cqe 0 31391 &s_stripe_ext4_sb_info_31391_fields
+spi_populate_sync_msg_fndecl_31392_fields spi_populate_sync_msg fndecl 0 31392 NULL
+ip_tunnel_bind_dev_fndecl_31398_fields ip_tunnel_bind_dev fndecl 0 31398 NULL
+number_xt_table_info_31404_fields number xt_table_info 0 31404 NULL
-+num_types_amdgpu_irq_src_31405_fields num_types amdgpu_irq_src 0 31405 NULL
-+rxrpc_rx_window_size_vardecl_31406_fields rxrpc_rx_window_size vardecl 0 31406 NULL
+data_offset_msgbuf_rx_complete_31409_fields data_offset msgbuf_rx_complete 0 31409 NULL
+sg_tablesize_sg_device_31415_fields sg_tablesize sg_device 0 31415 NULL
+write_node_page_fndecl_31419_fields write_node_page fndecl 1 31419 NULL
@@ -196270,31 +200942,30 @@ index 0000000..6b5367db
+bch_bucket_alloc_fndecl_31421_fields bch_bucket_alloc fndecl 0 31421 NULL
+onenand_read_oob_nolock_fndecl_31430_fields onenand_read_oob_nolock fndecl 2 31430 NULL nohasharray
+len_brcmf_vs_tlv_31430_fields len brcmf_vs_tlv 0 31430 &onenand_read_oob_nolock_fndecl_31430_fields
-+mpx_unmap_tables_fndecl_31439_fields mpx_unmap_tables fndecl 2-3 31439 NULL
++mpx_unmap_tables_fndecl_31439_fields mpx_unmap_tables fndecl 2-3 31439 NULL nohasharray
++__check_eq_u32_array_fndecl_31439_fields __check_eq_u32_array fndecl 4-6 31439 &mpx_unmap_tables_fndecl_31439_fields
+vc_x_vc_data_31443_fields vc_x vc_data 0 31443 NULL
+gro_size_bnx2x_agg_info_31450_fields gro_size bnx2x_agg_info 0 31450 NULL
+tx_data_ep_usb_tx_data_port_31452_fields tx_data_ep usb_tx_data_port 0 31452 NULL nohasharray
+length_wsm_ssid_31452_fields length wsm_ssid 0 31452 &tx_data_ep_usb_tx_data_port_31452_fields
++max_sz_mmc_test_area_31453_fields max_sz mmc_test_area 0 31453 NULL
+i_eattr_gfs2_inode_31461_fields i_eattr gfs2_inode 0 31461 NULL
+length__diva_xdi_um_cfg_cmd_data_read_sdram_31465_fields length _diva_xdi_um_cfg_cmd_data_read_sdram 0 31465 NULL
+drbd_send_all_fndecl_31468_fields drbd_send_all fndecl 4 31468 NULL
-+len_mmap_arg_struct32_31471_fields len mmap_arg_struct32 0 31471 NULL nohasharray
-+videobuf_dma_init_overlay_fndecl_31471_fields videobuf_dma_init_overlay fndecl 4 31471 &len_mmap_arg_struct32_31471_fields
++videobuf_dma_init_overlay_fndecl_31471_fields videobuf_dma_init_overlay fndecl 4 31471 NULL nohasharray
++len_mmap_arg_struct32_31471_fields len mmap_arg_struct32 0 31471 &videobuf_dma_init_overlay_fndecl_31471_fields
+lock_extent_bits_fndecl_31481_fields lock_extent_bits fndecl 3-2 31481 NULL
+wl12xx_spi_raw_write_fndecl_31482_fields wl12xx_spi_raw_write fndecl 4 31482 NULL
+rq_wqe_shift_mlx5_ib_create_wq_31487_fields rq_wqe_shift mlx5_ib_create_wq 0 31487 NULL
+xlog_verify_tail_fndecl_31489_fields xlog_verify_tail fndecl 3 31489 NULL nohasharray
+length_rsd_31489_fields length rsd 0 31489 &xlog_verify_tail_fndecl_31489_fields
-+pcpu_alloc_fndecl_31502_fields pcpu_alloc fndecl 1 31502 NULL
+PIXDEPTH_kyrofb_info_31509_fields PIXDEPTH kyrofb_info 0 31509 NULL
+fixed_size_llseek_fndecl_31512_fields fixed_size_llseek fndecl 4-2 31512 NULL
+ddb_input_read_fndecl_31516_fields ddb_input_read fndecl 3 31516 NULL
+shmem_replace_page_fndecl_31519_fields shmem_replace_page fndecl 4 31519 NULL
-+tx_iovlen_ncp_request_reply_31522_fields tx_iovlen ncp_request_reply 0 31522 NULL
+residual_datacnt_status_pkt_31531_fields residual_datacnt status_pkt 0 31531 NULL
+veth_set_rx_headroom_fndecl_31535_fields veth_set_rx_headroom fndecl 2 31535 NULL
+rx_pipe_usbpn_dev_31540_fields rx_pipe usbpn_dev 0 31540 NULL
-+__alloc_percpu_fndecl_31543_fields __alloc_percpu fndecl 1 31543 NULL
+tcp_tso_acked_fndecl_31549_fields tcp_tso_acked fndecl 0 31549 NULL
+stride_drm_qxl_alloc_surf_31551_fields stride drm_qxl_alloc_surf 0 31551 NULL nohasharray
+ks_rdreg16_fndecl_31551_fields ks_rdreg16 fndecl 0 31551 &stride_drm_qxl_alloc_surf_31551_fields
@@ -196303,21 +200974,24 @@ index 0000000..6b5367db
+can_change_mtu_fndecl_31583_fields can_change_mtu fndecl 2 31583 NULL
+dvb_dvr_set_buffer_size_fndecl_31587_fields dvb_dvr_set_buffer_size fndecl 2 31587 NULL
+num_txq_bna_attr_31588_fields num_txq bna_attr 0 31588 NULL
++emac_receive_skb_fndecl_31589_fields emac_receive_skb fndecl 3 31589 NULL
+v_max_out_saa7146_standard_31591_fields v_max_out saa7146_standard 0 31591 NULL
+nbchannel_capi_profile_31592_fields nbchannel capi_profile 0 31592 NULL
+radeon_gart_size_auto_fndecl_31605_fields radeon_gart_size_auto fndecl 0 31605 NULL
+sys_mprotect_fndecl_31611_fields sys_mprotect fndecl 2-1 31611 NULL
++iterate_fd_fndecl_31615_fields iterate_fd fndecl 0 31615 NULL
+dir_commit_chunk_fndecl_31621_fields dir_commit_chunk fndecl 3 31621 NULL
+a_entry_exec_31622_fields a_entry exec 0 31622 NULL
+vma_merge_fndecl_31624_fields vma_merge fndecl 4-3 31624 NULL
++xfs_bmap_add_extent_delay_real_fndecl_31634_fields xfs_bmap_add_extent_delay_real fndecl 0 31634 NULL
+nv04_fifo_new__fndecl_31639_fields nv04_fifo_new_ fndecl 4 31639 NULL
+segsize_dn_skb_cb_31640_fields segsize dn_skb_cb 0 31640 NULL
+pep_recvmsg_fndecl_31641_fields pep_recvmsg fndecl 3 31641 NULL
-+ext4_free_blocks_fndecl_31648_fields ext4_free_blocks fndecl 4-5 31648 NULL nohasharray
-+av_buf_tail_dccp_ackvec_31648_fields av_buf_tail dccp_ackvec 0 31648 &ext4_free_blocks_fndecl_31648_fields
++av_buf_tail_dccp_ackvec_31648_fields av_buf_tail dccp_ackvec 0 31648 NULL nohasharray
++ext4_free_blocks_fndecl_31648_fields ext4_free_blocks fndecl 4-5 31648 &av_buf_tail_dccp_ackvec_31648_fields
+mwifiex_set_wpa_ie_helper_fndecl_31650_fields mwifiex_set_wpa_ie_helper fndecl 3 31650 NULL
++brk_prctl_mm_map_31652_fields brk prctl_mm_map 0 31652 NULL
+bpp_uvc_format_31654_fields bpp uvc_format 0 31654 NULL
-+compat_sys_ipc_fndecl_31659_fields compat_sys_ipc fndecl 3 31659 NULL
+ext4_map_blocks_fndecl_31663_fields ext4_map_blocks fndecl 0 31663 NULL
+hp_hpet_phys_hpets_31664_fields hp_hpet_phys hpets 0 31664 NULL
+read_dma_ims_pcu_31667_fields read_dma ims_pcu 0 31667 NULL nohasharray
@@ -196325,23 +200999,22 @@ index 0000000..6b5367db
+set_capacity_fndecl_31670_fields set_capacity fndecl 2 31670 NULL
+fragment_ufs_buffer_head_31676_fields fragment ufs_buffer_head 0 31676 NULL
+rx_header_len_pn533_frame_ops_31680_fields rx_header_len pn533_frame_ops 0 31680 NULL
++len_mwifiex_ds_misc_cmd_31691_fields len mwifiex_ds_misc_cmd 0 31691 NULL
+set_rxd_buffer_pointer_fndecl_31693_fields set_rxd_buffer_pointer fndecl 8 31693 NULL
+sr_write_cmd_async_fndecl_31698_fields sr_write_cmd_async fndecl 5 31698 NULL
+TargetsPerBus_aac_bus_info_response_31699_fields TargetsPerBus aac_bus_info_response 0 31699 NULL
+init_pipe_urbs_fndecl_31704_fields init_pipe_urbs fndecl 2-6 31704 NULL
+len_ib_ucm_lap_31705_fields len ib_ucm_lap 0 31705 NULL
-+get_free_serial_index_fndecl_31714_fields get_free_serial_index fndecl 0 31714 NULL
++pipe_zero_fndecl_31707_fields pipe_zero fndecl 1 31707 NULL
+btrfs_add_link_fndecl_31718_fields btrfs_add_link fndecl 5 31718 NULL
-+compat_import_iovec_fndecl_31721_fields compat_import_iovec fndecl 3 31721 NULL nohasharray
-+ath6kl_usb_submit_ctrl_out_fndecl_31721_fields ath6kl_usb_submit_ctrl_out fndecl 6 31721 &compat_import_iovec_fndecl_31721_fields
-+sscanf_fndecl_31725_fields sscanf fndecl 0 31725 NULL
+offset_nfs_pgio_args_31727_fields offset nfs_pgio_args 0 31727 NULL
+ext2_new_blocks_fndecl_31729_fields ext2_new_blocks fndecl 0-2 31729 NULL
+recv_bm_rle_bits_fndecl_31731_fields recv_bm_rle_bits fndecl 4 31731 NULL
+location_r5l_payload_data_parity_31741_fields location r5l_payload_data_parity 0 31741 NULL
+ih_ring_entry_size_kfd_device_info_31745_fields ih_ring_entry_size kfd_device_info 0 31745 NULL
+nxt200x_writereg_multibyte_fndecl_31757_fields nxt200x_writereg_multibyte fndecl 4 31757 NULL
-+bio_readpage_error_fndecl_31761_fields bio_readpage_error fndecl 4-5 31761 NULL
++bio_readpage_error_fndecl_31761_fields bio_readpage_error fndecl 4-5 31761 NULL nohasharray
++pag_agno_xfs_perag_31761_fields pag_agno xfs_perag 0 31761 &bio_readpage_error_fndecl_31761_fields
+i_size_dio_31770_fields i_size dio 0 31770 NULL
+iommu_pgshift_gk20a_instmem_31778_fields iommu_pgshift gk20a_instmem 0 31778 NULL
+endpt_ubifs_scan_leb_31792_fields endpt ubifs_scan_leb 0 31792 NULL
@@ -196352,7 +201025,6 @@ index 0000000..6b5367db
+parent_i_pos_low_fat_fid_31802_fields parent_i_pos_low fat_fid 0 31802 NULL
+bg_inode_table_ext2_group_desc_31805_fields bg_inode_table ext2_group_desc 0 31805 NULL
+target_submit_cmd_map_sgls_fndecl_31806_fields target_submit_cmd_map_sgls fndecl 6-15 31806 NULL
-+qed_cxt_set_srq_count_fndecl_31811_fields qed_cxt_set_srq_count fndecl 2 31811 NULL
+alloc_pg_vec_fndecl_31814_fields alloc_pg_vec fndecl 2 31814 NULL
+secure_dccp_sequence_number_fndecl_31815_fields secure_dccp_sequence_number fndecl 0 31815 NULL
+NumPhys__MPI2_CONFIG_PAGE_EXPANDER_0_31816_fields NumPhys _MPI2_CONFIG_PAGE_EXPANDER_0 0 31816 NULL
@@ -196363,35 +201035,39 @@ index 0000000..6b5367db
+num_partition_entries__gpt_header_31832_fields num_partition_entries _gpt_header 0 31832 NULL nohasharray
+byte_len_svc_rdma_op_ctxt_31832_fields byte_len svc_rdma_op_ctxt 0 31832 &num_partition_entries__gpt_header_31832_fields
+num_tty_driver_31834_fields num tty_driver 0 31834 NULL
-+n_channels_efx_nic_31838_fields n_channels efx_nic 0 31838 NULL
++n_channels_efx_nic_31838_fields n_channels efx_nic 0 31838 NULL nohasharray
++locked_vm_mm_struct_31838_fields locked_vm mm_struct 0 31838 &n_channels_efx_nic_31838_fields
+opticon_process_data_packet_fndecl_31839_fields opticon_process_data_packet fndecl 3 31839 NULL
+ds_block_shift_logfs_disk_super_31840_fields ds_block_shift logfs_disk_super 0 31840 NULL
-+nciq_cxgb4_lld_info_31848_fields nciq cxgb4_lld_info 0 31848 NULL
+sys_munlock_fndecl_31851_fields sys_munlock fndecl 1-2 31851 NULL
+msi2500_convert_stream_fndecl_31862_fields msi2500_convert_stream fndecl 0 31862 NULL
+udf_setup_indirect_aext_fndecl_31873_fields udf_setup_indirect_aext fndecl 2 31873 NULL
+gseg_gru_set_context_option_req_31876_fields gseg gru_set_context_option_req 0 31876 NULL
+i_lastfrag_ufs_inode_info_31879_fields i_lastfrag ufs_inode_info 0 31879 NULL
+sctp_user_addto_chunk_fndecl_31881_fields sctp_user_addto_chunk fndecl 2 31881 NULL
-+s_hdrwords_rvt_qp_31882_fields s_hdrwords rvt_qp 0 31882 NULL
+ieee80211_start_tx_ba_cb_fndecl_31884_fields ieee80211_start_tx_ba_cb fndecl 3 31884 NULL
+reallocate_resource_fndecl_31885_fields reallocate_resource fndecl 3 31885 NULL
-+max_tasks_bnx2fc_hba_31893_fields max_tasks bnx2fc_hba 0 31893 NULL
-+intel_mem_write_fndecl_31895_fields intel_mem_write fndecl 3 31895 NULL
++tower_write_fndecl_31895_fields tower_write fndecl 3 31895 NULL nohasharray
++intel_mem_write_fndecl_31895_fields intel_mem_write fndecl 3 31895 &tower_write_fndecl_31895_fields
+ieee80211_get_hdrlen_from_buf_fndecl_31900_fields ieee80211_get_hdrlen_from_buf fndecl 0 31900 NULL
+size_macb_tx_skb_31904_fields size macb_tx_skb 0 31904 NULL nohasharray
+ai_hstcp_31904_fields ai hstcp 0 31904 &size_macb_tx_skb_31904_fields
+xfs_qm_dqattach_locked_fndecl_31906_fields xfs_qm_dqattach_locked fndecl 0 31906 NULL
+vram_vardecl_atyfb_base_c_31909_fields vram vardecl_atyfb_base.c 0 31909 NULL nohasharray
+lengthExtendedAttr_fileEntry_31909_fields lengthExtendedAttr fileEntry 0 31909 &vram_vardecl_atyfb_base_c_31909_fields
-+numdl_nvme_get_log_page_command_31912_fields numdl nvme_get_log_page_command 0 31912 NULL nohasharray
-+num_packets_em28xx_usb_bufs_31912_fields num_packets em28xx_usb_bufs 0 31912 &numdl_nvme_get_log_page_command_31912_fields
-+drvr_qdepth_blogic_adapter_31915_fields drvr_qdepth blogic_adapter 0 31915 NULL
++num_packets_em28xx_usb_bufs_31912_fields num_packets em28xx_usb_bufs 0 31912 NULL nohasharray
++rxkad_secure_packet_fndecl_31912_fields rxkad_secure_packet fndecl 3 31912 &num_packets_em28xx_usb_bufs_31912_fields nohasharray
++numdl_nvme_get_log_page_command_31912_fields numdl nvme_get_log_page_command 0 31912 &rxkad_secure_packet_fndecl_31912_fields
++drvr_qdepth_blogic_adapter_31915_fields drvr_qdepth blogic_adapter 0 31915 NULL nohasharray
++scsi_dma_map_fndecl_31915_fields scsi_dma_map fndecl 0 31915 &drvr_qdepth_blogic_adapter_31915_fields
++mtu_gsm_mux_31917_fields mtu gsm_mux 0 31917 NULL
+fuse_send_write_pages_fndecl_31919_fields fuse_send_write_pages fndecl 0-5 31919 NULL
++bus_bm_wait_for_ack_i2400m_31925_fields bus_bm_wait_for_ack i2400m 0 31925 NULL
+physical_block_size_scsi_disk_31931_fields physical_block_size scsi_disk 0 31931 NULL
+rmmio_size_radeon_device_31934_fields rmmio_size radeon_device 0 31934 NULL
+channel_iio_chan_spec_31939_fields channel iio_chan_spec 0 31939 NULL nohasharray
+mesh_rx_plink_frame_fndecl_31939_fields mesh_rx_plink_frame fndecl 3 31939 &channel_iio_chan_spec_31939_fields
++full_len_strp_rx_msg_31942_fields full_len strp_rx_msg 0 31942 NULL
+ptr_i915_gem_userptr_31948_fields ptr i915_gem_userptr 0 31948 NULL
+_read_mtd_info_31950_fields _read mtd_info 0 31950 NULL
+buf_height_tpg_data_31953_fields buf_height tpg_data 0 31953 NULL
@@ -196404,7 +201080,8 @@ index 0000000..6b5367db
+flash_offset_jffs2_raw_node_ref_31989_fields flash_offset jffs2_raw_node_ref 0 31989 NULL
+link_duplex_qlcnic_hardware_context_31996_fields link_duplex qlcnic_hardware_context 0 31996 NULL
+isofs_get_block_fndecl_32000_fields isofs_get_block fndecl 2 32000 NULL
-+bg_next_group_ocfs2_group_desc_32003_fields bg_next_group ocfs2_group_desc 0 32003 NULL
++blocksize_sddr09_card_info_32003_fields blocksize sddr09_card_info 0 32003 NULL nohasharray
++bg_next_group_ocfs2_group_desc_32003_fields bg_next_group ocfs2_group_desc 0 32003 &blocksize_sddr09_card_info_32003_fields
+ss_descs_count_ffs_data_32006_fields ss_descs_count ffs_data 0 32006 NULL
+size_tiger_dma_32013_fields size tiger_dma 0 32013 NULL nohasharray
+elants_i2c_read_fndecl_32013_fields elants_i2c_read fndecl 3 32013 &size_tiger_dma_32013_fields
@@ -196413,12 +201090,14 @@ index 0000000..6b5367db
+sd_sgentry_align_brcmfmac_sdio_pd_32021_fields sd_sgentry_align brcmfmac_sdio_pd 0 32021 NULL
+depth_zr364xx_fmt_32028_fields depth zr364xx_fmt 0 32028 NULL
+check_xattr_ref_inode_fndecl_32039_fields check_xattr_ref_inode fndecl 0 32039 NULL
-+base_efifb_dmi_info_32041_fields base efifb_dmi_info 0 32041 NULL
++base_efifb_dmi_info_32041_fields base efifb_dmi_info 0 32041 NULL nohasharray
++max_ports_in_lag_mlxsw_resources_32041_fields max_ports_in_lag mlxsw_resources 0 32041 &base_efifb_dmi_info_32041_fields
+next_free_pstore_32049_fields next_free pstore 0 32049 NULL
++__jfs_xattr_set_fndecl_32062_fields __jfs_xattr_set fndecl 4 32062 NULL
+config_size_nd_cmd_get_config_size_32073_fields config_size nd_cmd_get_config_size 0 32073 NULL
+add_rx_skb_fndecl_32082_fields add_rx_skb fndecl 3 32082 NULL
-+chunk_size_irctl_32083_fields chunk_size irctl 0 32083 NULL nohasharray
-+s_first_data_block_nilfs_super_block_32083_fields s_first_data_block nilfs_super_block 0 32083 &chunk_size_irctl_32083_fields
++s_first_data_block_nilfs_super_block_32083_fields s_first_data_block nilfs_super_block 0 32083 NULL nohasharray
++chunk_size_irctl_32083_fields chunk_size irctl 0 32083 &s_first_data_block_nilfs_super_block_32083_fields
+ip6_tnl_err_fndecl_32086_fields ip6_tnl_err fndecl 8 32086 NULL nohasharray
+t3_init_l2t_fndecl_32086_fields t3_init_l2t fndecl 1 32086 &ip6_tnl_err_fndecl_32086_fields
+omfs_clear_range_fndecl_32087_fields omfs_clear_range fndecl 2 32087 NULL
@@ -196428,9 +201107,12 @@ index 0000000..6b5367db
+jffs2_sum_scan_sumnode_fndecl_32116_fields jffs2_sum_scan_sumnode fndecl 4 32116 &offset_p9_fcall_32116_fields
+config_rom_length_fw_device_32117_fields config_rom_length fw_device 0 32117 NULL
+height_drm_mode_fb_cmd2_32120_fields height drm_mode_fb_cmd2 0 32120 NULL
++buffer_len_hd_async_handle_32125_fields buffer_len hd_async_handle 0 32125 NULL
+rcvegrcnt_qib_ctxtdata_32127_fields rcvegrcnt qib_ctxtdata 0 32127 NULL
+fsector_t_vardecl_floppy_c_32141_fields fsector_t vardecl_floppy.c 0 32141 NULL
+mlx4_en_complete_rx_desc_fndecl_32150_fields mlx4_en_complete_rx_desc fndecl 0 32150 NULL
++addr_qedr_create_cq_ureq_32154_fields addr qedr_create_cq_ureq 0 32154 NULL
++ipwireless_send_packet_fndecl_32155_fields ipwireless_send_packet fndecl 4 32155 NULL
+s_clustersize_ocfs2_super_32156_fields s_clustersize ocfs2_super 0 32156 NULL
+num_entries_msg_get_chap_32158_fields num_entries msg_get_chap 0 32158 NULL
+insert_zbranch_fndecl_32159_fields insert_zbranch fndecl 3 32159 NULL
@@ -196438,33 +201120,38 @@ index 0000000..6b5367db
+max_recv_dlength_iscsi_conn_32168_fields max_recv_dlength iscsi_conn 0 32168 NULL
+nfs41_maxwrite_overhead_vardecl_32172_fields nfs41_maxwrite_overhead vardecl 0 32172 NULL
+length_vring_rx_dma_32178_fields length vring_rx_dma 0 32178 NULL
++xfs_reflink_update_dest_fndecl_32179_fields xfs_reflink_update_dest fndecl 3-2 32179 NULL
++vmalloc_usercopy_fndecl_32186_fields vmalloc_usercopy fndecl 1 32186 NULL
+ping_getfrag_fndecl_32187_fields ping_getfrag fndecl 4 32187 NULL
-+len_sigma_action_32189_fields len sigma_action 0 32189 NULL nohasharray
-+init_page_buffers_fndecl_32189_fields init_page_buffers fndecl 3 32189 &len_sigma_action_32189_fields
++init_page_buffers_fndecl_32189_fields init_page_buffers fndecl 3 32189 NULL nohasharray
++len_sigma_action_32189_fields len sigma_action 0 32189 &init_page_buffers_fndecl_32189_fields
+tail_len_beacon_data_32194_fields tail_len beacon_data 0 32194 NULL
+s_system_dir_blkno_ocfs2_super_block_32196_fields s_system_dir_blkno ocfs2_super_block 0 32196 NULL
+nr_registers_ioapic_32204_fields nr_registers ioapic 0 32204 NULL
+len_bnep_ext_hdr_32205_fields len bnep_ext_hdr 0 32205 NULL
+intel_tile_width_bytes_fndecl_32206_fields intel_tile_width_bytes fndecl 0-3 32206 NULL
+ocfs2_decrease_refcount_rec_fndecl_32210_fields ocfs2_decrease_refcount_rec fndecl 6-7 32210 NULL
++k_offset_in_core_key_32212_fields k_offset in_core_key 0 32212 NULL
++seq_hex_dump_fndecl_32213_fields seq_hex_dump fndecl 7-4-5 32213 NULL
+num_sbs_pf_vf_resc_32216_fields num_sbs pf_vf_resc 0 32216 NULL
+mag_length_ssp_sensorhub_info_32219_fields mag_length ssp_sensorhub_info 0 32219 NULL
+residual_task_status_struct_32220_fields residual task_status_struct 0 32220 NULL
+count_igb_ring_32225_fields count igb_ring 0 32225 NULL
+sys_munmap_fndecl_32226_fields sys_munmap fndecl 1-2 32226 NULL
+fragments_snd_compressed_buffer_32230_fields fragments snd_compressed_buffer 0 32230 NULL
-+snd_usb_ctl_msg_fndecl_32231_fields snd_usb_ctl_msg fndecl 8 32231 NULL
+endpoint_usbatm_channel_32232_fields endpoint usbatm_channel 0 32232 NULL
+ts_packet_count_cx8802_dev_32239_fields ts_packet_count cx8802_dev 0 32239 NULL
-+len_nfs_entry_32240_fields len nfs_entry 0 32240 NULL
++capacity_qed_chain_32247_fields capacity qed_chain 0 32247 NULL
+msg_page_kvm_vcpu_hv_synic_32251_fields msg_page kvm_vcpu_hv_synic 0 32251 NULL
+n_ids_vport_portids_32258_fields n_ids vport_portids 0 32258 NULL
-+oslec_create_fndecl_32264_fields oslec_create fndecl 1 32264 NULL
++oslec_create_fndecl_32264_fields oslec_create fndecl 1 32264 NULL nohasharray
++msb_verify_block_fndecl_32264_fields msb_verify_block fndecl 2 32264 &oslec_create_fndecl_32264_fields
++venus_mkdir_fndecl_32276_fields venus_mkdir fndecl 4 32276 NULL
+buf_len_lpfc_sli_config_hbd_32278_fields buf_len lpfc_sli_config_hbd 0 32278 NULL nohasharray
+__v4l2_ctrl_s_ctrl_fndecl_32278_fields __v4l2_ctrl_s_ctrl fndecl 2 32278 &buf_len_lpfc_sli_config_hbd_32278_fields
+usb_allocate_stream_buffers_fndecl_32279_fields usb_allocate_stream_buffers fndecl 3 32279 NULL
+mapsize_uart_port_32282_fields mapsize uart_port 0 32282 NULL
-+seq_open_net_fndecl_32283_fields seq_open_net fndecl 4 32283 NULL
++vol_cdev_read_fndecl_32283_fields vol_cdev_read fndecl 3 32283 NULL
+IA_TX_BUF_SZ_vardecl_iphase_c_32295_fields IA_TX_BUF_SZ vardecl_iphase.c 0 32295 NULL nohasharray
+dma_size_sst_pdata_32295_fields dma_size sst_pdata 0 32295 &IA_TX_BUF_SZ_vardecl_iphase_c_32295_fields
+rept_size_usbtouch_device_info_32306_fields rept_size usbtouch_device_info 0 32306 NULL
@@ -196473,20 +201160,16 @@ index 0000000..6b5367db
+nla_put_fndecl_32321_fields nla_put fndecl 3 32321 NULL
+_nfs42_proc_copy_fndecl_32323_fields _nfs42_proc_copy fndecl 5 32323 NULL
+khugepaged_scan_pmd_fndecl_32330_fields khugepaged_scan_pmd fndecl 3 32330 NULL
-+datablock_size_btrfsic_state_32333_fields datablock_size btrfsic_state 0 32333 NULL nohasharray
-+bochs_ttm_tt_create_fndecl_32333_fields bochs_ttm_tt_create fndecl 2 32333 &datablock_size_btrfsic_state_32333_fields
++bochs_ttm_tt_create_fndecl_32333_fields bochs_ttm_tt_create fndecl 2 32333 NULL nohasharray
++datablock_size_btrfsic_state_32333_fields datablock_size btrfsic_state 0 32333 &bochs_ttm_tt_create_fndecl_32333_fields
+mem_start_net_device_32337_fields mem_start net_device 0 32337 NULL
+exynos_drm_gem_create_fndecl_32344_fields exynos_drm_gem_create fndecl 3 32344 NULL
-+num_ports_moxa8250_board_32350_fields num_ports moxa8250_board 0 32350 NULL
+scrub_raid56_parity_fndecl_32354_fields scrub_raid56_parity fndecl 5 32354 NULL nohasharray
+brcmf_fws_hdrpull_fndecl_32354_fields brcmf_fws_hdrpull fndecl 2 32354 &scrub_raid56_parity_fndecl_32354_fields
-+max_q_vectors_ixgbe_adapter_32359_fields max_q_vectors ixgbe_adapter 0 32359 NULL
+end_crash_mem_range_32361_fields end crash_mem_range 0 32361 NULL
+netlbl_catmap_setlong_fndecl_32363_fields netlbl_catmap_setlong fndecl 2 32363 NULL nohasharray
+backlight_sd_gl860_32363_fields backlight sd_gl860 0 32363 &netlbl_catmap_setlong_fndecl_32363_fields
+datalen_ncp_request_reply_32365_fields datalen ncp_request_reply 0 32365 NULL
-+size_wiimote_buf_32369_fields size wiimote_buf 0 32369 NULL
-+xfs_setfilesize_fndecl_32370_fields xfs_setfilesize fndecl 4-3 32370 NULL
+hci_req_add_fndecl_32376_fields hci_req_add fndecl 3 32376 NULL
+datablk_xfs_da_geometry_32386_fields datablk xfs_da_geometry 0 32386 NULL
+header_size_smb_version_values_32387_fields header_size smb_version_values 0 32387 NULL
@@ -196494,17 +201177,14 @@ index 0000000..6b5367db
+adxl34x_spi_read_block_fndecl_32391_fields adxl34x_spi_read_block fndecl 3 32391 NULL
+offset_pnfs_layout_range_32403_fields offset pnfs_layout_range 0 32403 NULL
+ftdi_prepare_write_buffer_fndecl_32406_fields ftdi_prepare_write_buffer fndecl 3 32406 NULL
-+cont_add_fndecl_32409_fields cont_add fndecl 4 32409 NULL
+agbno_xfs_alloc_arg_32410_fields agbno xfs_alloc_arg 0 32410 NULL
+vhost_new_umem_range_fndecl_32413_fields vhost_new_umem_range fndecl 2-3 32413 NULL
+ext4_list_backups_fndecl_32417_fields ext4_list_backups fndecl 0 32417 NULL
+nxt200x_readreg_multibyte_fndecl_32418_fields nxt200x_readreg_multibyte fndecl 4 32418 NULL
+ci_rsbtbl_size_dlm_config_info_32423_fields ci_rsbtbl_size dlm_config_info 0 32423 NULL
+srpt_build_tskmgmt_rsp_fndecl_32427_fields srpt_build_tskmgmt_rsp fndecl 0 32427 NULL
-+qib_skip_sge_fndecl_32432_fields qib_skip_sge fndecl 2 32432 NULL
+di_next_index_dinode_32437_fields di_next_index dinode 0 32437 NULL nohasharray
-+xs_udp_set_buffer_size_fndecl_32437_fields xs_udp_set_buffer_size fndecl 2 32437 &di_next_index_dinode_32437_fields nohasharray
-+gso_size_xenvif_rx_meta_32437_fields gso_size xenvif_rx_meta 0 32437 &xs_udp_set_buffer_size_fndecl_32437_fields
++xs_udp_set_buffer_size_fndecl_32437_fields xs_udp_set_buffer_size fndecl 2 32437 &di_next_index_dinode_32437_fields
+btrfs_get_extent_fndecl_32440_fields btrfs_get_extent fndecl 4-3-5 32440 NULL nohasharray
+truncated_len_btrfs_ordered_extent_32440_fields truncated_len btrfs_ordered_extent 0 32440 &btrfs_get_extent_fndecl_32440_fields
+t_blk_res_used_xfs_trans_32443_fields t_blk_res_used xfs_trans 0 32443 NULL
@@ -196513,43 +201193,47 @@ index 0000000..6b5367db
+__snd_rawmidi_transmit_peek_fndecl_32453_fields __snd_rawmidi_transmit_peek fndecl 0-3 32453 NULL
+permission_inode_operations_32455_fields permission inode_operations 0 32455 NULL
+ext4_da_write_inline_data_end_fndecl_32456_fields ext4_da_write_inline_data_end fndecl 2-4 32456 NULL
++snd_buf_bytes_vardecl_usbatm_c_32457_fields snd_buf_bytes vardecl_usbatm.c 0 32457 NULL
+ddata_ofs_cyttsp4_sysinfo_ofs_32462_fields ddata_ofs cyttsp4_sysinfo_ofs 0 32462 NULL
-+blk_execute_rq_fndecl_32470_fields blk_execute_rq fndecl 0 32470 NULL nohasharray
-+out_kvec_left_ceph_connection_32470_fields out_kvec_left ceph_connection 0 32470 &blk_execute_rq_fndecl_32470_fields
-+start_ordered_ops_fndecl_32475_fields start_ordered_ops fndecl 2-3 32475 NULL
++blk_execute_rq_fndecl_32470_fields blk_execute_rq fndecl 0 32470 NULL
++do_loop_readv_writev_fndecl_32473_fields do_loop_readv_writev fndecl 0 32473 NULL
++start_ordered_ops_fndecl_32475_fields start_ordered_ops fndecl 2 32475 NULL
+skb_shift_fndecl_32480_fields skb_shift fndecl 3 32480 NULL
+j_len_reiserfs_journal_desc_32481_fields j_len reiserfs_journal_desc 0 32481 NULL
-+s_fshift_ufs_sb_private_info_32491_fields s_fshift ufs_sb_private_info 0 32491 NULL nohasharray
-+reg_shift_adnp_32491_fields reg_shift adnp 0 32491 &s_fshift_ufs_sb_private_info_32491_fields
++s_fshift_ufs_sb_private_info_32491_fields s_fshift ufs_sb_private_info 0 32491 NULL
+rx_offset_nfp_net_32498_fields rx_offset nfp_net 0 32498 NULL
+read_pci_config_16_fndecl_32499_fields read_pci_config_16 fndecl 0 32499 NULL
-+reply_nvif_notify_req_v0_32501_fields reply nvif_notify_req_v0 0 32501 NULL
+lmLogFormat_fndecl_32506_fields lmLogFormat fndecl 2 32506 NULL nohasharray
+acpi_unmap_fndecl_32506_fields acpi_unmap fndecl 1 32506 &lmLogFormat_fndecl_32506_fields
+num_tgtdevs_btrfs_bio_32507_fields num_tgtdevs btrfs_bio 0 32507 NULL
+set_16kib_bfsize_stmmac_mode_ops_32520_fields set_16kib_bfsize stmmac_mode_ops 0 32520 NULL
++f_dupfd_fndecl_32521_fields f_dupfd fndecl 1 32521 NULL
+jffs2_acl_count_fndecl_32522_fields jffs2_acl_count fndecl 0-1 32522 NULL nohasharray
+__xfs_trans_commit_fndecl_32522_fields __xfs_trans_commit fndecl 0 32522 &jffs2_acl_count_fndecl_32522_fields
+frameoffset_b43_dmaring_32525_fields frameoffset b43_dmaring 0 32525 NULL
+map_iommu_fndecl_32528_fields map_iommu fndecl 2 32528 NULL
+BBAR_rio_detail_32529_fields BBAR rio_detail 0 32529 NULL
+xenvif_max_queues_vardecl_32530_fields xenvif_max_queues vardecl 0 32530 NULL
-+num_comp_vectors_mlx4_caps_32534_fields num_comp_vectors mlx4_caps 0 32534 NULL nohasharray
-+HDLC_irq_fndecl_32534_fields HDLC_irq fndecl 2 32534 &num_comp_vectors_mlx4_caps_32534_fields
++HDLC_irq_fndecl_32534_fields HDLC_irq fndecl 2 32534 NULL nohasharray
++num_comp_vectors_mlx4_caps_32534_fields num_comp_vectors mlx4_caps 0 32534 &HDLC_irq_fndecl_32534_fields
+nla_put_64bit_fndecl_32535_fields nla_put_64bit fndecl 3 32535 NULL
+rq_auth_slack_svc_rqst_32548_fields rq_auth_slack svc_rqst 0 32548 NULL
+TransferCount__MSG_SCSI_IO_REPLY_32554_fields TransferCount _MSG_SCSI_IO_REPLY 0 32554 NULL
+x32_arch_ptrace_fndecl_32556_fields x32_arch_ptrace fndecl 3 32556 NULL
++sys_prctl_fndecl_32557_fields sys_prctl fndecl 3 32557 NULL
+pkey_table_len_mlx5_port_caps_32558_fields pkey_table_len mlx5_port_caps 0 32558 NULL
++bcd2000_midi_handle_input_fndecl_32572_fields bcd2000_midi_handle_input fndecl 3 32572 NULL
+syt_interval_amdtp_stream_32574_fields syt_interval amdtp_stream 0 32574 NULL
+iov_iter_zero_fndecl_32575_fields iov_iter_zero fndecl 1-0 32575 NULL
+ext4_try_to_write_inline_data_fndecl_32578_fields ext4_try_to_write_inline_data fndecl 4-3 32578 NULL
-+check_right_item_operations_32585_fields check_right item_operations 0 32585 NULL nohasharray
-+fnic_fc_trace_get_data_fndecl_32585_fields fnic_fc_trace_get_data fndecl 0 32585 &check_right_item_operations_32585_fields
++fnic_fc_trace_get_data_fndecl_32585_fields fnic_fc_trace_get_data fndecl 0 32585 NULL nohasharray
++check_right_item_operations_32585_fields check_right item_operations 0 32585 &fnic_fc_trace_get_data_fndecl_32585_fields
+fps_tw686x_video_channel_32606_fields fps tw686x_video_channel 0 32606 NULL
+resp_len_brcmf_cfg80211_assoc_ielen_le_32607_fields resp_len brcmf_cfg80211_assoc_ielen_le 0 32607 NULL
-+vlan_tag_atl1c_recv_ret_status_32608_fields vlan_tag atl1c_recv_ret_status 0 32608 NULL
++vlan_tag_atl1c_recv_ret_status_32608_fields vlan_tag atl1c_recv_ret_status 0 32608 NULL nohasharray
++_osd_req_encode_common_fndecl_32608_fields _osd_req_encode_common fndecl 2 32608 &vlan_tag_atl1c_recv_ret_status_32608_fields
+maxdevUnits_ore_striping_info_32610_fields maxdevUnits ore_striping_info 0 32610 NULL
++max_downscale_intel_plane_32613_fields max_downscale intel_plane 0 32613 NULL
+xennet_make_one_txreq_fndecl_32614_fields xennet_make_one_txreq fndecl 3-2 32614 NULL
+ceph_osd_data_length_fndecl_32615_fields ceph_osd_data_length fndecl 0 32615 NULL
+usb_alloc_streams_fndecl_32617_fields usb_alloc_streams fndecl 0 32617 NULL
@@ -196559,13 +201243,11 @@ index 0000000..6b5367db
+digest_decode_fndecl_32644_fields digest_decode fndecl 0 32644 NULL
+blk_add_request_payload_fndecl_32654_fields blk_add_request_payload fndecl 4-3 32654 NULL nohasharray
+phys_sca_base__synclinkmp_info_32654_fields phys_sca_base _synclinkmp_info 0 32654 &blk_add_request_payload_fndecl_32654_fields
-+mgmt_generic_event_fndecl_32657_fields mgmt_generic_event fndecl 4 32657 NULL
+icmpv6_manip_pkt_fndecl_32658_fields icmpv6_manip_pkt fndecl 4 32658 NULL
-+rtsx_usb_transfer_data_fndecl_32669_fields rtsx_usb_transfer_data fndecl 4-2-5 32669 NULL
++rtsx_usb_transfer_data_fndecl_32669_fields rtsx_usb_transfer_data fndecl 2-4-5 32669 NULL
+engine_start_viafb_dev_32681_fields engine_start viafb_dev 0 32681 NULL
+length_ib_umem_32690_fields length ib_umem 0 32690 NULL
+udf_write_aext_fndecl_32691_fields udf_write_aext fndecl 4 32691 NULL
-+radeon_drm_ioctl_fndecl_32696_fields radeon_drm_ioctl fndecl 2 32696 NULL
+ubifs_prepare_node_fndecl_32700_fields ubifs_prepare_node fndecl 3 32700 NULL
+dma_common_contiguous_remap_fndecl_32714_fields dma_common_contiguous_remap fndecl 2 32714 NULL
+size_hid_report_32715_fields size hid_report 0 32715 NULL
@@ -196578,20 +201260,21 @@ index 0000000..6b5367db
+rds_tcp_xmit_fndecl_32749_fields rds_tcp_xmit fndecl 3 32749 &vga_video_num_columns_vardecl_vgacon_c_32749_fields
+lookup_zone_fndecl_32751_fields lookup_zone fndecl 0 32751 NULL
+fuse_file_ioctl_fndecl_32760_fields fuse_file_ioctl fndecl 2 32760 NULL
-+rc_via_alen_mpls_route_config_32766_fields rc_via_alen mpls_route_config 0 32766 NULL
++i2400m_rx_edata_fndecl_32764_fields i2400m_rx_edata fndecl 5 32764 NULL
+gro_pull_from_frag0_fndecl_32770_fields gro_pull_from_frag0 fndecl 2 32770 NULL
+sm501_create_mem_fndecl_32778_fields sm501_create_mem fndecl 4 32778 NULL
+test_ofsl_cyttsp4_sysinfo_data_32781_fields test_ofsl cyttsp4_sysinfo_data 0 32781 NULL
+queue_gso_packets_fndecl_32783_fields queue_gso_packets fndecl 5 32783 NULL
+xfs_fsb_to_db_fndecl_32785_fields xfs_fsb_to_db fndecl 0-2 32785 NULL
-+reg_word_size_snd_soc_codec_driver_32786_fields reg_word_size snd_soc_codec_driver 0 32786 NULL nohasharray
-+hpi_instream_ancillary_write_fndecl_32786_fields hpi_instream_ancillary_write fndecl 4 32786 &reg_word_size_snd_soc_codec_driver_32786_fields
++hpi_instream_ancillary_write_fndecl_32786_fields hpi_instream_ancillary_write fndecl 4 32786 NULL nohasharray
++reg_word_size_snd_soc_codec_driver_32786_fields reg_word_size snd_soc_codec_driver 0 32786 &hpi_instream_ancillary_write_fndecl_32786_fields
+mp_register_ioapic_fndecl_32802_fields mp_register_ioapic fndecl 3 32802 NULL
+pipe_usb_fifo_32805_fields pipe usb_fifo 0 32805 NULL nohasharray
+nfc_allocate_device_fndecl_32805_fields nfc_allocate_device fndecl 3 32805 &pipe_usb_fifo_32805_fields
+info_len_ib_ucm_info_32807_fields info_len ib_ucm_info 0 32807 NULL
+m_len_f2fs_map_blocks_32808_fields m_len f2fs_map_blocks 0 32808 NULL
+l_start_xfs_flock64_32809_fields l_start xfs_flock64 0 32809 NULL
++lights_count_gb_lights_32813_fields lights_count gb_lights 0 32813 NULL
+length_ppp_option_data_32814_fields length ppp_option_data 0 32814 NULL
+namelen_jfs_ea_32820_fields namelen jfs_ea 0 32820 NULL
+xfs_btree_compute_maxlevels_fndecl_32823_fields xfs_btree_compute_maxlevels fndecl 0 32823 NULL
@@ -196602,26 +201285,25 @@ index 0000000..6b5367db
+ep_in_mcs_cb_32852_fields ep_in mcs_cb 0 32852 NULL
+br_startoff_xfs_bmbt_irec_32854_fields br_startoff xfs_bmbt_irec 0 32854 NULL
+should_defrag_range_fndecl_32859_fields should_defrag_range fndecl 2 32859 NULL
++fsx_cowextsize_fsxattr_32860_fields fsx_cowextsize fsxattr 0 32860 NULL
+tx_buf_clear_used_ks959_cb_32864_fields tx_buf_clear_used ks959_cb 0 32864 NULL
-+duplex_phy_device_32869_fields duplex phy_device 0 32869 NULL
+wTotalLength_usb_security_descriptor_32872_fields wTotalLength usb_security_descriptor 0 32872 NULL
+buffer_len_bfad_debug_info_32873_fields buffer_len bfad_debug_info 0 32873 NULL
+mem_cgroup_move_charge_pte_range_fndecl_32885_fields mem_cgroup_move_charge_pte_range fndecl 2 32885 NULL
+m_ialloc_inos_xfs_mount_32889_fields m_ialloc_inos xfs_mount 0 32889 NULL nohasharray
+at25_ee_read_fndecl_32889_fields at25_ee_read fndecl 2-4 32889 &m_ialloc_inos_xfs_mount_32889_fields
-+snoop_table_size_ib_mad_qp_info_32891_fields snoop_table_size ib_mad_qp_info 0 32891 NULL
+min_dump_alloc_netlink_callback_32897_fields min_dump_alloc netlink_callback 0 32897 NULL
+__wa_xfer_setup_segs_fndecl_32902_fields __wa_xfer_setup_segs fndecl 2 32902 NULL
+wm831x_num_wm831x_pdata_32904_fields wm831x_num wm831x_pdata 0 32904 NULL
+adnp_gpio_setup_fndecl_32910_fields adnp_gpio_setup fndecl 2 32910 NULL
+space_init_fndecl_32911_fields space_init fndecl 2 32911 NULL
+max_r2t_iscsi_bus_flash_session_32912_fields max_r2t iscsi_bus_flash_session 0 32912 NULL
-+num_vfs_qlcnic_sriov_32913_fields num_vfs qlcnic_sriov 0 32913 NULL
+conn_send_command_fndecl_32918_fields conn_send_command fndecl 4-6 32918 NULL
+pci_get_related_function_fndecl_32920_fields pci_get_related_function fndecl 2 32920 NULL
+nr_events_kioctx_32925_fields nr_events kioctx 0 32925 NULL
+vram_base_mga_mc_32927_fields vram_base mga_mc 0 32927 NULL
+ceph_choose_frag_fndecl_32928_fields ceph_choose_frag fndecl 0 32928 NULL
++__add_action_fndecl_32937_fields __add_action fndecl 4 32937 NULL
+__copy_from_user_ll_fndecl_32945_fields __copy_from_user_ll fndecl 0 32945 NULL
+al_stripes_resize_parms_32950_fields al_stripes resize_parms 0 32950 NULL
+diva_data_q_init_fndecl_32954_fields diva_data_q_init fndecl 2 32954 NULL
@@ -196629,17 +201311,17 @@ index 0000000..6b5367db
+drm_agp_bind_pages_fndecl_32959_fields drm_agp_bind_pages fndecl 3 32959 NULL
+__carl9170_rx_fndecl_32963_fields __carl9170_rx fndecl 3 32963 NULL
+total_data_buflen_hv_netvsc_packet_32967_fields total_data_buflen hv_netvsc_packet 0 32967 NULL
-+s_max_slots_ocfs2_super_block_32972_fields s_max_slots ocfs2_super_block 0 32972 NULL nohasharray
-+PofRecDataLen_PofRecHdr_tag_32972_fields PofRecDataLen PofRecHdr_tag 0 32972 &s_max_slots_ocfs2_super_block_32972_fields
++PofRecDataLen_PofRecHdr_tag_32972_fields PofRecDataLen PofRecHdr_tag 0 32972 NULL nohasharray
++s_max_slots_ocfs2_super_block_32972_fields s_max_slots ocfs2_super_block 0 32972 &PofRecDataLen_PofRecHdr_tag_32972_fields
+proc_bus_pci_lseek_fndecl_32974_fields proc_bus_pci_lseek fndecl 2 32974 NULL
+p_replen_rpc_procinfo_32991_fields p_replen rpc_procinfo 0 32991 NULL nohasharray
+bn_read_lock_fndecl_32991_fields bn_read_lock fndecl 2 32991 &p_replen_rpc_procinfo_32991_fields
+resid_len_request_32994_fields resid_len request 0 32994 NULL
+wtpref_nfs_fsinfo_33003_fields wtpref nfs_fsinfo 0 33003 NULL
+dwNtbInMaxSize_usb_cdc_ncm_ntb_parameters_33006_fields dwNtbInMaxSize usb_cdc_ncm_ntb_parameters 0 33006 NULL
-+mr_per_cmd_srp_target_port_33011_fields mr_per_cmd srp_target_port 0 33011 NULL nohasharray
-+pktshift_sge_33011_fields pktshift sge 0 33011 &mr_per_cmd_srp_target_port_33011_fields nohasharray
-+offset_fl_pg_chunk_33011_fields offset fl_pg_chunk 0 33011 &pktshift_sge_33011_fields
++pktshift_sge_33011_fields pktshift sge 0 33011 NULL nohasharray
++offset_fl_pg_chunk_33011_fields offset fl_pg_chunk 0 33011 &pktshift_sge_33011_fields nohasharray
++mr_per_cmd_srp_target_port_33011_fields mr_per_cmd srp_target_port 0 33011 &offset_fl_pg_chunk_33011_fields
+buf_addr_mlx5_ib_create_wq_33013_fields buf_addr mlx5_ib_create_wq 0 33013 NULL nohasharray
+size_qlcnic_82xx_dump_template_hdr_33013_fields size qlcnic_82xx_dump_template_hdr 0 33013 &buf_addr_mlx5_ib_create_wq_33013_fields
+q_num_rx_buffers_qede_dev_33015_fields q_num_rx_buffers qede_dev 0 33015 NULL
@@ -196651,10 +201333,9 @@ index 0000000..6b5367db
+files_ceph_mds_reply_inode_33047_fields files ceph_mds_reply_inode 0 33047 NULL
+svc_rdma_xdr_get_reply_hdr_len_fndecl_33056_fields svc_rdma_xdr_get_reply_hdr_len fndecl 0 33056 NULL
+nvbios_rd08_fndecl_33058_fields nvbios_rd08 fndecl 0 33058 NULL
-+iov_iter_copy_from_user_atomic_fndecl_33059_fields iov_iter_copy_from_user_atomic fndecl 0 33059 NULL nohasharray
-+gfs2_qstr2dirent_fndecl_33059_fields gfs2_qstr2dirent fndecl 2 33059 &iov_iter_copy_from_user_atomic_fndecl_33059_fields
-+nfilters_mc5_params_33060_fields nfilters mc5_params 0 33060 NULL nohasharray
-+rxbufsz_ar5523_33060_fields rxbufsz ar5523 0 33060 &nfilters_mc5_params_33060_fields
++gfs2_qstr2dirent_fndecl_33059_fields gfs2_qstr2dirent fndecl 2 33059 NULL
++rxbufsz_ar5523_33060_fields rxbufsz ar5523 0 33060 NULL nohasharray
++nfilters_mc5_params_33060_fields nfilters mc5_params 0 33060 &rxbufsz_ar5523_33060_fields
+size_ec168_req_33061_fields size ec168_req 0 33061 NULL
+compress_compressor_33066_fields compress compressor 0 33066 NULL
+prepare_inurb_fndecl_33073_fields prepare_inurb fndecl 1 33073 NULL
@@ -196666,33 +201347,29 @@ index 0000000..6b5367db
+tx_headroom_llc_shdlc_33089_fields tx_headroom llc_shdlc 0 33089 &e1000_alloc_rx_skb_fndecl_33089_fields
+vram_size_cirrus_mc_33094_fields vram_size cirrus_mc 0 33094 NULL
+do_get_write_access_fndecl_33097_fields do_get_write_access fndecl 0 33097 NULL
-+return_wc_byte_len_ib_mad_local_private_33101_fields return_wc_byte_len ib_mad_local_private 0 33101 NULL
-+length_rvt_sge_33107_fields length rvt_sge 0 33107 NULL
++hv_ringbuffer_init_fndecl_33101_fields hv_ringbuffer_init fndecl 3 33101 NULL nohasharray
++return_wc_byte_len_ib_mad_local_private_33101_fields return_wc_byte_len ib_mad_local_private 0 33101 &hv_ringbuffer_init_fndecl_33101_fields
+__snd_util_memblk_new_fndecl_33112_fields __snd_util_memblk_new fndecl 2 33112 NULL
+nla_strlcpy_fndecl_33113_fields nla_strlcpy fndecl 0 33113 NULL
-+len_firmware_hdr_33115_fields len firmware_hdr 0 33115 NULL
+hdr_len_virtnet_info_33118_fields hdr_len virtnet_info 0 33118 NULL
+len_cfg80211_mgmt_tx_params_33119_fields len cfg80211_mgmt_tx_params 0 33119 NULL
-+hw_token_ehci_qtd_33122_fields hw_token ehci_qtd 0 33122 NULL
-+ring_size_amdgpu_ring_33123_fields ring_size amdgpu_ring 0 33123 NULL nohasharray
-+omninet_write_fndecl_33123_fields omninet_write fndecl 4 33123 &ring_size_amdgpu_ring_33123_fields
++omninet_write_fndecl_33123_fields omninet_write fndecl 4 33123 NULL nohasharray
++ring_size_amdgpu_ring_33123_fields ring_size amdgpu_ring 0 33123 &omninet_write_fndecl_33123_fields
+max_resp_sz_nfs4_channel_attrs_33127_fields max_resp_sz nfs4_channel_attrs 0 33127 NULL nohasharray
+ari_length_ib_cm_rej_event_param_33127_fields ari_length ib_cm_rej_event_param 0 33127 &max_resp_sz_nfs4_channel_attrs_33127_fields
+masklength_iio_dev_33129_fields masklength iio_dev 0 33129 NULL
+trebleinit_CHIPDESC_33133_fields trebleinit CHIPDESC 0 33133 NULL
+in_words_ib_uverbs_cmd_hdr_33134_fields in_words ib_uverbs_cmd_hdr 0 33134 NULL
-+__get_vm_area_caller_fndecl_33139_fields __get_vm_area_caller fndecl 3 33139 NULL nohasharray
-+acpi_os_write_memory_fndecl_33139_fields acpi_os_write_memory fndecl 3-1 33139 &__get_vm_area_caller_fndecl_33139_fields
-+size_bmp_header_33141_fields size bmp_header 0 33141 NULL nohasharray
-+hostname_len_nlm_lookup_host_info_33141_fields hostname_len nlm_lookup_host_info 0 33141 &size_bmp_header_33141_fields
++acpi_os_write_memory_fndecl_33139_fields acpi_os_write_memory fndecl 3-1 33139 NULL nohasharray
++__get_vm_area_caller_fndecl_33139_fields __get_vm_area_caller fndecl 1-3 33139 &acpi_os_write_memory_fndecl_33139_fields
++size_bmp_header_33141_fields size bmp_header 0 33141 NULL
++sq_addr_qedr_create_qp_ureq_33142_fields sq_addr qedr_create_qp_ureq 0 33142 NULL
+ucNumEntries__ATOM_Polaris_SCLK_Dependency_Table_33144_fields ucNumEntries _ATOM_Polaris_SCLK_Dependency_Table 0 33144 NULL
+l2cap_segment_le_sdu_fndecl_33145_fields l2cap_segment_le_sdu fndecl 4 33145 NULL
-+starting_cid_cnic_eth_dev_33155_fields starting_cid cnic_eth_dev 0 33155 NULL nohasharray
-+osd_req_list_partition_objects_fndecl_33155_fields osd_req_list_partition_objects fndecl 5 33155 &starting_cid_cnic_eth_dev_33155_fields
-+lbs_rdmac_write_fndecl_33156_fields lbs_rdmac_write fndecl 3 33156 NULL
++starting_cid_cnic_eth_dev_33155_fields starting_cid cnic_eth_dev 0 33155 NULL
+len_ip_set_ext_type_33164_fields len ip_set_ext_type 0 33164 NULL
+mml_isar_hw_33168_fields mml isar_hw 0 33168 NULL
-+iomap_zero_fndecl_33173_fields iomap_zero fndecl 2-4 33173 NULL
++iomap_zero_fndecl_33173_fields iomap_zero fndecl 4-2 33173 NULL
+cx231xx_init_isoc_fndecl_33174_fields cx231xx_init_isoc fndecl 4-2 33174 NULL
+hcs_params2_xhci_hcd_33175_fields hcs_params2 xhci_hcd 0 33175 NULL nohasharray
+rounds_dm_verity_fec_33175_fields rounds dm_verity_fec 0 33175 &hcs_params2_xhci_hcd_33175_fields
@@ -196705,6 +201382,7 @@ index 0000000..6b5367db
+Memhscx_empty_fifo_fndecl_33197_fields Memhscx_empty_fifo fndecl 2 33197 NULL
+ieee80211_rx_mgmt_probe_beacon_fndecl_33208_fields ieee80211_rx_mgmt_probe_beacon fndecl 3 33208 NULL
+block_size_dm_bufio_client_33221_fields block_size dm_bufio_client 0 33221 NULL
++num_lan_msix_i40e_pf_33223_fields num_lan_msix i40e_pf 0 33223 NULL
+l1oip_socket_recv_fndecl_33226_fields l1oip_socket_recv fndecl 6 33226 NULL
+segment_count_main_f2fs_super_block_33230_fields segment_count_main f2fs_super_block 0 33230 NULL
+ext4_zeroout_es_fndecl_33233_fields ext4_zeroout_es fndecl 0 33233 NULL
@@ -196719,29 +201397,33 @@ index 0000000..6b5367db
+ip_vs_prepare_tunneled_skb_fndecl_33269_fields ip_vs_prepare_tunneled_skb fndecl 3 33269 NULL
+ocfs2_change_extent_flag_fndecl_33270_fields ocfs2_change_extent_flag fndecl 5-3 33270 NULL nohasharray
+mem_end_net_device_33270_fields mem_end net_device 0 33270 &ocfs2_change_extent_flag_fndecl_33270_fields
-+drv_file_st_partstat_33277_fields drv_file st_partstat 0 33277 NULL
-+ep_msg_out_peak_usb_device_33281_fields ep_msg_out peak_usb_device 0 33281 NULL nohasharray
-+sbsector_iso9660_options_33281_fields sbsector iso9660_options 0 33281 &ep_msg_out_peak_usb_device_33281_fields nohasharray
-+hpfs_readpages_fndecl_33281_fields hpfs_readpages fndecl 4 33281 &sbsector_iso9660_options_33281_fields
-+frame_size_camera_data_33292_fields frame_size camera_data 0 33292 NULL
-+num_vls_vardecl_33298_fields num_vls vardecl 0 33298 NULL nohasharray
-+offset_fuse_lseek_out_33298_fields offset fuse_lseek_out 0 33298 &num_vls_vardecl_33298_fields
++hpfs_readpages_fndecl_33281_fields hpfs_readpages fndecl 4 33281 NULL nohasharray
++ep_msg_out_peak_usb_device_33281_fields ep_msg_out peak_usb_device 0 33281 &hpfs_readpages_fndecl_33281_fields nohasharray
++sbsector_iso9660_options_33281_fields sbsector iso9660_options 0 33281 &ep_msg_out_peak_usb_device_33281_fields
++cipso_v4_gentag_loc_fndecl_33292_fields cipso_v4_gentag_loc fndecl 0 33292 NULL nohasharray
++frame_size_camera_data_33292_fields frame_size camera_data 0 33292 &cipso_v4_gentag_loc_fndecl_33292_fields
++offset_fuse_lseek_out_33298_fields offset fuse_lseek_out 0 33298 NULL nohasharray
++num_vls_vardecl_33298_fields num_vls vardecl 0 33298 &offset_fuse_lseek_out_33298_fields
+vlen_nfsd_readargs_33302_fields vlen nfsd_readargs 0 33302 NULL
+e_phnum_elf64_hdr_33305_fields e_phnum elf64_hdr 0 33305 NULL
+e_sz_rsa_key_33307_fields e_sz rsa_key 0 33307 NULL
+index_vardecl_via82xx_modem_c_33320_fields index vardecl_via82xx_modem.c 0 33320 NULL
+hlen_h4_recv_pkt_33324_fields hlen h4_recv_pkt 0 33324 NULL
++rxkad_verify_packet_fndecl_33329_fields rxkad_verify_packet fndecl 4-3 33329 NULL
+ahd_sg_setup_fndecl_33341_fields ahd_sg_setup fndecl 4-5 33341 NULL
++dump_packet_fndecl_33346_fields dump_packet fndecl 2 33346 NULL
+max_vpi_lpfc_max_cfg_param_33350_fields max_vpi lpfc_max_cfg_param 0 33350 NULL
++udl_prime_create_fndecl_33364_fields udl_prime_create fndecl 2 33364 NULL nohasharray
++scanlength_usbvision_frame_33364_fields scanlength usbvision_frame 0 33364 &udl_prime_create_fndecl_33364_fields
+ihandlen_xfs_fsop_handlereq_33370_fields ihandlen xfs_fsop_handlereq 0 33370 NULL
+lpfc_sg_seg_cnt_init_fndecl_33371_fields lpfc_sg_seg_cnt_init fndecl 2 33371 NULL
+ib_qib_max_srq_wrs_vardecl_33376_fields ib_qib_max_srq_wrs vardecl 0 33376 NULL
++sbitmap_resize_fndecl_33380_fields sbitmap_resize fndecl 2 33380 NULL
+xfs_buf_ioerror_fndecl_33390_fields xfs_buf_ioerror fndecl 2 33390 NULL
+stream_size_drm_etnaviv_gem_submit_33393_fields stream_size drm_etnaviv_gem_submit 0 33393 NULL
+data_offset_rndis_packet_33403_fields data_offset rndis_packet 0 33403 NULL
+lbmRead_fndecl_33420_fields lbmRead fndecl 2 33420 NULL
-+dreq_gss_dccp_request_sock_33423_fields dreq_gss dccp_request_sock 0 33423 NULL nohasharray
-+rsxx_cram_write_fndecl_33423_fields rsxx_cram_write fndecl 3 33423 &dreq_gss_dccp_request_sock_33423_fields
++dreq_gss_dccp_request_sock_33423_fields dreq_gss dccp_request_sock 0 33423 NULL
+offset_vb2_dma_sg_buf_33426_fields offset vb2_dma_sg_buf 0 33426 NULL
+intr_dma_usb_pcwd_private_33427_fields intr_dma usb_pcwd_private 0 33427 NULL
+tcp_fastretrans_alert_fndecl_33430_fields tcp_fastretrans_alert fndecl 2 33430 NULL
@@ -196758,11 +201440,14 @@ index 0000000..6b5367db
+ocfs2_divide_xattr_bucket_fndecl_33455_fields ocfs2_divide_xattr_bucket fndecl 3-4 33455 NULL
+max_recv_send_sge_ocrdma_mbx_query_config_33459_fields max_recv_send_sge ocrdma_mbx_query_config 0 33459 NULL
+tx_pipe_usbpn_dev_33474_fields tx_pipe usbpn_dev 0 33474 NULL
++data_start_flat_hdr_33476_fields data_start flat_hdr 0 33476 NULL
+packets_out_tcp_sock_33478_fields packets_out tcp_sock 0 33478 NULL
+__nbd_ioctl_fndecl_33480_fields __nbd_ioctl fndecl 4 33480 NULL
+ath6kl_buf_alloc_fndecl_33483_fields ath6kl_buf_alloc fndecl 1 33483 NULL
++ftdi_elan_write_fndecl_33486_fields ftdi_elan_write fndecl 3 33486 NULL
+ath6kl_wmi_cmd_send_fndecl_33493_fields ath6kl_wmi_cmd_send fndecl 2 33493 NULL
+root_size_adfs_discrecord_33498_fields root_size adfs_discrecord 0 33498 NULL
++pstore_file_read_fndecl_33499_fields pstore_file_read fndecl 3 33499 NULL
+end_io_dio_33500_fields end_io dio 0 33500 NULL
+ocfs2_xattr_shrink_size_fndecl_33507_fields ocfs2_xattr_shrink_size fndecl 3 33507 NULL
+check_mirror_fndecl_33517_fields check_mirror fndecl 2-1 33517 NULL
@@ -196779,17 +201464,16 @@ index 0000000..6b5367db
+snb_pci2phy_map_init_fndecl_33565_fields snb_pci2phy_map_init fndecl 1 33565 NULL
+recv_buf_size_netvsc_device_33569_fields recv_buf_size netvsc_device 0 33569 NULL nohasharray
+qlen_status_event_list_33569_fields qlen status_event_list 0 33569 &recv_buf_size_netvsc_device_33569_fields
-+self_dnode_33580_fields self dnode 0 33580 NULL nohasharray
-+lcm_fndecl_33580_fields lcm fndecl 0-2-1 33580 &self_dnode_33580_fields
++lcm_fndecl_33580_fields lcm fndecl 0-2-1 33580 NULL nohasharray
++self_dnode_33580_fields self dnode 0 33580 &lcm_fndecl_33580_fields
+num_pports_hfi1_devdata_33581_fields num_pports hfi1_devdata 0 33581 NULL
+qed_sriov_enable_fndecl_33587_fields qed_sriov_enable fndecl 2 33587 NULL
+hdr_info_bnxt_tpa_info_33589_fields hdr_info bnxt_tpa_info 0 33589 NULL
+i2c_readregs_fndecl_33590_fields i2c_readregs fndecl 5 33590 NULL
-+size_kmemleak_object_33591_fields size kmemleak_object 0 33591 NULL
++hci_mgmt_cmd_fndecl_33591_fields hci_mgmt_cmd fndecl 4 33591 NULL
+lde_namelen_lu_dirent_33595_fields lde_namelen lu_dirent 0 33595 NULL
+fsl_spi_bufs_fndecl_33599_fields fsl_spi_bufs fndecl 0 33599 NULL
+max_header_size_iriap_cb_33603_fields max_header_size iriap_cb 0 33603 NULL
-+offset_hsu_dma_chip_33607_fields offset hsu_dma_chip 0 33607 NULL
+drm_prime_pages_to_sg_fndecl_33612_fields drm_prime_pages_to_sg fndecl 2 33612 NULL
+hfsplus_find_cat_fndecl_33616_fields hfsplus_find_cat fndecl 0 33616 NULL nohasharray
+names_size_ceph_inode_xattrs_info_33616_fields names_size ceph_inode_xattrs_info 0 33616 &hfsplus_find_cat_fndecl_33616_fields
@@ -196799,7 +201483,6 @@ index 0000000..6b5367db
+size_dma_buf_33648_fields size dma_buf 0 33648 NULL nohasharray
+s_want_extra_isize_ext4_sb_info_33648_fields s_want_extra_isize ext4_sb_info 0 33648 &size_dma_buf_33648_fields
+check_header_fndecl_33649_fields check_header fndecl 2 33649 NULL
-+intel_engine_create_ringbuffer_fndecl_33650_fields intel_engine_create_ringbuffer fndecl 2 33650 NULL
+xfs_alloc_ag_vextent_fndecl_33660_fields xfs_alloc_ag_vextent fndecl 0 33660 NULL
+savage_init_hw_fndecl_33678_fields savage_init_hw fndecl 0 33678 NULL
+size_drm_exynos_gem_create_33679_fields size drm_exynos_gem_create 0 33679 NULL
@@ -196813,6 +201496,7 @@ index 0000000..6b5367db
+calculate_memsize_fndecl_33706_fields calculate_memsize fndecl 0-5-3-4-2-1 33706 NULL
+network_header_sk_buff_33708_fields network_header sk_buff 0 33708 NULL
+out_phase_usb_stream_kernel_33720_fields out_phase usb_stream_kernel 0 33720 NULL
++fuse_simple_request_fndecl_33729_fields fuse_simple_request fndecl 0 33729 NULL
+video_height_sis_video_info_33732_fields video_height sis_video_info 0 33732 NULL nohasharray
+atwrite_submit_fndecl_33732_fields atwrite_submit fndecl 3 33732 &video_height_sis_video_info_33732_fields
+amdgpu_bo_create_fndecl_33733_fields amdgpu_bo_create fndecl 2 33733 NULL nohasharray
@@ -196820,26 +201504,24 @@ index 0000000..6b5367db
+xres_fb_var_screeninfo_33734_fields xres fb_var_screeninfo 0 33734 NULL
+ovl_copy_up_data_fndecl_33738_fields ovl_copy_up_data fndecl 3 33738 NULL
+d_sz_rsa_key_33741_fields d_sz rsa_key 0 33741 NULL
-+do_pwritev_fndecl_33742_fields do_pwritev fndecl 3 33742 NULL
+i915_gem_object_create_fndecl_33744_fields i915_gem_object_create fndecl 2 33744 NULL nohasharray
+aircable_process_packet_fndecl_33744_fields aircable_process_packet fndecl 4 33744 &i915_gem_object_create_fndecl_33744_fields
+lengthComponentIdent_pathComponent_33758_fields lengthComponentIdent pathComponent 0 33758 NULL
+avr_ack_ptr_dccp_ackvec_record_33759_fields avr_ack_ptr dccp_ackvec_record 0 33759 NULL
-+cim_la_size_adapter_params_33761_fields cim_la_size adapter_params 0 33761 NULL
+efx_farch_dimension_resources_fndecl_33764_fields efx_farch_dimension_resources fndecl 2 33764 NULL
+default_bpp_vardecl_sm501fb_c_33765_fields default_bpp vardecl_sm501fb.c 0 33765 NULL
+wmi_send_fndecl_33768_fields wmi_send fndecl 4 33768 NULL
+status_ffs_ep_33781_fields status ffs_ep 0 33781 NULL
+cx2341x_ctrl_new_std_fndecl_33782_fields cx2341x_ctrl_new_std fndecl 3-6 33782 NULL
+max_gpios_rdc321x_gpio_pdata_33783_fields max_gpios rdc321x_gpio_pdata 0 33783 NULL
-+fm_mapped_extents_ll_user_fiemap_33785_fields fm_mapped_extents ll_user_fiemap 0 33785 NULL
++do_jit_fndecl_33785_fields do_jit fndecl 0 33785 NULL nohasharray
++fm_mapped_extents_ll_user_fiemap_33785_fields fm_mapped_extents ll_user_fiemap 0 33785 &do_jit_fndecl_33785_fields
+sis190_try_rx_copy_fndecl_33790_fields sis190_try_rx_copy fndecl 3 33790 NULL
+sd_write_data_fndecl_33792_fields sd_write_data fndecl 5 33792 NULL
+icv_truncbits_xfrm_algo_auth_info_33798_fields icv_truncbits xfrm_algo_auth_info 0 33798 NULL
+__ip_tun_to_nlattr_fndecl_33801_fields __ip_tun_to_nlattr fndecl 4 33801 NULL
+page_size_vmw_cmdbuf_alloc_info_33815_fields page_size vmw_cmdbuf_alloc_info 0 33815 NULL
+custom_length_iscsi_stats_33819_fields custom_length iscsi_stats 0 33819 NULL
-+snd_find_free_minor_fndecl_33820_fields snd_find_free_minor fndecl 0 33820 NULL
+mult_usb_ep_33831_fields mult usb_ep 0 33831 NULL
+selinux_setprocattr_fndecl_33832_fields selinux_setprocattr fndecl 4 33832 NULL
+blk_size_ide_tape_obj_33837_fields blk_size ide_tape_obj 0 33837 NULL
@@ -196853,15 +201535,18 @@ index 0000000..6b5367db
+edge_tty_recv_fndecl_33877_fields edge_tty_recv fndecl 3 33877 NULL
+tolen_nfs_linkargs_33881_fields tolen nfs_linkargs 0 33881 NULL nohasharray
+walk_system_ram_res_fndecl_33881_fields walk_system_ram_res fndecl 2-1 33881 &tolen_nfs_linkargs_33881_fields
++len_gsm_control_33882_fields len gsm_control 0 33882 NULL
++reiserfs_xattr_get_fndecl_33887_fields reiserfs_xattr_get fndecl 0 33887 NULL
++size_gb_operation_msg_hdr_33890_fields size gb_operation_msg_hdr 0 33890 NULL
+src_len_ccp_xts_aes_engine_33899_fields src_len ccp_xts_aes_engine 0 33899 NULL
+init_stripe_fndecl_33902_fields init_stripe fndecl 2 33902 NULL
+xfs_bmbt_maxrecs_fndecl_33906_fields xfs_bmbt_maxrecs fndecl 0 33906 NULL
+_install_special_mapping_fndecl_33907_fields _install_special_mapping fndecl 2-3 33907 NULL
++create_monitor_ctrl_command_fndecl_33909_fields create_monitor_ctrl_command fndecl 4 33909 NULL
+rx_desc_count_xgbe_prv_data_33915_fields rx_desc_count xgbe_prv_data 0 33915 NULL
+w83627hf_device_add_fndecl_33919_fields w83627hf_device_add fndecl 1 33919 NULL
+wil_vring_alloc_skb_fndecl_33924_fields wil_vring_alloc_skb fndecl 4 33924 NULL
+size_cmdline_vardecl_dma_contiguous_c_33925_fields size_cmdline vardecl_dma-contiguous.c 0 33925 NULL
-+max_channels_snd_midi_channel_set_33931_fields max_channels snd_midi_channel_set 0 33931 NULL
+numa_add_memblk_to_fndecl_33934_fields numa_add_memblk_to fndecl 2-3 33934 NULL nohasharray
+tcp_push_fndecl_33934_fields tcp_push fndecl 3 33934 &numa_add_memblk_to_fndecl_33934_fields nohasharray
+isl1208_i2c_set_regs_fndecl_33934_fields isl1208_i2c_set_regs fndecl 4 33934 &tcp_push_fndecl_33934_fields
@@ -196874,11 +201559,13 @@ index 0000000..6b5367db
+num_rsp_hci_inquiry_req_33953_fields num_rsp hci_inquiry_req 0 33953 NULL
+lpfc_sg_seg_cnt_vardecl_lpfc_attr_c_33956_fields lpfc_sg_seg_cnt vardecl_lpfc_attr.c 0 33956 NULL
+resid_rxe_dma_info_33963_fields resid rxe_dma_info 0 33963 NULL
++amdgpu_bo_gpu_offset_fndecl_33965_fields amdgpu_bo_gpu_offset fndecl 0 33965 NULL
+ext4_get_block_fndecl_33967_fields ext4_get_block fndecl 2 33967 NULL
+nfc_hci_send_cmd_fndecl_33969_fields nfc_hci_send_cmd fndecl 5 33969 NULL
+ocfs2_lock_refcount_tree_fndecl_33972_fields ocfs2_lock_refcount_tree fndecl 2 33972 NULL nohasharray
+mtdswap_init_fndecl_33972_fields mtdswap_init fndecl 2 33972 &ocfs2_lock_refcount_tree_fndecl_33972_fields
+st_nci_hci_dm_get_info_fndecl_33973_fields st_nci_hci_dm_get_info fndecl 3 33973 NULL
++max_indirect_segments_blkfront_info_33976_fields max_indirect_segments blkfront_info 0 33976 NULL
+virtio_transport_stream_do_dequeue_fndecl_33977_fields virtio_transport_stream_do_dequeue fndecl 3 33977 NULL
+buf_len_wmi_tlv_mgmt_rx_ev_33979_fields buf_len wmi_tlv_mgmt_rx_ev 0 33979 NULL
+usbat_bulk_write_fndecl_33983_fields usbat_bulk_write fndecl 3 33983 NULL
@@ -196886,13 +201573,15 @@ index 0000000..6b5367db
+size_fjes_hw_resource_33991_fields size fjes_hw_resource 0 33991 NULL
+sectorsize_scrub_ctx_33993_fields sectorsize scrub_ctx 0 33993 NULL
+num_ioim_reqs_bfa_iocfc_fwcfg_s_33994_fields num_ioim_reqs bfa_iocfc_fwcfg_s 0 33994 NULL
++dwc3_ep0_prepare_one_trb_fndecl_33997_fields dwc3_ep0_prepare_one_trb fndecl 4 33997 NULL
+batadv_tvlv_unicast_send_fndecl_34005_fields batadv_tvlv_unicast_send fndecl 7 34005 NULL
+rxextrahdrroom_dma_info_34007_fields rxextrahdrroom dma_info 0 34007 NULL
+ctxtcnt_qib_devdata_34012_fields ctxtcnt qib_devdata 0 34012 NULL
+size_vmw_cotable_info_34013_fields size vmw_cotable_info 0 34013 NULL
+wl12xx_spi_raw_read_fndecl_34014_fields wl12xx_spi_raw_read fndecl 4 34014 NULL nohasharray
+set_local_name_fndecl_34014_fields set_local_name fndecl 4 34014 &wl12xx_spi_raw_read_fndecl_34014_fields
-+parent_len_fndecl_34020_fields parent_len fndecl 0 34020 NULL
++parent_len_fndecl_34020_fields parent_len fndecl 0 34020 NULL nohasharray
++wqe_shift_mlx5_srq_attr_34020_fields wqe_shift mlx5_srq_attr 0 34020 &parent_len_fndecl_34020_fields
+membase_jsm_board_34030_fields membase jsm_board 0 34030 NULL
+size_edac_mc_layer_34031_fields size edac_mc_layer 0 34031 NULL nohasharray
+b_cnt_chip_select_34031_fields b_cnt chip_select 0 34031 &size_edac_mc_layer_34031_fields
@@ -196902,14 +201591,15 @@ index 0000000..6b5367db
+req_bio_endio_fndecl_34041_fields req_bio_endio fndecl 3-4 34041 NULL
+len_hdlcdrv_hdlcrx_34043_fields len hdlcdrv_hdlcrx 0 34043 NULL
+dma_size_nx_host_rds_ring_34047_fields dma_size nx_host_rds_ring 0 34047 NULL
-+ide_do_setfeature_fndecl_34050_fields ide_do_setfeature fndecl 3 34050 NULL
+sys_mmap_pgoff_fndecl_34056_fields sys_mmap_pgoff fndecl 2 34056 NULL
+cdc_ncm_change_mtu_fndecl_34062_fields cdc_ncm_change_mtu fndecl 2 34062 NULL
++lov_get_stripecnt_fndecl_34066_fields lov_get_stripecnt fndecl 0 34066 NULL
++gsm_control_modem_fndecl_34068_fields gsm_control_modem fndecl 3 34068 NULL
+wb_bytes_nfs_page_34071_fields wb_bytes nfs_page 0 34071 NULL nohasharray
+memmap_exclude_ranges_fndecl_34071_fields memmap_exclude_ranges fndecl 3-4 34071 &wb_bytes_nfs_page_34071_fields nohasharray
+opt_val_tcp_repair_opt_34071_fields opt_val tcp_repair_opt 0 34071 &memmap_exclude_ranges_fndecl_34071_fields
+qp_alloc_guest_work_fndecl_34074_fields qp_alloc_guest_work fndecl 5-3 34074 NULL nohasharray
-+__get_vm_area_node_fndecl_34074_fields __get_vm_area_node fndecl 4-2 34074 &qp_alloc_guest_work_fndecl_34074_fields
++__get_vm_area_node_fndecl_34074_fields __get_vm_area_node fndecl 1-4-2 34074 &qp_alloc_guest_work_fndecl_34074_fields
+test_extent_accounting_fndecl_34078_fields test_extent_accounting fndecl 1-2 34078 NULL
+rec_len_ext2_dir_entry_2_34086_fields rec_len ext2_dir_entry_2 0 34086 NULL nohasharray
+get_info_tcp_congestion_ops_34086_fields get_info tcp_congestion_ops 0 34086 &rec_len_ext2_dir_entry_2_34086_fields
@@ -196917,7 +201607,7 @@ index 0000000..6b5367db
+LFBsize_sis_video_info_34089_fields LFBsize sis_video_info 0 34089 NULL
+sync_page_io_fndecl_34091_fields sync_page_io fndecl 3-2 34091 NULL nohasharray
+restore_node_summary_fndecl_34091_fields restore_node_summary fndecl 2 34091 &sync_page_io_fndecl_34091_fields
-+__memblock_alloc_base_fndecl_34092_fields __memblock_alloc_base fndecl 2-0-3 34092 NULL
++__memblock_alloc_base_fndecl_34092_fields __memblock_alloc_base fndecl 2-1-0-3 34092 NULL
+octeon_setup_iq_fndecl_34094_fields octeon_setup_iq fndecl 5 34094 NULL
+dccm_len_iwl_cfg_34095_fields dccm_len iwl_cfg 0 34095 NULL
+max_frame_ft_sess_34098_fields max_frame ft_sess 0 34098 NULL
@@ -196936,13 +201626,14 @@ index 0000000..6b5367db
+nfs_vmtruncate_fndecl_34126_fields nfs_vmtruncate fndecl 2 34126 NULL
+ovs_fragment_fndecl_34127_fields ovs_fragment fndecl 4 34127 NULL
+dst_width_snd_pcm_plugin_34144_fields dst_width snd_pcm_plugin 0 34144 NULL
++mcast_mac_count_be_nic_res_desc_34149_fields mcast_mac_count be_nic_res_desc 0 34149 NULL
+object_size_kmem_cache_34151_fields object_size kmem_cache 0 34151 NULL
+vmax_packet_size_pwc_device_34153_fields vmax_packet_size pwc_device 0 34153 NULL
+sky2_change_mtu_fndecl_34157_fields sky2_change_mtu fndecl 2 34157 NULL nohasharray
+data_size_dm_ulog_request_34157_fields data_size dm_ulog_request 0 34157 &sky2_change_mtu_fndecl_34157_fields
-+nb_if_sdio_packet_34158_fields nb if_sdio_packet 0 34158 NULL nohasharray
-+usb_pipe_ua101_stream_34158_fields usb_pipe ua101_stream 0 34158 &nb_if_sdio_packet_34158_fields nohasharray
-+max_requests_rpcrdma_create_data_internal_34158_fields max_requests rpcrdma_create_data_internal 0 34158 &usb_pipe_ua101_stream_34158_fields
++usb_pipe_ua101_stream_34158_fields usb_pipe ua101_stream 0 34158 NULL nohasharray
++nb_if_sdio_packet_34158_fields nb if_sdio_packet 0 34158 &usb_pipe_ua101_stream_34158_fields nohasharray
++max_requests_rpcrdma_create_data_internal_34158_fields max_requests rpcrdma_create_data_internal 0 34158 &nb_if_sdio_packet_34158_fields
+krb5_decrypt_fndecl_34166_fields krb5_decrypt fndecl 5 34166 NULL
+save_mr_fndecl_34167_fields save_mr fndecl 4 34167 NULL
+blockmask_sddr55_card_info_34172_fields blockmask sddr55_card_info 0 34172 NULL
@@ -196954,15 +201645,15 @@ index 0000000..6b5367db
+length_dm_target_spec_34193_fields length dm_target_spec 0 34193 NULL
+write_room_tty_operations_34200_fields write_room tty_operations 0 34200 NULL
+cxgb4vf_change_mtu_fndecl_34204_fields cxgb4vf_change_mtu fndecl 2 34204 NULL
-+cx23888_ir_rx_read_fndecl_34210_fields cx23888_ir_rx_read fndecl 3 34210 NULL
++cx23888_ir_rx_read_fndecl_34210_fields cx23888_ir_rx_read fndecl 3 34210 NULL nohasharray
++usbip_dump_buffer_fndecl_34210_fields usbip_dump_buffer fndecl 2 34210 &cx23888_ir_rx_read_fndecl_34210_fields
+dw_msi_setup_irqs_fndecl_34216_fields dw_msi_setup_irqs fndecl 3 34216 NULL
+new_sync_write_fndecl_34217_fields new_sync_write fndecl 3-0 34217 NULL
+ext4_expand_extra_isize_fndecl_34225_fields ext4_expand_extra_isize fndecl 2 34225 NULL nohasharray
+first_psn_rxe_send_wqe_34225_fields first_psn rxe_send_wqe 0 34225 &ext4_expand_extra_isize_fndecl_34225_fields
+segno_sit_journal_entry_34226_fields segno sit_journal_entry 0 34226 NULL
+ath6kl_wmi_simple_cmd_fndecl_34229_fields ath6kl_wmi_simple_cmd fndecl 2 34229 NULL
-+isdnhdlc_decode_fndecl_34233_fields isdnhdlc_decode fndecl 0 34233 NULL nohasharray
-+m_len_s_mbuf_34233_fields m_len s_mbuf 0 34233 &isdnhdlc_decode_fndecl_34233_fields
++isdnhdlc_decode_fndecl_34233_fields isdnhdlc_decode fndecl 0 34233 NULL
+cfpkt_pad_trail_fndecl_34244_fields cfpkt_pad_trail fndecl 2 34244 NULL
+agno_xfs_extent_busy_34245_fields agno xfs_extent_busy 0 34245 NULL
+rss_cpus_vardecl_efx_c_34253_fields rss_cpus vardecl_efx.c 0 34253 NULL nohasharray
@@ -196972,19 +201663,18 @@ index 0000000..6b5367db
+status_tulip_rx_desc_34260_fields status tulip_rx_desc 0 34260 NULL
+MaxTransactSize_smb2_negotiate_rsp_34261_fields MaxTransactSize smb2_negotiate_rsp 0 34261 NULL
+count_igbvf_ring_34264_fields count igbvf_ring 0 34264 NULL
-+metadata_dst_alloc_percpu_fndecl_34267_fields metadata_dst_alloc_percpu fndecl 1 34267 NULL nohasharray
-+nvdimm_create_fndecl_34267_fields nvdimm_create fndecl 6 34267 &metadata_dst_alloc_percpu_fndecl_34267_fields
+reg_read_smsc911x_ops_34274_fields reg_read smsc911x_ops 0 34274 NULL
-+max_segs_mmc_host_34276_fields max_segs mmc_host 0 34276 NULL nohasharray
-+tty_port_register_device_fndecl_34276_fields tty_port_register_device fndecl 3 34276 &max_segs_mmc_host_34276_fields
++max_segs_mmc_host_34276_fields max_segs mmc_host 0 34276 NULL
+btt_map_read_fndecl_34281_fields btt_map_read fndecl 0 34281 NULL
+buf_len_wmi_10_4_mgmt_rx_hdr_34285_fields buf_len wmi_10_4_mgmt_rx_hdr 0 34285 NULL
-+ocfs2_group_from_res_fndecl_34289_fields ocfs2_group_from_res fndecl 0 34289 NULL
++ea_get_fndecl_34289_fields ea_get fndecl 3 34289 NULL nohasharray
++ocfs2_group_from_res_fndecl_34289_fields ocfs2_group_from_res fndecl 0 34289 &ea_get_fndecl_34289_fields
+cpu_msix_table_sz_MPT3SAS_ADAPTER_34295_fields cpu_msix_table_sz MPT3SAS_ADAPTER 0 34295 NULL
+skb_coalesce_rx_frag_fndecl_34296_fields skb_coalesce_rx_frag fndecl 3-4 34296 NULL
+__nla_put_64bit_fndecl_34299_fields __nla_put_64bit fndecl 3 34299 NULL
+fl_pg_order_sge_34307_fields fl_pg_order sge 0 34307 NULL
+p1_FS_QENTRY_34311_fields p1 FS_QENTRY 0 34311 NULL
++sq_len_qedr_create_qp_ureq_34317_fields sq_len qedr_create_qp_ureq 0 34317 NULL
+usb6fire_pcm_init_urb_fndecl_34318_fields usb6fire_pcm_init_urb fndecl 4 34318 NULL
+vmw_kms_sou_do_dmabuf_dirty_fndecl_34319_fields vmw_kms_sou_do_dmabuf_dirty fndecl 5 34319 NULL
+acm_tty_write_fndecl_34323_fields acm_tty_write fndecl 3 34323 NULL
@@ -196996,8 +201686,10 @@ index 0000000..6b5367db
+mlxsw_emad_transmit_fndecl_34390_fields mlxsw_emad_transmit fndecl 0 34390 NULL
+ath6kl_wmi_set_inact_period_fndecl_34398_fields ath6kl_wmi_set_inact_period fndecl 2 34398 NULL
+min_scaled_height_bttv_crop_34408_fields min_scaled_height bttv_crop 0 34408 NULL
++req_num_tx_qede_dev_34413_fields req_num_tx qede_dev 0 34413 NULL
+__i2c_transfer_fndecl_34417_fields __i2c_transfer fndecl 0 34417 NULL
+w_minimode_34418_fields w minimode 0 34418 NULL
++count_emac_tpd_ring_34423_fields count emac_tpd_ring 0 34423 NULL
+fragsize_inet_cork_34425_fields fragsize inet_cork 0 34425 NULL
+vs_xdrsize_svc_version_34426_fields vs_xdrsize svc_version 0 34426 NULL
+ctrl_set_res_ver_fndecl_34447_fields ctrl_set_res_ver fndecl 3 34447 NULL
@@ -197010,41 +201702,42 @@ index 0000000..6b5367db
+start_btrfs_ordered_extent_34479_fields start btrfs_ordered_extent 0 34479 NULL
+i2c_hid_command_fndecl_34481_fields i2c_hid_command fndecl 4 34481 NULL
+dma_bd_table_34490_fields dma bd_table 0 34490 NULL
++ring_size_ena_ring_34492_fields ring_size ena_ring 0 34492 NULL
+do_ipt_set_ctl_fndecl_34493_fields do_ipt_set_ctl fndecl 4 34493 NULL
+w_virtio_gpu_box_34509_fields w virtio_gpu_box 0 34509 NULL
+overflow_maj_vardecl_user_mad_c_34524_fields overflow_maj vardecl_user_mad.c 0 34524 NULL
+SavagePanelHeight_savagefb_par_34532_fields SavagePanelHeight savagefb_par 0 34532 NULL
-+track_pfn_remap_fndecl_34534_fields track_pfn_remap fndecl 3-5 34534 NULL nohasharray
-+width_pcs_device_34534_fields width pcs_device 0 34534 &track_pfn_remap_fndecl_34534_fields
++track_pfn_remap_fndecl_34534_fields track_pfn_remap fndecl 3-5 34534 NULL
+tid_ieee80211_rx_agg_34536_fields tid ieee80211_rx_agg 0 34536 NULL
+total_vfs_qed_hw_sriov_info_34538_fields total_vfs qed_hw_sriov_info 0 34538 NULL
+resid_sg_io_hdr_34541_fields resid sg_io_hdr 0 34541 NULL
+host_size_scsi_transport_template_34551_fields host_size scsi_transport_template 0 34551 NULL
-+maxpacket_limit_usb_ep_34566_fields maxpacket_limit usb_ep 0 34566 NULL
++maxpacket_limit_usb_ep_34566_fields maxpacket_limit usb_ep 0 34566 NULL nohasharray
++target_alloc_sgl_fndecl_34566_fields target_alloc_sgl fndecl 3 34566 &maxpacket_limit_usb_ep_34566_fields
+opt_xfer_blocks_scsi_disk_34567_fields opt_xfer_blocks scsi_disk 0 34567 NULL
+blkno_range2trim_34581_fields blkno range2trim 0 34581 NULL
-+dwc3_ep0_start_trans_fndecl_34586_fields dwc3_ep0_start_trans fndecl 4 34586 NULL
+blk_queue_alignment_offset_fndecl_34591_fields blk_queue_alignment_offset fndecl 2 34591 NULL
-+hcd_alloc_coherent_fndecl_34597_fields hcd_alloc_coherent fndecl 0-5 34597 NULL
++hcd_alloc_coherent_fndecl_34597_fields hcd_alloc_coherent fndecl 0 34597 NULL
+min_resource_constraint_34598_fields min resource_constraint 0 34598 NULL
+ath6kl_wmi_data_hdr_add_fndecl_34601_fields ath6kl_wmi_data_hdr_add fndecl 8 34601 NULL
-+sys_sync_file_range_fndecl_34604_fields sys_sync_file_range fndecl 2-3 34604 NULL
++sys_sync_file_range_fndecl_34604_fields sys_sync_file_range fndecl 2 34604 NULL
+__check_block_validity_fndecl_34606_fields __check_block_validity fndecl 0 34606 NULL
-+end_shift_iwl_fw_dbg_dest_tlv_34608_fields end_shift iwl_fw_dbg_dest_tlv 0 34608 NULL
++efi_mem_reserve_fndecl_34608_fields efi_mem_reserve fndecl 2-1 34608 NULL nohasharray
++end_shift_iwl_fw_dbg_dest_tlv_34608_fields end_shift iwl_fw_dbg_dest_tlv 0 34608 &efi_mem_reserve_fndecl_34608_fields
+fip_dlen_fip_desc_34614_fields fip_dlen fip_desc 0 34614 NULL
+vram_total_vardecl_vesafb_c_34615_fields vram_total vardecl_vesafb.c 0 34615 NULL nohasharray
+size_vb2_vmalloc_buf_34615_fields size vb2_vmalloc_buf 0 34615 &vram_total_vardecl_vesafb_c_34615_fields
+undo_cwnd_tcp_congestion_ops_34621_fields undo_cwnd tcp_congestion_ops 0 34621 NULL
+ace_change_mtu_fndecl_34639_fields ace_change_mtu fndecl 2 34639 NULL
-+xfs_free_ag_extent_fndecl_34658_fields xfs_free_ag_extent fndecl 5-0 34658 NULL
-+init_evtlog_size_iwl_fw_34663_fields init_evtlog_size iwl_fw 0 34663 NULL
-+num_chip_htcpld_core_platform_data_34665_fields num_chip htcpld_core_platform_data 0 34665 NULL
++hsc_write_fndecl_34640_fields hsc_write fndecl 3 34640 NULL
+ext4_convert_unwritten_extents_endio_fndecl_34667_fields ext4_convert_unwritten_extents_endio fndecl 0 34667 NULL
++info_len_cfg80211_nan_match_params_34675_fields info_len cfg80211_nan_match_params 0 34675 NULL
+num_leaves_cpu_cacheinfo_34676_fields num_leaves cpu_cacheinfo 0 34676 NULL
+pnp_add_mem_resource_fndecl_34681_fields pnp_add_mem_resource fndecl 3-2 34681 NULL
+offset_ethtool_eeprom_34683_fields offset ethtool_eeprom 0 34683 NULL
+bassinit_CHIPDESC_34688_fields bassinit CHIPDESC 0 34688 NULL
-+acpi_tables_addr_vardecl_tables_c_34693_fields acpi_tables_addr vardecl_tables.c 0 34693 NULL
++acpi_tables_addr_vardecl_tables_c_34693_fields acpi_tables_addr vardecl_tables.c 0 34693 NULL nohasharray
++radeon_ring_init_fndecl_34693_fields radeon_ring_init fndecl 3 34693 &acpi_tables_addr_vardecl_tables_c_34693_fields
+max_payload_fc_fcp_pkt_34696_fields max_payload fc_fcp_pkt 0 34696 NULL
+writesize_mtd_info_34702_fields writesize mtd_info 0 34702 NULL nohasharray
+jbd2_journal_file_inode_fndecl_34702_fields jbd2_journal_file_inode fndecl 0 34702 &writesize_mtd_info_34702_fields
@@ -197054,77 +201747,83 @@ index 0000000..6b5367db
+cache_word_size_regmap_34722_fields cache_word_size regmap 0 34722 NULL
+W6692_empty_Dfifo_fndecl_34725_fields W6692_empty_Dfifo fndecl 2 34725 NULL nohasharray
+tx_num_pgs_tp_params_34725_fields tx_num_pgs tp_params 0 34725 &W6692_empty_Dfifo_fndecl_34725_fields
-+ocfs2_dx_dir_format_cluster_fndecl_34730_fields ocfs2_dx_dir_format_cluster fndecl 6 34730 NULL nohasharray
-+eqc_entry_sz_mlx4_dev_cap_34730_fields eqc_entry_sz mlx4_dev_cap 0 34730 &ocfs2_dx_dir_format_cluster_fndecl_34730_fields
++ocfs2_dx_dir_format_cluster_fndecl_34730_fields ocfs2_dx_dir_format_cluster fndecl 6 34730 NULL
+wa_xfer_create_subset_sg_fndecl_34731_fields wa_xfer_create_subset_sg fndecl 2-3 34731 NULL
+memblock_double_array_fndecl_34732_fields memblock_double_array fndecl 3-2 34732 NULL
+trunc_start_fndecl_34735_fields trunc_start fndecl 3-2 34735 NULL
+flags_rtl8187b_rx_hdr_34741_fields flags rtl8187b_rx_hdr 0 34741 NULL
+inbuf_dma_usbhid_device_34742_fields inbuf_dma usbhid_device 0 34742 NULL
-+u132_hcd_bulk_input_recv_fndecl_34756_fields u132_hcd_bulk_input_recv fndecl 4 34756 NULL
++u132_hcd_bulk_input_recv_fndecl_34756_fields u132_hcd_bulk_input_recv fndecl 4 34756 NULL nohasharray
++acct_stack_growth_fndecl_34756_fields acct_stack_growth fndecl 3-2 34756 &u132_hcd_bulk_input_recv_fndecl_34756_fields
+extent_size_ecryptfs_crypt_stat_34757_fields extent_size ecryptfs_crypt_stat 0 34757 NULL nohasharray
+zone_spare_adfs_discrecord_34757_fields zone_spare adfs_discrecord 0 34757 &extent_size_ecryptfs_crypt_stat_34757_fields nohasharray
+ecc_bits_onfi_ext_ecc_info_34757_fields ecc_bits onfi_ext_ecc_info 0 34757 &zone_spare_adfs_discrecord_34757_fields
+ssb_bus_pcmciabus_register_fndecl_34759_fields ssb_bus_pcmciabus_register fndecl 3 34759 NULL
++dax_devt_vardecl_dax_c_34767_fields dax_devt vardecl_dax.c 0 34767 NULL
+qla2x00_mem_alloc_fndecl_34771_fields qla2x00_mem_alloc fndecl 3-2 34771 NULL
-+hvt_op_write_fndecl_34774_fields hvt_op_write fndecl 3 34774 NULL
-+cyapa_i2c_pip_read_fndecl_34788_fields cyapa_i2c_pip_read fndecl 3 34788 NULL
++bxt_calc_cdclk_fndecl_34787_fields bxt_calc_cdclk fndecl 0 34787 NULL
++cyapa_i2c_pip_read_fndecl_34788_fields cyapa_i2c_pip_read fndecl 3 34788 NULL nohasharray
++size_hostif_msg_hdr_34788_fields size hostif_msg_hdr 0 34788 &cyapa_i2c_pip_read_fndecl_34788_fields
+qxl_image_alloc_objects_fndecl_34790_fields qxl_image_alloc_objects fndecl 4-5 34790 NULL
+addrlen_svc_deferred_req_34794_fields addrlen svc_deferred_req 0 34794 NULL
+rq_count_st_card_info_34798_fields rq_count st_card_info 0 34798 NULL
+nfs_write_end_fndecl_34801_fields nfs_write_end fndecl 3-5 34801 NULL
+prepare_message_data_fndecl_34802_fields prepare_message_data fndecl 2 34802 NULL
++wBlockID_ms_bootblock_header_34809_fields wBlockID ms_bootblock_header 0 34809 NULL
+page_size_flash_info_34810_fields page_size flash_info 0 34810 NULL
-+rcv_array_groups_hfi1_ctxtdata_34813_fields rcv_array_groups hfi1_ctxtdata 0 34813 NULL nohasharray
-+bio_integrity_clone_fndecl_34813_fields bio_integrity_clone fndecl 0 34813 &rcv_array_groups_hfi1_ctxtdata_34813_fields
++bio_integrity_clone_fndecl_34813_fields bio_integrity_clone fndecl 0 34813 NULL nohasharray
++rcv_array_groups_hfi1_ctxtdata_34813_fields rcv_array_groups hfi1_ctxtdata 0 34813 &bio_integrity_clone_fndecl_34813_fields
+blk_cnt_os_dat_entry_s_34817_fields blk_cnt os_dat_entry_s 0 34817 NULL
+max_headroom_datapath_34819_fields max_headroom datapath 0 34819 NULL
-+lbs_lowsnr_write_fndecl_34822_fields lbs_lowsnr_write fndecl 3 34822 NULL
+alg_key_len_xfrm_algo_34823_fields alg_key_len xfrm_algo 0 34823 NULL nohasharray
+wps_ie_len_mwifiex_private_34823_fields wps_ie_len mwifiex_private 0 34823 &alg_key_len_xfrm_algo_34823_fields
++xfs_refcount_merge_center_extents_fndecl_34824_fields xfs_refcount_merge_center_extents fndecl 5 34824 NULL
+madvise_behavior_fndecl_34827_fields madvise_behavior fndecl 4-3 34827 NULL
+mwifiex_usb_submit_rx_urb_fndecl_34829_fields mwifiex_usb_submit_rx_urb fndecl 2 34829 NULL
+rcvegrbufs_perchunk_qib_ctxtdata_34831_fields rcvegrbufs_perchunk qib_ctxtdata 0 34831 NULL
-+xenvif_check_gop_fndecl_34832_fields xenvif_check_gop fndecl 0 34832 NULL
+eblks_mtdswap_dev_34840_fields eblks mtdswap_dev 0 34840 NULL
+in_usbnet_34842_fields in usbnet 0 34842 NULL
-+dma_channels_hidma_mgmt_dev_34844_fields dma_channels hidma_mgmt_dev 0 34844 NULL
+plen_pbn_entry_34845_fields plen pbn_entry 0 34845 NULL
+qede_gro_receive_fndecl_34847_fields qede_gro_receive fndecl 4 34847 NULL
+vma_end_reservation_fndecl_34848_fields vma_end_reservation fndecl 3 34848 NULL nohasharray
+ath6kl_wmi_create_pstream_cmd_fndecl_34848_fields ath6kl_wmi_create_pstream_cmd fndecl 2 34848 &vma_end_reservation_fndecl_34848_fields
-+nfsd_vfs_write_fndecl_34850_fields nfsd_vfs_write fndecl 6 34850 NULL
+good_peb_count_ubi_device_34853_fields good_peb_count ubi_device 0 34853 NULL
+nilfs_ioctl_do_get_suinfo_fndecl_34854_fields nilfs_ioctl_do_get_suinfo fndecl 6 34854 NULL
+max_msix_vectors_fm10k_mac_info_34860_fields max_msix_vectors fm10k_mac_info 0 34860 NULL
+tipc_link_set_mtu_fndecl_34861_fields tipc_link_set_mtu fndecl 2 34861 NULL
-+pfkey_recvmsg_fndecl_34863_fields pfkey_recvmsg fndecl 3 34863 NULL
++pfkey_recvmsg_fndecl_34863_fields pfkey_recvmsg fndecl 3 34863 NULL nohasharray
++s_map_size_adfs_sb_info_34863_fields s_map_size adfs_sb_info 0 34863 &pfkey_recvmsg_fndecl_34863_fields
+odm_num_comps_pnfs_osd_data_map_34865_fields odm_num_comps pnfs_osd_data_map 0 34865 NULL
+sddr09_writeX_fndecl_34870_fields sddr09_writeX fndecl 5 34870 NULL
+dout_xfer_len_sg_io_v4_34879_fields dout_xfer_len sg_io_v4 0 34879 NULL
+bgx_get_lmac_count_fndecl_34883_fields bgx_get_lmac_count fndecl 0 34883 NULL
+drm_cvt_mode_fndecl_34886_fields drm_cvt_mode fndecl 3-2-4 34886 NULL
++max_hz_ifx_modem_platform_data_34890_fields max_hz ifx_modem_platform_data 0 34890 NULL
+Wa_tvnorm_34892_fields Wa tvnorm 0 34892 NULL
+len_coda_ioctl_out_34894_fields len coda_ioctl_out 0 34894 NULL
+sb_logstart_xfs_sb_34900_fields sb_logstart xfs_sb 0 34900 NULL
+fat_ent_read_fndecl_34902_fields fat_ent_read fndecl 0-3 34902 NULL
+block_size_ath6kl_mbox_info_34904_fields block_size ath6kl_mbox_info 0 34904 NULL
-+num_channels_ad5380_chip_info_34917_fields num_channels ad5380_chip_info 0 34917 NULL nohasharray
-+irq_of_parse_and_map_fndecl_34917_fields irq_of_parse_and_map fndecl 0 34917 &num_channels_ad5380_chip_info_34917_fields
-+ath10k_htc_alloc_skb_fndecl_34920_fields ath10k_htc_alloc_skb fndecl 2 34920 NULL
++irq_of_parse_and_map_fndecl_34917_fields irq_of_parse_and_map fndecl 0 34917 NULL nohasharray
++num_channels_ad5380_chip_info_34917_fields num_channels ad5380_chip_info 0 34917 &irq_of_parse_and_map_fndecl_34917_fields
++drm_helper_crtc_mode_set_base_fndecl_34920_fields drm_helper_crtc_mode_set_base fndecl 2-3 34920 NULL nohasharray
++ath10k_htc_alloc_skb_fndecl_34920_fields ath10k_htc_alloc_skb fndecl 2 34920 &drm_helper_crtc_mode_set_base_fndecl_34920_fields
+consume_size_vmci_qp_alloc_info_34922_fields consume_size vmci_qp_alloc_info 0 34922 NULL
+shared_secret_len_net_conf_34926_fields shared_secret_len net_conf 0 34926 NULL
-+len_wil6210_mbox_hdr_34930_fields len wil6210_mbox_hdr 0 34930 NULL
++port_fops_write_fndecl_34928_fields port_fops_write fndecl 3 34928 NULL
++len_wil6210_mbox_hdr_34930_fields len wil6210_mbox_hdr 0 34930 NULL nohasharray
++rq_addr_qedr_create_qp_ureq_34930_fields rq_addr qedr_create_qp_ureq 0 34930 &len_wil6210_mbox_hdr_34930_fields
+swiotlb_init_with_tbl_fndecl_34935_fields swiotlb_init_with_tbl fndecl 2 34935 NULL
+register_sound_special_fndecl_34937_fields register_sound_special fndecl 2 34937 NULL
+recv_resync_read_fndecl_34939_fields recv_resync_read fndecl 2 34939 NULL
+max_receive_fw_card_34941_fields max_receive fw_card 0 34941 NULL
+ext2_write_end_fndecl_34943_fields ext2_write_end fndecl 5 34943 NULL
+ips_scmd_buf_write_fndecl_34946_fields ips_scmd_buf_write fndecl 3 34946 NULL
-+simple_alloc_urb_fndecl_34966_fields simple_alloc_urb fndecl 2 34966 NULL
++reiserfs_get_block_create_0_fndecl_34954_fields reiserfs_get_block_create_0 fndecl 2 34954 NULL
++simple_alloc_urb_fndecl_34966_fields simple_alloc_urb fndecl 2-3 34966 NULL
+s35390a_get_reg_fndecl_34971_fields s35390a_get_reg fndecl 4 34971 NULL
-+items_snd_soc_tplg_enum_control_34973_fields items snd_soc_tplg_enum_control 0 34973 NULL nohasharray
-+cw1200_queue_stats_init_fndecl_34973_fields cw1200_queue_stats_init fndecl 2 34973 &items_snd_soc_tplg_enum_control_34973_fields
++cw1200_queue_stats_init_fndecl_34973_fields cw1200_queue_stats_init fndecl 2 34973 NULL nohasharray
++items_snd_soc_tplg_enum_control_34973_fields items snd_soc_tplg_enum_control 0 34973 &cw1200_queue_stats_init_fndecl_34973_fields
+gcr_base_intel_pmc_ipc_dev_34977_fields gcr_base intel_pmc_ipc_dev 0 34977 NULL
+wm_adsp_buffer_capture_block_fndecl_35001_fields wm_adsp_buffer_capture_block fndecl 2-0 35001 NULL
+rx_ring_count_ixgbe_adapter_35004_fields rx_ring_count ixgbe_adapter 0 35004 NULL
@@ -197145,13 +201844,13 @@ index 0000000..6b5367db
+n_ports_rp2_card_35055_fields n_ports rp2_card 0 35055 NULL
+tda18218_rd_reg_fndecl_35057_fields tda18218_rd_reg fndecl 2 35057 NULL
+iio_event_chrdev_read_fndecl_35062_fields iio_event_chrdev_read fndecl 3 35062 NULL
++ring_size_radeon_ring_35063_fields ring_size radeon_ring 0 35063 NULL
+pci_create_root_bus_fndecl_35065_fields pci_create_root_bus fndecl 2 35065 NULL
+jffs2_flash_direct_write_fndecl_35070_fields jffs2_flash_direct_write fndecl 3 35070 NULL
+altera_set_dr_post_fndecl_35072_fields altera_set_dr_post fndecl 2 35072 NULL
-+num_col_gpios_matrix_keypad_platform_data_35080_fields num_col_gpios matrix_keypad_platform_data 0 35080 NULL
-+get_iovec_page_array_fndecl_35081_fields get_iovec_page_array fndecl 0 35081 NULL
+inbuf_dma_ati_remote_35083_fields inbuf_dma ati_remote 0 35083 NULL
-+ieee80211_add_rx_radiotap_header_fndecl_35086_fields ieee80211_add_rx_radiotap_header fndecl 4 35086 NULL
++ieee80211_add_rx_radiotap_header_fndecl_35086_fields ieee80211_add_rx_radiotap_header fndecl 4 35086 NULL nohasharray
++reclaim_pages_fndecl_35086_fields reclaim_pages fndecl 3 35086 &ieee80211_add_rx_radiotap_header_fndecl_35086_fields
+ubi_calc_data_len_fndecl_35092_fields ubi_calc_data_len fndecl 0-3 35092 NULL
+er_data_len_gfs2_ea_request_35098_fields er_data_len gfs2_ea_request 0 35098 NULL
+num_vf_qps_i40e_pf_35102_fields num_vf_qps i40e_pf 0 35102 NULL
@@ -197195,7 +201894,6 @@ index 0000000..6b5367db
+maxpacksize_snd_usb_endpoint_35216_fields maxpacksize snd_usb_endpoint 0 35216 NULL nohasharray
+sset_mask_ethtool_sset_info_35216_fields sset_mask ethtool_sset_info 0 35216 &maxpacksize_snd_usb_endpoint_35216_fields
+__ndisc_fill_addr_option_fndecl_35220_fields __ndisc_fill_addr_option fndecl 5-4 35220 NULL
-+snd_pcm_add_chmap_ctls_fndecl_35223_fields snd_pcm_add_chmap_ctls fndecl 4 35223 NULL
+vmbus_sendpacket_ctl_fndecl_35225_fields vmbus_sendpacket_ctl fndecl 3 35225 NULL
+root_blkno_ocfs2_super_35227_fields root_blkno ocfs2_super 0 35227 NULL
+d_off_p9_dirent_35247_fields d_off p9_dirent 0 35247 NULL nohasharray
@@ -197212,6 +201910,7 @@ index 0000000..6b5367db
+offs_ubifs_wbuf_35290_fields offs ubifs_wbuf 0 35290 NULL
+xc_send_i2c_data_fndecl_35297_fields xc_send_i2c_data fndecl 3 35297 NULL
+maybe_indirect_to_direct_fndecl_35307_fields maybe_indirect_to_direct fndecl 6 35307 NULL
++p54_parse_default_country_fndecl_35309_fields p54_parse_default_country fndecl 3 35309 NULL
+ieee80211_tdls_mgmt_setup_fndecl_35316_fields ieee80211_tdls_mgmt_setup fndecl 10 35316 NULL
+udf_insert_aext_fndecl_35323_fields udf_insert_aext fndecl 4 35323 NULL
+l2cap_create_basic_pdu_fndecl_35327_fields l2cap_create_basic_pdu fndecl 3 35327 NULL
@@ -197219,7 +201918,6 @@ index 0000000..6b5367db
+xb_suballoc_bit_ocfs2_xattr_block_35331_fields xb_suballoc_bit ocfs2_xattr_block 0 35331 NULL
+extra_msdu_postfix_len_lib80211_crypto_ops_35341_fields extra_msdu_postfix_len lib80211_crypto_ops 0 35341 NULL
+nr_pages_bts_buffer_35350_fields nr_pages bts_buffer 0 35350 NULL
-+num_reg_mic_smpt_hw_info_35353_fields num_reg mic_smpt_hw_info 0 35353 NULL
+udf_get_pblock_meta25_fndecl_35356_fields udf_get_pblock_meta25 fndecl 4 35356 NULL
+header_dvfs_info_35357_fields header dvfs_info 0 35357 NULL
+IA_RX_BUF_SZ_vardecl_iphase_c_35365_fields IA_RX_BUF_SZ vardecl_iphase.c 0 35365 NULL
@@ -197228,50 +201926,51 @@ index 0000000..6b5367db
+input_pool_snd_seq_client_pool_35368_fields input_pool snd_seq_client_pool 0 35368 &count_param_range_35368_fields
+num_channels_ad7266_chan_info_35372_fields num_channels ad7266_chan_info 0 35372 NULL
+update_raid_disks_fndecl_35375_fields update_raid_disks fndecl 2 35375 NULL
++drm_dp_mst_topology_mgr_init_fndecl_35377_fields drm_dp_mst_topology_mgr_init fndecl 4 35377 NULL
+sd_head_align_brcmfmac_sdio_pd_35378_fields sd_head_align brcmfmac_sdio_pd 0 35378 NULL nohasharray
-+mmio_base_phys_radeonfb_info_35378_fields mmio_base_phys radeonfb_info 0 35378 &sd_head_align_brcmfmac_sdio_pd_35378_fields
++rpcrdma_alloc_regbuf_fndecl_35378_fields rpcrdma_alloc_regbuf fndecl 1 35378 &sd_head_align_brcmfmac_sdio_pd_35378_fields nohasharray
++mmio_base_phys_radeonfb_info_35378_fields mmio_base_phys radeonfb_info 0 35378 &rpcrdma_alloc_regbuf_fndecl_35378_fields
+virtio_gpu_cmd_submit_fndecl_35382_fields virtio_gpu_cmd_submit fndecl 3 35382 NULL
+hc_erase_size_mmc_ext_csd_35384_fields hc_erase_size mmc_ext_csd 0 35384 NULL
+nand_read_subpage_fndecl_35388_fields nand_read_subpage fndecl 3 35388 NULL
+read_dma_fndecl_35389_fields read_dma fndecl 3 35389 NULL
+writeback_fndecl_35390_fields writeback fndecl 4-3 35390 NULL
-+corrupt_data_fndecl_35395_fields corrupt_data fndecl 0-3 35395 NULL
++corrupt_data_fndecl_35395_fields corrupt_data fndecl 0-3 35395 NULL nohasharray
++sg_set_page_fndecl_35395_fields sg_set_page fndecl 3 35395 &corrupt_data_fndecl_35395_fields
+blk_queue_io_opt_fndecl_35405_fields blk_queue_io_opt fndecl 2 35405 NULL
+at24_eeprom_read_i2c_fndecl_35407_fields at24_eeprom_read_i2c fndecl 4 35407 NULL
-+rdma_rw_ctx_init_fndecl_35410_fields rdma_rw_ctx_init fndecl 6-7 35410 NULL
++rdma_rw_ctx_init_fndecl_35410_fields rdma_rw_ctx_init fndecl 6 35410 NULL
+_drbd_md_sync_page_io_fndecl_35411_fields _drbd_md_sync_page_io fndecl 3 35411 NULL
+ali15x3_smba_vardecl_i2c_ali15x3_c_35421_fields ali15x3_smba vardecl_i2c-ali15x3.c 0 35421 NULL
+cqc_entry_sz_mthca_dev_lim_35422_fields cqc_entry_sz mthca_dev_lim 0 35422 NULL
+fb_width_drm_fb_helper_surface_size_35426_fields fb_width drm_fb_helper_surface_size 0 35426 NULL
-+btrfs_fdatawrite_range_fndecl_35427_fields btrfs_fdatawrite_range fndecl 2-3 35427 NULL
++btrfs_fdatawrite_range_fndecl_35427_fields btrfs_fdatawrite_range fndecl 2 35427 NULL
+offset_tx_buf_35429_fields offset tx_buf 0 35429 NULL
+bmAttributes_usb_ss_ep_comp_descriptor_35434_fields bmAttributes usb_ss_ep_comp_descriptor 0 35434 NULL
+ocfs2_prepare_refcount_change_for_del_fndecl_35442_fields ocfs2_prepare_refcount_change_for_del fndecl 2 35442 NULL
+pcf2123_read_fndecl_35443_fields pcf2123_read fndecl 4 35443 NULL
+wake_len_cfg80211_wowlan_tcp_35448_fields wake_len cfg80211_wowlan_tcp 0 35448 NULL nohasharray
+len_he_buff_35448_fields len he_buff 0 35448 &wake_len_cfg80211_wowlan_tcp_35448_fields
-+ocfs2_truncate_file_fndecl_35455_fields ocfs2_truncate_file fndecl 3 35455 NULL
++ocfs2_truncate_file_fndecl_35455_fields ocfs2_truncate_file fndecl 3 35455 NULL nohasharray
++properties_count_gb_power_supply_35455_fields properties_count gb_power_supply 0 35455 &ocfs2_truncate_file_fndecl_35455_fields
+octeon_create_droq_fndecl_35457_fields octeon_create_droq fndecl 4-3 35457 NULL
+bytes_to_read_mpt3_diag_read_buffer_35460_fields bytes_to_read mpt3_diag_read_buffer 0 35460 NULL
+drbd_send_fndecl_35461_fields drbd_send fndecl 4 35461 NULL
+blkno_iomap_35467_fields blkno iomap 0 35467 NULL
+width_physmap_flash_data_35470_fields width physmap_flash_data 0 35470 NULL
+qxl_monitors_config_set_fndecl_35471_fields qxl_monitors_config_set fndecl 6-5 35471 NULL
-+kmem_realloc_fndecl_35475_fields kmem_realloc fndecl 2 35475 NULL
+__rpipe_set_descr_fndecl_35478_fields __rpipe_set_descr fndecl 0 35478 NULL
+length_wl1251_rx_descriptor_35483_fields length wl1251_rx_descriptor 0 35483 NULL
+onenand_read_fndecl_35491_fields onenand_read fndecl 2 35491 NULL
+alloc_clips_fndecl_35492_fields alloc_clips fndecl 3 35492 NULL nohasharray
+f71805f_device_add_fndecl_35492_fields f71805f_device_add fndecl 1 35492 &alloc_clips_fndecl_35492_fields
-+nbox_drm_savage_cmdbuf_35493_fields nbox drm_savage_cmdbuf 0 35493 NULL nohasharray
-+firm_send_command_fndecl_35493_fields firm_send_command fndecl 4 35493 &nbox_drm_savage_cmdbuf_35493_fields
-+x_kmem_cache_order_objects_35507_fields x kmem_cache_order_objects 0 35507 NULL
++firm_send_command_fndecl_35493_fields firm_send_command fndecl 4 35493 NULL nohasharray
++nbox_drm_savage_cmdbuf_35493_fields nbox drm_savage_cmdbuf 0 35493 &firm_send_command_fndecl_35493_fields
++__kfifo_dma_out_prepare_r_fndecl_35512_fields __kfifo_dma_out_prepare_r fndecl 4-5 35512 NULL
+acpi_nvs_register_fndecl_35515_fields acpi_nvs_register fndecl 2-1 35515 NULL
+install_special_mapping_fndecl_35519_fields install_special_mapping fndecl 2-3 35519 NULL
+count_atl1_rfd_ring_35523_fields count atl1_rfd_ring 0 35523 NULL
-+shift_mlxsw_item_35524_fields shift mlxsw_item 0 35524 NULL nohasharray
-+nres_intel_th_subdevice_35524_fields nres intel_th_subdevice 0 35524 &shift_mlxsw_item_35524_fields
-+x509_extract_key_data_fndecl_35525_fields x509_extract_key_data fndecl 5 35525 NULL
++shift_mlxsw_item_35524_fields shift mlxsw_item 0 35524 NULL
+clr_int_base_mlx4_fw_35529_fields clr_int_base mlx4_fw 0 35529 NULL
+additional_cdb_length_scsi_varlen_cdb_hdr_35533_fields additional_cdb_length scsi_varlen_cdb_hdr 0 35533 NULL
+find_inode_fndecl_35534_fields find_inode fndecl 2 35534 NULL
@@ -197281,25 +201980,20 @@ index 0000000..6b5367db
+inet_sendpage_fndecl_35554_fields inet_sendpage fndecl 4 35554 NULL
+vsync_ast_vbios_enhtable_35556_fields vsync ast_vbios_enhtable 0 35556 NULL
+ptrace_request_fndecl_35563_fields ptrace_request fndecl 3 35563 NULL
-+data_offset_brcmf_proto_bcdc_header_35569_fields data_offset brcmf_proto_bcdc_header 0 35569 NULL nohasharray
-+find_min_pfn_for_node_fndecl_35569_fields find_min_pfn_for_node fndecl 0 35569 &data_offset_brcmf_proto_bcdc_header_35569_fields
++data_offset_brcmf_proto_bcdc_header_35569_fields data_offset brcmf_proto_bcdc_header 0 35569 NULL
+edma_readl_fndecl_35573_fields edma_readl fndecl 0 35573 NULL
+cfg80211_mlme_auth_fndecl_35577_fields cfg80211_mlme_auth fndecl 14-9 35577 NULL
-+size_of_priv_dvb_usb_device_properties_35582_fields size_of_priv dvb_usb_device_properties 0 35582 NULL nohasharray
-+cur_blksize_sdio_func_35582_fields cur_blksize sdio_func 0 35582 &size_of_priv_dvb_usb_device_properties_35582_fields
-+lbs_failcount_write_fndecl_35583_fields lbs_failcount_write fndecl 3 35583 NULL
++cur_blksize_sdio_func_35582_fields cur_blksize sdio_func 0 35582 NULL nohasharray
++size_of_priv_dvb_usb_device_properties_35582_fields size_of_priv dvb_usb_device_properties 0 35582 &cur_blksize_sdio_func_35582_fields
+actual_length_usb_iso_packet_descriptor_35588_fields actual_length usb_iso_packet_descriptor 0 35588 NULL
+cyttsp_i2c_read_block_data_fndecl_35590_fields cyttsp_i2c_read_block_data fndecl 4 35590 NULL
+minor_start_rp2_card_35592_fields minor_start rp2_card 0 35592 NULL
-+nfsd_write_fndecl_35594_fields nfsd_write fndecl 6 35594 NULL
+ext2_iget_fndecl_35598_fields ext2_iget fndecl 2 35598 NULL
+xfs_rtallocate_extent_block_fndecl_35604_fields xfs_rtallocate_extent_block fndecl 5-10-0 35604 NULL
+hback_porch_videomode_35606_fields hback_porch videomode 0 35606 NULL nohasharray
+count_nfs_direct_req_35606_fields count nfs_direct_req 0 35606 &hback_porch_videomode_35606_fields nohasharray
+obj_count_i40iw_virtchnl_hmc_obj_range_35606_fields obj_count i40iw_virtchnl_hmc_obj_range 0 35606 &count_nfs_direct_req_35606_fields
+blocksize_brcmf_sdio_35612_fields blocksize brcmf_sdio 0 35612 NULL
-+sqp_demux_mlx4_caps_35613_fields sqp_demux mlx4_caps 0 35613 NULL
-+iova_rvt_mregion_35617_fields iova rvt_mregion 0 35617 NULL
+generic_perform_write_fndecl_35619_fields generic_perform_write fndecl 0-3 35619 NULL nohasharray
+ext4_update_final_de_fndecl_35619_fields ext4_update_final_de fndecl 2-3 35619 &generic_perform_write_fndecl_35619_fields nohasharray
+count_fm10k_ring_35619_fields count fm10k_ring 0 35619 &ext4_update_final_de_fndecl_35619_fields
@@ -197316,6 +202010,7 @@ index 0000000..6b5367db
+numdevs_ore_components_35671_fields numdevs ore_components 0 35671 NULL
+ncntrs_qib_chip_specific_35675_fields ncntrs qib_chip_specific 0 35675 NULL
+rate_clk_core_35677_fields rate clk_core 0 35677 NULL
++alloc_ep_req_fndecl_35679_fields alloc_ep_req fndecl 2 35679 NULL
+read_into_fndecl_35681_fields read_into fndecl 2 35681 NULL nohasharray
+size_xpnet_message_35681_fields size xpnet_message 0 35681 &read_into_fndecl_35681_fields
+id_mfd_cell_35684_fields id mfd_cell 0 35684 NULL
@@ -197326,22 +202021,24 @@ index 0000000..6b5367db
+irq_domain_alloc_descs_fndecl_35699_fields irq_domain_alloc_descs fndecl 0 35699 NULL
+wil_pmc_alloc_fndecl_35702_fields wil_pmc_alloc fndecl 3 35702 NULL
+gfs2_write_alloc_required_fndecl_35708_fields gfs2_write_alloc_required fndecl 3-2 35708 NULL
++bnx2x_change_mtu_fndecl_35710_fields bnx2x_change_mtu fndecl 2 35710 NULL
+srp_post_send_fndecl_35713_fields srp_post_send fndecl 3 35713 NULL
-+remote_nentries_xpc_channel_35714_fields remote_nentries xpc_channel 0 35714 NULL
-+credits_csio_q_35715_fields credits csio_q 0 35715 NULL
-+RequestCredit_mpt3sas_facts_35718_fields RequestCredit mpt3sas_facts 0 35718 NULL nohasharray
-+bio_add_page_fndecl_35718_fields bio_add_page fndecl 3-4-0 35718 &RequestCredit_mpt3sas_facts_35718_fields
-+fdt_translate_address_fndecl_35726_fields fdt_translate_address fndecl 0 35726 NULL nohasharray
-+add_port_fndecl_35726_fields add_port fndecl 2 35726 &fdt_translate_address_fndecl_35726_fields
++mrvl_recv_fndecl_35715_fields mrvl_recv fndecl 3 35715 NULL nohasharray
++len_igb_tx_buffer_35715_fields len igb_tx_buffer 0 35715 &mrvl_recv_fndecl_35715_fields nohasharray
++credits_csio_q_35715_fields credits csio_q 0 35715 &len_igb_tx_buffer_35715_fields
++bio_add_page_fndecl_35718_fields bio_add_page fndecl 3-4-0 35718 NULL nohasharray
++RequestCredit_mpt3sas_facts_35718_fields RequestCredit mpt3sas_facts 0 35718 &bio_add_page_fndecl_35718_fields
++mxms_structlen_fndecl_35720_fields mxms_structlen fndecl 0 35720 NULL
++mod_num_sdma_vardecl_35721_fields mod_num_sdma vardecl 0 35721 NULL
++fdt_translate_address_fndecl_35726_fields fdt_translate_address fndecl 0 35726 NULL
+last_xfer_len_ide_cmd_35728_fields last_xfer_len ide_cmd 0 35728 NULL
+mwifiex_append_rate_tlv_fndecl_35735_fields mwifiex_append_rate_tlv fndecl 0 35735 NULL
+priv_size_data_queue_35740_fields priv_size data_queue 0 35740 NULL
+offset_ext4_io_end_35743_fields offset ext4_io_end 0 35743 NULL
+ggtt_probe_common_fndecl_35744_fields ggtt_probe_common fndecl 2 35744 NULL nohasharray
+qib_uc_rcv_fndecl_35744_fields qib_uc_rcv fndecl 5 35744 &ggtt_probe_common_fndecl_35744_fields
-+alauda_write_data_fndecl_35748_fields alauda_write_data fndecl 2 35748 NULL
-+goodix_i2c_read_fndecl_35755_fields goodix_i2c_read fndecl 4 35755 NULL nohasharray
-+c4_add_card_fndecl_35755_fields c4_add_card fndecl 3 35755 &goodix_i2c_read_fndecl_35755_fields
++alauda_write_data_fndecl_35748_fields alauda_write_data fndecl 3-2 35748 NULL
++goodix_i2c_read_fndecl_35755_fields goodix_i2c_read fndecl 4 35755 NULL
+left_qxl_urect_35760_fields left qxl_urect 0 35760 NULL
+rx_buf_seg_size_qede_rx_queue_35761_fields rx_buf_seg_size qede_rx_queue 0 35761 NULL
+scsi_sg_tablesize_iser_conn_35762_fields scsi_sg_tablesize iser_conn 0 35762 NULL
@@ -197371,15 +202068,14 @@ index 0000000..6b5367db
+snd_pcm_format_physical_width_fndecl_35858_fields snd_pcm_format_physical_width fndecl 0 35858 NULL
+ipw_write_packet_sent_callback_fndecl_35859_fields ipw_write_packet_sent_callback fndecl 2 35859 NULL
+check_acl_fndecl_35867_fields check_acl fndecl 0 35867 NULL
-+usb_stor_bulk_transfer_sglist_fndecl_35871_fields usb_stor_bulk_transfer_sglist fndecl 5-2-4 35871 NULL
++usb_stor_bulk_transfer_sglist_fndecl_35871_fields usb_stor_bulk_transfer_sglist fndecl 2-5-4 35871 NULL
+pcol_add_page_fndecl_35872_fields pcol_add_page fndecl 3 35872 NULL nohasharray
+processed_length_mbo_35872_fields processed_length mbo 0 35872 &pcol_add_page_fndecl_35872_fields
+snd_hdsp_midi_output_possible_fndecl_35873_fields snd_hdsp_midi_output_possible fndecl 0 35873 NULL
+shared_out_nid_ca0132_spec_35876_fields shared_out_nid ca0132_spec 0 35876 NULL
+st_sensors_spi_read_fndecl_35890_fields st_sensors_spi_read fndecl 4 35890 NULL
+pos_in_f2fs_move_range_35897_fields pos_in f2fs_move_range 0 35897 NULL
-+lpuart_dma_tx_fndecl_35902_fields lpuart_dma_tx fndecl 2 35902 NULL nohasharray
-+nft_data_dump_fndecl_35902_fields nft_data_dump fndecl 5 35902 &lpuart_dma_tx_fndecl_35902_fields
++nft_data_dump_fndecl_35902_fields nft_data_dump fndecl 5 35902 NULL
+fe_group_ext4_free_extent_35905_fields fe_group ext4_free_extent 0 35905 NULL nohasharray
+max_sq_desc_sz_mlx4_caps_35905_fields max_sq_desc_sz mlx4_caps 0 35905 &fe_group_ext4_free_extent_35905_fields
+lirc_base_dev_vardecl_lirc_dev_c_35907_fields lirc_base_dev vardecl_lirc_dev.c 0 35907 NULL
@@ -197387,17 +202083,18 @@ index 0000000..6b5367db
+softback_end_vardecl_fbcon_c_35923_fields softback_end vardecl_fbcon.c 0 35923 NULL
+n_algs_wmfw_adsp1_id_hdr_35926_fields n_algs wmfw_adsp1_id_hdr 0 35926 NULL
+ieee802154_hdr_minlen_fndecl_35927_fields ieee802154_hdr_minlen fndecl 0 35927 NULL
++drm_rect_calc_vscale_fndecl_35928_fields drm_rect_calc_vscale fndecl 0 35928 NULL
+bytes_written_cq_fcp_rq_desc_35931_fields bytes_written cq_fcp_rq_desc 0 35931 NULL
+__dax_dev_pmd_fault_fndecl_35932_fields __dax_dev_pmd_fault fndecl 3 35932 NULL
-+dma_buf_size_ddb_input_35933_fields dma_buf_size ddb_input 0 35933 NULL nohasharray
-+length_isp1362_ep_35933_fields length isp1362_ep 0 35933 &dma_buf_size_ddb_input_35933_fields
++length_isp1362_ep_35933_fields length isp1362_ep 0 35933 NULL nohasharray
++dma_buf_size_ddb_input_35933_fields dma_buf_size ddb_input 0 35933 &length_isp1362_ep_35933_fields
+disk_stack_limits_fndecl_35936_fields disk_stack_limits fndecl 3 35936 NULL
+___alloc_bootmem_nopanic_fndecl_35945_fields ___alloc_bootmem_nopanic fndecl 2-3-4 35945 NULL
+isl1208_i2c_read_regs_fndecl_35952_fields isl1208_i2c_read_regs fndecl 4 35952 NULL
+nx_fw_cmd_set_mtu_fndecl_35954_fields nx_fw_cmd_set_mtu fndecl 2 35954 NULL
+fat_uni_to_x8_fndecl_35959_fields fat_uni_to_x8 fndecl 0 35959 NULL
-+rmi_register_desc_calc_size_fndecl_35961_fields rmi_register_desc_calc_size fndecl 0 35961 NULL
+s_root_block_affs_sb_info_35962_fields s_root_block affs_sb_info 0 35962 NULL
++snoop_urb_fndecl_35965_fields snoop_urb fndecl 8 35965 NULL
+num_entries_compat_ip6t_replace_35966_fields num_entries compat_ip6t_replace 0 35966 NULL
+flows_tc_sfq_qopt_35973_fields flows tc_sfq_qopt 0 35973 NULL
+max_df_size_ipq_35974_fields max_df_size ipq 0 35974 NULL nohasharray
@@ -197407,34 +202104,39 @@ index 0000000..6b5367db
+codeword_size_jedec_ecc_info_35980_fields codeword_size jedec_ecc_info 0 35980 NULL
+num_dacs_hda_multi_out_35981_fields num_dacs hda_multi_out 0 35981 NULL
+flags_fscrypt_context_35983_fields flags fscrypt_context 0 35983 NULL
-+gpiod_to_irq_fndecl_35989_fields gpiod_to_irq fndecl 0 35989 NULL
+if_spi_prog_main_firmware_check_len_fndecl_35990_fields if_spi_prog_main_firmware_check_len fndecl 0 35990 NULL
+perf_output_skip_fndecl_35994_fields perf_output_skip fndecl 2 35994 NULL
+mss_cache_tcp_sock_35995_fields mss_cache tcp_sock 0 35995 NULL
+daddr_fsl_edma_hw_tcd_35996_fields daddr fsl_edma_hw_tcd 0 35996 NULL nohasharray
+address_acpi_nfit_system_address_35996_fields address acpi_nfit_system_address 0 35996 &daddr_fsl_edma_hw_tcd_35996_fields
-+fuse_fill_write_pages_fndecl_36001_fields fuse_fill_write_pages fndecl 0-4 36001 NULL nohasharray
-+poll_vardecl_hfcpci_c_36001_fields poll vardecl_hfcpci.c 0 36001 &fuse_fill_write_pages_fndecl_36001_fields
-+ntb_transport_max_size_fndecl_36009_fields ntb_transport_max_size fndecl 0 36009 NULL
++poll_vardecl_hfcpci_c_36001_fields poll vardecl_hfcpci.c 0 36001 NULL nohasharray
++fuse_fill_write_pages_fndecl_36001_fields fuse_fill_write_pages fndecl 4-0 36001 &poll_vardecl_hfcpci_c_36001_fields
++ntb_transport_max_size_fndecl_36009_fields ntb_transport_max_size fndecl 0 36009 NULL nohasharray
++max_rx_kingsun_cb_36009_fields max_rx kingsun_cb 0 36009 &ntb_transport_max_size_fndecl_36009_fields
+__nfs4_proc_set_acl_fndecl_36018_fields __nfs4_proc_set_acl fndecl 3 36018 NULL
+setup_efi_info_memmap_fndecl_36029_fields setup_efi_info_memmap fndecl 4-3-2 36029 NULL
+mpdu_len_iwl_rx_mpdu_desc_36030_fields mpdu_len iwl_rx_mpdu_desc 0 36030 NULL
++xfs_file_dedupe_range_fndecl_36031_fields xfs_file_dedupe_range fndecl 2-5-3 36031 NULL
+NumEraseUnits_NFTLMediaHeader_36036_fields NumEraseUnits NFTLMediaHeader 0 36036 NULL
+insert_bio_sectors_search_36037_fields insert_bio_sectors search 0 36037 NULL
+update_ind_extent_range_fndecl_36049_fields update_ind_extent_range fndecl 3 36049 NULL
+rx_status_len_bcm_rsb_36064_fields rx_status_len bcm_rsb 0 36064 NULL
+piobcnt2k_qib_devdata_36065_fields piobcnt2k qib_devdata 0 36065 NULL
+xfrm_compile_policy_fndecl_36070_fields xfrm_compile_policy fndecl 4 36070 NULL
-+usb_stor_control_msg_fndecl_36073_fields usb_stor_control_msg fndecl 8-2 36073 NULL
-+wa_populate_buf_in_urb_fndecl_36077_fields wa_populate_buf_in_urb fndecl 4-3 36077 NULL
++__kmem_cache_create_usercopy_fndecl_36073_fields __kmem_cache_create_usercopy fndecl 2-3 36073 NULL nohasharray
++usb_stor_control_msg_fndecl_36073_fields usb_stor_control_msg fndecl 8-2 36073 &__kmem_cache_create_usercopy_fndecl_36073_fields
++wa_populate_buf_in_urb_fndecl_36077_fields wa_populate_buf_in_urb fndecl 3-4 36077 NULL
++nfs4_xattr_get_nfs4_acl_fndecl_36079_fields nfs4_xattr_get_nfs4_acl fndecl 6 36079 NULL
+blocksize_alauda_media_info_36080_fields blocksize alauda_media_info 0 36080 NULL
+xfs_extent_busy_insert_fndecl_36087_fields xfs_extent_busy_insert fndecl 3-4-2 36087 NULL
+smq_create_fndecl_36088_fields smq_create fndecl 1 36088 NULL
+wil_write_file_ssid_fndecl_36097_fields wil_write_file_ssid fndecl 3 36097 NULL
+__free_pages_boot_core_fndecl_36098_fields __free_pages_boot_core fndecl 2 36098 NULL
++avc_recv_fndecl_36099_fields avc_recv fndecl 3 36099 NULL
+nr_requests_request_queue_36117_fields nr_requests request_queue 0 36117 NULL
+xfs_trans_read_buf_map_fndecl_36121_fields xfs_trans_read_buf_map fndecl 0 36121 NULL
+dictionary_size_disk_comp_opts_36125_fields dictionary_size disk_comp_opts 0 36125 NULL
++__i2400m_bm_ack_verify_fndecl_36139_fields __i2400m_bm_ack_verify fndecl 0-4 36139 NULL
+x25_sendmsg_fndecl_36140_fields x25_sendmsg fndecl 3 36140 NULL
+f2fs_fiemap_fndecl_36141_fields f2fs_fiemap fndecl 3-4 36141 NULL
+lirc_buffer_init_fndecl_36145_fields lirc_buffer_init fndecl 2 36145 NULL
@@ -197444,10 +202146,13 @@ index 0000000..6b5367db
+ieee80211_send_probe_req_fndecl_36159_fields ieee80211_send_probe_req fndecl 7-5 36159 NULL
+next_nilfs_segsum_info_36161_fields next nilfs_segsum_info 0 36161 NULL
+clone_sources_count_btrfs_ioctl_send_args_36165_fields clone_sources_count btrfs_ioctl_send_args 0 36165 NULL
++gsm_control_reply_fndecl_36166_fields gsm_control_reply fndecl 4 36166 NULL
+vm_mmap_fndecl_36168_fields vm_mmap fndecl 3-0 36168 NULL
-+member_cnt_tipc_mon_domain_36177_fields member_cnt tipc_mon_domain 0 36177 NULL
++qd2offset_fndecl_36177_fields qd2offset fndecl 0 36177 NULL nohasharray
++member_cnt_tipc_mon_domain_36177_fields member_cnt tipc_mon_domain 0 36177 &qd2offset_fndecl_36177_fields
+length_octeon_droq_info_36178_fields length octeon_droq_info 0 36178 NULL
+nr_ion_platform_data_36179_fields nr ion_platform_data 0 36179 NULL
++i915_gem_get_ggtt_size_fndecl_36180_fields i915_gem_get_ggtt_size fndecl 0-2 36180 NULL
+len_ib_ucm_mra_36185_fields len ib_ucm_mra 0 36185 NULL
+flash_size_jffs2_sb_info_36187_fields flash_size jffs2_sb_info 0 36187 NULL
+prealloc_buffer_size_snd_dmaengine_pcm_config_36192_fields prealloc_buffer_size snd_dmaengine_pcm_config 0 36192 NULL
@@ -197463,13 +202168,12 @@ index 0000000..6b5367db
+v4l2_ctrl_g_ctrl_fndecl_36216_fields v4l2_ctrl_g_ctrl fndecl 0 36216 NULL
+bnx2i_send_nl_mesg_fndecl_36218_fields bnx2i_send_nl_mesg fndecl 4 36218 NULL
+alloc_xen_mmio_fndecl_36220_fields alloc_xen_mmio fndecl 0-1 36220 NULL
-+MaxDevHandle_mpt3sas_facts_36227_fields MaxDevHandle mpt3sas_facts 0 36227 NULL nohasharray
-+nid_node_footer_36227_fields nid node_footer 0 36227 &MaxDevHandle_mpt3sas_facts_36227_fields
++nid_node_footer_36227_fields nid node_footer 0 36227 NULL nohasharray
++page_size_spi_eeprom_36227_fields page_size spi_eeprom 0 36227 &nid_node_footer_36227_fields
+reserve_space_fndecl_36229_fields reserve_space fndecl 2 36229 NULL nohasharray
+next_free_nid_f2fs_checkpoint_36229_fields next_free_nid f2fs_checkpoint 0 36229 &reserve_space_fndecl_36229_fields
+add_async_extent_fndecl_36239_fields add_async_extent fndecl 3-2 36239 NULL
-+data_queues_rt2x00_dev_36241_fields data_queues rt2x00_dev 0 36241 NULL nohasharray
-+surfaceram_base_qxl_device_36241_fields surfaceram_base qxl_device 0 36241 &data_queues_rt2x00_dev_36241_fields
++surfaceram_base_qxl_device_36241_fields surfaceram_base qxl_device 0 36241 NULL
+fpage_offs_genwqe_sgl_36247_fields fpage_offs genwqe_sgl 0 36247 NULL
+calc_buffer_ahash_atfm_fndecl_36250_fields calc_buffer_ahash_atfm fndecl 2 36250 NULL
+xfs_imap_fndecl_36254_fields xfs_imap fndecl 3 36254 NULL
@@ -197479,7 +202183,6 @@ index 0000000..6b5367db
+cydata_ofsl_cyttsp4_sysinfo_data_36269_fields cydata_ofsl cyttsp4_sysinfo_data 0 36269 NULL
+num_uf_bufs_bfa_iocfc_fwcfg_s_36271_fields num_uf_bufs bfa_iocfc_fwcfg_s 0 36271 NULL
+s_clusters_per_group_ext4_sb_info_36278_fields s_clusters_per_group ext4_sb_info 0 36278 NULL
-+_dump_buf_dif_order_vardecl_36281_fields _dump_buf_dif_order vardecl 0 36281 NULL
+hci_check_pending_name_fndecl_36282_fields hci_check_pending_name fndecl 5 36282 NULL
+len_ethtool_tunable_36288_fields len ethtool_tunable 0 36288 NULL nohasharray
+calc_sectors_fndecl_36288_fields calc_sectors fndecl 2 36288 &len_ethtool_tunable_36288_fields
@@ -197493,7 +202196,6 @@ index 0000000..6b5367db
+len_etd_priv_36308_fields len etd_priv 0 36308 &snd_dma_alloc_pages_fndecl_36308_fields
+max_transfer_snd_usb_midi_out_endpoint_36311_fields max_transfer snd_usb_midi_out_endpoint 0 36311 NULL
+chunk_size_mdp_superblock_s_36313_fields chunk_size mdp_superblock_s 0 36313 NULL
-+n_descsz_elf64_note_36314_fields n_descsz elf64_note 0 36314 NULL
+dpdData_size_wsm_configuration_36315_fields dpdData_size wsm_configuration 0 36315 NULL
+acpi_tb_parse_root_table_fndecl_36316_fields acpi_tb_parse_root_table fndecl 1 36316 NULL
+fsbno_xfs_alloc_arg_36318_fields fsbno xfs_alloc_arg 0 36318 NULL
@@ -197503,20 +202205,21 @@ index 0000000..6b5367db
+do_verify_xattr_datum_fndecl_36328_fields do_verify_xattr_datum fndecl 0 36328 NULL
+hidp_send_frame_fndecl_36338_fields hidp_send_frame fndecl 3 36338 NULL
+digest_encode_fndecl_36340_fields digest_encode fndecl 0 36340 NULL
-+rds_tcp_data_recv_fndecl_36343_fields rds_tcp_data_recv fndecl 4-3 36343 NULL nohasharray
++rds_tcp_data_recv_fndecl_36343_fields rds_tcp_data_recv fndecl 3-4 36343 NULL nohasharray
+size_rw_module_layout_36343_fields size_rw module_layout 0 36343 &rds_tcp_data_recv_fndecl_36343_fields
-+osd_req_write_kern_fndecl_36349_fields osd_req_write_kern fndecl 5 36349 NULL
+inode_blocks_efs_sb_info_36351_fields inode_blocks efs_sb_info 0 36351 NULL
-+ncommunities_intel_pinctrl_36354_fields ncommunities intel_pinctrl 0 36354 NULL
+ipxrtr_route_packet_fndecl_36359_fields ipxrtr_route_packet fndecl 4 36359 NULL
++vm_stat_account_fndecl_36361_fields vm_stat_account fndecl 3 36361 NULL
+rx_ring_size_adm8211_priv_36391_fields rx_ring_size adm8211_priv 0 36391 NULL
+sdebug_max_queue_vardecl_scsi_debug_c_36393_fields sdebug_max_queue vardecl_scsi_debug.c 0 36393 NULL
+mtu_l2cap_le_conn_rsp_36399_fields mtu l2cap_le_conn_rsp 0 36399 NULL nohasharray
+max_rxsz_ulp_iscsi_info_36399_fields max_rxsz ulp_iscsi_info 0 36399 &mtu_l2cap_le_conn_rsp_36399_fields
++batadv_tt_update_orig_fndecl_36402_fields batadv_tt_update_orig fndecl 4 36402 NULL
+iser_calc_scsi_params_fndecl_36403_fields iser_calc_scsi_params fndecl 2 36403 NULL
+nl80211_send_disconnected_fndecl_36411_fields nl80211_send_disconnected fndecl 5 36411 NULL
+iter_file_splice_write_fndecl_36415_fields iter_file_splice_write fndecl 4 36415 NULL
+data_len_hfa384x_rx_frame_36417_fields data_len hfa384x_rx_frame 0 36417 NULL
++max_msg_length_ishtp_client_properties_36418_fields max_msg_length ishtp_client_properties 0 36418 NULL
+altera_set_ir_pre_fndecl_36420_fields altera_set_ir_pre fndecl 2 36420 NULL
+create_xattr_fndecl_36425_fields create_xattr fndecl 5 36425 NULL
+essid_len_ipw2100_priv_36426_fields essid_len ipw2100_priv 0 36426 NULL
@@ -197532,10 +202235,7 @@ index 0000000..6b5367db
+portnum_lvs_rh_36480_fields portnum lvs_rh 0 36480 NULL
+rx_len_yam_port_36481_fields rx_len yam_port 0 36481 NULL
+fb_show_logo_line_fndecl_36485_fields fb_show_logo_line fndecl 4 36485 NULL nohasharray
-+t_task_lba_se_cmd_36485_fields t_task_lba se_cmd 0 36485 &fb_show_logo_line_fndecl_36485_fields nohasharray
-+i2400m_zrealloc_2x_fndecl_36485_fields i2400m_zrealloc_2x fndecl 3 36485 &t_task_lba_se_cmd_36485_fields
-+do_compat_readv_fndecl_36486_fields do_compat_readv fndecl 3 36486 NULL
-+read_bufsize_carl9170_debugfs_fops_36488_fields read_bufsize carl9170_debugfs_fops 0 36488 NULL
++t_task_lba_se_cmd_36485_fields t_task_lba se_cmd 0 36485 &fb_show_logo_line_fndecl_36485_fields
+tipc_msg_make_bundle_fndecl_36497_fields tipc_msg_make_bundle fndecl 3 36497 NULL
+queue_rx_frame_fndecl_36501_fields queue_rx_frame fndecl 2 36501 NULL
+start_nid_hdac_device_36504_fields start_nid hdac_device 0 36504 NULL
@@ -197545,39 +202245,43 @@ index 0000000..6b5367db
+__i2c_write_fndecl_36516_fields __i2c_write fndecl 6-3 36516 NULL
+hpfs_map_4sectors_fndecl_36523_fields hpfs_map_4sectors fndecl 2 36523 NULL
+igu_sb_cnt_bnx2x_36525_fields igu_sb_cnt bnx2x 0 36525 NULL
-+ue_num_asd_bios_chim_struct_36526_fields ue_num asd_bios_chim_struct 0 36526 NULL
++sdma_descq_cnt_vardecl_sdma_c_36526_fields sdma_descq_cnt vardecl_sdma.c 0 36526 NULL nohasharray
++ue_num_asd_bios_chim_struct_36526_fields ue_num asd_bios_chim_struct 0 36526 &sdma_descq_cnt_vardecl_sdma_c_36526_fields
+ftdi_elan_edset_output_fndecl_36530_fields ftdi_elan_edset_output fndecl 0 36530 NULL
+sk_tcplen_svc_sock_36531_fields sk_tcplen svc_sock 0 36531 NULL
+acpi_os_read_memory_fndecl_36537_fields acpi_os_read_memory fndecl 3-1 36537 NULL
+actual_resp_len_be_cmd_resp_hdr_36543_fields actual_resp_len be_cmd_resp_hdr 0 36543 NULL
+pi_read_regr_fndecl_36548_fields pi_read_regr fndecl 0 36548 NULL
+net2272_write_packet_fndecl_36550_fields net2272_write_packet fndecl 4 36550 NULL
-+ocfs2_fallocate_fndecl_36555_fields ocfs2_fallocate fndecl 3-4 36555 NULL nohasharray
-+capture_chips_pcxhr_mgr_36555_fields capture_chips pcxhr_mgr 0 36555 &ocfs2_fallocate_fndecl_36555_fields
++ocfs2_fallocate_fndecl_36555_fields ocfs2_fallocate fndecl 3-4 36555 NULL
+fb_try_mode_fndecl_36560_fields fb_try_mode fndecl 4 36560 NULL
+fuse_file_compat_ioctl_fndecl_36564_fields fuse_file_compat_ioctl fndecl 2 36564 NULL
++c_ospeed_ktermios_36565_fields c_ospeed ktermios 0 36565 NULL
+by_ceph_frag_tree_split_36567_fields by ceph_frag_tree_split 0 36567 NULL
+sc_sq_depth_svcxprt_rdma_36568_fields sc_sq_depth svcxprt_rdma 0 36568 NULL
+vlan_tag_eth_fast_path_rx_cqe_36569_fields vlan_tag eth_fast_path_rx_cqe 0 36569 NULL
+frag_thresh_orinoco_private_36570_fields frag_thresh orinoco_private 0 36570 NULL
+page_count_agp_memory_36571_fields page_count agp_memory 0 36571 NULL
-+__register_chrdev_fndecl_36572_fields __register_chrdev fndecl 0-3-2-1 36572 NULL
++__register_chrdev_fndecl_36572_fields __register_chrdev fndecl 0-1 36572 NULL
+ceph_msgpool_get_fndecl_36577_fields ceph_msgpool_get fndecl 2 36577 NULL
+ext2_xattr_trusted_set_fndecl_36580_fields ext2_xattr_trusted_set fndecl 6 36580 NULL
+num_shared_regs_intel_uncore_type_36581_fields num_shared_regs intel_uncore_type 0 36581 NULL
++wusb_prf_fndecl_36582_fields wusb_prf fndecl 7 36582 NULL
+rx_ring_size_pcnet32_private_36586_fields rx_ring_size pcnet32_private 0 36586 NULL nohasharray
+vmw_user_dmabuf_alloc_fndecl_36586_fields vmw_user_dmabuf_alloc fndecl 3 36586 &rx_ring_size_pcnet32_private_36586_fields
+bgrt_image_size_vardecl_36594_fields bgrt_image_size vardecl 0 36594 NULL
-+UnitSizeFactor_NFTLMediaHeader_36597_fields UnitSizeFactor NFTLMediaHeader 0 36597 NULL nohasharray
-+num_max_snd_ratden_36597_fields num_max snd_ratden 0 36597 &UnitSizeFactor_NFTLMediaHeader_36597_fields nohasharray
-+mcp23s08_read_regs_fndecl_36597_fields mcp23s08_read_regs fndecl 4 36597 &num_max_snd_ratden_36597_fields
++num_max_snd_ratden_36597_fields num_max snd_ratden 0 36597 NULL nohasharray
++UnitSizeFactor_NFTLMediaHeader_36597_fields UnitSizeFactor NFTLMediaHeader 0 36597 &num_max_snd_ratden_36597_fields nohasharray
++mcp23s08_read_regs_fndecl_36597_fields mcp23s08_read_regs fndecl 4 36597 &UnitSizeFactor_NFTLMediaHeader_36597_fields
+update_block_group_fndecl_36600_fields update_block_group fndecl 4-3 36600 NULL
-+reply_len_sg_header_36605_fields reply_len sg_header 0 36605 NULL nohasharray
-+xfs_dir2_sf_addname_hard_fndecl_36605_fields xfs_dir2_sf_addname_hard fndecl 3 36605 &reply_len_sg_header_36605_fields
++xfs_dir2_sf_addname_hard_fndecl_36605_fields xfs_dir2_sf_addname_hard fndecl 3 36605 NULL nohasharray
++reply_len_sg_header_36605_fields reply_len sg_header 0 36605 &xfs_dir2_sf_addname_hard_fndecl_36605_fields
+drm_mm_insert_node_generic_fndecl_36608_fields drm_mm_insert_node_generic fndecl 3 36608 NULL
++set_user_nice_fndecl_36618_fields set_user_nice fndecl 2 36618 NULL
+f_pos_file_36619_fields f_pos file 0 36619 NULL
+nbd_size_set_fndecl_36620_fields nbd_size_set fndecl 3-4 36620 NULL
+gamma_size_drm_mode_crtc_lut_36622_fields gamma_size drm_mode_crtc_lut 0 36622 NULL
++vlan_core_rx_fast_path_cqe_36625_fields vlan core_rx_fast_path_cqe 0 36625 NULL
+raw_serial_size_x509_certificate_36629_fields raw_serial_size x509_certificate 0 36629 NULL
+block_count_mspro_sys_info_36630_fields block_count mspro_sys_info 0 36630 NULL
+acpi_aml_read_user_fndecl_36632_fields acpi_aml_read_user fndecl 2 36632 NULL
@@ -197586,16 +202290,17 @@ index 0000000..6b5367db
+read_super_block_fndecl_36638_fields read_super_block fndecl 2 36638 NULL
+context_id_iscsi_kwqe_conn_destroy_36653_fields context_id iscsi_kwqe_conn_destroy 0 36653 NULL
+block_write_end_fndecl_36656_fields block_write_end fndecl 0-5 36656 NULL
-+shmem_alloc_page_fndecl_36659_fields shmem_alloc_page fndecl 3 36659 NULL
++__kfifo_dma_in_prepare_r_fndecl_36659_fields __kfifo_dma_in_prepare_r fndecl 4-5 36659 NULL nohasharray
++shmem_alloc_page_fndecl_36659_fields shmem_alloc_page fndecl 3 36659 &__kfifo_dma_in_prepare_r_fndecl_36659_fields
++__tty_alloc_driver_fndecl_36660_fields __tty_alloc_driver fndecl 1 36660 NULL
+dac_channels_mixer_oxygen_model_36662_fields dac_channels_mixer oxygen_model 0 36662 NULL
+regmap_raw_write_fndecl_36664_fields regmap_raw_write fndecl 0 36664 NULL
-+roffset_scifioctl_copy_36667_fields roffset scifioctl_copy 0 36667 NULL
+i_file_acl_lo_ext4_inode_36684_fields i_file_acl_lo ext4_inode 0 36684 NULL
+size_drm_map_36685_fields size drm_map 0 36685 NULL
+size_drm_agp_buffer_36687_fields size drm_agp_buffer 0 36687 NULL
-+nnode_sz_ubifs_info_36688_fields nnode_sz ubifs_info 0 36688 NULL nohasharray
-+esas2r_max_sectors_vardecl_36688_fields esas2r_max_sectors vardecl 0 36688 &nnode_sz_ubifs_info_36688_fields nohasharray
-+out_kvec_bytes_ceph_connection_36688_fields out_kvec_bytes ceph_connection 0 36688 &esas2r_max_sectors_vardecl_36688_fields
++esas2r_max_sectors_vardecl_36688_fields esas2r_max_sectors vardecl 0 36688 NULL nohasharray
++out_kvec_bytes_ceph_connection_36688_fields out_kvec_bytes ceph_connection 0 36688 &esas2r_max_sectors_vardecl_36688_fields nohasharray
++nnode_sz_ubifs_info_36688_fields nnode_sz ubifs_info 0 36688 &out_kvec_bytes_ceph_connection_36688_fields
+rx_buffer_len_atl1c_adapter_36691_fields rx_buffer_len atl1c_adapter 0 36691 NULL
+hga_vram_len_vardecl_hgafb_c_36700_fields hga_vram_len vardecl_hgafb.c 0 36700 NULL
+map_szh_cyttsp4_sysinfo_data_36711_fields map_szh cyttsp4_sysinfo_data 0 36711 NULL
@@ -197606,7 +202311,6 @@ index 0000000..6b5367db
+get_meta_page_fndecl_36742_fields get_meta_page fndecl 2 36742 NULL
+early_reserve_e820_fndecl_36744_fields early_reserve_e820 fndecl 2-1 36744 NULL
+s2255_got_frame_fndecl_36746_fields s2255_got_frame fndecl 2 36746 NULL
-+shmem_xattr_handler_set_fndecl_36751_fields shmem_xattr_handler_set fndecl 6 36751 NULL
+saved_raid_disk_md_rdev_36752_fields saved_raid_disk md_rdev 0 36752 NULL
+ath6kl_wmi_add_krk_cmd_fndecl_36763_fields ath6kl_wmi_add_krk_cmd fndecl 2 36763 NULL
+last_index_zap_details_36766_fields last_index zap_details 0 36766 NULL
@@ -197616,12 +202320,10 @@ index 0000000..6b5367db
+mmio_base_controller_36793_fields mmio_base controller 0 36793 NULL
+rx_count_cooked_sixpack_36794_fields rx_count_cooked sixpack 0 36794 NULL
+pad_bytes_regmap_format_36795_fields pad_bytes regmap_format 0 36795 NULL
-+efi_runtime_map_setup_fndecl_36796_fields efi_runtime_map_setup fndecl 3 36796 NULL
-+sector_stripe_head_36797_fields sector stripe_head 0 36797 NULL nohasharray
-+copy_io_fndecl_36797_fields copy_io fndecl 3 36797 &sector_stripe_head_36797_fields
++sector_stripe_head_36797_fields sector stripe_head 0 36797 NULL
+v4l_bufsize_vardecl_36803_fields v4l_bufsize vardecl 0 36803 NULL
+idetape_chrdev_write_fndecl_36811_fields idetape_chrdev_write fndecl 3 36811 NULL
-+mthca_reg_user_mr_fndecl_36815_fields mthca_reg_user_mr fndecl 2-3 36815 NULL
++mthca_reg_user_mr_fndecl_36815_fields mthca_reg_user_mr fndecl 3-2 36815 NULL
+size_drm_armada_gem_pwrite_36816_fields size drm_armada_gem_pwrite 0 36816 NULL
+mthca_setup_cmd_doorbells_fndecl_36817_fields mthca_setup_cmd_doorbells fndecl 2 36817 NULL
+card_type_nozomi_36822_fields card_type nozomi 0 36822 NULL
@@ -197632,8 +202334,7 @@ index 0000000..6b5367db
+rx_pg_ring_size_bnx2_36835_fields rx_pg_ring_size bnx2 0 36835 NULL
+total_bytes_btrfs_super_block_36845_fields total_bytes btrfs_super_block 0 36845 NULL
+hfsplus_attr_build_key_fndecl_36846_fields hfsplus_attr_build_key fndecl 0 36846 NULL
-+first_user_ctxt_hfi1_devdata_36860_fields first_user_ctxt hfi1_devdata 0 36860 NULL nohasharray
-+raid5_compute_sector_fndecl_36860_fields raid5_compute_sector fndecl 0-2 36860 &first_user_ctxt_hfi1_devdata_36860_fields
++raid5_compute_sector_fndecl_36860_fields raid5_compute_sector fndecl 0-2 36860 NULL
+xfs_alloc_get_rec_fndecl_36869_fields xfs_alloc_get_rec fndecl 0 36869 NULL nohasharray
+acpi_register_gsi_pic_fndecl_36869_fields acpi_register_gsi_pic fndecl 0-2 36869 &xfs_alloc_get_rec_fndecl_36869_fields
+vtotal_drm_display_mode_36870_fields vtotal drm_display_mode 0 36870 NULL
@@ -197648,52 +202349,52 @@ index 0000000..6b5367db
+ocfs2_make_right_split_rec_fndecl_36929_fields ocfs2_make_right_split_rec fndecl 3 36929 NULL nohasharray
+len_xfs_name_36929_fields len xfs_name 0 36929 &ocfs2_make_right_split_rec_fndecl_36929_fields
+nfsacl_decode_fndecl_36931_fields nfsacl_decode fndecl 2-0 36931 NULL
-+page_base_gssp_in_token_36935_fields page_base gssp_in_token 0 36935 NULL
-+end_offset_xilly_buffer_36946_fields end_offset xilly_buffer 0 36946 NULL nohasharray
-+num_sections_nvsp_1_message_send_receive_buffer_complete_36946_fields num_sections nvsp_1_message_send_receive_buffer_complete 0 36946 &end_offset_xilly_buffer_36946_fields
++__xfs_bunmapi_fndecl_36935_fields __xfs_bunmapi fndecl 3 36935 NULL nohasharray
++page_base_gssp_in_token_36935_fields page_base gssp_in_token 0 36935 &__xfs_bunmapi_fndecl_36935_fields
++end_offset_xilly_buffer_36946_fields end_offset xilly_buffer 0 36946 NULL
+priv_size_rtnl_link_ops_36947_fields priv_size rtnl_link_ops 0 36947 NULL
+ntfs_prepare_pages_for_non_resident_write_fndecl_36959_fields ntfs_prepare_pages_for_non_resident_write fndecl 0 36959 NULL
+reserved_kmem_cache_36976_fields reserved kmem_cache 0 36976 NULL
+rx_bufsize_ath_common_36977_fields rx_bufsize ath_common 0 36977 NULL
+usbvision_frames_alloc_fndecl_36983_fields usbvision_frames_alloc fndecl 0-2 36983 NULL
+v_sync_strt_wid_aty128_crtc_36987_fields v_sync_strt_wid aty128_crtc 0 36987 NULL
++size_gb_audio_get_topology_size_response_36992_fields size gb_audio_get_topology_size_response 0 36992 NULL
+lbmAllocate_fndecl_36995_fields lbmAllocate fndecl 2 36995 NULL
+exp_len_ccp_rsa_engine_36998_fields exp_len ccp_rsa_engine 0 36998 NULL
++fp_num_tx_qede_dev_37007_fields fp_num_tx qede_dev 0 37007 NULL
+num_rxp_per_rx_bnad_37010_fields num_rxp_per_rx bnad 0 37010 NULL
+to_fw_map_37020_fields to fw_map 0 37020 NULL
+cb_group_width_exofs_dt_data_map_37027_fields cb_group_width exofs_dt_data_map 0 37027 NULL
+mmio_size_vmw_private_37038_fields mmio_size vmw_private 0 37038 NULL nohasharray
+dirty_poll_interval_fndecl_37038_fields dirty_poll_interval fndecl 0 37038 &mmio_size_vmw_private_37038_fields
+adjust_resource_fndecl_37046_fields adjust_resource fndecl 3-2 37046 NULL
-+n_channels_cfg80211_sched_scan_request_37047_fields n_channels cfg80211_sched_scan_request 0 37047 NULL
+setcc_fndecl_37048_fields setcc fndecl 1 37048 NULL
+stolen_size_i915_ggtt_37050_fields stolen_size i915_ggtt 0 37050 NULL
+yres__sisbios_mode_37051_fields yres _sisbios_mode 0 37051 NULL
-+memory_model_code_mspro_sys_info_37057_fields memory_model_code mspro_sys_info 0 37057 NULL
++mwifiex_11n_rxba_sync_event_fndecl_37057_fields mwifiex_11n_rxba_sync_event fndecl 3 37057 NULL nohasharray
++memory_model_code_mspro_sys_info_37057_fields memory_model_code mspro_sys_info 0 37057 &mwifiex_11n_rxba_sync_event_fndecl_37057_fields
+neq_vf_resources_37066_fields neq vf_resources 0 37066 NULL
+mcp4131_read_fndecl_37067_fields mcp4131_read fndecl 3 37067 NULL
+vmw_cmdbuf_reserve_fndecl_37071_fields vmw_cmdbuf_reserve fndecl 2 37071 NULL
-+driver_data_acpi_device_id_37074_fields driver_data acpi_device_id 0 37074 NULL
+rq_xprt_hlen_svc_rqst_37082_fields rq_xprt_hlen svc_rqst 0 37082 NULL
-+rtc_devt_vardecl_rtc_dev_c_37090_fields rtc_devt vardecl_rtc-dev.c 0 37090 NULL
-+filter_get_rx_ids_efx_nic_type_37093_fields filter_get_rx_ids efx_nic_type 0 37093 NULL
+cx25840_ir_rx_read_fndecl_37095_fields cx25840_ir_rx_read fndecl 3 37095 NULL
+gfs2_meta_ra_fndecl_37101_fields gfs2_meta_ra fndecl 2 37101 NULL
+filled_kobil_private_37104_fields filled kobil_private 0 37104 NULL
-+rx_ring_size_bnxt_37115_fields rx_ring_size bnxt 0 37115 NULL nohasharray
-+vlan_tag_rx_return_desc_37115_fields vlan_tag rx_return_desc 0 37115 &rx_ring_size_bnxt_37115_fields
++vlan_tag_rx_return_desc_37115_fields vlan_tag rx_return_desc 0 37115 NULL nohasharray
++rx_ring_size_bnxt_37115_fields rx_ring_size bnxt 0 37115 &vlan_tag_rx_return_desc_37115_fields
+ocfs2_check_if_ancestor_fndecl_37125_fields ocfs2_check_if_ancestor fndecl 2 37125 NULL
+sc_blk_cnt_nilfs_sc_info_37130_fields sc_blk_cnt nilfs_sc_info 0 37130 NULL nohasharray
+__rh_alloc_fndecl_37130_fields __rh_alloc fndecl 2 37130 &sc_blk_cnt_nilfs_sc_info_37130_fields
+nfs_updatepage_fndecl_37131_fields nfs_updatepage fndecl 3-4 37131 NULL
++of_property_read_variable_u32_array_fndecl_37132_fields of_property_read_variable_u32_array fndecl 0 37132 NULL
+num_report_ids_mxt_object_37133_fields num_report_ids mxt_object 0 37133 NULL
+audio_mute_fndecl_37139_fields audio_mute fndecl 2 37139 NULL
+wdata_send_pages_fndecl_37142_fields wdata_send_pages fndecl 2 37142 NULL
-+num_parts_cmdline_mtd_partition_37144_fields num_parts cmdline_mtd_partition 0 37144 NULL
-+__xfs_seek_hole_data_fndecl_37159_fields __xfs_seek_hole_data fndecl 0-2-3 37159 NULL
++hvutil_transport_send_fndecl_37145_fields hvutil_transport_send fndecl 3 37145 NULL
++__xfs_seek_hole_data_fndecl_37159_fields __xfs_seek_hole_data fndecl 2-3-0 37159 NULL nohasharray
++mlx5_query_port_pvlc_fndecl_37159_fields mlx5_query_port_pvlc fndecl 3 37159 &__xfs_seek_hole_data_fndecl_37159_fields
+max_pdu_size_l2cap_conf_rfc_37161_fields max_pdu_size l2cap_conf_rfc 0 37161 NULL
-+pcm_channels_amdtp_tscm_37163_fields pcm_channels amdtp_tscm 0 37163 NULL nohasharray
-+ld_tgt_count_lov_desc_37163_fields ld_tgt_count lov_desc 0 37163 &pcm_channels_amdtp_tscm_37163_fields
++pcm_channels_amdtp_tscm_37163_fields pcm_channels amdtp_tscm 0 37163 NULL
+l_logBBstart_xlog_37164_fields l_logBBstart xlog 0 37164 NULL
+txCredits_edgeport_port_37166_fields txCredits edgeport_port 0 37166 NULL
+read_mmp_block_fndecl_37168_fields read_mmp_block fndecl 3 37168 NULL
@@ -197704,7 +202405,6 @@ index 0000000..6b5367db
+sisusbcon_do_font_op_fndecl_37180_fields sisusbcon_do_font_op fndecl 9 37180 NULL nohasharray
+octeon_init_droq_fndecl_37180_fields octeon_init_droq fndecl 4-3 37180 &sisusbcon_do_font_op_fndecl_37180_fields
+per_io_data_size_dm_target_37185_fields per_io_data_size dm_target 0 37185 NULL
-+of_address_to_resource_fndecl_37191_fields of_address_to_resource fndecl 2 37191 NULL
+rx_status_0_ath5k_hw_rx_status_37197_fields rx_status_0 ath5k_hw_rx_status 0 37197 NULL
+nbperpage_jfs_sb_info_37199_fields nbperpage jfs_sb_info 0 37199 NULL
+digestsize_shash_alg_37203_fields digestsize shash_alg 0 37203 NULL
@@ -197713,15 +202413,17 @@ index 0000000..6b5367db
+num_VFs_pci_sriov_37207_fields num_VFs pci_sriov 0 37207 NULL
+test_hole_first_fndecl_37215_fields test_hole_first fndecl 1-2 37215 NULL
+xfs_dir2_node_trim_free_fndecl_37218_fields xfs_dir2_node_trim_free fndecl 2 37218 NULL
++rpcrdma_get_sendbuf_fndecl_37220_fields rpcrdma_get_sendbuf fndecl 3 37220 NULL
+height_fb_image_37238_fields height fb_image 0 37238 NULL
+write_max_at24_data_37243_fields write_max at24_data 0 37243 NULL
+csum_and_copy_to_iter_fndecl_37244_fields csum_and_copy_to_iter fndecl 2 37244 NULL
-+test_unaligned_bulk_fndecl_37246_fields test_unaligned_bulk fndecl 2 37246 NULL
++test_unaligned_bulk_fndecl_37246_fields test_unaligned_bulk fndecl 2-3 37246 NULL
+i_refcount_loc_ocfs2_dinode_37249_fields i_refcount_loc ocfs2_dinode 0 37249 NULL
-+hfsplus_find_attr_fndecl_37253_fields hfsplus_find_attr fndecl 0 37253 NULL
++hfsplus_find_attr_fndecl_37253_fields hfsplus_find_attr fndecl 0 37253 NULL nohasharray
++beiscsi_complete_pdu_fndecl_37253_fields beiscsi_complete_pdu fndecl 4 37253 &hfsplus_find_attr_fndecl_37253_fields
+ath6kl_wmi_ap_set_beacon_intvl_cmd_fndecl_37254_fields ath6kl_wmi_ap_set_beacon_intvl_cmd fndecl 2 37254 NULL
+pfkey_sockaddr_pair_size_fndecl_37257_fields pfkey_sockaddr_pair_size fndecl 0 37257 NULL
-+size_uhci_debug_37265_fields size uhci_debug 0 37265 NULL
++isdn_writebuf_stub_fndecl_37260_fields isdn_writebuf_stub fndecl 4 37260 NULL
+__pskb_trim_head_fndecl_37267_fields __pskb_trim_head fndecl 2 37267 NULL
+ieee80211_rx_radiotap_hdrlen_fndecl_37268_fields ieee80211_rx_radiotap_hdrlen fndecl 0 37268 NULL
+blk_queue_update_dma_pad_fndecl_37275_fields blk_queue_update_dma_pad fndecl 2 37275 NULL
@@ -197732,21 +202434,21 @@ index 0000000..6b5367db
+do_ncp_rpc_call_fndecl_37285_fields do_ncp_rpc_call fndecl 2-4 37285 NULL
+aac_rx_ioremap_fndecl_37289_fields aac_rx_ioremap fndecl 2 37289 NULL
+lcd_hsync_len_atyfb_par_37297_fields lcd_hsync_len atyfb_par 0 37297 NULL
-+svc_partial_recvfrom_fndecl_37311_fields svc_partial_recvfrom fndecl 0-5-4-3 37311 NULL
-+xfs_xattr_iomap_begin_fndecl_37314_fields xfs_xattr_iomap_begin fndecl 3-2 37314 NULL
++svc_partial_recvfrom_fndecl_37311_fields svc_partial_recvfrom fndecl 0-5-4 37311 NULL
++xfs_xattr_iomap_begin_fndecl_37314_fields xfs_xattr_iomap_begin fndecl 2-3 37314 NULL
+tx_win_size_mwifiex_ie_types_btcoex_aggr_win_size_37317_fields tx_win_size mwifiex_ie_types_btcoex_aggr_win_size 0 37317 NULL
+size_dm_header_37319_fields size dm_header 0 37319 NULL
+mt76_mac_process_rx_fndecl_37334_fields mt76_mac_process_rx fndecl 0 37334 NULL
+ie_len_cfg80211_sched_scan_request_37335_fields ie_len cfg80211_sched_scan_request 0 37335 NULL nohasharray
+ufs_change_blocknr_fndecl_37335_fields ufs_change_blocknr fndecl 2-4-5 37335 &ie_len_cfg80211_sched_scan_request_37335_fields
+ud_cursor_fndecl_37338_fields ud_cursor fndecl 4 37338 NULL
-+hso_serial_common_create_fndecl_37343_fields hso_serial_common_create fndecl 3 37343 NULL
++hso_serial_common_create_fndecl_37343_fields hso_serial_common_create fndecl 3-4 37343 NULL
+dma_handle_usb_memory_37350_fields dma_handle usb_memory 0 37350 NULL
+blksize_fuse_mount_data_37357_fields blksize fuse_mount_data 0 37357 NULL
+pdev_id_sm501_devdata_37360_fields pdev_id sm501_devdata 0 37360 NULL
+rc_len_whcrc_37363_fields rc_len whcrc 0 37363 NULL
+gsm_change_mtu_fndecl_37364_fields gsm_change_mtu fndecl 2 37364 NULL
-+alauda_read_data_fndecl_37367_fields alauda_read_data fndecl 2 37367 NULL
++alauda_read_data_fndecl_37367_fields alauda_read_data fndecl 3-2 37367 NULL
+peer_addr_len_drbd_connection_37371_fields peer_addr_len drbd_connection 0 37371 NULL
+virtscsi_add_cmd_fndecl_37379_fields virtscsi_add_cmd fndecl 3-4 37379 NULL nohasharray
+size_list_size_vc4_bo_cache_37379_fields size_list_size vc4_bo_cache 0 37379 &virtscsi_add_cmd_fndecl_37379_fields
@@ -197762,34 +202464,31 @@ index 0000000..6b5367db
+hr_block_bits_o2hb_region_37433_fields hr_block_bits o2hb_region 0 37433 NULL
+radeon_gart_size_vardecl_37434_fields radeon_gart_size vardecl 0 37434 NULL nohasharray
+inode_table_ext4_new_group_data_37434_fields inode_table ext4_new_group_data 0 37434 &radeon_gart_size_vardecl_37434_fields
++ipv6_renew_options_kern_fndecl_37436_fields ipv6_renew_options_kern fndecl 5 37436 NULL
+dib0700_ctrl_rd_fndecl_37445_fields dib0700_ctrl_rd fndecl 0 37445 NULL
+ag6xx_recv_fndecl_37448_fields ag6xx_recv fndecl 3 37448 NULL
+size_erst_record_id_cache_37450_fields size erst_record_id_cache 0 37450 NULL
+right_margin_fb_var_screeninfo_37453_fields right_margin fb_var_screeninfo 0 37453 NULL nohasharray
+file_size_squashfs_dir_inode_37453_fields file_size squashfs_dir_inode 0 37453 &right_margin_fb_var_screeninfo_37453_fields
-+header_size_rxrpc_connection_37458_fields header_size rxrpc_connection 0 37458 NULL
+bi_sector_bvec_iter_37467_fields bi_sector bvec_iter 0 37467 NULL
+rate_ua101_37469_fields rate ua101 0 37469 NULL
+length_drm_event_37471_fields length drm_event 0 37471 NULL
+s_apbshift_ufs_sb_private_info_37473_fields s_apbshift ufs_sb_private_info 0 37473 NULL
-+TupleLink_tuple_t_37482_fields TupleLink tuple_t 0 37482 NULL nohasharray
-+do_compat_preadv64_fndecl_37482_fields do_compat_preadv64 fndecl 3 37482 &TupleLink_tuple_t_37482_fields
-+size_ctxt_eager_bufs_37485_fields size ctxt_eager_bufs 0 37485 NULL nohasharray
-+ath10k_mac_create_fndecl_37485_fields ath10k_mac_create fndecl 1 37485 &size_ctxt_eager_bufs_37485_fields
++TupleLink_tuple_t_37482_fields TupleLink tuple_t 0 37482 NULL
++size_ctxt_eager_bufs_37485_fields size ctxt_eager_bufs 0 37485 NULL
+params_len_nfc_evt_transaction_37500_fields params_len nfc_evt_transaction 0 37500 NULL
+lines_ivtv_osd_coords_37504_fields lines ivtv_osd_coords 0 37504 NULL nohasharray
+heads_mspro_devinfo_37504_fields heads mspro_devinfo 0 37504 &lines_ivtv_osd_coords_37504_fields
+ks8851_rdfifo_fndecl_37510_fields ks8851_rdfifo fndecl 3 37510 NULL
-+inode_newsize_ok_fndecl_37511_fields inode_newsize_ok fndecl 0 37511 NULL
-+__data_len_request_37523_fields __data_len request 0 37523 NULL nohasharray
-+etherMtu_mac_eeprom_port_cfg_37523_fields etherMtu_mac eeprom_port_cfg 0 37523 &__data_len_request_37523_fields
++inode_newsize_ok_fndecl_37511_fields inode_newsize_ok fndecl 0-2 37511 NULL
++etherMtu_mac_eeprom_port_cfg_37523_fields etherMtu_mac eeprom_port_cfg 0 37523 NULL nohasharray
++__data_len_request_37523_fields __data_len request 0 37523 &etherMtu_mac_eeprom_port_cfg_37523_fields
++line_max_gb_gpio_controller_37526_fields line_max gb_gpio_controller 0 37526 NULL
+efx_realloc_channels_fndecl_37528_fields efx_realloc_channels fndecl 2-3 37528 NULL
+num_txd_netxen_adapter_37529_fields num_txd netxen_adapter 0 37529 NULL
-+ieee80211_bss_info_update_fndecl_37537_fields ieee80211_bss_info_update fndecl 4 37537 NULL nohasharray
-+dwords_qib_verbs_txreq_37537_fields dwords qib_verbs_txreq 0 37537 &ieee80211_bss_info_update_fndecl_37537_fields
-+btrfs_io_bio_alloc_fndecl_37544_fields btrfs_io_bio_alloc fndecl 2 37544 NULL
-+divisor_sfq_sched_data_37546_fields divisor sfq_sched_data 0 37546 NULL nohasharray
-+keylen_ppp_mppe_state_37546_fields keylen ppp_mppe_state 0 37546 &divisor_sfq_sched_data_37546_fields
++ieee80211_bss_info_update_fndecl_37537_fields ieee80211_bss_info_update fndecl 4 37537 NULL
++keylen_ppp_mppe_state_37546_fields keylen ppp_mppe_state 0 37546 NULL nohasharray
++divisor_sfq_sched_data_37546_fields divisor sfq_sched_data 0 37546 &keylen_ppp_mppe_state_37546_fields
+extent_shift_ecryptfs_crypt_stat_37548_fields extent_shift ecryptfs_crypt_stat 0 37548 NULL
+dln2_transfer_fndecl_37576_fields dln2_transfer fndecl 0 37576 NULL
+len_efx_rx_buffer_37579_fields len efx_rx_buffer 0 37579 NULL
@@ -197802,6 +202501,7 @@ index 0000000..6b5367db
+rmtblkcnt2_xfs_da_args_37635_fields rmtblkcnt2 xfs_da_args 0 37635 NULL
+b_in_mon_reader_bin_37636_fields b_in mon_reader_bin 0 37636 NULL nohasharray
+chain_segment_sz_MPT3SAS_ADAPTER_37636_fields chain_segment_sz MPT3SAS_ADAPTER 0 37636 &b_in_mon_reader_bin_37636_fields
++dom_gen_tipc_monitor_37642_fields dom_gen tipc_monitor 0 37642 NULL
+addrlen_rpc_xprt_37643_fields addrlen rpc_xprt 0 37643 NULL
+alloc_ldt_struct_fndecl_37649_fields alloc_ldt_struct fndecl 1 37649 NULL
+cache_size_cache_37650_fields cache_size cache 0 37650 NULL
@@ -197815,7 +202515,6 @@ index 0000000..6b5367db
+lastextent_efs_inode_info_37681_fields lastextent efs_inode_info 0 37681 NULL
+zm_wmfw_adsp2_alg_hdr_37694_fields zm wmfw_adsp2_alg_hdr 0 37694 NULL
+usb_ftdi_elan_edset_setup_fndecl_37695_fields usb_ftdi_elan_edset_setup fndecl 0 37695 NULL
-+snic_trace_max_pages_vardecl_37696_fields snic_trace_max_pages vardecl 0 37696 NULL
+orig_video_points_screen_info_37702_fields orig_video_points screen_info 0 37702 NULL
+num_tx_ring_sh_eth_private_37717_fields num_tx_ring sh_eth_private 0 37717 NULL
+regset_tls_get_fndecl_37721_fields regset_tls_get fndecl 3 37721 NULL
@@ -197824,10 +202523,12 @@ index 0000000..6b5367db
+des3_dwceqos_dma_desc_37725_fields des3 dwceqos_dma_desc 0 37725 NULL
+cciss_geometry_inquiry_fndecl_37730_fields cciss_geometry_inquiry fndecl 4 37730 NULL
+sk_wmem_queued_sock_37733_fields sk_wmem_queued sock 0 37733 NULL
++ieee80211_aes_gcm_encrypt_fndecl_37737_fields ieee80211_aes_gcm_encrypt fndecl 5 37737 NULL
+len_cap_mon_bin_hdr_37739_fields len_cap mon_bin_hdr 0 37739 NULL
+cryptlen_skcipher_request_37750_fields cryptlen skcipher_request 0 37750 NULL
+num_enh_eq_cfgs_wm8994_pdata_37752_fields num_enh_eq_cfgs wm8994_pdata 0 37752 NULL
+vmw_kms_ldu_do_dmabuf_dirty_fndecl_37757_fields vmw_kms_ldu_do_dmabuf_dirty fndecl 6 37757 NULL
++ath6kl_dbg_dump_fndecl_37760_fields ath6kl_dbg_dump fndecl 5 37760 NULL
+length_acpi_object_buffer_37768_fields length acpi_object_buffer 0 37768 NULL
+prot_length_se_cmd_37769_fields prot_length se_cmd 0 37769 NULL
+access_length_acpi_object_region_field_37774_fields access_length acpi_object_region_field 0 37774 NULL
@@ -197836,15 +202537,13 @@ index 0000000..6b5367db
+ext4_init_dot_dotdot_fndecl_37792_fields ext4_init_dot_dotdot fndecl 4-3 37792 NULL
+update_interval_frames_snd_card_asihpi_37794_fields update_interval_frames snd_card_asihpi 0 37794 NULL
+bytes_per_block_svga3d_surface_desc_37798_fields bytes_per_block svga3d_surface_desc 0 37798 NULL
-+nilfs_sufile_read_fndecl_37800_fields nilfs_sufile_read fndecl 2 37800 NULL nohasharray
-+gso_max_segs_net_device_37800_fields gso_max_segs net_device 0 37800 &nilfs_sufile_read_fndecl_37800_fields
++gso_max_segs_net_device_37800_fields gso_max_segs net_device 0 37800 NULL nohasharray
++nilfs_sufile_read_fndecl_37800_fields nilfs_sufile_read fndecl 2 37800 &gso_max_segs_net_device_37800_fields
+eo_get_last_eb_blk_ocfs2_extent_tree_operations_37802_fields eo_get_last_eb_blk ocfs2_extent_tree_operations 0 37802 NULL
-+exec_verb_hdac_device_37803_fields exec_verb hdac_device 0 37803 NULL
+word_4_ns_rsqe_37805_fields word_4 ns_rsqe 0 37805 NULL
+gid_tbl_len_ib_port_attr_37809_fields gid_tbl_len ib_port_attr 0 37809 NULL nohasharray
+devnum_genwqe_genwqe_dev_37809_fields devnum_genwqe genwqe_dev 0 37809 &gid_tbl_len_ib_port_attr_37809_fields
+num_vectors_i40e_virtchnl_iwarp_qvlist_info_37812_fields num_vectors i40e_virtchnl_iwarp_qvlist_info 0 37812 NULL
-+touchpad_num_ad714x_platform_data_37818_fields touchpad_num ad714x_platform_data 0 37818 NULL
+out_ep_snd_usb_midi_endpoint_info_37819_fields out_ep snd_usb_midi_endpoint_info 0 37819 NULL
+max_header_size_ircomm_tty_cb_37822_fields max_header_size ircomm_tty_cb 0 37822 NULL
+my_addr_len_drbd_connection_37828_fields my_addr_len drbd_connection 0 37828 NULL
@@ -197852,25 +202551,25 @@ index 0000000..6b5367db
+mru_syncppp_37835_fields mru syncppp 0 37835 NULL
+slot_width_mvs_chip_info_37839_fields slot_width mvs_chip_info 0 37839 NULL
+ra_tid_iwlagn_tx_resp_37853_fields ra_tid iwlagn_tx_resp 0 37853 NULL
-+nents_usnic_uiom_chunk_37860_fields nents usnic_uiom_chunk 0 37860 NULL
++nents_usnic_uiom_chunk_37860_fields nents usnic_uiom_chunk 0 37860 NULL nohasharray
++__pci_enable_msi_range_fndecl_37860_fields __pci_enable_msi_range fndecl 3 37860 &nents_usnic_uiom_chunk_37860_fields
+assoclen_aead_request_37866_fields assoclen aead_request 0 37866 NULL
+xdr_copy_to_scratch_fndecl_37868_fields xdr_copy_to_scratch fndecl 2 37868 NULL nohasharray
+chunk_io_fndecl_37868_fields chunk_io fndecl 3 37868 &xdr_copy_to_scratch_fndecl_37868_fields
+btrfs_set_header_nritems_fndecl_37869_fields btrfs_set_header_nritems fndecl 2 37869 NULL
-+hx8357_spi_write_then_read_fndecl_37879_fields hx8357_spi_write_then_read fndecl 5 37879 NULL
++hx8357_spi_write_then_read_fndecl_37879_fields hx8357_spi_write_then_read fndecl 3-5 37879 NULL
+leaf_delete_items_fndecl_37885_fields leaf_delete_items fndecl 5 37885 NULL
+____alloc_ei_netdev_fndecl_37888_fields ____alloc_ei_netdev fndecl 1 37888 NULL
+dm_bufio_client_create_fndecl_37889_fields dm_bufio_client_create fndecl 2 37889 NULL
+gss_wrap_kerberos_fndecl_37890_fields gss_wrap_kerberos fndecl 2 37890 NULL
-+bulk_in_ipheth_device_37894_fields bulk_in ipheth_device 0 37894 NULL nohasharray
-+xfs_buf_get_uncached_fndecl_37894_fields xfs_buf_get_uncached fndecl 2 37894 &bulk_in_ipheth_device_37894_fields
++xfs_buf_get_uncached_fndecl_37894_fields xfs_buf_get_uncached fndecl 2 37894 NULL nohasharray
++bulk_in_ipheth_device_37894_fields bulk_in ipheth_device 0 37894 &xfs_buf_get_uncached_fndecl_37894_fields
+prod_xfs_alloc_arg_37897_fields prod xfs_alloc_arg 0 37897 NULL
-+calc_send_wqe_fndecl_37899_fields calc_send_wqe fndecl 0 37899 NULL nohasharray
-+logi_dj_hidpp_event_fndecl_37899_fields logi_dj_hidpp_event fndecl 4 37899 &calc_send_wqe_fndecl_37899_fields
++calc_send_wqe_fndecl_37899_fields calc_send_wqe fndecl 0 37899 NULL
+vc4_get_cache_list_for_size_fndecl_37902_fields vc4_get_cache_list_for_size fndecl 2 37902 NULL
+datalen_user_key_payload_37906_fields datalen user_key_payload 0 37906 NULL
+pasid_kfd_process_37907_fields pasid kfd_process 0 37907 NULL
-+input_report_size_rmi_data_37929_fields input_report_size rmi_data 0 37929 NULL
++mlx5_set_port_qetcr_reg_fndecl_37932_fields mlx5_set_port_qetcr_reg fndecl 3 37932 NULL
+ep_urb_context_37938_fields ep urb_context 0 37938 NULL
+phys_memory_base_mgsl_struct_37952_fields phys_memory_base mgsl_struct 0 37952 NULL
+wpa_ie_len_islpci_bss_wpa_ie_37953_fields wpa_ie_len islpci_bss_wpa_ie 0 37953 NULL
@@ -197880,7 +202579,6 @@ index 0000000..6b5367db
+consume_size_vmci_qp_alloc_info_vmvm_37962_fields consume_size vmci_qp_alloc_info_vmvm 0 37962 NULL
+unmap_vmas_fndecl_37967_fields unmap_vmas fndecl 4-3 37967 NULL
+count_nfsd_readres_37988_fields count nfsd_readres 0 37988 NULL
-+nlmsvc_lookup_host_fndecl_37992_fields nlmsvc_lookup_host fndecl 3 37992 NULL
+old_blkaddr_f2fs_io_info_37994_fields old_blkaddr f2fs_io_info 0 37994 NULL nohasharray
+data_size_cyttsp4_sysinfo_ofs_37994_fields data_size cyttsp4_sysinfo_ofs 0 37994 &old_blkaddr_f2fs_io_info_37994_fields
+size_qla_flt_region_37995_fields size qla_flt_region 0 37995 NULL
@@ -197888,26 +202586,28 @@ index 0000000..6b5367db
+bt_sock_stream_recvmsg_fndecl_37997_fields bt_sock_stream_recvmsg fndecl 3 37997 NULL
+icmp_manip_pkt_fndecl_38011_fields icmp_manip_pkt fndecl 4 38011 NULL
+rfcomm_tty_write_fndecl_38016_fields rfcomm_tty_write fndecl 3 38016 NULL
-+max_cmnds_vardecl_aic94xx_hwi_c_38022_fields max_cmnds vardecl_aic94xx_hwi.c 0 38022 NULL nohasharray
-+l_len_xfs_flock64_38022_fields l_len xfs_flock64 0 38022 &max_cmnds_vardecl_aic94xx_hwi_c_38022_fields
++l_len_xfs_flock64_38022_fields l_len xfs_flock64 0 38022 NULL
+num_entries_ipt_replace_38023_fields num_entries ipt_replace 0 38023 NULL
+iriap_connect_confirm_fndecl_38027_fields iriap_connect_confirm fndecl 5 38027 NULL
+ath6kl_set_bitrate_mask64_fndecl_38029_fields ath6kl_set_bitrate_mask64 fndecl 2 38029 NULL
+sensb_res_len_nfc_target_38034_fields sensb_res_len nfc_target 0 38034 NULL
-+ip6_tnl_change_mtu_fndecl_38041_fields ip6_tnl_change_mtu fndecl 2 38041 NULL nohasharray
-+write_page_fndecl_38041_fields write_page fndecl 2 38041 &ip6_tnl_change_mtu_fndecl_38041_fields
++parse_msg_strp_callbacks_38035_fields parse_msg strp_callbacks 0 38035 NULL
++ip6_tnl_change_mtu_fndecl_38041_fields ip6_tnl_change_mtu fndecl 2 38041 NULL
+x25_negotiate_facilities_fndecl_38044_fields x25_negotiate_facilities fndecl 0 38044 NULL
-+open_devices_btrfs_fs_devices_38045_fields open_devices btrfs_fs_devices 0 38045 NULL
++open_devices_btrfs_fs_devices_38045_fields open_devices btrfs_fs_devices 0 38045 NULL nohasharray
++aac_convert_sgraw2_fndecl_38045_fields aac_convert_sgraw2 fndecl 2-4 38045 &open_devices_btrfs_fs_devices_38045_fields
+reference_rate_vardecl_xfi_c_38047_fields reference_rate vardecl_xfi.c 0 38047 NULL
+group_devt_vfio_38048_fields group_devt vfio 0 38048 NULL
+offset_drm_local_map_38055_fields offset drm_local_map 0 38055 NULL
-+isd200_set_srb_fndecl_38056_fields isd200_set_srb fndecl 4 38056 NULL
++isd200_set_srb_fndecl_38056_fields isd200_set_srb fndecl 4 38056 NULL nohasharray
++nrpacks_vardecl_usbusx2yaudio_c_38056_fields nrpacks vardecl_usbusx2yaudio.c 0 38056 &isd200_set_srb_fndecl_38056_fields
+sctp_auth_create_key_fndecl_38058_fields sctp_auth_create_key fndecl 1 38058 NULL nohasharray
+length_ipw_rx_packet_38058_fields length ipw_rx_packet 0 38058 &sctp_auth_create_key_fndecl_38058_fields
+add_vol_fndecl_38066_fields add_vol fndecl 3-6 38066 NULL
+extent_fiemap_fndecl_38070_fields extent_fiemap fndecl 4-3 38070 NULL
+numPartitionMaps_logicalVolDesc_38073_fields numPartitionMaps logicalVolDesc 0 38073 NULL
+length_wpa_param_38074_fields length wpa_param 0 38074 NULL
++add_to_pipe_fndecl_38078_fields add_to_pipe fndecl 0 38078 NULL
+hfsplus_submit_bio_fndecl_38085_fields hfsplus_submit_bio fndecl 2 38085 NULL
+xfs_rmap_update_fndecl_38088_fields xfs_rmap_update fndecl 0 38088 NULL
+driver_data_pca953x_chip_38096_fields driver_data pca953x_chip 0 38096 NULL
@@ -197922,11 +202622,11 @@ index 0000000..6b5367db
+crtc_h_drm_plane_state_38132_fields crtc_h drm_plane_state 0 38132 NULL
+irq_intel_mid_wdt_pdata_38135_fields irq intel_mid_wdt_pdata 0 38135 NULL
+sfi_sysfs_install_table_fndecl_38139_fields sfi_sysfs_install_table fndecl 1 38139 NULL
-+num_regulators_tps65910_reg_38145_fields num_regulators tps65910_reg 0 38145 NULL
+nentries_ebt_replace_kernel_38149_fields nentries ebt_replace_kernel 0 38149 NULL
-+btrfs_get_io_failure_record_fndecl_38153_fields btrfs_get_io_failure_record fndecl 2-3 38153 NULL
++btrfs_get_io_failure_record_fndecl_38153_fields btrfs_get_io_failure_record fndecl 3-2 38153 NULL
+data_dma_pegasus_38158_fields data_dma pegasus 0 38158 NULL
+xfs_free_extent_fix_freelist_fndecl_38159_fields xfs_free_extent_fix_freelist fndecl 2 38159 NULL
++st_read_fndecl_38176_fields st_read fndecl 3 38176 NULL
+sock_recvmsg_fndecl_38178_fields sock_recvmsg fndecl 0 38178 NULL nohasharray
+__mxt_read_reg_fndecl_38178_fields __mxt_read_reg fndecl 3-0 38178 &sock_recvmsg_fndecl_38178_fields
+zone_end_strip_zone_38191_fields zone_end strip_zone 0 38191 NULL
@@ -197939,10 +202639,12 @@ index 0000000..6b5367db
+ipwireless_network_packet_received_fndecl_38238_fields ipwireless_network_packet_received fndecl 4 38238 NULL
+periodic_bytes_fndecl_38241_fields periodic_bytes fndecl 0 38241 NULL
+submit_bio_start_async_submit_bio_38242_fields submit_bio_start async_submit_bio 0 38242 NULL
++i2400m_bm_cmd_fndecl_38243_fields i2400m_bm_cmd fndecl 0-5 38243 NULL
+get_cell_fndecl_38247_fields get_cell fndecl 2 38247 NULL
+isd200_try_enum_fndecl_38250_fields isd200_try_enum fndecl 2 38250 NULL nohasharray
+name_len_ext2_dir_entry_2_38250_fields name_len ext2_dir_entry_2 0 38250 &isd200_try_enum_fndecl_38250_fields
+alloc_hippi_dev_fndecl_38251_fields alloc_hippi_dev fndecl 1 38251 NULL
++ext2_xattr_get_fndecl_38252_fields ext2_xattr_get fndecl 0 38252 NULL
+bdbars_count_intel8x0m_38253_fields bdbars_count intel8x0m 0 38253 NULL
+bLength_usb_cdc_country_functional_desc_38256_fields bLength usb_cdc_country_functional_desc 0 38256 NULL nohasharray
+rsize_nfs_server_38256_fields rsize nfs_server 0 38256 &bLength_usb_cdc_country_functional_desc_38256_fields
@@ -197950,8 +202652,7 @@ index 0000000..6b5367db
+rq_wqe_count_mlx5_ib_create_wq_38263_fields rq_wqe_count mlx5_ib_create_wq 0 38263 NULL
+start_limited_discovery_fndecl_38264_fields start_limited_discovery fndecl 4 38264 NULL
+id_mlx5_fc_38274_fields id mlx5_fc 0 38274 NULL
-+max_read_sge_ib_qp_38275_fields max_read_sge ib_qp 0 38275 NULL nohasharray
-+prepare_header100_fndecl_38275_fields prepare_header100 fndecl 0 38275 &max_read_sge_ib_qp_38275_fields
++prepare_header100_fndecl_38275_fields prepare_header100 fndecl 0 38275 NULL
+min_pnp_port_38276_fields min pnp_port 0 38276 NULL
+numpmkid_host_if_pmkid_attr_38277_fields numpmkid host_if_pmkid_attr 0 38277 NULL nohasharray
+irnet_connect_confirm_fndecl_38277_fields irnet_connect_confirm fndecl 5 38277 &numpmkid_host_if_pmkid_attr_38277_fields
@@ -197961,14 +202662,16 @@ index 0000000..6b5367db
+height_zoran_v4l_settings_38307_fields height zoran_v4l_settings 0 38307 NULL
+bad_peb_count_ubi_attach_info_38310_fields bad_peb_count ubi_attach_info 0 38310 NULL
+ftid_base_tid_info_38313_fields ftid_base tid_info 0 38313 NULL
++__bestmult_fndecl_38314_fields __bestmult fndecl 2 38314 NULL
++t37_nodes_mxt_dbg_38317_fields t37_nodes mxt_dbg 0 38317 NULL
+nr_siblings_perf_event_38320_fields nr_siblings perf_event 0 38320 NULL
+shader_rec_count_drm_vc4_submit_cl_38324_fields shader_rec_count drm_vc4_submit_cl 0 38324 NULL
-+radeon_kms_compat_ioctl_fndecl_38328_fields radeon_kms_compat_ioctl fndecl 2 38328 NULL
+raydium_i2c_read_fndecl_38332_fields raydium_i2c_read fndecl 4 38332 NULL
-+iov_len_sg_iovec_38337_fields iov_len sg_iovec 0 38337 NULL nohasharray
-+ext_lfb_base_screen_info_38337_fields ext_lfb_base screen_info 0 38337 &iov_len_sg_iovec_38337_fields
-+num_sys_eqs_mlx4_dev_cap_38340_fields num_sys_eqs mlx4_dev_cap 0 38340 NULL
-+record_size_vardecl_mtdoops_c_38343_fields record_size vardecl_mtdoops.c 0 38343 NULL
++ext_lfb_base_screen_info_38337_fields ext_lfb_base screen_info 0 38337 NULL nohasharray
++iov_len_sg_iovec_38337_fields iov_len sg_iovec 0 38337 &ext_lfb_base_screen_info_38337_fields
++xfs_trans_log_finish_bmap_update_fndecl_38341_fields xfs_trans_log_finish_bmap_update fndecl 7-8-9 38341 NULL
++ext2_get_blocks_fndecl_38343_fields ext2_get_blocks fndecl 0 38343 NULL nohasharray
++record_size_vardecl_mtdoops_c_38343_fields record_size vardecl_mtdoops.c 0 38343 &ext2_get_blocks_fndecl_38343_fields
+len_nft_data_desc_38346_fields len nft_data_desc 0 38346 NULL
+shim_offset_sst_res_info_38347_fields shim_offset sst_res_info 0 38347 NULL
+pf_fhlen_nfsd4_putfh_38348_fields pf_fhlen nfsd4_putfh 0 38348 NULL
@@ -197977,11 +202680,12 @@ index 0000000..6b5367db
+pci_sriov_resource_alignment_fndecl_38365_fields pci_sriov_resource_alignment fndecl 0 38365 NULL
+flush_buffer_fndecl_38367_fields flush_buffer fndecl 2 38367 NULL
+ri_length_gfs2_rindex_38375_fields ri_length gfs2_rindex 0 38375 NULL
++wsm_handle_exception_fndecl_38377_fields wsm_handle_exception fndecl 3 38377 NULL
+options_len_ip_tunnel_info_38380_fields options_len ip_tunnel_info 0 38380 NULL nohasharray
+offset_ttm_buffer_object_38380_fields offset ttm_buffer_object 0 38380 &options_len_ip_tunnel_info_38380_fields
-+blk_register_region_fndecl_38387_fields blk_register_region fndecl 2-1 38387 NULL
+ext4_ext_rm_leaf_fndecl_38397_fields ext4_ext_rm_leaf fndecl 5 38397 NULL
+hfsplus_brec_read_fndecl_38399_fields hfsplus_brec_read fndecl 0 38399 NULL
++baud_base_mxser_port_38412_fields baud_base mxser_port 0 38412 NULL
+xdr_xcode_array2_fndecl_38417_fields xdr_xcode_array2 fndecl 2 38417 NULL
+i40iw_cm_reject_fndecl_38423_fields i40iw_cm_reject fndecl 3 38423 NULL nohasharray
+todo_dmxdev_filter_38423_fields todo dmxdev_filter 0 38423 &i40iw_cm_reject_fndecl_38423_fields
@@ -197996,21 +202700,23 @@ index 0000000..6b5367db
+vxge_rx_alloc_fndecl_38443_fields vxge_rx_alloc fndecl 3 38443 NULL
+__ieee80211_tx_skb_tid_band_fndecl_38444_fields __ieee80211_tx_skb_tid_band fndecl 3 38444 NULL nohasharray
+test_ofsh_cyttsp4_sysinfo_data_38444_fields test_ofsh cyttsp4_sysinfo_data 0 38444 &__ieee80211_tx_skb_tid_band_fndecl_38444_fields
-+slave_count_w1_master_38454_fields slave_count w1_master 0 38454 NULL
+blocksize_gss_krb5_enctype_38477_fields blocksize gss_krb5_enctype 0 38477 NULL
+min_pfn_mapped_vardecl_init_c_38481_fields min_pfn_mapped vardecl_init.c 0 38481 NULL
+pnfs_update_layout_fndecl_38495_fields pnfs_update_layout fndecl 3-4 38495 NULL
+create_rcom_fndecl_38501_fields create_rcom fndecl 4 38501 NULL nohasharray
+info_len_ib_ucm_sidr_rep_38501_fields info_len ib_ucm_sidr_rep 0 38501 &create_rcom_fndecl_38501_fields
++nsched_cls_adapter_params_38503_fields nsched_cls adapter_params 0 38503 NULL
+udp_recvmsg_fndecl_38509_fields udp_recvmsg fndecl 3 38509 NULL nohasharray
+msdu_len_htt_rx_offload_msdu_38509_fields msdu_len htt_rx_offload_msdu 0 38509 &udp_recvmsg_fndecl_38509_fields
+isofs_readpages_fndecl_38512_fields isofs_readpages fndecl 4 38512 NULL
++append_eir_data_to_buf_fndecl_38513_fields append_eir_data_to_buf fndecl 0 38513 NULL
+__f2fs_replace_block_fndecl_38514_fields __f2fs_replace_block fndecl 4 38514 NULL
+prepare_merge_dm_exception_store_type_38515_fields prepare_merge dm_exception_store_type 0 38515 NULL
+max_sg_mthca_limits_38517_fields max_sg mthca_limits 0 38517 NULL
+if_broot_bytes_xfs_ifork_38518_fields if_broot_bytes xfs_ifork 0 38518 NULL
+mxuport_process_read_urb_data_fndecl_38523_fields mxuport_process_read_urb_data fndecl 3 38523 NULL
+emu_setup_memblk_fndecl_38524_fields emu_setup_memblk fndecl 5 38524 NULL
++iomap_dirty_actor_fndecl_38528_fields iomap_dirty_actor fndecl 2-3 38528 NULL
+max_pde_used_radeon_vm_38536_fields max_pde_used radeon_vm 0 38536 NULL
+amdgpu_sa_bo_manager_init_fndecl_38537_fields amdgpu_sa_bo_manager_init fndecl 3 38537 NULL
+prism2_ap_translate_scan_fndecl_38540_fields prism2_ap_translate_scan fndecl 0 38540 NULL
@@ -198018,15 +202724,14 @@ index 0000000..6b5367db
+ulist_add_merge_fndecl_38547_fields ulist_add_merge fndecl 0-2-3 38547 NULL nohasharray
+krb5_encrypt_fndecl_38547_fields krb5_encrypt fndecl 5 38547 &ulist_add_merge_fndecl_38547_fields
+fb_base_phys_radeonfb_info_38551_fields fb_base_phys radeonfb_info 0 38551 NULL
-+set_stream_hw_fndecl_38553_fields set_stream_hw fndecl 3 38553 NULL nohasharray
-+tx_win_size_mwifiex_add_ba_param_38553_fields tx_win_size mwifiex_add_ba_param 0 38553 &set_stream_hw_fndecl_38553_fields
++set_stream_hw_fndecl_38553_fields set_stream_hw fndecl 3 38553 NULL
+rx_max_size_rtl_usb_38560_fields rx_max_size rtl_usb 0 38560 NULL
+ext2_alloc_blocks_fndecl_38562_fields ext2_alloc_blocks fndecl 2 38562 NULL
+offset_writequeue_entry_38565_fields offset writequeue_entry 0 38565 NULL
+this_header_vardecl_initramfs_c_38567_fields this_header vardecl_initramfs.c 0 38567 NULL nohasharray
+gfs2_dir_read_leaf_fndecl_38567_fields gfs2_dir_read_leaf fndecl 5 38567 &this_header_vardecl_initramfs_c_38567_fields nohasharray
+htable_size_fndecl_38567_fields htable_size fndecl 0-1 38567 &gfs2_dir_read_leaf_fndecl_38567_fields
-+memblock_alloc_base_nid_fndecl_38568_fields memblock_alloc_base_nid fndecl 2-0-3 38568 NULL
++memblock_alloc_base_nid_fndecl_38568_fields memblock_alloc_base_nid fndecl 2-1-0-3 38568 NULL
+len_port_buffer_38573_fields len port_buffer 0 38573 NULL nohasharray
+setup_dma_urb_38573_fields setup_dma urb 0 38573 &len_port_buffer_38573_fields
+block_mtu_hci_dev_38575_fields block_mtu hci_dev 0 38575 NULL
@@ -198037,12 +202742,11 @@ index 0000000..6b5367db
+sub_alloc_fndecl_38591_fields sub_alloc fndecl 0 38591 NULL
+set_nfilters_fndecl_38597_fields set_nfilters fndecl 2 38597 NULL
+s_cgmask_ufs_sb_private_info_38603_fields s_cgmask ufs_sb_private_info 0 38603 NULL
-+maxburst_usb_ep_38604_fields maxburst usb_ep 0 38604 NULL nohasharray
-+v_offset_v2_38604_fields v offset_v2 0 38604 &maxburst_usb_ep_38604_fields nohasharray
-+reiserfs_posix_acl_from_disk_fndecl_38604_fields reiserfs_posix_acl_from_disk fndecl 2 38604 &v_offset_v2_38604_fields
++reiserfs_posix_acl_from_disk_fndecl_38604_fields reiserfs_posix_acl_from_disk fndecl 2 38604 NULL nohasharray
++v_offset_v2_38604_fields v offset_v2 0 38604 &reiserfs_posix_acl_from_disk_fndecl_38604_fields nohasharray
++maxburst_usb_ep_38604_fields maxburst usb_ep 0 38604 &v_offset_v2_38604_fields
+fpWidth_nvidia_par_38605_fields fpWidth nvidia_par 0 38605 NULL
+p_arglen_rpc_procinfo_38611_fields p_arglen rpc_procinfo 0 38611 NULL
-+mga_compat_ioctl_fndecl_38617_fields mga_compat_ioctl fndecl 2 38617 NULL
+cxgbit_alloc_skb_fndecl_38618_fields cxgbit_alloc_skb fndecl 2 38618 NULL nohasharray
+max_wqe_rqe_ocrdma_create_qp_rsp_38618_fields max_wqe_rqe ocrdma_create_qp_rsp 0 38618 &cxgbit_alloc_skb_fndecl_38618_fields
+pageshift_sddr55_card_info_38623_fields pageshift sddr55_card_info 0 38623 NULL
@@ -198058,34 +202762,31 @@ index 0000000..6b5367db
+ieee80211_send_null_response_fndecl_38650_fields ieee80211_send_null_response fndecl 2 38650 &intel_lr_context_size_fndecl_38650_fields
+truncate_pagecache_range_fndecl_38652_fields truncate_pagecache_range fndecl 2-3 38652 NULL
+rx_buffer_len_igbvf_adapter_38659_fields rx_buffer_len igbvf_adapter 0 38659 NULL
-+hid_parse_report_fndecl_38666_fields hid_parse_report fndecl 3 38666 NULL
+def_bpp_mb862xx_gc_mode_38668_fields def_bpp mb862xx_gc_mode 0 38668 NULL
-+tty_cdev_add_fndecl_38673_fields tty_cdev_add fndecl 4-2 38673 NULL
-+drm_compat_ioctl_fndecl_38678_fields drm_compat_ioctl fndecl 2 38678 NULL
+txq_max_tg3_38686_fields txq_max tg3 0 38686 NULL
+sc_uaddr_len_nfs4_setclientid_38689_fields sc_uaddr_len nfs4_setclientid 0 38689 NULL
+len_irda_device_list_38690_fields len irda_device_list 0 38690 NULL
+sdebug_unmap_alignment_vardecl_scsi_debug_c_38693_fields sdebug_unmap_alignment vardecl_scsi_debug.c 0 38693 NULL
+ioremap_prot_fndecl_38695_fields ioremap_prot fndecl 2-1 38695 NULL
+bulk_in_ep_irda_usb_cb_38699_fields bulk_in_ep irda_usb_cb 0 38699 NULL
-+get_user_pages_fast_fndecl_38708_fields get_user_pages_fast fndecl 1 38708 NULL
++get_user_pages_fast_fndecl_38708_fields get_user_pages_fast fndecl 1 38708 NULL nohasharray
++num_uld_adapter_38708_fields num_uld adapter 0 38708 &get_user_pages_fast_fndecl_38708_fields
+ifx_spi_insert_flip_string_fndecl_38715_fields ifx_spi_insert_flip_string fndecl 3 38715 NULL
++if_write_fndecl_38719_fields if_write fndecl 3 38719 NULL
+esrt_data_vardecl_esrt_c_38729_fields esrt_data vardecl_esrt.c 0 38729 NULL
+ports_max_wusbhc_38743_fields ports_max wusbhc 0 38743 NULL
+__page_file_index_fndecl_38744_fields __page_file_index fndecl 0 38744 NULL
+myri10ge_small_bytes_vardecl_myri10ge_c_38752_fields myri10ge_small_bytes vardecl_myri10ge.c 0 38752 NULL nohasharray
+length_snd_hwdep_dsp_image_38752_fields length snd_hwdep_dsp_image 0 38752 &myri10ge_small_bytes_vardecl_myri10ge_c_38752_fields
+tag_ctrl_info_amd8111e_rx_dr_38754_fields tag_ctrl_info amd8111e_rx_dr 0 38754 NULL
-+t4_max_iq_size_c4iw_hw_queue_38756_fields t4_max_iq_size c4iw_hw_queue 0 38756 NULL
-+pkt_size_rmi_2d_sensor_38762_fields pkt_size rmi_2d_sensor 0 38762 NULL
+default_advmss_dst_ops_38765_fields default_advmss dst_ops 0 38765 NULL
+midi_snd_oxfw_stream_formation_38770_fields midi snd_oxfw_stream_formation 0 38770 NULL
-+qib_alloc_devdata_fndecl_38776_fields qib_alloc_devdata fndecl 2 38776 NULL
++az6007_read_fndecl_38771_fields az6007_read fndecl 6 38771 NULL
+sw_end_stm_data_38777_fields sw_end stm_data 0 38777 NULL
+ih_blkno_ocfs2_inode_handle_38779_fields ih_blkno ocfs2_inode_handle 0 38779 NULL
+height_cx231xx_38782_fields height cx231xx 0 38782 NULL
+spi_read_buf_fndecl_38792_fields spi_read_buf fndecl 2 38792 NULL
-+get_indirect_ea_fndecl_38798_fields get_indirect_ea fndecl 3 38798 NULL
++get_indirect_ea_fndecl_38798_fields get_indirect_ea fndecl 4-3 38798 NULL
+ioread32_fndecl_38804_fields ioread32 fndecl 0 38804 NULL nohasharray
+size_esb2rom_window_38804_fields size esb2rom_window 0 38804 &ioread32_fndecl_38804_fields
+raw6_getfrag_fndecl_38805_fields raw6_getfrag fndecl 3-4 38805 NULL
@@ -198095,7 +202796,7 @@ index 0000000..6b5367db
+tx_ring_size_bnxt_38811_fields tx_ring_size bnxt 0 38811 NULL
+vlan_tci_sk_buff_38825_fields vlan_tci sk_buff 0 38825 NULL
+algorithm_r5conf_38831_fields algorithm r5conf 0 38831 NULL
-+memblock_alloc_fndecl_38847_fields memblock_alloc fndecl 2-0 38847 NULL
++memblock_alloc_fndecl_38847_fields memblock_alloc fndecl 2-1-0 38847 NULL
+datablob_len_encrypted_key_payload_38850_fields datablob_len encrypted_key_payload 0 38850 NULL
+srs_nslot_sptlrpc_rule_set_38854_fields srs_nslot sptlrpc_rule_set 0 38854 NULL
+srp_map_sg_dma_fndecl_38856_fields srp_map_sg_dma fndecl 0 38856 NULL
@@ -198104,8 +202805,10 @@ index 0000000..6b5367db
+mask_mthca_alloc_38874_fields mask mthca_alloc 0 38874 NULL nohasharray
+if_sdio_handle_data_fndecl_38874_fields if_sdio_handle_data fndecl 3 38874 &mask_mthca_alloc_38874_fields
+wmi_set_ie_fndecl_38876_fields wmi_set_ie fndecl 3 38876 NULL
++xfs_get_cowextsz_hint_fndecl_38878_fields xfs_get_cowextsz_hint fndecl 0 38878 NULL
+mmc_spi_skip_fndecl_38879_fields mmc_spi_skip fndecl 3 38879 NULL nohasharray
+error_dvb_ringbuffer_38879_fields error dvb_ringbuffer 0 38879 &mmc_spi_skip_fndecl_38879_fields
++static_prio_task_struct_38880_fields static_prio task_struct 0 38880 NULL
+atalk_route_packet_fndecl_38886_fields atalk_route_packet fndecl 5-4 38886 NULL
+read_dummy_spi_nor_38888_fields read_dummy spi_nor 0 38888 NULL
+num_bna_intr_info_38889_fields num bna_intr_info 0 38889 NULL
@@ -198116,16 +202819,17 @@ index 0000000..6b5367db
+generic_elem_len_local_info_38904_fields generic_elem_len local_info 0 38904 NULL
+length_hfi1_tid_info_38905_fields length hfi1_tid_info 0 38905 NULL
+surface_bpp_drm_fb_helper_surface_size_38906_fields surface_bpp drm_fb_helper_surface_size 0 38906 NULL
-+dst_ci_command_fndecl_38908_fields dst_ci_command fndecl 4 38908 NULL nohasharray
-+scsi_get_vpd_page_fndecl_38908_fields scsi_get_vpd_page fndecl 4 38908 &dst_ci_command_fndecl_38908_fields
++vid_batadv_tvlv_tt_change_38907_fields vid batadv_tvlv_tt_change 0 38907 NULL
++dst_ci_command_fndecl_38908_fields dst_ci_command fndecl 4 38908 NULL
++add_platform_device_fndecl_38915_fields add_platform_device fndecl 1 38915 NULL
++qlcnic_diag_free_res_fndecl_38922_fields qlcnic_diag_free_res fndecl 2 38922 NULL
+max_window_tcp_sock_38923_fields max_window tcp_sock 0 38923 NULL
+data_size_ms_system_item_38924_fields data_size ms_system_item 0 38924 NULL
-+usb_sg_init_fndecl_38925_fields usb_sg_init fndecl 6-7-3 38925 NULL nohasharray
++usb_sg_init_fndecl_38925_fields usb_sg_init fndecl 6-3-7 38925 NULL nohasharray
+num_txqs_octeon_nic_if_config_38925_fields num_txqs octeon_nic_if_config 0 38925 &usb_sg_init_fndecl_38925_fields
+refresh_drm_cmdline_mode_38926_fields refresh drm_cmdline_mode 0 38926 NULL
+tx_queues_vardecl_bond_main_c_38932_fields tx_queues vardecl_bond_main.c 0 38932 NULL
-+xfs_alloc_update_counters_fndecl_38938_fields xfs_alloc_update_counters fndecl 0 38938 NULL
-+qib_restart_rc_fndecl_38939_fields qib_restart_rc fndecl 2 38939 NULL
++xfs_alloc_update_counters_fndecl_38938_fields xfs_alloc_update_counters fndecl 4-0 38938 NULL
+depth_cx231xx_fmt_38940_fields depth cx231xx_fmt 0 38940 NULL
+pcm_open_fndecl_38941_fields pcm_open fndecl 2 38941 NULL
+crypt_scatterlist_fndecl_38942_fields crypt_scatterlist fndecl 4 38942 NULL
@@ -198138,13 +202842,14 @@ index 0000000..6b5367db
+uregbase_qib_devdata_38972_fields uregbase qib_devdata 0 38972 NULL nohasharray
+wm8350_register_regulator_fndecl_38972_fields wm8350_register_regulator fndecl 2 38972 &uregbase_qib_devdata_38972_fields
+register_buffer_fndecl_38990_fields register_buffer fndecl 3 38990 NULL
++hsc_read_fndecl_38991_fields hsc_read fndecl 3 38991 NULL
+hdr_len_tnl_ptk_info_38993_fields hdr_len tnl_ptk_info 0 38993 NULL
+pcm_buf_elapsed_dma_ofs_snd_card_asihpi_pcm_38998_fields pcm_buf_elapsed_dma_ofs snd_card_asihpi_pcm 0 38998 NULL
+maxqlen_vardecl_seq_oss_init_c_39001_fields maxqlen vardecl_seq_oss_init.c 0 39001 NULL
+tlv_len_nfc_llcp_sdp_tlv_39007_fields tlv_len nfc_llcp_sdp_tlv 0 39007 NULL
+dram_end_intel_sst_drv_39008_fields dram_end intel_sst_drv 0 39008 NULL
-+ia_columns_ar5416IniArray_39012_fields ia_columns ar5416IniArray 0 39012 NULL
+xfs_dialloc_ag_inobt_fndecl_39015_fields xfs_dialloc_ag_inobt fndecl 3 39015 NULL
++usbat_flash_write_data_fndecl_39018_fields usbat_flash_write_data fndecl 4 39018 NULL
+length_mtd_oob_region_39026_fields length mtd_oob_region 0 39026 NULL
+dlfb_submit_urb_fndecl_39028_fields dlfb_submit_urb fndecl 3 39028 NULL
+video_pbase_osd_info_39032_fields video_pbase osd_info 0 39032 NULL
@@ -198152,35 +202857,32 @@ index 0000000..6b5367db
+reserve_st_proto_s_39036_fields reserve st_proto_s 0 39036 NULL
+free_ubifs_lprops_39039_fields free ubifs_lprops 0 39039 NULL
+nvmet_ns_alloc_fndecl_39044_fields nvmet_ns_alloc fndecl 2 39044 NULL
-+pep_reply_fndecl_39045_fields pep_reply fndecl 5 39045 NULL nohasharray
-+fat_readpages_fndecl_39045_fields fat_readpages fndecl 4 39045 &pep_reply_fndecl_39045_fields
++fat_readpages_fndecl_39045_fields fat_readpages fndecl 4 39045 NULL nohasharray
++pep_reply_fndecl_39045_fields pep_reply fndecl 5 39045 &fat_readpages_fndecl_39045_fields
+num_ports_u132_39052_fields num_ports u132 0 39052 NULL
-+ttm_agp_tt_create_fndecl_39056_fields ttm_agp_tt_create fndecl 3 39056 NULL nohasharray
-+get_key_fscache_cookie_def_39056_fields get_key fscache_cookie_def 0 39056 &ttm_agp_tt_create_fndecl_39056_fields
++ttm_agp_tt_create_fndecl_39056_fields ttm_agp_tt_create fndecl 3 39056 NULL
+frameLen_rx_desc_39058_fields frameLen rx_desc 0 39058 NULL nohasharray
+minor_gigaset_driver_39058_fields minor gigaset_driver 0 39058 &frameLen_rx_desc_39058_fields
+send_set_xattr_fndecl_39062_fields send_set_xattr fndecl 6-4 39062 NULL
+n_buckets_bpf_htab_39067_fields n_buckets bpf_htab 0 39067 NULL nohasharray
+bnxt_get_max_irq_fndecl_39067_fields bnxt_get_max_irq fndecl 0 39067 &n_buckets_bpf_htab_39067_fields
+iscsit_handle_immediate_data_fndecl_39071_fields iscsit_handle_immediate_data fndecl 3 39071 NULL
-+max_rules_crush_map_39073_fields max_rules crush_map 0 39073 NULL nohasharray
-+num_counters_rdma_hw_stats_39073_fields num_counters rdma_hw_stats 0 39073 &max_rules_crush_map_39073_fields
++num_counters_rdma_hw_stats_39073_fields num_counters rdma_hw_stats 0 39073 NULL nohasharray
++max_rules_crush_map_39073_fields max_rules crush_map 0 39073 &num_counters_rdma_hw_stats_39073_fields
+usbatm_write_cells_fndecl_39074_fields usbatm_write_cells fndecl 0 39074 NULL
+block_id_ms_boot_header_39075_fields block_id ms_boot_header 0 39075 NULL
+frame_len_b43_rxhdr_fw4_39076_fields frame_len b43_rxhdr_fw4 0 39076 NULL
+inode_sysv_dir_entry_39082_fields inode sysv_dir_entry 0 39082 NULL
+sge_rx_fndecl_39089_fields sge_rx fndecl 3 39089 NULL
+d0_vring_rx_dma_39093_fields d0 vring_rx_dma 0 39093 NULL
-+negotiate_rsize_smb_version_operations_39094_fields negotiate_rsize smb_version_operations 0 39094 NULL
-+n4sz_additional_sensor_data_39102_fields n4sz additional_sensor_data 0 39102 NULL
+array_size_drm_vmw_gb_surface_create_req_39114_fields array_size drm_vmw_gb_surface_create_req 0 39114 NULL
+bg_bits_ocfs2_group_desc_39116_fields bg_bits ocfs2_group_desc 0 39116 NULL
+rds_ib_sysctl_max_send_wr_vardecl_39120_fields rds_ib_sysctl_max_send_wr vardecl 0 39120 NULL
+rl_namelen_rcom_lock_39122_fields rl_namelen rcom_lock 0 39122 NULL
+user_block_count_mspro_sys_info_39124_fields user_block_count mspro_sys_info 0 39124 NULL
+bytes_per_datum_iio_buffer_39125_fields bytes_per_datum iio_buffer 0 39125 NULL
-+l2t_end_adapter_39130_fields l2t_end adapter 0 39130 NULL nohasharray
-+calc_memmap_size_fndecl_39130_fields calc_memmap_size fndecl 0-2-1 39130 &l2t_end_adapter_39130_fields
++calc_memmap_size_fndecl_39130_fields calc_memmap_size fndecl 0-2-1 39130 NULL nohasharray
++l2t_end_adapter_39130_fields l2t_end adapter 0 39130 &calc_memmap_size_fndecl_39130_fields
+udf_put_filename_fndecl_39133_fields udf_put_filename fndecl 0 39133 NULL nohasharray
+syst_pa_vardecl_sfi_core_c_39133_fields syst_pa vardecl_sfi_core.c 0 39133 &udf_put_filename_fndecl_39133_fields
+ceph_build_auth_request_fndecl_39135_fields ceph_build_auth_request fndecl 0 39135 NULL
@@ -198189,9 +202891,9 @@ index 0000000..6b5367db
+mmc_test_buffer_transfer_fndecl_39150_fields mmc_test_buffer_transfer fndecl 4 39150 NULL
+size_intel_initial_plane_config_39155_fields size intel_initial_plane_config 0 39155 NULL
+log_root_btrfs_super_block_39157_fields log_root btrfs_super_block 0 39157 NULL
++pci_ring_size_vardecl_pci_hyperv_c_39161_fields pci_ring_size vardecl_pci-hyperv.c 0 39161 NULL
+fcoe_start_cid_cnic_local_39162_fields fcoe_start_cid cnic_local 0 39162 NULL
-+ath6kl_tm_rx_event_fndecl_39163_fields ath6kl_tm_rx_event fndecl 3 39163 NULL nohasharray
-+sys_readv_fndecl_39163_fields sys_readv fndecl 3 39163 &ath6kl_tm_rx_event_fndecl_39163_fields
++ath6kl_tm_rx_event_fndecl_39163_fields ath6kl_tm_rx_event fndecl 3 39163 NULL
+num_mcg_mlx4_profile_39164_fields num_mcg mlx4_profile 0 39164 NULL
+ext2_try_to_allocate_with_rsv_fndecl_39166_fields ext2_try_to_allocate_with_rsv fndecl 0-4 39166 NULL
+ast_gem_create_fndecl_39167_fields ast_gem_create fndecl 2 39167 NULL
@@ -198201,10 +202903,8 @@ index 0000000..6b5367db
+grab_nat_entry_fndecl_39177_fields grab_nat_entry fndecl 2 39177 NULL
+skb_put_fndecl_39184_fields skb_put fndecl 2 39184 NULL
+max_handles_amdgpu_uvd_39193_fields max_handles amdgpu_uvd 0 39193 NULL nohasharray
-+ttymajor_vardecl_mxser_c_39193_fields ttymajor vardecl_mxser.c 0 39193 &max_handles_amdgpu_uvd_39193_fields nohasharray
-+ib_send_cm_drep_fndecl_39193_fields ib_send_cm_drep fndecl 3 39193 &ttymajor_vardecl_mxser_c_39193_fields
++ttymajor_vardecl_mxser_c_39193_fields ttymajor vardecl_mxser.c 0 39193 &max_handles_amdgpu_uvd_39193_fields
+udc_create_dma_chain_fndecl_39194_fields udc_create_dma_chain fndecl 3 39194 NULL
-+rvt_map_phys_fmr_fndecl_39197_fields rvt_map_phys_fmr fndecl 4 39197 NULL
+maxentry_xtheader_39202_fields maxentry xtheader 0 39202 NULL
+mon_bin_compat_ioctl_fndecl_39209_fields mon_bin_compat_ioctl fndecl 3 39209 NULL
+len_vmci_datagram_snd_rcv_info_39211_fields len vmci_datagram_snd_rcv_info 0 39211 NULL
@@ -198215,45 +202915,41 @@ index 0000000..6b5367db
+seq_buf_to_user_fndecl_39222_fields seq_buf_to_user fndecl 3 39222 NULL
+max_reqs_kioctx_39227_fields max_reqs kioctx 0 39227 NULL
+xt_socket_get_sock_v4_fndecl_39236_fields xt_socket_get_sock_v4 fndecl 3 39236 NULL
-+afs_extract_data_fndecl_39238_fields afs_extract_data fndecl 5 39238 NULL nohasharray
-+__devres_alloc_node_fndecl_39238_fields __devres_alloc_node fndecl 2 39238 &afs_extract_data_fndecl_39238_fields
+mon_buff_area_fill_fndecl_39250_fields mon_buff_area_fill fndecl 3 39250 NULL nohasharray
+remote_mps_l2cap_chan_39250_fields remote_mps l2cap_chan 0 39250 &mon_buff_area_fill_fndecl_39250_fields
+raid5_get_active_stripe_fndecl_39252_fields raid5_get_active_stripe fndecl 2 39252 NULL
+num_cons_qed_eth_pf_params_39260_fields num_cons qed_eth_pf_params 0 39260 NULL
+data_offset_napi_gro_cb_39263_fields data_offset napi_gro_cb 0 39263 NULL
+idata_dma_usb_xpad_39278_fields idata_dma usb_xpad 0 39278 NULL
-+xfs_rmap_alloc_fndecl_39293_fields xfs_rmap_alloc fndecl 0 39293 NULL nohasharray
-+rxrpc_setsockopt_fndecl_39293_fields rxrpc_setsockopt fndecl 5 39293 &xfs_rmap_alloc_fndecl_39293_fields
++xfs_rmap_alloc_fndecl_39293_fields xfs_rmap_alloc fndecl 0 39293 NULL
+page_size_msb_data_39297_fields page_size msb_data 0 39297 NULL nohasharray
-+max_vfi_lpfc_max_cfg_param_39297_fields max_vfi lpfc_max_cfg_param 0 39297 &page_size_msb_data_39297_fields nohasharray
-+encoding_p_compressed_bm_39297_fields encoding p_compressed_bm 0 39297 &max_vfi_lpfc_max_cfg_param_39297_fields
++encoding_p_compressed_bm_39297_fields encoding p_compressed_bm 0 39297 &page_size_msb_data_39297_fields nohasharray
++max_vfi_lpfc_max_cfg_param_39297_fields max_vfi lpfc_max_cfg_param 0 39297 &encoding_p_compressed_bm_39297_fields
+cxgbit_xmit_nondatain_pdu_fndecl_39302_fields cxgbit_xmit_nondatain_pdu fndecl 4 39302 NULL
+do_launder_page_fndecl_39306_fields do_launder_page fndecl 0 39306 NULL
+e820_end_of_ram_pfn_fndecl_39315_fields e820_end_of_ram_pfn fndecl 0 39315 NULL nohasharray
+rio_request_outb_dbell_fndecl_39315_fields rio_request_outb_dbell fndecl 3-2 39315 &e820_end_of_ram_pfn_fndecl_39315_fields
-+depth_tw68_format_39322_fields depth tw68_format 0 39322 NULL nohasharray
-+key_size_x509_parse_context_39322_fields key_size x509_parse_context 0 39322 &depth_tw68_format_39322_fields
++len_buflist_39320_fields len buflist 0 39320 NULL
++depth_tw68_format_39322_fields depth tw68_format 0 39322 NULL
+soc_camera_read_fndecl_39324_fields soc_camera_read fndecl 3 39324 NULL nohasharray
+rx_dataoffset_brcmf_msgbuf_39324_fields rx_dataoffset brcmf_msgbuf 0 39324 &soc_camera_read_fndecl_39324_fields
+test_queue_fndecl_39329_fields test_queue fndecl 3-5 39329 NULL
-+size_bts_action_39331_fields size bts_action 0 39331 NULL
-+unpack_u16_chunk_fndecl_39334_fields unpack_u16_chunk fndecl 0 39334 NULL
++convert_rate_asoc_simple_card_priv_39331_fields convert_rate asoc_simple_card_priv 0 39331 NULL nohasharray
++size_bts_action_39331_fields size bts_action 0 39331 &convert_rate_asoc_simple_card_priv_39331_fields
+page_jfs_log_39335_fields page jfs_log 0 39335 NULL
+nilfs_sufile_segment_usages_in_block_fndecl_39336_fields nilfs_sufile_segment_usages_in_block fndecl 0-2-3 39336 NULL
-+num_channels_hw_mode_spec_39337_fields num_channels hw_mode_spec 0 39337 NULL nohasharray
-+tx_pipe_brcmf_usbdev_info_39337_fields tx_pipe brcmf_usbdev_info 0 39337 &num_channels_hw_mode_spec_39337_fields
++tx_pipe_brcmf_usbdev_info_39337_fields tx_pipe brcmf_usbdev_info 0 39337 NULL nohasharray
++num_channels_hw_mode_spec_39337_fields num_channels hw_mode_spec 0 39337 &tx_pipe_brcmf_usbdev_info_39337_fields
+svc_create_fndecl_39343_fields svc_create fndecl 2 39343 NULL
+nhead_offs_ubifs_info_39346_fields nhead_offs ubifs_info 0 39346 NULL
+root_offs_ubifs_mst_node_39347_fields root_offs ubifs_mst_node 0 39347 NULL
-+roccat_common2_send_with_status_fndecl_39348_fields roccat_common2_send_with_status fndecl 4 39348 NULL
+ksm_might_need_to_copy_fndecl_39350_fields ksm_might_need_to_copy fndecl 3 39350 NULL
+efs_validate_vh_fndecl_39352_fields efs_validate_vh fndecl 0 39352 NULL
+nsize_jffs2_sum_dirent_mem_39355_fields nsize jffs2_sum_dirent_mem 0 39355 NULL
+hub_status_data_hc_driver_39357_fields hub_status_data hc_driver 0 39357 NULL nohasharray
+rbd_obj_request_create_fndecl_39357_fields rbd_obj_request_create fndecl 3-2 39357 &hub_status_data_hc_driver_39357_fields
+tx_ndp_modulus_cdc_ncm_ctx_39369_fields tx_ndp_modulus cdc_ncm_ctx 0 39369 NULL
-+nftl_read_oob_fndecl_39370_fields nftl_read_oob fndecl 2-3 39370 NULL
++nftl_read_oob_fndecl_39370_fields nftl_read_oob fndecl 2 39370 NULL
+num_frames_camera_data_39372_fields num_frames camera_data 0 39372 NULL
+vsi_fshino_vxfs_sb_info_39379_fields vsi_fshino vxfs_sb_info 0 39379 NULL
+s_size_public_key_signature_39380_fields s_size public_key_signature 0 39380 NULL
@@ -198262,6 +202958,7 @@ index 0000000..6b5367db
+tx_count_ethtool_channels_39384_fields tx_count ethtool_channels 0 39384 &from_offset_text_match_39384_fields
+lfb_depth_screen_info_39385_fields lfb_depth screen_info 0 39385 NULL
+read16_ssb_bus_ops_39388_fields read16 ssb_bus_ops 0 39388 NULL
++round_rate_clk_ops_39390_fields round_rate clk_ops 0 39390 NULL
+pf_cids_qed_tm_iids_39393_fields pf_cids qed_tm_iids 0 39393 NULL
+__page_set_anon_rmap_fndecl_39401_fields __page_set_anon_rmap fndecl 3 39401 NULL
+userptr_radeon_ttm_tt_39408_fields userptr radeon_ttm_tt 0 39408 NULL
@@ -198287,22 +202984,23 @@ index 0000000..6b5367db
+security_load_policy_fndecl_39462_fields security_load_policy fndecl 2 39462 NULL
+LMC_PKT_BUF_SZ_vardecl_lmc_main_c_39465_fields LMC_PKT_BUF_SZ vardecl_lmc_main.c 0 39465 NULL
+num_buffers_vardecl_cpia2_v4l_c_39466_fields num_buffers vardecl_cpia2_v4l.c 0 39466 NULL
++efi_arch_mem_reserve_fndecl_39467_fields efi_arch_mem_reserve fndecl 2-1 39467 NULL
+xfs_writepage_map_fndecl_39468_fields xfs_writepage_map fndecl 0 39468 NULL
+wipers_mcp4131_cfg_39469_fields wipers mcp4131_cfg 0 39469 NULL
+max_count_octeon_droq_39475_fields max_count octeon_droq 0 39475 NULL
-+qib_verbs_send_pio_fndecl_39482_fields qib_verbs_send_pio fndecl 5 39482 NULL
+address_length_acpi_resource_fixed_memory32_39483_fields address_length acpi_resource_fixed_memory32 0 39483 NULL
-+iov_iter_bvec_fndecl_39493_fields iov_iter_bvec fndecl 5-4 39493 NULL
++iov_iter_bvec_fndecl_39493_fields iov_iter_bvec fndecl 5 39493 NULL
+network_header_len_dwceqos_tx_39500_fields network_header_len dwceqos_tx 0 39500 NULL
++gb_operation_message_init_fndecl_39512_fields gb_operation_message_init fndecl 4 39512 NULL
+ppp_read_fndecl_39514_fields ppp_read fndecl 3 39514 NULL
-+npins_intel_community_39518_fields npins intel_community 0 39518 NULL
-+txsize_grcan_device_config_39527_fields txsize grcan_device_config 0 39527 NULL
++ceph_osdc_call_fndecl_39526_fields ceph_osdc_call fndecl 8 39526 NULL
++txsize_grcan_device_config_39527_fields txsize grcan_device_config 0 39527 NULL nohasharray
++len_batadv_tvlv_hdr_39527_fields len batadv_tvlv_hdr 0 39527 &txsize_grcan_device_config_39527_fields
+num_queues_bnx2x_39531_fields num_queues bnx2x 0 39531 NULL
+hugepage_add_new_anon_rmap_fndecl_39534_fields hugepage_add_new_anon_rmap fndecl 3 39534 NULL
-+srpt_alloc_ioctx_fndecl_39537_fields srpt_alloc_ioctx fndecl 3 39537 NULL
+elem_size_v4l2_ctrl_39540_fields elem_size v4l2_ctrl 0 39540 NULL
+do_arpt_set_ctl_fndecl_39550_fields do_arpt_set_ctl fndecl 4 39550 NULL
-+kaweth_internal_control_msg_fndecl_39552_fields kaweth_internal_control_msg fndecl 5-2 39552 NULL nohasharray
++kaweth_internal_control_msg_fndecl_39552_fields kaweth_internal_control_msg fndecl 2-5 39552 NULL nohasharray
+do_trim_fndecl_39552_fields do_trim fndecl 4-5-3-2 39552 &kaweth_internal_control_msg_fndecl_39552_fields
+from_fw_map_39555_fields from fw_map 0 39555 NULL
+l2specific_len_l2tp_session_39558_fields l2specific_len l2tp_session 0 39558 NULL
@@ -198312,23 +203010,20 @@ index 0000000..6b5367db
+sys32_pwrite_fndecl_39572_fields sys32_pwrite fndecl 3 39572 NULL
+oh_len_omninet_header_39576_fields oh_len omninet_header 0 39576 NULL
+nfs4_file_llseek_fndecl_39578_fields nfs4_file_llseek fndecl 2 39578 NULL
-+snbep_pci2phy_map_init_fndecl_39582_fields snbep_pci2phy_map_init fndecl 1 39582 NULL
+len_ubifs_scan_node_39584_fields len ubifs_scan_node 0 39584 NULL
+req_que_len_qla_hw_data_39587_fields req_que_len qla_hw_data 0 39587 NULL
+rq_bytes_sent_rpc_rqst_39591_fields rq_bytes_sent rpc_rqst 0 39591 NULL
+xfs_extent_free_create_intent_fndecl_39592_fields xfs_extent_free_create_intent fndecl 2 39592 NULL
+amanda_help_fndecl_39598_fields amanda_help fndecl 2 39598 NULL
+dm_consult_userspace_fndecl_39601_fields dm_consult_userspace fndecl 5 39601 NULL
-+midi_ports_snd_emux_39605_fields midi_ports snd_emux 0 39605 NULL nohasharray
-+ti_recv_fndecl_39605_fields ti_recv fndecl 3 39605 &midi_ports_snd_emux_39605_fields
++ti_recv_fndecl_39605_fields ti_recv fndecl 3 39605 NULL
+double_length_smbios_cru64_info_39607_fields double_length smbios_cru64_info 0 39607 NULL
+iscsi_nop_out_rsp_fndecl_39614_fields iscsi_nop_out_rsp fndecl 4 39614 NULL
-+gpio_cs_count_tiny_spi_39618_fields gpio_cs_count tiny_spi 0 39618 NULL
+rx_buffer_order_efx_nic_39620_fields rx_buffer_order efx_nic 0 39620 NULL
+cookie_len_l2tp_session_39629_fields cookie_len l2tp_session 0 39629 NULL
+max_cq_sz_mthca_dev_lim_39630_fields max_cq_sz mthca_dev_lim 0 39630 NULL
+fb_phys_ocfb_dev_39632_fields fb_phys ocfb_dev 0 39632 NULL
-+xfs_bmbt_lookup_ge_fndecl_39633_fields xfs_bmbt_lookup_ge fndecl 3-4-2 39633 NULL
++xfs_bmbt_lookup_ge_fndecl_39633_fields xfs_bmbt_lookup_ge fndecl 3-2-4 39633 NULL
+saa7134_alsa_dma_init_fndecl_39636_fields saa7134_alsa_dma_init fndecl 2 39636 NULL
+setup_arg_pages_fndecl_39645_fields setup_arg_pages fndecl 2 39645 NULL
+psn_rvt_swqe_39647_fields psn rvt_swqe 0 39647 NULL
@@ -198338,10 +203033,11 @@ index 0000000..6b5367db
+shmem_pseudo_vma_init_fndecl_39661_fields shmem_pseudo_vma_init fndecl 3 39661 NULL
+skb_copy_datagram_iter_fndecl_39662_fields skb_copy_datagram_iter fndecl 4-2-0 39662 NULL
+viafb_get_fb_size_from_pci_fndecl_39663_fields viafb_get_fb_size_from_pci fndecl 0 39663 NULL
++mq_bytes_user_struct_39665_fields mq_bytes user_struct 0 39665 NULL
+snd_rawmidi_transmit_peek_fndecl_39668_fields snd_rawmidi_transmit_peek fndecl 3-0 39668 NULL
+der_length_size_fndecl_39673_fields der_length_size fndecl 0 39673 NULL
+sectorsize_btrfs_super_block_39674_fields sectorsize btrfs_super_block 0 39674 NULL
-+rdma_read_chunk_frmr_fndecl_39676_fields rdma_read_chunk_frmr fndecl 7-8 39676 NULL
++rdma_read_chunk_frmr_fndecl_39676_fields rdma_read_chunk_frmr fndecl 7 39676 NULL
+priv_size_Qdisc_ops_39692_fields priv_size Qdisc_ops 0 39692 NULL nohasharray
+fd_block_size_fd_dev_39692_fields fd_block_size fd_dev 0 39692 &priv_size_Qdisc_ops_39692_fields
+length_rvt_swqe_39694_fields length rvt_swqe 0 39694 NULL
@@ -198366,12 +203062,12 @@ index 0000000..6b5367db
+map_swap_page_fndecl_39768_fields map_swap_page fndecl 0 39768 NULL nohasharray
+free_full_branch_fndecl_39768_fields free_full_branch fndecl 2 39768 &map_swap_page_fndecl_39768_fields
+add_range_with_merge_fndecl_39778_fields add_range_with_merge fndecl 5-4 39778 NULL
-+num_supplies_wm8994_39780_fields num_supplies wm8994 0 39780 NULL
+__collapse_huge_page_isolate_fndecl_39784_fields __collapse_huge_page_isolate fndecl 2 39784 NULL
+buf_rte_log_le_39791_fields buf rte_log_le 0 39791 NULL
+digital_dep_link_up_fndecl_39793_fields digital_dep_link_up fndecl 5 39793 NULL
+den_max_snd_ratnum_39802_fields den_max snd_ratnum 0 39802 NULL
+meta_dev_idx_disk_conf_39810_fields meta_dev_idx disk_conf 0 39810 NULL
++videobuf_dma_init_user_fndecl_39812_fields videobuf_dma_init_user fndecl 4-3 39812 NULL
+jffs2_link_node_ref_fndecl_39817_fields jffs2_link_node_ref fndecl 3-4 39817 NULL
+pan_y_yuv_frame_info_39830_fields pan_y yuv_frame_info 0 39830 NULL
+sb_inopblock_xfs_sb_39837_fields sb_inopblock xfs_sb 0 39837 NULL nohasharray
@@ -198390,9 +203086,12 @@ index 0000000..6b5367db
+resync_offset_mdp_superblock_1_39883_fields resync_offset mdp_superblock_1 0 39883 NULL
+btrfs_bio_wq_end_io_fndecl_39884_fields btrfs_bio_wq_end_io fndecl 0 39884 NULL
+xfs_iext_remove_fndecl_39886_fields xfs_iext_remove fndecl 3 39886 NULL
-+osd_req_write_sg_fndecl_39887_fields osd_req_write_sg fndecl 5 39887 NULL
++osd_req_write_sg_fndecl_39887_fields osd_req_write_sg fndecl 5 39887 NULL nohasharray
++debug_fcp_fndecl_39887_fields debug_fcp fndecl 2 39887 &osd_req_write_sg_fndecl_39887_fields
+video_base_sis_video_info_39896_fields video_base sis_video_info 0 39896 NULL
++size_hashlimit_cfg2_39899_fields size hashlimit_cfg2 0 39899 NULL
+s_inodes_per_group_ext4_sb_info_39910_fields s_inodes_per_group ext4_sb_info 0 39910 NULL
++frame_vector_create_fndecl_39918_fields frame_vector_create fndecl 1 39918 NULL
+spi_map_buf_fndecl_39919_fields spi_map_buf fndecl 5-0 39919 NULL
+i_eoffset_bfs_inode_39921_fields i_eoffset bfs_inode 0 39921 NULL
+qos_rmt_entries_fndecl_39927_fields qos_rmt_entries fndecl 0 39927 NULL
@@ -198402,27 +203101,29 @@ index 0000000..6b5367db
+height_font_desc_39938_fields height font_desc 0 39938 NULL nohasharray
+btrfs_i_size_write_fndecl_39938_fields btrfs_i_size_write fndecl 2 39938 &height_font_desc_39938_fields
+row_shift_omap4_keypad_39944_fields row_shift omap4_keypad 0 39944 NULL
-+find_ts_ops_39950_fields find ts_ops 0 39950 NULL
++find_ts_ops_39950_fields find ts_ops 0 39950 NULL nohasharray
++pid_proto_39950_fields pid proto 0 39950 &find_ts_ops_39950_fields
++inode2sd_v1_fndecl_39954_fields inode2sd_v1 fndecl 3 39954 NULL
++used_map_cnt_bpf_verifier_env_39969_fields used_map_cnt bpf_verifier_env 0 39969 NULL
+cn_size_x509_parse_context_39975_fields cn_size x509_parse_context 0 39975 NULL nohasharray
-+msg_length_pcnet32_rx_head_39975_fields msg_length pcnet32_rx_head 0 39975 &cn_size_x509_parse_context_39975_fields nohasharray
-+__hfsplus_getxattr_fndecl_39975_fields __hfsplus_getxattr fndecl 0 39975 &msg_length_pcnet32_rx_head_39975_fields
++__hfsplus_getxattr_fndecl_39975_fields __hfsplus_getxattr fndecl 0 39975 &cn_size_x509_parse_context_39975_fields nohasharray
++msg_length_pcnet32_rx_head_39975_fields msg_length pcnet32_rx_head 0 39975 &__hfsplus_getxattr_fndecl_39975_fields
+xfs_map_blocks_fndecl_39985_fields xfs_map_blocks fndecl 2-0 39985 NULL
++blkdev_fallocate_fndecl_39986_fields blkdev_fallocate fndecl 3-4 39986 NULL
+extLength_kernel_long_ad_39988_fields extLength kernel_long_ad 0 39988 NULL
+btrfs_free_reserved_data_space_fndecl_39989_fields btrfs_free_reserved_data_space fndecl 2-3 39989 NULL
+lane_count_intel_dsi_39994_fields lane_count intel_dsi 0 39994 NULL
+playback_bufsize_vardecl_nm256_c_39995_fields playback_bufsize vardecl_nm256.c 0 39995 NULL
-+start_sram_reserve_39999_fields start sram_reserve 0 39999 NULL
+dm_btree_lookup_next_single_fndecl_40001_fields dm_btree_lookup_next_single fndecl 2 40001 NULL
+r820t_read_fndecl_40007_fields r820t_read fndecl 4 40007 NULL
+memblock_isolate_range_fndecl_40008_fields memblock_isolate_range fndecl 3-2 40008 NULL
-+dch_empty_fifo_fndecl_40013_fields dch_empty_fifo fndecl 2 40013 NULL
++dch_empty_fifo_fndecl_40013_fields dch_empty_fifo fndecl 2 40013 NULL nohasharray
++cifs_dump_mem_fndecl_40013_fields cifs_dump_mem fndecl 3 40013 &dch_empty_fifo_fndecl_40013_fields
+xfs_iformat_local_fndecl_40019_fields xfs_iformat_local fndecl 4 40019 NULL
+verify_alg_len_net_conf_40020_fields verify_alg_len net_conf 0 40020 NULL
+vmw_mob_calculate_pt_pages_fndecl_40022_fields vmw_mob_calculate_pt_pages fndecl 0-1 40022 NULL
+esp4_get_mtu_fndecl_40024_fields esp4_get_mtu fndecl 0-2 40024 NULL
-+lpfc_debugfs_nodelist_data_fndecl_40039_fields lpfc_debugfs_nodelist_data fndecl 0 40039 NULL
+pos_splice_desc_40040_fields pos splice_desc 0 40040 NULL
-+data_len_ecryptfs_message_40042_fields data_len ecryptfs_message 0 40042 NULL
+memdiff_vardecl_tridentfb_c_40043_fields memdiff vardecl_tridentfb.c 0 40043 NULL nohasharray
+read_partial_fndecl_40043_fields read_partial fndecl 2 40043 &memdiff_vardecl_tridentfb_c_40043_fields
+bind_cmd_count_vmw_ctx_binding_state_40054_fields bind_cmd_count vmw_ctx_binding_state 0 40054 NULL
@@ -198430,7 +203131,6 @@ index 0000000..6b5367db
+region_size_switch_ctx_40069_fields region_size switch_ctx 0 40069 NULL
+max_pq_dma_device_40070_fields max_pq dma_device 0 40070 NULL
+tda18271_write_regs_fndecl_40082_fields tda18271_write_regs fndecl 3 40082 NULL
-+wIELength_uwb_rc_cmd_set_ie_40094_fields wIELength uwb_rc_cmd_set_ie 0 40094 NULL
+zap_page_range_fndecl_40097_fields zap_page_range fndecl 3-2 40097 NULL
+vma_needs_reservation_fndecl_40101_fields vma_needs_reservation fndecl 3 40101 NULL
+evm_inode_setattr_fndecl_40105_fields evm_inode_setattr fndecl 0 40105 NULL nohasharray
@@ -198448,7 +203148,8 @@ index 0000000..6b5367db
+off_fuse_notify_inval_inode_out_40142_fields off fuse_notify_inval_inode_out 0 40142 NULL
+ftdi_elan_edset_single_fndecl_40157_fields ftdi_elan_edset_single fndecl 0 40157 NULL
+xfs_ialloc_get_rec_fndecl_40163_fields xfs_ialloc_get_rec fndecl 2 40163 NULL
-+sh_size_elf64_shdr_40164_fields sh_size elf64_shdr 0 40164 NULL
++rxbuf_size_emac_adapter_40164_fields rxbuf_size emac_adapter 0 40164 NULL nohasharray
++sh_size_elf64_shdr_40164_fields sh_size elf64_shdr 0 40164 &rxbuf_size_emac_adapter_40164_fields
+pge_ctl_drm_psb_private_40167_fields pge_ctl drm_psb_private 0 40167 NULL
+dev_stripes_btrfs_raid_attr_40170_fields dev_stripes btrfs_raid_attr 0 40170 NULL
+bluecard_write_fndecl_40179_fields bluecard_write fndecl 0-4 40179 NULL
@@ -198456,20 +203157,22 @@ index 0000000..6b5367db
+status_boom_rx_desc_40185_fields status boom_rx_desc 0 40185 NULL
+reshape_progress_r5conf_40192_fields reshape_progress r5conf 0 40192 NULL
+peb_size_ubi_device_40195_fields peb_size ubi_device 0 40195 NULL
-+__jfs_setxattr_fndecl_40196_fields __jfs_setxattr fndecl 5 40196 NULL nohasharray
-+dma_contiguous_reserve_area_fndecl_40196_fields dma_contiguous_reserve_area fndecl 1-2-3 40196 &__jfs_setxattr_fndecl_40196_fields
++dma_contiguous_reserve_area_fndecl_40196_fields dma_contiguous_reserve_area fndecl 1-2-3 40196 NULL nohasharray
++__jfs_setxattr_fndecl_40196_fields __jfs_setxattr fndecl 5 40196 &dma_contiguous_reserve_area_fndecl_40196_fields
+vga_video_num_lines_vardecl_vgacon_c_40199_fields vga_video_num_lines vardecl_vgacon.c 0 40199 NULL
+pvr2_ctrl_get_min_fndecl_40204_fields pvr2_ctrl_get_min fndecl 0 40204 NULL
-+dvb_dvr_ioctl_fndecl_40205_fields dvb_dvr_ioctl fndecl 2 40205 NULL
+num_amgms_mlx4_caps_40207_fields num_amgms mlx4_caps 0 40207 NULL
+ipwireless_tty_received_fndecl_40209_fields ipwireless_tty_received fndecl 3 40209 NULL
++kbuf_alloc_2_sgl_fndecl_40216_fields kbuf_alloc_2_sgl fndecl 1 40216 NULL
+len_p80211ioctl_req_40220_fields len p80211ioctl_req 0 40220 NULL
+bochs_bo_create_fndecl_40223_fields bochs_bo_create fndecl 2 40223 NULL
++size_fuse_getxattr_out_40231_fields size fuse_getxattr_out 0 40231 NULL
++do_jffs2_getxattr_fndecl_40233_fields do_jffs2_getxattr fndecl 0 40233 NULL
+find_gmch_fndecl_40235_fields find_gmch fndecl 1 40235 NULL
+ndr_size_nd_region_40243_fields ndr_size nd_region 0 40243 NULL
+lola_init_stream_fndecl_40245_fields lola_init_stream fndecl 3 40245 NULL
-+mmap_file_operations_40250_fields mmap file_operations 0 40250 NULL nohasharray
-+layoutupdate_len_nfs4_layoutcommit_args_40250_fields layoutupdate_len nfs4_layoutcommit_args 0 40250 &mmap_file_operations_40250_fields
++layoutupdate_len_nfs4_layoutcommit_args_40250_fields layoutupdate_len nfs4_layoutcommit_args 0 40250 NULL nohasharray
++mmap_file_operations_40250_fields mmap file_operations 0 40250 &layoutupdate_len_nfs4_layoutcommit_args_40250_fields
+max_sectors_queue_limits_40252_fields max_sectors queue_limits 0 40252 NULL
+ucNumOfPowerModeEntries__ATOM_POWERPLAY_INFO_40261_fields ucNumOfPowerModeEntries _ATOM_POWERPLAY_INFO 0 40261 NULL
+stop_discovery_fndecl_40262_fields stop_discovery fndecl 4 40262 NULL
@@ -198481,6 +203184,7 @@ index 0000000..6b5367db
+cyttsp_spi_xfer_fndecl_40307_fields cyttsp_spi_xfer fndecl 6 40307 NULL
+gfs2_free_meta_fndecl_40312_fields gfs2_free_meta fndecl 2 40312 NULL
+max_scaled_width_bttv_crop_40325_fields max_scaled_width bttv_crop 0 40325 NULL
++subbufs_produced_rchan_buf_40338_fields subbufs_produced rchan_buf 0 40338 NULL
+dm_rh_get_region_key_fndecl_40342_fields dm_rh_get_region_key fndecl 0 40342 NULL
+__ext4_ext_dirty_fndecl_40343_fields __ext4_ext_dirty fndecl 0 40343 NULL nohasharray
+minimum_acpi_resource_memory32_40343_fields minimum acpi_resource_memory32 0 40343 &__ext4_ext_dirty_fndecl_40343_fields
@@ -198491,12 +203195,11 @@ index 0000000..6b5367db
+cblock_dm_cache_migration_40361_fields cblock dm_cache_migration 0 40361 NULL
+cfpkt_setlen_fndecl_40364_fields cfpkt_setlen fndecl 2 40364 NULL nohasharray
+max_wrs_rds_ib_device_40364_fields max_wrs rds_ib_device 0 40364 &cfpkt_setlen_fndecl_40364_fields
-+pages_per_wr_bio_scrub_wr_ctx_40374_fields pages_per_wr_bio scrub_wr_ctx 0 40374 NULL
++len_raw_data_40368_fields len raw_data 0 40368 NULL
+align_kmem_cache_40377_fields align kmem_cache 0 40377 NULL
+cfg0_size_pcie_port_40380_fields cfg0_size pcie_port 0 40380 NULL
+ilm_len_mt76_fw_header_40389_fields ilm_len mt76_fw_header 0 40389 NULL
-+alloc_test_extent_buffer_fndecl_40392_fields alloc_test_extent_buffer fndecl 2-3 40392 NULL nohasharray
-+px_raw_event_fndecl_40392_fields px_raw_event fndecl 4 40392 &alloc_test_extent_buffer_fndecl_40392_fields
++alloc_test_extent_buffer_fndecl_40392_fields alloc_test_extent_buffer fndecl 3-2 40392 NULL
+file_secno_bplus_leaf_node_40394_fields file_secno bplus_leaf_node 0 40394 NULL nohasharray
+sb_root_hpfs_sb_info_40394_fields sb_root hpfs_sb_info 0 40394 &file_secno_bplus_leaf_node_40394_fields
+snd_ak4113_external_rate_fndecl_40404_fields snd_ak4113_external_rate fndecl 0 40404 NULL nohasharray
@@ -198510,10 +203213,11 @@ index 0000000..6b5367db
+buf_size_in_bytes_kfd_ioctl_dbg_wave_control_args_40427_fields buf_size_in_bytes kfd_ioctl_dbg_wave_control_args 0 40427 NULL
+readisac_IsdnCardState_40429_fields readisac IsdnCardState 0 40429 NULL
+error_reserve_ticket_40431_fields error reserve_ticket 0 40431 NULL
++get_key_haup_common_fndecl_40434_fields get_key_haup_common fndecl 5 40434 NULL
+skb_partial_csum_set_fndecl_40436_fields skb_partial_csum_set fndecl 2 40436 NULL
-+__i915_error_advance_fndecl_40440_fields __i915_error_advance fndecl 2 40440 NULL
+numdisabled_tun_struct_40442_fields numdisabled tun_struct 0 40442 NULL
+begin_switchdev_vlan_dump_40443_fields begin switchdev_vlan_dump 0 40443 NULL
++qd2index_fndecl_40449_fields qd2index fndecl 0 40449 NULL
+gnttab_setup_auto_xlat_frames_fndecl_40455_fields gnttab_setup_auto_xlat_frames fndecl 1 40455 NULL
+curpacksize_snd_usb_endpoint_40462_fields curpacksize snd_usb_endpoint 0 40462 NULL
+nr_i2c_adapter_40466_fields nr i2c_adapter 0 40466 NULL
@@ -198521,8 +203225,8 @@ index 0000000..6b5367db
+eh_depth_ext4_extent_header_40488_fields eh_depth ext4_extent_header 0 40488 NULL
+s_cgoffset_ufs_sb_private_info_40490_fields s_cgoffset ufs_sb_private_info 0 40490 NULL
+tx_max_cdc_ncm_ctx_40493_fields tx_max cdc_ncm_ctx 0 40493 NULL nohasharray
-+num_mtts_mlx4_caps_40493_fields num_mtts mlx4_caps 0 40493 &tx_max_cdc_ncm_ctx_40493_fields nohasharray
-+length_mtd_oob_buf32_40493_fields length mtd_oob_buf32 0 40493 &num_mtts_mlx4_caps_40493_fields
++length_mtd_oob_buf32_40493_fields length mtd_oob_buf32 0 40493 &tx_max_cdc_ncm_ctx_40493_fields nohasharray
++num_mtts_mlx4_caps_40493_fields num_mtts mlx4_caps 0 40493 &length_mtd_oob_buf32_40493_fields
+len_tx_buf_40498_fields len tx_buf 0 40498 NULL
+header_length_datalink_proto_40501_fields header_length datalink_proto 0 40501 NULL
+size_iscsi_segment_40510_fields size iscsi_segment 0 40510 NULL nohasharray
@@ -198543,34 +203247,36 @@ index 0000000..6b5367db
+read_partial_message_section_fndecl_40551_fields read_partial_message_section fndecl 3 40551 NULL
+xfs_file_iomap_end_delalloc_fndecl_40555_fields xfs_file_iomap_end_delalloc fndecl 4-2 40555 NULL
+maxpacket_isp1362_ep_40564_fields maxpacket isp1362_ep 0 40564 NULL
++isdn_read_fndecl_40566_fields isdn_read fndecl 3 40566 NULL
+ptrace_readdata_fndecl_40567_fields ptrace_readdata fndecl 4-2 40567 NULL
+ucNumStates__ATOM_PPLIB_POWERPLAYTABLE_40568_fields ucNumStates _ATOM_PPLIB_POWERPLAYTABLE 0 40568 NULL
+caif_stream_sendmsg_fndecl_40573_fields caif_stream_sendmsg fndecl 3 40573 NULL
+qp_alloc_queue_fndecl_40575_fields qp_alloc_queue fndecl 1 40575 NULL
+dm_bufio_read_fndecl_40577_fields dm_bufio_read fndecl 2 40577 NULL
-+compat_sys_preadv2_fndecl_40579_fields compat_sys_preadv2 fndecl 3 40579 NULL
+hfi1_alloc_devdata_fndecl_40584_fields hfi1_alloc_devdata fndecl 2 40584 NULL
-+dram_size_sst_res_info_40602_fields dram_size sst_res_info 0 40602 NULL
++ioread8_fndecl_40594_fields ioread8 fndecl 0 40594 NULL
++dram_size_sst_res_info_40602_fields dram_size sst_res_info 0 40602 NULL nohasharray
++max310x_set_ref_clk_fndecl_40602_fields max310x_set_ref_clk fndecl 0-2 40602 &dram_size_sst_res_info_40602_fields
+value_len_ext4_xattr_info_40604_fields value_len ext4_xattr_info 0 40604 NULL
+rf_size_rt2x00_ops_40605_fields rf_size rt2x00_ops 0 40605 NULL
+vyres_aty128_crtc_40610_fields vyres aty128_crtc 0 40610 NULL
+page_offset_octeon_skb_page_info_40618_fields page_offset octeon_skb_page_info 0 40618 NULL
+num_queues_qed_dev_eth_info_40624_fields num_queues qed_dev_eth_info 0 40624 NULL nohasharray
+mailbox_start_sst_info_40624_fields mailbox_start sst_info 0 40624 &num_queues_qed_dev_eth_info_40624_fields
-+pcpu_get_vm_areas_fndecl_40630_fields pcpu_get_vm_areas fndecl 4 40630 NULL nohasharray
-+db_addr_mlx5_ib_create_wq_40630_fields db_addr mlx5_ib_create_wq 0 40630 &pcpu_get_vm_areas_fndecl_40630_fields
-+dev_set_alias_fndecl_40631_fields dev_set_alias fndecl 3 40631 NULL
-+map_dirent_fndecl_40635_fields map_dirent fndecl 2 40635 NULL
++db_addr_mlx5_ib_create_wq_40630_fields db_addr mlx5_ib_create_wq 0 40630 NULL nohasharray
++pcpu_get_vm_areas_fndecl_40630_fields pcpu_get_vm_areas fndecl 4 40630 &db_addr_mlx5_ib_create_wq_40630_fields
++map_dirent_fndecl_40635_fields map_dirent fndecl 2 40635 NULL nohasharray
++cfg_fcp_io_channel_lpfc_hba_40635_fields cfg_fcp_io_channel lpfc_hba 0 40635 &map_dirent_fndecl_40635_fields
+rotate_buf_a_little_fndecl_40654_fields rotate_buf_a_little fndecl 2 40654 NULL
+rq_rcvsize_rpc_rqst_40660_fields rq_rcvsize rpc_rqst 0 40660 NULL
+number_xt_af_40661_fields number xt_af 0 40661 NULL
+aac_nark_ioremap_fndecl_40672_fields aac_nark_ioremap fndecl 2 40672 NULL
+num_queue_pairs_i40e_virtchnl_vsi_resource_40682_fields num_queue_pairs i40e_virtchnl_vsi_resource 0 40682 NULL
+qed_cxt_get_proto_cid_count_fndecl_40685_fields qed_cxt_get_proto_cid_count fndecl 0 40685 NULL
-+ubi_resize_volume_fndecl_40687_fields ubi_resize_volume fndecl 2 40687 NULL nohasharray
-+xfs_get_blocks_direct_fndecl_40687_fields xfs_get_blocks_direct fndecl 2 40687 &ubi_resize_volume_fndecl_40687_fields
++xfs_get_blocks_direct_fndecl_40687_fields xfs_get_blocks_direct fndecl 2 40687 NULL nohasharray
++ubi_resize_volume_fndecl_40687_fields ubi_resize_volume fndecl 2 40687 &xfs_get_blocks_direct_fndecl_40687_fields
++clk_round_rate_fndecl_40691_fields clk_round_rate fndecl 0-2 40691 NULL
+aa_simple_write_to_buffer_fndecl_40704_fields aa_simple_write_to_buffer fndecl 3 40704 NULL
-+max_znode_sz_ubifs_info_40705_fields max_znode_sz ubifs_info 0 40705 NULL
+ctrl_out_pipe_hfcsusb_40706_fields ctrl_out_pipe hfcsusb 0 40706 NULL
+__x86_set_memory_region_fndecl_40708_fields __x86_set_memory_region fndecl 4 40708 NULL nohasharray
+nTxBlock_vardecl_jfs_txnmgr_c_40708_fields nTxBlock vardecl_jfs_txnmgr.c 0 40708 &__x86_set_memory_region_fndecl_40708_fields
@@ -198581,7 +203287,6 @@ index 0000000..6b5367db
+do_splice_to_fndecl_40737_fields do_splice_to fndecl 0 40737 NULL
+sisfb_getheapstart_fndecl_40740_fields sisfb_getheapstart fndecl 0 40740 NULL nohasharray
+intel_gtt_mappable_entries_fndecl_40740_fields intel_gtt_mappable_entries fndecl 0 40740 &sisfb_getheapstart_fndecl_40740_fields
-+IELength_wlan_bssid_ex_40743_fields IELength wlan_bssid_ex 0 40743 NULL
+smsc47b397_find_fndecl_40748_fields smsc47b397_find fndecl 0 40748 NULL
+ctrl_macb_dma_desc_40750_fields ctrl macb_dma_desc 0 40750 NULL
+read_reg_isac_hw_40755_fields read_reg isac_hw 0 40755 NULL
@@ -198589,19 +203294,19 @@ index 0000000..6b5367db
+vfs_iter_write_fndecl_40761_fields vfs_iter_write fndecl 0 40761 NULL
+total_xfer_length_ScsiReqBlk_40768_fields total_xfer_length ScsiReqBlk 0 40768 NULL
+pdu_write_fndecl_40774_fields pdu_write fndecl 3 40774 NULL
-+private_data_len_rdma_conn_param_40796_fields private_data_len rdma_conn_param 0 40796 NULL
++scsi_log_print_sense_fndecl_40783_fields scsi_log_print_sense fndecl 5 40783 NULL
+check_frame_fndecl_40798_fields check_frame fndecl 0 40798 NULL nohasharray
+ext4_dio_get_block_fndecl_40798_fields ext4_dio_get_block fndecl 2 40798 &check_frame_fndecl_40798_fields nohasharray
+ext4_multi_mount_protect_fndecl_40798_fields ext4_multi_mount_protect fndecl 2 40798 &ext4_dio_get_block_fndecl_40798_fields
+multi_write_idx_wmi_40801_fields multi_write_idx wmi 0 40801 NULL nohasharray
+cmd_len_request_40801_fields cmd_len request 0 40801 &multi_write_idx_wmi_40801_fields
+data_offset_raid_set_40802_fields data_offset raid_set 0 40802 NULL
-+sz_m1_mlx5_wq_ll_40805_fields sz_m1 mlx5_wq_ll 0 40805 NULL
+ceph_osdc_readpages_fndecl_40814_fields ceph_osdc_readpages fndecl 0 40814 NULL nohasharray
+sysctl_wmem_max_vardecl_40814_fields sysctl_wmem_max vardecl 0 40814 &ceph_osdc_readpages_fndecl_40814_fields
+dma_pad_mask_request_queue_40816_fields dma_pad_mask request_queue 0 40816 NULL
+INFTL_findfreeblock_fndecl_40819_fields INFTL_findfreeblock fndecl 0 40819 NULL
-+isku_sysfs_write_fndecl_40820_fields isku_sysfs_write fndecl 5 40820 NULL
++length_sst_dsp_header_40829_fields length sst_dsp_header 0 40829 NULL
++cont_add_fndecl_40837_fields cont_add fndecl 5 40837 NULL
+l2_fhdr_ip_xsum_l2_fhdr_40843_fields l2_fhdr_ip_xsum l2_fhdr 0 40843 NULL
+newblocks_xfs_growfs_data_40847_fields newblocks xfs_growfs_data 0 40847 NULL
+extended_capabilities_len_wiphy_40861_fields extended_capabilities_len wiphy 0 40861 NULL
@@ -198611,16 +203316,14 @@ index 0000000..6b5367db
+reply_queue_count_MPT3SAS_ADAPTER_40870_fields reply_queue_count MPT3SAS_ADAPTER 0 40870 NULL
+sector_count_partition_40874_fields sector_count partition 0 40874 NULL
+config_len_mic_device_desc_40877_fields config_len mic_device_desc 0 40877 NULL
-+osst_set_options_fndecl_40884_fields osst_set_options fndecl 2 40884 NULL nohasharray
-+min_agbno_xfs_alloc_arg_40884_fields min_agbno xfs_alloc_arg 0 40884 &osst_set_options_fndecl_40884_fields
++min_agbno_xfs_alloc_arg_40884_fields min_agbno xfs_alloc_arg 0 40884 NULL nohasharray
++osst_set_options_fndecl_40884_fields osst_set_options fndecl 2 40884 &min_agbno_xfs_alloc_arg_40884_fields
+tcf_csum_ipv4_tcp_fndecl_40889_fields tcf_csum_ipv4_tcp fndecl 3 40889 NULL
+size_drm_i915_gem_mmap_40890_fields size drm_i915_gem_mmap 0 40890 NULL
-+pci_add_dynid_fndecl_40893_fields pci_add_dynid fndecl 3-8 40893 NULL
++pci_add_dynid_fndecl_40893_fields pci_add_dynid fndecl 3 40893 NULL
+ath6kl_fwlog_block_read_fndecl_40895_fields ath6kl_fwlog_block_read fndecl 3 40895 NULL
+dst_len_akcipher_request_40899_fields dst_len akcipher_request 0 40899 NULL
+uart_write_fndecl_40916_fields uart_write fndecl 3 40916 NULL
-+build_verbs_tx_desc_fndecl_40917_fields build_verbs_tx_desc fndecl 3 40917 NULL
-+msix_count_vmd_dev_40924_fields msix_count vmd_dev 0 40924 NULL
+vmw_cmdbuf_send_device_command_fndecl_40925_fields vmw_cmdbuf_send_device_command fndecl 3 40925 NULL
+__clone_and_map_data_bio_fndecl_40928_fields __clone_and_map_data_bio fndecl 3-0 40928 NULL nohasharray
+ea_put_fndecl_40928_fields ea_put fndecl 4 40928 &__clone_and_map_data_bio_fndecl_40928_fields nohasharray
@@ -198628,10 +203331,9 @@ index 0000000..6b5367db
+opcount_xfs_fsop_attrmulti_handlereq_40929_fields opcount xfs_fsop_attrmulti_handlereq 0 40929 NULL
+scsiback_do_resp_with_sense_fndecl_40934_fields scsiback_do_resp_with_sense fndecl 3 40934 NULL
+fuse_send_write_fndecl_40936_fields fuse_send_write fndecl 0-4 40936 NULL
-+ecryptfs_filldir_fndecl_40939_fields ecryptfs_filldir fndecl 3 40939 NULL nohasharray
-+nr_touch_shapes_f11_2d_sensor_queries_40939_fields nr_touch_shapes f11_2d_sensor_queries 0 40939 &ecryptfs_filldir_fndecl_40939_fields
+len_set_config_param_40942_fields len set_config_param 0 40942 NULL
+s_log_groups_per_flex_ext4_sb_info_40945_fields s_log_groups_per_flex ext4_sb_info 0 40945 NULL
++az6007_write_fndecl_40948_fields az6007_write fndecl 6 40948 NULL
+srq_count_qed_cxt_mngr_40961_fields srq_count qed_cxt_mngr 0 40961 NULL
+ext4_fill_fiemap_extents_fndecl_40966_fields ext4_fill_fiemap_extents fndecl 2-3 40966 NULL
+bottom_qxl_urect_40968_fields bottom qxl_urect 0 40968 NULL
@@ -198640,12 +203342,9 @@ index 0000000..6b5367db
+compat_sys_recvfrom_fndecl_40978_fields compat_sys_recvfrom fndecl 3 40978 NULL
+read_iter_file_operations_40980_fields read_iter file_operations 0 40980 NULL
+blk_mq_init_tags_fndecl_40986_fields blk_mq_init_tags fndecl 2 40986 NULL
-+hwdep_write_fndecl_40987_fields hwdep_write fndecl 3 40987 NULL
+ecryptfs_send_miscdev_fndecl_40995_fields ecryptfs_send_miscdev fndecl 2 40995 NULL
-+ath6kl_target_config_wlan_params_fndecl_41017_fields ath6kl_target_config_wlan_params fndecl 2 41017 NULL nohasharray
-+proc_projid_map_write_fndecl_41017_fields proc_projid_map_write fndecl 3 41017 &ath6kl_target_config_wlan_params_fndecl_41017_fields
-+swapdev_block_fndecl_41020_fields swapdev_block fndecl 0 41020 NULL nohasharray
-+xfs_add_to_ioend_fndecl_41020_fields xfs_add_to_ioend fndecl 3 41020 &swapdev_block_fndecl_41020_fields
++ath6kl_target_config_wlan_params_fndecl_41017_fields ath6kl_target_config_wlan_params fndecl 2 41017 NULL
++xfs_add_to_ioend_fndecl_41020_fields xfs_add_to_ioend fndecl 3 41020 NULL
+store_mfn_start_info_41034_fields store_mfn start_info 0 41034 NULL
+index_radix_tree_iter_41036_fields index radix_tree_iter 0 41036 NULL
+altera_set_dr_pre_fndecl_41037_fields altera_set_dr_pre fndecl 2 41037 NULL
@@ -198653,7 +203352,6 @@ index 0000000..6b5367db
+fofs_extent_info_41041_fields fofs extent_info 0 41041 NULL
+d0_vring_rx_mac_41042_fields d0 vring_rx_mac 0 41042 NULL
+ieee802154_hdr_pull_fndecl_41051_fields ieee802154_hdr_pull fndecl 0 41051 NULL
-+ci_hdrc_add_device_fndecl_41055_fields ci_hdrc_add_device fndecl 3 41055 NULL
+resp_len_bnx2fc_mp_req_41057_fields resp_len bnx2fc_mp_req 0 41057 NULL
+bits_per_word_spi_transfer_41063_fields bits_per_word spi_transfer 0 41063 NULL nohasharray
+st21nfca_hci_dm_update_aid_fndecl_41063_fields st21nfca_hci_dm_update_aid fndecl 3 41063 &bits_per_word_spi_transfer_41063_fields
@@ -198667,15 +203365,13 @@ index 0000000..6b5367db
+scrub_chunk_fndecl_41105_fields scrub_chunk fndecl 3 41105 NULL
+res_ver_val_pvr2_hdw_41107_fields res_ver_val pvr2_hdw 0 41107 NULL
+physical_start_stripe_41108_fields physical_start stripe 0 41108 NULL
++max_cdclk_freq_drm_i915_private_41112_fields max_cdclk_freq drm_i915_private 0 41112 NULL
+xfs_imap_lookup_fndecl_41113_fields xfs_imap_lookup fndecl 4-3 41113 NULL
-+in_iovs_fuse_ioctl_out_41117_fields in_iovs fuse_ioctl_out 0 41117 NULL
-+nvmf_dev_write_fndecl_41118_fields nvmf_dev_write fndecl 3 41118 NULL
++xfs_ag_resv_needed_fndecl_41115_fields xfs_ag_resv_needed fndecl 0 41115 NULL
+ubifs_wbuf_write_nolock_fndecl_41121_fields ubifs_wbuf_write_nolock fndecl 3 41121 NULL
+datalen_brcmf_event_msg_41123_fields datalen brcmf_event_msg 0 41123 NULL
-+__memblock_free_late_fndecl_41130_fields __memblock_free_late fndecl 2 41130 NULL
+data_out_pipe_uas_dev_info_41134_fields data_out_pipe uas_dev_info 0 41134 NULL
+qcaspi_read_burst_fndecl_41137_fields qcaspi_read_burst fndecl 3 41137 NULL
-+hidp_process_report_fndecl_41140_fields hidp_process_report fndecl 4 41140 NULL
+ieee80211_cs_headroom_fndecl_41144_fields ieee80211_cs_headroom fndecl 0 41144 NULL
+rx_drvinfo_size_rtl_stats_41161_fields rx_drvinfo_size rtl_stats 0 41161 NULL
+__blk_recalc_rq_segments_fndecl_41164_fields __blk_recalc_rq_segments fndecl 0 41164 NULL
@@ -198683,23 +203379,24 @@ index 0000000..6b5367db
+get_blocks_target_backend_ops_41168_fields get_blocks target_backend_ops 0 41168 NULL
+size_brnf_frag_data_41177_fields size brnf_frag_data 0 41177 NULL
+start_flakey_c_41178_fields start flakey_c 0 41178 NULL
-+lro_wqe_sz_mlx5e_params_41180_fields lro_wqe_sz mlx5e_params 0 41180 NULL
+gfn_guest_walker64_41182_fields gfn guest_walker64 0 41182 NULL
+index_vardecl_via82xx_c_41183_fields index vardecl_via82xx.c 0 41183 NULL
++binder_set_nice_fndecl_41184_fields binder_set_nice fndecl 1 41184 NULL
+numqueues_macvlan_dev_41212_fields numqueues macvlan_dev 0 41212 NULL
+p9_client_read_fndecl_41223_fields p9_client_read fndecl 0 41223 NULL
++prctl_set_mm_fndecl_41225_fields prctl_set_mm fndecl 2 41225 NULL
+enic_change_mtu_fndecl_41227_fields enic_change_mtu fndecl 2 41227 NULL nohasharray
+iscsi_first_burst_len_dev_db_entry_41227_fields iscsi_first_burst_len dev_db_entry 0 41227 &enic_change_mtu_fndecl_41227_fields
-+private_data_len_nes_qp_41230_fields private_data_len nes_qp 0 41230 NULL
+len_driver_data_41237_fields len driver_data 0 41237 NULL
-+ses_send_diag_fndecl_41244_fields ses_send_diag fndecl 4 41244 NULL
++ena_enable_msix_fndecl_41251_fields ena_enable_msix fndecl 2 41251 NULL
+croph_val_pvr2_hdw_41253_fields croph_val pvr2_hdw 0 41253 NULL
++analyze_baud_rate_fndecl_41256_fields analyze_baud_rate fndecl 0-2 41256 NULL
+get_res_add_align_fndecl_41257_fields get_res_add_align fndecl 0 41257 NULL
+qlen_sk_buff_head_41259_fields qlen sk_buff_head 0 41259 NULL nohasharray
+diva_os_alloc_message_buffer_fndecl_41259_fields diva_os_alloc_message_buffer fndecl 1 41259 &qlen_sk_buff_head_41259_fields
+do_erase_fndecl_41261_fields do_erase fndecl 4-2 41261 NULL
+lm8323_read_fndecl_41264_fields lm8323_read fndecl 4 41264 NULL
-+blkdev_issue_zeroout_fndecl_41272_fields blkdev_issue_zeroout fndecl 3-0-2 41272 NULL
++blkdev_issue_zeroout_fndecl_41272_fields blkdev_issue_zeroout fndecl 0-3-2 41272 NULL
+rbd_obj_read_sync_fndecl_41273_fields rbd_obj_read_sync fndecl 4-3 41273 NULL
+__btrfs_prealloc_file_range_fndecl_41278_fields __btrfs_prealloc_file_range fndecl 3-4 41278 NULL
+num_reg_defaults_raw_regmap_41282_fields num_reg_defaults_raw regmap 0 41282 NULL
@@ -198709,27 +203406,31 @@ index 0000000..6b5367db
+tcp_write_xmit_fndecl_41289_fields tcp_write_xmit fndecl 2 41289 &dy_fb_fillrect_41289_fields
+src_len_kpp_request_41307_fields src_len kpp_request 0 41307 NULL
+register_vlan_device_fndecl_41310_fields register_vlan_device fndecl 2 41310 NULL
-+cma_declare_contiguous_fndecl_41316_fields cma_declare_contiguous fndecl 4-1-3 41316 NULL nohasharray
++cma_declare_contiguous_fndecl_41316_fields cma_declare_contiguous fndecl 4-2-1-3 41316 NULL nohasharray
+block_start_extent_map_41316_fields block_start extent_map 0 41316 &cma_declare_contiguous_fndecl_41316_fields
+pc_len_s_pcon_41324_fields pc_len s_pcon 0 41324 NULL
+max_fcoe_exchanges_cnic_dev_41335_fields max_fcoe_exchanges cnic_dev 0 41335 NULL
+last_alloc_physical_block_ext2_block_alloc_info_41336_fields last_alloc_physical_block ext2_block_alloc_info 0 41336 NULL
++size_gb_loopback_41339_fields size gb_loopback 0 41339 NULL
++sc_max_req_size_svcxprt_rdma_41343_fields sc_max_req_size svcxprt_rdma 0 41343 NULL
+key_len_wmi_vdev_install_key_arg_41347_fields key_len wmi_vdev_install_key_arg 0 41347 NULL
-+size_snd_info_entry_41350_fields size snd_info_entry 0 41350 NULL nohasharray
-+ocfs2_read_xattr_block_fndecl_41350_fields ocfs2_read_xattr_block fndecl 0-2 41350 &size_snd_info_entry_41350_fields nohasharray
-+pool_create_fndecl_41350_fields pool_create fndecl 3 41350 &ocfs2_read_xattr_block_fndecl_41350_fields
++ocfs2_read_xattr_block_fndecl_41350_fields ocfs2_read_xattr_block fndecl 0-2 41350 NULL nohasharray
++pool_create_fndecl_41350_fields pool_create fndecl 3 41350 &ocfs2_read_xattr_block_fndecl_41350_fields nohasharray
++size_snd_info_entry_41350_fields size snd_info_entry 0 41350 &pool_create_fndecl_41350_fields
+num_eq_entries_hba_parameters_41369_fields num_eq_entries hba_parameters 0 41369 NULL
+wrsent_cyberjack_private_41371_fields wrsent cyberjack_private 0 41371 NULL
++snic_dump_desc_fndecl_41372_fields snic_dump_desc fndecl 3 41372 NULL
+do_device_access_fndecl_41373_fields do_device_access fndecl 2-3-0 41373 NULL
+mremap_to_fndecl_41376_fields mremap_to fndecl 3-4-1-2 41376 NULL nohasharray
+sectors_per_block_era_41376_fields sectors_per_block era 0 41376 &mremap_to_fndecl_41376_fields
++nci_uart_set_config_fndecl_41382_fields nci_uart_set_config fndecl 2 41382 NULL
+update_headroom_fndecl_41386_fields update_headroom fndecl 2 41386 NULL
+atomic_write_len_kernfs_ops_41387_fields atomic_write_len kernfs_ops 0 41387 NULL nohasharray
+wsize_nfs_server_41387_fields wsize nfs_server 0 41387 &atomic_write_len_kernfs_ops_41387_fields
++traffic_class_tos_qed_rdma_query_qp_out_params_41398_fields traffic_class_tos qed_rdma_query_qp_out_params 0 41398 NULL
+fat32_root_cluster_fat_bios_param_block_41399_fields fat32_root_cluster fat_bios_param_block 0 41399 NULL
+i2400m_msg_to_dev_fndecl_41409_fields i2400m_msg_to_dev fndecl 3 41409 NULL
+num_channels_fndecl_41411_fields num_channels fndecl 0-1 41411 NULL
-+addr_nvme_keyed_sgl_desc_41437_fields addr nvme_keyed_sgl_desc 0 41437 NULL
+l1_size_vardecl_acpi_extlog_c_41440_fields l1_size vardecl_acpi_extlog.c 0 41440 NULL
+vram_remap_vardecl_vesafb_c_41441_fields vram_remap vardecl_vesafb.c 0 41441 NULL
+onenand_write_oob_nolock_fndecl_41451_fields onenand_write_oob_nolock fndecl 2 41451 NULL
@@ -198739,8 +203440,9 @@ index 0000000..6b5367db
+mem_lseek_fndecl_41457_fields mem_lseek fndecl 2 41457 &s_inodes_per_block_ext4_sb_info_41457_fields
+cxgbi_ddp_reserve_fndecl_41468_fields cxgbi_ddp_reserve fndecl 4 41468 NULL nohasharray
+xfs_rmap_free_extent_fndecl_41468_fields xfs_rmap_free_extent fndecl 4-3-5 41468 &cxgbi_ddp_reserve_fndecl_41468_fields
-+sd_qc_per_block_gfs2_sbd_41469_fields sd_qc_per_block gfs2_sbd 0 41469 NULL nohasharray
-+pageshift_alauda_media_info_41469_fields pageshift alauda_media_info 0 41469 &sd_qc_per_block_gfs2_sbd_41469_fields
++pageshift_alauda_media_info_41469_fields pageshift alauda_media_info 0 41469 NULL nohasharray
++sd_qc_per_block_gfs2_sbd_41469_fields sd_qc_per_block gfs2_sbd 0 41469 &pageshift_alauda_media_info_41469_fields
++svcrdma_max_req_size_vardecl_41484_fields svcrdma_max_req_size vardecl 0 41484 NULL
+video_offset_sis_video_info_41491_fields video_offset sis_video_info 0 41491 NULL
+lpddr_info_query_fndecl_41492_fields lpddr_info_query fndecl 0 41492 NULL
+dir_entries_fat_floppy_defaults_41499_fields dir_entries fat_floppy_defaults 0 41499 NULL
@@ -198753,7 +203455,6 @@ index 0000000..6b5367db
+lv_niovecs_xfs_log_vec_41525_fields lv_niovecs xfs_log_vec 0 41525 NULL
+i40iw_cm_build_mpa_frame_fndecl_41530_fields i40iw_cm_build_mpa_frame fndecl 0 41530 NULL nohasharray
+max_targets_orc_host_41530_fields max_targets orc_host 0 41530 &i40iw_cm_build_mpa_frame_fndecl_41530_fields
-+pci_vpd_find_tag_fndecl_41534_fields pci_vpd_find_tag fndecl 2 41534 NULL
+sv_xdrsize_svc_serv_41544_fields sv_xdrsize svc_serv 0 41544 NULL
+velocity_change_mtu_fndecl_41548_fields velocity_change_mtu fndecl 2 41548 NULL
+ntargets_aoedev_41550_fields ntargets aoedev 0 41550 NULL
@@ -198762,23 +203463,21 @@ index 0000000..6b5367db
+mtd_get_device_size_fndecl_41579_fields mtd_get_device_size fndecl 0 41579 NULL
+FirstBurstLength_iscsi_sess_ops_41581_fields FirstBurstLength iscsi_sess_ops 0 41581 NULL
+rx_buffersize_b43legacy_dmaring_41583_fields rx_buffersize b43legacy_dmaring 0 41583 NULL
-+fuse_write_end_fndecl_41587_fields fuse_write_end fndecl 5-3 41587 NULL
+len_on_first_bd_eth_fast_path_rx_reg_cqe_41602_fields len_on_first_bd eth_fast_path_rx_reg_cqe 0 41602 NULL
+vmw_gb_shader_init_fndecl_41607_fields vmw_gb_shader_init fndecl 3 41607 NULL
+vmalloc_to_pfn_fndecl_41614_fields vmalloc_to_pfn fndecl 0 41614 NULL
+hba_queue_depth_MPT3SAS_ADAPTER_41617_fields hba_queue_depth MPT3SAS_ADAPTER 0 41617 NULL
-+size_data_platform_device_info_41619_fields size_data platform_device_info 0 41619 NULL
+dev_major_cuse_init_out_41635_fields dev_major cuse_init_out 0 41635 NULL
+dm_bm_prefetch_fndecl_41636_fields dm_bm_prefetch fndecl 2 41636 NULL
+rx_buffer_len_e1000_adapter_41647_fields rx_buffer_len e1000_adapter 0 41647 NULL
-+usb_alloc_coherent_fndecl_41655_fields usb_alloc_coherent fndecl 2 41655 NULL
++xfs_reflink_find_shared_fndecl_41655_fields xfs_reflink_find_shared fndecl 3-2 41655 NULL
+data_length_bnx2i_reject_msg_41661_fields data_length bnx2i_reject_msg 0 41661 NULL
+selnl_msglen_fndecl_41672_fields selnl_msglen fndecl 0 41672 NULL
+qib_create_ctxtdata_fndecl_41674_fields qib_create_ctxtdata fndecl 2 41674 NULL
+vram_start_vmw_private_41679_fields vram_start vmw_private 0 41679 NULL
+encrypted_filename_size_ecryptfs_filename_41686_fields encrypted_filename_size ecryptfs_filename 0 41686 NULL nohasharray
+firstUnit_INFTLPartition_41686_fields firstUnit INFTLPartition 0 41686 &encrypted_filename_size_ecryptfs_filename_41686_fields
-+ath_rx_edma_init_fndecl_41688_fields ath_rx_edma_init fndecl 2 41688 NULL
++nrxq_sge_uld_rxq_info_41694_fields nrxq sge_uld_rxq_info 0 41694 NULL
+mem_zatm_dev_41696_fields mem zatm_dev 0 41696 NULL
+zoran_v4l2_calc_bufsize_fndecl_41703_fields zoran_v4l2_calc_bufsize fndecl 0 41703 NULL
+bfs_move_blocks_fndecl_41706_fields bfs_move_blocks fndecl 2-4 41706 NULL
@@ -198786,8 +203485,10 @@ index 0000000..6b5367db
+l_curr_block_xlog_41718_fields l_curr_block xlog 0 41718 NULL
+hlen_ip_tunnel_41720_fields hlen ip_tunnel 0 41720 NULL
+width_tw68_dev_41726_fields width tw68_dev 0 41726 NULL
++pci_enable_msi_range_fndecl_41728_fields pci_enable_msi_range fndecl 3 41728 NULL
+sb_sectlog_xfs_sb_41740_fields sb_sectlog xfs_sb 0 41740 NULL
-+npages_sdma_mmu_node_41743_fields npages sdma_mmu_node 0 41743 NULL
++num_tx_electrodes_f54_data_41743_fields num_tx_electrodes f54_data 0 41743 NULL nohasharray
++npages_sdma_mmu_node_41743_fields npages sdma_mmu_node 0 41743 &num_tx_electrodes_f54_data_41743_fields
+cxgb3i_max_connect_vardecl_cxgb3i_c_41744_fields cxgb3i_max_connect vardecl_cxgb3i.c 0 41744 NULL
+val_xfs_sysctl_val_41747_fields val xfs_sysctl_val 0 41747 NULL
+iic_tpm_read_fndecl_41748_fields iic_tpm_read fndecl 3 41748 NULL
@@ -198796,12 +203497,12 @@ index 0000000..6b5367db
+encode_filename3_fndecl_41752_fields encode_filename3 fndecl 3 41752 NULL
+insert_dent_fndecl_41753_fields insert_dent fndecl 3-4 41753 NULL
+i_metasize_romfs_inode_info_41756_fields i_metasize romfs_inode_info 0 41756 NULL
++ovs_nla_add_action_fndecl_41757_fields ovs_nla_add_action fndecl 4-0 41757 NULL
+bnx2fc_process_l2_frame_compl_fndecl_41763_fields bnx2fc_process_l2_frame_compl fndecl 3 41763 NULL nohasharray
+size_port_buffer_41763_fields size port_buffer 0 41763 &bnx2fc_process_l2_frame_compl_fndecl_41763_fields
-+bbt_erase_shift_nand_chip_41764_fields bbt_erase_shift nand_chip 0 41764 NULL nohasharray
-+len_cbuf_41764_fields len cbuf 0 41764 &bbt_erase_shift_nand_chip_41764_fields
++len_cbuf_41764_fields len cbuf 0 41764 NULL nohasharray
++bbt_erase_shift_nand_chip_41764_fields bbt_erase_shift nand_chip 0 41764 &len_cbuf_41764_fields
+__alloc_bootmem_node_high_fndecl_41767_fields __alloc_bootmem_node_high fndecl 3-4 41767 NULL
-+swsusp_resume_block_vardecl_41771_fields swsusp_resume_block vardecl 0 41771 NULL
+ocfs2_truncate_cluster_pages_fndecl_41773_fields ocfs2_truncate_cluster_pages fndecl 2-3 41773 NULL
+ath9k_multi_regread_fndecl_41779_fields ath9k_multi_regread fndecl 4 41779 NULL
+alloc_dummy_extent_buffer_fndecl_41781_fields alloc_dummy_extent_buffer fndecl 2-3 41781 NULL nohasharray
@@ -198811,7 +203512,6 @@ index 0000000..6b5367db
+num_bytes_drm_dp_remote_i2c_write_41786_fields num_bytes drm_dp_remote_i2c_write 0 41786 NULL
+max_msg_length_mei_client_properties_41791_fields max_msg_length mei_client_properties 0 41791 NULL nohasharray
+make_idx_node_fndecl_41791_fields make_idx_node fndecl 6-5 41791 &max_msg_length_mei_client_properties_41791_fields
-+generic_ocp_write_fndecl_41792_fields generic_ocp_write fndecl 4 41792 NULL
+rx_pkt_length_rxpd_41805_fields rx_pkt_length rxpd 0 41805 NULL
+alloc_ksz_desc_info_41806_fields alloc ksz_desc_info 0 41806 NULL
+udf_get_pblock_fndecl_41813_fields udf_get_pblock fndecl 0-4-2 41813 NULL nohasharray
@@ -198820,6 +203520,7 @@ index 0000000..6b5367db
+nports_cxgb4_lld_info_41815_fields nports cxgb4_lld_info 0 41815 NULL
+vmw_cmdbuf_alloc_space_fndecl_41823_fields vmw_cmdbuf_alloc_space fndecl 3 41823 NULL
+n_ssids_wmi_start_scan_arg_41826_fields n_ssids wmi_start_scan_arg 0 41826 NULL
++data_end_flat_hdr_41827_fields data_end flat_hdr 0 41827 NULL
+fcs_del_mlx4_en_rx_ring_41830_fields fcs_del mlx4_en_rx_ring 0 41830 NULL
+convert_initialized_extent_fndecl_41833_fields convert_initialized_extent fndecl 0-5 41833 NULL
+wdt87xx_get_string_fndecl_41835_fields wdt87xx_get_string fndecl 4 41835 NULL
@@ -198828,8 +203529,8 @@ index 0000000..6b5367db
+al_tr_number_drbd_device_41847_fields al_tr_number drbd_device 0 41847 NULL
+ar5523_cmd_write_fndecl_41852_fields ar5523_cmd_write fndecl 4 41852 NULL nohasharray
+free_bootmem_node_fndecl_41852_fields free_bootmem_node fndecl 3-2 41852 &ar5523_cmd_write_fndecl_41852_fields
-+compatsize_xt_target_41854_fields compatsize xt_target 0 41854 NULL nohasharray
-+tx_headroom_nfc_dev_41854_fields tx_headroom nfc_dev 0 41854 &compatsize_xt_target_41854_fields
++tx_headroom_nfc_dev_41854_fields tx_headroom nfc_dev 0 41854 NULL nohasharray
++compatsize_xt_target_41854_fields compatsize xt_target 0 41854 &tx_headroom_nfc_dev_41854_fields
+max_header_size_smb_version_values_41855_fields max_header_size smb_version_values 0 41855 NULL
+dm_add_exception_fndecl_41858_fields dm_add_exception fndecl 2-3 41858 NULL
+nla_reserve_nohdr_fndecl_41860_fields nla_reserve_nohdr fndecl 2 41860 NULL
@@ -198841,72 +203542,68 @@ index 0000000..6b5367db
+qib_rcvhdrcnt_vardecl_qib_iba7322_c_41890_fields qib_rcvhdrcnt vardecl_qib_iba7322.c 0 41890 NULL
+RequestFrameSize__MSG_IOC_FACTS_REPLY_41895_fields RequestFrameSize _MSG_IOC_FACTS_REPLY 0 41895 NULL
+mem_unit_sysinfo_41901_fields mem_unit sysinfo 0 41901 NULL
-+bLength_hid_descriptor_41905_fields bLength hid_descriptor 0 41905 NULL
+length_zoran_sync_41909_fields length zoran_sync 0 41909 NULL
+raw_decoder_line_size_vbi_info_41920_fields raw_decoder_line_size vbi_info 0 41920 NULL
+ext4_xattr_security_set_fndecl_41924_fields ext4_xattr_security_set fndecl 6 41924 NULL nohasharray
+wil_pmc_llseek_fndecl_41924_fields wil_pmc_llseek fndecl 2 41924 &ext4_xattr_security_set_fndecl_41924_fields nohasharray
+num_descriptors_wmi_p2p_noa_info_41924_fields num_descriptors wmi_p2p_noa_info 0 41924 &wil_pmc_llseek_fndecl_41924_fields
+regmap_encx24j600_sfr_read_fndecl_41930_fields regmap_encx24j600_sfr_read fndecl 4 41930 NULL
++whci_n_caps_fndecl_41932_fields whci_n_caps fndecl 0 41932 NULL
+ss_nblocks_nilfs_segment_summary_41935_fields ss_nblocks nilfs_segment_summary 0 41935 NULL
+n_sel_arg_struct_41940_fields n sel_arg_struct 0 41940 NULL
+pg_error_nfs_pageio_descriptor_41948_fields pg_error nfs_pageio_descriptor 0 41948 NULL
+rmmio_size_cirrus_device_41950_fields rmmio_size cirrus_device 0 41950 NULL nohasharray
+iwlagn_tx_agg_start_fndecl_41950_fields iwlagn_tx_agg_start fndecl 4 41950 &rmmio_size_cirrus_device_41950_fields
-+i915_gem_object_ggtt_pin_fndecl_41959_fields i915_gem_object_ggtt_pin fndecl 4 41959 NULL nohasharray
-+kmem_zalloc_greedy_fndecl_41959_fields kmem_zalloc_greedy fndecl 3-2 41959 &i915_gem_object_ggtt_pin_fndecl_41959_fields
++kmem_zalloc_greedy_fndecl_41959_fields kmem_zalloc_greedy fndecl 3-2 41959 NULL
+ide_init_sg_cmd_fndecl_41962_fields ide_init_sg_cmd fndecl 2 41962 NULL
-+relay_open_fndecl_41964_fields relay_open fndecl 4-3 41964 NULL nohasharray
-+ccp_reverse_get_dm_area_fndecl_41964_fields ccp_reverse_get_dm_area fndecl 3 41964 &relay_open_fndecl_41964_fields nohasharray
-+connector_dcb_output_41964_fields connector dcb_output 0 41964 &ccp_reverse_get_dm_area_fndecl_41964_fields
-+init_send_wqe_fndecl_41966_fields init_send_wqe fndecl 4 41966 NULL nohasharray
-+length_ccp_dm_workarea_41966_fields length ccp_dm_workarea 0 41966 &init_send_wqe_fndecl_41966_fields
++xfs_hex_dump_fndecl_41963_fields xfs_hex_dump fndecl 2 41963 NULL
++relay_open_fndecl_41964_fields relay_open fndecl 3-4 41964 NULL
++init_send_wqe_fndecl_41966_fields init_send_wqe fndecl 4 41966 NULL
+width_fb_copyarea_41973_fields width fb_copyarea 0 41973 NULL
-+hsync_ast_vbios_enhtable_41977_fields hsync ast_vbios_enhtable 0 41977 NULL
++hsync_ast_vbios_enhtable_41977_fields hsync ast_vbios_enhtable 0 41977 NULL nohasharray
++max_req_queues_qla_hw_data_41977_fields max_req_queues qla_hw_data 0 41977 &hsync_ast_vbios_enhtable_41977_fields
+i40iw_get_pble_fndecl_41985_fields i40iw_get_pble fndecl 4 41985 NULL
+__send_control_msg_fndecl_41986_fields __send_control_msg fndecl 2 41986 NULL
+va_end_vmap_area_41988_fields va_end vmap_area 0 41988 NULL
+total_byte_count_els_sts_entry_24xx_41999_fields total_byte_count els_sts_entry_24xx 0 41999 NULL
+pci_add_new_bus_fndecl_42015_fields pci_add_new_bus fndecl 3 42015 NULL
-+kovaplus_sysfs_write_fndecl_42016_fields kovaplus_sysfs_write fndecl 6 42016 NULL
+memblock_mark_nomap_fndecl_42021_fields memblock_mark_nomap fndecl 2-1 42021 NULL
+__ieee80211_start_rx_ba_session_fndecl_42023_fields __ieee80211_start_rx_ba_session fndecl 6 42023 NULL
-+seq_ports_snd_emu10k1_synth_arg_42026_fields seq_ports snd_emu10k1_synth_arg 0 42026 NULL
+do_mem_probe_fndecl_42028_fields do_mem_probe fndecl 3-2 42028 NULL
+ctrl_frame_len_brcmf_sdio_42037_fields ctrl_frame_len brcmf_sdio 0 42037 NULL
+reiserfs_new_inode_fndecl_42039_fields reiserfs_new_inode fndecl 5 42039 NULL
+rx_hr_cfv_info_42044_fields rx_hr cfv_info 0 42044 NULL
-+num_tid_range_42045_fields num tid_range 0 42045 NULL nohasharray
-+num_tx_qp_i40e_hw_capabilities_42045_fields num_tx_qp i40e_hw_capabilities 0 42045 &num_tid_range_42045_fields
++num_tx_qp_i40e_hw_capabilities_42045_fields num_tx_qp i40e_hw_capabilities 0 42045 NULL nohasharray
++num_tid_range_42045_fields num tid_range 0 42045 &num_tx_qp_i40e_hw_capabilities_42045_fields
+PortSCSIID__MSG_PORT_FACTS_REPLY_42048_fields PortSCSIID _MSG_PORT_FACTS_REPLY 0 42048 NULL
++sel_write_load_fndecl_42053_fields sel_write_load fndecl 3 42053 NULL
+kvm_init_fndecl_42057_fields kvm_init fndecl 2-3 42057 NULL nohasharray
+fm_tx_get_tune_cap_val_fndecl_42057_fields fm_tx_get_tune_cap_val fndecl 0 42057 &kvm_init_fndecl_42057_fields
+fat_add_new_entries_fndecl_42062_fields fat_add_new_entries fndecl 0 42062 NULL
+blk_limits_io_min_fndecl_42065_fields blk_limits_io_min fndecl 2 42065 NULL nohasharray
+b_flags_ivtv_buffer_42065_fields b_flags ivtv_buffer 0 42065 &blk_limits_io_min_fndecl_42065_fields
++nqs_per_uld_sge_42070_fields nqs_per_uld sge 0 42070 NULL
+frag_size_ipv6_pinfo_42073_fields frag_size ipv6_pinfo 0 42073 NULL
+nci_hci_send_event_fndecl_42074_fields nci_hci_send_event fndecl 5 42074 NULL
+ieee80211_scan_results_fndecl_42078_fields ieee80211_scan_results fndecl 0 42078 NULL
-+mlx4_ib_rereg_user_mr_fndecl_42079_fields mlx4_ib_rereg_user_mr fndecl 3-4 42079 NULL nohasharray
++mlx4_ib_rereg_user_mr_fndecl_42079_fields mlx4_ib_rereg_user_mr fndecl 4-3 42079 NULL nohasharray
+ath6kl_wmi_set_rx_frame_format_cmd_fndecl_42079_fields ath6kl_wmi_set_rx_frame_format_cmd fndecl 2 42079 &mlx4_ib_rereg_user_mr_fndecl_42079_fields
+i2c_bus_vardecl_i2c_kempld_c_42082_fields i2c_bus vardecl_i2c-kempld.c 0 42082 NULL
-+raw_issuer_size_x509_certificate_42091_fields raw_issuer_size x509_certificate 0 42091 NULL
+outsize_cros_ec_command_42095_fields outsize cros_ec_command 0 42095 NULL
+telem_punit_ssram_size_intel_pmc_ipc_dev_42096_fields telem_punit_ssram_size intel_pmc_ipc_dev 0 42096 NULL
-+gtt_size_radeon_mc_42102_fields gtt_size radeon_mc 0 42102 NULL nohasharray
-+proc_pid_attr_write_fndecl_42102_fields proc_pid_attr_write fndecl 3 42102 &gtt_size_radeon_mc_42102_fields
++gtt_size_radeon_mc_42102_fields gtt_size radeon_mc 0 42102 NULL
+value_xen_hvm_param_42103_fields value xen_hvm_param 0 42103 NULL
+image_offset_sd_42111_fields image_offset sd 0 42111 NULL
+efs_bmap_fndecl_42112_fields efs_bmap fndecl 0-2 42112 NULL
+jbd2_journal_init_dev_fndecl_42115_fields jbd2_journal_init_dev fndecl 3 42115 NULL
-+ceph_tcp_sendmsg_fndecl_42116_fields ceph_tcp_sendmsg fndecl 0-4-3 42116 NULL
++ceph_tcp_sendmsg_fndecl_42116_fields ceph_tcp_sendmsg fndecl 0-4 42116 NULL
+divas_write_fndecl_42126_fields divas_write fndecl 3 42126 NULL
-+smb2_sync_write_fndecl_42139_fields smb2_sync_write fndecl 6 42139 NULL
++xfs_refcount_finish_one_fndecl_42139_fields xfs_refcount_finish_one fndecl 4-5 42139 NULL
+uvc_alloc_urb_buffers_fndecl_42145_fields uvc_alloc_urb_buffers fndecl 0-3-2 42145 NULL
+ath6kl_wmi_set_lpreamble_cmd_fndecl_42153_fields ath6kl_wmi_set_lpreamble_cmd fndecl 2 42153 NULL
+remote_addr_rds_atomic_args_42154_fields remote_addr rds_atomic_args 0 42154 NULL
-+cnic_support_bnx2x_42156_fields cnic_support bnx2x 0 42156 NULL nohasharray
-+channels_audioformat_42156_fields channels audioformat 0 42156 &cnic_support_bnx2x_42156_fields
++channels_audioformat_42156_fields channels audioformat 0 42156 NULL nohasharray
++cnic_support_bnx2x_42156_fields cnic_support bnx2x 0 42156 &channels_audioformat_42156_fields
+ext4_end_io_dio_fndecl_42159_fields ext4_end_io_dio fndecl 2-3 42159 NULL
+status_de4x5_desc_42161_fields status de4x5_desc 0 42161 NULL
+height_em28xx_v4l2_42166_fields height em28xx_v4l2 0 42166 NULL
@@ -198917,69 +203614,76 @@ index 0000000..6b5367db
+block_size_msb_data_42179_fields block_size msb_data 0 42179 NULL
+stv0367_writeregs_fndecl_42183_fields stv0367_writeregs fndecl 4 42183 NULL
+s2255_fillbuff_fndecl_42189_fields s2255_fillbuff fndecl 3 42189 NULL
-+mc_handle_present_pte_fndecl_42199_fields mc_handle_present_pte fndecl 2 42199 NULL nohasharray
-+afs_send_simple_reply_fndecl_42199_fields afs_send_simple_reply fndecl 3 42199 &mc_handle_present_pte_fndecl_42199_fields
-+get_sset_count_phy_driver_42200_fields get_sset_count phy_driver 0 42200 NULL
++afs_send_simple_reply_fndecl_42199_fields afs_send_simple_reply fndecl 3 42199 NULL nohasharray
++mc_handle_present_pte_fndecl_42199_fields mc_handle_present_pte fndecl 2 42199 &afs_send_simple_reply_fndecl_42199_fields
+udl_alloc_urb_list_fndecl_42203_fields udl_alloc_urb_list fndecl 3 42203 NULL
+skb_push_fndecl_42213_fields skb_push fndecl 2 42213 NULL
+scan_padding_bytes_fndecl_42218_fields scan_padding_bytes fndecl 0 42218 NULL
++ieee80211_aes_ccm_encrypt_fndecl_42227_fields ieee80211_aes_ccm_encrypt fndecl 5-7 42227 NULL
+set_bredr_fndecl_42228_fields set_bredr fndecl 4 42228 NULL nohasharray
+diva_xdi_write_fndecl_42228_fields diva_xdi_write fndecl 4 42228 &set_bredr_fndecl_42228_fields
+dwMaxVideoFrameBufferSize_uvc_frame_42230_fields dwMaxVideoFrameBufferSize uvc_frame 0 42230 NULL
+nr_map_efi_memory_map_42232_fields nr_map efi_memory_map 0 42232 NULL
-+max_data_size_irda_sock_42236_fields max_data_size irda_sock 0 42236 NULL nohasharray
-+chunksize_mdp_superblock_1_42236_fields chunksize mdp_superblock_1 0 42236 &max_data_size_irda_sock_42236_fields
++chunksize_mdp_superblock_1_42236_fields chunksize mdp_superblock_1 0 42236 NULL nohasharray
++max_data_size_irda_sock_42236_fields max_data_size irda_sock 0 42236 &chunksize_mdp_superblock_1_42236_fields
+scrollback_phys_max_vardecl_fbcon_c_42241_fields scrollback_phys_max vardecl_fbcon.c 0 42241 NULL
+buf_write_ptr_comedi_async_42247_fields buf_write_ptr comedi_async 0 42247 NULL
-+num_params_snd_soc_dai_link_42251_fields num_params snd_soc_dai_link 0 42251 NULL
+if_sdio_read_scratch_fndecl_42279_fields if_sdio_read_scratch fndecl 0 42279 NULL
+rx_pending_ethtool_ringparam_42280_fields rx_pending ethtool_ringparam 0 42280 NULL nohasharray
+cfg_sriov_nr_virtfn_lpfc_hba_42280_fields cfg_sriov_nr_virtfn lpfc_hba 0 42280 &rx_pending_ethtool_ringparam_42280_fields
++append_to_buffer_fndecl_42285_fields append_to_buffer fndecl 3 42285 NULL
+reiserfs_xattr_set_handle_fndecl_42289_fields reiserfs_xattr_set_handle fndecl 5 42289 NULL
+batadv_tp_send_msg_fndecl_42290_fields batadv_tp_send_msg fndecl 5 42290 NULL
-+ubi_more_leb_change_data_fndecl_42301_fields ubi_more_leb_change_data fndecl 4 42301 NULL
++generic_cont_expand_simple_fndecl_42301_fields generic_cont_expand_simple fndecl 2 42301 NULL
+level_cgroup_42308_fields level cgroup 0 42308 NULL nohasharray
-+iwch_reg_user_mr_fndecl_42308_fields iwch_reg_user_mr fndecl 2-3 42308 &level_cgroup_42308_fields nohasharray
++iwch_reg_user_mr_fndecl_42308_fields iwch_reg_user_mr fndecl 3-2 42308 &level_cgroup_42308_fields nohasharray
+dcache_dir_lseek_fndecl_42308_fields dcache_dir_lseek fndecl 2 42308 &iwch_reg_user_mr_fndecl_42308_fields
-+num_rcv_contexts_hfi1_devdata_42317_fields num_rcv_contexts hfi1_devdata 0 42317 NULL nohasharray
-+ocfs2_xattr_security_set_fndecl_42317_fields ocfs2_xattr_security_set fndecl 6 42317 &num_rcv_contexts_hfi1_devdata_42317_fields
++ocfs2_xattr_security_set_fndecl_42317_fields ocfs2_xattr_security_set fndecl 6 42317 NULL nohasharray
++num_rcv_contexts_hfi1_devdata_42317_fields num_rcv_contexts hfi1_devdata 0 42317 &ocfs2_xattr_security_set_fndecl_42317_fields
+pg_test_nfs_pageio_ops_42320_fields pg_test nfs_pageio_ops 0 42320 NULL nohasharray
+dbg_leb_write_fndecl_42320_fields dbg_leb_write fndecl 5-4 42320 &pg_test_nfs_pageio_ops_42320_fields
+gsi_base_mp_ioapic_gsi_42330_fields gsi_base mp_ioapic_gsi 0 42330 NULL
-+mlx4_ib_alloc_cq_buf_fndecl_42345_fields mlx4_ib_alloc_cq_buf fndecl 3 42345 NULL
+nftl_readblock_fndecl_42358_fields nftl_readblock fndecl 2 42358 NULL
+minor_mei_device_42366_fields minor mei_device 0 42366 NULL
+inbufBitCount_bunzip_data_42367_fields inbufBitCount bunzip_data 0 42367 NULL
+symbol_build_supp_rates_fndecl_42369_fields symbol_build_supp_rates fndecl 0 42369 NULL
+acc_len_rcv_sli3_42370_fields acc_len rcv_sli3 0 42370 NULL
++keyspan_pda_setbaud_fndecl_42374_fields keyspan_pda_setbaud fndecl 0-2 42374 NULL
+ext4_ext_get_access_fndecl_42377_fields ext4_ext_get_access fndecl 0 42377 NULL
+placement_offset_bnx2x_agg_info_42380_fields placement_offset bnx2x_agg_info 0 42380 NULL
+num_srqs_qed_rdma_pf_params_42382_fields num_srqs qed_rdma_pf_params 0 42382 NULL
+__spi_validate_fndecl_42385_fields __spi_validate fndecl 0 42385 NULL
+remote_payload_max_nfc_digital_dev_42391_fields remote_payload_max nfc_digital_dev 0 42391 NULL
++channel_count_gb_lights_get_light_config_response_42395_fields channel_count gb_lights_get_light_config_response 0 42395 NULL
++no_of_vpath_vxgedev_42396_fields no_of_vpath vxgedev 0 42396 NULL
+module_alloc_fndecl_42397_fields module_alloc fndecl 1 42397 NULL
+xen_blkif_max_queues_vardecl_xen_blkfront_c_42404_fields xen_blkif_max_queues vardecl_xen-blkfront.c 0 42404 NULL
++maximum_v4l2_ctrl_42407_fields maximum v4l2_ctrl 0 42407 NULL
+length_mei_msg_hdr_42413_fields length mei_msg_hdr 0 42413 NULL
+defrag_lookup_extent_fndecl_42423_fields defrag_lookup_extent fndecl 2 42423 NULL
++size_nd_mapping_42431_fields size nd_mapping 0 42431 NULL
+s_sys_blocksize_omfs_sb_info_42439_fields s_sys_blocksize omfs_sb_info 0 42439 NULL
-+buffer_chain_size_fndecl_42450_fields buffer_chain_size fndecl 0 42450 NULL nohasharray
-+max_srqs_mthca_dev_lim_42450_fields max_srqs mthca_dev_lim 0 42450 &buffer_chain_size_fndecl_42450_fields
++max_srqs_mthca_dev_lim_42450_fields max_srqs mthca_dev_lim 0 42450 NULL nohasharray
++buffer_chain_size_fndecl_42450_fields buffer_chain_size fndecl 0 42450 &max_srqs_mthca_dev_lim_42450_fields
+rx_size_uart_8250_dma_42452_fields rx_size uart_8250_dma 0 42452 NULL
+inquiry_cache_dump_fndecl_42455_fields inquiry_cache_dump fndecl 0 42455 NULL
+s_cssize_ufs_sb_private_info_42456_fields s_cssize ufs_sb_private_info 0 42456 NULL
+num_srqs_mlx4_caps_42462_fields num_srqs mlx4_caps 0 42462 NULL
+rxq_max_tg3_42464_fields rxq_max tg3 0 42464 NULL
++rtl92ee_c2h_packet_handler_fndecl_42467_fields rtl92ee_c2h_packet_handler fndecl 3 42467 NULL
+trusted_set_fndecl_42473_fields trusted_set fndecl 6 42473 NULL
++amdgpu_vm_block_size_vardecl_42475_fields amdgpu_vm_block_size vardecl 0 42475 NULL
++xfs_reflink_remap_range_fndecl_42478_fields xfs_reflink_remap_range fndecl 2-4-5 42478 NULL
+num_adc_nids_hda_gen_spec_42481_fields num_adc_nids hda_gen_spec 0 42481 NULL
+snd_vxpocket_new_fndecl_42483_fields snd_vxpocket_new fndecl 2 42483 NULL
+block_shift_befs_sb_info_42485_fields block_shift befs_sb_info 0 42485 NULL
++log_output_fndecl_42486_fields log_output fndecl 7 42486 NULL
+tot_len_pkt_gl_42487_fields tot_len pkt_gl 0 42487 NULL
+keylength_gss_krb5_enctype_42493_fields keylength gss_krb5_enctype 0 42493 NULL
+bnxt_rx_skb_fndecl_42495_fields bnxt_rx_skb fndecl 7 42495 NULL
+hsi_alloc_msg_fndecl_42496_fields hsi_alloc_msg fndecl 1 42496 NULL
+DataTransferLength_DAC960_V1_UserCommand_42502_fields DataTransferLength DAC960_V1_UserCommand 0 42502 NULL
-+ath6kl_sdio_read_write_sync_fndecl_42504_fields ath6kl_sdio_read_write_sync fndecl 4 42504 NULL nohasharray
-+rcvhdrqtailaddr_phys_hfi1_ctxtdata_42504_fields rcvhdrqtailaddr_phys hfi1_ctxtdata 0 42504 &ath6kl_sdio_read_write_sync_fndecl_42504_fields
++ath6kl_sdio_read_write_sync_fndecl_42504_fields ath6kl_sdio_read_write_sync fndecl 4 42504 NULL
+fs_start_efs_sb_info_42506_fields fs_start efs_sb_info 0 42506 NULL
+write_adapter_mem_fndecl_42509_fields write_adapter_mem fndecl 3 42509 NULL nohasharray
+st21nfca_hci_dm_load_fndecl_42509_fields st21nfca_hci_dm_load fndecl 3 42509 &write_adapter_mem_fndecl_42509_fields
@@ -198994,33 +203698,30 @@ index 0000000..6b5367db
+xdr_padsize_fndecl_42554_fields xdr_padsize fndecl 0-1 42554 NULL
+s_block_base_sysv_sb_info_42564_fields s_block_base sysv_sb_info 0 42564 NULL nohasharray
+do_write_orph_node_fndecl_42564_fields do_write_orph_node fndecl 2 42564 &s_block_base_sysv_sb_info_42564_fields
-+num_regulators_sec_platform_data_42570_fields num_regulators sec_platform_data 0 42570 NULL
-+mwifiex_send_addba_fndecl_42572_fields mwifiex_send_addba fndecl 2 42572 NULL
-+restart_rc_fndecl_42573_fields restart_rc fndecl 2 42573 NULL
+ufs_read_cylinder_fndecl_42577_fields ufs_read_cylinder fndecl 2 42577 NULL
+max_target_id_mvumi_hba_42578_fields max_target_id mvumi_hba 0 42578 NULL
+irq_create_of_mapping_fndecl_42583_fields irq_create_of_mapping fndecl 0 42583 NULL
+tipc_send_packet_fndecl_42584_fields tipc_send_packet fndecl 3 42584 NULL
-+sisusbcon_clear_fndecl_42586_fields sisusbcon_clear fndecl 5-3-4 42586 NULL
++__xfs_setfilesize_fndecl_42586_fields __xfs_setfilesize fndecl 4-3 42586 NULL nohasharray
++sisusbcon_clear_fndecl_42586_fields sisusbcon_clear fndecl 5-3-4 42586 &__xfs_setfilesize_fndecl_42586_fields
+map_region_fndecl_42587_fields map_region fndecl 1 42587 NULL
-+lock_extent_range_fndecl_42589_fields lock_extent_range fndecl 2-3 42589 NULL
++lock_extent_range_fndecl_42589_fields lock_extent_range fndecl 3-2 42589 NULL
+bcm3510_readbytes_fndecl_42592_fields bcm3510_readbytes fndecl 4 42592 NULL
+name_len_jffs2_xattr_datum_42593_fields name_len jffs2_xattr_datum 0 42593 NULL
+offset_dmi_ipmi_data_42594_fields offset dmi_ipmi_data 0 42594 NULL nohasharray
+cdc_ncm_set_dgram_size_fndecl_42594_fields cdc_ncm_set_dgram_size fndecl 2 42594 &offset_dmi_ipmi_data_42594_fields
+bsize_nfs_parsed_mount_data_42598_fields bsize nfs_parsed_mount_data 0 42598 NULL
+wrap_bcma_device_42599_fields wrap bcma_device 0 42599 NULL
-+maxSenseBytes_mpt_ioctl_command_42600_fields maxSenseBytes mpt_ioctl_command 0 42600 NULL
-+nilfs_alloc_seg_bio_fndecl_42604_fields nilfs_alloc_seg_bio fndecl 2-3 42604 NULL
++sk_max_pacing_rate_sock_42600_fields sk_max_pacing_rate sock 0 42600 NULL nohasharray
++maxSenseBytes_mpt_ioctl_command_42600_fields maxSenseBytes mpt_ioctl_command 0 42600 &sk_max_pacing_rate_sock_42600_fields
++nilfs_alloc_seg_bio_fndecl_42604_fields nilfs_alloc_seg_bio fndecl 2 42604 NULL
+n_channels_wmi_start_scan_arg_42610_fields n_channels wmi_start_scan_arg 0 42610 NULL
+size_ck804xrom_window_42617_fields size ck804xrom_window 0 42617 NULL
+HFP_kyrofb_info_42618_fields HFP kyrofb_info 0 42618 NULL
+vmw_kms_sou_do_surface_dirty_fndecl_42620_fields vmw_kms_sou_do_surface_dirty fndecl 8 42620 NULL
+opt_len_genevehdr_42621_fields opt_len genevehdr 0 42621 NULL
+nfs42_proc_deallocate_fndecl_42622_fields nfs42_proc_deallocate fndecl 2-3 42622 NULL
-+ir_lirc_transmit_ir_fndecl_42624_fields ir_lirc_transmit_ir fndecl 3 42624 NULL
+length_bplus_leaf_node_42626_fields length bplus_leaf_node 0 42626 NULL
-+num_regulators_mc13xxx_regulator_priv_42627_fields num_regulators mc13xxx_regulator_priv 0 42627 NULL
+dm_set_device_limits_fndecl_42632_fields dm_set_device_limits fndecl 3 42632 NULL
+lbs_cmd_async_fndecl_42634_fields lbs_cmd_async fndecl 4 42634 NULL
+valid_ide_tape_obj_42635_fields valid ide_tape_obj 0 42635 NULL
@@ -199028,8 +203729,8 @@ index 0000000..6b5367db
+snd_emu10k1_create_fndecl_42637_fields snd_emu10k1_create fndecl 5 42637 NULL nohasharray
+n_algs_wmfw_adsp2_id_hdr_42637_fields n_algs wmfw_adsp2_id_hdr 0 42637 &snd_emu10k1_create_fndecl_42637_fields
+len_ceph_string_42640_fields len ceph_string 0 42640 NULL
-+nr_io_queues_nvmf_ctrl_options_42644_fields nr_io_queues nvmf_ctrl_options 0 42644 NULL
+brcmf_sdio_download_nvram_fndecl_42648_fields brcmf_sdio_download_nvram fndecl 3 42648 NULL
++fuse_getxattr_fndecl_42649_fields fuse_getxattr fndecl 0-4 42649 NULL
+srp_map_sg_fmr_fndecl_42658_fields srp_map_sg_fmr fndecl 0 42658 NULL
+jffs2_scan_dirty_space_fndecl_42666_fields jffs2_scan_dirty_space fndecl 3 42666 NULL
+vOver_plus_panel_info_42670_fields vOver_plus panel_info 0 42670 NULL
@@ -199037,10 +203738,10 @@ index 0000000..6b5367db
+max_probe_length_iwl_ucode_capabilities_42674_fields max_probe_length iwl_ucode_capabilities 0 42674 NULL
+max_inline_rxe_sq_42676_fields max_inline rxe_sq 0 42676 NULL
+mxm_shadow_rom_fetch_fndecl_42681_fields mxm_shadow_rom_fetch fndecl 4 42681 NULL
-+n_sections_pefile_context_42684_fields n_sections pefile_context 0 42684 NULL nohasharray
-+ext4_trim_extent_fndecl_42684_fields ext4_trim_extent fndecl 3-4-2-0 42684 &n_sections_pefile_context_42684_fields
-+ccp_update_sg_workarea_fndecl_42688_fields ccp_update_sg_workarea fndecl 2 42688 NULL
++ext4_trim_extent_fndecl_42684_fields ext4_trim_extent fndecl 3-4-2-0 42684 NULL nohasharray
++n_sections_pefile_context_42684_fields n_sections pefile_context 0 42684 &ext4_trim_extent_fndecl_42684_fields
+BufferLength_respQ_e_42691_fields BufferLength respQ_e 0 42691 NULL
++base_baud_pciserial_board_42697_fields base_baud pciserial_board 0 42697 NULL
+nvme_submit_user_cmd_fndecl_42701_fields nvme_submit_user_cmd fndecl 4 42701 NULL nohasharray
+vm_map_ram_fndecl_42701_fields vm_map_ram fndecl 2 42701 &nvme_submit_user_cmd_fndecl_42701_fields
+nvme_rdma_create_qp_fndecl_42709_fields nvme_rdma_create_qp fndecl 2 42709 NULL
@@ -199050,24 +203751,26 @@ index 0000000..6b5367db
+rcvtidcnt_qib_devdata_42719_fields rcvtidcnt qib_devdata 0 42719 NULL
+clsb_isar_hw_42720_fields clsb isar_hw 0 42720 NULL
+status_full_rx_done_desc_42726_fields status full_rx_done_desc 0 42726 NULL
++brcmf_fil_bsscfg_data_get_fndecl_42728_fields brcmf_fil_bsscfg_data_get fndecl 4 42728 NULL
+maxbcnt_aoedev_42731_fields maxbcnt aoedev 0 42731 NULL
+single_open_size_fndecl_42736_fields single_open_size fndecl 4 42736 NULL
+nilfs_skip_summary_info_fndecl_42739_fields nilfs_skip_summary_info fndecl 4-5 42739 NULL
+head_hid_debug_list_42742_fields head hid_debug_list 0 42742 NULL
+Ha_tvnorm_42743_fields Ha tvnorm 0 42743 NULL nohasharray
-+tcp_adjust_pcount_fndecl_42743_fields tcp_adjust_pcount fndecl 3 42743 &Ha_tvnorm_42743_fields
-+mlx5_fc_stats_query_fndecl_42750_fields mlx5_fc_stats_query fndecl 3 42750 NULL
++tcp_adjust_pcount_fndecl_42743_fields tcp_adjust_pcount fndecl 3 42743 &Ha_tvnorm_42743_fields nohasharray
++hfi1_sdma_comp_ring_size_vardecl_user_sdma_c_42743_fields hfi1_sdma_comp_ring_size vardecl_user_sdma.c 0 42743 &tcp_adjust_pcount_fndecl_42743_fields
++p54_parse_rssical_fndecl_42750_fields p54_parse_rssical fndecl 3 42750 NULL
+batadv_interface_rx_fndecl_42754_fields batadv_interface_rx fndecl 3 42754 NULL
+unmap_entire_bt_fndecl_42755_fields unmap_entire_bt fndecl 3 42755 NULL
+tcf_csum_skb_nextlayer_fndecl_42762_fields tcf_csum_skb_nextlayer fndecl 3 42762 NULL
+elems_v4l2_ctrl_42763_fields elems v4l2_ctrl 0 42763 NULL
+maxdev_blogic_adapter_42764_fields maxdev blogic_adapter 0 42764 NULL
+dc_block_number_disk_child_42766_fields dc_block_number disk_child 0 42766 NULL
-+cmd_idx_rtsx_ucr_42770_fields cmd_idx rtsx_ucr 0 42770 NULL nohasharray
-+ie_len_wmi_start_scan_arg_42770_fields ie_len wmi_start_scan_arg 0 42770 &cmd_idx_rtsx_ucr_42770_fields
++ie_len_wmi_start_scan_arg_42770_fields ie_len wmi_start_scan_arg 0 42770 NULL nohasharray
++cmd_idx_rtsx_ucr_42770_fields cmd_idx rtsx_ucr 0 42770 &ie_len_wmi_start_scan_arg_42770_fields
+fw_len_mwifiex_fw_image_42772_fields fw_len mwifiex_fw_image 0 42772 NULL
++sync_maxlen_ipvs_sync_daemon_cfg_42773_fields sync_maxlen ipvs_sync_daemon_cfg 0 42773 NULL
+hsr_get_max_mtu_fndecl_42776_fields hsr_get_max_mtu fndecl 0 42776 NULL
-+kmemdup_fndecl_42780_fields kmemdup fndecl 2 42780 NULL
+lov_tgt_size_lov_obd_42782_fields lov_tgt_size lov_obd 0 42782 NULL
+rx_data_length_hso_serial_42783_fields rx_data_length hso_serial 0 42783 NULL
+usbnet_change_mtu_fndecl_42784_fields usbnet_change_mtu fndecl 2 42784 NULL
@@ -199076,7 +203779,8 @@ index 0000000..6b5367db
+ext4_quota_write_fndecl_42809_fields ext4_quota_write fndecl 5 42809 NULL nohasharray
+len_il3945_rx_frame_hdr_42809_fields len il3945_rx_frame_hdr 0 42809 &ext4_quota_write_fndecl_42809_fields
+usb_hcd_unlink_urb_fndecl_42819_fields usb_hcd_unlink_urb fndecl 2 42819 NULL
-+xfs_rmap_map_fndecl_42821_fields xfs_rmap_map fndecl 0 42821 NULL
++sl_realloc_bufs_fndecl_42821_fields sl_realloc_bufs fndecl 2 42821 NULL nohasharray
++xfs_rmap_map_fndecl_42821_fields xfs_rmap_map fndecl 0 42821 &sl_realloc_bufs_fndecl_42821_fields
+m_agino_log_xfs_mount_42823_fields m_agino_log xfs_mount 0 42823 NULL
+clear_update_marker_fndecl_42827_fields clear_update_marker fndecl 3 42827 NULL
+ezusb_program_bytes_fndecl_42828_fields ezusb_program_bytes fndecl 4 42828 NULL
@@ -199094,8 +203798,8 @@ index 0000000..6b5367db
+mmio_start_vmw_private_42869_fields mmio_start vmw_private 0 42869 NULL
+mlxsw_core_skb_transmit_fndecl_42876_fields mlxsw_core_skb_transmit fndecl 0 42876 NULL
+lineevent_read_fndecl_42885_fields lineevent_read fndecl 3 42885 NULL
++snic_req_init_fndecl_42890_fields snic_req_init fndecl 2 42890 NULL
+pixel_overlap_mipi_config_42900_fields pixel_overlap mipi_config 0 42900 NULL
-+uea_idma_write_fndecl_42904_fields uea_idma_write fndecl 3 42904 NULL
+memblock_find_in_range_node_fndecl_42905_fields memblock_find_in_range_node fndecl 0-2-1-3-4 42905 NULL
+name_length_spar_controlvm_parameters_header_42909_fields name_length spar_controlvm_parameters_header 0 42909 NULL
+vd_vblocknr_nilfs_vdesc_42910_fields vd_vblocknr nilfs_vdesc 0 42910 NULL
@@ -199103,6 +203807,7 @@ index 0000000..6b5367db
+xfs_rmap_alloc_extent_fndecl_42916_fields xfs_rmap_alloc_extent fndecl 4-3-5 42916 NULL
+i915_gem_stolen_insert_node_fndecl_42918_fields i915_gem_stolen_insert_node fndecl 3 42918 NULL
+st21nfca_hci_dm_field_generator_fndecl_42926_fields st21nfca_hci_dm_field_generator fndecl 3 42926 NULL
++carl9170_handle_command_response_fndecl_42930_fields carl9170_handle_command_response fndecl 3 42930 NULL
+wMaxInputLength_i2c_hid_desc_42932_fields wMaxInputLength i2c_hid_desc 0 42932 NULL
+max_mad_size_ib_port_immutable_42934_fields max_mad_size ib_port_immutable 0 42934 NULL
+nblocks_nvme_user_io_42935_fields nblocks nvme_user_io 0 42935 NULL
@@ -199119,7 +203824,6 @@ index 0000000..6b5367db
+brcmf_sdiod_send_buf_fndecl_42982_fields brcmf_sdiod_send_buf fndecl 3 42982 NULL
+max_pfn_amdgpu_vm_manager_42989_fields max_pfn amdgpu_vm_manager 0 42989 NULL
+len_kvaser_msg_42994_fields len kvaser_msg 0 42994 NULL
-+hw_token_fotg210_qh_hw_42995_fields hw_token fotg210_qh_hw 0 42995 NULL
+num_mappings_nd_region_desc_42998_fields num_mappings nd_region_desc 0 42998 NULL
+buf_size_ivtv_stream_43002_fields buf_size ivtv_stream 0 43002 NULL
+header_len_fndecl_43003_fields header_len fndecl 0 43003 NULL
@@ -199134,24 +203838,21 @@ index 0000000..6b5367db
+a_bss_exec_43030_fields a_bss exec 0 43030 NULL
+usHActive__ATOM_DTD_FORMAT_43031_fields usHActive _ATOM_DTD_FORMAT 0 43031 NULL nohasharray
+count_ixgbe_ring_43031_fields count ixgbe_ring 0 43031 &usHActive__ATOM_DTD_FORMAT_43031_fields
-+pagl_leftrec_xfs_perag_43033_fields pagl_leftrec xfs_perag 0 43033 NULL nohasharray
-+hop_count_tb_nhi_43033_fields hop_count tb_nhi 0 43033 &pagl_leftrec_xfs_perag_43033_fields
++pagl_leftrec_xfs_perag_43033_fields pagl_leftrec xfs_perag 0 43033 NULL
+channels_max_snd_usb_substream_43034_fields channels_max snd_usb_substream 0 43034 NULL
+qpc_entry_sz_mthca_dev_lim_43040_fields qpc_entry_sz mthca_dev_lim 0 43040 NULL
+copy_page_to_iter_iovec_fndecl_43041_fields copy_page_to_iter_iovec fndecl 3 43041 NULL
+init_chip_wc_pat_fndecl_43043_fields init_chip_wc_pat fndecl 2 43043 NULL
+instance_nvme_ctrl_43045_fields instance nvme_ctrl 0 43045 NULL
-+free_bootmem_late_fndecl_43051_fields free_bootmem_late fndecl 2 43051 NULL
+stmmac_change_mtu_fndecl_43052_fields stmmac_change_mtu fndecl 2 43052 NULL
+logical_block_size_queue_limits_43053_fields logical_block_size queue_limits 0 43053 NULL
+s_reserved_gdt_blocks_ext4_super_block_43054_fields s_reserved_gdt_blocks ext4_super_block 0 43054 NULL
-+mwifiex_rdeeprom_write_fndecl_43057_fields mwifiex_rdeeprom_write fndecl 3 43057 NULL
+acpi_dev_get_ioresource_fndecl_43062_fields acpi_dev_get_ioresource fndecl 3-2 43062 NULL
-+len_ib_ucm_rep_43064_fields len ib_ucm_rep 0 43064 NULL
++tcp_tso_segs_fndecl_43064_fields tcp_tso_segs fndecl 0-2 43064 NULL nohasharray
++len_ib_ucm_rep_43064_fields len ib_ucm_rep 0 43064 &tcp_tso_segs_fndecl_43064_fields
+len_srp_direct_buf_43066_fields len srp_direct_buf 0 43066 NULL
+fat_fallocate_fndecl_43080_fields fat_fallocate fndecl 4-3 43080 NULL
+raw_skid_size_pkcs7_parse_context_43081_fields raw_skid_size pkcs7_parse_context 0 43081 NULL
-+output_buffer_size_vardecl_seq_midi_c_43084_fields output_buffer_size vardecl_seq_midi.c 0 43084 NULL
+bttv_prepare_buffer_fndecl_43088_fields bttv_prepare_buffer fndecl 6-5 43088 NULL
+i2c_wr_max_cx24116_config_43094_fields i2c_wr_max cx24116_config 0 43094 NULL
+_create_message_fndecl_43096_fields _create_message fndecl 2 43096 NULL
@@ -199161,12 +203862,11 @@ index 0000000..6b5367db
+cyttsp_i2c_write_block_data_fndecl_43104_fields cyttsp_i2c_write_block_data fndecl 4 43104 NULL
+xlog_recover_add_to_trans_fndecl_43108_fields xlog_recover_add_to_trans fndecl 4 43108 NULL
+__rounddown_pow_of_two_fndecl_43111_fields __rounddown_pow_of_two fndecl 0 43111 NULL
-+ore_verify_layout_fndecl_43114_fields ore_verify_layout fndecl 1 43114 NULL nohasharray
-+valuelen_hi_extended_attribute_43114_fields valuelen_hi extended_attribute 0 43114 &ore_verify_layout_fndecl_43114_fields nohasharray
-+start_f2fs_defragment_43114_fields start f2fs_defragment 0 43114 &valuelen_hi_extended_attribute_43114_fields
++start_f2fs_defragment_43114_fields start f2fs_defragment 0 43114 NULL nohasharray
++valuelen_hi_extended_attribute_43114_fields valuelen_hi extended_attribute 0 43114 &start_f2fs_defragment_43114_fields nohasharray
++ore_verify_layout_fndecl_43114_fields ore_verify_layout fndecl 1 43114 &valuelen_hi_extended_attribute_43114_fields
+range_max_regmap_range_43116_fields range_max regmap_range 0 43116 NULL
-+meta_prod_netrx_pending_operations_43121_fields meta_prod netrx_pending_operations 0 43121 NULL nohasharray
-+of_alias_get_id_fndecl_43121_fields of_alias_get_id fndecl 0 43121 &meta_prod_netrx_pending_operations_43121_fields
++of_alias_get_id_fndecl_43121_fields of_alias_get_id fndecl 0 43121 NULL
+prepare_elf64_ram_headers_callback_fndecl_43123_fields prepare_elf64_ram_headers_callback fndecl 1-2 43123 NULL
+output_pool_snd_seq_client_pool_43126_fields output_pool snd_seq_client_pool 0 43126 NULL
+fm10k_change_mtu_fndecl_43135_fields fm10k_change_mtu fndecl 2 43135 NULL
@@ -199175,16 +203875,16 @@ index 0000000..6b5367db
+xfs_rtmodify_range_fndecl_43150_fields xfs_rtmodify_range fndecl 3-0 43150 NULL
+bblog_offset_mdp_superblock_1_43154_fields bblog_offset mdp_superblock_1 0 43154 NULL
+__f2fs_setxattr_fndecl_43162_fields __f2fs_setxattr fndecl 5 43162 NULL
++wusb_ccm_mac_fndecl_43163_fields wusb_ccm_mac fndecl 8 43163 NULL
+filename_size_ecryptfs_filename_43164_fields filename_size ecryptfs_filename 0 43164 NULL nohasharray
+doc_config_location_vardecl_diskonchip_c_43164_fields doc_config_location vardecl_diskonchip.c 0 43164 &filename_size_ecryptfs_filename_43164_fields
-+hpi_read_word_fndecl_43165_fields hpi_read_word fndecl 0 43165 NULL
+xlog_bread_noalign_fndecl_43170_fields xlog_bread_noalign fndecl 2 43170 NULL
+packetizeRx_fndecl_43175_fields packetizeRx fndecl 3 43175 NULL
+unxlate_dev_mem_ptr_fndecl_43184_fields unxlate_dev_mem_ptr fndecl 1 43184 NULL
+length_ib_mac_iocb_rsp_43186_fields length ib_mac_iocb_rsp 0 43186 NULL
+block_end_dm_cell_key_43191_fields block_end dm_cell_key 0 43191 NULL
-+rx_data_eaten_rxrpc_call_43202_fields rx_data_eaten rxrpc_call 0 43202 NULL nohasharray
-+tidno_ath_atx_tid_43202_fields tidno ath_atx_tid 0 43202 &rx_data_eaten_rxrpc_call_43202_fields
++if_spi_host_to_card_fndecl_43193_fields if_spi_host_to_card fndecl 4 43193 NULL
++tidno_ath_atx_tid_43202_fields tidno ath_atx_tid 0 43202 NULL
+dm_bufio_release_move_fndecl_43207_fields dm_bufio_release_move fndecl 2 43207 NULL
+device_id_ipmi_device_id_43213_fields device_id ipmi_device_id 0 43213 NULL
+ramdisk_size_setup_header_43217_fields ramdisk_size setup_header 0 43217 NULL
@@ -199198,14 +203898,12 @@ index 0000000..6b5367db
+tx_modulus_cdc_ncm_ctx_43289_fields tx_modulus cdc_ncm_ctx 0 43289 NULL
+size_oid_t_43292_fields size oid_t 0 43292 NULL
+ip_vs_icmp_xmit_v6_fndecl_43294_fields ip_vs_icmp_xmit_v6 fndecl 4 43294 NULL
-+num_flush_nvdimm_43298_fields num_flush nvdimm 0 43298 NULL
+transfer_dma_urb_43305_fields transfer_dma urb 0 43305 NULL
+total_nic_func_qlcnic_hardware_context_43307_fields total_nic_func qlcnic_hardware_context 0 43307 NULL
+rio_request_outb_mbox_fndecl_43309_fields rio_request_outb_mbox fndecl 3 43309 NULL
+add_to_list_fndecl_43311_fields add_to_list fndecl 5-4 43311 NULL
+header_len_gether_43313_fields header_len gether 0 43313 NULL
+smsc9420_rx_handoff_fndecl_43315_fields smsc9420_rx_handoff fndecl 3 43315 NULL
-+qat_uclo_map_uof_obj_fndecl_43323_fields qat_uclo_map_uof_obj fndecl 3 43323 NULL
+group_count_ore_layout_43325_fields group_count ore_layout 0 43325 NULL
+lpddr_write_buffers_fndecl_43330_fields lpddr_write_buffers fndecl 3 43330 NULL
+max_packet_bytes_ua101_stream_43333_fields max_packet_bytes ua101_stream 0 43333 NULL
@@ -199213,8 +203911,7 @@ index 0000000..6b5367db
+file_size_hpfs_dirent_43338_fields file_size hpfs_dirent 0 43338 NULL
+vactive_videomode_43345_fields vactive videomode 0 43345 NULL
+wake_packet_bufsize_iwl_wowlan_status_data_43348_fields wake_packet_bufsize iwl_wowlan_status_data 0 43348 NULL
-+entry_size_xpc_channel_43351_fields entry_size xpc_channel 0 43351 NULL nohasharray
-+pktsz_fifo_43351_fields pktsz fifo 0 43351 &entry_size_xpc_channel_43351_fields
++pktsz_fifo_43351_fields pktsz fifo 0 43351 NULL
+header_len_dst_entry_43355_fields header_len dst_entry 0 43355 NULL nohasharray
+get_module_load_offset_fndecl_43355_fields get_module_load_offset fndecl 0 43355 &header_len_dst_entry_43355_fields
+inftl_write_fndecl_43357_fields inftl_write fndecl 2 43357 NULL
@@ -199237,13 +203934,10 @@ index 0000000..6b5367db
+packet_alloc_skb_fndecl_43417_fields packet_alloc_skb fndecl 5-4-3 43417 &gss_wrap_kerberos_v1_fndecl_43417_fields
+prism2_send_mgmt_fndecl_43422_fields prism2_send_mgmt fndecl 4 43422 NULL
+status_fealnx_desc_43423_fields status fealnx_desc 0 43423 NULL
-+dev_pm_opp_set_supported_hw_fndecl_43425_fields dev_pm_opp_set_supported_hw fndecl 3 43425 NULL
+ath6kl_wmi_set_apsd_bfrd_traf_fndecl_43427_fields ath6kl_wmi_set_apsd_bfrd_traf fndecl 2 43427 NULL
-+ath10k_pci_hif_exchange_bmi_msg_fndecl_43429_fields ath10k_pci_hif_exchange_bmi_msg fndecl 3 43429 NULL
-+offset_afs_call_43431_fields offset afs_call 0 43431 NULL
+nfs4_proc_set_acl_fndecl_43435_fields nfs4_proc_set_acl fndecl 3 43435 NULL
+XRES_kyrofb_info_43436_fields XRES kyrofb_info 0 43436 NULL
-+memblock_alloc_nid_fndecl_43439_fields memblock_alloc_nid fndecl 2 43439 NULL
++memblock_alloc_nid_fndecl_43439_fields memblock_alloc_nid fndecl 2-1 43439 NULL
+ems_pcmcia_add_card_fndecl_43440_fields ems_pcmcia_add_card fndecl 2 43440 NULL
+per_txdl_space_vxge_hw_fifo_attr_43441_fields per_txdl_space vxge_hw_fifo_attr 0 43441 NULL
+len_imgchunk_43445_fields len imgchunk 0 43445 NULL
@@ -199253,8 +203947,8 @@ index 0000000..6b5367db
+aper_base_radeon_mc_43460_fields aper_base radeon_mc 0 43460 NULL
+l_start_ocfs2_space_resv_43461_fields l_start ocfs2_space_resv 0 43461 NULL nohasharray
+phys_addr_perf_mw_43461_fields phys_addr perf_mw 0 43461 &l_start_ocfs2_space_resv_43461_fields
-+pda_size_fw_info_43468_fields pda_size fw_info 0 43468 NULL nohasharray
-+meta_dev_idx_drbd_md_43468_fields meta_dev_idx drbd_md 0 43468 &pda_size_fw_info_43468_fields
++meta_dev_idx_drbd_md_43468_fields meta_dev_idx drbd_md 0 43468 NULL nohasharray
++pda_size_fw_info_43468_fields pda_size fw_info 0 43468 &meta_dev_idx_drbd_md_43468_fields
+xfrm_count_pfkey_auth_supported_fndecl_43471_fields xfrm_count_pfkey_auth_supported fndecl 0 43471 NULL
+nfs_pgio_rpcsetup_fndecl_43472_fields nfs_pgio_rpcsetup fndecl 2-3 43472 NULL
+max_VF_buses_pci_sriov_43475_fields max_VF_buses pci_sriov 0 43475 NULL
@@ -199268,7 +203962,6 @@ index 0000000..6b5367db
+sysv_iget_fndecl_43483_fields sysv_iget fndecl 2 43483 &pcm_capture_analog_channels_snd_tscm_spec_43483_fields
+atl1e_change_mtu_fndecl_43485_fields atl1e_change_mtu fndecl 2 43485 NULL
+secondary_bin_count_drm_mga_dma_bootstrap_43491_fields secondary_bin_count drm_mga_dma_bootstrap 0 43491 NULL
-+bioset_integrity_create_fndecl_43495_fields bioset_integrity_create fndecl 2 43495 NULL
+ra_meta_pages_fndecl_43496_fields ra_meta_pages fndecl 2-0 43496 NULL
+size_TxFifo_43497_fields size TxFifo 0 43497 NULL
+netlink_recvmsg_fndecl_43499_fields netlink_recvmsg fndecl 3 43499 NULL
@@ -199289,11 +203982,12 @@ index 0000000..6b5367db
+points_per_channel_pda_pa_curve_data_43548_fields points_per_channel pda_pa_curve_data 0 43548 NULL
+offset_qcafrm_handle_43553_fields offset qcafrm_handle 0 43553 NULL
+bg_inode_table_lo_ext4_group_desc_43555_fields bg_inode_table_lo ext4_group_desc 0 43555 NULL
-+hdrlen_hip_hdr_43556_fields hdrlen hip_hdr 0 43556 NULL
++hdrlen_hip_hdr_43556_fields hdrlen hip_hdr 0 43556 NULL nohasharray
++new_rate_clk_core_43556_fields new_rate clk_core 0 43556 &hdrlen_hip_hdr_43556_fields
+buffer_size_budget_43564_fields buffer_size budget 0 43564 NULL
+tx_buf_clear_sent_ks959_cb_43565_fields tx_buf_clear_sent ks959_cb 0 43565 NULL
-+ib_create_send_mad_fndecl_43569_fields ib_create_send_mad fndecl 6 43569 NULL
-+ccp_fill_queue_buf_fndecl_43580_fields ccp_fill_queue_buf fndecl 0 43580 NULL
++ib_create_send_mad_fndecl_43569_fields ib_create_send_mad fndecl 6-5 43569 NULL
++wMemorySize_ms_bootblock_sysinf_43576_fields wMemorySize ms_bootblock_sysinf 0 43576 NULL
+xfs_difree_fndecl_43581_fields xfs_difree fndecl 2 43581 NULL
+__br_vlan_set_default_pvid_fndecl_43587_fields __br_vlan_set_default_pvid fndecl 2 43587 NULL
+size_ext4_io_end_43590_fields size ext4_io_end 0 43590 NULL
@@ -199302,15 +203996,17 @@ index 0000000..6b5367db
+rem_len_hci_rp_read_local_amp_assoc_43602_fields rem_len hci_rp_read_local_amp_assoc 0 43602 NULL nohasharray
+isdn_ppp_ccp_xmit_reset_fndecl_43602_fields isdn_ppp_ccp_xmit_reset fndecl 6 43602 &rem_len_hci_rp_read_local_amp_assoc_43602_fields nohasharray
+mult_req_ide_drive_s_43602_fields mult_req ide_drive_s 0 43602 &isdn_ppp_ccp_xmit_reset_fndecl_43602_fields
-+nfsd_vfs_read_fndecl_43608_fields nfsd_vfs_read fndecl 3-5 43608 NULL
++nfsd_vfs_read_fndecl_43608_fields nfsd_vfs_read fndecl 3 43608 NULL
+raid5_resize_fndecl_43609_fields raid5_resize fndecl 2 43609 NULL
++ssize_datafab_info_43610_fields ssize datafab_info 0 43610 NULL
+minor_usb_serial_port_43611_fields minor usb_serial_port 0 43611 NULL
+phys_ctlmem_fst_card_info_43612_fields phys_ctlmem fst_card_info 0 43612 NULL
+sg_limit_blogic_ext_setup_43615_fields sg_limit blogic_ext_setup 0 43615 NULL nohasharray
+qnx4_block_map_fndecl_43615_fields qnx4_block_map fndecl 0-2 43615 &sg_limit_blogic_ext_setup_43615_fields
+camera_fbmem_size_viafb_dev_43616_fields camera_fbmem_size viafb_dev 0 43616 NULL
+ceph_fill_file_size_fndecl_43619_fields ceph_fill_file_size fndecl 4 43619 NULL
-+drm_format_plane_cpp_fndecl_43621_fields drm_format_plane_cpp fndecl 0 43621 NULL
++drm_format_plane_cpp_fndecl_43621_fields drm_format_plane_cpp fndecl 0 43621 NULL nohasharray
++chipshift_cfi_private_43621_fields chipshift cfi_private 0 43621 &drm_format_plane_cpp_fndecl_43621_fields
+btusb_recv_isoc_fndecl_43628_fields btusb_recv_isoc fndecl 3 43628 NULL
+count_phm_ppt_v1_clock_voltage_dependency_table_43634_fields count phm_ppt_v1_clock_voltage_dependency_table 0 43634 NULL
+drm_gtf2_k_fndecl_43638_fields drm_gtf2_k fndecl 0 43638 NULL nohasharray
@@ -199319,7 +204015,7 @@ index 0000000..6b5367db
+info_server_fndecl_43644_fields info_server fndecl 4 43644 NULL
+xfs_setfilesize_trans_alloc_fndecl_43654_fields xfs_setfilesize_trans_alloc fndecl 0 43654 NULL
+name_len_ceph_object_id_43655_fields name_len ceph_object_id 0 43655 NULL
-+ibp_queue_depth_kib_peer_43675_fields ibp_queue_depth kib_peer 0 43675 NULL
++num_rx_electrodes_f54_data_43660_fields num_rx_electrodes f54_data 0 43660 NULL
+gsi_kvm_irq_routing_entry_43676_fields gsi kvm_irq_routing_entry 0 43676 NULL
+header_size_perf_event_43679_fields header_size perf_event 0 43679 NULL
+init_packet_fndecl_43683_fields init_packet fndecl 3 43683 NULL
@@ -199333,9 +204029,7 @@ index 0000000..6b5367db
+gtk_icvlen_iwl_mvm_43710_fields gtk_icvlen iwl_mvm 0 43710 NULL
+of_irq_get_fndecl_43712_fields of_irq_get fndecl 0 43712 NULL
+data_block_quadlets_amdtp_stream_43723_fields data_block_quadlets amdtp_stream 0 43723 NULL
-+ReplyFrameSize_mpt3sas_facts_43736_fields ReplyFrameSize mpt3sas_facts 0 43736 NULL nohasharray
-+kone_send_fndecl_43736_fields kone_send fndecl 4 43736 &ReplyFrameSize_mpt3sas_facts_43736_fields
-+used_map_cnt_verifier_env_43747_fields used_map_cnt verifier_env 0 43747 NULL
++ReplyFrameSize_mpt3sas_facts_43736_fields ReplyFrameSize mpt3sas_facts 0 43736 NULL
+sas_host_smp_write_gpio_fndecl_43749_fields sas_host_smp_write_gpio fndecl 0 43749 NULL
+rrpc_update_map_fndecl_43752_fields rrpc_update_map fndecl 2 43752 NULL
+__copy_from_user_ll_nocache_fndecl_43756_fields __copy_from_user_ll_nocache fndecl 0 43756 NULL nohasharray
@@ -199353,19 +204047,15 @@ index 0000000..6b5367db
+__vb2_perform_fileio_fndecl_43818_fields __vb2_perform_fileio fndecl 3 43818 NULL
+_save_mc_fndecl_43819_fields _save_mc fndecl 0-3 43819 NULL
+i915_gem_object_create_stolen_fndecl_43837_fields i915_gem_object_create_stolen fndecl 2 43837 NULL
-+unlink1_fndecl_43840_fields unlink1 fndecl 2 43840 NULL
++unlink1_fndecl_43840_fields unlink1 fndecl 2-3 43840 NULL
+ath6kl_wmi_enable_sched_scan_cmd_fndecl_43841_fields ath6kl_wmi_enable_sched_scan_cmd fndecl 2 43841 NULL
+initrd_start_vardecl_43848_fields initrd_start vardecl 0 43848 NULL
+xen_set_nslabs_fndecl_43849_fields xen_set_nslabs fndecl 0-1 43849 NULL
+wlcore_scan_fndecl_43850_fields wlcore_scan fndecl 4 43850 NULL nohasharray
+wm_adsp_read_data_block_fndecl_43850_fields wm_adsp_read_data_block fndecl 0 43850 &wlcore_scan_fndecl_43850_fields
-+first_sector_swap_map_handle_43853_fields first_sector swap_map_handle 0 43853 NULL
+indat_endpoint_keyspan_device_details_43860_fields indat_endpoint keyspan_device_details 0 43860 NULL
-+get_sset_count_ethtool_ops_43861_fields get_sset_count ethtool_ops 0 43861 NULL
-+nr_channels_dw_dma_platform_data_43863_fields nr_channels dw_dma_platform_data 0 43863 NULL
+s_l2bsize_jfs_superblock_43870_fields s_l2bsize jfs_superblock 0 43870 NULL
-+bulk_in_endpointAddr_hdpvr_device_43874_fields bulk_in_endpointAddr hdpvr_device 0 43874 NULL nohasharray
-+of_property_read_u32_array_fndecl_43874_fields of_property_read_u32_array fndecl 0 43874 &bulk_in_endpointAddr_hdpvr_device_43874_fields
++bulk_in_endpointAddr_hdpvr_device_43874_fields bulk_in_endpointAddr hdpvr_device 0 43874 NULL
+iovec_count_sg_io_hdr_43875_fields iovec_count sg_io_hdr 0 43875 NULL
+ts_ctxnum_gru_thread_state_43878_fields ts_ctxnum gru_thread_state 0 43878 NULL
+m_logbsize_xfs_mount_43888_fields m_logbsize xfs_mount 0 43888 NULL
@@ -199378,6 +204068,7 @@ index 0000000..6b5367db
+pnp_add_dma_resource_fndecl_43903_fields pnp_add_dma_resource fndecl 2 43903 NULL
+lc_up_len_nfsd4_layoutcommit_43904_fields lc_up_len nfsd4_layoutcommit 0 43904 NULL
+il4965_tx_agg_start_fndecl_43905_fields il4965_tx_agg_start fndecl 4 43905 NULL
++sisusb_copy_memory_fndecl_43909_fields sisusb_copy_memory fndecl 4 43909 NULL
+sta_data_size_ieee80211_hw_43910_fields sta_data_size ieee80211_hw 0 43910 NULL
+xres_drm_cmdline_mode_43915_fields xres drm_cmdline_mode 0 43915 NULL
+vcount_snd_emu10k1_fx8010_ctl_43917_fields vcount snd_emu10k1_fx8010_ctl 0 43917 NULL
@@ -199390,20 +204081,19 @@ index 0000000..6b5367db
+ubifs_change_one_lp_fndecl_43942_fields ubifs_change_one_lp fndecl 3 43942 NULL
+dce_pvc_count_frad_state_43946_fields dce_pvc_count frad_state 0 43946 NULL
+sddr09_readX_fndecl_43951_fields sddr09_readX fndecl 5 43951 NULL
-+ib_send_cm_rtu_fndecl_43953_fields ib_send_cm_rtu fndecl 3 43953 NULL
++brcmf_fil_cmd_data_set_fndecl_43952_fields brcmf_fil_cmd_data_set fndecl 4 43952 NULL
+size_soundfont_sample_info_43957_fields size soundfont_sample_info 0 43957 NULL
+num_drc_cfgs_wm8904_pdata_43963_fields num_drc_cfgs wm8904_pdata 0 43963 NULL
+rx_ring_count_igb_adapter_43964_fields rx_ring_count igb_adapter 0 43964 NULL
+s_firstdatazone_isofs_sb_info_43968_fields s_firstdatazone isofs_sb_info 0 43968 NULL
+csum_start_virtio_net_hdr_43969_fields csum_start virtio_net_hdr 0 43969 NULL
-+value_size_bpf_map_43980_fields value_size bpf_map 0 43980 NULL nohasharray
-+s_first_cluster_group_ocfs2_super_block_43980_fields s_first_cluster_group ocfs2_super_block 0 43980 &value_size_bpf_map_43980_fields
++s_first_cluster_group_ocfs2_super_block_43980_fields s_first_cluster_group ocfs2_super_block 0 43980 NULL nohasharray
++value_size_bpf_map_43980_fields value_size bpf_map 0 43980 &s_first_cluster_group_ocfs2_super_block_43980_fields
+security_policydb_len_fndecl_43981_fields security_policydb_len fndecl 0 43981 NULL
+cur_size_zr364xx_framei_43985_fields cur_size zr364xx_framei 0 43985 NULL
+free_memtype_fndecl_43986_fields free_memtype fndecl 1-2 43986 NULL
-+vid_mv88e6xxx_vtu_stu_entry_43991_fields vid mv88e6xxx_vtu_stu_entry 0 43991 NULL
-+pvm_determine_end_fndecl_43995_fields pvm_determine_end fndecl 0-3 43995 NULL nohasharray
-+nsize_jffs2_raw_dirent_43995_fields nsize jffs2_raw_dirent 0 43995 &pvm_determine_end_fndecl_43995_fields
++nsize_jffs2_raw_dirent_43995_fields nsize jffs2_raw_dirent 0 43995 NULL nohasharray
++pvm_determine_end_fndecl_43995_fields pvm_determine_end fndecl 0-3 43995 &nsize_jffs2_raw_dirent_43995_fields
+copy_templates_fndecl_43996_fields copy_templates fndecl 3 43996 NULL
+snd_pcm_lib_malloc_pages_fndecl_43997_fields snd_pcm_lib_malloc_pages fndecl 2 43997 NULL
+__e820_add_region_fndecl_44001_fields __e820_add_region fndecl 3 44001 NULL
@@ -199411,10 +204101,9 @@ index 0000000..6b5367db
+level_pid_namespace_44021_fields level pid_namespace 0 44021 NULL
+rx_buffer_truesize_efx_nic_44027_fields rx_buffer_truesize efx_nic 0 44027 NULL
+ahc_linux_map_seg_fndecl_44059_fields ahc_linux_map_seg fndecl 4-5 44059 NULL
-+num_trace_enums_module_44062_fields num_trace_enums module 0 44062 NULL nohasharray
-+ctxt_hfi1_ctxtdata_44062_fields ctxt hfi1_ctxtdata 0 44062 &num_trace_enums_module_44062_fields
+blksize_xfs_da_geometry_44068_fields blksize xfs_da_geometry 0 44068 NULL
+xen_io_tlb_nslabs_vardecl_swiotlb_xen_c_44077_fields xen_io_tlb_nslabs vardecl_swiotlb-xen.c 0 44077 NULL
++debug_pmt_fndecl_44082_fields debug_pmt fndecl 2 44082 NULL
+num_subpackets_rmi_register_desc_item_44083_fields num_subpackets rmi_register_desc_item 0 44083 NULL
+netup_read_i2c_fndecl_44096_fields netup_read_i2c fndecl 5 44096 NULL
+ipoib_cm_create_srq_fndecl_44098_fields ipoib_cm_create_srq fndecl 2 44098 NULL
@@ -199426,10 +204115,11 @@ index 0000000..6b5367db
+base_nforce2_smbus_44136_fields base nforce2_smbus 0 44136 NULL
+key_maxval_mcs_platform_data_44139_fields key_maxval mcs_platform_data 0 44139 NULL
+submit_extent_page_fndecl_44155_fields submit_extent_page fndecl 7-8-6 44155 NULL
++gb_operation_sync_timeout_fndecl_44156_fields gb_operation_sync_timeout fndecl 6 44156 NULL
+octeon_setup_droq_fndecl_44160_fields octeon_setup_droq fndecl 4-3 44160 NULL
-+bfad_debugfs_write_regwr_fndecl_44162_fields bfad_debugfs_write_regwr fndecl 3 44162 NULL
+recvmsg_proto_ops_44163_fields recvmsg proto_ops 0 44163 NULL
+y_len_ccp_ecc_point_44168_fields y_len ccp_ecc_point 0 44168 NULL
++cpuhp_up_callbacks_fndecl_44173_fields cpuhp_up_callbacks fndecl 0 44173 NULL
+size_drm_mode_create_dumb_44176_fields size drm_mode_create_dumb 0 44176 NULL
+tcfp_nkeys_tcf_pedit_44184_fields tcfp_nkeys tcf_pedit 0 44184 NULL
+qlcnic_change_mtu_fndecl_44186_fields qlcnic_change_mtu fndecl 2 44186 NULL
@@ -199437,13 +204127,12 @@ index 0000000..6b5367db
+len_scifioctl_copy_44214_fields len scifioctl_copy 0 44214 NULL
+s_bsize_jfs_superblock_44215_fields s_bsize jfs_superblock 0 44215 NULL nohasharray
+i2c_len_intel_scu_ipc_pdata_t_44215_fields i2c_len intel_scu_ipc_pdata_t 0 44215 &s_bsize_jfs_superblock_44215_fields
-+IA_TX_BUF_vardecl_iphase_c_44217_fields IA_TX_BUF vardecl_iphase.c 0 44217 NULL nohasharray
-+ext2_inode_by_name_fndecl_44217_fields ext2_inode_by_name fndecl 0 44217 &IA_TX_BUF_vardecl_iphase_c_44217_fields
++ext2_inode_by_name_fndecl_44217_fields ext2_inode_by_name fndecl 0 44217 NULL nohasharray
++IA_TX_BUF_vardecl_iphase_c_44217_fields IA_TX_BUF vardecl_iphase.c 0 44217 &ext2_inode_by_name_fndecl_44217_fields
+__ubifs_setxattr_fndecl_44224_fields __ubifs_setxattr fndecl 4 44224 NULL
+length_rxe_dma_info_44225_fields length rxe_dma_info 0 44225 NULL
+len_args_fndecl_44226_fields len_args fndecl 0 44226 NULL
+ufs_extend_tail_fndecl_44228_fields ufs_extend_tail fndecl 2 44228 NULL
-+ima_store_measurement_fndecl_44233_fields ima_store_measurement fndecl 5 44233 NULL
+au0828_init_isoc_fndecl_44238_fields au0828_init_isoc fndecl 4-2 44238 NULL nohasharray
+ns_first_data_block_the_nilfs_44238_fields ns_first_data_block the_nilfs 0 44238 &au0828_init_isoc_fndecl_44238_fields nohasharray
+iriap_connect_indication_fndecl_44238_fields iriap_connect_indication fndecl 5 44238 &ns_first_data_block_the_nilfs_44238_fields
@@ -199455,21 +204144,19 @@ index 0000000..6b5367db
+num_reg_defaults_raw_regmap_config_44249_fields num_reg_defaults_raw regmap_config 0 44249 NULL
+skd_sgs_per_request_vardecl_skd_main_c_44264_fields skd_sgs_per_request vardecl_skd_main.c 0 44264 NULL
+length_ceph_pagelist_44267_fields length ceph_pagelist 0 44267 NULL
-+s_blocks_per_group_ext2_sb_info_44270_fields s_blocks_per_group ext2_sb_info 0 44270 NULL nohasharray
-+skb_put_frags_fndecl_44270_fields skb_put_frags fndecl 3-2 44270 &s_blocks_per_group_ext2_sb_info_44270_fields
++skb_put_frags_fndecl_44270_fields skb_put_frags fndecl 3-2 44270 NULL nohasharray
++s_blocks_per_group_ext2_sb_info_44270_fields s_blocks_per_group ext2_sb_info 0 44270 &skb_put_frags_fndecl_44270_fields
++efi_get_runtime_map_size_fndecl_44276_fields efi_get_runtime_map_size fndecl 0 44276 NULL
+log_pmtu_rvt_ah_44277_fields log_pmtu rvt_ah 0 44277 NULL
+new_raid_disk_md_rdev_44282_fields new_raid_disk md_rdev 0 44282 NULL
-+send_bulk_static_data_fndecl_44287_fields send_bulk_static_data fndecl 3 44287 NULL
+rsp_len_bfad_fcxp_44290_fields rsp_len bfad_fcxp 0 44290 NULL
+pbus_size_mem_fndecl_44293_fields pbus_size_mem fndecl 6 44293 NULL
-+NumberOfPorts_mpt3sas_facts_44306_fields NumberOfPorts mpt3sas_facts 0 44306 NULL
+plen_iwch_ep_44317_fields plen iwch_ep 0 44317 NULL
+rq_num_entries_c4iw_qp_attributes_44321_fields rq_num_entries c4iw_qp_attributes 0 44321 NULL
+produce_size_qp_entry_44325_fields produce_size qp_entry 0 44325 NULL
+encode_op_hdr_fndecl_44327_fields encode_op_hdr fndecl 3 44327 NULL
+size_drm_radeon_gem_userptr_44334_fields size drm_radeon_gem_userptr 0 44334 NULL
+arm_copy_from_user_fndecl_44337_fields arm_copy_from_user fndecl 0 44337 NULL
-+bytesused_cx18_buffer_44339_fields bytesused cx18_buffer 0 44339 NULL
+tail_circ_buf_44346_fields tail circ_buf 0 44346 NULL nohasharray
+count_v4l2_ext_controls_44346_fields count v4l2_ext_controls 0 44346 &tail_circ_buf_44346_fields
+brcmf_sdio_txpkt_prep_sg_fndecl_44354_fields brcmf_sdio_txpkt_prep_sg fndecl 4-0 44354 NULL
@@ -199477,32 +204164,29 @@ index 0000000..6b5367db
+jffs2_write_end_fndecl_44362_fields jffs2_write_end fndecl 3 44362 NULL
+info0_htt_rx_delba_44375_fields info0 htt_rx_delba 0 44375 NULL
+tipc_link_bc_create_fndecl_44381_fields tipc_link_bc_create fndecl 4 44381 NULL
-+dvb_net_ioctl_fndecl_44388_fields dvb_net_ioctl fndecl 2 44388 NULL
+reiserfs_xattr_set_fndecl_44389_fields reiserfs_xattr_set fndecl 4 44389 NULL
+s_raid_stripe_width_ext4_super_block_44401_fields s_raid_stripe_width ext4_super_block 0 44401 NULL
-+kcm_sendpage_fndecl_44404_fields kcm_sendpage fndecl 4-3 44404 NULL nohasharray
++kcm_sendpage_fndecl_44404_fields kcm_sendpage fndecl 3-4 44404 NULL nohasharray
+num_iscsi_tasks_cnic_local_44404_fields num_iscsi_tasks cnic_local 0 44404 &kcm_sendpage_fndecl_44404_fields
+child_mtu_cached_xfrm_dst_44407_fields child_mtu_cached xfrm_dst 0 44407 NULL
+vmxnet3_create_queues_fndecl_44410_fields vmxnet3_create_queues fndecl 5 44410 NULL
+yres_virtual_fb_var_screeninfo_44414_fields yres_virtual fb_var_screeninfo 0 44414 NULL
+count_configfs_buffer_44416_fields count configfs_buffer 0 44416 NULL
-+__get_vm_area_fndecl_44428_fields __get_vm_area fndecl 3 44428 NULL nohasharray
-+rq_ecount_lpfc_sli4_hba_44428_fields rq_ecount lpfc_sli4_hba 0 44428 &__get_vm_area_fndecl_44428_fields
++__get_vm_area_fndecl_44428_fields __get_vm_area fndecl 1-3 44428 NULL
+nbd_ioctl_fndecl_44444_fields nbd_ioctl fndecl 4 44444 NULL
+ivsize_crypto_skcipher_44448_fields ivsize crypto_skcipher 0 44448 NULL
+hh_len_hh_cache_44455_fields hh_len hh_cache 0 44455 NULL
-+cx2341x_handler_init_fndecl_44466_fields cx2341x_handler_init fndecl 2 44466 NULL
+cap_height_usbtv_norm_params_44467_fields cap_height usbtv_norm_params 0 44467 NULL
+get_data_block_bmap_fndecl_44468_fields get_data_block_bmap fndecl 2 44468 NULL
+address_length_acpi_address32_attribute_44471_fields address_length acpi_address32_attribute 0 44471 NULL
-+skb_find_text_fndecl_44481_fields skb_find_text fndecl 2-0 44481 NULL
++resize_stripes_fndecl_44481_fields resize_stripes fndecl 2 44481 NULL nohasharray
++skb_find_text_fndecl_44481_fields skb_find_text fndecl 2-0 44481 &resize_stripes_fndecl_44481_fields
+virtio_gpu_gem_create_fndecl_44491_fields virtio_gpu_gem_create fndecl 3 44491 NULL
+s_first_data_block_ext4_super_block_44495_fields s_first_data_block ext4_super_block 0 44495 NULL
-+mmcies_max_wusbhc_44498_fields mmcies_max wusbhc 0 44498 NULL
+pci_cardbus_io_size_vardecl_44500_fields pci_cardbus_io_size vardecl 0 44500 NULL
+io_start_nfs_pgio_header_44501_fields io_start nfs_pgio_header 0 44501 NULL
-+omfs_bread_fndecl_44502_fields omfs_bread fndecl 2 44502 NULL nohasharray
-+skb_append_pagefrags_fndecl_44502_fields skb_append_pagefrags fndecl 3 44502 &omfs_bread_fndecl_44502_fields
++skb_append_pagefrags_fndecl_44502_fields skb_append_pagefrags fndecl 3 44502 NULL nohasharray
++omfs_bread_fndecl_44502_fields omfs_bread fndecl 2 44502 &skb_append_pagefrags_fndecl_44502_fields
+btrfs_add_ordered_extent_fndecl_44505_fields btrfs_add_ordered_extent fndecl 4-2-3 44505 NULL
+len_iwl_fw_dbg_mem_seg_tlv_44509_fields len iwl_fw_dbg_mem_seg_tlv 0 44509 NULL
+ftdi_elan_edset_setup_fndecl_44513_fields ftdi_elan_edset_setup fndecl 0 44513 NULL nohasharray
@@ -199518,8 +204202,6 @@ index 0000000..6b5367db
+yenta_search_one_res_fndecl_44533_fields yenta_search_one_res fndecl 3 44533 NULL
+max_cqes_mthca_limits_44535_fields max_cqes mthca_limits 0 44535 NULL
+consume_size_vmci_transport_44542_fields consume_size vmci_transport 0 44542 NULL
-+add_debugfs_mem_fndecl_44546_fields add_debugfs_mem fndecl 4 44546 NULL
-+container_height_dmm_44549_fields container_height dmm 0 44549 NULL
+chanctx_data_size_ieee80211_hw_44557_fields chanctx_data_size ieee80211_hw 0 44557 NULL
+wTotalLength_usb_config_descriptor_44569_fields wTotalLength usb_config_descriptor 0 44569 NULL nohasharray
+hpfs_fnode_dno_fndecl_44569_fields hpfs_fnode_dno fndecl 0-2 44569 &wTotalLength_usb_config_descriptor_44569_fields
@@ -199530,7 +204212,6 @@ index 0000000..6b5367db
+smsc47m1_find_fndecl_44589_fields smsc47m1_find fndecl 0 44589 NULL
+rd_data0_gfs2_rgrpd_44591_fields rd_data0 gfs2_rgrpd 0 44591 NULL
+allocate_partition_fndecl_44598_fields allocate_partition fndecl 4 44598 NULL
-+of_io_request_and_map_fndecl_44605_fields of_io_request_and_map fndecl 2 44605 NULL
+vid_hdr_offset_ubi_attach_req_44622_fields vid_hdr_offset ubi_attach_req 0 44622 NULL nohasharray
+irq_cros_ec_device_44622_fields irq cros_ec_device 0 44622 &vid_hdr_offset_ubi_attach_req_44622_fields
+security_file_permission_fndecl_44629_fields security_file_permission fndecl 0 44629 NULL
@@ -199539,89 +204220,86 @@ index 0000000..6b5367db
+bd_block_size_block_device_44635_fields bd_block_size block_device 0 44635 NULL
+chunk_root_btrfs_super_block_44639_fields chunk_root btrfs_super_block 0 44639 NULL
+hfcpci_empty_bfifo_fndecl_44640_fields hfcpci_empty_bfifo fndecl 4 44640 NULL
++log_page_size_mlx5_srq_attr_44642_fields log_page_size mlx5_srq_attr 0 44642 NULL
+nb_dev_strip_zone_44645_fields nb_dev strip_zone 0 44645 NULL
-+len_nlm_lock_44646_fields len nlm_lock 0 44646 NULL
+cp_payload_f2fs_super_block_44648_fields cp_payload f2fs_super_block 0 44648 NULL
+rel_sectors_mmc_ext_csd_44650_fields rel_sectors mmc_ext_csd 0 44650 NULL
+iscsi_segment_init_linear_fndecl_44654_fields iscsi_segment_init_linear fndecl 3 44654 NULL nohasharray
+cm_cno_nilfs_cpmode_44654_fields cm_cno nilfs_cpmode 0 44654 &iscsi_segment_init_linear_fndecl_44654_fields
-+bLength_usb_interface_descriptor_44655_fields bLength usb_interface_descriptor 0 44655 NULL nohasharray
-+nr_sectors_blkif_request_discard_44655_fields nr_sectors blkif_request_discard 0 44655 &bLength_usb_interface_descriptor_44655_fields
++nr_sectors_blkif_request_discard_44655_fields nr_sectors blkif_request_discard 0 44655 NULL nohasharray
++bLength_usb_interface_descriptor_44655_fields bLength usb_interface_descriptor 0 44655 &nr_sectors_blkif_request_discard_44655_fields
+sparse_early_usemaps_alloc_pgdat_section_fndecl_44659_fields sparse_early_usemaps_alloc_pgdat_section fndecl 2 44659 NULL
+import_single_range_fndecl_44662_fields import_single_range fndecl 3 44662 NULL
+max_rqe_pdid_ocrdma_query_srq_rsp_44663_fields max_rqe_pdid ocrdma_query_srq_rsp 0 44663 NULL
+fe_len_ext4_free_extent_44669_fields fe_len ext4_free_extent 0 44669 NULL
+lfb_width_screen_info_44670_fields lfb_width screen_info 0 44670 NULL
+overlay_cap_top_vivid_dev_44672_fields overlay_cap_top vivid_dev 0 44672 NULL
-+mad_sendq_size_vardecl_mad_c_44673_fields mad_sendq_size vardecl_mad.c 0 44673 NULL nohasharray
-+flash_write_fndecl_44673_fields flash_write fndecl 3 44673 &mad_sendq_size_vardecl_mad_c_44673_fields
-+sys_io_setup_fndecl_44679_fields sys_io_setup fndecl 1 44679 NULL nohasharray
-+pipes_psb_ops_44679_fields pipes psb_ops 0 44679 &sys_io_setup_fndecl_44679_fields
-+vlan_cnt_ncsi_rsp_gc_pkt_44681_fields vlan_cnt ncsi_rsp_gc_pkt 0 44681 NULL nohasharray
-+COM_len_camera_data_44681_fields COM_len camera_data 0 44681 &vlan_cnt_ncsi_rsp_gc_pkt_44681_fields nohasharray
++mad_sendq_size_vardecl_mad_c_44673_fields mad_sendq_size vardecl_mad.c 0 44673 NULL
++pipes_psb_ops_44679_fields pipes psb_ops 0 44679 NULL nohasharray
++sys_io_setup_fndecl_44679_fields sys_io_setup fndecl 1 44679 &pipes_psb_ops_44679_fields
++COM_len_camera_data_44681_fields COM_len camera_data 0 44681 NULL nohasharray
+setup_swap_map_and_extents_fndecl_44681_fields setup_swap_map_and_extents fndecl 5 44681 &COM_len_camera_data_44681_fields nohasharray
-+length_ore_striping_info_44681_fields length ore_striping_info 0 44681 &setup_swap_map_and_extents_fndecl_44681_fields
++vlan_cnt_ncsi_rsp_gc_pkt_44681_fields vlan_cnt ncsi_rsp_gc_pkt 0 44681 &setup_swap_map_and_extents_fndecl_44681_fields
+msg_size_ecryptfs_msg_ctx_44687_fields msg_size ecryptfs_msg_ctx 0 44687 NULL
+offset_drm_map_44692_fields offset drm_map 0 44692 NULL
+start_linear_c_44708_fields start linear_c 0 44708 NULL
+drbd_alloc_peer_req_fndecl_44710_fields drbd_alloc_peer_req fndecl 3-4 44710 NULL
+au_rslack_rpc_auth_44712_fields au_rslack rpc_auth 0 44712 NULL
++rtnl_get_offload_stats_attr_size_fndecl_44720_fields rtnl_get_offload_stats_attr_size fndecl 0 44720 NULL
+__nilfs_get_page_block_fndecl_44723_fields __nilfs_get_page_block fndecl 4 44723 NULL
+inlen_mimd_44727_fields inlen mimd 0 44727 NULL
+nd_blk_rw_integrity_fndecl_44728_fields nd_blk_rw_integrity fndecl 0 44728 NULL nohasharray
-+adv7842_read_cable_det_fndecl_44728_fields adv7842_read_cable_det fndecl 0 44728 &nd_blk_rw_integrity_fndecl_44728_fields
-+buffer_size_st_buffer_44731_fields buffer_size st_buffer 0 44731 NULL nohasharray
-+assoc_req_ies_len_station_info_44731_fields assoc_req_ies_len station_info 0 44731 &buffer_size_st_buffer_44731_fields
++bbr_rate_bytes_per_sec_fndecl_44728_fields bbr_rate_bytes_per_sec fndecl 0-3-2 44728 &nd_blk_rw_integrity_fndecl_44728_fields nohasharray
++adv7842_read_cable_det_fndecl_44728_fields adv7842_read_cable_det fndecl 0 44728 &bbr_rate_bytes_per_sec_fndecl_44728_fields
++assoc_req_ies_len_station_info_44731_fields assoc_req_ies_len station_info 0 44731 NULL nohasharray
++buffer_size_st_buffer_44731_fields buffer_size st_buffer 0 44731 &assoc_req_ies_len_station_info_44731_fields
+desc_size_orangefs_bufmap_44734_fields desc_size orangefs_bufmap 0 44734 NULL nohasharray
+wait_for_direct_io_fndecl_44734_fields wait_for_direct_io fndecl 5 44734 &desc_size_orangefs_bufmap_44734_fields
+name_len_name_cache_entry_44739_fields name_len name_cache_entry 0 44739 NULL
+page_size_mspro_sys_info_44749_fields page_size mspro_sys_info 0 44749 NULL
-+max_phy_id_vardecl_x86_pkg_temp_thermal_c_44750_fields max_phy_id vardecl_x86_pkg_temp_thermal.c 0 44750 NULL
+dev_sectors_mddev_44756_fields dev_sectors mddev 0 44756 NULL
+set_ssp_fndecl_44760_fields set_ssp fndecl 4 44760 NULL
+p_memsz_elf64_phdr_44763_fields p_memsz elf64_phdr 0 44763 NULL
+mt9m111_reg_read_fndecl_44764_fields mt9m111_reg_read fndecl 0 44764 NULL
+telem_pmc_ssram_base_intel_pmc_ipc_dev_44767_fields telem_pmc_ssram_base intel_pmc_ipc_dev 0 44767 NULL
++xfs_reflink_allocate_cow_range_fndecl_44768_fields xfs_reflink_allocate_cow_range fndecl 3-2 44768 NULL
+sys_tee_fndecl_44769_fields sys_tee fndecl 3 44769 NULL
+count_snd_kcontrol_44773_fields count snd_kcontrol 0 44773 NULL
+nbp_vlan_add_fndecl_44783_fields nbp_vlan_add fndecl 2 44783 NULL nohasharray
-+n_values_i2c_mux_gpio_platform_data_44783_fields n_values i2c_mux_gpio_platform_data 0 44783 &nbp_vlan_add_fndecl_44783_fields
++write_size_vz89x_chip_data_44783_fields write_size vz89x_chip_data 0 44783 &nbp_vlan_add_fndecl_44783_fields
+ocfs2_handle_error_fndecl_44785_fields ocfs2_handle_error fndecl 0 44785 NULL
+device_count_pci_bus_relations_44792_fields device_count pci_bus_relations 0 44792 NULL
+btt_data_write_fndecl_44793_fields btt_data_write fndecl 0 44793 NULL
+truncate_size_ceph_mds_caps_44794_fields truncate_size ceph_mds_caps 0 44794 NULL
-+sg_used_ccp_sg_workarea_44796_fields sg_used ccp_sg_workarea 0 44796 NULL
+n_caps_whci_card_44799_fields n_caps whci_card 0 44799 NULL nohasharray
+ioc_queue_depth_bfad_cfg_param_s_44799_fields ioc_queue_depth bfad_cfg_param_s 0 44799 &n_caps_whci_card_44799_fields
+mtd_ooblayout_get_bytes_fndecl_44801_fields mtd_ooblayout_get_bytes fndecl 4 44801 NULL
+tclass_sq_psn_ocrdma_qp_params_44805_fields tclass_sq_psn ocrdma_qp_params 0 44805 NULL
-+__remove_privs_fndecl_44811_fields __remove_privs fndecl 0 44811 NULL nohasharray
-+raw_getfrag_fndecl_44811_fields raw_getfrag fndecl 3-4 44811 &__remove_privs_fndecl_44811_fields
++raw_getfrag_fndecl_44811_fields raw_getfrag fndecl 3-4 44811 NULL nohasharray
++__remove_privs_fndecl_44811_fields __remove_privs fndecl 0 44811 &raw_getfrag_fndecl_44811_fields
+st21nfca_hci_dm_reset_fndecl_44819_fields st21nfca_hci_dm_reset fndecl 3 44819 NULL
-+cluster_pages_for_defrag_fndecl_44823_fields cluster_pages_for_defrag fndecl 0-4-3 44823 NULL nohasharray
-+loffset_scifioctl_copy_44823_fields loffset scifioctl_copy 0 44823 &cluster_pages_for_defrag_fndecl_44823_fields
++cluster_pages_for_defrag_fndecl_44823_fields cluster_pages_for_defrag fndecl 0-4-3 44823 NULL
+bytesize_nbd_device_44824_fields bytesize nbd_device 0 44824 NULL
+vlan_tag_be_rx_compl_info_44830_fields vlan_tag be_rx_compl_info 0 44830 NULL nohasharray
+fix_read_error_fndecl_44830_fields fix_read_error fndecl 4-3 44830 &vlan_tag_be_rx_compl_info_44830_fields
+name_len_exofs_dir_entry_44838_fields name_len exofs_dir_entry 0 44838 NULL
++xt_compat_match_offset_fndecl_44840_fields xt_compat_match_offset fndecl 0 44840 NULL
+num_zones_quirk_entry_44844_fields num_zones quirk_entry 0 44844 NULL
+btrfs_shrink_device_fndecl_44845_fields btrfs_shrink_device fndecl 2 44845 NULL
+ext4_da_get_block_prep_fndecl_44848_fields ext4_da_get_block_prep fndecl 2 44848 NULL
+primary_size_drm_mga_dma_bootstrap_44851_fields primary_size drm_mga_dma_bootstrap 0 44851 NULL
+start_segno_sit_entry_set_44852_fields start_segno sit_entry_set 0 44852 NULL
-+compat_do_readv_writev_fndecl_44857_fields compat_do_readv_writev fndecl 4 44857 NULL
+viafb_second_yres_vardecl_44862_fields viafb_second_yres vardecl 0 44862 NULL
+crypt_extent_fndecl_44866_fields crypt_extent fndecl 4 44866 NULL nohasharray
+h4_recv_fndecl_44866_fields h4_recv fndecl 3 44866 &crypt_extent_fndecl_44866_fields
+alloc_rc_map_44870_fields alloc rc_map 0 44870 NULL
+romfs_blk_read_fndecl_44875_fields romfs_blk_read fndecl 4-2 44875 NULL
-+ppp_tx_cp_fndecl_44879_fields ppp_tx_cp fndecl 5 44879 NULL
-+rvt_set_page_fndecl_44884_fields rvt_set_page fndecl 2 44884 NULL
++ppp_tx_cp_fndecl_44879_fields ppp_tx_cp fndecl 5-2 44879 NULL
++num_resources_platform_device_44886_fields num_resources platform_device 0 44886 NULL
+__cookie_v4_check_fndecl_44887_fields __cookie_v4_check fndecl 0 44887 NULL nohasharray
+jffs2_do_unlink_fndecl_44887_fields jffs2_do_unlink fndecl 4 44887 &__cookie_v4_check_fndecl_44887_fields
+code_length_lirc_driver_44888_fields code_length lirc_driver 0 44888 NULL
+msg_len_rndis_data_hdr_44891_fields msg_len rndis_data_hdr 0 44891 NULL
-+inst_evtlog_size_iwl_fw_44893_fields inst_evtlog_size iwl_fw 0 44893 NULL
+FormattedSize_NFTLMediaHeader_44896_fields FormattedSize NFTLMediaHeader 0 44896 NULL
+io_size_gpio_lpc_sch_info_44898_fields io_size_gpio lpc_sch_info 0 44898 NULL
+pcpu_alloc_bootmem_fndecl_44905_fields pcpu_alloc_bootmem fndecl 3-2 44905 NULL nohasharray
@@ -199630,9 +204308,7 @@ index 0000000..6b5367db
+write_packet_fndecl_44910_fields write_packet fndecl 3 44910 NULL
+catas_size_mlx4_fw_44916_fields catas_size mlx4_fw 0 44916 NULL
+bvec_iter_advance_fndecl_44933_fields bvec_iter_advance fndecl 3 44933 NULL
-+mlx5e_add_skb_frag_fragmented_mpwqe_fndecl_44934_fields mlx5e_add_skb_frag_fragmented_mpwqe fndecl 6-5 44934 NULL
-+liquidio_push_packet_fndecl_44941_fields liquidio_push_packet fndecl 3 44941 NULL nohasharray
-+roccat_common2_sysfs_write_fndecl_44941_fields roccat_common2_sysfs_write fndecl 6 44941 &liquidio_push_packet_fndecl_44941_fields
++liquidio_push_packet_fndecl_44941_fields liquidio_push_packet fndecl 3 44941 NULL
+data_dev_block_bits_dm_verity_44943_fields data_dev_block_bits dm_verity 0 44943 NULL
+_xfs_log_force_lsn_fndecl_44944_fields _xfs_log_force_lsn fndecl 0 44944 NULL nohasharray
+data_block_dm_thin_new_mapping_44944_fields data_block dm_thin_new_mapping 0 44944 &_xfs_log_force_lsn_fndecl_44944_fields nohasharray
@@ -199643,6 +204319,7 @@ index 0000000..6b5367db
+coff_ddb_output_44962_fields coff ddb_output 0 44962 NULL
+fat12_ent_bread_fndecl_44968_fields fat12_ent_bread fndecl 4 44968 NULL
+i915_pages_create_for_stolen_fndecl_44970_fields i915_pages_create_for_stolen fndecl 3 44970 NULL
++rx_top_rxrpc_call_44973_fields rx_top rxrpc_call 0 44973 NULL
+x0_osd_cmd_s_44978_fields x0 osd_cmd_s 0 44978 NULL
+length_mtd_oob_buf64_44979_fields length mtd_oob_buf64 0 44979 NULL
+ip_recv_error_fndecl_44982_fields ip_recv_error fndecl 3 44982 NULL nohasharray
@@ -199654,32 +204331,36 @@ index 0000000..6b5367db
+iscsi_max_outsnd_r2t_dev_db_entry_44997_fields iscsi_max_outsnd_r2t dev_db_entry 0 44997 NULL
+eeprom_size_il_cfg_44998_fields eeprom_size il_cfg 0 44998 NULL
+ocfs2_list_xattr_tree_rec_fndecl_45001_fields ocfs2_list_xattr_tree_rec fndecl 3 45001 NULL
-+max_recv_sge_ocrdma_dev_attr_45006_fields max_recv_sge ocrdma_dev_attr 0 45006 NULL
++prism54_wpa_bss_ie_get_fndecl_45006_fields prism54_wpa_bss_ie_get fndecl 0 45006 NULL nohasharray
++max_recv_sge_ocrdma_dev_attr_45006_fields max_recv_sge ocrdma_dev_attr 0 45006 &prism54_wpa_bss_ie_get_fndecl_45006_fields
++mlx5e_redirect_rqt_fndecl_45007_fields mlx5e_redirect_rqt fndecl 3 45007 NULL
+fq_init_fndecl_45009_fields fq_init fndecl 2 45009 NULL
+size_e820entry_45018_fields size e820entry 0 45018 NULL
+num_cqs_mthca_limits_45021_fields num_cqs mthca_limits 0 45021 NULL
+membase_vgastate_45022_fields membase vgastate 0 45022 NULL
-+rd_size_hidp_session_45023_fields rd_size hidp_session 0 45023 NULL
-+size_nf_queue_entry_45047_fields size nf_queue_entry 0 45047 NULL
++serial8250_get_baud_rate_fndecl_45029_fields serial8250_get_baud_rate fndecl 0 45029 NULL
++alloc_upcall_fndecl_45049_fields alloc_upcall fndecl 2 45049 NULL
+tx_ring_count_e1000_adapter_45060_fields tx_ring_count e1000_adapter 0 45060 NULL
++write_buffer_size_vardecl_legousbtower_c_45062_fields write_buffer_size vardecl_legousbtower.c 0 45062 NULL
+crypto_akcipher_maxsize_fndecl_45073_fields crypto_akcipher_maxsize fndecl 0 45073 NULL
+read_vbt_r10_fndecl_45076_fields read_vbt_r10 fndecl 1 45076 NULL
-+sendpage_iscsi_sw_tcp_conn_45081_fields sendpage iscsi_sw_tcp_conn 0 45081 NULL
++offset_strp_rx_msg_45081_fields offset strp_rx_msg 0 45081 NULL nohasharray
++sendpage_iscsi_sw_tcp_conn_45081_fields sendpage iscsi_sw_tcp_conn 0 45081 &offset_strp_rx_msg_45081_fields
+unmap_mapping_range_vma_fndecl_45084_fields unmap_mapping_range_vma fndecl 2-3 45084 NULL
+regshift_uart_port_45089_fields regshift uart_port 0 45089 NULL
+revmap_size_irq_domain_45091_fields revmap_size irq_domain 0 45091 NULL
+ocfs2_lock_reflink_xattr_rec_allocators_fndecl_45097_fields ocfs2_lock_reflink_xattr_rec_allocators fndecl 3 45097 NULL
+bblog_size_mdp_superblock_1_45102_fields bblog_size mdp_superblock_1 0 45102 NULL
-+pitch_tmHWStreamParameters_45105_fields pitch tmHWStreamParameters 0 45105 NULL
+skb_tx_rsvd_cxgbi_device_45109_fields skb_tx_rsvd cxgbi_device 0 45109 NULL
-+init_data_container_fndecl_45110_fields init_data_container fndecl 1 45110 NULL nohasharray
++drm_calc_scale_fndecl_45110_fields drm_calc_scale fndecl 0-2-1 45110 NULL nohasharray
++init_data_container_fndecl_45110_fields init_data_container fndecl 1 45110 &drm_calc_scale_fndecl_45110_fields nohasharray
+watchdog_devt_vardecl_watchdog_dev_c_45110_fields watchdog_devt vardecl_watchdog_dev.c 0 45110 &init_data_container_fndecl_45110_fields
+drvinfo_sz_rtl8xxxu_rxdesc16_45111_fields drvinfo_sz rtl8xxxu_rxdesc16 0 45111 NULL
-+ea_size_s_fnode_45115_fields ea_size_s fnode 0 45115 NULL
++ea_size_s_fnode_45115_fields ea_size_s fnode 0 45115 NULL nohasharray
++handle_error_msi_domain_ops_45115_fields handle_error msi_domain_ops 0 45115 &ea_size_s_fnode_45115_fields
+ov518_pkt_scan_fndecl_45121_fields ov518_pkt_scan fndecl 3 45121 NULL
-+vblk_size_vmdb_45123_fields vblk_size vmdb 0 45123 NULL
-+key_len_mwifiex_ds_encrypt_key_45127_fields key_len mwifiex_ds_encrypt_key 0 45127 NULL nohasharray
-+offset_nb8800_rx_buf_45127_fields offset nb8800_rx_buf 0 45127 &key_len_mwifiex_ds_encrypt_key_45127_fields
++offset_nb8800_rx_buf_45127_fields offset nb8800_rx_buf 0 45127 NULL nohasharray
++key_len_mwifiex_ds_encrypt_key_45127_fields key_len mwifiex_ds_encrypt_key 0 45127 &offset_nb8800_rx_buf_45127_fields
+rpc_max_bc_payload_fndecl_45131_fields rpc_max_bc_payload fndecl 0 45131 NULL
+img_x_zoran_jpg_settings_45135_fields img_x zoran_jpg_settings 0 45135 NULL
+offset_mlx4_clock_params_45137_fields offset mlx4_clock_params 0 45137 NULL
@@ -199687,10 +204368,10 @@ index 0000000..6b5367db
+MaxLanBuckets__MSG_PORT_FACTS_REPLY_45155_fields MaxLanBuckets _MSG_PORT_FACTS_REPLY 0 45155 NULL
+ocfs2_set_refcount_tree_fndecl_45158_fields ocfs2_set_refcount_tree fndecl 3 45158 NULL
+nvmet_copy_from_sgl_fndecl_45160_fields nvmet_copy_from_sgl fndecl 2-4 45160 NULL
-+desc_len_skb_frame_desc_45170_fields desc_len skb_frame_desc 0 45170 NULL nohasharray
-+pkcs7_sig_note_issuer_fndecl_45170_fields pkcs7_sig_note_issuer fndecl 5 45170 &desc_len_skb_frame_desc_45170_fields
++cmd_sg_cnt_srp_target_port_45169_fields cmd_sg_cnt srp_target_port 0 45169 NULL
++pkcs7_sig_note_issuer_fndecl_45170_fields pkcs7_sig_note_issuer fndecl 5 45170 NULL
+hpfs_remove_dirent_fndecl_45171_fields hpfs_remove_dirent fndecl 2 45171 NULL
-+sel_write_checkreqprot_fndecl_45173_fields sel_write_checkreqprot fndecl 3 45173 NULL
++opticon_write_fndecl_45172_fields opticon_write fndecl 4 45172 NULL
+leaf_cut_entries_fndecl_45176_fields leaf_cut_entries fndecl 0-4 45176 NULL
+nfsd_splice_read_fndecl_45181_fields nfsd_splice_read fndecl 3 45181 NULL nohasharray
+quirk_awe32_add_ports_fndecl_45181_fields quirk_awe32_add_ports fndecl 3 45181 &nfsd_splice_read_fndecl_45181_fields
@@ -199720,29 +204401,30 @@ index 0000000..6b5367db
+generic_writepages_fndecl_45268_fields generic_writepages fndecl 0 45268 NULL nohasharray
+vmw_dmabuf_init_fndecl_45268_fields vmw_dmabuf_init fndecl 3 45268 &generic_writepages_fndecl_45268_fields
+btrfs_test_qgroups_fndecl_45273_fields btrfs_test_qgroups fndecl 1-2 45273 NULL
++uart_input_count_oxygen_45274_fields uart_input_count oxygen 0 45274 NULL
++mq_msgsize_mq_attr_45276_fields mq_msgsize mq_attr 0 45276 NULL
+rss_size_max_i40e_pf_45282_fields rss_size_max i40e_pf 0 45282 NULL
-+mgt_set_varlen_fndecl_45287_fields mgt_set_varlen fndecl 4 45287 NULL
+ath6kl_sdio_write_async_fndecl_45290_fields ath6kl_sdio_write_async fndecl 4 45290 NULL
+rcvhdrcnt_qib_devdata_45297_fields rcvhdrcnt qib_devdata 0 45297 NULL
+rcvhdrcnt_vardecl_init_c_45302_fields rcvhdrcnt vardecl_init.c 0 45302 NULL
-+hugetlbfs_read_actor_fndecl_45304_fields hugetlbfs_read_actor fndecl 4-0-2 45304 NULL
++hugetlbfs_read_actor_fndecl_45304_fields hugetlbfs_read_actor fndecl 0-4-2 45304 NULL
+atl1_change_mtu_fndecl_45313_fields atl1_change_mtu fndecl 2 45313 NULL nohasharray
+rx_count_ethtool_channels_45313_fields rx_count ethtool_channels 0 45313 &atl1_change_mtu_fndecl_45313_fields nohasharray
+rx_ring_count_xgbe_prv_data_45313_fields rx_ring_count xgbe_prv_data 0 45313 &rx_count_ethtool_channels_45313_fields
+tipc_buf_acquire_fndecl_45318_fields tipc_buf_acquire fndecl 1 45318 NULL
+rx_data_fndecl_45321_fields rx_data fndecl 4 45321 NULL
-+len_qib_diag_xpkt_45322_fields len qib_diag_xpkt 0 45322 NULL nohasharray
-+fec_decode_bufs_fndecl_45322_fields fec_decode_bufs fndecl 3-5 45322 &len_qib_diag_xpkt_45322_fields
++fec_decode_bufs_fndecl_45322_fields fec_decode_bufs fndecl 3-5 45322 NULL nohasharray
++len_qib_diag_xpkt_45322_fields len qib_diag_xpkt 0 45322 &fec_decode_bufs_fndecl_45322_fields
+tipc_recv_stream_fndecl_45323_fields tipc_recv_stream fndecl 3 45323 NULL
+back_xfs_dir3_icleaf_hdr_45324_fields back xfs_dir3_icleaf_hdr 0 45324 NULL
+tcf_csum_ipv4_igmp_fndecl_45325_fields tcf_csum_ipv4_igmp fndecl 3 45325 NULL
-+of_property_count_elems_of_size_fndecl_45337_fields of_property_count_elems_of_size fndecl 0 45337 NULL
+peer_chan_len_wmi_tdls_peer_capab_arg_45339_fields peer_chan_len wmi_tdls_peer_capab_arg 0 45339 NULL
+vm_munmap_fndecl_45341_fields vm_munmap fndecl 1-2 45341 NULL
+__snd_util_mem_alloc_fndecl_45349_fields __snd_util_mem_alloc fndecl 2 45349 NULL
+uar_size_mlx4_dev_cap_45351_fields uar_size mlx4_dev_cap 0 45351 NULL
+reserve_bad_mem_fndecl_45356_fields reserve_bad_mem fndecl 2-3 45356 NULL
+icq_size_elevator_type_45359_fields icq_size elevator_type 0 45359 NULL
++msix_count_i40iw_device_45370_fields msix_count i40iw_device 0 45370 NULL
+mad_recvq_size_vardecl_mad_c_45372_fields mad_recvq_size vardecl_mad.c 0 45372 NULL
+get_urb_status_from_qtd_fndecl_45378_fields get_urb_status_from_qtd fndecl 0 45378 NULL
+txq_entries_efx_nic_45383_fields txq_entries efx_nic 0 45383 NULL
@@ -199752,12 +204434,11 @@ index 0000000..6b5367db
+mtu_l2cap_le_conn_req_45411_fields mtu l2cap_le_conn_req 0 45411 NULL
+lastUnit_INFTLPartition_45416_fields lastUnit INFTLPartition 0 45416 NULL
+st95hf_response_handler_fndecl_45419_fields st95hf_response_handler fndecl 3 45419 NULL
-+ath_tx_init_fndecl_45424_fields ath_tx_init fndecl 2 45424 NULL
+fats_msdos_sb_info_45426_fields fats msdos_sb_info 0 45426 NULL
++emac_change_mtu_fndecl_45427_fields emac_change_mtu fndecl 2 45427 NULL
+__munlock_pagevec_fill_fndecl_45430_fields __munlock_pagevec_fill fndecl 0-4 45430 NULL
+rn_tnamelen_nfsd4_rename_45437_fields rn_tnamelen nfsd4_rename 0 45437 NULL
+radeon_ttm_tt_set_userptr_fndecl_45438_fields radeon_ttm_tt_set_userptr fndecl 2 45438 NULL
-+rvt_alloc_device_fndecl_45442_fields rvt_alloc_device fndecl 1 45442 NULL
+qcaspi_netdev_change_mtu_fndecl_45450_fields qcaspi_netdev_change_mtu fndecl 2 45450 NULL
+start_bdi_bd_transfer_45454_fields start_bdi bd_transfer 0 45454 NULL
+wTotalLength_usb_bos_descriptor_45455_fields wTotalLength usb_bos_descriptor 0 45455 NULL
@@ -199777,13 +204458,11 @@ index 0000000..6b5367db
+ubifs_recover_leb_fndecl_45516_fields ubifs_recover_leb fndecl 3 45516 NULL
+buffer_size_vardecl_cpia2_v4l_c_45517_fields buffer_size vardecl_cpia2_v4l.c 0 45517 NULL nohasharray
+stv6110_write_regs_fndecl_45517_fields stv6110_write_regs fndecl 4 45517 &buffer_size_vardecl_cpia2_v4l_c_45517_fields
-+inode_change_ok_fndecl_45525_fields inode_change_ok fndecl 0 45525 NULL
-+cifs_partialpagewrite_fndecl_45527_fields cifs_partialpagewrite fndecl 2-3 45527 NULL nohasharray
-+callback_via_vardecl_platform_pci_c_45527_fields callback_via vardecl_platform-pci.c 0 45527 &cifs_partialpagewrite_fndecl_45527_fields
++cifs_partialpagewrite_fndecl_45527_fields cifs_partialpagewrite fndecl 2-3 45527 NULL
+ssb_hcd_create_pdev_fndecl_45528_fields ssb_hcd_create_pdev fndecl 4-3 45528 NULL
+sizeof_dev_private_peak_usb_adapter_45529_fields sizeof_dev_private peak_usb_adapter 0 45529 NULL
+hpfs_trim_fs_fndecl_45531_fields hpfs_trim_fs fndecl 2-3 45531 NULL
-+rtsx_usb_bulk_transfer_sglist_fndecl_45538_fields rtsx_usb_bulk_transfer_sglist fndecl 5-2-4 45538 NULL
++rtsx_usb_bulk_transfer_sglist_fndecl_45538_fields rtsx_usb_bulk_transfer_sglist fndecl 2-5-4 45538 NULL
+size_nft_expr_ops_45543_fields size nft_expr_ops 0 45543 NULL
+if_sdio_host_to_card_fndecl_45545_fields if_sdio_host_to_card fndecl 4 45545 NULL
+mp_agg_pkt_limit_sdio_mmc_card_45546_fields mp_agg_pkt_limit sdio_mmc_card 0 45546 NULL
@@ -199795,22 +204474,17 @@ index 0000000..6b5367db
+get_gate_page_fndecl_45571_fields get_gate_page fndecl 2 45571 NULL
+s_partition_func_udf_part_map_45579_fields s_partition_func udf_part_map 0 45579 NULL
+udf_free_blocks_fndecl_45589_fields udf_free_blocks fndecl 4-5 45589 NULL
-+upd_received_ubi_volume_45595_fields upd_received ubi_volume 0 45595 NULL
-+readpos_cx18_buffer_45604_fields readpos cx18_buffer 0 45604 NULL
+l_logBBsize_xlog_45614_fields l_logBBsize xlog 0 45614 NULL
-+intel_th_device_add_resources_fndecl_45615_fields intel_th_device_add_resources fndecl 3 45615 NULL
+crtc_vblank_end_drm_display_mode_45620_fields crtc_vblank_end drm_display_mode 0 45620 NULL
+image_size_nvbios_npdeT_45624_fields image_size nvbios_npdeT 0 45624 NULL
+ext4_mb_init_group_fndecl_45626_fields ext4_mb_init_group fndecl 0 45626 NULL
+blocknr_disk_index_entry_45635_fields blocknr disk_index_entry 0 45635 NULL
+advmss_tcp_sock_45637_fields advmss tcp_sock 0 45637 NULL nohasharray
-+btrfs_bio_alloc_fndecl_45637_fields btrfs_bio_alloc fndecl 2-3 45637 &advmss_tcp_sock_45637_fields nohasharray
-+ifalias_store_fndecl_45637_fields ifalias_store fndecl 4 45637 &btrfs_bio_alloc_fndecl_45637_fields
++btrfs_bio_alloc_fndecl_45637_fields btrfs_bio_alloc fndecl 2 45637 &advmss_tcp_sock_45637_fields
+tcfv_push_vid_tcf_vlan_45639_fields tcfv_push_vid tcf_vlan 0 45639 NULL
+ecc_strength_ds_nand_chip_45651_fields ecc_strength_ds nand_chip 0 45651 NULL
+inftl_writeblock_fndecl_45653_fields inftl_writeblock fndecl 2 45653 NULL
+size_core_name_45656_fields size core_name 0 45656 NULL
-+b_public_size_kpp_testvec_45660_fields b_public_size kpp_testvec 0 45660 NULL
+blockmask_alauda_media_info_45662_fields blockmask alauda_media_info 0 45662 NULL
+dmi_base_vardecl_dmi_scan_c_45673_fields dmi_base vardecl_dmi_scan.c 0 45673 NULL
+_snd_pcm_hw_param_min_fndecl_45677_fields _snd_pcm_hw_param_min fndecl 3 45677 NULL
@@ -199818,25 +204492,27 @@ index 0000000..6b5367db
+ib_umem_odp_map_dma_pages_fndecl_45679_fields ib_umem_odp_map_dma_pages fndecl 0-2 45679 NULL nohasharray
+lhead_offs_ubifs_info_45679_fields lhead_offs ubifs_info 0 45679 &ib_umem_odp_map_dma_pages_fndecl_45679_fields
+hfsplus_getxattr_finder_info_fndecl_45680_fields hfsplus_getxattr_finder_info fndecl 0 45680 NULL
-+src_y_yuv_frame_info_45681_fields src_y yuv_frame_info 0 45681 NULL
++baud_cyclades_port_45681_fields baud cyclades_port 0 45681 NULL nohasharray
++src_y_yuv_frame_info_45681_fields src_y yuv_frame_info 0 45681 &baud_cyclades_port_45681_fields
+endpt_ubifs_unclean_leb_45692_fields endpt ubifs_unclean_leb 0 45692 NULL
-+shift_badblocks_45703_fields shift badblocks 0 45703 NULL
++drm_rect_calc_hscale_fndecl_45703_fields drm_rect_calc_hscale fndecl 0 45703 NULL nohasharray
++shift_badblocks_45703_fields shift badblocks 0 45703 &drm_rect_calc_hscale_fndecl_45703_fields
+offset_ixgbe_ring_feature_45704_fields offset ixgbe_ring_feature 0 45704 NULL
+data_transfer_length_hpt_iop_request_get_config_45705_fields data_transfer_length hpt_iop_request_get_config 0 45705 NULL
+do_splice_direct_fndecl_45710_fields do_splice_direct fndecl 0-5 45710 NULL nohasharray
+fi_nblocks_nilfs_finfo_45710_fields fi_nblocks nilfs_finfo 0 45710 &do_splice_direct_fndecl_45710_fields
-+st5481_setup_isocpipes_fndecl_45711_fields st5481_setup_isocpipes fndecl 4 45711 NULL
+width_cx23885_dev_45714_fields width cx23885_dev 0 45714 NULL
+ocfs2_xattr_set_fndecl_45720_fields ocfs2_xattr_set fndecl 5 45720 NULL
+num_cqs_mlx4_caps_45727_fields num_cqs mlx4_caps 0 45727 NULL
++ena_calc_queue_size_fndecl_45731_fields ena_calc_queue_size fndecl 0 45731 NULL
+len_bnx2x_fw_file_section_45732_fields len bnx2x_fw_file_section 0 45732 NULL
++tx_len_mrvl_data_45733_fields tx_len mrvl_data 0 45733 NULL
+sys_ptrace_fndecl_45738_fields sys_ptrace fndecl 3 45738 NULL
+get_args_iw_priv_args_45748_fields get_args iw_priv_args 0 45748 NULL
+vslen_vardecl_matroxfb_base_c_45755_fields vslen vardecl_matroxfb_base.c 0 45755 NULL
+extra_postfix_len_ieee80211_crypto_ops_45763_fields extra_postfix_len ieee80211_crypto_ops 0 45763 NULL
-+size_entry_mwt_fndecl_45771_fields size_entry_mwt fndecl 0 45771 NULL nohasharray
-+cc2520_write_txfifo_fndecl_45771_fields cc2520_write_txfifo fndecl 4 45771 &size_entry_mwt_fndecl_45771_fields
-+set_acoustic_fndecl_45772_fields set_acoustic fndecl 2 45772 NULL
++cc2520_write_txfifo_fndecl_45771_fields cc2520_write_txfifo fndecl 4 45771 NULL nohasharray
++size_entry_mwt_fndecl_45771_fields size_entry_mwt fndecl 0 45771 &cc2520_write_txfifo_fndecl_45771_fields
+len_ch_mem_range_45781_fields len ch_mem_range 0 45781 NULL
+ath6kl_wmi_set_htcap_cmd_fndecl_45784_fields ath6kl_wmi_set_htcap_cmd fndecl 2 45784 NULL
+change_xattr_fndecl_45789_fields change_xattr fndecl 5 45789 NULL
@@ -199848,7 +204524,6 @@ index 0000000..6b5367db
+msg_init_fndecl_45825_fields msg_init fndecl 4 45825 NULL nohasharray
+hfi1_max_srq_sges_vardecl_45825_fields hfi1_max_srq_sges vardecl 0 45825 &msg_init_fndecl_45825_fields
+tx_cmd_ep_usb_card_rec_45833_fields tx_cmd_ep usb_card_rec 0 45833 NULL
-+max_channels_evtchn_ops_45841_fields max_channels evtchn_ops 0 45841 NULL
+width_zr364xx_camera_45844_fields width zr364xx_camera 0 45844 NULL nohasharray
+mwifiex_cfg80211_assoc_fndecl_45844_fields mwifiex_cfg80211_assoc fndecl 2 45844 &width_zr364xx_camera_45844_fields
+sys_mlock_fndecl_45847_fields sys_mlock fndecl 1-2 45847 NULL
@@ -199860,6 +204535,7 @@ index 0000000..6b5367db
+data_used_cx18_mdl_ack_45859_fields data_used cx18_mdl_ack 0 45859 &st21nfca_hci_dm_put_data_fndecl_45859_fields
+pipe_interrupt_rtl8xxxu_priv_45862_fields pipe_interrupt rtl8xxxu_priv 0 45862 NULL
+net_header_len_inet_connection_sock_af_ops_45863_fields net_header_len inet_connection_sock_af_ops 0 45863 NULL
++__a2mp_build_fndecl_45864_fields __a2mp_build fndecl 3 45864 NULL
+xfrm_nr_xfrm_policy_45865_fields xfrm_nr xfrm_policy 0 45865 NULL
+lkey_table_size_rvt_driver_params_45866_fields lkey_table_size rvt_driver_params 0 45866 NULL
+parity_ore_layout_45869_fields parity ore_layout 0 45869 NULL
@@ -199875,42 +204551,43 @@ index 0000000..6b5367db
+jhead_cnt_ubifs_info_45905_fields jhead_cnt ubifs_info 0 45905 NULL
+vce_v1_0_bo_size_fndecl_45909_fields vce_v1_0_bo_size fndecl 0 45909 NULL
+bg_itable_unused_hi_ext4_group_desc_45918_fields bg_itable_unused_hi ext4_group_desc 0 45918 NULL
++alloc_sglist_fndecl_45919_fields alloc_sglist fndecl 3-2 45919 NULL
+wl1271_tx_allocate_fndecl_45921_fields wl1271_tx_allocate fndecl 4 45921 NULL
+mru_asyncppp_45929_fields mru asyncppp 0 45929 NULL
+base_i40iw_hmc_obj_info_45931_fields base i40iw_hmc_obj_info 0 45931 NULL
+fan_count_applesmc_registers_45934_fields fan_count applesmc_registers 0 45934 NULL
+num_ports_pciserial_board_45938_fields num_ports pciserial_board 0 45938 NULL
-+sdhci_pltfm_register_fndecl_45940_fields sdhci_pltfm_register fndecl 3 45940 NULL
+ath6kl_wmi_setpmkid_cmd_fndecl_45949_fields ath6kl_wmi_setpmkid_cmd fndecl 2 45949 NULL nohasharray
+num_vfs_be_pcie_res_desc_45949_fields num_vfs be_pcie_res_desc 0 45949 &ath6kl_wmi_setpmkid_cmd_fndecl_45949_fields nohasharray
+smbus_base_vardecl_i2c_sis630_c_45949_fields smbus_base vardecl_i2c-sis630.c 0 45949 &num_vfs_be_pcie_res_desc_45949_fields
+fraglen_decryptor_desc_45950_fields fraglen decryptor_desc 0 45950 NULL
+max_sge_ib_srq_attr_45956_fields max_sge ib_srq_attr 0 45956 NULL
-+len_ippp_buf_queue_45969_fields len ippp_buf_queue 0 45969 NULL nohasharray
-+alpha_illinois_45969_fields alpha illinois 0 45969 &len_ippp_buf_queue_45969_fields
++alpha_illinois_45969_fields alpha illinois 0 45969 NULL nohasharray
++len_ippp_buf_queue_45969_fields len ippp_buf_queue 0 45969 &alpha_illinois_45969_fields
+ext_tree_split_fndecl_45973_fields ext_tree_split fndecl 3 45973 NULL
+addr_rrpc_rev_addr_45978_fields addr rrpc_rev_addr 0 45978 NULL
-+target_size_ebt_entry_target_45980_fields target_size ebt_entry_target 0 45980 NULL nohasharray
-+dbdma_cmd_yellowfin_desc_45980_fields dbdma_cmd yellowfin_desc 0 45980 &target_size_ebt_entry_target_45980_fields nohasharray
-+tcp_lp_cong_avoid_fndecl_45980_fields tcp_lp_cong_avoid fndecl 3 45980 &dbdma_cmd_yellowfin_desc_45980_fields
-+i40e_calculate_l2fpm_size_fndecl_45987_fields i40e_calculate_l2fpm_size fndecl 0-1-2-3-4 45987 NULL
++dbdma_cmd_yellowfin_desc_45980_fields dbdma_cmd yellowfin_desc 0 45980 NULL nohasharray
++tcp_lp_cong_avoid_fndecl_45980_fields tcp_lp_cong_avoid fndecl 3 45980 &dbdma_cmd_yellowfin_desc_45980_fields nohasharray
++target_size_ebt_entry_target_45980_fields target_size ebt_entry_target 0 45980 &tcp_lp_cong_avoid_fndecl_45980_fields
++i40e_calculate_l2fpm_size_fndecl_45987_fields i40e_calculate_l2fpm_size fndecl 0 45987 NULL
+up_fnode_45991_fields up fnode 0 45991 NULL nohasharray
+lancer_cmd_get_file_len_fndecl_45991_fields lancer_cmd_get_file_len fndecl 0 45991 &up_fnode_45991_fields
+alloc_chrdev_region_fndecl_45995_fields alloc_chrdev_region fndecl 0 45995 NULL
+num_total_dacs_snd_ice1712_45997_fields num_total_dacs snd_ice1712 0 45997 NULL
+finish_request_fndecl_46010_fields finish_request fndecl 5 46010 NULL
-+pcs_duplex_stmmac_extra_stats_46013_fields pcs_duplex stmmac_extra_stats 0 46013 NULL
-+afs_proc_cells_write_fndecl_46016_fields afs_proc_cells_write fndecl 3 46016 NULL
++convert_channels_asoc_simple_card_priv_46013_fields convert_channels asoc_simple_card_priv 0 46013 NULL nohasharray
++pcs_duplex_stmmac_extra_stats_46013_fields pcs_duplex stmmac_extra_stats 0 46013 &convert_channels_asoc_simple_card_priv_46013_fields
+latency_st33zp24_spi_phy_46028_fields latency st33zp24_spi_phy 0 46028 NULL
+acl_mtu_hci_dev_46038_fields acl_mtu hci_dev 0 46038 NULL
+dma_size_qlcnic_host_rds_ring_46045_fields dma_size qlcnic_host_rds_ring 0 46045 NULL
-+log_ind_tbl_size_ib_uverbs_ex_create_rwq_ind_table_46051_fields log_ind_tbl_size ib_uverbs_ex_create_rwq_ind_table 0 46051 NULL
-+pair_device_fndecl_46052_fields pair_device fndecl 4 46052 NULL nohasharray
-+num_wsm_mib_beacon_filter_table_46052_fields num wsm_mib_beacon_filter_table 0 46052 &pair_device_fndecl_46052_fields
++__vmalloc_fndecl_46051_fields __vmalloc fndecl 1 46051 NULL nohasharray
++log_ind_tbl_size_ib_uverbs_ex_create_rwq_ind_table_46051_fields log_ind_tbl_size ib_uverbs_ex_create_rwq_ind_table 0 46051 &__vmalloc_fndecl_46051_fields
++calipso_map_cat_hton_fndecl_46052_fields calipso_map_cat_hton fndecl 0 46052 NULL nohasharray
++pair_device_fndecl_46052_fields pair_device fndecl 4 46052 &calipso_map_cat_hton_fndecl_46052_fields
+sisfb_parm_mem_sis_video_info_46063_fields sisfb_parm_mem sis_video_info 0 46063 NULL nohasharray
+get_tx_data_len_rt2x00lib_ops_46063_fields get_tx_data_len rt2x00lib_ops 0 46063 &sisfb_parm_mem_sis_video_info_46063_fields
-+s_start_bfs_super_block_46064_fields s_start bfs_super_block 0 46064 NULL nohasharray
-+MaxBurstLength_iscsi_sess_ops_46064_fields MaxBurstLength iscsi_sess_ops 0 46064 &s_start_bfs_super_block_46064_fields
++MaxBurstLength_iscsi_sess_ops_46064_fields MaxBurstLength iscsi_sess_ops 0 46064 NULL nohasharray
++s_start_bfs_super_block_46064_fields s_start bfs_super_block 0 46064 &MaxBurstLength_iscsi_sess_ops_46064_fields
+seg_count_drm_buf_entry_46065_fields seg_count drm_buf_entry 0 46065 NULL
+FirstPhysicalEUN_NFTLMediaHeader_46068_fields FirstPhysicalEUN NFTLMediaHeader 0 46068 NULL
+ext4_ext_determine_hole_fndecl_46073_fields ext4_ext_determine_hole fndecl 0 46073 NULL
@@ -199918,22 +204595,21 @@ index 0000000..6b5367db
+wSamplesPerFrame_uac_format_type_ii_ext_descriptor_46084_fields wSamplesPerFrame uac_format_type_ii_ext_descriptor 0 46084 NULL
+dm_startblk_adfs_discmap_46088_fields dm_startblk adfs_discmap 0 46088 NULL
+num_type_reg_regmap_irq_chip_46090_fields num_type_reg regmap_irq_chip 0 46090 NULL
-+nr_pages_splice_pipe_desc_46095_fields nr_pages splice_pipe_desc 0 46095 NULL
+len_sfi_table_header_46097_fields len sfi_table_header 0 46097 NULL
+jbd2_journal_write_metadata_buffer_fndecl_46103_fields jbd2_journal_write_metadata_buffer fndecl 4 46103 NULL nohasharray
-+control_write_fndecl_46103_fields control_write fndecl 6 46103 &jbd2_journal_write_metadata_buffer_fndecl_46103_fields nohasharray
-+ym_wmfw_adsp2_alg_hdr_46103_fields ym wmfw_adsp2_alg_hdr 0 46103 &control_write_fndecl_46103_fields
++ym_wmfw_adsp2_alg_hdr_46103_fields ym wmfw_adsp2_alg_hdr 0 46103 &jbd2_journal_write_metadata_buffer_fndecl_46103_fields
+bs_vardecl_null_blk_c_46104_fields bs vardecl_null_blk.c 0 46104 NULL
-+ax88179_write_cmd_fndecl_46110_fields ax88179_write_cmd fndecl 5 46110 NULL
+len_eeprom_private_46124_fields len eeprom_private 0 46124 NULL
+height_saa7134_dev_46126_fields height saa7134_dev 0 46126 NULL nohasharray
+tx_totallen_ncp_request_reply_46126_fields tx_totallen ncp_request_reply 0 46126 &height_saa7134_dev_46126_fields
+get_mctgt_type_fndecl_46128_fields get_mctgt_type fndecl 2 46128 NULL nohasharray
+len_cp_header_46128_fields len cp_header 0 46128 &get_mctgt_type_fndecl_46128_fields
+sriov_enable_fndecl_46138_fields sriov_enable fndecl 2 46138 NULL
-+memblock_alloc_range_nid_fndecl_46147_fields memblock_alloc_range_nid fndecl 2-3-4 46147 NULL nohasharray
++memblock_alloc_range_nid_fndecl_46147_fields memblock_alloc_range_nid fndecl 2-1-3-0-4 46147 NULL nohasharray
+next_read_size_fdp_i2c_phy_46147_fields next_read_size fdp_i2c_phy 0 46147 &memblock_alloc_range_nid_fndecl_46147_fields
+transfer_len_xhci_transfer_event_46161_fields transfer_len xhci_transfer_event 0 46161 NULL
++baud_base_ftdi_private_46173_fields baud_base ftdi_private 0 46173 NULL
++max_segs_mmc_test_area_46176_fields max_segs mmc_test_area 0 46176 NULL
+key_size_ecryptfs_private_key_46181_fields key_size ecryptfs_private_key 0 46181 NULL
+mlock_fixup_fndecl_46182_fields mlock_fixup fndecl 4-3 46182 NULL
+ib_alloc_cq_fndecl_46188_fields ib_alloc_cq fndecl 3 46188 NULL
@@ -199944,17 +204620,22 @@ index 0000000..6b5367db
+musb_readb_vardecl_46199_fields musb_readb vardecl 0 46199 NULL nohasharray
+snd_interval_refine_set_fndecl_46199_fields snd_interval_refine_set fndecl 2 46199 &musb_readb_vardecl_46199_fields
+efx_rx_packet_gro_fndecl_46201_fields efx_rx_packet_gro fndecl 3 46201 NULL
++cdclk_intel_atomic_state_46203_fields cdclk intel_atomic_state 0 46203 NULL
+count_raw_sock_46204_fields count raw_sock 0 46204 NULL
++push_node_fndecl_46206_fields push_node fndecl 2 46206 NULL
+hdrlen_ip_beet_phdr_46210_fields hdrlen ip_beet_phdr 0 46210 NULL nohasharray
+sync_request_md_personality_46210_fields sync_request md_personality 0 46210 &hdrlen_ip_beet_phdr_46210_fields
+assocresp_ies_len_cfg80211_beacon_data_46212_fields assocresp_ies_len cfg80211_beacon_data 0 46212 NULL
+unuse_pte_fndecl_46217_fields unuse_pte fndecl 3 46217 NULL
+cob_size_savagefb_par_46219_fields cob_size savagefb_par 0 46219 NULL
+ipw_write_fndecl_46220_fields ipw_write fndecl 3 46220 NULL
++dwDTERate_usb_cdc_line_coding_46226_fields dwDTERate usb_cdc_line_coding 0 46226 NULL
+bLength_usb_interface_assoc_descriptor_46229_fields bLength usb_interface_assoc_descriptor 0 46229 NULL
++venus_remove_fndecl_46230_fields venus_remove fndecl 4 46230 NULL nohasharray
++batadv_tt_local_hash_find_fndecl_46230_fields batadv_tt_local_hash_find fndecl 3 46230 &venus_remove_fndecl_46230_fields
+mei_nfc_recv_fndecl_46235_fields mei_nfc_recv fndecl 0-3 46235 NULL
-+rsn_ie_len_libipw_network_46238_fields rsn_ie_len libipw_network 0 46238 NULL nohasharray
-+xlog_do_recover_fndecl_46238_fields xlog_do_recover fndecl 3 46238 &rsn_ie_len_libipw_network_46238_fields
++xlog_do_recover_fndecl_46238_fields xlog_do_recover fndecl 3 46238 NULL nohasharray
++rsn_ie_len_libipw_network_46238_fields rsn_ie_len libipw_network 0 46238 &xlog_do_recover_fndecl_46238_fields
+node_acl_size_target_core_fabric_ops_46247_fields node_acl_size target_core_fabric_ops 0 46247 NULL
+erst_clear_fndecl_46248_fields erst_clear fndecl 1 46248 NULL
+proc_pid_cmdline_read_fndecl_46249_fields proc_pid_cmdline_read fndecl 3 46249 NULL
@@ -199962,7 +204643,6 @@ index 0000000..6b5367db
+nf_ct_helper_init_fndecl_46259_fields nf_ct_helper_init fndecl 10 46259 NULL
+rocker_port_change_mtu_fndecl_46262_fields rocker_port_change_mtu fndecl 2 46262 NULL nohasharray
+len_ath10k_fw_ie_46262_fields len ath10k_fw_ie 0 46262 &rocker_port_change_mtu_fndecl_46262_fields
-+size_xenvif_rx_meta_46270_fields size xenvif_rx_meta 0 46270 NULL
+sq_size_i40iw_qp_uk_46272_fields sq_size i40iw_qp_uk 0 46272 NULL
+onenand_read_oob_fndecl_46274_fields onenand_read_oob fndecl 2 46274 NULL
+smem_len_iwl_cfg_46276_fields smem_len iwl_cfg 0 46276 NULL
@@ -199977,13 +204657,13 @@ index 0000000..6b5367db
+offset_nfsd3_readargs_46311_fields offset nfsd3_readargs 0 46311 NULL
+g_size_dh_46316_fields g_size dh 0 46316 NULL
+num_vci_lanai_dev_46318_fields num_vci lanai_dev 0 46318 NULL
-+unit_qib_devdata_46325_fields unit qib_devdata 0 46325 NULL nohasharray
-+biovec_create_pool_fndecl_46325_fields biovec_create_pool fndecl 1 46325 &unit_qib_devdata_46325_fields
++unit_qib_devdata_46325_fields unit qib_devdata 0 46325 NULL
+i_size_inode_46327_fields i_size inode 0 46327 NULL
+pvr2_ioread_set_sync_key_fndecl_46329_fields pvr2_ioread_set_sync_key fndecl 3 46329 NULL
+__ieee80211_amsdu_copy_frag_fndecl_46332_fields __ieee80211_amsdu_copy_frag fndecl 4-3 46332 NULL
+shmem_zero_setup_fndecl_46334_fields shmem_zero_setup fndecl 0 46334 NULL
+mwifiex_cfg80211_tdls_mgmt_fndecl_46335_fields mwifiex_cfg80211_tdls_mgmt fndecl 10 46335 NULL
++fh_ox_id_fc_frame_header_46336_fields fh_ox_id fc_frame_header 0 46336 NULL
+stv6110_read_regs_fndecl_46339_fields stv6110_read_regs fndecl 4 46339 NULL
+af9013_rd_regs_i2c_fndecl_46343_fields af9013_rd_regs_i2c fndecl 5 46343 NULL
+recently_deleted_fndecl_46346_fields recently_deleted fndecl 3 46346 NULL
@@ -199993,16 +204673,16 @@ index 0000000..6b5367db
+dvb_ep_isoc_em28xx_46357_fields dvb_ep_isoc em28xx 0 46357 NULL
+chv_get_stolen_size_fndecl_46362_fields chv_get_stolen_size fndecl 0-1 46362 NULL
+max_write_size_ubifs_info_46369_fields max_write_size ubifs_info 0 46369 NULL
-+device_create_with_groups_fndecl_46371_fields device_create_with_groups fndecl 3 46371 NULL
+descriptor_loc_fndecl_46373_fields descriptor_loc fndecl 0-3-2 46373 NULL
+bnx2_change_mtu_fndecl_46374_fields bnx2_change_mtu fndecl 2 46374 NULL
+gb_vardecl_null_blk_c_46399_fields gb vardecl_null_blk.c 0 46399 NULL
+strength_nand_ecc_ctrl_46402_fields strength nand_ecc_ctrl 0 46402 NULL
+piosize4k_qib_devdata_46406_fields piosize4k qib_devdata 0 46406 NULL
+SavagePanelWidth_savagefb_par_46407_fields SavagePanelWidth savagefb_par 0 46407 NULL
-+ie_len_cfg80211_ibss_params_46411_fields ie_len cfg80211_ibss_params 0 46411 NULL
++tx_desc_cnt_emac_adapter_46414_fields tx_desc_cnt emac_adapter 0 46414 NULL
+skb_maybe_pull_tail_fndecl_46422_fields skb_maybe_pull_tail fndecl 3 46422 NULL
+proberesp_ies_len_cfg80211_beacon_data_46424_fields proberesp_ies_len cfg80211_beacon_data 0 46424 NULL
++qtd_copy_status_fndecl_46425_fields qtd_copy_status fndecl 4-3 46425 NULL
+rds_pin_pages_fndecl_46432_fields rds_pin_pages fndecl 1 46432 NULL
+st21nfca_hci_dep_link_up_fndecl_46438_fields st21nfca_hci_dep_link_up fndecl 5 46438 NULL nohasharray
+qib_dev_vardecl_qib_file_ops_c_46438_fields qib_dev vardecl_qib_file_ops.c 0 46438 &st21nfca_hci_dep_link_up_fndecl_46438_fields
@@ -200012,7 +204692,9 @@ index 0000000..6b5367db
+btrfsic_process_superblock_dev_mirror_fndecl_46444_fields btrfsic_process_superblock_dev_mirror fndecl 4 46444 NULL nohasharray
+iblock_execute_unmap_fndecl_46444_fields iblock_execute_unmap fndecl 3-2 46444 &btrfsic_process_superblock_dev_mirror_fndecl_46444_fields
+fb_base_phys_mb862xxfb_par_46449_fields fb_base_phys mb862xxfb_par 0 46449 NULL
++sglen_usbtest_param_32_46451_fields sglen usbtest_param_32 0 46451 NULL
+snd_seq_oss_writeq_new_fndecl_46455_fields snd_seq_oss_writeq_new fndecl 2 46455 NULL
++size_drm_local_map_46462_fields size drm_local_map 0 46462 NULL
+get_znode_fndecl_46463_fields get_znode fndecl 3 46463 NULL
+ssid_len_hfa384x_hostscan_result_46466_fields ssid_len hfa384x_hostscan_result 0 46466 NULL
+ext4_resize_fs_fndecl_46468_fields ext4_resize_fs fndecl 2 46468 NULL
@@ -200026,11 +204708,11 @@ index 0000000..6b5367db
+__copy_from_user_ll_nozero_fndecl_46496_fields __copy_from_user_ll_nozero fndecl 0 46496 NULL
+iram_size_sst_res_info_46499_fields iram_size sst_res_info 0 46499 NULL
+align_ieee80211_vendor_radiotap_46503_fields align ieee80211_vendor_radiotap 0 46503 NULL
-+append_elf_note_fndecl_46508_fields append_elf_note fndecl 5 46508 NULL nohasharray
-+write_pbl_fndecl_46508_fields write_pbl fndecl 4 46508 &append_elf_note_fndecl_46508_fields
++write_pbl_fndecl_46508_fields write_pbl fndecl 4 46508 NULL
+pagesz_cifs_readdata_46514_fields pagesz cifs_readdata 0 46514 NULL
+test_btrfs_get_extent_fndecl_46516_fields test_btrfs_get_extent fndecl 1-2 46516 NULL
+free_bootmem_with_active_regions_fndecl_46521_fields free_bootmem_with_active_regions fndecl 2 46521 NULL
++mlx5_core_query_ib_ppcnt_fndecl_46522_fields mlx5_core_query_ib_ppcnt fndecl 4 46522 NULL
+bio_split_fndecl_46527_fields bio_split fndecl 2 46527 NULL
+sddr09_request_sense_fndecl_46529_fields sddr09_request_sense fndecl 3 46529 NULL
+dr_suballoc_loc_ocfs2_dx_root_block_46531_fields dr_suballoc_loc ocfs2_dx_root_block 0 46531 NULL
@@ -200040,7 +204722,6 @@ index 0000000..6b5367db
+size_kstat_46541_fields size kstat 0 46541 NULL
+resp_write_same_fndecl_46544_fields resp_write_same fndecl 2 46544 NULL
+sc18is602_check_transfer_fndecl_46545_fields sc18is602_check_transfer fndecl 0 46545 NULL
-+seq_open_tab_fndecl_46562_fields seq_open_tab fndecl 3-2 46562 NULL
+erasesize_shift_mtd_info_46565_fields erasesize_shift mtd_info 0 46565 NULL nohasharray
+xt_compat_init_offsets_fndecl_46565_fields xt_compat_init_offsets fndecl 2 46565 &erasesize_shift_mtd_info_46565_fields
+max_msix_vectors_vardecl_mpt3sas_base_c_46566_fields max_msix_vectors vardecl_mpt3sas_base.c 0 46566 NULL
@@ -200052,31 +204733,31 @@ index 0000000..6b5367db
+mmc_do_calc_max_discard_fndecl_46596_fields mmc_do_calc_max_discard fndecl 0 46596 &fuse_async_req_send_fndecl_46596_fields
+it87_device_add_fndecl_46597_fields it87_device_add fndecl 2 46597 NULL
+cfpkt_extr_head_fndecl_46598_fields cfpkt_extr_head fndecl 3 46598 NULL
++cma_init_reserved_mem_fndecl_46602_fields cma_init_reserved_mem fndecl 3 46602 NULL
+nfp_net_msix_alloc_fndecl_46607_fields nfp_net_msix_alloc fndecl 0 46607 NULL
+pci_scan_bridge_fndecl_46615_fields pci_scan_bridge fndecl 3-0 46615 NULL
-+snd_usb_parse_datainterval_fndecl_46616_fields snd_usb_parse_datainterval fndecl 0 46616 NULL nohasharray
-+sizeof_idt_fndecl_46616_fields sizeof_idt fndecl 0 46616 &snd_usb_parse_datainterval_fndecl_46616_fields
-+fw_cdev_major_vardecl_46618_fields fw_cdev_major vardecl 0 46618 NULL
++snd_usb_parse_datainterval_fndecl_46616_fields snd_usb_parse_datainterval fndecl 0 46616 NULL
+num_ppns_qp_guest_endpoint_46623_fields num_ppns qp_guest_endpoint 0 46623 NULL nohasharray
+usbvision_read_reg_fndecl_46623_fields usbvision_read_reg fndecl 0 46623 &num_ppns_qp_guest_endpoint_46623_fields
+cl_maxproc_rpc_clnt_46627_fields cl_maxproc rpc_clnt 0 46627 NULL
+start_ipack_region_46628_fields start ipack_region 0 46628 NULL
+qlcnic_83xx_diag_free_res_fndecl_46632_fields qlcnic_83xx_diag_free_res fndecl 2 46632 NULL
-+snd_cwnd_cnt_tcp_sock_46635_fields snd_cwnd_cnt tcp_sock 0 46635 NULL nohasharray
-+ccp_queue_buf_fndecl_46635_fields ccp_queue_buf fndecl 0 46635 &snd_cwnd_cnt_tcp_sock_46635_fields
++snd_cwnd_cnt_tcp_sock_46635_fields snd_cwnd_cnt tcp_sock 0 46635 NULL
+data_offset_iscsi_tcp_task_46641_fields data_offset iscsi_tcp_task 0 46641 NULL
-+ib_send_cm_mra_fndecl_46649_fields ib_send_cm_mra fndecl 4 46649 NULL
++arch_setup_msi_irqs_fndecl_46642_fields arch_setup_msi_irqs fndecl 0 46642 NULL
+mwifiex_set_wps_ie_fndecl_46650_fields mwifiex_set_wps_ie fndecl 3 46650 NULL
-+transfer_buffer_length_usbip_header_cmd_submit_46658_fields transfer_buffer_length usbip_header_cmd_submit 0 46658 NULL
-+btrfs_get_extent_fiemap_fndecl_46659_fields btrfs_get_extent_fiemap fndecl 5-4-3 46659 NULL
++btrfs_get_extent_fiemap_fndecl_46659_fields btrfs_get_extent_fiemap fndecl 4-3-5 46659 NULL
+bmap_fndecl_46663_fields bmap fndecl 0 46663 NULL
+physical_block_size_queue_limits_46666_fields physical_block_size queue_limits 0 46666 NULL
+mpx_notify_unmap_fndecl_46669_fields mpx_notify_unmap fndecl 3-4 46669 NULL
+xfs_difree_inode_chunk_fndecl_46677_fields xfs_difree_inode_chunk fndecl 2 46677 NULL
++got_bytes_cifs_readdata_46678_fields got_bytes cifs_readdata 0 46678 NULL
+max_wr_ib_srq_attr_46680_fields max_wr ib_srq_attr 0 46680 NULL
+usb_ftdi_elan_edset_input_fndecl_46689_fields usb_ftdi_elan_edset_input fndecl 0 46689 NULL
++__pipe_get_pages_fndecl_46697_fields __pipe_get_pages fndecl 2 46697 NULL
+__pskb_pull_tail_fndecl_46700_fields __pskb_pull_tail fndecl 2 46700 NULL
-+rxe_mem_init_user_fndecl_46710_fields rxe_mem_init_user fndecl 3-4 46710 NULL
++compat_sys_fcntl64_fndecl_46707_fields compat_sys_fcntl64 fndecl 3 46707 NULL
++rxe_mem_init_user_fndecl_46710_fields rxe_mem_init_user fndecl 4-3 46710 NULL
+cmsg_len_cmsghdr_46711_fields cmsg_len cmsghdr 0 46711 NULL
+length_ib_mr_46713_fields length ib_mr 0 46713 NULL nohasharray
+extra_priv_size_ehci_driver_overrides_46713_fields extra_priv_size ehci_driver_overrides 0 46713 &length_ib_mr_46713_fields
@@ -200087,62 +204768,57 @@ index 0000000..6b5367db
+iwlagn_tx_agg_stop_fndecl_46756_fields iwlagn_tx_agg_stop fndecl 4 46756 NULL
+count_nfs_readdirargs_46759_fields count nfs_readdirargs 0 46759 NULL
+perf_aux_output_skip_fndecl_46762_fields perf_aux_output_skip fndecl 2 46762 NULL
-+mlx5_ib_umem_get_fndecl_46768_fields mlx5_ib_umem_get fndecl 3-4 46768 NULL
++mlx5_ib_umem_get_fndecl_46768_fields mlx5_ib_umem_get fndecl 4-3 46768 NULL
+s_bshift_ufs_sb_private_info_46773_fields s_bshift ufs_sb_private_info 0 46773 NULL nohasharray
+target_begin_dm_region_hash_46773_fields target_begin dm_region_hash 0 46773 &s_bshift_ufs_sb_private_info_46773_fields
+acpi_aml_lock_write_fndecl_46777_fields acpi_aml_lock_write fndecl 0 46777 NULL
++create_monitor_ctrl_event_fndecl_46781_fields create_monitor_ctrl_event fndecl 4 46781 NULL
+rq_size_i40iw_qp_uk_46792_fields rq_size i40iw_qp_uk 0 46792 NULL nohasharray
+ubi_eba_atomic_leb_change_fndecl_46792_fields ubi_eba_atomic_leb_change fndecl 5 46792 &rq_size_i40iw_qp_uk_46792_fields
+brcmf_usb_rx_ctlpkt_fndecl_46799_fields brcmf_usb_rx_ctlpkt fndecl 3 46799 NULL
++__xfs_ag_resv_init_fndecl_46800_fields __xfs_ag_resv_init fndecl 4-3 46800 NULL
+ceph_msg_data_bio_advance_fndecl_46804_fields ceph_msg_data_bio_advance fndecl 2 46804 NULL
+mlx4_en_change_mtu_fndecl_46805_fields mlx4_en_change_mtu fndecl 2 46805 NULL
+mesh_rx_csa_frame_fndecl_46810_fields mesh_rx_csa_frame fndecl 3 46810 NULL
-+buffer_size_snd_rawmidi_params_46813_fields buffer_size snd_rawmidi_params 0 46813 NULL
+nfulnl_set_mode_fndecl_46818_fields nfulnl_set_mode fndecl 3 46818 NULL
+frame_size_ipw2100_status_46819_fields frame_size ipw2100_status 0 46819 NULL
+major_hwif_s_46820_fields major hwif_s 0 46820 NULL
-+numberoflines_tmHWStreamParameters_46824_fields numberoflines tmHWStreamParameters 0 46824 NULL
+residue_c67x00_td_46828_fields residue c67x00_td 0 46828 NULL
-+per_cpu_ptr_to_phys_fndecl_46833_fields per_cpu_ptr_to_phys fndecl 0 46833 NULL
+tid_limit_hfi1_filedata_46834_fields tid_limit hfi1_filedata 0 46834 NULL
+extra_priv_size_xhci_driver_overrides_46837_fields extra_priv_size xhci_driver_overrides 0 46837 NULL
-+num_prior_parent_snaps_ceph_snap_realm_46841_fields num_prior_parent_snaps ceph_snap_realm 0 46841 NULL nohasharray
-+mthca_alloc_resize_buf_fndecl_46841_fields mthca_alloc_resize_buf fndecl 3 46841 &num_prior_parent_snaps_ceph_snap_realm_46841_fields
-+len_wl12xx_rx_filter_field_46843_fields len wl12xx_rx_filter_field 0 46843 NULL
++hexdump_fndecl_46840_fields hexdump fndecl 3 46840 NULL
++num_prior_parent_snaps_ceph_snap_realm_46841_fields num_prior_parent_snaps ceph_snap_realm 0 46841 NULL
+tveeprom_read_fndecl_46846_fields tveeprom_read fndecl 3 46846 NULL nohasharray
+vt596_smba_vardecl_i2c_viapro_c_46846_fields vt596_smba vardecl_i2c-viapro.c 0 46846 &tveeprom_read_fndecl_46846_fields
+__bread_gfp_fndecl_46858_fields __bread_gfp fndecl 3-2 46858 NULL
+xwrite_fndecl_46865_fields xwrite fndecl 3 46865 NULL
+nb_ace_lite_cci_nb_ports_46870_fields nb_ace_lite cci_nb_ports 0 46870 NULL
++sbitmap_queue_resize_fndecl_46887_fields sbitmap_queue_resize fndecl 2 46887 NULL
+len_nfsd3_readlinkres_46888_fields len nfsd3_readlinkres 0 46888 NULL
-+buffer_size_snd_urb_ctx_46897_fields buffer_size snd_urb_ctx 0 46897 NULL
+cb_break_head_afs_server_46900_fields cb_break_head afs_server 0 46900 NULL
+ql_process_mac_rx_gro_page_fndecl_46902_fields ql_process_mac_rx_gro_page fndecl 4-5 46902 NULL
++ipoib_recvq_size_vardecl_46904_fields ipoib_recvq_size vardecl 0 46904 NULL
+size_vbt_r0_46913_fields size vbt_r0 0 46913 NULL
+num_sacks_tcp_options_received_46914_fields num_sacks tcp_options_received 0 46914 NULL nohasharray
+mmc_queue_packed_map_sg_fndecl_46914_fields mmc_queue_packed_map_sg fndecl 0 46914 &num_sacks_tcp_options_received_46914_fields
+rd_size_hidp_connadd_req_46916_fields rd_size hidp_connadd_req 0 46916 NULL
-+osd_req_read_kern_fndecl_46917_fields osd_req_read_kern fndecl 5 46917 NULL
+tot_len_ipv6_txoptions_46931_fields tot_len ipv6_txoptions 0 46931 NULL
-+__free_pages_bootmem_fndecl_46937_fields __free_pages_bootmem fndecl 3 46937 NULL nohasharray
-+squashfs_max_decompressors_fndecl_46937_fields squashfs_max_decompressors fndecl 0 46937 &__free_pages_bootmem_fndecl_46937_fields
++__free_pages_bootmem_fndecl_46937_fields __free_pages_bootmem fndecl 3 46937 NULL
+devblksize_squashfs_sb_info_46950_fields devblksize squashfs_sb_info 0 46950 NULL
-+osd_req_list_dev_partitions_fndecl_46952_fields osd_req_list_dev_partitions fndecl 4 46952 NULL
+tx_ring_num_mlx4_en_priv_46953_fields tx_ring_num mlx4_en_priv 0 46953 NULL
-+steer_qpn_count_mlx4_ib_dev_46957_fields steer_qpn_count mlx4_ib_dev 0 46957 NULL nohasharray
-+xlog_bread_offset_fndecl_46957_fields xlog_bread_offset fndecl 2-3 46957 &steer_qpn_count_mlx4_ib_dev_46957_fields
-+vmw_piter_start_fndecl_46964_fields vmw_piter_start fndecl 3 46964 NULL nohasharray
-+cy_next_channel_vardecl_cyclades_c_46964_fields cy_next_channel vardecl_cyclades.c 0 46964 &vmw_piter_start_fndecl_46964_fields
++xlog_bread_offset_fndecl_46957_fields xlog_bread_offset fndecl 2-3 46957 NULL nohasharray
++steer_qpn_count_mlx4_ib_dev_46957_fields steer_qpn_count mlx4_ib_dev 0 46957 &xlog_bread_offset_fndecl_46957_fields
++s_desc_per_block_ext2_sb_info_46964_fields s_desc_per_block ext2_sb_info 0 46964 NULL nohasharray
++vmw_piter_start_fndecl_46964_fields vmw_piter_start fndecl 3 46964 &s_desc_per_block_ext2_sb_info_46964_fields
+can_queue_Scsi_Host_46966_fields can_queue Scsi_Host 0 46966 NULL
-+mthca_init_cq_fndecl_46968_fields mthca_init_cq fndecl 2 46968 NULL
+icv_len_ieee80211_fast_rx_46969_fields icv_len ieee80211_fast_rx 0 46969 NULL nohasharray
+fsl_spi_cpu_bufs_fndecl_46969_fields fsl_spi_cpu_bufs fndecl 3-0 46969 &icv_len_ieee80211_fast_rx_46969_fields
+vb2_dc_alloc_fndecl_46971_fields vb2_dc_alloc fndecl 3 46971 NULL
+register_device_fndecl_46972_fields register_device fndecl 3-2 46972 NULL
+f71882fg_find_fndecl_46975_fields f71882fg_find fndecl 0 46975 NULL
+size_dwc3_trb_46986_fields size dwc3_trb 0 46986 NULL
-+ri_max_frmr_depth_rpcrdma_ia_46987_fields ri_max_frmr_depth rpcrdma_ia 0 46987 NULL nohasharray
-+gru_alloc_gts_fndecl_46987_fields gru_alloc_gts fndecl 6 46987 &ri_max_frmr_depth_rpcrdma_ia_46987_fields
++gru_alloc_gts_fndecl_46987_fields gru_alloc_gts fndecl 6 46987 NULL nohasharray
++ri_max_frmr_depth_rpcrdma_ia_46987_fields ri_max_frmr_depth rpcrdma_ia 0 46987 &gru_alloc_gts_fndecl_46987_fields
+tx_queue_size_pxa168_eth_platform_data_46988_fields tx_queue_size pxa168_eth_platform_data 0 46988 NULL
+msb_cache_write_fndecl_46992_fields msb_cache_write fndecl 6-2 46992 NULL
+lrg_buffer_len_ql3_adapter_46994_fields lrg_buffer_len ql3_adapter 0 46994 NULL
@@ -200150,21 +204826,19 @@ index 0000000..6b5367db
+no_seek_end_llseek_fndecl_47002_fields no_seek_end_llseek fndecl 2 47002 NULL
+do_ip6t_set_ctl_fndecl_47003_fields do_ip6t_set_ctl fndecl 4 47003 NULL
+n_input_formats_malidp_hw_regmap_47006_fields n_input_formats malidp_hw_regmap 0 47006 NULL
-+va_start_vmap_area_47016_fields va_start vmap_area 0 47016 NULL nohasharray
-+vmw_kms_update_proxy_fndecl_47016_fields vmw_kms_update_proxy fndecl 3 47016 &va_start_vmap_area_47016_fields
++vmw_kms_update_proxy_fndecl_47016_fields vmw_kms_update_proxy fndecl 3 47016 NULL nohasharray
++va_start_vmap_area_47016_fields va_start vmap_area 0 47016 &vmw_kms_update_proxy_fndecl_47016_fields
+bytesused_uvc_buffer_47017_fields bytesused uvc_buffer 0 47017 NULL
+length_ixgb_rx_desc_47027_fields length ixgb_rx_desc 0 47027 NULL
-+npins_chv_community_47032_fields npins chv_community 0 47032 NULL
+desc_size_shdma_dev_47035_fields desc_size shdma_dev 0 47035 NULL
+xfs_fs_map_blocks_fndecl_47038_fields xfs_fs_map_blocks fndecl 2-3 47038 NULL nohasharray
+minor_index_cardstate_47038_fields minor_index cardstate 0 47038 &xfs_fs_map_blocks_fndecl_47038_fields
+ttm_bo_kmap_fndecl_47045_fields ttm_bo_kmap fndecl 3-2 47045 NULL
+icds_per_ctrl_hba_parameters_47047_fields icds_per_ctrl hba_parameters 0 47047 NULL
-+amdgpu_drm_ioctl_fndecl_47050_fields amdgpu_drm_ioctl fndecl 2 47050 NULL
+width_tm6000_core_47057_fields width tm6000_core 0 47057 NULL nohasharray
+vbi_width_em28xx_v4l2_47057_fields vbi_width em28xx_v4l2 0 47057 &width_tm6000_core_47057_fields
-+sect_ide_drive_s_47062_fields sect ide_drive_s 0 47062 NULL
+len_Vmxnet3_RxCompDesc_47066_fields len Vmxnet3_RxCompDesc 0 47066 NULL
++buf_size_usbatm_channel_47081_fields buf_size usbatm_channel 0 47081 NULL
+epnum_isp116x_ep_47082_fields epnum isp116x_ep 0 47082 NULL
+yres_fb_videomode_47087_fields yres fb_videomode 0 47087 NULL nohasharray
+authorizer_buf_len_ceph_auth_handshake_47087_fields authorizer_buf_len ceph_auth_handshake 0 47087 &yres_fb_videomode_47087_fields
@@ -200174,30 +204848,32 @@ index 0000000..6b5367db
+begin_dm_target_47098_fields begin dm_target 0 47098 NULL
+spu_wait_for_u16_fndecl_47101_fields spu_wait_for_u16 fndecl 0 47101 NULL
+len_wmi_rx_action_event_47102_fields len wmi_rx_action_event 0 47102 NULL
-+cc2520_read_rxfifo_fndecl_47105_fields cc2520_read_rxfifo fndecl 3 47105 NULL
++cc2520_read_rxfifo_fndecl_47105_fields cc2520_read_rxfifo fndecl 3 47105 NULL nohasharray
++__scsi_print_sense_fndecl_47105_fields __scsi_print_sense fndecl 4 47105 &cc2520_read_rxfifo_fndecl_47105_fields
+agp_size_drm_mga_dma_bootstrap_47108_fields agp_size drm_mga_dma_bootstrap 0 47108 NULL
-+num_mthca_resource_47114_fields num mthca_resource 0 47114 NULL
++num_mthca_resource_47114_fields num mthca_resource 0 47114 NULL nohasharray
++num_outstanding_cmds_req_que_47114_fields num_outstanding_cmds req_que 0 47114 &num_mthca_resource_47114_fields
+nportcntrs_qib_chip_specific_47118_fields nportcntrs qib_chip_specific 0 47118 NULL
++usnic_uiom_reg_get_fndecl_47120_fields usnic_uiom_reg_get fndecl 2-3 47120 NULL
+j_len_reiserfs_journal_47121_fields j_len reiserfs_journal 0 47121 NULL
-+filemap_fdatawrite_range_fndecl_47125_fields filemap_fdatawrite_range fndecl 2-3 47125 NULL
++filemap_fdatawrite_range_fndecl_47125_fields filemap_fdatawrite_range fndecl 2 47125 NULL
+efi_ioremap_fndecl_47129_fields efi_ioremap fndecl 2-1 47129 NULL
+target_xcopy_write_destination_fndecl_47134_fields target_xcopy_write_destination fndecl 5 47134 NULL
+st33zp24_spi_evaluate_latency_fndecl_47139_fields st33zp24_spi_evaluate_latency fndecl 0 47139 NULL
+data_len_nvme_passthru_cmd_47145_fields data_len nvme_passthru_cmd 0 47145 NULL
-+iwl_trans_send_cmd_fndecl_47146_fields iwl_trans_send_cmd fndecl 0 47146 NULL
-+do_otp_lock_fndecl_47148_fields do_otp_lock fndecl 3 47148 NULL
+vmw_kms_sou_readback_fndecl_47150_fields vmw_kms_sou_readback fndecl 6 47150 NULL nohasharray
+mcs7830_set_reg_async_fndecl_47150_fields mcs7830_set_reg_async fndecl 3 47150 &vmw_kms_sou_readback_fndecl_47150_fields
-+ttm_dma_tt_init_fndecl_47159_fields ttm_dma_tt_init fndecl 3 47159 NULL nohasharray
-+req_xfer_ide_atapi_pc_47159_fields req_xfer ide_atapi_pc 0 47159 &ttm_dma_tt_init_fndecl_47159_fields
++ttm_dma_tt_init_fndecl_47159_fields ttm_dma_tt_init fndecl 3 47159 NULL
+mlxsw_sx_port_change_mtu_fndecl_47160_fields mlxsw_sx_port_change_mtu fndecl 2 47160 NULL
+max_blk_size_mmc_host_47174_fields max_blk_size mmc_host 0 47174 NULL
++result_size_algo_param_47181_fields result_size algo_param 0 47181 NULL
+posix_lock_inode_fndecl_47190_fields posix_lock_inode fndecl 0 47190 NULL
-+msix_count_qla_hw_data_47192_fields msix_count qla_hw_data 0 47192 NULL
+max_sq_sg_mlx4_caps_47193_fields max_sq_sg mlx4_caps 0 47193 NULL
+max_inline_data_ib_qp_cap_47196_fields max_inline_data ib_qp_cap 0 47196 NULL
++vmalloc_node_fndecl_47199_fields vmalloc_node fndecl 1 47199 NULL
+bi_phys_segments_bio_47200_fields bi_phys_segments bio 0 47200 NULL
+wpos_p9_conn_47212_fields wpos p9_conn 0 47212 NULL
++dce_v11_0_get_num_crtc_fndecl_47214_fields dce_v11_0_get_num_crtc fndecl 0 47214 NULL
+authsize_crypto_aead_47219_fields authsize crypto_aead 0 47219 NULL
+mwifiex_form_mgmt_frame_fndecl_47220_fields mwifiex_form_mgmt_frame fndecl 3 47220 NULL
+acpi_map_fndecl_47222_fields acpi_map fndecl 2-1 47222 NULL
@@ -200207,13 +204883,12 @@ index 0000000..6b5367db
+num_srqs_mthca_limits_47260_fields num_srqs mthca_limits 0 47260 NULL
+num_ifaces_batadv_priv_47263_fields num_ifaces batadv_priv 0 47263 NULL
+dm_get_blk_mq_queue_depth_fndecl_47265_fields dm_get_blk_mq_queue_depth fndecl 0 47265 NULL
-+isku_sysfs_read_fndecl_47269_fields isku_sysfs_read fndecl 5 47269 NULL
+bts_buffer_setup_aux_fndecl_47274_fields bts_buffer_setup_aux fndecl 3 47274 NULL
+write_file_fndecl_47279_fields write_file fndecl 4 47279 NULL
+rom_size_qxl_device_47287_fields rom_size qxl_device 0 47287 NULL
-+RequestSenseLength_DAC960_V2_UserCommand_47289_fields RequestSenseLength DAC960_V2_UserCommand 0 47289 NULL nohasharray
-+__wa_xfer_submit_fndecl_47289_fields __wa_xfer_submit fndecl 0 47289 &RequestSenseLength_DAC960_V2_UserCommand_47289_fields nohasharray
-+ipx_sendmsg_fndecl_47289_fields ipx_sendmsg fndecl 3 47289 &__wa_xfer_submit_fndecl_47289_fields
++__wa_xfer_submit_fndecl_47289_fields __wa_xfer_submit fndecl 0 47289 NULL nohasharray
++ipx_sendmsg_fndecl_47289_fields ipx_sendmsg fndecl 3 47289 &__wa_xfer_submit_fndecl_47289_fields nohasharray
++RequestSenseLength_DAC960_V2_UserCommand_47289_fields RequestSenseLength DAC960_V2_UserCommand 0 47289 &ipx_sendmsg_fndecl_47289_fields
+sk_gso_max_segs_sock_47290_fields sk_gso_max_segs sock 0 47290 NULL
+dev_number_mdp_superblock_1_47292_fields dev_number mdp_superblock_1 0 47292 NULL
+pppol2tp_recvmsg_fndecl_47301_fields pppol2tp_recvmsg fndecl 3 47301 NULL
@@ -200224,14 +204899,12 @@ index 0000000..6b5367db
+dma_buffer_size_vardecl_budget_core_c_47332_fields dma_buffer_size vardecl_budget-core.c 0 47332 NULL
+brcmf_chip_core_read32_fndecl_47346_fields brcmf_chip_core_read32 fndecl 0 47346 NULL
+__reserve_metadata_bytes_fndecl_47350_fields __reserve_metadata_bytes fndecl 0 47350 NULL
-+myri10ge_change_mtu_fndecl_47351_fields myri10ge_change_mtu fndecl 2 47351 NULL nohasharray
-+gtt_base_align_amdgpu_mc_47351_fields gtt_base_align amdgpu_mc 0 47351 &myri10ge_change_mtu_fndecl_47351_fields
++gtt_base_align_amdgpu_mc_47351_fields gtt_base_align amdgpu_mc 0 47351 NULL nohasharray
++myri10ge_change_mtu_fndecl_47351_fields myri10ge_change_mtu fndecl 2 47351 &gtt_base_align_amdgpu_mc_47351_fields
+dmi_memdev_nr_vardecl_dmi_scan_c_47352_fields dmi_memdev_nr vardecl_dmi_scan.c 0 47352 NULL
+erasesize_mtd_info_47358_fields erasesize mtd_info 0 47358 NULL
-+ath6kl_wmi_send_action_cmd_fndecl_47359_fields ath6kl_wmi_send_action_cmd fndecl 2 47359 NULL nohasharray
-+altc_entry_sz_mlx4_dev_cap_47359_fields altc_entry_sz mlx4_dev_cap 0 47359 &ath6kl_wmi_send_action_cmd_fndecl_47359_fields
-+ie_len_ieee80211_if_mesh_47360_fields ie_len ieee80211_if_mesh 0 47360 NULL nohasharray
-+get_vaddr_frames_fndecl_47360_fields get_vaddr_frames fndecl 1 47360 &ie_len_ieee80211_if_mesh_47360_fields
++ath6kl_wmi_send_action_cmd_fndecl_47359_fields ath6kl_wmi_send_action_cmd fndecl 2 47359 NULL
++ie_len_ieee80211_if_mesh_47360_fields ie_len ieee80211_if_mesh 0 47360 NULL
+nr_sects_hd_struct_47364_fields nr_sects hd_struct 0 47364 NULL
+size_rsa_asn1_template_47369_fields size rsa_asn1_template 0 47369 NULL
+batadv_iv_ogm_aggregate_fndecl_47372_fields batadv_iv_ogm_aggregate fndecl 3 47372 NULL
@@ -200250,8 +204923,7 @@ index 0000000..6b5367db
+datalen_key_preparsed_payload_47406_fields datalen key_preparsed_payload 0 47406 NULL
+vmw_kms_generic_present_fndecl_47407_fields vmw_kms_generic_present fndecl 9 47407 NULL
+tp_len_tpacket_hdr_47410_fields tp_len tpacket_hdr 0 47410 NULL
-+idetape_pad_zeros_fndecl_47413_fields idetape_pad_zeros fndecl 2 47413 NULL
-+cdc_ncm_update_rxtx_max_fndecl_47421_fields cdc_ncm_update_rxtx_max fndecl 3-2 47421 NULL
++cdc_ncm_update_rxtx_max_fndecl_47421_fields cdc_ncm_update_rxtx_max fndecl 2 47421 NULL
+ctx_index_i915_guc_client_47425_fields ctx_index i915_guc_client 0 47425 NULL
+sinit_max_instreams_sctp_cookie_47433_fields sinit_max_instreams sctp_cookie 0 47433 NULL
+depth_bttv_format_47442_fields depth bttv_format 0 47442 NULL nohasharray
@@ -200260,9 +204932,10 @@ index 0000000..6b5367db
+__irq_domain_alloc_irqs_fndecl_47462_fields __irq_domain_alloc_irqs fndecl 0-2 47462 NULL nohasharray
+part_bits_mtd_blktrans_ops_47462_fields part_bits mtd_blktrans_ops 0 47462 &__irq_domain_alloc_irqs_fndecl_47462_fields
+len_wmfw_region_47463_fields len wmfw_region 0 47463 NULL
-+memblock_alloc_try_nid_fndecl_47470_fields memblock_alloc_try_nid fndecl 2 47470 NULL
++memblock_alloc_try_nid_fndecl_47470_fields memblock_alloc_try_nid fndecl 2-1 47470 NULL
+compat_do_ipt_set_ctl_fndecl_47473_fields compat_do_ipt_set_ctl fndecl 4 47473 NULL
+maxDataSize__mpt_ioctl_header_47477_fields maxDataSize _mpt_ioctl_header 0 47477 NULL
++fifo_len_tx_fifo_config_47480_fields fifo_len tx_fifo_config 0 47480 NULL
+affs_write_end_ofs_fndecl_47486_fields affs_write_end_ofs fndecl 4-3 47486 NULL
+value_acpi_rsconvert_info_47488_fields value acpi_rsconvert_info 0 47488 NULL
+page_size_cas_47493_fields page_size cas 0 47493 NULL
@@ -200273,8 +204946,8 @@ index 0000000..6b5367db
+try_unmap_single_bt_fndecl_47503_fields try_unmap_single_bt fndecl 2-3 47503 NULL
+btrfs_cont_expand_fndecl_47505_fields btrfs_cont_expand fndecl 3-2 47505 NULL
+nr_outport_coresight_platform_data_47506_fields nr_outport coresight_platform_data 0 47506 NULL
-+ucNumEntries__ATOM_Tonga_MCLK_Dependency_Table_47510_fields ucNumEntries _ATOM_Tonga_MCLK_Dependency_Table 0 47510 NULL nohasharray
-+romfs_blk_strcmp_fndecl_47510_fields romfs_blk_strcmp fndecl 4-2 47510 &ucNumEntries__ATOM_Tonga_MCLK_Dependency_Table_47510_fields
++romfs_blk_strcmp_fndecl_47510_fields romfs_blk_strcmp fndecl 4-2 47510 NULL nohasharray
++ucNumEntries__ATOM_Tonga_MCLK_Dependency_Table_47510_fields ucNumEntries _ATOM_Tonga_MCLK_Dependency_Table 0 47510 &romfs_blk_strcmp_fndecl_47510_fields
+num_connector_drm_mode_config_47518_fields num_connector drm_mode_config 0 47518 NULL nohasharray
+elf_header_exclude_ranges_fndecl_47518_fields elf_header_exclude_ranges fndecl 2-3 47518 &num_connector_drm_mode_config_47518_fields nohasharray
+gfs2_dir_get_new_buffer_fndecl_47518_fields gfs2_dir_get_new_buffer fndecl 2 47518 &elf_header_exclude_ranges_fndecl_47518_fields
@@ -200283,12 +204956,16 @@ index 0000000..6b5367db
+llcp_sock_sendmsg_fndecl_47535_fields llcp_sock_sendmsg fndecl 3 47535 NULL
+bytes_nvmem_cell_47539_fields bytes nvmem_cell 0 47539 NULL
+skb_headers_offset_update_fndecl_47543_fields skb_headers_offset_update fndecl 2 47543 NULL
++skl_tplg_tlv_control_set_fndecl_47545_fields skl_tplg_tlv_control_set fndecl 3 47545 NULL
++show_sysfs_ops_47546_fields show sysfs_ops 0 47546 NULL
+relocs_num_drm_qxl_command_47550_fields relocs_num drm_qxl_command 0 47550 NULL
+add_replay_bud_fndecl_47552_fields add_replay_bud fndecl 3 47552 NULL
+max_concur_ios_snic_fw_info_47556_fields max_concur_ios snic_fw_info 0 47556 NULL
++enckey_len_ablk_ctx_47559_fields enckey_len ablk_ctx 0 47559 NULL
+fbcon_scrolldelta_fndecl_47560_fields fbcon_scrolldelta fndecl 2 47560 NULL
+max_xmit_dlength_iscsi_bus_flash_conn_47565_fields max_xmit_dlength iscsi_bus_flash_conn 0 47565 NULL
+ubh_bread_uspi_fndecl_47568_fields ubh_bread_uspi fndecl 3 47568 NULL
++get_user_pages_locked_fndecl_47573_fields get_user_pages_locked fndecl 1 47573 NULL
+bnx2x_calc_num_queues_fndecl_47576_fields bnx2x_calc_num_queues fndecl 0 47576 NULL
+i_start_msdos_inode_info_47589_fields i_start msdos_inode_info 0 47589 NULL nohasharray
+traffic_class_ib_global_route_47589_fields traffic_class ib_global_route 0 47589 &i_start_msdos_inode_info_47589_fields
@@ -200301,11 +204978,8 @@ index 0000000..6b5367db
+len_ib_ucm_req_47625_fields len ib_ucm_req 0 47625 &mincore_pte_range_fndecl_47625_fields
+ubifs_load_znode_fndecl_47628_fields ubifs_load_znode fndecl 4 47628 NULL
+allocate_resource_fndecl_47629_fields allocate_resource fndecl 4-3-5-6 47629 NULL
-+size_early_log_47637_fields size early_log 0 47637 NULL
+nentries_ebt_table_info_47639_fields nentries ebt_table_info 0 47639 NULL
+buffer_alignment_fore200e_bus_47640_fields buffer_alignment fore200e_bus 0 47640 NULL
-+num_phys_hw_profile_47641_fields num_phys hw_profile 0 47641 NULL
-+radeon_compat_ioctl_fndecl_47645_fields radeon_compat_ioctl fndecl 2 47645 NULL
+ocfs2_move_extent_fndecl_47648_fields ocfs2_move_extent fndecl 5-3-2 47648 NULL nohasharray
+fetch_to_dev_buffer_fndecl_47648_fields fetch_to_dev_buffer fndecl 3 47648 &ocfs2_move_extent_fndecl_47648_fields
+rate_max_snd_soc_pcm_stream_47650_fields rate_max snd_soc_pcm_stream 0 47650 NULL
@@ -200316,54 +204990,56 @@ index 0000000..6b5367db
+wPropertyNameLength_usb_ext_prop_desc_47663_fields wPropertyNameLength usb_ext_prop_desc 0 47663 NULL
+dlm_rcom_names_fndecl_47668_fields dlm_rcom_names fndecl 4 47668 NULL
+chans_zatm_dev_47669_fields chans zatm_dev 0 47669 NULL
-+setup_window_fndecl_47673_fields setup_window fndecl 2-3 47673 NULL
++setup_window_fndecl_47673_fields setup_window fndecl 2-3-7 47673 NULL
++height_v4l2_pix_format_47682_fields height v4l2_pix_format 0 47682 NULL
+pci_iov_bus_range_fndecl_47686_fields pci_iov_bus_range fndecl 0 47686 NULL
+maxframesize_snd_usb_endpoint_47687_fields maxframesize snd_usb_endpoint 0 47687 NULL
+batadv_hardif_min_mtu_fndecl_47691_fields batadv_hardif_min_mtu fndecl 0 47691 NULL
+virtblk_queue_depth_vardecl_virtio_blk_c_47692_fields virtblk_queue_depth vardecl_virtio_blk.c 0 47692 NULL
+gpu_mem_base_vml_par_47703_fields gpu_mem_base vml_par 0 47703 NULL
-+onenand_bbt_read_oob_fndecl_47704_fields onenand_bbt_read_oob fndecl 2 47704 NULL nohasharray
-+xfs_iext_realloc_indirect_fndecl_47704_fields xfs_iext_realloc_indirect fndecl 2 47704 &onenand_bbt_read_oob_fndecl_47704_fields
+ppp_sync_receive_fndecl_47706_fields ppp_sync_receive fndecl 4 47706 NULL
-+small_bytes_myri10ge_priv_47709_fields small_bytes myri10ge_priv 0 47709 NULL nohasharray
-+fast_rx_path_fndecl_47709_fields fast_rx_path fndecl 3 47709 &small_bytes_myri10ge_priv_47709_fields nohasharray
-+i2c_hid_raw_request_fndecl_47709_fields i2c_hid_raw_request fndecl 4 47709 &fast_rx_path_fndecl_47709_fields
++fast_rx_path_fndecl_47709_fields fast_rx_path fndecl 3 47709 NULL nohasharray
++i2c_hid_raw_request_fndecl_47709_fields i2c_hid_raw_request fndecl 4 47709 &fast_rx_path_fndecl_47709_fields nohasharray
++small_bytes_myri10ge_priv_47709_fields small_bytes myri10ge_priv 0 47709 &i2c_hid_raw_request_fndecl_47709_fields
+oxu_init_fndecl_47714_fields oxu_init fndecl 3-2 47714 NULL
++batadv_send_tt_request_fndecl_47727_fields batadv_send_tt_request fndecl 5 47727 NULL
++guc_allocate_vma_fndecl_47731_fields guc_allocate_vma fndecl 2 47731 NULL
+bdev_stack_limits_fndecl_47732_fields bdev_stack_limits fndecl 3 47732 NULL
+copy_nocow_pages_for_inode_fndecl_47736_fields copy_nocow_pages_for_inode fndecl 2 47736 NULL
-+SMB2_write_fndecl_47741_fields SMB2_write fndecl 5 47741 NULL
+minbcnt_aoetgt_47744_fields minbcnt aoetgt 0 47744 NULL
-+buffer_size_snd_emu10k1_fx8010_pcm_47753_fields buffer_size snd_emu10k1_fx8010_pcm 0 47753 NULL
++data_rate_ircomm_params_47746_fields data_rate ircomm_params 0 47746 NULL
++width_ssd1307fb_par_47753_fields width ssd1307fb_par 0 47753 NULL nohasharray
++buffer_size_snd_emu10k1_fx8010_pcm_47753_fields buffer_size snd_emu10k1_fx8010_pcm 0 47753 &width_ssd1307fb_par_47753_fields
+fixed_out_len_gether_47754_fields fixed_out_len gether 0 47754 NULL
+key_instantiate_and_link_fndecl_47756_fields key_instantiate_and_link fndecl 3 47756 NULL
+num_def_rx_descs_octeon_config_47759_fields num_def_rx_descs octeon_config 0 47759 NULL
+write_chunk_fndecl_47763_fields write_chunk fndecl 4 47763 NULL
+ticket_length_rxrpc_key_data_v1_47764_fields ticket_length rxrpc_key_data_v1 0 47764 NULL
-+mq_ecount_lpfc_sli4_hba_47770_fields mq_ecount lpfc_sli4_hba 0 47770 NULL
+rx_count_ll_struct_47772_fields rx_count ll_struct 0 47772 NULL nohasharray
+minor_osd_uld_device_47772_fields minor osd_uld_device 0 47772 &rx_count_ll_struct_47772_fields
+fill_func_debug_buffer_47773_fields fill_func debug_buffer 0 47773 NULL
+dma1_shift_es1938_47776_fields dma1_shift es1938 0 47776 NULL
+rx_ring_size_bnx2x_47784_fields rx_ring_size bnx2x 0 47784 NULL
-+hfi1_create_ctxtdata_fndecl_47785_fields hfi1_create_ctxtdata fndecl 2 47785 NULL nohasharray
-+bg_blkno_ocfs2_group_desc_47785_fields bg_blkno ocfs2_group_desc 0 47785 &hfi1_create_ctxtdata_fndecl_47785_fields
-+max_cmds_mlx4_cmd_47790_fields max_cmds mlx4_cmd 0 47790 NULL nohasharray
-+skb_prepare_seq_read_fndecl_47790_fields skb_prepare_seq_read fndecl 2 47790 &max_cmds_mlx4_cmd_47790_fields
++bg_blkno_ocfs2_group_desc_47785_fields bg_blkno ocfs2_group_desc 0 47785 NULL
++skb_prepare_seq_read_fndecl_47790_fields skb_prepare_seq_read fndecl 2 47790 NULL nohasharray
++max_cmds_mlx4_cmd_47790_fields max_cmds mlx4_cmd 0 47790 &skb_prepare_seq_read_fndecl_47790_fields
+do_otp_read_fndecl_47794_fields do_otp_read fndecl 2 47794 NULL
+num_vmdq_qps_i40e_pf_47795_fields num_vmdq_qps i40e_pf 0 47795 NULL
+mxt_bootloader_read_fndecl_47796_fields mxt_bootloader_read fndecl 3 47796 NULL nohasharray
+major_vardecl_sound_c_47796_fields major vardecl_sound.c 0 47796 &mxt_bootloader_read_fndecl_47796_fields
-+__push_leaf_right_fndecl_47797_fields __push_leaf_right fndecl 8 47797 NULL nohasharray
-+get_key_haup_common_fndecl_47797_fields get_key_haup_common fndecl 5 47797 &__push_leaf_right_fndecl_47797_fields
++__push_leaf_right_fndecl_47797_fields __push_leaf_right fndecl 8 47797 NULL
+i_eblock_bfs_inode_47799_fields i_eblock bfs_inode 0 47799 NULL
+h_suballoc_bit_ocfs2_extent_block_47802_fields h_suballoc_bit ocfs2_extent_block 0 47802 NULL
+odd_byte_adjustment_sym_ccb_47803_fields odd_byte_adjustment sym_ccb 0 47803 NULL
+xfs_attrmulti_attr_set_fndecl_47809_fields xfs_attrmulti_attr_set fndecl 4 47809 NULL
++size_ncp_ioctl_request_47816_fields size ncp_ioctl_request 0 47816 NULL
+fuse_copy_do_fndecl_47822_fields fuse_copy_do fndecl 0 47822 NULL
+create_srq_user_fndecl_47828_fields create_srq_user fndecl 5 47828 NULL
+rom_length_fw_cdev_get_info_47831_fields rom_length fw_cdev_get_info 0 47831 NULL
-+cifs_readv_from_socket_fndecl_47833_fields cifs_readv_from_socket fndecl 0 47833 NULL
-+tcp_check_reno_reordering_fndecl_47842_fields tcp_check_reno_reordering fndecl 2 47842 NULL
++__xfs_refcount_cow_alloc_fndecl_47833_fields __xfs_refcount_cow_alloc fndecl 2-3 47833 NULL nohasharray
++cifs_readv_from_socket_fndecl_47833_fields cifs_readv_from_socket fndecl 0 47833 &__xfs_refcount_cow_alloc_fndecl_47833_fields
++tcp_check_reno_reordering_fndecl_47842_fields tcp_check_reno_reordering fndecl 2 47842 NULL nohasharray
++f2fs_fallocate_fndecl_47842_fields f2fs_fallocate fndecl 4-3 47842 &tcp_check_reno_reordering_fndecl_47842_fields
+assoc_len_amp_ctrl_47844_fields assoc_len amp_ctrl 0 47844 NULL nohasharray
+ieee80211_tdls_add_setup_start_ies_fndecl_47844_fields ieee80211_tdls_add_setup_start_ies fndecl 7 47844 &assoc_len_amp_ctrl_47844_fields
+rl_rgrps_gfs2_rgrp_list_47847_fields rl_rgrps gfs2_rgrp_list 0 47847 NULL
@@ -200373,7 +205049,6 @@ index 0000000..6b5367db
+smssdio_sendrequest_fndecl_47873_fields smssdio_sendrequest fndecl 3 47873 NULL
+len_nlm_cookie_47875_fields len nlm_cookie 0 47875 NULL nohasharray
+ivtv_convert_ivtv_vbi_fndecl_47875_fields ivtv_convert_ivtv_vbi fndecl 0 47875 &len_nlm_cookie_47875_fields
-+smt_send_ecf_fndecl_47881_fields smt_send_ecf fndecl 6 47881 NULL
+n_bytes_rockchip_spi_47891_fields n_bytes rockchip_spi 0 47891 NULL
+end_bus_number_acpi_mcfg_allocation_47894_fields end_bus_number acpi_mcfg_allocation 0 47894 NULL
+sb_inoalignmt_xfs_sb_47899_fields sb_inoalignmt xfs_sb 0 47899 NULL
@@ -200383,16 +205058,13 @@ index 0000000..6b5367db
+nbytes_fsl_edma_hw_tcd_47913_fields nbytes fsl_edma_hw_tcd 0 47913 NULL
+xfs_bmap_read_extents_fndecl_47915_fields xfs_bmap_read_extents fndecl 0 47915 NULL
+telem_pmc_ssram_size_intel_pmc_ipc_dev_47917_fields telem_pmc_ssram_size intel_pmc_ipc_dev 0 47917 NULL
-+mxl111sf_stream_config_isoc_fndecl_47924_fields mxl111sf_stream_config_isoc fndecl 2 47924 NULL
+phys_esb2rom_window_47933_fields phys esb2rom_window 0 47933 NULL
+fddi_change_mtu_fndecl_47942_fields fddi_change_mtu fndecl 2 47942 NULL
+rxd_vlan_rxd_desc_47943_fields rxd_vlan rxd_desc 0 47943 NULL
+max_param_range_47945_fields max param_range 0 47945 NULL
-+get_user_pages_unlocked_fndecl_47946_fields get_user_pages_unlocked fndecl 0-1 47946 NULL
+produce_q_size_vmci_qp_47948_fields produce_q_size vmci_qp 0 47948 NULL
+dlm_new_lockspace_fndecl_47954_fields dlm_new_lockspace fndecl 4 47954 NULL
+l2bsize_jfs_log_47956_fields l2bsize jfs_log 0 47956 NULL
-+depth_pitch_drm_r128_private_47959_fields depth_pitch drm_r128_private 0 47959 NULL
+netpoll_send_udp_fndecl_47960_fields netpoll_send_udp fndecl 3 47960 NULL
+st5481_isoc_flatten_fndecl_47963_fields st5481_isoc_flatten fndecl 0 47963 NULL
+handle_rx_packet_fndecl_47970_fields handle_rx_packet fndecl 3 47970 NULL
@@ -200402,11 +205074,12 @@ index 0000000..6b5367db
+remap_to_cache_dirty_fndecl_47996_fields remap_to_cache_dirty fndecl 4 47996 NULL
+size_sc_config_sizes_47998_fields size sc_config_sizes 0 47998 NULL
+blocks_num_c2port_ops_47999_fields blocks_num c2port_ops 0 47999 NULL
-+width_console_font_op_48005_fields width console_font_op 0 48005 NULL
+size_nfs_fh_48014_fields size nfs_fh 0 48014 NULL
+temp_end_applesmc_registers_48016_fields temp_end applesmc_registers 0 48016 NULL
+original_mtu_slave_48025_fields original_mtu slave 0 48025 NULL
+hmac_len_sctp_hmac_48030_fields hmac_len sctp_hmac 0 48030 NULL
++aim_write_fndecl_48032_fields aim_write fndecl 3 48032 NULL
++rxkad_verify_packet_2_fndecl_48035_fields rxkad_verify_packet_2 fndecl 4-3 48035 NULL
+rm_namelen_nfsd4_remove_48040_fields rm_namelen nfsd4_remove 0 48040 NULL
+s_reserved_affs_sb_info_48043_fields s_reserved affs_sb_info 0 48043 NULL
+sb_size_md_rdev_48046_fields sb_size md_rdev 0 48046 NULL
@@ -200418,19 +205091,24 @@ index 0000000..6b5367db
+zonesize_alauda_media_info_48068_fields zonesize alauda_media_info 0 48068 NULL
+sc16is7xx_alloc_line_fndecl_48075_fields sc16is7xx_alloc_line fndecl 0 48075 NULL
+mt9t031_skip_fndecl_48078_fields mt9t031_skip fndecl 0-3-2 48078 NULL
++blocksize_sddr55_card_info_48082_fields blocksize sddr55_card_info 0 48082 NULL nohasharray
++setup_irq_msi_controller_48082_fields setup_irq msi_controller 0 48082 &blocksize_sddr55_card_info_48082_fields
+mlx5_ib_read_user_wqe_fndecl_48085_fields mlx5_ib_read_user_wqe fndecl 3-5 48085 NULL
+count_atl1c_rfd_ring_48095_fields count atl1c_rfd_ring 0 48095 NULL
+seg_count_agp_region32_48097_fields seg_count agp_region32 0 48097 NULL
+icq_align_elevator_type_48098_fields icq_align elevator_type 0 48098 NULL
+ep_out_mts_desc_48099_fields ep_out mts_desc 0 48099 NULL
+__lbs_cmd_async_fndecl_48102_fields __lbs_cmd_async fndecl 4 48102 NULL
-+bit_offset_nvmem_cell_info_48105_fields bit_offset nvmem_cell_info 0 48105 NULL
++bit_offset_nvmem_cell_info_48105_fields bit_offset nvmem_cell_info 0 48105 NULL nohasharray
++nfc_llcp_send_i_frame_fndecl_48105_fields nfc_llcp_send_i_frame fndecl 3 48105 &bit_offset_nvmem_cell_info_48105_fields
+max_pkt_size_cx231xx_audio_48117_fields max_pkt_size cx231xx_audio 0 48117 NULL
+discard_granularity_queue_limits_48119_fields discard_granularity queue_limits 0 48119 NULL
+gfs2_write_begin_fndecl_48129_fields gfs2_write_begin fndecl 4-3 48129 NULL
++mult_clk_fixed_factor_48134_fields mult clk_fixed_factor 0 48134 NULL
+netid_len_pnfs_ff_netaddr_48139_fields netid_len pnfs_ff_netaddr 0 48139 NULL
-+osdmap_set_max_osd_fndecl_48141_fields osdmap_set_max_osd fndecl 2 48141 NULL nohasharray
-+sisusbcon_putcs_fndecl_48141_fields sisusbcon_putcs fndecl 3 48141 &osdmap_set_max_osd_fndecl_48141_fields
++mem_read_fndecl_48140_fields mem_read fndecl 3 48140 NULL
++sisusbcon_putcs_fndecl_48141_fields sisusbcon_putcs fndecl 3 48141 NULL nohasharray
++osdmap_set_max_osd_fndecl_48141_fields osdmap_set_max_osd fndecl 2 48141 &sisusbcon_putcs_fndecl_48141_fields
+max_gs_mlx5_core_srq_48153_fields max_gs mlx5_core_srq 0 48153 NULL
+isdnhdlc_encode_fndecl_48155_fields isdnhdlc_encode fndecl 0-6 48155 NULL
+usb_endpoint_data_queue_48158_fields usb_endpoint data_queue 0 48158 NULL nohasharray
@@ -200441,20 +205119,22 @@ index 0000000..6b5367db
+hub_control_hc_driver_48178_fields hub_control hc_driver 0 48178 NULL
+mwifiex_parse_cal_cfg_fndecl_48179_fields mwifiex_parse_cal_cfg fndecl 0 48179 NULL
+num_pages_vmw_sg_table_48192_fields num_pages vmw_sg_table 0 48192 NULL
-+qcafrm_fsm_decode_fndecl_48193_fields qcafrm_fsm_decode fndecl 0-4 48193 NULL
++qcafrm_fsm_decode_fndecl_48193_fields qcafrm_fsm_decode fndecl 0-4 48193 NULL nohasharray
++data_transfer_length_pmcraid_ioarcb_48193_fields data_transfer_length pmcraid_ioarcb 0 48193 &qcafrm_fsm_decode_fndecl_48193_fields
+xres_virtual_fb_var_screeninfo_48196_fields xres_virtual fb_var_screeninfo 0 48196 NULL nohasharray
+sy_fb_copyarea_48196_fields sy fb_copyarea 0 48196 &xres_virtual_fb_var_screeninfo_48196_fields
+snd_rawmidi_transmit_ack_fndecl_48200_fields snd_rawmidi_transmit_ack fndecl 2 48200 NULL
+rxoffset_dma_info_48202_fields rxoffset dma_info 0 48202 NULL
+btusb_recv_bulk_intel_fndecl_48211_fields btusb_recv_bulk_intel fndecl 3 48211 NULL
-+srp_response_common_fndecl_48216_fields srp_response_common fndecl 4 48216 NULL nohasharray
-+ax88179_read_cmd_nopm_fndecl_48216_fields ax88179_read_cmd_nopm fndecl 5 48216 &srp_response_common_fndecl_48216_fields
++srp_response_common_fndecl_48216_fields srp_response_common fndecl 4 48216 NULL
+cur_inode_last_extent_send_ctx_48219_fields cur_inode_last_extent send_ctx 0 48219 NULL
++sys_nice_fndecl_48229_fields sys_nice fndecl 1 48229 NULL
+xdr_buf_read_netobj_fndecl_48238_fields xdr_buf_read_netobj fndecl 3 48238 NULL
++relay_switch_subbuf_fndecl_48239_fields relay_switch_subbuf fndecl 0-2 48239 NULL
+num_rx_rings_bnx2_48240_fields num_rx_rings bnx2 0 48240 NULL
+frag_offset_kcm_tx_msg_48243_fields frag_offset kcm_tx_msg 0 48243 NULL
-+qib_make_grh_fndecl_48250_fields qib_make_grh fndecl 0 48250 NULL
+height_cx88_core_48255_fields height cx88_core 0 48255 NULL
++drm_rect_calc_vscale_relaxed_fndecl_48260_fields drm_rect_calc_vscale_relaxed fndecl 3-4-0 48260 NULL
+region_length_acpi_table_bert_48274_fields region_length acpi_table_bert 0 48274 NULL
+vrows_display_48275_fields vrows display 0 48275 NULL
+add_packet_fndecl_48295_fields add_packet fndecl 3 48295 NULL
@@ -200463,6 +205143,7 @@ index 0000000..6b5367db
+pin_down_extent_fndecl_48324_fields pin_down_extent fndecl 4-3 48324 NULL
+acpi_efi_48328_fields acpi efi 0 48328 NULL nohasharray
+btn_rec_size_cyttsp4_sysinfo_ofs_48328_fields btn_rec_size cyttsp4_sysinfo_ofs 0 48328 &acpi_efi_48328_fields
++clk_nfcmrvl_fw_spi_config_48329_fields clk nfcmrvl_fw_spi_config 0 48329 NULL
+vga_scan_lines_vardecl_vgacon_c_48330_fields vga_scan_lines vardecl_vgacon.c 0 48330 NULL
+region_table_entry_bits_switch_ctx_48332_fields region_table_entry_bits switch_ctx 0 48332 NULL
+tch_rec_size_cyttsp4_opcfg_48339_fields tch_rec_size cyttsp4_opcfg 0 48339 NULL
@@ -200471,52 +205152,50 @@ index 0000000..6b5367db
+generic_ptrace_peekdata_fndecl_48349_fields generic_ptrace_peekdata fndecl 2 48349 NULL
+hwahc_op_urb_dequeue_fndecl_48351_fields hwahc_op_urb_dequeue fndecl 3 48351 NULL
+xfs_rtpick_extent_fndecl_48352_fields xfs_rtpick_extent fndecl 0 48352 NULL
-+num_phys_samsung_usb2_phy_config_48358_fields num_phys samsung_usb2_phy_config 0 48358 NULL
-+qib_make_rc_ack_fndecl_48361_fields qib_make_rc_ack fndecl 4 48361 NULL
++x1_drm_rect_48363_fields x1 drm_rect 0 48363 NULL
+ule_sndu_len_dvb_net_priv_48367_fields ule_sndu_len dvb_net_priv 0 48367 NULL nohasharray
+low_rio_doorbell_filter_48367_fields low rio_doorbell_filter 0 48367 &ule_sndu_len_dvb_net_priv_48367_fields
+xlog_write_setup_copy_fndecl_48368_fields xlog_write_setup_copy fndecl 0 48368 NULL
-+i915_gem_object_bind_to_vm_fndecl_48370_fields i915_gem_object_bind_to_vm fndecl 5 48370 NULL nohasharray
-+gmch_chip_id_intel_gtt_driver_description_48370_fields gmch_chip_id intel_gtt_driver_description 0 48370 &i915_gem_object_bind_to_vm_fndecl_48370_fields
++gmch_chip_id_intel_gtt_driver_description_48370_fields gmch_chip_id intel_gtt_driver_description 0 48370 NULL
+width_dt3155_priv_48375_fields width dt3155_priv 0 48375 NULL
-+driver_data_pci_device_id_48380_fields driver_data pci_device_id 0 48380 NULL
+_snd_pcm_hw_param_set_fndecl_48394_fields _snd_pcm_hw_param_set fndecl 3 48394 NULL
+blk_queue_dma_pad_fndecl_48409_fields blk_queue_dma_pad fndecl 2 48409 NULL
+ieee80211_start_rx_ba_session_offl_fndecl_48410_fields ieee80211_start_rx_ba_session_offl fndecl 3 48410 NULL
+osd_depth_vardecl_ivtvfb_c_48413_fields osd_depth vardecl_ivtvfb.c 0 48413 NULL
+__install_special_mapping_fndecl_48415_fields __install_special_mapping fndecl 2-3 48415 NULL
+seq_buf_putmem_fndecl_48421_fields seq_buf_putmem fndecl 3 48421 NULL
-+sys_fadvise64_64_fndecl_48424_fields sys_fadvise64_64 fndecl 2-3 48424 NULL nohasharray
++sys_fadvise64_64_fndecl_48424_fields sys_fadvise64_64 fndecl 2 48424 NULL nohasharray
+stex_copy_data_fndecl_48424_fields stex_copy_data fndecl 3 48424 &sys_fadvise64_64_fndecl_48424_fields
+bMaxBurst_usb_wireless_ep_comp_descriptor_48430_fields bMaxBurst usb_wireless_ep_comp_descriptor 0 48430 NULL
+mmio_phys_end_amd_iommu_48432_fields mmio_phys_end amd_iommu 0 48432 NULL
-+__nvme_submit_sync_cmd_fndecl_48438_fields __nvme_submit_sync_cmd fndecl 5 48438 NULL nohasharray
-+tty_register_device_attr_fndecl_48438_fields tty_register_device_attr fndecl 2 48438 &__nvme_submit_sync_cmd_fndecl_48438_fields
-+bzImage64_load_fndecl_48447_fields bzImage64_load fndecl 5 48447 NULL
++natids_tid_info_48439_fields natids tid_info 0 48439 NULL
++bzImage64_load_fndecl_48447_fields bzImage64_load fndecl 5-7 48447 NULL
+__tcp_retransmit_skb_fndecl_48449_fields __tcp_retransmit_skb fndecl 3 48449 NULL
-+compat_keyctl_instantiate_key_iov_fndecl_48452_fields compat_keyctl_instantiate_key_iov fndecl 3 48452 NULL
+frag_ceph_file_info_48455_fields frag ceph_file_info 0 48455 NULL
+xen_align_and_add_e820_region_fndecl_48457_fields xen_align_and_add_e820_region fndecl 2-1 48457 NULL nohasharray
+dp_out_buf_len_digi_port_48457_fields dp_out_buf_len digi_port 0 48457 &xen_align_and_add_e820_region_fndecl_48457_fields
+len_rx_header_48462_fields len rx_header 0 48462 NULL
-+__nla_reserve_nohdr_fndecl_48468_fields __nla_reserve_nohdr fndecl 2 48468 NULL
++__nla_reserve_nohdr_fndecl_48468_fields __nla_reserve_nohdr fndecl 2 48468 NULL nohasharray
++carl9170_read_mreg_fndecl_48468_fields carl9170_read_mreg fndecl 2 48468 &__nla_reserve_nohdr_fndecl_48468_fields
+gre_manip_pkt_fndecl_48475_fields gre_manip_pkt fndecl 4 48475 NULL
+nr_domains_rapl_package_48482_fields nr_domains rapl_package 0 48482 NULL
+xe_value_size_ocfs2_xattr_entry_48485_fields xe_value_size ocfs2_xattr_entry 0 48485 NULL
+__roundup_pow_of_two_fndecl_48486_fields __roundup_pow_of_two fndecl 0 48486 NULL
++sisusb_clear_vram_fndecl_48489_fields sisusb_clear_vram fndecl 2-3 48489 NULL
+l_len_ocfs2_space_resv_48490_fields l_len ocfs2_space_resv 0 48490 NULL
+ydepth_sh_veu_format_48498_fields ydepth sh_veu_format 0 48498 NULL
+encode_filename_fndecl_48501_fields encode_filename fndecl 3 48501 NULL
+len_cfg80211_bss_ies_48503_fields len cfg80211_bss_ies 0 48503 NULL
+channels_snd_soc_dai_48509_fields channels snd_soc_dai 0 48509 NULL
+rx_count_kim_data_s_48513_fields rx_count kim_data_s 0 48513 NULL
-+octeon_read_device_mem32_fndecl_48520_fields octeon_read_device_mem32 fndecl 0 48520 NULL
+fcoe_get_paged_crc_eof_fndecl_48522_fields fcoe_get_paged_crc_eof fndecl 2 48522 NULL
++fscrypt_fname_encrypted_size_fndecl_48527_fields fscrypt_fname_encrypted_size fndecl 2 48527 NULL
+receive_buf_fndecl_48528_fields receive_buf fndecl 4 48528 NULL
+dxfer_len_sg_io_hdr_48532_fields dxfer_len sg_io_hdr 0 48532 NULL
+discard_block_size_cache_48539_fields discard_block_size cache 0 48539 NULL
+fack_count_tcp_sacktag_state_48543_fields fack_count tcp_sacktag_state 0 48543 NULL
+aid_len_nfc_evt_transaction_48544_fields aid_len nfc_evt_transaction 0 48544 NULL
++dm_stats_create_fndecl_48550_fields dm_stats_create fndecl 4-2-3 48550 NULL
+dccp_sync_mss_fndecl_48556_fields dccp_sync_mss fndecl 2 48556 NULL
+__vlan_vid_add_fndecl_48559_fields __vlan_vid_add fndecl 3 48559 NULL
+intel_tile_height_fndecl_48566_fields intel_tile_height fndecl 0-3 48566 NULL
@@ -200525,7 +205204,8 @@ index 0000000..6b5367db
+max_skb_frags_iwl_trans_48580_fields max_skb_frags iwl_trans 0 48580 NULL
+vce_v2_0_bo_size_fndecl_48581_fields vce_v2_0_bo_size fndecl 0 48581 NULL
+max_num_vdevs_ath10k_48584_fields max_num_vdevs ath10k 0 48584 NULL nohasharray
-+tx_ring_size_bnx2x_48584_fields tx_ring_size bnx2x 0 48584 &max_num_vdevs_ath10k_48584_fields
++pagf_freeblks_xfs_perag_48584_fields pagf_freeblks xfs_perag 0 48584 &max_num_vdevs_ath10k_48584_fields nohasharray
++tx_ring_size_bnx2x_48584_fields tx_ring_size bnx2x 0 48584 &pagf_freeblks_xfs_perag_48584_fields
+backup_size_vmw_resource_48590_fields backup_size vmw_resource 0 48590 NULL
+arm_copy_to_user_fndecl_48602_fields arm_copy_to_user fndecl 0 48602 NULL
+datalen_atp_info_48607_fields datalen atp_info 0 48607 NULL
@@ -200535,7 +205215,6 @@ index 0000000..6b5367db
+len_i40iw_post_inline_send_48623_fields len i40iw_post_inline_send 0 48623 NULL
+xen_get_max_pages_fndecl_48626_fields xen_get_max_pages fndecl 0 48626 NULL
+crc_eof_offset_fcoe_percpu_s_48630_fields crc_eof_offset fcoe_percpu_s 0 48630 NULL
-+bcma_of_get_irq_fndecl_48631_fields bcma_of_get_irq fndecl 0 48631 NULL
+ili210x_read_reg_fndecl_48632_fields ili210x_read_reg fndecl 4 48632 NULL
+igu_sb_cnt_qed_igu_info_48638_fields igu_sb_cnt qed_igu_info 0 48638 NULL
+check_next_phase_fndecl_48641_fields check_next_phase fndecl 2 48641 NULL
@@ -200553,21 +205232,23 @@ index 0000000..6b5367db
+sb_dblocks_xfs_sb_48691_fields sb_dblocks xfs_sb 0 48691 NULL
+usCRTC_H_Disp__ATOM_MODE_TIMING_48694_fields usCRTC_H_Disp _ATOM_MODE_TIMING 0 48694 NULL nohasharray
+ib_qib_max_qp_wrs_vardecl_48694_fields ib_qib_max_qp_wrs vardecl 0 48694 &usCRTC_H_Disp__ATOM_MODE_TIMING_48694_fields
-+max_rds_rings_netxen_adapter_48699_fields max_rds_rings netxen_adapter 0 48699 NULL
-+cqe_ib_cq_init_attr_48707_fields cqe ib_cq_init_attr 0 48707 NULL nohasharray
-+asix_write_cmd_fndecl_48707_fields asix_write_cmd fndecl 5 48707 &cqe_ib_cq_init_attr_48707_fields
++make_cpu_key_fndecl_48699_fields make_cpu_key fndecl 3 48699 NULL
++page_offset_ena_rx_buffer_48705_fields page_offset ena_rx_buffer 0 48705 NULL
++cqe_ib_cq_init_attr_48707_fields cqe ib_cq_init_attr 0 48707 NULL
+xfs_zero_extent_fndecl_48709_fields xfs_zero_extent fndecl 0-3-2 48709 NULL
+orangefs_normalize_to_errno_fndecl_48715_fields orangefs_normalize_to_errno fndecl 0-1 48715 NULL nohasharray
+sect_count_hfsplus_sb_info_48715_fields sect_count hfsplus_sb_info 0 48715 &orangefs_normalize_to_errno_fndecl_48715_fields
+base_gfn_kvm_memory_slot_48716_fields base_gfn kvm_memory_slot 0 48716 NULL
+nci_send_cmd_fndecl_48717_fields nci_send_cmd fndecl 3 48717 NULL nohasharray
+num_cols_vardecl_arcfb_c_48717_fields num_cols vardecl_arcfb.c 0 48717 &nci_send_cmd_fndecl_48717_fields
++read_size_maxim_thermocouple_chip_48718_fields read_size maxim_thermocouple_chip 0 48718 NULL
+rx_max_cdc_ncm_ctx_48720_fields rx_max cdc_ncm_ctx 0 48720 NULL nohasharray
+mdata_ofs_cyttsp4_sysinfo_ofs_48720_fields mdata_ofs cyttsp4_sysinfo_ofs 0 48720 &rx_max_cdc_ncm_ctx_48720_fields
+ceph_tcp_recvmsg_fndecl_48722_fields ceph_tcp_recvmsg fndecl 0-3 48722 NULL
++garmin_write_bulk_fndecl_48732_fields garmin_write_bulk fndecl 3 48732 NULL
+can_dlc_can_frame_48738_fields can_dlc can_frame 0 48738 NULL
-+numEntries__ATOM_PPLIB_UVD_Clock_Voltage_Limit_Table_48741_fields numEntries _ATOM_PPLIB_UVD_Clock_Voltage_Limit_Table 0 48741 NULL nohasharray
-+bad_peb_count_ubi_device_48741_fields bad_peb_count ubi_device 0 48741 &numEntries__ATOM_PPLIB_UVD_Clock_Voltage_Limit_Table_48741_fields
++bad_peb_count_ubi_device_48741_fields bad_peb_count ubi_device 0 48741 NULL nohasharray
++numEntries__ATOM_PPLIB_UVD_Clock_Voltage_Limit_Table_48741_fields numEntries _ATOM_PPLIB_UVD_Clock_Voltage_Limit_Table 0 48741 &bad_peb_count_ubi_device_48741_fields
+iommu_size_vardecl_amd_gart_64_c_48749_fields iommu_size vardecl_amd_gart_64.c 0 48749 NULL
+default_value_v4l2_ctrl_48751_fields default_value v4l2_ctrl 0 48751 NULL
+e_blkno_ocfs2_extent_rec_48756_fields e_blkno ocfs2_extent_rec 0 48756 NULL
@@ -200577,27 +205258,28 @@ index 0000000..6b5367db
+usable_leb_size_ubi_volume_info_48776_fields usable_leb_size ubi_volume_info 0 48776 NULL
+cfg80211_mgmt_tx_status_fndecl_48777_fields cfg80211_mgmt_tx_status fndecl 4 48777 NULL
+height_drm_framebuffer_48781_fields height drm_framebuffer 0 48781 NULL
-+value_len_jffs2_xattr_datum_48786_fields value_len jffs2_xattr_datum 0 48786 NULL nohasharray
-+hva_to_pfn_fndecl_48786_fields hva_to_pfn fndecl 1 48786 &value_len_jffs2_xattr_datum_48786_fields nohasharray
-+mwifiex_host_to_card_mp_aggr_fndecl_48786_fields mwifiex_host_to_card_mp_aggr fndecl 3 48786 &hva_to_pfn_fndecl_48786_fields
++num_fences_fence_array_48783_fields num_fences fence_array 0 48783 NULL
++hva_to_pfn_fndecl_48786_fields hva_to_pfn fndecl 1 48786 NULL nohasharray
++value_len_jffs2_xattr_datum_48786_fields value_len jffs2_xattr_datum 0 48786 &hva_to_pfn_fndecl_48786_fields nohasharray
++mwifiex_host_to_card_mp_aggr_fndecl_48786_fields mwifiex_host_to_card_mp_aggr fndecl 3 48786 &value_len_jffs2_xattr_datum_48786_fields
+head_len_cfg80211_beacon_data_48794_fields head_len cfg80211_beacon_data 0 48794 NULL
+unit_size_mspro_sys_info_48796_fields unit_size mspro_sys_info 0 48796 NULL
-+da_num_tokens_vardecl_dell_smbios_c_48798_fields da_num_tokens vardecl_dell-smbios.c 0 48798 NULL
++len_spi_transfer_48802_fields len spi_transfer 0 48802 NULL
+twl6030_init_irq_fndecl_48804_fields twl6030_init_irq fndecl 0 48804 NULL
+dev_id_rbd_device_48813_fields dev_id rbd_device 0 48813 NULL
+m_rmap_maxlevels_xfs_mount_48821_fields m_rmap_maxlevels xfs_mount 0 48821 NULL
+sharpness_sd_gl860_48824_fields sharpness sd_gl860 0 48824 NULL
+endpoint_pvr2_stream_48828_fields endpoint pvr2_stream 0 48828 NULL
-+num_vring_48831_fields num vring 0 48831 NULL nohasharray
-+xbofs_irda_skb_cb_48831_fields xbofs irda_skb_cb 0 48831 &num_vring_48831_fields
++xbofs_irda_skb_cb_48831_fields xbofs irda_skb_cb 0 48831 NULL nohasharray
++num_vring_48831_fields num vring 0 48831 &xbofs_irda_skb_cb_48831_fields
+osst_init_aux_fndecl_48837_fields osst_init_aux fndecl 6-5 48837 NULL
+busnum_usb_bus_48843_fields busnum usb_bus 0 48843 NULL
+pcim_iomap_fndecl_48845_fields pcim_iomap fndecl 3 48845 NULL
+adf7242_read_fbuf_fndecl_48847_fields adf7242_read_fbuf fndecl 3 48847 NULL
-+container_width_dmm_48858_fields container_width dmm 0 48858 NULL
+end_io_target_type_48863_fields end_io target_type 0 48863 NULL
+pagefault_single_data_segment_fndecl_48864_fields pagefault_single_data_segment fndecl 4 48864 NULL
+num_desc_i40e_vsi_48872_fields num_desc i40e_vsi 0 48872 NULL
++dce_v10_0_get_num_crtc_fndecl_48877_fields dce_v10_0_get_num_crtc fndecl 0 48877 NULL
+log_mtts_per_seg_vardecl_48880_fields log_mtts_per_seg vardecl 0 48880 NULL
+skb_ensure_writable_fndecl_48882_fields skb_ensure_writable fndecl 2 48882 NULL
+diva_init_dma_map_fndecl_48883_fields diva_init_dma_map fndecl 3 48883 NULL nohasharray
@@ -200610,15 +205292,13 @@ index 0000000..6b5367db
+ucNumEntries__StateArray_48910_fields ucNumEntries _StateArray 0 48910 NULL
+s_groups_count_ext2_sb_info_48915_fields s_groups_count ext2_sb_info 0 48915 NULL
+tailsz_cifs_readdata_48919_fields tailsz cifs_readdata 0 48919 NULL
++_scif_nodeqp_send_fndecl_48929_fields _scif_nodeqp_send fndecl 0 48929 NULL
+write_file_operations_48930_fields write file_operations 0 48930 NULL nohasharray
+rx_ring_count_ixgbevf_adapter_48930_fields rx_ring_count ixgbevf_adapter 0 48930 &write_file_operations_48930_fields
+iio_read_first_n_kfifo_fndecl_48933_fields iio_read_first_n_kfifo fndecl 2 48933 NULL
-+emi26_writememory_fndecl_48935_fields emi26_writememory fndecl 4 48935 NULL
+w1_reply_len_fndecl_48943_fields w1_reply_len fndecl 0 48943 NULL
-+start_mthca_resource_48948_fields start mthca_resource 0 48948 NULL nohasharray
-+set_dma_reserve_fndecl_48948_fields set_dma_reserve fndecl 1 48948 &start_mthca_resource_48948_fields nohasharray
-+get_eld_i915_audio_component_ops_48948_fields get_eld i915_audio_component_ops 0 48948 &set_dma_reserve_fndecl_48948_fields
-+length_iwl_calib_res_notif_phy_db_48949_fields length iwl_calib_res_notif_phy_db 0 48949 NULL
++set_dma_reserve_fndecl_48948_fields set_dma_reserve fndecl 1 48948 NULL nohasharray
++start_mthca_resource_48948_fields start mthca_resource 0 48948 &set_dma_reserve_fndecl_48948_fields
+to_index_fndecl_48953_fields to_index fndecl 0 48953 NULL
+wptr_radeon_ring_48959_fields wptr radeon_ring 0 48959 NULL
+size_uv_systab_48965_fields size uv_systab 0 48965 NULL
@@ -200627,19 +205307,17 @@ index 0000000..6b5367db
+twl_i2c_write_fndecl_48976_fields twl_i2c_write fndecl 0 48976 NULL
+pkt_overhead_pktgen_dev_48989_fields pkt_overhead pktgen_dev 0 48989 NULL
+xt_socket_get_sock_v6_fndecl_48991_fields xt_socket_get_sock_v6 fndecl 3 48991 NULL
-+pid_task_struct_49000_fields pid task_struct 0 49000 NULL nohasharray
-+iov_iter_npages_fndecl_49000_fields iov_iter_npages fndecl 0-2 49000 &pid_task_struct_49000_fields
++iov_iter_npages_fndecl_49000_fields iov_iter_npages fndecl 0-2 49000 NULL nohasharray
++pid_task_struct_49000_fields pid task_struct 0 49000 &iov_iter_npages_fndecl_49000_fields
+sg_alloc_table_chained_fndecl_49001_fields sg_alloc_table_chained fndecl 2 49001 NULL
+rec_len_exofs_dir_entry_49002_fields rec_len exofs_dir_entry 0 49002 NULL
+size_mlx4_en_tx_ring_49005_fields size mlx4_en_tx_ring 0 49005 NULL
+mmio_addr_stm_data_49015_fields mmio_addr stm_data 0 49015 NULL
-+compat_writev_fndecl_49017_fields compat_writev fndecl 3 49017 NULL
+bm_len_xfs_buf_map_49022_fields bm_len xfs_buf_map 0 49022 NULL
+size_vmw_otable_49032_fields size vmw_otable 0 49032 NULL
+dev_id_rfcomm_dev_req_49039_fields dev_id rfcomm_dev_req 0 49039 NULL
+reg_r_fndecl_49040_fields reg_r fndecl 0 49040 NULL
+dwMaxVideoFrameSize_uvc_streaming_control_49044_fields dwMaxVideoFrameSize uvc_streaming_control 0 49044 NULL
-+max_port_per_lag_mlxsw_config_profile_49046_fields max_port_per_lag mlxsw_config_profile 0 49046 NULL
+devices_per_bus__MPT_ADAPTER_49051_fields devices_per_bus _MPT_ADAPTER 0 49051 NULL
+cxacru_cm_fndecl_49052_fields cxacru_cm fndecl 4 49052 NULL
+iguanair_send_fndecl_49054_fields iguanair_send fndecl 2 49054 NULL
@@ -200647,14 +205325,13 @@ index 0000000..6b5367db
+ide_pio_bytes_fndecl_49063_fields ide_pio_bytes fndecl 4 49063 NULL
+cm_size_tp_params_49065_fields cm_size tp_params 0 49065 NULL
+transport_mtu_vardecl_ntb_transport_c_49067_fields transport_mtu vardecl_ntb_transport.c 0 49067 NULL
-+scan_nat_page_fndecl_49068_fields scan_nat_page fndecl 3 49068 NULL nohasharray
-+do_writepage_fndecl_49068_fields do_writepage fndecl 2 49068 &scan_nat_page_fndecl_49068_fields
++scan_nat_page_fndecl_49068_fields scan_nat_page fndecl 3 49068 NULL
+ccid_hc_tx_obj_size_ccid_operations_49077_fields ccid_hc_tx_obj_size ccid_operations 0 49077 NULL
+max_ctrl_pkt_payload_len_nci_core_conn_create_rsp_49079_fields max_ctrl_pkt_payload_len nci_core_conn_create_rsp 0 49079 NULL
+tty_major_vardecl_hso_c_49084_fields tty_major vardecl_hso.c 0 49084 NULL
+optrom_region_size_qla_hw_data_49087_fields optrom_region_size qla_hw_data 0 49087 NULL
-+bi_vcnt_bio_49090_fields bi_vcnt bio 0 49090 NULL nohasharray
-+ocfs2_find_leaf_fndecl_49090_fields ocfs2_find_leaf fndecl 0 49090 &bi_vcnt_bio_49090_fields
++ocfs2_find_leaf_fndecl_49090_fields ocfs2_find_leaf fndecl 0 49090 NULL nohasharray
++bi_vcnt_bio_49090_fields bi_vcnt bio 0 49090 &ocfs2_find_leaf_fndecl_49090_fields
+ocfs2_mv_xattr_bucket_cross_cluster_fndecl_49091_fields ocfs2_mv_xattr_bucket_cross_cluster fndecl 5-6 49091 NULL
+end_sector_dev_info_49096_fields end_sector dev_info 0 49096 NULL nohasharray
+misc_sbp_command_block_orb_49096_fields misc sbp_command_block_orb 0 49096 &end_sector_dev_info_49096_fields
@@ -200668,7 +205345,6 @@ index 0000000..6b5367db
+max_mtu_nfp_net_49121_fields max_mtu nfp_net 0 49121 NULL
+btrfs_alloc_dummy_root_fndecl_49123_fields btrfs_alloc_dummy_root fndecl 2-3 49123 NULL
+m_ialloc_min_blks_xfs_mount_49129_fields m_ialloc_min_blks xfs_mount 0 49129 NULL
-+mad_seg_size_ib_mad_recv_wc_49134_fields mad_seg_size ib_mad_recv_wc 0 49134 NULL
+neo_init_hw_fndecl_49135_fields neo_init_hw fndecl 0 49135 NULL
+snd_pcm_hw_param_min_fndecl_49139_fields snd_pcm_hw_param_min fndecl 4 49139 NULL
+batch_len_drm_i915_gem_execbuffer2_49145_fields batch_len drm_i915_gem_execbuffer2 0 49145 NULL
@@ -200678,7 +205354,7 @@ index 0000000..6b5367db
+addr_len_pnfs_ff_netaddr_49177_fields addr_len pnfs_ff_netaddr 0 49177 NULL
+page_size_nvme_ctrl_49190_fields page_size nvme_ctrl 0 49190 NULL
+len_fb_cmap_user_49195_fields len fb_cmap_user 0 49195 NULL
-+fsl_edma_prep_dma_cyclic_fndecl_49197_fields fsl_edma_prep_dma_cyclic fndecl 2 49197 NULL nohasharray
++fsl_edma_prep_dma_cyclic_fndecl_49197_fields fsl_edma_prep_dma_cyclic fndecl 4-2 49197 NULL nohasharray
+ielen_wps_status_t_49197_fields ielen wps_status_t 0 49197 &fsl_edma_prep_dma_cyclic_fndecl_49197_fields
+offset_page_chunk_49201_fields offset page_chunk 0 49201 NULL
+key_size_dh_49210_fields key_size dh 0 49210 NULL
@@ -200690,20 +205366,17 @@ index 0000000..6b5367db
+mos7840_write_fndecl_49240_fields mos7840_write fndecl 4 49240 NULL
+persistent_ram_iomap_fndecl_49243_fields persistent_ram_iomap fndecl 2-1 49243 NULL
+ext2_fiemap_fndecl_49244_fields ext2_fiemap fndecl 4 49244 NULL
-+dmpt_entry_sz_mlx4_dev_cap_49245_fields dmpt_entry_sz mlx4_dev_cap 0 49245 NULL
-+get_user_pages_locked_fndecl_49246_fields get_user_pages_locked fndecl 1 49246 NULL nohasharray
-+xfs_map_buffer_fndecl_49246_fields xfs_map_buffer fndecl 4 49246 &get_user_pages_locked_fndecl_49246_fields
++xfs_map_buffer_fndecl_49246_fields xfs_map_buffer fndecl 4 49246 NULL
+mppe_compress_fndecl_49248_fields mppe_compress fndecl 4 49248 NULL
+nfs_file_llseek_fndecl_49249_fields nfs_file_llseek fndecl 2 49249 NULL
+i40iw_create_cm_node_fndecl_49252_fields i40iw_create_cm_node fndecl 3 49252 NULL
+fifo_reserve_size_vmw_kms_dirty_49255_fields fifo_reserve_size vmw_kms_dirty 0 49255 NULL
+rdmarc_shift_mlx4_qp_table_49259_fields rdmarc_shift mlx4_qp_table 0 49259 NULL
+di_size_qnx4_inode_entry_49263_fields di_size qnx4_inode_entry 0 49263 NULL
-+qat_uclo_map_obj_fndecl_49271_fields qat_uclo_map_obj fndecl 3 49271 NULL
+rate_floppy_struct_49273_fields rate floppy_struct 0 49273 NULL
+name_len_audit_names_49277_fields name_len audit_names 0 49277 NULL
+of_irq_parse_raw_fndecl_49280_fields of_irq_parse_raw fndecl 0 49280 NULL
-+slub_min_order_vardecl_slub_c_49292_fields slub_min_order vardecl_slub.c 0 49292 NULL
++ib_get_mad_data_offset_fndecl_49283_fields ib_get_mad_data_offset fndecl 0 49283 NULL
+header_length_ipr_ucode_image_header_49294_fields header_length ipr_ucode_image_header 0 49294 NULL
+iomap_write_failed_fndecl_49298_fields iomap_write_failed fndecl 2-3 49298 NULL
+bTransferSegment_wa_xfer_result_49303_fields bTransferSegment wa_xfer_result 0 49303 NULL
@@ -200712,84 +205385,77 @@ index 0000000..6b5367db
+filternum_dmxdev_49322_fields filternum dmxdev 0 49322 NULL nohasharray
+via_cputemp_device_add_fndecl_49322_fields via_cputemp_device_add fndecl 1 49322 &filternum_dmxdev_49322_fields
+fwnet_incoming_packet_fndecl_49327_fields fwnet_incoming_packet fndecl 3 49327 NULL
-+ocfs2_release_clusters_fndecl_49328_fields ocfs2_release_clusters fndecl 4 49328 NULL
++tcp_tso_autosize_fndecl_49328_fields tcp_tso_autosize fndecl 0-2-3 49328 NULL nohasharray
++ocfs2_release_clusters_fndecl_49328_fields ocfs2_release_clusters fndecl 4 49328 &tcp_tso_autosize_fndecl_49328_fields
+length_iwl_wipan_noa_data_49332_fields length iwl_wipan_noa_data 0 49332 NULL
+cmnd_res_ep_vub300_mmc_host_49334_fields cmnd_res_ep vub300_mmc_host 0 49334 NULL
+s3fwrn5_fw_enter_update_mode_fndecl_49342_fields s3fwrn5_fw_enter_update_mode fndecl 3-5 49342 NULL
+mute_bttv_49358_fields mute bttv 0 49358 NULL
+max_transfer_size_spi_master_49363_fields max_transfer_size spi_master 0 49363 NULL
-+fsbcount_xfs_da_geometry_49380_fields fsbcount xfs_da_geometry 0 49380 NULL nohasharray
-+x509_akid_note_serial_fndecl_49380_fields x509_akid_note_serial fndecl 5 49380 &fsbcount_xfs_da_geometry_49380_fields
-+pe_data_len_ip_vs_conn_49384_fields pe_data_len ip_vs_conn 0 49384 NULL
++fsbcount_xfs_da_geometry_49380_fields fsbcount xfs_da_geometry 0 49380 NULL
+short_mark_sd_49388_fields short_mark sd 0 49388 NULL
+pci_iov_resource_size_fndecl_49389_fields pci_iov_resource_size fndecl 0 49389 NULL
+ecryptfs_read_lower_fndecl_49392_fields ecryptfs_read_lower fndecl 3 49392 NULL
+current_font_height_sisusb_usb_data_49394_fields current_font_height sisusb_usb_data 0 49394 NULL nohasharray
-+usb_ftdi_elan_edset_empty_fndecl_49394_fields usb_ftdi_elan_edset_empty fndecl 0 49394 &current_font_height_sisusb_usb_data_49394_fields nohasharray
-+send_cmd_iwl_trans_ops_49394_fields send_cmd iwl_trans_ops 0 49394 &usb_ftdi_elan_edset_empty_fndecl_49394_fields
++usb_ftdi_elan_edset_empty_fndecl_49394_fields usb_ftdi_elan_edset_empty fndecl 0 49394 &current_font_height_sisusb_usb_data_49394_fields
+btrfs_delalloc_release_space_fndecl_49397_fields btrfs_delalloc_release_space fndecl 2-3 49397 NULL
+pmtu_rvt_qp_49401_fields pmtu rvt_qp 0 49401 NULL
-+pinctrl_register_mappings_fndecl_49407_fields pinctrl_register_mappings fndecl 2 49407 NULL
+ss_next_nilfs_segment_summary_49410_fields ss_next nilfs_segment_summary 0 49410 NULL nohasharray
-+pnp_register_port_resource_fndecl_49410_fields pnp_register_port_resource fndecl 6-3-5 49410 &ss_next_nilfs_segment_summary_49410_fields nohasharray
-+next_bio_fndecl_49410_fields next_bio fndecl 2 49410 &pnp_register_port_resource_fndecl_49410_fields
-+base_doorbell_index_nes_device_49415_fields base_doorbell_index nes_device 0 49415 NULL
++pnp_register_port_resource_fndecl_49410_fields pnp_register_port_resource fndecl 6-3-5 49410 &ss_next_nilfs_segment_summary_49410_fields
++base_doorbell_index_nes_device_49415_fields base_doorbell_index nes_device 0 49415 NULL nohasharray
++size_efx_farch_filter_table_49415_fields size efx_farch_filter_table 0 49415 &base_doorbell_index_nes_device_49415_fields
+bio_chain_clone_range_fndecl_49420_fields bio_chain_clone_range fndecl 3 49420 NULL
+tipc_msg_build_fndecl_49424_fields tipc_msg_build fndecl 4-5 49424 NULL
+ds_out_channels_hdsp_49429_fields ds_out_channels hdsp 0 49429 NULL
+onenand_write_oob_fndecl_49431_fields onenand_write_oob fndecl 2 49431 NULL
-+bytenr_tree_block_49432_fields bytenr tree_block 0 49432 NULL nohasharray
-+fwnet_pd_new_fndecl_49432_fields fwnet_pd_new fndecl 4 49432 &bytenr_tree_block_49432_fields nohasharray
-+set_run_fndecl_49432_fields set_run fndecl 2 49432 &fwnet_pd_new_fndecl_49432_fields
++fwnet_pd_new_fndecl_49432_fields fwnet_pd_new fndecl 4 49432 NULL nohasharray
++bytenr_tree_block_49432_fields bytenr tree_block 0 49432 &fwnet_pd_new_fndecl_49432_fields nohasharray
++set_run_fndecl_49432_fields set_run fndecl 2 49432 &bytenr_tree_block_49432_fields
++main_segments_f2fs_sm_info_49433_fields main_segments f2fs_sm_info 0 49433 NULL
+nv_min_cwnd_vardecl_tcp_nv_c_49437_fields nv_min_cwnd vardecl_tcp_nv.c 0 49437 NULL
+perf_output_copy_fndecl_49448_fields perf_output_copy fndecl 3 49448 NULL
+global_irq_acpi_madt_interrupt_override_49451_fields global_irq acpi_madt_interrupt_override 0 49451 NULL
-+dwc3_readl_fndecl_49455_fields dwc3_readl fndecl 0 49455 NULL nohasharray
-+get_setup_data_total_num_fndecl_49455_fields get_setup_data_total_num fndecl 1 49455 &dwc3_readl_fndecl_49455_fields
++get_setup_data_total_num_fndecl_49455_fields get_setup_data_total_num fndecl 1 49455 NULL nohasharray
++dwc3_readl_fndecl_49455_fields dwc3_readl fndecl 0 49455 &get_setup_data_total_num_fndecl_49455_fields
+ch_count_srp_target_port_49465_fields ch_count srp_target_port 0 49465 NULL
+usb_tx_block_fndecl_49466_fields usb_tx_block fndecl 3 49466 NULL
+len_r6040_descriptor_49471_fields len r6040_descriptor 0 49471 NULL
+s_cblkno_ufs_sb_private_info_49472_fields s_cblkno ufs_sb_private_info 0 49472 NULL
+ks8995_read_fndecl_49475_fields ks8995_read fndecl 4 49475 NULL
-+nf_nat_icmpv6_reply_translation_fndecl_49476_fields nf_nat_icmpv6_reply_translation fndecl 5 49476 NULL
-+make_rx_response_fndecl_49477_fields make_rx_response fndecl 5-3-4 49477 NULL
++nf_nat_icmpv6_reply_translation_fndecl_49476_fields nf_nat_icmpv6_reply_translation fndecl 5 49476 NULL nohasharray
++ivtvfb_write_fndecl_49476_fields ivtvfb_write fndecl 3 49476 &nf_nat_icmpv6_reply_translation_fndecl_49476_fields
+mc_mask_amdgpu_mc_49478_fields mc_mask amdgpu_mc 0 49478 NULL nohasharray
+rpc_max_payload_fndecl_49478_fields rpc_max_payload fndecl 0 49478 &mc_mask_amdgpu_mc_49478_fields
+iomap_write_begin_fndecl_49486_fields iomap_write_begin fndecl 2-3 49486 NULL
+i2c_readn_fndecl_49490_fields i2c_readn fndecl 4 49490 NULL
+xfs_file_llseek_fndecl_49492_fields xfs_file_llseek fndecl 2 49492 NULL nohasharray
+length_nvme_sgl_desc_49492_fields length nvme_sgl_desc 0 49492 &xfs_file_llseek_fndecl_49492_fields
++hugetlb_cow_fndecl_49497_fields hugetlb_cow fndecl 3 49497 NULL
+din_xfer_len_sg_io_v4_49498_fields din_xfer_len sg_io_v4 0 49498 NULL
-+rd_size_uhid_create2_req_49499_fields rd_size uhid_create2_req 0 49499 NULL
+smb_send_fndecl_49500_fields smb_send fndecl 3 49500 NULL
+usCRTC_H_Total__ATOM_MODE_TIMING_49501_fields usCRTC_H_Total _ATOM_MODE_TIMING 0 49501 NULL
+__radix_tree_create_fndecl_49505_fields __radix_tree_create fndecl 0 49505 NULL
+intel_framebuffer_create_for_mode_fndecl_49508_fields intel_framebuffer_create_for_mode fndecl 4 49508 NULL nohasharray
+l2cap_create_iframe_pdu_fndecl_49508_fields l2cap_create_iframe_pdu fndecl 3 49508 &intel_framebuffer_create_for_mode_fndecl_49508_fields nohasharray
-+__bnx2x_get_preset_regs_len_fndecl_49508_fields __bnx2x_get_preset_regs_len fndecl 0 49508 &l2cap_create_iframe_pdu_fndecl_49508_fields nohasharray
-+add_tty_fndecl_49508_fields add_tty fndecl 1 49508 &__bnx2x_get_preset_regs_len_fndecl_49508_fields
++__bnx2x_get_preset_regs_len_fndecl_49508_fields __bnx2x_get_preset_regs_len fndecl 0 49508 &l2cap_create_iframe_pdu_fndecl_49508_fields
+tx_blk_size_rsi_91x_sdiodev_49511_fields tx_blk_size rsi_91x_sdiodev 0 49511 NULL
+usbvision_write_reg_irq_fndecl_49516_fields usbvision_write_reg_irq fndecl 4 49516 NULL
+buf_size_sge_fl_49517_fields buf_size sge_fl 0 49517 NULL
+Zmin_hfc_multi_49520_fields Zmin hfc_multi 0 49520 NULL
+log_mtts_per_seg_vardecl_mthca_main_c_49524_fields log_mtts_per_seg vardecl_mthca_main.c 0 49524 NULL
+num_eps_bdc_49525_fields num_eps bdc 0 49525 NULL
-+mtt_entry_sz_mlx4_caps_49531_fields mtt_entry_sz mlx4_caps 0 49531 NULL
+consume_bytes_snd_fw_async_midi_port_49542_fields consume_bytes snd_fw_async_midi_port 0 49542 NULL
+disk_offset_pnfs_block_dev_map_49546_fields disk_offset pnfs_block_dev_map 0 49546 NULL
-+lpfc_debugfs_hbqinfo_data_fndecl_49551_fields lpfc_debugfs_hbqinfo_data fndecl 0 49551 NULL
+ioremap_wt_fndecl_49562_fields ioremap_wt fndecl 2-1 49562 NULL
+nrs_num_pols_ptlrpc_nrs_49564_fields nrs_num_pols ptlrpc_nrs 0 49564 NULL
-+nilfs_mdt_delete_block_fndecl_49565_fields nilfs_mdt_delete_block fndecl 2 49565 NULL nohasharray
-+vfs_readv_fndecl_49565_fields vfs_readv fndecl 3 49565 &nilfs_mdt_delete_block_fndecl_49565_fields
++vfs_readv_fndecl_49565_fields vfs_readv fndecl 0 49565 NULL nohasharray
++nilfs_mdt_delete_block_fndecl_49565_fields nilfs_mdt_delete_block fndecl 2 49565 &vfs_readv_fndecl_49565_fields
+max_cm_mtu_ipoib_cm_dev_priv_49566_fields max_cm_mtu ipoib_cm_dev_priv 0 49566 NULL
+xfs_insert_file_space_fndecl_49569_fields xfs_insert_file_space fndecl 2-3 49569 NULL
-+snd_soc_dapm_new_pcm_fndecl_49572_fields snd_soc_dapm_new_pcm fndecl 3 49572 NULL
+ncp_request2_fndecl_49589_fields ncp_request2 fndecl 4 49589 NULL
+ssid_length_beacon_format_49591_fields ssid_length beacon_format 0 49591 NULL
+xfs_rtbuf_get_fndecl_49592_fields xfs_rtbuf_get fndecl 3-0 49592 NULL
+width_vim2m_q_data_49600_fields width vim2m_q_data 0 49600 NULL
-+drm_display_info_set_bus_formats_fndecl_49607_fields drm_display_info_set_bus_formats fndecl 3 49607 NULL
+tot_num_rules_mlx5e_ethtool_steering_49612_fields tot_num_rules mlx5e_ethtool_steering 0 49612 NULL
+hsync_start_drm_display_mode_49613_fields hsync_start drm_display_mode 0 49613 NULL nohasharray
+ppm_get_cpu_entries_fndecl_49613_fields ppm_get_cpu_entries fndecl 0 49613 &hsync_start_drm_display_mode_49613_fields nohasharray
@@ -200801,11 +205467,9 @@ index 0000000..6b5367db
+reg_read_range_fndecl_49623_fields reg_read_range fndecl 4-0 49623 NULL
+nn_nvme_id_ctrl_49625_fields nn nvme_id_ctrl 0 49625 NULL
+srsize_brcmf_chip_49639_fields srsize brcmf_chip 0 49639 NULL
-+list_size_of_flash_49643_fields list_size of_flash 0 49643 NULL
+start_io_failure_record_49645_fields start io_failure_record 0 49645 NULL
+align_resource_constraint_49647_fields align resource_constraint 0 49647 NULL
+mlx4_alloc_icm_pages_fndecl_49658_fields mlx4_alloc_icm_pages fndecl 2 49658 NULL
-+size_i915_ggtt_49666_fields size i915_ggtt 0 49666 NULL
+dwMaxPayloadTransferSize_uvc_streaming_control_49668_fields dwMaxPayloadTransferSize uvc_streaming_control 0 49668 NULL
+bytes_ubi_leb_change_req_49669_fields bytes ubi_leb_change_req 0 49669 NULL
+tipc_node_get_mtu_fndecl_49670_fields tipc_node_get_mtu fndecl 0 49670 NULL
@@ -200813,10 +205477,9 @@ index 0000000..6b5367db
+intel_gtt_map_memory_fndecl_49677_fields intel_gtt_map_memory fndecl 2 49677 NULL
+port_priv_size_team_mode_49682_fields port_priv_size team_mode 0 49682 NULL
+clk_core_get_rate_nolock_fndecl_49685_fields clk_core_get_rate_nolock fndecl 0 49685 NULL
-+alt_name_store_fndecl_49688_fields alt_name_store fndecl 4 49688 NULL
-+set_extent_bit_fndecl_49692_fields set_extent_bit fndecl 3-2 49692 NULL
-+pnode_uv_gam_range_entry_49695_fields pnode uv_gam_range_entry 0 49695 NULL nohasharray
-+slider_num_ad714x_platform_data_49695_fields slider_num ad714x_platform_data 0 49695 &pnode_uv_gam_range_entry_49695_fields
++report_size_iowarrior_49692_fields report_size iowarrior 0 49692 NULL nohasharray
++set_extent_bit_fndecl_49692_fields set_extent_bit fndecl 3-2 49692 &report_size_iowarrior_49692_fields
++pnode_uv_gam_range_entry_49695_fields pnode uv_gam_range_entry 0 49695 NULL
+s_segshift_logfs_super_49707_fields s_segshift logfs_super 0 49707 NULL
+end_resource_49712_fields end resource 0 49712 NULL
+fuse_readpages_fndecl_49714_fields fuse_readpages fndecl 4 49714 NULL
@@ -200824,7 +205487,6 @@ index 0000000..6b5367db
+IOCMaxChainSegmentSize_mpt3sas_facts_49724_fields IOCMaxChainSegmentSize mpt3sas_facts 0 49724 NULL
+sof_len_sd_49729_fields sof_len sd 0 49729 NULL
+num_uars_mthca_limits_49735_fields num_uars mthca_limits 0 49735 NULL
-+pyra_sysfs_read_fndecl_49736_fields pyra_sysfs_read fndecl 6 49736 NULL
+wqe_size_ib_uverbs_post_recv_49738_fields wqe_size ib_uverbs_post_recv 0 49738 NULL
+xfs_bmap_split_extent_fndecl_49740_fields xfs_bmap_split_extent fndecl 2 49740 NULL
+udf_prealloc_blocks_fndecl_49747_fields udf_prealloc_blocks fndecl 0-5 49747 NULL
@@ -200833,7 +205495,6 @@ index 0000000..6b5367db
+ngroups_netlink_sock_49758_fields ngroups netlink_sock 0 49758 NULL
+match_size_compat_ebt_entry_mwt_49763_fields match_size compat_ebt_entry_mwt 0 49763 NULL
+nl80211_send_roamed_fndecl_49770_fields nl80211_send_roamed fndecl 5-7 49770 NULL
-+cifs_sign_smbv_fndecl_49776_fields cifs_sign_smbv fndecl 2 49776 NULL
+sprom_size_ssb_bus_49781_fields sprom_size ssb_bus 0 49781 NULL
+page2_len_ses_device_49783_fields page2_len ses_device 0 49783 NULL
+seeks_shrinker_49793_fields seeks shrinker 0 49793 NULL
@@ -200854,19 +205515,17 @@ index 0000000..6b5367db
+gen9_get_stolen_size_fndecl_49846_fields gen9_get_stolen_size fndecl 0-1 49846 NULL
+read_endpoint_s2255_dev_49848_fields read_endpoint s2255_dev 0 49848 NULL
+scsi_send_eh_cmnd_fndecl_49849_fields scsi_send_eh_cmnd fndecl 5 49849 NULL
-+plen_c4iw_ep_49856_fields plen c4iw_ep 0 49856 NULL nohasharray
-+vol_cdev_write_fndecl_49856_fields vol_cdev_write fndecl 3 49856 &plen_c4iw_ep_49856_fields
++plen_c4iw_ep_49856_fields plen c4iw_ep 0 49856 NULL
+kempld_gpio_pincount_fndecl_49860_fields kempld_gpio_pincount fndecl 0 49860 NULL
+__kfifo_init_fndecl_49861_fields __kfifo_init fndecl 4 49861 NULL
+si_get_csb_size_fndecl_49864_fields si_get_csb_size fndecl 0 49864 NULL
+bucket_bits_cache_set_49869_fields bucket_bits cache_set 0 49869 NULL
+record_inode_for_nocow_fndecl_49872_fields record_inode_for_nocow fndecl 2 49872 NULL
-+__i915_error_seek_fndecl_49882_fields __i915_error_seek fndecl 2 49882 NULL
+sg_alloc_table_fndecl_49895_fields sg_alloc_table fndecl 2-0 49895 NULL
+offset_drm_i915_gem_pwrite_49896_fields offset drm_i915_gem_pwrite 0 49896 NULL nohasharray
-+iwl_mvm_create_skb_fndecl_49896_fields iwl_mvm_create_skb fndecl 4-3 49896 &offset_drm_i915_gem_pwrite_49896_fields
++iwl_mvm_create_skb_fndecl_49896_fields iwl_mvm_create_skb fndecl 4-3 49896 &offset_drm_i915_gem_pwrite_49896_fields nohasharray
++max_sds_rings_netxen_adapter_49896_fields max_sds_rings netxen_adapter 0 49896 &iwl_mvm_create_skb_fndecl_49896_fields
+max_desc_sz_mthca_dev_lim_49905_fields max_desc_sz mthca_dev_lim 0 49905 NULL
-+block_descriptor_length_scsi_mode_data_49918_fields block_descriptor_length scsi_mode_data 0 49918 NULL
+cx18_prepare_buffer_fndecl_49942_fields cx18_prepare_buffer fndecl 6-5 49942 NULL
+repair_io_failure_fndecl_49943_fields repair_io_failure fndecl 6-3 49943 NULL
+internal_ewma_pkt_len_49944_fields internal ewma_pkt_len 0 49944 NULL
@@ -200875,6 +205534,7 @@ index 0000000..6b5367db
+smbus_xfer_i2c_algorithm_49954_fields smbus_xfer i2c_algorithm 0 49954 NULL
+len_lmc_xilinx_control_49960_fields len lmc_xilinx_control 0 49960 NULL
+xfs_iread_extents_fndecl_49965_fields xfs_iread_extents fndecl 0 49965 NULL
++cxgb4_init_tc_u32_fndecl_49966_fields cxgb4_init_tc_u32 fndecl 2 49966 NULL
+afs_fs_store_data_fndecl_49975_fields afs_fs_store_data fndecl 5-6 49975 NULL
+dig_in_nid_hda_gen_spec_49979_fields dig_in_nid hda_gen_spec 0 49979 NULL
+subtract_range_fndecl_49980_fields subtract_range fndecl 3-4 49980 NULL nohasharray
@@ -200888,14 +205548,13 @@ index 0000000..6b5367db
+make_checksum_fndecl_49999_fields make_checksum fndecl 3-5 49999 &batadv_check_unicast_ttvn_fndecl_49999_fields
+block_isofs_iget5_callback_data_50000_fields block isofs_iget5_callback_data 0 50000 NULL
+vbi_v_start_0_saa7134_tvnorm_50002_fields vbi_v_start_0 saa7134_tvnorm 0 50002 NULL
-+delete_object_part_fndecl_50007_fields delete_object_part fndecl 2-1 50007 NULL
+ip6_err_gen_icmpv6_unreach_fndecl_50009_fields ip6_err_gen_icmpv6_unreach fndecl 2 50009 NULL
+tcm_qla2xxx_handle_cmd_fndecl_50016_fields tcm_qla2xxx_handle_cmd fndecl 4 50016 NULL nohasharray
+nci_core_cmd_fndecl_50016_fields nci_core_cmd fndecl 3 50016 &tcm_qla2xxx_handle_cmd_fndecl_50016_fields
++kmem_cache_create_usercopy_fndecl_50019_fields kmem_cache_create_usercopy fndecl 2-3 50019 NULL
+bi_size_bvec_iter_50026_fields bi_size bvec_iter 0 50026 NULL nohasharray
-+bl_alloc_init_bio_fndecl_50026_fields bl_alloc_init_bio fndecl 3-1 50026 &bi_size_bvec_iter_50026_fields
++bl_alloc_init_bio_fndecl_50026_fields bl_alloc_init_bio fndecl 3 50026 &bi_size_bvec_iter_50026_fields
+snd_oss_kernel_minor_fndecl_50028_fields snd_oss_kernel_minor fndecl 0 50028 NULL
-+length_fotg210_qtd_50029_fields length fotg210_qtd 0 50029 NULL
+BlockMultiplierBits_INFTLMediaHeader_50032_fields BlockMultiplierBits INFTLMediaHeader 0 50032 NULL
+depth_zoran_format_50033_fields depth zoran_format 0 50033 NULL
+f_dac_hackrf_dev_50035_fields f_dac hackrf_dev 0 50035 NULL
@@ -200910,51 +205569,54 @@ index 0000000..6b5367db
+total_len_splice_desc_50112_fields total_len splice_desc 0 50112 NULL
+fst_rx_dma_complete_fndecl_50118_fields fst_rx_dma_complete fndecl 3 50118 NULL
+__cfg80211_roamed_fndecl_50127_fields __cfg80211_roamed fndecl 4-6 50127 NULL
-+get_current_nat_page_fndecl_50130_fields get_current_nat_page fndecl 2 50130 NULL
++max_burst_whc_qset_50130_fields max_burst whc_qset 0 50130 NULL nohasharray
++get_current_nat_page_fndecl_50130_fields get_current_nat_page fndecl 2 50130 &max_burst_whc_qset_50130_fields
+i_files_ceph_inode_info_50132_fields i_files ceph_inode_info 0 50132 NULL
+num_entries_ip6t_replace_50138_fields num_entries ip6t_replace 0 50138 NULL
+cutlen_ovs_skb_cb_50141_fields cutlen ovs_skb_cb 0 50141 NULL
+usb_tx_block_fndecl_50144_fields usb_tx_block fndecl 3 50144 NULL
+vendpoint_pwc_device_50145_fields vendpoint pwc_device 0 50145 NULL
+htotal_drm_display_mode_50148_fields htotal drm_display_mode 0 50148 NULL
++nfc_hci_set_param_fndecl_50154_fields nfc_hci_set_param fndecl 5 50154 NULL
+idr_get_empty_slot_fndecl_50161_fields idr_get_empty_slot fndecl 0 50161 NULL
+ext4_mark_inode_dirty_fndecl_50162_fields ext4_mark_inode_dirty fndecl 0 50162 NULL
-+fops_read_fndecl_50163_fields fops_read fndecl 3 50163 NULL nohasharray
-+length_ib_ip_iocb_rsp_50163_fields length ib_ip_iocb_rsp 0 50163 &fops_read_fndecl_50163_fields
++length_ib_ip_iocb_rsp_50163_fields length ib_ip_iocb_rsp 0 50163 NULL
++videobuf_dma_init_user_locked_fndecl_50165_fields videobuf_dma_init_user_locked fndecl 4-3 50165 NULL
+next_burst_len_iscsi_cmd_50168_fields next_burst_len iscsi_cmd 0 50168 NULL
+rd_buf_size_xilly_channel_50171_fields rd_buf_size xilly_channel 0 50171 NULL
+hdr_len_atm_flow_data_50178_fields hdr_len atm_flow_data 0 50178 NULL
-+ubi_more_update_data_fndecl_50182_fields ubi_more_update_data fndecl 4 50182 NULL
++gfs2_create_inode_fndecl_50184_fields gfs2_create_inode fndecl 7 50184 NULL
+__isofs_iget_fndecl_50194_fields __isofs_iget fndecl 2 50194 NULL
-+amdgpu_sched_hw_submission_vardecl_50202_fields amdgpu_sched_hw_submission vardecl 0 50202 NULL
+gbufsize_vardecl_meye_c_50205_fields gbufsize vardecl_meye.c 0 50205 NULL
++s_zmap_blocks_minix_sb_info_50206_fields s_zmap_blocks minix_sb_info 0 50206 NULL
++crtc_x_drm_plane_state_50214_fields crtc_x drm_plane_state 0 50214 NULL
++sched_priority_sched_attr_50220_fields sched_priority sched_attr 0 50220 NULL
+length_dfw_binrec_50222_fields length dfw_binrec 0 50222 NULL
-+pin_pci_dev_50231_fields pin pci_dev 0 50231 NULL
+qla4_82xx_pci_mem_read_direct_fndecl_50235_fields qla4_82xx_pci_mem_read_direct fndecl 2 50235 NULL
+efi_memmap_size_efi_info_50236_fields efi_memmap_size efi_info 0 50236 NULL
-+r128_compat_ioctl_fndecl_50241_fields r128_compat_ioctl fndecl 2 50241 NULL
-+i915_error_state_read_fndecl_50245_fields i915_error_state_read fndecl 3 50245 NULL
+fnic_trace_max_pages_vardecl_50246_fields fnic_trace_max_pages vardecl 0 50246 NULL
++mapping_root_cache_disk_superblock_50249_fields mapping_root cache_disk_superblock 0 50249 NULL
+h_tot_disp_crtc_50258_fields h_tot_disp crtc 0 50258 NULL
+len_mrp_attr_50262_fields len mrp_attr 0 50262 NULL
-+bLength_usb_ss_ep_comp_descriptor_50270_fields bLength usb_ss_ep_comp_descriptor 0 50270 NULL nohasharray
-+end_range_50270_fields end range 0 50270 &bLength_usb_ss_ep_comp_descriptor_50270_fields
-+vframes_pwc_device_50272_fields vframes pwc_device 0 50272 NULL
++end_range_50270_fields end range 0 50270 NULL nohasharray
++bLength_usb_ss_ep_comp_descriptor_50270_fields bLength usb_ss_ep_comp_descriptor 0 50270 &end_range_50270_fields
++cypress_serial_control_fndecl_50272_fields cypress_serial_control fndecl 3 50272 NULL nohasharray
++vframes_pwc_device_50272_fields vframes pwc_device 0 50272 &cypress_serial_control_fndecl_50272_fields
+curr_resync_completed_mddev_50273_fields curr_resync_completed mddev 0 50273 NULL
+count_defcmd_set_50274_fields count defcmd_set 0 50274 NULL
+phys_amd76xrom_window_50277_fields phys amd76xrom_window 0 50277 NULL
+ath6kl_wmi_set_appie_cmd_fndecl_50289_fields ath6kl_wmi_set_appie_cmd fndecl 5-2 50289 NULL
-+mwifiex_append_rsn_ie_wpa_wpa2_fndecl_50296_fields mwifiex_append_rsn_ie_wpa_wpa2 fndecl 0 50296 NULL nohasharray
-+gpioled_count_f30_data_50296_fields gpioled_count f30_data 0 50296 &mwifiex_append_rsn_ie_wpa_wpa2_fndecl_50296_fields
++mwifiex_append_rsn_ie_wpa_wpa2_fndecl_50296_fields mwifiex_append_rsn_ie_wpa_wpa2 fndecl 0 50296 NULL
+insert_reserved_file_extent_fndecl_50316_fields insert_reserved_file_extent fndecl 6-3-7 50316 NULL
+__cfg80211_connect_result_fndecl_50317_fields __cfg80211_connect_result fndecl 4-6 50317 NULL
-+scif_rma_copy_fndecl_50320_fields scif_rma_copy fndecl 2-5-4-3 50320 NULL
++scif_rma_copy_fndecl_50320_fields scif_rma_copy fndecl 4-3-2-5 50320 NULL
+rbytes_ceph_mds_reply_inode_50321_fields rbytes ceph_mds_reply_inode 0 50321 NULL
+VST_kyrofb_info_50324_fields VST kyrofb_info 0 50324 NULL
+level_guest_walker64_50325_fields level guest_walker64 0 50325 NULL
+ucNumEntries__ATOM_PPLIB_CAC_Leakage_Table_50326_fields ucNumEntries _ATOM_PPLIB_CAC_Leakage_Table 0 50326 NULL
+pos_r5l_recovery_ctx_50328_fields pos r5l_recovery_ctx 0 50328 NULL
-+size_nand_ecc_ctrl_50335_fields size nand_ecc_ctrl 0 50335 NULL
++__vmalloc_node_fndecl_50335_fields __vmalloc_node fndecl 1 50335 NULL nohasharray
++size_nand_ecc_ctrl_50335_fields size nand_ecc_ctrl 0 50335 &__vmalloc_node_fndecl_50335_fields
+aim_read_fndecl_50336_fields aim_read fndecl 3 50336 NULL
+__copy_from_user_nocache_fndecl_50340_fields __copy_from_user_nocache fndecl 0 50340 NULL
+nextindex_xtheader_50354_fields nextindex xtheader 0 50354 NULL
@@ -200973,8 +205635,8 @@ index 0000000..6b5367db
+sd_max_rg_data_gfs2_sbd_50430_fields sd_max_rg_data gfs2_sbd 0 50430 NULL
+__vcc_connect_fndecl_50431_fields __vcc_connect fndecl 4-3 50431 NULL
+nilfs_gccache_submit_read_data_fndecl_50434_fields nilfs_gccache_submit_read_data fndecl 3-4 50434 NULL
-+nr_phys_segments_request_50449_fields nr_phys_segments request 0 50449 NULL nohasharray
-+nfsd4_encode_fattr_to_buf_fndecl_50449_fields nfsd4_encode_fattr_to_buf fndecl 2 50449 &nr_phys_segments_request_50449_fields
++nfsd4_encode_fattr_to_buf_fndecl_50449_fields nfsd4_encode_fattr_to_buf fndecl 2 50449 NULL nohasharray
++nr_phys_segments_request_50449_fields nr_phys_segments request 0 50449 &nfsd4_encode_fattr_to_buf_fndecl_50449_fields
+extra_tx_headroom_ieee802154_hw_50457_fields extra_tx_headroom ieee802154_hw 0 50457 NULL
+fec_read_parity_fndecl_50461_fields fec_read_parity fndecl 2-3 50461 NULL
+iscsi_iolen_cxgb4_lld_info_50467_fields iscsi_iolen cxgb4_lld_info 0 50467 NULL
@@ -200990,18 +205652,17 @@ index 0000000..6b5367db
+readahead_tree_block_fndecl_50505_fields readahead_tree_block fndecl 2 50505 NULL
+i2c_hid_output_report_fndecl_50508_fields i2c_hid_output_report fndecl 3 50508 NULL
+t4vf_pktgl_to_skb_fndecl_50510_fields t4vf_pktgl_to_skb fndecl 3 50510 NULL
-+usb_maxpacket_fndecl_50514_fields usb_maxpacket fndecl 0 50514 NULL nohasharray
-+adfs_fplus_read_fndecl_50514_fields adfs_fplus_read fndecl 2 50514 &usb_maxpacket_fndecl_50514_fields
++adfs_fplus_read_fndecl_50514_fields adfs_fplus_read fndecl 2 50514 NULL nohasharray
++usb_maxpacket_fndecl_50514_fields usb_maxpacket fndecl 0 50514 &adfs_fplus_read_fndecl_50514_fields
+len_nfs3_mkdirargs_50515_fields len nfs3_mkdirargs 0 50515 NULL
-+nframes_cdrom_read_audio_50517_fields nframes cdrom_read_audio 0 50517 NULL nohasharray
-+__alt_name_store_fndecl_50517_fields __alt_name_store fndecl 3 50517 &nframes_cdrom_read_audio_50517_fields
++nframes_cdrom_read_audio_50517_fields nframes cdrom_read_audio 0 50517 NULL
+ohci_urb_dequeue_fndecl_50529_fields ohci_urb_dequeue fndecl 3 50529 NULL
+rtmax_nfs_fsinfo_50537_fields rtmax nfs_fsinfo 0 50537 NULL nohasharray
+dccpd_seq_dccp_skb_cb_50537_fields dccpd_seq dccp_skb_cb 0 50537 &rtmax_nfs_fsinfo_50537_fields
+ext4_xattr_trusted_set_fndecl_50538_fields ext4_xattr_trusted_set fndecl 6 50538 NULL
+spi_rd8_fndecl_50555_fields spi_rd8 fndecl 0 50555 NULL
+frag_threshold_wiphy_50556_fields frag_threshold wiphy 0 50556 NULL
-+__blkdev_issue_zeroout_fndecl_50559_fields __blkdev_issue_zeroout fndecl 3-0-2 50559 NULL
++__blkdev_issue_zeroout_fndecl_50559_fields __blkdev_issue_zeroout fndecl 0-3-2 50559 NULL
+gen_pool_create_fndecl_50571_fields gen_pool_create fndecl 1 50571 NULL
+img_y_zoran_jpg_settings_50573_fields img_y zoran_jpg_settings 0 50573 NULL nohasharray
+W6692_empty_fifo_fndecl_50573_fields W6692_empty_fifo fndecl 2 50573 &img_y_zoran_jpg_settings_50573_fields
@@ -201009,7 +205670,6 @@ index 0000000..6b5367db
+_osd_req_alist_size_fndecl_50577_fields _osd_req_alist_size fndecl 0 50577 &hdr_len_ib_mad_send_buf_50577_fields
+xfs_attr_calc_size_fndecl_50579_fields xfs_attr_calc_size fndecl 0 50579 NULL
+length_fuse_page_desc_50581_fields length fuse_page_desc 0 50581 NULL
-+kcm_tcp_recv_fndecl_50586_fields kcm_tcp_recv fndecl 4-3 50586 NULL
+off2_xad_50592_fields off2 xad 0 50592 NULL
+count_ORANGEFS_dev_map_desc_50596_fields count ORANGEFS_dev_map_desc 0 50596 NULL
+intel_gtt_total_entries_fndecl_50599_fields intel_gtt_total_entries fndecl 0 50599 NULL
@@ -201032,11 +205692,10 @@ index 0000000..6b5367db
+f2fs_replace_block_fndecl_50663_fields f2fs_replace_block fndecl 4 50663 NULL
+ucNumEntries__ATOM_Tonga_SCLK_Dependency_Table_50666_fields ucNumEntries _ATOM_Tonga_SCLK_Dependency_Table 0 50666 NULL
+i915_gem_alloc_context_obj_fndecl_50671_fields i915_gem_alloc_context_obj fndecl 2 50671 NULL
-+nclips_bttv_overlay_50673_fields nclips bttv_overlay 0 50673 NULL
+dig_in_ca0132_spec_50677_fields dig_in ca0132_spec 0 50677 NULL
-+size_snd_util_memblk_50679_fields size snd_util_memblk 0 50679 NULL nohasharray
-+pci_iomap_wc_fndecl_50679_fields pci_iomap_wc fndecl 3 50679 &size_snd_util_memblk_50679_fields nohasharray
-+__kernfs_create_file_fndecl_50679_fields __kernfs_create_file fndecl 4 50679 &pci_iomap_wc_fndecl_50679_fields
++pci_iomap_wc_fndecl_50679_fields pci_iomap_wc fndecl 3 50679 NULL nohasharray
++__kernfs_create_file_fndecl_50679_fields __kernfs_create_file fndecl 4 50679 &pci_iomap_wc_fndecl_50679_fields nohasharray
++size_snd_util_memblk_50679_fields size snd_util_memblk 0 50679 &__kernfs_create_file_fndecl_50679_fields
+count_dm_io_region_50683_fields count dm_io_region 0 50683 NULL
+sr_offset_nfs42_seek_res_50684_fields sr_offset nfs42_seek_res 0 50684 NULL
+generic_permission_fndecl_50685_fields generic_permission fndecl 0 50685 NULL
@@ -201044,12 +205703,13 @@ index 0000000..6b5367db
+dm_bm_read_try_lock_fndecl_50688_fields dm_bm_read_try_lock fndecl 2 50688 NULL
+back_xfs_da3_icnode_hdr_50715_fields back xfs_da3_icnode_hdr 0 50715 NULL
+sc18is602_wait_ready_fndecl_50717_fields sc18is602_wait_ready fndecl 0 50717 NULL
-+num_lbufq_entries_ql3_adapter_50721_fields num_lbufq_entries ql3_adapter 0 50721 NULL nohasharray
-+ibnl_put_msg_fndecl_50721_fields ibnl_put_msg fndecl 4 50721 &num_lbufq_entries_ql3_adapter_50721_fields
++ibnl_put_msg_fndecl_50721_fields ibnl_put_msg fndecl 4 50721 NULL nohasharray
++num_lbufq_entries_ql3_adapter_50721_fields num_lbufq_entries ql3_adapter 0 50721 &ibnl_put_msg_fndecl_50721_fields
+mpdu_header_off_wcn36xx_pdu_50723_fields mpdu_header_off wcn36xx_pdu 0 50723 NULL
++print_hex_dump_bytes_fndecl_50726_fields print_hex_dump_bytes fndecl 4 50726 NULL
+max_table_count_acpi_table_list_50733_fields max_table_count acpi_table_list 0 50733 NULL
-+max_mr_size_ib_device_attr_50735_fields max_mr_size ib_device_attr 0 50735 NULL nohasharray
-+sector_size_blkfront_info_50735_fields sector_size blkfront_info 0 50735 &max_mr_size_ib_device_attr_50735_fields
++sector_size_blkfront_info_50735_fields sector_size blkfront_info 0 50735 NULL nohasharray
++max_mr_size_ib_device_attr_50735_fields max_mr_size ib_device_attr 0 50735 &sector_size_blkfront_info_50735_fields
+data_size_usbtouch_usb_50738_fields data_size usbtouch_usb 0 50738 NULL
+MaximumDataTransferSizeInBlocks_DAC960_V2_ControllerInfo_50742_fields MaximumDataTransferSizeInBlocks DAC960_V2_ControllerInfo 0 50742 NULL nohasharray
+rx_count_st_data_s_50742_fields rx_count st_data_s 0 50742 &MaximumDataTransferSizeInBlocks_DAC960_V2_ControllerInfo_50742_fields
@@ -201071,7 +205731,6 @@ index 0000000..6b5367db
+hpfs_map_dnode_fndecl_50813_fields hpfs_map_dnode fndecl 2 50813 NULL
+clkrc_ov7670_info_50815_fields clkrc ov7670_info 0 50815 NULL
+cdce925_regmap_i2c_read_fndecl_50819_fields cdce925_regmap_i2c_read fndecl 5 50819 NULL
-+rq_nvec_smb_rqst_50820_fields rq_nvec smb_rqst 0 50820 NULL
+xdr_read_pages_fndecl_50824_fields xdr_read_pages fndecl 2 50824 NULL nohasharray
+bcast_ring_order_vardecl_main_c_50824_fields bcast_ring_order vardecl_main.c 0 50824 &xdr_read_pages_fndecl_50824_fields
+t_tinc_data_rem_rds_tcp_connection_50828_fields t_tinc_data_rem rds_tcp_connection 0 50828 NULL
@@ -201081,20 +205740,18 @@ index 0000000..6b5367db
+_brk_end_vardecl_50849_fields _brk_end vardecl 0 50849 NULL
+journal_read_transaction_fndecl_50853_fields journal_read_transaction fndecl 2 50853 NULL
+x2_drm_clip_rect_50854_fields x2 drm_clip_rect 0 50854 NULL
-+fm10k_read_pci_cfg_word_fndecl_50857_fields fm10k_read_pci_cfg_word fndecl 0 50857 NULL
+dat_offset_brcmf_sdio_hdrinfo_50859_fields dat_offset brcmf_sdio_hdrinfo 0 50859 NULL
+rrpc_l2p_update_fndecl_50868_fields rrpc_l2p_update fndecl 1 50868 NULL
+alg_key_len_xfrm_algo_auth_50871_fields alg_key_len xfrm_algo_auth 0 50871 NULL
+mtu_adj_ipvl_dev_50874_fields mtu_adj ipvl_dev 0 50874 NULL
+collapse_huge_page_fndecl_50875_fields collapse_huge_page fndecl 2 50875 NULL
-+max_ceqs_i40iw_hmc_fpm_misc_50878_fields max_ceqs i40iw_hmc_fpm_misc 0 50878 NULL
+qib_read_kreg64_fndecl_50881_fields qib_read_kreg64 fndecl 0 50881 NULL
+get_ramdisk_image_fndecl_50888_fields get_ramdisk_image fndecl 0 50888 NULL
+size_t4_sq_50890_fields size t4_sq 0 50890 NULL
++xfs_trans_log_finish_refcount_update_fndecl_50891_fields xfs_trans_log_finish_refcount_update fndecl 5-6 50891 NULL
+gpu_offset_ttm_mem_type_manager_50894_fields gpu_offset ttm_mem_type_manager 0 50894 NULL
+nvkm_vm_create_fndecl_50895_fields nvkm_vm_create fndecl 3-2 50895 NULL
+netlbl_catmap_walkrng_fndecl_50910_fields netlbl_catmap_walkrng fndecl 2-0 50910 NULL
-+exofs_read_kern_fndecl_50914_fields exofs_read_kern fndecl 6 50914 NULL
+vnet_hdr_sz_tun_struct_50916_fields vnet_hdr_sz tun_struct 0 50916 NULL
+raid1_sync_request_fndecl_50917_fields raid1_sync_request fndecl 2 50917 NULL
+num_chunks_drm_radeon_cs_50925_fields num_chunks drm_radeon_cs 0 50925 NULL
@@ -201103,23 +205760,24 @@ index 0000000..6b5367db
+ssidLen_BSSListRid_50931_fields ssidLen BSSListRid 0 50931 NULL
+efs_map_block_fndecl_50932_fields efs_map_block fndecl 0-2 50932 NULL
+sge_pktshift_cxgb4_lld_info_50935_fields sge_pktshift cxgb4_lld_info 0 50935 NULL
-+send_reply_fndecl_50941_fields send_reply fndecl 6 50941 NULL
+__mnt_want_write_file_fndecl_50942_fields __mnt_want_write_file fndecl 0 50942 NULL
++hci_send_monitor_ctrl_event_fndecl_50944_fields hci_send_monitor_ctrl_event fndecl 4 50944 NULL
+ubi_start_update_fndecl_50948_fields ubi_start_update fndecl 3 50948 NULL
+sync_key_len_pvr2_ioread_50952_fields sync_key_len pvr2_ioread 0 50952 NULL
-+iser_prepare_write_cmd_fndecl_50953_fields iser_prepare_write_cmd fndecl 2 50953 NULL
++iser_prepare_write_cmd_fndecl_50953_fields iser_prepare_write_cmd fndecl 2 50953 NULL nohasharray
++brcmf_p2p_escan_fndecl_50953_fields brcmf_p2p_escan fndecl 2 50953 &iser_prepare_write_cmd_fndecl_50953_fields
+reg_list_size_radeon_rlc_50955_fields reg_list_size radeon_rlc 0 50955 NULL
+alloc_agpphysmem_i8xx_fndecl_50960_fields alloc_agpphysmem_i8xx fndecl 1 50960 NULL
+gamma_sd_gl860_50970_fields gamma sd_gl860 0 50970 NULL
++sdma_get_descq_cnt_fndecl_50975_fields sdma_get_descq_cnt fndecl 0 50975 NULL
+irq_ssb_device_50977_fields irq ssb_device 0 50977 NULL
+seq_start_offset_iscsi_cmd_50983_fields seq_start_offset iscsi_cmd 0 50983 NULL
+first_burst_len_iscsi_cmd_50987_fields first_burst_len iscsi_cmd 0 50987 NULL
+do_get_mempolicy_fndecl_50990_fields do_get_mempolicy fndecl 3 50990 NULL
+intel_tile_dims_fndecl_50992_fields intel_tile_dims fndecl 5 50992 NULL
-+pa_mic_mw_51003_fields pa mic_mw 0 51003 NULL nohasharray
-+cb_break_tail_afs_server_51003_fields cb_break_tail afs_server 0 51003 &pa_mic_mw_51003_fields
++cb_break_tail_afs_server_51003_fields cb_break_tail afs_server 0 51003 NULL nohasharray
++pa_mic_mw_51003_fields pa mic_mw 0 51003 &cb_break_tail_afs_server_51003_fields
+resize_size_resize_parms_51005_fields resize_size resize_parms 0 51005 NULL
-+soft_pp_table_size_pp_hwmgr_51014_fields soft_pp_table_size pp_hwmgr 0 51014 NULL
+room_ceph_pagelist_51016_fields room ceph_pagelist 0 51016 NULL
+num_of_queues_il_cfg_51023_fields num_of_queues il_cfg 0 51023 NULL
+img_sram_size_fw_hdr_51027_fields img_sram_size fw_hdr 0 51027 NULL
@@ -201133,8 +205791,7 @@ index 0000000..6b5367db
+fbmem_len_viafb_dev_51071_fields fbmem_len viafb_dev 0 51071 NULL
+i40iw_config_fpm_values_fndecl_51081_fields i40iw_config_fpm_values fndecl 2 51081 NULL
+size_p9_wstat_51083_fields size p9_wstat 0 51083 NULL
-+td_end_whc_qset_51089_fields td_end whc_qset 0 51089 NULL nohasharray
-+sr_write_cmd_fndecl_51089_fields sr_write_cmd fndecl 5 51089 &td_end_whc_qset_51089_fields
++td_end_whc_qset_51089_fields td_end whc_qset 0 51089 NULL
+order_mmc_test_pages_51098_fields order mmc_test_pages 0 51098 NULL
+namelen_hpfs_dirent_51099_fields namelen hpfs_dirent 0 51099 NULL
+ocfs2_file_llseek_fndecl_51102_fields ocfs2_file_llseek fndecl 2 51102 NULL
@@ -201146,14 +205803,16 @@ index 0000000..6b5367db
+len_garp_attr_hdr_51119_fields len garp_attr_hdr 0 51119 NULL
+ls_num_slots_dlm_ls_51120_fields ls_num_slots dlm_ls 0 51120 NULL
+new_read_fndecl_51123_fields new_read fndecl 2 51123 NULL
-+max_write_sge_ib_qp_51132_fields max_write_sge ib_qp 0 51132 NULL
++igb_pci_enable_sriov_fndecl_51131_fields igb_pci_enable_sriov fndecl 2 51131 NULL
++wqe_cnt_mlx4_ib_wq_51135_fields wqe_cnt mlx4_ib_wq 0 51135 NULL
+cachelsz_ath_common_51138_fields cachelsz ath_common 0 51138 NULL
+length_sky2_status_le_51139_fields length sky2_status_le 0 51139 NULL
+arg_start_mm_struct_51140_fields arg_start mm_struct 0 51140 NULL nohasharray
+fm_send_cmd_fndecl_51140_fields fm_send_cmd fndecl 5-0 51140 &arg_start_mm_struct_51140_fields nohasharray
+pin_2_irq_fndecl_51140_fields pin_2_irq fndecl 3 51140 &fm_send_cmd_fndecl_51140_fields nohasharray
+drm_dp_send_dpcd_write_fndecl_51140_fields drm_dp_send_dpcd_write fndecl 4 51140 &pin_2_irq_fndecl_51140_fields
-+num_rx_bnad_51141_fields num_rx bnad 0 51141 NULL
++xfs_bmap_finish_one_fndecl_51141_fields xfs_bmap_finish_one fndecl 6-7-8 51141 NULL nohasharray
++num_rx_bnad_51141_fields num_rx bnad 0 51141 &xfs_bmap_finish_one_fndecl_51141_fields
+set_dev_class_fndecl_51150_fields set_dev_class fndecl 4 51150 NULL nohasharray
+dm_exception_table_init_fndecl_51150_fields dm_exception_table_init fndecl 2 51150 &set_dev_class_fndecl_51150_fields
+sdio_readb_fndecl_51153_fields sdio_readb fndecl 0 51153 NULL
@@ -201162,15 +205821,15 @@ index 0000000..6b5367db
+max_sge_rd_ib_device_attr_51169_fields max_sge_rd ib_device_attr 0 51169 &bytes_per_pixel_osd_info_51169_fields
+raid10_takeover_raid0_fndecl_51171_fields raid10_takeover_raid0 fndecl 3-2 51171 NULL
+mc_cnt_ncsi_rsp_gc_pkt_51173_fields mc_cnt ncsi_rsp_gc_pkt 0 51173 NULL
-+per_vf_cids_qed_src_iids_51181_fields per_vf_cids qed_src_iids 0 51181 NULL nohasharray
-+splice_write_null_fndecl_51181_fields splice_write_null fndecl 4 51181 &per_vf_cids_qed_src_iids_51181_fields
++splice_write_null_fndecl_51181_fields splice_write_null fndecl 4 51181 NULL nohasharray
++per_vf_cids_qed_src_iids_51181_fields per_vf_cids qed_src_iids 0 51181 &splice_write_null_fndecl_51181_fields
+convert_extent_bit_fndecl_51191_fields convert_extent_bit fndecl 3-2 51191 NULL
+mlx5_ib_invalidate_range_fndecl_51195_fields mlx5_ib_invalidate_range fndecl 2 51195 NULL
+pfkey_sockaddr_size_fndecl_51198_fields pfkey_sockaddr_size fndecl 0 51198 NULL
+btrfs_extent_same_fndecl_51200_fields btrfs_extent_same fndecl 2-5 51200 NULL
-+max_num_vringh_kiov_51202_fields max_num vringh_kiov 0 51202 NULL
+cirrus_ttm_tt_create_fndecl_51204_fields cirrus_ttm_tt_create fndecl 2 51204 NULL
+vcc_recvmsg_fndecl_51205_fields vcc_recvmsg fndecl 3 51205 NULL
++goodix_i2c_write_fndecl_51209_fields goodix_i2c_write fndecl 4 51209 NULL
+phys_vram_area_51217_fields phys vram_area 0 51217 NULL
+vsi_oltext_vxfs_sb_info_51222_fields vsi_oltext vxfs_sb_info 0 51222 NULL
+mem_cgroup_count_precharge_pte_range_fndecl_51229_fields mem_cgroup_count_precharge_pte_range fndecl 2 51229 NULL
@@ -201179,15 +205838,16 @@ index 0000000..6b5367db
+unlinked_urb_51246_fields unlinked urb 0 51246 NULL
+max_desc_sz_mthca_limits_51248_fields max_desc_sz mthca_limits 0 51248 NULL
+max_gs_mlx4_ib_wq_51251_fields max_gs mlx4_ib_wq 0 51251 NULL nohasharray
-+cdev_add_fndecl_51251_fields cdev_add fndecl 3-2 51251 &max_gs_mlx4_ib_wq_51251_fields
++cdev_add_fndecl_51251_fields cdev_add fndecl 2 51251 &max_gs_mlx4_ib_wq_51251_fields
+maxdatafieldsize_vnic_fc_config_51275_fields maxdatafieldsize vnic_fc_config 0 51275 NULL
-+xfs_rtallocate_range_fndecl_51292_fields xfs_rtallocate_range fndecl 3-4-0 51292 NULL nohasharray
-+osd_req_list_partition_collections_fndecl_51292_fields osd_req_list_partition_collections fndecl 5 51292 &xfs_rtallocate_range_fndecl_51292_fields
++xfs_rtallocate_range_fndecl_51292_fields xfs_rtallocate_range fndecl 3-4-0 51292 NULL
+first_burst_iscsi_bus_flash_session_51294_fields first_burst iscsi_bus_flash_session 0 51294 NULL
+size_autofs_dev_ioctl_51298_fields size autofs_dev_ioctl 0 51298 NULL
+iscsi_ping_comp_event_fndecl_51300_fields iscsi_ping_comp_event fndecl 5 51300 NULL
+xfs_qm_dqrepair_fndecl_51301_fields xfs_qm_dqrepair fndecl 0 51301 NULL
+y2_virtio_gpu_framebuffer_51309_fields y2 virtio_gpu_framebuffer 0 51309 NULL
++count_gb_gpio_line_count_response_51314_fields count gb_gpio_line_count_response 0 51314 NULL
++drv_sds_rings_qlcnic_adapter_51319_fields drv_sds_rings qlcnic_adapter 0 51319 NULL
+size_bts_phys_51332_fields size bts_phys 0 51332 NULL
+sync_dma_snd_usb_endpoint_51333_fields sync_dma snd_usb_endpoint 0 51333 NULL
+skb_put_frags_fndecl_51337_fields skb_put_frags fndecl 2-3 51337 NULL
@@ -201202,27 +205862,27 @@ index 0000000..6b5367db
+ida_simple_get_fndecl_51365_fields ida_simple_get fndecl 0 51365 NULL nohasharray
+la_size_sect_drbd_md_51365_fields la_size_sect drbd_md 0 51365 &ida_simple_get_fndecl_51365_fields
+sb_logblocks_xfs_sb_51372_fields sb_logblocks xfs_sb 0 51372 NULL
-+i915_ggtt_view_size_fndecl_51385_fields i915_ggtt_view_size fndecl 0 51385 NULL
+ath6kl_wmi_addkey_cmd_fndecl_51389_fields ath6kl_wmi_addkey_cmd fndecl 2 51389 NULL
+reshape_progress_r10conf_51390_fields reshape_progress r10conf 0 51390 NULL
+size_hbucket_51397_fields size hbucket 0 51397 NULL
++nau8825_mclk_prepare_fndecl_51407_fields nau8825_mclk_prepare fndecl 2 51407 NULL
+ext4_ext_next_allocated_block_fndecl_51410_fields ext4_ext_next_allocated_block fndecl 0 51410 NULL
+max_amsdu_len_ieee80211_sta_51415_fields max_amsdu_len ieee80211_sta 0 51415 NULL
+max_header_size_irnet_socket_51423_fields max_header_size irnet_socket 0 51423 NULL
+base_memblock_region_51424_fields base memblock_region 0 51424 NULL
++num_rx_queues_ixgbevf_adapter_51428_fields num_rx_queues ixgbevf_adapter 0 51428 NULL
+gre_parse_header_fndecl_51433_fields gre_parse_header fndecl 0-5 51433 NULL
-+mixer_channels_fw_spkr_51437_fields mixer_channels fw_spkr 0 51437 NULL
+nethctrl_vf_resources_51438_fields nethctrl vf_resources 0 51438 NULL nohasharray
+size_omap3isp_ccdc_lsc_config_51438_fields size omap3isp_ccdc_lsc_config 0 51438 &nethctrl_vf_resources_51438_fields
-+pyra_sysfs_write_fndecl_51441_fields pyra_sysfs_write fndecl 6 51441 NULL
++max_cmds_ipr_ioa_cfg_51439_fields max_cmds ipr_ioa_cfg 0 51439 NULL
+xfs_free_file_space_fndecl_51452_fields xfs_free_file_space fndecl 2-3 51452 NULL
+pcpu_fc_free_fndecl_51456_fields pcpu_fc_free fndecl 2 51456 NULL
-+nr_segments_blkif_request_indirect_51457_fields nr_segments blkif_request_indirect 0 51457 NULL
-+size_hashlimit_cfg1_51460_fields size hashlimit_cfg1 0 51460 NULL
+rx_urb_size_usbnet_51461_fields rx_urb_size usbnet 0 51461 NULL
+nTxLock_vardecl_jfs_txnmgr_c_51464_fields nTxLock vardecl_jfs_txnmgr.c 0 51464 NULL
+ext4_xattr_user_set_fndecl_51477_fields ext4_xattr_user_set fndecl 6 51477 NULL nohasharray
+orig_offset_iscsi_seq_51477_fields orig_offset iscsi_seq 0 51477 &ext4_xattr_user_set_fndecl_51477_fields
++cdns_uart_set_baud_rate_fndecl_51478_fields cdns_uart_set_baud_rate fndecl 0-2 51478 NULL
++vb2_dma_sg_alloc_fndecl_51480_fields vb2_dma_sg_alloc fndecl 3 51480 NULL
+finish_urb_fndecl_51484_fields finish_urb fndecl 3 51484 NULL
+xlog_alloc_log_fndecl_51486_fields xlog_alloc_log fndecl 3-4 51486 NULL
+log_blocksize_f2fs_super_block_51487_fields log_blocksize f2fs_super_block 0 51487 NULL
@@ -201230,26 +205890,22 @@ index 0000000..6b5367db
+inftl_readblock_fndecl_51508_fields inftl_readblock fndecl 2 51508 NULL
+xfer_len_scb_platform_data_51509_fields xfer_len scb_platform_data 0 51509 NULL
+count_atl1_tpd_ring_51510_fields count atl1_tpd_ring 0 51510 NULL
-+pkt_alloc_packet_data_fndecl_51515_fields pkt_alloc_packet_data fndecl 1 51515 NULL
+size_fb_pixmap_51528_fields size fb_pixmap 0 51528 NULL
+mft_no__ntfs_inode_51541_fields mft_no _ntfs_inode 0 51541 NULL
+len_hfa384x_info_frame_51543_fields len hfa384x_info_frame 0 51543 NULL
-+scan_bytes_iio_dev_51546_fields scan_bytes iio_dev 0 51546 NULL
+segCnt_Vmxnet3_RxCompDescExt_51547_fields segCnt Vmxnet3_RxCompDescExt 0 51547 NULL
+buffer_size_snd_emu10k1_fx8010_pcm_rec_51548_fields buffer_size snd_emu10k1_fx8010_pcm_rec 0 51548 NULL
++rcv_buf_bytes_vardecl_usbatm_c_51558_fields rcv_buf_bytes vardecl_usbatm.c 0 51558 NULL
+residual_len_vscsiif_response_51559_fields residual_len vscsiif_response 0 51559 NULL
+size_mdp_superblock_1_51572_fields size mdp_superblock_1 0 51572 NULL
-+netxen_nic_change_mtu_fndecl_51573_fields netxen_nic_change_mtu fndecl 2 51573 NULL nohasharray
-+rds_rdma_extra_size_fndecl_51573_fields rds_rdma_extra_size fndecl 0 51573 &netxen_nic_change_mtu_fndecl_51573_fields
-+of_regulator_match_fndecl_51576_fields of_regulator_match fndecl 0 51576 NULL
-+aio_setup_vectored_rw_fndecl_51577_fields aio_setup_vectored_rw fndecl 3 51577 NULL
++netxen_nic_change_mtu_fndecl_51573_fields netxen_nic_change_mtu fndecl 2 51573 NULL
+s_writeshift_logfs_super_51578_fields s_writeshift logfs_super 0 51578 NULL
+i_blkno_ocfs2_dinode_51582_fields i_blkno ocfs2_dinode 0 51582 NULL
+ufs_commit_chunk_fndecl_51591_fields ufs_commit_chunk fndecl 3 51591 NULL
+rx_buf_missing_hso_net_51595_fields rx_buf_missing hso_net 0 51595 NULL
-+klsi_105_prepare_write_buffer_fndecl_51599_fields klsi_105_prepare_write_buffer fndecl 3 51599 NULL nohasharray
-+ep_count_bytes_remain_fndecl_51599_fields ep_count_bytes_remain fndecl 0 51599 &klsi_105_prepare_write_buffer_fndecl_51599_fields nohasharray
-+af9013_wr_regs_i2c_fndecl_51599_fields af9013_wr_regs_i2c fndecl 5 51599 &ep_count_bytes_remain_fndecl_51599_fields
++ep_count_bytes_remain_fndecl_51599_fields ep_count_bytes_remain fndecl 0 51599 NULL nohasharray
++klsi_105_prepare_write_buffer_fndecl_51599_fields klsi_105_prepare_write_buffer fndecl 3 51599 &ep_count_bytes_remain_fndecl_51599_fields nohasharray
++af9013_wr_regs_i2c_fndecl_51599_fields af9013_wr_regs_i2c fndecl 5 51599 &klsi_105_prepare_write_buffer_fndecl_51599_fields
+receive_mergeable_fndecl_51601_fields receive_mergeable fndecl 5-4 51601 NULL
+va_for_temp_scif_window_51603_fields va_for_temp scif_window 0 51603 NULL
+cur_vfio_pci_fill_info_51616_fields cur vfio_pci_fill_info 0 51616 NULL nohasharray
@@ -201260,61 +205916,62 @@ index 0000000..6b5367db
+nodesize_btrfs_root_51633_fields nodesize btrfs_root 0 51633 NULL
+SsidLength_ndis_802_11_ssid_51638_fields SsidLength ndis_802_11_ssid 0 51638 NULL
+remap_cell_to_cache_dirty_fndecl_51640_fields remap_cell_to_cache_dirty fndecl 4 51640 NULL
-+amdgpu_cgs_add_irq_source_fndecl_51642_fields amdgpu_cgs_add_irq_source fndecl 3 51642 NULL
+imm_count_jit_ctx_51643_fields imm_count jit_ctx 0 51643 NULL
+tx_ring_size_gfar_priv_tx_q_51655_fields tx_ring_size gfar_priv_tx_q 0 51655 NULL
+o2hb_read_slots_fndecl_51658_fields o2hb_read_slots fndecl 2 51658 NULL
-+create_cache_fndecl_51660_fields create_cache fndecl 3-4-2 51660 NULL
+phys_mdio_mux_mmioreg_state_51673_fields phys mdio_mux_mmioreg_state 0 51673 NULL
+tcf_csum_ipv4_udp_fndecl_51674_fields tcf_csum_ipv4_udp fndecl 3 51674 NULL nohasharray
+seq_create_client1_fndecl_51674_fields seq_create_client1 fndecl 2 51674 &tcf_csum_ipv4_udp_fndecl_51674_fields
+nr_dirtied_task_struct_51675_fields nr_dirtied task_struct 0 51675 NULL
-+ls_num_nodes_dlm_ls_51681_fields ls_num_nodes dlm_ls 0 51681 NULL nohasharray
-+vmw_kms_present_fndecl_51681_fields vmw_kms_present fndecl 9 51681 &ls_num_nodes_dlm_ls_51681_fields
++vmw_kms_present_fndecl_51681_fields vmw_kms_present fndecl 9 51681 NULL nohasharray
++ls_num_nodes_dlm_ls_51681_fields ls_num_nodes dlm_ls 0 51681 &vmw_kms_present_fndecl_51681_fields
+virtio_gpu_object_create_fndecl_51692_fields virtio_gpu_object_create fndecl 2 51692 NULL nohasharray
+extsize_xfs_growfs_rt_51692_fields extsize xfs_growfs_rt 0 51692 &virtio_gpu_object_create_fndecl_51692_fields
+rtl8169_change_mtu_fndecl_51693_fields rtl8169_change_mtu fndecl 2 51693 NULL
-+ms_os_descs_ext_prop_data_len_ffs_data_51698_fields ms_os_descs_ext_prop_data_len ffs_data 0 51698 NULL nohasharray
-+pa_credit_return_base_51698_fields pa credit_return_base 0 51698 &ms_os_descs_ext_prop_data_len_ffs_data_51698_fields
++ms_os_descs_ext_prop_data_len_ffs_data_51698_fields ms_os_descs_ext_prop_data_len ffs_data 0 51698 NULL
+gfx_v7_0_get_csb_size_fndecl_51701_fields gfx_v7_0_get_csb_size fndecl 0 51701 NULL
++xfs_ag_resv_free_extent_fndecl_51705_fields xfs_ag_resv_free_extent fndecl 4 51705 NULL
+bNumMMCIEs_usb_wa_descriptor_51706_fields bNumMMCIEs usb_wa_descriptor 0 51706 NULL
+reqsize_crypto_skcipher_51708_fields reqsize crypto_skcipher 0 51708 NULL
+nilfs_write_end_fndecl_51713_fields nilfs_write_end fndecl 5 51713 NULL
+mwifiex_cmd_append_11n_tlv_fndecl_51715_fields mwifiex_cmd_append_11n_tlv fndecl 0 51715 NULL nohasharray
+ubifs_scan_fndecl_51715_fields ubifs_scan fndecl 3 51715 &mwifiex_cmd_append_11n_tlv_fndecl_51715_fields
-+tt_stat_ofs_cyttsp4_sysinfo_ofs_51717_fields tt_stat_ofs cyttsp4_sysinfo_ofs 0 51717 NULL
++iscsit_dump_data_payload_fndecl_51720_fields iscsit_dump_data_payload fndecl 2 51720 NULL
+rx_ring_num_mlx4_en_priv_51723_fields rx_ring_num mlx4_en_priv 0 51723 NULL
+MaxChainDepth__MSG_IOC_FACTS_REPLY_51731_fields MaxChainDepth _MSG_IOC_FACTS_REPLY 0 51731 NULL
+xfs_da3_node_create_fndecl_51737_fields xfs_da3_node_create fndecl 2 51737 NULL
+start_falloc_range_51744_fields start falloc_range 0 51744 NULL
-+qed_cxt_set_proto_cid_count_fndecl_51748_fields qed_cxt_set_proto_cid_count fndecl 4-3 51748 NULL nohasharray
-+bnx2_change_ring_size_fndecl_51748_fields bnx2_change_ring_size fndecl 3-2 51748 &qed_cxt_set_proto_cid_count_fndecl_51748_fields
++bnx2_change_ring_size_fndecl_51748_fields bnx2_change_ring_size fndecl 3-2 51748 NULL nohasharray
++qed_cxt_set_proto_cid_count_fndecl_51748_fields qed_cxt_set_proto_cid_count fndecl 3-4 51748 &bnx2_change_ring_size_fndecl_51748_fields
++value_snd_soc_tplg_vendor_value_elem_51750_fields value snd_soc_tplg_vendor_value_elem 0 51750 NULL
+sie_num_c67x00_sie_51754_fields sie_num c67x00_sie 0 51754 NULL
++sd_size_stat_data_v1_51758_fields sd_size stat_data_v1 0 51758 NULL
+find_next_usable_block_fndecl_51759_fields find_next_usable_block fndecl 0 51759 NULL
+rxbuf_size_alx_priv_51766_fields rxbuf_size alx_priv 0 51766 NULL
+vb2_dma_contig_set_max_seg_size_fndecl_51767_fields vb2_dma_contig_set_max_seg_size fndecl 2 51767 NULL
+ls_slot_dlm_ls_51774_fields ls_slot dlm_ls 0 51774 NULL
-+rbio_add_io_page_fndecl_51775_fields rbio_add_io_page fndecl 5-6 51775 NULL
++rbio_add_io_page_fndecl_51775_fields rbio_add_io_page fndecl 5 51775 NULL
+s_blocksize_reiserfs_super_block_v1_51777_fields s_blocksize reiserfs_super_block_v1 0 51777 NULL
+SSID_size_atmel_private_51778_fields SSID_size atmel_private 0 51778 NULL
+snd_rme32_capture_getrate_fndecl_51779_fields snd_rme32_capture_getrate fndecl 0 51779 NULL
++msb_do_read_request_fndecl_51789_fields msb_do_read_request fndecl 2 51789 NULL
+pci_bar2_map_lpfc_hba_51792_fields pci_bar2_map lpfc_hba 0 51792 NULL
+ns_nextnum_the_nilfs_51797_fields ns_nextnum the_nilfs 0 51797 NULL
+uar_page_size_mlx4_caps_51798_fields uar_page_size mlx4_caps 0 51798 NULL
+reg_size_mtk_nfc_fdm_51803_fields reg_size mtk_nfc_fdm 0 51803 NULL
+si476x_core_i2c_xfer_fndecl_51818_fields si476x_core_i2c_xfer fndecl 4 51818 NULL
+val_ulist_node_51819_fields val ulist_node 0 51819 NULL
-+bcache_device_init_fndecl_51822_fields bcache_device_init fndecl 2 51822 NULL
++bcache_device_init_fndecl_51822_fields bcache_device_init fndecl 2-3 51822 NULL
+isac_empty_fifo_fndecl_51832_fields isac_empty_fifo fndecl 2 51832 NULL
+udf_readpages_fndecl_51834_fields udf_readpages fndecl 4 51834 NULL
+hde_ast_vbios_enhtable_51835_fields hde ast_vbios_enhtable 0 51835 NULL
+xfs_bmap_btalloc_filestreams_fndecl_51838_fields xfs_bmap_btalloc_filestreams fndecl 0 51838 NULL
++n_window_iwl_txq_51842_fields n_window iwl_txq 0 51842 NULL
+mmio_len_mb862xxfb_par_51844_fields mmio_len mb862xxfb_par 0 51844 NULL
+xfs_qm_dqiter_bufs_fndecl_51846_fields xfs_qm_dqiter_bufs fndecl 3 51846 NULL
+max_bdi_bd_list_51847_fields max_bdi bd_list 0 51847 NULL
+free_size_jffs2_eraseblock_51848_fields free_size jffs2_eraseblock 0 51848 NULL
+mlx5e_rx_wqes_to_packets_fndecl_51860_fields mlx5e_rx_wqes_to_packets fndecl 0-3 51860 NULL
-+slab_order_fndecl_51865_fields slab_order fndecl 0 51865 NULL
+TupleDataLen_tuple_t_51870_fields TupleDataLen tuple_t 0 51870 NULL
+efs_get_block_fndecl_51871_fields efs_get_block fndecl 2 51871 NULL
+rho2_7ls_hybla_51873_fields rho2_7ls hybla 0 51873 NULL
@@ -201334,13 +205991,13 @@ index 0000000..6b5367db
+xfs_dir_createname_fndecl_51936_fields xfs_dir_createname fndecl 7 51936 NULL
+__fswab16_fndecl_51937_fields __fswab16 fndecl 0-1 51937 NULL
+len_probe_resp_51942_fields len probe_resp 0 51942 NULL
++nci_core_conn_create_fndecl_51946_fields nci_core_conn_create fndecl 4 51946 NULL
+len_fscrypt_symlink_data_51950_fields len fscrypt_symlink_data 0 51950 NULL nohasharray
+rsi_mgmt_pkt_to_core_fndecl_51950_fields rsi_mgmt_pkt_to_core fndecl 3 51950 &len_fscrypt_symlink_data_51950_fields
+size_mdp_superblock_s_51954_fields size mdp_superblock_s 0 51954 NULL
+max_channels_efx_nic_51955_fields max_channels efx_nic 0 51955 NULL nohasharray
+__remaining_sg_mapping_iter_51955_fields __remaining sg_mapping_iter 0 51955 &max_channels_efx_nic_51955_fields nohasharray
-+num_mpt_mlx4_profile_51955_fields num_mpt mlx4_profile 0 51955 &__remaining_sg_mapping_iter_51955_fields nohasharray
-+start_drm_i915_error_state_buf_51955_fields start drm_i915_error_state_buf 0 51955 &num_mpt_mlx4_profile_51955_fields
++num_mpt_mlx4_profile_51955_fields num_mpt mlx4_profile 0 51955 &__remaining_sg_mapping_iter_51955_fields
+meta_total_blocks_r5l_recovery_ctx_51960_fields meta_total_blocks r5l_recovery_ctx 0 51960 NULL
+pipe_src_w_intel_crtc_state_51963_fields pipe_src_w intel_crtc_state 0 51963 NULL nohasharray
+submit_bio_wait_fndecl_51963_fields submit_bio_wait fndecl 0 51963 &pipe_src_w_intel_crtc_state_51963_fields nohasharray
@@ -201350,11 +206007,13 @@ index 0000000..6b5367db
+should_error_unserviceable_bio_fndecl_51968_fields should_error_unserviceable_bio fndecl 0 51968 &pad_bits_regmap_config_51968_fields
+asix_write_cmd_async_fndecl_51975_fields asix_write_cmd_async fndecl 5 51975 NULL
+insert_one_name_fndecl_51977_fields insert_one_name fndecl 6 51977 NULL
++pmcraid_copy_sglist_fndecl_51980_fields pmcraid_copy_sglist fndecl 3 51980 NULL
+pcnet32_realloc_tx_ring_fndecl_51983_fields pcnet32_realloc_tx_ring fndecl 3 51983 NULL
+bus_num_sm501_platdata_gpio_i2c_51989_fields bus_num sm501_platdata_gpio_i2c 0 51989 NULL
+ocfs2_which_cluster_group_fndecl_51998_fields ocfs2_which_cluster_group fndecl 0-2 51998 NULL
-+size_fuse_write_out_52017_fields size fuse_write_out 0 52017 NULL nohasharray
-+immediate_data_length_iscsi_build_list_52017_fields immediate_data_length iscsi_build_list 0 52017 &size_fuse_write_out_52017_fields
++mlx5_query_port_ptys_fndecl_52003_fields mlx5_query_port_ptys fndecl 3 52003 NULL
++immediate_data_length_iscsi_build_list_52017_fields immediate_data_length iscsi_build_list 0 52017 NULL nohasharray
++size_fuse_write_out_52017_fields size fuse_write_out 0 52017 &immediate_data_length_iscsi_build_list_52017_fields
+batadv_iv_ogm_aggregate_new_fndecl_52022_fields batadv_iv_ogm_aggregate_new fndecl 2 52022 NULL
+dev_set_mtu_fndecl_52028_fields dev_set_mtu fndecl 2 52028 NULL
+bounce_buf_len_xhci_ring_52035_fields bounce_buf_len xhci_ring 0 52035 NULL
@@ -201367,21 +206026,25 @@ index 0000000..6b5367db
+num_controls_op_x86_model_spec_52044_fields num_controls op_x86_model_spec 0 52044 NULL
+min_initial_entries_vmw_cotable_info_52048_fields min_initial_entries vmw_cotable_info 0 52048 NULL
+section_size_nvsp_1_message_send_send_buffer_complete_52050_fields section_size nvsp_1_message_send_send_buffer_complete 0 52050 NULL
-+iomap_zero_range_actor_fndecl_52051_fields iomap_zero_range_actor fndecl 3-2 52051 NULL
++iomap_zero_range_actor_fndecl_52051_fields iomap_zero_range_actor fndecl 2-3 52051 NULL
+cxgb_change_mtu_fndecl_52055_fields cxgb_change_mtu fndecl 2 52055 NULL
+scif_register_fndecl_52065_fields scif_register fndecl 3 52065 NULL
+nid_node_info_52075_fields nid node_info 0 52075 NULL
+lpfc_bsg_copy_data_fndecl_52084_fields lpfc_bsg_copy_data fndecl 0-3 52084 NULL
-+nvbios_rd32_fndecl_52086_fields nvbios_rd32 fndecl 0 52086 NULL
++ext4_xattr_shift_entries_fndecl_52086_fields ext4_xattr_shift_entries fndecl 2 52086 NULL
++assoc_rem_len_amp_ctrl_52099_fields assoc_rem_len amp_ctrl 0 52099 NULL
++drv_tx_rings_qlcnic_adapter_52102_fields drv_tx_rings qlcnic_adapter 0 52102 NULL
+ceph_handle_auth_reply_fndecl_52105_fields ceph_handle_auth_reply fndecl 0 52105 NULL nohasharray
+btindex_jfs_inode_info_52105_fields btindex jfs_inode_info 0 52105 &ceph_handle_auth_reply_fndecl_52105_fields
+attr_bytes_osdv1_attributes_list_element_52106_fields attr_bytes osdv1_attributes_list_element 0 52106 NULL
-+MaxDevices__MSG_PORT_FACTS_REPLY_52112_fields MaxDevices _MSG_PORT_FACTS_REPLY 0 52112 NULL
++mmc_test_nonblock_transfer_fndecl_52112_fields mmc_test_nonblock_transfer fndecl 6-5-3 52112 NULL nohasharray
++MaxDevices__MSG_PORT_FACTS_REPLY_52112_fields MaxDevices _MSG_PORT_FACTS_REPLY 0 52112 &mmc_test_nonblock_transfer_fndecl_52112_fields
+mlx4_ib_db_map_user_fndecl_52114_fields mlx4_ib_db_map_user fndecl 2 52114 NULL
+max3421_transfer_out_done_fndecl_52121_fields max3421_transfer_out_done fndecl 0 52121 NULL nohasharray
+length_wsm_update_ie_52121_fields length wsm_update_ie 0 52121 &max3421_transfer_out_done_fndecl_52121_fields
+db_page_mthca_create_srq_52122_fields db_page mthca_create_srq 0 52122 NULL
+mtu_cmtp_session_52125_fields mtu cmtp_session 0 52125 NULL
++fjes_hw_get_max_epid_fndecl_52129_fields fjes_hw_get_max_epid fndecl 0 52129 NULL
+iscsi_sw_tcp_recv_fndecl_52131_fields iscsi_sw_tcp_recv fndecl 3 52131 NULL
+ima_read_xattr_fndecl_52132_fields ima_read_xattr fndecl 0 52132 NULL
+s_inode_size_ext2_sb_info_52134_fields s_inode_size ext2_sb_info 0 52134 NULL
@@ -201391,7 +206054,9 @@ index 0000000..6b5367db
+tcp_update_reordering_fndecl_52147_fields tcp_update_reordering fndecl 2 52147 &tcp_sendmsg_fndecl_52147_fields
+set_le_ih_k_type_fndecl_52149_fields set_le_ih_k_type fndecl 2 52149 NULL
+pep_indicate_fndecl_52160_fields pep_indicate fndecl 5 52160 NULL
-+mpx_mmap_fndecl_52167_fields mpx_mmap fndecl 1-0 52167 NULL
++indirect_sg_entries_vardecl_ib_srp_c_52165_fields indirect_sg_entries vardecl_ib_srp.c 0 52165 NULL
++mpx_mmap_fndecl_52167_fields mpx_mmap fndecl 1-0 52167 NULL nohasharray
++max_wqe_qed_rdma_device_52167_fields max_wqe qed_rdma_device 0 52167 &mpx_mmap_fndecl_52167_fields
+nf_ct_sack_adjust_fndecl_52168_fields nf_ct_sack_adjust fndecl 2 52168 NULL
+mtdchar_lseek_fndecl_52170_fields mtdchar_lseek fndecl 2 52170 NULL
+reserved_operations_rvt_driver_params_52173_fields reserved_operations rvt_driver_params 0 52173 NULL
@@ -201408,16 +206073,15 @@ index 0000000..6b5367db
+num_dtv_properties_52216_fields num dtv_properties 0 52216 NULL
+numlower_ovl_entry_52218_fields numlower ovl_entry 0 52218 NULL
+max_sge_rvt_rq_52222_fields max_sge rvt_rq 0 52222 NULL
-+cp2112_write_read_req_fndecl_52230_fields cp2112_write_read_req fndecl 0-6 52230 NULL
+BlockSize_erase_unit_header_t_52231_fields BlockSize erase_unit_header_t 0 52231 NULL
+lpc_sch_get_io_fndecl_52232_fields lpc_sch_get_io fndecl 5 52232 NULL
+nfs3_proc_readlink_fndecl_52235_fields nfs3_proc_readlink fndecl 4-3 52235 NULL
+devm_nvdimm_memremap_fndecl_52240_fields devm_nvdimm_memremap fndecl 3-2 52240 NULL
+num_ports_mthca_limits_52246_fields num_ports mthca_limits 0 52246 NULL
-+paddr_drm_gem_cma_object_52250_fields paddr drm_gem_cma_object 0 52250 NULL
++paddr_drm_gem_cma_object_52250_fields paddr drm_gem_cma_object 0 52250 NULL nohasharray
++size_elf_note_info_52250_fields size elf_note_info 0 52250 &paddr_drm_gem_cma_object_52250_fields
+ceph_osdc_alloc_messages_fndecl_52252_fields ceph_osdc_alloc_messages fndecl 0 52252 NULL
-+snd_hda_get_conn_list_fndecl_52255_fields snd_hda_get_conn_list fndecl 0 52255 NULL nohasharray
-+kmemleak_alloc_percpu_fndecl_52255_fields kmemleak_alloc_percpu fndecl 2 52255 &snd_hda_get_conn_list_fndecl_52255_fields
++get_count_order_long_fndecl_52255_fields get_count_order_long fndecl 0 52255 NULL
+bufsize_brcmf_console_52266_fields bufsize brcmf_console 0 52266 NULL
+value_len_xattr_52269_fields value_len xattr 0 52269 NULL nohasharray
+pd_idx_stripe_head_52269_fields pd_idx stripe_head 0 52269 &value_len_xattr_52269_fields
@@ -201425,17 +206089,20 @@ index 0000000..6b5367db
+hdsp_set_rate_fndecl_52271_fields hdsp_set_rate fndecl 2 52271 &req_depth_pvscsi_adapter_52271_fields nohasharray
+hfsplus_ext_find_block_fndecl_52271_fields hfsplus_ext_find_block fndecl 0-2 52271 &hdsp_set_rate_fndecl_52271_fields
+set_multcount_fndecl_52272_fields set_multcount fndecl 2 52272 NULL
-+num_leds_adp5520_leds_platform_data_52273_fields num_leds adp5520_leds_platform_data 0 52273 NULL
+hlen_raw_frag_vec_52276_fields hlen raw_frag_vec 0 52276 NULL
+length_sigma_fw_chunk_52285_fields length sigma_fw_chunk 0 52285 NULL
+hpfs_alloc_dnode_fndecl_52288_fields hpfs_alloc_dnode fndecl 2 52288 NULL
+read_pointer_osst_buffer_52292_fields read_pointer osst_buffer 0 52292 NULL
+reserve_low_vardecl_setup_c_52293_fields reserve_low vardecl_setup.c 0 52293 NULL
+error_submit_bio_ret_52294_fields error submit_bio_ret 0 52294 NULL
++shift_sbitmap_52297_fields shift sbitmap 0 52297 NULL
++npage_vwork_52298_fields npage vwork 0 52298 NULL
+slot_legacy_probe_52300_fields slot legacy_probe 0 52300 NULL
+setup_items_for_insert_fndecl_52301_fields setup_items_for_insert fndecl 7 52301 NULL
+origin_size_thin_c_52302_fields origin_size thin_c 0 52302 NULL
++cluster_list_del_first_fndecl_52304_fields cluster_list_del_first fndecl 0 52304 NULL
+length_rxe_opcode_info_52306_fields length rxe_opcode_info 0 52306 NULL
++alloc_page_ext_fndecl_52310_fields alloc_page_ext fndecl 1 52310 NULL
+h_stop_saa7134_tvnorm_52311_fields h_stop saa7134_tvnorm 0 52311 NULL
+rss_table_entry_width_i40e_hw_capabilities_52312_fields rss_table_entry_width i40e_hw_capabilities 0 52312 NULL
+btrfs_delalloc_reserve_space_fndecl_52314_fields btrfs_delalloc_reserve_space fndecl 0-3-2 52314 NULL
@@ -201447,25 +206114,25 @@ index 0000000..6b5367db
+pipe_src_h_intel_crtc_state_52358_fields pipe_src_h intel_crtc_state 0 52358 NULL nohasharray
+blk_queue_max_hw_sectors_fndecl_52358_fields blk_queue_max_hw_sectors fndecl 2 52358 &pipe_src_h_intel_crtc_state_52358_fields
+nr_upid_52360_fields nr upid 0 52360 NULL
-+create_cq_user_fndecl_52365_fields create_cq_user fndecl 5 52365 NULL nohasharray
-+r_cpos_ocfs2_refcount_rec_52365_fields r_cpos ocfs2_refcount_rec 0 52365 &create_cq_user_fndecl_52365_fields
++MoxaPortSetTermio_fndecl_52362_fields MoxaPortSetTermio fndecl 0-3 52362 NULL
++r_cpos_ocfs2_refcount_rec_52365_fields r_cpos ocfs2_refcount_rec 0 52365 NULL
+se_callback_netid_len_nfsd4_setclientid_52366_fields se_callback_netid_len nfsd4_setclientid 0 52366 NULL
+req_depth__MPT_ADAPTER_52375_fields req_depth _MPT_ADAPTER 0 52375 NULL
+rh_string_fndecl_52376_fields rh_string fndecl 0-4 52376 NULL
+bMaxBurst_usb_ss_ep_comp_descriptor_52382_fields bMaxBurst usb_ss_ep_comp_descriptor 0 52382 NULL
+ath6kl_wmi_set_ie_cmd_fndecl_52383_fields ath6kl_wmi_set_ie_cmd fndecl 6-2 52383 NULL nohasharray
+sg_pgoffset_sg_page_iter_52383_fields sg_pgoffset sg_page_iter 0 52383 &ath6kl_wmi_set_ie_cmd_fndecl_52383_fields
-+raw_bufsize_edt_ft5x06_ts_data_52390_fields raw_bufsize edt_ft5x06_ts_data 0 52390 NULL
+jffs2_write_dirent_fndecl_52396_fields jffs2_write_dirent fndecl 5 52396 NULL
+u132_hcd_initial_input_recv_fndecl_52397_fields u132_hcd_initial_input_recv fndecl 4 52397 NULL
+srp_map_idb_fndecl_52402_fields srp_map_idb fndecl 0-5 52402 NULL
-+length_TAG_TW_SG_Entry_52403_fields length TAG_TW_SG_Entry 0 52403 NULL
++valleyview_calc_cdclk_fndecl_52403_fields valleyview_calc_cdclk fndecl 0 52403 NULL nohasharray
++length_TAG_TW_SG_Entry_52403_fields length TAG_TW_SG_Entry 0 52403 &valleyview_calc_cdclk_fndecl_52403_fields
+eapol_len_wmi_eapol_rx_event_52408_fields eapol_len wmi_eapol_rx_event 0 52408 NULL
-+btrfs_test_free_space_cache_fndecl_52410_fields btrfs_test_free_space_cache fndecl 1-2 52410 NULL
++btrfs_test_free_space_cache_fndecl_52410_fields btrfs_test_free_space_cache fndecl 1-2 52410 NULL nohasharray
++rxkad_verify_packet_1_fndecl_52410_fields rxkad_verify_packet_1 fndecl 3 52410 &btrfs_test_free_space_cache_fndecl_52410_fields
+agp_return_size_fndecl_52417_fields agp_return_size fndecl 0 52417 NULL
+group_ocfs2_new_group_input_52421_fields group ocfs2_new_group_input 0 52421 NULL
-+jffs2_user_setxattr_fndecl_52427_fields jffs2_user_setxattr fndecl 6 52427 NULL nohasharray
-+xfs_iomap_write_allocate_fndecl_52427_fields xfs_iomap_write_allocate fndecl 0 52427 &jffs2_user_setxattr_fndecl_52427_fields
++jffs2_user_setxattr_fndecl_52427_fields jffs2_user_setxattr fndecl 6 52427 NULL
+move_vma_fndecl_52430_fields move_vma fndecl 5-4-2-3 52430 NULL
+zap_pte_range_fndecl_52434_fields zap_pte_range fndecl 4-0 52434 NULL
+min_scaled_width_bttv_crop_52442_fields min_scaled_width bttv_crop 0 52442 NULL
@@ -201479,11 +206146,12 @@ index 0000000..6b5367db
+nvi_vf_resources_52470_fields nvi vf_resources 0 52470 NULL
+sz_field_t_52472_fields sz field_t 0 52472 NULL
+metadata_snap_era_metadata_52475_fields metadata_snap era_metadata 0 52475 NULL
-+ib_ucm_alloc_data_fndecl_52486_fields ib_ucm_alloc_data fndecl 3 52486 NULL
-+user_base_rvt_mregion_52489_fields user_base rvt_mregion 0 52489 NULL
++len_ena_com_rx_buf_info_52478_fields len ena_com_rx_buf_info 0 52478 NULL
++ppp_hard_header_fndecl_52482_fields ppp_hard_header fndecl 3 52482 NULL
+eqpc_entry_sz_mthca_dev_lim_52498_fields eqpc_entry_sz mthca_dev_lim 0 52498 NULL
+s_clustersize_bits_ocfs2_super_52499_fields s_clustersize_bits ocfs2_super 0 52499 NULL
+used_ubifs_wbuf_52504_fields used ubifs_wbuf 0 52504 NULL
++num_sprole_pws_gr_arg_52515_fields num_sprole_pws gr_arg 0 52515 NULL
+size_virtio_gpu_vbuffer_52521_fields size virtio_gpu_vbuffer 0 52521 NULL
+refcount_loc_ocfs2_move_extents_context_52526_fields refcount_loc ocfs2_move_extents_context 0 52526 NULL
+vm_cmdline_id_vardecl_virtio_mmio_c_52527_fields vm_cmdline_id vardecl_virtio_mmio.c 0 52527 NULL
@@ -201499,11 +206167,9 @@ index 0000000..6b5367db
+write_leb_fndecl_52558_fields write_leb fndecl 5 52558 NULL
+num_mtt_mlx4_profile_52565_fields num_mtt mlx4_profile 0 52565 NULL
+fragsize_sdma_req_info_52566_fields fragsize sdma_req_info 0 52566 NULL
-+ax88179_write_cmd_nopm_fndecl_52569_fields ax88179_write_cmd_nopm fndecl 5 52569 NULL
+physical_sector_size_blkfront_info_52571_fields physical_sector_size blkfront_info 0 52571 NULL
+end_logsuper_52574_fields end logsuper 0 52574 NULL
+amdgpu_ttm_tt_set_userptr_fndecl_52575_fields amdgpu_ttm_tt_set_userptr fndecl 2 52575 NULL
-+device_create_groups_vargs_fndecl_52576_fields device_create_groups_vargs fndecl 3 52576 NULL
+__mincore_unmapped_range_fndecl_52595_fields __mincore_unmapped_range fndecl 1 52595 NULL
+xfs_shift_file_space_fndecl_52596_fields xfs_shift_file_space fndecl 2-3 52596 NULL
+cached_dev_init_fndecl_52600_fields cached_dev_init fndecl 2 52600 NULL
@@ -201516,8 +206182,7 @@ index 0000000..6b5367db
+max_sge_ib_device_attr_52617_fields max_sge ib_device_attr 0 52617 NULL
+_set_error_resid_fndecl_52623_fields _set_error_resid fndecl 3 52623 NULL
+lo_rw_aio_complete_fndecl_52629_fields lo_rw_aio_complete fndecl 2 52629 NULL nohasharray
-+mlx5e_add_skb_frag_linear_mpwqe_fndecl_52629_fields mlx5e_add_skb_frag_linear_mpwqe fndecl 6-5 52629 &lo_rw_aio_complete_fndecl_52629_fields nohasharray
-+drbd_new_dev_size_fndecl_52629_fields drbd_new_dev_size fndecl 0-3 52629 &mlx5e_add_skb_frag_linear_mpwqe_fndecl_52629_fields
++drbd_new_dev_size_fndecl_52629_fields drbd_new_dev_size fndecl 0-3 52629 &lo_rw_aio_complete_fndecl_52629_fields
+image_size_cgs_firmware_info_52630_fields image_size cgs_firmware_info 0 52630 NULL
+vaddr_hfi1_tid_info_52635_fields vaddr hfi1_tid_info 0 52635 NULL
+burst_len_qcaspi_52637_fields burst_len qcaspi 0 52637 NULL
@@ -201525,6 +206190,7 @@ index 0000000..6b5367db
+qp_broker_create_fndecl_52654_fields qp_broker_create fndecl 6-5 52654 NULL
+extra_bytes_sym_ccb_52656_fields extra_bytes sym_ccb 0 52656 NULL
+block_size_ms_boot_attr_info_52659_fields block_size ms_boot_attr_info 0 52659 NULL
++ec_i2c_xfer_fndecl_52662_fields ec_i2c_xfer fndecl 3 52662 NULL
+snd_hdac_get_sub_nodes_fndecl_52668_fields snd_hdac_get_sub_nodes fndecl 0 52668 NULL
+vt_ast_vbios_enhtable_52669_fields vt ast_vbios_enhtable 0 52669 NULL
+nr_ioapics_vardecl_52671_fields nr_ioapics vardecl 0 52671 NULL
@@ -201535,22 +206201,21 @@ index 0000000..6b5367db
+urb_done_max3421_hcd_52691_fields urb_done max3421_hcd 0 52691 &fpHeight_nvidia_par_52691_fields
+max_data_link_payload_nfc_hci_dev_52699_fields max_data_link_payload nfc_hci_dev 0 52699 NULL
+count_vfio_pci_hot_reset_52708_fields count vfio_pci_hot_reset 0 52708 NULL
-+gen_ie_buf_len_mwifiex_private_52710_fields gen_ie_buf_len mwifiex_private 0 52710 NULL nohasharray
-+din_size_cros_ec_device_52710_fields din_size cros_ec_device 0 52710 &gen_ie_buf_len_mwifiex_private_52710_fields
-+wptr_old_radeon_ring_52716_fields wptr_old radeon_ring 0 52716 NULL nohasharray
-+videomemorysize_vardecl_vfb_c_52716_fields videomemorysize vardecl_vfb.c 0 52716 &wptr_old_radeon_ring_52716_fields
++gen_ie_buf_len_mwifiex_private_52710_fields gen_ie_buf_len mwifiex_private 0 52710 NULL
++videomemorysize_vardecl_vfb_c_52716_fields videomemorysize vardecl_vfb.c 0 52716 NULL nohasharray
++wptr_old_radeon_ring_52716_fields wptr_old radeon_ring 0 52716 &videomemorysize_vardecl_vfb_c_52716_fields
+xlog_grant_head_check_fndecl_52719_fields xlog_grant_head_check fndecl 0 52719 NULL
-+cifs_min_small_vardecl_52732_fields cifs_min_small vardecl 0 52732 NULL
++hmac_id_sctp_hmac_52747_fields hmac_id sctp_hmac 0 52747 NULL
+vmw_framebuffer_dmabuf_dirty_fndecl_52750_fields vmw_framebuffer_dmabuf_dirty fndecl 6 52750 NULL
+dd_fcrport_size_fc_function_template_52753_fields dd_fcrport_size fc_function_template 0 52753 NULL
+num_btns_cyttsp4_sysinfo_ofs_52758_fields num_btns cyttsp4_sysinfo_ofs 0 52758 NULL
+dr_blkno_ocfs2_dx_root_block_52759_fields dr_blkno ocfs2_dx_root_block 0 52759 NULL
+playback_frlog_rme96_52763_fields playback_frlog rme96 0 52763 NULL
-+do_compat_pwritev64_fndecl_52765_fields do_compat_pwritev64 fndecl 3 52765 NULL
+iov_iter_fault_in_readable_fndecl_52767_fields iov_iter_fault_in_readable fndecl 2 52767 NULL
+wIDIbytesPerSector_ms_bootblock_idi_52770_fields wIDIbytesPerSector ms_bootblock_idi 0 52770 NULL
+size_drm_i915_gem_create_52771_fields size drm_i915_gem_create 0 52771 NULL
+maxBuf_TCP_Server_Info_52774_fields maxBuf TCP_Server_Info 0 52774 NULL
++avc_ca_pmt_fndecl_52789_fields avc_ca_pmt fndecl 3 52789 NULL
+qxl_allocate_chunk_fndecl_52791_fields qxl_allocate_chunk fndecl 4 52791 NULL nohasharray
+tcp_mss_split_point_fndecl_52791_fields tcp_mss_split_point fndecl 0 52791 &qxl_allocate_chunk_fndecl_52791_fields
+batadv_get_vid_fndecl_52792_fields batadv_get_vid fndecl 2 52792 NULL
@@ -201560,16 +206225,15 @@ index 0000000..6b5367db
+payload_len_bfa_bsg_data_52800_fields payload_len bfa_bsg_data 0 52800 NULL
+postcopy_buffers_fndecl_52806_fields postcopy_buffers fndecl 3 52806 NULL
+ule_sndu_type_dvb_net_priv_52811_fields ule_sndu_type dvb_net_priv 0 52811 NULL
-+mmc_test_map_sg_fndecl_52812_fields mmc_test_map_sg fndecl 6-5-8-2 52812 NULL nohasharray
-+mini_cm_connect_fndecl_52812_fields mini_cm_connect fndecl 3 52812 &mmc_test_map_sg_fndecl_52812_fields
++mmc_test_map_sg_fndecl_52812_fields mmc_test_map_sg fndecl 6-5-8-2 52812 NULL
+brcmf_sdiod_recv_chain_fndecl_52822_fields brcmf_sdiod_recv_chain fndecl 3 52822 NULL
+xdr_encode_array2_fndecl_52834_fields xdr_encode_array2 fndecl 0-2 52834 NULL
+xfs_read_agf_fndecl_52838_fields xfs_read_agf fndecl 3-0 52838 NULL nohasharray
+ocfs2_duplicate_clusters_by_jbd_fndecl_52838_fields ocfs2_duplicate_clusters_by_jbd fndecl 4-5 52838 &xfs_read_agf_fndecl_52838_fields
+svc_rdma_xdr_decode_req_fndecl_52859_fields svc_rdma_xdr_decode_req fndecl 0 52859 NULL
+netxen_validate_ringparam_fndecl_52863_fields netxen_validate_ringparam fndecl 0 52863 NULL
-+mlx4_load_one_fndecl_52867_fields mlx4_load_one fndecl 3 52867 NULL nohasharray
-+wqe_shift_mlx5_ib_wq_52867_fields wqe_shift mlx5_ib_wq 0 52867 &mlx4_load_one_fndecl_52867_fields
++wqe_shift_mlx5_ib_wq_52867_fields wqe_shift mlx5_ib_wq 0 52867 NULL nohasharray
++mlx4_load_one_fndecl_52867_fields mlx4_load_one fndecl 3 52867 &wqe_shift_mlx5_ib_wq_52867_fields
+video_ram_radeonfb_info_52868_fields video_ram radeonfb_info 0 52868 NULL
+ddata_ofsh_cyttsp4_sysinfo_data_52870_fields ddata_ofsh cyttsp4_sysinfo_data 0 52870 NULL
+offset_pipe_buffer_52880_fields offset pipe_buffer 0 52880 NULL
@@ -201578,14 +206242,13 @@ index 0000000..6b5367db
+buffer_size_vardecl_ir_usb_c_52893_fields buffer_size vardecl_ir-usb.c 0 52893 NULL
+offset_bnxt_sw_rx_agg_bd_52895_fields offset bnxt_sw_rx_agg_bd 0 52895 NULL
+data_len_hermes_rx_descriptor_52909_fields data_len hermes_rx_descriptor 0 52909 NULL
-+of_alias_add_fndecl_52916_fields of_alias_add fndecl 3 52916 NULL nohasharray
-+cqc_entry_sz_mlx4_dev_cap_52916_fields cqc_entry_sz mlx4_dev_cap 0 52916 &of_alias_add_fndecl_52916_fields
++of_alias_add_fndecl_52916_fields of_alias_add fndecl 3 52916 NULL
+num_tx_queues_e1000_adapter_52922_fields num_tx_queues e1000_adapter 0 52922 NULL
++pipe_get_pages_fndecl_52923_fields pipe_get_pages fndecl 3-4-0 52923 NULL
+swd_swregs_state_52928_fields swd swregs_state 0 52928 NULL
+xfs_mount_validate_sb_fndecl_52930_fields xfs_mount_validate_sb fndecl 0 52930 NULL
+count_i40e_ring_52936_fields count i40e_ring 0 52936 NULL nohasharray
+max_write_shift_ubifs_info_52936_fields max_write_shift ubifs_info 0 52936 &count_i40e_ring_52936_fields
-+si2165_write_fndecl_52941_fields si2165_write fndecl 4 52941 NULL
+rules_count_canid_match_52943_fields rules_count canid_match 0 52943 NULL nohasharray
+num_rx_ethoc_52943_fields num_rx ethoc 0 52943 &rules_count_canid_match_52943_fields
+pipe_urb_52947_fields pipe urb 0 52947 NULL
@@ -201596,34 +206259,30 @@ index 0000000..6b5367db
+fw_size_pvr2_hdw_52961_fields fw_size pvr2_hdw 0 52961 NULL
+priv_sz_sja1000_of_data_52963_fields priv_sz sja1000_of_data 0 52963 NULL
+musb_h_ep0_continue_fndecl_52966_fields musb_h_ep0_continue fndecl 2 52966 NULL
-+set_registers_fndecl_52968_fields set_registers fndecl 4 52968 NULL
+dma_start_lo_rx_buf_desc_52972_fields dma_start_lo rx_buf_desc 0 52972 NULL
+dataOutSize_mpt_ioctl_command_52974_fields dataOutSize mpt_ioctl_command 0 52974 NULL
-+scif_readfrom_fndecl_52975_fields scif_readfrom fndecl 2-4-3 52975 NULL nohasharray
-+dvb_net_sec_fndecl_52975_fields dvb_net_sec fndecl 3 52975 &scif_readfrom_fndecl_52975_fields nohasharray
-+xdr_truncate_encode_fndecl_52975_fields xdr_truncate_encode fndecl 2 52975 &dvb_net_sec_fndecl_52975_fields
++xdr_truncate_encode_fndecl_52975_fields xdr_truncate_encode fndecl 2 52975 NULL nohasharray
++dvb_net_sec_fndecl_52975_fields dvb_net_sec fndecl 3 52975 &xdr_truncate_encode_fndecl_52975_fields nohasharray
++scif_readfrom_fndecl_52975_fields scif_readfrom fndecl 3-2-4 52975 &dvb_net_sec_fndecl_52975_fields
+scatter_n_efx_rx_queue_52988_fields scatter_n efx_rx_queue 0 52988 NULL nohasharray
+size_eeprom_93xx46_dev_52988_fields size eeprom_93xx46_dev 0 52988 &scatter_n_efx_rx_queue_52988_fields
+xfs_dir2_block_to_sf_fndecl_52991_fields xfs_dir2_block_to_sf fndecl 3 52991 NULL
-+max_rx_agg_size_iwl_cfg_52997_fields max_rx_agg_size iwl_cfg 0 52997 NULL
+hidp_output_report_fndecl_53002_fields hidp_output_report fndecl 3 53002 NULL
+actual_length_urb_53003_fields actual_length urb 0 53003 NULL nohasharray
+rx_nr_pages_bnxt_53003_fields rx_nr_pages bnxt 0 53003 &actual_length_urb_53003_fields
-+max_mlx4_srq_53011_fields max mlx4_srq 0 53011 NULL nohasharray
-+__shadow_block_fndecl_53011_fields __shadow_block fndecl 2 53011 &max_mlx4_srq_53011_fields
++__shadow_block_fndecl_53011_fields __shadow_block fndecl 2 53011 NULL nohasharray
++max_mlx4_srq_53011_fields max mlx4_srq 0 53011 &__shadow_block_fndecl_53011_fields
+BC_Read_Reg_IsdnCardState_53020_fields BC_Read_Reg IsdnCardState 0 53020 NULL
+bytesused_ivtv_buffer_53021_fields bytesused ivtv_buffer 0 53021 NULL
-+run_test_fndecl_53022_fields run_test fndecl 3-4 53022 NULL
+tty_insert_flip_string_fixed_flag_fndecl_53031_fields tty_insert_flip_string_fixed_flag fndecl 0 53031 NULL
-+ni_peertxcredits_lnet_ni_53034_fields ni_peertxcredits lnet_ni 0 53034 NULL
+xfs_filestream_pick_ag_fndecl_53040_fields xfs_filestream_pick_ag fndecl 2-0 53040 NULL nohasharray
-+nports0_adapter_info_53040_fields nports0 adapter_info 0 53040 &xfs_filestream_pick_ag_fndecl_53040_fields
++nports0_adapter_info_53040_fields nports0 adapter_info 0 53040 &xfs_filestream_pick_ag_fndecl_53040_fields nohasharray
++wq_multiplier_qedr_dev_53040_fields wq_multiplier qedr_dev 0 53040 &nports0_adapter_info_53040_fields
+xmit_fifo_size_serial_struct_53048_fields xmit_fifo_size serial_struct 0 53048 NULL
+fcoe_alloc_paged_crc_eof_fndecl_53049_fields fcoe_alloc_paged_crc_eof fndecl 2 53049 NULL
+rqsize_hwif_s_53050_fields rqsize hwif_s 0 53050 NULL
+rx_pad_len_hif_device_usb_53051_fields rx_pad_len hif_device_usb 0 53051 NULL
+dm_bm_write_lock_zero_fndecl_53053_fields dm_bm_write_lock_zero fndecl 2 53053 NULL
-+cols_cros_ec_keyb_53054_fields cols cros_ec_keyb 0 53054 NULL
+m_len_ext4_map_blocks_53056_fields m_len ext4_map_blocks 0 53056 NULL
+s_inode_size_nilfs_super_block_53064_fields s_inode_size nilfs_super_block 0 53064 NULL
+ext4_write_end_fndecl_53067_fields ext4_write_end fndecl 5 53067 NULL
@@ -201639,54 +206298,51 @@ index 0000000..6b5367db
+ext4_itable_unused_set_fndecl_53091_fields ext4_itable_unused_set fndecl 3 53091 NULL
+size_fuse_attr_53098_fields size fuse_attr 0 53098 NULL
+s_blocksize_minix3_super_block_53099_fields s_blocksize minix3_super_block 0 53099 NULL
-+prepare_header80_fndecl_53108_fields prepare_header80 fndecl 0 53108 NULL
++prepare_header80_fndecl_53108_fields prepare_header80 fndecl 0 53108 NULL nohasharray
++rx_nr_rings_bnxt_53108_fields rx_nr_rings bnxt 0 53108 &prepare_header80_fndecl_53108_fields
+count_vbi_info_53110_fields count vbi_info 0 53110 NULL
+fb_max_width_vmw_private_53114_fields fb_max_width vmw_private 0 53114 NULL
+reserve_region_with_split_fndecl_53115_fields reserve_region_with_split fndecl 3-2 53115 NULL
-+logi_dj_recv_forward_hidpp_fndecl_53117_fields logi_dj_recv_forward_hidpp fndecl 3 53117 NULL
+pci_iov_add_virtfn_fndecl_53122_fields pci_iov_add_virtfn fndecl 2 53122 NULL
+real_vram_size_radeon_mc_53132_fields real_vram_size radeon_mc 0 53132 NULL
+data_dma_td_53137_fields data_dma td 0 53137 NULL
+log_rq_size_mlx5e_params_53140_fields log_rq_size mlx5e_params 0 53140 NULL
++sg_len_hash_wr_param_53143_fields sg_len hash_wr_param 0 53143 NULL
+mmc_spi_readbytes_fndecl_53146_fields mmc_spi_readbytes fndecl 2 53146 NULL
-+bdev_writeseg_fndecl_53148_fields bdev_writeseg fndecl 2-3 53148 NULL
++bdev_writeseg_fndecl_53148_fields bdev_writeseg fndecl 2-3 53148 NULL nohasharray
++vmalloc_32_user_fndecl_53148_fields vmalloc_32_user fndecl 1 53148 &bdev_writeseg_fndecl_53148_fields
+xoffset_fb_var_screeninfo_53153_fields xoffset fb_var_screeninfo 0 53153 NULL
+fat_cont_expand_fndecl_53155_fields fat_cont_expand fndecl 2 53155 NULL
+sb_blocksize_xfs_sb_53160_fields sb_blocksize xfs_sb 0 53160 NULL
+nvmet_copy_to_sgl_fndecl_53164_fields nvmet_copy_to_sgl fndecl 2-4 53164 NULL
-+uhci_debug_lseek_fndecl_53171_fields uhci_debug_lseek fndecl 2 53171 NULL
+buf_size_mwifiex_event_scan_result_53175_fields buf_size mwifiex_event_scan_result 0 53175 NULL
+offset_page_frag_53180_fields offset page_frag 0 53180 NULL
+rx_tpa_start_cmp_metadata_rx_tpa_start_cmp_ext_53181_fields rx_tpa_start_cmp_metadata rx_tpa_start_cmp_ext 0 53181 NULL
-+tbl_size_vardecl_memattr_c_53182_fields tbl_size vardecl_memattr.c 0 53182 NULL nohasharray
-+tpm_devt_vardecl_53182_fields tpm_devt vardecl 0 53182 &tbl_size_vardecl_memattr_c_53182_fields
-+xhci_alloc_streams_fndecl_53185_fields xhci_alloc_streams fndecl 5 53185 NULL
++tbl_size_vardecl_memattr_c_53182_fields tbl_size vardecl_memattr.c 0 53182 NULL
+rate_min_snd_soc_pcm_stream_53186_fields rate_min snd_soc_pcm_stream 0 53186 NULL
++max98090_dai_set_sysclk_fndecl_53188_fields max98090_dai_set_sysclk fndecl 3 53188 NULL
+len_nxtfrm_brcmf_sdio_hdrinfo_53193_fields len_nxtfrm brcmf_sdio_hdrinfo 0 53193 NULL nohasharray
+num_entries_hfi1_wss_53193_fields num_entries hfi1_wss 0 53193 &len_nxtfrm_brcmf_sdio_hdrinfo_53193_fields
+mpage_process_page_bufs_fndecl_53197_fields mpage_process_page_bufs fndecl 4 53197 NULL
++create_boot_cache_fndecl_53198_fields create_boot_cache fndecl 3 53198 NULL
+minor_start_tty_driver_53214_fields minor_start tty_driver 0 53214 NULL
+write_iter_file_operations_53218_fields write_iter file_operations 0 53218 NULL
-+aio_run_iocb_fndecl_53224_fields aio_run_iocb fndecl 4 53224 NULL nohasharray
-+udf_block_map_fndecl_53224_fields udf_block_map fndecl 0 53224 &aio_run_iocb_fndecl_53224_fields
-+meta_slots_used_xenvif_rx_cb_53230_fields meta_slots_used xenvif_rx_cb 0 53230 NULL
++udf_block_map_fndecl_53224_fields udf_block_map fndecl 0 53224 NULL
+bnx2x_sriov_configure_fndecl_53235_fields bnx2x_sriov_configure fndecl 2 53235 NULL
-+mlx4_get_mgm_entry_size_fndecl_53236_fields mlx4_get_mgm_entry_size fndecl 0 53236 NULL
+svcxdr_init_encode_from_buffer_fndecl_53239_fields svcxdr_init_encode_from_buffer fndecl 4 53239 NULL nohasharray
+mmc_test_rw_multiple_fndecl_53239_fields mmc_test_rw_multiple fndecl 3-5 53239 &svcxdr_init_encode_from_buffer_fndecl_53239_fields
-+sys_sync_file_range2_fndecl_53247_fields sys_sync_file_range2 fndecl 3-4 53247 NULL
++sys_sync_file_range2_fndecl_53247_fields sys_sync_file_range2 fndecl 3 53247 NULL
+readpos_ivtv_buffer_53258_fields readpos ivtv_buffer 0 53258 NULL
+qxl_bo_create_fndecl_53261_fields qxl_bo_create fndecl 2 53261 NULL nohasharray
+num_cq_mlx4_profile_53261_fields num_cq mlx4_profile 0 53261 &qxl_bo_create_fndecl_53261_fields
-+add_new_ctl_fndecl_53263_fields add_new_ctl fndecl 8 53263 NULL
+asl_urb_dequeue_fndecl_53268_fields asl_urb_dequeue fndecl 3 53268 NULL
+update_dind_extent_range_fndecl_53271_fields update_dind_extent_range fndecl 3 53271 NULL
-+rx_pkt_n_frags_efx_channel_53276_fields rx_pkt_n_frags efx_channel 0 53276 NULL nohasharray
-+rmi_i2c_write_block_fndecl_53276_fields rmi_i2c_write_block fndecl 4 53276 &rx_pkt_n_frags_efx_channel_53276_fields
++rx_pkt_n_frags_efx_channel_53276_fields rx_pkt_n_frags efx_channel 0 53276 NULL
+nr_cmds_ctlr_info_53278_fields nr_cmds ctlr_info 0 53278 NULL
+alignment_acpi_resource_memory32_53289_fields alignment acpi_resource_memory32 0 53289 NULL
+nfs4_xattr_set_nfs4_label_fndecl_53292_fields nfs4_xattr_set_nfs4_label fndecl 6 53292 NULL
+compat_ptrace_request_fndecl_53296_fields compat_ptrace_request fndecl 3 53296 NULL
++vmalloc_exec_fndecl_53303_fields vmalloc_exec fndecl 1 53303 NULL
+fuse_ioctl_common_fndecl_53305_fields fuse_ioctl_common fndecl 2 53305 NULL
+gtt_start_radeon_mc_53307_fields gtt_start radeon_mc 0 53307 NULL nohasharray
+dma_size_cx23885_audio_dev_53307_fields dma_size cx23885_audio_dev 0 53307 &gtt_start_radeon_mc_53307_fields
@@ -201697,7 +206353,6 @@ index 0000000..6b5367db
+sys_send_fndecl_53330_fields sys_send fndecl 3 53330 NULL
+__drm_gem_cma_create_fndecl_53334_fields __drm_gem_cma_create fndecl 2 53334 NULL
+s_inode_readahead_blks_ext4_sb_info_53337_fields s_inode_readahead_blks ext4_sb_info 0 53337 NULL
-+xilly_get_dma_buffers_fndecl_53341_fields xilly_get_dma_buffers fndecl 4 53341 NULL
+v9fs_xattr_set_fndecl_53342_fields v9fs_xattr_set fndecl 4 53342 NULL
+ioc_len_libcfs_ioctl_hdr_53352_fields ioc_len libcfs_ioctl_hdr 0 53352 NULL
+frag_size_hwbm_pool_53355_fields frag_size hwbm_pool 0 53355 NULL
@@ -201705,22 +206360,22 @@ index 0000000..6b5367db
+__xdr_inline_decode_fndecl_53363_fields __xdr_inline_decode fndecl 2 53363 NULL
+rsize_hid_device_53365_fields rsize hid_device 0 53365 NULL
+xattr_len_ceph_mds_reply_info_in_53369_fields xattr_len ceph_mds_reply_info_in 0 53369 NULL
++CIFSMaxBufSize_vardecl_53372_fields CIFSMaxBufSize vardecl 0 53372 NULL
+xdr_inline_pages_fndecl_53377_fields xdr_inline_pages fndecl 5-4-2 53377 NULL
+num_user_contexts_vardecl_53379_fields num_user_contexts vardecl 0 53379 NULL
+dummy_urb_dequeue_fndecl_53380_fields dummy_urb_dequeue fndecl 3 53380 NULL
-+vmsplice_to_user_fndecl_53382_fields vmsplice_to_user fndecl 3 53382 NULL
+scrub_stripe_fndecl_53387_fields scrub_stripe fndecl 5 53387 NULL
+isd200_action_fndecl_53390_fields isd200_action fndecl 4 53390 NULL
+nfqnl_mangle_fndecl_53393_fields nfqnl_mangle fndecl 2-4 53393 NULL
+irda_recvmsg_stream_fndecl_53403_fields irda_recvmsg_stream fndecl 3 53403 NULL
+len_nft_cmp_fast_expr_53407_fields len nft_cmp_fast_expr 0 53407 NULL
+nid_dnode_of_data_53408_fields nid dnode_of_data 0 53408 NULL
-+pwm_num_nct6775_data_53412_fields pwm_num nct6775_data 0 53412 NULL
+vlan_dev_set_egress_priority_fndecl_53418_fields vlan_dev_set_egress_priority fndecl 3 53418 NULL
+nbits_nvmem_cell_info_53426_fields nbits nvmem_cell_info 0 53426 NULL nohasharray
+expand_stack_fndecl_53426_fields expand_stack fndecl 2 53426 &nbits_nvmem_cell_info_53426_fields
+compat_sys_mbind_fndecl_53427_fields compat_sys_mbind fndecl 2-1 53427 NULL nohasharray
-+dn_mk_ack_header_fndecl_53427_fields dn_mk_ack_header fndecl 4 53427 &compat_sys_mbind_fndecl_53427_fields
++dn_mk_ack_header_fndecl_53427_fields dn_mk_ack_header fndecl 4 53427 &compat_sys_mbind_fndecl_53427_fields nohasharray
++mq_maxmsg_mq_attr_53427_fields mq_maxmsg mq_attr 0 53427 &dn_mk_ack_header_fndecl_53427_fields
+len_type_frame_head_53438_fields len type_frame_head 0 53438 NULL nohasharray
+chipsize_nand_chip_53438_fields chipsize nand_chip 0 53438 &len_type_frame_head_53438_fields
+ocfs2_filecheck_handle_fndecl_53445_fields ocfs2_filecheck_handle fndecl 2 53445 NULL
@@ -201730,21 +206385,21 @@ index 0000000..6b5367db
+map_sector_fndecl_53483_fields map_sector fndecl 0 53483 NULL
+nfs4_proc_readlink_fndecl_53484_fields nfs4_proc_readlink fndecl 4-3 53484 NULL
+orangefs_bufmap_copy_from_iovec_fndecl_53485_fields orangefs_bufmap_copy_from_iovec fndecl 3 53485 NULL
++ramoops_ecc_vardecl_ram_c_53486_fields ramoops_ecc vardecl_ram.c 0 53486 NULL
+size_mthca_catas_err_53487_fields size mthca_catas_err 0 53487 NULL
-+oper_log_mgm_entry_size_mlx4_dev_53488_fields oper_log_mgm_entry_size mlx4_dev 0 53488 NULL
+usCRTC_V_SyncWidth__ATOM_MODE_TIMING_53489_fields usCRTC_V_SyncWidth _ATOM_MODE_TIMING 0 53489 NULL nohasharray
+len_rx_pool_53489_fields len rx_pool 0 53489 &usCRTC_V_SyncWidth__ATOM_MODE_TIMING_53489_fields
+len_nft_cmp_expr_53491_fields len nft_cmp_expr 0 53491 NULL
+isdn_getnum_fndecl_53492_fields isdn_getnum fndecl 0 53492 NULL
-+subctxt_cnt_qib_ctxtdata_53495_fields subctxt_cnt qib_ctxtdata 0 53495 NULL nohasharray
-+get_allocated_memblock_memory_regions_info_fndecl_53495_fields get_allocated_memblock_memory_regions_info fndecl 0 53495 &subctxt_cnt_qib_ctxtdata_53495_fields
++get_allocated_memblock_memory_regions_info_fndecl_53495_fields get_allocated_memblock_memory_regions_info fndecl 0 53495 NULL nohasharray
++subctxt_cnt_qib_ctxtdata_53495_fields subctxt_cnt qib_ctxtdata 0 53495 &get_allocated_memblock_memory_regions_info_fndecl_53495_fields
++num_pf_rings_octeon_sriov_info_53499_fields num_pf_rings octeon_sriov_info 0 53499 NULL
+tipc_link_mtu_fndecl_53508_fields tipc_link_mtu fndecl 0 53508 NULL
+mmc_io_rw_extended_fndecl_53515_fields mmc_io_rw_extended fndecl 8-7 53515 NULL
+dme1737_isa_device_add_fndecl_53516_fields dme1737_isa_device_add fndecl 1 53516 NULL
+fsinfo_sector_msdos_sb_info_53531_fields fsinfo_sector msdos_sb_info 0 53531 NULL nohasharray
+m_max_mds_ceph_mdsmap_53531_fields m_max_mds ceph_mdsmap 0 53531 &fsinfo_sector_msdos_sb_info_53531_fields
+unix_seqpacket_sendmsg_fndecl_53534_fields unix_seqpacket_sendmsg fndecl 3 53534 NULL
-+num_res_platform_device_info_53536_fields num_res platform_device_info 0 53536 NULL
+e820_add_region_fndecl_53540_fields e820_add_region fndecl 2 53540 NULL nohasharray
+tcp_mark_head_lost_fndecl_53540_fields tcp_mark_head_lost fndecl 2 53540 &e820_add_region_fndecl_53540_fields
+crtc_w_drm_plane_state_53541_fields crtc_w drm_plane_state 0 53541 NULL
@@ -201753,8 +206408,7 @@ index 0000000..6b5367db
+block_size_partition_53549_fields block_size partition 0 53549 NULL
+r_result_ceph_osd_request_53555_fields r_result ceph_osd_request 0 53555 NULL
+log_mpt_sz_mlx4_init_hca_param_53586_fields log_mpt_sz mlx4_init_hca_param 0 53586 NULL
-+num_ports_mlx4_caps_53588_fields num_ports mlx4_caps 0 53588 NULL nohasharray
-+tokens_size_cfg80211_wowlan_tcp_53588_fields tokens_size cfg80211_wowlan_tcp 0 53588 &num_ports_mlx4_caps_53588_fields
++tokens_size_cfg80211_wowlan_tcp_53588_fields tokens_size cfg80211_wowlan_tcp 0 53588 NULL
+nr_labels_pktgen_dev_53591_fields nr_labels pktgen_dev 0 53591 NULL
+ocfs2_orphan_filldir_fndecl_53593_fields ocfs2_orphan_filldir fndecl 5 53593 NULL
+nilfs_load_super_block_fndecl_53596_fields nilfs_load_super_block fndecl 3 53596 NULL
@@ -201764,7 +206418,7 @@ index 0000000..6b5367db
+len_rproc_vring_53618_fields len rproc_vring 0 53618 NULL
+qcaspi_write_legacy_fndecl_53623_fields qcaspi_write_legacy fndecl 3 53623 NULL
+btt_flog_write_fndecl_53628_fields btt_flog_write fndecl 0 53628 NULL
-+koneplus_sysfs_write_fndecl_53642_fields koneplus_sysfs_write fndecl 6 53642 NULL
++num_channels_mlx5e_params_53632_fields num_channels mlx5e_params 0 53632 NULL
+remote_nentries_xpc_openclose_args_53643_fields remote_nentries xpc_openclose_args 0 53643 NULL
+ticket2_len_rxk5_key_53644_fields ticket2_len rxk5_key 0 53644 NULL
+ioc_plen2_obd_ioctl_data_53648_fields ioc_plen2 obd_ioctl_data 0 53648 NULL
@@ -201774,28 +206428,30 @@ index 0000000..6b5367db
+hr_data_len_hsm_request_53666_fields hr_data_len hsm_request 0 53666 NULL
+num_sge_ib_uverbs_send_wr_53667_fields num_sge ib_uverbs_send_wr 0 53667 NULL
+cpu_addr_of_pci_range_53670_fields cpu_addr of_pci_range 0 53670 NULL
-+sesskey_len_cifs_spnego_msg_53678_fields sesskey_len cifs_spnego_msg 0 53678 NULL nohasharray
-+xen_foreach_remap_area_fndecl_53678_fields xen_foreach_remap_area fndecl 0 53678 &sesskey_len_cifs_spnego_msg_53678_fields nohasharray
-+ubi_eba_write_leb_fndecl_53678_fields ubi_eba_write_leb fndecl 6-5 53678 &xen_foreach_remap_area_fndecl_53678_fields
++xen_foreach_remap_area_fndecl_53678_fields xen_foreach_remap_area fndecl 0 53678 NULL nohasharray
++ubi_eba_write_leb_fndecl_53678_fields ubi_eba_write_leb fndecl 6-5 53678 &xen_foreach_remap_area_fndecl_53678_fields nohasharray
++sesskey_len_cifs_spnego_msg_53678_fields sesskey_len cifs_spnego_msg 0 53678 &ubi_eba_write_leb_fndecl_53678_fields
+console_store_fndecl_53684_fields console_store fndecl 4 53684 NULL
-+i_depth_gfs2_inode_53692_fields i_depth gfs2_inode 0 53692 NULL nohasharray
-+drbd_setup_queue_param_fndecl_53692_fields drbd_setup_queue_param fndecl 3 53692 &i_depth_gfs2_inode_53692_fields
-+ql_is_full_dup_fndecl_53694_fields ql_is_full_dup fndecl 0 53694 NULL
++drbd_setup_queue_param_fndecl_53692_fields drbd_setup_queue_param fndecl 3 53692 NULL nohasharray
++i_depth_gfs2_inode_53692_fields i_depth gfs2_inode 0 53692 &drbd_setup_queue_param_fndecl_53692_fields
++ql_is_full_dup_fndecl_53694_fields ql_is_full_dup fndecl 0 53694 NULL nohasharray
++carl9170_rx_untie_cmds_fndecl_53694_fields carl9170_rx_untie_cmds fndecl 3 53694 &ql_is_full_dup_fndecl_53694_fields
+length_iscsi_pdu_53695_fields length iscsi_pdu 0 53695 NULL
+vgt_balloon_space_fndecl_53697_fields vgt_balloon_space fndecl 3-4 53697 NULL
++rq_len_qedr_create_qp_ureq_53699_fields rq_len qedr_create_qp_ureq 0 53699 NULL
+cfg1_size_pcie_port_53701_fields cfg1_size pcie_port 0 53701 NULL
+wipers_tpl0102_cfg_53702_fields wipers tpl0102_cfg 0 53702 NULL
+qlge_change_mtu_fndecl_53706_fields qlge_change_mtu fndecl 2 53706 NULL
+pos_hdpvr_buffer_53708_fields pos hdpvr_buffer 0 53708 NULL
+create_header_ops_53712_fields create header_ops 0 53712 NULL
-+num_leds_gpio_led_platform_data_53715_fields num_leds gpio_led_platform_data 0 53715 NULL
+xdr_inline_decode_fndecl_53721_fields xdr_inline_decode fndecl 2 53721 NULL
-+onenand_write_ops_nolock_fndecl_53724_fields onenand_write_ops_nolock fndecl 2 53724 NULL
-+i915_gem_object_do_pin_fndecl_53726_fields i915_gem_object_do_pin fndecl 5 53726 NULL
++sys_init_module_fndecl_53724_fields sys_init_module fndecl 2 53724 NULL nohasharray
++onenand_write_ops_nolock_fndecl_53724_fields onenand_write_ops_nolock fndecl 2 53724 &sys_init_module_fndecl_53724_fields
+btt_rw_integrity_fndecl_53727_fields btt_rw_integrity fndecl 0 53727 NULL
+xhci_alloc_stream_info_fndecl_53732_fields xhci_alloc_stream_info fndecl 4 53732 NULL
+adp5588_build_gpiomap_fndecl_53733_fields adp5588_build_gpiomap fndecl 0 53733 NULL nohasharray
+dnode_scif_peer_dev_53733_fields dnode scif_peer_dev 0 53733 &adp5588_build_gpiomap_fndecl_53733_fields
++max_data_size_vardecl_hsi_char_c_53736_fields max_data_size vardecl_hsi_char.c 0 53736 NULL
+map_capability_fndecl_53738_fields map_capability fndecl 5 53738 NULL
+chunk_size_stripe_c_53745_fields chunk_size stripe_c 0 53745 NULL
+count_user_sgmap_53748_fields count user_sgmap 0 53748 NULL
@@ -201804,21 +206460,20 @@ index 0000000..6b5367db
+padding_iscsi_cmd_53768_fields padding iscsi_cmd 0 53768 NULL
+end_nilfs_write_info_53770_fields end nilfs_write_info 0 53770 NULL
+msb_read_oob_fndecl_53772_fields msb_read_oob fndecl 2 53772 NULL
-+get_slot_from_bitmask_fndecl_53775_fields get_slot_from_bitmask fndecl 0-1 53775 NULL
++vxge_config_vpaths_fndecl_53775_fields vxge_config_vpaths fndecl 0 53775 NULL nohasharray
++get_slot_from_bitmask_fndecl_53775_fields get_slot_from_bitmask fndecl 0-1 53775 &vxge_config_vpaths_fndecl_53775_fields
+do_sendfile_fndecl_53777_fields do_sendfile fndecl 5-4 53777 NULL
+qed_chain_alloc_fndecl_53778_fields qed_chain_alloc fndecl 6-5 53778 NULL
+index_nsc_ircc_cb_53782_fields index nsc_ircc_cb 0 53782 NULL
+src_maxburst_dma_slave_config_53783_fields src_maxburst dma_slave_config 0 53783 NULL
-+max_chipselect_fsl_spi_platform_data_53785_fields max_chipselect fsl_spi_platform_data 0 53785 NULL
+Control_2_RxD_t_53794_fields Control_2 RxD_t 0 53794 NULL nohasharray
+qlcnic_process_rcv_fndecl_53794_fields qlcnic_process_rcv fndecl 4 53794 &Control_2_RxD_t_53794_fields
+st21nfca_hci_loopback_fndecl_53795_fields st21nfca_hci_loopback fndecl 3 53795 NULL
+epnum_isp1362_ep_53803_fields epnum isp1362_ep 0 53803 NULL nohasharray
-+mgmt_send_event_fndecl_53803_fields mgmt_send_event fndecl 5 53803 &epnum_isp1362_ep_53803_fields nohasharray
-+osd_req_list_collection_objects_fndecl_53803_fields osd_req_list_collection_objects fndecl 5 53803 &mgmt_send_event_fndecl_53803_fields
-+test_btrfs_split_item_fndecl_53804_fields test_btrfs_split_item fndecl 1-2 53804 NULL nohasharray
-+iscsi_host_alloc_fndecl_53804_fields iscsi_host_alloc fndecl 2 53804 &test_btrfs_split_item_fndecl_53804_fields
++mgmt_send_event_fndecl_53803_fields mgmt_send_event fndecl 5 53803 &epnum_isp1362_ep_53803_fields
++test_btrfs_split_item_fndecl_53804_fields test_btrfs_split_item fndecl 1-2 53804 NULL
+rsn_dm_verity_fec_53808_fields rsn dm_verity_fec 0 53808 NULL
++ring_size_netvsc_device_info_53811_fields ring_size netvsc_device_info 0 53811 NULL
+msix_count_xhci_hcd_53816_fields msix_count xhci_hcd 0 53816 NULL
+jffs2_flash_write_fndecl_53819_fields jffs2_flash_write fndecl 3-2 53819 NULL
+doorbell_start_nes_device_53820_fields doorbell_start nes_device 0 53820 NULL
@@ -201834,25 +206489,21 @@ index 0000000..6b5367db
+cfsiz_bcm_op_53871_fields cfsiz bcm_op 0 53871 NULL
+discard_alignment_hd_struct_53874_fields discard_alignment hd_struct 0 53874 NULL
+br_fill_ifvlaninfo_range_fndecl_53875_fields br_fill_ifvlaninfo_range fndecl 2-3 53875 NULL
++buffer_blocks_st_buffer_53878_fields buffer_blocks st_buffer 0 53878 NULL
+lnum_bits_ubifs_info_53884_fields lnum_bits ubifs_info 0 53884 NULL
+st_nci_loopback_fndecl_53886_fields st_nci_loopback fndecl 3 53886 NULL nohasharray
+cx25821_alsa_dma_init_fndecl_53886_fields cx25821_alsa_dma_init fndecl 2 53886 &st_nci_loopback_fndecl_53886_fields
+drbd_setbufsize_fndecl_53887_fields drbd_setbufsize fndecl 2 53887 NULL
-+amdgpu_vce_sw_init_fndecl_53888_fields amdgpu_vce_sw_init fndecl 2 53888 NULL nohasharray
-+max_out_queue_skl_module_cfg_53888_fields max_out_queue skl_module_cfg 0 53888 &amdgpu_vce_sw_init_fndecl_53888_fields
++amdgpu_vce_sw_init_fndecl_53888_fields amdgpu_vce_sw_init fndecl 2 53888 NULL
+total_read_TCP_Server_Info_53900_fields total_read TCP_Server_Info 0 53900 NULL
+alignf_resource_constraint_53903_fields alignf resource_constraint 0 53903 NULL nohasharray
+e1000_consume_page_fndecl_53903_fields e1000_consume_page fndecl 3 53903 &alignf_resource_constraint_53903_fields
+image_len_brcmf_usbdev_info_53909_fields image_len brcmf_usbdev_info 0 53909 NULL
+vop_len_solo_enc_dev_53910_fields vop_len solo_enc_dev 0 53910 NULL
-+fc_exch_mgr_alloc_fndecl_53916_fields fc_exch_mgr_alloc fndecl 3-4 53916 NULL
-+num_cvt_hdac_hdmi_priv_53920_fields num_cvt hdac_hdmi_priv 0 53920 NULL
+htcp_cong_avoid_fndecl_53921_fields htcp_cong_avoid fndecl 3 53921 NULL
+usb_stor_sg_tablesize_fndecl_53929_fields usb_stor_sg_tablesize fndecl 0 53929 NULL nohasharray
+osd_req_op_extent_dup_last_fndecl_53929_fields osd_req_op_extent_dup_last fndecl 3 53929 &usb_stor_sg_tablesize_fndecl_53929_fields
-+of_iomap_fndecl_53930_fields of_iomap fndecl 2 53930 NULL
+chip_sdma_engines_hfi1_devdata_53934_fields chip_sdma_engines hfi1_devdata 0 53934 NULL
-+i40e_init_lan_hmc_fndecl_53935_fields i40e_init_lan_hmc fndecl 2-3-4-5 53935 NULL
+depth_tm6000_fmt_53938_fields depth tm6000_fmt 0 53938 NULL
+ip4ip6_err_fndecl_53943_fields ip4ip6_err fndecl 5 53943 NULL nohasharray
+_find_first_zero_bit_be_fndecl_53943_fields _find_first_zero_bit_be fndecl 0 53943 &ip4ip6_err_fndecl_53943_fields
@@ -201861,15 +206512,16 @@ index 0000000..6b5367db
+swiotlb_nr_tbl_fndecl_53950_fields swiotlb_nr_tbl fndecl 0 53950 NULL
+p_size_drbd_device_53954_fields p_size drbd_device 0 53954 NULL
+tcf_csum_ipv6_tcp_fndecl_53957_fields tcf_csum_ipv6_tcp fndecl 3 53957 NULL
-+c_srate_f_uac2_opts_53962_fields c_srate f_uac2_opts 0 53962 NULL nohasharray
-+vmw_sou_backing_alloc_fndecl_53962_fields vmw_sou_backing_alloc fndecl 3 53962 &c_srate_f_uac2_opts_53962_fields
++vmw_sou_backing_alloc_fndecl_53962_fields vmw_sou_backing_alloc fndecl 3 53962 NULL nohasharray
++c_srate_f_uac2_opts_53962_fields c_srate f_uac2_opts 0 53962 &vmw_sou_backing_alloc_fndecl_53962_fields
++recover_orphan_inode_fndecl_53969_fields recover_orphan_inode fndecl 2 53969 NULL
+dests_size_fs_fte_53973_fields dests_size fs_fte 0 53973 NULL
+key_len_wpa_key_t_53980_fields key_len wpa_key_t 0 53980 NULL
+rx_buf_sz_cp_private_53982_fields rx_buf_sz cp_private 0 53982 NULL
+assoc_resp_len_wmi_connect_event_53983_fields assoc_resp_len wmi_connect_event 0 53983 NULL
+nfs_proc_mknod_fndecl_53987_fields nfs_proc_mknod fndecl 4 53987 NULL
+cfpkt_add_head_fndecl_53990_fields cfpkt_add_head fndecl 3 53990 NULL
-+vbt_size_intel_opregion_53991_fields vbt_size intel_opregion 0 53991 NULL
++src_y_drm_plane_state_53993_fields src_y drm_plane_state 0 53993 NULL
+btrfs_init_new_buffer_fndecl_53996_fields btrfs_init_new_buffer fndecl 3 53996 NULL
+size_drbd_interval_54002_fields size drbd_interval 0 54002 NULL
+ax88179_change_mtu_fndecl_54007_fields ax88179_change_mtu fndecl 2 54007 NULL
@@ -201877,12 +206529,16 @@ index 0000000..6b5367db
+rsi_setblocklength_fndecl_54024_fields rsi_setblocklength fndecl 2 54024 NULL
+xz_dec_lzma2_create_fndecl_54034_fields xz_dec_lzma2_create fndecl 2 54034 NULL
+sum_size_jffs2_summary_54035_fields sum_size jffs2_summary 0 54035 NULL
-+nr_states_gpio_regulator_config_54042_fields nr_states gpio_regulator_config 0 54042 NULL
++gb_operation_create_core_fndecl_54045_fields gb_operation_create_core fndecl 4 54045 NULL
++sierra_write_fndecl_54049_fields sierra_write fndecl 4 54049 NULL
++copy_page_to_iter_pipe_fndecl_54059_fields copy_page_to_iter_pipe fndecl 2-3-0 54059 NULL
++storvsc_ringbuffer_size_vardecl_storvsc_drv_c_54060_fields storvsc_ringbuffer_size vardecl_storvsc_drv.c 0 54060 NULL
++afs_extract_data_fndecl_54062_fields afs_extract_data fndecl 3 54062 NULL
+msb_update_block_fndecl_54063_fields msb_update_block fndecl 4-2 54063 NULL
-+process_ptload_program_headers_elf32_fndecl_54067_fields process_ptload_program_headers_elf32 fndecl 3-2 54067 NULL
+width_fb_image_54071_fields width fb_image 0 54071 NULL
+rp2_minor_next_vardecl_rp2_c_54074_fields rp2_minor_next vardecl_rp2.c 0 54074 NULL
-+xennet_change_mtu_fndecl_54076_fields xennet_change_mtu fndecl 2 54076 NULL
++xennet_change_mtu_fndecl_54076_fields xennet_change_mtu fndecl 2 54076 NULL nohasharray
++afs_alloc_flat_call_fndecl_54076_fields afs_alloc_flat_call fndecl 2-3 54076 &xennet_change_mtu_fndecl_54076_fields
+bytes_cifs_writedata_54089_fields bytes cifs_writedata 0 54089 NULL
+get_mtu_xfrm_type_54090_fields get_mtu xfrm_type 0 54090 NULL
+sctp_tsnmap_init_fndecl_54093_fields sctp_tsnmap_init fndecl 2 54093 NULL nohasharray
@@ -201895,13 +206551,14 @@ index 0000000..6b5367db
+alloc_etherdev_mqs_fndecl_54129_fields alloc_etherdev_mqs fndecl 2-1-3 54129 NULL
+mtu_vxlan_config_54132_fields mtu vxlan_config 0 54132 NULL nohasharray
+skb_trim_fndecl_54132_fields skb_trim fndecl 2 54132 &mtu_vxlan_config_54132_fields
++irq_calc_affinity_vectors_fndecl_54135_fields irq_calc_affinity_vectors fndecl 0 54135 NULL
+io_offset_xfs_ioend_54137_fields io_offset xfs_ioend 0 54137 NULL nohasharray
+bdx_fifo_init_fndecl_54137_fields bdx_fifo_init fndecl 3 54137 &io_offset_xfs_ioend_54137_fields
+tcf_csum_ipv6_udp_fndecl_54138_fields tcf_csum_ipv6_udp fndecl 3 54138 NULL
-+change_protection_range_fndecl_54141_fields change_protection_range fndecl 3-2 54141 NULL
-+netvsc_change_mtu_fndecl_54142_fields netvsc_change_mtu fndecl 2 54142 NULL nohasharray
-+nr_uart_sc16is7xx_devtype_54142_fields nr_uart sc16is7xx_devtype 0 54142 &netvsc_change_mtu_fndecl_54142_fields
-+f2fs_do_collapse_fndecl_54143_fields f2fs_do_collapse fndecl 2 54143 NULL
++change_protection_range_fndecl_54141_fields change_protection_range fndecl 3-2 54141 NULL nohasharray
++carl9170_exec_cmd_fndecl_54141_fields carl9170_exec_cmd fndecl 3 54141 &change_protection_range_fndecl_54141_fields
++netvsc_change_mtu_fndecl_54142_fields netvsc_change_mtu fndecl 2 54142 NULL
++f2fs_do_collapse_fndecl_54143_fields f2fs_do_collapse fndecl 3-2 54143 NULL
+brcmf_usb_dl_writeimage_fndecl_54144_fields brcmf_usb_dl_writeimage fndecl 3 54144 NULL
+hs_cur_bits_cfs_hash_54147_fields hs_cur_bits cfs_hash 0 54147 NULL
+sp2_write_i2c_fndecl_54157_fields sp2_write_i2c fndecl 4 54157 NULL
@@ -201911,8 +206568,10 @@ index 0000000..6b5367db
+writebuf_size_tomoyo_io_buffer_54169_fields writebuf_size tomoyo_io_buffer 0 54169 NULL
+st_nci_probe_fndecl_54170_fields st_nci_probe fndecl 2 54170 NULL
+handle_one_ule_extension_fndecl_54174_fields handle_one_ule_extension fndecl 0 54174 NULL
++_osd_req_encode_partition_fndecl_54177_fields _osd_req_encode_partition fndecl 2 54177 NULL
+num_bytes_drm_dp_remote_dpcd_write_54181_fields num_bytes drm_dp_remote_dpcd_write 0 54181 NULL
-+ecc_size_mtk_nfc_fdm_54182_fields ecc_size mtk_nfc_fdm 0 54182 NULL
++y1_drm_rect_54182_fields y1 drm_rect 0 54182 NULL nohasharray
++ecc_size_mtk_nfc_fdm_54182_fields ecc_size mtk_nfc_fdm 0 54182 &y1_drm_rect_54182_fields
+len_xfs_alloc_arg_54187_fields len xfs_alloc_arg 0 54187 NULL
+nfs_llseek_dir_fndecl_54192_fields nfs_llseek_dir fndecl 2 54192 NULL
+tp_ep_bcm5974_config_54193_fields tp_ep bcm5974_config 0 54193 NULL
@@ -201921,64 +206580,70 @@ index 0000000..6b5367db
+contexts_nouveau_fence_priv_54204_fields contexts nouveau_fence_priv 0 54204 NULL nohasharray
+ath6kl_interface_add_fndecl_54204_fields ath6kl_interface_add fndecl 5 54204 &contexts_nouveau_fence_priv_54204_fields
+___ieee80211_stop_tx_ba_session_fndecl_54205_fields ___ieee80211_stop_tx_ba_session fndecl 2 54205 NULL
++min_priority_binder_node_54207_fields min_priority binder_node 0 54207 NULL nohasharray
++nframes_bcm_msg_head_54207_fields nframes bcm_msg_head 0 54207 &min_priority_binder_node_54207_fields
+alloced_ctxt_eager_bufs_54208_fields alloced ctxt_eager_bufs 0 54208 NULL
+__lock_page_killable_fndecl_54210_fields __lock_page_killable fndecl 0 54210 NULL nohasharray
+mxt_bootloader_write_fndecl_54210_fields mxt_bootloader_write fndecl 3 54210 &__lock_page_killable_fndecl_54210_fields
+page_offset_ixgbe_rx_buffer_54214_fields page_offset ixgbe_rx_buffer 0 54214 NULL
+post_send_ib_device_54215_fields post_send ib_device 0 54215 NULL
-+tx_ring_size_ql_adapter_54220_fields tx_ring_size ql_adapter 0 54220 NULL nohasharray
-+append_frame_to_pkt_fndecl_54220_fields append_frame_to_pkt fndecl 2 54220 &tx_ring_size_ql_adapter_54220_fields
++append_frame_to_pkt_fndecl_54220_fields append_frame_to_pkt fndecl 2 54220 NULL nohasharray
++tx_ring_size_ql_adapter_54220_fields tx_ring_size ql_adapter 0 54220 &append_frame_to_pkt_fndecl_54220_fields
+lib80211_tkip_encrypt_fndecl_54222_fields lib80211_tkip_encrypt fndecl 2 54222 NULL
+num_boxes_intel_uncore_type_54227_fields num_boxes intel_uncore_type 0 54227 NULL
+vbi_hlen_saa7134_dev_54228_fields vbi_hlen saa7134_dev 0 54228 NULL
+do_init_dirent_fndecl_54230_fields do_init_dirent fndecl 5 54230 NULL
+skb_copy_and_csum_datagram_msg_fndecl_54237_fields skb_copy_and_csum_datagram_msg fndecl 2 54237 NULL
+tcp_queue_rcv_fndecl_54242_fields tcp_queue_rcv fndecl 3 54242 NULL
-+upper_margin_fb_var_screeninfo_54245_fields upper_margin fb_var_screeninfo 0 54245 NULL
++upper_margin_fb_var_screeninfo_54245_fields upper_margin fb_var_screeninfo 0 54245 NULL nohasharray
++pcnet32_realloc_rx_ring_fndecl_54245_fields pcnet32_realloc_rx_ring fndecl 3 54245 &upper_margin_fb_var_screeninfo_54245_fields
+la_last_gd_ocfs2_super_54246_fields la_last_gd ocfs2_super 0 54246 NULL
+num_counters_compat_ipt_replace_54249_fields num_counters compat_ipt_replace 0 54249 NULL
+ttm_object_device_init_fndecl_54252_fields ttm_object_device_init fndecl 2 54252 NULL
++fl_size_qset_params_54254_fields fl_size qset_params 0 54254 NULL
+__erst_read_fndecl_54256_fields __erst_read fndecl 1 54256 NULL
+ssb_bus_scan_fndecl_54257_fields ssb_bus_scan fndecl 2 54257 NULL
+msdu_len_htt_rx_in_ord_msdu_desc_54278_fields msdu_len htt_rx_in_ord_msdu_desc 0 54278 NULL
+xfs_bmap_split_indlen_fndecl_54284_fields xfs_bmap_split_indlen fndecl 0 54284 NULL
+key_size_crypt_config_54287_fields key_size crypt_config 0 54287 NULL
++create_cq_user_fndecl_54288_fields create_cq_user fndecl 5 54288 NULL
+thoff_flow_dissector_key_control_54299_fields thoff flow_dissector_key_control 0 54299 NULL
+rss_key_size_i40evf_adapter_54301_fields rss_key_size i40evf_adapter 0 54301 NULL
+ntfs_attr_extend_initialized_fndecl_54303_fields ntfs_attr_extend_initialized fndecl 2 54303 NULL nohasharray
+count_ext4_new_flex_group_data_54303_fields count ext4_new_flex_group_data 0 54303 &ntfs_attr_extend_initialized_fndecl_54303_fields
+ceph_osdc_start_request_fndecl_54305_fields ceph_osdc_start_request fndecl 0 54305 NULL
++capi_write_fndecl_54323_fields capi_write fndecl 3 54323 NULL
++pci_alloc_irq_vectors_fndecl_54324_fields pci_alloc_irq_vectors fndecl 3 54324 NULL
+determine_backup_region_fndecl_54330_fields determine_backup_region fndecl 1-2 54330 NULL
+length_acpi_table_header_54332_fields length acpi_table_header 0 54332 NULL
-+vringh_iov_push_user_fndecl_54340_fields vringh_iov_push_user fndecl 3 54340 NULL nohasharray
-+iscsi_conn_setup_fndecl_54340_fields iscsi_conn_setup fndecl 2 54340 &vringh_iov_push_user_fndecl_54340_fields
++vringh_iov_push_user_fndecl_54340_fields vringh_iov_push_user fndecl 3 54340 NULL
+max_rcvbuf_size_tipc_server_54342_fields max_rcvbuf_size tipc_server 0 54342 NULL
+max_raw_minors_vardecl_raw_c_54348_fields max_raw_minors vardecl_raw.c 0 54348 NULL
-+p_offset_elf32_phdr_54352_fields p_offset elf32_phdr 0 54352 NULL
+hfsplus_block_allocate_fndecl_54353_fields hfsplus_block_allocate fndecl 0-3-2 54353 NULL
-+s_fpbmask_ufs_sb_private_info_54354_fields s_fpbmask ufs_sb_private_info 0 54354 NULL
++s_fpbmask_ufs_sb_private_info_54354_fields s_fpbmask ufs_sb_private_info 0 54354 NULL nohasharray
++rmmio_base_amdgpu_device_54354_fields rmmio_base amdgpu_device 0 54354 &s_fpbmask_ufs_sb_private_info_54354_fields
+encode_netobj_fndecl_54356_fields encode_netobj fndecl 3 54356 NULL
+radeon_vram_limit_vardecl_54357_fields radeon_vram_limit vardecl 0 54357 NULL
+tpm_tis_i2c_send_fndecl_54358_fields tpm_tis_i2c_send fndecl 3 54358 NULL
+pkt_size_rx_pkt_status_54360_fields pkt_size rx_pkt_status 0 54360 NULL
+ceph_get_caps_fndecl_54363_fields ceph_get_caps fndecl 0 54363 NULL nohasharray
+len_ieee_types_vendor_header_54363_fields len ieee_types_vendor_header 0 54363 &ceph_get_caps_fndecl_54363_fields
-+mlx4_ib_get_cq_umem_fndecl_54371_fields mlx4_ib_get_cq_umem fndecl 5-6 54371 NULL nohasharray
++mlx4_ib_get_cq_umem_fndecl_54371_fields mlx4_ib_get_cq_umem fndecl 6-5 54371 NULL nohasharray
+num_cpu_pages_radeon_gart_54371_fields num_cpu_pages radeon_gart 0 54371 &mlx4_ib_get_cq_umem_fndecl_54371_fields
-+paddr_vmcore_54380_fields paddr vmcore 0 54380 NULL
-+iwl_nvm_read_chunk_fndecl_54381_fields iwl_nvm_read_chunk fndecl 0 54381 NULL
++saved_priority_binder_transaction_54377_fields saved_priority binder_transaction 0 54377 NULL
+btrfs_copy_file_range_fndecl_54383_fields btrfs_copy_file_range fndecl 4-2-5 54383 NULL
+bt878_adr_bt878_54384_fields bt878_adr bt878 0 54384 NULL
+mt7601u_rx_next_seg_len_fndecl_54390_fields mt7601u_rx_next_seg_len fndecl 0 54390 NULL
-+csum_offset_nft_payload_set_54397_fields csum_offset nft_payload_set 0 54397 NULL
++csum_offset_nft_payload_set_54397_fields csum_offset nft_payload_set 0 54397 NULL nohasharray
++ring_size_netvsc_device_54397_fields ring_size netvsc_device 0 54397 &csum_offset_nft_payload_set_54397_fields
+memsize_viafb_par_54399_fields memsize viafb_par 0 54399 NULL
+leaf_shift_left_fndecl_54401_fields leaf_shift_left fndecl 3 54401 NULL
+_osd_req_alist_elem_size_fndecl_54403_fields _osd_req_alist_elem_size fndecl 0-2 54403 NULL
+gr_ep0_respond_fndecl_54405_fields gr_ep0_respond fndecl 3 54405 NULL
+len_a2mp_cmd_54407_fields len a2mp_cmd 0 54407 NULL
-+vmw_execbuf_submit_fifo_fndecl_54409_fields vmw_execbuf_submit_fifo fndecl 3 54409 NULL nohasharray
-+wp_retry_size_smb_version_operations_54409_fields wp_retry_size smb_version_operations 0 54409 &vmw_execbuf_submit_fifo_fndecl_54409_fields nohasharray
-+xfs_ialloc_ag_select_fndecl_54409_fields xfs_ialloc_ag_select fndecl 2-0 54409 &wp_retry_size_smb_version_operations_54409_fields
++wp_retry_size_smb_version_operations_54409_fields wp_retry_size smb_version_operations 0 54409 NULL nohasharray
++vmw_execbuf_submit_fifo_fndecl_54409_fields vmw_execbuf_submit_fifo fndecl 3 54409 &wp_retry_size_smb_version_operations_54409_fields nohasharray
++xfs_ialloc_ag_select_fndecl_54409_fields xfs_ialloc_ag_select fndecl 2-0 54409 &vmw_execbuf_submit_fifo_fndecl_54409_fields
+mthca_alloc_icm_coherent_fndecl_54412_fields mthca_alloc_icm_coherent fndecl 3 54412 NULL
+user_height_soc_camera_device_54417_fields user_height soc_camera_device 0 54417 NULL
+qlcnic_process_lro_fndecl_54418_fields qlcnic_process_lro fndecl 4-3 54418 NULL
@@ -201988,31 +206653,29 @@ index 0000000..6b5367db
+startbit_netlbl_lsm_catmap_54432_fields startbit netlbl_lsm_catmap 0 54432 NULL
+ieee80211_add_tx_radiotap_header_fndecl_54443_fields ieee80211_add_tx_radiotap_header fndecl 5 54443 NULL
+jbd2_journal_get_write_access_fndecl_54444_fields jbd2_journal_get_write_access fndecl 0 54444 NULL
++virtio_transport_stream_enqueue_fndecl_54452_fields virtio_transport_stream_enqueue fndecl 3 54452 NULL
+upd_ltab_fndecl_54459_fields upd_ltab fndecl 3 54459 NULL
+a_count_posix_acl_54461_fields a_count posix_acl 0 54461 NULL nohasharray
+vringh_init_kern_fndecl_54461_fields vringh_init_kern fndecl 3 54461 &a_count_posix_acl_54461_fields
-+ide_inb_fndecl_54462_fields ide_inb fndecl 0 54462 NULL nohasharray
-+ide_mm_inb_fndecl_54462_fields ide_mm_inb fndecl 0 54462 &ide_inb_fndecl_54462_fields
+mlxsw_emad_alloc_fndecl_54469_fields mlxsw_emad_alloc fndecl 2 54469 NULL
+memory_device_code_ms_boot_attr_info_54474_fields memory_device_code ms_boot_attr_info 0 54474 NULL
+ocfs2_divide_xattr_cluster_fndecl_54477_fields ocfs2_divide_xattr_cluster fndecl 3-4 54477 NULL
+initial_height_vmw_private_54479_fields initial_height vmw_private 0 54479 NULL nohasharray
+adf7242_write_fbuf_fndecl_54479_fields adf7242_write_fbuf fndecl 3 54479 &initial_height_vmw_private_54479_fields
++ceph_auth_entity_name_encode_fndecl_54483_fields ceph_auth_entity_name_encode fndecl 0 54483 NULL
+spi_write_buf_fndecl_54490_fields spi_write_buf fndecl 2 54490 NULL
-+do_preadv_fndecl_54493_fields do_preadv fndecl 3 54493 NULL
+n_chan_comedi_subdevice_54496_fields n_chan comedi_subdevice 0 54496 NULL
+dev_start_strip_zone_54501_fields dev_start strip_zone 0 54501 NULL
+max_fds_fdtable_54502_fields max_fds fdtable 0 54502 NULL
+mwifiex_set_gen_ie_helper_fndecl_54506_fields mwifiex_set_gen_ie_helper fndecl 3 54506 NULL
-+m_agfrotor_xfs_mount_54510_fields m_agfrotor xfs_mount 0 54510 NULL nohasharray
-+get_rxfh_indir_size_ethtool_ops_54510_fields get_rxfh_indir_size ethtool_ops 0 54510 &m_agfrotor_xfs_mount_54510_fields
++get_rxfh_indir_size_ethtool_ops_54510_fields get_rxfh_indir_size ethtool_ops 0 54510 NULL nohasharray
++m_agfrotor_xfs_mount_54510_fields m_agfrotor xfs_mount 0 54510 &get_rxfh_indir_size_ethtool_ops_54510_fields
+__btrfs_buffered_write_fndecl_54524_fields __btrfs_buffered_write fndecl 3 54524 NULL
+ocfs2_read_dir_block_direct_fndecl_54528_fields ocfs2_read_dir_block_direct fndecl 2 54528 NULL
+num_ccells_cnic_local_54538_fields num_ccells cnic_local 0 54538 NULL
+v_sync_strt_wid_crtc_54541_fields v_sync_strt_wid crtc 0 54541 NULL nohasharray
+bandlength_Kiara_table_entry_54541_fields bandlength Kiara_table_entry 0 54541 &v_sync_strt_wid_crtc_54541_fields
+s_dev_table_count_exofs_fscb_54542_fields s_dev_table_count exofs_fscb 0 54542 NULL
-+smaps_hugetlb_range_fndecl_54549_fields smaps_hugetlb_range fndecl 3 54549 NULL
+pages_snd_sg_buf_54557_fields pages snd_sg_buf 0 54557 NULL
+interval_exp_blk_integrity_54558_fields interval_exp blk_integrity 0 54558 NULL
+ath6kl_wmi_probe_report_req_cmd_fndecl_54576_fields ath6kl_wmi_probe_report_req_cmd fndecl 2 54576 NULL
@@ -202028,15 +206691,15 @@ index 0000000..6b5367db
+alloc_block_buf_fndecl_54594_fields alloc_block_buf fndecl 1 54594 NULL
+vmw_local_fifo_reserve_fndecl_54601_fields vmw_local_fifo_reserve fndecl 2 54601 NULL
+fat32_length_fat_bios_param_block_54606_fields fat32_length fat_bios_param_block 0 54606 NULL
++nfs4_get_acl_uncached_fndecl_54608_fields nfs4_get_acl_uncached fndecl 3 54608 NULL
+adfs_f_read_fndecl_54612_fields adfs_f_read fndecl 2 54612 NULL
-+pages_in_unit___stripe_pages_2d_54623_fields pages_in_unit __stripe_pages_2d 0 54623 NULL nohasharray
-+nr_frames_frame_vector_54623_fields nr_frames frame_vector 0 54623 &pages_in_unit___stripe_pages_2d_54623_fields
++pages_in_unit___stripe_pages_2d_54623_fields pages_in_unit __stripe_pages_2d 0 54623 NULL
+ext4_new_meta_blocks_fndecl_54631_fields ext4_new_meta_blocks fndecl 0 54631 NULL
+vt1211_device_add_fndecl_54634_fields vt1211_device_add fndecl 1 54634 NULL
+text_len_printk_log_54636_fields text_len printk_log 0 54636 NULL nohasharray
+bits_per_sample_soc_mbus_pixelfmt_54636_fields bits_per_sample soc_mbus_pixelfmt 0 54636 &text_len_printk_log_54636_fields
-+scif_create_remote_window_fndecl_54638_fields scif_create_remote_window fndecl 2 54638 NULL nohasharray
-+n_tx_channels_efx_nic_54638_fields n_tx_channels efx_nic 0 54638 &scif_create_remote_window_fndecl_54638_fields
++n_tx_channels_efx_nic_54638_fields n_tx_channels efx_nic 0 54638 NULL nohasharray
++scif_create_remote_window_fndecl_54638_fields scif_create_remote_window fndecl 2 54638 &n_tx_channels_efx_nic_54638_fields
+extra_mpdu_prefix_len_lib80211_crypto_ops_54644_fields extra_mpdu_prefix_len lib80211_crypto_ops 0 54644 NULL nohasharray
+nchannels_cosa_data_54644_fields nchannels cosa_data 0 54644 &extra_mpdu_prefix_len_lib80211_crypto_ops_54644_fields
+MaxChainDepth_mpt3sas_facts_54646_fields MaxChainDepth mpt3sas_facts 0 54646 NULL
@@ -202050,10 +206713,10 @@ index 0000000..6b5367db
+ssid_len_hostap_bss_info_54670_fields ssid_len hostap_bss_info 0 54670 NULL
+sb_imax_pct_xfs_sb_54671_fields sb_imax_pct xfs_sb 0 54671 NULL
+id_pps_device_54684_fields id pps_device 0 54684 NULL
++i2c_transfer_fndecl_54685_fields i2c_transfer fndecl 0 54685 NULL
+fwbulkwritelen_tda10048_config_54693_fields fwbulkwritelen tda10048_config 0 54693 NULL
+num_queue_pairs_i40e_vsi_54696_fields num_queue_pairs i40e_vsi 0 54696 NULL
+max_pages_per_frmr_ocrdma_dev_attr_54699_fields max_pages_per_frmr ocrdma_dev_attr 0 54699 NULL
-+ia_rows_ar5416IniArray_54700_fields ia_rows ar5416IniArray 0 54700 NULL
+osd_req_op_notify_ack_init_fndecl_54701_fields osd_req_op_notify_ack_init fndecl 6 54701 NULL
+qed_sriov_configure_fndecl_54702_fields qed_sriov_configure fndecl 2 54702 NULL
+bo_number_drm_amdgpu_bo_list_in_54706_fields bo_number drm_amdgpu_bo_list_in 0 54706 NULL
@@ -202063,7 +206726,8 @@ index 0000000..6b5367db
+queue_size_eata_info_54734_fields queue_size eata_info 0 54734 NULL
+wBytesPerInterval_usb_ss_ep_comp_descriptor_54739_fields wBytesPerInterval usb_ss_ep_comp_descriptor 0 54739 NULL
+end_writequeue_entry_54752_fields end writequeue_entry 0 54752 NULL
-+lpfc_hba_queue_depth_init_fndecl_54754_fields lpfc_hba_queue_depth_init fndecl 2 54754 NULL
++mei_cldev_send_fndecl_54754_fields mei_cldev_send fndecl 3 54754 NULL nohasharray
++lpfc_hba_queue_depth_init_fndecl_54754_fields lpfc_hba_queue_depth_init fndecl 2 54754 &mei_cldev_send_fndecl_54754_fields
+size__drm_via_cmdbuffer_54755_fields size _drm_via_cmdbuffer 0 54755 NULL
+spi_xcomm_setup_transfer_fndecl_54757_fields spi_xcomm_setup_transfer fndecl 0 54757 NULL
+qib_lkey_table_size_vardecl_qib_verbs_c_54764_fields qib_lkey_table_size vardecl_qib_verbs.c 0 54764 NULL
@@ -202071,9 +206735,12 @@ index 0000000..6b5367db
+x_len_ccp_ecc_point_54774_fields x_len ccp_ecc_point 0 54774 NULL
+start_fstrim_range_54775_fields start fstrim_range 0 54775 NULL
+append_cnt_ixgbe_cb_54776_fields append_cnt ixgbe_cb 0 54776 NULL
-+ext_channel_count_hda_gen_spec_54778_fields ext_channel_count hda_gen_spec 0 54778 NULL
++hpfs_fiemap_fndecl_54778_fields hpfs_fiemap fndecl 4 54778 NULL nohasharray
++ext_channel_count_hda_gen_spec_54778_fields ext_channel_count hda_gen_spec 0 54778 &hpfs_fiemap_fndecl_54778_fields
+xfs_rtallocate_extent_fndecl_54783_fields xfs_rtallocate_extent fndecl 2-8-4-0 54783 NULL
-+rcvegrbuf_chunks_qib_ctxtdata_54789_fields rcvegrbuf_chunks qib_ctxtdata 0 54789 NULL
++ieee80211_amsdu_to_8023s_fndecl_54787_fields ieee80211_amsdu_to_8023s fndecl 5 54787 NULL
++fp_num_rx_qede_dev_54789_fields fp_num_rx qede_dev 0 54789 NULL nohasharray
++rcvegrbuf_chunks_qib_ctxtdata_54789_fields rcvegrbuf_chunks qib_ctxtdata 0 54789 &fp_num_rx_qede_dev_54789_fields
+size_dvb_ringbuffer_54794_fields size dvb_ringbuffer 0 54794 NULL
+num_sg_agp_memory_54800_fields num_sg agp_memory 0 54800 NULL
+num_snd_bebob_meter_spec_54805_fields num snd_bebob_meter_spec 0 54805 NULL
@@ -202085,66 +206752,76 @@ index 0000000..6b5367db
+mtu_cap_rxe_port_54821_fields mtu_cap rxe_port 0 54821 NULL
+target_count_dm_ioctl_54826_fields target_count dm_ioctl 0 54826 NULL
+last_adv_data_len_discovery_state_54833_fields last_adv_data_len discovery_state 0 54833 NULL
-+kernel_readv_fndecl_54834_fields kernel_readv fndecl 3 54834 NULL
++kernel_readv_fndecl_54834_fields kernel_readv fndecl 0 54834 NULL
++ixgbe_pci_sriov_configure_fndecl_54843_fields ixgbe_pci_sriov_configure fndecl 2 54843 NULL
+bgpio_bits_gpio_chip_54844_fields bgpio_bits gpio_chip 0 54844 NULL
+reiserfs_readpages_fndecl_54846_fields reiserfs_readpages fndecl 4 54846 NULL
+request_lock_fndecl_54853_fields request_lock fndecl 4 54853 NULL
+addr_len_net_device_54857_fields addr_len net_device 0 54857 NULL
+sr_blkno_ocfs2_suballoc_result_54860_fields sr_blkno ocfs2_suballoc_result 0 54860 NULL
-+shmem_file_llseek_fndecl_54863_fields shmem_file_llseek fndecl 2 54863 NULL nohasharray
-+mru_ippp_struct_54863_fields mru ippp_struct 0 54863 &shmem_file_llseek_fndecl_54863_fields
++mru_ippp_struct_54863_fields mru ippp_struct 0 54863 NULL nohasharray
++shmem_file_llseek_fndecl_54863_fields shmem_file_llseek fndecl 2 54863 &mru_ippp_struct_54863_fields
+leaf_copy_boundary_item_fndecl_54870_fields leaf_copy_boundary_item fndecl 4 54870 NULL
+cxgb4_iov_configure_fndecl_54874_fields cxgb4_iov_configure fndecl 2 54874 NULL
+bufsize_nm256_stream_54875_fields bufsize nm256_stream 0 54875 NULL
++tt_stat_ofs_cyttsp4_opcfg_54880_fields tt_stat_ofs cyttsp4_opcfg 0 54880 NULL
+md_super_write_fndecl_54884_fields md_super_write fndecl 4-3 54884 NULL
+__breadahead_fndecl_54896_fields __breadahead fndecl 3-2 54896 NULL
+dm_table_create_fndecl_54900_fields dm_table_create fndecl 3 54900 NULL
+ext4_es_cache_extent_fndecl_54906_fields ext4_es_cache_extent fndecl 2-3 54906 NULL
+numa_distance_cnt_vardecl_numa_c_54911_fields numa_distance_cnt vardecl_numa.c 0 54911 NULL
++pcan_dump_mem_fndecl_54915_fields pcan_dump_mem fndecl 3 54915 NULL
+iscsit_build_pdu_and_seq_lists_fndecl_54916_fields iscsit_build_pdu_and_seq_lists fndecl 2 54916 NULL
+line_length_fb_fix_screeninfo_54923_fields line_length fb_fix_screeninfo 0 54923 NULL nohasharray
+ipr_copy_ucode_buffer_fndecl_54923_fields ipr_copy_ucode_buffer fndecl 3 54923 &line_length_fb_fix_screeninfo_54923_fields
+sector_dm_io_region_54924_fields sector dm_io_region 0 54924 NULL
-+__clone_blkaddrs_fndecl_54943_fields __clone_blkaddrs fndecl 6-5 54943 NULL
++addr_ihex_binrec_54928_fields addr ihex_binrec 0 54928 NULL
++__clone_blkaddrs_fndecl_54943_fields __clone_blkaddrs fndecl 5-6 54943 NULL
+blk_queue_logical_block_size_fndecl_54946_fields blk_queue_logical_block_size fndecl 2 54946 NULL
+page_add_anon_rmap_fndecl_54950_fields page_add_anon_rmap fndecl 3 54950 NULL
+encx24j600_cmdn_fndecl_54953_fields encx24j600_cmdn fndecl 4 54953 NULL nohasharray
+per_rxd_space_vxge_hw_ring_attr_54953_fields per_rxd_space vxge_hw_ring_attr 0 54953 &encx24j600_cmdn_fndecl_54953_fields
+log_blocks_per_seg_f2fs_super_block_54960_fields log_blocks_per_seg f2fs_super_block 0 54960 NULL
+pci_enable_sriov_fndecl_54962_fields pci_enable_sriov fndecl 2 54962 NULL
++gb_operation_create_flags_fndecl_54976_fields gb_operation_create_flags fndecl 4 54976 NULL
+offset_usb_iso_packet_descriptor_54977_fields offset usb_iso_packet_descriptor 0 54977 NULL
+v4l2_src_w_yuv_playback_info_54979_fields v4l2_src_w yuv_playback_info 0 54979 NULL
++len_cn_msg_54981_fields len cn_msg 0 54981 NULL
+rx_frame_size_pn533_frame_ops_54990_fields rx_frame_size pn533_frame_ops 0 54990 NULL
+ns_last_cno_the_nilfs_54997_fields ns_last_cno the_nilfs 0 54997 NULL
+rx_bufsize_bc_state_54999_fields rx_bufsize bc_state 0 54999 NULL nohasharray
+send_wqe_overhead_fndecl_54999_fields send_wqe_overhead fndecl 0 54999 &rx_bufsize_bc_state_54999_fields
-+of_irq_to_resource_fndecl_55008_fields of_irq_to_resource fndecl 2 55008 NULL
+reply_payload_rcv_len_iscsi_bsg_reply_55012_fields reply_payload_rcv_len iscsi_bsg_reply 0 55012 NULL
+of_pci_get_host_bridge_resources_fndecl_55015_fields of_pci_get_host_bridge_resources fndecl 3-2 55015 NULL
+cz_smu_populate_single_scratch_entry_fndecl_55022_fields cz_smu_populate_single_scratch_entry fndecl 3 55022 NULL
+get_memsize_fndecl_55032_fields get_memsize fndecl 0 55032 NULL
+ov518_i2c_r_fndecl_55039_fields ov518_i2c_r fndecl 0 55039 NULL
++length_i2400m_tlv_hdr_55043_fields length i2400m_tlv_hdr 0 55043 NULL
+vram_end_amdgpu_mc_55051_fields vram_end amdgpu_mc 0 55051 NULL
+h_panel_info_55057_fields h panel_info 0 55057 NULL nohasharray
+osd_xres_vardecl_ivtvfb_c_55057_fields osd_xres vardecl_ivtvfb.c 0 55057 &h_panel_info_55057_fields
+olo_num_comps_pnfs_osd_layout_55062_fields olo_num_comps pnfs_osd_layout 0 55062 NULL
-+restart_sge_fndecl_55067_fields restart_sge fndecl 0-4-3 55067 NULL
+size_netup_unidvb_buffer_55068_fields size netup_unidvb_buffer 0 55068 NULL
++sddr55_get_capacity_fndecl_55072_fields sddr55_get_capacity fndecl 0 55072 NULL
+p9_virtio_zc_request_fndecl_55074_fields p9_virtio_zc_request fndecl 6-5-7 55074 NULL
+dev_dm_ioctl_55075_fields dev dm_ioctl 0 55075 NULL
-+btrfs_truncate_block_fndecl_55083_fields btrfs_truncate_block fndecl 2 55083 NULL nohasharray
-+__snd_rawmidi_transmit_ack_fndecl_55083_fields __snd_rawmidi_transmit_ack fndecl 0-2 55083 &btrfs_truncate_block_fndecl_55083_fields
++cp_pad_len_eata_info_55079_fields cp_pad_len eata_info 0 55079 NULL
++__snd_rawmidi_transmit_ack_fndecl_55083_fields __snd_rawmidi_transmit_ack fndecl 0-2 55083 NULL nohasharray
++btrfs_truncate_block_fndecl_55083_fields btrfs_truncate_block fndecl 2 55083 &__snd_rawmidi_transmit_ack_fndecl_55083_fields
+frame_len_b43legacy_rxhdr_fw3_55086_fields frame_len b43legacy_rxhdr_fw3 0 55086 NULL
++mockup_gpio_add_fndecl_55094_fields mockup_gpio_add fndecl 5 55094 NULL
+vlan_rx_desc_55097_fields vlan rx_desc 0 55097 NULL
-+nftids_tid_info_55104_fields nftids tid_info 0 55104 NULL nohasharray
-+fat_mirror_bhs_fndecl_55104_fields fat_mirror_bhs fndecl 0 55104 &nftids_tid_info_55104_fields
-+num_channels_ad5360_chip_info_55106_fields num_channels ad5360_chip_info 0 55106 NULL nohasharray
-+fat_dir_entries_fat_bios_param_block_55106_fields fat_dir_entries fat_bios_param_block 0 55106 &num_channels_ad5360_chip_info_55106_fields
++capsule_count_efi_querycapsulecapabilities_55100_fields capsule_count efi_querycapsulecapabilities 0 55100 NULL
++fat_mirror_bhs_fndecl_55104_fields fat_mirror_bhs fndecl 0 55104 NULL nohasharray
++nftids_tid_info_55104_fields nftids tid_info 0 55104 &fat_mirror_bhs_fndecl_55104_fields
++fat_dir_entries_fat_bios_param_block_55106_fields fat_dir_entries fat_bios_param_block 0 55106 NULL nohasharray
++num_channels_ad5360_chip_info_55106_fields num_channels ad5360_chip_info 0 55106 &fat_dir_entries_fat_bios_param_block_55106_fields
+pnfs_num_cont_bytes_fndecl_55107_fields pnfs_num_cont_bytes fndecl 0-2 55107 NULL
+min_channel_count_hda_gen_spec_55108_fields min_channel_count hda_gen_spec 0 55108 NULL
+scatterwalk_ffwd_fndecl_55110_fields scatterwalk_ffwd fndecl 3 55110 NULL
+y_zoran_overlay_settings_55113_fields y zoran_overlay_settings 0 55113 NULL
+unpack_to_rootfs_fndecl_55124_fields unpack_to_rootfs fndecl 2 55124 NULL
++length_dw_radeon_cs_chunk_55128_fields length_dw radeon_cs_chunk 0 55128 NULL
+ea_data_len_gfs2_ea_header_55134_fields ea_data_len gfs2_ea_header 0 55134 NULL
+___ieee80211_stop_rx_ba_session_fndecl_55145_fields ___ieee80211_stop_rx_ba_session fndecl 2 55145 NULL
+namelen_dlm_lock_params_55146_fields namelen dlm_lock_params 0 55146 NULL
@@ -202154,16 +206831,17 @@ index 0000000..6b5367db
+sb_start_md_rdev_55161_fields sb_start md_rdev 0 55161 NULL
+bytes_xfered_i40iw_cq_poll_info_55165_fields bytes_xfered i40iw_cq_poll_info 0 55165 NULL
+len_replay_entry_55168_fields len replay_entry 0 55168 NULL
++create_cache_fndecl_55175_fields create_cache fndecl 3-4-2 55175 NULL
+pid_filter_count_dvb_usb_adapter_fe_properties_55180_fields pid_filter_count dvb_usb_adapter_fe_properties 0 55180 NULL
+hpfs_load_code_page_fndecl_55184_fields hpfs_load_code_page fndecl 2 55184 NULL
+rvda_opregion_asle_55185_fields rvda opregion_asle 0 55185 NULL
+result_dio_55189_fields result dio 0 55189 NULL
-+extended_capabilities_len_wiphy_iftype_ext_capab_55191_fields extended_capabilities_len wiphy_iftype_ext_capab 0 55191 NULL nohasharray
-+n_limits_ieee80211_iface_combination_55191_fields n_limits ieee80211_iface_combination 0 55191 &extended_capabilities_len_wiphy_iftype_ext_capab_55191_fields
++extended_capabilities_len_wiphy_iftype_ext_capab_55191_fields extended_capabilities_len wiphy_iftype_ext_capab 0 55191 NULL
+vmxnet3_change_mtu_fndecl_55195_fields vmxnet3_change_mtu fndecl 2 55195 NULL
+seg_count_agp_region_55196_fields seg_count agp_region 0 55196 NULL
++pfn_remap_pfn_55200_fields pfn remap_pfn 0 55200 NULL
+drm_gtf2_2c_fndecl_55202_fields drm_gtf2_2c fndecl 0 55202 NULL
-+len_uffdio_range_55211_fields len uffdio_range 0 55211 NULL
++srp_map_sg_entry_fndecl_55210_fields srp_map_sg_entry fndecl 0 55210 NULL
+num_eqs_mlx4_caps_55225_fields num_eqs mlx4_caps 0 55225 NULL
+adv_instance_cnt_hci_dev_55228_fields adv_instance_cnt hci_dev 0 55228 NULL
+iwl_read_prph_fndecl_55229_fields iwl_read_prph fndecl 0 55229 NULL
@@ -202173,20 +206851,21 @@ index 0000000..6b5367db
+nvme_rdma_init_queue_fndecl_55245_fields nvme_rdma_init_queue fndecl 3 55245 NULL
+mwifiex_set_encode_fndecl_55247_fields mwifiex_set_encode fndecl 4 55247 NULL
+d_reclen_venus_dirent_55253_fields d_reclen venus_dirent 0 55253 NULL
-+__filemap_fdatawrite_range_fndecl_55259_fields __filemap_fdatawrite_range fndecl 0-2-3 55259 NULL
++__filemap_fdatawrite_range_fndecl_55259_fields __filemap_fdatawrite_range fndecl 0-2 55259 NULL
+mbox_count_blogic_adapter_55274_fields mbox_count blogic_adapter 0 55274 NULL
+bSubframeSize_uac_format_type_i_discrete_descriptor_55277_fields bSubframeSize uac_format_type_i_discrete_descriptor 0 55277 NULL nohasharray
+sgoffset_cxgbi_task_data_55277_fields sgoffset cxgbi_task_data 0 55277 &bSubframeSize_uac_format_type_i_discrete_descriptor_55277_fields
+apic_phys_vardecl_apic_c_55279_fields apic_phys vardecl_apic.c 0 55279 NULL nohasharray
+ext2_acl_from_disk_fndecl_55279_fields ext2_acl_from_disk fndecl 2 55279 &apic_phys_vardecl_apic_c_55279_fields
++xfs_refcount_find_left_extents_fndecl_55280_fields xfs_refcount_find_left_extents fndecl 4-5 55280 NULL
+ld_default_stripe_count_lov_desc_55281_fields ld_default_stripe_count lov_desc 0 55281 NULL
+copy_to_urb_fndecl_55284_fields copy_to_urb fndecl 5-4 55284 NULL
+hdrlen_ipv6_rt_hdr_55289_fields hdrlen ipv6_rt_hdr 0 55289 NULL
+c_can_read_msg_object_fndecl_55291_fields c_can_read_msg_object fndecl 3 55291 NULL
+regmap_irq_chip_get_base_fndecl_55298_fields regmap_irq_chip_get_base fndecl 0 55298 NULL
+upd_bytes_ubi_volume_55301_fields upd_bytes ubi_volume 0 55301 NULL
++restore_reserve_on_error_fndecl_55305_fields restore_reserve_on_error fndecl 3 55305 NULL
+tgt_cnt_snic_report_tgts_cmpl_55306_fields tgt_cnt snic_report_tgts_cmpl 0 55306 NULL
-+mxl111sf_stream_config_bulk_fndecl_55308_fields mxl111sf_stream_config_bulk fndecl 2 55308 NULL
+xfs_dialloc_fndecl_55309_fields xfs_dialloc fndecl 2 55309 NULL
+xfs_log_mount_fndecl_55312_fields xfs_log_mount fndecl 3-4 55312 NULL
+bm_page_io_async_fndecl_55313_fields bm_page_io_async fndecl 2 55313 NULL nohasharray
@@ -202202,7 +206881,6 @@ index 0000000..6b5367db
+st_sensors_spi_read_multiple_byte_fndecl_55393_fields st_sensors_spi_read_multiple_byte fndecl 4 55393 NULL
+dxfer_len_skd_sg_io_55394_fields dxfer_len skd_sg_io 0 55394 NULL
+index_capsule_info_55396_fields index capsule_info 0 55396 NULL
-+nprim_symtab_55398_fields nprim symtab 0 55398 NULL
+skb_to_sgvec_fndecl_55400_fields skb_to_sgvec fndecl 0-4-3 55400 NULL
+data_len_nf_conntrack_helper_55405_fields data_len nf_conntrack_helper 0 55405 NULL
+first_sd_index_i40iw_hmc_info_55411_fields first_sd_index i40iw_hmc_info 0 55411 NULL
@@ -202249,7 +206927,8 @@ index 0000000..6b5367db
+crtcs_psb_ops_55540_fields crtcs psb_ops 0 55540 NULL
+rf_blkno_ocfs2_refcount_block_55545_fields rf_blkno ocfs2_refcount_block 0 55545 NULL
+tmp_afs_call_55554_fields tmp afs_call 0 55554 NULL
-+usVSyncOffset__ATOM_DTD_FORMAT_55558_fields usVSyncOffset _ATOM_DTD_FORMAT 0 55558 NULL
++usVSyncOffset__ATOM_DTD_FORMAT_55558_fields usVSyncOffset _ATOM_DTD_FORMAT 0 55558 NULL nohasharray
++max_i2s_channels_hdmi_codec_pdata_55558_fields max_i2s_channels hdmi_codec_pdata 0 55558 &usVSyncOffset__ATOM_DTD_FORMAT_55558_fields
+read_reg_fndecl_55560_fields read_reg fndecl 0 55560 NULL
+iv_len_ieee80211_key_conf_55561_fields iv_len ieee80211_key_conf 0 55561 NULL
+io_tlb_overflow_vardecl_swiotlb_c_55570_fields io_tlb_overflow vardecl_swiotlb.c 0 55570 NULL
@@ -202258,7 +206937,7 @@ index 0000000..6b5367db
+coh_page_bufsize_cl_object_header_55585_fields coh_page_bufsize cl_object_header 0 55585 NULL
+rcvtid_size_ctxt_eager_bufs_55589_fields rcvtid_size ctxt_eager_bufs 0 55589 NULL
+split_by_ceph_inode_frag_55595_fields split_by ceph_inode_frag 0 55595 NULL
-+ext4_punch_hole_fndecl_55604_fields ext4_punch_hole fndecl 2-3 55604 NULL
++ext4_punch_hole_fndecl_55604_fields ext4_punch_hole fndecl 3-2 55604 NULL
+overlay_out_top_vivid_dev_55610_fields overlay_out_top vivid_dev 0 55610 NULL
+udplite_manip_pkt_fndecl_55611_fields udplite_manip_pkt fndecl 4 55611 NULL
+length_ipw_rx_frame_55612_fields length ipw_rx_frame 0 55612 NULL
@@ -202268,19 +206947,20 @@ index 0000000..6b5367db
+bin_string_fndecl_55631_fields bin_string fndecl 5-3 55631 NULL
+max_pkt_size_cx231xx_isoc_ctl_55637_fields max_pkt_size cx231xx_isoc_ctl 0 55637 NULL
+extra_tx_headroom_ieee80211_hw_55638_fields extra_tx_headroom ieee80211_hw 0 55638 NULL
-+mr_umem_get_fndecl_55642_fields mr_umem_get fndecl 2-3 55642 NULL
++mr_umem_get_fndecl_55642_fields mr_umem_get fndecl 3-2 55642 NULL
+rcvidx_isar_hw_55643_fields rcvidx isar_hw 0 55643 NULL nohasharray
+__blockdev_direct_IO_fndecl_55643_fields __blockdev_direct_IO fndecl 0 55643 &rcvidx_isar_hw_55643_fields
+sr_read_sector_fndecl_55647_fields sr_read_sector fndecl 3 55647 NULL
+start_sector_mspro_sys_info_55650_fields start_sector mspro_sys_info 0 55650 NULL
++sg_nents_fndecl_55654_fields sg_nents fndecl 0 55654 NULL
+raid10_copies_raid_set_55657_fields raid10_copies raid_set 0 55657 NULL
+max_len_ovs_action_trunc_55658_fields max_len ovs_action_trunc 0 55658 NULL
+ath6kl_sdio_io_fndecl_55662_fields ath6kl_sdio_io fndecl 5 55662 NULL
+pagl_rightrec_xfs_perag_55670_fields pagl_rightrec xfs_perag 0 55670 NULL
+smsc47m1_handle_resources_fndecl_55676_fields smsc47m1_handle_resources fndecl 1 55676 NULL
+al_stripes_drbd_md_55679_fields al_stripes drbd_md 0 55679 NULL
-+omfs_iget_fndecl_55693_fields omfs_iget fndecl 2 55693 NULL nohasharray
-+cp2112_i2c_write_read_req_fndecl_55693_fields cp2112_i2c_write_read_req fndecl 0-4 55693 &omfs_iget_fndecl_55693_fields
++omfs_iget_fndecl_55693_fields omfs_iget fndecl 2 55693 NULL
++clk_register_fixed_factor_fndecl_55695_fields clk_register_fixed_factor fndecl 5 55695 NULL
+st_nci_hci_dm_update_aid_fndecl_55699_fields st_nci_hci_dm_update_aid fndecl 3 55699 NULL
+unique_pos_vardecl_jfs_dtree_c_55709_fields unique_pos vardecl_jfs_dtree.c 0 55709 NULL
+inline_wsize_rpcrdma_create_data_internal_55719_fields inline_wsize rpcrdma_create_data_internal 0 55719 NULL
@@ -202291,7 +206971,8 @@ index 0000000..6b5367db
+max_eq_mlx4_func_55747_fields max_eq mlx4_func 0 55747 NULL
+nilfs_mdt_set_entry_size_fndecl_55751_fields nilfs_mdt_set_entry_size fndecl 2-3 55751 NULL nohasharray
+pad_len_ubifs_pad_node_55751_fields pad_len ubifs_pad_node 0 55751 &nilfs_mdt_set_entry_size_fndecl_55751_fields
-+idma64_active_desc_size_fndecl_55752_fields idma64_active_desc_size fndecl 0 55752 NULL
++idma64_active_desc_size_fndecl_55752_fields idma64_active_desc_size fndecl 0 55752 NULL nohasharray
++__az6007_read_fndecl_55752_fields __az6007_read fndecl 6 55752 &idma64_active_desc_size_fndecl_55752_fields
+nilfs_cpfile_read_fndecl_55758_fields nilfs_cpfile_read fndecl 2 55758 NULL nohasharray
+cap_nvme_rdma_ctrl_55758_fields cap nvme_rdma_ctrl 0 55758 &nilfs_cpfile_read_fndecl_55758_fields
+lane_cnt_mipi_config_55759_fields lane_cnt mipi_config 0 55759 NULL
@@ -202299,9 +206980,9 @@ index 0000000..6b5367db
+get_current_sit_page_fndecl_55771_fields get_current_sit_page fndecl 2 55771 NULL nohasharray
+flag_lpfc_dmabufext_55771_fields flag lpfc_dmabufext 0 55771 &get_current_sit_page_fndecl_55771_fields
+dump_emit_fndecl_55772_fields dump_emit fndecl 3 55772 NULL
++ppp_write_fndecl_55777_fields ppp_write fndecl 3 55777 NULL
+width_cx25821_channel_55782_fields width cx25821_channel 0 55782 NULL
+MaxLiteCmds_vardecl_ips_c_55793_fields MaxLiteCmds vardecl_ips.c 0 55793 NULL
-+lbs_lowrssi_write_fndecl_55802_fields lbs_lowrssi_write fndecl 3 55802 NULL
+media_dev_t_vardecl_media_devnode_c_55805_fields media_dev_t vardecl_media-devnode.c 0 55805 NULL
+xennet_tx_setup_grant_fndecl_55807_fields xennet_tx_setup_grant fndecl 3-2 55807 NULL
+velocity_rx_copy_fndecl_55812_fields velocity_rx_copy fndecl 2 55812 NULL
@@ -202310,12 +206991,13 @@ index 0000000..6b5367db
+sd_blksz_fw_dl_btmrvl_sdio_card_55832_fields sd_blksz_fw_dl btmrvl_sdio_card 0 55832 NULL
+dvb_ringbuffer_init_fndecl_55834_fields dvb_ringbuffer_init fndecl 3 55834 NULL
+or51132_readbuf_fndecl_55836_fields or51132_readbuf fndecl 3 55836 NULL
++__jffs2_ref_totlen_fndecl_55842_fields __jffs2_ref_totlen fndecl 0 55842 NULL
+max_cnt_i40iw_hmc_obj_info_55847_fields max_cnt i40iw_hmc_obj_info 0 55847 NULL
+dr_free_blk_ocfs2_dx_root_block_55848_fields dr_free_blk ocfs2_dx_root_block 0 55848 NULL
+s_segment_usage_size_nilfs_super_block_55851_fields s_segment_usage_size nilfs_super_block 0 55851 NULL
+__cfg80211_disconnected_fndecl_55853_fields __cfg80211_disconnected fndecl 3 55853 NULL
-+rdma_rw_init_map_wrs_fndecl_55859_fields rdma_rw_init_map_wrs fndecl 5-6 55859 NULL
-+ceph_msgpool_init_fndecl_55860_fields ceph_msgpool_init fndecl 3-4 55860 NULL
++rdma_rw_init_map_wrs_fndecl_55859_fields rdma_rw_init_map_wrs fndecl 5 55859 NULL
++ceph_msgpool_init_fndecl_55860_fields ceph_msgpool_init fndecl 3 55860 NULL
+snd_cwnd_tcp_sock_55861_fields snd_cwnd tcp_sock 0 55861 NULL
+__find_pending_exception_fndecl_55867_fields __find_pending_exception fndecl 3 55867 NULL
+__nonstatic_find_io_region_fndecl_55871_fields __nonstatic_find_io_region fndecl 2-3 55871 NULL
@@ -202330,7 +207012,7 @@ index 0000000..6b5367db
+major_char_device_struct_55907_fields major char_device_struct 0 55907 NULL
+mrf24j40_long_regmap_read_fndecl_55922_fields mrf24j40_long_regmap_read fndecl 3-5 55922 NULL
+nf_nat_mangle_udp_packet_fndecl_55926_fields nf_nat_mangle_udp_packet fndecl 6-8 55926 NULL
-+do_readv_writev_fndecl_55934_fields do_readv_writev fndecl 4 55934 NULL
++do_readv_writev_fndecl_55934_fields do_readv_writev fndecl 0 55934 NULL
+change_prot_numa_fndecl_55935_fields change_prot_numa fndecl 3-2 55935 NULL
+autofs4_write_fndecl_55944_fields autofs4_write fndecl 4 55944 NULL
+image_size_nvbios_pcirT_55946_fields image_size nvbios_pcirT 0 55946 NULL
@@ -202340,7 +207022,6 @@ index 0000000..6b5367db
+pkey_table_len_mthca_limits_55962_fields pkey_table_len mthca_limits 0 55962 NULL
+transfer_buffer_length_urb_55970_fields transfer_buffer_length urb 0 55970 NULL nohasharray
+data2_sisusb_command_55970_fields data2 sisusb_command 0 55970 &transfer_buffer_length_urb_55970_fields
-+num_channels_max1027_chip_info_55971_fields num_channels max1027_chip_info 0 55971 NULL
+subbuf_size_rchan_55979_fields subbuf_size rchan 0 55979 NULL nohasharray
+scsi_sense_length_se_cmd_55979_fields scsi_sense_length se_cmd 0 55979 &subbuf_size_rchan_55979_fields
+mon_bin_get_data_fndecl_55998_fields mon_bin_get_data fndecl 0-4 55998 NULL
@@ -202348,23 +207029,24 @@ index 0000000..6b5367db
+len_pipe_buffer_56007_fields len pipe_buffer 0 56007 NULL
+qib_cdev_init_fndecl_56009_fields qib_cdev_init fndecl 1 56009 NULL
+midi_snd_bebob_stream_formation_56012_fields midi snd_bebob_stream_formation 0 56012 NULL
-+usbtest_alloc_urb_fndecl_56013_fields usbtest_alloc_urb fndecl 2 56013 NULL
++usbtest_alloc_urb_fndecl_56013_fields usbtest_alloc_urb fndecl 2-5-3 56013 NULL nohasharray
++max_rx_buffers_qed_roce_ll2_params_56013_fields max_rx_buffers qed_roce_ll2_params 0 56013 &usbtest_alloc_urb_fndecl_56013_fields nohasharray
++_osdv1_req_encode_common_fndecl_56013_fields _osdv1_req_encode_common fndecl 2 56013 &max_rx_buffers_qed_roce_ll2_params_56013_fields
+i2400m_change_mtu_fndecl_56021_fields i2400m_change_mtu fndecl 2 56021 NULL
-+num_pins_lola_pin_array_56022_fields num_pins lola_pin_array 0 56022 NULL
+__ocfs2_change_file_space_fndecl_56023_fields __ocfs2_change_file_space fndecl 3 56023 NULL
+vlan_id_ib_mac_iocb_rsp_56025_fields vlan_id ib_mac_iocb_rsp 0 56025 NULL
+ov519_pkt_scan_fndecl_56026_fields ov519_pkt_scan fndecl 3 56026 NULL
+vbi_pixel_to_capture_vardecl_saa7146_vbi_c_56037_fields vbi_pixel_to_capture vardecl_saa7146_vbi.c 0 56037 NULL nohasharray
-+sg_update_list_fndecl_56037_fields sg_update_list fndecl 2 56037 &vbi_pixel_to_capture_vardecl_saa7146_vbi_c_56037_fields nohasharray
-+temp_num_nct6683_data_56037_fields temp_num nct6683_data 0 56037 &sg_update_list_fndecl_56037_fields
++sg_update_list_fndecl_56037_fields sg_update_list fndecl 2 56037 &vbi_pixel_to_capture_vardecl_saa7146_vbi_c_56037_fields
+wr_len_i40iw_sq_uk_wr_trk_info_56039_fields wr_len i40iw_sq_uk_wr_trk_info 0 56039 NULL
+totalram_pages_vardecl_56043_fields totalram_pages vardecl 0 56043 NULL
+hpi_instream_read_buf_fndecl_56045_fields hpi_instream_read_buf fndecl 3 56045 NULL
+status_whc_qtd_56049_fields status whc_qtd 0 56049 NULL
-+usb_wwan_setup_urb_fndecl_56054_fields usb_wwan_setup_urb fndecl 6-3-2 56054 NULL
++usb_wwan_setup_urb_fndecl_56054_fields usb_wwan_setup_urb fndecl 3-2-6 56054 NULL
+mod_xfs_alloc_arg_56058_fields mod xfs_alloc_arg 0 56058 NULL
+drm_mm_insert_helper_range_fndecl_56060_fields drm_mm_insert_helper_range fndecl 3 56060 NULL
+xfs_trans_free_extent_fndecl_56063_fields xfs_trans_free_extent fndecl 3-4 56063 NULL
++chainsize_ctlr_info_56067_fields chainsize ctlr_info 0 56067 NULL
+frag_ceph_mds_reply_dirfrag_56070_fields frag ceph_mds_reply_dirfrag 0 56070 NULL
+full_page_bnx2x_agg_info_56071_fields full_page bnx2x_agg_info 0 56071 NULL
+pkcs1pad_sg_set_buf_fndecl_56076_fields pkcs1pad_sg_set_buf fndecl 3 56076 NULL
@@ -202374,9 +207056,7 @@ index 0000000..6b5367db
+datalength_fwheader_56097_fields datalength fwheader 0 56097 NULL
+l_sectBBsize_xlog_56103_fields l_sectBBsize xlog 0 56103 NULL
+max_frame_size__synclinkmp_info_56104_fields max_frame_size _synclinkmp_info 0 56104 NULL
-+max_request_packet_size_ec_response_get_protocol_info_56107_fields max_request_packet_size ec_response_get_protocol_info 0 56107 NULL
+p54_alloc_skb_fndecl_56109_fields p54_alloc_skb fndecl 3 56109 NULL
-+hw_context_send_context_56118_fields hw_context send_context 0 56118 NULL
+q0_depth_bna_rx_config_56122_fields q0_depth bna_rx_config 0 56122 NULL
+ath5k_setup_channels_fndecl_56123_fields ath5k_setup_channels fndecl 0 56123 NULL nohasharray
+max_queue_depth_vardecl_mpt3sas_base_c_56123_fields max_queue_depth vardecl_mpt3sas_base.c 0 56123 &ath5k_setup_channels_fndecl_56123_fields
@@ -202395,16 +207075,15 @@ index 0000000..6b5367db
+rx_ring_size_bnx2_56185_fields rx_ring_size bnx2 0 56185 NULL
+geneve_build_skb_fndecl_56186_fields geneve_build_skb fndecl 5 56186 NULL
+wl1271_tx_fill_hdr_fndecl_56191_fields wl1271_tx_fill_hdr fndecl 4 56191 NULL
-+kmemleak_free_part_fndecl_56193_fields kmemleak_free_part fndecl 2 56193 NULL
-+rx_data_fndecl_56202_fields rx_data fndecl 4-3 56202 NULL nohasharray
++rx_data_fndecl_56202_fields rx_data fndecl 4 56202 NULL nohasharray
+qgroupid_btrfs_qgroup_56202_fields qgroupid btrfs_qgroup 0 56202 &rx_data_fndecl_56202_fields
+dlen_pg_56210_fields dlen pg 0 56210 NULL
+jffs2_fill_wbuf_fndecl_56212_fields jffs2_fill_wbuf fndecl 3 56212 NULL
+width_v4l2_mbus_framefmt_56214_fields width v4l2_mbus_framefmt 0 56214 NULL
+ath10k_htt_tx_fetch_resp_fndecl_56215_fields ath10k_htt_tx_fetch_resp fndecl 5 56215 NULL
+sample_stack_user_perf_event_attr_56220_fields sample_stack_user perf_event_attr 0 56220 NULL
-+reg_cache_size_snd_soc_codec_driver_56222_fields reg_cache_size snd_soc_codec_driver 0 56222 NULL nohasharray
-+offset_cifs_writedata_56222_fields offset cifs_writedata 0 56222 &reg_cache_size_snd_soc_codec_driver_56222_fields
++offset_cifs_writedata_56222_fields offset cifs_writedata 0 56222 NULL nohasharray
++reg_cache_size_snd_soc_codec_driver_56222_fields reg_cache_size snd_soc_codec_driver 0 56222 &offset_cifs_writedata_56222_fields
+reg_cache_size_omap_mcbsp_56223_fields reg_cache_size omap_mcbsp 0 56223 NULL
+depth_s2255_fmt_56229_fields depth s2255_fmt 0 56229 NULL
+psn_mask_rvt_driver_params_56230_fields psn_mask rvt_driver_params 0 56230 NULL
@@ -202414,9 +207093,10 @@ index 0000000..6b5367db
+max_recv_dlength_iscsi_bus_flash_conn_56238_fields max_recv_dlength iscsi_bus_flash_conn 0 56238 NULL
+af9013_wr_regs_fndecl_56239_fields af9013_wr_regs fndecl 4 56239 NULL
+wBlockNumber_ms_bootblock_sysinf_56240_fields wBlockNumber ms_bootblock_sysinf 0 56240 NULL
++qlcnic_set_tx_ring_count_fndecl_56242_fields qlcnic_set_tx_ring_count fndecl 2 56242 NULL
+cfpkt_peek_head_fndecl_56245_fields cfpkt_peek_head fndecl 3 56245 NULL
-+qtd_fill_fndecl_56249_fields qtd_fill fndecl 5-6-3-4 56249 NULL nohasharray
-+ima_calc_buffer_hash_fndecl_56249_fields ima_calc_buffer_hash fndecl 2 56249 &qtd_fill_fndecl_56249_fields
++ima_calc_buffer_hash_fndecl_56249_fields ima_calc_buffer_hash fndecl 2 56249 NULL
++baud_rate_cypress_private_56253_fields baud_rate cypress_private 0 56253 NULL
+dmreq_start_crypt_config_56268_fields dmreq_start crypt_config 0 56268 NULL
+flows_cnt_fq_56276_fields flows_cnt fq 0 56276 NULL nohasharray
+vyres_crtc_56276_fields vyres crtc 0 56276 &flows_cnt_fq_56276_fields
@@ -202424,12 +207104,11 @@ index 0000000..6b5367db
+pci_mmconfig_add_fndecl_56279_fields pci_mmconfig_add fndecl 2-3-4 56279 NULL
+dram_base_intel_sst_drv_56282_fields dram_base intel_sst_drv 0 56282 NULL
+header_length_txentry_desc_56288_fields header_length txentry_desc 0 56288 NULL
-+nr_rates_audioformat_56293_fields nr_rates audioformat 0 56293 NULL
+intel_rotation_info_size_fndecl_56294_fields intel_rotation_info_size fndecl 0 56294 NULL
+ttymajor_vardecl_synclink_gt_c_56300_fields ttymajor vardecl_synclink_gt.c 0 56300 NULL
+ext4_fallocate_fndecl_56314_fields ext4_fallocate fndecl 3-4 56314 NULL
+essid_len_ipw_priv_56318_fields essid_len ipw_priv 0 56318 NULL
-+ebt_compat_match_offset_fndecl_56334_fields ebt_compat_match_offset fndecl 0 56334 NULL
++ebt_compat_match_offset_fndecl_56334_fields ebt_compat_match_offset fndecl 0-2 56334 NULL
+ath6kl_wmi_ap_set_apsd_fndecl_56339_fields ath6kl_wmi_ap_set_apsd fndecl 2 56339 NULL
+drm_atomic_helper_plane_set_property_fndecl_56340_fields drm_atomic_helper_plane_set_property fndecl 3 56340 NULL
+tx_ring_size_bnx2_56345_fields tx_ring_size bnx2 0 56345 NULL
@@ -202442,6 +207121,7 @@ index 0000000..6b5367db
+ide_set_pio_mode_fndecl_56371_fields ide_set_pio_mode fndecl 2 56371 NULL
+xfs_alloc_ag_max_usable_fndecl_56380_fields xfs_alloc_ag_max_usable fndecl 0 56380 NULL
+len_asd_ha_addrspace_56381_fields len asd_ha_addrspace 0 56381 NULL
++nd_cmd_in_size_fndecl_56386_fields nd_cmd_in_size fndecl 0 56386 NULL
+stride_geom_56394_fields stride geom 0 56394 NULL
+ieee80211_fragment_fndecl_56395_fields ieee80211_fragment fndecl 4-3 56395 NULL
+lost_out_tcp_sock_56397_fields lost_out tcp_sock 0 56397 NULL
@@ -202449,16 +207129,16 @@ index 0000000..6b5367db
+ccw_clear_fndecl_56408_fields ccw_clear fndecl 3-5-6-4 56408 NULL
+f2fs_llseek_fndecl_56409_fields f2fs_llseek fndecl 2 56409 NULL
+ieee80211_auth_challenge_fndecl_56418_fields ieee80211_auth_challenge fndecl 3 56418 NULL
-+notify_change_fndecl_56420_fields notify_change fndecl 0 56420 NULL
++notify_change_fndecl_56420_fields notify_change fndecl 0 56420 NULL nohasharray
++hd_priv_size_gb_hd_driver_56420_fields hd_priv_size gb_hd_driver 0 56420 &notify_change_fndecl_56420_fields
+max_recv_wr_ib_qp_cap_56426_fields max_recv_wr ib_qp_cap 0 56426 NULL
+llc_ui_sendmsg_fndecl_56432_fields llc_ui_sendmsg fndecl 3 56432 NULL
+ath6kl_wmi_cancel_remain_on_chnl_cmd_fndecl_56434_fields ath6kl_wmi_cancel_remain_on_chnl_cmd fndecl 2 56434 NULL nohasharray
+write_node_fndecl_56434_fields write_node fndecl 4 56434 &ath6kl_wmi_cancel_remain_on_chnl_cmd_fndecl_56434_fields
-+idx_lebs_ubifs_lp_stats_56439_fields idx_lebs ubifs_lp_stats 0 56439 NULL nohasharray
-+hsync_end_drm_display_mode_56439_fields hsync_end drm_display_mode 0 56439 &idx_lebs_ubifs_lp_stats_56439_fields nohasharray
++hsync_end_drm_display_mode_56439_fields hsync_end drm_display_mode 0 56439 NULL nohasharray
+bdbars_count_intel8x0_56439_fields bdbars_count intel8x0 0 56439 &hsync_end_drm_display_mode_56439_fields
-+vlan_tag_lro_56441_fields vlan_tag lro 0 56441 NULL nohasharray
-+fb_sys_write_fndecl_56441_fields fb_sys_write fndecl 0 56441 &vlan_tag_lro_56441_fields
++fb_sys_write_fndecl_56441_fields fb_sys_write fndecl 0 56441 NULL nohasharray
++vlan_tag_lro_56441_fields vlan_tag lro 0 56441 &fb_sys_write_fndecl_56441_fields
+gtk_ivlen_iwl_mvm_56442_fields gtk_ivlen iwl_mvm 0 56442 NULL nohasharray
+num_rx_queues_igb_adapter_56442_fields num_rx_queues igb_adapter 0 56442 &gtk_ivlen_iwl_mvm_56442_fields
+DataTransferLength_bulk_cb_wrap_56447_fields DataTransferLength bulk_cb_wrap 0 56447 NULL
@@ -202471,27 +207151,25 @@ index 0000000..6b5367db
+tpg_init_fndecl_56464_fields tpg_init fndecl 3-2 56464 NULL
+ia_size_iattr_56465_fields ia_size iattr 0 56465 NULL nohasharray
+packet_sendmsg_fndecl_56465_fields packet_sendmsg fndecl 3 56465 &ia_size_iattr_56465_fields
-+banks_mca_config_56472_fields banks mca_config 0 56472 NULL
+__erst_clear_from_storage_fndecl_56476_fields __erst_clear_from_storage fndecl 1 56476 NULL
+sb_cnt_qed_sb_cnt_info_56477_fields sb_cnt qed_sb_cnt_info 0 56477 NULL
+func_suspend_usb_function_56478_fields func_suspend usb_function 0 56478 NULL
++dataflash_read_fact_otp_fndecl_56487_fields dataflash_read_fact_otp fndecl 3-2 56487 NULL
+ext4_split_convert_extents_fndecl_56493_fields ext4_split_convert_extents fndecl 0 56493 NULL
+nci_hci_send_cmd_fndecl_56495_fields nci_hci_send_cmd fndecl 5 56495 NULL
+free_bit_ocfs2_cached_block_free_56500_fields free_bit ocfs2_cached_block_free 0 56500 NULL
+choose_mtu_fndecl_56503_fields choose_mtu fndecl 0 56503 NULL nohasharray
+len_audit_proctitle_56503_fields len audit_proctitle 0 56503 &choose_mtu_fndecl_56503_fields
-+process_ptload_program_headers_elf64_fndecl_56505_fields process_ptload_program_headers_elf64 fndecl 3-2 56505 NULL
+stream_size_yuv_playback_info_56511_fields stream_size yuv_playback_info 0 56511 NULL
+error_retry_list_with_code_fndecl_56518_fields error_retry_list_with_code fndecl 2 56518 NULL nohasharray
+ntb_netdev_rx_handler_fndecl_56518_fields ntb_netdev_rx_handler fndecl 4 56518 &error_retry_list_with_code_fndecl_56518_fields
+num_ids_amdgpu_vm_manager_56520_fields num_ids amdgpu_vm_manager 0 56520 NULL
-+vp_modern_find_vqs_fndecl_56530_fields vp_modern_find_vqs fndecl 2 56530 NULL
+npins_byt_pinctrl_soc_data_56540_fields npins byt_pinctrl_soc_data 0 56540 NULL nohasharray
+sq_overhead_fndecl_56540_fields sq_overhead fndecl 0 56540 &npins_byt_pinctrl_soc_data_56540_fields
++xfs_reflink_remap_blocks_fndecl_56541_fields xfs_reflink_remap_blocks fndecl 2-4-5-6 56541 NULL
+priv_size_rocker_world_ops_56542_fields priv_size rocker_world_ops 0 56542 NULL
+snd_pcm_plug_client_size_fndecl_56544_fields snd_pcm_plug_client_size fndecl 0-2 56544 NULL
+max_ethqsets_sge_56552_fields max_ethqsets sge 0 56552 NULL
-+sf_size_adapter_params_56574_fields sf_size adapter_params 0 56574 NULL
+sctp_tsnmap_grow_fndecl_56579_fields sctp_tsnmap_grow fndecl 2 56579 NULL
+buf_bytes_mmc_blk_ioc_data_56589_fields buf_bytes mmc_blk_ioc_data 0 56589 NULL
+qt2_write_fndecl_56603_fields qt2_write fndecl 4 56603 NULL
@@ -202503,13 +207181,13 @@ index 0000000..6b5367db
+memremap_fndecl_56619_fields memremap fndecl 2-1 56619 NULL nohasharray
+ext4_get_block_unwritten_fndecl_56619_fields ext4_get_block_unwritten fndecl 2 56619 &memremap_fndecl_56619_fields
+afs_dir_iterate_block_fndecl_56630_fields afs_dir_iterate_block fndecl 3 56630 NULL
-+x509_note_issuer_fndecl_56631_fields x509_note_issuer fndecl 5 56631 NULL
+max_blk_count_mmc_host_56634_fields max_blk_count mmc_host 0 56634 NULL nohasharray
+get_register_page_interruptible_fndecl_56634_fields get_register_page_interruptible fndecl 5 56634 &max_blk_count_mmc_host_56634_fields nohasharray
+num_disc_configs_nci_rf_disc_cmd_56634_fields num_disc_configs nci_rf_disc_cmd 0 56634 &get_register_page_interruptible_fndecl_56634_fields
+arena_write_bytes_fndecl_56636_fields arena_write_bytes fndecl 0 56636 NULL
-+devt_device_56638_fields devt device 0 56638 NULL
++xfs_file_copy_range_fndecl_56640_fields xfs_file_copy_range fndecl 2-4-5 56640 NULL
+last_sect_blkif_request_segment_56644_fields last_sect blkif_request_segment 0 56644 NULL
++count_v4l2_requestbuffers_56650_fields count v4l2_requestbuffers 0 56650 NULL
+bytenr_btrfs_root_item_56657_fields bytenr btrfs_root_item 0 56657 NULL
+__ksize_fndecl_56662_fields __ksize fndecl 0 56662 NULL
+xlog_set_state_fndecl_56663_fields xlog_set_state fndecl 2 56663 NULL
@@ -202550,12 +207228,15 @@ index 0000000..6b5367db
+context_id_bnx2fc_rport_56807_fields context_id bnx2fc_rport 0 56807 &state_count_acpi_processor_performance_56807_fields
+num_pages_vmci_queue_kern_if_56812_fields num_pages vmci_queue_kern_if 0 56812 NULL
+hugetlbfs_pagecache_page_fndecl_56822_fields hugetlbfs_pagecache_page fndecl 3 56822 NULL
++page_base_xdr_buf_56823_fields page_base xdr_buf 0 56823 NULL
+netdev_change_mtu_fndecl_56827_fields netdev_change_mtu fndecl 2 56827 NULL
+io_size_smi_info_56832_fields io_size smi_info 0 56832 NULL nohasharray
+acked_illinois_56832_fields acked illinois 0 56832 &io_size_smi_info_56832_fields
+truesize_sk_buff_56834_fields truesize sk_buff 0 56834 NULL
++pacing_gain_bbr_56839_fields pacing_gain bbr 0 56839 NULL
+tail_TxFifo_56844_fields tail TxFifo 0 56844 NULL
+unit_size_wlan_host_mem_req_56846_fields unit_size wlan_host_mem_req 0 56846 NULL
++blocks_mmc_test_area_56853_fields blocks mmc_test_area 0 56853 NULL
+transfer_one_spi_master_56858_fields transfer_one spi_master 0 56858 NULL
+max_cq_sz_mlx4_dev_cap_56868_fields max_cq_sz mlx4_dev_cap 0 56868 NULL
+status_pipe_uas_dev_info_56869_fields status_pipe uas_dev_info 0 56869 NULL
@@ -202565,29 +207246,26 @@ index 0000000..6b5367db
+copy_file_range_file_operations_56877_fields copy_file_range file_operations 0 56877 NULL nohasharray
+fat_rebuild_parent_fndecl_56877_fields fat_rebuild_parent fndecl 2 56877 &copy_file_range_file_operations_56877_fields nohasharray
+ath6kl_wmi_set_pvb_cmd_fndecl_56877_fields ath6kl_wmi_set_pvb_cmd fndecl 2 56877 &fat_rebuild_parent_fndecl_56877_fields
-+xfs_itruncate_extents_fndecl_56879_fields xfs_itruncate_extents fndecl 4 56879 NULL nohasharray
-+scsi_execute_fndecl_56879_fields scsi_execute fndecl 5 56879 &xfs_itruncate_extents_fndecl_56879_fields
++xfs_itruncate_extents_fndecl_56879_fields xfs_itruncate_extents fndecl 4 56879 NULL
+xfs_rmap_free_fndecl_56880_fields xfs_rmap_free fndecl 0 56880 NULL
+__btrfs_set_prop_fndecl_56883_fields __btrfs_set_prop fndecl 5 56883 NULL
+dx_dirent_blk_ocfs2_dx_entry_56884_fields dx_dirent_blk ocfs2_dx_entry 0 56884 NULL
+cmtp_send_frame_fndecl_56890_fields cmtp_send_frame fndecl 3 56890 NULL
+zr364xx_got_frame_fndecl_56891_fields zr364xx_got_frame fndecl 2 56891 NULL
-+prev_adaption_gsm_dlci_56892_fields prev_adaption gsm_dlci 0 56892 NULL nohasharray
-+total_size_qed_ilt_cli_blk_56892_fields total_size qed_ilt_cli_blk 0 56892 &prev_adaption_gsm_dlci_56892_fields nohasharray
-+byte_count_drm_device_dma_56892_fields byte_count drm_device_dma 0 56892 &total_size_qed_ilt_cli_blk_56892_fields
++byte_count_drm_device_dma_56892_fields byte_count drm_device_dma 0 56892 NULL nohasharray
++total_size_qed_ilt_cli_blk_56892_fields total_size qed_ilt_cli_blk 0 56892 &byte_count_drm_device_dma_56892_fields nohasharray
++prev_adaption_gsm_dlci_56892_fields prev_adaption gsm_dlci 0 56892 &total_size_qed_ilt_cli_blk_56892_fields
++num_queues_ena_adapter_56898_fields num_queues ena_adapter 0 56898 NULL
+width_font_desc_56899_fields width font_desc 0 56899 NULL
-+eld_size_hdac_hdmi_eld_56901_fields eld_size hdac_hdmi_eld 0 56901 NULL
+xen_find_free_area_fndecl_56905_fields xen_find_free_area fndecl 0-1 56905 NULL
-+length_fw_cdev_send_response_56906_fields length fw_cdev_send_response 0 56906 NULL nohasharray
-+__process_new_xattr_fndecl_56906_fields __process_new_xattr fndecl 6-4 56906 &length_fw_cdev_send_response_56906_fields nohasharray
-+rho_hybla_56906_fields rho hybla 0 56906 &__process_new_xattr_fndecl_56906_fields
++rho_hybla_56906_fields rho hybla 0 56906 NULL nohasharray
++__process_new_xattr_fndecl_56906_fields __process_new_xattr fndecl 6-4 56906 &rho_hybla_56906_fields nohasharray
++length_fw_cdev_send_response_56906_fields length fw_cdev_send_response 0 56906 &__process_new_xattr_fndecl_56906_fields
+max_port_number_tb_regs_switch_header_56907_fields max_port_number tb_regs_switch_header 0 56907 NULL
-+mcopy_atomic_pte_fndecl_56913_fields mcopy_atomic_pte fndecl 4 56913 NULL
+diff_objects_assoc_array_ops_56914_fields diff_objects assoc_array_ops 0 56914 NULL
-+xt_compat_target_offset_fndecl_56923_fields xt_compat_target_offset fndecl 0 56923 NULL nohasharray
-+ip6_find_1stfragopt_fndecl_56923_fields ip6_find_1stfragopt fndecl 0 56923 &xt_compat_target_offset_fndecl_56923_fields
++ip6_find_1stfragopt_fndecl_56923_fields ip6_find_1stfragopt fndecl 0 56923 NULL nohasharray
++xt_compat_target_offset_fndecl_56923_fields xt_compat_target_offset fndecl 0 56923 &ip6_find_1stfragopt_fndecl_56923_fields
+vram_vardecl_nvidia_c_56925_fields vram vardecl_nvidia.c 0 56925 NULL
-+beiscsi_process_async_pdu_fndecl_56929_fields beiscsi_process_async_pdu fndecl 6 56929 NULL
+data_len_ib_mac_iocb_rsp_56930_fields data_len ib_mac_iocb_rsp 0 56930 NULL
+max_tar_initio_host_56934_fields max_tar initio_host 0 56934 NULL
+vmw_gmr_bind_fndecl_56940_fields vmw_gmr_bind fndecl 3 56940 NULL
@@ -202597,8 +207275,11 @@ index 0000000..6b5367db
+DevSizeShift_qinfo_chip_56957_fields DevSizeShift qinfo_chip 0 56957 NULL
+i_lastalloc_affs_inode_info_56961_fields i_lastalloc affs_inode_info 0 56961 NULL
+cur_pkt_size_pktgen_dev_56962_fields cur_pkt_size pktgen_dev 0 56962 NULL
++maxresp_cached_nfsd4_channel_attrs_56966_fields maxresp_cached nfsd4_channel_attrs 0 56966 NULL
++intel_engine_create_ring_fndecl_56967_fields intel_engine_create_ring fndecl 2 56967 NULL
+spanned_pages_zone_56972_fields spanned_pages zone 0 56972 NULL
-+find_next_chunk_fndecl_56983_fields find_next_chunk fndecl 0 56983 NULL
++private_pipe_buffer_56983_fields private pipe_buffer 0 56983 NULL nohasharray
++find_next_chunk_fndecl_56983_fields find_next_chunk fndecl 0 56983 &private_pipe_buffer_56983_fields
+ath6kl_wmi_startscan_cmd_fndecl_56985_fields ath6kl_wmi_startscan_cmd fndecl 8-2 56985 NULL
+i2c_hid_alloc_buffers_fndecl_56986_fields i2c_hid_alloc_buffers fndecl 2 56986 NULL
+max_packet_whc_qset_56991_fields max_packet whc_qset 0 56991 NULL nohasharray
@@ -202606,20 +207287,16 @@ index 0000000..6b5367db
+file_remove_privs_fndecl_57001_fields file_remove_privs fndecl 0 57001 NULL nohasharray
+num_tx_rings_bnx2_57001_fields num_tx_rings bnx2 0 57001 &file_remove_privs_fndecl_57001_fields
+edid_size_dlfb_data_57003_fields edid_size dlfb_data 0 57003 NULL
-+max_size_akcipher_alg_57009_fields max_size akcipher_alg 0 57009 NULL
+ext4_clear_blocks_fndecl_57012_fields ext4_clear_blocks fndecl 4-5 57012 NULL
+watchdog_cdev_register_fndecl_57017_fields watchdog_cdev_register fndecl 2 57017 NULL
-+expand_corename_fndecl_57021_fields expand_corename fndecl 2 57021 NULL
+buffer_bytes_max_snd_pcm_substream_57022_fields buffer_bytes_max snd_pcm_substream 0 57022 NULL
+xs_send_kvec_fndecl_57023_fields xs_send_kvec fndecl 5 57023 NULL
+nfs_idmap_instantiate_fndecl_57026_fields nfs_idmap_instantiate fndecl 4 57026 NULL
+usb_packet_maxlen_usb_fifo_57029_fields usb_packet_maxlen usb_fifo 0 57029 NULL
-+stacksize_xt_table_info_57031_fields stacksize xt_table_info 0 57031 NULL nohasharray
-+xfrm_count_pfkey_enc_supported_fndecl_57031_fields xfrm_count_pfkey_enc_supported fndecl 0 57031 &stacksize_xt_table_info_57031_fields
++xfrm_count_pfkey_enc_supported_fndecl_57031_fields xfrm_count_pfkey_enc_supported fndecl 0 57031 NULL nohasharray
++stacksize_xt_table_info_57031_fields stacksize xt_table_info 0 57031 &xfrm_count_pfkey_enc_supported_fndecl_57031_fields
+do_munmap_fndecl_57035_fields do_munmap fndecl 2-3 57035 NULL
-+size_mb_flash_desc_57036_fields size_mb flash_desc 0 57036 NULL
+ib_qib_max_cqes_vardecl_57049_fields ib_qib_max_cqes vardecl 0 57049 NULL
-+elem_size_bpf_array_57051_fields elem_size bpf_array 0 57051 NULL
+i_subdirs_ceph_inode_info_57052_fields i_subdirs ceph_inode_info 0 57052 NULL
+index_scsi_disk_57053_fields index scsi_disk 0 57053 NULL
+nsindex_size_nvdimm_drvdata_57060_fields nsindex_size nvdimm_drvdata 0 57060 NULL
@@ -202629,19 +207306,19 @@ index 0000000..6b5367db
+dm_pool_block_is_used_fndecl_57067_fields dm_pool_block_is_used fndecl 0 57067 NULL
+ezusb_write_ltv_fndecl_57071_fields ezusb_write_ltv fndecl 4 57071 NULL nohasharray
+exponent_size_dw_guc_css_header_57071_fields exponent_size_dw guc_css_header 0 57071 &ezusb_write_ltv_fndecl_57071_fields
++set_one_prio_fndecl_57075_fields set_one_prio fndecl 2 57075 NULL
+mem_map_size_efx_nic_type_57089_fields mem_map_size efx_nic_type 0 57089 NULL
+num_uars_mlx4_caps_57093_fields num_uars mlx4_caps 0 57093 NULL nohasharray
+xfs_submit_ioend_fndecl_57093_fields xfs_submit_ioend fndecl 3-0 57093 &num_uars_mlx4_caps_57093_fields
-+mcs7830_get_reg_fndecl_57103_fields mcs7830_get_reg fndecl 3 57103 NULL
+total_sections_f2fs_sb_info_57118_fields total_sections f2fs_sb_info 0 57118 NULL
+submit_stripe_bio_fndecl_57124_fields submit_stripe_bio fndecl 4 57124 NULL
++bfr_len_chcr_ahash_req_ctx_57126_fields bfr_len chcr_ahash_req_ctx 0 57126 NULL
+gsm_mux_rx_netchar_fndecl_57131_fields gsm_mux_rx_netchar fndecl 3 57131 NULL
+ath10k_htt_rx_crypto_tail_len_fndecl_57132_fields ath10k_htt_rx_crypto_tail_len fndecl 0 57132 NULL
+max_write_same_sectors_queue_limits_57138_fields max_write_same_sectors queue_limits 0 57138 NULL
-+iblock_get_bio_fndecl_57139_fields iblock_get_bio fndecl 2-3 57139 NULL
++iblock_get_bio_fndecl_57139_fields iblock_get_bio fndecl 2 57139 NULL
+pack_sg_list_p_fndecl_57142_fields pack_sg_list_p fndecl 7-6 57142 NULL
+sb_agblklog_xfs_sb_57145_fields sb_agblklog xfs_sb 0 57145 NULL
-+ath6kl_usb_ctrl_msg_exchange_fndecl_57148_fields ath6kl_usb_ctrl_msg_exchange fndecl 4 57148 NULL
+vlan_dev_vlan_id_fndecl_57152_fields vlan_dev_vlan_id fndecl 0 57152 NULL
+ofs_in_node_dnode_of_data_57156_fields ofs_in_node dnode_of_data 0 57156 NULL nohasharray
+segs_per_sec_f2fs_sb_info_57156_fields segs_per_sec f2fs_sb_info 0 57156 &ofs_in_node_dnode_of_data_57156_fields
@@ -202653,42 +207330,43 @@ index 0000000..6b5367db
+udf_delete_aext_fndecl_57186_fields udf_delete_aext fndecl 4 57186 NULL
+num_vfs_mlx4_dev_persistent_57187_fields num_vfs mlx4_dev_persistent 0 57187 NULL
+z1_zt_57189_fields z1 zt 0 57189 NULL
-+max_lag_mlxsw_config_profile_57191_fields max_lag mlxsw_config_profile 0 57191 NULL
+OutputCount_smb2_ioctl_rsp_57198_fields OutputCount smb2_ioctl_rsp 0 57198 NULL
+sector_dm_crypt_io_57208_fields sector dm_crypt_io 0 57208 NULL
+frag_max_size_inet6_skb_parm_57210_fields frag_max_size inet6_skb_parm 0 57210 NULL
+osd_req_op_xattr_init_fndecl_57211_fields osd_req_op_xattr_init fndecl 6 57211 NULL
+overflow_maj_vardecl_uverbs_main_c_57216_fields overflow_maj vardecl_uverbs_main.c 0 57216 NULL
-+node_spanned_pages_pglist_data_57226_fields node_spanned_pages pglist_data 0 57226 NULL
+mss_Vmxnet3_RxCompDescExt_57228_fields mss Vmxnet3_RxCompDescExt 0 57228 NULL
+len_setup_data_57234_fields len setup_data 0 57234 NULL nohasharray
+ufs_getfrag_block_fndecl_57234_fields ufs_getfrag_block fndecl 2 57234 &len_setup_data_57234_fields
+ext4_meta_bg_first_block_no_fndecl_57235_fields ext4_meta_bg_first_block_no fndecl 0-2 57235 NULL
+header_asix_rx_fixup_info_57237_fields header asix_rx_fixup_info 0 57237 NULL nohasharray
+li_namelen_nfsd4_link_57237_fields li_namelen nfsd4_link 0 57237 &header_asix_rx_fixup_info_57237_fields
-+iomap_write_end_fndecl_57238_fields iomap_write_end fndecl 2-0-4-3 57238 NULL
++iomap_write_end_fndecl_57238_fields iomap_write_end fndecl 0-4-2-3 57238 NULL
+offset_ion_test_rw_data_57241_fields offset ion_test_rw_data 0 57241 NULL
+pkg_size_raydium_data_57243_fields pkg_size raydium_data 0 57243 NULL
++sys_dup3_fndecl_57246_fields sys_dup3 fndecl 2 57246 NULL
+maxlen_xfs_alloc_arg_57260_fields maxlen xfs_alloc_arg 0 57260 NULL
-+si2165_read_fndecl_57262_fields si2165_read fndecl 4 57262 NULL
+sc18is602_setup_transfer_fndecl_57266_fields sc18is602_setup_transfer fndecl 0 57266 NULL
+fuse_dev_do_write_fndecl_57267_fields fuse_dev_do_write fndecl 3 57267 NULL
+iwl_mvm_sta_tx_agg_stop_fndecl_57274_fields iwl_mvm_sta_tx_agg_stop fndecl 4 57274 NULL
+mps_l2cap_le_conn_rsp_57280_fields mps l2cap_le_conn_rsp 0 57280 NULL
+entry_nr_kvm_assigned_msix_nr_57282_fields entry_nr kvm_assigned_msix_nr 0 57282 NULL
++dds_flags_p_sizes_57290_fields dds_flags p_sizes 0 57290 NULL
+packet_sz_musb_ep_57296_fields packet_sz musb_ep 0 57296 NULL
+ie_len_parsed_vndr_ie_info_57299_fields ie_len parsed_vndr_ie_info 0 57299 NULL
-+qtd_copy_status_fndecl_57306_fields qtd_copy_status fndecl 0-4-3 57306 NULL
++qtd_copy_status_fndecl_57306_fields qtd_copy_status fndecl 4-3-0 57306 NULL
+ptk_ivlen_iwl_mvm_57307_fields ptk_ivlen iwl_mvm 0 57307 NULL
+usCRTC_V_SyncStart__ATOM_MODE_TIMING_57308_fields usCRTC_V_SyncStart _ATOM_MODE_TIMING 0 57308 NULL nohasharray
+elf_map_fndecl_57308_fields elf_map fndecl 6 57308 &usCRTC_V_SyncStart__ATOM_MODE_TIMING_57308_fields
+orinoco_hw_get_essid_fndecl_57314_fields orinoco_hw_get_essid fndecl 0 57314 NULL
++interrupt_in_endpoint_size_ld_usb_57321_fields interrupt_in_endpoint_size ld_usb 0 57321 NULL
+sndbuf_size_rds_tcp_net_57323_fields sndbuf_size rds_tcp_net 0 57323 NULL
+acpi_gsi_to_irq_fndecl_57326_fields acpi_gsi_to_irq fndecl 1 57326 NULL
++vring_init_fndecl_57338_fields vring_init fndecl 2 57338 NULL
+ext4_expand_extra_isize_ea_fndecl_57344_fields ext4_expand_extra_isize_ea fndecl 2 57344 NULL
+root_hpfs_super_block_57345_fields root hpfs_super_block 0 57345 NULL
+align_nf_ct_ext_type_57348_fields align nf_ct_ext_type 0 57348 NULL
-+lbs_debugfs_write_fndecl_57358_fields lbs_debugfs_write fndecl 3 57358 NULL
++ixgbe_pci_sriov_enable_fndecl_57353_fields ixgbe_pci_sriov_enable fndecl 2 57353 NULL
+usFirmwareUseInKb__ATOM_FIRMWARE_VRAM_RESERVE_INFO_57360_fields usFirmwareUseInKb _ATOM_FIRMWARE_VRAM_RESERVE_INFO 0 57360 NULL
+next_burst_len_iscsi_seq_57361_fields next_burst_len iscsi_seq 0 57361 NULL
+nfs_create_request_fndecl_57363_fields nfs_create_request fndecl 5 57363 NULL
@@ -202698,23 +207376,24 @@ index 0000000..6b5367db
+tcp_retransmit_skb_fndecl_57379_fields tcp_retransmit_skb fndecl 3 57379 NULL
+kfd_pasid_alloc_fndecl_57381_fields kfd_pasid_alloc fndecl 0 57381 NULL
+ocfs2_reflink_xattr_bucket_fndecl_57395_fields ocfs2_reflink_xattr_bucket fndecl 2-6-3 57395 NULL
-+iwl_dbgfs_fw_dbg_collect_write_fndecl_57398_fields iwl_dbgfs_fw_dbg_collect_write fndecl 3 57398 NULL
++delivered_tcp_sock_57404_fields delivered tcp_sock 0 57404 NULL
+iscsit_xmit_pdu_fndecl_57408_fields iscsit_xmit_pdu fndecl 5 57408 NULL nohasharray
-+skb_pull_fndecl_57408_fields skb_pull fndecl 2 57408 &iscsit_xmit_pdu_fndecl_57408_fields nohasharray
-+cryptlen_chachapoly_req_ctx_57408_fields cryptlen chachapoly_req_ctx 0 57408 &skb_pull_fndecl_57408_fields
++cryptlen_chachapoly_req_ctx_57408_fields cryptlen chachapoly_req_ctx 0 57408 &iscsit_xmit_pdu_fndecl_57408_fields nohasharray
++skb_pull_fndecl_57408_fields skb_pull fndecl 2 57408 &cryptlen_chachapoly_req_ctx_57408_fields
+copy_page_from_iter_iovec_fndecl_57409_fields copy_page_from_iter_iovec fndecl 3 57409 NULL
+numbered_hid_report_enum_57419_fields numbered hid_report_enum 0 57419 NULL
+blkdev_get_block_fndecl_57432_fields blkdev_get_block fndecl 2 57432 NULL
+kvm_page_track_create_memslot_fndecl_57439_fields kvm_page_track_create_memslot fndecl 2 57439 NULL
++convert_tail_for_hole_fndecl_57444_fields convert_tail_for_hole fndecl 3 57444 NULL
+segsize_loc_dn_scp_57445_fields segsize_loc dn_scp 0 57445 NULL
+dln2_i2c_read_fndecl_57452_fields dln2_i2c_read fndecl 0-4 57452 NULL
+cp_table_size_radeon_rlc_57462_fields cp_table_size radeon_rlc 0 57462 NULL
+drbd_bm_capacity_fndecl_57473_fields drbd_bm_capacity fndecl 0 57473 NULL
-+wiimote_hid_send_fndecl_57475_fields wiimote_hid_send fndecl 3 57475 NULL
+leaf_copy_dir_entries_fndecl_57477_fields leaf_copy_dir_entries fndecl 6 57477 NULL
+nutrs_ufs_hba_57478_fields nutrs ufs_hba 0 57478 NULL
+data_len_ib_mad_send_buf_57480_fields data_len ib_mad_send_buf 0 57480 NULL
-+gfs2_log_get_bio_fndecl_57481_fields gfs2_log_get_bio fndecl 2 57481 NULL
++item_udata_fndecl_57481_fields item_udata fndecl 0 57481 NULL nohasharray
++gfs2_log_get_bio_fndecl_57481_fields gfs2_log_get_bio fndecl 2 57481 &item_udata_fndecl_57481_fields
+lrc_setup_wa_ctx_obj_fndecl_57482_fields lrc_setup_wa_ctx_obj fndecl 2 57482 NULL
+brcmf_sdio_glom_len_fndecl_57483_fields brcmf_sdio_glom_len fndecl 0 57483 NULL
+mps_l2cap_le_conn_req_57484_fields mps l2cap_le_conn_req 0 57484 NULL
@@ -202722,10 +207401,9 @@ index 0000000..6b5367db
+consume_q_size_vmci_qp_57492_fields consume_q_size vmci_qp 0 57492 NULL
+r8a66597_urb_done_fndecl_57497_fields r8a66597_urb_done fndecl 3 57497 NULL
+truncate_data_blocks_range_fndecl_57510_fields truncate_data_blocks_range fndecl 2 57510 NULL nohasharray
-+usnic_uiom_get_pages_fndecl_57510_fields usnic_uiom_get_pages fndecl 1 57510 &truncate_data_blocks_range_fndecl_57510_fields
++usnic_uiom_get_pages_fndecl_57510_fields usnic_uiom_get_pages fndecl 1-2 57510 &truncate_data_blocks_range_fndecl_57510_fields
+raid10_size_fndecl_57512_fields raid10_size fndecl 0-3-2 57512 NULL
+s_log_block_size_ext4_super_block_57520_fields s_log_block_size ext4_super_block 0 57520 NULL
-+igb_rd32_fndecl_57524_fields igb_rd32 fndecl 0 57524 NULL
+temp_begin_applesmc_registers_57532_fields temp_begin applesmc_registers 0 57532 NULL
+height_tw68_dev_57535_fields height tw68_dev 0 57535 NULL
+trimmed_cp_control_57542_fields trimmed cp_control 0 57542 NULL
@@ -202735,23 +207413,23 @@ index 0000000..6b5367db
+last_to_afs_call_57563_fields last_to afs_call 0 57563 NULL
+resp_len_ql4_task_data_57567_fields resp_len ql4_task_data 0 57567 NULL
+offset_mtd_part_57572_fields offset mtd_part 0 57572 NULL
-+i40e_receive_skb_fndecl_57575_fields i40e_receive_skb fndecl 3 57575 NULL nohasharray
-+pvr2_ctrl_get_max_fndecl_57575_fields pvr2_ctrl_get_max fndecl 0 57575 &i40e_receive_skb_fndecl_57575_fields
-+blkstol2_fndecl_57577_fields blkstol2 fndecl 0 57577 NULL nohasharray
-+do_mpage_readpage_fndecl_57577_fields do_mpage_readpage fndecl 3 57577 &blkstol2_fndecl_57577_fields
++pvr2_ctrl_get_max_fndecl_57575_fields pvr2_ctrl_get_max fndecl 0 57575 NULL nohasharray
++i40e_receive_skb_fndecl_57575_fields i40e_receive_skb fndecl 3 57575 &pvr2_ctrl_get_max_fndecl_57575_fields
++do_mpage_readpage_fndecl_57577_fields do_mpage_readpage fndecl 3 57577 NULL nohasharray
++blkstol2_fndecl_57577_fields blkstol2 fndecl 0 57577 &do_mpage_readpage_fndecl_57577_fields
+opt_optl_optdata_dn_57580_fields opt_optl optdata_dn 0 57580 NULL
-+ngpps_intel_community_57584_fields ngpps intel_community 0 57584 NULL
+shared_max_reservation_object_list_57587_fields shared_max reservation_object_list 0 57587 NULL
+data_dot_offset_xfs_dir_ops_57591_fields data_dot_offset xfs_dir_ops 0 57591 NULL nohasharray
+unmap_blk_desc_data_len_scsi_unmap_parm_list_57591_fields unmap_blk_desc_data_len scsi_unmap_parm_list 0 57591 &data_dot_offset_xfs_dir_ops_57591_fields
+usCRTC_V_Disp__ATOM_MODE_TIMING_57594_fields usCRTC_V_Disp _ATOM_MODE_TIMING 0 57594 NULL
+update_regset_xstate_info_fndecl_57602_fields update_regset_xstate_info fndecl 1 57602 NULL
-+buffer_bytes_osst_buffer_57604_fields buffer_bytes osst_buffer 0 57604 NULL nohasharray
-+sc_pwd_len_wl18xx_event_mailbox_57604_fields sc_pwd_len wl18xx_event_mailbox 0 57604 &buffer_bytes_osst_buffer_57604_fields
++sc_pwd_len_wl18xx_event_mailbox_57604_fields sc_pwd_len wl18xx_event_mailbox 0 57604 NULL nohasharray
++buffer_bytes_osst_buffer_57604_fields buffer_bytes osst_buffer 0 57604 &sc_pwd_len_wl18xx_event_mailbox_57604_fields
+__tcp_push_pending_frames_fndecl_57607_fields __tcp_push_pending_frames fndecl 2 57607 NULL nohasharray
+mch_bar_vardecl_cr_pll_c_57607_fields mch_bar vardecl_cr_pll.c 0 57607 &__tcp_push_pending_frames_fndecl_57607_fields
+wWidth_uvc_frame_57615_fields wWidth uvc_frame 0 57615 NULL
+vmw_framebuffer_surface_dirty_fndecl_57623_fields vmw_framebuffer_surface_dirty fndecl 6 57623 NULL
++f2fs_collapse_range_fndecl_57627_fields f2fs_collapse_range fndecl 3-2 57627 NULL
+memblock_enforce_memory_limit_fndecl_57628_fields memblock_enforce_memory_limit fndecl 1 57628 NULL
+ieee80211_mesh_rx_probe_req_fndecl_57630_fields ieee80211_mesh_rx_probe_req fndecl 3 57630 NULL nohasharray
+set_discoverable_fndecl_57630_fields set_discoverable fndecl 4 57630 &ieee80211_mesh_rx_probe_req_fndecl_57630_fields
@@ -202761,9 +207439,12 @@ index 0000000..6b5367db
+num_stripes_btrfs_bio_57647_fields num_stripes btrfs_bio 0 57647 NULL
+ctl_out_pipe_brcmf_usbdev_info_57648_fields ctl_out_pipe brcmf_usbdev_info 0 57648 NULL
+ttymajor_vardecl_moxa_c_57652_fields ttymajor vardecl_moxa.c 0 57652 NULL
++ql2xmaxqueues_vardecl_57653_fields ql2xmaxqueues vardecl 0 57653 NULL
+fuse_request_init_fndecl_57656_fields fuse_request_init fndecl 4 57656 NULL
+rbd_obj_method_sync_fndecl_57657_fields rbd_obj_method_sync fndecl 6-8 57657 NULL
-+btrfs_qgroup_release_data_fndecl_57660_fields btrfs_qgroup_release_data fndecl 2-3 57660 NULL
++btrfs_qgroup_release_data_fndecl_57660_fields btrfs_qgroup_release_data fndecl 2-3 57660 NULL nohasharray
++setup_irqs_msi_controller_57660_fields setup_irqs msi_controller 0 57660 &btrfs_qgroup_release_data_fndecl_57660_fields
++uart_get_baud_rate_fndecl_57665_fields uart_get_baud_rate fndecl 4-5-0 57665 NULL
+curheight_usb_usbvision_57669_fields curheight usb_usbvision 0 57669 NULL
+len_pn533_poll_modulations_57671_fields len pn533_poll_modulations 0 57671 NULL
+xfs_dir3_data_readahead_fndecl_57683_fields xfs_dir3_data_readahead fndecl 2 57683 NULL
@@ -202771,15 +207452,13 @@ index 0000000..6b5367db
+conflen_gss_krb5_enctype_57693_fields conflen gss_krb5_enctype 0 57693 NULL nohasharray
+phys_base_ptr_vbe_mode_ib_57693_fields phys_base_ptr vbe_mode_ib 0 57693 &conflen_gss_krb5_enctype_57693_fields
+__spi_sync_fndecl_57696_fields __spi_sync fndecl 0 57696 NULL
-+i40iw_reg_user_mr_fndecl_57699_fields i40iw_reg_user_mr fndecl 2-3 57699 NULL
++i40iw_reg_user_mr_fndecl_57699_fields i40iw_reg_user_mr fndecl 3-2 57699 NULL
+residual_datacnt_initiator_status_57708_fields residual_datacnt initiator_status 0 57708 NULL
+nfs4_xattr_set_nfs4_acl_fndecl_57711_fields nfs4_xattr_set_nfs4_acl fndecl 6 57711 NULL
+de_size_fndecl_57715_fields de_size fndecl 0-1 57715 NULL
+ttm_bo_create_fndecl_57717_fields ttm_bo_create fndecl 2 57717 NULL
+nilfs_readpages_fndecl_57718_fields nilfs_readpages fndecl 4 57718 NULL
+nports_adap_ports_57721_fields nports adap_ports 0 57721 NULL
-+x509_akid_note_kid_fndecl_57725_fields x509_akid_note_kid fndecl 5 57725 NULL
-+max_devs_vardecl_aic94xx_hwi_c_57731_fields max_devs vardecl_aic94xx_hwi.c 0 57731 NULL
+opts1_cp_desc_57736_fields opts1 cp_desc 0 57736 NULL
+buffer_width_budget_57739_fields buffer_width budget 0 57739 NULL
+used_ebs_ubi_ainf_volume_57743_fields used_ebs ubi_ainf_volume 0 57743 NULL nohasharray
@@ -202788,7 +207467,7 @@ index 0000000..6b5367db
+__videobuf_free_fndecl_57751_fields __videobuf_free fndecl 0 57751 NULL
+res_hor_val_pvr2_hdw_57754_fields res_hor_val pvr2_hdw 0 57754 NULL nohasharray
+mdts_nvme_id_ctrl_57754_fields mdts nvme_id_ctrl 0 57754 &res_hor_val_pvr2_hdw_57754_fields
-+kernel_sendmsg_fndecl_57763_fields kernel_sendmsg fndecl 0-5-4 57763 NULL
++kernel_sendmsg_fndecl_57763_fields kernel_sendmsg fndecl 0-5 57763 NULL
+numEntries__ATOM_PPLIB_ACPClk_Voltage_Limit_Table_57767_fields numEntries _ATOM_PPLIB_ACPClk_Voltage_Limit_Table 0 57767 NULL
+b_io_error_xfs_buf_57771_fields b_io_error xfs_buf 0 57771 NULL
+minor_media_devnode_57774_fields minor media_devnode 0 57774 NULL
@@ -202797,6 +207476,8 @@ index 0000000..6b5367db
+mp_rx_agg_buf_size_sdio_mmc_card_57794_fields mp_rx_agg_buf_size sdio_mmc_card 0 57794 NULL
+pos_lzma_header_57804_fields pos lzma_header 0 57804 NULL
+nic_num_sqs_en_fndecl_57805_fields nic_num_sqs_en fndecl 0-2 57805 NULL
++ri_blockcount_xfs_refcount_intent_57815_fields ri_blockcount xfs_refcount_intent 0 57815 NULL
++get_user_pages_remote_fndecl_57819_fields get_user_pages_remote fndecl 0-3 57819 NULL
+blocks_mmc_data_57821_fields blocks mmc_data 0 57821 NULL
+force_size_vardecl_pcmciamtd_c_57827_fields force_size vardecl_pcmciamtd.c 0 57827 NULL
+cmd_len_cmd_57830_fields cmd_len cmd 0 57830 NULL nohasharray
@@ -202804,9 +207485,7 @@ index 0000000..6b5367db
+ioc_count_obd_ioctl_data_57830_fields ioc_count obd_ioctl_data 0 57830 &ecc_bits_nand_onfi_params_57830_fields
+vxfs_bmap_ext4_fndecl_57831_fields vxfs_bmap_ext4 fndecl 0-2 57831 NULL nohasharray
+iscsi_complete_pdu_fndecl_57831_fields iscsi_complete_pdu fndecl 4 57831 &vxfs_bmap_ext4_fndecl_57831_fields
-+length_hsu_dma_chip_57843_fields length hsu_dma_chip 0 57843 NULL
+i_pos_hi_fat_fid_57850_fields i_pos_hi fat_fid 0 57850 NULL
-+vd_dsr_au_count_gru_vma_data_57855_fields vd_dsr_au_count gru_vma_data 0 57855 NULL
+target_to_linux_sector_fndecl_57857_fields target_to_linux_sector fndecl 0-2 57857 NULL
+nilfs_resize_fs_fndecl_57861_fields nilfs_resize_fs fndecl 2 57861 NULL
+len_splice_desc_57862_fields len splice_desc 0 57862 NULL
@@ -202815,15 +207494,13 @@ index 0000000..6b5367db
+lpfc_sli4_get_els_iocb_cnt_fndecl_57869_fields lpfc_sli4_get_els_iocb_cnt fndecl 0 57869 NULL
+fsl_spi_setup_transfer_fndecl_57873_fields fsl_spi_setup_transfer fndecl 0 57873 NULL nohasharray
+at24_adjust_write_count_fndecl_57873_fields at24_adjust_write_count fndecl 0-2-3 57873 &fsl_spi_setup_transfer_fndecl_57873_fields nohasharray
-+mac_drv_rx_init_fndecl_57873_fields mac_drv_rx_init fndecl 2 57873 &at24_adjust_write_count_fndecl_57873_fields nohasharray
-+joydev_handle_JSIOCSAXMAP_fndecl_57873_fields joydev_handle_JSIOCSAXMAP fndecl 3 57873 &mac_drv_rx_init_fndecl_57873_fields
-+length_ib_umad_packet_57875_fields length ib_umad_packet 0 57875 NULL nohasharray
-+init_pci_serial_quirk_57875_fields init pci_serial_quirk 0 57875 &length_ib_umad_packet_57875_fields
++mac_drv_rx_init_fndecl_57873_fields mac_drv_rx_init fndecl 2 57873 &at24_adjust_write_count_fndecl_57873_fields
++length_ib_umad_packet_57875_fields length ib_umad_packet 0 57875 NULL
+v4l2_src_h_yuv_playback_info_57877_fields v4l2_src_h yuv_playback_info 0 57877 NULL
+max_devices_hpt_iop_request_get_config_57889_fields max_devices hpt_iop_request_get_config 0 57889 NULL
+num_mrs_qed_rdma_pf_params_57908_fields num_mrs qed_rdma_pf_params 0 57908 NULL
++__adc12138_start_conv_fndecl_57914_fields __adc12138_start_conv fndecl 4 57914 NULL
+fat_sectors_fat_bios_param_block_57917_fields fat_sectors fat_bios_param_block 0 57917 NULL
-+devm_kmemdup_fndecl_57923_fields devm_kmemdup fndecl 3 57923 NULL
+MaxXmitDataSegmentLength_iscsi_conn_ops_57926_fields MaxXmitDataSegmentLength iscsi_conn_ops 0 57926 NULL
+mpwqe_log_stride_sz_mlx5e_params_57934_fields mpwqe_log_stride_sz mlx5e_params 0 57934 NULL
+memblock_set_current_limit_fndecl_57935_fields memblock_set_current_limit fndecl 1 57935 NULL
@@ -202831,8 +207508,7 @@ index 0000000..6b5367db
+i2c_read_fndecl_57956_fields i2c_read fndecl 0 57956 NULL
+ticket_len_rxkad_response_57960_fields ticket_len rxkad_response 0 57960 NULL
+filemap_check_errors_fndecl_57965_fields filemap_check_errors fndecl 0 57965 NULL
-+sel_write_enforce_fndecl_57973_fields sel_write_enforce fndecl 3 57973 NULL
-+rds_rm_size_fndecl_57975_fields rds_rm_size fndecl 0-2 57975 NULL
++init_speed_hci_uart_57987_fields init_speed hci_uart 0 57987 NULL
+hpfs_map_anode_fndecl_57993_fields hpfs_map_anode fndecl 2 57993 NULL
+faultin_page_fndecl_57994_fields faultin_page fndecl 3 57994 NULL
+perf_sample_ustack_size_fndecl_57995_fields perf_sample_ustack_size fndecl 0-2-1 57995 NULL
@@ -202845,39 +207521,35 @@ index 0000000..6b5367db
+xdr_buf_subsegment_fndecl_58027_fields xdr_buf_subsegment fndecl 4-3 58027 NULL
+xfs_extent_busy_reuse_fndecl_58034_fields xfs_extent_busy_reuse fndecl 4-3 58034 NULL
+reserve_btrfs_dio_data_58035_fields reserve btrfs_dio_data 0 58035 NULL
-+rindex_sc18is602_58043_fields rindex sc18is602 0 58043 NULL nohasharray
-+rtw_check_beacon_data23a_fndecl_58043_fields rtw_check_beacon_data23a fndecl 3 58043 &rindex_sc18is602_58043_fields
-+num_sqsets_csio_hw_58048_fields num_sqsets csio_hw 0 58048 NULL nohasharray
-+cur_fw_iocb_count_qla_hw_data_58048_fields cur_fw_iocb_count qla_hw_data 0 58048 &num_sqsets_csio_hw_58048_fields
++rindex_sc18is602_58043_fields rindex sc18is602 0 58043 NULL
++cur_fw_iocb_count_qla_hw_data_58048_fields cur_fw_iocb_count qla_hw_data 0 58048 NULL
+num_pairs_nvm_id_lp_mlc_58055_fields num_pairs nvm_id_lp_mlc 0 58055 NULL
+cylinders_mspro_devinfo_58057_fields cylinders mspro_devinfo 0 58057 NULL
+max_iso_npdu_cxgbit_sock_58062_fields max_iso_npdu cxgbit_sock 0 58062 NULL
+wpa_ie_len_hostap_bss_info_58063_fields wpa_ie_len hostap_bss_info 0 58063 NULL nohasharray
-+offset_m48t59_plat_data_58063_fields offset m48t59_plat_data 0 58063 &wpa_ie_len_hostap_bss_info_58063_fields nohasharray
-+buffer_size_octeon_droq_58063_fields buffer_size octeon_droq 0 58063 &offset_m48t59_plat_data_58063_fields
++buffer_size_octeon_droq_58063_fields buffer_size octeon_droq 0 58063 &wpa_ie_len_hostap_bss_info_58063_fields nohasharray
++offset_m48t59_plat_data_58063_fields offset m48t59_plat_data 0 58063 &buffer_size_octeon_droq_58063_fields
+ath10k_htt_rx_nwifi_hdrlen_fndecl_58065_fields ath10k_htt_rx_nwifi_hdrlen fndecl 0 58065 NULL
+n_dma_bufs_vardecl_mcam_core_c_58067_fields n_dma_bufs vardecl_mcam-core.c 0 58067 NULL
+max_fast_reg_page_list_len_ib_device_attr_58072_fields max_fast_reg_page_list_len ib_device_attr 0 58072 NULL
+read_file_fndecl_58082_fields read_file fndecl 4 58082 NULL
-+qib_user_sdma_pin_pages_fndecl_58083_fields qib_user_sdma_pin_pages fndecl 5-4 58083 NULL
++qib_user_sdma_pin_pages_fndecl_58083_fields qib_user_sdma_pin_pages fndecl 5-4 58083 NULL nohasharray
++netxen_setup_msi_interrupts_fndecl_58083_fields netxen_setup_msi_interrupts fndecl 2 58083 &qib_user_sdma_pin_pages_fndecl_58083_fields
+buffer_count_drm_i915_gem_execbuffer2_58084_fields buffer_count drm_i915_gem_execbuffer2 0 58084 NULL
+next_bofs_irlap_cb_58088_fields next_bofs irlap_cb 0 58088 NULL
+chipsize_onenand_chip_58089_fields chipsize onenand_chip 0 58089 NULL
+atyfb_setup_generic_fndecl_58092_fields atyfb_setup_generic fndecl 3 58092 NULL
-+button_num_ad714x_platform_data_58098_fields button_num ad714x_platform_data 0 58098 NULL
+head_p9_rdir_58110_fields head p9_rdir 0 58110 NULL
+usb_stor_ctrl_transfer_fndecl_58117_fields usb_stor_ctrl_transfer fndecl 8-2 58117 NULL
-+ore_get_rw_state_fndecl_58120_fields ore_get_rw_state fndecl 5-4 58120 NULL
-+nvkm_disp_new__fndecl_58125_fields nvkm_disp_new_ fndecl 4 58125 NULL
+l_pn_lbuf_58130_fields l_pn lbuf 0 58130 NULL
-+n_bitrates_ieee80211_supported_band_58136_fields n_bitrates ieee80211_supported_band 0 58136 NULL nohasharray
-+jbd2_journal_inode_add_wait_fndecl_58136_fields jbd2_journal_inode_add_wait fndecl 0 58136 &n_bitrates_ieee80211_supported_band_58136_fields
++jbd2_journal_inode_add_wait_fndecl_58136_fields jbd2_journal_inode_add_wait fndecl 0 58136 NULL
+mtd_read_fndecl_58140_fields mtd_read fndecl 0 58140 NULL
+pci_alloc_child_bus_fndecl_58142_fields pci_alloc_child_bus fndecl 3 58142 NULL
+packet_recvmsg_fndecl_58143_fields packet_recvmsg fndecl 3 58143 NULL
+hr_block_bytes_o2hb_region_58145_fields hr_block_bytes o2hb_region 0 58145 NULL
-+nroutes_mc5_params_58146_fields nroutes mc5_params 0 58146 NULL nohasharray
-+security_inode_setattr_fndecl_58146_fields security_inode_setattr fndecl 0 58146 &nroutes_mc5_params_58146_fields
++security_inode_setattr_fndecl_58146_fields security_inode_setattr fndecl 0 58146 NULL nohasharray
++nroutes_mc5_params_58146_fields nroutes mc5_params 0 58146 &security_inode_setattr_fndecl_58146_fields
++amdgpu_bo_create_shadow_fndecl_58148_fields amdgpu_bo_create_shadow fndecl 2 58148 NULL
+i_clusters_ocfs2_dinode_58151_fields i_clusters ocfs2_dinode 0 58151 NULL
+rx_status_rx_desc_58154_fields rx_status rx_desc 0 58154 NULL
+size_drm_i915_gem_pwrite_58161_fields size drm_i915_gem_pwrite 0 58161 NULL nohasharray
@@ -202894,8 +207566,8 @@ index 0000000..6b5367db
+size_skb_frag_struct_58222_fields size skb_frag_struct 0 58222 NULL
+xfs_attr_set_fndecl_58225_fields xfs_attr_set fndecl 4 58225 NULL
+len_on_bd_bnx2x_agg_info_58236_fields len_on_bd bnx2x_agg_info 0 58236 NULL
++num_rx_queues_fm10k_intfc_58243_fields num_rx_queues fm10k_intfc 0 58243 NULL
+font_backup_height_sisusb_usb_data_58247_fields font_backup_height sisusb_usb_data 0 58247 NULL
-+lua_sysfs_write_fndecl_58254_fields lua_sysfs_write fndecl 6 58254 NULL
+ies_len_cfg80211_ft_event_params_58259_fields ies_len cfg80211_ft_event_params 0 58259 NULL
+l2cap_segment_sdu_fndecl_58263_fields l2cap_segment_sdu fndecl 4 58263 NULL
+file_size_fnode_58268_fields file_size fnode 0 58268 NULL
@@ -202917,29 +207589,28 @@ index 0000000..6b5367db
+sys_setgroups16_fndecl_58337_fields sys_setgroups16 fndecl 1 58337 NULL
+nlmon_change_mtu_fndecl_58340_fields nlmon_change_mtu fndecl 2 58340 NULL nohasharray
+start_crypt_config_58340_fields start crypt_config 0 58340 &nlmon_change_mtu_fndecl_58340_fields
-+get_num_of_pp_table_entries_pp_hwmgr_func_58341_fields get_num_of_pp_table_entries pp_hwmgr_func 0 58341 NULL
+s2io_change_mtu_fndecl_58344_fields s2io_change_mtu fndecl 2 58344 NULL
+ext2_alloc_branch_fndecl_58346_fields ext2_alloc_branch fndecl 4 58346 NULL
++actions_len_sw_flow_actions_58353_fields actions_len sw_flow_actions 0 58353 NULL
+add_regulator_fndecl_58367_fields add_regulator fndecl 1 58367 NULL
+tun_recvmsg_fndecl_58372_fields tun_recvmsg fndecl 3 58372 NULL
++esas2r_log_hexdump_fndecl_58381_fields esas2r_log_hexdump fndecl 3 58381 NULL
+collapse_shmem_fndecl_58383_fields collapse_shmem fndecl 3 58383 NULL
+dma_contiguous_reserve_fndecl_58386_fields dma_contiguous_reserve fndecl 1 58386 NULL
+max_resource_constraint_58388_fields max resource_constraint 0 58388 NULL
+kvm_arch_create_memslot_fndecl_58391_fields kvm_arch_create_memslot fndecl 3 58391 NULL
++iwl_mvm_tx_reclaim_fndecl_58393_fields iwl_mvm_tx_reclaim fndecl 3 58393 NULL
+hci_prepare_cmd_fndecl_58399_fields hci_prepare_cmd fndecl 3 58399 NULL
-+lbs_wrrf_write_fndecl_58409_fields lbs_wrrf_write fndecl 3 58409 NULL
-+offset_snd_util_memblk_58414_fields offset snd_util_memblk 0 58414 NULL
++vzalloc_fndecl_58414_fields vzalloc fndecl 1 58414 NULL nohasharray
++offset_snd_util_memblk_58414_fields offset snd_util_memblk 0 58414 &vzalloc_fndecl_58414_fields
+skip_to_level_assoc_array_shortcut_58418_fields skip_to_level assoc_array_shortcut 0 58418 NULL
+align4k_qib_devdata_58424_fields align4k qib_devdata 0 58424 NULL
-+pskb_carve_inside_header_fndecl_58427_fields pskb_carve_inside_header fndecl 2 58427 NULL nohasharray
-+lbs_wrmac_write_fndecl_58427_fields lbs_wrmac_write fndecl 3 58427 &pskb_carve_inside_header_fndecl_58427_fields
++pskb_carve_inside_header_fndecl_58427_fields pskb_carve_inside_header fndecl 2 58427 NULL
+sys32_ftruncate64_fndecl_58429_fields sys32_ftruncate64 fndecl 2-3 58429 NULL
+SiS_GetReg_fndecl_58436_fields SiS_GetReg fndecl 0 58436 NULL
+environ_read_fndecl_58440_fields environ_read fndecl 3 58440 NULL
+nr_pages_fuse_fill_data_58443_fields nr_pages fuse_fill_data 0 58443 NULL
+num_vhost_virtqueue_58446_fields num vhost_virtqueue 0 58446 NULL
-+val_bytes_snd_soc_component_58447_fields val_bytes snd_soc_component 0 58447 NULL nohasharray
-+set_cpu_key_k_offset_fndecl_58447_fields set_cpu_key_k_offset fndecl 2 58447 &val_bytes_snd_soc_component_58447_fields
+f_adc_msi2500_dev_58451_fields f_adc msi2500_dev 0 58451 NULL
+fwlen_mpt_fw_xfer32_58453_fields fwlen mpt_fw_xfer32 0 58453 NULL
+di_anextents_xfs_icdinode_58455_fields di_anextents xfs_icdinode 0 58455 NULL
@@ -202947,19 +207618,21 @@ index 0000000..6b5367db
+NumProtectionFields_cfi_pri_intelext_58461_fields NumProtectionFields cfi_pri_intelext 0 58461 NULL
+btrfs_clone_fndecl_58462_fields btrfs_clone fndecl 5-3-6 58462 NULL
+pgsize_bitmap_iommu_domain_58464_fields pgsize_bitmap iommu_domain 0 58464 NULL
-+compat_sys_preadv64v2_fndecl_58477_fields compat_sys_preadv64v2 fndecl 3 58477 NULL
++usermodehelper_read_trylock_fndecl_58469_fields usermodehelper_read_trylock fndecl 0 58469 NULL
+jbd2_journal_inode_add_write_fndecl_58489_fields jbd2_journal_inode_add_write fndecl 0 58489 NULL
-+r2tq_size_cnic_local_58490_fields r2tq_size cnic_local 0 58490 NULL nohasharray
-+try_lock_extent_fndecl_58490_fields try_lock_extent fndecl 3-2 58490 &r2tq_size_cnic_local_58490_fields
++try_lock_extent_fndecl_58490_fields try_lock_extent fndecl 3-2 58490 NULL nohasharray
++r2tq_size_cnic_local_58490_fields r2tq_size cnic_local 0 58490 &try_lock_extent_fndecl_58490_fields
+set_console_size_fndecl_58495_fields set_console_size fndecl 3-2 58495 NULL
-+unlink_simple_fndecl_58497_fields unlink_simple fndecl 2 58497 NULL nohasharray
++unlink_simple_fndecl_58497_fields unlink_simple fndecl 2-3 58497 NULL nohasharray
+unit_minor_sound_unit_58497_fields unit_minor sound_unit 0 58497 &unlink_simple_fndecl_58497_fields
+pstore_decompress_fndecl_58501_fields pstore_decompress fndecl 0 58501 NULL
+max_segment_size_device_dma_parameters_58507_fields max_segment_size device_dma_parameters 0 58507 NULL
-+phys_in_snd_efw_58512_fields phys_in snd_efw 0 58512 NULL nohasharray
-+mcp23s17_read_regs_fndecl_58512_fields mcp23s17_read_regs fndecl 4 58512 &phys_in_snd_efw_58512_fields
++ec_i2c_count_response_fndecl_58509_fields ec_i2c_count_response fndecl 0 58509 NULL
++mcp23s17_read_regs_fndecl_58512_fields mcp23s17_read_regs fndecl 4 58512 NULL nohasharray
++phys_in_snd_efw_58512_fields phys_in snd_efw 0 58512 &mcp23s17_read_regs_fndecl_58512_fields
+pixel_stride_ivtv_osd_coords_58513_fields pixel_stride ivtv_osd_coords 0 58513 NULL
+len_bnxt_tpa_info_58516_fields len bnxt_tpa_info 0 58516 NULL
++brcmf_vndr_ie_fndecl_58517_fields brcmf_vndr_ie fndecl 0-4 58517 NULL
+xfs_file_iomap_end_fndecl_58525_fields xfs_file_iomap_end fndecl 4-2 58525 NULL
+rx_frag_size_bnx2x_fastpath_58531_fields rx_frag_size bnx2x_fastpath 0 58531 NULL
+cfpkt_split_fndecl_58534_fields cfpkt_split fndecl 2 58534 NULL
@@ -202967,34 +207640,31 @@ index 0000000..6b5367db
+volinit_CHIPDESC_58545_fields volinit CHIPDESC 0 58545 NULL
+ddata_ofsl_cyttsp4_sysinfo_data_58549_fields ddata_ofsl cyttsp4_sysinfo_data 0 58549 NULL
+size_vram_area_58552_fields size vram_area 0 58552 NULL
-+xfs_inobt_insert_fndecl_58558_fields xfs_inobt_insert fndecl 4 58558 NULL nohasharray
-+process_vm_rw_fndecl_58558_fields process_vm_rw fndecl 5-3 58558 &xfs_inobt_insert_fndecl_58558_fields
++xfs_inobt_insert_fndecl_58558_fields xfs_inobt_insert fndecl 4 58558 NULL
+remaining_asix_rx_fixup_info_58562_fields remaining asix_rx_fixup_info 0 58562 NULL
+pci_iomap_fndecl_58564_fields pci_iomap fndecl 3 58564 NULL
-+qib_copy_from_sge_fndecl_58565_fields qib_copy_from_sge fndecl 3 58565 NULL
++gsmld_output_fndecl_58570_fields gsmld_output fndecl 3 58570 NULL
+llc_shdlc_init_fndecl_58573_fields llc_shdlc_init fndecl 4 58573 NULL nohasharray
+index_vardecl_intel8x0m_c_58573_fields index vardecl_intel8x0m.c 0 58573 &llc_shdlc_init_fndecl_58573_fields
-+acpi_gpio_package_count_fndecl_58585_fields acpi_gpio_package_count fndecl 0 58585 NULL
++clk_core_round_rate_nolock_fndecl_58580_fields clk_core_round_rate_nolock fndecl 0 58580 NULL
+aoe_maxsectors_vardecl_aoeblk_c_58600_fields aoe_maxsectors vardecl_aoeblk.c 0 58600 NULL
-+uea_request_fndecl_58606_fields uea_request fndecl 4 58606 NULL
+hfi1_acquire_user_pages_fndecl_58612_fields hfi1_acquire_user_pages fndecl 2-0 58612 NULL
+rd_count_ring_descr_hw_58616_fields rd_count ring_descr_hw 0 58616 NULL
-+__erst_write_to_storage_fndecl_58627_fields __erst_write_to_storage fndecl 1 58627 NULL
++__erst_write_to_storage_fndecl_58627_fields __erst_write_to_storage fndecl 1 58627 NULL nohasharray
++wusb_key_dump_fndecl_58627_fields wusb_key_dump fndecl 2 58627 &__erst_write_to_storage_fndecl_58627_fields
+dccps_gss_dccp_sock_58634_fields dccps_gss dccp_sock 0 58634 NULL
+layout_mdu_array_info_s_58636_fields layout mdu_array_info_s 0 58636 NULL nohasharray
-+ext4_ext_handle_unwritten_extents_fndecl_58636_fields ext4_ext_handle_unwritten_extents fndecl 0-6-7 58636 &layout_mdu_array_info_s_58636_fields
-+num_iwarp_msix_i40e_pf_58637_fields num_iwarp_msix i40e_pf 0 58637 NULL nohasharray
-+mei_cldev_recv_fndecl_58637_fields mei_cldev_recv fndecl 0-3 58637 &num_iwarp_msix_i40e_pf_58637_fields
++ext4_ext_handle_unwritten_extents_fndecl_58636_fields ext4_ext_handle_unwritten_extents fndecl 6-0-7 58636 &layout_mdu_array_info_s_58636_fields
++mei_cldev_recv_fndecl_58637_fields mei_cldev_recv fndecl 0-3 58637 NULL nohasharray
++num_iwarp_msix_i40e_pf_58637_fields num_iwarp_msix i40e_pf 0 58637 &mei_cldev_recv_fndecl_58637_fields
+pgbase_nfs4_readdir_arg_58643_fields pgbase nfs4_readdir_arg 0 58643 NULL
-+tboot_log_read_fndecl_58645_fields tboot_log_read fndecl 3 58645 NULL
+report_id_hid_global_58647_fields report_id hid_global 0 58647 NULL
-+page10_len_ses_device_58648_fields page10_len ses_device 0 58648 NULL
+mwifiex_alloc_dma_align_buf_fndecl_58656_fields mwifiex_alloc_dma_align_buf fndecl 1 58656 NULL nohasharray
+highest_bit_swap_info_struct_58656_fields highest_bit swap_info_struct 0 58656 &mwifiex_alloc_dma_align_buf_fndecl_58656_fields
-+max_key_len_hfs_btree_58671_fields max_key_len hfs_btree 0 58671 NULL
++__efi_memmap_alloc_late_fndecl_58657_fields __efi_memmap_alloc_late fndecl 0 58657 NULL
++mxms_headerlen_fndecl_58666_fields mxms_headerlen fndecl 0 58666 NULL
+sb_inopblog_xfs_sb_58672_fields sb_inopblog xfs_sb 0 58672 NULL
+s_dirblksize_ufs_sb_private_info_58675_fields s_dirblksize ufs_sb_private_info 0 58675 NULL
-+ses_recv_diag_fndecl_58676_fields ses_recv_diag fndecl 4 58676 NULL
+s_partition_size_affs_sb_info_58677_fields s_partition_size affs_sb_info 0 58677 NULL
+max_response_len_sg_io_v4_58687_fields max_response_len sg_io_v4 0 58687 NULL nohasharray
+head_userio_device_58687_fields head userio_device 0 58687 &max_response_len_sg_io_v4_58687_fields
@@ -203024,8 +207694,8 @@ index 0000000..6b5367db
+ucNumEntries__ATOM_PPLIB_PhaseSheddingLimits_Table_58781_fields ucNumEntries _ATOM_PPLIB_PhaseSheddingLimits_Table 0 58781 &bi_bvec_done_bvec_iter_58781_fields
+get_formats_soc_camera_host_ops_58784_fields get_formats soc_camera_host_ops 0 58784 NULL
+off1_xad_58785_fields off1 xad 0 58785 NULL
-+cache_shift_qed_dev_58790_fields cache_shift qed_dev 0 58790 NULL nohasharray
-+gfs2_readpages_fndecl_58790_fields gfs2_readpages fndecl 4 58790 &cache_shift_qed_dev_58790_fields
++gfs2_readpages_fndecl_58790_fields gfs2_readpages fndecl 4 58790 NULL nohasharray
++cache_shift_qed_dev_58790_fields cache_shift qed_dev 0 58790 &gfs2_readpages_fndecl_58790_fields
+mppe_decompress_fndecl_58795_fields mppe_decompress fndecl 3 58795 NULL
+blkbits_dio_submit_58797_fields blkbits dio_submit 0 58797 NULL
+ci_flags_fscrypt_info_58804_fields ci_flags fscrypt_info 0 58804 NULL nohasharray
@@ -203036,6 +207706,7 @@ index 0000000..6b5367db
+num_counters_op_x86_model_spec_58827_fields num_counters op_x86_model_spec 0 58827 NULL
+set_db_page_mthca_create_cq_58830_fields set_db_page mthca_create_cq 0 58830 NULL
+ms_lib_read_extrablock_fndecl_58857_fields ms_lib_read_extrablock fndecl 4 58857 NULL
++vid_batadv_softif_vlan_58864_fields vid batadv_softif_vlan 0 58864 NULL
+address_fault_env_58869_fields address fault_env 0 58869 NULL
+hfp_ast_vbios_enhtable_58872_fields hfp ast_vbios_enhtable 0 58872 NULL
+gbuffers_vardecl_bttv_driver_c_58873_fields gbuffers vardecl_bttv-driver.c 0 58873 NULL
@@ -203043,12 +207714,12 @@ index 0000000..6b5367db
+xm_wmfw_adsp2_alg_hdr_58884_fields xm wmfw_adsp2_alg_hdr 0 58884 NULL
+rx_buf_sz_fe_priv_58888_fields rx_buf_sz fe_priv 0 58888 NULL
+max_xfer_nd_cmd_get_config_size_58894_fields max_xfer nd_cmd_get_config_size 0 58894 NULL
-+usb_stor_bulk_transfer_sg_fndecl_58896_fields usb_stor_bulk_transfer_sg fndecl 4-2 58896 NULL
++usb_stor_bulk_transfer_sg_fndecl_58896_fields usb_stor_bulk_transfer_sg fndecl 2-4 58896 NULL
+size__iohandle_58897_fields size _iohandle 0 58897 NULL
+get_next_nat_page_fndecl_58898_fields get_next_nat_page fndecl 2 58898 NULL
+mwifiex_write_data_sync_fndecl_58903_fields mwifiex_write_data_sync fndecl 3 58903 NULL
++tty_termios_encode_baud_rate_fndecl_58905_fields tty_termios_encode_baud_rate fndecl 3 58905 NULL
+cmodio_setup_subdevice_fndecl_58913_fields cmodio_setup_subdevice fndecl 4 58913 NULL
-+befs_bread_fndecl_58922_fields befs_bread fndecl 2 58922 NULL
+parent_block_isofs_fid_58926_fields parent_block isofs_fid 0 58926 NULL
+osd_req_read_sg_fndecl_58930_fields osd_req_read_sg fndecl 5 58930 NULL
+send_reply_chunks_fndecl_58933_fields send_reply_chunks fndecl 0 58933 NULL
@@ -203056,10 +207727,10 @@ index 0000000..6b5367db
+ocfs2_alloc_write_ctxt_fndecl_58943_fields ocfs2_alloc_write_ctxt fndecl 3 58943 NULL
+lpe_base_sst_pdata_58946_fields lpe_base sst_pdata 0 58946 NULL
+__frame_add_frag_fndecl_58947_fields __frame_add_frag fndecl 4-5 58947 NULL
++arch_setup_msi_irq_fndecl_58948_fields arch_setup_msi_irq fndecl 0 58948 NULL
+num_req_rx_rings_bnx2_58949_fields num_req_rx_rings bnx2 0 58949 NULL
+size_drm_nouveau_gem_info_58954_fields size drm_nouveau_gem_info 0 58954 NULL
-+_ext4_get_block_fndecl_58959_fields _ext4_get_block fndecl 2 58959 NULL nohasharray
-+entry_size_shift_tracing_map_array_58959_fields entry_size_shift tracing_map_array 0 58959 &_ext4_get_block_fndecl_58959_fields
++_ext4_get_block_fndecl_58959_fields _ext4_get_block fndecl 2 58959 NULL
+query_len_tomoyo_query_58960_fields query_len tomoyo_query 0 58960 NULL
+integrity_alg_len_net_conf_58973_fields integrity_alg_len net_conf 0 58973 NULL
+adjust_managed_page_count_fndecl_58974_fields adjust_managed_page_count fndecl 2 58974 NULL
@@ -203070,9 +207741,11 @@ index 0000000..6b5367db
+ptk_icvlen_iwl_mvm_58980_fields ptk_icvlen iwl_mvm 0 58980 &len_extent_buffer_58980_fields
+sg_miter_skip_fndecl_58982_fields sg_miter_skip fndecl 2 58982 NULL
+len_cont_58983_fields len cont 0 58983 NULL
++ib_umad_write_fndecl_58986_fields ib_umad_write fndecl 3 58986 NULL
+index_ldtentry_58989_fields index ldtentry 0 58989 NULL nohasharray
+__tda18271_write_regs_fndecl_58989_fields __tda18271_write_regs fndecl 3 58989 &index_ldtentry_58989_fields
-+translate_desc_fndecl_58993_fields translate_desc fndecl 3-2-0 58993 NULL
++translate_desc_fndecl_58993_fields translate_desc fndecl 3-2 58993 NULL
++nfs4_proc_get_acl_fndecl_58998_fields nfs4_proc_get_acl fndecl 3 58998 NULL
+max_hw_sectors_nvme_ctrl_59000_fields max_hw_sectors nvme_ctrl 0 59000 NULL nohasharray
+trace_max_pages_vardecl_59000_fields trace_max_pages vardecl 0 59000 &max_hw_sectors_nvme_ctrl_59000_fields
+num_lun_nvm_id_group_59001_fields num_lun nvm_id_group 0 59001 NULL nohasharray
@@ -203086,8 +207759,8 @@ index 0000000..6b5367db
+frags_len_lro_59030_fields frags_len lro 0 59030 NULL
+in_epnum_usb_gadget_59033_fields in_epnum usb_gadget 0 59033 NULL
+max_inbound_frames__i2o_status_block_59034_fields max_inbound_frames _i2o_status_block 0 59034 NULL
++iwl_mvm_fw_dbg_collect_fndecl_59043_fields iwl_mvm_fw_dbg_collect fndecl 4 59043 NULL
+head_inbuf_t_59044_fields head inbuf_t 0 59044 NULL
-+len_nand_bbt_descr_59045_fields len nand_bbt_descr 0 59045 NULL
+ref_node_alsz_ubifs_info_59046_fields ref_node_alsz ubifs_info 0 59046 NULL
+data0_myri10ge_cmd_59049_fields data0 myri10ge_cmd 0 59049 NULL
+max_block_docg3_59051_fields max_block docg3 0 59051 NULL nohasharray
@@ -203100,20 +207773,21 @@ index 0000000..6b5367db
+bmv_offset_getbmapx_59079_fields bmv_offset getbmapx 0 59079 NULL nohasharray
+write_va_isert_cmd_59079_fields write_va isert_cmd 0 59079 &bmv_offset_getbmapx_59079_fields
+i915_gem_stolen_insert_node_in_range_fndecl_59083_fields i915_gem_stolen_insert_node_in_range fndecl 3 59083 NULL
-+cp2112_hid_output_fndecl_59085_fields cp2112_hid_output fndecl 3 59085 NULL
+rcvidx_hscx_hw_59100_fields rcvidx hscx_hw 0 59100 NULL
+ctrl_dma_ims_pcu_59106_fields ctrl_dma ims_pcu 0 59106 NULL
+remap_and_issue_shared_cell_fndecl_59114_fields remap_and_issue_shared_cell fndecl 3 59114 NULL
+sec_per_clus_fat_floppy_defaults_59119_fields sec_per_clus fat_floppy_defaults 0 59119 NULL
+omapdss_count_strings_fndecl_59120_fields omapdss_count_strings fndecl 0 59120 NULL
+npages_for_summary_flush_fndecl_59124_fields npages_for_summary_flush fndecl 0 59124 NULL
-+width_em28xx_v4l2_59127_fields width em28xx_v4l2 0 59127 NULL nohasharray
-+xfs_read_agi_fndecl_59127_fields xfs_read_agi fndecl 3 59127 &width_em28xx_v4l2_59127_fields
++xfs_read_agi_fndecl_59127_fields xfs_read_agi fndecl 3 59127 NULL nohasharray
++width_em28xx_v4l2_59127_fields width em28xx_v4l2 0 59127 &xfs_read_agi_fndecl_59127_fields
+bitrate_ieee80211_rate_59130_fields bitrate ieee80211_rate 0 59130 NULL
++wrt_pass_cntr_os_partition_s_59135_fields wrt_pass_cntr os_partition_s 0 59135 NULL
+do_sys_ftruncate_fndecl_59136_fields do_sys_ftruncate fndecl 2 59136 NULL
+q1_block_size_i40iw_hmc_fpm_misc_59149_fields q1_block_size i40iw_hmc_fpm_misc 0 59149 NULL
+rx_data_ep_usb_card_rec_59150_fields rx_data_ep usb_card_rec 0 59150 NULL
+get_desc_rtl_hal_ops_59151_fields get_desc rtl_hal_ops 0 59151 NULL
++drm_helper_crtc_mode_set_fndecl_59153_fields drm_helper_crtc_mode_set fndecl 4-5 59153 NULL
+free_low_memory_core_early_fndecl_59160_fields free_low_memory_core_early fndecl 0 59160 NULL
+log_buf_len_vardecl_printk_c_59170_fields log_buf_len vardecl_printk.c 0 59170 NULL
+address_length_acpi_resource_io_59176_fields address_length acpi_resource_io 0 59176 NULL
@@ -203123,6 +207797,8 @@ index 0000000..6b5367db
+isl12022_read_regs_fndecl_59190_fields isl12022_read_regs fndecl 4 59190 NULL
+vtag_rx_pkt_status_59191_fields vtag rx_pkt_status 0 59191 NULL
+cdc_ncm_check_rx_max_fndecl_59192_fields cdc_ncm_check_rx_max fndecl 0-2 59192 NULL
++ceph_crypt_fndecl_59196_fields ceph_crypt fndecl 5 59196 NULL
++gr_learn_resource_fndecl_59200_fields gr_learn_resource fndecl 3 59200 NULL
+ms_os_descs_ext_prop_name_len_ffs_data_59205_fields ms_os_descs_ext_prop_name_len ffs_data 0 59205 NULL
+s_bmap_bits_affs_sb_info_59206_fields s_bmap_bits affs_sb_info 0 59206 NULL
+fat_sector_size_fat_bios_param_block_59207_fields fat_sector_size fat_bios_param_block 0 59207 NULL nohasharray
@@ -203140,12 +207816,11 @@ index 0000000..6b5367db
+size_vhost_umem_node_59230_fields size vhost_umem_node 0 59230 NULL
+__iptunnel_pull_header_fndecl_59234_fields __iptunnel_pull_header fndecl 2 59234 NULL
+sierra_net_skb_clone_fndecl_59236_fields sierra_net_skb_clone fndecl 3 59236 NULL
-+nr_segs_iov_iter_59239_fields nr_segs iov_iter 0 59239 NULL nohasharray
-+clear_record_extent_bits_fndecl_59239_fields clear_record_extent_bits fndecl 2-3 59239 &nr_segs_iov_iter_59239_fields
++clear_record_extent_bits_fndecl_59239_fields clear_record_extent_bits fndecl 2-3 59239 NULL
+num_mbc_cfgs_wm8994_pdata_59240_fields num_mbc_cfgs wm8994_pdata 0 59240 NULL
-+nlp_maxframe_lpfc_nodelist_59242_fields nlp_maxframe lpfc_nodelist 0 59242 NULL
++length_acpi_pcct_hw_reduced_59242_fields length acpi_pcct_hw_reduced 0 59242 NULL nohasharray
++nlp_maxframe_lpfc_nodelist_59242_fields nlp_maxframe lpfc_nodelist 0 59242 &length_acpi_pcct_hw_reduced_59242_fields
+save_microcode_fndecl_59254_fields save_microcode fndecl 3 59254 NULL
-+set_dma_channels_fndecl_59256_fields set_dma_channels fndecl 2 59256 NULL
+rcvidx_hdlc_hw_59264_fields rcvidx hdlc_hw 0 59264 NULL nohasharray
+nilfs_sufile_get_offset_fndecl_59264_fields nilfs_sufile_get_offset fndecl 0-2 59264 &rcvidx_hdlc_hw_59264_fields
+indir_size_ethtool_rxfh_59267_fields indir_size ethtool_rxfh 0 59267 NULL
@@ -203155,6 +207830,7 @@ index 0000000..6b5367db
+ir_prepare_write_buffer_fndecl_59280_fields ir_prepare_write_buffer fndecl 3 59280 NULL
+nentries_afs_dir_pagehdr_59283_fields nentries afs_dir_pagehdr 0 59283 NULL
+used_snd_array_59285_fields used snd_array 0 59285 NULL
++written_coredump_params_59286_fields written coredump_params 0 59286 NULL
+hpfs_write_end_fndecl_59287_fields hpfs_write_end fndecl 5 59287 NULL
+nr_regs_omap_prcm_irq_setup_59292_fields nr_regs omap_prcm_irq_setup 0 59292 NULL
+range_oid_t_59299_fields range oid_t 0 59299 NULL
@@ -203164,7 +207840,6 @@ index 0000000..6b5367db
+W6692_empty_Bfifo_fndecl_59311_fields W6692_empty_Bfifo fndecl 2 59311 NULL
+frame_bytes_ua101_stream_59312_fields frame_bytes ua101_stream 0 59312 NULL
+befs_fblock2brun_fndecl_59313_fields befs_fblock2brun fndecl 3 59313 NULL
-+qib_copy_sge_fndecl_59314_fields qib_copy_sge fndecl 3 59314 NULL
+nv_getlen_fndecl_59327_fields nv_getlen fndecl 0-3 59327 NULL
+i2c_inb_fndecl_59328_fields i2c_inb fndecl 0 59328 NULL
+stmmac_set_bfsize_fndecl_59337_fields stmmac_set_bfsize fndecl 0 59337 NULL
@@ -203175,8 +207850,7 @@ index 0000000..6b5367db
+offset_first_afs_writeback_59348_fields offset_first afs_writeback 0 59348 NULL
+rtl_cmd_width_vardecl_ibm_rtl_c_59349_fields rtl_cmd_width vardecl_ibm_rtl.c 0 59349 NULL
+vc_cols_vc_data_59351_fields vc_cols vc_data 0 59351 NULL
-+r5l_write_super_and_discard_space_fndecl_59352_fields r5l_write_super_and_discard_space fndecl 2 59352 NULL nohasharray
-+mw_count_ntb_dev_ops_59352_fields mw_count ntb_dev_ops 0 59352 &r5l_write_super_and_discard_space_fndecl_59352_fields
++r5l_write_super_and_discard_space_fndecl_59352_fields r5l_write_super_and_discard_space fndecl 2 59352 NULL
+vsync_end_drm_display_mode_59355_fields vsync_end drm_display_mode 0 59355 NULL
+hpfs_alloc_fnode_fndecl_59356_fields hpfs_alloc_fnode fndecl 2 59356 NULL
+ie_len_cfg80211_assoc_request_59359_fields ie_len cfg80211_assoc_request 0 59359 NULL
@@ -203190,7 +207864,8 @@ index 0000000..6b5367db
+line_outs_auto_pin_cfg_59389_fields line_outs auto_pin_cfg 0 59389 NULL nohasharray
+sync_io_fndecl_59389_fields sync_io fndecl 0 59389 &line_outs_auto_pin_cfg_59389_fields
+batadv_iv_ogm_queue_add_fndecl_59398_fields batadv_iv_ogm_queue_add fndecl 3 59398 NULL
-+fm_size_ubi_device_59399_fields fm_size ubi_device 0 59399 NULL
++fm_size_ubi_device_59399_fields fm_size ubi_device 0 59399 NULL nohasharray
++dpi_count_qed_hwfn_59399_fields dpi_count qed_hwfn 0 59399 &fm_size_ubi_device_59399_fields
+max_tx_channels_efx_nic_59400_fields max_tx_channels efx_nic 0 59400 NULL
+drm_legacy_addmap_fndecl_59402_fields drm_legacy_addmap fndecl 3-2 59402 NULL
+btrfs_lookup_bio_sums_fndecl_59404_fields btrfs_lookup_bio_sums fndecl 0 59404 NULL
@@ -203199,10 +207874,10 @@ index 0000000..6b5367db
+reuseport_select_sock_fndecl_59410_fields reuseport_select_sock fndecl 4 59410 NULL nohasharray
+secure_dccpv6_sequence_number_fndecl_59410_fields secure_dccpv6_sequence_number fndecl 0 59410 &reuseport_select_sock_fndecl_59410_fields
+optlen_xfrm_mode_skb_cb_59411_fields optlen xfrm_mode_skb_cb 0 59411 NULL
-+fotg210_urb_dequeue_fndecl_59414_fields fotg210_urb_dequeue fndecl 3 59414 NULL
++fotg210_urb_dequeue_fndecl_59414_fields fotg210_urb_dequeue fndecl 3 59414 NULL nohasharray
++num_vfs_ixgbe_adapter_59414_fields num_vfs ixgbe_adapter 0 59414 &fotg210_urb_dequeue_fndecl_59414_fields
+start_crash_mem_range_59421_fields start crash_mem_range 0 59421 NULL
+omfactor_user_sdma_request_59425_fields omfactor user_sdma_request 0 59425 NULL
-+vma_adjust_fndecl_59429_fields vma_adjust fndecl 3-2-4 59429 NULL
+mmap_ureg_fndecl_59431_fields mmap_ureg fndecl 3 59431 NULL
+s_checkpoint_size_nilfs_super_block_59433_fields s_checkpoint_size nilfs_super_block 0 59433 NULL
+offset_ipfrag_skb_cb_59445_fields offset ipfrag_skb_cb 0 59445 NULL
@@ -203215,36 +207890,37 @@ index 0000000..6b5367db
+phys_acpi_ioremap_59485_fields phys acpi_ioremap 0 59485 NULL
+i2c_hid_output_raw_report_fndecl_59486_fields i2c_hid_output_raw_report fndecl 3 59486 NULL
+length_acpi_pnp_device_id_59493_fields length acpi_pnp_device_id 0 59493 NULL
++vma_to_resize_fndecl_59495_fields vma_to_resize fndecl 2-3 59495 NULL
+src_addr_width_dma_slave_config_59497_fields src_addr_width dma_slave_config 0 59497 NULL
-+wdata_alloc_and_fillpages_fndecl_59510_fields wdata_alloc_and_fillpages fndecl 1 59510 NULL
++fuse_xattr_get_fndecl_59514_fields fuse_xattr_get fndecl 6 59514 NULL
+rmtblkno2_xfs_da_args_59516_fields rmtblkno2 xfs_da_args 0 59516 NULL
+nilfs_commit_chunk_fndecl_59518_fields nilfs_commit_chunk fndecl 3-4 59518 NULL
-+queue_length_vardecl_ua101_c_59524_fields queue_length vardecl_ua101.c 0 59524 NULL
-+limit_data_queue_59525_fields limit data_queue 0 59525 NULL
++resultsize_vardecl_floppy_c_59525_fields resultsize vardecl_floppy.c 0 59525 NULL nohasharray
++limit_data_queue_59525_fields limit data_queue 0 59525 &resultsize_vardecl_floppy_c_59525_fields
+extLength_short_ad_59527_fields extLength short_ad 0 59527 NULL
+ocfs2_adjust_xattr_cross_cluster_fndecl_59528_fields ocfs2_adjust_xattr_cross_cluster fndecl 5-6 59528 NULL
+handle_ule_extensions_fndecl_59533_fields handle_ule_extensions fndecl 0 59533 NULL
++tty_termios_baud_rate_fndecl_59543_fields tty_termios_baud_rate fndecl 0 59543 NULL
+playback_snd_soc_tplg_pcm_59551_fields playback snd_soc_tplg_pcm 0 59551 NULL
+__btrfs_map_block_fndecl_59552_fields __btrfs_map_block fndecl 0 59552 NULL
-+snd_pcm_oss_format_from_fndecl_59553_fields snd_pcm_oss_format_from fndecl 0 59553 NULL nohasharray
-+nouveau_drm_ioctl_fndecl_59553_fields nouveau_drm_ioctl fndecl 2 59553 &snd_pcm_oss_format_from_fndecl_59553_fields
-+pci_get_subsys_fndecl_59555_fields pci_get_subsys fndecl 2 59555 NULL nohasharray
-+mthca_alloc_cq_buf_fndecl_59555_fields mthca_alloc_cq_buf fndecl 3 59555 &pci_get_subsys_fndecl_59555_fields
-+rc_rcv_resp_fndecl_59556_fields rc_rcv_resp fndecl 9-7-8-4 59556 NULL
++snd_pcm_oss_format_from_fndecl_59553_fields snd_pcm_oss_format_from fndecl 0 59553 NULL
++pci_get_subsys_fndecl_59555_fields pci_get_subsys fndecl 2 59555 NULL
+rest_blocks_nilfs_write_info_59560_fields rest_blocks nilfs_write_info 0 59560 NULL
+chunk_size_disk_header_59563_fields chunk_size disk_header 0 59563 NULL
+bdx_rxdb_create_fndecl_59566_fields bdx_rxdb_create fndecl 1 59566 NULL
-+fill_in_write_vector_fndecl_59569_fields fill_in_write_vector fndecl 0 59569 NULL
+unmap_mapping_range_fndecl_59573_fields unmap_mapping_range fndecl 2-3 59573 NULL
+pin_code_reply_fndecl_59581_fields pin_code_reply fndecl 4 59581 NULL
+data_mapping_root_thin_disk_superblock_59582_fields data_mapping_root thin_disk_superblock 0 59582 NULL
+length_sctp_paramhdr_59588_fields length sctp_paramhdr 0 59588 NULL
++assign_firmware_buf_fndecl_59593_fields assign_firmware_buf fndecl 0 59593 NULL
+reserved_tags_blk_mq_tag_set_59594_fields reserved_tags blk_mq_tag_set 0 59594 NULL
+bMaxPacketSize0_usb_device_descriptor_59595_fields bMaxPacketSize0 usb_device_descriptor 0 59595 NULL
+size_amd76xrom_window_59596_fields size amd76xrom_window 0 59596 NULL nohasharray
+last_sgs_total_ore_per_dev_state_59596_fields last_sgs_total ore_per_dev_state 0 59596 &size_amd76xrom_window_59596_fields
+tipc_link_create_fndecl_59597_fields tipc_link_create fndecl 6 59597 NULL
++min_coredump_linux_binfmt_59604_fields min_coredump linux_binfmt 0 59604 NULL
+rcvhdrqentsize_hfi1_ctxtdata_59613_fields rcvhdrqentsize hfi1_ctxtdata 0 59613 NULL
++extra_mem_vardecl_page_ext_c_59628_fields extra_mem vardecl_page_ext.c 0 59628 NULL
+unmap_single_vma_fndecl_59634_fields unmap_single_vma fndecl 4-3 59634 NULL
+gpio_count_tle62x0_pdata_59637_fields gpio_count tle62x0_pdata 0 59637 NULL
+q_fileoffset_xfs_dquot_59638_fields q_fileoffset xfs_dquot 0 59638 NULL
@@ -203253,26 +207929,23 @@ index 0000000..6b5367db
+xfs_trim_extents_fndecl_59654_fields xfs_trim_extents fndecl 2 59654 NULL
+num_subchannels_nvsp_5_subchannel_complete_59660_fields num_subchannels nvsp_5_subchannel_complete 0 59660 NULL
+fat_free_clusters_fndecl_59665_fields fat_free_clusters fndecl 2 59665 NULL
-+mgmt_remote_name_fndecl_59667_fields mgmt_remote_name fndecl 7 59667 NULL nohasharray
-+amdgpu_kms_compat_ioctl_fndecl_59667_fields amdgpu_kms_compat_ioctl fndecl 2 59667 &mgmt_remote_name_fndecl_59667_fields
++mgmt_remote_name_fndecl_59667_fields mgmt_remote_name fndecl 7 59667 NULL
+ipmi_pci_probe_regspacing_fndecl_59668_fields ipmi_pci_probe_regspacing fndecl 0 59668 NULL
+ms_read_bytes_fndecl_59672_fields ms_read_bytes fndecl 4 59672 NULL
+old_block_size_swap_info_struct_59674_fields old_block_size swap_info_struct 0 59674 NULL
-+ata_host_alloc_fndecl_59677_fields ata_host_alloc fndecl 2 59677 NULL
+xprt_hlen_svc_deferred_req_59683_fields xprt_hlen svc_deferred_req 0 59683 NULL
-+get_user_pages_fndecl_59686_fields get_user_pages fndecl 0-1 59686 NULL
++capacity_sddr55_card_info_59695_fields capacity sddr55_card_info 0 59695 NULL
+flt_region_bootload_ql82xx_hw_data_59701_fields flt_region_bootload ql82xx_hw_data 0 59701 NULL
-+atalk_sendmsg_fndecl_59718_fields atalk_sendmsg fndecl 3 59718 NULL nohasharray
-+aux_entry_sz_mlx4_dev_cap_59718_fields aux_entry_sz mlx4_dev_cap 0 59718 &atalk_sendmsg_fndecl_59718_fields
++atalk_sendmsg_fndecl_59718_fields atalk_sendmsg fndecl 3 59718 NULL
+dock_station_count_vardecl_dock_c_59728_fields dock_station_count vardecl_dock.c 0 59728 NULL
+nilfs_btnode_create_block_fndecl_59734_fields nilfs_btnode_create_block fndecl 2 59734 NULL
+val_i2400m_pld_59735_fields val i2400m_pld 0 59735 NULL
+offset_bts_phys_59741_fields offset bts_phys 0 59741 NULL
+l_iclog_hsize_xlog_59743_fields l_iclog_hsize xlog 0 59743 NULL
-+ocfs2_read_dx_leaves_fndecl_59744_fields ocfs2_read_dx_leaves fndecl 2 59744 NULL
++ocfs2_read_dx_leaves_fndecl_59744_fields ocfs2_read_dx_leaves fndecl 2 59744 NULL nohasharray
++fq_resize_fndecl_59744_fields fq_resize fndecl 2 59744 &ocfs2_read_dx_leaves_fndecl_59744_fields
+nx_fw_cmd_set_phy_fndecl_59745_fields nx_fw_cmd_set_phy fndecl 3 59745 NULL
+mt_count_mtop_59746_fields mt_count mtop 0 59746 NULL
-+seedsize_rng_alg_59748_fields seedsize rng_alg 0 59748 NULL
+xlog_write_calc_vec_length_fndecl_59749_fields xlog_write_calc_vec_length fndecl 0 59749 NULL
+request_size_afs_call_59750_fields request_size afs_call 0 59750 NULL
+addr_phys_netup_dma_59759_fields addr_phys netup_dma 0 59759 NULL
@@ -203285,11 +207958,10 @@ index 0000000..6b5367db
+max_segments_queue_limits_59783_fields max_segments queue_limits 0 59783 &reiserfs_new_symlink_fndecl_59783_fields
+sdio_set_block_size_fndecl_59792_fields sdio_set_block_size fndecl 2 59792 NULL
+bandlength_Timon_table_entry_59793_fields bandlength Timon_table_entry 0 59793 NULL
-+tm6000_i2c_recv_regs_fndecl_59796_fields tm6000_i2c_recv_regs fndecl 5 59796 NULL
+length_lv_59797_fields length lv 0 59797 NULL
+i2400m_op_msg_from_user_fndecl_59798_fields i2400m_op_msg_from_user fndecl 4 59798 NULL
-+NumPhys__CONFIG_PAGE_SAS_IO_UNIT_0_59799_fields NumPhys _CONFIG_PAGE_SAS_IO_UNIT_0 0 59799 NULL nohasharray
-+br_vlan_get_master_fndecl_59799_fields br_vlan_get_master fndecl 2 59799 &NumPhys__CONFIG_PAGE_SAS_IO_UNIT_0_59799_fields
++br_vlan_get_master_fndecl_59799_fields br_vlan_get_master fndecl 2 59799 NULL nohasharray
++NumPhys__CONFIG_PAGE_SAS_IO_UNIT_0_59799_fields NumPhys _CONFIG_PAGE_SAS_IO_UNIT_0 0 59799 &br_vlan_get_master_fndecl_59799_fields
+rcount_sixpack_59806_fields rcount sixpack 0 59806 NULL
+vcan_change_mtu_fndecl_59807_fields vcan_change_mtu fndecl 2 59807 NULL
+vmw_surface_gb_priv_define_fndecl_59811_fields vmw_surface_gb_priv_define fndecl 8 59811 NULL
@@ -203303,19 +207975,20 @@ index 0000000..6b5367db
+tcp_sendmsg_fastopen_fndecl_59843_fields tcp_sendmsg_fastopen fndecl 4 59843 NULL
+f2fs_fill_dentries_fndecl_59844_fields f2fs_fill_dentries fndecl 3 59844 NULL
+status_mei_cl_cb_59845_fields status mei_cl_cb 0 59845 NULL
++sst_fill_byte_control_fndecl_59850_fields sst_fill_byte_control fndecl 6 59850 NULL
+pep_alloc_skb_fndecl_59852_fields pep_alloc_skb fndecl 3 59852 NULL
+count_audit_chunk_59856_fields count audit_chunk 0 59856 NULL
++get_vaddr_frames_fndecl_59860_fields get_vaddr_frames fndecl 1 59860 NULL
+im_blkno_xfs_imap_59866_fields im_blkno xfs_imap 0 59866 NULL
+__process_changed_deleted_xattr_fndecl_59870_fields __process_changed_deleted_xattr fndecl 4 59870 NULL
+ide_scan_pio_blacklist_fndecl_59877_fields ide_scan_pio_blacklist fndecl 0 59877 NULL
+dx_fb_fillrect_59878_fields dx fb_fillrect 0 59878 NULL
-+max_ars_out_nd_cmd_ars_cap_59879_fields max_ars_out nd_cmd_ars_cap 0 59879 NULL
-+mos7720_write_fndecl_59901_fields mos7720_write fndecl 4 59901 NULL nohasharray
-+rxbuffersize_rtl_pci_59901_fields rxbuffersize rtl_pci 0 59901 &mos7720_write_fndecl_59901_fields nohasharray
-+xfs_xattr_set_fndecl_59901_fields xfs_xattr_set fndecl 6 59901 &rxbuffersize_rtl_pci_59901_fields
++vfs_allocated_count_igb_adapter_59900_fields vfs_allocated_count igb_adapter 0 59900 NULL
++xfs_xattr_set_fndecl_59901_fields xfs_xattr_set fndecl 6 59901 NULL nohasharray
++rxbuffersize_rtl_pci_59901_fields rxbuffersize rtl_pci 0 59901 &xfs_xattr_set_fndecl_59901_fields nohasharray
++mos7720_write_fndecl_59901_fields mos7720_write fndecl 4 59901 &rxbuffersize_rtl_pci_59901_fields
+num_gpio_wm831x_59907_fields num_gpio wm831x 0 59907 NULL
+x86_set_memory_region_fndecl_59911_fields x86_set_memory_region fndecl 4 59911 NULL
-+wheel_num_ad714x_platform_data_59912_fields wheel_num ad714x_platform_data 0 59912 NULL
+qp_memcpy_from_queue_iov_fndecl_59913_fields qp_memcpy_from_queue_iov fndecl 5-4 59913 NULL
+rvmalloc_fndecl_59914_fields rvmalloc fndecl 1 59914 NULL
+video_endp_usb_usbvision_59918_fields video_endp usb_usbvision 0 59918 NULL
@@ -203329,15 +208002,13 @@ index 0000000..6b5367db
+acpi_os_create_cache_fndecl_59968_fields acpi_os_create_cache fndecl 2 59968 NULL
+mwifiex_set_wapi_ie_fndecl_59972_fields mwifiex_set_wapi_ie fndecl 3 59972 NULL
+calc_line_length_fndecl_59973_fields calc_line_length fndecl 0-3-2 59973 NULL
-+fuse_file_fallocate_fndecl_59983_fields fuse_file_fallocate fndecl 4-3 59983 NULL nohasharray
++fuse_file_fallocate_fndecl_59983_fields fuse_file_fallocate fndecl 3-4 59983 NULL nohasharray
+scrub_pages_fndecl_59983_fields scrub_pages fndecl 3-2-11-4 59983 &fuse_file_fallocate_fndecl_59983_fields
+affs_write_begin_ofs_fndecl_59991_fields affs_write_begin_ofs fndecl 3 59991 NULL
+count_drm_buf_desc_59998_fields count drm_buf_desc 0 59998 NULL
+size_fuse_arg_60001_fields size fuse_arg 0 60001 NULL
-+__find_resource_fndecl_60011_fields __find_resource fndecl 4 60011 NULL nohasharray
-+xfs_free_extent_fndecl_60011_fields xfs_free_extent fndecl 2-3 60011 &__find_resource_fndecl_60011_fields
-+len_ubifs_ch_60014_fields len ubifs_ch 0 60014 NULL nohasharray
-+flags_ata_port_info_60014_fields flags ata_port_info 0 60014 &len_ubifs_ch_60014_fields
++__find_resource_fndecl_60011_fields __find_resource fndecl 4 60011 NULL
++len_ubifs_ch_60014_fields len ubifs_ch 0 60014 NULL
+skb_priority_pktgen_dev_60015_fields skb_priority pktgen_dev 0 60015 NULL
+portnum_usb_device_60022_fields portnum usb_device 0 60022 NULL
+ntfs_truncate_fndecl_60026_fields ntfs_truncate fndecl 0 60026 NULL
@@ -203347,16 +208018,13 @@ index 0000000..6b5367db
+orangefs_bufmap_shift_query_fndecl_60035_fields orangefs_bufmap_shift_query fndecl 0 60035 NULL
+print_bad_pte_fndecl_60036_fields print_bad_pte fndecl 2 60036 NULL
+hdrlen_ip_auth_hdr_60037_fields hdrlen ip_auth_hdr 0 60037 NULL
-+sel_write_bool_fndecl_60039_fields sel_write_bool fndecl 3 60039 NULL
+MaxMSIxVectors_mpt3sas_facts_60045_fields MaxMSIxVectors mpt3sas_facts 0 60045 NULL
-+blk_rq_map_kern_fndecl_60047_fields blk_rq_map_kern fndecl 4 60047 NULL
+mgmt_pending_add_fndecl_60051_fields mgmt_pending_add fndecl 5 60051 NULL
-+drm_atomic_helper_update_plane_fndecl_60059_fields drm_atomic_helper_update_plane fndecl 6-10-7-11 60059 NULL
++drm_atomic_helper_update_plane_fndecl_60059_fields drm_atomic_helper_update_plane fndecl 8-4-6-10-9-5-7-11 60059 NULL
+cx231xx_init_bulk_fndecl_60067_fields cx231xx_init_bulk fndecl 4-2 60067 NULL
+lpfc_hba_queue_depth_vardecl_lpfc_attr_c_60071_fields lpfc_hba_queue_depth vardecl_lpfc_attr.c 0 60071 NULL
+osd_req_encode_op_fndecl_60073_fields osd_req_encode_op fndecl 0 60073 NULL
+hpi_outstream_host_buffer_allocate_fndecl_60074_fields hpi_outstream_host_buffer_allocate fndecl 2 60074 NULL
-+phys_eager_buffer_60082_fields phys eager_buffer 0 60082 NULL
+dram_offset_sst_res_info_60089_fields dram_offset sst_res_info 0 60089 NULL
+f2fs_issue_discard_fndecl_60090_fields f2fs_issue_discard fndecl 3-2 60090 NULL
+tty_audit_add_data_fndecl_60093_fields tty_audit_add_data fndecl 3 60093 NULL
@@ -203364,8 +208032,8 @@ index 0000000..6b5367db
+sample_rate_min_lola_60104_fields sample_rate_min lola 0 60104 NULL
+length_rio_transfer_io_60108_fields length rio_transfer_io 0 60108 NULL
+ufs_new_fragments_fndecl_60109_fields ufs_new_fragments fndecl 5-3 60109 NULL
-+num_tx_bnad_60115_fields num_tx bnad 0 60115 NULL nohasharray
-+raid10_find_virt_fndecl_60115_fields raid10_find_virt fndecl 0-3-2 60115 &num_tx_bnad_60115_fields
++raid10_find_virt_fndecl_60115_fields raid10_find_virt fndecl 0-3-2 60115 NULL nohasharray
++num_tx_bnad_60115_fields num_tx bnad 0 60115 &raid10_find_virt_fndecl_60115_fields
+display_height_vivid_dev_60116_fields display_height vivid_dev 0 60116 NULL
+ht_ast_vbios_enhtable_60121_fields ht ast_vbios_enhtable 0 60121 NULL
+btrfs_create_dio_extent_fndecl_60123_fields btrfs_create_dio_extent fndecl 3-2-7-6-5 60123 NULL
@@ -203376,13 +208044,16 @@ index 0000000..6b5367db
+data_len_ib_ucm_event_60142_fields data_len ib_ucm_event 0 60142 NULL
+scalar_len_ccp_ecc_point_math_60144_fields scalar_len ccp_ecc_point_math 0 60144 NULL
+index_drm_minor_60149_fields index drm_minor 0 60149 NULL
++cluster_list_add_tail_fndecl_60151_fields cluster_list_add_tail fndecl 3 60151 NULL
+skb_checksum_setup_ip_fndecl_60154_fields skb_checksum_setup_ip fndecl 3 60154 NULL
+dt_mem_next_cell_fndecl_60162_fields dt_mem_next_cell fndecl 0 60162 NULL
+drm_fb_helper_initial_config_fndecl_60163_fields drm_fb_helper_initial_config fndecl 2 60163 NULL nohasharray
+smem_start_fb_fix_screeninfo_60163_fields smem_start fb_fix_screeninfo 0 60163 &drm_fb_helper_initial_config_fndecl_60163_fields
+vscnprintf_fndecl_60170_fields vscnprintf fndecl 0 60170 NULL
++req_num_rx_qede_dev_60171_fields req_num_rx qede_dev 0 60171 NULL
+dccp_ackvec_buflen_fndecl_60177_fields dccp_ackvec_buflen fndecl 0 60177 NULL
+cc2520_write_ram_fndecl_60183_fields cc2520_write_ram fndecl 3 60183 NULL
++priority_binder_transaction_60184_fields priority binder_transaction 0 60184 NULL
+unlink1_fndecl_60188_fields unlink1 fndecl 3 60188 NULL
+ue_cpos_ocfs2_unwritten_extent_60192_fields ue_cpos ocfs2_unwritten_extent 0 60192 NULL
+kvm_vcpu_init_fndecl_60195_fields kvm_vcpu_init fndecl 3 60195 NULL
@@ -203414,6 +208085,7 @@ index 0000000..6b5367db
+data_len_sym_ccb_60262_fields data_len sym_ccb 0 60262 NULL
+rotate_left_fndecl_60276_fields rotate_left fndecl 3-1 60276 NULL
+empty_dir_llseek_fndecl_60280_fields empty_dir_llseek fndecl 2 60280 NULL
++alloc_data_packet_fndecl_60281_fields alloc_data_packet fndecl 1 60281 NULL
+__receive_buf_fndecl_60286_fields __receive_buf fndecl 4 60286 NULL
+length_ore_per_dev_state_60287_fields length ore_per_dev_state 0 60287 NULL
+recv_actor_unix_stream_read_state_60306_fields recv_actor unix_stream_read_state 0 60306 NULL
@@ -203425,8 +208097,8 @@ index 0000000..6b5367db
+rq_addrlen_svc_rqst_60328_fields rq_addrlen svc_rqst 0 60328 NULL
+upper_vardecl_matroxfb_base_c_60329_fields upper vardecl_matroxfb_base.c 0 60329 NULL
+bd_add_to_bdi_fndecl_60336_fields bd_add_to_bdi fndecl 0-2 60336 NULL
++buf_size__IOCTL_Command_struct_60338_fields buf_size _IOCTL_Command_struct 0 60338 NULL
+offset_nvkm_mem_60339_fields offset nvkm_mem 0 60339 NULL
-+qib_rc_rcv_resp_fndecl_60341_fields qib_rc_rcv_resp fndecl 9-7-8-4 60341 NULL
+h_dloarea_60342_fields h dloarea 0 60342 NULL nohasharray
+raid5_compute_blocknr_fndecl_60342_fields raid5_compute_blocknr fndecl 0-2 60342 &h_dloarea_60342_fields
+pagesize_alauda_media_info_60348_fields pagesize alauda_media_info 0 60348 NULL
@@ -203441,26 +208113,31 @@ index 0000000..6b5367db
+btrfs_insert_empty_items_fndecl_60405_fields btrfs_insert_empty_items fndecl 6 60405 NULL
+max_vfs_vardecl_ixgbe_main_c_60408_fields max_vfs vardecl_ixgbe_main.c 0 60408 NULL
+xfs_iroot_realloc_fndecl_60409_fields xfs_iroot_realloc fndecl 2 60409 NULL
++sched_nice_sched_attr_60426_fields sched_nice sched_attr 0 60426 NULL
+__ocfs2_mknod_locked_fndecl_60427_fields __ocfs2_mknod_locked fndecl 8-9-10 60427 NULL
+__i2c_hid_command_fndecl_60442_fields __i2c_hid_command fndecl 6-8 60442 NULL
+minimum_cx88_ctrl_60444_fields minimum cx88_ctrl 0 60444 NULL
+digestsize_hash_alg_common_60446_fields digestsize hash_alg_common 0 60446 NULL
++create_kmalloc_cache_usercopy_fndecl_60447_fields create_kmalloc_cache_usercopy fndecl 2 60447 NULL
+count_hscx_hw_60448_fields count hscx_hw 0 60448 NULL
++bss_end_flat_hdr_60449_fields bss_end flat_hdr 0 60449 NULL
+lib80211_tkip_decrypt_fndecl_60450_fields lib80211_tkip_decrypt fndecl 2 60450 NULL
+maxsgentries_ctlr_info_60455_fields maxsgentries ctlr_info 0 60455 NULL
+osd_req_op_cls_request_data_pages_fndecl_60457_fields osd_req_op_cls_request_data_pages fndecl 4 60457 NULL
+clone_copy_inline_extent_fndecl_60461_fields clone_copy_inline_extent fndecl 7-6 60461 NULL
+prep_umr_wqe_common_fndecl_60470_fields prep_umr_wqe_common fndecl 5 60470 NULL
++ath10k_dbg_dump_fndecl_60482_fields ath10k_dbg_dump fndecl 6 60482 NULL
+drm_vma_offset_add_fndecl_60483_fields drm_vma_offset_add fndecl 3 60483 NULL nohasharray
+osd_left_vardecl_ivtvfb_c_60483_fields osd_left vardecl_ivtvfb.c 0 60483 &drm_vma_offset_add_fndecl_60483_fields
+lane2_associate_req_fndecl_60485_fields lane2_associate_req fndecl 4 60485 NULL
+v_nmembs_nilfs_argv_60498_fields v_nmembs nilfs_argv 0 60498 NULL
+cap_intel_iommu_60508_fields cap intel_iommu 0 60508 NULL
++tiadc_channel_init_fndecl_60514_fields tiadc_channel_init fndecl 2 60514 NULL
+n_host_mvs_chip_info_60517_fields n_host mvs_chip_info 0 60517 NULL
+b44_change_mtu_fndecl_60528_fields b44_change_mtu fndecl 2 60528 NULL
+hso_serial_write_fndecl_60530_fields hso_serial_write fndecl 3 60530 NULL
+sock_recv_errqueue_fndecl_60535_fields sock_recv_errqueue fndecl 3 60535 NULL
-+qib_sdma_verbs_send_fndecl_60539_fields qib_sdma_verbs_send fndecl 3 60539 NULL
++msi_setup_entry_fndecl_60540_fields msi_setup_entry fndecl 2 60540 NULL
+device_size_scsi_transport_template_60546_fields device_size scsi_transport_template 0 60546 NULL nohasharray
+mic_card_map_fndecl_60546_fields mic_card_map fndecl 3-2 60546 &device_size_scsi_transport_template_60546_fields
+dma_tx_bytes_lpuart_port_60550_fields dma_tx_bytes lpuart_port 0 60550 NULL
@@ -203470,39 +208147,35 @@ index 0000000..6b5367db
+chr_major_ports_device_60572_fields chr_major ports_device 0 60572 NULL
+slot_dlm_member_60581_fields slot dlm_member 0 60581 NULL
+max_sge_rxe_rq_60583_fields max_sge rxe_rq 0 60583 NULL
-+xfs_dir2_free_try_read_fndecl_60591_fields xfs_dir2_free_try_read fndecl 3 60591 NULL nohasharray
-+vfcount_arch_specific_params_60591_fields vfcount arch_specific_params 0 60591 &xfs_dir2_free_try_read_fndecl_60591_fields
++xfs_dir2_free_try_read_fndecl_60591_fields xfs_dir2_free_try_read fndecl 3 60591 NULL
+assoclen_chachapoly_req_ctx_60596_fields assoclen chachapoly_req_ctx 0 60596 NULL
-+in_size_ide_task_request_s_60603_fields in_size ide_task_request_s 0 60603 NULL
+__split_vma_fndecl_60609_fields __split_vma fndecl 3 60609 NULL
+fuse_ref_page_fndecl_60613_fields fuse_ref_page fndecl 4-3 60613 NULL nohasharray
+first_page_mpage_da_data_60613_fields first_page mpage_da_data 0 60613 &fuse_ref_page_fndecl_60613_fields
-+qpc_entry_sz_mlx4_dev_cap_60618_fields qpc_entry_sz mlx4_dev_cap 0 60618 NULL
-+dqi_usable_bs_qtree_mem_dqinfo_60619_fields dqi_usable_bs qtree_mem_dqinfo 0 60619 NULL
-+copy_nocow_pages_fndecl_60628_fields copy_nocow_pages fndecl 3-5 60628 NULL
++copy_nocow_pages_fndecl_60628_fields copy_nocow_pages fndecl 3-5 60628 NULL nohasharray
++i40e_alloc_vfs_fndecl_60628_fields i40e_alloc_vfs fndecl 2 60628 &copy_nocow_pages_fndecl_60628_fields
+initial_ssthresh_vardecl_tcp_bic_c_60630_fields initial_ssthresh vardecl_tcp_bic.c 0 60630 NULL
-+num_tx_desc_iadev_priv_60636_fields num_tx_desc iadev_priv 0 60636 NULL nohasharray
-+gso_size_skb_shared_info_60636_fields gso_size skb_shared_info 0 60636 &num_tx_desc_iadev_priv_60636_fields
++gso_size_skb_shared_info_60636_fields gso_size skb_shared_info 0 60636 NULL nohasharray
++__shadow_ablock_fndecl_60636_fields __shadow_ablock fndecl 2 60636 &gso_size_skb_shared_info_60636_fields nohasharray
++num_tx_desc_iadev_priv_60636_fields num_tx_desc iadev_priv 0 60636 &__shadow_ablock_fndecl_60636_fields
+btrfs_new_extent_direct_fndecl_60642_fields btrfs_new_extent_direct fndecl 2 60642 NULL
+fill_snd_fw_async_midi_port_60647_fields fill snd_fw_async_midi_port 0 60647 NULL
+num_mpts_mthca_limits_60648_fields num_mpts mthca_limits 0 60648 NULL
+psi_count_xhci_hub_60651_fields psi_count xhci_hub 0 60651 NULL
-+neo_map_video_fndecl_60656_fields neo_map_video fndecl 3 60656 NULL
-+i_extra_isize_ext4_inode_info_60659_fields i_extra_isize ext4_inode_info 0 60659 NULL nohasharray
-+__ax88179_read_cmd_fndecl_60659_fields __ax88179_read_cmd fndecl 5 60659 &i_extra_isize_ext4_inode_info_60659_fields
-+eld_size_hdmi_eld_60661_fields eld_size hdmi_eld 0 60661 NULL
++venus_rmdir_fndecl_60655_fields venus_rmdir fndecl 4 60655 NULL
++neo_map_video_fndecl_60656_fields neo_map_video fndecl 3 60656 NULL nohasharray
++src_x_drm_plane_state_60656_fields src_x drm_plane_state 0 60656 &neo_map_video_fndecl_60656_fields
++i_extra_isize_ext4_inode_info_60659_fields i_extra_isize ext4_inode_info 0 60659 NULL
+secondary_head_adu_device_60665_fields secondary_head adu_device 0 60665 NULL
-+cxd2820r_rd_regs_i2c_fndecl_60668_fields cxd2820r_rd_regs_i2c fndecl 5 60668 NULL
-+pos_saa7164_user_buffer_60678_fields pos saa7164_user_buffer 0 60678 NULL
+ext4_dio_get_block_unwritten_async_fndecl_60679_fields ext4_dio_get_block_unwritten_async fndecl 2 60679 NULL
-+MaxBufSize_lanman_neg_rsp_60693_fields MaxBufSize lanman_neg_rsp 0 60693 NULL nohasharray
-+vnic_dev_mtu_fndecl_60693_fields vnic_dev_mtu fndecl 0 60693 &MaxBufSize_lanman_neg_rsp_60693_fields
-+mon_bin_collate_isodesc_fndecl_60695_fields mon_bin_collate_isodesc fndecl 0 60695 NULL nohasharray
-+remap_oldmem_pfn_range_fndecl_60695_fields remap_oldmem_pfn_range fndecl 3-4 60695 &mon_bin_collate_isodesc_fndecl_60695_fields
++vnic_dev_mtu_fndecl_60693_fields vnic_dev_mtu fndecl 0 60693 NULL nohasharray
++MaxBufSize_lanman_neg_rsp_60693_fields MaxBufSize lanman_neg_rsp 0 60693 &vnic_dev_mtu_fndecl_60693_fields
++mon_bin_collate_isodesc_fndecl_60695_fields mon_bin_collate_isodesc fndecl 0 60695 NULL
+max_size_vx_ibl_info_60702_fields max_size vx_ibl_info 0 60702 NULL
++base_baud_lpss8250_board_60703_fields base_baud lpss8250_board 0 60703 NULL
++count_vma_pages_range_fndecl_60705_fields count_vma_pages_range fndecl 0-2-3 60705 NULL
+snd_card_new_fndecl_60707_fields snd_card_new fndecl 2 60707 NULL
+sock_sendmsg_fndecl_60718_fields sock_sendmsg fndecl 0 60718 NULL
-+HighPriorityCredit_mpt3sas_facts_60721_fields HighPriorityCredit mpt3sas_facts 0 60721 NULL
+reserved_pebs_ubi_volume_60725_fields reserved_pebs ubi_volume 0 60725 NULL
+cwnd_growth_factor_tcpnv_60728_fields cwnd_growth_factor tcpnv 0 60728 NULL
+splice_from_pipe_fndecl_60735_fields splice_from_pipe fndecl 4 60735 NULL nohasharray
@@ -203525,7 +208198,6 @@ index 0000000..6b5367db
+length_blkpg_partition_60788_fields length blkpg_partition 0 60788 NULL
+x2_virtio_gpu_framebuffer_60789_fields x2 virtio_gpu_framebuffer 0 60789 NULL
+ocfs2_remove_inode_range_fndecl_60791_fields ocfs2_remove_inode_range fndecl 3-4 60791 NULL
-+tomoyo_write_self_fndecl_60794_fields tomoyo_write_self fndecl 3 60794 NULL
+count_hdlc_hw_60796_fields count hdlc_hw 0 60796 NULL
+iso_alloc_urb_fndecl_60805_fields iso_alloc_urb fndecl 4-2-5 60805 NULL
+mpt_lan_change_mtu_fndecl_60806_fields mpt_lan_change_mtu fndecl 2 60806 NULL
@@ -203534,16 +208206,15 @@ index 0000000..6b5367db
+new_log_buf_len_vardecl_printk_c_60824_fields new_log_buf_len vardecl_printk.c 0 60824 NULL
+beacon_ies_len_cfg80211_beacon_data_60831_fields beacon_ies_len cfg80211_beacon_data 0 60831 NULL
+register_sound_dsp_fndecl_60835_fields register_sound_dsp fndecl 2 60835 NULL
-+limit_fm10k_ring_feature_60843_fields limit fm10k_ring_feature 0 60843 NULL nohasharray
-+bInterval_usb_endpoint_descriptor_60843_fields bInterval usb_endpoint_descriptor 0 60843 &limit_fm10k_ring_feature_60843_fields
-+channels_max_snd_pcm_hardware_60854_fields channels_max snd_pcm_hardware 0 60854 NULL nohasharray
-+ars_status_alloc_fndecl_60854_fields ars_status_alloc fndecl 2 60854 &channels_max_snd_pcm_hardware_60854_fields
++bInterval_usb_endpoint_descriptor_60843_fields bInterval usb_endpoint_descriptor 0 60843 NULL nohasharray
++limit_fm10k_ring_feature_60843_fields limit fm10k_ring_feature 0 60843 &bInterval_usb_endpoint_descriptor_60843_fields
++channels_max_snd_pcm_hardware_60854_fields channels_max snd_pcm_hardware 0 60854 NULL
+async_io_fndecl_60855_fields async_io fndecl 0 60855 NULL
+dev_priv_size_drm_driver_60870_fields dev_priv_size drm_driver 0 60870 NULL
+sectors_per_block_cache_60872_fields sectors_per_block cache 0 60872 NULL
++reiserfs_bmap_fndecl_60877_fields reiserfs_bmap fndecl 2 60877 NULL
+map_size_tpm_inf_dev_60880_fields map_size tpm_inf_dev 0 60880 NULL
+osd_y_offset_yuv_playback_info_60883_fields osd_y_offset yuv_playback_info 0 60883 NULL
-+xenvif_add_frag_responses_fndecl_60886_fields xenvif_add_frag_responses fndecl 2 60886 NULL
+last_data_size_ubi_ainf_volume_60887_fields last_data_size ubi_ainf_volume 0 60887 NULL nohasharray
+do_shared_fault_fndecl_60887_fields do_shared_fault fndecl 2 60887 &last_data_size_ubi_ainf_volume_60887_fields
+btmrvl_send_sync_cmd_fndecl_60899_fields btmrvl_send_sync_cmd fndecl 4 60899 NULL
@@ -203554,27 +208225,28 @@ index 0000000..6b5367db
+ctrl_set_cropw_fndecl_60918_fields ctrl_set_cropw fndecl 3 60918 NULL
+blf_blkno_xfs_buf_log_format_60925_fields blf_blkno xfs_buf_log_format 0 60925 NULL
+read_ltv_hermes_ops_60939_fields read_ltv hermes_ops 0 60939 NULL
-+x509_process_extension_fndecl_60941_fields x509_process_extension fndecl 5 60941 NULL
+msix_vector_count_MPT3SAS_ADAPTER_60944_fields msix_vector_count MPT3SAS_ADAPTER 0 60944 NULL
+ipv6_recv_rxpmtu_fndecl_60949_fields ipv6_recv_rxpmtu fndecl 3 60949 NULL
-+__exchange_data_block_fndecl_60951_fields __exchange_data_block fndecl 4-3 60951 NULL nohasharray
++__exchange_data_block_fndecl_60951_fields __exchange_data_block fndecl 5-3-4 60951 NULL nohasharray
+efi_memmap_hi_efi_info_60951_fields efi_memmap_hi efi_info 0 60951 &__exchange_data_block_fndecl_60951_fields
+prior_ssthresh_tcp_sock_60952_fields prior_ssthresh tcp_sock 0 60952 NULL nohasharray
+audit_make_reply_fndecl_60952_fields audit_make_reply fndecl 7 60952 &prior_ssthresh_tcp_sock_60952_fields
+ocfs2_dx_dir_new_cluster_fndecl_60953_fields ocfs2_dx_dir_new_cluster fndecl 3 60953 NULL
+xfs_alloc_ioend_fndecl_60954_fields xfs_alloc_ioend fndecl 3 60954 NULL nohasharray
+s_partition_root_udf_part_map_60954_fields s_partition_root udf_part_map 0 60954 &xfs_alloc_ioend_fndecl_60954_fields
-+get_rdac_req_fndecl_60969_fields get_rdac_req fndecl 3 60969 NULL
+tx_remainder_cdc_ncm_ctx_60973_fields tx_remainder cdc_ncm_ctx 0 60973 NULL
+xfs_extent_busy_update_extent_fndecl_60975_fields xfs_extent_busy_update_extent fndecl 5-4 60975 NULL
+hcs_params1_xhci_hcd_60979_fields hcs_params1 xhci_hcd 0 60979 NULL
-+count_nvif_ioctl_sclass_v0_60980_fields count nvif_ioctl_sclass_v0 0 60980 NULL
++isdn_write_fndecl_60980_fields isdn_write fndecl 3 60980 NULL nohasharray
++count_nvif_ioctl_sclass_v0_60980_fields count nvif_ioctl_sclass_v0 0 60980 &isdn_write_fndecl_60980_fields
+hfi1_lkey_table_size_vardecl_verbs_c_60988_fields hfi1_lkey_table_size vardecl_verbs.c 0 60988 NULL
-+weight_dlm_member_60989_fields weight dlm_member 0 60989 NULL nohasharray
-+first_block_migrate_struct_60989_fields first_block migrate_struct 0 60989 &weight_dlm_member_60989_fields
++first_block_migrate_struct_60989_fields first_block migrate_struct 0 60989 NULL nohasharray
++weight_dlm_member_60989_fields weight dlm_member 0 60989 &first_block_migrate_struct_60989_fields
+rtl8152_change_mtu_fndecl_60996_fields rtl8152_change_mtu fndecl 2 60996 NULL
+endp_out_zd1201_61001_fields endp_out zd1201 0 61001 NULL
++send_reply_fndecl_61002_fields send_reply fndecl 6 61002 NULL
+ocfs2_xattr_block_find_fndecl_61008_fields ocfs2_xattr_block_find fndecl 0 61008 NULL
++qedr_reg_user_mr_fndecl_61024_fields qedr_reg_user_mr fndecl 3-2 61024 NULL
+size_page_frag_61029_fields size page_frag 0 61029 NULL
+setup_possible_cpus_vardecl_smpboot_c_61040_fields setup_possible_cpus vardecl_smpboot.c 0 61040 NULL nohasharray
+ath6kl_wmi_listeninterval_cmd_fndecl_61040_fields ath6kl_wmi_listeninterval_cmd fndecl 2 61040 &setup_possible_cpus_vardecl_smpboot_c_61040_fields
@@ -203582,27 +208254,25 @@ index 0000000..6b5367db
+_dln2_transfer_fndecl_61049_fields _dln2_transfer fndecl 0 61049 NULL
+len_tcp_fastopen_cookie_61053_fields len tcp_fastopen_cookie 0 61053 NULL
+regmap_encx24j600_read_fndecl_61061_fields regmap_encx24j600_read fndecl 5 61061 NULL
-+ezusb_writememory_fndecl_61067_fields ezusb_writememory fndecl 4 61067 NULL
+get_rx_packet_len_wlcore_ops_61070_fields get_rx_packet_len wlcore_ops 0 61070 NULL
+untag_qdepth_blogic_adapter_61071_fields untag_qdepth blogic_adapter 0 61071 NULL
+left_v4l2_rect_61093_fields left v4l2_rect 0 61093 NULL
-+snd_hdac_exec_verb_fndecl_61100_fields snd_hdac_exec_verb fndecl 0 61100 NULL
+current_write_offset_scif_rb_61107_fields current_write_offset scif_rb 0 61107 NULL
+bv_offset_bio_vec_61109_fields bv_offset bio_vec 0 61109 NULL
+tcp_adjust_fackets_out_fndecl_61118_fields tcp_adjust_fackets_out fndecl 3 61118 NULL nohasharray
+max_nch_mlx5e_profile_61118_fields max_nch mlx5e_profile 0 61118 &tcp_adjust_fackets_out_fndecl_61118_fields
+blocknr_nilfs_write_info_61124_fields blocknr nilfs_write_info 0 61124 NULL
+insert_node_fndecl_61132_fields insert_node fndecl 3-4 61132 NULL
-+ore_calc_stripe_info_fndecl_61140_fields ore_calc_stripe_info fndecl 3 61140 NULL
++__xfs_refcount_cow_free_fndecl_61140_fields __xfs_refcount_cow_free fndecl 2-3 61140 NULL
+display_byte_stride_osd_info_61141_fields display_byte_stride osd_info 0 61141 NULL
-+__access_remote_vm_fndecl_61148_fields __access_remote_vm fndecl 5-0-3 61148 NULL
-+sierra_setup_urb_fndecl_61150_fields sierra_setup_urb fndecl 3-2 61150 NULL
++__access_remote_vm_fndecl_61148_fields __access_remote_vm fndecl 5-3 61148 NULL
++sierra_setup_urb_fndecl_61150_fields sierra_setup_urb fndecl 3-2-5 61150 NULL
+slhc_toss_fndecl_61153_fields slhc_toss fndecl 0 61153 NULL
+ctl_mt7601u_rxwi_61155_fields ctl mt7601u_rxwi 0 61155 NULL
-+__vmalloc_node_range_fndecl_61157_fields __vmalloc_node_range fndecl 3 61157 NULL
++__vmalloc_node_range_fndecl_61157_fields __vmalloc_node_range fndecl 1-3 61157 NULL nohasharray
++max_rsp_queues_qla_hw_data_61157_fields max_rsp_queues qla_hw_data 0 61157 &__vmalloc_node_range_fndecl_61157_fields
+addr_kcore_list_61158_fields addr kcore_list 0 61158 NULL
+ceph_locks_to_pagelist_fndecl_61162_fields ceph_locks_to_pagelist fndecl 3-4 61162 NULL
-+sel_commit_bools_write_fndecl_61166_fields sel_commit_bools_write fndecl 3 61166 NULL
+ftdi_elan_edset_empty_fndecl_61170_fields ftdi_elan_edset_empty fndecl 0 61170 NULL nohasharray
+lldd_execute_task_sas_domain_function_template_61170_fields lldd_execute_task sas_domain_function_template 0 61170 &ftdi_elan_edset_empty_fndecl_61170_fields
+in_length_nd_cmd_vendor_hdr_61172_fields in_length nd_cmd_vendor_hdr 0 61172 NULL
@@ -203611,10 +208281,8 @@ index 0000000..6b5367db
+register_sound_mixer_fndecl_61179_fields register_sound_mixer fndecl 2 61179 NULL
+__ocfs2_move_extent_fndecl_61183_fields __ocfs2_move_extent fndecl 4-5-6-3 61183 NULL
+osd_req_op_extent_init_fndecl_61188_fields osd_req_op_extent_init fndecl 5 61188 NULL
-+allocated_vector_iwl_trans_pcie_61194_fields allocated_vector iwl_trans_pcie 0 61194 NULL nohasharray
-+channels_vendor_data_61194_fields channels vendor_data 0 61194 &allocated_vector_iwl_trans_pcie_61194_fields
-+pos_dir_context_61195_fields pos dir_context 0 61195 NULL nohasharray
-+rdma_set_ib_paths_fndecl_61195_fields rdma_set_ib_paths fndecl 3 61195 &pos_dir_context_61195_fields
++channels_vendor_data_61194_fields channels vendor_data 0 61194 NULL
++pos_dir_context_61195_fields pos dir_context 0 61195 NULL
+port_id_ssp_device_61196_fields port_id ssp_device 0 61196 NULL
+size_bcma_sflash_61197_fields size bcma_sflash 0 61197 NULL
+num_qps_mthca_limits_61203_fields num_qps mthca_limits 0 61203 NULL nohasharray
@@ -203622,9 +208290,9 @@ index 0000000..6b5367db
+parsed_tag_70_packet_size_ecryptfs_parse_tag_70_packet_silly_stack_61204_fields parsed_tag_70_packet_size ecryptfs_parse_tag_70_packet_silly_stack 0 61204 NULL
+ts_nr_packets_vardecl_saa7134_ts_c_61205_fields ts_nr_packets vardecl_saa7134-ts.c 0 61205 NULL
+audit_log_n_hex_fndecl_61218_fields audit_log_n_hex fndecl 3 61218 NULL
-+rx_buffersize_b43_dmaring_61223_fields rx_buffersize b43_dmaring 0 61223 NULL nohasharray
-+rmtblkcnt_xfs_da_args_61223_fields rmtblkcnt xfs_da_args 0 61223 &rx_buffersize_b43_dmaring_61223_fields nohasharray
-+register_chrdev_region_fndecl_61223_fields register_chrdev_region fndecl 2-1 61223 &rmtblkcnt_xfs_da_args_61223_fields
++rmtblkcnt_xfs_da_args_61223_fields rmtblkcnt xfs_da_args 0 61223 NULL nohasharray
++rx_buffersize_b43_dmaring_61223_fields rx_buffersize b43_dmaring 0 61223 &rmtblkcnt_xfs_da_args_61223_fields nohasharray
++register_chrdev_region_fndecl_61223_fields register_chrdev_region fndecl 2-1 61223 &rx_buffersize_b43_dmaring_61223_fields
+rx_tail_len_pn533_frame_ops_61226_fields rx_tail_len pn533_frame_ops 0 61226 NULL
+resource_clip_fndecl_61231_fields resource_clip fndecl 2-3 61231 NULL
+isert_rx_opcode_fndecl_61234_fields isert_rx_opcode fndecl 4-6 61234 NULL
@@ -203639,9 +208307,9 @@ index 0000000..6b5367db
+len_ubifs_zbranch_61279_fields len ubifs_zbranch 0 61279 NULL
+h_minimode_61280_fields h minimode 0 61280 NULL
+i_file_acl_ext4_inode_info_61282_fields i_file_acl ext4_inode_info 0 61282 NULL
-+ieee80211_amsdu_realloc_pad_fndecl_61288_fields ieee80211_amsdu_realloc_pad fndecl 3 61288 NULL nohasharray
-+smk_write_ambient_fndecl_61288_fields smk_write_ambient fndecl 3 61288 &ieee80211_amsdu_realloc_pad_fndecl_61288_fields
++ieee80211_amsdu_realloc_pad_fndecl_61288_fields ieee80211_amsdu_realloc_pad fndecl 3 61288 NULL
+dataSgeOffset_mpt_ioctl_command_61289_fields dataSgeOffset mpt_ioctl_command 0 61289 NULL
++rtl_load_config_fndecl_61297_fields rtl_load_config fndecl 0 61297 NULL
+jpg_nbufs_vardecl_61299_fields jpg_nbufs vardecl 0 61299 NULL
+fat_length_fat_floppy_defaults_61308_fields fat_length fat_floppy_defaults 0 61308 NULL
+wlcore_smart_config_decode_event_fndecl_61313_fields wlcore_smart_config_decode_event fndecl 2-4 61313 NULL
@@ -203651,6 +208319,7 @@ index 0000000..6b5367db
+rw_copy_check_uvector_fndecl_61351_fields rw_copy_check_uvector fndecl 0 61351 NULL nohasharray
+vb2_vmalloc_alloc_fndecl_61351_fields vb2_vmalloc_alloc fndecl 3 61351 &rw_copy_check_uvector_fndecl_61351_fields nohasharray
+v4l2_ctrl_new_std_fndecl_61351_fields v4l2_ctrl_new_std fndecl 4-7 61351 &vb2_vmalloc_alloc_fndecl_61351_fields
++size_sge_fl_61353_fields size sge_fl 0 61353 NULL
+conn_num_hci_conn_list_req_61354_fields conn_num hci_conn_list_req 0 61354 NULL
+hfs_get_block_fndecl_61360_fields hfs_get_block fndecl 2 61360 NULL
+handle_response_icmp_fndecl_61366_fields handle_response_icmp fndecl 7 61366 NULL
@@ -203661,9 +208330,7 @@ index 0000000..6b5367db
+devs_max_btrfs_raid_attr_61376_fields devs_max btrfs_raid_attr 0 61376 NULL
+bfa_cb_ioim_done_fndecl_61381_fields bfa_cb_ioim_done fndecl 7 61381 NULL
+xfs_dir3_data_read_fndecl_61387_fields xfs_dir3_data_read fndecl 3 61387 NULL
-+num_msix_vectors_i40evf_adapter_61390_fields num_msix_vectors i40evf_adapter 0 61390 NULL nohasharray
-+npages_nfs_page_array_61390_fields npages nfs_page_array 0 61390 &num_msix_vectors_i40evf_adapter_61390_fields
-+byte_len_at24_platform_data_61393_fields byte_len at24_platform_data 0 61393 NULL
++num_msix_vectors_i40evf_adapter_61390_fields num_msix_vectors i40evf_adapter 0 61390 NULL
+fpg_sz_nvm_id_group_61394_fields fpg_sz nvm_id_group 0 61394 NULL
+h_virtio_gpu_box_61407_fields h virtio_gpu_box 0 61407 NULL
+buf_sz_vardecl_stmmac_main_c_61408_fields buf_sz vardecl_stmmac_main.c 0 61408 NULL
@@ -203674,13 +208341,14 @@ index 0000000..6b5367db
+tst_size_idt77252_dev_61428_fields tst_size idt77252_dev 0 61428 &nservers_mc5_params_61428_fields
+offset_ceph_mds_reply_dir_entry_61431_fields offset ceph_mds_reply_dir_entry 0 61431 NULL
+length_drm_mode_create_blob_61435_fields length drm_mode_create_blob 0 61435 NULL nohasharray
-+rows_omap4_keypad_61435_fields rows omap4_keypad 0 61435 &length_drm_mode_create_blob_61435_fields
++raw_setsockopt_fndecl_61435_fields raw_setsockopt fndecl 5 61435 &length_drm_mode_create_blob_61435_fields nohasharray
++rows_omap4_keypad_61435_fields rows omap4_keypad 0 61435 &raw_setsockopt_fndecl_61435_fields
+nd_opt_len_nd_opt_hdr_61437_fields nd_opt_len nd_opt_hdr 0 61437 NULL
+nsblk_sector_size_fndecl_61439_fields nsblk_sector_size fndecl 0 61439 NULL
+group_size_efs_sb_info_61441_fields group_size efs_sb_info 0 61441 NULL
+bulk_out_size_usb_serial_driver_61450_fields bulk_out_size usb_serial_driver 0 61450 NULL
+total_size_iscsi_segment_61454_fields total_size iscsi_segment 0 61454 NULL
-+ocfs2_zero_range_for_truncate_fndecl_61461_fields ocfs2_zero_range_for_truncate fndecl 3-4 61461 NULL nohasharray
++ocfs2_zero_range_for_truncate_fndecl_61461_fields ocfs2_zero_range_for_truncate fndecl 3 61461 NULL nohasharray
+next_interface_id_usb_configuration_61461_fields next_interface_id usb_configuration 0 61461 &ocfs2_zero_range_for_truncate_fndecl_61461_fields
+ucNumEntries__ATOM_Tonga_MM_Dependency_Table_61467_fields ucNumEntries _ATOM_Tonga_MM_Dependency_Table 0 61467 NULL
+irlan_client_ctrl_connect_confirm_fndecl_61475_fields irlan_client_ctrl_connect_confirm fndecl 5 61475 NULL
@@ -203690,10 +208358,9 @@ index 0000000..6b5367db
+radix_tree_maybe_preload_fndecl_61481_fields radix_tree_maybe_preload fndecl 0 61481 NULL nohasharray
+s_size_rvt_qp_61481_fields s_size rvt_qp 0 61481 &radix_tree_maybe_preload_fndecl_61481_fields
+new_chunk_mdp_superblock_s_61482_fields new_chunk mdp_superblock_s 0 61482 NULL
-+nlen_ubifs_dent_node_61488_fields nlen ubifs_dent_node 0 61488 NULL
+generic_file_read_iter_fndecl_61491_fields generic_file_read_iter fndecl 0 61491 NULL
+f_adc_hackrf_dev_61493_fields f_adc hackrf_dev 0 61493 NULL
-+ccp_init_data_fndecl_61495_fields ccp_init_data fndecl 4 61495 NULL
++writing_st_buffer_61495_fields writing st_buffer 0 61495 NULL
+unpack_lookup_result_fndecl_61496_fields unpack_lookup_result fndecl 2 61496 NULL
+vb_size_drm_savage_cmdbuf_61501_fields vb_size drm_savage_cmdbuf 0 61501 NULL
+mgag200_gem_create_fndecl_61507_fields mgag200_gem_create fndecl 2 61507 NULL nohasharray
@@ -203705,16 +208372,14 @@ index 0000000..6b5367db
+irq_base_regmap_irq_chip_data_61532_fields irq_base regmap_irq_chip_data 0 61532 NULL
+strlcpy_fndecl_61539_fields strlcpy fndecl 0 61539 NULL
+osst_do_scsi_fndecl_61545_fields osst_do_scsi fndecl 4 61545 NULL
-+intel_init_pipe_control_fndecl_61547_fields intel_init_pipe_control fndecl 2 61547 NULL
+gpiointr_intel_pmic_gpio_platform_data_61549_fields gpiointr intel_pmic_gpio_platform_data 0 61549 NULL
-+reg_size_rmi_register_desc_item_61553_fields reg_size rmi_register_desc_item 0 61553 NULL
+datalen_iscsi_tcp_recv_61556_fields datalen iscsi_tcp_recv 0 61556 NULL
+xdr_init_decode_pages_fndecl_61557_fields xdr_init_decode_pages fndecl 4 61557 NULL nohasharray
+regmap_encx24j600_sfr_update_fndecl_61557_fields regmap_encx24j600_sfr_update fndecl 4 61557 &xdr_init_decode_pages_fndecl_61557_fields
+ei_block_ext4_extent_idx_61567_fields ei_block ext4_extent_idx 0 61567 NULL
+iwl_fill_data_tbs_amsdu_fndecl_61581_fields iwl_fill_data_tbs_amsdu fndecl 4 61581 NULL
+pos_in_item_tree_balance_61583_fields pos_in_item tree_balance 0 61583 NULL
-+usb_internal_control_msg_fndecl_61589_fields usb_internal_control_msg fndecl 5-2 61589 NULL
++usb_internal_control_msg_fndecl_61589_fields usb_internal_control_msg fndecl 2-5 61589 NULL
+blkdev_issue_write_same_fndecl_61596_fields blkdev_issue_write_same fndecl 2-3 61596 NULL
+hdisplay_moderec_61597_fields hdisplay moderec 0 61597 NULL
+__hci_cmd_sync_fndecl_61598_fields __hci_cmd_sync fndecl 3 61598 NULL
@@ -203725,31 +208390,28 @@ index 0000000..6b5367db
+extra_priv_size_ohci_driver_overrides_61611_fields extra_priv_size ohci_driver_overrides 0 61611 NULL
+eth_change_mtu_fndecl_61617_fields eth_change_mtu fndecl 2 61617 NULL
+add_sit_entry_fndecl_61621_fields add_sit_entry fndecl 1 61621 NULL
-+af_alg_make_sg_fndecl_61624_fields af_alg_make_sg fndecl 0-3 61624 NULL
++af_alg_make_sg_fndecl_61624_fields af_alg_make_sg fndecl 3-0 61624 NULL
+efx_tx_max_skb_descs_fndecl_61628_fields efx_tx_max_skb_descs fndecl 0 61628 NULL
-+ext4_xattr_shift_entries_fndecl_61629_fields ext4_xattr_shift_entries fndecl 2 61629 NULL
-+___alloc_bootmem_node_nopanic_fndecl_61630_fields ___alloc_bootmem_node_nopanic fndecl 3-4-5 61630 NULL
++___alloc_bootmem_node_nopanic_fndecl_61630_fields ___alloc_bootmem_node_nopanic fndecl 3-2-4-5 61630 NULL
+bio_advance_fndecl_61635_fields bio_advance fndecl 2 61635 NULL
+btrfsic_process_written_block_fndecl_61638_fields btrfsic_process_written_block fndecl 2 61638 NULL
-+index_count_applesmc_registers_61647_fields index_count applesmc_registers 0 61647 NULL nohasharray
-+vc_bottom_vc_data_61647_fields vc_bottom vc_data 0 61647 &index_count_applesmc_registers_61647_fields nohasharray
-+sci_req_tx_bytes_fndecl_61647_fields sci_req_tx_bytes fndecl 0 61647 &vc_bottom_vc_data_61647_fields
-+dout_size_cros_ec_device_61649_fields dout_size cros_ec_device 0 61649 NULL
++spidev_write_fndecl_61645_fields spidev_write fndecl 3 61645 NULL
++vc_bottom_vc_data_61647_fields vc_bottom vc_data 0 61647 NULL nohasharray
++sci_req_tx_bytes_fndecl_61647_fields sci_req_tx_bytes fndecl 0 61647 &vc_bottom_vc_data_61647_fields nohasharray
++index_count_applesmc_registers_61647_fields index_count applesmc_registers 0 61647 &sci_req_tx_bytes_fndecl_61647_fields
+height_cx23885_dev_61651_fields height cx23885_dev 0 61651 NULL
+mem_start_pci_params_61652_fields mem_start pci_params 0 61652 NULL
+security_socket_sendmsg_fndecl_61654_fields security_socket_sendmsg fndecl 0 61654 NULL
+anode_lookup_fndecl_61656_fields anode_lookup fndecl 0-3-2 61656 NULL
-+sdio_align_size_fndecl_61658_fields sdio_align_size fndecl 2 61658 NULL
++sdio_align_size_fndecl_61658_fields sdio_align_size fndecl 0-2 61658 NULL
+sk_pacing_rate_sock_61667_fields sk_pacing_rate sock 0 61667 NULL
+min_io_size_ubi_device_info_61673_fields min_io_size ubi_device_info 0 61673 NULL
-+recv_queue_size_nvmet_rdma_queue_61674_fields recv_queue_size nvmet_rdma_queue 0 61674 NULL nohasharray
-+sys_msgsnd_fndecl_61674_fields sys_msgsnd fndecl 3 61674 &recv_queue_size_nvmet_rdma_queue_61674_fields
++recv_queue_size_nvmet_rdma_queue_61674_fields recv_queue_size nvmet_rdma_queue 0 61674 NULL
+len_l2cap_cmd_hdr_61676_fields len l2cap_cmd_hdr 0 61676 NULL
+sd_fsb2bb_shift_gfs2_sbd_61677_fields sd_fsb2bb_shift gfs2_sbd 0 61677 NULL
+page_size_ms_boot_attr_info_61681_fields page_size ms_boot_attr_info 0 61681 NULL
+sv_max_mesg_svc_serv_61683_fields sv_max_mesg svc_serv 0 61683 NULL
+ip_clusters_ocfs2_inode_info_61689_fields ip_clusters ocfs2_inode_info 0 61689 NULL
-+cma_set_req_event_data_fndecl_61691_fields cma_set_req_event_data fndecl 4 61691 NULL
+ieee80211_rx_mgmt_assoc_resp_fndecl_61694_fields ieee80211_rx_mgmt_assoc_resp fndecl 3 61694 NULL
+qib_ud_rcv_fndecl_61701_fields qib_ud_rcv fndecl 5 61701 NULL
+segnum_nilfs_segment_entry_61704_fields segnum nilfs_segment_entry 0 61704 NULL
@@ -203759,19 +208421,15 @@ index 0000000..6b5367db
+do_lfb_size_fndecl_61720_fields do_lfb_size fndecl 0 61720 NULL
+dm_bufio_new_fndecl_61727_fields dm_bufio_new fndecl 2 61727 NULL
+n_patterns_cfg80211_wowlan_61737_fields n_patterns cfg80211_wowlan 0 61737 NULL
-+nvkm_disp_ctor_fndecl_61743_fields nvkm_disp_ctor fndecl 4 61743 NULL
+wmi_call_fndecl_61745_fields wmi_call fndecl 4 61745 NULL nohasharray
+count_nfs_pgio_args_61745_fields count nfs_pgio_args 0 61745 &wmi_call_fndecl_61745_fields
-+drbd_recv_short_fndecl_61748_fields drbd_recv_short fndecl 3-0 61748 NULL nohasharray
-+smt_add_frame_len_fndecl_61748_fields smt_add_frame_len fndecl 2 61748 &drbd_recv_short_fndecl_61748_fields
++drbd_recv_short_fndecl_61748_fields drbd_recv_short fndecl 3-0 61748 NULL
+mon_buff_area_alloc_fndecl_61752_fields mon_buff_area_alloc fndecl 2 61752 NULL
-+nr_fingers_f11_2d_sensor_queries_61756_fields nr_fingers f11_2d_sensor_queries 0 61756 NULL
+sl_count_ip_sf_socklist_61758_fields sl_count ip_sf_socklist 0 61758 NULL
+rsp_residual_count_sts_entry_24xx_61762_fields rsp_residual_count sts_entry_24xx 0 61762 NULL
+dvb_net_sec_callback_fndecl_61767_fields dvb_net_sec_callback fndecl 2 61767 NULL
-+height_zr364xx_camera_61781_fields height zr364xx_camera 0 61781 NULL nohasharray
-+xlog_recover_add_to_cont_trans_fndecl_61781_fields xlog_recover_add_to_cont_trans fndecl 4 61781 &height_zr364xx_camera_61781_fields
-+num_leds_adp8870_backlight_platform_data_61782_fields num_leds adp8870_backlight_platform_data 0 61782 NULL
++xlog_recover_add_to_cont_trans_fndecl_61781_fields xlog_recover_add_to_cont_trans fndecl 4 61781 NULL nohasharray
++height_zr364xx_camera_61781_fields height zr364xx_camera 0 61781 &xlog_recover_add_to_cont_trans_fndecl_61781_fields
+pclk_max_ov6650_61784_fields pclk_max ov6650 0 61784 NULL
+xdr_enter_page_fndecl_61791_fields xdr_enter_page fndecl 2 61791 NULL
+num_gpios_htcpld_chip_platform_data_61792_fields num_gpios htcpld_chip_platform_data 0 61792 NULL
@@ -203780,6 +208438,7 @@ index 0000000..6b5367db
+size_snd_cs46xx_region_61796_fields size snd_cs46xx_region 0 61796 NULL
+vxfs_bmap_typed_fndecl_61801_fields vxfs_bmap_typed fndecl 0-2 61801 NULL
+imm_count_iscsi_task_61804_fields imm_count iscsi_task 0 61804 NULL
++pipe_advance_fndecl_61811_fields pipe_advance fndecl 2 61811 NULL
+end_map_range_61813_fields end map_range 0 61813 NULL nohasharray
+fat_alloc_clusters_fndecl_61813_fields fat_alloc_clusters fndecl 0 61813 &end_map_range_61813_fields
+len_nfs_createargs_61814_fields len nfs_createargs 0 61814 NULL
@@ -203791,35 +208450,38 @@ index 0000000..6b5367db
+dma_len_rx_fst_card_info_61862_fields dma_len_rx fst_card_info 0 61862 NULL
+num_mpts_mlx4_caps_61866_fields num_mpts mlx4_caps 0 61866 NULL
+ehci_urb_done_fndecl_61889_fields ehci_urb_done fndecl 3 61889 NULL
++size_page_ext_operations_61894_fields size page_ext_operations 0 61894 NULL
+find_group_orlov_fndecl_61896_fields find_group_orlov fndecl 0 61896 NULL
-+MaxRecvDataSegmentLength_iscsi_conn_ops_61904_fields MaxRecvDataSegmentLength iscsi_conn_ops 0 61904 NULL
-+maxframe_size_fc_rport_61909_fields maxframe_size fc_rport 0 61909 NULL
++MaxRecvDataSegmentLength_iscsi_conn_ops_61904_fields MaxRecvDataSegmentLength iscsi_conn_ops 0 61904 NULL nohasharray
++srp_alloc_iu_fndecl_61904_fields srp_alloc_iu fndecl 2 61904 &MaxRecvDataSegmentLength_iscsi_conn_ops_61904_fields
++maxframe_size_fc_rport_61909_fields maxframe_size fc_rport 0 61909 NULL nohasharray
++nd_namespace_pmem_set_resource_fndecl_61909_fields nd_namespace_pmem_set_resource fndecl 3 61909 &maxframe_size_fc_rport_61909_fields
++mlx5_set_ports_check_fndecl_61910_fields mlx5_set_ports_check fndecl 3 61910 NULL
+send_data_in_fndecl_61914_fields send_data_in fndecl 3 61914 NULL
-+cxd2820r_wr_regs_i2c_fndecl_61922_fields cxd2820r_wr_regs_i2c fndecl 5 61922 NULL
+raid_disks_mdp_superblock_1_61927_fields raid_disks mdp_superblock_1 0 61927 NULL
+net2272_ep_read_fndecl_61935_fields net2272_ep_read fndecl 0 61935 NULL
+st33zp24_i2c_recv_fndecl_61939_fields st33zp24_i2c_recv fndecl 4 61939 NULL
+alloc_size_ttm_pool_opts_61945_fields alloc_size ttm_pool_opts 0 61945 NULL
-+btrfs_double_extent_lock_fndecl_61946_fields btrfs_double_extent_lock fndecl 4-2-5 61946 NULL
++btrfs_double_extent_lock_fndecl_61946_fields btrfs_double_extent_lock fndecl 5-4-2 61946 NULL
+rx_std_ring_mask_tg3_61948_fields rx_std_ring_mask tg3 0 61948 NULL
+pfid_bnx2x_61952_fields pfid bnx2x 0 61952 NULL
+num_qps_qed_rdma_pf_params_61953_fields num_qps qed_rdma_pf_params 0 61953 NULL
+tcp_veno_cong_avoid_fndecl_61954_fields tcp_veno_cong_avoid fndecl 3 61954 NULL
+ntrips___thermal_zone_61955_fields ntrips __thermal_zone 0 61955 NULL
+hsu_dma_active_desc_size_fndecl_61956_fields hsu_dma_active_desc_size fndecl 0 61956 NULL
++indirect_size_srp_target_port_61962_fields indirect_size srp_target_port 0 61962 NULL
+s_maxbytes_super_block_61963_fields s_maxbytes super_block 0 61963 NULL
+periods_min_snd_pcm_hardware_61965_fields periods_min snd_pcm_hardware 0 61965 NULL
+wm_adsp_compr_read_fndecl_61972_fields wm_adsp_compr_read fndecl 3 61972 NULL
+nfs_set_pgio_error_fndecl_61975_fields nfs_set_pgio_error fndecl 3 61975 NULL
+physical_for_dev_replace_scrub_page_61977_fields physical_for_dev_replace scrub_page 0 61977 NULL
+x25_pacsize_to_bytes_fndecl_61983_fields x25_pacsize_to_bytes fndecl 0 61983 NULL
-+qib_verbs_send_dma_fndecl_61985_fields qib_verbs_send_dma fndecl 7-5 61985 NULL
+opts1_de_desc_61986_fields opts1 de_desc 0 61986 NULL
+vblank_panel_info_61990_fields vblank panel_info 0 61990 NULL
+num_srq_mlx4_profile_61993_fields num_srq mlx4_profile 0 61993 NULL
+r_num_ops_ceph_osd_request_61995_fields r_num_ops ceph_osd_request 0 61995 NULL
-+rdmaciqs_sge_61997_fields rdmaciqs sge 0 61997 NULL
+iscsi_login_tx_data_fndecl_61998_fields iscsi_login_tx_data fndecl 4 61998 NULL
++sisusb_write_fndecl_62001_fields sisusb_write fndecl 3 62001 NULL
+sc_reader_svcxprt_rdma_62004_fields sc_reader svcxprt_rdma 0 62004 NULL
+__add_discard_entry_fndecl_62006_fields __add_discard_entry fndecl 4-5 62006 NULL
+ext4_ext_convert_to_initialized_fndecl_62009_fields ext4_ext_convert_to_initialized fndecl 0 62009 NULL
@@ -203828,14 +208490,12 @@ index 0000000..6b5367db
+srp_map_sg_fr_fndecl_62023_fields srp_map_sg_fr fndecl 0 62023 NULL
+size_mtd_blktrans_dev_62024_fields size mtd_blktrans_dev 0 62024 NULL
+nf_bridge_encap_header_len_fndecl_62025_fields nf_bridge_encap_header_len fndecl 0 62025 NULL
-+filter_count_rx_used_efx_nic_type_62026_fields filter_count_rx_used efx_nic_type 0 62026 NULL
+encode_diropargs_fndecl_62031_fields encode_diropargs fndecl 4 62031 NULL
+num_qps_mlx4_caps_62033_fields num_qps mlx4_caps 0 62033 NULL
+n_rx_channels_efx_nic_62034_fields n_rx_channels efx_nic 0 62034 NULL
+dev_sectors_r10conf_62035_fields dev_sectors r10conf 0 62035 NULL
+set_advertising_fndecl_62037_fields set_advertising fndecl 4 62037 NULL
+tfcpad_xfrm_state_62038_fields tfcpad xfrm_state 0 62038 NULL
-+lmm_stripe_count_lov_user_md_v3_62042_fields lmm_stripe_count lov_user_md_v3 0 62042 NULL
+flag_count_sg_simple_element_62044_fields flag_count sg_simple_element 0 62044 NULL
+entries_size_ebt_replace_62051_fields entries_size ebt_replace 0 62051 NULL
+regmap_spi_read_fndecl_62058_fields regmap_spi_read fndecl 3-5 62058 NULL
@@ -203844,11 +208504,11 @@ index 0000000..6b5367db
+cb_stripe_unit_exofs_dt_data_map_62068_fields cb_stripe_unit exofs_dt_data_map 0 62068 NULL
+num_devices_dm_raid_superblock_62072_fields num_devices dm_raid_superblock 0 62072 NULL
+ip_vs_send_async_fndecl_62075_fields ip_vs_send_async fndecl 3 62075 NULL
++storvsc_connect_to_vsp_fndecl_62078_fields storvsc_connect_to_vsp fndecl 2 62078 NULL
+wBlockSize_ms_bootblock_sysinf_62081_fields wBlockSize ms_bootblock_sysinf 0 62081 NULL
+ieee80211_build_probe_req_fndecl_62084_fields ieee80211_build_probe_req fndecl 9-7 62084 NULL
+rtsx_usb_seq_write_register_fndecl_62088_fields rtsx_usb_seq_write_register fndecl 3 62088 NULL
+init_shash_alg_62095_fields init shash_alg 0 62095 NULL
-+max_xid_bnx2fc_hba_62096_fields max_xid bnx2fc_hba 0 62096 NULL
+bcm_recvmsg_fndecl_62099_fields bcm_recvmsg fndecl 3 62099 NULL nohasharray
+word3_atl1c_recv_ret_status_62099_fields word3 atl1c_recv_ret_status 0 62099 &bcm_recvmsg_fndecl_62099_fields
+task_ctx_size_pmu_62102_fields task_ctx_size pmu 0 62102 NULL
@@ -203862,7 +208522,7 @@ index 0000000..6b5367db
+drbd_recv_all_warn_fndecl_62144_fields drbd_recv_all_warn fndecl 3 62144 NULL
+cciss_tape_cmds_vardecl_cciss_c_62147_fields cciss_tape_cmds vardecl_cciss.c 0 62147 NULL
+tcp_trim_head_fndecl_62157_fields tcp_trim_head fndecl 3 62157 NULL
-+ptrace_writedata_fndecl_62158_fields ptrace_writedata fndecl 3 62158 NULL
++ptrace_writedata_fndecl_62158_fields ptrace_writedata fndecl 4-3 62158 NULL
+map_index_to_lba_fndecl_62162_fields map_index_to_lba fndecl 0-1 62162 NULL
+size_vfio_pci_region_62163_fields size vfio_pci_region 0 62163 NULL nohasharray
+max_i2s_chan_img_i2s_out_62163_fields max_i2s_chan img_i2s_out 0 62163 &size_vfio_pci_region_62163_fields
@@ -203870,36 +208530,34 @@ index 0000000..6b5367db
+alloc_huge_page_fndecl_62167_fields alloc_huge_page fndecl 2 62167 &user_frag_sctp_association_62167_fields
+len_scrub_copy_nocow_ctx_62170_fields len scrub_copy_nocow_ctx 0 62170 NULL
+igb_change_mtu_fndecl_62189_fields igb_change_mtu fndecl 2 62189 NULL
-+eps_count_ffs_data_62193_fields eps_count ffs_data 0 62193 NULL nohasharray
-+agent_send_response_fndecl_62193_fields agent_send_response fndecl 7 62193 &eps_count_ffs_data_62193_fields
++agent_send_response_fndecl_62193_fields agent_send_response fndecl 7 62193 NULL nohasharray
++eps_count_ffs_data_62193_fields eps_count ffs_data 0 62193 &agent_send_response_fndecl_62193_fields
+rose_sendmsg_fndecl_62194_fields rose_sendmsg fndecl 3 62194 NULL
+max_pkt_size_em28xx_62196_fields max_pkt_size em28xx 0 62196 NULL
+snd_cwnd_clamp_tcp_sock_62197_fields snd_cwnd_clamp tcp_sock 0 62197 NULL
+maxframe_caifsock_62201_fields maxframe caifsock 0 62201 NULL
+at24_eeprom_write_smbus_block_fndecl_62212_fields at24_eeprom_write_smbus_block fndecl 3-4 62212 NULL
++size_max_gb_loopback_device_62219_fields size_max gb_loopback_device 0 62219 NULL
+generic_file_direct_write_fndecl_62226_fields generic_file_direct_write fndecl 0 62226 NULL
+datainterval_snd_usb_endpoint_62227_fields datainterval snd_usb_endpoint 0 62227 NULL
+svm_create_vcpu_fndecl_62239_fields svm_create_vcpu fndecl 2 62239 NULL
+snd_pcm_alloc_vmalloc_buffer_fndecl_62240_fields snd_pcm_alloc_vmalloc_buffer fndecl 2 62240 NULL
-+btrfs_set_extent_delalloc_fndecl_62264_fields btrfs_set_extent_delalloc fndecl 3-2 62264 NULL
+num_rxqs_octeon_nic_if_config_62266_fields num_rxqs octeon_nic_if_config 0 62266 NULL
+usable_leb_size_ubi_volume_62272_fields usable_leb_size ubi_volume 0 62272 NULL
-+max_eps_mv_udc_62274_fields max_eps mv_udc 0 62274 NULL
+cfpkt_add_body_fndecl_62277_fields cfpkt_add_body fndecl 3 62277 NULL
+tx_cnt_virtio_vsock_sock_62281_fields tx_cnt virtio_vsock_sock 0 62281 NULL
+msb_get_free_block_fndecl_62282_fields msb_get_free_block fndecl 0 62282 NULL
+email_size_x509_parse_context_62283_fields email_size x509_parse_context 0 62283 NULL
+mappable_end_i915_ggtt_62288_fields mappable_end i915_ggtt 0 62288 NULL
+omfs_scan_list_fndecl_62289_fields omfs_scan_list fndecl 2 62289 NULL
-+num_arq_entries_i40e_adminq_info_62293_fields num_arq_entries i40e_adminq_info 0 62293 NULL
+num_chunks_icp_qat_suof_filehdr_62296_fields num_chunks icp_qat_suof_filehdr 0 62296 NULL
+max_io_mvumi_hba_62301_fields max_io mvumi_hba 0 62301 NULL
+ceph_llseek_fndecl_62305_fields ceph_llseek fndecl 2 62305 NULL
+sb_rbmblocks_xfs_sb_62307_fields sb_rbmblocks xfs_sb 0 62307 NULL
+rtl2832_sdr_convert_stream_fndecl_62308_fields rtl2832_sdr_convert_stream fndecl 0-4 62308 NULL
-+ircomm_tty_connect_confirm_fndecl_62310_fields ircomm_tty_connect_confirm fndecl 4-5 62310 NULL nohasharray
-+iov_data_count_iscsi_cmd_62310_fields iov_data_count iscsi_cmd 0 62310 &ircomm_tty_connect_confirm_fndecl_62310_fields
-+map_extent_mft_record_fndecl_62312_fields map_extent_mft_record fndecl 2 62312 NULL
++ircomm_tty_connect_confirm_fndecl_62310_fields ircomm_tty_connect_confirm fndecl 4-5 62310 NULL
++map_extent_mft_record_fndecl_62312_fields map_extent_mft_record fndecl 2 62312 NULL nohasharray
++alloc_ctrl_packet_fndecl_62312_fields alloc_ctrl_packet fndecl 1 62312 &map_extent_mft_record_fndecl_62312_fields
+ss_channels_snd_rme9652_62315_fields ss_channels snd_rme9652 0 62315 NULL
+ext2_new_block_fndecl_62326_fields ext2_new_block fndecl 0-2 62326 NULL
+tcp_vegas_cong_avoid_fndecl_62332_fields tcp_vegas_cong_avoid fndecl 3 62332 NULL
@@ -203907,26 +208565,28 @@ index 0000000..6b5367db
+hdrlen_adm8211_tx_ring_info_62338_fields hdrlen adm8211_tx_ring_info 0 62338 &qib_get_user_pages_fndecl_62338_fields nohasharray
+bbtskipbytes_denali_nand_info_62338_fields bbtskipbytes denali_nand_info 0 62338 &hdrlen_adm8211_tx_ring_info_62338_fields
+pagf_flcount_xfs_perag_62340_fields pagf_flcount xfs_perag 0 62340 NULL
++xfs_bmap_remap_alloc_fndecl_62345_fields xfs_bmap_remap_alloc fndecl 0 62345 NULL nohasharray
++reiserfs_update_sd_size_fndecl_62345_fields reiserfs_update_sd_size fndecl 3 62345 &xfs_bmap_remap_alloc_fndecl_62345_fields
+pcl_status_pcl_62348_fields pcl_status pcl 0 62348 NULL
+mtu_from_qp_rvt_driver_provided_62354_fields mtu_from_qp rvt_driver_provided 0 62354 NULL
+raid56_parity_write_fndecl_62355_fields raid56_parity_write fndecl 0 62355 NULL
+len_eager_buffer_62357_fields len eager_buffer 0 62357 NULL
+rawv6_sendmsg_fndecl_62363_fields rawv6_sendmsg fndecl 3 62363 NULL
+drxbsp_i2c_write_read_fndecl_62366_fields drxbsp_i2c_write_read fndecl 5-2 62366 NULL
-+num_entries_compat_arpt_replace_62377_fields num_entries compat_arpt_replace 0 62377 NULL
++num_entries_compat_arpt_replace_62377_fields num_entries compat_arpt_replace 0 62377 NULL nohasharray
++fib_count_nexthops_fndecl_62377_fields fib_count_nexthops fndecl 0 62377 &num_entries_compat_arpt_replace_62377_fields
+new_chunk_mdp_superblock_1_62380_fields new_chunk mdp_superblock_1 0 62380 NULL
-+max_cnt_ocrdma_qp_hwq_info_62383_fields max_cnt ocrdma_qp_hwq_info 0 62383 NULL nohasharray
-+efx_wanted_parallelism_fndecl_62383_fields efx_wanted_parallelism fndecl 0 62383 &max_cnt_ocrdma_qp_hwq_info_62383_fields
-+ivsize_aead_alg_62386_fields ivsize aead_alg 0 62386 NULL nohasharray
-+send_queue_size_nvmet_rdma_queue_62386_fields send_queue_size nvmet_rdma_queue 0 62386 &ivsize_aead_alg_62386_fields
++efx_wanted_parallelism_fndecl_62383_fields efx_wanted_parallelism fndecl 0 62383 NULL nohasharray
++max_cnt_ocrdma_qp_hwq_info_62383_fields max_cnt ocrdma_qp_hwq_info 0 62383 &efx_wanted_parallelism_fndecl_62383_fields
++send_queue_size_nvmet_rdma_queue_62386_fields send_queue_size nvmet_rdma_queue 0 62386 NULL nohasharray
++ivsize_aead_alg_62386_fields ivsize aead_alg 0 62386 &send_queue_size_nvmet_rdma_queue_62386_fields
+m_blkbb_log_xfs_mount_62391_fields m_blkbb_log xfs_mount 0 62391 NULL
+__generic_block_fiemap_fndecl_62394_fields __generic_block_fiemap fndecl 4 62394 NULL
+hwCBP_td_62396_fields hwCBP td 0 62396 NULL
+len_scifioctl_node_ids_62402_fields len scifioctl_node_ids 0 62402 NULL
+pty_write_fndecl_62406_fields pty_write fndecl 3 62406 NULL
-+segment_acpi_pci_root_62407_fields segment acpi_pci_root 0 62407 NULL
-+fill_holes_fndecl_62408_fields fill_holes fndecl 4-5 62408 NULL nohasharray
-+rtsx_usb_get_rsp_fndecl_62408_fields rtsx_usb_get_rsp fndecl 2 62408 &fill_holes_fndecl_62408_fields
++rtsx_usb_get_rsp_fndecl_62408_fields rtsx_usb_get_rsp fndecl 2 62408 NULL nohasharray
++fill_holes_fndecl_62408_fields fill_holes fndecl 4-5 62408 &rtsx_usb_get_rsp_fndecl_62408_fields
+gfs2_log_bmap_fndecl_62411_fields gfs2_log_bmap fndecl 0 62411 NULL
+unmap_page_range_fndecl_62415_fields unmap_page_range fndecl 4-3 62415 NULL
+adap_id_pca954x_platform_mode_62418_fields adap_id pca954x_platform_mode 0 62418 NULL
@@ -203942,12 +208602,13 @@ index 0000000..6b5367db
+ipx_recvmsg_fndecl_62469_fields ipx_recvmsg fndecl 3 62469 NULL
+ram_alignment_fndecl_62470_fields ram_alignment fndecl 0 62470 NULL
+payload_bytes_controlvm_message_header_62474_fields payload_bytes controlvm_message_header 0 62474 NULL
++page_size_mspro_block_data_62479_fields page_size mspro_block_data 0 62479 NULL
+fw_stats_bus_myri10ge_slice_state_62482_fields fw_stats_bus myri10ge_slice_state 0 62482 NULL
+rx_ring_tail_sc92031_priv_62486_fields rx_ring_tail sc92031_priv 0 62486 NULL
-+mlx5_ib_reg_user_mr_fndecl_62488_fields mlx5_ib_reg_user_mr fndecl 4-2-3 62488 NULL
++mlx5_ib_reg_user_mr_fndecl_62488_fields mlx5_ib_reg_user_mr fndecl 4-3-2 62488 NULL
+dlen_ippp_ccp_reset_state_62491_fields dlen ippp_ccp_reset_state 0 62491 NULL nohasharray
+residual_len_sts_entry_fx00_62491_fields residual_len sts_entry_fx00 0 62491 &dlen_ippp_ccp_reset_state_62491_fields
-+filemap_write_and_wait_range_fndecl_62492_fields filemap_write_and_wait_range fndecl 0-2-3 62492 NULL nohasharray
++filemap_write_and_wait_range_fndecl_62492_fields filemap_write_and_wait_range fndecl 0-2 62492 NULL nohasharray
+svc_sock_setbufsize_fndecl_62492_fields svc_sock_setbufsize fndecl 2 62492 &filemap_write_and_wait_range_fndecl_62492_fields
+try_charge_fndecl_62496_fields try_charge fndecl 0 62496 NULL
+vmci_transport_set_buffer_size_fndecl_62498_fields vmci_transport_set_buffer_size fndecl 2 62498 NULL
@@ -203955,7 +208616,7 @@ index 0000000..6b5367db
+rq_tailsz_smb_rqst_62506_fields rq_tailsz smb_rqst 0 62506 NULL
+jade_ale_bkm_hw_62507_fields jade_ale bkm_hw 0 62507 NULL
+sgs_per_request_skd_device_62508_fields sgs_per_request skd_device 0 62508 NULL
-+mpage_alloc_fndecl_62512_fields mpage_alloc fndecl 2-3 62512 NULL
++mpage_alloc_fndecl_62512_fields mpage_alloc fndecl 2 62512 NULL
+dma_phys_netup_unidvb_dev_62519_fields dma_phys netup_unidvb_dev 0 62519 NULL
+rx_buf_sz_iadev_priv_62524_fields rx_buf_sz iadev_priv 0 62524 NULL
+xfs_log_regrant_fndecl_62533_fields xfs_log_regrant fndecl 0 62533 NULL
@@ -203972,7 +208633,6 @@ index 0000000..6b5367db
+__alloc_bootmem_low_fndecl_62604_fields __alloc_bootmem_low fndecl 2-3 62604 NULL nohasharray
+max_header_size_irlan_cb_62604_fields max_header_size irlan_cb 0 62604 &__alloc_bootmem_low_fndecl_62604_fields
+ext4_xattr_check_names_fndecl_62605_fields ext4_xattr_check_names fndecl 0 62605 NULL
-+sizeoftlvs_lec_arp_table_62608_fields sizeoftlvs lec_arp_table 0 62608 NULL
+pci_sriov_set_totalvfs_fndecl_62615_fields pci_sriov_set_totalvfs fndecl 2 62615 NULL
+mixed_cnt_ncsi_rsp_gc_pkt_62619_fields mixed_cnt ncsi_rsp_gc_pkt 0 62619 NULL
+l2linesize_linelock_62626_fields l2linesize linelock 0 62626 NULL
@@ -203995,29 +208655,30 @@ index 0000000..6b5367db
+encode_rpcb_string_fndecl_62680_fields encode_rpcb_string fndecl 3 62680 NULL
+num_vsis_i40e_hw_capabilities_62685_fields num_vsis i40e_hw_capabilities 0 62685 NULL
+start_ttm_mem_reg_62688_fields start ttm_mem_reg 0 62688 NULL
++drm_rect_clip_scaled_fndecl_62701_fields drm_rect_clip_scaled fndecl 4-5 62701 NULL
+vmemdup_fndecl_62706_fields vmemdup fndecl 2 62706 NULL
+curwidth_usb_usbvision_62710_fields curwidth usb_usbvision 0 62710 NULL
+mtu_ring_info_62721_fields mtu ring_info 0 62721 NULL
-+limit_tc_sfq_qopt_62728_fields limit tc_sfq_qopt 0 62728 NULL nohasharray
-+jffs2_write_begin_fndecl_62728_fields jffs2_write_begin fndecl 3 62728 &limit_tc_sfq_qopt_62728_fields
++jffs2_write_begin_fndecl_62728_fields jffs2_write_begin fndecl 3 62728 NULL nohasharray
++limit_tc_sfq_qopt_62728_fields limit tc_sfq_qopt 0 62728 &jffs2_write_begin_fndecl_62728_fields
+total_len_android_wifi_priv_cmd_62735_fields total_len android_wifi_priv_cmd 0 62735 NULL
-+smi_read_eeprom_fndecl_62737_fields smi_read_eeprom fndecl 4 62737 NULL nohasharray
-+nct6683_create_attr_group_fndecl_62737_fields nct6683_create_attr_group fndecl 3 62737 &smi_read_eeprom_fndecl_62737_fields
-+xfs_da_read_buf_fndecl_62739_fields xfs_da_read_buf fndecl 3 62739 NULL
++smi_read_eeprom_fndecl_62737_fields smi_read_eeprom fndecl 4 62737 NULL
++xfs_da_read_buf_fndecl_62739_fields xfs_da_read_buf fndecl 3 62739 NULL nohasharray
++mlx5_pci_enable_sriov_fndecl_62739_fields mlx5_pci_enable_sriov fndecl 2 62739 &xfs_da_read_buf_fndecl_62739_fields
++payload_size_hv_message_header_62742_fields payload_size hv_message_header 0 62742 NULL
+twa_load_sgl_fndecl_62743_fields twa_load_sgl fndecl 5 62743 NULL
+mi_first_entry_offset_nilfs_mdt_info_62749_fields mi_first_entry_offset nilfs_mdt_info 0 62749 NULL
+num_counters_vardecl_op_model_amd_c_62750_fields num_counters vardecl_op_model_amd.c 0 62750 NULL
-+__bioset_create_fndecl_62752_fields __bioset_create fndecl 2-1 62752 NULL
++__bioset_create_fndecl_62752_fields __bioset_create fndecl 2 62752 NULL
+min_align_pci_dev_resource_62768_fields min_align pci_dev_resource 0 62768 NULL
-+cp2112_read_req_fndecl_62770_fields cp2112_read_req fndecl 0 62770 NULL
+st_nci_hci_dm_fwupd_end_fndecl_62777_fields st_nci_hci_dm_fwupd_end fndecl 3 62777 NULL
+e_value_size_ext4_xattr_entry_62783_fields e_value_size ext4_xattr_entry 0 62783 NULL
+ecc_bits_jedec_ecc_info_62785_fields ecc_bits jedec_ecc_info 0 62785 NULL
+mt2131_writeregs_fndecl_62788_fields mt2131_writeregs fndecl 3 62788 NULL
+dump_skip_fndecl_62793_fields dump_skip fndecl 2 62793 NULL
++len_cx24120_cmd_62796_fields len cx24120_cmd 0 62796 NULL
+cur_tx_netdev_private_62799_fields cur_tx netdev_private 0 62799 NULL
+hfi1_hdrq_entsize_vardecl_init_c_62810_fields hfi1_hdrq_entsize vardecl_init.c 0 62810 NULL
-+xattr_len_ima_event_data_62811_fields xattr_len ima_event_data 0 62811 NULL
+head_aio_ring_62812_fields head aio_ring 0 62812 NULL
+capture_frlog_rme32_62817_fields capture_frlog rme32 0 62817 NULL
+coex_rx_win_size_mwifiex_adapter_62818_fields coex_rx_win_size mwifiex_adapter 0 62818 NULL
@@ -204031,6 +208692,7 @@ index 0000000..6b5367db
+height_tm6000_core_62864_fields height tm6000_core 0 62864 NULL
+c67x00_td_to_error_fndecl_62867_fields c67x00_td_to_error fndecl 0 62867 NULL
+ext2_max_size_fndecl_62871_fields ext2_max_size fndecl 0-1 62871 NULL
++wPageSize_ms_bootblock_sysinf_62873_fields wPageSize ms_bootblock_sysinf 0 62873 NULL
+i2c_hid_get_report_fndecl_62874_fields i2c_hid_get_report fndecl 5 62874 NULL
+qp_count_ntb_transport_ctx_62876_fields qp_count ntb_transport_ctx 0 62876 NULL
+xfs_dir3_leaf_read_fndecl_62878_fields xfs_dir3_leaf_read fndecl 3 62878 NULL
@@ -204043,9 +208705,9 @@ index 0000000..6b5367db
+length_uvc_buffer_62907_fields length uvc_buffer 0 62907 NULL
+buflen_xdr_buf_62914_fields buflen xdr_buf 0 62914 NULL nohasharray
+n_subdevices_comedi_device_62914_fields n_subdevices comedi_device 0 62914 &buflen_xdr_buf_62914_fields
-+out_size_ide_task_request_s_62924_fields out_size ide_task_request_s 0 62924 NULL
+uar_size_mthca_dev_lim_62925_fields uar_size mthca_dev_lim 0 62925 NULL
-+teiup_create_fndecl_62930_fields teiup_create fndecl 3 62930 NULL
++teiup_create_fndecl_62930_fields teiup_create fndecl 3 62930 NULL nohasharray
++queue_size_srp_target_port_62930_fields queue_size srp_target_port 0 62930 &teiup_create_fndecl_62930_fields
+ext4_xattr_ibody_get_fndecl_62931_fields ext4_xattr_ibody_get fndecl 0 62931 NULL nohasharray
+madvise_free_pte_range_fndecl_62931_fields madvise_free_pte_range fndecl 2 62931 &ext4_xattr_ibody_get_fndecl_62931_fields
+regmap_encx24j600_sfr_write_fndecl_62935_fields regmap_encx24j600_sfr_write fndecl 4 62935 NULL
@@ -204069,11 +208731,12 @@ index 0000000..6b5367db
+ocfs2_xattr_get_value_outside_fndecl_63000_fields ocfs2_xattr_get_value_outside fndecl 0 63000 NULL
+finish_item_xfs_defer_op_type_63002_fields finish_item xfs_defer_op_type 0 63002 NULL
+do_garbage_collect_fndecl_63005_fields do_garbage_collect fndecl 2 63005 NULL
-+pagesize_flash_info_63006_fields pagesize flash_info 0 63006 NULL
++pagesize_flash_info_63006_fields pagesize flash_info 0 63006 NULL nohasharray
++print_hex_dump_fndecl_63006_fields print_hex_dump fndecl 7-4-5 63006 &pagesize_flash_info_63006_fields
+get_rsb_struct_fndecl_63014_fields get_rsb_struct fndecl 3 63014 NULL
+btrfs_xattr_handler_set_fndecl_63016_fields btrfs_xattr_handler_set fndecl 6 63016 NULL
+packets_per_second_ua101_63022_fields packets_per_second ua101 0 63022 NULL nohasharray
-+iomap_write_actor_fndecl_63022_fields iomap_write_actor fndecl 2-3 63022 &packets_per_second_ua101_63022_fields
++iomap_write_actor_fndecl_63022_fields iomap_write_actor fndecl 3-2 63022 &packets_per_second_ua101_63022_fields
+mmio_size_controller_63024_fields mmio_size controller 0 63024 NULL
+hci_send_cmd_fndecl_63025_fields hci_send_cmd fndecl 3 63025 NULL
+mdsl_cxgbit_device_63030_fields mdsl cxgbit_device 0 63030 NULL
@@ -204082,8 +208745,9 @@ index 0000000..6b5367db
+size_align_rxrpc_connection_63035_fields size_align rxrpc_connection 0 63035 NULL
+display_width_vivid_dev_63040_fields display_width vivid_dev 0 63040 NULL
+acpi_aml_write_user_fndecl_63043_fields acpi_aml_write_user fndecl 2-0 63043 NULL
-+reset_psn_fndecl_63045_fields reset_psn fndecl 2 63045 NULL
-+ttymajor_vardecl_synclink_cs_c_63046_fields ttymajor vardecl_synclink_cs.c 0 63046 NULL
++max_outstanding_requests_pqi_ctrl_info_63046_fields max_outstanding_requests pqi_ctrl_info 0 63046 NULL nohasharray
++ttymajor_vardecl_synclink_cs_c_63046_fields ttymajor vardecl_synclink_cs.c 0 63046 &max_outstanding_requests_pqi_ctrl_info_63046_fields
++len_ixgbe_tx_buffer_63047_fields len ixgbe_tx_buffer 0 63047 NULL
+sizeimage_deinterlace_q_data_63050_fields sizeimage deinterlace_q_data 0 63050 NULL
+atl1c_change_mtu_fndecl_63051_fields atl1c_change_mtu fndecl 2 63051 NULL
+irq_create_fwspec_mapping_fndecl_63056_fields irq_create_fwspec_mapping fndecl 0 63056 NULL
@@ -204092,17 +208756,14 @@ index 0000000..6b5367db
+q0_num_vecs_bna_rx_config_63058_fields q0_num_vecs bna_rx_config 0 63058 &nr_perf_branch_stack_63058_fields
+pcibios_scan_root_fndecl_63059_fields pcibios_scan_root fndecl 1 63059 NULL
+if_bytes_xfs_ifork_63066_fields if_bytes xfs_ifork 0 63066 NULL
-+writesize_onenand_chip_63069_fields writesize onenand_chip 0 63069 NULL
++dm_ring_size_vardecl_hv_balloon_c_63071_fields dm_ring_size vardecl_hv_balloon.c 0 63071 NULL
+prev_algo_r5conf_63075_fields prev_algo r5conf 0 63075 NULL
+num_records_htt_tx_fetch_ind_63076_fields num_records htt_tx_fetch_ind 0 63076 NULL
+start_bus_pci_mmcfg_region_63086_fields start_bus pci_mmcfg_region 0 63086 NULL
+width_saa7134_dev_63087_fields width saa7134_dev 0 63087 NULL nohasharray
-+s_anchor_udf_sb_info_63087_fields s_anchor udf_sb_info 0 63087 &width_saa7134_dev_63087_fields nohasharray
-+init_labels_fndecl_63087_fields init_labels fndecl 2 63087 &s_anchor_udf_sb_info_63087_fields
++s_anchor_udf_sb_info_63087_fields s_anchor udf_sb_info 0 63087 &width_saa7134_dev_63087_fields
+nfc_hci_execute_cmd_fndecl_63097_fields nfc_hci_execute_cmd fndecl 5 63097 NULL
+rd_page_count_rd_dev_63098_fields rd_page_count rd_dev 0 63098 NULL
-+get_registry_size_bnx2x_mcast_obj_63102_fields get_registry_size bnx2x_mcast_obj 0 63102 NULL
-+size_devlog_params_63104_fields size devlog_params 0 63104 NULL
+cros_ec_num_pwms_fndecl_63107_fields cros_ec_num_pwms fndecl 0 63107 NULL
+drxdap_fasi_read_block_fndecl_63113_fields drxdap_fasi_read_block fndecl 3 63113 NULL
+ticket_len_rxkad_key_63114_fields ticket_len rxkad_key 0 63114 NULL
@@ -204117,12 +208778,15 @@ index 0000000..6b5367db
+vback_porch_videomode_63152_fields vback_porch videomode 0 63152 NULL nohasharray
+nid_nat_journal_entry_63152_fields nid nat_journal_entry 0 63152 &vback_porch_videomode_63152_fields
+obj_order_rbd_image_header_63156_fields obj_order rbd_image_header 0 63156 NULL
++reiserfs_get_blocks_direct_io_fndecl_63157_fields reiserfs_get_blocks_direct_io fndecl 2 63157 NULL
+length_req_que_63158_fields length req_que 0 63158 NULL
+dst_y_yuv_frame_info_63162_fields dst_y yuv_frame_info 0 63162 NULL
+get_pattern_len_ts_ops_63165_fields get_pattern_len ts_ops 0 63165 NULL
+word_4_rsq_entry_63169_fields word_4 rsq_entry 0 63169 NULL
++max_inbound_iu_length_per_firmware_pqi_ctrl_info_63170_fields max_inbound_iu_length_per_firmware pqi_ctrl_info 0 63170 NULL
+nla_reserve_fndecl_63171_fields nla_reserve fndecl 3 63171 NULL
+vma_hugecache_offset_fndecl_63172_fields vma_hugecache_offset fndecl 0-3 63172 NULL
++xt_copy_counters_from_user_fndecl_63174_fields xt_copy_counters_from_user fndecl 2 63174 NULL
+object_counter_vardecl_hidma_mgmt_c_63176_fields object_counter vardecl_hidma_mgmt.c 0 63176 NULL
+ulist_add_fndecl_63177_fields ulist_add fndecl 0 63177 NULL
+nr_to_scan_shrink_control_63181_fields nr_to_scan shrink_control 0 63181 NULL
@@ -204132,15 +208796,13 @@ index 0000000..6b5367db
+val_v4l2_ctrl_63196_fields val v4l2_ctrl 0 63196 NULL
+__get_required_blob_size_fndecl_63199_fields __get_required_blob_size fndecl 0-3-2 63199 NULL
+mwl8k_add_dma_header_fndecl_63203_fields mwl8k_add_dma_header fndecl 3 63203 NULL
-+lcd_lower_margin_atyfb_par_63209_fields lcd_lower_margin atyfb_par 0 63209 NULL nohasharray
-+nvm_submit_ppa_list_fndecl_63209_fields nvm_submit_ppa_list fndecl 7 63209 &lcd_lower_margin_atyfb_par_63209_fields
++lcd_lower_margin_atyfb_par_63209_fields lcd_lower_margin atyfb_par 0 63209 NULL
+sdebug_unmap_granularity_vardecl_scsi_debug_c_63211_fields sdebug_unmap_granularity vardecl_scsi_debug.c 0 63211 NULL
+blk_queue_chunk_sectors_fndecl_63214_fields blk_queue_chunk_sectors fndecl 2 63214 NULL
+ufs_alloccg_block_fndecl_63239_fields ufs_alloccg_block fndecl 0 63239 NULL nohasharray
+npins_intel_pinctrl_soc_data_63239_fields npins intel_pinctrl_soc_data 0 63239 &ufs_alloccg_block_fndecl_63239_fields
+mod_len_start_info_63244_fields mod_len start_info 0 63244 NULL
+ep_image_mts_desc_63258_fields ep_image mts_desc 0 63258 NULL
-+cachefiles_daemon_write_fndecl_63260_fields cachefiles_daemon_write fndecl 3 63260 NULL
+pdu_write_u_fndecl_63261_fields pdu_write_u fndecl 3 63261 NULL
+sch56xx_device_add_fndecl_63264_fields sch56xx_device_add fndecl 1 63264 NULL
+_fc_frame_alloc_fndecl_63267_fields _fc_frame_alloc fndecl 1 63267 NULL
@@ -204148,12 +208810,11 @@ index 0000000..6b5367db
+s_mb_last_start_ext4_sb_info_63283_fields s_mb_last_start ext4_sb_info 0 63283 NULL
+num_counters_ebt_replace_63286_fields num_counters ebt_replace 0 63286 NULL
+xprt_rdma_slot_table_entries_vardecl_transport_c_63290_fields xprt_rdma_slot_table_entries vardecl_transport.c 0 63290 NULL
-+num_regulators_mc13xxx_regulator_platform_data_63291_fields num_regulators mc13xxx_regulator_platform_data 0 63291 NULL
-+ath_rx_init_fndecl_63295_fields ath_rx_init fndecl 2 63295 NULL
++video_buffer_size_osd_info_63299_fields video_buffer_size osd_info 0 63299 NULL
+num_req_tx_rings_bnx2_63306_fields num_req_tx_rings bnx2 0 63306 NULL
+valuelen_jfs_ea_63309_fields valuelen jfs_ea 0 63309 NULL
-+con_out_kvec_add_fndecl_63316_fields con_out_kvec_add fndecl 2 63316 NULL nohasharray
-+big_key_crypt_fndecl_63316_fields big_key_crypt fndecl 3 63316 &con_out_kvec_add_fndecl_63316_fields
++big_key_crypt_fndecl_63316_fields big_key_crypt fndecl 3 63316 NULL nohasharray
++con_out_kvec_add_fndecl_63316_fields con_out_kvec_add fndecl 2 63316 &big_key_crypt_fndecl_63316_fields
+pkt_len_eth_fast_path_rx_reg_cqe_63328_fields pkt_len eth_fast_path_rx_reg_cqe 0 63328 NULL
+doorbell_start_offset_kgd2kfd_shared_resources_63332_fields doorbell_start_offset kgd2kfd_shared_resources 0 63332 NULL
+gf100_vm_create_fndecl_63335_fields gf100_vm_create fndecl 3-2 63335 NULL
@@ -204171,8 +208832,7 @@ index 0000000..6b5367db
+data_len_ubifs_inode_63396_fields data_len ubifs_inode 0 63396 NULL
+buflen_audit_rule_data_63397_fields buflen audit_rule_data 0 63397 NULL nohasharray
+hidp_send_ctrl_message_fndecl_63397_fields hidp_send_ctrl_message fndecl 4 63397 &buflen_audit_rule_data_63397_fields
-+efi_memdesc_size_vardecl_runtime_map_c_63399_fields efi_memdesc_size vardecl_runtime-map.c 0 63399 NULL nohasharray
-+max_cqes_per_cq_iwch_rnic_attributes_63399_fields max_cqes_per_cq iwch_rnic_attributes 0 63399 &efi_memdesc_size_vardecl_runtime_map_c_63399_fields
++max_cqes_per_cq_iwch_rnic_attributes_63399_fields max_cqes_per_cq iwch_rnic_attributes 0 63399 NULL
+geneve6_build_skb_fndecl_63402_fields geneve6_build_skb fndecl 5 63402 NULL nohasharray
+bnx2_find_max_ring_fndecl_63402_fields bnx2_find_max_ring fndecl 0-2 63402 &geneve6_build_skb_fndecl_63402_fields
+flt_chap_size_ql82xx_hw_data_63406_fields flt_chap_size ql82xx_hw_data 0 63406 NULL
@@ -204186,6 +208846,7 @@ index 0000000..6b5367db
+tas571x_register_size_fndecl_63430_fields tas571x_register_size fndecl 0 63430 &ocfs2_replace_clusters_fndecl_63430_fields nohasharray
+ad_sd_read_reg_raw_fndecl_63430_fields ad_sd_read_reg_raw fndecl 3 63430 &tas571x_register_size_fndecl_63430_fields
+mem_len_bfa_mem_kva_s_63432_fields mem_len bfa_mem_kva_s 0 63432 NULL
++gfx_v6_0_get_csb_size_fndecl_63438_fields gfx_v6_0_get_csb_size fndecl 0 63438 NULL
+m_max_file_size_ceph_mdsmap_63449_fields m_max_file_size ceph_mdsmap 0 63449 NULL
+max_send_wr_ib_qp_cap_63450_fields max_send_wr ib_qp_cap 0 63450 NULL
+vb2_create_framevec_fndecl_63451_fields vb2_create_framevec fndecl 1-2 63451 NULL
@@ -204201,6 +208862,9 @@ index 0000000..6b5367db
+srq_lmt_max_sge_ocrdma_query_srq_rsp_63477_fields srq_lmt_max_sge ocrdma_query_srq_rsp 0 63477 NULL
+__bm_find_next_fndecl_63479_fields __bm_find_next fndecl 0-2 63479 NULL
+cur_fw_xcb_count_qla_hw_data_63480_fields cur_fw_xcb_count qla_hw_data 0 63480 NULL
++gigaset_initcs_fndecl_63482_fields gigaset_initcs fndecl 2 63482 NULL nohasharray
++length_dw_amdgpu_cs_chunk_63482_fields length_dw amdgpu_cs_chunk 0 63482 &gigaset_initcs_fndecl_63482_fields
++width_v4l2_pix_format_63491_fields width v4l2_pix_format 0 63491 NULL
+sb_spino_align_xfs_sb_63492_fields sb_spino_align xfs_sb 0 63492 NULL
+find_last_bit_fndecl_63495_fields find_last_bit fndecl 0-2 63495 NULL
+__pcpu_size_to_slot_fndecl_63500_fields __pcpu_size_to_slot fndecl 0 63500 NULL
@@ -204214,13 +208878,11 @@ index 0000000..6b5367db
+num_wsm_ether_type_filter_hdr_63536_fields num wsm_ether_type_filter_hdr 0 63536 NULL
+srp_map_finish_fr_fndecl_63538_fields srp_map_finish_fr fndecl 0 63538 NULL
+num_clips_drm_mode_fb_dirty_cmd_63540_fields num_clips drm_mode_fb_dirty_cmd 0 63540 NULL
-+word_size_ixgbe_eeprom_info_63556_fields word_size ixgbe_eeprom_info 0 63556 NULL
+multi_rmw_idx_wmi_63557_fields multi_rmw_idx wmi 0 63557 NULL
+tcp_sync_mss_fndecl_63561_fields tcp_sync_mss fndecl 0-2 63561 NULL
+unmap_granularity_scsi_disk_63574_fields unmap_granularity scsi_disk 0 63574 NULL
+xfs_vm_readpages_fndecl_63575_fields xfs_vm_readpages fndecl 4 63575 NULL
+num_ethernet_queues_bnx2x_63578_fields num_ethernet_queues bnx2x 0 63578 NULL
-+ide_raw_taskfile_fndecl_63584_fields ide_raw_taskfile fndecl 4 63584 NULL
+trace_fill_header_fndecl_63588_fields trace_fill_header fndecl 5 63588 NULL
+width_console_font_63590_fields width console_font 0 63590 NULL
+fbmem_viafb_par_63594_fields fbmem viafb_par 0 63594 NULL nohasharray
@@ -204231,44 +208893,47 @@ index 0000000..6b5367db
+dbFree_fndecl_63599_fields dbFree fndecl 3-2 63599 &size_dmaengine_unmap_pool_63599_fields
+snd_pcm_plug_alloc_fndecl_63600_fields snd_pcm_plug_alloc fndecl 2 63600 NULL
+offset_pci_sriov_63604_fields offset pci_sriov 0 63604 NULL
++rpcrdma_prepare_hdr_sge_fndecl_63612_fields rpcrdma_prepare_hdr_sge fndecl 3 63612 NULL
+rx_mtu_p54_common_63619_fields rx_mtu p54_common 0 63619 NULL
+len_fscrypt_str_63626_fields len fscrypt_str 0 63626 NULL
+buf_len_mwifiex_sdio_mpa_rx_63636_fields buf_len mwifiex_sdio_mpa_rx 0 63636 NULL nohasharray
+find_run_fndecl_63636_fields find_run fndecl 0 63636 &buf_len_mwifiex_sdio_mpa_rx_63636_fields
+be_v_offset_pnfs_block_extent_63637_fields be_v_offset pnfs_block_extent 0 63637 NULL nohasharray
+rx_ring_size_gfar_priv_rx_q_63637_fields rx_ring_size gfar_priv_rx_q 0 63637 &be_v_offset_pnfs_block_extent_63637_fields
-+spad_count_ntb_dev_ops_63660_fields spad_count ntb_dev_ops 0 63660 NULL
-+id_nvdimm_63666_fields id nvdimm 0 63666 NULL
-+nr_map_e820map_63674_fields nr_map e820map 0 63674 NULL
++snic_queue_wq_desc_fndecl_63639_fields snic_queue_wq_desc fndecl 3 63639 NULL
+nfs_writepage_setup_fndecl_63682_fields nfs_writepage_setup fndecl 3-4 63682 NULL
++height_ssd1307fb_par_63688_fields height ssd1307fb_par 0 63688 NULL
+pci_get_device_func_fndecl_63689_fields pci_get_device_func fndecl 2 63689 NULL
+nr_pages_msc_63690_fields nr_pages msc 0 63690 NULL
+cell_error_with_code_fndecl_63693_fields cell_error_with_code fndecl 3 63693 NULL
+obj_size_proto_63697_fields obj_size proto 0 63697 NULL
++gsm_data_alloc_fndecl_63702_fields gsm_data_alloc fndecl 3 63702 NULL
+adv76xx_read_check_fndecl_63705_fields adv76xx_read_check fndecl 0 63705 NULL
-+real_trim_memory_fndecl_63709_fields real_trim_memory fndecl 1-2 63709 NULL
++real_trim_memory_fndecl_63709_fields real_trim_memory fndecl 1-2 63709 NULL nohasharray
++spi_split_transfers_maxsize_fndecl_63709_fields spi_split_transfers_maxsize fndecl 3 63709 &real_trim_memory_fndecl_63709_fields
+owner_snd_ctl_elem_info_63711_fields owner snd_ctl_elem_info 0 63711 NULL
+index_dtsplit_63712_fields index dtsplit 0 63712 NULL nohasharray
+xfs_alloc_compute_aligned_fndecl_63712_fields xfs_alloc_compute_aligned fndecl 3-2 63712 &index_dtsplit_63712_fields
-+kernel_recvmsg_fndecl_63713_fields kernel_recvmsg fndecl 0-5-4 63713 NULL
++kernel_recvmsg_fndecl_63713_fields kernel_recvmsg fndecl 0-5 63713 NULL
+omfs_readpages_fndecl_63721_fields omfs_readpages fndecl 4 63721 NULL
++rpcrdma_get_recvbuf_fndecl_63730_fields rpcrdma_get_recvbuf fndecl 3 63730 NULL
+osd_vis_h_yuv_playback_info_63734_fields osd_vis_h yuv_playback_info 0 63734 NULL
+pci_hotplug_mem_size_vardecl_63735_fields pci_hotplug_mem_size vardecl 0 63735 NULL
+get_mergeable_buf_len_fndecl_63736_fields get_mergeable_buf_len fndecl 0 63736 NULL
++print_section_fndecl_63738_fields print_section fndecl 3 63738 NULL
+__register_chrdev_region_fndecl_63741_fields __register_chrdev_region fndecl 1 63741 NULL
+size_vb2_dc_buf_63751_fields size vb2_dc_buf 0 63751 NULL
+target_size_scsi_transport_template_63753_fields target_size scsi_transport_template 0 63753 NULL
++smtc_map_smem_fndecl_63754_fields smtc_map_smem fndecl 3 63754 NULL
+mp_irqdomain_get_attr_fndecl_63759_fields mp_irqdomain_get_attr fndecl 1 63759 NULL
+ath6kl_wmi_remain_on_chnl_cmd_fndecl_63760_fields ath6kl_wmi_remain_on_chnl_cmd fndecl 2 63760 NULL
-+xfs_qm_dqalloc_fndecl_63762_fields xfs_qm_dqalloc fndecl 5-0 63762 NULL nohasharray
-+index_isi_board_63762_fields index isi_board 0 63762 &xfs_qm_dqalloc_fndecl_63762_fields
-+device_get_child_node_count_fndecl_63779_fields device_get_child_node_count fndecl 0 63779 NULL
++xfs_qm_dqalloc_fndecl_63762_fields xfs_qm_dqalloc fndecl 5-0 63762 NULL
+__xfs_rmap_add_fndecl_63780_fields __xfs_rmap_add fndecl 0 63780 NULL
+f2fs_xattr_generic_set_fndecl_63782_fields f2fs_xattr_generic_set fndecl 6 63782 NULL
+items_priv_size_vxge_hw_mempool_63785_fields items_priv_size vxge_hw_mempool 0 63785 NULL
+num_slices_myri10ge_priv_63789_fields num_slices myri10ge_priv 0 63789 NULL
+order_pmcraid_sglist_63792_fields order pmcraid_sglist 0 63792 NULL nohasharray
-+orinoco_mic_fndecl_63792_fields orinoco_mic fndecl 7 63792 &order_pmcraid_sglist_63792_fields
++_scif_recv_fndecl_63792_fields _scif_recv fndecl 0-3 63792 &order_pmcraid_sglist_63792_fields
+modem_write_cmd_fndecl_63794_fields modem_write_cmd fndecl 3 63794 NULL nohasharray
+dpcm_capture_snd_soc_dai_link_63794_fields dpcm_capture snd_soc_dai_link 0 63794 &modem_write_cmd_fndecl_63794_fields
+read_prph_iwl_trans_ops_63799_fields read_prph iwl_trans_ops 0 63799 NULL
@@ -204277,15 +208942,17 @@ index 0000000..6b5367db
+named_prepare_buf_fndecl_63822_fields named_prepare_buf fndecl 3 63822 &ncp_add_mem_fndecl_63822_fields
+len_extent_map_63823_fields len extent_map 0 63823 NULL
+jffs2_do_link_fndecl_63827_fields jffs2_do_link fndecl 6 63827 NULL
-+compat_sys_sendfile_fndecl_63828_fields compat_sys_sendfile fndecl 4 63828 NULL
++compat_sys_sendfile_fndecl_63828_fields compat_sys_sendfile fndecl 4 63828 NULL nohasharray
++setattr_prepare_fndecl_63828_fields setattr_prepare fndecl 0 63828 &compat_sys_sendfile_fndecl_63828_fields
+alt_mem_k_boot_params_63829_fields alt_mem_k boot_params 0 63829 NULL
+rpipe_aim_fndecl_63832_fields rpipe_aim fndecl 0 63832 NULL
+p_end_nilfs_period_63833_fields p_end nilfs_period 0 63833 NULL
++flags_flat_binder_object_63836_fields flags flat_binder_object 0 63836 NULL
+rx_ring_order_vardecl_main_c_63838_fields rx_ring_order vardecl_main.c 0 63838 NULL
+media_entity_pads_init_fndecl_63846_fields media_entity_pads_init fndecl 2 63846 NULL
+yskip_mt9t031_63853_fields yskip mt9t031 0 63853 NULL
-+rx_data_size_sky2_port_63855_fields rx_data_size sky2_port 0 63855 NULL nohasharray
-+submit_inquiry_fndecl_63855_fields submit_inquiry fndecl 3 63855 &rx_data_size_sky2_port_63855_fields
++rx_data_size_sky2_port_63855_fields rx_data_size sky2_port 0 63855 NULL
++addrlen_at25_data_63857_fields addrlen at25_data 0 63857 NULL
+out_phase_peeked_usb_stream_kernel_63871_fields out_phase_peeked usb_stream_kernel 0 63871 NULL
+ssid_len_ieee80211_if_ibss_63872_fields ssid_len ieee80211_if_ibss 0 63872 NULL nohasharray
+Read_hfc16_stable_fndecl_63872_fields Read_hfc16_stable fndecl 0 63872 &ssid_len_ieee80211_if_ibss_63872_fields
@@ -204298,30 +208965,32 @@ index 0000000..6b5367db
+mmc_align_data_size_fndecl_63906_fields mmc_align_data_size fndecl 0-2 63906 NULL nohasharray
+fraglen_encryptor_desc_63906_fields fraglen encryptor_desc 0 63906 &mmc_align_data_size_fndecl_63906_fields
+fw_stats_len_wl1271_stats_63915_fields fw_stats_len wl1271_stats 0 63915 NULL
-+iwl_mvm_send_cmd_fndecl_63918_fields iwl_mvm_send_cmd fndecl 0 63918 NULL
-+align_nft_set_ext_type_63919_fields align nft_set_ext_type 0 63919 NULL nohasharray
-+new_data_offset_md_rdev_63919_fields new_data_offset md_rdev 0 63919 &align_nft_set_ext_type_63919_fields
++size_efi_memory_map_data_63917_fields size efi_memory_map_data 0 63917 NULL
++new_data_offset_md_rdev_63919_fields new_data_offset md_rdev 0 63919 NULL nohasharray
++align_nft_set_ext_type_63919_fields align nft_set_ext_type 0 63919 &new_data_offset_md_rdev_63919_fields
++max_tbs_iwl_trans_pcie_63920_fields max_tbs iwl_trans_pcie 0 63920 NULL
+nilfs_ifile_read_fndecl_63921_fields nilfs_ifile_read fndecl 3 63921 NULL
+start_btrfs_ioctl_defrag_range_args_63924_fields start btrfs_ioctl_defrag_range_args 0 63924 NULL
+efx_change_mtu_fndecl_63926_fields efx_change_mtu fndecl 2 63926 NULL
+dentry_needs_remove_privs_fndecl_63934_fields dentry_needs_remove_privs fndecl 0 63934 NULL
-+ro_maxpages_rpcrdma_memreg_ops_63937_fields ro_maxpages rpcrdma_memreg_ops 0 63937 NULL nohasharray
-+filemark_cnt_osst_tape_63937_fields filemark_cnt osst_tape 0 63937 &ro_maxpages_rpcrdma_memreg_ops_63937_fields
++ro_maxpages_rpcrdma_memreg_ops_63937_fields ro_maxpages rpcrdma_memreg_ops 0 63937 NULL
+Xfacs_acpi_table_fadt_63943_fields Xfacs acpi_table_fadt 0 63943 NULL
+replen_compound_hdr_63944_fields replen compound_hdr 0 63944 NULL
+map_szl_cyttsp4_sysinfo_data_63948_fields map_szl cyttsp4_sysinfo_data 0 63948 NULL
+pcfg_ofs_cyttsp4_sysinfo_ofs_63956_fields pcfg_ofs cyttsp4_sysinfo_ofs 0 63956 NULL
+psb_gtt_alloc_range_fndecl_63966_fields psb_gtt_alloc_range fndecl 2-5 63966 NULL
++tx_ring_size_ena_adapter_63969_fields tx_ring_size ena_adapter 0 63969 NULL
+bt_ep_bcm5974_config_63978_fields bt_ep bcm5974_config 0 63978 NULL
+max_lba_sm_ftl_63992_fields max_lba sm_ftl 0 63992 NULL
+ihandlen_compat_xfs_fsop_handlereq_63994_fields ihandlen compat_xfs_fsop_handlereq 0 63994 NULL
++xfs_reflink_remap_extent_fndecl_63996_fields xfs_reflink_remap_extent fndecl 3-4 63996 NULL
+iomap_end_iomap_ops_63997_fields iomap_end iomap_ops 0 63997 NULL
+vram_start_amdgpu_mc_63998_fields vram_start amdgpu_mc 0 63998 NULL
+iscsi_conn_send_pdu_fndecl_64002_fields iscsi_conn_send_pdu fndecl 4 64002 NULL
+pvr2_send_request_ex_fndecl_64004_fields pvr2_send_request_ex fndecl 5-7 64004 NULL
-+ndescs_clk_corediv_soc_desc_64005_fields ndescs clk_corediv_soc_desc 0 64005 NULL
++max_wr_qedr_qp_hwq_info_64005_fields max_wr qedr_qp_hwq_info 0 64005 NULL nohasharray
++ndescs_clk_corediv_soc_desc_64005_fields ndescs clk_corediv_soc_desc 0 64005 &max_wr_qedr_qp_hwq_info_64005_fields
+field_count_audit_krule_64007_fields field_count audit_krule 0 64007 NULL
-+pinctrl_register_map_fndecl_64010_fields pinctrl_register_map fndecl 2 64010 NULL
+rx_ring_size_fe_priv_64012_fields rx_ring_size fe_priv 0 64012 NULL
+wBlocks_usb_rpipe_descriptor_64014_fields wBlocks usb_rpipe_descriptor 0 64014 NULL
+space_snd_ctl_elem_list_64016_fields space snd_ctl_elem_list 0 64016 NULL
@@ -204332,24 +209001,23 @@ index 0000000..6b5367db
+ieee80211_request_ibss_scan_fndecl_64043_fields ieee80211_request_ibss_scan fndecl 3 64043 NULL
+xdr_partial_copy_from_skb_fndecl_64046_fields xdr_partial_copy_from_skb fndecl 0 64046 NULL
+devs_increment_btrfs_raid_attr_64050_fields devs_increment btrfs_raid_attr 0 64050 NULL
-+koneplus_sysfs_read_fndecl_64059_fields koneplus_sysfs_read fndecl 6 64059 NULL
+claim_region_fndecl_64076_fields claim_region fndecl 3-2 64076 NULL
+dma_size_cx88_audio_dev_64082_fields dma_size cx88_audio_dev 0 64082 NULL
-+xfs_iomap_eof_prealloc_initial_size_fndecl_64085_fields xfs_iomap_eof_prealloc_initial_size fndecl 3 64085 NULL nohasharray
-+max_request_cros_ec_device_64085_fields max_request cros_ec_device 0 64085 &xfs_iomap_eof_prealloc_initial_size_fndecl_64085_fields
+s_end_bfs_super_block_64092_fields s_end bfs_super_block 0 64092 NULL
+act_len_htc_packet_64101_fields act_len htc_packet 0 64101 NULL
++vid_mv88e6xxx_vtu_entry_64103_fields vid mv88e6xxx_vtu_entry 0 64103 NULL
+b53_spi_read_fndecl_64106_fields b53_spi_read fndecl 5 64106 NULL
+j_first_unflushed_offset_reiserfs_journal_header_64107_fields j_first_unflushed_offset reiserfs_journal_header 0 64107 NULL
+ncells_nvmem_config_64108_fields ncells nvmem_config 0 64108 NULL
+lmac_count_bgx_64109_fields lmac_count bgx 0 64109 NULL
+fc_copy_buffer_to_sglist_fndecl_64115_fields fc_copy_buffer_to_sglist fndecl 0-2 64115 NULL
-+amdgpu_bo_set_metadata_fndecl_64120_fields amdgpu_bo_set_metadata fndecl 3 64120 NULL
++baud_base_old_serial_port_64117_fields baud_base old_serial_port 0 64117 NULL
+gigaset_fill_inbuf_fndecl_64130_fields gigaset_fill_inbuf fndecl 3 64130 NULL
+gru_alloc_locked_gts_fndecl_64132_fields gru_alloc_locked_gts fndecl 1 64132 NULL
+alx_change_mtu_fndecl_64137_fields alx_change_mtu fndecl 2 64137 NULL
+xenvif_count_requests_fndecl_64138_fields xenvif_count_requests fndecl 0 64138 NULL nohasharray
+ieee80211_tdls_mgmt_teardown_fndecl_64138_fields ieee80211_tdls_mgmt_teardown fndecl 10 64138 &xenvif_count_requests_fndecl_64138_fields
++oper_speed_hci_uart_64139_fields oper_speed hci_uart 0 64139 NULL
+pskb_expand_head_fndecl_64146_fields pskb_expand_head fndecl 2 64146 NULL
+free_bootmem_fndecl_64150_fields free_bootmem fndecl 2-1 64150 NULL
+llimit_ulp_iscsi_info_64159_fields llimit ulp_iscsi_info 0 64159 NULL
@@ -204367,10 +209035,11 @@ index 0000000..6b5367db
+bulk_out_endpointAddr_usb_ftdi_64197_fields bulk_out_endpointAddr usb_ftdi 0 64197 NULL
+pcibios_scan_specific_bus_fndecl_64203_fields pcibios_scan_specific_bus fndecl 1 64203 NULL
+ath6kl_wmi_pmparams_cmd_fndecl_64204_fields ath6kl_wmi_pmparams_cmd fndecl 2 64204 NULL
++st_set_options_fndecl_64214_fields st_set_options fndecl 2 64214 NULL
+mlx5e_change_mtu_fndecl_64217_fields mlx5e_change_mtu fndecl 2 64217 NULL
+outbuf_dma_usbhid_device_64218_fields outbuf_dma usbhid_device 0 64218 NULL
+start_pfn_xen_memory_region_64226_fields start_pfn xen_memory_region 0 64226 NULL
-+f2fs_move_file_range_fndecl_64227_fields f2fs_move_file_range fndecl 4 64227 NULL
++f2fs_move_file_range_fndecl_64227_fields f2fs_move_file_range fndecl 2-5 64227 NULL
+balance_dirty_pages_fndecl_64228_fields balance_dirty_pages fndecl 3 64228 NULL
+ecdh_supported_curve_fndecl_64237_fields ecdh_supported_curve fndecl 0 64237 NULL
+format_chain_fndecl_64242_fields format_chain fndecl 2 64242 NULL
@@ -204382,13 +209051,11 @@ index 0000000..6b5367db
+dio_bio_complete_fndecl_64271_fields dio_bio_complete fndecl 0 64271 &getxattr_cb_ceph_vxattr_64271_fields
+dm_tm_read_lock_fndecl_64272_fields dm_tm_read_lock fndecl 2 64272 NULL
+t_prot_nents_se_cmd_64282_fields t_prot_nents se_cmd 0 64282 NULL
-+dev_number_vardecl_rio_cm_c_64286_fields dev_number vardecl_rio_cm.c 0 64286 NULL
-+_dump_buf_data_order_vardecl_64288_fields _dump_buf_data_order vardecl 0 64288 NULL
+dev_minor_cuse_init_out_64292_fields dev_minor cuse_init_out 0 64292 NULL
++request_firmware_fndecl_64298_fields request_firmware fndecl 0 64298 NULL
+num_bds_table_bd_list_64306_fields num_bds_table bd_list 0 64306 NULL
+vfp_ast_vbios_enhtable_64307_fields vfp ast_vbios_enhtable 0 64307 NULL nohasharray
+sq_size_vardecl_64307_fields sq_size vardecl 0 64307 &vfp_ast_vbios_enhtable_64307_fields
-+sys_vmsplice_fndecl_64310_fields sys_vmsplice fndecl 3 64310 NULL
+cw_putcs_fndecl_64311_fields cw_putcs fndecl 4-5-6 64311 NULL
+__wa_xfer_setup_fndecl_64316_fields __wa_xfer_setup fndecl 0 64316 NULL
+alloc_descs_fndecl_64324_fields alloc_descs fndecl 0-1 64324 NULL
@@ -204397,26 +209064,26 @@ index 0000000..6b5367db
+vif_data_size_ieee80211_hw_64342_fields vif_data_size ieee80211_hw 0 64342 NULL
+apply_vma_lock_flags_fndecl_64346_fields apply_vma_lock_flags fndecl 2-1 64346 NULL
+part_start_hfsplus_sb_info_64347_fields part_start hfsplus_sb_info 0 64347 NULL
++i_cnextents_xfs_inode_64349_fields i_cnextents xfs_inode 0 64349 NULL
+bytesperline_au0828_dev_64350_fields bytesperline au0828_dev 0 64350 NULL
+opcount_compat_xfs_fsop_attrmulti_handlereq_64355_fields opcount compat_xfs_fsop_attrmulti_handlereq 0 64355 NULL
+logfs_truncate_fndecl_64356_fields logfs_truncate fndecl 2 64356 NULL
+isofs_get_blocks_fndecl_64368_fields isofs_get_blocks fndecl 2 64368 NULL nohasharray
+hpi_instream_host_buffer_allocate_fndecl_64368_fields hpi_instream_host_buffer_allocate fndecl 2 64368 &isofs_get_blocks_fndecl_64368_fields
+map_state_fndecl_64377_fields map_state fndecl 1 64377 NULL
++xfs_refc_block_fndecl_64378_fields xfs_refc_block fndecl 0 64378 NULL
+hdr_len_ib_mac_iocb_rsp_64379_fields hdr_len ib_mac_iocb_rsp 0 64379 NULL
+num_rxd_qlcnic_adapter_64380_fields num_rxd qlcnic_adapter 0 64380 NULL
+endio_readpage_release_extent_fndecl_64387_fields endio_readpage_release_extent fndecl 3-2 64387 NULL
++tvlv_len_batadv_ogm_packet_64392_fields tvlv_len batadv_ogm_packet 0 64392 NULL
+mem_kexec_segment_64393_fields mem kexec_segment 0 64393 NULL
+MemoryWindowSize_DAC960_privdata_64399_fields MemoryWindowSize DAC960_privdata 0 64399 NULL
-+oobretlen_mtd_oob_ops_64400_fields oobretlen mtd_oob_ops 0 64400 NULL
+init_data_si_sm_handlers_64406_fields init_data si_sm_handlers 0 64406 NULL
-+__get_user_pages_unlocked_fndecl_64409_fields __get_user_pages_unlocked fndecl 3 64409 NULL
+cdc_ncm_max_dgram_size_fndecl_64415_fields cdc_ncm_max_dgram_size fndecl 0 64415 NULL
+l2tp_xmit_skb_fndecl_64419_fields l2tp_xmit_skb fndecl 3 64419 NULL
+ssid_len_cfg80211_ap_settings_64422_fields ssid_len cfg80211_ap_settings 0 64422 NULL
+nfs4_new_slot_fndecl_64436_fields nfs4_new_slot fndecl 2 64436 NULL
+index_v4l2_frmivalenum_64442_fields index v4l2_frmivalenum 0 64442 NULL
-+sierra_net_send_cmd_fndecl_64455_fields sierra_net_send_cmd fndecl 3 64455 NULL
+bLength_uvc_control_endpoint_descriptor_64456_fields bLength uvc_control_endpoint_descriptor 0 64456 NULL
+jpg_size_s2255_vc_64457_fields jpg_size s2255_vc 0 64457 NULL
+num_ch_st_sensor_settings_64459_fields num_ch st_sensor_settings 0 64459 NULL
@@ -204427,10 +209094,10 @@ index 0000000..6b5367db
+burst_mode_ratio_intel_dsi_64472_fields burst_mode_ratio intel_dsi 0 64472 NULL
+vb2_read_fndecl_64476_fields vb2_read fndecl 3 64476 NULL nohasharray
+new_blkaddr_f2fs_io_info_64476_fields new_blkaddr f2fs_io_info 0 64476 &vb2_read_fndecl_64476_fields
-+pid_vnr_fndecl_64480_fields pid_vnr fndecl 0 64480 NULL nohasharray
-+nr_dirtied_pause_task_struct_64480_fields nr_dirtied_pause task_struct 0 64480 &pid_vnr_fndecl_64480_fields
++nr_dirtied_pause_task_struct_64480_fields nr_dirtied_pause task_struct 0 64480 NULL nohasharray
++pid_vnr_fndecl_64480_fields pid_vnr fndecl 0 64480 &nr_dirtied_pause_task_struct_64480_fields
++clk_hw_round_rate_fndecl_64482_fields clk_hw_round_rate fndecl 2 64482 NULL
+transport_header_sk_buff_64483_fields transport_header sk_buff 0 64483 NULL
-+SendReceive2_fndecl_64485_fields SendReceive2 fndecl 4 64485 NULL
+vhost_hlen_vhost_net_virtqueue_64488_fields vhost_hlen vhost_net_virtqueue 0 64488 NULL
+val_reginit_item_64493_fields val reginit_item 0 64493 NULL
+__FIXADDR_TOP_vardecl_64494_fields __FIXADDR_TOP vardecl 0 64494 NULL nohasharray
@@ -204439,7 +209106,7 @@ index 0000000..6b5367db
+read_status_fndecl_64497_fields read_status fndecl 0 64497 NULL
+ext_ramdisk_size_boot_params_64498_fields ext_ramdisk_size boot_params 0 64498 NULL
+num_def_tx_descs_octeon_config_64501_fields num_def_tx_descs octeon_config 0 64501 NULL
-+dvb_demux_ioctl_fndecl_64510_fields dvb_demux_ioctl fndecl 2 64510 NULL
++fw_get_filesystem_firmware_fndecl_64510_fields fw_get_filesystem_firmware fndecl 0 64510 NULL
+fc_plogi_get_maxframe_fndecl_64511_fields fc_plogi_get_maxframe fndecl 0-2 64511 NULL
+at24_eeprom_read_serial_fndecl_64518_fields at24_eeprom_read_serial fndecl 4 64518 NULL
+insize_cros_ec_command_64521_fields insize cros_ec_command 0 64521 NULL
@@ -204457,28 +209124,31 @@ index 0000000..6b5367db
+offset_seg_buf_64571_fields offset seg_buf 0 64571 NULL
+__fprog_create_fndecl_64572_fields __fprog_create fndecl 2 64572 NULL
+erst_read_fndecl_64575_fields erst_read fndecl 1 64575 NULL nohasharray
-+mirrors_p1_ore_layout_64575_fields mirrors_p1 ore_layout 0 64575 &erst_read_fndecl_64575_fields nohasharray
-+cdc_ncm_align_tail_fndecl_64575_fields cdc_ncm_align_tail fndecl 4-3-2 64575 &mirrors_p1_ore_layout_64575_fields
++cdc_ncm_align_tail_fndecl_64575_fields cdc_ncm_align_tail fndecl 4-3-2 64575 &erst_read_fndecl_64575_fields nohasharray
++mirrors_p1_ore_layout_64575_fields mirrors_p1 ore_layout 0 64575 &cdc_ncm_align_tail_fndecl_64575_fields
+msb_set_overwrite_flag_fndecl_64576_fields msb_set_overwrite_flag fndecl 2 64576 NULL
+long_len_fat_ioctl_filldir_callback_64585_fields long_len fat_ioctl_filldir_callback 0 64585 NULL nohasharray
+len_fuse_copy_state_64585_fields len fuse_copy_state 0 64585 &long_len_fat_ioctl_filldir_callback_64585_fields
+blocks_per_seg_f2fs_sb_info_64587_fields blocks_per_seg f2fs_sb_info 0 64587 NULL
-+t4_init_l2t_fndecl_64588_fields t4_init_l2t fndecl 1-2 64588 NULL
++cp_count_nfsd4_copy_64588_fields cp_count nfsd4_copy 0 64588 NULL nohasharray
++t4_init_l2t_fndecl_64588_fields t4_init_l2t fndecl 1-2 64588 &cp_count_nfsd4_copy_64588_fields
+udl_gem_create_fndecl_64590_fields udl_gem_create fndecl 3 64590 NULL
+isp1362_urb_dequeue_fndecl_64595_fields isp1362_urb_dequeue fndecl 3 64595 NULL
+s_gdb_count_ext4_sb_info_64617_fields s_gdb_count ext4_sb_info 0 64617 NULL
++vid_batadv_tvlv_roam_adv_64622_fields vid batadv_tvlv_roam_adv 0 64622 NULL
+xfs_iext_remove_indirect_fndecl_64624_fields xfs_iext_remove_indirect fndecl 3 64624 NULL
-+objio_alloc_io_state_fndecl_64631_fields objio_alloc_io_state fndecl 7-6 64631 NULL
+bsg_job_done_fndecl_64640_fields bsg_job_done fndecl 3 64640 NULL
+tpacket_fill_skb_fndecl_64651_fields tpacket_fill_skb fndecl 10-6-9 64651 NULL
+netlink_alloc_large_skb_fndecl_64652_fields netlink_alloc_large_skb fndecl 1 64652 NULL
+cnic_init_id_tbl_fndecl_64665_fields cnic_init_id_tbl fndecl 3 64665 NULL
++usnic_ib_reg_mr_fndecl_64668_fields usnic_ib_reg_mr fndecl 2-3 64668 NULL
+maximum_num_containers_aac_dev_64672_fields maximum_num_containers aac_dev 0 64672 NULL
++ena_calc_io_queue_num_fndecl_64678_fields ena_calc_io_queue_num fndecl 0 64678 NULL
+mapbase_uart_port_64681_fields mapbase uart_port 0 64681 NULL
+xfs_trans_mod_sb_fndecl_64682_fields xfs_trans_mod_sb fndecl 3 64682 NULL
+num_fields_ima_template_desc_64688_fields num_fields ima_template_desc 0 64688 NULL
-+i40iw_send_mpa_reject_fndecl_64702_fields i40iw_send_mpa_reject fndecl 3 64702 NULL nohasharray
-+max_ars_nfit_spa_64702_fields max_ars nfit_spa 0 64702 &i40iw_send_mpa_reject_fndecl_64702_fields
++srp_sg_tablesize_vardecl_ib_srp_c_64692_fields srp_sg_tablesize vardecl_ib_srp.c 0 64692 NULL
++i40iw_send_mpa_reject_fndecl_64702_fields i40iw_send_mpa_reject fndecl 3 64702 NULL
+size_cramfs_inode_64704_fields size cramfs_inode 0 64704 NULL
+isdn_ppp_fill_rq_fndecl_64711_fields isdn_ppp_fill_rq fndecl 2 64711 NULL
+base_cmdline_vardecl_dma_contiguous_c_64713_fields base_cmdline vardecl_dma-contiguous.c 0 64713 NULL nohasharray
@@ -204487,8 +209157,7 @@ index 0000000..6b5367db
+width_drm_framebuffer_64716_fields width drm_framebuffer 0 64716 NULL
+spc_modesense_long_blockdesc_fndecl_64717_fields spc_modesense_long_blockdesc fndecl 0 64717 NULL
+pool_index_max_cxgbi_ppm_64718_fields pool_index_max cxgbi_ppm 0 64718 NULL nohasharray
-+vs_bsize_vxfs_sb_64718_fields vs_bsize vxfs_sb 0 64718 &pool_index_max_cxgbi_ppm_64718_fields nohasharray
-+goldfish_tty_current_line_count_vardecl_goldfish_c_64718_fields goldfish_tty_current_line_count vardecl_goldfish.c 0 64718 &vs_bsize_vxfs_sb_64718_fields
++vs_bsize_vxfs_sb_64718_fields vs_bsize vxfs_sb 0 64718 &pool_index_max_cxgbi_ppm_64718_fields
+mt7601u_dma_fw_fndecl_64719_fields mt7601u_dma_fw fndecl 4 64719 NULL
+size_host_cmd_ds_command_64722_fields size host_cmd_ds_command 0 64722 NULL
+max_touch_num_goodix_ts_data_64725_fields max_touch_num goodix_ts_data 0 64725 NULL
@@ -204501,16 +209170,16 @@ index 0000000..6b5367db
+ocfs2_fill_initial_dirents_fndecl_64755_fields ocfs2_fill_initial_dirents fndecl 4 64755 NULL
+datasz_memelfnote_64760_fields datasz memelfnote 0 64760 NULL
+raid_disk_mdp_device_descriptor_s_64762_fields raid_disk mdp_device_descriptor_s 0 64762 NULL
-+vid_begin_switchdev_obj_port_vlan_64767_fields vid_begin switchdev_obj_port_vlan 0 64767 NULL
-+full_len_kcm_rx_msg_64771_fields full_len kcm_rx_msg 0 64771 NULL
-+jfs_get_block_fndecl_64772_fields jfs_get_block fndecl 2 64772 NULL
++vid_begin_switchdev_obj_port_vlan_64767_fields vid_begin switchdev_obj_port_vlan 0 64767 NULL nohasharray
++hci_uart_set_baudrate_fndecl_64767_fields hci_uart_set_baudrate fndecl 2 64767 &vid_begin_switchdev_obj_port_vlan_64767_fields
++jfs_get_block_fndecl_64772_fields jfs_get_block fndecl 2 64772 NULL nohasharray
++max_rqe_qedr_device_attr_64772_fields max_rqe qedr_device_attr 0 64772 &jfs_get_block_fndecl_64772_fields
+ib_qib_max_srq_sges_vardecl_64786_fields ib_qib_max_srq_sges vardecl 0 64786 NULL nohasharray
+keep_resources_fndecl_64786_fields keep_resources fndecl 6-5 64786 &ib_qib_max_srq_sges_vardecl_64786_fields
+tun_hlen_ip_tunnel_64791_fields tun_hlen ip_tunnel 0 64791 NULL
-+_update_journal_header_block_fndecl_64803_fields _update_journal_header_block fndecl 2 64803 NULL nohasharray
-+fr_max_payload_fcoe_rcv_info_64803_fields fr_max_payload fcoe_rcv_info 0 64803 &_update_journal_header_block_fndecl_64803_fields
++fr_max_payload_fcoe_rcv_info_64803_fields fr_max_payload fcoe_rcv_info 0 64803 NULL nohasharray
++_update_journal_header_block_fndecl_64803_fields _update_journal_header_block fndecl 2 64803 &fr_max_payload_fcoe_rcv_info_64803_fields
+tx_headroom_nci_dev_64805_fields tx_headroom nci_dev 0 64805 NULL
-+alloc_align_snd_array_64806_fields alloc_align snd_array 0 64806 NULL
+f2fs_set_context_fndecl_64813_fields f2fs_set_context fndecl 3 64813 NULL
+reg_list_size_amdgpu_rlc_64826_fields reg_list_size amdgpu_rlc 0 64826 NULL
+ocfs2_xattr_index_block_find_fndecl_64835_fields ocfs2_xattr_index_block_find fndecl 0 64835 NULL
@@ -204518,7 +209187,6 @@ index 0000000..6b5367db
+smsc75xx_change_mtu_fndecl_64845_fields smsc75xx_change_mtu fndecl 2 64845 &ngpio_gpio_chip_64845_fields
+_send_fndecl_64846_fields _send fndecl 3 64846 NULL nohasharray
+ath6kl_wmi_sta_bmiss_enhance_cmd_fndecl_64846_fields ath6kl_wmi_sta_bmiss_enhance_cmd fndecl 2 64846 &_send_fndecl_64846_fields
-+_req_append_segment_fndecl_64852_fields _req_append_segment fndecl 2 64852 NULL
+log_max_len_client_hdr_64853_fields log_max_len client_hdr 0 64853 NULL nohasharray
+E_info_CARD_PROPERTIES_64853_fields E_info CARD_PROPERTIES 0 64853 &log_max_len_client_hdr_64853_fields
+bud_wbuf_callback_fndecl_64863_fields bud_wbuf_callback fndecl 3 64863 NULL
@@ -204531,36 +209199,41 @@ index 0000000..6b5367db
+tx_max_frame_ntb_transport_qp_64878_fields tx_max_frame ntb_transport_qp 0 64878 NULL
+snd_pcm_hw_param_max_fndecl_64887_fields snd_pcm_hw_param_max fndecl 4 64887 NULL nohasharray
+qs_in_channels_hdspm_64887_fields qs_in_channels hdspm 0 64887 &snd_pcm_hw_param_max_fndecl_64887_fields
-+count_ioctl_gntalloc_alloc_gref_64889_fields count ioctl_gntalloc_alloc_gref 0 64889 NULL nohasharray
-+ks8995_write_fndecl_64889_fields ks8995_write fndecl 4 64889 &count_ioctl_gntalloc_alloc_gref_64889_fields
++ks8995_write_fndecl_64889_fields ks8995_write fndecl 4 64889 NULL nohasharray
++count_ioctl_gntalloc_alloc_gref_64889_fields count ioctl_gntalloc_alloc_gref 0 64889 &ks8995_write_fndecl_64889_fields
++reserve_sfa_size_fndecl_64893_fields reserve_sfa_size fndecl 2 64893 NULL
+xfs_defer_trans_roll_fndecl_64897_fields xfs_defer_trans_roll fndecl 0 64897 NULL
+mpeglinesize_vardecl_cx23885_417_c_64898_fields mpeglinesize vardecl_cx23885-417.c 0 64898 NULL
+__ieee80211_amsdu_copy_fndecl_64900_fields __ieee80211_amsdu_copy fndecl 4-2-3 64900 NULL
+unuse_pte_range_fndecl_64903_fields unuse_pte_range fndecl 3 64903 NULL
++maxctl_brcmf_bus_64907_fields maxctl brcmf_bus 0 64907 NULL
+data_size_event_reader_64909_fields data_size event_reader 0 64909 NULL
+nmsgs_i2c_rdwr_ioctl_data_64911_fields nmsgs i2c_rdwr_ioctl_data 0 64911 NULL
+next_block_for_io_dio_submit_64914_fields next_block_for_io dio_submit 0 64914 NULL
+rd_size_uhid_create_req_64916_fields rd_size uhid_create_req 0 64916 NULL
+dma_attach_fndecl_64917_fields dma_attach fndecl 10-8-7 64917 NULL
+piothreshold_vardecl_64919_fields piothreshold vardecl 0 64919 NULL
-+nl80211_send_mlme_event_fndecl_64920_fields nl80211_send_mlme_event fndecl 4 64920 NULL
++nl80211_send_mlme_event_fndecl_64920_fields nl80211_send_mlme_event fndecl 4 64920 NULL nohasharray
++v4l2_clk_set_rate_fndecl_64920_fields v4l2_clk_set_rate fndecl 2 64920 &nl80211_send_mlme_event_fndecl_64920_fields
+verity_for_bv_block_fndecl_64936_fields verity_for_bv_block fndecl 0 64936 NULL
+ath10k_wmi_tlv_op_gen_bcn_tmpl_fndecl_64938_fields ath10k_wmi_tlv_op_gen_bcn_tmpl fndecl 8 64938 NULL nohasharray
+sq_max_wqes_per_wr_mlx4_ib_qp_64938_fields sq_max_wqes_per_wr mlx4_ib_qp 0 64938 &ath10k_wmi_tlv_op_gen_bcn_tmpl_fndecl_64938_fields
+ieee80211_start_tx_ba_cb_irqsafe_fndecl_64943_fields ieee80211_start_tx_ba_cb_irqsafe fndecl 3 64943 NULL
+pci_iov_virtfn_bus_fndecl_64949_fields pci_iov_virtfn_bus fndecl 0-2 64949 NULL
+ieee80211_tdls_add_ies_fndecl_64954_fields ieee80211_tdls_add_ies fndecl 8 64954 NULL
++qed_ll2_acquire_connection_tx_fndecl_64955_fields qed_ll2_acquire_connection_tx fndecl 3 64955 NULL
+status_spi_message_64956_fields status spi_message 0 64956 NULL
-+count_acpi_processor_power_64969_fields count acpi_processor_power 0 64969 NULL
++op_max_pages_md_op_data_64968_fields op_max_pages md_op_data 0 64968 NULL
+len_ctrl_queue_64975_fields len ctrl_queue 0 64975 NULL
-+hq_size_cnic_local_64987_fields hq_size cnic_local 0 64987 NULL nohasharray
-+rp2_alloc_ports_fndecl_64987_fields rp2_alloc_ports fndecl 0-1 64987 &hq_size_cnic_local_64987_fields
++print_pkt_fndecl_64981_fields print_pkt fndecl 2 64981 NULL
++rp2_alloc_ports_fndecl_64987_fields rp2_alloc_ports fndecl 0-1 64987 NULL nohasharray
++hq_size_cnic_local_64987_fields hq_size cnic_local 0 64987 &rp2_alloc_ports_fndecl_64987_fields
+maxTxCredits_edgeport_port_64991_fields maxTxCredits edgeport_port 0 64991 NULL
+UpdateRegs_fndecl_64995_fields UpdateRegs fndecl 2-3 64995 NULL nohasharray
+vt8231_device_add_fndecl_64995_fields vt8231_device_add fndecl 1 64995 &UpdateRegs_fndecl_64995_fields
-+access_length_acpi_connection_info_65000_fields access_length acpi_connection_info 0 65000 NULL
++access_length_acpi_connection_info_65000_fields access_length acpi_connection_info 0 65000 NULL nohasharray
++shkey_id_sctp_authhdr_65000_fields shkey_id sctp_authhdr 0 65000 &access_length_acpi_connection_info_65000_fields
+mask_cbuf_65001_fields mask cbuf 0 65001 NULL
-+actual_size_saa7164_user_buffer_65010_fields actual_size saa7164_user_buffer 0 65010 NULL
+cmd_len_sg_io_hdr_65018_fields cmd_len sg_io_hdr 0 65018 NULL
+intr_size_usb_pcwd_private_65024_fields intr_size usb_pcwd_private 0 65024 NULL
+au8522_rc_read_fndecl_65026_fields au8522_rc_read fndecl 5 65026 NULL
@@ -204570,8 +209243,8 @@ index 0000000..6b5367db
+brcmf_cfg80211_vndr_cmds_dcmd_handler_fndecl_65059_fields brcmf_cfg80211_vndr_cmds_dcmd_handler fndecl 4 65059 NULL
+iscsi_max_rcv_data_seg_len_dev_db_entry_65060_fields iscsi_max_rcv_data_seg_len dev_db_entry 0 65060 NULL nohasharray
+xen_free_ro_pages_fndecl_65060_fields xen_free_ro_pages fndecl 2-1 65060 &iscsi_max_rcv_data_seg_len_dev_db_entry_65060_fields
-+line_count_acpi_nfit_interleave_65069_fields line_count acpi_nfit_interleave 0 65069 NULL
+ResidualCnt__ErrorInfo_struct_65074_fields ResidualCnt _ErrorInfo_struct 0 65074 NULL
++mmc_test_transfer_fndecl_65076_fields mmc_test_transfer fndecl 6-5-3 65076 NULL
+xfs_growfs_rt_alloc_fndecl_65079_fields xfs_growfs_rt_alloc fndecl 2-3 65079 NULL
+len_scifioctl_reg_65083_fields len scifioctl_reg 0 65083 NULL
+frame_size_pwc_device_65084_fields frame_size pwc_device 0 65084 NULL
@@ -204582,26 +209255,25 @@ index 0000000..6b5367db
+sco_send_frame_fndecl_65092_fields sco_send_frame fndecl 3 65092 NULL
+fat_write_end_fndecl_65095_fields fat_write_end fndecl 5 65095 NULL
+ecryptfs_write_begin_fndecl_65099_fields ecryptfs_write_begin fndecl 3 65099 NULL
-+max_xri_lpfc_max_cfg_param_65100_fields max_xri lpfc_max_cfg_param 0 65100 NULL nohasharray
-+ieee802154_hdr_push_fndecl_65100_fields ieee802154_hdr_push fndecl 0 65100 &max_xri_lpfc_max_cfg_param_65100_fields
++ieee802154_hdr_push_fndecl_65100_fields ieee802154_hdr_push fndecl 0 65100 NULL nohasharray
++max_xri_lpfc_max_cfg_param_65100_fields max_xri lpfc_max_cfg_param 0 65100 &ieee802154_hdr_push_fndecl_65100_fields
+sndsize_sock_xprt_65105_fields sndsize sock_xprt 0 65105 NULL
+x25_recvmsg_fndecl_65106_fields x25_recvmsg fndecl 3 65106 NULL nohasharray
+ocfs2_dx_dir_rebalance_fndecl_65106_fields ocfs2_dx_dir_rebalance fndecl 7 65106 &x25_recvmsg_fndecl_65106_fields
+mmc_test_seq_read_perf_fndecl_65111_fields mmc_test_seq_read_perf fndecl 2 65111 NULL
+fat_alloc_new_dir_fndecl_65115_fields fat_alloc_new_dir fndecl 0 65115 NULL
++amdgpu_bo_list_set_fndecl_65117_fields amdgpu_bo_list_set fndecl 5 65117 NULL
+wpa_ie_len_libipw_device_65120_fields wpa_ie_len libipw_device 0 65120 NULL
+scrub_extent_for_parity_fndecl_65123_fields scrub_extent_for_parity fndecl 3-2-4 65123 NULL
+keyctl_instantiate_key_fndecl_65132_fields keyctl_instantiate_key fndecl 3 65132 NULL
+qib_rcvhdrentsize_vardecl_qib_iba7322_c_65133_fields qib_rcvhdrentsize vardecl_qib_iba7322.c 0 65133 NULL
-+num_pipe_drm_psb_private_65138_fields num_pipe drm_psb_private 0 65138 NULL
+byte_count_iwl_stored_beacon_notif_65145_fields byte_count iwl_stored_beacon_notif 0 65145 NULL
+depth_sh_veu_format_65150_fields depth sh_veu_format 0 65150 NULL
++rx_ring_size_ena_adapter_65153_fields rx_ring_size ena_adapter 0 65153 NULL
+pci_mem_end_qed_dev_info_65160_fields pci_mem_end qed_dev_info 0 65160 NULL
+nexthdrlen_lowpan_nhc_65161_fields nexthdrlen lowpan_nhc 0 65161 NULL
+mwifiex_cmd_append_vsie_tlv_fndecl_65164_fields mwifiex_cmd_append_vsie_tlv fndecl 0 65164 NULL
-+ccp_get_dm_area_fndecl_65170_fields ccp_get_dm_area fndecl 4 65170 NULL
+__ext4_block_zero_page_range_fndecl_65173_fields __ext4_block_zero_page_range fndecl 3 65173 NULL
-+vlans_b53_chip_data_65177_fields vlans b53_chip_data 0 65177 NULL
+crb_read_netxen_adapter_65178_fields crb_read netxen_adapter 0 65178 NULL
+xfs_rtget_summary_fndecl_65179_fields xfs_rtget_summary fndecl 4-3-0 65179 NULL
+usb_gadget_get_string_fndecl_65180_fields usb_gadget_get_string fndecl 0 65180 NULL
@@ -204610,12 +209282,10 @@ index 0000000..6b5367db
+free_blk_ocfs2_cached_block_free_65195_fields free_blk ocfs2_cached_block_free 0 65195 NULL
+xfs_bmap_shift_extents_fndecl_65200_fields xfs_bmap_shift_extents fndecl 4 65200 NULL
+NumIdentPartitions_cfi_intelext_regioninfo_65201_fields NumIdentPartitions cfi_intelext_regioninfo 0 65201 NULL
-+ackr_win_top_rxrpc_call_65205_fields ackr_win_top rxrpc_call 0 65205 NULL
-+fat_shortname2uni_fndecl_65206_fields fat_shortname2uni fndecl 0 65206 NULL nohasharray
-+height_dt3155_priv_65206_fields height dt3155_priv 0 65206 &fat_shortname2uni_fndecl_65206_fields
++height_dt3155_priv_65206_fields height dt3155_priv 0 65206 NULL nohasharray
++fat_shortname2uni_fndecl_65206_fields fat_shortname2uni fndecl 0 65206 &height_dt3155_priv_65206_fields
+aper_size_radeon_mc_65212_fields aper_size radeon_mc 0 65212 NULL
-+rx_agg_ring_mask_bnxt_65213_fields rx_agg_ring_mask bnxt 0 65213 NULL nohasharray
-+get_regs_len_ethtool_ops_65213_fields get_regs_len ethtool_ops 0 65213 &rx_agg_ring_mask_bnxt_65213_fields
++rx_agg_ring_mask_bnxt_65213_fields rx_agg_ring_mask bnxt 0 65213 NULL
+i40evf_change_mtu_fndecl_65220_fields i40evf_change_mtu fndecl 2 65220 NULL
+maxresp_sz_nfsd4_channel_attrs_65221_fields maxresp_sz nfsd4_channel_attrs 0 65221 NULL
+memory_manufacturer_code_ms_boot_attr_info_65224_fields memory_manufacturer_code ms_boot_attr_info 0 65224 NULL
@@ -204625,52 +209295,52 @@ index 0000000..6b5367db
+fb_max_height_vmw_private_65243_fields fb_max_height vmw_private 0 65243 NULL
+ext4_da_write_inline_data_begin_fndecl_65244_fields ext4_da_write_inline_data_begin fndecl 4-3 65244 NULL nohasharray
+word3_alx_rrd_65244_fields word3 alx_rrd 0 65244 &ext4_da_write_inline_data_begin_fndecl_65244_fields
-+range_end_writeback_control_65245_fields range_end writeback_control 0 65245 NULL
+bytes_dump_iterator_65249_fields bytes dump_iterator 0 65249 NULL
++cx24116_writeregN_fndecl_65252_fields cx24116_writeregN fndecl 4 65252 NULL
+ctx_blk_size_cnic_eth_dev_65262_fields ctx_blk_size cnic_eth_dev 0 65262 NULL
+get_dir_index_using_offset_fndecl_65267_fields get_dir_index_using_offset fndecl 0-7 65267 NULL
+ubi_self_check_all_ff_fndecl_65268_fields ubi_self_check_all_ff fndecl 4 65268 NULL
++cmd_ioctl_handler_65275_fields cmd ioctl_handler 0 65275 NULL
+m_ialloc_blks_xfs_mount_65284_fields m_ialloc_blks xfs_mount 0 65284 NULL
+size_t4_rq_65285_fields size t4_rq 0 65285 NULL
+cp_pack_total_block_count_f2fs_checkpoint_65288_fields cp_pack_total_block_count f2fs_checkpoint 0 65288 NULL
-+txfifo_size_lpuart_port_65300_fields txfifo_size lpuart_port 0 65300 NULL nohasharray
-+ntfs_bmap_fndecl_65300_fields ntfs_bmap fndecl 2 65300 &txfifo_size_lpuart_port_65300_fields
++update_stat_data_fndecl_65289_fields update_stat_data fndecl 3 65289 NULL
++ntfs_bmap_fndecl_65300_fields ntfs_bmap fndecl 2 65300 NULL
+memory_lseek_fndecl_65306_fields memory_lseek fndecl 2 65306 NULL
+ext4_dio_get_block_unwritten_sync_fndecl_65307_fields ext4_dio_get_block_unwritten_sync fndecl 2 65307 NULL
+in_param_mlx4_vhcr_65311_fields in_param mlx4_vhcr 0 65311 NULL
+mt312_read_fndecl_65312_fields mt312_read fndecl 4 65312 NULL
++max_pfn_vardecl_65317_fields max_pfn vardecl 0 65317 NULL
+ExtPageLength__MPI2_CONFIG_REPLY_65319_fields ExtPageLength _MPI2_CONFIG_REPLY 0 65319 NULL
+info_arc_emac_bd_65321_fields info arc_emac_bd 0 65321 NULL
-+dm_get_reserved_rq_based_ios_fndecl_65322_fields dm_get_reserved_rq_based_ios fndecl 0 65322 NULL
+align_size_hwbus_ops_65327_fields align_size hwbus_ops 0 65327 NULL
+ath10k_wmi_start_scan_tlvs_len_fndecl_65331_fields ath10k_wmi_start_scan_tlvs_len fndecl 0 65331 NULL
+alloc_in_dirband_fndecl_65332_fields alloc_in_dirband fndecl 2 65332 NULL
+panel_count_vbt_r10_65334_fields panel_count vbt_r10 0 65334 NULL
+ldisc_receive_fndecl_65343_fields ldisc_receive fndecl 4 65343 NULL
+gss_krb5_cts_crypt_fndecl_65346_fields gss_krb5_cts_crypt fndecl 3 65346 NULL
-+snap_count_rbd_image_header_ondisk_65348_fields snap_count rbd_image_header_ondisk 0 65348 NULL nohasharray
-+si476x_radio_fops_read_fndecl_65348_fields si476x_radio_fops_read fndecl 3 65348 &snap_count_rbd_image_header_ondisk_65348_fields
++si476x_radio_fops_read_fndecl_65348_fields si476x_radio_fops_read fndecl 3 65348 NULL nohasharray
++snap_count_rbd_image_header_ondisk_65348_fields snap_count rbd_image_header_ondisk 0 65348 &si476x_radio_fops_read_fndecl_65348_fields
+len_rpc_pipe_msg_65361_fields len rpc_pipe_msg 0 65361 NULL
+fec_decode_rsb_fndecl_65362_fields fec_decode_rsb fndecl 4 65362 NULL
+dma_out_iguanair_65368_fields dma_out iguanair 0 65368 NULL nohasharray
+add_excluded_extent_fndecl_65368_fields add_excluded_extent fndecl 3-2 65368 &dma_out_iguanair_65368_fields
+drbd_send_command_fndecl_65377_fields drbd_send_command fndecl 4-6 65377 NULL
-+nfsd_readv_fndecl_65378_fields nfsd_readv fndecl 4 65378 NULL
-+rpcrdma_tail_pullup_fndecl_65388_fields rpcrdma_tail_pullup fndecl 0 65388 NULL
-+max_rx_aggregation_subframes_ieee80211_hw_65391_fields max_rx_aggregation_subframes ieee80211_hw 0 65391 NULL
+vhost_net_rx_peek_head_len_fndecl_65395_fields vhost_net_rx_peek_head_len fndecl 0 65395 NULL
+rcvegrbufsize_qib_devdata_65397_fields rcvegrbufsize qib_devdata 0 65397 NULL
+digital_in_send_atr_req_fndecl_65398_fields digital_in_send_atr_req fndecl 5 65398 NULL
++num_rx_queues_ixgbe_adapter_65402_fields num_rx_queues ixgbe_adapter 0 65402 NULL
+wl12xx_sdio_raw_write_fndecl_65406_fields wl12xx_sdio_raw_write fndecl 4 65406 NULL
+__napi_alloc_skb_fndecl_65409_fields __napi_alloc_skb fndecl 2 65409 NULL
+macb_init_rx_buffer_size_fndecl_65410_fields macb_init_rx_buffer_size fndecl 2 65410 NULL
+queue_size_iwl_rxq_65412_fields queue_size iwl_rxq 0 65412 NULL
+fat_zeroed_cluster_fndecl_65422_fields fat_zeroed_cluster fndecl 3-2-0 65422 NULL
-+free_bud_entry_65425_fields free bud_entry 0 65425 NULL
++fq_trees_log_fq_sched_data_65425_fields fq_trees_log fq_sched_data 0 65425 NULL nohasharray
++free_bud_entry_65425_fields free bud_entry 0 65425 &fq_trees_log_fq_sched_data_65425_fields
+block_size_card_cfg_data_65426_fields block_size card_cfg_data 0 65426 NULL
+period_bytes_snd_usb_substream_65430_fields period_bytes snd_usb_substream 0 65430 NULL
+uar_page_shift_mlx4_dev_65434_fields uar_page_shift mlx4_dev 0 65434 NULL
-+lbs_bcnmiss_write_fndecl_65438_fields lbs_bcnmiss_write fndecl 3 65438 NULL
++a2mp_send_fndecl_65436_fields a2mp_send fndecl 4 65436 NULL
+xfs_dir3_data_block_free_fndecl_65456_fields xfs_dir3_data_block_free fndecl 4 65456 NULL
+wNtbOutMaxDatagrams_usb_cdc_ncm_ntb_parameters_65459_fields wNtbOutMaxDatagrams usb_cdc_ncm_ntb_parameters 0 65459 NULL
+lfb_base_screen_info_65479_fields lfb_base screen_info 0 65479 NULL
@@ -204681,39 +209351,25 @@ index 0000000..6b5367db
+rw_bytes_nd_namespace_common_65501_fields rw_bytes nd_namespace_common 0 65501 NULL
+xfs_dir2_shrink_inode_fndecl_65502_fields xfs_dir2_shrink_inode fndecl 2 65502 NULL
+bdx_tx_db_init_fndecl_65508_fields bdx_tx_db_init fndecl 2 65508 NULL
-+sys_pwritev_fndecl_65513_fields sys_pwritev fndecl 3 65513 NULL
+_recv_fndecl_65526_fields _recv fndecl 3 65526 NULL
+write_page_nocow_fndecl_65527_fields write_page_nocow fndecl 2 65527 NULL
+size_mei_msg_data_65529_fields size mei_msg_data 0 65529 NULL
diff --git a/scripts/gcc-plugins/size_overflow_plugin/e_fns.data b/scripts/gcc-plugins/size_overflow_plugin/e_fns.data
new file mode 100644
-index 0000000..510c554
+index 0000000..0d6ca5e
--- /dev/null
+++ b/scripts/gcc-plugins/size_overflow_plugin/e_fns.data
-@@ -0,0 +1,5528 @@
+@@ -0,0 +1,5031 @@
+logi_dj_recv_query_paired_devices_fndecl_13_fns logi_dj_recv_query_paired_devices fndecl 0 13 NULL
+response_length_ib_uverbs_ex_destroy_wq_resp_15_fns response_length ib_uverbs_ex_destroy_wq_resp 0 15 NULL
+kfd_wait_on_events_fndecl_19_fns kfd_wait_on_events fndecl 2 19 NULL
-+snic_reset_stats_write_fndecl_30_fns snic_reset_stats_write fndecl 3 30 NULL
-+iwl_dbgfs_nvm_read_fndecl_54_fns iwl_dbgfs_nvm_read fndecl 3 54 NULL
++ath10k_core_create_fndecl_34_fns ath10k_core_create fndecl 1 34 NULL
++p54_init_common_fndecl_57_fns p54_init_common fndecl 1 57 NULL
+bin_to_hex_dup_fndecl_62_fns bin_to_hex_dup fndecl 2 62 NULL
-+npages_mlx5_pages_req_70_fns npages mlx5_pages_req 0 70 NULL
-+iov_iter_get_pages_alloc_fndecl_76_fns iov_iter_get_pages_alloc fndecl 3 76 NULL
-+ieee80211_if_read_dot11MeshMaxPeerLinks_fndecl_85_fns ieee80211_if_read_dot11MeshMaxPeerLinks fndecl 3 85 NULL
+kvm_read_guest_fndecl_107_fns kvm_read_guest fndecl 2-4 107 NULL
-+ieee80211_if_read_hw_queues_fndecl_116_fns ieee80211_if_read_hw_queues fndecl 3 116 NULL
-+rereg_umr_fndecl_155_fns rereg_umr fndecl 5 155 NULL
+acl_len_nfs_getaclres_171_fns acl_len nfs_getaclres 0 171 NULL
+ufx_read_edid_fndecl_184_fns ufx_read_edid fndecl 0 184 NULL
-+sddr55_write_data_fndecl_188_fns sddr55_write_data fndecl 4 188 NULL
-+mptctl_do_fw_download_fndecl_190_fns mptctl_do_fw_download fndecl 3 190 NULL
-+brcmf_iovar_data_set_fndecl_192_fns brcmf_iovar_data_set fndecl 4 192 NULL
-+give_pages_fndecl_198_fns give_pages fndecl 3 198 NULL
-+cxgb_alloc_mem_fndecl_212_fns cxgb_alloc_mem fndecl 1 212 NULL
+afs_cell_alloc_fndecl_231_fns afs_cell_alloc fndecl 2 231 NULL
-+iwl_dbgfs_low_latency_read_fndecl_237_fns iwl_dbgfs_low_latency_read fndecl 3 237 NULL
-+adis16400_show_serial_number_fndecl_246_fns adis16400_show_serial_number fndecl 3 246 NULL
-+venus_symlink_fndecl_257_fns venus_symlink fndecl 6-4 257 NULL
+lf_entries_gfs2_leaf_263_fns lf_entries gfs2_leaf 0 263 NULL
+read_snd_midi_event_282_fns read snd_midi_event 0 282 NULL
+islpci_mgt_transaction_fndecl_297_fns islpci_mgt_transaction fndecl 5 297 NULL
@@ -204726,14 +209382,11 @@ index 0000000..510c554
+mlxsw_cmd_mbox_query_aq_cap_max_num_eqs_get_fndecl_402_fns mlxsw_cmd_mbox_query_aq_cap_max_num_eqs_get fndecl 0 402 NULL
+apparmor_setprocattr_fndecl_421_fns apparmor_setprocattr fndecl 4 421 NULL
+hfs_file_fsync_fndecl_434_fns hfs_file_fsync fndecl 2-3 434 NULL
-+k3_dma_prep_memcpy_fndecl_451_fns k3_dma_prep_memcpy fndecl 4 451 NULL
-+__kfifo_max_r_fndecl_459_fns __kfifo_max_r fndecl 1-2-0 459 NULL
-+ssp_debug_mode_read_fndecl_463_fns ssp_debug_mode_read fndecl 3 463 NULL
++cem_build_path_fndecl_451_fns cem_build_path fndecl 0 451 NULL
+rx_rx_dropped_frame_read_fndecl_471_fns rx_rx_dropped_frame_read fndecl 3 471 NULL
-+print_page_owner_fndecl_474_fns print_page_owner fndecl 2 474 NULL
++map_write_fndecl_480_fns map_write fndecl 3 480 NULL
+rx_path_reset_read_fndecl_490_fns rx_path_reset_read fndecl 3 490 NULL
-+security_inode_getxattr_fndecl_502_fns security_inode_getxattr fndecl 0 502 NULL nohasharray
-+ll_mtu_ipw_hardware_502_fns ll_mtu ipw_hardware 0 502 &security_inode_getxattr_fndecl_502_fns
++security_inode_getxattr_fndecl_502_fns security_inode_getxattr fndecl 0 502 NULL
+mr_pool_size_srp_target_port_510_fns mr_pool_size srp_target_port 0 510 NULL
+si476x_radio_read_acf_blob_fndecl_515_fns si476x_radio_read_acf_blob fndecl 3 515 NULL
+grow_gnttab_list_fndecl_523_fns grow_gnttab_list fndecl 1 523 NULL
@@ -204744,74 +209397,66 @@ index 0000000..510c554
+cfi_read_pri_fndecl_573_fns cfi_read_pri fndecl 3 573 NULL
+paging64_init_context_common_fndecl_577_fns paging64_init_context_common fndecl 3 577 NULL
+drm_property_create_bitmask_fndecl_591_fns drm_property_create_bitmask fndecl 6 591 NULL
-+getxattr_fndecl_605_fns getxattr fndecl 4 605 NULL
++log_mc_entry_sz_mlx4_init_hca_param_595_fns log_mc_entry_sz mlx4_init_hca_param 0 595 NULL
++getxattr_fndecl_605_fns getxattr fndecl 4 605 NULL nohasharray
++pvr2_v4l2_ioctl_fndecl_605_fns pvr2_v4l2_ioctl fndecl 2 605 &getxattr_fndecl_605_fns
+ftrace_size_ramoops_context_610_fns ftrace_size ramoops_context 0 610 NULL
+ixgbe_alloc_q_vector_fndecl_612_fns ixgbe_alloc_q_vector fndecl 4-6 612 NULL
+smk_user_access_fndecl_619_fns smk_user_access fndecl 3 619 NULL
+nvme_trans_log_supp_pages_fndecl_625_fns nvme_trans_log_supp_pages fndecl 3 625 NULL
+xenbus_file_read_fndecl_632_fns xenbus_file_read fndecl 3 632 NULL
+b43_debugfs_read_fndecl_634_fns b43_debugfs_read fndecl 3 634 NULL
++hfi1_make_grh_fndecl_636_fns hfi1_make_grh fndecl 0 636 NULL
+ocrdma_get_pbl_info_fndecl_644_fns ocrdma_get_pbl_info fndecl 3 644 NULL
-+header_length_irda_usb_cb_657_fns header_length irda_usb_cb 0 657 NULL
+nchannels_fs_dev_659_fns nchannels fs_dev 0 659 NULL
+evdev_do_ioctl_fndecl_664_fns evdev_do_ioctl fndecl 2 664 NULL
++lbs_highsnr_write_fndecl_671_fns lbs_highsnr_write fndecl 3 671 NULL
+ttm_page_pool_free_fndecl_693_fns ttm_page_pool_free fndecl 2 693 NULL
+size_pstore_private_696_fns size pstore_private 0 696 NULL nohasharray
+read_file_spec_scan_ctl_fndecl_696_fns read_file_spec_scan_ctl fndecl 3 696 &size_pstore_private_696_fns
+dut_mode_read_fndecl_698_fns dut_mode_read fndecl 3 698 NULL
+request_key_with_auxdata_fndecl_720_fns request_key_with_auxdata fndecl 4 720 NULL
+xfs_buf_get_map_fndecl_729_fns xfs_buf_get_map fndecl 3 729 NULL
-+iwl_trans_alloc_fndecl_767_fns iwl_trans_alloc fndecl 1 767 NULL
++sdp1length__SpiCfgData_813_fns sdp1length _SpiCfgData 0 813 NULL
+request_key_auth_read_fndecl_830_fns request_key_auth_read fndecl 3 830 NULL
+pipeline_post_proc_swi_read_fndecl_831_fns pipeline_post_proc_swi_read fndecl 3 831 NULL
-+_picolcd_flash_write_fndecl_853_fns _picolcd_flash_write fndecl 4 853 NULL
+irnet_ctrl_write_fndecl_856_fns irnet_ctrl_write fndecl 3 856 NULL
+dvb_register_media_device_fndecl_878_fns dvb_register_media_device fndecl 4 878 NULL
+field_count_audit_rule_data_886_fns field_count audit_rule_data 0 886 NULL
-+ieee80211_if_read_dot11MeshHWMPpreqMinInterval_fndecl_899_fns ieee80211_if_read_dot11MeshHWMPpreqMinInterval fndecl 3 899 NULL
++octeon_read_device_mem64_fndecl_892_fns octeon_read_device_mem64 fndecl 0 892 NULL
+tcpprobe_sprint_fndecl_909_fns tcpprobe_sprint fndecl 0 909 NULL
+max_reply_bytes_mpt3_ioctl_command_918_fns max_reply_bytes mpt3_ioctl_command 0 918 NULL
-+icmp_len_batadv_socket_packet_944_fns icmp_len batadv_socket_packet 0 944 NULL
-+pcpu_embed_first_chunk_fndecl_947_fns pcpu_embed_first_chunk fndecl 1-2-3 947 NULL nohasharray
-+mei_amthif_read_fndecl_947_fns mei_amthif_read fndecl 4 947 &pcpu_embed_first_chunk_fndecl_947_fns
++vmsplice_to_pipe_fndecl_937_fns vmsplice_to_pipe fndecl 3 937 NULL
++pcpu_embed_first_chunk_fndecl_947_fns pcpu_embed_first_chunk fndecl 1-2-3 947 NULL
+sel_read_bool_fndecl_959_fns sel_read_bool fndecl 3 959 NULL
-+avc_tuner_tuneqpsk_fndecl_978_fns avc_tuner_tuneqpsk fndecl 0 978 NULL
++compat_sys_preadv64_fndecl_968_fns compat_sys_preadv64 fndecl 3 968 NULL
+em28xx_alloc_urbs_fndecl_983_fns em28xx_alloc_urbs fndecl 4 983 NULL
-+btmrvl_pscmd_read_fndecl_999_fns btmrvl_pscmd_read fndecl 3 999 NULL
+ath6kl_add_bss_if_needed_fndecl_1006_fns ath6kl_add_bss_if_needed fndecl 6 1006 NULL
++__dm_get_module_param_fndecl_1008_fns __dm_get_module_param fndecl 2-3 1008 NULL
+s_last_cno_nilfs_super_block_1016_fns s_last_cno nilfs_super_block 0 1016 NULL
-+offset_kmem_cache_1021_fns offset kmem_cache 0 1021 NULL
-+subn_get_opa_sma_fndecl_1039_fns subn_get_opa_sma fndecl 3 1039 NULL
+invalid_tid_idx_hfi1_filedata_1040_fns invalid_tid_idx hfi1_filedata 0 1040 NULL
-+vnic_dev_get_res_count_fndecl_1044_fns vnic_dev_get_res_count fndecl 0 1044 NULL
+rocker_dma_test_offset_fndecl_1055_fns rocker_dma_test_offset fndecl 3 1055 NULL
++line__mgslpc_info_1070_fns line _mgslpc_info 0 1070 NULL
+b_cnt_mon_reader_bin_1106_fns b_cnt mon_reader_bin 0 1106 NULL
-+cmd_sg_entries_vardecl_ib_srp_c_1108_fns cmd_sg_entries vardecl_ib_srp.c 0 1108 NULL
+create_attr_set_fndecl_1118_fns create_attr_set fndecl 1 1118 NULL
+mdc800_device_read_fndecl_1123_fns mdc800_device_read fndecl 3 1123 NULL
+ion_handle_test_kernel_fndecl_1127_fns ion_handle_test_kernel fndecl 3-4 1127 NULL
-+do_kexec_load_fndecl_1129_fns do_kexec_load fndecl 2 1129 NULL
-+usblp_new_writeurb_fndecl_1149_fns usblp_new_writeurb fndecl 2 1149 NULL
+xstateregs_set_fndecl_1159_fns xstateregs_set fndecl 4 1159 NULL
-+nfs4_acl_bytes_fndecl_1168_fns nfs4_acl_bytes fndecl 0 1168 NULL
++nfs4_acl_bytes_fndecl_1168_fns nfs4_acl_bytes fndecl 0-1 1168 NULL
+vme_get_size_fndecl_1191_fns vme_get_size fndecl 0 1191 NULL
+tx_frag_key_not_found_read_fndecl_1192_fns tx_frag_key_not_found_read fndecl 3 1192 NULL
-+adf_create_ring_fndecl_1199_fns adf_create_ring fndecl 5 1199 NULL
-+scsi_log_dump_sense_fndecl_1206_fns scsi_log_dump_sense fndecl 5 1206 NULL
+pcpu_mem_zalloc_fndecl_1207_fns pcpu_mem_zalloc fndecl 1 1207 NULL
+gtp_hashtable_new_fndecl_1236_fns gtp_hashtable_new fndecl 2 1236 NULL
+remote_settings_file_write_fndecl_1240_fns remote_settings_file_write fndecl 3 1240 NULL
+cifs_local_to_utf16_bytes_fndecl_1250_fns cifs_local_to_utf16_bytes fndecl 0 1250 NULL
++max_vports_lpfc_hba_1253_fns max_vports lpfc_hba 0 1253 NULL
++num_slaves_mlx4_dev_1258_fns num_slaves mlx4_dev 0 1258 NULL
+viafb_dvp0_proc_write_fndecl_1276_fns viafb_dvp0_proc_write fndecl 3 1276 NULL
-+sst_fill_and_send_cmd_fndecl_1280_fns sst_fill_and_send_cmd fndecl 7 1280 NULL
+agp_alloc_page_array_fndecl_1289_fns agp_alloc_page_array fndecl 1 1289 NULL
-+snapshot_read_fndecl_1370_fns snapshot_read fndecl 3 1370 NULL
++vd_cbr_au_count_gru_vma_data_1314_fns vd_cbr_au_count gru_vma_data 0 1314 NULL
++ccp_set_dm_area_fndecl_1351_fns ccp_set_dm_area fndecl 4 1351 NULL
+cfs_expr_list_values_fndecl_1371_fns cfs_expr_list_values fndecl 0 1371 NULL
-+reiserfs_get_block_fndecl_1379_fns reiserfs_get_block fndecl 2 1379 NULL
-+iwl_dbgfs_calib_disabled_read_fndecl_1386_fns iwl_dbgfs_calib_disabled_read fndecl 3 1386 NULL
-+iwl_dbgfs_rx_phyinfo_read_fndecl_1394_fns iwl_dbgfs_rx_phyinfo_read fndecl 3 1394 NULL
+sctp_setsockopt_connectx_old_fndecl_1396_fns sctp_setsockopt_connectx_old fndecl 3 1396 NULL
-+sync_file_alloc_fndecl_1398_fns sync_file_alloc fndecl 1 1398 NULL
+wl1271_rx_filter_get_fields_size_fndecl_1405_fns wl1271_rx_filter_get_fields_size fndecl 0 1405 NULL
+call_netdevice_notifiers_fndecl_1411_fns call_netdevice_notifiers fndecl 0 1411 NULL
+num_rx_bds_bcmgenet_priv_1412_fns num_rx_bds bcmgenet_priv 0 1412 NULL
@@ -204822,28 +209467,25 @@ index 0000000..510c554
+nr_cpusets_fndecl_1442_fns nr_cpusets fndecl 0 1442 NULL
+memcg_update_list_lru_node_fndecl_1454_fns memcg_update_list_lru_node fndecl 3 1454 NULL
+sys_ppoll_fndecl_1459_fns sys_ppoll fndecl 2 1459 NULL
-+iio_debugfs_write_reg_fndecl_1477_fns iio_debugfs_write_reg fndecl 3 1477 NULL
-+print_frame_fndecl_1506_fns print_frame fndecl 0 1506 NULL
++cx18_copy_buf_to_user_fndecl_1500_fns cx18_copy_buf_to_user fndecl 4 1500 NULL
+qlcnic_sriov_init_fndecl_1529_fns qlcnic_sriov_init fndecl 2 1529 NULL
-+__aa_kvmalloc_fndecl_1547_fns __aa_kvmalloc fndecl 1 1547 NULL
++i2cdev_write_fndecl_1565_fns i2cdev_write fndecl 3 1565 NULL
+libcfs_kvzalloc_fndecl_1568_fns libcfs_kvzalloc fndecl 1 1568 NULL
+page_readlink_fndecl_1569_fns page_readlink fndecl 3 1569 NULL
-+kmem_zalloc_large_fndecl_1572_fns kmem_zalloc_large fndecl 1 1572 NULL
+error_error_frame_non_ctrl_read_fndecl_1589_fns error_error_frame_non_ctrl_read fndecl 3 1589 NULL
++size_icp_qat_uof_batch_init_1600_fns size icp_qat_uof_batch_init 0 1600 NULL
+skl_get_module_param_size_fndecl_1615_fns skl_get_module_param_size fndecl 0 1615 NULL
+copied_rpc_pipe_msg_1658_fns copied rpc_pipe_msg 0 1658 NULL
-+vzalloc_node_fndecl_1683_fns vzalloc_node fndecl 1 1683 NULL
++hidraw_send_report_fndecl_1674_fns hidraw_send_report fndecl 3 1674 NULL
++gb_hid_alloc_buffers_fndecl_1705_fns gb_hid_alloc_buffers fndecl 2 1705 NULL
+linear_conf_fndecl_1710_fns linear_conf fndecl 2 1710 NULL
+aead_edesc_alloc_fndecl_1730_fns aead_edesc_alloc fndecl 2 1730 NULL
+devm_iio_device_alloc_fndecl_1732_fns devm_iio_device_alloc fndecl 2 1732 NULL
+skl_set_module_params_fndecl_1736_fns skl_set_module_params fndecl 3 1736 NULL
+compat_filldir_fndecl_1746_fns compat_filldir fndecl 3 1746 NULL
-+copy_module_from_user_fndecl_1751_fns copy_module_from_user fndecl 2 1751 NULL
+it_context_mask_fw_ohci_1753_fns it_context_mask fw_ohci 0 1753 NULL
+ima_show_measurements_count_fndecl_1763_fns ima_show_measurements_count fndecl 3 1763 NULL
-+reiserfs_add_entry_fndecl_1797_fns reiserfs_add_entry fndecl 4 1797 NULL
+libcfs_kkuc_group_add_fndecl_1809_fns libcfs_kkuc_group_add fndecl 5 1809 NULL
-+rt2x00debug_write_eeprom_fndecl_1824_fns rt2x00debug_write_eeprom fndecl 3 1824 NULL
+num_vectors_e1000_adapter_1827_fns num_vectors e1000_adapter 0 1827 NULL
+__add_prelim_ref_fndecl_1828_fns __add_prelim_ref fndecl 2 1828 NULL
+ntfs_ucstonls_fndecl_1834_fns ntfs_ucstonls fndecl 3-5 1834 NULL
@@ -204852,357 +209494,322 @@ index 0000000..510c554
+device_slot_1847_fns device slot 0 1847 NULL
+isr_tx_procs_read_fndecl_1855_fns isr_tx_procs_read fndecl 3 1855 NULL
+drm_mode_create_tv_properties_fndecl_1857_fns drm_mode_create_tv_properties fndecl 2 1857 NULL
-+read_file_wow_fndecl_1861_fns read_file_wow fndecl 3 1861 NULL
+da9150_write_qif_fndecl_1872_fns da9150_write_qif fndecl 3 1872 NULL
+bset_tree_bytes_fndecl_1876_fns bset_tree_bytes fndecl 0 1876 NULL
+mwl8k_cmd_set_beacon_fndecl_1877_fns mwl8k_cmd_set_beacon fndecl 4 1877 NULL
-+num_vmdq_vsis_i40e_pf_1882_fns num_vmdq_vsis i40e_pf 0 1882 NULL
-+_iwl_dbgfs_fw_dbg_collect_write_fndecl_1890_fns _iwl_dbgfs_fw_dbg_collect_write fndecl 3 1890 NULL
+read_file_ani_fndecl_1898_fns read_file_ani fndecl 3 1898 NULL
++qed_rdma_bmap_alloc_fndecl_1913_fns qed_rdma_bmap_alloc fndecl 3 1913 NULL
+mpi_alloc_limb_space_fndecl_1925_fns mpi_alloc_limb_space fndecl 1 1925 NULL
-+usblp_write_fndecl_1945_fns usblp_write fndecl 3 1945 NULL
+sd_init_fndecl_1946_fns sd_init fndecl 0 1946 NULL
+gss_pipe_downcall_fndecl_1949_fns gss_pipe_downcall fndecl 3 1949 NULL
+mcryptd_alloc_instance_fndecl_1958_fns mcryptd_alloc_instance fndecl 2-3 1958 NULL
+__kmalloc_fndecl_1964_fns __kmalloc fndecl 1 1964 NULL
-+tty_buffer_request_room_fndecl_1967_fns tty_buffer_request_room fndecl 2-0 1967 NULL
++tty_buffer_request_room_fndecl_1967_fns tty_buffer_request_room fndecl 2 1967 NULL
+response_length_mlx5_ib_create_rwq_ind_tbl_resp_1977_fns response_length mlx5_ib_create_rwq_ind_tbl_resp 0 1977 NULL
-+mwifiex_memrw_read_fndecl_1997_fns mwifiex_memrw_read fndecl 3 1997 NULL
+alauda_read_block_fndecl_2008_fns alauda_read_block fndecl 4 2008 NULL
++xlog_recovery_process_trans_fndecl_2013_fns xlog_recovery_process_trans fndecl 4 2013 NULL
+diva_get_trace_filter_fndecl_2021_fns diva_get_trace_filter fndecl 0 2021 NULL
-+ec_i2c_count_message_fndecl_2022_fns ec_i2c_count_message fndecl 2-0 2022 NULL nohasharray
-+complicated_alloc_urb_fndecl_2022_fns complicated_alloc_urb fndecl 3 2022 &ec_i2c_count_message_fndecl_2022_fns
-+kmalloc_order_trace_fndecl_2063_fns kmalloc_order_trace fndecl 1 2063 NULL
-+usbat_flash_read_data_fndecl_2065_fns usbat_flash_read_data fndecl 4 2065 NULL
+dvb_generic_ioctl_fndecl_2081_fns dvb_generic_ioctl fndecl 2 2081 NULL
-+mei_io_cb_alloc_buf_fndecl_2088_fns mei_io_cb_alloc_buf fndecl 2 2088 NULL
-+min_odd_fndecl_2105_fns min_odd fndecl 1-2-0 2105 NULL
-+qsfp1_debugfs_read_fndecl_2107_fns qsfp1_debugfs_read fndecl 3 2107 NULL
++min_odd_fndecl_2105_fns min_odd fndecl 0-1-2 2105 NULL
+oom_adj_read_fndecl_2116_fns oom_adj_read fndecl 3 2116 NULL
++lmv_mds_md_stripe_count_get_fndecl_2118_fns lmv_mds_md_stripe_count_get fndecl 0 2118 NULL
+gen_unique_name_fndecl_2127_fns gen_unique_name fndecl 0 2127 NULL
-+_iwl_dbgfs_sta_drain_write_fndecl_2142_fns _iwl_dbgfs_sta_drain_write fndecl 3 2142 NULL
+synic_set_msr_fndecl_2149_fns synic_set_msr fndecl 3 2149 NULL
+__kfifo_dma_out_prepare_fndecl_2165_fns __kfifo_dma_out_prepare fndecl 4 2165 NULL
-+lpfc_idiag_extacc_avail_get_fndecl_2170_fns lpfc_idiag_extacc_avail_get fndecl 3-0 2170 NULL
+qsfp_1_read_fndecl_2184_fns qsfp_1_read fndecl 3 2184 NULL
+ldlm_lock_create_fndecl_2195_fns ldlm_lock_create fndecl 7 2195 NULL
-+s_blocks_per_group_ext4_sb_info_2201_fns s_blocks_per_group ext4_sb_info 0 2201 NULL
+SYSC_prctl_fndecl_2255_fns SYSC_prctl fndecl 4 2255 NULL
-+compat_rw_copy_check_uvector_fndecl_2274_fns compat_rw_copy_check_uvector fndecl 0-3 2274 NULL nohasharray
++compat_rw_copy_check_uvector_fndecl_2274_fns compat_rw_copy_check_uvector fndecl 3 2274 NULL nohasharray
+rxpipe_descr_host_int_trig_rx_data_read_fndecl_2274_fns rxpipe_descr_host_int_trig_rx_data_read fndecl 3 2274 &compat_rw_copy_check_uvector_fndecl_2274_fns
+read_pointer_st_buffer_2314_fns read_pointer st_buffer 0 2314 NULL
-+il_dbgfs_stations_read_fndecl_2319_fns il_dbgfs_stations_read fndecl 3 2319 NULL
+mmc_alloc_sg_fndecl_2323_fns mmc_alloc_sg fndecl 1 2323 NULL
+size_debugfs_blob_wrapper_2338_fns size debugfs_blob_wrapper 0 2338 NULL
+rx_rx_beacon_early_term_read_fndecl_2340_fns rx_rx_beacon_early_term_read fndecl 3 2340 NULL
-+cipso_v4_map_cat_enum_hton_fndecl_2359_fns cipso_v4_map_cat_enum_hton fndecl 0 2359 NULL
+fat_ioctl_filldir_fndecl_2360_fns fat_ioctl_filldir fndecl 3 2360 NULL
-+__jfs_getxattr_fndecl_2412_fns __jfs_getxattr fndecl 0 2412 NULL
+rspq_size_qset_params_2417_fns rspq_size qset_params 0 2417 NULL
-+smtcfb_write_fndecl_2433_fns smtcfb_write fndecl 3 2433 NULL
++smtcfb_write_fndecl_2433_fns smtcfb_write fndecl 3 2433 NULL nohasharray
++qedr_alloc_mr_fndecl_2433_fns qedr_alloc_mr fndecl 3 2433 &smtcfb_write_fndecl_2433_fns
+tomoyo_read_control_fndecl_2465_fns tomoyo_read_control fndecl 3 2465 NULL
+regmap_register_patch_fndecl_2466_fns regmap_register_patch fndecl 3 2466 NULL
-+rtllib_alloc_txb_fndecl_2468_fns rtllib_alloc_txb fndecl 1 2468 NULL
-+ocfs2_xattr_get_nolock_fndecl_2493_fns ocfs2_xattr_get_nolock fndecl 0 2493 NULL
++proc_maps_open_fndecl_2468_fns proc_maps_open fndecl 4 2468 NULL nohasharray
++rtllib_alloc_txb_fndecl_2468_fns rtllib_alloc_txb fndecl 1 2468 &proc_maps_open_fndecl_2468_fns
+evdev_ioctl_handler_fndecl_2522_fns evdev_ioctl_handler fndecl 2 2522 NULL
-+mthca_alloc_init_fndecl_2537_fns mthca_alloc_init fndecl 2 2537 NULL
+lprocfs_wr_import_fndecl_2547_fns lprocfs_wr_import fndecl 3 2547 NULL
+__kmem_cache_alias_fndecl_2551_fns __kmem_cache_alias fndecl 3 2551 NULL
+dma_maxpq_fndecl_2555_fns dma_maxpq fndecl 0 2555 NULL
+__tun_chr_ioctl_fndecl_2575_fns __tun_chr_ioctl fndecl 4 2575 NULL
++of_phandle_iterator_init_fndecl_2614_fns of_phandle_iterator_init fndecl 0 2614 NULL
+crc_size_vardecl_pm_check_c_2624_fns crc_size vardecl_pm-check.c 0 2624 NULL
-+len_whc_std_2626_fns len whc_std 0 2626 NULL
-+alloc_large_system_hash_fndecl_2660_fns alloc_large_system_hash fndecl 2 2660 NULL nohasharray
-+ath10k_debug_fw_reset_stats_read_fndecl_2660_fns ath10k_debug_fw_reset_stats_read fndecl 3 2660 &alloc_large_system_hash_fndecl_2660_fns
++alloc_large_system_hash_fndecl_2660_fns alloc_large_system_hash fndecl 2 2660 NULL
+evdev_ioctl_fndecl_2672_fns evdev_ioctl fndecl 2 2672 NULL
-+scif_user_recv_fndecl_2675_fns scif_user_recv fndecl 3 2675 NULL
+queue_reply_fndecl_2691_fns queue_reply fndecl 3 2691 NULL
-+__set_enter_print_fmt_fndecl_2700_fns __set_enter_print_fmt fndecl 0 2700 NULL
-+zoran_write_fndecl_2711_fns zoran_write fndecl 3 2711 NULL
-+handle_received_packet_fndecl_2730_fns handle_received_packet fndecl 3 2730 NULL
+aic_common_of_init_fndecl_2752_fns aic_common_of_init fndecl 4 2752 NULL
+cache_write_procfs_fndecl_2760_fns cache_write_procfs fndecl 3 2760 NULL
+qib_user_sdma_alloc_header_fndecl_2761_fns qib_user_sdma_alloc_header fndecl 2 2761 NULL
-+ceph_find_or_create_string_fndecl_2777_fns ceph_find_or_create_string fndecl 2 2777 NULL
++ieee80211_alloc_hw_nm_fndecl_2774_fns ieee80211_alloc_hw_nm fndecl 1 2774 NULL
+max_qid_nvmet_subsys_2781_fns max_qid nvmet_subsys 0 2781 NULL
+_sp2d_min_pg_fndecl_2819_fns _sp2d_min_pg fndecl 0 2819 NULL
+btrfs_get_16_fndecl_2836_fns btrfs_get_16 fndecl 0 2836 NULL
+zd_usb_read_fw_fndecl_2866_fns zd_usb_read_fw fndecl 4 2866 NULL
++spdif_set_sample_rate_fndecl_2892_fns spdif_set_sample_rate fndecl 2 2892 NULL
+prl_count_ip_tunnel_2900_fns prl_count ip_tunnel 0 2900 NULL
-+mem_rw_fndecl_2902_fns mem_rw fndecl 3 2902 NULL
++snd_hdac_acomp_get_eld_fndecl_2924_fns snd_hdac_acomp_get_eld fndecl 0 2924 NULL
+origin_write_extent_fndecl_2983_fns origin_write_extent fndecl 2 2983 NULL
+do_sync_mmap_readahead_fndecl_3008_fns do_sync_mmap_readahead fndecl 4 3008 NULL
-+mem_write_fndecl_3019_fns mem_write fndecl 3 3019 NULL
++id_rio_mport_3010_fns id rio_mport 0 3010 NULL
+bpw_len_pch_spi_data_3026_fns bpw_len pch_spi_data 0 3026 NULL
+fat_compat_ioctl_filldir_fndecl_3037_fns fat_compat_ioctl_filldir fndecl 3 3037 NULL
+add_res_tree_fndecl_3044_fns add_res_tree fndecl 7 3044 NULL
-+compat_process_vm_rw_fndecl_3069_fns compat_process_vm_rw fndecl 5 3069 NULL
++compat_process_vm_rw_fndecl_3069_fns compat_process_vm_rw fndecl 5-3 3069 NULL
+npages_mthca_db_table_3090_fns npages mthca_db_table 0 3090 NULL nohasharray
+ad7280_write_fndecl_3090_fns ad7280_write fndecl 0 3090 &npages_mthca_db_table_3090_fns
+fb_prepare_logo_fndecl_3092_fns fb_prepare_logo fndecl 0 3092 NULL
+loopstart_soundfont_sample_info_3093_fns loopstart soundfont_sample_info 0 3093 NULL
+rx_pkt_map_sz_tg3_3106_fns rx_pkt_map_sz tg3 0 3106 NULL
-+mt76_init_sband_fndecl_3112_fns mt76_init_sband fndecl 6 3112 NULL nohasharray
-+iwl_dbgfs_rxon_flags_read_fndecl_3112_fns iwl_dbgfs_rxon_flags_read fndecl 3 3112 &mt76_init_sband_fndecl_3112_fns
++mt76_init_sband_fndecl_3112_fns mt76_init_sband fndecl 6 3112 NULL
+compat_filldir64_fndecl_3119_fns compat_filldir64 fndecl 3 3119 NULL
+sys_sendto_fndecl_3162_fns sys_sendto fndecl 6 3162 NULL
+fill_elf_header_fndecl_3182_fns fill_elf_header fndecl 2 3182 NULL
+wl1271_format_buffer_fndecl_3185_fns wl1271_format_buffer fndecl 2 3185 NULL
-+uvc_alloc_entity_fndecl_3191_fns uvc_alloc_entity fndecl 3-4 3191 NULL
++uvc_alloc_entity_fndecl_3191_fns uvc_alloc_entity fndecl 4 3191 NULL
+nvme_trans_supported_vpd_pages_fndecl_3196_fns nvme_trans_supported_vpd_pages fndecl 4 3196 NULL
+p9_tag_alloc_fndecl_3198_fns p9_tag_alloc fndecl 3 3198 NULL
++import_iovec_fndecl_3201_fns import_iovec fndecl 3 3201 NULL
+cfs_cpt_table_create_fndecl_3207_fns cfs_cpt_table_create fndecl 1 3207 NULL
-+sisusb_send_packet_fndecl_3208_fns sisusb_send_packet fndecl 2 3208 NULL
-+key_icverrors_read_fndecl_3212_fns key_icverrors_read fndecl 3 3212 NULL
-+iwl_dbgfs_pm_params_read_fndecl_3217_fns iwl_dbgfs_pm_params_read fndecl 3 3217 NULL
+nportcntrs_hfi1_devdata_3218_fns nportcntrs hfi1_devdata 0 3218 NULL
+command_setexposure_fndecl_3231_fns command_setexposure fndecl 0 3231 NULL
-+expect_class_max_nf_conntrack_helper_3242_fns expect_class_max nf_conntrack_helper 0 3242 NULL
++lbs_rdbbp_write_fndecl_3237_fns lbs_rdbbp_write fndecl 3 3237 NULL
++inlen_ib_udata_3242_fns inlen ib_udata 0 3242 NULL nohasharray
++expect_class_max_nf_conntrack_helper_3242_fns expect_class_max nf_conntrack_helper 0 3242 &inlen_ib_udata_3242_fns
+rx_buf_size_bnxt_3254_fns rx_buf_size bnxt 0 3254 NULL
+vfio_msi_enable_fndecl_3257_fns vfio_msi_enable fndecl 2 3257 NULL
-+sbc_check_prot_fndecl_3258_fns sbc_check_prot fndecl 4 3258 NULL
++compat_sys_readv_fndecl_3260_fns compat_sys_readv fndecl 3 3260 NULL
+rx_rx_phy_hdr_read_fndecl_3269_fns rx_rx_phy_hdr_read fndecl 3 3269 NULL
+rsxx_cram_read_fndecl_3278_fns rsxx_cram_read fndecl 3 3278 NULL
+htable_bits_fndecl_3286_fns htable_bits fndecl 0 3286 NULL
+alg_setsockopt_fndecl_3306_fns alg_setsockopt fndecl 5 3306 NULL
+snd_rme9652_playback_copy_fndecl_3321_fns snd_rme9652_playback_copy fndecl 5 3321 NULL
++length_ima_digest_data_3329_fns length ima_digest_data 0 3329 NULL
+hidraw_report_event_fndecl_3332_fns hidraw_report_event fndecl 3 3332 NULL
+add_desc_fndecl_3339_fns add_desc fndecl 3 3339 NULL
+memcg_update_list_lru_fndecl_3349_fns memcg_update_list_lru fndecl 3 3349 NULL
+fast_user_write_fndecl_3357_fns fast_user_write fndecl 5 3357 NULL
-+frame_size_stk_camera_3367_fns frame_size stk_camera 0 3367 NULL
+amd_create_gatt_pages_fndecl_3370_fns amd_create_gatt_pages fndecl 1 3370 NULL
-+nvdimm_set_config_data_fndecl_3384_fns nvdimm_set_config_data fndecl 4 3384 NULL
-+drbd_bm_resize_fndecl_3385_fns drbd_bm_resize fndecl 2 3385 NULL
+num_paths_rdma_route_3407_fns num_paths rdma_route 0 3407 NULL
-+venus_create_fndecl_3416_fns venus_create fndecl 4 3416 NULL
++scsi_report_opcode_fndecl_3412_fns scsi_report_opcode fndecl 3 3412 NULL
+udf_getblk_fndecl_3436_fns udf_getblk fndecl 2 3436 NULL
+command_setcolourbalance_fndecl_3441_fns command_setcolourbalance fndecl 0 3441 NULL
-+cifs_read_page_from_socket_fndecl_3452_fns cifs_read_page_from_socket fndecl 0 3452 NULL
++copy_arg_to_user_fndecl_3464_fns copy_arg_to_user fndecl 3 3464 NULL
++stm32_dma_prep_dma_cyclic_fndecl_3466_fns stm32_dma_prep_dma_cyclic fndecl 4-3 3466 NULL
+qib_qsfp_write_fndecl_3477_fns qib_qsfp_write fndecl 2-4-0 3477 NULL
+rx_buf_size__mgslpc_info_3490_fns rx_buf_size _mgslpc_info 0 3490 NULL
+kfifo_copy_to_user_fndecl_3509_fns kfifo_copy_to_user fndecl 3-4 3509 NULL
-+read_file_tgt_int_stats_fndecl_3530_fns read_file_tgt_int_stats fndecl 3 3530 NULL
+fifo_size_qcom_smd_channel_3531_fns fifo_size qcom_smd_channel 0 3531 NULL
-+cipso_v4_gentag_rng_fndecl_3532_fns cipso_v4_gentag_rng fndecl 0 3532 NULL
+snd_hdsp_playback_copy_fndecl_3543_fns snd_hdsp_playback_copy fndecl 5 3543 NULL
-+dvb_dmxdev_buffer_read_fndecl_3545_fns dvb_dmxdev_buffer_read fndecl 0-4 3545 NULL
++dvb_dmxdev_buffer_read_fndecl_3545_fns dvb_dmxdev_buffer_read fndecl 4 3545 NULL
+security_context_to_sid_force_fndecl_3559_fns security_context_to_sid_force fndecl 2 3559 NULL
+_snd_pcm_new_fndecl_3575_fns _snd_pcm_new fndecl 4-5 3575 NULL
++len_capiloaddatapart_3577_fns len capiloaddatapart 0 3577 NULL
+pcpu_page_first_chunk_fndecl_3579_fns pcpu_page_first_chunk fndecl 1 3579 NULL
+asq_buf_size_i40e_adminq_info_3582_fns asq_buf_size i40e_adminq_info 0 3582 NULL
+bcm2835_dma_prep_dma_cyclic_fndecl_3588_fns bcm2835_dma_prep_dma_cyclic fndecl 4-3 3588 NULL
-+use_debug_keys_read_fndecl_3600_fns use_debug_keys_read fndecl 3 3600 NULL
+net_rx_queue_update_kobjects_fndecl_3617_fns net_rx_queue_update_kobjects fndecl 0 3617 NULL
+do_msg_fill_fndecl_3624_fns do_msg_fill fndecl 3 3624 NULL
+add_res_range_fndecl_3629_fns add_res_range fndecl 4 3629 NULL
+cfg80211_inform_bss_frame_data_fndecl_3632_fns cfg80211_inform_bss_frame_data fndecl 4 3632 NULL
-+s_desc_size_ext4_sb_info_3652_fns s_desc_size ext4_sb_info 0 3652 NULL
-+pcpu_chunk_struct_size_vardecl_percpu_c_3673_fns pcpu_chunk_struct_size vardecl_percpu.c 0 3673 NULL nohasharray
-+get_zeroed_page_fndecl_3673_fns get_zeroed_page fndecl 0 3673 &pcpu_chunk_struct_size_vardecl_percpu_c_3673_fns
++count_phm_clock_voltage_dependency_table_3642_fns count phm_clock_voltage_dependency_table 0 3642 NULL
++c_plan_ahead_disk_conf_3660_fns c_plan_ahead disk_conf 0 3660 NULL
++pcpu_chunk_struct_size_vardecl_percpu_c_3673_fns pcpu_chunk_struct_size vardecl_percpu.c 0 3673 NULL
++alloc_orinocodev_fndecl_3688_fns alloc_orinocodev fndecl 1 3688 NULL
+read_file_bool_bmps_fndecl_3699_fns read_file_bool_bmps fndecl 3 3699 NULL
+srp_max_rsp_size_srpt_port_attrib_3700_fns srp_max_rsp_size srpt_port_attrib 0 3700 NULL
-+allocate_cmdlines_buffer_fndecl_3704_fns allocate_cmdlines_buffer fndecl 1 3704 NULL
+ip_getsockopt_fndecl_3711_fns ip_getsockopt fndecl 0 3711 NULL
+diva_get_driver_dbg_mask_fndecl_3716_fns diva_get_driver_dbg_mask fndecl 0 3716 NULL
-+dvb_create_media_entity_fndecl_3720_fns dvb_create_media_entity fndecl 3 3720 NULL
-+__v4l2_ctrl_modify_range_fndecl_3726_fns __v4l2_ctrl_modify_range fndecl 3 3726 NULL
+SYSC_rt_sigpending_fndecl_3728_fns SYSC_rt_sigpending fndecl 2 3728 NULL
+split_leaf_fndecl_3729_fns split_leaf fndecl 0 3729 NULL
+video_ioctl2_fndecl_3735_fns video_ioctl2 fndecl 2 3735 NULL
+insert_ptr_fndecl_3737_fns insert_ptr fndecl 6 3737 NULL
+intel_th_msc_read_fndecl_3740_fns intel_th_msc_read fndecl 3 3740 NULL
+entries_p54_cal_database_3741_fns entries p54_cal_database 0 3741 NULL
-+snapshot_read_next_fndecl_3745_fns snapshot_read_next fndecl 0 3745 NULL
+error_null_frame_tx_start_read_fndecl_3750_fns error_null_frame_tx_start_read fndecl 3 3750 NULL
++nvme_set_features_fndecl_3762_fns nvme_set_features fndecl 5 3762 NULL
+tblsize_snd_sg_buf_3776_fns tblsize snd_sg_buf 0 3776 NULL
+next_fn_fndecl_3785_fns next_fn fndecl 0-3 3785 NULL
+buflen_audit_krule_3796_fns buflen audit_krule 0 3796 NULL
-+ch_list_len_scan_attr_3809_fns ch_list_len scan_attr 0 3809 NULL
++ch_list_len_scan_attr_3809_fns ch_list_len scan_attr 0 3809 NULL nohasharray
++nextLineNumber_vardecl_rocket_c_3809_fns nextLineNumber vardecl_rocket.c 0 3809 &ch_list_len_scan_attr_3809_fns
++max_io_slots_pqi_ctrl_info_3817_fns max_io_slots pqi_ctrl_info 0 3817 NULL
+force_bredr_smp_write_fndecl_3821_fns force_bredr_smp_write fndecl 3 3821 NULL
-+mei_nfc_send_fndecl_3830_fns mei_nfc_send fndecl 3 3830 NULL
-+read_file_xmit_fndecl_3836_fns read_file_xmit fndecl 3 3836 NULL
+qib_verbs_send_fndecl_3860_fns qib_verbs_send fndecl 3-5 3860 NULL
++minlen_fstrim_range_3870_fns minlen fstrim_range 0 3870 NULL
+lbs_threshold_read_fndecl_3877_fns lbs_threshold_read fndecl 5 3877 NULL
+console_size_ramoops_context_3884_fns console_size ramoops_context 0 3884 NULL
-+s_num_blocks_omfs_sb_info_3888_fns s_num_blocks omfs_sb_info 0 3888 NULL nohasharray
-+dbgfs_sram_len_il_priv_3888_fns dbgfs_sram_len il_priv 0 3888 &s_num_blocks_omfs_sb_info_3888_fns
++s_num_blocks_omfs_sb_info_3888_fns s_num_blocks omfs_sb_info 0 3888 NULL
+btrfs_inode_ref_name_len_fndecl_3891_fns btrfs_inode_ref_name_len fndecl 0 3891 NULL
+rx_defrag_tkip_called_read_fndecl_3892_fns rx_defrag_tkip_called_read fndecl 3 3892 NULL
-+arch_gnttab_init_fndecl_3893_fns arch_gnttab_init fndecl 1 3893 NULL
+event_calibration_read_fndecl_3912_fns event_calibration_read fndecl 3 3912 NULL
+proc_fault_inject_write_fndecl_3921_fns proc_fault_inject_write fndecl 3 3921 NULL
+acpi_data_prop_read_fndecl_3925_fns acpi_data_prop_read fndecl 0 3925 NULL
+virtio_gpu_get_capsets_fndecl_3928_fns virtio_gpu_get_capsets fndecl 2 3928 NULL
+ath6kl_send_go_probe_resp_fndecl_3946_fns ath6kl_send_go_probe_resp fndecl 3 3946 NULL
+_efx_mcdi_rpc_async_fndecl_3948_fns _efx_mcdi_rpc_async fndecl 4-5 3948 NULL
++make_le_item_head_fndecl_3961_fns make_le_item_head fndecl 5 3961 NULL
+max_ti_iu_len_srp_rdma_ch_3984_fns max_ti_iu_len srp_rdma_ch 0 3984 NULL
-+iwl_dbgfs_uapsd_misbehaving_read_fndecl_3994_fns iwl_dbgfs_uapsd_misbehaving_read fndecl 3 3994 NULL
-+mei_dbgfs_read_active_fndecl_4007_fns mei_dbgfs_read_active fndecl 3 4007 NULL
-+netdev_set_num_tc_fndecl_4021_fns netdev_set_num_tc fndecl 2 4021 NULL
++nv50_chan_create_fndecl_3986_fns nv50_chan_create fndecl 6 3986 NULL
++format_supported_num_psb_intel_sdvo_connector_4007_fns format_supported_num psb_intel_sdvo_connector 0 4007 NULL
++bioset_create_nobvec_fndecl_4015_fns bioset_create_nobvec fndecl 1 4015 NULL
+ipc_rcu_alloc_fndecl_4043_fns ipc_rcu_alloc fndecl 1 4043 NULL
++scsi_execute_req_flags_fndecl_4044_fns scsi_execute_req_flags fndecl 5 4044 NULL
+cx18_v4l2_read_fndecl_4063_fns cx18_v4l2_read fndecl 3 4063 NULL
+input_ff_create_fndecl_4075_fns input_ff_create fndecl 2 4075 NULL
+ring_overflow_per_user_data_4076_fns ring_overflow per_user_data 0 4076 NULL
-+read_ftrace_buffer_info_4082_fns read ftrace_buffer_info 0 4082 NULL
-+kvm_vcpu_read_guest_page_fndecl_4083_fns kvm_vcpu_read_guest_page fndecl 5-2 4083 NULL
-+hfi1_seq_read_fndecl_4107_fns hfi1_seq_read fndecl 3 4107 NULL
++mlx4_en_get_num_flows_fndecl_4078_fns mlx4_en_get_num_flows fndecl 0 4078 NULL
++kvm_vcpu_read_guest_page_fndecl_4083_fns kvm_vcpu_read_guest_page fndecl 2-5 4083 NULL
+__rvt_alloc_mr_fndecl_4129_fns __rvt_alloc_mr fndecl 1 4129 NULL
+struct_size_rmi_register_descriptor_4163_fns struct_size rmi_register_descriptor 0 4163 NULL
+tool_spadfn_read_fndecl_4176_fns tool_spadfn_read fndecl 3 4176 NULL
+max_rx_urb_irda_usb_cb_4182_fns max_rx_urb irda_usb_cb 0 4182 NULL
-+saa7146_vmalloc_build_pgtable_fndecl_4183_fns saa7146_vmalloc_build_pgtable fndecl 2 4183 NULL
+stm_char_write_fndecl_4195_fns stm_char_write fndecl 3 4195 NULL nohasharray
+irda_setsockopt_fndecl_4195_fns irda_setsockopt fndecl 5 4195 &stm_char_write_fndecl_4195_fns
+vfs_getxattr_fndecl_4203_fns vfs_getxattr fndecl 0 4203 NULL
-+auxv_size_prctl_mm_map_4208_fns auxv_size prctl_mm_map 0 4208 NULL
-+nci_hci_set_param_fndecl_4215_fns nci_hci_set_param fndecl 5 4215 NULL
-+ath10k_write_htt_max_amsdu_ampdu_fndecl_4223_fns ath10k_write_htt_max_amsdu_ampdu fndecl 3 4223 NULL
+dlm_lock_fndecl_4225_fns dlm_lock fndecl 6 4225 NULL nohasharray
+nilfs_segbuf_map_fndecl_4225_fns nilfs_segbuf_map fndecl 2 4225 &dlm_lock_fndecl_4225_fns
+num_lut_dmm_4228_fns num_lut dmm 0 4228 NULL
-+len_bpf_prog_4232_fns len bpf_prog 0 4232 NULL
+cfg80211_mlme_register_mgmt_fndecl_4255_fns cfg80211_mlme_register_mgmt fndecl 5 4255 NULL
-+ntids_tid_info_4263_fns ntids tid_info 0 4263 NULL
+qlcnic_sysfs_read_pci_config_fndecl_4270_fns qlcnic_sysfs_read_pci_config fndecl 6 4270 NULL nohasharray
+xgbe_init_ring_fndecl_4270_fns xgbe_init_ring fndecl 3 4270 &qlcnic_sysfs_read_pci_config_fndecl_4270_fns
-+mrp_request_join_fndecl_4281_fns mrp_request_join fndecl 4 4281 NULL
+mangle_name_fndecl_4288_fns mangle_name fndecl 0 4288 NULL
++connector_count_drm_fb_helper_4290_fns connector_count drm_fb_helper 0 4290 NULL
+cgroup_task_count_fndecl_4297_fns cgroup_task_count fndecl 0 4297 NULL
+key_size_pkcs1pad_ctx_4303_fns key_size pkcs1pad_ctx 0 4303 NULL
+raid56_alloc_missing_rbio_fndecl_4316_fns raid56_alloc_missing_rbio fndecl 4 4316 NULL
+ps_upsd_max_apturn_read_fndecl_4317_fns ps_upsd_max_apturn_read fndecl 3 4317 NULL
+ax25_send_frame_fndecl_4335_fns ax25_send_frame fndecl 2 4335 NULL
-+iwl_dbgfs_rx_queue_read_fndecl_4340_fns iwl_dbgfs_rx_queue_read fndecl 3 4340 NULL
-+ath10k_mem_value_write_fndecl_4399_fns ath10k_mem_value_write fndecl 3 4399 NULL
++stripe_len_btrfs_raid_bio_4340_fns stripe_len btrfs_raid_bio 0 4340 NULL
+pxad_prep_dma_cyclic_fndecl_4411_fns pxad_prep_dma_cyclic fndecl 4-3 4411 NULL
+nfc_llcp_build_tlv_fndecl_4419_fns nfc_llcp_build_tlv fndecl 3 4419 NULL
+batadv_tvlv_container_register_fndecl_4435_fns batadv_tvlv_container_register fndecl 5 4435 NULL
+jfs_fsync_fndecl_4436_fns jfs_fsync fndecl 2-3 4436 NULL
++nfsd_read_fndecl_4451_fns nfsd_read fndecl 5 4451 NULL
+compress_raw_buf_fndecl_4453_fns compress_raw_buf fndecl 0 4453 NULL
+n_comedi_insn_4458_fns n comedi_insn 0 4458 NULL
+bm_status_read_fndecl_4460_fns bm_status_read fndecl 3 4460 NULL
++sftid_base_tid_info_4462_fns sftid_base tid_info 0 4462 NULL
+rx_ring_size_altera_tse_private_4470_fns rx_ring_size altera_tse_private 0 4470 NULL
+sddr09_read22_fndecl_4476_fns sddr09_read22 fndecl 3-4-6 4476 NULL
+ocfs2_control_message_fndecl_4479_fns ocfs2_control_message fndecl 3 4479 NULL
-+__spi_split_transfer_maxsize_fndecl_4482_fns __spi_split_transfer_maxsize fndecl 4 4482 NULL
+debugfs_run_read_fndecl_4532_fns debugfs_run_read fndecl 3 4532 NULL
+map_private_extent_buffer_fndecl_4542_fns map_private_extent_buffer fndecl 0 4542 NULL
-+ath10k_read_pktlog_filter_fndecl_4544_fns ath10k_read_pktlog_filter fndecl 3 4544 NULL
+nr_chans_solo_dev_4552_fns nr_chans solo_dev 0 4552 NULL
+acpi_read_slow_fndecl_4554_fns acpi_read_slow fndecl 3-2 4554 NULL
+LoadBitmap_fndecl_4569_fns LoadBitmap fndecl 2 4569 NULL
+ptr_ring_resize_multiple_fndecl_4573_fns ptr_ring_resize_multiple fndecl 2-3 4573 NULL
+wilc_spi_tx_fndecl_4583_fns wilc_spi_tx fndecl 3 4583 NULL
-+aqm_read_fndecl_4611_fns aqm_read fndecl 3 4611 NULL
++hdr_dwords_verbs_txreq_4608_fns hdr_dwords verbs_txreq 0 4608 NULL
++tm6000_i2c_send_regs_fndecl_4617_fns tm6000_i2c_send_regs fndecl 5 4617 NULL
+mbox_test_message_write_fndecl_4627_fns mbox_test_message_write fndecl 3 4627 NULL
+bcache_major_vardecl_super_c_4677_fns bcache_major vardecl_super.c 0 4677 NULL
++dm_get_reserved_bio_based_ios_fndecl_4680_fns dm_get_reserved_bio_based_ios fndecl 0 4680 NULL
+send_section_cnt_netvsc_device_4698_fns send_section_cnt netvsc_device 0 4698 NULL
+btrfs_header_nritems_fndecl_4699_fns btrfs_header_nritems fndecl 0 4699 NULL
-+iwl_parse_nvm_mcc_info_fndecl_4702_fns iwl_parse_nvm_mcc_info fndecl 3 4702 NULL nohasharray
-+single_open_fndecl_4702_fns single_open fndecl 0 4702 &iwl_parse_nvm_mcc_info_fndecl_4702_fns
++iwl_parse_nvm_mcc_info_fndecl_4702_fns iwl_parse_nvm_mcc_info fndecl 3 4702 NULL
+gfs2_glock_nq_m_fndecl_4712_fns gfs2_glock_nq_m fndecl 1 4712 NULL
+snd_cs4281_BA1_read_fndecl_4720_fns snd_cs4281_BA1_read fndecl 5 4720 NULL
+tx_tx_burst_programmed_read_fndecl_4723_fns tx_tx_burst_programmed_read fndecl 3 4723 NULL
++smk_set_cipso_fndecl_4744_fns smk_set_cipso fndecl 3 4744 NULL
+acpi_rs_set_resource_source_fndecl_4776_fns acpi_rs_set_resource_source fndecl 0-2 4776 NULL
-+max_tfr_mmc_test_area_4780_fns max_tfr mmc_test_area 0 4780 NULL
+__kfifo_from_user_fndecl_4796_fns __kfifo_from_user fndecl 3 4796 NULL
+axi_dmac_alloc_desc_fndecl_4833_fns axi_dmac_alloc_desc fndecl 1 4833 NULL
+read_buf_fndecl_4838_fns read_buf fndecl 2 4838 NULL
+btrfs_get_32_fndecl_4847_fns btrfs_get_32 fndecl 0 4847 NULL
++max_tgts_snic_fw_info_4861_fns max_tgts snic_fw_info 0 4861 NULL
+attach_hdlc_protocol_fndecl_4865_fns attach_hdlc_protocol fndecl 3 4865 NULL
-+s_desc_per_block_ext4_sb_info_4867_fns s_desc_per_block ext4_sb_info 0 4867 NULL nohasharray
-+gfn_to_hva_memslot_prot_fndecl_4867_fns gfn_to_hva_memslot_prot fndecl 2 4867 &s_desc_per_block_ext4_sb_info_4867_fns
++gfn_to_hva_memslot_prot_fndecl_4867_fns gfn_to_hva_memslot_prot fndecl 2 4867 NULL
+mlx5_ib_alloc_mr_fndecl_4870_fns mlx5_ib_alloc_mr fndecl 3 4870 NULL
++op_remote_addr_rm_atomic_op_4890_fns op_remote_addr rm_atomic_op 0 4890 NULL
++mlx4_get_eqs_per_port_fndecl_4892_fns mlx4_get_eqs_per_port fndecl 0 4892 NULL
++credits_send_context_info_4894_fns credits send_context_info 0 4894 NULL
+SYSC_fgetxattr_fndecl_4904_fns SYSC_fgetxattr fndecl 4 4904 NULL
++build_verbs_ulp_payload_fndecl_4906_fns build_verbs_ulp_payload fndecl 3 4906 NULL
+diva_um_idi_read_fndecl_4912_fns diva_um_idi_read fndecl 0 4912 NULL
+tree_mod_log_eb_move_fndecl_4920_fns tree_mod_log_eb_move fndecl 5 4920 NULL
-+read_tape_fndecl_4950_fns read_tape fndecl 2 4950 NULL
-+aat2870_reg_write_file_fndecl_4965_fns aat2870_reg_write_file fndecl 3 4965 NULL
+fuse_conn_limit_read_fndecl_4967_fns fuse_conn_limit_read fndecl 3 4967 NULL
+team_options_register_fndecl_4968_fns team_options_register fndecl 3 4968 NULL
+reiserfs_dir_fsync_fndecl_4971_fns reiserfs_dir_fsync fndecl 2-3 4971 NULL
-+iwl_mvm_power_mac_dbgfs_read_fndecl_4976_fns iwl_mvm_power_mac_dbgfs_read fndecl 0 4976 NULL
-+scif_send_fndecl_4988_fns scif_send fndecl 3 4988 NULL
++stripe_unit_ore_layout_4991_fns stripe_unit ore_layout 0 4991 NULL
+tx_tx_retry_per_rate_read_fndecl_5009_fns tx_tx_retry_per_rate_read fndecl 3 5009 NULL
+bulk_in_size_usb_idmouse_5017_fns bulk_in_size usb_idmouse 0 5017 NULL
+ldebugfs_fid_write_common_fndecl_5049_fns ldebugfs_fid_write_common fndecl 2 5049 NULL
+jffs2_fsync_fndecl_5052_fns jffs2_fsync fndecl 2-3 5052 NULL
+offset_SVGAGuestPtr_5056_fns offset SVGAGuestPtr 0 5056 NULL
-+reg_create_fndecl_5061_fns reg_create fndecl 6 5061 NULL
+kvm_vcpu_gfn_to_pfn_atomic_fndecl_5062_fns kvm_vcpu_gfn_to_pfn_atomic fndecl 2 5062 NULL
+tomoyo_commit_ok_fndecl_5076_fns tomoyo_commit_ok fndecl 2 5076 NULL
+read_flush_pipefs_fndecl_5080_fns read_flush_pipefs fndecl 3 5080 NULL
+ceph_alloc_page_vector_fndecl_5125_fns ceph_alloc_page_vector fndecl 1 5125 NULL
-+iwl_dbgfs_rx_handlers_read_fndecl_5127_fns iwl_dbgfs_rx_handlers_read fndecl 3 5127 NULL
++ccp_init_sg_workarea_fndecl_5128_fns ccp_init_sg_workarea fndecl 4 5128 NULL
+fnic_stats_debugfs_read_fndecl_5139_fns fnic_stats_debugfs_read fndecl 3 5139 NULL
-+__nvme_submit_user_cmd_fndecl_5142_fns __nvme_submit_user_cmd fndecl 6 5142 NULL nohasharray
-+echo_client_prep_commit_fndecl_5142_fns echo_client_prep_commit fndecl 8 5142 &__nvme_submit_user_cmd_fndecl_5142_fns
++echo_client_prep_commit_fndecl_5142_fns echo_client_prep_commit fndecl 8 5142 NULL
+lps_per_blk_nvm_dev_5145_fns lps_per_blk nvm_dev 0 5145 NULL
-+kmemleak_scan_area_fndecl_5155_fns kmemleak_scan_area fndecl 2 5155 NULL
+o2hb_debug_create_fndecl_5163_fns o2hb_debug_create fndecl 4 5163 NULL
+wep_packets_read_fndecl_5164_fns wep_packets_read fndecl 3 5164 NULL
+sq905_read_data_fndecl_5229_fns sq905_read_data fndecl 0 5229 NULL
+cnt_nfp_net_tx_ring_5239_fns cnt nfp_net_tx_ring 0 5239 NULL
+nr_extents__ntfs_inode_5242_fns nr_extents _ntfs_inode 0 5242 NULL
+sys_modify_ldt_fndecl_5275_fns sys_modify_ldt fndecl 3 5275 NULL
-+ieee80211_if_read_element_ttl_fndecl_5286_fns ieee80211_if_read_element_ttl fndecl 3 5286 NULL
+drm_ht_create_fndecl_5302_fns drm_ht_create fndecl 2 5302 NULL
-+tx_nr_rings_bnxt_5306_fns tx_nr_rings bnxt 0 5306 NULL
+sctp_setsockopt_events_fndecl_5309_fns sctp_setsockopt_events fndecl 3 5309 NULL
+thermal_tx_stop_read_fndecl_5310_fns thermal_tx_stop_read fndecl 3 5310 NULL
+devm_mdiobus_alloc_size_fndecl_5317_fns devm_mdiobus_alloc_size fndecl 2 5317 NULL
-+___alloc_bootmem_node_fndecl_5329_fns ___alloc_bootmem_node fndecl 2 5329 NULL
+comedi_isadma_alloc_fndecl_5342_fns comedi_isadma_alloc fndecl 2 5342 NULL
-+snapshot_write_next_fndecl_5354_fns snapshot_write_next fndecl 0 5354 NULL
+read_user_buf_avail_tomoyo_io_buffer_5361_fns read_user_buf_avail tomoyo_io_buffer 0 5361 NULL
+mangle_packet_fndecl_5371_fns mangle_packet fndecl 7-9 5371 NULL
+regset_tls_set_fndecl_5384_fns regset_tls_set fndecl 4 5384 NULL
+iscsi_create_flashnode_sess_fndecl_5394_fns iscsi_create_flashnode_sess fndecl 4 5394 NULL
-+port_mad_size_fndecl_5434_fns port_mad_size fndecl 0 5434 NULL
++snd_hda_get_connections_fndecl_5398_fns snd_hda_get_connections fndecl 0 5398 NULL
++rq_size_i40iw_puda_rsrc_info_5413_fns rq_size i40iw_puda_rsrc_info 0 5413 NULL
++value_xen_pci_op_5416_fns value xen_pci_op 0 5416 NULL
+wilc_add_wep_key_bss_sta_fndecl_5436_fns wilc_add_wep_key_bss_sta fndecl 3 5436 NULL
-+wiidebug_eeprom_read_fndecl_5523_fns wiidebug_eeprom_read fndecl 3 5523 NULL
-+tool_dbfn_read_fndecl_5532_fns tool_dbfn_read fndecl 3 5532 NULL nohasharray
-+debug_output_fndecl_5532_fns debug_output fndecl 3 5532 &tool_dbfn_read_fndecl_5532_fns
++smk_write_rules_list_fndecl_5526_fns smk_write_rules_list fndecl 3 5526 NULL
++debug_output_fndecl_5532_fns debug_output fndecl 3 5532 NULL nohasharray
++tool_dbfn_read_fndecl_5532_fns tool_dbfn_read fndecl 3 5532 &debug_output_fndecl_5532_fns
+slabinfo_write_fndecl_5563_fns slabinfo_write fndecl 3 5563 NULL
+iowarrior_write_fndecl_5567_fns iowarrior_write fndecl 3 5567 NULL
+tool_peer_mw_trans_read_fndecl_5573_fns tool_peer_mw_trans_read fndecl 3 5573 NULL
-+from_buffer_fndecl_5586_fns from_buffer fndecl 3 5586 NULL
-+horus3a_i2c_debug_fndecl_5589_fns horus3a_i2c_debug fndecl 5 5589 NULL
++data_width_i2s_clk_config_data_5595_fns data_width i2s_clk_config_data 0 5595 NULL
+num_scanouts_virtio_gpu_device_5598_fns num_scanouts virtio_gpu_device 0 5598 NULL
+size_sched_attr_5599_fns size sched_attr 0 5599 NULL nohasharray
-+memory_map_bottom_up_fndecl_5599_fns memory_map_bottom_up fndecl 2 5599 &size_sched_attr_5599_fns
-+wbcir_tx_fndecl_5632_fns wbcir_tx fndecl 3 5632 NULL
++memory_map_bottom_up_fndecl_5599_fns memory_map_bottom_up fndecl 2 5599 &size_sched_attr_5599_fns nohasharray
++max_rif_mlxsw_resources_5599_fns max_rif mlxsw_resources 0 5599 &memory_map_bottom_up_fndecl_5599_fns
++xfs_cui_init_fndecl_5632_fns xfs_cui_init fndecl 2 5632 NULL nohasharray
++wbcir_tx_fndecl_5632_fns wbcir_tx fndecl 3 5632 &xfs_cui_init_fndecl_5632_fns
+dev_counters_read_fndecl_5635_fns dev_counters_read fndecl 3 5635 NULL
-+tx_ring_size_altera_tse_private_5654_fns tx_ring_size altera_tse_private 0 5654 NULL nohasharray
-+iwl_dbgfs_reply_tx_error_read_fndecl_5654_fns iwl_dbgfs_reply_tx_error_read fndecl 3 5654 &tx_ring_size_altera_tse_private_5654_fns
++tx_ring_size_altera_tse_private_5654_fns tx_ring_size altera_tse_private 0 5654 NULL
+ucma_query_fndecl_5679_fns ucma_query fndecl 4 5679 NULL
-+il_dbgfs_rxon_filter_flags_read_fndecl_5698_fns il_dbgfs_rxon_filter_flags_read fndecl 3 5698 NULL
++bio_alloc_mddev_fndecl_5685_fns bio_alloc_mddev fndecl 2 5685 NULL
+batadv_tt_save_orig_buffer_fndecl_5707_fns batadv_tt_save_orig_buffer fndecl 4 5707 NULL
-+debug_read_fndecl_5737_fns debug_read fndecl 3 5737 NULL
-+max_order_mlx4_buddy_5738_fns max_order mlx4_buddy 0 5738 NULL
+event_tx_stuck_read_fndecl_5754_fns event_tx_stuck_read fndecl 3 5754 NULL
+console_size_ramoops_platform_data_5786_fns console_size ramoops_platform_data 0 5786 NULL
++msix_count_i40e_info_5794_fns msix_count i40e_info 0 5794 NULL
+prefetch_len_ath10k_htt_5811_fns prefetch_len ath10k_htt 0 5811 NULL
+hid_hw_raw_request_fndecl_5827_fns hid_hw_raw_request fndecl 0 5827 NULL
++dvbdmx_write_fndecl_5836_fns dvbdmx_write fndecl 3 5836 NULL
+interpret_user_input_fndecl_5842_fns interpret_user_input fndecl 2 5842 NULL
+get_n_events_by_type_fndecl_5850_fns get_n_events_by_type fndecl 0 5850 NULL
+iproc_asiu_setup_fndecl_5902_fns iproc_asiu_setup fndecl 4 5902 NULL
-+layout_in_gaps_fndecl_5933_fns layout_in_gaps fndecl 2 5933 NULL
++layout_in_gaps_fndecl_5933_fns layout_in_gaps fndecl 2 5933 NULL nohasharray
++sq_size_i40iw_puda_rsrc_info_5933_fns sq_size i40iw_puda_rsrc_info 0 5933 &layout_in_gaps_fndecl_5933_fns
++write_pmem_fndecl_5936_fns write_pmem fndecl 4 5936 NULL
+gfn_to_pfn_atomic_fndecl_5942_fns gfn_to_pfn_atomic fndecl 2 5942 NULL
+sysfs_create_dir_ns_fndecl_5962_fns sysfs_create_dir_ns fndecl 0 5962 NULL
+orangefs_prepare_cdm_array_fndecl_5968_fns orangefs_prepare_cdm_array fndecl 0 5968 NULL
-+create_gpadl_header_fndecl_5995_fns create_gpadl_header fndecl 2 5995 NULL
-+revalidate_fndecl_6000_fns revalidate fndecl 2 6000 NULL nohasharray
-+acpi_install_table_fndecl_6000_fns acpi_install_table fndecl 1 6000 &revalidate_fndecl_6000_fns
++do_rc_ack_fndecl_5983_fns do_rc_ack fndecl 3 5983 NULL
++acpi_install_table_fndecl_6000_fns acpi_install_table fndecl 1 6000 NULL nohasharray
++revalidate_fndecl_6000_fns revalidate fndecl 2 6000 &acpi_install_table_fndecl_6000_fns
+drm_fb_helper_init_fndecl_6007_fns drm_fb_helper_init fndecl 3-4 6007 NULL nohasharray
+map_words_netvsc_device_6007_fns map_words netvsc_device 0 6007 &drm_fb_helper_init_fndecl_6007_fns
+orig_sg_segs_osst_buffer_6013_fns orig_sg_segs osst_buffer 0 6013 NULL
+brcmf_usbdev_qinit_fndecl_6017_fns brcmf_usbdev_qinit fndecl 2 6017 NULL
+icv_trunc_len_ah_data_6025_fns icv_trunc_len ah_data 0 6025 NULL
-+ceph_create_snap_context_fndecl_6041_fns ceph_create_snap_context fndecl 1 6041 NULL
-+scif_rb_space_fndecl_6052_fns scif_rb_space fndecl 0 6052 NULL
-+sta_last_seq_ctrl_read_fndecl_6065_fns sta_last_seq_ctrl_read fndecl 3 6065 NULL
+read_extent_buffer_to_user_fndecl_6118_fns read_extent_buffer_to_user fndecl 3-4 6118 NULL
+pwc_get_fps_Kiara_fndecl_6127_fns pwc_get_fps_Kiara fndecl 0 6127 NULL
+pwr_enable_ps_read_fndecl_6149_fns pwr_enable_ps_read fndecl 3 6149 NULL
@@ -205210,133 +209817,119 @@ index 0000000..510c554
+rcl_nrefcalls_referring_call_list_6169_fns rcl_nrefcalls referring_call_list 0 6169 NULL nohasharray
+qgroup_account_snapshot_fndecl_6169_fns qgroup_account_snapshot fndecl 5 6169 &rcl_nrefcalls_referring_call_list_6169_fns
+sensor_write_regs_fndecl_6181_fns sensor_write_regs fndecl 0 6181 NULL
-+venus_rename_fndecl_6200_fns venus_rename fndecl 4-5 6200 NULL
+exofs_read_lookup_dev_table_fndecl_6230_fns exofs_read_lookup_dev_table fndecl 3 6230 NULL
+setup_sgl_fndecl_6242_fns setup_sgl fndecl 4-5 6242 NULL
-+send_mbox_fndecl_6260_fns send_mbox fndecl 4 6260 NULL
+brcmf_usb_attach_fndecl_6261_fns brcmf_usb_attach fndecl 2-3 6261 NULL
+sb_nextnum_nilfs_segment_buffer_6275_fns sb_nextnum nilfs_segment_buffer 0 6275 NULL
+command_setsensorfps_fndecl_6277_fns command_setsensorfps fndecl 0 6277 NULL
+nrealwriters_stress_lock_torture_cxt_6279_fns nrealwriters_stress lock_torture_cxt 0 6279 NULL
-+_iwl_dbgfs_set_nic_temperature_write_fndecl_6303_fns _iwl_dbgfs_set_nic_temperature_write fndecl 3 6303 NULL
-+count_leafs_fndecl_6305_fns count_leafs fndecl 0 6305 NULL
-+iin_wMaxPacketSize_usbtmc_device_data_6306_fns iin_wMaxPacketSize usbtmc_device_data 0 6306 NULL
+sn9c2028_command_fndecl_6307_fns sn9c2028_command fndecl 0 6307 NULL
-+em28xx_audio_ep_packet_size_fndecl_6311_fns em28xx_audio_ep_packet_size fndecl 0 6311 NULL
+shadow_fetch_fndecl_6315_fns shadow_fetch fndecl 3 6315 NULL
+len_ethtool_gstrings_6325_fns len ethtool_gstrings 0 6325 NULL
-+cipso_v4_gentag_rbm_fndecl_6335_fns cipso_v4_gentag_rbm fndecl 0 6335 NULL
+ray_cs_essid_proc_write_fndecl_6336_fns ray_cs_essid_proc_write fndecl 3 6336 NULL
+virtio_cread32_fndecl_6338_fns virtio_cread32 fndecl 0 6338 NULL
-+orinoco_set_key_fndecl_6341_fns orinoco_set_key fndecl 7 6341 NULL
++i40e_align_l2obj_base_fndecl_6341_fns i40e_align_l2obj_base fndecl 1 6341 NULL
+init_per_cpu_fndecl_6347_fns init_per_cpu fndecl 1 6347 NULL
-+sisusb_send_bulk_msg_fndecl_6363_fns sisusb_send_bulk_msg fndecl 3 6363 NULL
+dev_pm_opp_get_opp_count_fndecl_6372_fns dev_pm_opp_get_opp_count fndecl 0 6372 NULL
-+dccp_feat_register_sp_fndecl_6377_fns dccp_feat_register_sp fndecl 5 6377 NULL
+partition_sched_domains_fndecl_6386_fns partition_sched_domains fndecl 1 6386 NULL
-+lpfc_debugfs_dif_err_write_fndecl_6403_fns lpfc_debugfs_dif_err_write fndecl 3 6403 NULL
-+nvme_iod_alloc_size_fndecl_6444_fns nvme_iod_alloc_size fndecl 3-0 6444 NULL
++x509_note_serial_fndecl_6424_fns x509_note_serial fndecl 5 6424 NULL
++parse_dcb20_entry_fndecl_6440_fns parse_dcb20_entry fndecl 3 6440 NULL
+i40iw_qp_roundup_fndecl_6447_fns i40iw_qp_roundup fndecl 1 6447 NULL
+probe_kernel_write_fndecl_6490_fns probe_kernel_write fndecl 3 6490 NULL
-+bytes_cifs_readdata_6533_fns bytes cifs_readdata 0 6533 NULL
-+max_vfs_vardecl_igb_main_c_6547_fns max_vfs vardecl_igb_main.c 0 6547 NULL
++lbs_highrssi_write_fndecl_6520_fns lbs_highrssi_write fndecl 3 6520 NULL
+neigh_hash_alloc_fndecl_6568_fns neigh_hash_alloc fndecl 1 6568 NULL nohasharray
+sddr09_read21_fndecl_6568_fns sddr09_read21 fndecl 3-4-6 6568 &neigh_hash_alloc_fndecl_6568_fns
+acpi_ut_create_package_object_fndecl_6569_fns acpi_ut_create_package_object fndecl 1 6569 NULL
+command_setcolourparams_fndecl_6571_fns command_setcolourparams fndecl 0 6571 NULL nohasharray
+ath6kl_wmi_connect_cmd_fndecl_6571_fns ath6kl_wmi_connect_cmd fndecl 10 6571 &command_setcolourparams_fndecl_6571_fns
-+ieee80211_if_read_dot11MeshHWMPactivePathToRootTimeout_fndecl_6593_fns ieee80211_if_read_dot11MeshHWMPactivePathToRootTimeout fndecl 3 6593 NULL
++wil_write_file_rxon_fndecl_6590_fns wil_write_file_rxon fndecl 3 6590 NULL
+osst_execute_fndecl_6612_fns osst_execute fndecl 7 6612 NULL
-+num_large_buffers_ql3_adapter_6615_fns num_large_buffers ql3_adapter 0 6615 NULL
++size_synthhid_msg_hdr_6615_fns size synthhid_msg_hdr 0 6615 NULL nohasharray
++num_large_buffers_ql3_adapter_6615_fns num_large_buffers ql3_adapter 0 6615 &size_synthhid_msg_hdr_6615_fns
+SYSC_migrate_pages_fndecl_6634_fns SYSC_migrate_pages fndecl 2 6634 NULL
+packet_setsockopt_fndecl_6637_fns packet_setsockopt fndecl 5 6637 NULL
+set_number_fndecl_6651_fns set_number fndecl 2 6651 NULL
+nilfs_segment_list_add_fndecl_6665_fns nilfs_segment_list_add fndecl 2 6665 NULL
+pccard_store_cis_fndecl_6675_fns pccard_store_cis fndecl 6 6675 NULL
-+nroots_rs_control_6706_fns nroots rs_control 0 6706 NULL nohasharray
-+gsm_control_message_fndecl_6706_fns gsm_control_message fndecl 4 6706 &nroots_rs_control_6706_fns
-+do_ipv6_setsockopt_fndecl_6708_fns do_ipv6_setsockopt fndecl 5 6708 NULL
-+qdisc_class_hash_alloc_fndecl_6725_fns qdisc_class_hash_alloc fndecl 1 6725 NULL nohasharray
-+size_mvpp2_txq_pcpu_6725_fns size mvpp2_txq_pcpu 0 6725 &qdisc_class_hash_alloc_fndecl_6725_fns
++nroots_rs_control_6706_fns nroots rs_control 0 6706 NULL
++qdisc_class_hash_alloc_fndecl_6725_fns qdisc_class_hash_alloc fndecl 1 6725 NULL
+pagesize_sddr09_card_info_6735_fns pagesize sddr09_card_info 0 6735 NULL
+hostif_mib_set_request_fndecl_6736_fns hostif_mib_set_request fndecl 3 6736 NULL
+gnttab_alloc_grant_references_fndecl_6739_fns gnttab_alloc_grant_references fndecl 1 6739 NULL
-+alloc_trace_uprobe_fndecl_6740_fns alloc_trace_uprobe fndecl 3 6740 NULL
-+num_vectors_qed_int_param_6741_fns num_vectors qed_int_param 0 6741 NULL
+_read_and_match_data_map_fndecl_6747_fns _read_and_match_data_map fndecl 2 6747 NULL
+rfcomm_sock_setsockopt_fndecl_6749_fns rfcomm_sock_setsockopt fndecl 5 6749 NULL
-+um_idi_write_fndecl_6758_fns um_idi_write fndecl 3 6758 NULL
-+gfs2_alloc_sort_buffer_fndecl_6768_fns gfs2_alloc_sort_buffer fndecl 1 6768 NULL
+alloc_ring_fndecl_6773_fns alloc_ring fndecl 2-4 6773 NULL
+max_vals_input_dev_6777_fns max_vals input_dev 0 6777 NULL
+mmc_send_bus_test_fndecl_6782_fns mmc_send_bus_test fndecl 4 6782 NULL
+csio_mem_read_fndecl_6812_fns csio_mem_read fndecl 3 6812 NULL
-+debugfs_write_file_bool_fndecl_6814_fns debugfs_write_file_bool fndecl 3 6814 NULL
+pwr_power_save_off_read_fndecl_6816_fns pwr_power_save_off_read fndecl 3 6816 NULL
-+xlbd_reserve_minors_fndecl_6830_fns xlbd_reserve_minors fndecl 1-2 6830 NULL
++minor_miscdevice_6818_fns minor miscdevice 0 6818 NULL
++xlbd_reserve_minors_fndecl_6830_fns xlbd_reserve_minors fndecl 2-1 6830 NULL
+lcd_proc_write_fndecl_6844_fns lcd_proc_write fndecl 3 6844 NULL
-+__ceph_getxattr_fndecl_6849_fns __ceph_getxattr fndecl 0 6849 NULL
+hpfs_file_fsync_fndecl_6851_fns hpfs_file_fsync fndecl 2-3 6851 NULL
+ci_role_write_fndecl_6855_fns ci_role_write fndecl 3 6855 NULL
-+size_vb2_fileio_buf_6875_fns size vb2_fileio_buf 0 6875 NULL
++buffer_start_add_fndecl_6857_fns buffer_start_add fndecl 0 6857 NULL
+__kfifo_in_r_fndecl_6892_fns __kfifo_in_r fndecl 4-3 6892 NULL
-+adis16136_show_serial_fndecl_6897_fns adis16136_show_serial fndecl 3 6897 NULL
++cdm_element_count_vardecl_orangefs_debugfs_c_6895_fns cdm_element_count vardecl_orangefs-debugfs.c 0 6895 NULL
+pwr_sleep_time_count_read_fndecl_6914_fns pwr_sleep_time_count_read fndecl 3 6914 NULL
++multi_src_desc_6933_fns multi src_desc 0 6933 NULL
+nvram_pagesize_tg3_6938_fns nvram_pagesize tg3 0 6938 NULL
+tlv_put_u64_fndecl_6968_fns tlv_put_u64 fndecl 0 6968 NULL
-+mwifiex_verext_write_fndecl_6972_fns mwifiex_verext_write fndecl 3 6972 NULL
+pvr2_v4l2_read_fndecl_6981_fns pvr2_v4l2_read fndecl 3 6981 NULL
+bits_from_user_fndecl_6996_fns bits_from_user fndecl 2-3 6996 NULL
-+gnttab_max_grant_frames_fndecl_7002_fns gnttab_max_grant_frames fndecl 0 7002 NULL
-+num_rss_qede_dev_7011_fns num_rss qede_dev 0 7011 NULL
+fpregs_get_fndecl_7041_fns fpregs_get fndecl 4 7041 NULL
-+kvm_read_guest_page_fndecl_7049_fns kvm_read_guest_page fndecl 5-2 7049 NULL
++kvm_read_guest_page_fndecl_7049_fns kvm_read_guest_page fndecl 2-5 7049 NULL
++srq_entry_sz_mlx4_dev_cap_7052_fns srq_entry_sz mlx4_dev_cap 0 7052 NULL
+SYSC_pselect6_fndecl_7055_fns SYSC_pselect6 fndecl 1 7055 NULL
+txd_cnt_nfp_net_7058_fns txd_cnt nfp_net 0 7058 NULL
+cryptd_alloc_instance_fndecl_7059_fns cryptd_alloc_instance fndecl 2-3 7059 NULL
++lua_sysfs_read_fndecl_7069_fns lua_sysfs_read fndecl 6 7069 NULL
+rx_pending_sky2_port_7090_fns rx_pending sky2_port 0 7090 NULL
-+get_vm_area_fndecl_7091_fns get_vm_area fndecl 1 7091 NULL
+mpi_alloc_fndecl_7101_fns mpi_alloc fndecl 1 7101 NULL
+paging32_gpte_to_gfn_lvl_fndecl_7104_fns paging32_gpte_to_gfn_lvl fndecl 0-2-1 7104 NULL
+wil_tid_ampdu_rx_alloc_fndecl_7119_fns wil_tid_ampdu_rx_alloc fndecl 2 7119 NULL
+ftrace_size_ramoops_platform_data_7124_fns ftrace_size ramoops_platform_data 0 7124 NULL
-+report_size_hid_global_7127_fns report_size hid_global 0 7127 NULL nohasharray
-+dfs_file_read_fndecl_7127_fns dfs_file_read fndecl 3 7127 &report_size_hid_global_7127_fns
++dfs_file_read_fndecl_7127_fns dfs_file_read fndecl 3 7127 NULL
+acpi_rs_set_resource_length_fndecl_7131_fns acpi_rs_set_resource_length fndecl 1 7131 NULL
-+nstids_tid_info_7139_fns nstids tid_info 0 7139 NULL
++nv50_disp_new__fndecl_7152_fns nv50_disp_new_ fndecl 4 7152 NULL
+selinux_inode_setsecurity_fndecl_7159_fns selinux_inode_setsecurity fndecl 4 7159 NULL
+mfd_add_devices_fndecl_7183_fns mfd_add_devices fndecl 4 7183 NULL
++remote_addr_ib_atomic_wr_7192_fns remote_addr ib_atomic_wr 0 7192 NULL
+ide_init_port_fndecl_7207_fns ide_init_port fndecl 2 7207 NULL
-+_iwl_dbgfs_bt_force_ant_write_fndecl_7214_fns _iwl_dbgfs_bt_force_ant_write fndecl 3 7214 NULL
++max_id_Scsi_Host_7217_fns max_id Scsi_Host 0 7217 NULL
++ll_unstable_stats_seq_write_fndecl_7255_fns ll_unstable_stats_seq_write fndecl 3 7255 NULL
++num_asq_entries_i40e_adminq_info_7278_fns num_asq_entries i40e_adminq_info 0 7278 NULL
+__copy_to_user_swizzled_fndecl_7295_fns __copy_to_user_swizzled fndecl 3-4 7295 NULL
++fdir_filter_count_ixgbe_adapter_7322_fns fdir_filter_count ixgbe_adapter 0 7322 NULL
+drm_malloc_ab_fndecl_7340_fns drm_malloc_ab fndecl 1-2 7340 NULL
+pvr2_i2c_read_fndecl_7344_fns pvr2_i2c_read fndecl 4-6 7344 NULL
++sys_fadvise64_fndecl_7365_fns sys_fadvise64 fndecl 3 7365 NULL
+hfsplus_min_io_size_fndecl_7368_fns hfsplus_min_io_size fndecl 0 7368 NULL
++scsi_mode_sense_fndecl_7376_fns scsi_mode_sense fndecl 5 7376 NULL
+packetsize__rbu_data_7390_fns packetsize _rbu_data 0 7390 NULL
-+calipso_genopt_fndecl_7401_fns calipso_genopt fndecl 0 7401 NULL
-+st_write_fndecl_7417_fns st_write fndecl 3 7417 NULL
++block_ack_param_set_host_cmd_ds_11n_addba_req_7415_fns block_ack_param_set host_cmd_ds_11n_addba_req 0 7415 NULL
+alloc_idx_lebs_fndecl_7419_fns alloc_idx_lebs fndecl 2 7419 NULL
-+__kfifo_peek_n_fndecl_7422_fns __kfifo_peek_n fndecl 0 7422 NULL
+xfs_file_fsync_fndecl_7433_fns xfs_file_fsync fndecl 2-3 7433 NULL
+iio_device_add_event_fndecl_7439_fns iio_device_add_event fndecl 0 7439 NULL
-+rate_ctrl_alg_read_fndecl_7449_fns rate_ctrl_alg_read fndecl 3 7449 NULL
+stat_st_vardecl_drv_c_7451_fns stat_st vardecl_drv.c 0 7451 NULL
-+cmdline_store_fndecl_7465_fns cmdline_store fndecl 4 7465 NULL nohasharray
-+num_present_cpu_lpfc_sli4_hba_7465_fns num_present_cpu lpfc_sli4_hba 0 7465 &cmdline_store_fndecl_7465_fns
++num_present_cpu_lpfc_sli4_hba_7465_fns num_present_cpu lpfc_sli4_hba 0 7465 NULL nohasharray
++cmdline_store_fndecl_7465_fns cmdline_store fndecl 4 7465 &num_present_cpu_lpfc_sli4_hba_7465_fns
+minors_gigaset_driver_7468_fns minors gigaset_driver 0 7468 NULL
-+ieee80211_if_read_tsf_fndecl_7479_fns ieee80211_if_read_tsf fndecl 3 7479 NULL
++rxrpc_server_keyring_fndecl_7484_fns rxrpc_server_keyring fndecl 3 7484 NULL
+req_capsule_get_size_fndecl_7488_fns req_capsule_get_size fndecl 0 7488 NULL
-+calculate_inocache_hashsize_fndecl_7506_fns calculate_inocache_hashsize fndecl 1-0 7506 NULL
++calculate_inocache_hashsize_fndecl_7506_fns calculate_inocache_hashsize fndecl 0-1 7506 NULL
++relay_consume_bytes_fndecl_7510_fns relay_consume_bytes fndecl 2 7510 NULL
+alloc_disk_node_fndecl_7513_fns alloc_disk_node fndecl 1 7513 NULL
+netlink_change_ngroups_fndecl_7514_fns netlink_change_ngroups fndecl 2 7514 NULL
+src_len_akcipher_request_7526_fns src_len akcipher_request 0 7526 NULL
+size_hpi_response_header_7541_fns size hpi_response_header 0 7541 NULL
+hd_nirqs_hpet_data_7558_fns hd_nirqs hpet_data 0 7558 NULL
-+acpi_copy_property_array_u8_fndecl_7565_fns acpi_copy_property_array_u8 fndecl 0 7565 NULL
-+lpfc_debugfs_read_fndecl_7589_fns lpfc_debugfs_read fndecl 3 7589 NULL
++acpi_copy_property_array_u8_fndecl_7565_fns acpi_copy_property_array_u8 fndecl 0 7565 NULL nohasharray
++max_channels_snd_pcm_chmap_7565_fns max_channels snd_pcm_chmap 0 7565 &acpi_copy_property_array_u8_fndecl_7565_fns
+xpt_remotelen_svc_xprt_7655_fns xpt_remotelen svc_xprt 0 7655 NULL
+maxwritelen_proc_data_7659_fns maxwritelen proc_data 0 7659 NULL
+mlxsw_reg_trans_bulk_wait_fndecl_7664_fns mlxsw_reg_trans_bulk_wait fndecl 0 7664 NULL
++rds_sendmsg_fndecl_7675_fns rds_sendmsg fndecl 3 7675 NULL
+nfp_net_shadow_rx_rings_prepare_fndecl_7679_fns nfp_net_shadow_rx_rings_prepare fndecl 3 7679 NULL
+UniStrnlen_fndecl_7682_fns UniStrnlen fndecl 0 7682 NULL
+cfg80211_sme_get_conn_ies_fndecl_7687_fns cfg80211_sme_get_conn_ies fndecl 3 7687 NULL
@@ -205344,58 +209937,52 @@ index 0000000..510c554
+mxt_upload_cfg_mem_fndecl_7702_fns mxt_upload_cfg_mem fndecl 4 7702 NULL
+befs_nls2utf_fndecl_7704_fns befs_nls2utf fndecl 3 7704 NULL
+tx_tx_start_templates_read_fndecl_7711_fns tx_tx_start_templates_read fndecl 3 7711 NULL
-+access_remote_vm_fndecl_7734_fns access_remote_vm fndecl 0 7734 NULL nohasharray
-+iwl_dbgfs_txfifo_flush_write_fndecl_7734_fns iwl_dbgfs_txfifo_flush_write fndecl 3 7734 &access_remote_vm_fndecl_7734_fns
++access_remote_vm_fndecl_7734_fns access_remote_vm fndecl 0 7734 NULL
+iscsit_find_cmd_from_itt_or_dump_fndecl_7737_fns iscsit_find_cmd_from_itt_or_dump fndecl 3 7737 NULL nohasharray
+driver_state_read_fndecl_7737_fns driver_state_read fndecl 3 7737 &iscsit_find_cmd_from_itt_or_dump_fndecl_7737_fns
+ocfs2_get_suballoc_slot_bit_fndecl_7773_fns ocfs2_get_suballoc_slot_bit fndecl 2 7773 NULL
+split_mem_range_fndecl_7776_fns split_mem_range fndecl 3-4 7776 NULL
+alloc_ep_fndecl_7782_fns alloc_ep fndecl 1 7782 NULL
+pg_read_fndecl_7791_fns pg_read fndecl 3 7791 NULL
++length_scsi_mode_data_7819_fns length scsi_mode_data 0 7819 NULL
+id_avail_ipack_device_7822_fns id_avail ipack_device 0 7822 NULL
+n_stats_ethtool_stats_7823_fns n_stats ethtool_stats 0 7823 NULL
+nabs_joydev_7827_fns nabs joydev 0 7827 NULL
-+minstrel_stats_read_fndecl_7833_fns minstrel_stats_read fndecl 3 7833 NULL
+block_aligned_filename_size_ecryptfs_parse_tag_70_packet_silly_stack_7865_fns block_aligned_filename_size ecryptfs_parse_tag_70_packet_silly_stack 0 7865 NULL
+used_snd_ctl_elem_list_7883_fns used snd_ctl_elem_list 0 7883 NULL
+freecom_readdata_fndecl_7884_fns freecom_readdata fndecl 3 7884 NULL
+ath6kl_wmi_send_mgmt_cmd_fndecl_7888_fns ath6kl_wmi_send_mgmt_cmd fndecl 7 7888 NULL
-+ieee80211_if_read_dot11MeshHWMPperrMinInterval_fndecl_7889_fns ieee80211_if_read_dot11MeshHWMPperrMinInterval fndecl 3 7889 NULL
-+i2400m_unknown_barker_fndecl_7903_fns i2400m_unknown_barker fndecl 3 7903 NULL
-+uvesafb_setpalette_fndecl_7922_fns uvesafb_setpalette fndecl 2 7922 NULL
++remote_addr_ib_rdma_wr_7918_fns remote_addr ib_rdma_wr 0 7918 NULL
++psb_unlocked_ioctl_fndecl_7949_fns psb_unlocked_ioctl fndecl 2 7949 NULL
+sd_start_fndecl_7964_fns sd_start fndecl 0 7964 NULL
+squashfs_read_table_fndecl_7970_fns squashfs_read_table fndecl 3 7970 NULL
-+_sp2d_alloc_fndecl_7971_fns _sp2d_alloc fndecl 1-2-3 7971 NULL
++_sp2d_alloc_fndecl_7971_fns _sp2d_alloc fndecl 3-2 7971 NULL
++acpi_tb_install_and_load_table_fndecl_7976_fns acpi_tb_install_and_load_table fndecl 2 7976 NULL
+svcxdr_dupstr_fndecl_8016_fns svcxdr_dupstr fndecl 3 8016 NULL
++keyctl_instantiate_key_iov_fndecl_8026_fns keyctl_instantiate_key_iov fndecl 3 8026 NULL
+pd_handles_sz_MPT3SAS_ADAPTER_8057_fns pd_handles_sz MPT3SAS_ADAPTER 0 8057 NULL
+ceph_read_dir_fndecl_8062_fns ceph_read_dir fndecl 3 8062 NULL
+copy_counters_to_user_fndecl_8080_fns copy_counters_to_user fndecl 5 8080 NULL
+dvb_dvr_read_fndecl_8098_fns dvb_dvr_read fndecl 3 8098 NULL
-+sddr55_read_data_fndecl_8099_fns sddr55_read_data fndecl 4 8099 NULL nohasharray
-+error_num_frame_cts_nul_flid_read_fndecl_8099_fns error_num_frame_cts_nul_flid_read fndecl 3 8099 &sddr55_read_data_fndecl_8099_fns
++error_num_frame_cts_nul_flid_read_fndecl_8099_fns error_num_frame_cts_nul_flid_read fndecl 3 8099 NULL
+simple_transaction_read_fndecl_8103_fns simple_transaction_read fndecl 3 8103 NULL
+acpi_ut_get_resource_header_length_fndecl_8110_fns acpi_ut_get_resource_header_length fndecl 0 8110 NULL
-+__copy_user_nocache_fndecl_8122_fns __copy_user_nocache fndecl 0 8122 NULL
-+write_mem_fndecl_8137_fns write_mem fndecl 3 8137 NULL
+entry_length_fndecl_8150_fns entry_length fndecl 0 8150 NULL
-+ubifs_scanned_corruption_fndecl_8170_fns ubifs_scanned_corruption fndecl 3 8170 NULL
-+jumpshot_write_data_fndecl_8172_fns jumpshot_write_data fndecl 4 8172 NULL
-+nsftids_tid_info_8187_fns nsftids tid_info 0 8187 NULL
++sys_preadv_fndecl_8159_fns sys_preadv fndecl 3 8159 NULL
+SYSC_llistxattr_fndecl_8238_fns SYSC_llistxattr fndecl 3 8238 NULL
-+dump_data_bytes_fndecl_8240_fns dump_data_bytes fndecl 3 8240 NULL
+stk_read_fndecl_8245_fns stk_read fndecl 3 8245 NULL
+sys_sched_setaffinity_fndecl_8253_fns sys_sched_setaffinity fndecl 2 8253 NULL
+num_alloc_vsi_i40e_pf_8259_fns num_alloc_vsi i40e_pf 0 8259 NULL
+length_spi_engine_program_8261_fns length spi_engine_program 0 8261 NULL
+proc_scsi_devinfo_write_fndecl_8275_fns proc_scsi_devinfo_write fndecl 3 8275 NULL
++f2fs_grab_bio_fndecl_8295_fns f2fs_grab_bio fndecl 3 8295 NULL
+wil_read_file_recovery_fndecl_8315_fns wil_read_file_recovery fndecl 3 8315 NULL
+kobject_add_internal_fndecl_8342_fns kobject_add_internal fndecl 0 8342 NULL
-+venus_link_fndecl_8374_fns venus_link fndecl 5 8374 NULL
-+riva_get_cmap_len_fndecl_8393_fns riva_get_cmap_len fndecl 0 8393 NULL nohasharray
-+m_bch_control_8393_fns m bch_control 0 8393 &riva_get_cmap_len_fndecl_8393_fns
-+wusb_ccm_mac_fndecl_8404_fns wusb_ccm_mac fndecl 7 8404 NULL
++ch_do_scsi_fndecl_8353_fns ch_do_scsi fndecl 5 8353 NULL
++__nvm_submit_ppa_fndecl_8355_fns __nvm_submit_ppa fndecl 6 8355 NULL
++sctp_ssn_next_fndecl_8376_fns sctp_ssn_next fndecl 0 8376 NULL
++riva_get_cmap_len_fndecl_8393_fns riva_get_cmap_len fndecl 0 8393 NULL
+del_ptr_fndecl_8406_fns del_ptr fndecl 4 8406 NULL
-+length_ipw_tx_packet_8408_fns length ipw_tx_packet 0 8408 NULL
+lbs_lowrssi_read_fndecl_8417_fns lbs_lowrssi_read fndecl 3 8417 NULL
+batadv_iv_ogm_drop_bcast_own_sum_entry_fndecl_8430_fns batadv_iv_ogm_drop_bcast_own_sum_entry fndecl 2 8430 NULL
+cifs_lookup_cache_proc_write_fndecl_8447_fns cifs_lookup_cache_proc_write fndecl 3 8447 NULL
@@ -205406,7 +209993,7 @@ index 0000000..510c554
+usblp_cache_device_id_string_fndecl_8509_fns usblp_cache_device_id_string fndecl 0 8509 NULL
+strnlen_user_fndecl_8532_fns strnlen_user fndecl 0 8532 NULL
+fuse_dir_fsync_fndecl_8543_fns fuse_dir_fsync fndecl 2-3 8543 NULL
-+iwl_dbgfs_disable_ht40_write_fndecl_8599_fns iwl_dbgfs_disable_ht40_write fndecl 3 8599 NULL
++xfs_refcount_update_create_intent_fndecl_8546_fns xfs_refcount_update_create_intent fndecl 2 8546 NULL
+drm_mode_crtc_set_gamma_size_fndecl_8602_fns drm_mode_crtc_set_gamma_size fndecl 2 8602 NULL
+kmem_alloc_fndecl_8611_fns kmem_alloc fndecl 1 8611 NULL
+xattr_permission_fndecl_8624_fns xattr_permission fndecl 0 8624 NULL
@@ -205415,63 +210002,58 @@ index 0000000..510c554
+read_mem_fndecl_8661_fns read_mem fndecl 3 8661 NULL
+SYSC_sethostname_fndecl_8663_fns SYSC_sethostname fndecl 2 8663 NULL
+b_out_mon_reader_bin_8691_fns b_out mon_reader_bin 0 8691 NULL
-+data_width_stedma40_half_channel_info_8694_fns data_width stedma40_half_channel_info 0 8694 NULL
++blk_mq_update_nr_requests_fndecl_8694_fns blk_mq_update_nr_requests fndecl 2 8694 NULL nohasharray
++data_width_stedma40_half_channel_info_8694_fns data_width stedma40_half_channel_info 0 8694 &blk_mq_update_nr_requests_fndecl_8694_fns
+ebcnt_vardecl_readtest_c_8699_fns ebcnt vardecl_readtest.c 0 8699 NULL
++iblock_execute_rw_fndecl_8701_fns iblock_execute_rw fndecl 3 8701 NULL
+ilo_read_fndecl_8704_fns ilo_read fndecl 3 8704 NULL
+out_ptr_mdc800_data_8709_fns out_ptr mdc800_data 0 8709 NULL
-+ieee80211_if_read_estab_plinks_fndecl_8710_fns ieee80211_if_read_estab_plinks fndecl 3 8710 NULL
+key_len_host_if_wep_attr_8712_fns key_len host_if_wep_attr 0 8712 NULL
++rockchip_rk3399_efuse_read_fndecl_8717_fns rockchip_rk3399_efuse_read fndecl 4-2 8717 NULL
+qsfp_read_fndecl_8729_fns qsfp_read fndecl 2-4-0 8729 NULL
+ip_set_elem_len_fndecl_8730_fns ip_set_elem_len fndecl 0 8730 NULL
+alloc_state_change_fndecl_8735_fns alloc_state_change fndecl 1-2 8735 NULL
+tool_link_read_fndecl_8740_fns tool_link_read fndecl 3 8740 NULL
-+osc_iocontrol_fndecl_8742_fns osc_iocontrol fndecl 3 8742 NULL
-+max_epid_fjes_hw_8751_fns max_epid fjes_hw 0 8751 NULL
-+format_devstat_counter_fndecl_8757_fns format_devstat_counter fndecl 3 8757 NULL
+read_file_beacon_fndecl_8768_fns read_file_beacon fndecl 3 8768 NULL
-+ieee80211_if_read_dropped_frames_congestion_fndecl_8776_fns ieee80211_if_read_dropped_frames_congestion fndecl 3 8776 NULL
-+gfs2_adjust_quota_fndecl_8777_fns gfs2_adjust_quota fndecl 2 8777 NULL
+cfg80211_roamed_fndecl_8811_fns cfg80211_roamed fndecl 5-7 8811 NULL
+nilfs_cpfile_get_checkpoint_fndecl_8812_fns nilfs_cpfile_get_checkpoint fndecl 2 8812 NULL
+sys_set_mempolicy_fndecl_8819_fns sys_set_mempolicy fndecl 3 8819 NULL
++shmem_user_xattr_handler_set_fndecl_8823_fns shmem_user_xattr_handler_set fndecl 6 8823 NULL
++mei_cl_enqueue_ctrl_wr_cb_fndecl_8837_fns mei_cl_enqueue_ctrl_wr_cb fndecl 2 8837 NULL
+response_length_mlx5_ib_alloc_ucontext_resp_8839_fns response_length mlx5_ib_alloc_ucontext_resp 0 8839 NULL
+generic_readlink_fndecl_8861_fns generic_readlink fndecl 3 8861 NULL
+dm_set_target_max_io_len_fndecl_8872_fns dm_set_target_max_io_len fndecl 2 8872 NULL
++_sctp_make_chunk_fndecl_8876_fns _sctp_make_chunk fndecl 2 8876 NULL
+batps_powernow_k8_data_8899_fns batps powernow_k8_data 0 8899 NULL
+pages_squashfs_cache_8903_fns pages squashfs_cache 0 8903 NULL
-+bits_per_pixel_fb_var_screeninfo_8906_fns bits_per_pixel fb_var_screeninfo 0 8906 NULL
-+rt2x00debug_read_queue_dump_fndecl_8923_fns rt2x00debug_read_queue_dump fndecl 3 8923 NULL
+begin_cmd_fndecl_8941_fns begin_cmd fndecl 0 8941 NULL
-+mon_mgmt_tx_fndecl_8949_fns mon_mgmt_tx fndecl 3 8949 NULL nohasharray
-+i40e_pci_sriov_enable_fndecl_8949_fns i40e_pci_sriov_enable fndecl 2 8949 &mon_mgmt_tx_fndecl_8949_fns
++mon_mgmt_tx_fndecl_8949_fns mon_mgmt_tx fndecl 3 8949 NULL
+stats_read_ul_fndecl_8956_fns stats_read_ul fndecl 3 8956 NULL nohasharray
+videobuf_mmap_setup_fndecl_8956_fns videobuf_mmap_setup fndecl 3 8956 &stats_read_ul_fndecl_8956_fns
+n_bch_control_8979_fns n bch_control 0 8979 NULL
-+vmalloc_user_fndecl_8999_fns vmalloc_user fndecl 1 8999 NULL
+vb2_dvb_register_frontend_fndecl_9015_fns vb2_dvb_register_frontend fndecl 0 9015 NULL
+add_dts_thermal_zone_fndecl_9019_fns add_dts_thermal_zone fndecl 4 9019 NULL
-+t4_alloc_mem_fndecl_9029_fns t4_alloc_mem fndecl 1 9029 NULL
+id_port_9030_fns id port 0 9030 NULL
+error_rx_cmplt_db_overflow_cnt_read_fndecl_9063_fns error_rx_cmplt_db_overflow_cnt_read fndecl 3 9063 NULL
+logical_maximum_hid_field_9067_fns logical_maximum hid_field 0 9067 NULL
+dispatch_ioctl_fndecl_9078_fns dispatch_ioctl fndecl 2 9078 NULL
-+count_afs_call_9081_fns count afs_call 0 9081 NULL nohasharray
-+sel_read_initcon_fndecl_9081_fns sel_read_initcon fndecl 3 9081 &count_afs_call_9081_fns
-+iwl_dbgfs_tof_range_abort_read_fndecl_9085_fns iwl_dbgfs_tof_range_abort_read fndecl 3 9085 NULL
++sel_read_initcon_fndecl_9081_fns sel_read_initcon fndecl 3 9081 NULL
+xfs_iext_add_indirect_multi_fndecl_9091_fns xfs_iext_add_indirect_multi fndecl 3-4 9091 NULL
++limit_parsed_partitions_9099_fns limit parsed_partitions 0 9099 NULL
+pvr2_stream_set_buffer_count_fndecl_9116_fns pvr2_stream_set_buffer_count fndecl 2 9116 NULL
++compat_readv_fndecl_9127_fns compat_readv fndecl 3 9127 NULL
+learn_buffer_len_vardecl_gracl_learn_c_9167_fns learn_buffer_len vardecl_gracl_learn.c 0 9167 NULL
-+wiimote_cmd_read_fndecl_9197_fns wiimote_cmd_read fndecl 4 9197 NULL
++hid_input_report_fndecl_9177_fns hid_input_report fndecl 4 9177 NULL
++max_pages_ib_fmr_attr_9206_fns max_pages ib_fmr_attr 0 9206 NULL
+ide_driver_proc_write_fndecl_9214_fns ide_driver_proc_write fndecl 3 9214 NULL
+qcom_rpm_smd_write_fndecl_9229_fns qcom_rpm_smd_write fndecl 6 9229 NULL
-+read_file_bt_ant_diversity_fndecl_9236_fns read_file_bt_ant_diversity fndecl 3 9236 NULL
+call_netdevice_notifiers_info_fndecl_9239_fns call_netdevice_notifiers_info fndecl 0 9239 NULL
-+n_sbufs_stk_camera_9256_fns n_sbufs stk_camera 0 9256 NULL
+acpi_ns_build_normalized_path_fndecl_9269_fns acpi_ns_build_normalized_path fndecl 0 9269 NULL
+lbs_failcount_read_fndecl_9284_fns lbs_failcount_read fndecl 3 9284 NULL
-+buffer_bytes_st_buffer_9290_fns buffer_bytes st_buffer 0 9290 NULL
+sctp_setsockopt_context_fndecl_9312_fns sctp_setsockopt_context fndecl 3 9312 NULL
++pages_in_io_dio_submit_9326_fns pages_in_io dio_submit 0 9326 NULL
+sys_mincore_fndecl_9332_fns sys_mincore fndecl 1-2 9332 NULL
++offset_ore_io_state_9357_fns offset ore_io_state 0 9357 NULL
+compat_sys_get_mempolicy_fndecl_9366_fns compat_sys_get_mempolicy fndecl 3 9366 NULL
+depth_read_fndecl_9371_fns depth_read fndecl 3 9371 NULL
+data_start_dm_ioctl_9412_fns data_start dm_ioctl 0 9412 NULL
@@ -205483,8 +210065,7 @@ index 0000000..510c554
+maxdev_vardecl_slcan_c_9507_fns maxdev vardecl_slcan.c 0 9507 NULL
+fillonedir_fndecl_9511_fns fillonedir fndecl 3 9511 NULL
+smk_read_doi_fndecl_9550_fns smk_read_doi fndecl 3 9550 NULL
-+fault_disconnect_read_fndecl_9566_fns fault_disconnect_read fndecl 3 9566 NULL
-+ath10k_write_fw_dbglog_fndecl_9568_fns ath10k_write_fw_dbglog fndecl 3 9568 NULL
++__bio_alloc_fndecl_9552_fns __bio_alloc fndecl 3 9552 NULL
+pwr_sleep_time_avg_read_fndecl_9572_fns pwr_sleep_time_avg_read fndecl 3 9572 NULL nohasharray
+mvneta_frag_alloc_fndecl_9572_fns mvneta_frag_alloc fndecl 1 9572 &pwr_sleep_time_avg_read_fndecl_9572_fns
+sctp_setsockopt_auth_chunk_fndecl_9576_fns sctp_setsockopt_auth_chunk fndecl 3 9576 NULL
@@ -205493,139 +210074,137 @@ index 0000000..510c554
+frag_size_mvneta_port_9606_fns frag_size mvneta_port 0 9606 NULL
+skd_max_pass_thru_vardecl_skd_main_c_9608_fns skd_max_pass_thru vardecl_skd_main.c 0 9608 NULL
+acpi_copy_property_array_u16_fndecl_9618_fns acpi_copy_property_array_u16 fndecl 0 9618 NULL
-+copy_to_iter_fndecl_9638_fns copy_to_iter fndecl 0 9638 NULL
+usnic_debugfs_buildinfo_read_fndecl_9667_fns usnic_debugfs_buildinfo_read fndecl 3 9667 NULL
+sctp_setsockopt_rtoinfo_fndecl_9678_fns sctp_setsockopt_rtoinfo fndecl 3 9678 NULL
+read_packet_length_lego_usb_tower_9686_fns read_packet_length lego_usb_tower 0 9686 NULL
-+pkt_len_virtio_vsock_pkt_info_9698_fns pkt_len virtio_vsock_pkt_info 0 9698 NULL
+tty_insert_flip_string_flags_fndecl_9706_fns tty_insert_flip_string_flags fndecl 4 9706 NULL
+tx_ringsz_alx_priv_9722_fns tx_ringsz alx_priv 0 9722 NULL
+vicam_control_msg_fndecl_9727_fns vicam_control_msg fndecl 0 9727 NULL
++sg_cnt_nvmet_req_9742_fns sg_cnt nvmet_req 0 9742 NULL
+samsung_clk_sleep_init_fndecl_9743_fns samsung_clk_sleep_init fndecl 3 9743 NULL
+qsfp_2_read_fndecl_9744_fns qsfp_2_read fndecl 3 9744 NULL
+blkdev_fsync_fndecl_9745_fns blkdev_fsync fndecl 2-3 9745 NULL
+bnx2x_mcast_handle_current_cmd_fndecl_9747_fns bnx2x_mcast_handle_current_cmd fndecl 0 9747 NULL
+__alloc_bootmem_fndecl_9753_fns __alloc_bootmem fndecl 1 9753 NULL
-+buffer_length_floppy_raw_cmd_9763_fns buffer_length floppy_raw_cmd 0 9763 NULL
++hidraw_write_fndecl_9763_fns hidraw_write fndecl 3 9763 NULL nohasharray
++buffer_length_floppy_raw_cmd_9763_fns buffer_length floppy_raw_cmd 0 9763 &hidraw_write_fndecl_9763_fns
+dvb_ringbuffer_write_fndecl_9775_fns dvb_ringbuffer_write fndecl 0 9775 NULL
+mlxsw_pci_queue_group_init_fndecl_9779_fns mlxsw_pci_queue_group_init fndecl 4 9779 NULL
+tx_frag_tkip_called_read_fndecl_9796_fns tx_frag_tkip_called_read fndecl 3 9796 NULL
+get_max_inline_xattr_value_size_fndecl_9801_fns get_max_inline_xattr_value_size fndecl 0 9801 NULL
+usbvision_read_fndecl_9808_fns usbvision_read fndecl 3 9808 NULL
+NumPhysDiskPaths__CONFIG_PAGE_RAID_PHYS_DISK_1_9818_fns NumPhysDiskPaths _CONFIG_PAGE_RAID_PHYS_DISK_1 0 9818 NULL
-+iwl_dbgfs_ucode_tx_stats_read_fndecl_9832_fns iwl_dbgfs_ucode_tx_stats_read fndecl 3 9832 NULL
+snd_compr_get_avail_fndecl_9843_fns snd_compr_get_avail fndecl 0 9843 NULL
++sge_length_rvt_sge_9845_fns sge_length rvt_sge 0 9845 NULL
+nr_of_buckets_v4l2_ctrl_handler_9859_fns nr_of_buckets v4l2_ctrl_handler 0 9859 NULL
++arvo_sysfs_read_fndecl_9874_fns arvo_sysfs_read fndecl 6 9874 NULL
+copy_from_user_nmi_fndecl_9899_fns copy_from_user_nmi fndecl 3 9899 NULL
+tx_ring_size_sky2_port_9902_fns tx_ring_size sky2_port 0 9902 NULL
+alloc_event_waiters_fndecl_9914_fns alloc_event_waiters fndecl 1 9914 NULL
-+asic_flags_read_fndecl_9918_fns asic_flags_read fndecl 3 9918 NULL
+vbe_modes_cnt_uvesafb_par_9928_fns vbe_modes_cnt uvesafb_par 0 9928 NULL
-+len_load_info_9931_fns len load_info 0 9931 NULL
++num_wsm_set_tx_rate_retry_policy_9933_fns num wsm_set_tx_rate_retry_policy 0 9933 NULL
+rxdata_desc_size_vmxnet3_adapter_9937_fns rxdata_desc_size vmxnet3_adapter 0 9937 NULL
-+wb_pgbase_nfs_page_9940_fns wb_pgbase nfs_page 0 9940 NULL nohasharray
++irq_create_affinity_masks_fndecl_9940_fns irq_create_affinity_masks fndecl 2 9940 NULL nohasharray
++wb_pgbase_nfs_page_9940_fns wb_pgbase nfs_page 0 9940 &irq_create_affinity_masks_fndecl_9940_fns nohasharray
+object_name_len_ncp_objectname_ioctl_9940_fns object_name_len ncp_objectname_ioctl 0 9940 &wb_pgbase_nfs_page_9940_fns
+forced_ps_read_fndecl_9942_fns forced_ps_read fndecl 3 9942 NULL
+shmem_pwrite_slow_fndecl_9966_fns shmem_pwrite_slow fndecl 2-3 9966 NULL
-+rs_pretty_print_rate_fndecl_9980_fns rs_pretty_print_rate fndecl 0 9980 NULL
-+send_buf_size_netvsc_device_10051_fns send_buf_size netvsc_device 0 10051 NULL
++_create_sg_bios_fndecl_10015_fns _create_sg_bios fndecl 4 10015 NULL
+command_file_write_fndecl_10053_fns command_file_write fndecl 3 10053 NULL nohasharray
+usbat_write_blocks_fndecl_10053_fns usbat_write_blocks fndecl 3-4 10053 &command_file_write_fndecl_10053_fns
+uvc_simplify_fraction_fndecl_10068_fns uvc_simplify_fraction fndecl 3 10068 NULL
-+iwl_dbgfs_set_nic_temperature_read_fndecl_10071_fns iwl_dbgfs_set_nic_temperature_read fndecl 3 10071 NULL
++sg_size_octnic_gather_10076_fns sg_size octnic_gather 0 10076 NULL
+outlen_write_fndecl_10093_fns outlen_write fndecl 3 10093 NULL
+msix_num_bnad_10096_fns msix_num bnad 0 10096 NULL
+em28xx_init_usb_xfer_fndecl_10106_fns em28xx_init_usb_xfer fndecl 4 10106 NULL
+_regmap_raw_multi_reg_write_fndecl_10107_fns _regmap_raw_multi_reg_write fndecl 3 10107 NULL
-+trace_parser_get_init_fndecl_10112_fns trace_parser_get_init fndecl 2 10112 NULL
+tfms_count_crypt_config_10114_fns tfms_count crypt_config 0 10114 NULL
-+sg_segs_osst_buffer_10144_fns sg_segs osst_buffer 0 10144 NULL nohasharray
-+key_ifindex_read_fndecl_10144_fns key_ifindex_read fndecl 3 10144 &sg_segs_osst_buffer_10144_fns
++sg_segs_osst_buffer_10144_fns sg_segs osst_buffer 0 10144 NULL
+nvme_rdma_alloc_qe_fndecl_10151_fns nvme_rdma_alloc_qe fndecl 3 10151 NULL
+ldebugfs_fid_space_seq_write_fndecl_10152_fns ldebugfs_fid_space_seq_write fndecl 3 10152 NULL
++udp_tun_rx_dst_fndecl_10154_fns udp_tun_rx_dst fndecl 5 10154 NULL
+_sp2d_max_pg_fndecl_10157_fns _sp2d_max_pg fndecl 0 10157 NULL
-+usnic_vnic_res_spec_update_fndecl_10169_fns usnic_vnic_res_spec_update fndecl 3 10169 NULL
-+transport_alloc_session_tags_fndecl_10186_fns transport_alloc_session_tags fndecl 2-3 10186 NULL
++substream_count_snd_rawmidi_str_10174_fns substream_count snd_rawmidi_str 0 10174 NULL
+opera1_xilinx_rw_fndecl_10190_fns opera1_xilinx_rw fndecl 5 10190 NULL
++sa_alloc_fndecl_10205_fns sa_alloc fndecl 5 10205 NULL
++old_log_size_persistent_ram_zone_10215_fns old_log_size persistent_ram_zone 0 10215 NULL
+wil_addba_rx_request_fndecl_10219_fns wil_addba_rx_request fndecl 4 10219 NULL
+rds_message_map_pages_fndecl_10220_fns rds_message_map_pages fndecl 2 10220 NULL
+alg_setkey_fndecl_10222_fns alg_setkey fndecl 3 10222 NULL
+storage_size_phm_runtime_table_header_10230_fns storage_size phm_runtime_table_header 0 10230 NULL
-+qlcnic_set_sds_ring_count_fndecl_10232_fns qlcnic_set_sds_ring_count fndecl 2 10232 NULL
-+dio_get_pages_alloc_fndecl_10238_fns dio_get_pages_alloc fndecl 2 10238 NULL
++input_get_new_minor_fndecl_10235_fns input_get_new_minor fndecl 0 10235 NULL
++uarc_size_mthca_uar_table_10238_fns uarc_size mthca_uar_table 0 10238 NULL
+vmw_resource_buf_alloc_fndecl_10284_fns vmw_resource_buf_alloc fndecl 0 10284 NULL
+frame_list_sz_dwc2_hsotg_10293_fns frame_list_sz dwc2_hsotg 0 10293 NULL
+validate_user_key_fndecl_10303_fns validate_user_key fndecl 5 10303 NULL
+tlen_sdma_txreq_10305_fns tlen sdma_txreq 0 10305 NULL
+sysfs_add_file_mode_ns_fndecl_10309_fns sysfs_add_file_mode_ns fndecl 0 10309 NULL
-+scsi_vpd_inquiry_fndecl_10315_fns scsi_vpd_inquiry fndecl 0 10315 NULL
++scsi_vpd_inquiry_fndecl_10315_fns scsi_vpd_inquiry fndecl 0-4 10315 NULL
+num_mnt_opts_security_mnt_opts_10327_fns num_mnt_opts security_mnt_opts 0 10327 NULL
+dev_mem_write_fndecl_10335_fns dev_mem_write fndecl 3 10335 NULL
-+boot_max_nr_grant_frames_vardecl_grant_table_c_10337_fns boot_max_nr_grant_frames vardecl_grant-table.c 0 10337 NULL
+cids_per_blk_cnic_local_10342_fns cids_per_blk cnic_local 0 10342 NULL
+__pci_request_selected_regions_fndecl_10361_fns __pci_request_selected_regions fndecl 0 10361 NULL
+rx_filter_data_filter_read_fndecl_10369_fns rx_filter_data_filter_read fndecl 3 10369 NULL
+snd_midi_channel_init_set_fndecl_10399_fns snd_midi_channel_init_set fndecl 1 10399 NULL
+u_memcpya_fndecl_10408_fns u_memcpya fndecl 2-3 10408 NULL
-+jfs_xattr_set_fndecl_10409_fns jfs_xattr_set fndecl 6 10409 NULL
+alloc_switch_ctx_fndecl_10438_fns alloc_switch_ctx fndecl 2 10438 NULL
+mlxsw_sp_fdb_call_notifiers_fndecl_10442_fns mlxsw_sp_fdb_call_notifiers fndecl 4 10442 NULL
+NumberOfPhyBlock_ms_lib_ctrl_10443_fns NumberOfPhyBlock ms_lib_ctrl 0 10443 NULL
-+elfcorehdr_read_fndecl_10460_fns elfcorehdr_read fndecl 2 10460 NULL
++__genwqe_readq_fndecl_10470_fns __genwqe_readq fndecl 0 10470 NULL
+usblp_ioctl_fndecl_10472_fns usblp_ioctl fndecl 2 10472 NULL
+nfsd4_get_drc_mem_fndecl_10473_fns nfsd4_get_drc_mem fndecl 0 10473 NULL
-+avc_tuner_dsd_dvb_c_fndecl_10490_fns avc_tuner_dsd_dvb_c fndecl 0 10490 NULL
-+msb_cache_read_fndecl_10494_fns msb_cache_read fndecl 2 10494 NULL
+sd_alloc_ctl_entry_fndecl_10527_fns sd_alloc_ctl_entry fndecl 1 10527 NULL nohasharray
+posix_acl_from_xattr_fndecl_10527_fns posix_acl_from_xattr fndecl 3 10527 &sd_alloc_ctl_entry_fndecl_10527_fns
-+cros_ec_prepare_tx_fndecl_10539_fns cros_ec_prepare_tx fndecl 0 10539 NULL
+touchscreen_set_params_fndecl_10540_fns touchscreen_set_params fndecl 3 10540 NULL
+nfp_net_netdev_alloc_fndecl_10548_fns nfp_net_netdev_alloc fndecl 3-2 10548 NULL nohasharray
+read_cis_cache_fndecl_10548_fns read_cis_cache fndecl 4 10548 &nfp_net_netdev_alloc_fndecl_10548_fns
+wm_adsp_read_algs_fndecl_10552_fns wm_adsp_read_algs fndecl 4 10552 NULL
+lpfc_present_cpu_vardecl_10567_fns lpfc_present_cpu vardecl 0 10567 NULL
-+fuse_fsync_fndecl_10582_fns fuse_fsync fndecl 2-3 10582 NULL
++num_send_contexts_hfi1_devdata_10569_fns num_send_contexts hfi1_devdata 0 10569 NULL
++fuse_fsync_fndecl_10582_fns fuse_fsync fndecl 2-3 10582 NULL nohasharray
++sctp_make_control_fndecl_10582_fns sctp_make_control fndecl 2 10582 &fuse_fsync_fndecl_10582_fns
+static_key_count_fndecl_10584_fns static_key_count fndecl 0 10584 NULL
-+wcn36xx_smd_send_and_wait_fndecl_10595_fns wcn36xx_smd_send_and_wait fndecl 2 10595 NULL
+num_amd_northbridge_info_10604_fns num amd_northbridge_info 0 10604 NULL
+__probe_kernel_write_fndecl_10625_fns __probe_kernel_write fndecl 3 10625 NULL nohasharray
+lch_count_omap_dma_dev_attr_10625_fns lch_count omap_dma_dev_attr 0 10625 &__probe_kernel_write_fndecl_10625_fns
++smk_write_relabel_self_fndecl_10657_fns smk_write_relabel_self fndecl 3 10657 NULL
+tlv_put_fndecl_10659_fns tlv_put fndecl 0 10659 NULL
+ipv6_setsockopt_fndecl_10684_fns ipv6_setsockopt fndecl 5 10684 NULL
+write_file_bool_bmps_fndecl_10685_fns write_file_bool_bmps fndecl 3 10685 NULL
+lov_ost_pool_extend_fndecl_10697_fns lov_ost_pool_extend fndecl 2 10697 NULL
+__btrfs_getxattr_fndecl_10728_fns __btrfs_getxattr fndecl 0 10728 NULL
++ntp_fltr_count_bnxt_10734_fns ntp_fltr_count bnxt 0 10734 NULL
+write_file_queue_fndecl_10737_fns write_file_queue fndecl 3 10737 NULL
+setexposure_fndecl_10781_fns setexposure fndecl 0 10781 NULL
-+dwc3_testmode_write_fndecl_10791_fns dwc3_testmode_write fndecl 3 10791 NULL
-+rtgt_cnt_snic_disc_10811_fns rtgt_cnt snic_disc 0 10811 NULL
+rndis_add_response_fndecl_10854_fns rndis_add_response fndecl 2 10854 NULL
+disk_expand_part_tbl_fndecl_10866_fns disk_expand_part_tbl fndecl 2 10866 NULL
+__vmalloc_fndecl_10880_fns __vmalloc fndecl 1 10880 NULL
+sgl_map_user_pages_fndecl_10881_fns sgl_map_user_pages fndecl 2 10881 NULL
-+ieee80211_if_read_dot11MeshAwakeWindowDuration_fndecl_10932_fns ieee80211_if_read_dot11MeshAwakeWindowDuration fndecl 3 10932 NULL
++compat_sys_msgsnd_fndecl_10918_fns compat_sys_msgsnd fndecl 3 10918 NULL
+compat_raw_setsockopt_fndecl_10937_fns compat_raw_setsockopt fndecl 5 10937 NULL
+brd_alloc_fndecl_10964_fns brd_alloc fndecl 1 10964 NULL
+encrypted_key_size_ecryptfs_session_key_10978_fns encrypted_key_size ecryptfs_session_key 0 10978 NULL
++lbs_wrbbp_write_fndecl_10987_fns lbs_wrbbp_write fndecl 3 10987 NULL
++dccp_setsockopt_ccid_fndecl_11006_fns dccp_setsockopt_ccid fndecl 4 11006 NULL
+register_virtio_driver_fndecl_11025_fns register_virtio_driver fndecl 0 11025 NULL
-+drm_dp_sideband_msg_build_fndecl_11028_fns drm_dp_sideband_msg_build fndecl 3 11028 NULL
+snd_ac97_pcm_assign_fndecl_11033_fns snd_ac97_pcm_assign fndecl 2 11033 NULL
+audio_outs_vx_core_11035_fns audio_outs vx_core 0 11035 NULL
+isr_pci_pm_read_fndecl_11052_fns isr_pci_pm_read fndecl 3 11052 NULL
+drm_dp_dpcd_write_fndecl_11066_fns drm_dp_dpcd_write fndecl 0 11066 NULL
+pipeline_sec_frag_swi_read_fndecl_11077_fns pipeline_sec_frag_swi_read fndecl 3 11077 NULL
+snd_pcm_new_internal_fndecl_11091_fns snd_pcm_new_internal fndecl 4-5 11091 NULL
++mbox_alloc_fndecl_11103_fns mbox_alloc fndecl 2 11103 NULL
++acpi_processor_power_verify_fndecl_11105_fns acpi_processor_power_verify fndecl 0 11105 NULL
+__vmalloc_node_flags_fndecl_11139_fns __vmalloc_node_flags fndecl 1 11139 NULL
+resource_from_user_fndecl_11158_fns resource_from_user fndecl 3 11158 NULL
+nvme_fill_device_id_eui64_fndecl_11160_fns nvme_fill_device_id_eui64 fndecl 4 11160 NULL
+max_supported_extcon_dev_11172_fns max_supported extcon_dev 0 11172 NULL
++c4iw_init_resource_fndecl_11178_fns c4iw_init_resource fndecl 2-3 11178 NULL
+sys_get_mempolicy_fndecl_11192_fns sys_get_mempolicy fndecl 3 11192 NULL
+mangle_sdp_packet_fndecl_11198_fns mangle_sdp_packet fndecl 10 11198 NULL
-+trace_insert_enum_map_fndecl_11206_fns trace_insert_enum_map fndecl 3 11206 NULL
+submit_create_fndecl_11207_fns submit_create fndecl 3-4 11207 NULL
+lstcon_session_info_fndecl_11210_fns lstcon_session_info fndecl 6 11210 NULL
+tx_tx_template_prepared_read_fndecl_11211_fns tx_tx_template_prepared_read fndecl 3 11211 NULL
-+bcd2000_dump_buffer_fndecl_11234_fns bcd2000_dump_buffer fndecl 3 11234 NULL
+enable_write_fndecl_11243_fns enable_write fndecl 3 11243 NULL
+tx_tx_template_programmed_read_fndecl_11246_fns tx_tx_template_programmed_read fndecl 3 11246 NULL
+alloc_sched_domains_fndecl_11327_fns alloc_sched_domains fndecl 1 11327 NULL
@@ -205634,16 +210213,15 @@ index 0000000..510c554
+nilfs_cpfile_delete_checkpoints_fndecl_11352_fns nilfs_cpfile_delete_checkpoints fndecl 2-3 11352 NULL nohasharray
+fdb_insert_fndecl_11352_fns fdb_insert fndecl 4 11352 &nilfs_cpfile_delete_checkpoints_fndecl_11352_fns
+fd_execute_rw_fndecl_11359_fns fd_execute_rw fndecl 3 11359 NULL
-+ieee80211_if_read_ht_opmode_fndecl_11367_fns ieee80211_if_read_ht_opmode fndecl 3 11367 NULL
++arpc_sync_fndecl_11389_fns arpc_sync fndecl 4 11389 NULL
+sctp_getsockopt_assoc_stats_fndecl_11393_fns sctp_getsockopt_assoc_stats fndecl 2 11393 NULL
-+txs_vardecl_ambassador_c_11398_fns txs vardecl_ambassador.c 0 11398 NULL
-+iso_packets_buffer_init_fndecl_11414_fns iso_packets_buffer_init fndecl 3 11414 NULL
-+lpfc_idiag_extacc_drivr_get_fndecl_11416_fns lpfc_idiag_extacc_drivr_get fndecl 3-0 11416 NULL
-+isdn_ppp_write_fndecl_11430_fns isdn_ppp_write fndecl 4 11430 NULL
++msix_setup_entries_fndecl_11398_fns msix_setup_entries fndecl 4-0 11398 NULL nohasharray
++txs_vardecl_ambassador_c_11398_fns txs vardecl_ambassador.c 0 11398 &msix_setup_entries_fndecl_11398_fns
++iso_packets_buffer_init_fndecl_11414_fns iso_packets_buffer_init fndecl 3-4 11414 NULL
++smt_build_frame_fndecl_11428_fns smt_build_frame fndecl 4 11428 NULL
++sys_preadv2_fndecl_11439_fns sys_preadv2 fndecl 3 11439 NULL
+acpi_node_prop_read_fndecl_11442_fns acpi_node_prop_read fndecl 0 11442 NULL
-+iwl_dbgfs_log_event_write_fndecl_11443_fns iwl_dbgfs_log_event_write fndecl 3 11443 NULL
+ccp_init_dm_workarea_fndecl_11450_fns ccp_init_dm_workarea fndecl 3 11450 NULL
-+wmi_evt_tx_mgmt_fndecl_11458_fns wmi_evt_tx_mgmt fndecl 4 11458 NULL
+proc_scsi_write_fndecl_11461_fns proc_scsi_write fndecl 3 11461 NULL
+xt_alloc_entry_offsets_fndecl_11488_fns xt_alloc_entry_offsets fndecl 1 11488 NULL
+count_e1000_ring_11491_fns count e1000_ring 0 11491 NULL
@@ -205652,96 +210230,79 @@ index 0000000..510c554
+max_transfer_size_s2255_pipeinfo_11546_fns max_transfer_size s2255_pipeinfo 0 11546 NULL
+drm_plane_init_fndecl_11560_fns drm_plane_init fndecl 6 11560 NULL
+balance_level_fndecl_11568_fns balance_level fndecl 0 11568 NULL
-+brcmf_fil_iovar_data_get_fndecl_11579_fns brcmf_fil_iovar_data_get fndecl 4 11579 NULL
+update_memcg_params_fndecl_11583_fns update_memcg_params fndecl 2 11583 NULL
+pwc_get_fps_fndecl_11588_fns pwc_get_fps fndecl 0 11588 NULL
+rpc_pipe_generic_upcall_fndecl_11597_fns rpc_pipe_generic_upcall fndecl 4 11597 NULL
-+read_file_btcoex_fndecl_11604_fns read_file_btcoex fndecl 3 11604 NULL
-+vmw_execbuf_process_fndecl_11642_fns vmw_execbuf_process fndecl 5 11642 NULL
++spi_execute_fndecl_11603_fns spi_execute fndecl 5 11603 NULL
+device_property_read_u32_array_fndecl_11662_fns device_property_read_u32_array fndecl 0 11662 NULL
+sel_write_member_fndecl_11667_fns sel_write_member fndecl 3 11667 NULL
+vp_request_msix_vectors_fndecl_11682_fns vp_request_msix_vectors fndecl 2 11682 NULL
+data_len_b43legacy_dfs_file_11690_fns data_len b43legacy_dfs_file 0 11690 NULL
+fill_note_info_fndecl_11692_fns fill_note_info fndecl 2 11692 NULL
-+mlx5_query_port_qetcr_reg_fndecl_11697_fns mlx5_query_port_qetcr_reg fndecl 3 11697 NULL
-+kernel_tree_alloc_fndecl_11698_fns kernel_tree_alloc fndecl 1 11698 NULL nohasharray
-+__i2c_read_fndecl_11698_fns __i2c_read fndecl 0 11698 &kernel_tree_alloc_fndecl_11698_fns
-+iwl_dbgfs_rxon_filter_flags_read_fndecl_11699_fns iwl_dbgfs_rxon_filter_flags_read fndecl 3 11699 NULL
-+ipv6_renew_options_fndecl_11728_fns ipv6_renew_options fndecl 5 11728 NULL
++kernel_tree_alloc_fndecl_11698_fns kernel_tree_alloc fndecl 1 11698 NULL
++gart_pin_size_radeon_device_11745_fns gart_pin_size radeon_device 0 11745 NULL
+cifs_linux_ext_proc_write_fndecl_11755_fns cifs_linux_ext_proc_write fndecl 3 11755 NULL
-+p9_client_prepare_req_fndecl_11803_fns p9_client_prepare_req fndecl 3 11803 NULL
++iscsi_sw_tcp_session_create_fndecl_11792_fns iscsi_sw_tcp_session_create fndecl 3 11792 NULL
+__kmalloc_node_fndecl_11804_fns __kmalloc_node fndecl 1 11804 NULL
+size_mvpp2_tx_queue_11816_fns size mvpp2_tx_queue 0 11816 NULL
-+atk_debugfs_ggrp_read_fndecl_11841_fns atk_debugfs_ggrp_read fndecl 3 11841 NULL
++pci_enable_msix_fndecl_11847_fns pci_enable_msix fndecl 3 11847 NULL
+num_crtc_mga_device_11851_fns num_crtc mga_device 0 11851 NULL
-+sg_tablesize_srp_target_port_11858_fns sg_tablesize srp_target_port 0 11858 NULL
-+btmrvl_pscmd_write_fndecl_11859_fns btmrvl_pscmd_write fndecl 3 11859 NULL
+frame_rate_sd_11862_fns frame_rate sd 0 11862 NULL
+wr_host_buf_pos_xilly_channel_11866_fns wr_host_buf_pos xilly_channel 0 11866 NULL
-+leaf_dealloc_fndecl_11885_fns leaf_dealloc fndecl 3 11885 NULL nohasharray
-+alloc_empty_pages_fndecl_11885_fns alloc_empty_pages fndecl 2 11885 &leaf_dealloc_fndecl_11885_fns
-+iwl_dbgfs_missed_beacon_write_fndecl_11905_fns iwl_dbgfs_missed_beacon_write fndecl 3 11905 NULL
-+mwifiex_histogram_read_fndecl_11910_fns mwifiex_histogram_read fndecl 3 11910 NULL
++alloc_empty_pages_fndecl_11885_fns alloc_empty_pages fndecl 2 11885 NULL
+snd_device_new_fndecl_11911_fns snd_device_new fndecl 0 11911 NULL
+lbs_lowsnr_read_fndecl_11920_fns lbs_lowsnr_read fndecl 3 11920 NULL
+kvm_read_guest_virt_system_fndecl_11922_fns kvm_read_guest_virt_system fndecl 4-2 11922 NULL
+arm_coherent_iommu_alloc_attrs_fndecl_11939_fns arm_coherent_iommu_alloc_attrs fndecl 2 11939 NULL
-+spi_write_fndecl_11948_fns spi_write fndecl 0 11948 NULL
+osc_cached_mb_seq_write_fndecl_11961_fns osc_cached_mb_seq_write fndecl 3 11961 NULL
-+red_left_pad_kmem_cache_11964_fns red_left_pad kmem_cache 0 11964 NULL
++sa11x0_dma_prep_slave_sg_fndecl_11965_fns sa11x0_dma_prep_slave_sg fndecl 3 11965 NULL
++bsg_major_vardecl_bsg_c_11972_fns bsg_major vardecl_bsg.c 0 11972 NULL
+sctp_make_abort_user_fndecl_11973_fns sctp_make_abort_user fndecl 3 11973 NULL nohasharray
+spmi_controller_alloc_fndecl_11973_fns spmi_controller_alloc fndecl 2 11973 &sctp_make_abort_user_fndecl_11973_fns
++pcpu_nr_groups_vardecl_percpu_c_11974_fns pcpu_nr_groups vardecl_percpu.c 0 11974 NULL
+ssp_create_msg_fndecl_11986_fns ssp_create_msg fndecl 2 11986 NULL
+tx_frag_cache_hit_read_fndecl_11988_fns tx_frag_cache_hit_read fndecl 3 11988 NULL
+ndevcntrs_hfi1_devdata_11997_fns ndevcntrs hfi1_devdata 0 11997 NULL
-+sisusb_write_mem_bulk_fndecl_12029_fns sisusb_write_mem_bulk fndecl 4 12029 NULL
+alloc_group_attrs_fndecl_12032_fns alloc_group_attrs fndecl 3 12032 NULL nohasharray
+wusb_prf_256_fndecl_12032_fns wusb_prf_256 fndecl 7 12032 &alloc_group_attrs_fndecl_12032_fns
+drm_property_create_enum_fndecl_12034_fns drm_property_create_enum fndecl 5 12034 NULL
+comedi_alloc_subdevices_fndecl_12036_fns comedi_alloc_subdevices fndecl 2 12036 NULL
+evdev_handle_get_val_fndecl_12073_fns evdev_handle_get_val fndecl 5-6 12073 NULL
+nvme_trans_copy_from_user_fndecl_12088_fns nvme_trans_copy_from_user fndecl 3 12088 NULL
-+iwl_dbgfs_temperature_read_fndecl_12091_fns iwl_dbgfs_temperature_read fndecl 3 12091 NULL
+security_context_to_sid_core_fndecl_12115_fns security_context_to_sid_core fndecl 2 12115 NULL
+mempool_resize_fndecl_12140_fns mempool_resize fndecl 2 12140 NULL
+nfs42_proc_copy_fndecl_12169_fns nfs42_proc_copy fndecl 2-5 12169 NULL
+max_fingers_silead_ts_data_12170_fns max_fingers silead_ts_data 0 12170 NULL
++of_phandle_iterator_next_fndecl_12171_fns of_phandle_iterator_next fndecl 0 12171 NULL
+__fuse_get_req_fndecl_12176_fns __fuse_get_req fndecl 2 12176 NULL
+bulk_in_size_sur40_state_12178_fns bulk_in_size sur40_state 0 12178 NULL
+lprocfs_write_helper_fndecl_12184_fns lprocfs_write_helper fndecl 2 12184 NULL
-+alloc_and_copy_ftrace_hash_fndecl_12203_fns alloc_and_copy_ftrace_hash fndecl 1 12203 NULL
+l2cap_sock_setsockopt_old_fndecl_12209_fns l2cap_sock_setsockopt_old fndecl 4 12209 NULL
-+hci_sock_sendmsg_fndecl_12231_fns hci_sock_sendmsg fndecl 3 12231 NULL
-+read_file_tx99_power_fndecl_12238_fns read_file_tx99_power fndecl 3 12238 NULL
+unique_len_drm_master_12259_fns unique_len drm_master 0 12259 NULL
+zs_size_classes_vardecl_zsmalloc_c_12260_fns zs_size_classes vardecl_zsmalloc.c 0 12260 NULL
+mempool_create_fndecl_12270_fns mempool_create fndecl 1 12270 NULL
-+handle_fcp_fndecl_12283_fns handle_fcp fndecl 9 12283 NULL
+capacity_sddr09_card_info_12286_fns capacity sddr09_card_info 0 12286 NULL
+nb_blocks_NFTLrecord_12306_fns nb_blocks NFTLrecord 0 12306 NULL
-+tracing_clock_write_fndecl_12330_fns tracing_clock_write fndecl 3 12330 NULL
+srpt_alloc_rw_ctxs_fndecl_12333_fns srpt_alloc_rw_ctxs fndecl 3 12333 NULL
++snd_hdac_bus_exec_verb_unlocked_fndecl_12335_fns snd_hdac_bus_exec_verb_unlocked fndecl 0 12335 NULL
+bank_size_stub_chip_12338_fns bank_size stub_chip 0 12338 NULL
-+igb_pci_sriov_configure_fndecl_12359_fns igb_pci_sriov_configure fndecl 2 12359 NULL
+i_entries_gfs2_inode_12374_fns i_entries gfs2_inode 0 12374 NULL
+mic_rx_pkts_read_fndecl_12375_fns mic_rx_pkts_read fndecl 3 12375 NULL
+pci_enable_device_flags_fndecl_12378_fns pci_enable_device_flags fndecl 0 12378 NULL
-+ath10k_read_quiet_period_fndecl_12397_fns ath10k_read_quiet_period fndecl 3 12397 NULL
+powercap_register_zone_fndecl_12399_fns powercap_register_zone fndecl 6 12399 NULL
-+edt_ft5x06_debugfs_raw_data_read_fndecl_12401_fns edt_ft5x06_debugfs_raw_data_read fndecl 3 12401 NULL
++ieee802154_alloc_hw_fndecl_12400_fns ieee802154_alloc_hw fndecl 1 12400 NULL
+snd_rawmidi_write_fndecl_12411_fns snd_rawmidi_write fndecl 3 12411 NULL
-+cx231xx_init_vbi_isoc_fndecl_12422_fns cx231xx_init_vbi_isoc fndecl 3-4-2 12422 NULL
++cx231xx_init_vbi_isoc_fndecl_12422_fns cx231xx_init_vbi_isoc fndecl 3 12422 NULL
+init_rs_non_canonical_fndecl_12424_fns init_rs_non_canonical fndecl 1-5 12424 NULL
-+add_pid_filter_fndecl_12429_fns add_pid_filter fndecl 0 12429 NULL
-+lpfc_idiag_mbxacc_read_fndecl_12430_fns lpfc_idiag_mbxacc_read fndecl 3 12430 NULL
+sctp_setsockopt_maxburst_fndecl_12442_fns sctp_setsockopt_maxburst fndecl 3 12442 NULL
+acpi_gsb_i2c_write_bytes_fndecl_12449_fns acpi_gsb_i2c_write_bytes fndecl 4 12449 NULL
+tx_frag_bad_mblk_num_read_fndecl_12467_fns tx_frag_bad_mblk_num_read fndecl 3 12467 NULL
+rx_defrag_need_defrag_read_fndecl_12486_fns rx_defrag_need_defrag_read fndecl 3 12486 NULL
+acpi_tb_install_standard_table_fndecl_12495_fns acpi_tb_install_standard_table fndecl 1 12495 NULL
++blk_update_nr_requests_fndecl_12497_fns blk_update_nr_requests fndecl 2 12497 NULL
+mmc_test_alloc_mem_fndecl_12501_fns mmc_test_alloc_mem fndecl 2-3 12501 NULL
+stream_next_buffer_fndecl_12502_fns stream_next_buffer fndecl 0 12502 NULL
-+stats_dot11FCSErrorCount_read_fndecl_12521_fns stats_dot11FCSErrorCount_read fndecl 3 12521 NULL
++num_pointers_whc_std_12518_fns num_pointers whc_std 0 12518 NULL
+snd_midi_channel_alloc_set_fndecl_12522_fns snd_midi_channel_alloc_set fndecl 1 12522 NULL
+learn_buffer_user_len_vardecl_gracl_learn_c_12538_fns learn_buffer_user_len vardecl_gracl_learn.c 0 12538 NULL
+mlxsw_cmd_mbox_query_aq_cap_max_num_cqs_get_fndecl_12540_fns mlxsw_cmd_mbox_query_aq_cap_max_num_cqs_get fndecl 0 12540 NULL
@@ -205749,73 +210310,70 @@ index 0000000..510c554
+cdrom_read_cdda_old_fndecl_12547_fns cdrom_read_cdda_old fndecl 4 12547 NULL
+irq_count_rmi_driver_data_12580_fns irq_count rmi_driver_data 0 12580 NULL
+fs_path_add_from_extent_buffer_fndecl_12581_fns fs_path_add_from_extent_buffer fndecl 4-0 12581 NULL
++offset_rvt_mregion_12593_fns offset rvt_mregion 0 12593 NULL
+evm_write_key_fndecl_12624_fns evm_write_key fndecl 3 12624 NULL
+tw686x_fps_idx_fndecl_12646_fns tw686x_fps_idx fndecl 2 12646 NULL
+kcalloc_fndecl_12649_fns kcalloc fndecl 1-2 12649 NULL
++fdir_pf_active_filters_i40e_pf_12654_fns fdir_pf_active_filters i40e_pf 0 12654 NULL
+num_aces_cifs_acl_12670_fns num_aces cifs_acl 0 12670 NULL
-+transport_init_session_tags_fndecl_12691_fns transport_init_session_tags fndecl 1-2 12691 NULL
+t2_num_pages_qed_cxt_mngr_12696_fns t2_num_pages qed_cxt_mngr 0 12696 NULL
++gb_loopback_async_sink_fndecl_12706_fns gb_loopback_async_sink fndecl 2 12706 NULL
+fld_debugfs_hash_seq_write_fndecl_12713_fns fld_debugfs_hash_seq_write fndecl 3 12713 NULL
+sys_listxattr_fndecl_12714_fns sys_listxattr fndecl 3 12714 NULL
-+rdma_rw_init_mr_wrs_fndecl_12719_fns rdma_rw_init_mr_wrs fndecl 5 12719 NULL
++rdma_rw_init_mr_wrs_fndecl_12719_fns rdma_rw_init_mr_wrs fndecl 7-5 12719 NULL
+read_profile_fndecl_12736_fns read_profile fndecl 3 12736 NULL
-+sky2_pci_read16_fndecl_12740_fns sky2_pci_read16 fndecl 0 12740 NULL
+num_unit_element_struct_12767_fns num unit_element_struct 0 12767 NULL
+driver_add_groups_fndecl_12778_fns driver_add_groups fndecl 0 12778 NULL
-+ieee80211_if_read_dot11MeshHWMProotInterval_fndecl_12786_fns ieee80211_if_read_dot11MeshHWMProotInterval fndecl 3 12786 NULL
-+testmode_write_fndecl_12814_fns testmode_write fndecl 3 12814 NULL
-+hint_events_per_packet_input_dev_12818_fns hint_events_per_packet input_dev 0 12818 NULL
++hint_events_per_packet_input_dev_12818_fns hint_events_per_packet input_dev 0 12818 NULL nohasharray
++subdev_ioctl_fndecl_12818_fns subdev_ioctl fndecl 2 12818 &hint_events_per_packet_input_dev_12818_fns
+ksocknal_alloc_tx_fndecl_12825_fns ksocknal_alloc_tx fndecl 2 12825 NULL
+of_n_addr_cells_fndecl_12852_fns of_n_addr_cells fndecl 0 12852 NULL
-+key_mic_failures_read_fndecl_12858_fns key_mic_failures_read fndecl 3 12858 NULL
++max_ddbs_hw_profile_12873_fns max_ddbs hw_profile 0 12873 NULL
+omap_gem_new_dmabuf_fndecl_12877_fns omap_gem_new_dmabuf fndecl 2 12877 NULL
-+max_response_pages_fndecl_12895_fns max_response_pages fndecl 0 12895 NULL
-+dbgfs_sram_len_iwl_mvm_12900_fns dbgfs_sram_len iwl_mvm 0 12900 NULL
-+gsm_stuff_frame_fndecl_12918_fns gsm_stuff_frame fndecl 0 12918 NULL
+nilfs_sufile_delete_segment_usage_block_fndecl_12921_fns nilfs_sufile_delete_segment_usage_block fndecl 2 12921 NULL
-+i2400m_tx_stats_read_fndecl_12924_fns i2400m_tx_stats_read fndecl 3 12924 NULL
-+obufsize_sisusb_usb_data_12932_fns obufsize sisusb_usb_data 0 12932 NULL
+run_delalloc_range_fndecl_12946_fns run_delalloc_range fndecl 3-4 12946 NULL nohasharray
+aio_read_events_fndecl_12946_fns aio_read_events fndecl 3 12946 &run_delalloc_range_fndecl_12946_fns nohasharray
+mptctl_getiocinfo_fndecl_12946_fns mptctl_getiocinfo fndecl 2 12946 &aio_read_events_fndecl_12946_fns
+sel_read_policycap_fndecl_12947_fns sel_read_policycap fndecl 3 12947 NULL
++nr_segments_blkif_request_rw_12950_fns nr_segments blkif_request_rw 0 12950 NULL
+b43legacy_debugfs_write_fndecl_12959_fns b43legacy_debugfs_write fndecl 3 12959 NULL
++gfs2_fsync_fndecl_13014_fns gfs2_fsync fndecl 3 13014 NULL
+kfifo_unused_fndecl_13015_fns kfifo_unused fndecl 0 13015 NULL
-+rpcrdma_alloc_regbuf_fndecl_13018_fns rpcrdma_alloc_regbuf fndecl 2 13018 NULL
+snd_nm256_capture_copy_fndecl_13021_fns snd_nm256_capture_copy fndecl 5 13021 NULL
-+iwl_dbgfs_nic_temp_read_fndecl_13029_fns iwl_dbgfs_nic_temp_read fndecl 3 13029 NULL
++format_supported_num_intel_sdvo_connector_13024_fns format_supported_num intel_sdvo_connector 0 13024 NULL
+blk_queue_resize_tags_fndecl_13037_fns blk_queue_resize_tags fndecl 2 13037 NULL
+p9_fcall_alloc_fndecl_13055_fns p9_fcall_alloc fndecl 1 13055 NULL
+calib_calib_count_read_fndecl_13060_fns calib_calib_count_read fndecl 3 13060 NULL
-+drm_fbdev_cma_init_with_funcs_fndecl_13066_fns drm_fbdev_cma_init_with_funcs fndecl 3-4-2 13066 NULL
++drm_fbdev_cma_init_with_funcs_fndecl_13066_fns drm_fbdev_cma_init_with_funcs fndecl 3-2 13066 NULL
+vread_fndecl_13086_fns vread fndecl 0-3 13086 NULL
-+thermal_zone_device_register_fndecl_13093_fns thermal_zone_device_register fndecl 2 13093 NULL nohasharray
-+vrambase_sisusb_usb_data_13093_fns vrambase sisusb_usb_data 0 13093 &thermal_zone_device_register_fndecl_13093_fns
++thermal_zone_device_register_fndecl_13093_fns thermal_zone_device_register fndecl 2 13093 NULL
++ocfs2_cow_sync_writeback_fndecl_13102_fns ocfs2_cow_sync_writeback fndecl 4 13102 NULL
+sctp_tsnmap_skip_fndecl_13103_fns sctp_tsnmap_skip fndecl 2 13103 NULL
+line6_alloc_sysex_buffer_fndecl_13138_fns line6_alloc_sysex_buffer fndecl 4 13138 NULL
++mousedev_reserve_minor_fndecl_13143_fns mousedev_reserve_minor fndecl 0 13143 NULL
++nr_possible_cpus_uv_hub_info_s_13164_fns nr_possible_cpus uv_hub_info_s 0 13164 NULL
+inline_xattr_size_fndecl_13166_fns inline_xattr_size fndecl 0 13166 NULL
+iproc_pll_clk_setup_fndecl_13179_fns iproc_pll_clk_setup fndecl 6 13179 NULL
++nouveau_compat_ioctl_fndecl_13186_fns nouveau_compat_ioctl fndecl 2 13186 NULL
++blocksize_f2fs_sb_info_13191_fns blocksize f2fs_sb_info 0 13191 NULL
+bsg_setup_queue_fndecl_13194_fns bsg_setup_queue fndecl 5 13194 NULL
+snd_pcm_oss_read_fndecl_13198_fns snd_pcm_oss_read fndecl 3 13198 NULL
+bm_entry_write_fndecl_13217_fns bm_entry_write fndecl 3 13217 NULL
-+snapshot_write_fndecl_13228_fns snapshot_write fndecl 3 13228 NULL
+filldir64_fndecl_13232_fns filldir64 fndecl 3 13232 NULL
++update_sge_fndecl_13245_fns update_sge fndecl 2 13245 NULL
+batadv_handle_tt_response_fndecl_13249_fns batadv_handle_tt_response fndecl 4 13249 NULL
++usb_ep_align_fndecl_13273_fns usb_ep_align fndecl 0-2 13273 NULL
+compress_file_range_fndecl_13295_fns compress_file_range fndecl 3-4 13295 NULL
+dlmfs_file_read_fndecl_13298_fns dlmfs_file_read fndecl 3 13298 NULL
++sys_writev_fndecl_13299_fns sys_writev fndecl 3 13299 NULL
+tx_frag_cache_miss_read_fndecl_13305_fns tx_frag_cache_miss_read fndecl 3 13305 NULL
-+req_len_snic_req_info_13319_fns req_len snic_req_info 0 13319 NULL
-+svc_print_xprts_fndecl_13330_fns svc_print_xprts fndecl 0 13330 NULL
-+brcmf_usb_dl_cmd_fndecl_13344_fns brcmf_usb_dl_cmd fndecl 4 13344 NULL
-+x25_asy_change_mtu_fndecl_13347_fns x25_asy_change_mtu fndecl 2 13347 NULL
-+sctp_setsockopt_adaptation_layer_fndecl_13348_fns sctp_setsockopt_adaptation_layer fndecl 3 13348 NULL nohasharray
-+pwr_ps_enter_read_fndecl_13348_fns pwr_ps_enter_read fndecl 3 13348 &sctp_setsockopt_adaptation_layer_fndecl_13348_fns
++gfs2_submit_bhs_fndecl_13320_fns gfs2_submit_bhs fndecl 4 13320 NULL
++pwr_ps_enter_read_fndecl_13348_fns pwr_ps_enter_read fndecl 3 13348 NULL nohasharray
++sctp_setsockopt_adaptation_layer_fndecl_13348_fns sctp_setsockopt_adaptation_layer fndecl 3 13348 &pwr_ps_enter_read_fndecl_13348_fns
+hecubafb_write_fndecl_13357_fns hecubafb_write fndecl 3 13357 NULL
-+hhf_zalloc_fndecl_13363_fns hhf_zalloc fndecl 1 13363 NULL
-+sd_size_stat_data_13368_fns sd_size stat_data 0 13368 NULL
+error_error_frame_during_protection_read_fndecl_13376_fns error_error_frame_during_protection_read fndecl 3 13376 NULL
-+T5_msg_size_mxt_data_13382_fns T5_msg_size mxt_data 0 13382 NULL
+shrink_slab_fndecl_13407_fns shrink_slab fndecl 5-4 13407 NULL
++subdevices_count_snd_rawmidi_info_13408_fns subdevices_count snd_rawmidi_info 0 13408 NULL
+nrealreaders_stress_lock_torture_cxt_13422_fns nrealreaders_stress lock_torture_cxt 0 13422 NULL
+tb_path_alloc_fndecl_13427_fns tb_path_alloc fndecl 2 13427 NULL
+kvm_read_guest_phys_system_fndecl_13445_fns kvm_read_guest_phys_system fndecl 2-4 13445 NULL
@@ -205825,57 +210383,49 @@ index 0000000..510c554
+__videobuf_alloc_vb_fndecl_13477_fns __videobuf_alloc_vb fndecl 1 13477 NULL
+devfn_slot_13478_fns devfn slot 0 13478 NULL
+iwl_mvm_notify_rx_queue_fndecl_13499_fns iwl_mvm_notify_rx_queue fndecl 4 13499 NULL
-+btmrvl_hscmd_write_fndecl_13506_fns btmrvl_hscmd_write fndecl 3 13506 NULL
+max_out_size_ims_pcu_13527_fns max_out_size ims_pcu 0 13527 NULL
+alloc_fdmem_fndecl_13528_fns alloc_fdmem fndecl 1 13528 NULL
-+ppp_print_buffer_fndecl_13530_fns ppp_print_buffer fndecl 3 13530 NULL
+tool_mw_read_fndecl_13537_fns tool_mw_read fndecl 3 13537 NULL
-+p_filesz_elf64_phdr_13545_fns p_filesz elf64_phdr 0 13545 NULL
-+pset_prop_count_elems_of_size_fndecl_13547_fns pset_prop_count_elems_of_size fndecl 3-0 13547 NULL
++pset_prop_count_elems_of_size_fndecl_13547_fns pset_prop_count_elems_of_size fndecl 0-3 13547 NULL
+len_prism2_download_data_area_13551_fns len prism2_download_data_area 0 13551 NULL
+buf_len_vp702x_device_state_13562_fns buf_len vp702x_device_state 0 13562 NULL
-+edt_ft5x06_ts_readwrite_fndecl_13570_fns edt_ft5x06_ts_readwrite fndecl 0 13570 NULL
-+avc_tuner_dsd_dvb_t_fndecl_13571_fns avc_tuner_dsd_dvb_t fndecl 0 13571 NULL
++amdtp_stream_get_max_payload_fndecl_13574_fns amdtp_stream_get_max_payload fndecl 0 13574 NULL
+irq_alloc_generic_chip_fndecl_13577_fns irq_alloc_generic_chip fndecl 2 13577 NULL
+pwr_fix_tsf_ps_read_fndecl_13584_fns pwr_fix_tsf_ps_read fndecl 3 13584 NULL
++vfio_info_cap_add_fndecl_13593_fns vfio_info_cap_add fndecl 2 13593 NULL
+flowinfo_read_fndecl_13608_fns flowinfo_read fndecl 3 13608 NULL
-+cipso_v4_map_cat_rbm_hton_fndecl_13611_fns cipso_v4_map_cat_rbm_hton fndecl 0 13611 NULL
-+__alloc_pred_stack_fndecl_13612_fns __alloc_pred_stack fndecl 2 13612 NULL
+usb_reset_device_fndecl_13622_fns usb_reset_device fndecl 0 13622 NULL
+ws_col_winsize_13628_fns ws_col winsize 0 13628 NULL
-+max_dpcd_transaction_bytes_drm_dp_mst_topology_mgr_13637_fns max_dpcd_transaction_bytes drm_dp_mst_topology_mgr 0 13637 NULL
+sysfs_add_file_fndecl_13647_fns sysfs_add_file fndecl 0 13647 NULL
-+lowpan_ctx_pfx_write_fndecl_13658_fns lowpan_ctx_pfx_write fndecl 3 13658 NULL
-+vhost_copy_from_user_fndecl_13681_fns vhost_copy_from_user fndecl 4 13681 NULL
+__fwnode_property_read_string_array_fndecl_13689_fns __fwnode_property_read_string_array fndecl 0 13689 NULL
+resize_platform_label_table_fndecl_13711_fns resize_platform_label_table fndecl 2 13711 NULL
++wsm_buf_reserve_fndecl_13730_fns wsm_buf_reserve fndecl 2 13730 NULL
+shdma_prep_dma_cyclic_fndecl_13739_fns shdma_prep_dma_cyclic fndecl 4-3 13739 NULL
-+pof_write_buffer_fndecl_13741_fns pof_write_buffer fndecl 0-2 13741 NULL
-+regmap_ibt_write_fndecl_13743_fns regmap_ibt_write fndecl 3 13743 NULL nohasharray
-+cipso_v4_genopt_fndecl_13743_fns cipso_v4_genopt fndecl 0 13743 &regmap_ibt_write_fndecl_13743_fns
++pof_write_buffer_fndecl_13741_fns pof_write_buffer fndecl 2-0 13741 NULL
++regmap_ibt_write_fndecl_13743_fns regmap_ibt_write fndecl 3 13743 NULL
+qlcnic_alloc_sds_rings_fndecl_13752_fns qlcnic_alloc_sds_rings fndecl 2 13752 NULL
++ecryptfs_miscdev_write_fndecl_13772_fns ecryptfs_miscdev_write fndecl 3 13772 NULL
+iwl_trans_read_mem32_fndecl_13786_fns iwl_trans_read_mem32 fndecl 0 13786 NULL
+ept_get_level1_sp_gpa_fndecl_13788_fns ept_get_level1_sp_gpa fndecl 0 13788 NULL
++num_channels_xilly_endpoint_13791_fns num_channels xilly_endpoint 0 13791 NULL
+num_fcoe_msix_i40e_pf_13802_fns num_fcoe_msix i40e_pf 0 13802 NULL
++riocm_cdev_add_fndecl_13803_fns riocm_cdev_add fndecl 1 13803 NULL
+ath6kl_create_qos_write_fndecl_13804_fns ath6kl_create_qos_write fndecl 3 13804 NULL
+seq_read_fndecl_13824_fns seq_read fndecl 3 13824 NULL
+ib_dma_map_sg_fndecl_13830_fns ib_dma_map_sg fndecl 0 13830 NULL
-+ieee80211_if_read_smps_fndecl_13835_fns ieee80211_if_read_smps fndecl 3 13835 NULL
+init_memory_mapping_fndecl_13840_fns init_memory_mapping fndecl 1-2 13840 NULL
-+sddr09_read_data_fndecl_13860_fns sddr09_read_data fndecl 3 13860 NULL
+rlen_cm4000_dev_13899_fns rlen cm4000_dev 0 13899 NULL
-+wm_coeff_parse_int_fndecl_13918_fns wm_coeff_parse_int fndecl 0 13918 NULL
++num_vfs_adapter_13918_fns num_vfs adapter 0 13918 NULL nohasharray
++wm_coeff_parse_int_fndecl_13918_fns wm_coeff_parse_int fndecl 0 13918 &num_vfs_adapter_13918_fns
+trips_thermal_zone_device_13921_fns trips thermal_zone_device 0 13921 NULL
+garmin_read_process_fndecl_13926_fns garmin_read_process fndecl 3 13926 NULL
+hcd_buffer_alloc_fndecl_13940_fns hcd_buffer_alloc fndecl 2 13940 NULL
+img_IMEM_size_fw_hdr_13961_fns img_IMEM_size fw_hdr 0 13961 NULL
-+nes_dump_mem_fndecl_13971_fns nes_dump_mem fndecl 3 13971 NULL
+ib_copy_to_udata_fndecl_13974_fns ib_copy_to_udata fndecl 3 13974 NULL
+e_phnum_elf32_hdr_13980_fns e_phnum elf32_hdr 0 13980 NULL
+syslog_partial_vardecl_printk_c_13985_fns syslog_partial vardecl_printk.c 0 13985 NULL
++rd_size_uhid_device_13986_fns rd_size uhid_device 0 13986 NULL
+libipw_alloc_txb_fndecl_13992_fns libipw_alloc_txb fndecl 1 13992 NULL
-+i2400mu_notification_grok_fndecl_13997_fns i2400mu_notification_grok fndecl 3 13997 NULL
-+batadv_socket_add_packet_fndecl_14011_fns batadv_socket_add_packet fndecl 3 14011 NULL
+sensor_framerate_go7007_14025_fns sensor_framerate go7007 0 14025 NULL
+descriptors_per_page__drm_via_sg_info_14046_fns descriptors_per_page _drm_via_sg_info 0 14046 NULL
+C_SYSC_mbind_fndecl_14055_fns C_SYSC_mbind fndecl 5 14055 NULL
@@ -205883,141 +210433,119 @@ index 0000000..510c554
+regmap_ibt_gather_write_fndecl_14087_fns regmap_ibt_gather_write fndecl 5 14087 NULL
+_mv88e6xxx_port_vlan_add_fndecl_14091_fns _mv88e6xxx_port_vlan_add fndecl 3 14091 NULL
+snd_compr_calc_avail_fndecl_14094_fns snd_compr_calc_avail fndecl 0 14094 NULL
-+btmrvl_hscfgcmd_write_fndecl_14100_fns btmrvl_hscfgcmd_write fndecl 3 14100 NULL
+wil_write_file_wmi_fndecl_14109_fns wil_write_file_wmi fndecl 3 14109 NULL
-+ieee80211_if_read_rc_rateidx_mask_5ghz_fndecl_14140_fns ieee80211_if_read_rc_rateidx_mask_5ghz fndecl 3 14140 NULL
++dqi_entry_size_qtree_mem_dqinfo_14150_fns dqi_entry_size qtree_mem_dqinfo 0 14150 NULL
+write_kmem_fndecl_14154_fns write_kmem fndecl 3 14154 NULL nohasharray
+svcxdr_tmpalloc_fndecl_14154_fns svcxdr_tmpalloc fndecl 2 14154 &write_kmem_fndecl_14154_fns
++vfs_writev_fndecl_14168_fns vfs_writev fndecl 3 14168 NULL
++rxrpc_request_key_fndecl_14192_fns rxrpc_request_key fndecl 3 14192 NULL
+uvc_fraction_to_interval_fndecl_14194_fns uvc_fraction_to_interval fndecl 0-2-1 14194 NULL
+comedi_alloc_devpriv_fndecl_14235_fns comedi_alloc_devpriv fndecl 2 14235 NULL
-+usb_submit_urb_fndecl_14237_fns usb_submit_urb fndecl 0 14237 NULL
+write_buf_fndecl_14247_fns write_buf fndecl 0 14247 NULL
-+copy_from_buf_fndecl_14271_fns copy_from_buf fndecl 2-4 14271 NULL
++copy_from_buf_fndecl_14271_fns copy_from_buf fndecl 4-2 14271 NULL
+afs_cell_create_fndecl_14273_fns afs_cell_create fndecl 2 14273 NULL
+snd_pcm_oss_write2_fndecl_14295_fns snd_pcm_oss_write2 fndecl 3 14295 NULL
+scif_p2p_setsg_fndecl_14314_fns scif_p2p_setsg fndecl 3 14314 NULL
-+iwl_dbgfs_csr_write_fndecl_14320_fns iwl_dbgfs_csr_write fndecl 3 14320 NULL
+size_wpa_suite_t_14321_fns size wpa_suite_t 0 14321 NULL
+pcbit_stat_fndecl_14327_fns pcbit_stat fndecl 2 14327 NULL
+pxad_alloc_desc_fndecl_14330_fns pxad_alloc_desc fndecl 2 14330 NULL
-+carl9170_cmd_callback_fndecl_14341_fns carl9170_cmd_callback fndecl 2 14341 NULL
+ath6kl_regread_read_fndecl_14351_fns ath6kl_regread_read fndecl 3 14351 NULL
-+size_set_mib_buffer_14366_fns size set_mib_buffer 0 14366 NULL
+nvme_trans_mode_page_create_fndecl_14375_fns nvme_trans_mode_page_create fndecl 7-4 14375 NULL
+lirc_rx51_write_fndecl_14379_fns lirc_rx51_write fndecl 3 14379 NULL
-+rcname_read_fndecl_14380_fns rcname_read fndecl 3 14380 NULL
++num_phys__sas_node_14384_fns num_phys _sas_node 0 14384 NULL
+fdb_create_fndecl_14403_fns fdb_create fndecl 4 14403 NULL
-+ssize_usbat_info_14405_fns ssize usbat_info 0 14405 NULL
+vmcb_iopm_nested_state_14411_fns vmcb_iopm nested_state 0 14411 NULL
+max_ep_fsl_udc_14417_fns max_ep fsl_udc 0 14417 NULL
-+key_flags_read_fndecl_14424_fns key_flags_read fndecl 3 14424 NULL
+snd_es1938_capture_copy_fndecl_14425_fns snd_es1938_capture_copy fndecl 5 14425 NULL
++wrt_pass_cntr_osst_tape_14444_fns wrt_pass_cntr osst_tape 0 14444 NULL
+flush_fndecl_14454_fns flush fndecl 2 14454 NULL
+_regmap_multi_reg_write_fndecl_14460_fns _regmap_multi_reg_write fndecl 3 14460 NULL
+cfs_hash_create_fndecl_14468_fns cfs_hash_create fndecl 4-2 14468 NULL
-+gsm_control_send_fndecl_14499_fns gsm_control_send fndecl 4 14499 NULL
++user_ucs2_strsize_fndecl_14469_fns user_ucs2_strsize fndecl 0 14469 NULL
++rdmarc_entry_sz_mlx4_dev_cap_14475_fns rdmarc_entry_sz mlx4_dev_cap 0 14475 NULL
+selinux_inode_post_setxattr_fndecl_14502_fns selinux_inode_post_setxattr fndecl 4 14502 NULL
+bnad_q_num_adjust_fndecl_14512_fns bnad_q_num_adjust fndecl 2 14512 NULL
+memcg_update_all_list_lrus_fndecl_14532_fns memcg_update_all_list_lrus fndecl 1 14532 NULL
+density_scsi_tape_14545_fns density scsi_tape 0 14545 NULL
-+__alloc_memory_core_early_fndecl_14550_fns __alloc_memory_core_early fndecl 2 14550 NULL
++lsave_cnt_ubifs_info_14547_fns lsave_cnt ubifs_info 0 14547 NULL
+keyctl_update_key_fndecl_14558_fns keyctl_update_key fndecl 3 14558 NULL
++btrfs_wait_ordered_range_fndecl_14581_fns btrfs_wait_ordered_range fndecl 3 14581 NULL
+befs_utf2nls_fndecl_14607_fns befs_utf2nls fndecl 3 14607 NULL
-+vmw_execbuf_cmdbuf_fndecl_14639_fns vmw_execbuf_cmdbuf fndecl 4 14639 NULL
+interval_solo_enc_dev_14661_fns interval solo_enc_dev 0 14661 NULL
-+tty_copy_to_user_fndecl_14668_fns tty_copy_to_user fndecl 3-4 14668 NULL nohasharray
-+mlx5_query_ports_check_fndecl_14668_fns mlx5_query_ports_check fndecl 3 14668 &tty_copy_to_user_fndecl_14668_fns
++tty_copy_to_user_fndecl_14668_fns tty_copy_to_user fndecl 3-4 14668 NULL
+image_size_ls_ucode_img_desc_14672_fns image_size ls_ucode_img_desc 0 14672 NULL
-+lpfc_idiag_cmd_get_fndecl_14683_fns lpfc_idiag_cmd_get fndecl 2 14683 NULL
-+ibmasm_new_command_fndecl_14689_fns ibmasm_new_command fndecl 2 14689 NULL
+rx_filter_mc_filter_read_fndecl_14691_fns rx_filter_mc_filter_read fndecl 3 14691 NULL
++smt_fill_path_fndecl_14692_fns smt_fill_path fndecl 0 14692 NULL
+num_sizes_vmw_surface_14695_fns num_sizes vmw_surface 0 14695 NULL
+count_ctxt_eager_bufs_14698_fns count ctxt_eager_bufs 0 14698 NULL
+__alloc_bootmem_low_node_fndecl_14701_fns __alloc_bootmem_low_node fndecl 2 14701 NULL nohasharray
+sel_write_context_fndecl_14701_fns sel_write_context fndecl 3 14701 &__alloc_bootmem_low_node_fndecl_14701_fns
++AdapterFibsSize_aac_init_14712_fns AdapterFibsSize aac_init 0 14712 NULL
+change_tx_queue_len_fndecl_14718_fns change_tx_queue_len fndecl 2 14718 NULL
-+cxgbi_device_portmap_create_fndecl_14720_fns cxgbi_device_portmap_create fndecl 3 14720 NULL
++channels_usb_mixer_elem_info_14741_fns channels usb_mixer_elem_info 0 14741 NULL
+event_rx_pool_read_fndecl_14803_fns event_rx_pool_read fndecl 3 14803 NULL
+sg_read_fndecl_14804_fns sg_read fndecl 3 14804 NULL
++xfer_speed_hz_nci_spi_14818_fns xfer_speed_hz nci_spi 0 14818 NULL
+parport_read_fndecl_14828_fns parport_read fndecl 0 14828 NULL
-+mlx5_core_sriov_configure_fndecl_14829_fns mlx5_core_sriov_configure fndecl 2 14829 NULL
+pwr_missing_bcns_read_fndecl_14835_fns pwr_missing_bcns_read fndecl 3 14835 NULL
+map_len_ssfdcr_record_14843_fns map_len ssfdcr_record 0 14843 NULL
+threads_mask_netns_ipvs_14873_fns threads_mask netns_ipvs 0 14873 NULL
+inocache_hashsize_jffs2_sb_info_14875_fns inocache_hashsize jffs2_sb_info 0 14875 NULL
+submit_queues_vardecl_null_blk_c_14881_fns submit_queues vardecl_null_blk.c 0 14881 NULL
++pg_first_page_collect_14888_fns pg_first page_collect 0 14888 NULL
+ebcnt_vardecl_pagetest_c_14897_fns ebcnt vardecl_pagetest.c 0 14897 NULL
+firmware_store_fndecl_14907_fns firmware_store fndecl 4 14907 NULL
+tower_read_fndecl_14926_fns tower_read fndecl 3 14926 NULL
-+pagemap_read_fndecl_14938_fns pagemap_read fndecl 3 14938 NULL
+ib_alloc_device_fndecl_14944_fns ib_alloc_device fndecl 1 14944 NULL
-+dump_smb_fndecl_14947_fns dump_smb fndecl 2 14947 NULL
+ulong_write_file_fndecl_14950_fns ulong_write_file fndecl 3 14950 NULL
-+iwl_dbgfs_rf_reset_read_fndecl_14979_fns iwl_dbgfs_rf_reset_read fndecl 3 14979 NULL
-+alloc_ep_req_fndecl_14986_fns alloc_ep_req fndecl 3-2 14986 NULL
++dvb_ca_en50221_io_ioctl_fndecl_14953_fns dvb_ca_en50221_io_ioctl fndecl 2 14953 NULL
+uhid_char_write_fndecl_14997_fns uhid_char_write fndecl 3 14997 NULL
-+read_vmcore_fndecl_14998_fns read_vmcore fndecl 3 14998 NULL
+vfio_pci_set_msi_trigger_fndecl_15000_fns vfio_pci_set_msi_trigger fndecl 4-3 15000 NULL
-+length_sge_ieee1212_15003_fns length sge_ieee1212 0 15003 NULL
+__vhost_add_used_n_fndecl_15017_fns __vhost_add_used_n fndecl 3 15017 NULL
-+rts51x_read_mem_fndecl_15042_fns rts51x_read_mem fndecl 4 15042 NULL
+num_user_pages_fndecl_15045_fns num_user_pages fndecl 0 15045 NULL
+max_io_len_dm_target_15053_fns max_io_len dm_target 0 15053 NULL
+usbat_read_blocks_fndecl_15109_fns usbat_read_blocks fndecl 3-4 15109 NULL
-+SYSC_bpf_fndecl_15113_fns SYSC_bpf fndecl 3 15113 NULL
+ebcnt_vardecl_stresstest_c_15125_fns ebcnt vardecl_stresstest.c 0 15125 NULL
+_nfs42_proc_llseek_fndecl_15127_fns _nfs42_proc_llseek fndecl 3 15127 NULL
+ath6kl_roam_table_read_fndecl_15141_fns ath6kl_roam_table_read fndecl 3 15141 NULL
+copy_oldmem_page_fndecl_15143_fns copy_oldmem_page fndecl 3 15143 NULL
-+chaoskey_read_fndecl_15155_fns chaoskey_read fndecl 3 15155 NULL
++elem_size_snd_array_15155_fns elem_size snd_array 0 15155 NULL nohasharray
++chaoskey_read_fndecl_15155_fns chaoskey_read fndecl 3 15155 &elem_size_snd_array_15155_fns
+walk_hugetlb_range_fndecl_15190_fns walk_hugetlb_range fndecl 0 15190 NULL
++max_clk_sdhci_host_15206_fns max_clk sdhci_host 0 15206 NULL
+nlm_end_grace_read_fndecl_15209_fns nlm_end_grace_read fndecl 3 15209 NULL
+genwqe_ffdc_buff_size_fndecl_15236_fns genwqe_ffdc_buff_size fndecl 0 15236 NULL
+num_tx_queues_net_device_15263_fns num_tx_queues net_device 0 15263 NULL
-+cx24120_writeregs_fndecl_15295_fns cx24120_writeregs fndecl 4 15295 NULL
++nsect_ide_taskfile_15283_fns nsect ide_taskfile 0 15283 NULL
+pwr_wake_on_host_read_fndecl_15298_fns pwr_wake_on_host_read fndecl 3 15298 NULL
-+snic_hex_dump_fndecl_15315_fns snic_hex_dump fndecl 3 15315 NULL
++channels_max_hdac_chmap_15316_fns channels_max hdac_chmap 0 15316 NULL
+snd_pcm_plug_client_channels_buf_fndecl_15318_fns snd_pcm_plug_client_channels_buf fndecl 3-0 15318 NULL
-+ath10k_dbg_sta_write_addba_resp_fndecl_15326_fns ath10k_dbg_sta_write_addba_resp fndecl 3 15326 NULL
+cifs_readdata_alloc_fndecl_15339_fns cifs_readdata_alloc fndecl 1 15339 NULL
-+iser_alloc_fmr_pool_fndecl_15341_fns iser_alloc_fmr_pool fndecl 3 15341 NULL
+seq_len_key_params_15366_fns seq_len key_params 0 15366 NULL
++journal_init_common_fndecl_15367_fns journal_init_common fndecl 5 15367 NULL
+udf_bread_fndecl_15411_fns udf_bread fndecl 2 15411 NULL
+pnp_alloc_fndecl_15414_fns pnp_alloc fndecl 1 15414 NULL
-+setup_buffering_fndecl_15419_fns setup_buffering fndecl 3 15419 NULL
-+queues_read_fndecl_15422_fns queues_read fndecl 3 15422 NULL
+pwc_set_video_mode_fndecl_15427_fns pwc_set_video_mode fndecl 5 15427 NULL
+callout_len_request_key_auth_15448_fns callout_len request_key_auth 0 15448 NULL nohasharray
+smk_write_net6addr_fndecl_15448_fns smk_write_net6addr fndecl 3 15448 &callout_len_request_key_auth_15448_fns
-+codec_list_read_file_fndecl_15453_fns codec_list_read_file fndecl 3 15453 NULL
-+wdm_create_fndecl_15456_fns wdm_create fndecl 3 15456 NULL
+nf_nat_sdp_port_fndecl_15490_fns nf_nat_sdp_port fndecl 7 15490 NULL
-+ath10k_fw_crash_dump_read_fndecl_15496_fns ath10k_fw_crash_dump_read fndecl 3 15496 NULL
+sys_rt_sigpending_fndecl_15506_fns sys_rt_sigpending fndecl 2 15506 NULL
-+hi_priority_depth_MPT3SAS_ADAPTER_15543_fns hi_priority_depth MPT3SAS_ADAPTER 0 15543 NULL
-+genwqe_user_vmap_fndecl_15544_fns genwqe_user_vmap fndecl 4 15544 NULL nohasharray
-+key_conf_hw_key_idx_read_fndecl_15544_fns key_conf_hw_key_idx_read fndecl 3 15544 &genwqe_user_vmap_fndecl_15544_fns
-+il_dbgfs_channels_read_fndecl_15550_fns il_dbgfs_channels_read fndecl 3 15550 NULL
++genwqe_user_vmap_fndecl_15544_fns genwqe_user_vmap fndecl 4 15544 NULL
+num_sge_ib_send_wr_15565_fns num_sge ib_send_wr 0 15565 NULL
-+_mv88e6xxx_port_fdb_dump_one_fndecl_15575_fns _mv88e6xxx_port_fdb_dump_one fndecl 3 15575 NULL
-+raid_set_alloc_fndecl_15581_fns raid_set_alloc fndecl 3 15581 NULL
+SYSC_listxattr_fndecl_15587_fns SYSC_listxattr fndecl 3 15587 NULL
-+mlx5e_create_rqt_fndecl_15591_fns mlx5e_create_rqt fndecl 2 15591 NULL
+gs_buf_alloc_fndecl_15608_fns gs_buf_alloc fndecl 2 15608 NULL
-+udf_compute_nr_groups_fndecl_15617_fns udf_compute_nr_groups fndecl 0 15617 NULL
++do_add_page_to_bio_fndecl_15612_fns do_add_page_to_bio fndecl 2 15612 NULL
+num_edbs_asd_seq_data_15621_fns num_edbs asd_seq_data 0 15621 NULL
-+count_preds_fndecl_15627_fns count_preds fndecl 0 15627 NULL
+i915_error_state_buf_init_fndecl_15630_fns i915_error_state_buf_init fndecl 3 15630 NULL
+netlbl_domhsh_init_fndecl_15635_fns netlbl_domhsh_init fndecl 1 15635 NULL
+num_active_peers_ath10k_15643_fns num_active_peers ath10k 0 15643 NULL
-+btrfs_test_extent_io_fndecl_15701_fns btrfs_test_extent_io fndecl 1 15701 NULL
-+_iwl_dbgfs_tof_responder_params_write_fndecl_15710_fns _iwl_dbgfs_tof_responder_params_write fndecl 3 15710 NULL
++num_bytes_sigmadsp_control_15699_fns num_bytes sigmadsp_control 0 15699 NULL
+btrfs_chunk_sub_stripes_fndecl_15711_fns btrfs_chunk_sub_stripes fndecl 0 15711 NULL
+ib_umem_page_count_fndecl_15714_fns ib_umem_page_count fndecl 0 15714 NULL
+new_tape_buffer_fndecl_15721_fns new_tape_buffer fndecl 3 15721 NULL
-+datafab_write_data_fndecl_15723_fns datafab_write_data fndecl 4 15723 NULL
+btrfs_create_qgroup_fndecl_15772_fns btrfs_create_qgroup fndecl 3 15772 NULL
+kgdb_hex2mem_fndecl_15776_fns kgdb_hex2mem fndecl 3 15776 NULL
++rdma_read_chunk_lcl_fndecl_15778_fns rdma_read_chunk_lcl fndecl 8 15778 NULL
+simple_attr_read_fndecl_15793_fns simple_attr_read fndecl 3 15793 NULL
+datablob_hmac_verify_fndecl_15809_fns datablob_hmac_verify fndecl 4 15809 NULL
+cache_read_fndecl_15813_fns cache_read fndecl 3 15813 NULL
@@ -206025,7 +210553,6 @@ index 0000000..510c554
+msg_print_ext_body_fndecl_15847_fns msg_print_ext_body fndecl 0 15847 NULL
+max_num_peers_ath10k_15853_fns max_num_peers ath10k 0 15853 NULL
+kvm_read_guest_virt_helper_fndecl_15863_fns kvm_read_guest_virt_helper fndecl 3-1 15863 NULL
-+SYSC_kexec_load_fndecl_15874_fns SYSC_kexec_load fndecl 2 15874 NULL
+sel_read_mls_fndecl_15882_fns sel_read_mls fndecl 3 15882 NULL
+unix_mkname_fndecl_15883_fns unix_mkname fndecl 2-0 15883 NULL
+dump_align_fndecl_15890_fns dump_align fndecl 2 15890 NULL
@@ -206037,86 +210564,77 @@ index 0000000..510c554
+v4l2_m2m_dqbuf_fndecl_15936_fns v4l2_m2m_dqbuf fndecl 0 15936 NULL
+rstatus_usblp_15945_fns rstatus usblp 0 15945 NULL
+hw_scan_ies_bufsize_ieee80211_local_15949_fns hw_scan_ies_bufsize ieee80211_local 0 15949 NULL
-+dai_list_read_file_fndecl_15966_fns dai_list_read_file fndecl 3 15966 NULL
+mlxsw_sp_port_ets_set_fndecl_15981_fns mlxsw_sp_port_ets_set fndecl 0 15981 NULL
+nilfs_cpfile_get_blkoff_fndecl_15997_fns nilfs_cpfile_get_blkoff fndecl 2-0 15997 NULL
++gb_operation_create_incoming_fndecl_15999_fns gb_operation_create_incoming fndecl 5 15999 NULL
+gk20a_instobj_new_fndecl_16015_fns gk20a_instobj_new fndecl 2 16015 NULL
+num_stripes_map_lookup_16016_fns num_stripes map_lookup 0 16016 NULL
+snd_pcm_plugin_build_fndecl_16050_fns snd_pcm_plugin_build fndecl 5 16050 NULL
+pgsize_vardecl_pagetest_c_16065_fns pgsize vardecl_pagetest.c 0 16065 NULL
-+ht_print_chan_fndecl_16071_fns ht_print_chan fndecl 0 16071 NULL
++sa_statahead_fndecl_16102_fns sa_statahead fndecl 3 16102 NULL
+snd_rawmidi_kernel_write_fndecl_16129_fns snd_rawmidi_kernel_write fndecl 3 16129 NULL
+fanout_set_data_ebpf_fndecl_16141_fns fanout_set_data_ebpf fndecl 3 16141 NULL
-+reiserfs_commit_write_fndecl_16171_fns reiserfs_commit_write fndecl 4 16171 NULL
+ib_uverbs_alloc_pd_fndecl_16189_fns ib_uverbs_alloc_pd fndecl 4-5 16189 NULL
+osdname_len_osd_dev_info_16203_fns osdname_len osd_dev_info 0 16203 NULL
+sys_fgetxattr_fndecl_16221_fns sys_fgetxattr fndecl 4 16221 NULL
+num_tbps___thermal_zone_16249_fns num_tbps __thermal_zone 0 16249 NULL
+orangefs_debug_read_fndecl_16251_fns orangefs_debug_read fndecl 3 16251 NULL
+mon_stat_read_fndecl_16261_fns mon_stat_read fndecl 3 16261 NULL
++hfi1_skip_sge_fndecl_16275_fns hfi1_skip_sge fndecl 2 16275 NULL
++f_max_mmc_host_16291_fns f_max mmc_host 0 16291 NULL
+dvbdev_get_free_adapter_num_fndecl_16292_fns dvbdev_get_free_adapter_num fndecl 0 16292 NULL
+crypto_alloc_instance2_fndecl_16302_fns crypto_alloc_instance2 fndecl 3 16302 NULL
+jent_zalloc_fndecl_16331_fns jent_zalloc fndecl 1 16331 NULL
++spi_sync_transfer_fndecl_16337_fns spi_sync_transfer fndecl 0 16337 NULL
+l2tp_session_create_fndecl_16341_fns l2tp_session_create fndecl 1 16341 NULL
-+page_offset_mlx5_srq_attr_16345_fns page_offset mlx5_srq_attr 0 16345 NULL
-+help_fndecl_16375_fns help fndecl 5 16375 NULL nohasharray
-+ath9k_debugfs_read_buf_fndecl_16375_fns ath9k_debugfs_read_buf fndecl 3 16375 &help_fndecl_16375_fns
++help_fndecl_16375_fns help fndecl 5 16375 NULL
+samsung_clk_init_fndecl_16382_fns samsung_clk_init fndecl 3 16382 NULL
+zd_mac_preinit_hw_fndecl_16386_fns zd_mac_preinit_hw fndecl 0 16386 NULL
+dsize_ip_set_16391_fns dsize ip_set 0 16391 NULL
+ip_options_get_alloc_fndecl_16395_fns ip_options_get_alloc fndecl 1 16395 NULL
-+rt2x00debug_read_queue_stats_fndecl_16396_fns rt2x00debug_read_queue_stats fndecl 3 16396 NULL
+SYSC_setgroups_fndecl_16397_fns SYSC_setgroups fndecl 1 16397 NULL
-+garp_request_join_fndecl_16444_fns garp_request_join fndecl 4 16444 NULL
++sdhci_alloc_host_fndecl_16454_fns sdhci_alloc_host fndecl 2 16454 NULL
+mtk_alloc_clk_data_fndecl_16481_fns mtk_alloc_clk_data fndecl 1 16481 NULL
++ptrace_access_vm_fndecl_16494_fns ptrace_access_vm fndecl 0 16494 NULL
+ttm_page_alloc_init_fndecl_16498_fns ttm_page_alloc_init fndecl 2 16498 NULL
+cfs_cpt_num_estimate_fndecl_16512_fns cfs_cpt_num_estimate fndecl 0 16512 NULL
-+ath10k_read_htt_stats_mask_fndecl_16534_fns ath10k_read_htt_stats_mask fndecl 3 16534 NULL
+smk_read_mapped_fndecl_16537_fns smk_read_mapped fndecl 3 16537 NULL
+groups_alloc_fndecl_16557_fns groups_alloc fndecl 1 16557 NULL nohasharray
+create_dir_fndecl_16557_fns create_dir fndecl 0 16557 &groups_alloc_fndecl_16557_fns
-+__mei_cl_send_fndecl_16571_fns __mei_cl_send fndecl 3 16571 NULL
-+target_alloc_session_fndecl_16588_fns target_alloc_session fndecl 2-3 16588 NULL
-+amdgpu_ttm_gtt_read_fndecl_16621_fns amdgpu_ttm_gtt_read fndecl 3 16621 NULL
+ceph_fsync_fndecl_16625_fns ceph_fsync fndecl 2-3 16625 NULL
-+fault_inject_write_fndecl_16637_fns fault_inject_write fndecl 3 16637 NULL
++of_dma_match_channel_fndecl_16675_fns of_dma_match_channel fndecl 3 16675 NULL
+cons_read_buffer_16688_fns cons read_buffer 0 16688 NULL
-+nvmet_get_log_page_len_fndecl_16692_fns nvmet_get_log_page_len fndecl 0 16692 NULL
-+efx_ef10_pci_sriov_enable_fndecl_16694_fns efx_ef10_pci_sriov_enable fndecl 2 16694 NULL
-+trace_insert_enum_map_file_fndecl_16702_fns trace_insert_enum_map_file fndecl 3 16702 NULL
-+i2c1_debugfs_read_fndecl_16712_fns i2c1_debugfs_read fndecl 3 16712 NULL
-+ll_sa_entry_alloc_fndecl_16721_fns ll_sa_entry_alloc fndecl 5 16721 NULL
-+kimage_alloc_init_fndecl_16737_fns kimage_alloc_init fndecl 3 16737 NULL nohasharray
-+rx_rate_rx_frames_per_rates_read_fndecl_16737_fns rx_rate_rx_frames_per_rates_read fndecl 3 16737 &kimage_alloc_init_fndecl_16737_fns
-+devlink_alloc_fndecl_16742_fns devlink_alloc fndecl 2 16742 NULL nohasharray
-+fault_disconnect_write_fndecl_16742_fns fault_disconnect_write fndecl 3 16742 &devlink_alloc_fndecl_16742_fns
-+key_len_iw_encode_ext_16773_fns key_len iw_encode_ext 0 16773 NULL
++rx_rate_rx_frames_per_rates_read_fndecl_16737_fns rx_rate_rx_frames_per_rates_read fndecl 3 16737 NULL
++devlink_alloc_fndecl_16742_fns devlink_alloc fndecl 2 16742 NULL
++num_q_csio_wrm_16770_fns num_q csio_wrm 0 16770 NULL
+max_iu_len_srp_target_port_16784_fns max_iu_len srp_target_port 0 16784 NULL
++ishtp_host_dma_tx_buf_size_ishtp_device_16798_fns ishtp_host_dma_tx_buf_size ishtp_device 0 16798 NULL
+diva_xdi_read_fndecl_16814_fns diva_xdi_read fndecl 0 16814 NULL
-+max_gen_ptrs_vardecl_net_namespace_c_16838_fns max_gen_ptrs vardecl_net_namespace.c 0 16838 NULL
-+ieee80211_if_read_dot11MeshHWMPactivePathTimeout_fndecl_16859_fns ieee80211_if_read_dot11MeshHWMPactivePathTimeout fndecl 3 16859 NULL
+drm_property_create_blob_fndecl_16869_fns drm_property_create_blob fndecl 2 16869 NULL
+len_snd_fw_async_midi_port_16875_fns len snd_fw_async_midi_port 0 16875 NULL
+_ore_add_stripe_unit_fndecl_16884_fns _ore_add_stripe_unit fndecl 3-6 16884 NULL
-+sl_change_mtu_fndecl_16887_fns sl_change_mtu fndecl 2 16887 NULL
-+audmux_read_file_fndecl_16891_fns audmux_read_file fndecl 3 16891 NULL
+ncbflooders_vardecl_rcutorture_c_16899_fns ncbflooders vardecl_rcutorture.c 0 16899 NULL
++clk_set_rate_fndecl_16902_fns clk_set_rate fndecl 2 16902 NULL
+n_ai_urbs_usbduxsigma_private_16912_fns n_ai_urbs usbduxsigma_private 0 16912 NULL
++idx_mxser_board_16916_fns idx mxser_board 0 16916 NULL
+sys_mbind_fndecl_16933_fns sys_mbind fndecl 5 16933 NULL
+vidioc_dqbuf_fndecl_16948_fns vidioc_dqbuf fndecl 0 16948 NULL
+admin_mtu_ipoib_dev_priv_16960_fns admin_mtu ipoib_dev_priv 0 16960 NULL
+vcs_read_fndecl_16962_fns vcs_read fndecl 3 16962 NULL
-+num_tx_queues_ixgbe_adapter_16981_fns num_tx_queues ixgbe_adapter 0 16981 NULL
+tt3650_ci_msg_locked_fndecl_16990_fns tt3650_ci_msg_locked fndecl 4 16990 NULL
-+offset_ipw_tx_packet_17004_fns offset ipw_tx_packet 0 17004 NULL
++cifs_min_rcv_vardecl_17001_fns cifs_min_rcv vardecl 0 17001 NULL
++id_rtc_device_17005_fns id rtc_device 0 17005 NULL
++snd_hdac_bus_exec_verb_fndecl_17009_fns snd_hdac_bus_exec_verb fndecl 0 17009 NULL
+__iommu_dma_alloc_pages_fndecl_17015_fns __iommu_dma_alloc_pages fndecl 1 17015 NULL
+reiserfs_sync_file_fndecl_17045_fns reiserfs_sync_file fndecl 2-3 17045 NULL
+qla4xxx_post_ping_evt_work_fndecl_17049_fns qla4xxx_post_ping_evt_work fndecl 4 17049 NULL
-+spi_write_then_read_fndecl_17050_fns spi_write_then_read fndecl 5-3 17050 NULL
+command_setcompressiontarget_fndecl_17055_fns command_setcompressiontarget fndecl 0 17055 NULL
-+venus_lookup_fndecl_17066_fns venus_lookup fndecl 4 17066 NULL
-+packet_len_sdma_txreq_17082_fns packet_len sdma_txreq 0 17082 NULL
++number_of_packets_usbip_header_cmd_submit_17069_fns number_of_packets usbip_header_cmd_submit 0 17069 NULL
++packet_len_sdma_txreq_17082_fns packet_len sdma_txreq 0 17082 NULL nohasharray
++ax88179_read_cmd_fndecl_17082_fns ax88179_read_cmd fndecl 5 17082 &packet_len_sdma_txreq_17082_fns
++ccp_prepare_data_fndecl_17091_fns ccp_prepare_data fndecl 4 17091 NULL
+tx_tx_stop_read_fndecl_17096_fns tx_tx_stop_read fndecl 3 17096 NULL
++__cpuhp_setup_state_fndecl_17097_fns __cpuhp_setup_state fndecl 0-1 17097 NULL
+cx18_queue_get_mdl_fndecl_17103_fns cx18_queue_get_mdl fndecl 3 17103 NULL
+dlm_user_request_fndecl_17104_fns dlm_user_request fndecl 6 17104 NULL
+minors_gendisk_17113_fns minors gendisk 0 17113 NULL
@@ -206124,54 +210642,48 @@ index 0000000..510c554
+lnet_ipif_enumerate_fndecl_17135_fns lnet_ipif_enumerate fndecl 0 17135 NULL
+acpi_hw_validate_register_fndecl_17141_fns acpi_hw_validate_register fndecl 2 17141 NULL
+blockSize_ms_lib_ctrl_17144_fns blockSize ms_lib_ctrl 0 17144 NULL
++size_buf_image_desc_17151_fns size_buf image_desc 0 17151 NULL
+len_read_buffer_17166_fns len read_buffer 0 17166 NULL
+acpi_ex_allocate_name_string_fndecl_17174_fns acpi_ex_allocate_name_string fndecl 1-2 17174 NULL
+pci_raw_set_power_state_fndecl_17186_fns pci_raw_set_power_state fndecl 0 17186 NULL
-+ath10k_write_peer_stats_fndecl_17195_fns ath10k_write_peer_stats fndecl 3 17195 NULL
-+iwl_dbgfs_bt_cmd_read_fndecl_17225_fns iwl_dbgfs_bt_cmd_read fndecl 3 17225 NULL
-+vxge_device_register_fndecl_17243_fns vxge_device_register fndecl 4 17243 NULL
+diva_os_copy_from_user_fndecl_17251_fns diva_os_copy_from_user fndecl 4 17251 NULL
+htc_proc_trailer_fndecl_17252_fns htc_proc_trailer fndecl 3 17252 NULL
+subpgsize_vardecl_subpagetest_c_17265_fns subpgsize vardecl_subpagetest.c 0 17265 NULL
-+dfs_global_file_read_fndecl_17272_fns dfs_global_file_read fndecl 3 17272 NULL
++dfs_global_file_read_fndecl_17272_fns dfs_global_file_read fndecl 3 17272 NULL nohasharray
++offs_nand_bbt_descr_17272_fns offs nand_bbt_descr 0 17272 &dfs_global_file_read_fndecl_17272_fns
+bnx2_nvram_write_fndecl_17277_fns bnx2_nvram_write fndecl 2-4 17277 NULL
+seq_buf_alloc_fndecl_17287_fns seq_buf_alloc fndecl 1 17287 NULL
-+rtl8821ae_c2h_packet_handler_fndecl_17297_fns rtl8821ae_c2h_packet_handler fndecl 3 17297 NULL
+cfs_trace_dump_debug_buffer_usrstr_fndecl_17318_fns cfs_trace_dump_debug_buffer_usrstr fndecl 2 17318 NULL
++MaxBuses__MSG_IOC_FACTS_REPLY_17350_fns MaxBuses _MSG_IOC_FACTS_REPLY 0 17350 NULL
+dvb_dmxdev_read_sec_fndecl_17351_fns dvb_dmxdev_read_sec fndecl 4 17351 NULL
+audio_buf_size_f_uac1_opts_17353_fns audio_buf_size f_uac1_opts 0 17353 NULL
+pebs_buffer_size_x86_pmu_17362_fns pebs_buffer_size x86_pmu 0 17362 NULL
+nilfs_sufile_mark_dirty_fndecl_17370_fns nilfs_sufile_mark_dirty fndecl 2 17370 NULL
-+scatt_size_eata_info_17383_fns scatt_size eata_info 0 17383 NULL
+f_hidg_write_fndecl_17391_fns f_hidg_write fndecl 3 17391 NULL
+posix_acl_fix_xattr_userns_fndecl_17415_fns posix_acl_fix_xattr_userns fndecl 4 17415 NULL
+ufx_setup_modes_fndecl_17419_fns ufx_setup_modes fndecl 4 17419 NULL
+keys_jset_17429_fns keys jset 0 17429 NULL
+btrfs_cmp_data_prepare_fndecl_17436_fns btrfs_cmp_data_prepare fndecl 5 17436 NULL
-+gsmld_receive_buf_fndecl_17440_fns gsmld_receive_buf fndecl 4 17440 NULL
+__alloc_bootmem_node_nopanic_fndecl_17459_fns __alloc_bootmem_node_nopanic fndecl 2 17459 NULL
-+cipso_v4_map_lvl_hton_fndecl_17481_fns cipso_v4_map_lvl_hton fndecl 0 17481 NULL
+sddr09_write_inplace_fndecl_17484_fns sddr09_write_inplace fndecl 6 17484 NULL
-+brcmf_fil_iovar_data_set_fndecl_17512_fns brcmf_fil_iovar_data_set fndecl 4 17512 NULL
+dvb_dmxdev_init_fndecl_17523_fns dvb_dmxdev_init fndecl 0 17523 NULL
+mei_read_fndecl_17528_fns mei_read fndecl 3 17528 NULL
+offset_icmp_bxm_17531_fns offset icmp_bxm 0 17531 NULL
+rndis_set_oid_fndecl_17536_fns rndis_set_oid fndecl 4 17536 NULL
+fb_alloc_cmap_fndecl_17545_fns fb_alloc_cmap fndecl 2 17545 NULL
-+cdm_element_count_vardecl_17565_fns cdm_element_count vardecl 0 17565 NULL
+stack_size_ahd_softc_17574_fns stack_size ahd_softc 0 17574 NULL
+sita_init_fndecl_17588_fns sita_init fndecl 2-1 17588 NULL
-+_iwl_dbgfs_indirection_tbl_write_fndecl_17597_fns _iwl_dbgfs_indirection_tbl_write fndecl 3 17597 NULL
++skb_array_init_fndecl_17590_fns skb_array_init fndecl 2 17590 NULL
+drbg_init_hash_kernel_fndecl_17617_fns drbg_init_hash_kernel fndecl 0 17617 NULL
+dvb_dmx_init_fndecl_17652_fns dvb_dmx_init fndecl 0 17652 NULL
+perf_callchain_entry__sizeof_fndecl_17653_fns perf_callchain_entry__sizeof fndecl 0 17653 NULL
+btrfs_dedupe_file_range_fndecl_17658_fns btrfs_dedupe_file_range fndecl 3 17658 NULL
+submit_queues_vardecl_scsi_debug_c_17671_fns submit_queues vardecl_scsi_debug.c 0 17671 NULL
+wl1251_cmd_template_set_fndecl_17679_fns wl1251_cmd_template_set fndecl 4 17679 NULL
-+iwl_dbgfs_tof_range_request_read_fndecl_17682_fns iwl_dbgfs_tof_range_request_read fndecl 3 17682 NULL
+snd_efw_command_get_phys_meters_fndecl_17725_fns snd_efw_command_get_phys_meters fndecl 3 17725 NULL
+nilfs_cpfile_delete_checkpoint_fndecl_17728_fns nilfs_cpfile_delete_checkpoint fndecl 2 17728 NULL
+mqueue_read_file_fndecl_17735_fns mqueue_read_file fndecl 3 17735 NULL
++cmd_per_lun_Scsi_Host_17757_fns cmd_per_lun Scsi_Host 0 17757 NULL
+of_gpio_count_fndecl_17773_fns of_gpio_count fndecl 0 17773 NULL
+fbcon_prepare_logo_fndecl_17781_fns fbcon_prepare_logo fndecl 5 17781 NULL
+posix_acl_fix_xattr_to_user_fndecl_17816_fns posix_acl_fix_xattr_to_user fndecl 2 17816 NULL
@@ -206179,47 +210691,38 @@ index 0000000..510c554
+xenbus_file_write_fndecl_17817_fns xenbus_file_write fndecl 3 17817 &snd_hda_override_conn_list_fndecl_17817_fns
+tx_tx_start_null_frame_read_fndecl_17818_fns tx_tx_start_null_frame_read fndecl 3 17818 NULL
+qlcnic_sriov_alloc_bc_msg_fndecl_17846_fns qlcnic_sriov_alloc_bc_msg fndecl 2 17846 NULL
++jz4740_dma_prep_dma_cyclic_fndecl_17849_fns jz4740_dma_prep_dma_cyclic fndecl 4-3 17849 NULL
+preferred_minor_md_rdev_17857_fns preferred_minor md_rdev 0 17857 NULL
-+mei_dbgfs_read_devstate_fndecl_17859_fns mei_dbgfs_read_devstate fndecl 3 17859 NULL
+host_int_get_assoc_res_info_fndecl_17869_fns host_int_get_assoc_res_info fndecl 3 17869 NULL
+fuse_get_req_for_background_fndecl_17874_fns fuse_get_req_for_background fndecl 2 17874 NULL
-+debugfs_attr_read_fndecl_17883_fns debugfs_attr_read fndecl 3 17883 NULL
++relay_file_read_subbuf_avail_fndecl_17885_fns relay_file_read_subbuf_avail fndecl 1-0 17885 NULL
++next_portid_vardecl_rio_c_17897_fns next_portid vardecl_rio.c 0 17897 NULL
+netdev_queue_add_kobject_fndecl_17908_fns netdev_queue_add_kobject fndecl 0 17908 NULL
-+arch_gnttab_valloc_fndecl_17911_fns arch_gnttab_valloc fndecl 2 17911 NULL
++fw_clients_num_ishtp_device_17936_fns fw_clients_num ishtp_device 0 17936 NULL
+__kfifo_dma_in_finish_r_fndecl_17938_fns __kfifo_dma_in_finish_r fndecl 2-3 17938 NULL
-+__vxge_hw_mempool_create_fndecl_17944_fns __vxge_hw_mempool_create fndecl 2 17944 NULL
+cache_do_downcall_fndecl_17949_fns cache_do_downcall fndecl 3 17949 NULL
-+videobuf_dma_init_kernel_fndecl_17952_fns videobuf_dma_init_kernel fndecl 3 17952 NULL
+n_special_skd_device_17960_fns n_special skd_device 0 17960 NULL
+qsfp_cks_fndecl_17970_fns qsfp_cks fndecl 2-0 17970 NULL
+nilfs_set_last_segment_fndecl_17983_fns nilfs_set_last_segment fndecl 4 17983 NULL
+count_mlxsw_pci_queue_17987_fns count mlxsw_pci_queue 0 17987 NULL
-+channels_tiadc_device_17992_fns channels tiadc_device 0 17992 NULL
-+cipso_v4_gentag_enum_fndecl_17997_fns cipso_v4_gentag_enum fndecl 0 17997 NULL
-+order_per_bit_cma_18000_fns order_per_bit cma 0 18000 NULL
+size_firmware_buf_18003_fns size firmware_buf 0 18003 NULL
+request_key_async_fndecl_18013_fns request_key_async fndecl 4 18013 NULL
+raid56_parity_recover_fndecl_18019_fns raid56_parity_recover fndecl 4 18019 NULL
+condc_tomoyo_condition_18025_fns condc tomoyo_condition 0 18025 NULL
-+ceph_kvmalloc_fndecl_18026_fns ceph_kvmalloc fndecl 1 18026 NULL
+fip_dl_len_fip_header_18032_fns fip_dl_len fip_header 0 18032 NULL
+copy_items_fndecl_18039_fns copy_items fndecl 7 18039 NULL
-+ld_usb_write_fndecl_18045_fns ld_usb_write fndecl 3 18045 NULL
+sll_halen_sockaddr_ll_18063_fns sll_halen sockaddr_ll 0 18063 NULL
+beacon_interval_read_fndecl_18080_fns beacon_interval_read fndecl 3 18080 NULL
+add_wpa_key_fndecl_18083_fns add_wpa_key fndecl 3 18083 NULL
-+inode2sd_fndecl_18094_fns inode2sd fndecl 3 18094 NULL
-+n_pages_tracing_map_array_18100_fns n_pages tracing_map_array 0 18100 NULL
+thermal_irq_thr_high_read_fndecl_18102_fns thermal_irq_thr_high_read fndecl 3 18102 NULL
-+readcount_usblp_18112_fns readcount usblp 0 18112 NULL nohasharray
-+do_async_mmap_readahead_fndecl_18112_fns do_async_mmap_readahead fndecl 5 18112 &readcount_usblp_18112_fns
++do_async_mmap_readahead_fndecl_18112_fns do_async_mmap_readahead fndecl 5 18112 NULL nohasharray
++readcount_usblp_18112_fns readcount usblp 0 18112 &do_async_mmap_readahead_fndecl_18112_fns
+ring_prod_per_user_data_18125_fns ring_prod per_user_data 0 18125 NULL
+pipeline_enc_rx_stat_fifo_int_read_fndecl_18128_fns pipeline_enc_rx_stat_fifo_int_read fndecl 3 18128 NULL
+acpi_rs_get_resource_source_fndecl_18168_fns acpi_rs_get_resource_source fndecl 0 18168 NULL
+qlcnic_enable_msix_fndecl_18171_fns qlcnic_enable_msix fndecl 2 18171 NULL
+ibmpex_query_sensor_count_fndecl_18214_fns ibmpex_query_sensor_count fndecl 0 18214 NULL
+check_clk_sync_fndecl_18222_fns check_clk_sync fndecl 2 18222 NULL
-+xen_xlate_map_ballooned_pages_fndecl_18227_fns xen_xlate_map_ballooned_pages fndecl 3 18227 NULL
+rx_buf_size_bnx2_18228_fns rx_buf_size bnx2 0 18228 NULL
+ps_pspoll_max_apturn_read_fndecl_18232_fns ps_pspoll_max_apturn_read fndecl 3 18232 NULL
+btrfs_lookup_csums_range_fndecl_18235_fns btrfs_lookup_csums_range fndecl 2-3 18235 NULL
@@ -206227,10 +210730,7 @@ index 0000000..510c554
+video_proc_write_fndecl_18263_fns video_proc_write fndecl 3 18263 NULL
+rds_rdma_pages_fndecl_18268_fns rds_rdma_pages fndecl 0 18268 NULL
+add_pfn_range_mapped_fndecl_18307_fns add_pfn_range_mapped fndecl 1 18307 NULL
-+i2c_read_fndecl_18308_fns i2c_read fndecl 0-6 18308 NULL
-+ieee80211_if_read_fndecl_18322_fns ieee80211_if_read fndecl 3 18322 NULL
-+iwl_dbgfs_channels_read_fndecl_18323_fns iwl_dbgfs_channels_read fndecl 3 18323 NULL nohasharray
-+rpipes_wahc_18323_fns rpipes wahc 0 18323 &iwl_dbgfs_channels_read_fndecl_18323_fns
++rpipes_wahc_18323_fns rpipes wahc 0 18323 NULL
+tx_tx_done_data_read_fndecl_18332_fns tx_tx_done_data_read fndecl 3 18332 NULL
+blk_alloc_flush_queue_fndecl_18340_fns blk_alloc_flush_queue fndecl 3 18340 NULL
+calc_pages_for_fndecl_18341_fns calc_pages_for fndecl 0-2-1 18341 NULL
@@ -206238,7 +210738,10 @@ index 0000000..510c554
+mon_bin_read_fndecl_18346_fns mon_bin_read fndecl 3 18346 NULL
+nsm_get_handle_fndecl_18347_fns nsm_get_handle fndecl 5 18347 NULL
+snd_cs4281_BA0_read_fndecl_18348_fns snd_cs4281_BA0_read fndecl 5 18348 NULL
-+proc_sessionid_read_fndecl_18412_fns proc_sessionid_read fndecl 3 18412 NULL
++lbs_rdrf_write_fndecl_18361_fns lbs_rdrf_write fndecl 3 18361 NULL
++extent_write_locked_range_fndecl_18375_fns extent_write_locked_range fndecl 4 18375 NULL
++proc_sessionid_read_fndecl_18412_fns proc_sessionid_read fndecl 3 18412 NULL nohasharray
++acm_alloc_minor_fndecl_18412_fns acm_alloc_minor fndecl 0 18412 &proc_sessionid_read_fndecl_18412_fns
+raw_seticmpfilter_fndecl_18427_fns raw_seticmpfilter fndecl 3 18427 NULL
+dlmfs_file_write_fndecl_18431_fns dlmfs_file_write fndecl 3 18431 NULL
+error_bar_retry_read_fndecl_18460_fns error_bar_retry_read fndecl 3 18460 NULL
@@ -206249,139 +210752,128 @@ index 0000000..510c554
+kernfs_fop_write_fndecl_18508_fns kernfs_fop_write fndecl 3 18508 NULL
+tty_write_fndecl_18533_fns tty_write fndecl 3 18533 NULL
+tomoyo_update_domain_fndecl_18537_fns tomoyo_update_domain fndecl 2 18537 NULL
-+pci_enable_msix_exact_fndecl_18553_fns pci_enable_msix_exact fndecl 0 18553 NULL nohasharray
-+kvm_hv_set_msr_pw_fndecl_18553_fns kvm_hv_set_msr_pw fndecl 3 18553 &pci_enable_msix_exact_fndecl_18553_fns
++kvm_hv_set_msr_pw_fndecl_18553_fns kvm_hv_set_msr_pw fndecl 3 18553 NULL nohasharray
++pci_enable_msix_exact_fndecl_18553_fns pci_enable_msix_exact fndecl 0 18553 &kvm_hv_set_msr_pw_fndecl_18553_fns
+cifs_security_flags_proc_write_fndecl_18559_fns cifs_security_flags_proc_write fndecl 3 18559 NULL
-+__max_nr_grant_frames_fndecl_18578_fns __max_nr_grant_frames fndecl 0 18578 NULL
+spidev_message_fndecl_18589_fns spidev_message fndecl 3 18589 NULL
+le_readq_fndecl_18598_fns le_readq fndecl 0 18598 NULL
+_wil_cfg80211_merge_extra_ies_fndecl_18611_fns _wil_cfg80211_merge_extra_ies fndecl 2-4 18611 NULL
+fir16_create_fndecl_18645_fns fir16_create fndecl 3 18645 NULL
++bioset_create_fndecl_18655_fns bioset_create fndecl 1 18655 NULL
++MaxDevices__MSG_IOC_FACTS_REPLY_18656_fns MaxDevices _MSG_IOC_FACTS_REPLY 0 18656 NULL
+SYSC_init_module_fndecl_18665_fns SYSC_init_module fndecl 2 18665 NULL
+ies_len_scan_attr_18673_fns ies_len scan_attr 0 18673 NULL
+used_chaoskey_18682_fns used chaoskey 0 18682 NULL
+vid_switchdev_obj_port_fdb_18697_fns vid switchdev_obj_port_fdb 0 18697 NULL
-+ascot2e_i2c_debug_fndecl_18708_fns ascot2e_i2c_debug fndecl 5 18708 NULL
-+iwl_dbgfs_status_read_fndecl_18720_fns iwl_dbgfs_status_read fndecl 3 18720 NULL
-+__az6007_write_fndecl_18721_fns __az6007_write fndecl 6 18721 NULL
+acpi_pcc_get_sqty_fndecl_18731_fns acpi_pcc_get_sqty fndecl 0 18731 NULL
-+pipe_set_size_fndecl_18759_fns pipe_set_size fndecl 2 18759 NULL
-+ppp_cp_parse_cr_fndecl_18765_fns ppp_cp_parse_cr fndecl 4 18765 NULL
++count_configs_fndecl_18742_fns count_configs fndecl 0 18742 NULL
++nvif_device_init_fndecl_18779_fns nvif_device_init fndecl 5 18779 NULL
+dwc2_hcd_urb_alloc_fndecl_18802_fns dwc2_hcd_urb_alloc fndecl 2 18802 NULL
-+rd_length_gfs2_rgrpd_18804_fns rd_length gfs2_rgrpd 0 18804 NULL
+ath6kl_debug_roam_tbl_event_fndecl_18811_fns ath6kl_debug_roam_tbl_event fndecl 3 18811 NULL
+gfn_to_hva_memslot_fndecl_18818_fns gfn_to_hva_memslot fndecl 2 18818 NULL
+dvb_ringbuffer_write_user_fndecl_18821_fns dvb_ringbuffer_write_user fndecl 3 18821 NULL
++clk_num_clk_onecell_data_18830_fns clk_num clk_onecell_data 0 18830 NULL
+DriverQueueDepth_DAC960_Controller_18839_fns DriverQueueDepth DAC960_Controller 0 18839 NULL
+private_data_len_ib_cm_req_param_18848_fns private_data_len ib_cm_req_param 0 18848 NULL
+length_acpi_resource_18863_fns length acpi_resource 0 18863 NULL
+uinput_ioctl_fndecl_18893_fns uinput_ioctl fndecl 2 18893 NULL
-+sbc_get_write_same_sectors_fndecl_18902_fns sbc_get_write_same_sectors fndecl 0 18902 NULL
+pwr_elp_enter_read_fndecl_18911_fns pwr_elp_enter_read fndecl 3 18911 NULL
+ps_pspoll_utilization_read_fndecl_18914_fns ps_pspoll_utilization_read fndecl 3 18914 NULL
+kvm_pin_pages_fndecl_18922_fns kvm_pin_pages fndecl 2 18922 NULL
-+cciss_allocate_sg_chain_blocks_fndecl_18923_fns cciss_allocate_sg_chain_blocks fndecl 3 18923 NULL
++cciss_allocate_sg_chain_blocks_fndecl_18923_fns cciss_allocate_sg_chain_blocks fndecl 3-2 18923 NULL
++size_gf100_gr_18928_fns size gf100_gr 0 18928 NULL
+spidev_get_ioc_message_fndecl_18931_fns spidev_get_ioc_message fndecl 1 18931 NULL
-+i2c_hack_cx25840_fndecl_18948_fns i2c_hack_cx25840 fndecl 4-6 18948 NULL nohasharray
-+uhci_debug_read_fndecl_18948_fns uhci_debug_read fndecl 3 18948 &i2c_hack_cx25840_fndecl_18948_fns
-+mlx4_en_create_tx_ring_fndecl_18977_fns mlx4_en_create_tx_ring fndecl 3 18977 NULL
++i2c_hack_cx25840_fndecl_18948_fns i2c_hack_cx25840 fndecl 4-6 18948 NULL
+edac_device_alloc_ctl_info_fndecl_18982_fns edac_device_alloc_ctl_info fndecl 1 18982 NULL
+p9_get_mapped_pages_fndecl_18988_fns p9_get_mapped_pages fndecl 4 18988 NULL nohasharray
+ebcnt_vardecl_subpagetest_c_18988_fns ebcnt vardecl_subpagetest.c 0 18988 &p9_get_mapped_pages_fndecl_18988_fns
+lbs_highsnr_read_fndecl_19000_fns lbs_highsnr_read fndecl 3 19000 NULL
+tipc_subseq_alloc_fndecl_19030_fns tipc_subseq_alloc fndecl 1 19030 NULL
-+ll_statahead_one_fndecl_19033_fns ll_statahead_one fndecl 3 19033 NULL
+mei_cl_read_start_fndecl_19077_fns mei_cl_read_start fndecl 2 19077 NULL
+btrfs_qgroup_inherit_fndecl_19103_fns btrfs_qgroup_inherit fndecl 4 19103 NULL
+sctp_setsockopt_connectx_fndecl_19114_fns sctp_setsockopt_connectx fndecl 3 19114 NULL
+alloc_msg_fndecl_19115_fns alloc_msg fndecl 1 19115 NULL
++gb_module_create_fndecl_19119_fns gb_module_create fndecl 3 19119 NULL
+rx_keycache_size_p54_common_19128_fns rx_keycache_size p54_common 0 19128 NULL
+start_vivitar_cam_fndecl_19144_fns start_vivitar_cam fndecl 0 19144 NULL
+ipmi_addr_length_fndecl_19149_fns ipmi_addr_length fndecl 0 19149 NULL
++inftl_write_oob_fndecl_19154_fns inftl_write_oob fndecl 3 19154 NULL
+alloc_indirect_fndecl_19156_fns alloc_indirect fndecl 2 19156 NULL
-+len_ntb_queue_entry_19166_fns len ntb_queue_entry 0 19166 NULL nohasharray
-+ms_nvme_ns_19166_fns ms nvme_ns 0 19166 &len_ntb_queue_entry_19166_fns
-+max_pages_per_mr_srp_device_19171_fns max_pages_per_mr srp_device 0 19171 NULL
++len_ntb_queue_entry_19166_fns len ntb_queue_entry 0 19166 NULL
+lprocfs_alloc_stats_fndecl_19181_fns lprocfs_alloc_stats fndecl 1 19181 NULL
++read_packet_fndecl_19183_fns read_packet fndecl 5 19183 NULL
+dfs_global_file_write_fndecl_19187_fns dfs_global_file_write fndecl 3 19187 NULL
+ext4_xattr_get_fndecl_19214_fns ext4_xattr_get fndecl 0 19214 NULL
+SYSC_fsetxattr_fndecl_19220_fns SYSC_fsetxattr fndecl 4 19220 NULL
+cmds_vardecl_ambassador_c_19230_fns cmds vardecl_ambassador.c 0 19230 NULL
+get_arg_fndecl_19245_fns get_arg fndecl 3 19245 NULL
+sb_segnum_nilfs_segment_buffer_19276_fns sb_segnum nilfs_segment_buffer 0 19276 NULL
-+subbuf_read_actor_fndecl_19295_fns subbuf_read_actor fndecl 3 19295 NULL
+security_kernel_post_read_file_fndecl_19301_fns security_kernel_post_read_file fndecl 3 19301 NULL
+sys_sched_getattr_fndecl_19313_fns sys_sched_getattr fndecl 3 19313 NULL
++mlx4_alloc_resize_buf_fndecl_19329_fns mlx4_alloc_resize_buf fndecl 3 19329 NULL
+__vxge_hw_blockpool_malloc_fndecl_19337_fns __vxge_hw_blockpool_malloc fndecl 2 19337 NULL
++do_writev_fndecl_19339_fns do_writev fndecl 3 19339 NULL
+data_sge_offset_mpt3_ioctl_command_19355_fns data_sge_offset mpt3_ioctl_command 0 19355 NULL
-+sctp_setsockopt_autoclose_fndecl_19356_fns sctp_setsockopt_autoclose fndecl 3 19356 NULL nohasharray
-+qlcnic_83xx_sysfs_flash_read_handler_fndecl_19356_fns qlcnic_83xx_sysfs_flash_read_handler fndecl 6 19356 &sctp_setsockopt_autoclose_fndecl_19356_fns
++qlcnic_83xx_sysfs_flash_read_handler_fndecl_19356_fns qlcnic_83xx_sysfs_flash_read_handler fndecl 6 19356 NULL nohasharray
++sctp_setsockopt_autoclose_fndecl_19356_fns sctp_setsockopt_autoclose fndecl 3 19356 &qlcnic_83xx_sysfs_flash_read_handler_fndecl_19356_fns
+nvme_trans_bdev_char_page_fndecl_19382_fns nvme_trans_bdev_char_page fndecl 3 19382 NULL
+ControllerQueueDepth_DAC960_Controller_19386_fns ControllerQueueDepth DAC960_Controller 0 19386 NULL
+rx_filter_max_arp_queue_dep_read_fndecl_19400_fns rx_filter_max_arp_queue_dep_read fndecl 3 19400 NULL
+setup_req_fndecl_19403_fns setup_req fndecl 3 19403 NULL
-+_iwl_dbgfs_cont_recording_write_fndecl_19421_fns _iwl_dbgfs_cont_recording_write fndecl 3 19421 NULL
+sn9c2028_long_command_fndecl_19445_fns sn9c2028_long_command fndecl 0 19445 NULL
+compat_sys_move_pages_fndecl_19446_fns compat_sys_move_pages fndecl 2 19446 NULL
+sys_setdomainname_fndecl_19462_fns sys_setdomainname fndecl 2 19462 NULL
+reg_read_fndecl_19498_fns reg_read fndecl 0 19498 NULL
-+access_process_vm_fndecl_19503_fns access_process_vm fndecl 0 19503 NULL nohasharray
-+cxacru_cm_get_array_fndecl_19503_fns cxacru_cm_get_array fndecl 4 19503 &access_process_vm_fndecl_19503_fns
++libfc_vport_create_fndecl_19500_fns libfc_vport_create fndecl 2 19500 NULL
++cxacru_cm_get_array_fndecl_19503_fns cxacru_cm_get_array fndecl 4 19503 NULL
+ecryptfs_write_tag_70_packet_fndecl_19510_fns ecryptfs_write_tag_70_packet fndecl 6 19510 NULL
+do_pages_stat_fndecl_19526_fns do_pages_stat fndecl 2 19526 NULL
+netdev_register_kobject_fndecl_19535_fns netdev_register_kobject fndecl 0 19535 NULL nohasharray
+d40_sg_2_dmalen_fndecl_19535_fns d40_sg_2_dmalen fndecl 3-4-0 19535 &netdev_register_kobject_fndecl_19535_fns
+rtw_android_get_rssi_fndecl_19542_fns rtw_android_get_rssi fndecl 0 19542 NULL
+response_length_mlx5_ib_query_device_resp_19546_fns response_length mlx5_ib_query_device_resp 0 19546 NULL
-+at76_set_card_command_fndecl_19556_fns at76_set_card_command fndecl 4 19556 NULL
++cmpt_entry_sz_mlx4_dev_cap_19564_fns cmpt_entry_sz mlx4_dev_cap 0 19564 NULL
+buf_size_pxa3xx_nand_info_19573_fns buf_size pxa3xx_nand_info 0 19573 NULL
+snd_seq_expand_var_event_fndecl_19602_fns snd_seq_expand_var_event fndecl 0 19602 NULL
+vmbus_establish_gpadl_fndecl_19612_fns vmbus_establish_gpadl fndecl 3 19612 NULL
+__gfn_to_pfn_memslot_fndecl_19617_fns __gfn_to_pfn_memslot fndecl 2 19617 NULL
+sys_llistxattr_fndecl_19623_fns sys_llistxattr fndecl 3 19623 NULL
-+get_rq_pas_size_fndecl_19651_fns get_rq_pas_size fndecl 0 19651 NULL
+thermal_false_irq_read_fndecl_19654_fns thermal_false_irq_read fndecl 3 19654 NULL
+btrfs_file_extent_inline_item_len_fndecl_19660_fns btrfs_file_extent_inline_item_len fndecl 0 19660 NULL
++tty_register_device_fndecl_19667_fns tty_register_device fndecl 2 19667 NULL
+fsl_edma_prep_slave_sg_fndecl_19672_fns fsl_edma_prep_slave_sg fndecl 3 19672 NULL
+bch_alloc_fndecl_19682_fns bch_alloc fndecl 1 19682 NULL
-+ath10k_dbg_sta_write_delba_fndecl_19689_fns ath10k_dbg_sta_write_delba fndecl 3 19689 NULL
-+st_fixed_buffer_size_vardecl_st_c_19699_fns st_fixed_buffer_size vardecl_st.c 0 19699 NULL
+xfs_buf_get_maps_fndecl_19702_fns xfs_buf_get_maps fndecl 2 19702 NULL
+acpi_read_fast_fndecl_19709_fns acpi_read_fast fndecl 3-2 19709 NULL
+msc_win_to_user_fndecl_19728_fns msc_win_to_user fndecl 3 19728 NULL
-+mps_trc_write_fndecl_19736_fns mps_trc_write fndecl 3 19736 NULL
+max_active_conns_bnx2i_hba_19740_fns max_active_conns bnx2i_hba 0 19740 NULL
-+bytesperline_v4l2_pix_format_19741_fns bytesperline v4l2_pix_format 0 19741 NULL
++nftl_write_oob_fndecl_19745_fns nftl_write_oob fndecl 3 19745 NULL
+mpt_raid_phys_disk_get_num_paths_fndecl_19752_fns mpt_raid_phys_disk_get_num_paths fndecl 0 19752 NULL
+pvscsi_get_max_targets_fndecl_19802_fns pvscsi_get_max_targets fndecl 0 19802 NULL
+size_vring_19817_fns size vring 0 19817 NULL
+ip_send_unicast_reply_fndecl_19820_fns ip_send_unicast_reply fndecl 7 19820 NULL
-+__nfs4_get_acl_uncached_fndecl_19830_fns __nfs4_get_acl_uncached fndecl 3 19830 NULL
++_osd_req_list_objects_fndecl_19839_fns _osd_req_list_objects fndecl 6 19839 NULL
+rpos_cm4000_dev_19844_fns rpos cm4000_dev 0 19844 NULL
+ath6kl_force_roam_write_fndecl_19881_fns ath6kl_force_roam_write fndecl 3 19881 NULL
+goldfish_audio_write_fndecl_19887_fns goldfish_audio_write fndecl 3 19887 NULL
+count_strings_fndecl_19912_fns count_strings fndecl 0 19912 NULL
+get_connectors_for_crtc_fndecl_19920_fns get_connectors_for_crtc fndecl 0 19920 NULL
-+brcmu_dbg_hex_dump_fndecl_19925_fns brcmu_dbg_hex_dump fndecl 2 19925 NULL
++do_readv_fndecl_19922_fns do_readv fndecl 3 19922 NULL
+__usbnet_read_cmd_fndecl_19928_fns __usbnet_read_cmd fndecl 7 19928 NULL
-+dvb_ringbuffer_pkt_read_user_fndecl_19932_fns dvb_ringbuffer_pkt_read_user fndecl 3-2-5 19932 NULL
++dvb_ringbuffer_pkt_read_user_fndecl_19932_fns dvb_ringbuffer_pkt_read_user fndecl 2-3-5 19932 NULL
+ima_eventdigest_init_common_fndecl_19937_fns ima_eventdigest_init_common fndecl 2 19937 NULL
+max_buckets_crush_map_19942_fns max_buckets crush_map 0 19942 NULL
-+check_crc_fndecl_19956_fns check_crc fndecl 2 19956 NULL
+snd_rawmidi_kernel_read_fndecl_19963_fns snd_rawmidi_kernel_read fndecl 3 19963 NULL
-+iwl_dbgfs_ctdp_budget_read_fndecl_19964_fns iwl_dbgfs_ctdp_budget_read fndecl 3 19964 NULL
+vga_arb_read_fndecl_19973_fns vga_arb_read fndecl 3 19973 NULL
+paravirt_read_msr_fndecl_19974_fns paravirt_read_msr fndecl 0 19974 NULL
+le_max_key_size_read_fndecl_19975_fns le_max_key_size_read fndecl 3 19975 NULL
-+f2fs_insert_range_fndecl_19990_fns f2fs_insert_range fndecl 2-3 19990 NULL
+hid_register_field_fndecl_19993_fns hid_register_field fndecl 2-3 19993 NULL
+of_get_nand_ecc_step_size_fndecl_20001_fns of_get_nand_ecc_step_size fndecl 0 20001 NULL
-+tx_nr_rings_per_tc_bnxt_20008_fns tx_nr_rings_per_tc bnxt 0 20008 NULL
+ocrdma_alloc_lkey_fndecl_20045_fns ocrdma_alloc_lkey fndecl 5 20045 NULL
+prctl_set_auxv_fndecl_20068_fns prctl_set_auxv fndecl 3 20068 NULL
+fb_deferred_io_fsync_fndecl_20083_fns fb_deferred_io_fsync fndecl 2-3 20083 NULL
+compat_rawv6_setsockopt_fndecl_20084_fns compat_rawv6_setsockopt fndecl 5 20084 NULL
-+ath10k_read_chip_id_fndecl_20090_fns ath10k_read_chip_id fndecl 3 20090 NULL
++submit_rtpg_fndecl_20091_fns submit_rtpg fndecl 3 20091 NULL
+do_mincore_fndecl_20105_fns do_mincore fndecl 0-1-2 20105 NULL
+snd_mixart_BA1_read_fndecl_20169_fns snd_mixart_BA1_read fndecl 5 20169 NULL
+__kmalloc_track_caller_fndecl_20188_fns __kmalloc_track_caller fndecl 1 20188 NULL
@@ -206389,11 +210881,9 @@ index 0000000..510c554
+qp_attach_mbox_size_fndecl_20191_fns qp_attach_mbox_size fndecl 0 20191 NULL
+max_frame_size__mgslpc_info_20204_fns max_frame_size _mgslpc_info 0 20204 NULL
+sbq_len_rx_ring_20205_fns sbq_len rx_ring 0 20205 NULL
-+i40e_dbg_netdev_ops_write_fndecl_20206_fns i40e_dbg_netdev_ops_write fndecl 3 20206 NULL
+kfifo_copy_from_user_fndecl_20208_fns kfifo_copy_from_user fndecl 0-4-3 20208 NULL
+sound_write_fndecl_20221_fns sound_write fndecl 3 20221 NULL
+use_sg_osst_buffer_20225_fns use_sg osst_buffer 0 20225 NULL
-+iwl_dbgfs_tx_queue_read_fndecl_20232_fns iwl_dbgfs_tx_queue_read fndecl 3 20232 NULL
+ll_rw_extents_stats_seq_write_fndecl_20234_fns ll_rw_extents_stats_seq_write fndecl 3 20234 NULL
+rx_agg_bmap_size_bnxt_rx_ring_info_20244_fns rx_agg_bmap_size bnxt_rx_ring_info 0 20244 NULL
+arm_setup_iommu_dma_ops_fndecl_20272_fns arm_setup_iommu_dma_ops fndecl 3 20272 NULL
@@ -206402,36 +210892,36 @@ index 0000000..510c554
+round_pipe_size_fndecl_20302_fns round_pipe_size fndecl 0 20302 NULL
+cx18_read_pos_fndecl_20312_fns cx18_read_pos fndecl 3 20312 NULL
+wilc_spi_rx_fndecl_20314_fns wilc_spi_rx fndecl 3 20314 NULL
-+short_retry_limit_read_fndecl_20316_fns short_retry_limit_read fndecl 3 20316 NULL
+ati_create_gatt_pages_fndecl_20321_fns ati_create_gatt_pages fndecl 1 20321 NULL
++num_cvts_hdmi_spec_20322_fns num_cvts hdmi_spec 0 20322 NULL
+i_ecryptfs_parse_tag_70_packet_silly_stack_20325_fns i ecryptfs_parse_tag_70_packet_silly_stack 0 20325 NULL
+cxgbi_alloc_big_mem_fndecl_20336_fns cxgbi_alloc_big_mem fndecl 1 20336 NULL
+ll_rw_offset_stats_seq_write_fndecl_20371_fns ll_rw_offset_stats_seq_write fndecl 3 20371 NULL
+drm_fb_helper_sys_read_fndecl_20376_fns drm_fb_helper_sys_read fndecl 3 20376 NULL
++sys_pwritev2_fndecl_20390_fns sys_pwritev2 fndecl 3 20390 NULL
+periodic_size_fotg210_hcd_20395_fns periodic_size fotg210_hcd 0 20395 NULL
+pwr_rcvd_bcns_cnt_read_fndecl_20405_fns pwr_rcvd_bcns_cnt_read fndecl 3 20405 NULL
+diversity_total_num_of_toggles_read_fndecl_20407_fns diversity_total_num_of_toggles_read fndecl 3 20407 NULL
+ncp__vol2io_fndecl_20439_fns ncp__vol2io fndecl 5 20439 NULL
+error_elp_while_rx_exch_read_fndecl_20460_fns error_elp_while_rx_exch_read fndecl 3 20460 NULL
-+key_tx_spec_read_fndecl_20461_fns key_tx_spec_read fndecl 3 20461 NULL
-+gsm_control_rls_fndecl_20490_fns gsm_control_rls fndecl 3 20490 NULL
-+pageshift_sddr09_card_info_20494_fns pageshift sddr09_card_info 0 20494 NULL
-+nrbchan_mISDNdevice_20497_fns nrbchan mISDNdevice 0 20497 NULL
+sysfs_create_group_fndecl_20504_fns sysfs_create_group fndecl 0 20504 NULL
-+read_from_oldmem_fndecl_20506_fns read_from_oldmem fndecl 2 20506 NULL
++tty_port_register_device_attr_fndecl_20510_fns tty_port_register_device_attr fndecl 3 20510 NULL
+data_len_icmp_bxm_20511_fns data_len icmp_bxm 0 20511 NULL
+x86_emulate_instruction_fndecl_20526_fns x86_emulate_instruction fndecl 2 20526 NULL
-+mlx5_core_req_pages_handler_fndecl_20540_fns mlx5_core_req_pages_handler fndecl 3 20540 NULL
++sr_read_fndecl_20533_fns sr_read fndecl 3 20533 NULL
+input_estimate_events_per_packet_fndecl_20548_fns input_estimate_events_per_packet fndecl 0 20548 NULL
+wacom_calc_hid_res_fndecl_20558_fns wacom_calc_hid_res fndecl 1 20558 NULL
-+isdn_readbchan_fndecl_20570_fns isdn_readbchan fndecl 5-0 20570 NULL
++nvm_submit_ppa_fndecl_20560_fns nvm_submit_ppa fndecl 7 20560 NULL
++mtdchar_writeoob_fndecl_20562_fns mtdchar_writeoob fndecl 4 20562 NULL
++isdn_readbchan_fndecl_20570_fns isdn_readbchan fndecl 0 20570 NULL
+nullb_indexes_vardecl_null_blk_c_20571_fns nullb_indexes vardecl_null_blk.c 0 20571 NULL
+nfp_net_shadow_tx_rings_prepare_fndecl_20574_fns nfp_net_shadow_tx_rings_prepare fndecl 2 20574 NULL
+pci_add_cap_save_buffer_fndecl_20593_fns pci_add_cap_save_buffer fndecl 3 20593 NULL
+nilfs_cpfile_set_snapshot_fndecl_20616_fns nilfs_cpfile_set_snapshot fndecl 2 20616 NULL
+snd_pcm_lib_readv_transfer_fndecl_20635_fns snd_pcm_lib_readv_transfer fndecl 5 20635 NULL
+cursor_size_fbcon_ops_20640_fns cursor_size fbcon_ops 0 20640 NULL
-+bcm2835_dma_create_cb_chain_fndecl_20648_fns bcm2835_dma_create_cb_chain fndecl 6 20648 NULL
++nr_pages_ore_io_state_20648_fns nr_pages ore_io_state 0 20648 NULL nohasharray
++bcm2835_dma_create_cb_chain_fndecl_20648_fns bcm2835_dma_create_cb_chain fndecl 6 20648 &nr_pages_ore_io_state_20648_fns
+security_context_to_sid_default_fndecl_20663_fns security_context_to_sid_default fndecl 2 20663 NULL
+kvm_handle_bad_page_fndecl_20668_fns kvm_handle_bad_page fndecl 2 20668 NULL
+btrfs_dir_name_len_fndecl_20686_fns btrfs_dir_name_len fndecl 0 20686 NULL
@@ -206440,49 +210930,45 @@ index 0000000..510c554
+len_asymmetric_key_id_20717_fns len asymmetric_key_id 0 20717 NULL
+alloc_smp_resp_fndecl_20733_fns alloc_smp_resp fndecl 1 20733 NULL
+stv0680_set_video_mode_fndecl_20735_fns stv0680_set_video_mode fndecl 0 20735 NULL
-+msgbuflen_blogic_adapter_20746_fns msgbuflen blogic_adapter 0 20746 NULL
++max_io_length_ore_layout_20738_fns max_io_length ore_layout 0 20738 NULL
+rb_alloc_fndecl_20749_fns rb_alloc fndecl 1 20749 NULL
+ttusb2_msg_fndecl_20751_fns ttusb2_msg fndecl 4 20751 NULL
-+read_file_antenna_diversity_fndecl_20758_fns read_file_antenna_diversity fndecl 3 20758 NULL
+simple_write_to_buffer_fndecl_20769_fns simple_write_to_buffer fndecl 2-5 20769 NULL
++amdgpu_sched_jobs_vardecl_20778_fns amdgpu_sched_jobs vardecl 0 20778 NULL
+compat_sys_migrate_pages_fndecl_20806_fns compat_sys_migrate_pages fndecl 2 20806 NULL
+filldir_fndecl_20820_fns filldir fndecl 3 20820 NULL
+fill_write_buffer_fndecl_20821_fns fill_write_buffer fndecl 3 20821 NULL
+aux_size_dm_bufio_client_20827_fns aux_size dm_bufio_client 0 20827 NULL
+mempool_create_node_fndecl_20836_fns mempool_create_node fndecl 1 20836 NULL
++num_crtc_radeon_device_20838_fns num_crtc radeon_device 0 20838 NULL
+alloc_context_fndecl_20841_fns alloc_context fndecl 1 20841 NULL
+shmem_pread_slow_fndecl_20845_fns shmem_pread_slow fndecl 2-3 20845 NULL nohasharray
+udp_sendpage_fndecl_20845_fns udp_sendpage fndecl 3 20845 &shmem_pread_slow_fndecl_20845_fns
+acpi_copy_property_array_u64_fndecl_20846_fns acpi_copy_property_array_u64 fndecl 0 20846 NULL
+uinput_ioctl_handler_fndecl_20862_fns uinput_ioctl_handler fndecl 2 20862 NULL
-+codec_reg_write_file_fndecl_20887_fns codec_reg_write_file fndecl 3 20887 NULL
+aggr_size_tx_agg_len_read_fndecl_20910_fns aggr_size_tx_agg_len_read fndecl 3 20910 NULL
+btrfs_next_leaf_fndecl_20915_fns btrfs_next_leaf fndecl 0 20915 NULL
-+key_key_read_fndecl_20922_fns key_key_read fndecl 3 20922 NULL
-+_iwl_dbgfs_d3_sram_write_fndecl_20960_fns _iwl_dbgfs_d3_sram_write fndecl 3 20960 NULL
+dbDiscardAG_fndecl_20969_fns dbDiscardAG fndecl 3 20969 NULL
+count_cma_20973_fns count cma 0 20973 NULL nohasharray
+compat_sys_setsockopt_fndecl_20973_fns compat_sys_setsockopt fndecl 5 20973 &count_cma_20973_fns
+spidev_compat_ioc_message_fndecl_20986_fns spidev_compat_ioc_message fndecl 2 20986 NULL
+get_fd_set_fndecl_21001_fns get_fd_set fndecl 1 21001 NULL
-+nouveau_debugfs_pstate_set_fndecl_21004_fns nouveau_debugfs_pstate_set fndecl 3 21004 NULL
+br_fdb_insert_fndecl_21006_fns br_fdb_insert fndecl 4 21006 NULL
+sst_hsw_module_set_param_fndecl_21007_fns sst_hsw_module_set_param fndecl 5 21007 NULL
+nvram_write_fndecl_21029_fns nvram_write fndecl 3 21029 NULL
+efivarfs_file_read_fndecl_21030_fns efivarfs_file_read fndecl 3 21030 NULL
+comedi_buf_read_n_available_fndecl_21032_fns comedi_buf_read_n_available fndecl 0 21032 NULL
+pipeline_pre_proc_swi_read_fndecl_21033_fns pipeline_pre_proc_swi_read fndecl 3 21033 NULL
-+garp_attr_create_fndecl_21048_fns garp_attr_create fndecl 3 21048 NULL
-+memcpy_to_pmem_fndecl_21058_fns memcpy_to_pmem fndecl 3 21058 NULL
+chaoskey_rng_read_fndecl_21064_fns chaoskey_rng_read fndecl 3 21064 NULL
+vcs_write_fndecl_21077_fns vcs_write fndecl 3 21077 NULL
++req_rate_clk_core_21080_fns req_rate clk_core 0 21080 NULL
++max_counters_mlx4_caps_21095_fns max_counters mlx4_caps 0 21095 NULL
+rb_alloc_aux_fndecl_21108_fns rb_alloc_aux fndecl 4 21108 NULL
-+hdrlen_ipv6_opt_hdr_21121_fns hdrlen ipv6_opt_hdr 0 21121 NULL
++header_length_scsi_mode_data_21117_fns header_length scsi_mode_data 0 21117 NULL
+size_ndis_80211_key_21124_fns size ndis_80211_key 0 21124 NULL
+metadata_dst_alloc_fndecl_21136_fns metadata_dst_alloc fndecl 1 21136 NULL
+hsu_dma_prep_slave_sg_fndecl_21155_fns hsu_dma_prep_slave_sg fndecl 3 21155 NULL
-+mei_write_fndecl_21174_fns mei_write fndecl 3 21174 NULL nohasharray
-+xfs_check_block_fndecl_21174_fns xfs_check_block fndecl 4 21174 &mei_write_fndecl_21174_fns
++xfs_check_block_fndecl_21174_fns xfs_check_block fndecl 4 21174 NULL
+snd_hdsp_capture_copy_fndecl_21176_fns snd_hdsp_capture_copy fndecl 5 21176 NULL
+n_ir_fw_ohci_21205_fns n_ir fw_ohci 0 21205 NULL
+mtip_hw_read_registers_fndecl_21206_fns mtip_hw_read_registers fndecl 3 21206 NULL
@@ -206491,29 +210977,31 @@ index 0000000..510c554
+sctp_getsockopt_events_fndecl_21252_fns sctp_getsockopt_events fndecl 2 21252 NULL
+edac_mc_alloc_fndecl_21256_fns edac_mc_alloc fndecl 4 21256 NULL
+object_name_len_compat_ncp_objectname_ioctl_21274_fns object_name_len compat_ncp_objectname_ioctl 0 21274 NULL
-+fm10k_alloc_q_vector_fndecl_21285_fns fm10k_alloc_q_vector fndecl 4-6 21285 NULL
++fm10k_alloc_q_vector_fndecl_21285_fns fm10k_alloc_q_vector fndecl 6-4 21285 NULL
+tx_tx_starts_read_fndecl_21298_fns tx_tx_starts_read fndecl 3 21298 NULL
++nvdimm_major_vardecl_21302_fns nvdimm_major vardecl 0 21302 NULL
+aligned_kmalloc_fndecl_21311_fns aligned_kmalloc fndecl 1 21311 NULL
-+_iwl_dbgfs_tx_flush_write_fndecl_21320_fns _iwl_dbgfs_tx_flush_write fndecl 3 21320 NULL
-+sq_len_queue_set_21321_fns sq_len queue_set 0 21321 NULL
++i915_compat_ioctl_fndecl_21339_fns i915_compat_ioctl fndecl 2 21339 NULL
+temp_count_applesmc_registers_21387_fns temp_count applesmc_registers 0 21387 NULL
+ci_ll_write_fndecl_21391_fns ci_ll_write fndecl 4 21391 NULL
+digest_size_dm_verity_21399_fns digest_size dm_verity 0 21399 NULL
+v4l2_fh_open_fndecl_21406_fns v4l2_fh_open fndecl 0 21406 NULL
+length_r3964_block_header_21407_fns length r3964_block_header 0 21407 NULL
-+mesh_id_len_ieee80211_if_mesh_21412_fns mesh_id_len ieee80211_if_mesh 0 21412 NULL
++sctp_setsockopt_auth_key_fndecl_21442_fns sctp_setsockopt_auth_key fndecl 3 21442 NULL
+fwnode_property_read_u32_array_fndecl_21467_fns fwnode_property_read_u32_array fndecl 0 21467 NULL
+intel_sdvo_set_value_fndecl_21524_fns intel_sdvo_set_value fndecl 4 21524 NULL
+kvm_clear_guest_page_fndecl_21527_fns kvm_clear_guest_page fndecl 4-2 21527 NULL
++ooblen_mtd_oob_ops_21531_fns ooblen mtd_oob_ops 0 21531 NULL
+alloc_btrfs_bio_fndecl_21533_fns alloc_btrfs_bio fndecl 2-1 21533 NULL nohasharray
+picolcd_fb_write_fndecl_21533_fns picolcd_fb_write fndecl 3 21533 &alloc_btrfs_bio_fndecl_21533_fns
+viafb_iga2_odev_proc_write_fndecl_21544_fns viafb_iga2_odev_proc_write fndecl 3 21544 NULL
+__erst_read_to_erange_fndecl_21558_fns __erst_read_to_erange fndecl 0 21558 NULL
+le_min_key_size_write_fndecl_21573_fns le_min_key_size_write fndecl 3 21573 NULL
-+il_dbgfs_sensitivity_read_fndecl_21585_fns il_dbgfs_sensitivity_read fndecl 3 21585 NULL
++uv_possible_blades_vardecl_21579_fns uv_possible_blades vardecl 0 21579 NULL
+xfs_buf_map_from_irec_fndecl_21587_fns xfs_buf_map_from_irec fndecl 5 21587 NULL
+isdn_v110_open_fndecl_21601_fns isdn_v110_open fndecl 3 21601 NULL
+rxpipe_rx_prep_beacon_drop_read_fndecl_21616_fns rxpipe_rx_prep_beacon_drop_read fndecl 3 21616 NULL
++sctp_make_datafrag_empty_fndecl_21642_fns sctp_make_datafrag_empty fndecl 5 21642 NULL
+num_fdsb_msix_i40e_pf_21645_fns num_fdsb_msix i40e_pf 0 21645 NULL
+affs_file_fsync_fndecl_21669_fns affs_file_fsync fndecl 2-3 21669 NULL
+bio_alloc_bioset_fndecl_21671_fns bio_alloc_bioset fndecl 2 21671 NULL nohasharray
@@ -206522,78 +211010,69 @@ index 0000000..510c554
+bsg_job_size_request_queue_21696_fns bsg_job_size request_queue 0 21696 NULL
+batadv_tvlv_container_list_size_fndecl_21711_fns batadv_tvlv_container_list_size fndecl 0 21711 NULL
+squashfs_read_fragment_index_table_fndecl_21721_fns squashfs_read_fragment_index_table fndecl 4 21721 NULL
++smk_write_syslog_fndecl_21746_fns smk_write_syslog fndecl 3 21746 NULL
++id_gpio_device_21753_fns id gpio_device 0 21753 NULL
++regmap_get_val_bytes_fndecl_21774_fns regmap_get_val_bytes fndecl 0 21774 NULL
+ath6kl_fwlog_mask_read_fndecl_21777_fns ath6kl_fwlog_mask_read fndecl 3 21777 NULL
-+iwl_dbgfs_log_event_read_fndecl_21800_fns iwl_dbgfs_log_event_read fndecl 3 21800 NULL
-+__set_print_fmt_fndecl_21801_fns __set_print_fmt fndecl 0 21801 NULL
+__svc_create_fndecl_21804_fns __svc_create fndecl 3 21804 NULL
+nfs4_copy_file_range_fndecl_21835_fns nfs4_copy_file_range fndecl 2-5 21835 NULL
+check_load_and_stores_fndecl_21836_fns check_load_and_stores fndecl 2 21836 NULL
++device_create_vargs_fndecl_21838_fns device_create_vargs fndecl 3 21838 NULL
+enable_read_fndecl_21846_fns enable_read fndecl 3 21846 NULL
+btrfs_file_extent_inline_len_fndecl_21847_fns btrfs_file_extent_inline_len fndecl 0 21847 NULL
-+_ore_get_io_state_fndecl_21861_fns _ore_get_io_state fndecl 3-4-5 21861 NULL
++_ore_get_io_state_fndecl_21861_fns _ore_get_io_state fndecl 5-4-3 21861 NULL
+mlx4_init_icm_table_fndecl_21876_fns mlx4_init_icm_table fndecl 4-5 21876 NULL
-+picolcd_debug_reset_write_fndecl_21888_fns picolcd_debug_reset_write fndecl 3 21888 NULL
+bio_integrity_alloc_fndecl_21889_fns bio_integrity_alloc fndecl 3 21889 NULL
-+ceph_osdc_new_request_fndecl_21921_fns ceph_osdc_new_request fndecl 7 21921 NULL
+wilc_network_info_received_fndecl_21936_fns wilc_network_info_received fndecl 3 21936 NULL
-+u32_array_read_fndecl_21944_fns u32_array_read fndecl 3 21944 NULL nohasharray
-+mei_dbgfs_read_meclients_fndecl_21944_fns mei_dbgfs_read_meclients fndecl 3 21944 &u32_array_read_fndecl_21944_fns
-+do_update_counters_fndecl_21952_fns do_update_counters fndecl 4 21952 NULL
-+mlx4_buddy_init_fndecl_21975_fns mlx4_buddy_init fndecl 2 21975 NULL
-+ieee80211_if_read_dot11MeshHWMPRannInterval_fndecl_21978_fns ieee80211_if_read_dot11MeshHWMPRannInterval fndecl 3 21978 NULL
-+_scif_send_fndecl_21987_fns _scif_send fndecl 3-0 21987 NULL
++sel_write_avc_cache_threshold_fndecl_21955_fns sel_write_avc_cache_threshold fndecl 3 21955 NULL
++sr_read_cmd_fndecl_21992_fns sr_read_cmd fndecl 5 21992 NULL
+vpdma_alloc_desc_buf_fndecl_22005_fns vpdma_alloc_desc_buf fndecl 2 22005 NULL
-+rtl8723be_c2h_packet_handler_fndecl_22040_fns rtl8723be_c2h_packet_handler fndecl 3 22040 NULL
++nv50_dmac_create_fndecl_22035_fns nv50_dmac_create fndecl 6 22035 NULL
+roccat_connect_fndecl_22044_fns roccat_connect fndecl 3 22044 NULL
+sel_read_enforce_fndecl_22047_fns sel_read_enforce fndecl 3 22047 NULL
-+irnet_ctrl_read_fndecl_22076_fns irnet_ctrl_read fndecl 4 22076 NULL
-+sfq_alloc_fndecl_22078_fns sfq_alloc fndecl 1 22078 NULL
++__add_inline_refs_fndecl_22076_fns __add_inline_refs fndecl 3 22076 NULL nohasharray
++irnet_ctrl_read_fndecl_22076_fns irnet_ctrl_read fndecl 4 22076 &__add_inline_refs_fndecl_22076_fns
+cmm_write_fndecl_22083_fns cmm_write fndecl 3 22083 NULL
-+mgt_response_to_str_fndecl_22094_fns mgt_response_to_str fndecl 0 22094 NULL
-+len_setup_data_node_22096_fns len setup_data_node 0 22096 NULL nohasharray
-+ath10k_read_peer_stats_fndecl_22096_fns ath10k_read_peer_stats fndecl 3 22096 &len_setup_data_node_22096_fns
++len_setup_data_node_22096_fns len setup_data_node 0 22096 NULL
++allocsz_cfv_info_22104_fns allocsz cfv_info 0 22104 NULL
+xferlen_uioc_22131_fns xferlen uioc 0 22131 NULL
+xfs_trans_get_buf_map_fndecl_22140_fns xfs_trans_get_buf_map fndecl 4 22140 NULL
++seg_size_ib_mad_send_buf_22149_fns seg_size ib_mad_send_buf 0 22149 NULL
+nes_read_indexed_fndecl_22161_fns nes_read_indexed fndecl 0 22161 NULL
++tm6000_i2c_recv_regs16_fndecl_22166_fns tm6000_i2c_recv_regs16 fndecl 5 22166 NULL
+buf_len_bu_info_22182_fns buf_len bu_info 0 22182 NULL nohasharray
+bnx2x_mcast_handle_pending_cmds_e1_fndecl_22182_fns bnx2x_mcast_handle_pending_cmds_e1 fndecl 0 22182 &buf_len_bu_info_22182_fns
+acpi_aml_read_fndecl_22207_fns acpi_aml_read fndecl 3 22207 NULL
-+xfrm_dst_alloc_copy_fndecl_22217_fns xfrm_dst_alloc_copy fndecl 3 22217 NULL
++xfrm_dst_alloc_copy_fndecl_22217_fns xfrm_dst_alloc_copy fndecl 3 22217 NULL nohasharray
++s_len_rvt_qp_22217_fns s_len rvt_qp 0 22217 &xfrm_dst_alloc_copy_fndecl_22217_fns
+get_max_acpi_id_fndecl_22220_fns get_max_acpi_id fndecl 0 22220 NULL
-+lpfc_idiag_mbxacc_write_fndecl_22221_fns lpfc_idiag_mbxacc_write fndecl 3 22221 NULL
+thermal_adc_source_unexpected_read_fndecl_22235_fns thermal_adc_source_unexpected_read fndecl 3 22235 NULL
+depth_write_fndecl_22238_fns depth_write fndecl 3 22238 NULL
+dac960_user_command_proc_write_fndecl_22252_fns dac960_user_command_proc_write fndecl 3 22252 NULL
+qp_alloc_ppn_set_fndecl_22255_fns qp_alloc_ppn_set fndecl 2-4 22255 NULL
+nr_free_buffer_pages_fndecl_22263_fns nr_free_buffer_pages fndecl 0 22263 NULL
-+il3945_ucode_rx_stats_read_fndecl_22267_fns il3945_ucode_rx_stats_read fndecl 3 22267 NULL
+sn9c2028_read4_fndecl_22290_fns sn9c2028_read4 fndecl 0 22290 NULL
+gspca_dev_probe_fndecl_22297_fns gspca_dev_probe fndecl 4 22297 NULL
++s_psn_rvt_qp_22305_fns s_psn rvt_qp 0 22305 NULL
+slot_bytes_fndecl_22306_fns slot_bytes fndecl 0 22306 NULL
+smk_write_logging_fndecl_22313_fns smk_write_logging fndecl 3 22313 NULL
-+iwl_dbgfs_tof_range_response_read_fndecl_22327_fns iwl_dbgfs_tof_range_response_read fndecl 3 22327 NULL
-+f2fs_getxattr_fndecl_22337_fns f2fs_getxattr fndecl 0 22337 NULL
++index_start_nozomi_22317_fns index_start nozomi 0 22317 NULL
+tlv_put_string_fndecl_22356_fns tlv_put_string fndecl 0 22356 NULL
+_proc_do_string_fndecl_22363_fns _proc_do_string fndecl 2 22363 NULL
+ffs_ep0_read_fndecl_22371_fns ffs_ep0_read fndecl 3 22371 NULL
-+ecc_size_persistent_ram_ecc_info_22390_fns ecc_size persistent_ram_ecc_info 0 22390 NULL
+nr_blocks_jffs2_sb_info_22399_fns nr_blocks jffs2_sb_info 0 22399 NULL
+size_dsp_segment_desc_22400_fns size dsp_segment_desc 0 22400 NULL
-+nfc_llcp_send_ui_frame_fndecl_22429_fns nfc_llcp_send_ui_frame fndecl 5 22429 NULL
+start_async_cow_22445_fns start async_cow 0 22445 NULL
-+do_send_fragment_fndecl_22447_fns do_send_fragment fndecl 3 22447 NULL
+fsl_edma_alloc_desc_fndecl_22466_fns fsl_edma_alloc_desc fndecl 2 22466 NULL
++hid_report_raw_event_fndecl_22489_fns hid_report_raw_event fndecl 4 22489 NULL
+xfs_readdir_fndecl_22492_fns xfs_readdir fndecl 3 22492 NULL
-+ovl_cache_entry_new_fndecl_22495_fns ovl_cache_entry_new fndecl 3 22495 NULL
+ecc_alloc_digits_space_fndecl_22496_fns ecc_alloc_digits_space fndecl 1 22496 NULL
-+iwl_dbgfs_clear_ucode_statistics_write_fndecl_22503_fns iwl_dbgfs_clear_ucode_statistics_write fndecl 3 22503 NULL
-+len_bna_mem_info_22518_fns len bna_mem_info 0 22518 NULL nohasharray
-+device_add_attrs_fndecl_22518_fns device_add_attrs fndecl 0 22518 &len_bna_mem_info_22518_fns
++device_add_attrs_fndecl_22518_fns device_add_attrs fndecl 0 22518 NULL nohasharray
++len_bna_mem_info_22518_fns len bna_mem_info 0 22518 &device_add_attrs_fndecl_22518_fns
+rocker_dma_ring_bufs_alloc_fndecl_22520_fns rocker_dma_ring_bufs_alloc fndecl 4 22520 NULL
+tx_frag_in_process_called_read_fndecl_22553_fns tx_frag_in_process_called_read fndecl 3 22553 NULL
+skd_next_devno_vardecl_skd_main_c_22569_fns skd_next_devno vardecl_skd_main.c 0 22569 NULL
+fw_stats_raw_read_fndecl_22602_fns fw_stats_raw_read fndecl 3 22602 NULL
-+brcmf_fil_cmd_data_get_fndecl_22605_fns brcmf_fil_cmd_data_get fndecl 4 22605 NULL
+btrfs_submit_compressed_write_fndecl_22608_fns btrfs_submit_compressed_write fndecl 5 22608 NULL
+bond_verify_device_path_fndecl_22619_fns bond_verify_device_path fndecl 3 22619 NULL nohasharray
+wil_write_pmccfg_fndecl_22619_fns wil_write_pmccfg fndecl 3 22619 &bond_verify_device_path_fndecl_22619_fns
@@ -206604,8 +211083,6 @@ index 0000000..510c554
+init_rs_internal_fndecl_22671_fns init_rs_internal fndecl 6-1 22671 NULL
+cfs_trace_copyout_string_fndecl_22683_fns cfs_trace_copyout_string fndecl 2 22683 NULL
+tx_queue_len_read_fndecl_22692_fns tx_queue_len_read fndecl 3 22692 NULL
-+scif_rb_write_fndecl_22718_fns scif_rb_write fndecl 0 22718 NULL
-+sta_num_ps_buf_frames_read_fndecl_22723_fns sta_num_ps_buf_frames_read fndecl 3 22723 NULL
+fpregs_set_fndecl_22730_fns fpregs_set fndecl 4 22730 NULL
+xprt_alloc_fndecl_22736_fns xprt_alloc fndecl 2 22736 NULL
+SYSC_syslog_fndecl_22742_fns SYSC_syslog fndecl 3 22742 NULL
@@ -206614,16 +211091,12 @@ index 0000000..510c554
+tomoyo_round2_fndecl_22781_fns tomoyo_round2 fndecl 0 22781 NULL
+agp_create_memory_fndecl_22816_fns agp_create_memory fndecl 1 22816 NULL
+pwr_sleep_cycle_avg_read_fndecl_22826_fns pwr_sleep_cycle_avg_read fndecl 3 22826 NULL
-+virtio_transport_alloc_pkt_fndecl_22828_fns virtio_transport_alloc_pkt fndecl 2 22828 NULL
+nfs_pgarray_set_fndecl_22830_fns nfs_pgarray_set fndecl 2 22830 NULL
+gigaset_initdriver_fndecl_22839_fns gigaset_initdriver fndecl 2 22839 NULL
-+test_eb_bitmaps_fndecl_22861_fns test_eb_bitmaps fndecl 1 22861 NULL
-+sst_fill_and_send_cmd_unlocked_fndecl_22862_fns sst_fill_and_send_cmd_unlocked fndecl 7 22862 NULL
+xs_sendpages_fndecl_22864_fns xs_sendpages fndecl 3 22864 NULL
++stm32_dma_alloc_desc_fndecl_22870_fns stm32_dma_alloc_desc fndecl 1 22870 NULL
+max_part_vardecl_brd_c_22873_fns max_part vardecl_brd.c 0 22873 NULL
-+length_usbtest_param_32_22886_fns length usbtest_param_32 0 22886 NULL
+__btrfs_cow_block_fndecl_22902_fns __btrfs_cow_block fndecl 0 22902 NULL
-+vmalloc_32_fndecl_22908_fns vmalloc_32 fndecl 1 22908 NULL
+lmd_exclude_count_lustre_mount_data_22915_fns lmd_exclude_count lustre_mount_data 0 22915 NULL
+cifs_xattr_set_fndecl_22930_fns cifs_xattr_set fndecl 6 22930 NULL
+cp210x_read_reg_block_fndecl_22947_fns cp210x_read_reg_block fndecl 4 22947 NULL
@@ -206632,56 +211105,48 @@ index 0000000..510c554
+ipc_alloc_fndecl_22971_fns ipc_alloc fndecl 1 22971 NULL
+kernfs_file_direct_read_fndecl_22981_fns kernfs_file_direct_read fndecl 3 22981 NULL
+acpi_battery_write_alarm_fndecl_22987_fns acpi_battery_write_alarm fndecl 3 22987 NULL
++snd_hdac_read_fndecl_22990_fns snd_hdac_read fndecl 0 22990 NULL
+dvb_register_adapter_fndecl_23000_fns dvb_register_adapter fndecl 0 23000 NULL
-+memblock_alloc_range_fndecl_23015_fns memblock_alloc_range fndecl 1 23015 NULL
+ioctl_private_iw_point_fndecl_23018_fns ioctl_private_iw_point fndecl 7 23018 NULL
+nested_get_page_fndecl_23031_fns nested_get_page fndecl 2 23031 NULL
-+sta_aid_read_fndecl_23048_fns sta_aid_read fndecl 3 23048 NULL
+gnttab_free_count_vardecl_grant_table_c_23049_fns gnttab_free_count vardecl_grant-table.c 0 23049 NULL
+fcoe_ctlr_device_add_fndecl_23058_fns fcoe_ctlr_device_add fndecl 3 23058 NULL
+usb_dmac_desc_alloc_fndecl_23059_fns usb_dmac_desc_alloc fndecl 2 23059 NULL
+to_clkrc_fndecl_23074_fns to_clkrc fndecl 0-2-3 23074 NULL
-+scif_rb_count_fndecl_23076_fns scif_rb_count fndecl 0 23076 NULL
+vicam_set_camera_power_fndecl_23091_fns vicam_set_camera_power fndecl 0 23091 NULL
+rproc_state_write_fndecl_23143_fns rproc_state_write fndecl 3 23143 NULL
-+bits_key_vector_23153_fns bits key_vector 0 23153 NULL
+rx_defrag_called_read_fndecl_23162_fns rx_defrag_called_read fndecl 3 23162 NULL
-+memblock_alloc_base_fndecl_23169_fns memblock_alloc_base fndecl 1 23169 NULL
+uhid_char_read_fndecl_23187_fns uhid_char_read fndecl 3 23187 NULL
+tx_tx_retry_data_read_fndecl_23189_fns tx_tx_retry_data_read fndecl 3 23189 NULL
+ir_context_mask_fw_ohci_23196_fns ir_context_mask fw_ohci 0 23196 NULL
+ib_uverbs_reg_mr_fndecl_23214_fns ib_uverbs_reg_mr fndecl 4-5 23214 NULL
+size_of_ntlmssp_blob_fndecl_23224_fns size_of_ntlmssp_blob fndecl 0 23224 NULL
++devm_create_dax_dev_fndecl_23226_fns devm_create_dax_dev fndecl 3 23226 NULL
+ivtv_v4l2_read_fndecl_23231_fns ivtv_v4l2_read fndecl 3 23231 NULL
-+num_rxd_rx_ring_config_23240_fns num_rxd rx_ring_config 0 23240 NULL
+rx_rx_defrag_read_fndecl_23241_fns rx_rx_defrag_read fndecl 3 23241 NULL
+__alloc_bootmem_node_fndecl_23259_fns __alloc_bootmem_node fndecl 2 23259 NULL
-+avc_data_length_firedtv_23266_fns avc_data_length firedtv 0 23266 NULL
+write_flush_pipefs_fndecl_23286_fns write_flush_pipefs fndecl 3 23286 NULL
-+transfersize_scsi_cmnd_23314_fns transfersize scsi_cmnd 0 23314 NULL
+tail_userio_device_23332_fns tail userio_device 0 23332 NULL
-+ieee80211_if_read_dot11MeshHWMPnetDiameterTraversalTime_fndecl_23334_fns ieee80211_if_read_dot11MeshHWMPnetDiameterTraversalTime fndecl 3 23334 NULL
++compat_sys_vmsplice_fndecl_23344_fns compat_sys_vmsplice fndecl 3 23344 NULL
+v9fs_fid_xattr_get_fndecl_23361_fns v9fs_fid_xattr_get fndecl 0 23361 NULL
+packet_buffer_init_fndecl_23380_fns packet_buffer_init fndecl 2 23380 NULL
-+btmrvl_hscmd_read_fndecl_23389_fns btmrvl_hscmd_read fndecl 3 23389 NULL
+ikconfig_read_current_fndecl_23401_fns ikconfig_read_current fndecl 3 23401 NULL
-+map_block_for_writepage_fndecl_23405_fns map_block_for_writepage fndecl 3 23405 NULL
+numerator_v4l2_fract_23413_fns numerator v4l2_fract 0 23413 NULL
+configfs_read_file_fndecl_23424_fns configfs_read_file fndecl 3 23424 NULL
-+log_size_mlx5_srq_attr_23431_fns log_size mlx5_srq_attr 0 23431 NULL
+nilfs_attach_snapshot_fndecl_23434_fns nilfs_attach_snapshot fndecl 2 23434 NULL
++set_xfer_rate_fndecl_23440_fns set_xfer_rate fndecl 2 23440 NULL
+btrfs_dir_data_len_fndecl_23457_fns btrfs_dir_data_len fndecl 0 23457 NULL
-+size_mwifiex_opt_sleep_confirm_23460_fns size mwifiex_opt_sleep_confirm 0 23460 NULL
+dma_map_sg_attrs_fndecl_23465_fns dma_map_sg_attrs fndecl 0 23465 NULL
-+iwl_dbgfs_d0i3_refs_read_fndecl_23482_fns iwl_dbgfs_d0i3_refs_read fndecl 3 23482 NULL
+gfn_to_hva_prot_fndecl_23484_fns gfn_to_hva_prot fndecl 2 23484 NULL
+cyy_init_card_fndecl_23488_fns cyy_init_card fndecl 0 23488 NULL
+tx_frag_called_read_fndecl_23495_fns tx_frag_called_read fndecl 3 23495 NULL
-+sr_size_send_context_23500_fns sr_size send_context 0 23500 NULL
-+rxe_mem_alloc_fndecl_23510_fns rxe_mem_alloc fndecl 3 23510 NULL nohasharray
-+internal_create_group_fndecl_23510_fns internal_create_group fndecl 0 23510 &rxe_mem_alloc_fndecl_23510_fns
++egr_sz_sge_23500_fns egr_sz sge 0 23500 NULL nohasharray
++sr_size_send_context_23500_fns sr_size send_context 0 23500 &egr_sz_sge_23500_fns
++internal_create_group_fndecl_23510_fns internal_create_group fndecl 0 23510 NULL nohasharray
++rxe_mem_alloc_fndecl_23510_fns rxe_mem_alloc fndecl 3 23510 &internal_create_group_fndecl_23510_fns
+usb_ep_align_maybe_fndecl_23516_fns usb_ep_align_maybe fndecl 0-3 23516 NULL
+dev_irnet_read_fndecl_23518_fns dev_irnet_read fndecl 3 23518 NULL
++s_cur_size_rvt_qp_23528_fns s_cur_size rvt_qp 0 23528 NULL
+max_pkt_size_cx231xx_bulk_ctl_23542_fns max_pkt_size cx231xx_bulk_ctl 0 23542 NULL
+cosa_write_fndecl_23549_fns cosa_write fndecl 3 23549 NULL
+syslog_print_fndecl_23584_fns syslog_print fndecl 2 23584 NULL
@@ -206691,28 +211156,28 @@ index 0000000..510c554
+read_file_war_stats_fndecl_23607_fns read_file_war_stats fndecl 3 23607 NULL
+nr_grant_frames_vardecl_grant_table_c_23609_fns nr_grant_frames vardecl_grant-table.c 0 23609 NULL
+nr_tags_blk_mq_tags_23638_fns nr_tags blk_mq_tags 0 23638 NULL
-+mlx5_core_access_reg_fndecl_23674_fns mlx5_core_access_reg fndecl 3-5 23674 NULL
+acpi_ev_create_gpe_block_fndecl_23722_fns acpi_ev_create_gpe_block fndecl 4 23722 NULL
+lbs_rdmac_read_fndecl_23729_fns lbs_rdmac_read fndecl 3 23729 NULL
-+iwl_dbgfs_protection_mode_write_fndecl_23781_fns iwl_dbgfs_protection_mode_write fndecl 3 23781 NULL
+rx_rx_defrag_end_read_fndecl_23786_fns rx_rx_defrag_end_read fndecl 3 23786 NULL
+read_buffer_length_lego_usb_tower_23787_fns read_buffer_length lego_usb_tower 0 23787 NULL
+nvme_trans_modesel_data_fndecl_23803_fns nvme_trans_modesel_data fndecl 4 23803 NULL
-+_find_next_bit_be_fndecl_23804_fns _find_next_bit_be fndecl 0 23804 NULL
++desc_list_len_timb_dma_desc_23804_fns desc_list_len timb_dma_desc 0 23804 NULL nohasharray
++_find_next_bit_be_fndecl_23804_fns _find_next_bit_be fndecl 0 23804 &desc_list_len_timb_dma_desc_23804_fns
+compat_sock_setsockopt_fndecl_23812_fns compat_sock_setsockopt fndecl 5 23812 NULL
++sctp_init_cause_fndecl_23813_fns sctp_init_cause fndecl 3 23813 NULL
++carl9170_alloc_fndecl_23816_fns carl9170_alloc fndecl 1 23816 NULL
++bios_hardcoded_edid_size_radeon_mode_info_23827_fns bios_hardcoded_edid_size radeon_mode_info 0 23827 NULL
+padzero_fndecl_23844_fns padzero fndecl 1 23844 NULL nohasharray
+sel_read_policyvers_fndecl_23844_fns sel_read_policyvers fndecl 3 23844 &padzero_fndecl_23844_fns
-+efx_ef10_sriov_configure_fndecl_23850_fns efx_ef10_sriov_configure fndecl 2 23850 NULL
-+write_file_tpc_fndecl_23877_fns write_file_tpc fndecl 3 23877 NULL
++subbufs_consumed_rchan_buf_23869_fns subbufs_consumed rchan_buf 0 23869 NULL
+load_msg_fndecl_23884_fns load_msg fndecl 2 23884 NULL
+snd_korg1212_copy_to_fndecl_23887_fns snd_korg1212_copy_to fndecl 6 23887 NULL
-+tracing_trace_options_write_fndecl_23946_fns tracing_trace_options_write fndecl 3 23946 NULL
+init_q_fndecl_23959_fns init_q fndecl 4 23959 NULL
+memstick_alloc_host_fndecl_23965_fns memstick_alloc_host fndecl 1 23965 NULL
+xfs_buf_item_get_format_fndecl_23982_fns xfs_buf_item_get_format fndecl 2 23982 NULL
+pci_request_selected_regions_fndecl_23994_fns pci_request_selected_regions fndecl 0 23994 NULL
+extract_crng_user_fndecl_23995_fns extract_crng_user fndecl 2 23995 NULL
-+iscsi_session_setup_fndecl_24023_fns iscsi_session_setup fndecl 5-3 24023 NULL
++iscsi_session_setup_fndecl_24023_fns iscsi_session_setup fndecl 4-5-3 24023 NULL
+vpdma_create_desc_list_fndecl_24044_fns vpdma_create_desc_list fndecl 2 24044 NULL
+buf_size_conf_writedata_24046_fns buf_size conf_writedata 0 24046 NULL
+bNumEndpoints_usb_interface_descriptor_24052_fns bNumEndpoints usb_interface_descriptor 0 24052 NULL
@@ -206723,24 +211188,24 @@ index 0000000..510c554
+cfs_trace_allocate_string_buffer_fndecl_24094_fns cfs_trace_allocate_string_buffer fndecl 2 24094 NULL
+cnt_nfp_net_rx_ring_24099_fns cnt nfp_net_rx_ring 0 24099 NULL
+size_sge_rspq_24120_fns size sge_rspq 0 24120 NULL
-+scif_user_send_fndecl_24137_fns scif_user_send fndecl 3 24137 NULL
++error_state_read_fndecl_24136_fns error_state_read fndecl 6 24136 NULL
+tegra_clk_init_fndecl_24143_fns tegra_clk_init fndecl 3-2 24143 NULL
-+len_event_data_24144_fns len event_data 0 24144 NULL
-+o2net_send_message_vec_fndecl_24188_fns o2net_send_message_vec fndecl 4 24188 NULL nohasharray
-+iwl_dbgfs_fh_reg_read_fndecl_24188_fns iwl_dbgfs_fh_reg_read fndecl 3 24188 &o2net_send_message_vec_fndecl_24188_fns
-+stride_usbatm_channel_24224_fns stride usbatm_channel 0 24224 NULL
++o2net_send_message_vec_fndecl_24188_fns o2net_send_message_vec fndecl 4 24188 NULL
++modules_num_mcp_trace_meta_24193_fns modules_num mcp_trace_meta 0 24193 NULL
++raw_write_fndecl_24208_fns raw_write fndecl 3 24208 NULL
+carl9170_cmd_buf_fndecl_24229_fns carl9170_cmd_buf fndecl 3 24229 NULL
-+num_tx_queues_fm10k_intfc_24236_fns num_tx_queues fm10k_intfc 0 24236 NULL
+__nodes_weight_fndecl_24239_fns __nodes_weight fndecl 0 24239 NULL
+iio_storage_bytes_for_timestamp_fndecl_24260_fns iio_storage_bytes_for_timestamp fndecl 0 24260 NULL
++ccp_reverse_set_dm_area_fndecl_24279_fns ccp_reverse_set_dm_area fndecl 4-3 24279 NULL
+pte_prefetch_gfn_to_pfn_fndecl_24310_fns pte_prefetch_gfn_to_pfn fndecl 2 24310 NULL nohasharray
+ocfs2_info_scan_inode_alloc_fndecl_24310_fns ocfs2_info_scan_inode_alloc fndecl 3 24310 &pte_prefetch_gfn_to_pfn_fndecl_24310_fns
+zlib_deflate_workspacesize_fndecl_24330_fns zlib_deflate_workspacesize fndecl 0 24330 NULL
-+iwl_dbgfs_wowlan_sram_read_fndecl_24335_fns iwl_dbgfs_wowlan_sram_read fndecl 3 24335 NULL
+ls_recover_size_lm_lockstruct_24365_fns ls_recover_size lm_lockstruct 0 24365 NULL
+sco_sock_setsockopt_fndecl_24379_fns sco_sock_setsockopt fndecl 5 24379 NULL
+error_elp_while_nvic_pending_read_fndecl_24394_fns error_elp_while_nvic_pending_read fndecl 3 24394 NULL
++compat_sys_preadv_fndecl_24404_fns compat_sys_preadv fndecl 3 24404 NULL
+completed_vringh_24407_fns completed vringh 0 24407 NULL
++max_scbs_hw_profile_24409_fns max_scbs hw_profile 0 24409 NULL
+srpt_cm_rej_recv_fndecl_24427_fns srpt_cm_rej_recv fndecl 4 24427 NULL
+ni_gpct_device_construct_fndecl_24433_fns ni_gpct_device_construct fndecl 5 24433 NULL
+size_tty_buffer_24438_fns size tty_buffer 0 24438 NULL
@@ -206748,74 +211213,70 @@ index 0000000..510c554
+ptlrpc_lprocfs_nrs_seq_write_fndecl_24446_fns ptlrpc_lprocfs_nrs_seq_write fndecl 3 24446 NULL
+unlink_queued_fndecl_24470_fns unlink_queued fndecl 3 24470 NULL
+dtim_interval_read_fndecl_24477_fns dtim_interval_read fndecl 3 24477 NULL
-+rtl_get_hwinfo_fndecl_24480_fns rtl_get_hwinfo fndecl 3 24480 NULL
+dvb_video_write_fndecl_24545_fns dvb_video_write fndecl 3 24545 NULL
-+log_len_vardecl_verifier_c_24556_fns log_len vardecl_verifier.c 0 24556 NULL nohasharray
-+aqm_write_fndecl_24556_fns aqm_write fndecl 3 24556 &log_len_vardecl_verifier_c_24556_fns
-+ibc_queue_depth_kib_conn_24567_fns ibc_queue_depth kib_conn 0 24567 NULL
-+tomoyo_scan_bprm_fndecl_24585_fns tomoyo_scan_bprm fndecl 2-4 24585 NULL nohasharray
-+pipeline_hs_tx_stat_fifo_int_read_fndecl_24585_fns pipeline_hs_tx_stat_fifo_int_read fndecl 3 24585 &tomoyo_scan_bprm_fndecl_24585_fns
++log_len_vardecl_verifier_c_24556_fns log_len vardecl_verifier.c 0 24556 NULL
++joydev_handle_JSIOCSBTNMAP_fndecl_24584_fns joydev_handle_JSIOCSBTNMAP fndecl 3 24584 NULL
++pipeline_hs_tx_stat_fifo_int_read_fndecl_24585_fns pipeline_hs_tx_stat_fifo_int_read fndecl 3 24585 NULL nohasharray
++tomoyo_scan_bprm_fndecl_24585_fns tomoyo_scan_bprm fndecl 4-2 24585 &pipeline_hs_tx_stat_fifo_int_read_fndecl_24585_fns
+ebcnt_vardecl_oobtest_c_24588_fns ebcnt vardecl_oobtest.c 0 24588 NULL
+root_level_kvm_mmu_24604_fns root_level kvm_mmu 0 24604 NULL
+unix_bind_fndecl_24615_fns unix_bind fndecl 3 24615 NULL
++dm_read_fndecl_24617_fns dm_read fndecl 3 24617 NULL
+fs_path_add_fndecl_24627_fns fs_path_add fndecl 3 24627 NULL
+xsd_read_fndecl_24630_fns xsd_read fndecl 3 24630 NULL
+txq_depth_bnad_24636_fns txq_depth bnad 0 24636 NULL
+intr_cnt_vxgedev_24656_fns intr_cnt vxgedev 0 24656 NULL
+uinput_str_to_user_fndecl_24668_fns uinput_str_to_user fndecl 3 24668 NULL
++pinctrl_utils_reserve_map_fndecl_24673_fns pinctrl_utils_reserve_map fndecl 5 24673 NULL
+tool_link_write_fndecl_24679_fns tool_link_write fndecl 3 24679 NULL
+inet_insert_ifa_fndecl_24688_fns inet_insert_ifa fndecl 0 24688 NULL
-+transport_generic_map_mem_to_cmd_fndecl_24700_fns transport_generic_map_mem_to_cmd fndecl 3 24700 NULL
-+queue_depth_blk_mq_tag_set_24719_fns queue_depth blk_mq_tag_set 0 24719 NULL
+wilc_set_join_req_fndecl_24725_fns wilc_set_join_req fndecl 4-6 24725 NULL
++outlen_ib_udata_24729_fns outlen ib_udata 0 24729 NULL
+HiSax_readstatus_fndecl_24731_fns HiSax_readstatus fndecl 2 24731 NULL
+smk_read_direct_fndecl_24744_fns smk_read_direct fndecl 3 24744 NULL
+n_ao_urbs_usbduxsigma_private_24760_fns n_ao_urbs usbduxsigma_private 0 24760 NULL
++inftl_read_oob_fndecl_24761_fns inftl_read_oob fndecl 3 24761 NULL
+_sdma_txadd_daddr_fndecl_24789_fns _sdma_txadd_daddr fndecl 5 24789 NULL
+gnttab_expand_fndecl_24794_fns gnttab_expand fndecl 1 24794 NULL
-+write_file_tx99_fndecl_24803_fns write_file_tx99 fndecl 3 24803 NULL
++afs_proc_rootcell_write_fndecl_24797_fns afs_proc_rootcell_write fndecl 3 24797 NULL
+num_q_vectors_i40e_vsi_24807_fns num_q_vectors i40e_vsi 0 24807 NULL
+fq_codel_zalloc_fndecl_24833_fns fq_codel_zalloc fndecl 1 24833 NULL
+acpi_ut_create_string_object_fndecl_24851_fns acpi_ut_create_string_object fndecl 1 24851 NULL
+__videobuf_copy_to_user_fndecl_24876_fns __videobuf_copy_to_user fndecl 4 24876 NULL
+memweight_fndecl_24905_fns memweight fndecl 0 24905 NULL
+unxz_fndecl_24936_fns unxz fndecl 2 24936 NULL
-+vmalloc_fndecl_24955_fns vmalloc fndecl 1 24955 NULL
+nilfs_cpfile_clear_snapshot_fndecl_24964_fns nilfs_cpfile_clear_snapshot fndecl 2 24964 NULL
+outmsg_len_hvutil_transport_24966_fns outmsg_len hvutil_transport 0 24966 NULL
+zero_the_pointer_fndecl_25003_fns zero_the_pointer fndecl 0 25003 NULL
+default_density_st_modedef_25006_fns default_density st_modedef 0 25006 NULL
-+bnx2fc_process_unsol_compl_fndecl_25035_fns bnx2fc_process_unsol_compl fndecl 2 25035 NULL
++sdp0length__SpiCfgData_25007_fns sdp0length _SpiCfgData 0 25007 NULL
+acpi_gpio_count_fndecl_25052_fns acpi_gpio_count fndecl 0 25052 NULL
+buffer_size_snd_compr_runtime_25072_fns buffer_size snd_compr_runtime 0 25072 NULL nohasharray
+vme_user_write_fndecl_25072_fns vme_user_write fndecl 3 25072 &buffer_size_snd_compr_runtime_25072_fns
+mlxsw_reg_trans_wait_fndecl_25101_fns mlxsw_reg_trans_wait fndecl 0 25101 NULL
+num_pbls_ocrdma_hw_mr_25102_fns num_pbls ocrdma_hw_mr 0 25102 NULL
+compat_sys_select_fndecl_25104_fns compat_sys_select fndecl 1 25104 NULL
-+fsm_init_fndecl_25109_fns fsm_init fndecl 2 25109 NULL
++fsm_init_fndecl_25109_fns fsm_init fndecl 2 25109 NULL nohasharray
++output_fndecl_25109_fns output fndecl 3 25109 &fsm_init_fndecl_25109_fns
+i40e_allocate_virt_mem_d_fndecl_25132_fns i40e_allocate_virt_mem_d fndecl 3 25132 NULL
+create_table_fndecl_25158_fns create_table fndecl 2 25158 NULL
-+cipso_v4_map_cat_rng_hton_fndecl_25176_fns cipso_v4_map_cat_rng_hton fndecl 0 25176 NULL
-+il_dbgfs_disable_ht40_write_fndecl_25194_fns il_dbgfs_disable_ht40_write fndecl 3 25194 NULL
+ux500_regulator_debug_init_fndecl_25207_fns ux500_regulator_debug_init fndecl 3 25207 NULL
+npeers_cm_dev_25216_fns npeers cm_dev 0 25216 NULL
-+jumpshot_read_data_fndecl_25228_fns jumpshot_read_data fndecl 4 25228 NULL
-+of_property_read_string_helper_fndecl_25257_fns of_property_read_string_helper fndecl 0 25257 NULL
++of_property_read_string_helper_fndecl_25257_fns of_property_read_string_helper fndecl 0-5 25257 NULL
+stk_allocate_buffers_fndecl_25264_fns stk_allocate_buffers fndecl 2 25264 NULL
+register_count_acpi_gpe_block_info_25272_fns register_count acpi_gpe_block_info 0 25272 NULL
-+qsfp_dump_fndecl_25308_fns qsfp_dump fndecl 0 25308 NULL
++sz_m1_mlx5_wq_cyc_25311_fns sz_m1 mlx5_wq_cyc 0 25311 NULL
++iscsi_tcp_conn_setup_fndecl_25323_fns iscsi_tcp_conn_setup fndecl 2 25323 NULL
+sysfs_create_groups_fndecl_25339_fns sysfs_create_groups fndecl 0 25339 NULL
-+total_ps_buffered_read_fndecl_25342_fns total_ps_buffered_read fndecl 3 25342 NULL
+__mptctl_ioctl_fndecl_25360_fns __mptctl_ioctl fndecl 2 25360 NULL
++relay_subbufs_consumed_fndecl_25362_fns relay_subbufs_consumed fndecl 3 25362 NULL
+bio_copy_kern_fndecl_25382_fns bio_copy_kern fndecl 3 25382 NULL
+req_buf_size_f_uac1_opts_25386_fns req_buf_size f_uac1_opts 0 25386 NULL
++native_read_msr_fndecl_25394_fns native_read_msr fndecl 0 25394 NULL
+memblock_virt_alloc_try_nid_fndecl_25409_fns memblock_virt_alloc_try_nid fndecl 1 25409 NULL nohasharray
+memsize_t4_cq_25409_fns memsize t4_cq 0 25409 &memblock_virt_alloc_try_nid_fndecl_25409_fns
+snd_pcm_lib_read_transfer_fndecl_25411_fns snd_pcm_lib_read_transfer fndecl 5 25411 NULL
+ptlrpcd_per_cpt_max_vardecl_ptlrpcd_c_25416_fns ptlrpcd_per_cpt_max vardecl_ptlrpcd.c 0 25416 NULL
-+power_read_fndecl_25424_fns power_read fndecl 3 25424 NULL
-+lpfc_idiag_drbacc_read_fndecl_25439_fns lpfc_idiag_drbacc_read fndecl 3 25439 NULL
-+alloc_vm_area_fndecl_25446_fns alloc_vm_area fndecl 1 25446 NULL
+smk_read_ptrace_fndecl_25461_fns smk_read_ptrace fndecl 3 25461 NULL
+viafb_vt1636_proc_write_fndecl_25473_fns viafb_vt1636_proc_write fndecl 3 25473 NULL
+max_buckets_out_mpt_lan_priv_25498_fns max_buckets_out mpt_lan_priv 0 25498 NULL
@@ -206823,26 +211284,23 @@ index 0000000..510c554
+blk_init_tags_fndecl_25511_fns blk_init_tags fndecl 1 25511 NULL
+SYSC_kexec_file_load_fndecl_25513_fns SYSC_kexec_file_load fndecl 3 25513 NULL
+read_file_spectral_period_fndecl_25514_fns read_file_spectral_period fndecl 3 25514 NULL
-+ntb_spad_count_fndecl_25572_fns ntb_spad_count fndecl 0 25572 NULL
++smk_write_unconfined_fndecl_25530_fns smk_write_unconfined fndecl 3 25530 NULL
++wsm_write_mib_fndecl_25575_fns wsm_write_mib fndecl 4 25575 NULL
+cifs_mapchar_fndecl_25586_fns cifs_mapchar fndecl 0 25586 NULL
+isr_tx_exch_complete_read_fndecl_25588_fns isr_tx_exch_complete_read fndecl 3 25588 NULL
+isr_hw_pm_mode_changes_read_fndecl_25597_fns isr_hw_pm_mode_changes_read fndecl 3 25597 NULL nohasharray
+dma_tx_requested_read_fndecl_25597_fns dma_tx_requested_read fndecl 3 25597 &isr_hw_pm_mode_changes_read_fndecl_25597_fns
+max_cmd_sg_entries_ctlr_info_25601_fns max_cmd_sg_entries ctlr_info 0 25601 NULL
+size_hpi_message_header_25619_fns size hpi_message_header 0 25619 NULL
-+ceph_osdc_alloc_request_fndecl_25622_fns ceph_osdc_alloc_request fndecl 3 25622 NULL
+profile_replace_fndecl_25647_fns profile_replace fndecl 3 25647 NULL
-+nvmet_rdma_alloc_sgl_fndecl_25655_fns nvmet_rdma_alloc_sgl fndecl 3 25655 NULL
-+min_bytes_needed_fndecl_25664_fns min_bytes_needed fndecl 0 25664 NULL
+nvme_trans_log_info_exceptions_fndecl_25670_fns nvme_trans_log_info_exceptions fndecl 3 25670 NULL
-+bnxt_change_mtu_fndecl_25675_fns bnxt_change_mtu fndecl 2 25675 NULL nohasharray
-+pipeline_enc_tx_stat_fifo_int_read_fndecl_25675_fns pipeline_enc_tx_stat_fifo_int_read fndecl 3 25675 &bnxt_change_mtu_fndecl_25675_fns
++pipeline_enc_tx_stat_fifo_int_read_fndecl_25675_fns pipeline_enc_tx_stat_fifo_int_read fndecl 3 25675 NULL
++max_cmd_per_lun_vardecl_megaraid_c_25693_fns max_cmd_per_lun vardecl_megaraid.c 0 25693 NULL
+persistent_ram_ecc_string_fndecl_25699_fns persistent_ram_ecc_string fndecl 0 25699 NULL
+ntfs_file_fsync_fndecl_25706_fns ntfs_file_fsync fndecl 2-3 25706 NULL
+max_cid_space_cnic_local_25708_fns max_cid_space cnic_local 0 25708 NULL
+vfd_write_fndecl_25710_fns vfd_write fndecl 3 25710 NULL
+nr_scanned_scan_control_25733_fns nr_scanned scan_control 0 25733 NULL
-+get_pas_size_fndecl_25739_fns get_pas_size fndecl 0 25739 NULL
+pvr2_i2c_write_fndecl_25754_fns pvr2_i2c_write fndecl 4 25754 NULL
+regmap_range_read_file_fndecl_25764_fns regmap_range_read_file fndecl 3 25764 NULL
+rx_rx_cmplt_read_fndecl_25778_fns rx_rx_cmplt_read fndecl 3 25778 NULL
@@ -206852,6 +211310,9 @@ index 0000000..510c554
+keys_proc_write_fndecl_25819_fns keys_proc_write fndecl 3 25819 NULL
+__kfifo_in_fndecl_25822_fns __kfifo_in fndecl 3 25822 NULL
+ext4_kvmalloc_fndecl_25823_fns ext4_kvmalloc fndecl 1 25823 NULL
++pages_per_rd_bio_scrub_ctx_25831_fns pages_per_rd_bio scrub_ctx 0 25831 NULL
++rvt_reg_user_mr_fndecl_25852_fns rvt_reg_user_mr fndecl 4 25852 NULL
++ishtp_dma_num_slots_ishtp_device_25858_fns ishtp_dma_num_slots ishtp_device 0 25858 NULL
+alloc_tx_struct_fndecl_25886_fns alloc_tx_struct fndecl 1 25886 NULL
+walk_page_range_fndecl_25894_fns walk_page_range fndecl 0 25894 NULL
+ath6kl_regdump_read_fndecl_25898_fns ath6kl_regdump_read fndecl 3 25898 NULL
@@ -206860,20 +211321,12 @@ index 0000000..510c554
+mtd_concat_create_fndecl_25923_fns mtd_concat_create fndecl 2 25923 NULL nohasharray
+d40_pool_lli_alloc_fndecl_25923_fns d40_pool_lli_alloc fndecl 3 25923 &mtd_concat_create_fndecl_25923_fns
+get_kcore_size_fndecl_25930_fns get_kcore_size fndecl 0 25930 NULL
-+debugfs_read_file_bool_fndecl_25937_fns debugfs_read_file_bool fndecl 3 25937 NULL
++smk_write_onlycap_fndecl_25939_fns smk_write_onlycap fndecl 3 25939 NULL
+kvm_hv_set_msr_common_fndecl_25940_fns kvm_hv_set_msr_common fndecl 3 25940 NULL
-+__media_entity_enum_init_fndecl_25953_fns __media_entity_enum_init fndecl 2 25953 NULL nohasharray
-+lro_xid_fc_lport_25953_fns lro_xid fc_lport 0 25953 &__media_entity_enum_init_fndecl_25953_fns
-+_iwl_dbgfs_sram_write_fndecl_25972_fns _iwl_dbgfs_sram_write fndecl 3 25972 NULL
++__media_entity_enum_init_fndecl_25953_fns __media_entity_enum_init fndecl 2 25953 NULL
+tx_max_out_mpt_lan_priv_25974_fns tx_max_out mpt_lan_priv 0 25974 NULL
-+ieee80211_if_read_dot11MeshGateAnnouncementProtocol_fndecl_25989_fns ieee80211_if_read_dot11MeshGateAnnouncementProtocol fndecl 3 25989 NULL
-+tas571x_reg_read_multiword_fndecl_26030_fns tas571x_reg_read_multiword fndecl 4 26030 NULL
-+hex_dump_to_buffer_fndecl_26039_fns hex_dump_to_buffer fndecl 0-2-4-3 26039 NULL
-+ocfs2_debug_read_fndecl_26040_fns ocfs2_debug_read fndecl 3 26040 NULL
-+picolcd_debug_eeprom_read_fndecl_26054_fns picolcd_debug_eeprom_read fndecl 3 26054 NULL
+_pcol_init_fndecl_26056_fns _pcol_init fndecl 2 26056 NULL
-+dataflash_read_user_otp_fndecl_26075_fns dataflash_read_user_otp fndecl 2-3 26075 NULL nohasharray
-+ep0_write_fndecl_26075_fns ep0_write fndecl 3 26075 &dataflash_read_user_otp_fndecl_26075_fns
++ep0_write_fndecl_26075_fns ep0_write fndecl 3 26075 NULL
+alloc_bitmap_fndecl_26079_fns alloc_bitmap fndecl 1 26079 NULL
+idmap_pipe_downcall_fndecl_26092_fns idmap_pipe_downcall fndecl 3 26092 NULL
+qp_host_alloc_queue_fndecl_26101_fns qp_host_alloc_queue fndecl 1 26101 NULL
@@ -206882,26 +211335,23 @@ index 0000000..510c554
+zram_major_vardecl_zram_drv_c_26180_fns zram_major vardecl_zram_drv.c 0 26180 NULL
+iscsi_create_endpoint_fndecl_26186_fns iscsi_create_endpoint fndecl 1 26186 NULL
+SYSC_setdomainname_fndecl_26207_fns SYSC_setdomainname fndecl 2 26207 NULL
-+data_len_kernel_ipmi_msg_26209_fns data_len kernel_ipmi_msg 0 26209 NULL
++bfad_debugfs_write_regrd_fndecl_26209_fns bfad_debugfs_write_regrd fndecl 3 26209 NULL nohasharray
++data_len_kernel_ipmi_msg_26209_fns data_len kernel_ipmi_msg 0 26209 &bfad_debugfs_write_regrd_fndecl_26209_fns
+i40iw_allocate_virt_mem_fndecl_26210_fns i40iw_allocate_virt_mem fndecl 3 26210 NULL
+clone_range_fndecl_26212_fns clone_range fndecl 6-5 26212 NULL
+blk_queue_init_tags_fndecl_26227_fns blk_queue_init_tags fndecl 2 26227 NULL
-+command_setflickerctrl_fndecl_26233_fns command_setflickerctrl fndecl 0 26233 NULL
-+iwl_dbgfs_sram_write_fndecl_26260_fns iwl_dbgfs_sram_write fndecl 3 26260 NULL
-+il_dbgfs_rx_stats_read_fndecl_26264_fns il_dbgfs_rx_stats_read fndecl 3 26264 NULL
-+jumbo_size_qset_params_26273_fns jumbo_size qset_params 0 26273 NULL
++command_setflickerctrl_fndecl_26233_fns command_setflickerctrl fndecl 0 26233 NULL nohasharray
++ramoops_pstore_write_buf_user_fndecl_26233_fns ramoops_pstore_write_buf_user fndecl 7 26233 &command_setflickerctrl_fndecl_26233_fns
+n_hdlc_tty_write_fndecl_26279_fns n_hdlc_tty_write fndecl 4 26279 NULL
-+tx_data_length_hso_serial_26287_fns tx_data_length hso_serial 0 26287 NULL
++send_write_fndecl_26285_fns send_write fndecl 4 26285 NULL
+wacom_led_putimage_fndecl_26291_fns wacom_led_putimage fndecl 4 26291 NULL
-+alloc_ring_fndecl_26338_fns alloc_ring fndecl 2-4 26338 NULL
++used_core_name_26313_fns used core_name 0 26313 NULL
++alloc_ring_fndecl_26338_fns alloc_ring fndecl 4-2 26338 NULL
+ept_prefetch_gpte_fndecl_26343_fns ept_prefetch_gpte fndecl 4 26343 NULL
-+ioread16_fndecl_26365_fns ioread16 fndecl 0 26365 NULL
-+mrp_attr_create_fndecl_26390_fns mrp_attr_create fndecl 3 26390 NULL
-+__krealloc_fndecl_26394_fns __krealloc fndecl 2 26394 NULL nohasharray
-+lcd_write_fndecl_26394_fns lcd_write fndecl 3 26394 &__krealloc_fndecl_26394_fns
++kovaplus_sysfs_read_fndecl_26362_fns kovaplus_sysfs_read fndecl 6 26362 NULL
++__krealloc_fndecl_26394_fns __krealloc fndecl 2 26394 NULL
+get_user_cpu_mask_fndecl_26398_fns get_user_cpu_mask fndecl 2 26398 NULL
+omap_hwmod_count_resources_fndecl_26400_fns omap_hwmod_count_resources fndecl 0 26400 NULL
-+netlbl_catmap_walk_fndecl_26405_fns netlbl_catmap_walk fndecl 0 26405 NULL
+krealloc_fndecl_26415_fns krealloc fndecl 2 26415 NULL
+acpi_os_allocate_fndecl_26431_fns acpi_os_allocate fndecl 1 26431 NULL
+start_cif_cam_fndecl_26442_fns start_cif_cam fndecl 0 26442 NULL
@@ -206910,28 +211360,28 @@ index 0000000..510c554
+videobuf_read_stream_fndecl_26495_fns videobuf_read_stream fndecl 3 26495 NULL
+setkey_fndecl_26520_fns setkey fndecl 3 26520 NULL nohasharray
+num_tc_mlx5e_params_26520_fns num_tc mlx5e_params 0 26520 &setkey_fndecl_26520_fns
-+vmap_fndecl_26530_fns vmap fndecl 2 26530 NULL
+npages_kvm_memory_slot_26541_fns npages kvm_memory_slot 0 26541 NULL
-+sctp_setsockopt_default_sndinfo_fndecl_26544_fns sctp_setsockopt_default_sndinfo fndecl 3 26544 NULL
-+ath10k_debug_fw_checksums_read_fndecl_26549_fns ath10k_debug_fw_checksums_read fndecl 3 26549 NULL
++nfsd_drc_max_mem_vardecl_26544_fns nfsd_drc_max_mem vardecl 0 26544 NULL nohasharray
++sctp_setsockopt_default_sndinfo_fndecl_26544_fns sctp_setsockopt_default_sndinfo fndecl 3 26544 &nfsd_drc_max_mem_vardecl_26544_fns
+cld_pipe_downcall_fndecl_26561_fns cld_pipe_downcall fndecl 3 26561 NULL
-+ieee80211_if_read_uapsd_max_sp_len_fndecl_26568_fns ieee80211_if_read_uapsd_max_sp_len fndecl 3 26568 NULL
+nfs4_write_cached_acl_fndecl_26573_fns nfs4_write_cached_acl fndecl 4 26573 NULL
-+read_file_node_aggr_fndecl_26579_fns read_file_node_aggr fndecl 3 26579 NULL
+nvme_trans_completion_fndecl_26597_fns nvme_trans_completion fndecl 0 26597 NULL
++hdac_hdmi_fill_widget_info_fndecl_26629_fns hdac_hdmi_fill_widget_info fndecl 8 26629 NULL
+cache_write_fndecl_26630_fns cache_write fndecl 3 26630 NULL
+read_file_antenna_fndecl_26645_fns read_file_antenna fndecl 3 26645 NULL
+iio_device_add_event_sysfs_fndecl_26664_fns iio_device_add_event_sysfs fndecl 0 26664 NULL
++gb_operation_unidirectional_timeout_fndecl_26694_fns gb_operation_unidirectional_timeout fndecl 4 26694 NULL
++len_tipc_mon_domain_26711_fns len tipc_mon_domain 0 26711 NULL
+wil_read_back_fndecl_26724_fns wil_read_back fndecl 3 26724 NULL
-+debugfs_attr_write_fndecl_26732_fns debugfs_attr_write fndecl 3 26732 NULL
+cache_downcall_fndecl_26737_fns cache_downcall fndecl 3 26737 NULL
+len_osd_sg_entry_26755_fns len osd_sg_entry 0 26755 NULL
+num_phys_expander_device_26765_fns num_phys expander_device 0 26765 NULL
-+fw_iso_buffer_alloc_fndecl_26779_fns fw_iso_buffer_alloc fndecl 2 26779 NULL
++rdma_rw_init_single_wr_fndecl_26775_fns rdma_rw_init_single_wr fndecl 5 26775 NULL
++fw_iso_buffer_alloc_fndecl_26779_fns fw_iso_buffer_alloc fndecl 2 26779 NULL nohasharray
++hb_size_hashbin_t_26779_fns hb_size hashbin_t 0 26779 &fw_iso_buffer_alloc_fndecl_26779_fns
+audit_unpack_string_fndecl_26791_fns audit_unpack_string fndecl 3 26791 NULL
+iio_storage_bytes_for_si_fndecl_26798_fns iio_storage_bytes_for_si fndecl 0 26798 NULL
+fb_sys_read_fndecl_26817_fns fb_sys_read fndecl 3 26817 NULL
-+qlcnic_max_rings_fndecl_26823_fns qlcnic_max_rings fndecl 0 26823 NULL
+ath6kl_mgmt_powersave_ap_fndecl_26828_fns ath6kl_mgmt_powersave_ap fndecl 6 26828 NULL
+edid_size_ufx_data_26833_fns edid_size ufx_data 0 26833 NULL
+hsi_register_board_info_fndecl_26863_fns hsi_register_board_info fndecl 2 26863 NULL
@@ -206940,32 +211390,30 @@ index 0000000..510c554
+reexecute_instruction_fndecl_26906_fns reexecute_instruction fndecl 2 26906 NULL
+edma_prep_slave_sg_fndecl_26917_fns edma_prep_slave_sg fndecl 3 26917 NULL
+cache_ctr_fndecl_26919_fns cache_ctr fndecl 2 26919 NULL
-+jfs_xattr_set_os2_fndecl_26923_fns jfs_xattr_set_os2 fndecl 6 26923 NULL
+round_event_name_len_fndecl_26935_fns round_event_name_len fndecl 0 26935 NULL
-+axi_dmac_prep_dma_cyclic_fndecl_26953_fns axi_dmac_prep_dma_cyclic fndecl 4-3 26953 NULL
++axi_dmac_prep_dma_cyclic_fndecl_26953_fns axi_dmac_prep_dma_cyclic fndecl 3-4 26953 NULL
+kvm_vcpu_gfn_to_hva_fndecl_26957_fns kvm_vcpu_gfn_to_hva fndecl 2 26957 NULL
+iso_sched_alloc_fndecl_26962_fns iso_sched_alloc fndecl 1 26962 NULL nohasharray
+wep_key_not_found_read_fndecl_26962_fns wep_key_not_found_read fndecl 3 26962 &iso_sched_alloc_fndecl_26962_fns
+len_hidraw_report_26966_fns len hidraw_report 0 26966 NULL
+fid_len_xfs_fid_27000_fns fid_len xfs_fid 0 27000 NULL
+netxen_alloc_sds_rings_fndecl_27002_fns netxen_alloc_sds_rings fndecl 2 27002 NULL
-+ath6kl_cfg80211_connect_event_fndecl_27024_fns ath6kl_cfg80211_connect_event fndecl 7 27024 NULL
++ath6kl_cfg80211_connect_event_fndecl_27024_fns ath6kl_cfg80211_connect_event fndecl 7-8-9 27024 NULL
++rdma_rw_ctx_signature_init_fndecl_27033_fns rdma_rw_ctx_signature_init fndecl 9 27033 NULL
+data_read_fndecl_27045_fns data_read fndecl 3 27045 NULL
-+ieee80211_if_read_tdls_wider_bw_fndecl_27066_fns ieee80211_if_read_tdls_wider_bw fndecl 3 27066 NULL
+bm_init_fndecl_27082_fns bm_init fndecl 2 27082 NULL
+smk_write_mapped_fndecl_27100_fns smk_write_mapped fndecl 3 27100 NULL
-+ieee80211_if_read_ap_power_level_fndecl_27109_fns ieee80211_if_read_ap_power_level fndecl 3 27109 NULL
+acpi_table_parse_entries_array_fndecl_27120_fns acpi_table_parse_entries_array fndecl 0 27120 NULL
+cnt_set_multicast_27125_fns cnt set_multicast 0 27125 NULL
++sys32_fadvise64_fndecl_27136_fns sys32_fadvise64 fndecl 4 27136 NULL
+do_proc_readlink_fndecl_27139_fns do_proc_readlink fndecl 3 27139 NULL
+compat_sys_pselect6_fndecl_27146_fns compat_sys_pselect6 fndecl 1 27146 NULL
-+sys_bpf_fndecl_27150_fns sys_bpf fndecl 3 27150 NULL
+nilfs_attach_checkpoint_fndecl_27152_fns nilfs_attach_checkpoint fndecl 2 27152 NULL
+cfs_hash_rehash_bits_fndecl_27208_fns cfs_hash_rehash_bits fndecl 0 27208 NULL
-+em_canid_change_fndecl_27221_fns em_canid_change fndecl 3 27221 NULL
-+datafab_read_data_fndecl_27257_fns datafab_read_data fndecl 4 27257 NULL
+mx_sb_len_sg_io_hdr_27261_fns mx_sb_len sg_io_hdr 0 27261 NULL
-+sys_kexec_load_fndecl_27293_fns sys_kexec_load fndecl 2 27293 NULL
++alloc_async_fndecl_27283_fns alloc_async fndecl 1 27283 NULL
++ath6kl_connect_event_fndecl_27304_fns ath6kl_connect_event fndecl 8-9 27304 NULL
++speed_rockchip_spi_27307_fns speed rockchip_spi 0 27307 NULL
+cifs_strict_fsync_fndecl_27308_fns cifs_strict_fsync fndecl 2-3 27308 NULL
+nrelocs_radeon_cs_parser_27313_fns nrelocs radeon_cs_parser 0 27313 NULL
+btrfs_token_file_extent_ram_bytes_fndecl_27316_fns btrfs_token_file_extent_ram_bytes fndecl 0 27316 NULL
@@ -206973,151 +211421,129 @@ index 0000000..510c554
+read_default_ldt_fndecl_27341_fns read_default_ldt fndecl 2 27341 NULL
+snd_seq_oss_readq_new_fndecl_27352_fns snd_seq_oss_readq_new fndecl 2 27352 NULL
+n_mcgrps_genl_family_27362_fns n_mcgrps genl_family 0 27362 NULL
-+ext_tree_layoutupdate_size_fndecl_27368_fns ext_tree_layoutupdate_size fndecl 0-2 27368 NULL
++num_altsetting_usb_interface_27371_fns num_altsetting usb_interface 0 27371 NULL
++urb_size_tm6000_core_27374_fns urb_size tm6000_core 0 27374 NULL
+msg_namelen_msghdr_27389_fns msg_namelen msghdr 0 27389 NULL
+evdev_ioctl_compat_fndecl_27400_fns evdev_ioctl_compat fndecl 2 27400 NULL
+max_packages_vardecl_uncore_c_27449_fns max_packages vardecl_uncore.c 0 27449 NULL
+tool_peer_mw_read_fndecl_27484_fns tool_peer_mw_read fndecl 3 27484 NULL
-+iwl_dbgfs_protection_mode_read_fndecl_27492_fns iwl_dbgfs_protection_mode_read fndecl 3 27492 NULL
-+ieee80211_if_read_dot11MeshForwarding_fndecl_27495_fns ieee80211_if_read_dot11MeshForwarding fndecl 3 27495 NULL
-+rq_size_srpt_rdma_ch_27500_fns rq_size srpt_rdma_ch 0 27500 NULL nohasharray
-+ath10k_read_nf_cal_period_fndecl_27500_fns ath10k_read_nf_cal_period fndecl 3 27500 &rq_size_srpt_rdma_ch_27500_fns
-+lpfc_idiag_queacc_read_fndecl_27501_fns lpfc_idiag_queacc_read fndecl 3 27501 NULL
-+rx_buf_size_bnx2x_fastpath_27506_fns rx_buf_size bnx2x_fastpath 0 27506 NULL
++local_nentries_xpc_channel_27489_fns local_nentries xpc_channel 0 27489 NULL
+dvb_demux_read_fndecl_27534_fns dvb_demux_read fndecl 3 27534 NULL
-+sddr09_write_data_fndecl_27565_fns sddr09_write_data fndecl 3 27565 NULL
++lov_obd_packmd_fndecl_27573_fns lov_obd_packmd fndecl 0 27573 NULL
+pci_add_ext_cap_save_buffer_fndecl_27587_fns pci_add_ext_cap_save_buffer fndecl 3 27587 NULL
+dvb_usercopy_fndecl_27591_fns dvb_usercopy fndecl 2 27591 NULL
+md_alloc_fndecl_27600_fns md_alloc fndecl 1 27600 NULL
+iscsi_create_flashnode_conn_fndecl_27605_fns iscsi_create_flashnode_conn fndecl 4 27605 NULL
-+snoop_urb_data_fndecl_27635_fns snoop_urb_data fndecl 2 27635 NULL
-+sta_agg_status_read_fndecl_27641_fns sta_agg_status_read fndecl 3 27641 NULL
+error_res_proc_context_27648_fns error res_proc_context 0 27648 NULL
+nvkm_event_init_fndecl_27654_fns nvkm_event_init fndecl 2-3 27654 NULL
++gb_operation_create_common_fndecl_27662_fns gb_operation_create_common fndecl 3 27662 NULL
+masq_device_event_fndecl_27665_fns masq_device_event fndecl 0 27665 NULL
+mr_write_fndecl_27670_fns mr_write fndecl 0 27670 NULL
+tlbflush_write_file_fndecl_27685_fns tlbflush_write_file fndecl 3 27685 NULL
-+_iwl_dbgfs_prph_reg_write_fndecl_27686_fns _iwl_dbgfs_prph_reg_write fndecl 3 27686 NULL
+vhci_put_user_fndecl_27695_fns vhci_put_user fndecl 4 27695 NULL
+hvc_alloc_fndecl_27696_fns hvc_alloc fndecl 4 27696 NULL
+pcpu_extend_area_map_fndecl_27710_fns pcpu_extend_area_map fndecl 2 27710 NULL
++sdhci_pltfm_init_fndecl_27712_fns sdhci_pltfm_init fndecl 3 27712 NULL
+fsblog_xfs_da_geometry_27717_fns fsblog xfs_da_geometry 0 27717 NULL
+pwr_rcvd_awake_bcns_cnt_read_fndecl_27723_fns pwr_rcvd_awake_bcns_cnt_read fndecl 3 27723 NULL
+xstate_size__fpx_sw_bytes_27731_fns xstate_size _fpx_sw_bytes 0 27731 NULL
++ioat_dca_count_dca_slots_fndecl_27732_fns ioat_dca_count_dca_slots fndecl 0 27732 NULL
++word_size_e1000_eeprom_info_27741_fns word_size e1000_eeprom_info 0 27741 NULL
+si_blocks_ocfs2_slot_info_27753_fns si_blocks ocfs2_slot_info 0 27753 NULL
+sel_read_class_fndecl_27758_fns sel_read_class fndecl 3 27758 NULL
-+dwc3_link_state_write_fndecl_27762_fns dwc3_link_state_write fndecl 3 27762 NULL
+rtw_android_get_link_speed_fndecl_27772_fns rtw_android_get_link_speed fndecl 0 27772 NULL
-+raid_disks_pool_info_27784_fns raid_disks pool_info 0 27784 NULL
+nr_ports_solos_card_27804_fns nr_ports solos_card 0 27804 NULL
-+iwl_dbgfs_calib_disabled_write_fndecl_27824_fns iwl_dbgfs_calib_disabled_write fndecl 3 27824 NULL
-+roundup_brcmf_sdio_27833_fns roundup brcmf_sdio 0 27833 NULL
-+ieee80211_if_read_num_buffered_multicast_fndecl_27839_fns ieee80211_if_read_num_buffered_multicast fndecl 3 27839 NULL
-+ieee80211_if_read_dot11MeshMaxRetries_fndecl_27847_fns ieee80211_if_read_dot11MeshMaxRetries fndecl 3 27847 NULL
++roundup_brcmf_sdio_27833_fns roundup brcmf_sdio 0 27833 NULL nohasharray
++type_kqid_27833_fns type kqid 0 27833 &roundup_brcmf_sdio_27833_fns
++cfg_niq_csio_hw_27842_fns cfg_niq csio_hw 0 27842 NULL
+traceSMB_proc_write_fndecl_27848_fns traceSMB_proc_write fndecl 3 27848 NULL
-+key_rx_spec_read_fndecl_27859_fns key_rx_spec_read fndecl 3 27859 NULL
+listxattr_fndecl_27890_fns listxattr fndecl 3 27890 NULL
+lbq_len_rx_ring_27913_fns lbq_len rx_ring 0 27913 NULL
-+il_dbgfs_nvm_read_fndecl_27923_fns il_dbgfs_nvm_read fndecl 3 27923 NULL
++numchips_lpddr_private_27938_fns numchips lpddr_private 0 27938 NULL
+usbat_hp8200e_rw_block_test_fndecl_27957_fns usbat_hp8200e_rw_block_test fndecl 5-13 27957 NULL
+pcbit_writecmd_fndecl_27967_fns pcbit_writecmd fndecl 2 27967 NULL
+parser_init_byte_stream_fndecl_27973_fns parser_init_byte_stream fndecl 2 27973 NULL
+mptctl_ioctl_fndecl_27984_fns mptctl_ioctl fndecl 2 27984 NULL
+__nf_ct_ext_add_length_fndecl_27999_fns __nf_ct_ext_add_length fndecl 3 27999 NULL
-+scif_recv_fndecl_28006_fns scif_recv fndecl 3 28006 NULL
+xfs_iext_inline_to_direct_fndecl_28019_fns xfs_iext_inline_to_direct fndecl 2 28019 NULL
-+write_file_dump_fndecl_28020_fns write_file_dump fndecl 3 28020 NULL nohasharray
-+populate_dir_fndecl_28020_fns populate_dir fndecl 0 28020 &write_file_dump_fndecl_28020_fns
-+evtchn_alloc_ring_fndecl_28034_fns evtchn_alloc_ring fndecl 1 28034 NULL
++populate_dir_fndecl_28020_fns populate_dir fndecl 0 28020 NULL nohasharray
++write_file_dump_fndecl_28020_fns write_file_dump fndecl 3 28020 &populate_dir_fndecl_28020_fns
+cfs_array_alloc_fndecl_28042_fns cfs_array_alloc fndecl 2 28042 NULL
-+ieee80211_if_read_num_mcast_sta_fndecl_28048_fns ieee80211_if_read_num_mcast_sta fndecl 3 28048 NULL
-+s_imap_blocks_minix_sb_info_28062_fns s_imap_blocks minix_sb_info 0 28062 NULL
-+_mv88e6xxx_port_fdb_load_fndecl_28093_fns _mv88e6xxx_port_fdb_load fndecl 4 28093 NULL
++num_intr_mic_intr_info_28048_fns num_intr mic_intr_info 0 28048 NULL
++bio_slab_max_vardecl_bio_c_28087_fns bio_slab_max vardecl_bio.c 0 28087 NULL
+fnic_trace_ctrl_read_fndecl_28098_fns fnic_trace_ctrl_read fndecl 3 28098 NULL
+stream_next_buffer_check_queue_fndecl_28114_fns stream_next_buffer_check_queue fndecl 0 28114 NULL
+cfg80211_disconnected_fndecl_28155_fns cfg80211_disconnected fndecl 4 28155 NULL
-+read_file_tpc_fndecl_28162_fns read_file_tpc fndecl 3 28162 NULL
+__dn_setsockopt_fndecl_28183_fns __dn_setsockopt fndecl 5 28183 NULL
+ttm_dma_pool_alloc_new_pages_fndecl_28194_fns ttm_dma_pool_alloc_new_pages fndecl 3 28194 NULL
+snd_rme96_playback_copy_fndecl_28196_fns snd_rme96_playback_copy fndecl 5 28196 NULL
+bfad_debugfs_read_fndecl_28204_fns bfad_debugfs_read fndecl 3 28204 NULL
+xattr_getsecurity_fndecl_28209_fns xattr_getsecurity fndecl 0 28209 NULL
-+wil_seq_hexdump_fndecl_28225_fns wil_seq_hexdump fndecl 3 28225 NULL
++relay_file_read_fndecl_28240_fns relay_file_read fndecl 3 28240 NULL
+pwr_disable_ps_read_fndecl_28267_fns pwr_disable_ps_read fndecl 3 28267 NULL
+pbdma_nr_gk104_fifo_28278_fns pbdma_nr gk104_fifo 0 28278 NULL
-+mmc_ext_csd_read_fndecl_28294_fns mmc_ext_csd_read fndecl 3 28294 NULL
-+create_trace_uprobe_fndecl_28307_fns create_trace_uprobe fndecl 1 28307 NULL
+xhci_segment_alloc_fndecl_28310_fns xhci_segment_alloc fndecl 3 28310 NULL
+comedi_read_fndecl_28316_fns comedi_read fndecl 3 28316 NULL
++npages_mlx4_buf_28321_fns npages mlx4_buf 0 28321 NULL
+set_video_mode_Kiara_fndecl_28325_fns set_video_mode_Kiara fndecl 4 28325 NULL
-+_iwl_dbgfs_disable_power_off_write_fndecl_28328_fns _iwl_dbgfs_disable_power_off_write fndecl 3 28328 NULL
-+mwifiex_debug_mask_read_fndecl_28341_fns mwifiex_debug_mask_read fndecl 3 28341 NULL
+fnic_trace_ctrl_write_fndecl_28350_fns fnic_trace_ctrl_write fndecl 3 28350 NULL
-+j_blocksize_journal_s_28358_fns j_blocksize journal_s 0 28358 NULL
+dma_lch_count_vardecl_dma_c_28369_fns dma_lch_count vardecl_dma.c 0 28369 NULL
-+init_tid_tabs_fndecl_28375_fns init_tid_tabs fndecl 4-3-2 28375 NULL nohasharray
-+usbat_multiple_write_fndecl_28375_fns usbat_multiple_write fndecl 4 28375 &init_tid_tabs_fndecl_28375_fns
++usbat_multiple_write_fndecl_28375_fns usbat_multiple_write fndecl 4 28375 NULL
+bio_integrity_trim_fndecl_28376_fns bio_integrity_trim fndecl 2-3 28376 NULL
+simple_attr_write_fndecl_28383_fns simple_attr_write fndecl 3 28383 NULL
+__bpf_fill_ja_fndecl_28393_fns __bpf_fill_ja fndecl 2 28393 NULL
-+lpfc_idiag_mbxacc_get_setup_fndecl_28401_fns lpfc_idiag_mbxacc_get_setup fndecl 0 28401 NULL
-+il4965_stats_flag_fndecl_28402_fns il4965_stats_flag fndecl 0 28402 NULL
+sd_major_fndecl_28413_fns sd_major fndecl 1-0 28413 NULL
+__inet_insert_ifa_fndecl_28418_fns __inet_insert_ifa fndecl 0 28418 NULL nohasharray
+xfs_inumbers_fmt_fndecl_28418_fns xfs_inumbers_fmt fndecl 3 28418 &__inet_insert_ifa_fndecl_28418_fns
+hpi_init_messageV1_fndecl_28435_fns hpi_init_messageV1 fndecl 2 28435 NULL
-+stripe_size_bcache_device_28454_fns stripe_size bcache_device 0 28454 NULL
++iscsi_iser_session_create_fndecl_28447_fns iscsi_iser_session_create fndecl 3 28447 NULL
+data_out_size_mpt3_ioctl_command_28472_fns data_out_size mpt3_ioctl_command 0 28472 NULL
+spidev_ioctl_fndecl_28477_fns spidev_ioctl fndecl 2 28477 NULL
++mgslpc_device_count_vardecl_synclink_cs_c_28478_fns mgslpc_device_count vardecl_synclink_cs.c 0 28478 NULL
+csa_nrclists_cb_sequenceargs_28491_fns csa_nrclists cb_sequenceargs 0 28491 NULL
+get_leb_cnt_fndecl_28495_fns get_leb_cnt fndecl 0-2 28495 NULL
+num_vmdq_msix_i40e_pf_28501_fns num_vmdq_msix i40e_pf 0 28501 NULL
+rds_pages_in_vec_fndecl_28521_fns rds_pages_in_vec fndecl 0 28521 NULL
++max_rds_rings_qlcnic_adapter_28536_fns max_rds_rings qlcnic_adapter 0 28536 NULL
++btcx_screen_clips_fndecl_28540_fns btcx_screen_clips fndecl 0-5 28540 NULL
+get_virtual_node_size_fndecl_28543_fns get_virtual_node_size fndecl 0 28543 NULL
+mlx5_cmd_fc_bulk_alloc_fndecl_28547_fns mlx5_cmd_fc_bulk_alloc fndecl 3 28547 NULL
+mwifiex_send_delba_fndecl_28557_fns mwifiex_send_delba fndecl 2 28557 NULL
+wil_write_back_fndecl_28568_fns wil_write_back fndecl 3 28568 NULL
-+nvme_npages_fndecl_28569_fns nvme_npages fndecl 0-1 28569 NULL
+ufx_i2c_wait_busy_fndecl_28574_fns ufx_i2c_wait_busy fndecl 0 28574 NULL
-+_iwl_dbgfs_ss_force_write_fndecl_28587_fns _iwl_dbgfs_ss_force_write fndecl 3 28587 NULL
++charcount_console_font_op_28585_fns charcount console_font_op 0 28585 NULL
+i915_gem_gtt_pread_fndecl_28595_fns i915_gem_gtt_pread fndecl 3-4 28595 NULL
+tmc_read_fndecl_28597_fns tmc_read fndecl 3 28597 NULL
-+bm_status_write_fndecl_28599_fns bm_status_write fndecl 3 28599 NULL nohasharray
-+menu_count_uvc_xu_control_mapping_28599_fns menu_count uvc_xu_control_mapping 0 28599 &bm_status_write_fndecl_28599_fns
-+hfi1_rcvarr_split_vardecl_init_c_28624_fns hfi1_rcvarr_split vardecl_init.c 0 28624 NULL nohasharray
-+mgmt_get_if_info_fndecl_28624_fns mgmt_get_if_info fndecl 0 28624 &hfi1_rcvarr_split_vardecl_init_c_28624_fns
-+_get_block_create_0_fndecl_28632_fns _get_block_create_0 fndecl 2 28632 NULL
++menu_count_uvc_xu_control_mapping_28599_fns menu_count uvc_xu_control_mapping 0 28599 NULL nohasharray
++bm_status_write_fndecl_28599_fns bm_status_write fndecl 3 28599 &menu_count_uvc_xu_control_mapping_28599_fns
++output_async_fndecl_28621_fns output_async fndecl 3 28621 NULL
++hfi1_rcvarr_split_vardecl_init_c_28624_fns hfi1_rcvarr_split vardecl_init.c 0 28624 NULL
++rvt_rkey_ok_fndecl_28649_fns rvt_rkey_ok fndecl 3-4 28649 NULL
+alloc_size_chunk_28657_fns alloc_size chunk 0 28657 NULL
+offset_cache_reader_28697_fns offset cache_reader 0 28697 NULL
-+lpfc_idiag_ctlacc_write_fndecl_28715_fns lpfc_idiag_ctlacc_write fndecl 3 28715 NULL
++mlx4_init_cmpt_table_fndecl_28706_fns mlx4_init_cmpt_table fndecl 3 28706 NULL
+oprofilefs_ulong_to_user_fndecl_28717_fns oprofilefs_ulong_to_user fndecl 3 28717 NULL
+note_last_dentry_fndecl_28724_fns note_last_dentry fndecl 3 28724 NULL nohasharray
+d40_prep_memcpy_fndecl_28724_fns d40_prep_memcpy fndecl 4 28724 &note_last_dentry_fndecl_28724_fns
+skb_cow_data_fndecl_28734_fns skb_cow_data fndecl 0 28734 NULL
-+size_mspro_sys_attr_28742_fns size mspro_sys_attr 0 28742 NULL
+batadv_iv_ogm_orig_del_if_fndecl_28743_fns batadv_iv_ogm_orig_del_if fndecl 2 28743 NULL
+batadv_iv_ogm_orig_add_if_fndecl_28753_fns batadv_iv_ogm_orig_add_if fndecl 2 28753 NULL
+fw_device_op_ioctl_fndecl_28760_fns fw_device_op_ioctl fndecl 2 28760 NULL
-+snic_print_desc_fndecl_28784_fns snic_print_desc fndecl 3 28784 NULL
+C_SYSC_migrate_pages_fndecl_28785_fns C_SYSC_migrate_pages fndecl 2 28785 NULL
-+fill_swm_input_fndecl_28799_fns fill_swm_input fndecl 0 28799 NULL
-+brcmf_fil_bsscfg_data_set_fndecl_28806_fns brcmf_fil_bsscfg_data_set fndecl 4 28806 NULL
-+sisusb_send_bridge_packet_fndecl_28818_fns sisusb_send_bridge_packet fndecl 2 28818 NULL
++ide_queue_pc_tail_fndecl_28810_fns ide_queue_pc_tail fndecl 5 28810 NULL
++sctp_setsockopt_hmac_ident_fndecl_28852_fns sctp_setsockopt_hmac_ident fndecl 3 28852 NULL
+split_fndecl_28856_fns split fndecl 2 28856 NULL
+snd_ctl_elem_user_tlv_fndecl_28860_fns snd_ctl_elem_user_tlv fndecl 3 28860 NULL
-+br_fdb_update_fndecl_28873_fns br_fdb_update fndecl 4 28873 NULL
++imclk_usdhi6_host_28873_fns imclk usdhi6_host 0 28873 NULL nohasharray
++br_fdb_update_fndecl_28873_fns br_fdb_update fndecl 4 28873 &imclk_usdhi6_host_28873_fns
+TupleOffset_tuple_t_28876_fns TupleOffset tuple_t 0 28876 NULL
-+flags_read_fndecl_28903_fns flags_read fndecl 3 28903 NULL
+ieee80211_get_num_supported_channels_fndecl_28907_fns ieee80211_get_num_supported_channels fndecl 0 28907 NULL
-+iwl_dbgfs_qos_read_fndecl_28922_fns iwl_dbgfs_qos_read fndecl 3 28922 NULL
+ecdh_make_pub_key_fndecl_28927_fns ecdh_make_pub_key fndecl 2 28927 NULL
+wil_write_led_blink_time_fndecl_28933_fns wil_write_led_blink_time fndecl 3 28933 NULL
+usbat_write_block_fndecl_28938_fns usbat_write_block fndecl 4-6 28938 NULL
+ath6kl_power_params_write_fndecl_28953_fns ath6kl_power_params_write fndecl 3 28953 NULL
-+iwl_dbgfs_ss_force_read_fndecl_28968_fns iwl_dbgfs_ss_force_read fndecl 3 28968 NULL
+sel_write_create_fndecl_29002_fns sel_write_create fndecl 3 29002 NULL
-+__kfifo_out_peek_fndecl_29010_fns __kfifo_out_peek fndecl 0-3 29010 NULL nohasharray
-+construct_key_fndecl_29010_fns construct_key fndecl 3 29010 &__kfifo_out_peek_fndecl_29010_fns
++construct_key_fndecl_29010_fns construct_key fndecl 3 29010 NULL
+seq_copy_in_user_fndecl_29019_fns seq_copy_in_user fndecl 3 29019 NULL
+max_physical_pkg_id_vardecl_smpboot_c_29028_fns max_physical_pkg_id vardecl_smpboot.c 0 29028 NULL
+drm_vblank_init_fndecl_29041_fns drm_vblank_init fndecl 2 29041 NULL
@@ -207126,8 +211552,6 @@ index 0000000..510c554
+qib_get_base_info_fndecl_29050_fns qib_get_base_info fndecl 3 29050 NULL
+str_to_user_fndecl_29056_fns str_to_user fndecl 2 29056 NULL
+___alloc_bootmem_fndecl_29057_fns ___alloc_bootmem fndecl 1 29057 NULL
-+adis16480_show_firmware_revision_fndecl_29066_fns adis16480_show_firmware_revision fndecl 3 29066 NULL
-+i40e_dbg_command_write_fndecl_29070_fns i40e_dbg_command_write fndecl 3 29070 NULL
+dev_irnet_write_fndecl_29077_fns dev_irnet_write fndecl 3 29077 NULL
+ablkcipher_edesc_alloc_fndecl_29119_fns ablkcipher_edesc_alloc fndecl 2 29119 NULL
+pci_set_power_state_fndecl_29124_fns pci_set_power_state fndecl 0 29124 NULL nohasharray
@@ -207136,39 +211560,33 @@ index 0000000..510c554
+max_dump_cnt_ramoops_context_29141_fns max_dump_cnt ramoops_context 0 29141 NULL
+kmem_zalloc_fndecl_29157_fns kmem_zalloc fndecl 1 29157 NULL
+current_rx_bytes_printer_dev_29165_fns current_rx_bytes printer_dev 0 29165 NULL
-+dwc2_hsotg_send_reply_fndecl_29174_fns dwc2_hsotg_send_reply fndecl 4 29174 NULL
+vp_try_to_find_vqs_fndecl_29181_fns vp_try_to_find_vqs fndecl 2 29181 NULL
-+ieee80211_if_read_user_power_level_fndecl_29185_fns ieee80211_if_read_user_power_level fndecl 3 29185 NULL
-+brcmf_config_wowl_pattern_fndecl_29198_fns brcmf_config_wowl_pattern fndecl 4 29198 NULL
+notifier_call_chain_fndecl_29207_fns notifier_call_chain fndecl 0 29207 NULL
+dvb_dmxdev_buffer_write_fndecl_29234_fns dvb_dmxdev_buffer_write fndecl 0 29234 NULL
-+il4965_ucode_tx_stats_read_fndecl_29235_fns il4965_ucode_tx_stats_read fndecl 3 29235 NULL
++count_qed_tid_seg_29243_fns count qed_tid_seg 0 29243 NULL
+ptc_proc_write_fndecl_29247_fns ptc_proc_write fndecl 3 29247 NULL
++hfi1_copy_sge_fndecl_29257_fns hfi1_copy_sge fndecl 3 29257 NULL
+rtw_malloc2d_fndecl_29269_fns rtw_malloc2d fndecl 3-2-1 29269 NULL
+ib_uverbs_open_xrcd_fndecl_29276_fns ib_uverbs_open_xrcd fndecl 4-5 29276 NULL
-+vmbus_open_fndecl_29289_fns vmbus_open fndecl 3-2 29289 NULL
-+_iwl_dbgfs_tof_range_req_ext_write_fndecl_29290_fns _iwl_dbgfs_tof_range_req_ext_write fndecl 3 29290 NULL
-+btmrvl_sdio_host_to_card_fndecl_29291_fns btmrvl_sdio_host_to_card fndecl 3 29291 NULL
-+msg_size_adf_etr_ring_data_29295_fns msg_size adf_etr_ring_data 0 29295 NULL
+xfs_handle_to_dentry_fndecl_29300_fns xfs_handle_to_dentry fndecl 3 29300 NULL
+rawv6_seticmpfilter_fndecl_29306_fns rawv6_seticmpfilter fndecl 5 29306 NULL
+fnic_reset_stats_write_fndecl_29314_fns fnic_reset_stats_write fndecl 3 29314 NULL
-+total_size_orangefs_bufmap_29333_fns total_size orangefs_bufmap 0 29333 NULL nohasharray
-+num_sge_ib_recv_wr_29333_fns num_sge ib_recv_wr 0 29333 &total_size_orangefs_bufmap_29333_fns
-+fuse_get_req_fndecl_29358_fns fuse_get_req fndecl 2 29358 NULL nohasharray
-+aat2870_reg_read_file_fndecl_29358_fns aat2870_reg_read_file fndecl 3 29358 &fuse_get_req_fndecl_29358_fns
++total_size_orangefs_bufmap_29333_fns total_size orangefs_bufmap 0 29333 NULL
++alloced_snd_array_29353_fns alloced snd_array 0 29353 NULL
++fuse_get_req_fndecl_29358_fns fuse_get_req fndecl 2 29358 NULL
+tx_ring_size_pxa168_eth_private_29372_fns tx_ring_size pxa168_eth_private 0 29372 NULL
+ib_uverbs_unmarshall_recv_fndecl_29384_fns ib_uverbs_unmarshall_recv fndecl 5 29384 NULL
+__alloc_bootmem_low_nopanic_fndecl_29400_fns __alloc_bootmem_low_nopanic fndecl 1 29400 NULL nohasharray
+octeon_alloc_recv_info_fndecl_29400_fns octeon_alloc_recv_info fndecl 1 29400 &__alloc_bootmem_low_nopanic_fndecl_29400_fns
-+rts51x_read_status_fndecl_29477_fns rts51x_read_status fndecl 4 29477 NULL
++block_extra_size_snd_util_memhdr_29432_fns block_extra_size snd_util_memhdr 0 29432 NULL
+sctp_setsockopt_maxseg_fndecl_29478_fns sctp_setsockopt_maxseg fndecl 3 29478 NULL
+nf_nat_sdp_media_fndecl_29508_fns nf_nat_sdp_media fndecl 9 29508 NULL
+ecryptfs_copy_filename_fndecl_29519_fns ecryptfs_copy_filename fndecl 4 29519 NULL
+unix_stream_connect_fndecl_29527_fns unix_stream_connect fndecl 3 29527 NULL
++qedr_prepare_pbl_tbl_fndecl_29561_fns qedr_prepare_pbl_tbl fndecl 3 29561 NULL
+nvbios_rd16_fndecl_29576_fns nvbios_rd16 fndecl 0 29576 NULL
+xstateregs_get_fndecl_29585_fns xstateregs_get fndecl 4 29585 NULL
-+rxe_pool_init_index_fndecl_29612_fns rxe_pool_init_index fndecl 2-3 29612 NULL
++rxe_pool_init_index_fndecl_29612_fns rxe_pool_init_index fndecl 3-2 29612 NULL
+nicvf_init_snd_queue_fndecl_29640_fns nicvf_init_snd_queue fndecl 3 29640 NULL
+acpi_rs_set_resource_header_fndecl_29642_fns acpi_rs_set_resource_header fndecl 2 29642 NULL
+er_extcount_xfs_ext_irec_29646_fns er_extcount xfs_ext_irec 0 29646 NULL
@@ -207176,19 +211594,14 @@ index 0000000..510c554
+count_vfio_pci_hot_reset_info_29655_fns count vfio_pci_hot_reset_info 0 29655 NULL
+split_node_fndecl_29659_fns split_node fndecl 0 29659 NULL nohasharray
+ls_num_lprocfs_stats_29659_fns ls_num lprocfs_stats 0 29659 &split_node_fndecl_29659_fns
-+i40e_pci_sriov_configure_fndecl_29688_fns i40e_pci_sriov_configure fndecl 2 29688 NULL
+rds_message_alloc_fndecl_29702_fns rds_message_alloc fndecl 1 29702 NULL
-+get_vm_area_caller_fndecl_29708_fns get_vm_area_caller fndecl 1 29708 NULL
+maxframe_vardecl_n_hdlc_c_29719_fns maxframe vardecl_n_hdlc.c 0 29719 NULL
++sel_write_disable_fndecl_29724_fns sel_write_disable fndecl 3 29724 NULL
+pipeline_defrag_to_rx_xfer_swi_read_fndecl_29788_fns pipeline_defrag_to_rx_xfer_swi_read fndecl 3 29788 NULL
-+supply_map_read_file_fndecl_29795_fns supply_map_read_file fndecl 3 29795 NULL
+ima_show_htable_violations_fndecl_29800_fns ima_show_htable_violations fndecl 3 29800 NULL
-+otp_read_fndecl_29809_fns otp_read fndecl 2-4-5 29809 NULL nohasharray
-+vbe_state_size_uvesafb_par_29809_fns vbe_state_size uvesafb_par 0 29809 &otp_read_fndecl_29809_fns
++vbe_state_size_uvesafb_par_29809_fns vbe_state_size uvesafb_par 0 29809 NULL
+si_lasti_bfs_sb_info_29842_fns si_lasti bfs_sb_info 0 29842 NULL
+len_ethtool_dump_29843_fns len ethtool_dump 0 29843 NULL
-+fq_alloc_node_fndecl_29850_fns fq_alloc_node fndecl 1 29850 NULL
-+nd_cmd_out_size_fndecl_29867_fns nd_cmd_out_size fndecl 0-7 29867 NULL
+nfs_idmap_lookup_id_fndecl_29879_fns nfs_idmap_lookup_id fndecl 2 29879 NULL
+parport_write_fndecl_29886_fns parport_write fndecl 0 29886 NULL
+length_ndis_80211_pmkid_29893_fns length ndis_80211_pmkid 0 29893 NULL
@@ -207196,8 +211609,7 @@ index 0000000..510c554
+error_error_frame_ctrl_read_fndecl_29919_fns error_error_frame_ctrl_read fndecl 3 29919 NULL
+sctp_getsockopt_maxseg_fndecl_29922_fns sctp_getsockopt_maxseg fndecl 2 29922 NULL
+sys_syslog_fndecl_29929_fns sys_syslog fndecl 3 29929 NULL
-+msi_setup_entry_fndecl_29969_fns msi_setup_entry fndecl 2 29969 NULL
-+iwl_dbgfs_tof_enable_read_fndecl_30005_fns iwl_dbgfs_tof_enable_read fndecl 3 30005 NULL
++cciss_proc_write_fndecl_29952_fns cciss_proc_write fndecl 3 29952 NULL
+msc_nfinalizers_lnet_msg_container_30006_fns msc_nfinalizers lnet_msg_container 0 30006 NULL
+__qlcnic_pci_sriov_enable_fndecl_30010_fns __qlcnic_pci_sriov_enable fndecl 2 30010 NULL
+snd_rme9652_capture_copy_fndecl_30012_fns snd_rme9652_capture_copy fndecl 5 30012 NULL
@@ -207205,68 +211617,66 @@ index 0000000..510c554
+mlx5e_setup_tc_fndecl_30023_fns mlx5e_setup_tc fndecl 2 30023 NULL
+read_emulate_fndecl_30037_fns read_emulate fndecl 2-4 30037 NULL
+ath6kl_listen_int_read_fndecl_30048_fns ath6kl_listen_int_read fndecl 3 30048 NULL
-+sta_ht_capa_read_fndecl_30061_fns sta_ht_capa_read fndecl 3 30061 NULL
+do_compat_pselect_fndecl_30093_fns do_compat_pselect fndecl 1 30093 NULL
+ecryptfs_decode_and_decrypt_filename_fndecl_30104_fns ecryptfs_decode_and_decrypt_filename fndecl 5 30104 NULL
+if_real_bytes_xfs_ifork_30126_fns if_real_bytes xfs_ifork 0 30126 NULL
-+ath10k_write_btcoex_fndecl_30144_fns ath10k_write_btcoex fndecl 3 30144 NULL
-+num_tx_queues_ixgbevf_adapter_30155_fns num_tx_queues ixgbevf_adapter 0 30155 NULL
+send_section_size_netvsc_device_30166_fns send_section_size netvsc_device 0 30166 NULL
+rx_ring_size_pxa168_eth_private_30172_fns rx_ring_size pxa168_eth_private 0 30172 NULL
+event_phy_transmit_error_read_fndecl_30196_fns event_phy_transmit_error_read fndecl 3 30196 NULL
-+buf_len_uvesafb_task_30200_fns buf_len uvesafb_task 0 30200 NULL
+hrp_nthrs_ptlrpc_hr_partition_30214_fns hrp_nthrs ptlrpc_hr_partition 0 30214 NULL
+minor_rbd_device_30216_fns minor rbd_device 0 30216 NULL
-+__add_keyed_refs_fndecl_30230_fns __add_keyed_refs fndecl 3 30230 NULL
-+tda10048_writeregbulk_fndecl_30265_fns tda10048_writeregbulk fndecl 4 30265 NULL
++SetLineNumber_fndecl_30236_fns SetLineNumber fndecl 0 30236 NULL
++minor_count_vardecl_30272_fns minor_count vardecl 0 30272 NULL
+count_argc_fndecl_30296_fns count_argc fndecl 0 30296 NULL
+alloc_alien_cache_fndecl_30308_fns alloc_alien_cache fndecl 2 30308 NULL
-+tracing_buffers_read_fndecl_30311_fns tracing_buffers_read fndecl 3 30311 NULL
+kvm_write_guest_cached_fndecl_30321_fns kvm_write_guest_cached fndecl 4 30321 NULL
+avc_stream_set_format_fndecl_30322_fns avc_stream_set_format fndecl 5 30322 NULL
++init_mr_info_fndecl_30331_fns init_mr_info fndecl 3 30331 NULL
+tc90522_master_xfer_fndecl_30332_fns tc90522_master_xfer fndecl 3 30332 NULL
+nr_ops_rdma_rw_ctx_30338_fns nr_ops rdma_rw_ctx 0 30338 NULL
+len_snd_seq_ev_ext_30374_fns len snd_seq_ev_ext 0 30374 NULL
-+il_dbgfs_rx_queue_read_fndecl_30406_fns il_dbgfs_rx_queue_read fndecl 3 30406 NULL
-+nvec_used_msi_desc_30409_fns nvec_used msi_desc 0 30409 NULL
++max_span_mlxsw_resources_30386_fns max_span mlxsw_resources 0 30386 NULL
++hwm_tx_init_fndecl_30411_fns hwm_tx_init fndecl 4 30411 NULL
+get_pages_vram_fndecl_30416_fns get_pages_vram fndecl 2 30416 NULL
+decode_opaque_fixed_fndecl_30421_fns decode_opaque_fixed fndecl 3 30421 NULL
++flat_state_cnt_vardecl_processor_idle_c_30427_fns flat_state_cnt vardecl_processor_idle.c 0 30427 NULL
+of_irq_count_fndecl_30438_fns of_irq_count fndecl 0 30438 NULL
+comedi_alloc_spriv_fndecl_30449_fns comedi_alloc_spriv fndecl 2 30449 NULL
-+rd_build_prot_space_fndecl_30490_fns rd_build_prot_space fndecl 2-3 30490 NULL
++btrfs_sync_file_fndecl_30480_fns btrfs_sync_file fndecl 3 30480 NULL
++rd_build_prot_space_fndecl_30490_fns rd_build_prot_space fndecl 3-2 30490 NULL
+vhost_add_used_n_fndecl_30491_fns vhost_add_used_n fndecl 3 30491 NULL
+kvm_read_guest_atomic_fndecl_30494_fns kvm_read_guest_atomic fndecl 4-2 30494 NULL
+ttm_dma_page_pool_free_fndecl_30527_fns ttm_dma_page_pool_free fndecl 2 30527 NULL
++nvme_submit_sync_cmd_fndecl_30530_fns nvme_submit_sync_cmd fndecl 4 30530 NULL
+wMaxCommand_wdm_device_30565_fns wMaxCommand wdm_device 0 30565 NULL
+wil_read_led_blink_time_fndecl_30567_fns wil_read_led_blink_time fndecl 3 30567 NULL
+snd_pcm_oss_write1_fndecl_30571_fns snd_pcm_oss_write1 fndecl 3 30571 NULL
-+wiidebug_drm_write_fndecl_30572_fns wiidebug_drm_write fndecl 3 30572 NULL
+mbox_test_message_read_fndecl_30588_fns mbox_test_message_read fndecl 3 30588 NULL
+get_scq_fndecl_30594_fns get_scq fndecl 2 30594 NULL
+tifm_alloc_adapter_fndecl_30596_fns tifm_alloc_adapter fndecl 1 30596 NULL
++rx_win_size_mwifiex_add_ba_param_30610_fns rx_win_size mwifiex_add_ba_param 0 30610 NULL
+kobject_add_fndecl_30644_fns kobject_add fndecl 0 30644 NULL
+ci_port_test_write_fndecl_30657_fns ci_port_test_write fndecl 3 30657 NULL
+xfrm_hash_alloc_fndecl_30694_fns xfrm_hash_alloc fndecl 1 30694 NULL
+rx_filter_accum_arp_pend_requests_read_fndecl_30696_fns rx_filter_accum_arp_pend_requests_read fndecl 3 30696 NULL
+bm_entry_read_fndecl_30707_fns bm_entry_read fndecl 3 30707 NULL
+sched_autogroup_write_fndecl_30715_fns sched_autogroup_write fndecl 3 30715 NULL
-+__alloc_preds_fndecl_30727_fns __alloc_preds fndecl 2 30727 NULL
++lbs_threshold_write_fndecl_30733_fns lbs_threshold_write fndecl 5 30733 NULL
+mlx5_wq_cyc_get_size_fndecl_30741_fns mlx5_wq_cyc_get_size fndecl 0 30741 NULL
-+iwl_dbgfs_fw_dbg_conf_read_fndecl_30753_fns iwl_dbgfs_fw_dbg_conf_read fndecl 3 30753 NULL
-+command_setvloffset_fndecl_30761_fns command_setvloffset fndecl 0 30761 NULL
++copy_ucs2_to_user_len_fndecl_30743_fns copy_ucs2_to_user_len fndecl 3 30743 NULL
++command_setvloffset_fndecl_30761_fns command_setvloffset fndecl 0 30761 NULL nohasharray
++n_scan_channels_iwl_ucode_capabilities_30761_fns n_scan_channels iwl_ucode_capabilities 0 30761 &command_setvloffset_fndecl_30761_fns
+lp_write_fndecl_30772_fns lp_write fndecl 3 30772 NULL
+ocrdma_alloc_mr_fndecl_30774_fns ocrdma_alloc_mr fndecl 3 30774 NULL
-+inj_readme_read_fndecl_30779_fns inj_readme_read fndecl 3 30779 NULL
+fw_node_create_fndecl_30788_fns fw_node_create fndecl 2 30788 NULL
+kobj_map_fndecl_30797_fns kobj_map fndecl 3-2 30797 NULL nohasharray
+ogm_buff_len_batadv_priv_bat_v_30797_fns ogm_buff_len batadv_priv_bat_v 0 30797 &kobj_map_fndecl_30797_fns
-+iwl_dbgfs_bf_params_read_fndecl_30805_fns iwl_dbgfs_bf_params_read fndecl 3 30805 NULL
-+il_dbgfs_missed_beacon_write_fndecl_30809_fns il_dbgfs_missed_beacon_write fndecl 3 30809 NULL
+shadow_root_level_kvm_mmu_30842_fns shadow_root_level kvm_mmu 0 30842 NULL
+saa7164_buffer_alloc_user_fndecl_30856_fns saa7164_buffer_alloc_user fndecl 2 30856 NULL
+lov_ost_pool_add_fndecl_30857_fns lov_ost_pool_add fndecl 3 30857 NULL
+snd_emu10k1_fx8010_read_fndecl_30870_fns snd_emu10k1_fx8010_read fndecl 5 30870 NULL
+do_sync_fndecl_30871_fns do_sync fndecl 1 30871 NULL
++num_vec_nicpf_30886_fns num_vec nicpf 0 30886 NULL
+ceph_copy_user_to_page_vector_fndecl_30896_fns ceph_copy_user_to_page_vector fndecl 3-4 30896 NULL
+__erst_read_from_storage_fndecl_30921_fns __erst_read_from_storage fndecl 0 30921 NULL
+cpci_hp_register_bus_fndecl_30935_fns cpci_hp_register_bus fndecl 2 30935 NULL
@@ -207275,20 +211685,16 @@ index 0000000..510c554
+SYSC_ppoll_fndecl_30954_fns SYSC_ppoll fndecl 2 30954 NULL
+lowpan_control_write_fndecl_30960_fns lowpan_control_write fndecl 3 30960 NULL
+__list_lru_count_one_fndecl_30962_fns __list_lru_count_one fndecl 0 30962 NULL
-+ieee80211_if_read_aid_fndecl_30970_fns ieee80211_if_read_aid fndecl 3 30970 NULL
+tx_tx_prepared_descs_read_fndecl_30998_fns tx_tx_prepared_descs_read fndecl 3 30998 NULL
+btrfs_search_slot_fndecl_31011_fns btrfs_search_slot fndecl 0 31011 NULL
+max_order_mthca_buddy_31017_fns max_order mthca_buddy 0 31017 NULL
-+internal_depth_MPT3SAS_ADAPTER_31035_fns internal_depth MPT3SAS_ADAPTER 0 31035 NULL
+hisi_clk_init_fndecl_31037_fns hisi_clk_init fndecl 2 31037 NULL
+krb5_nfold_fndecl_31038_fns krb5_nfold fndecl 1-3 31038 NULL
-+iwl_dbgfs_stations_read_fndecl_31054_fns iwl_dbgfs_stations_read fndecl 3 31054 NULL nohasharray
-+samsung_clk_alloc_reg_dump_fndecl_31054_fns samsung_clk_alloc_reg_dump fndecl 2 31054 &iwl_dbgfs_stations_read_fndecl_31054_fns
++samsung_clk_alloc_reg_dump_fndecl_31054_fns samsung_clk_alloc_reg_dump fndecl 2 31054 NULL
+le_max_key_size_write_fndecl_31068_fns le_max_key_size_write fndecl 3 31068 NULL
+get_pipes_num_fndecl_31084_fns get_pipes_num fndecl 0 31084 NULL
+nvme_trans_fmt_get_parm_header_fndecl_31087_fns nvme_trans_fmt_get_parm_header fndecl 2 31087 NULL
+name_len_inotify_event_info_31116_fns name_len inotify_event_info 0 31116 NULL
-+reiserfs_write_end_fndecl_31117_fns reiserfs_write_end fndecl 5-3 31117 NULL
+dbgfs_sram_len_iwl_priv_31119_fns dbgfs_sram_len iwl_priv 0 31119 NULL
+nr_chips_dsa_platform_data_31127_fns nr_chips dsa_platform_data 0 31127 NULL
+read_fndecl_31142_fns read fndecl 3 31142 NULL
@@ -207297,32 +211703,27 @@ index 0000000..510c554
+ffs_ep0_write_fndecl_31181_fns ffs_ep0_write fndecl 3 31181 NULL
+op_size_ost_pool_31182_fns op_size ost_pool 0 31182 NULL
+nf_nat_sip_expect_fndecl_31193_fns nf_nat_sip_expect fndecl 8 31193 NULL
++max_packet_size_in_snd_line6_pcm_31207_fns max_packet_size_in snd_line6_pcm 0 31207 NULL
+agp_generic_alloc_user_fndecl_31213_fns agp_generic_alloc_user fndecl 1 31213 NULL nohasharray
+get_registers_fndecl_31213_fns get_registers fndecl 4 31213 &agp_generic_alloc_user_fndecl_31213_fns
+iwch_alloc_mr_fndecl_31220_fns iwch_alloc_mr fndecl 3 31220 NULL
+kmalloc_array_fndecl_31223_fns kmalloc_array fndecl 1-2 31223 NULL
++choose_log_fs_mgm_entry_size_fndecl_31228_fns choose_log_fs_mgm_entry_size fndecl 0 31228 NULL
+SYSC_move_pages_fndecl_31249_fns SYSC_move_pages fndecl 2 31249 NULL
-+ath10k_tpc_stats_read_fndecl_31267_fns ath10k_tpc_stats_read fndecl 3 31267 NULL
-+aat2870_dump_reg_fndecl_31280_fns aat2870_dump_reg fndecl 0 31280 NULL
-+igb_enable_sriov_fndecl_31288_fns igb_enable_sriov fndecl 2 31288 NULL
+asymmetric_key_generate_id_fndecl_31299_fns asymmetric_key_generate_id fndecl 4-2 31299 NULL
-+get_elem_size_fndecl_31341_fns get_elem_size fndecl 2-0 31341 NULL
-+__virtio_clear_bit_fndecl_31359_fns __virtio_clear_bit fndecl 2 31359 NULL
++get_elem_size_fndecl_31341_fns get_elem_size fndecl 0-2 31341 NULL
+wilc_scan_fndecl_31368_fns wilc_scan fndecl 5-7 31368 NULL
+dev_get_valid_name_fndecl_31369_fns dev_get_valid_name fndecl 0 31369 NULL
+brcmf_msgbuf_init_pktids_fndecl_31395_fns brcmf_msgbuf_init_pktids fndecl 1 31395 NULL
+asd_store_update_bios_fndecl_31398_fns asd_store_update_bios fndecl 4 31398 NULL
+persistent_ram_vmap_fndecl_31402_fns persistent_ram_vmap fndecl 1-2 31402 NULL
++num_types_amdgpu_irq_src_31405_fns num_types amdgpu_irq_src 0 31405 NULL
+proc_pid_attr_read_fndecl_31406_fns proc_pid_attr_read fndecl 3 31406 NULL
+zone_count_msb_data_31413_fns zone_count msb_data 0 31413 NULL
+rx_out_of_mem_read_fndecl_31422_fns rx_out_of_mem_read fndecl 3 31422 NULL
-+__check_eq_u32_array_fndecl_31439_fns __check_eq_u32_array fndecl 4-6 31439 NULL
-+lkdtm_debugfs_entry_fndecl_31452_fns lkdtm_debugfs_entry fndecl 3 31452 NULL
-+max_sz_mmc_test_area_31453_fns max_sz mmc_test_area 0 31453 NULL
+nr_voices_seq_oss_synthinfo_31487_fns nr_voices seq_oss_synthinfo 0 31487 NULL
+regmap_multi_reg_write_bypassed_fndecl_31492_fns regmap_multi_reg_write_bypassed fndecl 3 31492 NULL
+start_genius_videocam_live_fndecl_31552_fns start_genius_videocam_live fndecl 0 31552 NULL
-+ieee80211_if_read_state_fndecl_31558_fns ieee80211_if_read_state fndecl 3 31558 NULL
+bio_alloc_map_data_fndecl_31573_fns bio_alloc_map_data fndecl 1 31573 NULL
+vmcb_nested_state_31575_fns vmcb nested_state 0 31575 NULL
+ib_uverbs_resize_cq_fndecl_31583_fns ib_uverbs_resize_cq fndecl 4-5 31583 NULL
@@ -207330,15 +211731,16 @@ index 0000000..510c554
+wil_read_file_ioblob_fndecl_31621_fns wil_read_file_ioblob fndecl 3 31621 NULL
+ping_v4_sendmsg_fndecl_31624_fns ping_v4_sendmsg fndecl 3 31624 NULL
+pmcraid_alloc_sglist_fndecl_31643_fns pmcraid_alloc_sglist fndecl 1 31643 NULL
-+cntrnameslen_hfi1_devdata_31650_fns cntrnameslen hfi1_devdata 0 31650 NULL
+nonpaging_page_fault_fndecl_31655_fns nonpaging_page_fault fndecl 2 31655 NULL
++compat_sys_ipc_fndecl_31659_fns compat_sys_ipc fndecl 3 31659 NULL
+snd_midi_event_new_fndecl_31670_fns snd_midi_event_new fndecl 1 31670 NULL nohasharray
+bm_register_write_fndecl_31670_fns bm_register_write fndecl 3 31670 &snd_midi_event_new_fndecl_31670_fns
+read_file_misc_fndecl_31695_fns read_file_misc fndecl 3 31695 NULL
-+iwl_dbgfs_prph_reg_read_fndecl_31707_fns iwl_dbgfs_prph_reg_read fndecl 3 31707 NULL
++get_free_serial_index_fndecl_31714_fns get_free_serial_index fndecl 0 31714 NULL
++compat_import_iovec_fndecl_31721_fns compat_import_iovec fndecl 3 31721 NULL
+transport_len_sockaddr_rxrpc_31772_fns transport_len sockaddr_rxrpc 0 31772 NULL
+i40e_init_msix_fndecl_31776_fns i40e_init_msix fndecl 0 31776 NULL
-+fore200e_chunk_alloc_fndecl_31782_fns fore200e_chunk_alloc fndecl 3-4 31782 NULL
++fore200e_chunk_alloc_fndecl_31782_fns fore200e_chunk_alloc fndecl 4-3 31782 NULL
+dev_config_fndecl_31785_fns dev_config fndecl 3 31785 NULL
+afs_cell_lookup_fndecl_31793_fns afs_cell_lookup fndecl 2 31793 NULL
+target_submit_cmd_map_sgls_fndecl_31806_fns target_submit_cmd_map_sgls fndecl 11 31806 NULL
@@ -207347,74 +211749,66 @@ index 0000000..510c554
+mpls_rt_alloc_fndecl_31835_fns mpls_rt_alloc fndecl 1-2 31835 NULL
+cache_slow_downcall_fndecl_31849_fns cache_slow_downcall fndecl 2 31849 NULL
+isr_dma0_done_read_fndecl_31853_fns isr_dma0_done_read fndecl 3 31853 NULL
-+profile_remove_fndecl_31871_fns profile_remove fndecl 3 31871 NULL
-+tower_write_fndecl_31895_fns tower_write fndecl 3 31895 NULL
-+max_packet_size_snd_line6_pcm_31899_fns max_packet_size snd_line6_pcm 0 31899 NULL
++profile_remove_fndecl_31871_fns profile_remove fndecl 3 31871 NULL nohasharray
++tty_get_baud_rate_fndecl_31871_fns tty_get_baud_rate fndecl 0 31871 &profile_remove_fndecl_31871_fns
++s_hdrwords_rvt_qp_31882_fns s_hdrwords rvt_qp 0 31882 NULL
++max_tasks_bnx2fc_hba_31893_fns max_tasks bnx2fc_hba 0 31893 NULL
+it821x_firmware_command_fndecl_31911_fns it821x_firmware_command fndecl 3 31911 NULL
-+scsi_dma_map_fndecl_31915_fns scsi_dma_map fndecl 0 31915 NULL
-+mtu_gsm_mux_31917_fns mtu gsm_mux 0 31917 NULL
+cfs_cpt_number_fndecl_31929_fns cfs_cpt_number fndecl 0 31929 NULL
+mlx5_vzalloc_fndecl_31940_fns mlx5_vzalloc fndecl 1 31940 NULL
-+init_header_fndecl_31980_fns init_header fndecl 0 31980 NULL
+arcfb_write_fndecl_31981_fns arcfb_write fndecl 3 31981 NULL
+record_size_ramoops_context_31989_fns record_size ramoops_context 0 31989 NULL nohasharray
+lbs_bcnmiss_read_fndecl_31989_fns lbs_bcnmiss_read fndecl 3 31989 &record_size_ramoops_context_31989_fns
+rproc_trace_read_fndecl_31997_fns rproc_trace_read fndecl 3 31997 NULL
-+blocksize_sddr09_card_info_32003_fns blocksize sddr09_card_info 0 32003 NULL
-+rt2x00debug_write_bbp_fndecl_32007_fns rt2x00debug_write_bbp fndecl 3 32007 NULL
+play_iframe_fndecl_32008_fns play_iframe fndecl 3 32008 NULL
+ad7879_spi_multi_read_fndecl_32009_fns ad7879_spi_multi_read fndecl 3 32009 NULL
+recent_mt_proc_write_fndecl_32029_fns recent_mt_proc_write fndecl 3 32029 NULL
+skl_tplg_tlv_control_get_fndecl_32038_fns skl_tplg_tlv_control_get fndecl 3 32038 NULL
+kvm_mmu_page_set_gfn_fndecl_32050_fns kvm_mmu_page_set_gfn fndecl 2 32050 NULL
+g_num_of_iommus_vardecl_intel_iommu_c_32059_fns g_num_of_iommus vardecl_intel-iommu.c 0 32059 NULL
-+__jfs_xattr_set_fndecl_32062_fns __jfs_xattr_set fndecl 4 32062 NULL
+assoc_sta_del_all_sta_32069_fns assoc_sta del_all_sta 0 32069 NULL
+rproc_recovery_write_fndecl_32074_fns rproc_recovery_write fndecl 3 32074 NULL
++ahash_edesc_alloc_fndecl_32097_fns ahash_edesc_alloc fndecl 2 32097 NULL
+pci_scan_slot_fndecl_32102_fns pci_scan_slot fndecl 2 32102 NULL
-+lpfc_debugfs_max_slow_ring_trc_vardecl_lpfc_debugfs_c_32130_fns lpfc_debugfs_max_slow_ring_trc vardecl_lpfc_debugfs.c 0 32130 NULL
-+ipwireless_send_packet_fndecl_32155_fns ipwireless_send_packet fndecl 4 32155 NULL
+pwm_buf_sz_usbduxsigma_private_32156_fns pwm_buf_sz usbduxsigma_private 0 32156 NULL
-+vmalloc_usercopy_fndecl_32186_fns vmalloc_usercopy fndecl 1 32186 NULL
+ioat_alloc_ring_fndecl_32201_fns ioat_alloc_ring fndecl 2 32201 NULL
+nr_spis_v2m_data_32203_fns nr_spis v2m_data 0 32203 NULL
-+k_offset_in_core_key_32212_fns k_offset in_core_key 0 32212 NULL
-+seq_hex_dump_fndecl_32213_fns seq_hex_dump fndecl 7-4-5 32213 NULL
+xdi_copy_from_user_fndecl_32216_fns xdi_copy_from_user fndecl 4 32216 NULL
+generic_bin_search_fndecl_32235_fns generic_bin_search fndecl 0 32235 NULL
+roccat_common2_sysfs_read_fndecl_32252_fns roccat_common2_sysfs_read fndecl 6 32252 NULL
+report_count_hid_global_32260_fns report_count hid_global 0 32260 NULL
+sony_register_touchpad_fndecl_32262_fns sony_register_touchpad fndecl 2 32262 NULL
-+venus_mkdir_fndecl_32276_fns venus_mkdir fndecl 4 32276 NULL
+qib_qsfp_dump_fndecl_32277_fns qib_qsfp_dump fndecl 0 32277 NULL
+find_num_cache_leaves_fndecl_32280_fns find_num_cache_leaves fndecl 0 32280 NULL
-+vol_cdev_read_fndecl_32283_fns vol_cdev_read fndecl 3 32283 NULL
++seq_open_net_fndecl_32283_fns seq_open_net fndecl 4 32283 NULL
+get_pipes_fndecl_32291_fns get_pipes fndecl 0 32291 NULL
+num_gpes_vardecl_sysfs_c_32294_fns num_gpes vardecl_sysfs.c 0 32294 NULL
-+il_dbgfs_clear_ucode_stats_write_fndecl_32299_fns il_dbgfs_clear_ucode_stats_write fndecl 3 32299 NULL
+alloc_urbs_fndecl_32307_fns alloc_urbs fndecl 0 32307 NULL
+snd_info_text_entry_write_fndecl_32315_fns snd_info_text_entry_write fndecl 3 32315 NULL
+_nfs42_proc_copy_fndecl_32323_fns _nfs42_proc_copy fndecl 2-7 32323 NULL
++s2255_vendor_req_fndecl_32337_fns s2255_vendor_req fndecl 6 32337 NULL
+fd_ioctl_fndecl_32343_fns fd_ioctl fndecl 3 32343 NULL
+fib_info_hash_alloc_fndecl_32352_fns fib_info_hash_alloc fndecl 1 32352 NULL
++max_q_vectors_ixgbe_adapter_32359_fns max_q_vectors ixgbe_adapter 0 32359 NULL
+snd_gus_dram_peek_fndecl_32373_fns snd_gus_dram_peek fndecl 4 32373 NULL
+snd_emu10k1_synth_copy_from_user_fndecl_32374_fns snd_emu10k1_synth_copy_from_user fndecl 5-3 32374 NULL
+transport_get_sectors_16_fndecl_32385_fns transport_get_sectors_16 fndecl 0 32385 NULL
-+create_queues_fndecl_32403_fns create_queues fndecl 2-3 32403 NULL
-+pt_buffer_setup_aux_fndecl_32418_fns pt_buffer_setup_aux fndecl 3 32418 NULL
++create_queues_fndecl_32403_fns create_queues fndecl 3-2 32403 NULL
++qib_skip_sge_fndecl_32432_fns qib_skip_sge fndecl 2 32432 NULL
+dvb_create_tsout_entity_fndecl_32460_fns dvb_create_tsout_entity fndecl 3 32460 NULL
+isr_irqs_read_fndecl_32462_fns isr_irqs_read fndecl 3 32462 NULL
++start_ordered_ops_fndecl_32475_fns start_ordered_ops fndecl 3 32475 NULL
+sigmadsp_write_i2c_fndecl_32482_fns sigmadsp_write_i2c fndecl 4 32482 NULL
-+iwl_dbgfs_frame_stats_read_fndecl_32488_fns iwl_dbgfs_frame_stats_read fndecl 3 32488 NULL
-+alloc_group_attrs_fndecl_32505_fns alloc_group_attrs fndecl 2 32505 NULL nohasharray
-+altera_swap_ir_fndecl_32505_fns altera_swap_ir fndecl 2 32505 &alloc_group_attrs_fndecl_32505_fns
++reply_nvif_notify_req_v0_32501_fns reply nvif_notify_req_v0 0 32501 NULL
++altera_swap_ir_fndecl_32505_fns altera_swap_ir fndecl 2 32505 NULL nohasharray
++alloc_group_attrs_fndecl_32505_fns alloc_group_attrs fndecl 2 32505 &altera_swap_ir_fndecl_32505_fns
+transport_get_sectors_12_fndecl_32508_fns transport_get_sectors_12 fndecl 0 32508 NULL
-+ctrl_out_fndecl_32539_fns ctrl_out fndecl 3-5 32539 NULL
++ctrl_out_fndecl_32539_fns ctrl_out fndecl 5-3 32539 NULL
+ev_next_dev_data_32542_fns ev_next dev_data 0 32542 NULL
+yurex_write_fndecl_32554_fns yurex_write fndecl 3 32554 NULL
+sys_prctl_fndecl_32557_fns sys_prctl fndecl 4 32557 NULL
+joydev_compat_ioctl_fndecl_32558_fns joydev_compat_ioctl fndecl 2 32558 NULL
-+bcd2000_midi_handle_input_fndecl_32572_fns bcd2000_midi_handle_input fndecl 3 32572 NULL
++gb_loopback_sync_transfer_fndecl_32561_fns gb_loopback_sync_transfer fndecl 2 32561 NULL
+tx_tx_exch_expiry_read_fndecl_32574_fns tx_tx_exch_expiry_read fndecl 3 32574 NULL
+msg_print_ext_header_fndecl_32580_fns msg_print_ext_header fndecl 0 32580 NULL
+mlx5_modify_nic_vport_vlans_fndecl_32595_fns mlx5_modify_nic_vport_vlans fndecl 3 32595 NULL
@@ -207422,10 +211816,9 @@ index 0000000..510c554
+metronomefb_write_fndecl_32612_fns metronomefb_write fndecl 3 32612 NULL
+wa_nep_queue_fndecl_32649_fns wa_nep_queue fndecl 2 32649 NULL
+dvb_ringbuffer_pkt_next_fndecl_32657_fns dvb_ringbuffer_pkt_next fndecl 0-2 32657 NULL
-+get_queue_depth_fndecl_32658_fns get_queue_depth fndecl 0 32658 NULL
+nrof_flowrings_brcmf_msgbuf_32666_fns nrof_flowrings brcmf_msgbuf 0 32666 NULL
+compressed_bio_size_fndecl_32676_fns compressed_bio_size fndecl 0-2 32676 NULL
-+ab3100_get_set_reg_fndecl_32681_fns ab3100_get_set_reg fndecl 3 32681 NULL
++radeon_drm_ioctl_fndecl_32696_fns radeon_drm_ioctl fndecl 2 32696 NULL
+write_file_ani_fndecl_32709_fns write_file_ani fndecl 3 32709 NULL
+sysfs_merge_group_fndecl_32710_fns sysfs_merge_group fndecl 0 32710 NULL
+layout_commit_fndecl_32717_fns layout_commit fndecl 3 32717 NULL
@@ -207434,222 +211827,194 @@ index 0000000..510c554
+read_file_tgt_stats_fndecl_32748_fns read_file_tgt_stats fndecl 3 32748 NULL
+adjust_priv_size_fndecl_32756_fns adjust_priv_size fndecl 0-1 32756 NULL
+cp2112_hid_get_fndecl_32758_fns cp2112_hid_get fndecl 4 32758 NULL
-+i2400m_rx_edata_fndecl_32764_fns i2400m_rx_edata fndecl 5 32764 NULL
+portcntrs_2_read_fndecl_32793_fns portcntrs_2_read fndecl 3 32793 NULL
+wilc_setup_multicast_filter_fndecl_32803_fns wilc_setup_multicast_filter fndecl 3 32803 NULL
+nvme_trans_log_temperature_fndecl_32822_fns nvme_trans_log_temperature fndecl 3 32822 NULL
++bt_alloc_fndecl_32827_fns bt_alloc fndecl 2 32827 NULL
+gather_array_fndecl_32850_fns gather_array fndecl 3 32850 NULL
+size_mem_cgroup_threshold_ary_32855_fns size mem_cgroup_threshold_ary 0 32855 NULL
+uvc_debugfs_stats_read_fndecl_32856_fns uvc_debugfs_stats_read fndecl 3 32856 NULL
-+dz_divisor_dn_zone_32877_fns dz_divisor dn_zone 0 32877 NULL nohasharray
-+dvb_ringbuffer_read_user_fndecl_32877_fns dvb_ringbuffer_read_user fndecl 3-0 32877 &dz_divisor_dn_zone_32877_fns
++dvb_ringbuffer_read_user_fndecl_32877_fns dvb_ringbuffer_read_user fndecl 3-0 32877 NULL nohasharray
++dz_divisor_dn_zone_32877_fns dz_divisor dn_zone 0 32877 &dvb_ringbuffer_read_user_fndecl_32877_fns
+btrfs_cow_block_fndecl_32885_fns btrfs_cow_block fndecl 0 32885 NULL nohasharray
+wilc_spi_write_fndecl_32885_fns wilc_spi_write fndecl 4 32885 &btrfs_cow_block_fndecl_32885_fns
++snoop_table_size_ib_mad_qp_info_32891_fns snoop_table_size ib_mad_qp_info 0 32891 NULL
+snd_gus_dram_read_fndecl_32893_fns snd_gus_dram_read fndecl 4 32893 NULL
++num_vfs_qlcnic_sriov_32913_fns num_vfs qlcnic_sriov 0 32913 NULL
+ipv6_getsockopt_sticky_fndecl_32916_fns ipv6_getsockopt_sticky fndecl 5 32916 NULL
-+sta_flags_read_fndecl_32917_fns sta_flags_read fndecl 3 32917 NULL
-+__add_action_fndecl_32937_fns __add_action fndecl 4 32937 NULL
+ttm_alloc_new_pages_fndecl_32971_fns ttm_alloc_new_pages fndecl 5 32971 NULL
+mtdchar_write_fndecl_33004_fns mtdchar_write fndecl 3 33004 NULL
+ion_ioctl_fndecl_33013_fns ion_ioctl fndecl 2 33013 NULL
+mlxsw_sp_port_ets_maxrate_set_fndecl_33018_fns mlxsw_sp_port_ets_maxrate_set fndecl 0 33018 NULL
+snd_rawmidi_read_fndecl_33026_fns snd_rawmidi_read fndecl 3 33026 NULL
+pipeline_pre_to_defrag_swi_read_fndecl_33042_fns pipeline_pre_to_defrag_swi_read fndecl 3 33042 NULL
-+ath10k_read_simulate_fw_crash_fndecl_33056_fns ath10k_read_simulate_fw_crash fndecl 3 33056 NULL
+dev_read_fndecl_33058_fns dev_read fndecl 3 33058 NULL
+iov_iter_copy_from_user_atomic_fndecl_33059_fns iov_iter_copy_from_user_atomic fndecl 4 33059 NULL
+iio_device_add_info_mask_type_fndecl_33062_fns iio_device_add_info_mask_type fndecl 0 33062 NULL
+wil_read_pmccfg_fndecl_33071_fns wil_read_pmccfg fndecl 3 33071 NULL
+ocfs2_control_read_fndecl_33094_fns ocfs2_control_read fndecl 3 33094 NULL
+write_gssp_fndecl_33095_fns write_gssp fndecl 3 33095 NULL
++length_rvt_sge_33107_fns length rvt_sge 0 33107 NULL
+fl_create_fndecl_33120_fns fl_create fndecl 5 33120 NULL
+__iommu_alloc_buffer_fndecl_33122_fns __iommu_alloc_buffer fndecl 2 33122 NULL
-+gnttab_map_fndecl_33124_fns gnttab_map fndecl 2 33124 NULL nohasharray
-+drm_atomic_helper_legacy_gamma_set_fndecl_33124_fns drm_atomic_helper_legacy_gamma_set fndecl 5 33124 &gnttab_map_fndecl_33124_fns
-+hvutil_transport_send_fndecl_33131_fns hvutil_transport_send fndecl 3 33131 NULL nohasharray
-+ib_uverbs_alloc_mw_fndecl_33131_fns ib_uverbs_alloc_mw fndecl 4-5 33131 &hvutil_transport_send_fndecl_33131_fns
++drm_atomic_helper_legacy_gamma_set_fndecl_33124_fns drm_atomic_helper_legacy_gamma_set fndecl 5 33124 NULL nohasharray
++gnttab_map_fndecl_33124_fns gnttab_map fndecl 2 33124 &drm_atomic_helper_legacy_gamma_set_fndecl_33124_fns
++ib_uverbs_alloc_mw_fndecl_33131_fns ib_uverbs_alloc_mw fndecl 4-5 33131 NULL
+store_msg_fndecl_33138_fns store_msg fndecl 3 33138 NULL
-+__get_vm_area_caller_fndecl_33139_fns __get_vm_area_caller fndecl 1 33139 NULL
++hostname_len_nlm_lookup_host_info_33141_fns hostname_len nlm_lookup_host_info 0 33141 NULL
+putused_user_fndecl_33152_fns putused_user fndecl 3 33152 NULL
++osd_req_list_partition_objects_fndecl_33155_fns osd_req_list_partition_objects fndecl 5 33155 NULL
++lbs_rdmac_write_fndecl_33156_fns lbs_rdmac_write fndecl 3 33156 NULL
+walk_pgd_range_fndecl_33169_fns walk_pgd_range fndecl 0 33169 NULL
+cx231xx_init_isoc_fndecl_33174_fns cx231xx_init_isoc fndecl 3 33174 NULL
+data_avail_vardecl_core_c_33198_fns data_avail vardecl_core.c 0 33198 NULL
-+num_lan_msix_i40e_pf_33223_fns num_lan_msix i40e_pf 0 33223 NULL
+ip_options_get_fndecl_33225_fns ip_options_get fndecl 4 33225 NULL
+vid_switchdev_notifier_fdb_info_33231_fns vid switchdev_notifier_fdb_info 0 33231 NULL
+alloc_apertures_fndecl_33250_fns alloc_apertures fndecl 1 33250 NULL
-+rs_sta_dbgfs_stats_table_read_fndecl_33262_fns rs_sta_dbgfs_stats_table_read fndecl 3 33262 NULL
+mem_size_ramoops_platform_data_33263_fns mem_size ramoops_platform_data 0 33263 NULL
-+cipso_v4_gentag_loc_fndecl_33292_fns cipso_v4_gentag_loc fndecl 0 33292 NULL
++drv_file_st_partstat_33277_fns drv_file st_partstat 0 33277 NULL
+ecryptfs_encrypt_and_encode_filename_fndecl_33297_fns ecryptfs_encrypt_and_encode_filename fndecl 5 33297 NULL
-+tracing_set_trace_write_fndecl_33307_fns tracing_set_trace_write fndecl 3 33307 NULL
+ima_show_htable_value_fndecl_33315_fns ima_show_htable_value fndecl 2 33315 NULL
-+_iwl_dbgfs_bf_params_write_fndecl_33318_fns _iwl_dbgfs_bf_params_write fndecl 3 33318 NULL
+acpi_gsb_i2c_read_bytes_fndecl_33322_fns acpi_gsb_i2c_read_bytes fndecl 4 33322 NULL
-+dump_packet_fndecl_33346_fns dump_packet fndecl 2 33346 NULL
+stk_prepare_sio_buffers_fndecl_33347_fns stk_prepare_sio_buffers fndecl 2 33347 NULL
+rx_hw_stuck_read_fndecl_33352_fns rx_hw_stuck_read fndecl 3 33352 NULL
-+udl_prime_create_fndecl_33364_fns udl_prime_create fndecl 2 33364 NULL nohasharray
-+scanlength_usbvision_frame_33364_fns scanlength usbvision_frame 0 33364 &udl_prime_create_fndecl_33364_fns
-+mlx5_core_sriov_enable_fndecl_33369_fns mlx5_core_sriov_enable fndecl 2 33369 NULL
+sys_io_getevents_fndecl_33381_fns sys_io_getevents fndecl 3 33381 NULL
+length_mac_configuration_hdr_33392_fns length mac_configuration_hdr 0 33392 NULL
+sys_poll_fndecl_33397_fns sys_poll fndecl 2 33397 NULL
+drbg_blocklen_fndecl_33412_fns drbg_blocklen fndecl 0 33412 NULL
+dma_fifo_alloc_fndecl_33415_fns dma_fifo_alloc fndecl 2-3-5 33415 NULL
++rsxx_cram_write_fndecl_33423_fns rsxx_cram_write fndecl 3 33423 NULL
+tt3650_ci_msg_fndecl_33424_fns tt3650_ci_msg fndecl 4 33424 NULL
+oprofilefs_ulong_from_user_fndecl_33456_fns oprofilefs_ulong_from_user fndecl 3 33456 NULL
+alloc_flex_gd_fndecl_33464_fns alloc_flex_gd fndecl 1 33464 NULL
-+ftdi_elan_write_fndecl_33486_fns ftdi_elan_write fndecl 3 33486 NULL
-+pstore_file_read_fndecl_33499_fns pstore_file_read fndecl 3 33499 NULL nohasharray
-+num_rx_descs_iser_conn_33499_fns num_rx_descs iser_conn 0 33499 &pstore_file_read_fndecl_33499_fns
++num_rx_descs_iser_conn_33499_fns num_rx_descs iser_conn 0 33499 NULL
+__asymmetric_key_hex_to_key_id_fndecl_33513_fns __asymmetric_key_hex_to_key_id fndecl 3 33513 NULL nohasharray
+error_rx_excessive_frame_len_read_fndecl_33513_fns error_rx_excessive_frame_len_read fndecl 3 33513 &__asymmetric_key_hex_to_key_id_fndecl_33513_fns
+usblp_read_fndecl_33517_fns usblp_read fndecl 3 33517 NULL
-+write_file_regval_fndecl_33522_fns write_file_regval fndecl 3 33522 NULL
-+iwl_dbgfs_tx_pwr_lmt_read_fndecl_33527_fns iwl_dbgfs_tx_pwr_lmt_read fndecl 3 33527 NULL
+evdev_set_mask_fndecl_33528_fns evdev_set_mask fndecl 4 33528 NULL
+__mxt_write_reg_fndecl_33533_fns __mxt_write_reg fndecl 3 33533 NULL
+si476x_radio_read_agc_blob_fndecl_33538_fns si476x_radio_read_agc_blob fndecl 3 33538 NULL
+uinput_abs_setup_fndecl_33551_fns uinput_abs_setup fndecl 3 33551 NULL
-+kvm_vcpu_read_guest_fndecl_33552_fns kvm_vcpu_read_guest fndecl 4-2 33552 NULL
++kvm_vcpu_read_guest_fndecl_33552_fns kvm_vcpu_read_guest fndecl 2-4 33552 NULL
+snd_rawmidi_kernel_write1_fndecl_33564_fns snd_rawmidi_kernel_write1 fndecl 4 33564 NULL
+batadv_tt_update_changes_fndecl_33580_fns batadv_tt_update_changes fndecl 3 33580 NULL
-+hci_mgmt_cmd_fndecl_33591_fns hci_mgmt_cmd fndecl 4 33591 NULL
+strcspn_fndecl_33602_fns strcspn fndecl 0 33602 NULL
+__kfifo_out_fndecl_33612_fns __kfifo_out fndecl 3-0 33612 NULL
-+hfi1_read_portcntrs_fndecl_33617_fns hfi1_read_portcntrs fndecl 0 33617 NULL
-+scif_setup_qp_accept_fndecl_33630_fns scif_setup_qp_accept fndecl 4 33630 NULL nohasharray
-+nf_getsockopt_fndecl_33630_fns nf_getsockopt fndecl 0 33630 &scif_setup_qp_accept_fndecl_33630_fns
++nf_getsockopt_fndecl_33630_fns nf_getsockopt fndecl 0 33630 NULL nohasharray
++scif_setup_qp_accept_fndecl_33630_fns scif_setup_qp_accept fndecl 4 33630 &nf_getsockopt_fndecl_33630_fns
+memblock_size_vxge_hw_mempool_33647_fns memblock_size vxge_hw_mempool 0 33647 NULL
+rxe_mem_init_fast_fndecl_33682_fns rxe_mem_init_fast fndecl 3 33682 NULL
+diva_get_driver_info_fndecl_33684_fns diva_get_driver_info fndecl 0 33684 NULL
+vlsi_alloc_ring_fndecl_33720_fns vlsi_alloc_ring fndecl 3-4 33720 NULL
+stub_chips_nr_vardecl_i2c_stub_c_33739_fns stub_chips_nr vardecl_i2c-stub.c 0 33739 NULL
-+xfs_buf_read_map_fndecl_33742_fns xfs_buf_read_map fndecl 3 33742 NULL
++xfs_buf_read_map_fndecl_33742_fns xfs_buf_read_map fndecl 3 33742 NULL nohasharray
++do_pwritev_fndecl_33742_fns do_pwritev fndecl 3 33742 &xfs_buf_read_map_fndecl_33742_fns
+cx2341x_ctrl_new_std_fndecl_33782_fns cx2341x_ctrl_new_std fndecl 4 33782 NULL
-+pcmcia_replace_cis_fndecl_33785_fns pcmcia_replace_cis fndecl 3 33785 NULL nohasharray
-+do_jit_fndecl_33785_fns do_jit fndecl 0 33785 &pcmcia_replace_cis_fndecl_33785_fns
++pcmcia_replace_cis_fndecl_33785_fns pcmcia_replace_cis fndecl 3 33785 NULL
+sca3000_read_data_fndecl_33787_fns sca3000_read_data fndecl 4 33787 NULL
+gicv2m_init_one_fndecl_33791_fns gicv2m_init_one fndecl 3 33791 NULL
-+edt_ft5x06_register_read_fndecl_33803_fns edt_ft5x06_register_read fndecl 0 33803 NULL
++snd_find_free_minor_fndecl_33820_fns snd_find_free_minor fndecl 0 33820 NULL
+dn_ide_drive_s_33823_fns dn ide_drive_s 0 33823 NULL
+add_partition_fndecl_33847_fns add_partition fndecl 2 33847 NULL
+rx_buf_total_size__mgslpc_info_33856_fns rx_buf_total_size _mgslpc_info 0 33856 NULL
+orangefs_fsync_fndecl_33879_fns orangefs_fsync fndecl 2-3 33879 NULL
-+len_gsm_control_33882_fns len gsm_control 0 33882 NULL
-+pktgen_if_write_fndecl_33887_fns pktgen_if_write fndecl 3 33887 NULL nohasharray
-+reiserfs_xattr_get_fndecl_33887_fns reiserfs_xattr_get fndecl 0 33887 &pktgen_if_write_fndecl_33887_fns
-+il_dbgfs_tx_queue_read_fndecl_33895_fns il_dbgfs_tx_queue_read fndecl 3 33895 NULL
++wdm_create_fndecl_33882_fns wdm_create fndecl 3 33882 NULL
++pktgen_if_write_fndecl_33887_fns pktgen_if_write fndecl 3 33887 NULL
+xfs_bmbt_maxrecs_fndecl_33906_fns xfs_bmbt_maxrecs fndecl 2 33906 NULL
-+lpfc_idiag_queinfo_read_fndecl_33917_fns lpfc_idiag_queinfo_read fndecl 3 33917 NULL
+vfio_pci_igd_rw_fndecl_33918_fns vfio_pci_igd_rw fndecl 3 33918 NULL
+genl_allocate_reserve_groups_fndecl_33930_fns genl_allocate_reserve_groups fndecl 1 33930 NULL
-+iwl_dbgfs_plcp_delta_write_fndecl_33937_fns iwl_dbgfs_plcp_delta_write fndecl 3 33937 NULL
++max_channels_snd_midi_channel_set_33931_fns max_channels snd_midi_channel_set 0 33931 NULL
+get_info_fndecl_33938_fns get_info fndecl 3 33938 NULL
-+mei_dbgfs_write_allow_fa_fndecl_33943_fns mei_dbgfs_write_allow_fa fndecl 3 33943 NULL
+pm8001_store_update_fw_fndecl_33975_fns pm8001_store_update_fw fndecl 4 33975 NULL
-+max_indirect_segments_blkfront_info_33976_fns max_indirect_segments blkfront_info 0 33976 NULL
-+cwarn_cm4000_dev_33978_fns cwarn cm4000_dev 0 33978 NULL
++mwifiex_create_custom_regdomain_fndecl_33978_fns mwifiex_create_custom_regdomain fndecl 3 33978 NULL nohasharray
++cwarn_cm4000_dev_33978_fns cwarn cm4000_dev 0 33978 &mwifiex_create_custom_regdomain_fndecl_33978_fns
+usbat_bulk_write_fndecl_33983_fns usbat_bulk_write fndecl 4 33983 NULL
+spi_data_write_fndecl_33987_fns spi_data_write fndecl 3 33987 NULL
+ethtool_copy_validate_indir_fndecl_33994_fns ethtool_copy_validate_indir fndecl 4 33994 NULL
+count_xfs_attr_sf_hdr_33996_fns count xfs_attr_sf_hdr 0 33996 NULL
+of_n_size_cells_fndecl_34009_fns of_n_size_cells fndecl 0 34009 NULL
++len_ihex_binrec_34012_fns len ihex_binrec 0 34012 NULL
+periodic_size_ehci_hcd_34013_fns periodic_size ehci_hcd 0 34013 NULL
-+wqe_shift_mlx5_srq_attr_34020_fns wqe_shift mlx5_srq_attr 0 34020 NULL nohasharray
-+uwb_rc_neh_grok_event_fndecl_34020_fns uwb_rc_neh_grok_event fndecl 3 34020 &wqe_shift_mlx5_srq_attr_34020_fns
++uwb_rc_neh_grok_event_fndecl_34020_fns uwb_rc_neh_grok_event fndecl 3 34020 NULL
+__kvm_write_guest_page_fndecl_34021_fns __kvm_write_guest_page fndecl 5-2 34021 NULL
+wil_addba_tx_request_fndecl_34039_fns wil_addba_tx_request fndecl 3 34039 NULL
+conf_read_fndecl_34041_fns conf_read fndecl 3 34041 NULL
-+lov_get_stripecnt_fndecl_34066_fns lov_get_stripecnt fndecl 0-3 34066 NULL
-+gsm_control_modem_fndecl_34068_fns gsm_control_modem fndecl 3 34068 NULL
-+__get_vm_area_node_fndecl_34074_fns __get_vm_area_node fndecl 1 34074 NULL
-+__memblock_alloc_base_fndecl_34092_fns __memblock_alloc_base fndecl 1 34092 NULL
++ide_do_setfeature_fndecl_34050_fns ide_do_setfeature fndecl 3 34050 NULL
++lov_get_stripecnt_fndecl_34066_fns lov_get_stripecnt fndecl 3 34066 NULL
+vme_user_read_fndecl_34105_fns vme_user_read fndecl 3 34105 NULL
+vb2_dvb_register_adapter_fndecl_34122_fns vb2_dvb_register_adapter fndecl 0 34122 NULL
+do_command_fndecl_34128_fns do_command fndecl 0 34128 NULL
+switchdev_port_fdb_add_fndecl_34145_fns switchdev_port_fdb_add fndecl 5 34145 NULL
+arm_iommu_alloc_attrs_fndecl_34147_fns arm_iommu_alloc_attrs fndecl 2 34147 NULL
+substream_count_snd_pcm_str_34149_fns substream_count snd_pcm_str 0 34149 NULL
-+iwl_dbgfs_plcp_delta_read_fndecl_34172_fns iwl_dbgfs_plcp_delta_read fndecl 3 34172 NULL
+si476x_radio_read_rds_blckcnt_blob_fndecl_34192_fns si476x_radio_read_rds_blckcnt_blob fndecl 3 34192 NULL
-+usbip_dump_buffer_fndecl_34210_fns usbip_dump_buffer fndecl 2 34210 NULL
+xen_evtchn_max_channels_fndecl_34213_fns xen_evtchn_max_channels fndecl 0 34213 NULL
+__vxge_hw_channel_allocate_fndecl_34229_fns __vxge_hw_channel_allocate fndecl 3 34229 NULL
++m_len_s_mbuf_34233_fns m_len s_mbuf 0 34233 NULL
+max_devs_supported_ipr_ioa_cfg_34240_fns max_devs_supported ipr_ioa_cfg 0 34240 NULL
+tx_tx_done_int_template_read_fndecl_34244_fns tx_tx_done_int_template_read fndecl 3 34244 NULL
+vb2_core_dqbuf_fndecl_34262_fns vb2_core_dqbuf fndecl 0 34262 NULL
++tty_port_register_device_fndecl_34276_fns tty_port_register_device fndecl 3 34276 NULL
+vb2_core_queue_init_fndecl_34278_fns vb2_core_queue_init fndecl 0 34278 NULL
-+ea_get_fndecl_34289_fns ea_get fndecl 3 34289 NULL
-+quirk_strict_duplicate_filter_read_fndecl_34330_fns quirk_strict_duplicate_filter_read fndecl 3 34330 NULL
+write_file_frameerrors_fndecl_34370_fns write_file_frameerrors fndecl 3 34370 NULL
+sel_read_handle_status_fndecl_34392_fns sel_read_handle_status fndecl 3 34392 NULL
+rawv6_setsockopt_fndecl_34422_fns rawv6_setsockopt fndecl 5 34422 NULL
-+ath9k_dump_legacy_btcoex_fndecl_34449_fns ath9k_dump_legacy_btcoex fndecl 0 34449 NULL
+offsets_size_binder_transaction_data_34461_fns offsets_size binder_transaction_data 0 34461 NULL
+fd_copyin_fndecl_34468_fns fd_copyin fndecl 3 34468 NULL
+num_rx_queues_net_device_34480_fns num_rx_queues net_device 0 34480 NULL
++param_count_acpi_device_info_34481_fns param_count acpi_device_info 0 34481 NULL
+acpi_ex_get_serial_access_length_fndecl_34496_fns acpi_ex_get_serial_access_length fndecl 0-2 34496 NULL
-+il4965_ucode_general_stats_read_fndecl_34502_fns il4965_ucode_general_stats_read fndecl 3 34502 NULL
+count_res_proc_context_34514_fns count res_proc_context 0 34514 NULL
-+t_bch_control_34516_fns t bch_control 0 34516 NULL
++__add_keyed_refs_fndecl_34517_fns __add_keyed_refs fndecl 3 34517 NULL
+ogm_buff_len_batadv_hard_iface_bat_iv_34532_fns ogm_buff_len batadv_hard_iface_bat_iv 0 34532 NULL
+speakup_file_write_fndecl_34533_fns speakup_file_write fndecl 3 34533 NULL
+dvb_aplay_fndecl_34555_fns dvb_aplay fndecl 3 34555 NULL
-+btmrvl_hscfgcmd_read_fndecl_34556_fns btmrvl_hscfgcmd_read fndecl 3 34556 NULL
-+target_alloc_sgl_fndecl_34566_fns target_alloc_sgl fndecl 3 34566 NULL
+rx_ring_num_config_param_34571_fns rx_ring_num config_param 0 34571 NULL
+sb16_copy_from_user_fndecl_34575_fns sb16_copy_from_user fndecl 10-7-6 34575 NULL
++hcd_alloc_coherent_fndecl_34597_fns hcd_alloc_coherent fndecl 5 34597 NULL
++sys_sync_file_range_fndecl_34604_fns sys_sync_file_range fndecl 3 34604 NULL
+ip_hdrlen_fndecl_34618_fns ip_hdrlen fndecl 0 34618 NULL
+pm_qos_power_read_fndecl_34624_fns pm_qos_power_read fndecl 3 34624 NULL
-+hsc_write_fndecl_34640_fns hsc_write fndecl 3 34640 NULL
+type_tw686x_dev_34645_fns type tw686x_dev 0 34645 NULL
+ramdisk_store_fndecl_34654_fns ramdisk_store fndecl 4 34654 NULL
+uwb_est_used_vardecl_est_c_34662_fns uwb_est_used vardecl_est.c 0 34662 NULL
++init_evtlog_size_iwl_fw_34663_fns init_evtlog_size iwl_fw 0 34663 NULL
+acpi_copy_property_array_string_fndecl_34680_fns acpi_copy_property_array_string fndecl 0 34680 NULL
+snd_pcm_hw_param_value_min_fndecl_34686_fns snd_pcm_hw_param_value_min fndecl 0 34686 NULL
+slip_maxdev_vardecl_slip_c_34688_fns slip_maxdev vardecl_slip.c 0 34688 NULL
-+radeon_ring_init_fndecl_34693_fns radeon_ring_init fndecl 3 34693 NULL
-+simple_read_from_buffer_fndecl_34694_fns simple_read_from_buffer fndecl 2-5-0 34694 NULL
++simple_read_from_buffer_fndecl_34694_fns simple_read_from_buffer fndecl 2-5 34694 NULL
+ceph_get_direct_page_vector_fndecl_34695_fns ceph_get_direct_page_vector fndecl 2 34695 NULL
+sel_read_policy_fndecl_34712_fns sel_read_policy fndecl 3 34712 NULL
-+len_pagemapread_34714_fns len pagemapread 0 34714 NULL
+kvm_write_guest_virt_system_fndecl_34715_fns kvm_write_guest_virt_system fndecl 4-2 34715 NULL
++eqc_entry_sz_mlx4_dev_cap_34730_fns eqc_entry_sz mlx4_dev_cap 0 34730 NULL
+blockshift_sddr09_card_info_34748_fns blockshift sddr09_card_info 0 34748 NULL
++hvt_op_write_fndecl_34774_fns hvt_op_write fndecl 3 34774 NULL
+num_q_vectors_ixgbe_adapter_34808_fns num_q_vectors ixgbe_adapter 0 34808 NULL
++pcm3168a_set_dai_sysclk_fndecl_34810_fns pcm3168a_set_dai_sysclk fndecl 3 34810 NULL
++lbs_lowsnr_write_fndecl_34822_fns lbs_lowsnr_write fndecl 3 34822 NULL
+unix_dgram_connect_fndecl_34836_fns unix_dgram_connect fndecl 3 34836 NULL
+setsockopt_fndecl_34840_fns setsockopt fndecl 5 34840 NULL
++nfsd_vfs_write_fndecl_34850_fns nfsd_vfs_write fndecl 6 34850 NULL
+fw_iso_buffer_init_fndecl_34853_fns fw_iso_buffer_init fndecl 3 34853 NULL
-+flags_write_fndecl_34858_fns flags_write fndecl 3 34858 NULL
+gk20a_instobj_ctor_iommu_fndecl_34861_fns gk20a_instobj_ctor_iommu fndecl 2 34861 NULL
+pset_prop_read_string_array_fndecl_34862_fns pset_prop_read_string_array fndecl 0 34862 NULL
-+s_map_size_adfs_sb_info_34863_fns s_map_size adfs_sb_info 0 34863 NULL
+sddr09_writeX_fndecl_34870_fns sddr09_writeX fndecl 7 34870 NULL
-+port_fops_write_fndecl_34928_fns port_fops_write fndecl 3 34928 NULL
+evm_read_key_fndecl_34945_fns evm_read_key fndecl 3 34945 NULL
+bio_kmalloc_fndecl_34947_fns bio_kmalloc fndecl 2 34947 NULL
-+reiserfs_get_block_create_0_fndecl_34954_fns reiserfs_get_block_create_0 fndecl 2 34954 NULL
+fs_path_add_path_fndecl_34955_fns fs_path_add_path fndecl 0 34955 NULL
+dns_resolver_read_fndecl_34961_fns dns_resolver_read fndecl 3 34961 NULL
+n_it_fw_ohci_34963_fns n_it fw_ohci 0 34963 NULL
-+simple_alloc_urb_fndecl_34966_fns simple_alloc_urb fndecl 3 34966 NULL
+bus_add_device_fndecl_34970_fns bus_add_device fndecl 0 34970 NULL
+rfkill_fop_read_fndecl_34980_fns rfkill_fop_read fndecl 3 34980 NULL
+kfd_gtt_sa_init_fndecl_34996_fns kfd_gtt_sa_init fndecl 3-2 34996 NULL
+error_elp_while_tx_read_fndecl_35002_fns error_elp_while_tx_read fndecl 3 35002 NULL
++arpc_alloc_fndecl_35008_fns arpc_alloc fndecl 2 35008 NULL
+ocfs2_control_write_fndecl_35010_fns ocfs2_control_write fndecl 3 35010 NULL
+kzalloc_fndecl_35015_fns kzalloc fndecl 1 35015 NULL
-+wep_iv_read_fndecl_35019_fns wep_iv_read fndecl 3 35019 NULL
-+lpfc_idiag_pcicfg_write_fndecl_35022_fns lpfc_idiag_pcicfg_write fndecl 3 35022 NULL
-+ring_size_radeon_ring_35063_fns ring_size radeon_ring 0 35063 NULL
-+adis16480_show_firmware_date_fndecl_35065_fns adis16480_show_firmware_date fndecl 3 35065 NULL
+set_video_mode_Timon_fndecl_35074_fns set_video_mode_Timon fndecl 4 35074 NULL
+number_scales_vardecl_powernow_k7_c_35080_fns number_scales vardecl_powernow-k7.c 0 35080 NULL
+sys_kexec_file_load_fndecl_35083_fns sys_kexec_file_load fndecl 3 35083 NULL nohasharray
+dlm_alloc_pagevec_fndecl_35083_fns dlm_alloc_pagevec fndecl 1 35083 &sys_kexec_file_load_fndecl_35083_fns
-+reclaim_pages_fndecl_35086_fns reclaim_pages fndecl 3 35086 NULL
-+sizeof_long_fndecl_35095_fns sizeof_long fndecl 0 35095 NULL
+vlan_id_net_bridge_fdb_entry_35107_fns vlan_id net_bridge_fdb_entry 0 35107 NULL
+path_setxattr_fndecl_35127_fns path_setxattr fndecl 4 35127 NULL
+__get_free_pages_fndecl_35139_fns __get_free_pages fndecl 0 35139 NULL
@@ -207660,92 +212025,83 @@ index 0000000..510c554
+br_fdb_fillbuf_fndecl_35152_fns br_fdb_fillbuf fndecl 0 35152 NULL
+__alloc_dev_table_fndecl_35156_fns __alloc_dev_table fndecl 2 35156 NULL
+snd_pcm_oss_read2_fndecl_35168_fns snd_pcm_oss_read2 fndecl 3 35168 NULL
-+iwl_dbgfs_power_save_status_read_fndecl_35179_fns iwl_dbgfs_power_save_status_read fndecl 3 35179 NULL
-+ah_alloc_tmp_fndecl_35193_fns ah_alloc_tmp fndecl 2-3 35193 NULL
++bytes_consumed_rchan_buf_35193_fns bytes_consumed rchan_buf 0 35193 NULL nohasharray
++ah_alloc_tmp_fndecl_35193_fns ah_alloc_tmp fndecl 2-3 35193 &bytes_consumed_rchan_buf_35193_fns
+do_dccp_setsockopt_fndecl_35194_fns do_dccp_setsockopt fndecl 5 35194 NULL nohasharray
+intel_sdvo_write_cmd_fndecl_35194_fns intel_sdvo_write_cmd fndecl 4 35194 &do_dccp_setsockopt_fndecl_35194_fns
-+copy_gadget_strings_fndecl_35202_fns copy_gadget_strings fndecl 2-3 35202 NULL
++copy_gadget_strings_fndecl_35202_fns copy_gadget_strings fndecl 3-2 35202 NULL
++snd_pcm_add_chmap_ctls_fndecl_35223_fns snd_pcm_add_chmap_ctls fndecl 4 35223 NULL
+nfs42_proc_llseek_fndecl_35267_fns nfs42_proc_llseek fndecl 2 35267 NULL
-+p54_parse_default_country_fndecl_35309_fns p54_parse_default_country fndecl 3 35309 NULL
+vmci_transport_dgram_enqueue_fndecl_35310_fns vmci_transport_dgram_enqueue fndecl 4 35310 NULL nohasharray
+walk_pud_range_fndecl_35310_fns walk_pud_range fndecl 0 35310 &vmci_transport_dgram_enqueue_fndecl_35310_fns
+btrfs_ordered_sum_size_fndecl_35326_fns btrfs_ordered_sum_size fndecl 0-2 35326 NULL
++num_reg_mic_smpt_hw_info_35353_fns num_reg mic_smpt_hw_info 0 35353 NULL
+efw_transaction_fndecl_35359_fns efw_transaction fndecl 5-7 35359 NULL
+response_length_ib_uverbs_ex_create_wq_resp_35363_fns response_length ib_uverbs_ex_create_wq_resp 0 35363 NULL
+hx8357_spi_write_array_fndecl_35364_fns hx8357_spi_write_array fndecl 3 35364 NULL
+apei_exec_run_fndecl_35376_fns apei_exec_run fndecl 0 35376 NULL
-+drm_dp_mst_topology_mgr_init_fndecl_35377_fns drm_dp_mst_topology_mgr_init fndecl 5-4 35377 NULL
++drm_dp_mst_topology_mgr_init_fndecl_35377_fns drm_dp_mst_topology_mgr_init fndecl 5 35377 NULL
+ath9k_hw_read_array_fndecl_35386_fns ath9k_hw_read_array fndecl 3 35386 NULL
+use_sg_st_buffer_35407_fns use_sg st_buffer 0 35407 NULL
+rxpipe_beacon_buffer_thres_host_int_trig_rx_data_read_fndecl_35409_fns rxpipe_beacon_buffer_thres_host_int_trig_rx_data_read fndecl 3 35409 NULL
++rdma_rw_ctx_init_fndecl_35410_fns rdma_rw_ctx_init fndecl 7 35410 NULL
++btrfs_fdatawrite_range_fndecl_35427_fns btrfs_fdatawrite_range fndecl 3 35427 NULL
+major_gendisk_35443_fns major gendisk 0 35443 NULL
-+ieee80211_if_read_uapsd_queues_fndecl_35453_fns ieee80211_if_read_uapsd_queues fndecl 3 35453 NULL
+sel_write_relabel_fndecl_35464_fns sel_write_relabel fndecl 3 35464 NULL
-+beiscsi_mccq_compl_wait_fndecl_35475_fns beiscsi_mccq_compl_wait fndecl 0 35475 NULL
++kmem_realloc_fndecl_35475_fns kmem_realloc fndecl 2 35475 NULL
+qxl_alloc_client_monitors_config_fndecl_35491_fns qxl_alloc_client_monitors_config fndecl 2 35491 NULL nohasharray
+ptlrpcd_partner_group_size_vardecl_ptlrpcd_c_35491_fns ptlrpcd_partner_group_size vardecl_ptlrpcd.c 0 35491 &qxl_alloc_client_monitors_config_fndecl_35491_fns
+sched_feat_write_fndecl_35505_fns sched_feat_write fndecl 3 35505 NULL
+spi_res_alloc_fndecl_35507_fns spi_res_alloc fndecl 3 35507 NULL
-+cnt_usnic_vnic_res_desc_35511_fns cnt usnic_vnic_res_desc 0 35511 NULL
-+__kfifo_dma_out_prepare_r_fndecl_35512_fns __kfifo_dma_out_prepare_r fndecl 4-5 35512 NULL
+dlci_change_mtu_fndecl_35513_fns dlci_change_mtu fndecl 2 35513 NULL
-+ht40allow_map_read_fndecl_35514_fns ht40allow_map_read fndecl 3 35514 NULL
+do_raw_setsockopt_fndecl_35516_fns do_raw_setsockopt fndecl 5-0 35516 NULL
+ssp_send_instruction_fndecl_35549_fns ssp_send_instruction fndecl 5 35549 NULL
+rx_streaming_interval_read_fndecl_35560_fns rx_streaming_interval_read fndecl 3 35560 NULL
++lbs_failcount_write_fndecl_35583_fns lbs_failcount_write fndecl 3 35583 NULL
++nfsd_write_fndecl_35594_fns nfsd_write fndecl 6 35594 NULL
+copy_ctl_value_to_user_fndecl_35608_fns copy_ctl_value_to_user fndecl 5 35608 NULL
+flexcop_device_kmalloc_fndecl_35610_fns flexcop_device_kmalloc fndecl 1 35610 NULL
-+maxcontacts_mt_device_35613_fns maxcontacts mt_device 0 35613 NULL
++sqp_demux_mlx4_caps_35613_fns sqp_demux mlx4_caps 0 35613 NULL nohasharray
++maxcontacts_mt_device_35613_fns maxcontacts mt_device 0 35613 &sqp_demux_mlx4_caps_35613_fns
++iova_rvt_mregion_35617_fns iova rvt_mregion 0 35617 NULL
+write_rio_fndecl_35622_fns write_rio fndecl 3 35622 NULL
+cciss_add_gendisk_fndecl_35636_fns cciss_add_gendisk fndecl 0 35636 NULL
+broadsheet_spiflash_rewrite_sector_fndecl_35651_fns broadsheet_spiflash_rewrite_sector fndecl 2 35651 NULL
+printer_read_fndecl_35664_fns printer_read fndecl 3 35664 NULL
+ufx_ops_write_fndecl_35667_fns ufx_ops_write fndecl 3 35667 NULL
++persistent_ram_write_user_fndecl_35688_fns persistent_ram_write_user fndecl 3 35688 NULL
+wil_pmc_alloc_fndecl_35702_fns wil_pmc_alloc fndecl 2 35702 NULL
-+bnx2x_change_mtu_fndecl_35710_fns bnx2x_change_mtu fndecl 2 35710 NULL
-+len_igb_tx_buffer_35715_fns len igb_tx_buffer 0 35715 NULL
-+mxms_structlen_fndecl_35720_fns mxms_structlen fndecl 0 35720 NULL
++remote_nentries_xpc_channel_35714_fns remote_nentries xpc_channel 0 35714 NULL
++add_port_fndecl_35726_fns add_port fndecl 2 35726 NULL
+size_irq_routing_options_35727_fns size irq_routing_options 0 35727 NULL
-+iscsi_pool_init_fndecl_35730_fns iscsi_pool_init fndecl 2-4 35730 NULL nohasharray
-+kobject_set_name_vargs_fndecl_35730_fns kobject_set_name_vargs fndecl 0 35730 &iscsi_pool_init_fndecl_35730_fns
-+alauda_write_data_fndecl_35748_fns alauda_write_data fndecl 3 35748 NULL
-+ath9k_dump_btcoex_fndecl_35766_fns ath9k_dump_btcoex fndecl 0 35766 NULL
++kobject_set_name_vargs_fndecl_35730_fns kobject_set_name_vargs fndecl 0 35730 NULL nohasharray
++iscsi_pool_init_fndecl_35730_fns iscsi_pool_init fndecl 2-4 35730 &kobject_set_name_vargs_fndecl_35730_fns
++c4_add_card_fndecl_35755_fns c4_add_card fndecl 3 35755 NULL
+used_tty_buffer_35815_fns used tty_buffer 0 35815 NULL
+paging32_get_level1_sp_gpa_fndecl_35837_fns paging32_get_level1_sp_gpa fndecl 0 35837 NULL
+size_mvneta_tx_queue_35842_fns size mvneta_tx_queue 0 35842 NULL
+start_vga_cam_fndecl_35860_fns start_vga_cam fndecl 0 35860 NULL
-+btrfs_set_stack_chunk_num_stripes_fndecl_35911_fns btrfs_set_stack_chunk_num_stripes fndecl 2 35911 NULL
+cifs_utf16_bytes_fndecl_35914_fns cifs_utf16_bytes fndecl 0 35914 NULL
++max_packet_size_out_snd_line6_pcm_35915_fns max_packet_size_out snd_line6_pcm 0 35915 NULL
+packet_count_efx_loopback_state_35918_fns packet_count efx_loopback_state 0 35918 NULL
+sigma_fw_load_control_fndecl_35922_fns sigma_fw_load_control fndecl 3 35922 NULL
-+ath10k_read_btcoex_fndecl_35925_fns ath10k_read_btcoex fndecl 3 35925 NULL
+snd_pcm_new_stream_fndecl_35934_fns snd_pcm_new_stream fndecl 3 35934 NULL
+wMaxPacketSize_wdm_device_35940_fns wMaxPacketSize wdm_device 0 35940 NULL
+___alloc_bootmem_nopanic_fndecl_35945_fns ___alloc_bootmem_nopanic fndecl 1 35945 NULL nohasharray
+wil_write_file_txmgmt_fndecl_35945_fns wil_write_file_txmgmt fndecl 3 35945 &___alloc_bootmem_nopanic_fndecl_35945_fns
-+snoop_urb_fndecl_35965_fns snoop_urb fndecl 8 35965 NULL
+buf_size_si470x_device_35966_fns buf_size si470x_device 0 35966 NULL
+ccid_getsockopt_builtin_ccids_fndecl_35985_fns ccid_getsockopt_builtin_ccids fndecl 2 35985 NULL
-+mcast_list_len_bnx2x_mcast_ramrod_params_36001_fns mcast_list_len bnx2x_mcast_ramrod_params 0 36001 NULL
+v4l2_event_subscribe_fndecl_36004_fns v4l2_event_subscribe fndecl 3 36004 NULL
-+igb_alloc_q_vector_fndecl_36009_fns igb_alloc_q_vector fndecl 4-6 36009 NULL nohasharray
-+bdev_logical_block_size_fndecl_36009_fns bdev_logical_block_size fndecl 0 36009 &igb_alloc_q_vector_fndecl_36009_fns nohasharray
-+max_rx_kingsun_cb_36009_fns max_rx kingsun_cb 0 36009 &bdev_logical_block_size_fndecl_36009_fns
++igb_alloc_q_vector_fndecl_36009_fns igb_alloc_q_vector fndecl 6-4 36009 NULL nohasharray
++bdev_logical_block_size_fndecl_36009_fns bdev_logical_block_size fndecl 0 36009 &igb_alloc_q_vector_fndecl_36009_fns
+num_of_memcpy_chans_stedma40_platform_data_36011_fns num_of_memcpy_chans stedma40_platform_data 0 36011 NULL
+n_sg_vscsibk_pend_36028_fns n_sg vscsibk_pend 0 36028 NULL
+count_sgentry64_36033_fns count sgentry64 0 36033 NULL
-+thread_notes_elf_note_info_36040_fns thread_notes elf_note_info 0 36040 NULL
-+lpfc_idiag_queacc_read_qe_fndecl_36072_fns lpfc_idiag_queacc_read_qe fndecl 0-2 36072 NULL
-+nfs4_xattr_get_nfs4_acl_fndecl_36079_fns nfs4_xattr_get_nfs4_acl fndecl 6 36079 NULL
+wdm_write_fndecl_36084_fns wdm_write fndecl 3 36084 NULL
-+avc_recv_fndecl_36099_fns avc_recv fndecl 3 36099 NULL
+xfs_trans_read_buf_map_fndecl_36121_fns xfs_trans_read_buf_map fndecl 5 36121 NULL
-+__i2400m_bm_ack_verify_fndecl_36139_fns __i2400m_bm_ack_verify fndecl 0-4 36139 NULL
-+gsm_control_reply_fndecl_36166_fns gsm_control_reply fndecl 4 36166 NULL
-+qd2offset_fndecl_36177_fns qd2offset fndecl 0 36177 NULL
+sock_setbindtodevice_fndecl_36202_fns sock_setbindtodevice fndecl 3 36202 NULL
-+qsfp1_debugfs_write_fndecl_36216_fns qsfp1_debugfs_write fndecl 3 36216 NULL
-+page_size_spi_eeprom_36227_fns page_size spi_eeprom 0 36227 NULL
++MaxDevHandle_mpt3sas_facts_36227_fns MaxDevHandle mpt3sas_facts 0 36227 NULL
++data_queues_rt2x00_dev_36241_fns data_queues rt2x00_dev 0 36241 NULL
+vhost_kvzalloc_fndecl_36242_fns vhost_kvzalloc fndecl 1 36242 NULL
+histogram_alloc_size_dm_stat_36247_fns histogram_alloc_size dm_stat 0 36247 NULL
+isr_cmd_cmplt_read_fndecl_36268_fns isr_cmd_cmplt_read fndecl 3 36268 NULL
@@ -207755,50 +212111,49 @@ index 0000000..510c554
+ssl_next_nilfs_snapshot_list_36302_fns ssl_next nilfs_snapshot_list 0 36302 NULL
+paging64_prefetch_gpte_fndecl_36303_fns paging64_prefetch_gpte fndecl 4 36303 NULL
+tegra_fb_alloc_fndecl_36306_fns tegra_fb_alloc fndecl 4 36306 NULL
-+mwifiex_info_read_fndecl_36308_fns mwifiex_info_read fndecl 3 36308 NULL
+move_buffer_data_fndecl_36318_fns move_buffer_data fndecl 2 36318 NULL
+apei_exec_run_optional_fndecl_36319_fns apei_exec_run_optional fndecl 0 36319 NULL
-+ima_write_template_field_data_fndecl_36336_fns ima_write_template_field_data fndecl 2 36336 NULL nohasharray
-+create_trace_kprobe_fndecl_36336_fns create_trace_kprobe fndecl 1 36336 &ima_write_template_field_data_fndecl_36336_fns
++ima_write_template_field_data_fndecl_36336_fns ima_write_template_field_data fndecl 2 36336 NULL
+pset_prop_read_u32_array_fndecl_36338_fns pset_prop_read_u32_array fndecl 0 36338 NULL
+iowarrior_read_fndecl_36344_fns iowarrior_read fndecl 3 36344 NULL
++osd_req_write_kern_fndecl_36349_fns osd_req_write_kern fndecl 5 36349 NULL
+num_crtc_cirrus_device_36358_fns num_crtc cirrus_device 0 36358 NULL
+snd_pcm_lib_write_transfer_fndecl_36369_fns snd_pcm_lib_write_transfer fndecl 5 36369 NULL
+kvm_vcpu_read_guest_atomic_fndecl_36372_fns kvm_vcpu_read_guest_atomic fndecl 4-2 36372 NULL
+addr_len_ipmi_req_36374_fns addr_len ipmi_req 0 36374 NULL
-+batadv_tt_update_orig_fndecl_36402_fns batadv_tt_update_orig fndecl 6-4 36402 NULL
++batadv_tt_update_orig_fndecl_36402_fns batadv_tt_update_orig fndecl 6 36402 NULL
+pipeline_dec_packet_out_read_fndecl_36407_fns pipeline_dec_packet_out_read fndecl 3 36407 NULL
+rproc_state_read_fndecl_36410_fns rproc_state_read fndecl 3 36410 NULL
+isr_host_acknowledges_read_fndecl_36459_fns isr_host_acknowledges_read fndecl 3 36459 NULL
+avail_snd_compr_avail_36463_fns avail snd_compr_avail 0 36463 NULL
+strn_len_fndecl_36473_fns strn_len fndecl 0 36473 NULL
++i2400m_zrealloc_2x_fndecl_36485_fns i2400m_zrealloc_2x fndecl 3 36485 NULL
++do_compat_readv_fndecl_36486_fns do_compat_readv fndecl 3 36486 NULL
+p9_client_prepare_req_fndecl_36492_fns p9_client_prepare_req fndecl 3 36492 NULL
+sg_max_nents_hwif_s_36501_fns sg_max_nents hwif_s 0 36501 NULL
-+__i2c_write_fndecl_36516_fns __i2c_write fndecl 0 36516 NULL
++capture_chips_pcxhr_mgr_36555_fns capture_chips pcxhr_mgr 0 36555 NULL
++__register_chrdev_fndecl_36572_fns __register_chrdev fndecl 2-3 36572 NULL
+do_sys_poll_fndecl_36574_fns do_sys_poll fndecl 2 36574 NULL
-+audio_write_fndecl_36582_fns audio_write fndecl 4 36582 NULL nohasharray
-+wusb_prf_fndecl_36582_fns wusb_prf fndecl 7 36582 &audio_write_fndecl_36582_fns
-+mwifiex_getlog_read_fndecl_36590_fns mwifiex_getlog_read fndecl 3 36590 NULL
++audio_write_fndecl_36582_fns audio_write fndecl 4 36582 NULL
+scan_cnt_ad7280_state_36592_fns scan_cnt ad7280_state 0 36592 NULL
+alloc_fw_event_work_fndecl_36593_fns alloc_fw_event_work fndecl 1 36593 NULL
+__br_fdb_add_fndecl_36596_fns __br_fdb_add fndecl 6 36596 NULL
+write_file_spec_scan_ctl_fndecl_36603_fns write_file_spec_scan_ctl fndecl 3 36603 NULL
+f2fs_kvzalloc_fndecl_36641_fns f2fs_kvzalloc fndecl 1 36641 NULL
-+lpfc_idiag_ctlacc_read_reg_fndecl_36642_fns lpfc_idiag_ctlacc_read_reg fndecl 0-3 36642 NULL
+nls_nullsize_fndecl_36644_fns nls_nullsize fndecl 0 36644 NULL
+setup_data_read_fndecl_36653_fns setup_data_read fndecl 3 36653 NULL nohasharray
+pvr2_encoder_write_words_fndecl_36653_fns pvr2_encoder_write_words fndecl 4 36653 &setup_data_read_fndecl_36653_fns
-+__kfifo_dma_in_prepare_r_fndecl_36659_fns __kfifo_dma_in_prepare_r fndecl 4-5 36659 NULL
-+__tty_alloc_driver_fndecl_36660_fns __tty_alloc_driver fndecl 1 36660 NULL
+qp_alloc_host_work_fndecl_36661_fns qp_alloc_host_work fndecl 5-3 36661 NULL
+max_queue_pairs_virtnet_info_36669_fns max_queue_pairs virtnet_info 0 36669 NULL
+expected_pages_page_collect_36693_fns expected_pages page_collect 0 36693 NULL
+bnx2x_mcast_set_rdata_hdr_e1_fndecl_36725_fns bnx2x_mcast_set_rdata_hdr_e1 fndecl 3 36725 NULL
+alloc_rd_atomic_resources_fndecl_36726_fns alloc_rd_atomic_resources fndecl 2 36726 NULL
-+batadv_tt_tvlv_ogm_handler_v1_fndecl_36742_fns batadv_tt_tvlv_ogm_handler_v1 fndecl 5 36742 NULL
-+channel_hwif_s_36751_fns channel hwif_s 0 36751 NULL
++batadv_tt_tvlv_ogm_handler_v1_fndecl_36742_fns batadv_tt_tvlv_ogm_handler_v1 fndecl 5 36742 NULL nohasharray
++nfc_filter_count_igb_adapter_36742_fns nfc_filter_count igb_adapter 0 36742 &batadv_tt_tvlv_ogm_handler_v1_fndecl_36742_fns
++channel_hwif_s_36751_fns channel hwif_s 0 36751 NULL nohasharray
++shmem_xattr_handler_set_fndecl_36751_fns shmem_xattr_handler_set fndecl 6 36751 &channel_hwif_s_36751_fns
+num_nodes_crush_bucket_tree_36776_fns num_nodes crush_bucket_tree 0 36776 NULL
-+efi_runtime_map_setup_fndecl_36796_fns efi_runtime_map_setup fndecl 2 36796 NULL
++copy_io_fndecl_36797_fns copy_io fndecl 3 36797 NULL
+mlx4_num_eq_uar_fndecl_36830_fns mlx4_num_eq_uar fndecl 0 36830 NULL
+qlcnic_83xx_sysfs_flash_write_fndecl_36872_fns qlcnic_83xx_sysfs_flash_write fndecl 4 36872 NULL
+netlbl_unlabel_init_fndecl_36873_fns netlbl_unlabel_init fndecl 1 36873 NULL
@@ -207810,17 +212165,14 @@ index 0000000..510c554
+relay_alloc_page_array_fndecl_37100_fns relay_alloc_page_array fndecl 1 37100 NULL
+fuse_request_alloc_fndecl_37120_fns fuse_request_alloc fndecl 1 37120 NULL
+acpi_data_prop_read_single_fndecl_37152_fns acpi_data_prop_read_single fndecl 0 37152 NULL
-+mlx5_query_port_pvlc_fndecl_37159_fns mlx5_query_port_pvlc fndecl 3 37159 NULL
+mdiobus_alloc_size_fndecl_37168_fns mdiobus_alloc_size fndecl 1 37168 NULL
+gpe_count_acpi_gpe_block_info_37173_fns gpe_count acpi_gpe_block_info 0 37173 NULL
+fdb_add_entry_fndecl_37182_fns fdb_add_entry fndecl 6 37182 NULL
++of_address_to_resource_fndecl_37191_fns of_address_to_resource fndecl 2 37191 NULL
+ssd1307fb_write_fndecl_37192_fns ssd1307fb_write fndecl 3 37192 NULL
-+hwflags_read_fndecl_37197_fns hwflags_read fndecl 3 37197 NULL
+hur_len_fndecl_37216_fns hur_len fndecl 0 37216 NULL
+tw686x_real_fps_fndecl_37230_fns tw686x_real_fps fndecl 0-2 37230 NULL
-+test_unaligned_bulk_fndecl_37246_fns test_unaligned_bulk fndecl 3 37246 NULL
-+iwl_dump_fh_fndecl_37248_fns iwl_dump_fh fndecl 0 37248 NULL
-+isdn_writebuf_stub_fndecl_37260_fns isdn_writebuf_stub fndecl 4 37260 NULL
++bt_bmc_read_fndecl_37232_fns bt_bmc_read fndecl 3 37232 NULL
+copy_entries_to_user_fndecl_37276_fns copy_entries_to_user fndecl 1 37276 NULL
+cyz_load_fw_fndecl_37290_fns cyz_load_fw fndecl 0 37290 NULL
+num_bna_mem_info_37294_fns num bna_mem_info 0 37294 NULL
@@ -207829,22 +212181,22 @@ index 0000000..510c554
+kstrtobool_from_user_fndecl_37318_fns kstrtobool_from_user fndecl 2 37318 NULL
+line6_midibuf_init_fndecl_37338_fns line6_midibuf_init fndecl 2 37338 NULL
+mdio_mii_ioctl_fndecl_37342_fns mdio_mii_ioctl fndecl 0 37342 NULL
-+hso_serial_common_create_fndecl_37343_fns hso_serial_common_create fndecl 4 37343 NULL
+dlen_pg_read_hdr_37352_fns dlen pg_read_hdr 0 37352 NULL
+ieee80211_alloc_txb_fndecl_37358_fns ieee80211_alloc_txb fndecl 1 37358 NULL
-+alauda_read_data_fndecl_37367_fns alauda_read_data fndecl 3 37367 NULL
-+bt_alloc_fndecl_37370_fns bt_alloc fndecl 2 37370 NULL
+orig_bi_size_usb_idmouse_37372_fns orig_bi_size usb_idmouse 0 37372 NULL
+tx_tx_exch_pending_read_fndecl_37385_fns tx_tx_exch_pending_read fndecl 3 37385 NULL
+hsc_msg_len_set_fndecl_37398_fns hsc_msg_len_set fndecl 2 37398 NULL
+ath6kl_wmi_implicit_create_pstream_fndecl_37407_fns ath6kl_wmi_implicit_create_pstream fndecl 2 37407 NULL
-+ipv6_renew_options_kern_fndecl_37436_fns ipv6_renew_options_kern fndecl 5 37436 NULL
-+mwifiex_debug_read_fndecl_37441_fns mwifiex_debug_read fndecl 3 37441 NULL
-+cfi_read_query_fndecl_37465_fns cfi_read_query fndecl 0 37465 NULL nohasharray
-+devnum_mtd_blktrans_dev_37465_fns devnum mtd_blktrans_dev 0 37465 &cfi_read_query_fndecl_37465_fns
++nice_workqueue_attrs_37437_fns nice workqueue_attrs 0 37437 NULL
++devnum_mtd_blktrans_dev_37465_fns devnum mtd_blktrans_dev 0 37465 NULL nohasharray
++cfi_read_query_fndecl_37465_fns cfi_read_query fndecl 0 37465 &devnum_mtd_blktrans_dev_37465_fns
+omap_dma_reserve_channels_vardecl_dma_c_37479_fns omap_dma_reserve_channels vardecl_dma.c 0 37479 NULL
-+copy_user_segment_list_fndecl_37517_fns copy_user_segment_list fndecl 2 37517 NULL
++do_compat_preadv64_fndecl_37482_fns do_compat_preadv64 fndecl 3 37482 NULL
++ath10k_mac_create_fndecl_37485_fns ath10k_mac_create fndecl 1 37485 NULL
++max_virtual_routers_mlxsw_resources_37525_fns max_virtual_routers mlxsw_resources 0 37525 NULL
++dwords_qib_verbs_txreq_37537_fns dwords qib_verbs_txreq 0 37537 NULL
+fuse_fsync_common_fndecl_37543_fns fuse_fsync_common fndecl 2-3 37543 NULL
++btrfs_io_bio_alloc_fndecl_37544_fns btrfs_io_bio_alloc fndecl 2 37544 NULL
+num_rand_bytes_ecryptfs_write_tag_70_packet_silly_stack_37548_fns num_rand_bytes ecryptfs_write_tag_70_packet_silly_stack 0 37548 NULL
+n_ai_urbs_usbdux_private_37595_fns n_ai_urbs usbdux_private 0 37595 NULL
+tx_tx_start_data_read_fndecl_37616_fns tx_tx_start_data_read fndecl 3 37616 NULL
@@ -207852,175 +212204,156 @@ index 0000000..510c554
+copy_ctr_args_fndecl_37642_fns copy_ctr_args fndecl 2 37642 NULL
+bufsize_vardecl_pagetest_c_37645_fns bufsize vardecl_pagetest.c 0 37645 NULL
+nvme_trans_ext_inq_page_fndecl_37691_fns nvme_trans_ext_inq_page fndecl 3 37691 NULL
-+xenvif_write_io_ring_fndecl_37713_fns xenvif_write_io_ring fndecl 3 37713 NULL
+run_start_commands_fndecl_37723_fns run_start_commands fndecl 0 37723 NULL
+mon_bin_get_event_fndecl_37740_fns mon_bin_get_event fndecl 4-6 37740 NULL
+pwr_rcvd_beacons_read_fndecl_37751_fns pwr_rcvd_beacons_read fndecl 3 37751 NULL
-+ath6kl_dbg_dump_fndecl_37760_fns ath6kl_dbg_dump fndecl 5 37760 NULL
+cache_read_procfs_fndecl_37761_fns cache_read_procfs fndecl 3 37761 NULL
+kvm_kvzalloc_fndecl_37773_fns kvm_kvzalloc fndecl 1 37773 NULL
+ifc_len_ifconf_37839_fns ifc_len ifconf 0 37839 NULL
+__kfifo_skip_r_fndecl_37849_fns __kfifo_skip_r fndecl 2 37849 NULL
++sctp_init_cause_fixed_fndecl_37853_fns sctp_init_cause_fixed fndecl 3 37853 NULL
+ioread16be_fndecl_37854_fns ioread16be fndecl 0 37854 NULL
+usbat_read_block_fndecl_37858_fns usbat_read_block fndecl 3-4 37858 NULL
+tx_tx_exch_read_fndecl_37865_fns tx_tx_exch_read fndecl 3 37865 NULL
+num_node_state_fndecl_37870_fns num_node_state fndecl 0 37870 NULL
-+hx8357_spi_write_then_read_fndecl_37879_fns hx8357_spi_write_then_read fndecl 3 37879 NULL
+dm_bufio_client_create_fndecl_37889_fns dm_bufio_client_create fndecl 4 37889 NULL
++logi_dj_hidpp_event_fndecl_37899_fns logi_dj_hidpp_event fndecl 4 37899 NULL
+pvr2_i2c_basic_op_fndecl_37917_fns pvr2_i2c_basic_op fndecl 4-6 37917 NULL
+spk_ye_vardecl_37920_fns spk_ye vardecl 0 37920 NULL
-+mlx5_set_port_qetcr_reg_fndecl_37932_fns mlx5_set_port_qetcr_reg fndecl 3 37932 NULL
+num_escbs_asd_seq_data_37938_fns num_escbs asd_seq_data 0 37938 NULL
+kvm_fetch_guest_virt_fndecl_37942_fns kvm_fetch_guest_virt fndecl 2-4 37942 NULL
+seq_write_fndecl_37946_fns seq_write fndecl 3 37946 NULL
-+mbox_write_fndecl_37967_fns mbox_write fndecl 3 37967 NULL
+vortex_core_init_fndecl_37980_fns vortex_core_init fndecl 0 37980 NULL
+key_search_fndecl_37982_fns key_search fndecl 0 37982 NULL
++nlmsvc_lookup_host_fndecl_37992_fns nlmsvc_lookup_host fndecl 3 37992 NULL
++max_cmnds_vardecl_aic94xx_hwi_c_38022_fns max_cmnds vardecl_aic94xx_hwi.c 0 38022 NULL
+get_cur_path_fndecl_38038_fns get_cur_path fndecl 0 38038 NULL
+xfs_extent_free_create_done_fndecl_38040_fns xfs_extent_free_create_done fndecl 3 38040 NULL
+DataUnits_partition_t_38043_fns DataUnits partition_t 0 38043 NULL
-+aac_convert_sgraw2_fndecl_38045_fns aac_convert_sgraw2 fndecl 2-4 38045 NULL
-+get_vmcore_size_fndecl_38046_fns get_vmcore_size fndecl 0-2-1 38046 NULL
+iscsi_create_session_fndecl_38060_fns iscsi_create_session fndecl 3 38060 NULL
-+ps_upsd_utilization_read_fndecl_38086_fns ps_upsd_utilization_read fndecl 3 38086 NULL nohasharray
-+portcntrs_debugfs_read_fndecl_38086_fns portcntrs_debugfs_read fndecl 3 38086 &ps_upsd_utilization_read_fndecl_38086_fns
++ps_upsd_utilization_read_fndecl_38086_fns ps_upsd_utilization_read fndecl 3 38086 NULL
+host_mapping_level_fndecl_38115_fns host_mapping_level fndecl 0-2 38115 NULL
+sel_write_access_fndecl_38123_fns sel_write_access fndecl 3 38123 NULL
+sctp_setsockopt_associnfo_fndecl_38135_fns sctp_setsockopt_associnfo fndecl 3 38135 NULL
-+rtw_os_xmit_resource_alloc23a_fndecl_38142_fns rtw_os_xmit_resource_alloc23a fndecl 3 38142 NULL
-+iwl_dbgfs_bcast_filters_macs_read_fndecl_38156_fns iwl_dbgfs_bcast_filters_macs_read fndecl 3 38156 NULL
-+st_read_fndecl_38176_fns st_read fndecl 3 38176 NULL
+nf_ct_ext_create_fndecl_38195_fns nf_ct_ext_create fndecl 3 38195 NULL
+drm_property_create_fndecl_38196_fns drm_property_create fndecl 4 38196 NULL
+nilfs_cpfile_checkpoints_in_block_fndecl_38197_fns nilfs_cpfile_checkpoints_in_block fndecl 0-2-3 38197 NULL
+goto_high_power_fndecl_38198_fns goto_high_power fndecl 0 38198 NULL
+rx_offset_tg3_38201_fns rx_offset tg3 0 38201 NULL
-+ath10k_dbg_sta_write_addba_fndecl_38227_fns ath10k_dbg_sta_write_addba fndecl 3 38227 NULL
+dvb_audio_write_fndecl_38232_fns dvb_audio_write fndecl 3 38232 NULL
-+i2400m_bm_cmd_fndecl_38243_fns i2400m_bm_cmd fndecl 0-5 38243 NULL
-+ext2_xattr_get_fndecl_38252_fns ext2_xattr_get fndecl 0 38252 NULL
+mwifiex_11n_delba_fndecl_38254_fns mwifiex_11n_delba fndecl 2 38254 NULL
-+i2c2_debugfs_read_fndecl_38270_fns i2c2_debugfs_read fndecl 3 38270 NULL
++max_read_sge_ib_qp_38275_fns max_read_sge ib_qp 0 38275 NULL
+header_length_fw_iso_packet_38284_fns header_length fw_iso_packet 0 38284 NULL
+cacheless_memcpy_fndecl_38293_fns cacheless_memcpy fndecl 3 38293 NULL
-+smk_write_ptrace_fndecl_38294_fns smk_write_ptrace fndecl 3 38294 NULL
++smk_write_ptrace_fndecl_38294_fns smk_write_ptrace fndecl 3 38294 NULL nohasharray
++SYSC_modify_ldt_fndecl_38294_fns SYSC_modify_ldt fndecl 3 38294 &smk_write_ptrace_fndecl_38294_fns
+alloc_smp_req_fndecl_38298_fns alloc_smp_req fndecl 1 38298 NULL
+num_kcontrols_snd_soc_dapm_widget_38302_fns num_kcontrols snd_soc_dapm_widget 0 38302 NULL nohasharray
+ipw_get_event_log_len_fndecl_38302_fns ipw_get_event_log_len fndecl 0 38302 &num_kcontrols_snd_soc_dapm_widget_38302_fns
-+ath10k_dbg_sta_read_aggr_mode_fndecl_38310_fns ath10k_dbg_sta_read_aggr_mode fndecl 3 38310 NULL
+ob_max_size_mvumi_hba_38327_fns ob_max_size mvumi_hba 0 38327 NULL
++radeon_kms_compat_ioctl_fndecl_38328_fns radeon_kms_compat_ioctl fndecl 2 38328 NULL
++num_sys_eqs_mlx4_dev_cap_38340_fns num_sys_eqs mlx4_dev_cap 0 38340 NULL
+get_first_ref_fndecl_38342_fns get_first_ref fndecl 0 38342 NULL
+len_ethtool_regs_38354_fns len ethtool_regs 0 38354 NULL
-+ieee80211_if_read_dot11MeshHWMPRootMode_fndecl_38370_fns ieee80211_if_read_dot11MeshHWMPRootMode fndecl 3 38370 NULL
-+wsm_handle_exception_fndecl_38377_fns wsm_handle_exception fndecl 3 38377 NULL
+dvb_register_frontend_fndecl_38382_fns dvb_register_frontend fndecl 0 38382 NULL
+chrdev_setup_rx_fndecl_38384_fns chrdev_setup_rx fndecl 2 38384 NULL
-+mwifiex_rdeeprom_read_fndecl_38390_fns mwifiex_rdeeprom_read fndecl 3 38390 NULL
++blk_register_region_fndecl_38387_fns blk_register_region fndecl 1-2 38387 NULL
+size_vfio_info_cap_38398_fns size vfio_info_cap 0 38398 NULL
+ath6kl_sdio_alloc_prep_scat_req_fndecl_38401_fns ath6kl_sdio_alloc_prep_scat_req fndecl 2 38401 NULL
-+dwc3_mode_write_fndecl_38414_fns dwc3_mode_write fndecl 3 38414 NULL
+read_page_fndecl_38423_fns read_page fndecl 2 38423 NULL
+dvb_ringbuffer_avail_fndecl_38474_fns dvb_ringbuffer_avail fndecl 0 38474 NULL
+__fuse_request_alloc_fndecl_38479_fns __fuse_request_alloc fndecl 1 38479 NULL
+dma_rx_errors_read_fndecl_38494_fns dma_rx_errors_read fndecl 3 38494 NULL
-+smsdvb_stats_read_fndecl_38529_fns smsdvb_stats_read fndecl 3 38529 NULL
-+o2net_debug_read_fndecl_38554_fns o2net_debug_read fndecl 3 38554 NULL
++bt_bmc_write_fndecl_38538_fns bt_bmc_write fndecl 3 38538 NULL
++tx_win_size_mwifiex_add_ba_param_38553_fns tx_win_size mwifiex_add_ba_param 0 38553 NULL
+hysdn_conf_write_fndecl_38562_fns hysdn_conf_write fndecl 3 38562 NULL
-+memblock_alloc_base_nid_fndecl_38568_fns memblock_alloc_base_nid fndecl 1 38568 NULL
+retry_count_read_fndecl_38578_fns retry_count_read fndecl 3 38578 NULL
+gdm_usb_hci_send_fndecl_38585_fns gdm_usb_hci_send fndecl 3 38585 NULL
+print_prefix_fndecl_38595_fns print_prefix fndecl 0 38595 NULL
+proc_pid_readlink_fndecl_38601_fns proc_pid_readlink fndecl 3 38601 NULL
+perf_num_counters_fndecl_38605_fns perf_num_counters fndecl 0 38605 NULL
-+ieee80211_if_read_dot11MeshRetryTimeout_fndecl_38619_fns ieee80211_if_read_dot11MeshRetryTimeout fndecl 3 38619 NULL
++mga_compat_ioctl_fndecl_38617_fns mga_compat_ioctl fndecl 2 38617 NULL
+vmci_qp_broker_alloc_fndecl_38635_fns vmci_qp_broker_alloc fndecl 6-5 38635 NULL
+str_read_fndecl_38656_fns str_read fndecl 4 38656 NULL
+cm4040_read_fndecl_38663_fns cm4040_read fndecl 3 38663 NULL
++hid_parse_report_fndecl_38666_fns hid_parse_report fndecl 3 38666 NULL
++tty_cdev_add_fndecl_38673_fns tty_cdev_add fndecl 2-4 38673 NULL
++drm_compat_ioctl_fndecl_38678_fns drm_compat_ioctl fndecl 2 38678 NULL
+v9fs_alloc_rdir_buf_fndecl_38679_fns v9fs_alloc_rdir_buf fndecl 2 38679 NULL
++sbitmap_queue_init_node_fndecl_38682_fns sbitmap_queue_init_node fndecl 2-3 38682 NULL
+sg_read_oxfer_fndecl_38687_fns sg_read_oxfer fndecl 3 38687 NULL
+iio_buffer_add_channel_sysfs_fndecl_38693_fns iio_buffer_add_channel_sysfs fndecl 0 38693 NULL
+sctp_setsockopt_pr_supported_fndecl_38705_fns sctp_setsockopt_pr_supported fndecl 3 38705 NULL
+get_user_pages_fast_fndecl_38708_fns get_user_pages_fast fndecl 0 38708 NULL
-+if_write_fndecl_38719_fns if_write fndecl 3 38719 NULL
+acpi_table_parse_entries_fndecl_38730_fns acpi_table_parse_entries fndecl 0 38730 NULL
+last_error_boot_data_38741_fns last_error boot_data 0 38741 NULL
+ssd1307fb_alloc_array_fndecl_38751_fns ssd1307fb_alloc_array fndecl 1 38751 NULL
+buffer_from_user_fndecl_38753_fns buffer_from_user fndecl 3 38753 NULL
-+nr_pages_max_splice_pipe_desc_38758_fns nr_pages_max splice_pipe_desc 0 38758 NULL
++t4_max_iq_size_c4iw_hw_queue_38756_fns t4_max_iq_size c4iw_hw_queue 0 38756 NULL
+egr_start_sge_38761_fns egr_start sge 0 38761 NULL
-+az6007_read_fndecl_38771_fns az6007_read fndecl 6 38771 NULL
++write_packet_fndecl_38765_fns write_packet fndecl 5 38765 NULL
++qib_alloc_devdata_fndecl_38776_fns qib_alloc_devdata fndecl 2 38776 NULL
+pointer_size_read_fndecl_38788_fns pointer_size_read fndecl 3 38788 NULL
-+get_indirect_ea_fndecl_38798_fns get_indirect_ea fndecl 4 38798 NULL
-+read_file_tgt_tx_stats_fndecl_38804_fns read_file_tgt_tx_stats fndecl 3 38804 NULL
+user_read_fndecl_38842_fns user_read fndecl 3 38842 NULL
-+memblock_alloc_fndecl_38847_fns memblock_alloc fndecl 1 38847 NULL
+logfs_fsync_fndecl_38849_fns logfs_fsync fndecl 2-3 38849 NULL
+nrealwriters_vardecl_rcuperf_c_38873_fns nrealwriters vardecl_rcuperf.c 0 38873 NULL
++scsi_get_vpd_page_fndecl_38908_fns scsi_get_vpd_page fndecl 4 38908 NULL
+pgctrl_write_fndecl_38918_fns pgctrl_write fndecl 3 38918 NULL
+device_create_sys_dev_entry_fndecl_38921_fns device_create_sys_dev_entry fndecl 0 38921 NULL
-+qlcnic_diag_free_res_fndecl_38922_fns qlcnic_diag_free_res fndecl 2 38922 NULL
++qib_restart_rc_fndecl_38939_fns qib_restart_rc fndecl 2 38939 NULL
+drm_fb_helper_sys_write_fndecl_38945_fns drm_fb_helper_sys_write fndecl 3 38945 NULL
+cdrom_read_cdda_fndecl_38973_fns cdrom_read_cdda fndecl 4 38973 NULL
-+hsc_read_fndecl_38991_fns hsc_read fndecl 3 38991 NULL
+pwr_rcvd_awake_beacons_read_fndecl_39002_fns pwr_rcvd_awake_beacons_read fndecl 3 39002 NULL
-+usbat_flash_write_data_fndecl_39018_fns usbat_flash_write_data fndecl 4 39018 NULL
+alloc_send_rmpp_list_fndecl_39029_fns alloc_send_rmpp_list fndecl 2 39029 NULL
+ath6kl_set_ap_probe_resp_ies_fndecl_39032_fns ath6kl_set_ap_probe_resp_ies fndecl 3 39032 NULL
+error_burst_mismatch_read_fndecl_39035_fns error_burst_mismatch_read fndecl 3 39035 NULL
-+iwl_dbgfs_missed_beacon_read_fndecl_39051_fns iwl_dbgfs_missed_beacon_read fndecl 3 39051 NULL
+ncp_fsync_fndecl_39057_fns ncp_fsync fndecl 2-3 39057 NULL
+xillybus_write_fndecl_39102_fns xillybus_write fndecl 3 39102 NULL
+audio_ins_vx_core_39112_fns audio_ins vx_core 0 39112 NULL
+acpi_data_get_property_array_fndecl_39128_fns acpi_data_get_property_array fndecl 0 39128 NULL
+simple_transaction_get_fndecl_39130_fns simple_transaction_get fndecl 3 39130 NULL
-+of_phandle_iterator_args_fndecl_39151_fns of_phandle_iterator_args fndecl 0 39151 NULL
+raid56_parity_alloc_scrub_rbio_fndecl_39153_fns raid56_parity_alloc_scrub_rbio fndecl 4 39153 NULL
++sys_readv_fndecl_39163_fns sys_readv fndecl 3 39163 NULL
+cfg80211_roamed_bss_fndecl_39173_fns cfg80211_roamed_bss fndecl 6-4 39173 NULL
+cyttsp4_probe_fndecl_39178_fns cyttsp4_probe fndecl 4 39178 NULL
+l2cap_sock_setsockopt_fndecl_39180_fns l2cap_sock_setsockopt fndecl 5 39180 NULL
+mthca_buddy_init_fndecl_39181_fns mthca_buddy_init fndecl 2 39181 NULL
++rvt_map_phys_fmr_fndecl_39197_fns rvt_map_phys_fmr fndecl 4 39197 NULL
+sg_kmalloc_fndecl_39251_fns sg_kmalloc fndecl 1 39251 NULL
-+soc_codec_reg_show_fndecl_39277_fns soc_codec_reg_show fndecl 3-0 39277 NULL
+size_tomoyo_condition_39281_fns size tomoyo_condition 0 39281 NULL
-+lpfc_idiag_pcicfg_read_fndecl_39309_fns lpfc_idiag_pcicfg_read fndecl 3 39309 NULL
++rxrpc_setsockopt_fndecl_39293_fns rxrpc_setsockopt fndecl 5 39293 NULL
+SYSC_flistxattr_fndecl_39312_fns SYSC_flistxattr fndecl 3 39312 NULL
+SYSC_sched_setaffinity_fndecl_39317_fns SYSC_sched_setaffinity fndecl 2 39317 NULL
-+len_buflist_39320_fns len buflist 0 39320 NULL
-+get_cable_info_fndecl_39326_fns get_cable_info fndecl 3-4 39326 NULL
+isdn_ppp_read_fndecl_39335_fns isdn_ppp_read fndecl 4 39335 NULL
-+iwl_dbgfs_echo_test_write_fndecl_39337_fns iwl_dbgfs_echo_test_write fndecl 3 39337 NULL
-+fscrypt_fname_alloc_buffer_fndecl_39339_fns fscrypt_fname_alloc_buffer fndecl 2 39339 NULL nohasharray
-+musb_softconnect_write_fndecl_39339_fns musb_softconnect_write fndecl 3 39339 &fscrypt_fname_alloc_buffer_fndecl_39339_fns
++fscrypt_fname_alloc_buffer_fndecl_39339_fns fscrypt_fname_alloc_buffer fndecl 2 39339 NULL
+setbrightness_fndecl_39342_fns setbrightness fndecl 0 39342 NULL
+tpm_read_fndecl_39355_fns tpm_read fndecl 3 39355 NULL
+max_skl_algo_data_39368_fns max skl_algo_data 0 39368 NULL
++nftl_read_oob_fndecl_39370_fns nftl_read_oob fndecl 3 39370 NULL
+roccat_common2_receive_fndecl_39378_fns roccat_common2_receive fndecl 4 39378 NULL
+sl_alloc_bufs_fndecl_39391_fns sl_alloc_bufs fndecl 2 39391 NULL
-+mwifiex_reset_write_fndecl_39394_fns mwifiex_reset_write fndecl 3 39394 NULL
+iscsi_create_conn_fndecl_39402_fns iscsi_create_conn fndecl 2 39402 NULL
-+_iwl_dbgfs_send_echo_cmd_write_fndecl_39412_fns _iwl_dbgfs_send_echo_cmd_write fndecl 3 39412 NULL
+show_device_status_fndecl_39440_fns show_device_status fndecl 0 39440 NULL
+virtio_cread16_fndecl_39444_fns virtio_cread16 fndecl 0 39444 NULL
-+tp_la_write_fndecl_39445_fns tp_la_write fndecl 3 39445 NULL nohasharray
-+max_size_vardecl_custom_method_c_39445_fns max_size vardecl_custom_method.c 0 39445 &tp_la_write_fndecl_39445_fns
+proc_write_fndecl_39464_fns proc_write fndecl 3 39464 NULL
-+iwl_statistics_flag_fndecl_39478_fns iwl_statistics_flag fndecl 0 39478 NULL
-+mwifiex_timeshare_coex_write_fndecl_39516_fns mwifiex_timeshare_coex_write fndecl 3 39516 NULL nohasharray
-+lbs_dev_info_fndecl_39516_fns lbs_dev_info fndecl 3 39516 &mwifiex_timeshare_coex_write_fndecl_39516_fns
++qib_verbs_send_pio_fndecl_39482_fns qib_verbs_send_pio fndecl 5 39482 NULL
++lbs_dev_info_fndecl_39516_fns lbs_dev_info fndecl 3 39516 NULL
+error_tx_resume_failure_read_fndecl_39521_fns error_tx_resume_failure_read fndecl 3 39521 NULL
-+len_batadv_tvlv_hdr_39527_fns len batadv_tvlv_hdr 0 39527 NULL
+rsc_mgr_init_fndecl_39528_fns rsc_mgr_init fndecl 3 39528 NULL
+wusb_prf_64_fndecl_39530_fns wusb_prf_64 fndecl 7 39530 NULL
+reply_len_bsg_job_39533_fns reply_len bsg_job 0 39533 NULL
-+srpt_alloc_ioctx_fndecl_39537_fns srpt_alloc_ioctx fndecl 2 39537 NULL
++srpt_alloc_ioctx_fndecl_39537_fns srpt_alloc_ioctx fndecl 2-3 39537 NULL
+jbd2_journal_init_revoke_fndecl_39555_fns jbd2_journal_init_revoke fndecl 2 39555 NULL
+buf_size_fm_rds_39590_fns buf_size fm_rds 0 39590 NULL
+count_snd_ctl_elem_info_39594_fns count snd_ctl_elem_info 0 39594 NULL
++midi_ports_snd_emux_39605_fns midi_ports snd_emux 0 39605 NULL
+of_clk_get_parent_count_fndecl_39609_fns of_clk_get_parent_count fndecl 0 39609 NULL
+simple_xattr_set_fndecl_39639_fns simple_xattr_set fndecl 4 39639 NULL
+xfs_trans_get_efd_fndecl_39647_fns xfs_trans_get_efd fndecl 3 39647 NULL
+nfs_filemap_write_and_wait_range_fndecl_39652_fns nfs_filemap_write_and_wait_range fndecl 2-3 39652 NULL
++copy_arg_from_user_fndecl_39660_fns copy_arg_from_user fndecl 3 39660 NULL
+vendor_diag_read_fndecl_39671_fns vendor_diag_read fndecl 3 39671 NULL
++rdma_read_chunk_frmr_fndecl_39676_fns rdma_read_chunk_frmr fndecl 8 39676 NULL
+dev_mem_read_fndecl_39681_fns dev_mem_read fndecl 3 39681 NULL nohasharray
+num_q_vectors_fm10k_intfc_39681_fns num_q_vectors fm10k_intfc 0 39681 &dev_mem_read_fndecl_39681_fns
+blk_check_plugged_fndecl_39715_fns blk_check_plugged fndecl 3 39715 NULL
@@ -208030,59 +212363,48 @@ index 0000000..510c554
+write_flush_fndecl_39776_fns write_flush fndecl 3 39776 NULL
+dvb_play_fndecl_39789_fns dvb_play fndecl 3 39789 NULL
+tpm_write_fndecl_39805_fns tpm_write fndecl 3 39805 NULL
-+videobuf_dma_init_user_fndecl_39812_fns videobuf_dma_init_user fndecl 3-4 39812 NULL
+nft_trans_alloc_fndecl_39815_fns nft_trans_alloc fndecl 3 39815 NULL
+btrfs_search_slot_for_read_fndecl_39816_fns btrfs_search_slot_for_read fndecl 0 39816 NULL
-+init_rx_ring_fndecl_39832_fns init_rx_ring fndecl 4 39832 NULL nohasharray
-+dpcm_show_state_fndecl_39832_fns dpcm_show_state fndecl 0 39832 &init_rx_ring_fndecl_39832_fns
-+carl9170_debugfs_write_fndecl_39866_fns carl9170_debugfs_write fndecl 3 39866 NULL
++init_rx_ring_fndecl_39832_fns init_rx_ring fndecl 4 39832 NULL
+do_shrink_slab_fndecl_39881_fns do_shrink_slab fndecl 4-3 39881 NULL
-+debug_fcp_fndecl_39887_fns debug_fcp fndecl 2 39887 NULL
+len_cache_request_39888_fns len cache_request 0 39888 NULL
-+frame_vector_create_fndecl_39918_fns frame_vector_create fndecl 1 39918 NULL nohasharray
-+mgmt_get_all_if_id_fndecl_39918_fns mgmt_get_all_if_id fndecl 0 39918 &frame_vector_create_fndecl_39918_fns
-+inode2sd_v1_fndecl_39954_fns inode2sd_v1 fndecl 3 39954 NULL
++formats_num_mcp_trace_meta_39957_fns formats_num mcp_trace_meta 0 39957 NULL
+readbuf_size_tomoyo_io_buffer_39976_fns readbuf_size tomoyo_io_buffer 0 39976 NULL
+agp_3_5_isochronous_node_enable_fndecl_39978_fns agp_3_5_isochronous_node_enable fndecl 3 39978 NULL
+compat_do_msg_fill_fndecl_39987_fns compat_do_msg_fill fndecl 3 39987 NULL
-+size_fm10k_l2_accel_39996_fns size fm10k_l2_accel 0 39996 NULL
++start_sram_reserve_39999_fns start sram_reserve 0 39999 NULL
+isr_decrypt_done_read_fndecl_40001_fns isr_decrypt_done_read fndecl 3 40001 NULL
-+cifs_dump_mem_fndecl_40013_fns cifs_dump_mem fndecl 3 40013 NULL
+emulator_write_phys_fndecl_40035_fns emulator_write_phys fndecl 2-4 40035 NULL
-+iwl_dbgfs_disable_power_off_read_fndecl_40062_fns iwl_dbgfs_disable_power_off_read fndecl 3 40062 NULL
++stm32_dma_prep_dma_memcpy_fndecl_40057_fns stm32_dma_prep_dma_memcpy fndecl 4 40057 NULL
+rx_queue_add_kobject_fndecl_40068_fns rx_queue_add_kobject fndecl 0 40068 NULL
+x25_asy_maxdev_vardecl_x25_asy_c_40074_fns x25_asy_maxdev vardecl_x25_asy.c 0 40074 NULL
+num_parents_clk_core_40091_fns num_parents clk_core 0 40091 NULL
-+rx_buf_use_size_bnx2_40094_fns rx_buf_use_size bnx2 0 40094 NULL
++wIELength_uwb_rc_cmd_set_ie_40094_fns wIELength uwb_rc_cmd_set_ie 0 40094 NULL nohasharray
++rx_buf_use_size_bnx2_40094_fns rx_buf_use_size bnx2 0 40094 &wIELength_uwb_rc_cmd_set_ie_40094_fns
+sctp_setsockopt_default_send_param_fndecl_40121_fns sctp_setsockopt_default_send_param fndecl 3 40121 NULL
+smk_write_doi_fndecl_40134_fns smk_write_doi fndecl 3 40134 NULL
+port_fops_read_fndecl_40137_fns port_fops_read fndecl 3 40137 NULL
+isr_wakeups_read_fndecl_40148_fns isr_wakeups_read fndecl 3 40148 NULL
+command_setlights_fndecl_40187_fns command_setlights fndecl 0 40187 NULL
+ath6kl_bgscan_int_write_fndecl_40201_fns ath6kl_bgscan_int_write fndecl 3 40201 NULL
-+kbuf_alloc_2_sgl_fndecl_40216_fns kbuf_alloc_2_sgl fndecl 1 40216 NULL
++dvb_dvr_ioctl_fndecl_40205_fns dvb_dvr_ioctl fndecl 2 40205 NULL
+ipw_queue_tx_init_fndecl_40218_fns ipw_queue_tx_init fndecl 3 40218 NULL
-+il4965_rs_sta_dbgfs_stats_table_read_fndecl_40229_fns il4965_rs_sta_dbgfs_stats_table_read fndecl 3 40229 NULL
-+do_jffs2_getxattr_fndecl_40233_fns do_jffs2_getxattr fndecl 0 40233 NULL
+skl_get_module_params_fndecl_40234_fns skl_get_module_params fndecl 3 40234 NULL
-+iwl_dbgfs_ucode_general_stats_read_fndecl_40252_fns iwl_dbgfs_ucode_general_stats_read fndecl 3 40252 NULL
+digest_size_public_key_signature_40282_fns digest_size public_key_signature 0 40282 NULL
+rx_filter_beacon_filter_read_fndecl_40300_fns rx_filter_beacon_filter_read fndecl 3 40300 NULL
+num_engines_dmm_40301_fns num_engines dmm 0 40301 NULL
-+ieee80211_if_read_rssi_threshold_fndecl_40319_fns ieee80211_if_read_rssi_threshold fndecl 3 40319 NULL
+uio_read_fndecl_40327_fns uio_read fndecl 3 40327 NULL
+nvif_notify_init_fndecl_40342_fns nvif_notify_init fndecl 7-6 40342 NULL
+srpt_alloc_ioctx_ring_fndecl_40353_fns srpt_alloc_ioctx_ring fndecl 2-3-4 40353 NULL
+tool_link_event_write_fndecl_40366_fns tool_link_event_write fndecl 3 40366 NULL
+SYSC_mincore_fndecl_40372_fns SYSC_mincore fndecl 2-1 40372 NULL
++pages_per_wr_bio_scrub_wr_ctx_40374_fns pages_per_wr_bio scrub_wr_ctx 0 40374 NULL
+__vmalloc_node_fndecl_40382_fns __vmalloc_node fndecl 1 40382 NULL
-+qsfp_read_fndecl_40391_fns qsfp_read fndecl 0-3-5 40391 NULL
++px_raw_event_fndecl_40392_fns px_raw_event fndecl 4 40392 NULL
+joydev_ioctl_common_fndecl_40412_fns joydev_ioctl_common fndecl 2 40412 NULL
+applesmc_create_nodes_fndecl_40419_fns applesmc_create_nodes fndecl 2 40419 NULL
+rx_streaming_always_read_fndecl_40426_fns rx_streaming_always_read fndecl 3 40426 NULL
-+tnode_alloc_fndecl_40428_fns tnode_alloc fndecl 1 40428 NULL
+iscsi_alloc_session_fndecl_40445_fns iscsi_alloc_session fndecl 3 40445 NULL
-+qd2index_fndecl_40449_fns qd2index fndecl 0 40449 NULL
+submit_create_fndecl_40462_fns submit_create fndecl 3 40462 NULL
+__copy_from_user_inatomic_nocache_fndecl_40466_fns __copy_from_user_inatomic_nocache fndecl 3 40466 NULL
+xfs_rmap_update_create_intent_fndecl_40493_fns xfs_rmap_update_create_intent fndecl 2 40493 NULL
@@ -208090,49 +212412,52 @@ index 0000000..510c554
+nf_sockopt_fndecl_40555_fns nf_sockopt fndecl 0 40555 NULL
+alloc_ebda_hpc_fndecl_40557_fns alloc_ebda_hpc fndecl 1-2 40557 NULL
+security_context_to_sid_fndecl_40560_fns security_context_to_sid fndecl 2 40560 NULL
-+isdn_read_fndecl_40566_fns isdn_read fndecl 3 40566 NULL
-+xlog_recovery_process_trans_fndecl_40575_fns xlog_recovery_process_trans fndecl 4 40575 NULL
-+ioread8_fndecl_40594_fns ioread8 fndecl 0 40594 NULL
++compat_sys_preadv2_fndecl_40579_fns compat_sys_preadv2 fndecl 3 40579 NULL
+android_set_cntry_fndecl_40615_fns android_set_cntry fndecl 0 40615 NULL
-+read_file_slot_fndecl_40620_fns read_file_slot fndecl 3 40620 NULL
+__kfifo_dma_in_prepare_fndecl_40626_fns __kfifo_dma_in_prepare fndecl 4 40626 NULL
+pcpu_get_vm_areas_fndecl_40630_fns pcpu_get_vm_areas fndecl 3 40630 NULL
++dev_set_alias_fndecl_40631_fns dev_set_alias fndecl 3 40631 NULL
+altera_swap_dr_fndecl_40633_fns altera_swap_dr fndecl 2 40633 NULL
-+sock_setsockopt_fndecl_40635_fns sock_setsockopt fndecl 5 40635 NULL nohasharray
-+cfg_fcp_io_channel_lpfc_hba_40635_fns cfg_fcp_io_channel lpfc_hba 0 40635 &sock_setsockopt_fndecl_40635_fns
++sock_setsockopt_fndecl_40635_fns sock_setsockopt fndecl 5 40635 NULL
+ocrdma_dbgfs_ops_write_fndecl_40664_fns ocrdma_dbgfs_ops_write fndecl 3 40664 NULL
++kmalloc_node_fndecl_40672_fns kmalloc_node fndecl 1 40672 NULL
+rx_filter_ibss_filter_read_fndecl_40676_fns rx_filter_ibss_filter_read fndecl 3 40676 NULL
+odev_update_fndecl_40682_fns odev_update fndecl 2 40682 NULL
+ahd_probe_stack_size_fndecl_40683_fns ahd_probe_stack_size fndecl 0 40683 NULL
+tx_frag_need_fragmentation_read_fndecl_40698_fns tx_frag_need_fragmentation_read fndecl 3 40698 NULL
+aa_simple_write_to_buffer_fndecl_40704_fns aa_simple_write_to_buffer fndecl 4 40704 NULL
++max_znode_sz_ubifs_info_40705_fns max_znode_sz ubifs_info 0 40705 NULL
+write_pool_fndecl_40741_fns write_pool fndecl 3 40741 NULL
+sys_gethostname_fndecl_40753_fns sys_gethostname fndecl 2 40753 NULL
+btrfs_chunk_num_stripes_fndecl_40772_fns btrfs_chunk_num_stripes fndecl 0 40772 NULL
+snd_hdac_get_connections_fndecl_40773_fns snd_hdac_get_connections fndecl 0 40773 NULL
-+key_conf_keylen_read_fndecl_40781_fns key_conf_keylen_read fndecl 3 40781 NULL
-+scsi_log_print_sense_fndecl_40783_fns scsi_log_print_sense fndecl 5 40783 NULL
+sys_fsetxattr_fndecl_40795_fns sys_fsetxattr fndecl 4 40795 NULL
++private_data_len_rdma_conn_param_40796_fns private_data_len rdma_conn_param 0 40796 NULL
+ath10k_wmi_alloc_chunk_fndecl_40804_fns ath10k_wmi_alloc_chunk fndecl 3-4-0 40804 NULL
++sz_m1_mlx5_wq_ll_40805_fns sz_m1 mlx5_wq_ll 0 40805 NULL
+fuse_conn_waiting_read_fndecl_40817_fns fuse_conn_waiting_read fndecl 3 40817 NULL
-+length_sst_dsp_header_40829_fns length sst_dsp_header 0 40829 NULL
+v9fs_file_fsync_dotl_fndecl_40845_fns v9fs_file_fsync_dotl fndecl 2-3 40845 NULL
+nfs_file_fsync_fndecl_40851_fns nfs_file_fsync fndecl 2-3 40851 NULL
+ecc_step_ds_nand_chip_40865_fns ecc_step_ds nand_chip 0 40865 NULL
+slow_user_access_fndecl_40877_fns slow_user_access fndecl 5 40877 NULL
+gtt_sa_num_of_chunks_kfd_dev_40890_fns gtt_sa_num_of_chunks kfd_dev 0 40890 NULL
++pci_add_dynid_fndecl_40893_fns pci_add_dynid fndecl 8 40893 NULL
++build_verbs_tx_desc_fndecl_40917_fns build_verbs_tx_desc fndecl 3 40917 NULL
+sctp_setsockopt_bindx_fndecl_40925_fns sctp_setsockopt_bindx fndecl 3 40925 NULL
++ecryptfs_filldir_fndecl_40939_fns ecryptfs_filldir fndecl 3 40939 NULL
+sg_nents_for_len_fndecl_40942_fns sg_nents_for_len fndecl 0 40942 NULL
-+az6007_write_fndecl_40948_fns az6007_write fndecl 6 40948 NULL
+size_v4l2_ext_control_40952_fns size v4l2_ext_control 0 40952 NULL
+ns_segnum_the_nilfs_40959_fns ns_segnum the_nilfs 0 40959 NULL
+isr_low_rssi_read_fndecl_40966_fns isr_low_rssi_read fndecl 3 40966 NULL
+regmap_reg_ranges_read_file_fndecl_40973_fns regmap_reg_ranges_read_file fndecl 3 40973 NULL
+blk_mq_init_tags_fndecl_40986_fns blk_mq_init_tags fndecl 1 40986 NULL
++hwdep_write_fndecl_40987_fns hwdep_write fndecl 3 40987 NULL
+start_fb_cmap_41001_fns start fb_cmap 0 41001 NULL nohasharray
+gfn_to_page_fndecl_41001_fns gfn_to_page fndecl 2 41001 &start_fb_cmap_41001_fns
+nfsctl_transaction_write_fndecl_41011_fns nfsctl_transaction_write fndecl 3 41011 NULL
++proc_projid_map_write_fndecl_41017_fns proc_projid_map_write fndecl 3 41017 NULL
+rfkill_fop_write_fndecl_41019_fns rfkill_fop_write fndecl 3 41019 NULL
++num_qps_qed_rdma_info_41030_fns num_qps qed_rdma_info 0 41030 NULL
+lprocfs_write_u64_helper_fndecl_41059_fns lprocfs_write_u64_helper fndecl 2 41059 NULL
+userio_char_read_fndecl_41065_fns userio_char_read fndecl 3 41065 NULL
+qp_table_size_rvt_qp_ibdev_41075_fns qp_table_size rvt_qp_ibdev 0 41075 NULL
@@ -208141,13 +212466,14 @@ index 0000000..510c554
+iq_autocal_len_p54_common_41089_fns iq_autocal_len p54_common 0 41089 NULL
+sigma_fw_load_data_fndecl_41096_fns sigma_fw_load_data fndecl 3 41096 NULL
+input_leds_get_count_fndecl_41102_fns input_leds_get_count fndecl 0 41102 NULL
++nvmf_dev_write_fndecl_41118_fns nvmf_dev_write fndecl 3 41118 NULL
+ip_options_get_from_user_fndecl_41133_fns ip_options_get_from_user fndecl 4 41133 NULL
+data_len_b43_dfs_file_41135_fns data_len b43_dfs_file 0 41135 NULL
+nilfs_sufile_get_blkoff_fndecl_41139_fns nilfs_sufile_get_blkoff fndecl 0-2 41139 NULL
++hidp_process_report_fndecl_41140_fns hidp_process_report fndecl 4 41140 NULL
+usb_reset_and_verify_device_fndecl_41142_fns usb_reset_and_verify_device fndecl 0 41142 NULL
+calib_fail_count_read_fndecl_41171_fns calib_fail_count_read fndecl 3 41171 NULL
+suspend_dtim_interval_read_fndecl_41176_fns suspend_dtim_interval_read fndecl 3 41176 NULL
-+traceprobe_probes_write_fndecl_41178_fns traceprobe_probes_write fndecl 3 41178 NULL
+nr_pages_page_collect_41197_fns nr_pages page_collect 0 41197 NULL
+sq905_command_fndecl_41201_fns sq905_command fndecl 0 41201 NULL
+nr_acpi_bits_vardecl_xen_acpi_processor_c_41210_fns nr_acpi_bits vardecl_xen-acpi-processor.c 0 41210 NULL
@@ -208157,124 +212483,121 @@ index 0000000..510c554
+ies_len_connect_attr_41234_fns ies_len connect_attr 0 41234 NULL
+opera1_usb_i2c_msgxfer_fndecl_41242_fns opera1_usb_i2c_msgxfer fndecl 4 41242 NULL
+sel_write_validatetrans_fndecl_41243_fns sel_write_validatetrans fndecl 3 41243 NULL
-+iwl_dbgfs_ucode_tracing_write_fndecl_41247_fns iwl_dbgfs_ucode_tracing_write fndecl 3 41247 NULL
++ses_send_diag_fndecl_41244_fns ses_send_diag fndecl 4 41244 NULL
+__apei_exec_run_fndecl_41248_fns __apei_exec_run fndecl 0 41248 NULL
+num_threads_acpi_db_method_info_41261_fns num_threads acpi_db_method_info 0 41261 NULL
++frame_interval_tw5864_input_41274_fns frame_interval tw5864_input 0 41274 NULL
+vb2_queue_init_fndecl_41292_fns vb2_queue_init fndecl 0 41292 NULL
+kfd_set_pasid_limit_fndecl_41300_fns kfd_set_pasid_limit fndecl 1 41300 NULL
+img_SRAM_size_fw_hdr_41311_fns img_SRAM_size fw_hdr 0 41311 NULL nohasharray
+d40_size_2_dmalen_fndecl_41311_fns d40_size_2_dmalen fndecl 0-3-2-1 41311 &img_SRAM_size_fw_hdr_41311_fns
-+cma_declare_contiguous_fndecl_41316_fns cma_declare_contiguous fndecl 2-5 41316 NULL
++cma_declare_contiguous_fndecl_41316_fns cma_declare_contiguous fndecl 5 41316 NULL
++gb_loopback_sync_sink_fndecl_41337_fns gb_loopback_sync_sink fndecl 2 41337 NULL
+fanotify_write_fndecl_41340_fns fanotify_write fndecl 3 41340 NULL
+regmap_read_debugfs_fndecl_41345_fns regmap_read_debugfs fndecl 5 41345 NULL
+tlbflush_read_file_fndecl_41350_fns tlbflush_read_file fndecl 3 41350 NULL
+efx_tsoh_get_buffer_fndecl_41355_fns efx_tsoh_get_buffer fndecl 3 41355 NULL
+usb_stor_probe1_fndecl_41357_fns usb_stor_probe1 fndecl 0 41357 NULL
+rx_rx_out_of_mpdu_nodes_read_fndecl_41359_fns rx_rx_out_of_mpdu_nodes_read fndecl 3 41359 NULL
-+_iwl_dbgfs_d0i3_refs_write_fndecl_41361_fns _iwl_dbgfs_d0i3_refs_write fndecl 3 41361 NULL
-+snic_dump_desc_fndecl_41372_fns snic_dump_desc fndecl 3 41372 NULL
++gb_loopback_async_transfer_fndecl_41372_fns gb_loopback_async_transfer fndecl 2 41372 NULL
+max_frame_size_mgsl_struct_41374_fns max_frame_size mgsl_struct 0 41374 NULL
+TupleDataMax_tuple_t_41376_fns TupleDataMax tuple_t 0 41376 NULL
+l_tree_depth_ocfs2_extent_list_41398_fns l_tree_depth ocfs2_extent_list 0 41398 NULL
+nr_free_zone_pages_fndecl_41403_fns nr_free_zone_pages fndecl 0 41403 NULL
+virtio_cread8_fndecl_41431_fns virtio_cread8 fndecl 0 41431 NULL
-+dapm_bias_read_file_fndecl_41432_fns dapm_bias_read_file fndecl 3 41432 NULL
-+__feat_register_sp_fndecl_41435_fns __feat_register_sp fndecl 6 41435 NULL
-+rt2x00debug_write_csr_fndecl_41442_fns rt2x00debug_write_csr fndecl 3 41442 NULL
++addr_nvme_keyed_sgl_desc_41437_fns addr nvme_keyed_sgl_desc 0 41437 NULL
+sensor_write_reg_fndecl_41455_fns sensor_write_reg fndecl 0 41455 NULL
+squashfs_read_inode_lookup_table_fndecl_41456_fns squashfs_read_inode_lookup_table fndecl 4 41456 NULL
+bio_map_kern_fndecl_41468_fns bio_map_kern fndecl 3 41468 NULL
+redirected_tty_write_fndecl_41474_fns redirected_tty_write fndecl 3 41474 NULL
+get_var_len_fndecl_41483_fns get_var_len fndecl 0 41483 NULL
-+_iwl_dbgfs_quota_min_write_fndecl_41492_fns _iwl_dbgfs_quota_min_write fndecl 3 41492 NULL
+compat_core_sys_select_fndecl_41494_fns compat_core_sys_select fndecl 1 41494 NULL
+unpack_array_fndecl_41525_fns unpack_array fndecl 0 41525 NULL
-+pci_vpd_find_tag_fndecl_41534_fns pci_vpd_find_tag fndecl 0 41534 NULL
++pci_vpd_find_tag_fndecl_41534_fns pci_vpd_find_tag fndecl 0-2 41534 NULL
+alloc_cpu_rmap_fndecl_41536_fns alloc_cpu_rmap fndecl 1 41536 NULL
+max_nr_ports_virtio_console_config_41559_fns max_nr_ports virtio_console_config 0 41559 NULL
+fpa_set_fndecl_41560_fns fpa_set fndecl 3-4 41560 NULL
+dma_rx_requested_read_fndecl_41561_fns dma_rx_requested_read fndecl 3 41561 NULL
+stv0680_handle_error_fndecl_41563_fns stv0680_handle_error fndecl 0-2 41563 NULL
+__alloc_bootmem_nopanic_fndecl_41574_fns __alloc_bootmem_nopanic fndecl 1 41574 NULL
-+__read_vmcore_fndecl_41577_fns __read_vmcore fndecl 2 41577 NULL
+iio_device_add_channel_sysfs_fndecl_41581_fns iio_device_add_channel_sysfs fndecl 0 41581 NULL
+pwr_sleep_percent_read_fndecl_41600_fns pwr_sleep_percent_read fndecl 3 41600 NULL
+xpc_kzalloc_cacheline_aligned_fndecl_41610_fns xpc_kzalloc_cacheline_aligned fndecl 1 41610 NULL
+device_add_groups_fndecl_41628_fns device_add_groups fndecl 0 41628 NULL
+drm_calloc_large_fndecl_41630_fns drm_calloc_large fndecl 1-2 41630 NULL
++__vfs_getxattr_fndecl_41631_fns __vfs_getxattr fndecl 0 41631 NULL
+tx_ring_size_jme_adapter_41640_fns tx_ring_size jme_adapter 0 41640 NULL
+clear_user_fndecl_41645_fns clear_user fndecl 2 41645 NULL
-+dpcm_state_read_file_fndecl_41666_fns dpcm_state_read_file fndecl 3 41666 NULL
++usb_alloc_coherent_fndecl_41655_fns usb_alloc_coherent fndecl 2 41655 NULL
+error_null_frame_cts_start_read_fndecl_41668_fns error_null_frame_cts_start_read fndecl 3 41668 NULL
+nvme_trans_standard_inquiry_page_fndecl_41701_fns nvme_trans_standard_inquiry_page fndecl 4 41701 NULL
+tree_mod_log_eb_copy_fndecl_41708_fns tree_mod_log_eb_copy fndecl 6 41708 NULL
++xp_max_npartitions_vardecl_41728_fns xp_max_npartitions vardecl 0 41728 NULL
+gfs2_dir_mvino_fndecl_41733_fns gfs2_dir_mvino fndecl 4 41733 NULL
+v4l2_ctrl_handler_init_class_fndecl_41742_fns v4l2_ctrl_handler_init_class fndecl 2 41742 NULL
+insert_dent_fndecl_41753_fns insert_dent fndecl 7 41753 NULL
+vop_virtio_copy_to_user_fndecl_41756_fns vop_virtio_copy_to_user fndecl 4-3 41756 NULL
-+ovs_nla_add_action_fndecl_41757_fns ovs_nla_add_action fndecl 4-0 41757 NULL
+__alloc_bootmem_node_high_fndecl_41767_fns __alloc_bootmem_node_high fndecl 2 41767 NULL
-+batadv_socket_write_fndecl_41768_fns batadv_socket_write fndecl 3 41768 NULL
++tc_action_net_init_fndecl_41775_fns tc_action_net_init fndecl 3 41775 NULL
+pcibios_enable_device_fndecl_41776_fns pcibios_enable_device fndecl 0 41776 NULL
+outlen_mlx5_cmd_debug_41806_fns outlen mlx5_cmd_debug 0 41806 NULL
-+ath9k_dump_mci_btcoex_fndecl_41809_fns ath9k_dump_mci_btcoex fndecl 0 41809 NULL
+scsi_add_host_with_dma_fndecl_41814_fns scsi_add_host_with_dma fndecl 0 41814 NULL
-+i2c_bus_write_fndecl_41846_fns i2c_bus_write fndecl 0 41846 NULL
++cpia2_usb_transfer_cmd_fndecl_41834_fns cpia2_usb_transfer_cmd fndecl 5 41834 NULL
+nf_setsockopt_fndecl_41852_fns nf_setsockopt fndecl 0 41852 NULL
++num_pbls_qedr_pbl_info_41871_fns num_pbls qedr_pbl_info 0 41871 NULL
+from_seq_file_41897_fns from seq_file 0 41897 NULL
++vid_batadv_tvlv_tt_vlan_data_41912_fns vid batadv_tvlv_tt_vlan_data 0 41912 NULL
+b_read_mon_reader_bin_41923_fns b_read mon_reader_bin 0 41923 NULL nohasharray
+print_endpoint_stat_fndecl_41923_fns print_endpoint_stat fndecl 0-4 41923 &b_read_mon_reader_bin_41923_fns
-+whci_n_caps_fndecl_41932_fns whci_n_caps fndecl 0 41932 NULL
+rx_rx_done_read_fndecl_41938_fns rx_rx_done_read fndecl 3 41938 NULL
+compat_packet_setsockopt_fndecl_41954_fns compat_packet_setsockopt fndecl 5 41954 NULL
+intel_atomic_legacy_gamma_set_fndecl_41955_fns intel_atomic_legacy_gamma_set fndecl 5 41955 NULL
-+xfs_hex_dump_fndecl_41963_fns xfs_hex_dump fndecl 2 41963 NULL
-+kmalloc_parameter_fndecl_41964_fns kmalloc_parameter fndecl 1 41964 NULL
-+max_req_queues_qla_hw_data_41977_fns max_req_queues qla_hw_data 0 41977 NULL
++kmalloc_parameter_fndecl_41964_fns kmalloc_parameter fndecl 1 41964 NULL nohasharray
++ccp_reverse_get_dm_area_fndecl_41964_fns ccp_reverse_get_dm_area fndecl 3 41964 &kmalloc_parameter_fndecl_41964_fns nohasharray
++connector_dcb_output_41964_fns connector dcb_output 0 41964 &ccp_reverse_get_dm_area_fndecl_41964_fns
++length_ccp_dm_workarea_41966_fns length ccp_dm_workarea 0 41966 NULL
+__send_control_msg_fndecl_41986_fns __send_control_msg fndecl 0 41986 NULL
+snd_pcm_oss_read1_fndecl_41992_fns snd_pcm_oss_read1 fndecl 3 41992 NULL
+snd_opl4_mem_proc_read_fndecl_41997_fns snd_opl4_mem_proc_read fndecl 5 41997 NULL
+selinux_secctx_to_secid_fndecl_42003_fns selinux_secctx_to_secid fndecl 2 42003 NULL
+set_flicker_fndecl_42011_fns set_flicker fndecl 0 42011 NULL
+__ieee80211_start_rx_ba_session_fndecl_42023_fns __ieee80211_start_rx_ba_session fndecl 7 42023 NULL
++seq_ports_snd_emu10k1_synth_arg_42026_fns seq_ports snd_emu10k1_synth_arg 0 42026 NULL
+copy_nodes_to_user_fndecl_42028_fns copy_nodes_to_user fndecl 2 42028 NULL
+mwifiex_11n_create_rx_reorder_tbl_fndecl_42029_fns mwifiex_11n_create_rx_reorder_tbl fndecl 4 42029 NULL
+spidev_compat_ioctl_fndecl_42033_fns spidev_compat_ioctl fndecl 2 42033 NULL
+regmap_multi_reg_write_fndecl_42049_fns regmap_multi_reg_write fndecl 3 42049 NULL
-+sel_write_load_fndecl_42053_fns sel_write_load fndecl 3 42053 NULL
+namelen_xenpf_symdata_42085_fns namelen xenpf_symdata 0 42085 NULL
-+read_page_owner_fndecl_42094_fns read_page_owner fndecl 3 42094 NULL
++raw_issuer_size_x509_certificate_42091_fns raw_issuer_size x509_certificate 0 42091 NULL
+do_syslog_fndecl_42100_fns do_syslog fndecl 3 42100 NULL
++proc_pid_attr_write_fndecl_42102_fns proc_pid_attr_write fndecl 3 42102 NULL
+tid_used_hfi1_filedata_42109_fns tid_used hfi1_filedata 0 42109 NULL
+jbd2_journal_init_dev_fndecl_42115_fns jbd2_journal_init_dev fndecl 5 42115 NULL
+snd_compr_write_fndecl_42144_fns snd_compr_write fndecl 3 42144 NULL
+__team_options_register_fndecl_42198_fns __team_options_register fndecl 3 42198 NULL
++reg_count_cpia2_command_42201_fns reg_count cpia2_command 0 42201 NULL
+construct_key_and_link_fndecl_42210_fns construct_key_and_link fndecl 3 42210 NULL
+num_q_vectors_igb_adapter_42232_fns num_q_vectors igb_adapter 0 42232 NULL
++cur_count_of_phandle_iterator_42243_fns cur_count of_phandle_iterator 0 42243 NULL
+len_wmi_tlv_42244_fns len wmi_tlv 0 42244 NULL
+nchunks_radeon_cs_parser_42251_fns nchunks radeon_cs_parser 0 42251 NULL
-+iwl_dbgfs_bcast_filters_read_fndecl_42258_fns iwl_dbgfs_bcast_filters_read fndecl 3 42258 NULL
+read_kcore_fndecl_42259_fns read_kcore fndecl 3 42259 NULL
+snd_pcm_plug_write_transfer_fndecl_42268_fns snd_pcm_plug_write_transfer fndecl 3 42268 NULL
+write_file_spectral_period_fndecl_42275_fns write_file_spectral_period fndecl 3 42275 NULL
-+f2fs_kmalloc_fndecl_42279_fns f2fs_kmalloc fndecl 1 42279 NULL nohasharray
-+num_loaded_gcov_node_42279_fns num_loaded gcov_node 0 42279 &f2fs_kmalloc_fndecl_42279_fns
-+append_to_buffer_fndecl_42285_fns append_to_buffer fndecl 3 42285 NULL
+efx_mcdi_rpc_async_fndecl_42298_fns efx_mcdi_rpc_async fndecl 4-5 42298 NULL
++ubi_more_leb_change_data_fndecl_42301_fns ubi_more_leb_change_data fndecl 4 42301 NULL
+rproc_alloc_fndecl_42314_fns rproc_alloc fndecl 5 42314 NULL
+kvm_write_guest_page_fndecl_42320_fns kvm_write_guest_page fndecl 5-2 42320 NULL
+soc_tplg_dapm_widget_dbytes_create_fndecl_42336_fns soc_tplg_dapm_widget_dbytes_create fndecl 2 42336 NULL
++mlx4_ib_alloc_cq_buf_fndecl_42345_fns mlx4_ib_alloc_cq_buf fndecl 3 42345 NULL
+hid_report_len_fndecl_42374_fns hid_report_len fndecl 0 42374 NULL
+salt_size_dm_verity_42377_fns salt_size dm_verity 0 42377 NULL
+mlx5_wq_ll_get_size_fndecl_42379_fns mlx5_wq_ll_get_size fndecl 0 42379 NULL
+num_cache_leaves_vardecl_intel_cacheinfo_c_42390_fns num_cache_leaves vardecl_intel_cacheinfo.c 0 42390 NULL
-+no_of_vpath_vxgedev_42396_fns no_of_vpath vxgedev 0 42396 NULL
-+maximum_v4l2_ctrl_42407_fns maximum v4l2_ctrl 0 42407 NULL
+hidraw_ioctl_fndecl_42425_fns hidraw_ioctl fndecl 2 42425 NULL
+bin_search_fndecl_42434_fns bin_search fndecl 0 42434 NULL
+write_file_spectral_fft_period_fndecl_42435_fns write_file_spectral_fft_period fndecl 3 42435 NULL
+rx_ring_size_jme_adapter_42440_fns rx_ring_size jme_adapter 0 42440 NULL
-+rtl92ee_c2h_packet_handler_fndecl_42467_fns rtl92ee_c2h_packet_handler fndecl 3 42467 NULL
+max_allowed_qxl_monitors_config_42481_fns max_allowed qxl_monitors_config 0 42481 NULL
+hid_sensor_client_cnt_sensor_hub_data_42488_fns hid_sensor_client_cnt sensor_hub_data 0 42488 NULL
+bpf_check_classic_fndecl_42501_fns bpf_check_classic fndecl 2 42501 NULL
@@ -208282,50 +212605,50 @@ index 0000000..510c554
+qla8044_write_optrom_data_fndecl_42561_fns qla8044_write_optrom_data fndecl 4 42561 NULL
+ts_write_fndecl_42563_fns ts_write fndecl 3 42563 NULL
+usbtmc_write_fndecl_42567_fns usbtmc_write fndecl 3 42567 NULL
++mwifiex_send_addba_fndecl_42572_fns mwifiex_send_addba fndecl 2 42572 NULL
++restart_rc_fndecl_42573_fns restart_rc fndecl 2 42573 NULL
+ilo_write_fndecl_42601_fns ilo_write fndecl 3 42601 NULL nohasharray
+ndev_init_isr_fndecl_42601_fns ndev_init_isr fndecl 3 42601 &ilo_write_fndecl_42601_fns
++nilfs_alloc_seg_bio_fndecl_42604_fns nilfs_alloc_seg_bio fndecl 3 42604 NULL
+qlcnic_82xx_calculate_msix_vector_fndecl_42609_fns qlcnic_82xx_calculate_msix_vector fndecl 0 42609 NULL
+vendor_diag_write_fndecl_42612_fns vendor_diag_write fndecl 3 42612 NULL
+hashsize_Qdisc_class_hash_42616_fns hashsize Qdisc_class_hash 0 42616 NULL
+user_regset_copyin_fndecl_42619_fns user_regset_copyin fndecl 7 42619 NULL
+wlc_phy_loadsampletable_nphy_fndecl_42620_fns wlc_phy_loadsampletable_nphy fndecl 3 42620 NULL
++ir_lirc_transmit_ir_fndecl_42624_fns ir_lirc_transmit_ir fndecl 3 42624 NULL
+rx_hdr_overflow_read_fndecl_42628_fns rx_hdr_overflow_read fndecl 3 42628 NULL
+pidlist_allocate_fndecl_42631_fns pidlist_allocate fndecl 1 42631 NULL
++nr_io_queues_nvmf_ctrl_options_42644_fns nr_io_queues nvmf_ctrl_options 0 42644 NULL
+__kfifo_dma_out_finish_r_fndecl_42656_fns __kfifo_dma_out_finish_r fndecl 2 42656 NULL
+keyctl_get_security_fndecl_42673_fns keyctl_get_security fndecl 3 42673 NULL
+num_rx_bds_bcm_sysport_priv_42683_fns num_rx_bds bcm_sysport_priv 0 42683 NULL
+read_file_spectral_short_repeat_fndecl_42684_fns read_file_spectral_short_repeat fndecl 3 42684 NULL
+oom_adj_write_fndecl_42687_fns oom_adj_write fndecl 3 42687 NULL
++ccp_update_sg_workarea_fndecl_42688_fns ccp_update_sg_workarea fndecl 2 42688 NULL
+data_size_dm_ioctl_42701_fns data_size dm_ioctl 0 42701 NULL
-+brcmf_fil_bsscfg_data_get_fndecl_42728_fns brcmf_fil_bsscfg_data_get fndecl 4 42728 NULL
+handle_abnormal_pfn_fndecl_42730_fns handle_abnormal_pfn fndecl 3 42730 NULL
-+p54_parse_rssical_fndecl_42750_fns p54_parse_rssical fndecl 3 42750 NULL
++gb_control_get_manifest_size_operation_fndecl_42744_fns gb_control_get_manifest_size_operation fndecl 0 42744 NULL
++mlx5_fc_stats_query_fndecl_42750_fns mlx5_fc_stats_query fndecl 3 42750 NULL
+read_file_frameerrors_fndecl_42770_fns read_file_frameerrors fndecl 3 42770 NULL
-+sync_maxlen_ipvs_sync_daemon_cfg_42773_fns sync_maxlen ipvs_sync_daemon_cfg 0 42773 NULL
+ssid_len_ath6kl_vif_42784_fns ssid_len ath6kl_vif 0 42784 NULL
-+sl_realloc_bufs_fndecl_42821_fns sl_realloc_bufs fndecl 2 42821 NULL
+lbs_highrssi_read_fndecl_42826_fns lbs_highrssi_read fndecl 3 42826 NULL
+pcifront_bus_write_fndecl_42836_fns pcifront_bus_write fndecl 5 42836 NULL
+dlfb_ops_write_fndecl_42885_fns dlfb_ops_write fndecl 3 42885 NULL
-+snic_req_init_fndecl_42890_fns snic_req_init fndecl 2 42890 NULL
+number_of_tds_fndecl_42895_fns number_of_tds fndecl 0 42895 NULL
+init_bch_fndecl_42897_fns init_bch fndecl 1-2 42897 NULL
+length_drm_property_blob_42912_fns length drm_property_blob 0 42912 NULL
+do_command_extended_fndecl_42913_fns do_command_extended fndecl 0 42913 NULL
-+carl9170_handle_command_response_fndecl_42930_fns carl9170_handle_command_response fndecl 3 42930 NULL
+bnx2x_vf_mcast_fndecl_42933_fns bnx2x_vf_mcast fndecl 4 42933 NULL
+wm_coeff_tlv_get_fndecl_42961_fns wm_coeff_tlv_get fndecl 3 42961 NULL
+pof_reclen_boot_data_42966_fns pof_reclen boot_data 0 42966 NULL
+ea_len_fndecl_42998_fns ea_len fndecl 0 42998 NULL
+obd_ioctl_popdata_fndecl_43014_fns obd_ioctl_popdata fndecl 3 43014 NULL
-+key_replays_read_fndecl_43017_fns key_replays_read fndecl 3 43017 NULL
-+quirk_simultaneous_discovery_write_fndecl_43076_fns quirk_simultaneous_discovery_write fndecl 3 43076 NULL
+rx_fcs_err_read_fndecl_43119_fns rx_fcs_err_read fndecl 3 43119 NULL
+ndev_init_isr_fndecl_43138_fns ndev_init_isr fndecl 3 43138 NULL
+kvm_vcpu_gfn_to_pfn_fndecl_43158_fns kvm_vcpu_gfn_to_pfn fndecl 2 43158 NULL
++hpi_read_word_fndecl_43165_fns hpi_read_word fndecl 0 43165 NULL
+getdqbuf_fndecl_43183_fns getdqbuf fndecl 1 43183 NULL
+aoechr_write_fndecl_43184_fns aoechr_write fndecl 3 43184 NULL
-+if_spi_host_to_card_fndecl_43193_fns if_spi_host_to_card fndecl 4 43193 NULL
+nilfs_cpfile_block_get_snapshot_list_fndecl_43198_fns nilfs_cpfile_block_get_snapshot_list fndecl 2 43198 NULL
+root_id___prelim_ref_43204_fns root_id __prelim_ref 0 43204 NULL
+try_async_pf_fndecl_43217_fns try_async_pf fndecl 3 43217 NULL
@@ -208334,28 +212657,27 @@ index 0000000..510c554
+agp_create_user_memory_fndecl_43256_fns agp_create_user_memory fndecl 1 43256 NULL
+persistent_ram_new_fndecl_43278_fns persistent_ram_new fndecl 1-2 43278 NULL
+of_property_read_string_array_fndecl_43294_fns of_property_read_string_array fndecl 0 43294 NULL
++__netdev_adjacent_dev_insert_fndecl_43317_fns __netdev_adjacent_dev_insert fndecl 0 43317 NULL
+qib_refresh_qsfp_cache_fndecl_43328_fns qib_refresh_qsfp_cache fndecl 0 43328 NULL
+debugfs_read_fndecl_43348_fns debugfs_read fndecl 3 43348 NULL
+__kmalloc_node_track_caller_fndecl_43349_fns __kmalloc_node_track_caller fndecl 1 43349 NULL
++entry_size_xpc_channel_43351_fns entry_size xpc_channel 0 43351 NULL
+get_subdir_fndecl_43366_fns get_subdir fndecl 3 43366 NULL
+compat_SyS_rt_sigpending_fndecl_43367_fns compat_SyS_rt_sigpending fndecl 2 43367 NULL
+xfrm_user_policy_fndecl_43390_fns xfrm_user_policy fndecl 4 43390 NULL
+init_range_memory_mapping_fndecl_43414_fns init_range_memory_mapping fndecl 1-2 43414 NULL
+pof_write_open_fndecl_43418_fns pof_write_open fndecl 0 43418 NULL
+lpfc_sli4_queue_alloc_fndecl_43429_fns lpfc_sli4_queue_alloc fndecl 3 43429 NULL
-+memblock_alloc_nid_fndecl_43439_fns memblock_alloc_nid fndecl 1 43439 NULL
+fsg_common_set_num_buffers_fndecl_43440_fns fsg_common_set_num_buffers fndecl 2 43440 NULL
+dut_mode_write_fndecl_43445_fns dut_mode_write fndecl 3 43445 NULL
+eeprom_len_adm8211_priv_43457_fns eeprom_len adm8211_priv 0 43457 NULL
+printer_req_alloc_fndecl_43468_fns printer_req_alloc fndecl 2 43468 NULL
++bioset_integrity_create_fndecl_43495_fns bioset_integrity_create fndecl 2 43495 NULL
+ieee80211_set_probe_resp_fndecl_43519_fns ieee80211_set_probe_resp fndecl 3 43519 NULL
+ptp_read_fndecl_43520_fns ptp_read fndecl 4 43520 NULL
-+_iwl_dbgfs_rx_phyinfo_write_fndecl_43525_fns _iwl_dbgfs_rx_phyinfo_write fndecl 3 43525 NULL
+xfs_dir2_leaf_getdents_fndecl_43533_fns xfs_dir2_leaf_getdents fndecl 3 43533 NULL
-+ib_create_send_mad_fndecl_43569_fns ib_create_send_mad fndecl 5 43569 NULL
-+ath10k_read_fw_dbglog_fndecl_43592_fns ath10k_read_fw_dbglog fndecl 3 43592 NULL
-+ssize_datafab_info_43610_fns ssize datafab_info 0 43610 NULL
-+chipshift_cfi_private_43621_fns chipshift cfi_private 0 43621 NULL
++ccp_fill_queue_buf_fndecl_43580_fns ccp_fill_queue_buf fndecl 0 43580 NULL
++nfsd_vfs_read_fndecl_43608_fns nfsd_vfs_read fndecl 5 43608 NULL
+__vb2_get_done_vb_fndecl_43624_fns __vb2_get_done_vb fndecl 0 43624 NULL
+edac_pci_alloc_ctl_info_fndecl_43663_fns edac_pci_alloc_ctl_info fndecl 1 43663 NULL nohasharray
+usbnet_read_cmd_nopm_fndecl_43663_fns usbnet_read_cmd_nopm fndecl 7 43663 &edac_pci_alloc_ctl_info_fndecl_43663_fns
@@ -208371,139 +212693,128 @@ index 0000000..510c554
+generic_file_fsync_fndecl_43780_fns generic_file_fsync fndecl 2-3 43780 NULL
+len_nft_set_ext_tmpl_43815_fns len nft_set_ext_tmpl 0 43815 NULL
+omap_dma_prep_slave_sg_fndecl_43825_fns omap_dma_prep_slave_sg fndecl 3 43825 NULL
-+unlink1_fndecl_43840_fns unlink1 fndecl 3 43840 NULL
+br_fdb_external_learn_add_fndecl_43850_fns br_fdb_external_learn_add fndecl 4 43850 NULL
-+iwl_dbgfs_fw_rx_stats_read_fndecl_43853_fns iwl_dbgfs_fw_rx_stats_read fndecl 3 43853 NULL
+scsi_host_alloc_fndecl_43858_fns scsi_host_alloc fndecl 2 43858 NULL
+Xdsdt_acpi_table_fadt_43871_fns Xdsdt acpi_table_fadt 0 43871 NULL
-+sisusb_copy_memory_fndecl_43909_fns sisusb_copy_memory fndecl 4 43909 NULL
-+iwl_dbgfs_sensitivity_read_fndecl_43935_fns iwl_dbgfs_sensitivity_read fndecl 3 43935 NULL
-+iwl_mvm_coex_dump_mbox_fndecl_43938_fns iwl_mvm_coex_dump_mbox fndecl 0-3 43938 NULL
+sddr09_readX_fndecl_43951_fns sddr09_readX fndecl 7 43951 NULL
-+brcmf_fil_cmd_data_set_fndecl_43952_fns brcmf_fil_cmd_data_set fndecl 4 43952 NULL
+hfsplus_file_fsync_fndecl_43969_fns hfsplus_file_fsync fndecl 2-3 43969 NULL
+smk_write_revoke_subj_fndecl_43990_fns smk_write_revoke_subj fndecl 3 43990 NULL
+vme_master_read_fndecl_44006_fns vme_master_read fndecl 0 44006 NULL
-+nr_chnls_nvm_dev_44026_fns nr_chnls nvm_dev 0 44026 NULL nohasharray
-+_iwl_dbgfs_stop_ctdp_write_fndecl_44026_fns _iwl_dbgfs_stop_ctdp_write fndecl 3 44026 &nr_chnls_nvm_dev_44026_fns
++nr_chnls_nvm_dev_44026_fns nr_chnls nvm_dev 0 44026 NULL
+response_length_ib_uverbs_ex_create_qp_resp_44030_fns response_length ib_uverbs_ex_create_qp_resp 0 44030 NULL
+wilc_gnrl_async_info_received_fndecl_44034_fns wilc_gnrl_async_info_received fndecl 3 44034 NULL
-+fragmentation_threshold_read_fndecl_44037_fns fragmentation_threshold_read fndecl 3 44037 NULL
++init_pkru_write_file_fndecl_44041_fns init_pkru_write_file fndecl 3 44041 NULL
+nfp_net_set_ring_size_fndecl_44050_fns nfp_net_set_ring_size fndecl 3-2 44050 NULL
+nr_rings_xen_blkif_44058_fns nr_rings xen_blkif 0 44058 NULL
+prog_page_fndecl_44060_fns prog_page fndecl 2 44060 NULL
-+mb_cache_create_fndecl_44082_fns mb_cache_create fndecl 1 44082 NULL nohasharray
-+debug_pmt_fndecl_44082_fns debug_pmt fndecl 2 44082 &mb_cache_create_fndecl_44082_fns
-+read_file_regval_fndecl_44093_fns read_file_regval fndecl 3 44093 NULL
-+num_counter_active_fndecl_44110_fns num_counter_active fndecl 0 44110 NULL
-+mls_compute_context_len_fndecl_44135_fns mls_compute_context_len fndecl 0 44135 NULL nohasharray
-+udp_sendmsg_fndecl_44135_fns udp_sendmsg fndecl 3 44135 &mls_compute_context_len_fndecl_44135_fns
++mb_cache_create_fndecl_44082_fns mb_cache_create fndecl 1 44082 NULL
++udp_sendmsg_fndecl_44135_fns udp_sendmsg fndecl 3 44135 NULL nohasharray
++mls_compute_context_len_fndecl_44135_fns mls_compute_context_len fndecl 0 44135 &udp_sendmsg_fndecl_44135_fns
++gb_operation_sync_timeout_fndecl_44156_fns gb_operation_sync_timeout fndecl 4 44156 NULL
++bfad_debugfs_write_regwr_fndecl_44162_fns bfad_debugfs_write_regwr fndecl 3 44162 NULL
+error_tx_abort_failure_read_fndecl_44184_fns error_tx_abort_failure_read fndecl 3 44184 NULL
+evdev_compute_buffer_size_fndecl_44212_fns evdev_compute_buffer_size fndecl 0 44212 NULL
+SYSC_lsetxattr_fndecl_44222_fns SYSC_lsetxattr fndecl 4 44222 NULL
-+clear_refs_write_fndecl_44227_fns clear_refs_write fndecl 3 44227 NULL
+it_context_support_fw_ohci_44232_fns it_context_support fw_ohci 0 44232 NULL
-+rx_filter_arp_filter_read_fndecl_44233_fns rx_filter_arp_filter_read fndecl 3 44233 NULL
++rx_filter_arp_filter_read_fndecl_44233_fns rx_filter_arp_filter_read fndecl 3 44233 NULL nohasharray
++ima_store_measurement_fndecl_44233_fns ima_store_measurement fndecl 5 44233 &rx_filter_arp_filter_read_fndecl_44233_fns
+au0828_init_isoc_fndecl_44238_fns au0828_init_isoc fndecl 3 44238 NULL
+spk_xs_vardecl_44242_fns spk_xs vardecl 0 44242 NULL
-+features_virtio_device_44247_fns features virtio_device 0 44247 NULL
+lprocfs_write_frac_u64_helper_fndecl_44250_fns lprocfs_write_frac_u64_helper fndecl 2 44250 NULL
+roundup_ring_size_fndecl_44254_fns roundup_ring_size fndecl 0 44254 NULL
+gfn_to_pfn_memslot_atomic_fndecl_44264_fns gfn_to_pfn_memslot_atomic fndecl 2 44264 NULL
-+il4965_ucode_rx_stats_read_fndecl_44271_fns il4965_ucode_rx_stats_read fndecl 3 44271 NULL
-+efi_get_runtime_map_size_fndecl_44276_fns efi_get_runtime_map_size fndecl 0 44276 NULL
-+mlxsw_core_reg_access_fndecl_44306_fns mlxsw_core_reg_access fndecl 0 44306 NULL
++NumberOfPorts_mpt3sas_facts_44306_fns NumberOfPorts mpt3sas_facts 0 44306 NULL nohasharray
++mlxsw_core_reg_access_fndecl_44306_fns mlxsw_core_reg_access fndecl 0 44306 &NumberOfPorts_mpt3sas_facts_44306_fns
++bytesused_cx18_buffer_44339_fns bytesused cx18_buffer 0 44339 NULL
+snd_pcm_lib_writev_transfer_fndecl_44344_fns snd_pcm_lib_writev_transfer fndecl 5 44344 NULL
+btrfs_item_size_fndecl_44350_fns btrfs_item_size fndecl 0 44350 NULL
+pwm_buf_sz_usbdux_private_44375_fns pwm_buf_sz usbdux_private 0 44375 NULL
-+wmi_evt_connect_fndecl_44385_fns wmi_evt_connect fndecl 4 44385 NULL
++dvb_net_ioctl_fndecl_44388_fns dvb_net_ioctl fndecl 2 44388 NULL
+hidpp_prefix_name_fndecl_44393_fns hidpp_prefix_name fndecl 2 44393 NULL
+num_rx_rings_nfp_net_44395_fns num_rx_rings nfp_net 0 44395 NULL
+drbd_create_device_fndecl_44410_fns drbd_create_device fndecl 2 44410 NULL
+ept_gpte_to_gfn_lvl_fndecl_44420_fns ept_gpte_to_gfn_lvl fndecl 0-2-1 44420 NULL
+seq_open_private_fndecl_44422_fns seq_open_private fndecl 3 44422 NULL
-+__get_vm_area_fndecl_44428_fns __get_vm_area fndecl 1 44428 NULL
-+ieee80211_if_read_rc_rateidx_mask_2ghz_fndecl_44433_fns ieee80211_if_read_rc_rateidx_mask_2ghz fndecl 3 44433 NULL
++rq_ecount_lpfc_sli4_hba_44428_fns rq_ecount lpfc_sli4_hba 0 44428 NULL
+fan_proc_write_fndecl_44434_fns fan_proc_write fndecl 3 44434 NULL
+fd_do_rw_fndecl_44435_fns fd_do_rw fndecl 5 44435 NULL
+nchunks_amdgpu_cs_parser_44436_fns nchunks amdgpu_cs_parser 0 44436 NULL
+get_pages_array_fndecl_44453_fns get_pages_array fndecl 1 44453 NULL
+configfs_write_file_fndecl_44454_fns configfs_write_file fndecl 3 44454 NULL
+__get_inode_info_fndecl_44463_fns __get_inode_info fndecl 0 44463 NULL
++cx2341x_handler_init_fndecl_44466_fns cx2341x_handler_init fndecl 2 44466 NULL
+seq_count_iscsi_cmd_44476_fns seq_count iscsi_cmd 0 44476 NULL
-+resize_stripes_fndecl_44481_fns resize_stripes fndecl 2 44481 NULL
-+mei_dbgfs_read_state_fndecl_44492_fns mei_dbgfs_read_state fndecl 3 44492 NULL
++mmcies_max_wusbhc_44498_fns mmcies_max wusbhc 0 44498 NULL
+len_de4x5_ioctl_44508_fns len de4x5_ioctl 0 44508 NULL
+sddr09_read20_fndecl_44519_fns sddr09_read20 fndecl 4-3-6 44519 NULL
+filter_read_fndecl_44527_fns filter_read fndecl 3 44527 NULL
+smk_read_syslog_fndecl_44544_fns smk_read_syslog fndecl 3 44544 NULL
+numps_powernow_k8_data_44546_fns numps powernow_k8_data 0 44546 NULL
++hv_tsc_page_kvm_hv_44561_fns hv_tsc_page kvm_hv 0 44561 NULL
+ion_handle_test_dma_fndecl_44581_fns ion_handle_test_dma fndecl 4-5 44581 NULL
+maxcontacts_pm_44593_fns maxcontacts pm 0 44593 NULL
+len_poll_list_44603_fns len poll_list 0 44603 NULL
-+il_dbgfs_sram_read_fndecl_44619_fns il_dbgfs_sram_read fndecl 3 44619 NULL
-+log_page_size_mlx5_srq_attr_44642_fns log_page_size mlx5_srq_attr 0 44642 NULL
++of_io_request_and_map_fndecl_44605_fns of_io_request_and_map fndecl 2 44605 NULL
++len_nlm_lock_44646_fns len nlm_lock 0 44646 NULL
+bank_mask_stub_chip_44647_fns bank_mask stub_chip 0 44647 NULL
+udf_sb_alloc_partition_maps_fndecl_44666_fns udf_sb_alloc_partition_maps fndecl 2 44666 NULL nohasharray
+num_desc_pages__drm_via_sg_info_44666_fns num_desc_pages _drm_via_sg_info 0 44666 &udf_sb_alloc_partition_maps_fndecl_44666_fns
++flash_write_fndecl_44673_fns flash_write fndecl 3 44673 NULL
+xfpregs_set_fndecl_44680_fns xfpregs_set fndecl 4 44680 NULL
-+one_qsfp_read_fndecl_44705_fns one_qsfp_read fndecl 3-5 44705 NULL
-+asic_flags_write_fndecl_44717_fns asic_flags_write fndecl 3 44717 NULL
++length_ore_striping_info_44681_fns length ore_striping_info 0 44681 NULL
+altera_irscan_fndecl_44719_fns altera_irscan fndecl 2 44719 NULL
+register_netdevice_fndecl_44725_fns register_netdevice fndecl 0 44725 NULL
+kmalloc_order_fndecl_44727_fns kmalloc_order fndecl 1 44727 NULL
+amdgpu_job_alloc_fndecl_44730_fns amdgpu_job_alloc fndecl 2 44730 NULL
+erst_clearer_fndecl_44743_fns erst_clearer fndecl 2 44743 NULL
++max_phy_id_vardecl_x86_pkg_temp_thermal_c_44750_fns max_phy_id vardecl_x86_pkg_temp_thermal.c 0 44750 NULL
+brd_probe_fndecl_44758_fns brd_probe fndecl 1 44758 NULL
++sg_used_ccp_sg_workarea_44796_fns sg_used ccp_sg_workarea 0 44796 NULL
+fd_locked_ioctl_fndecl_44809_fns fd_locked_ioctl fndecl 3 44809 NULL
+ndev_debugfs_read_fndecl_44812_fns ndev_debugfs_read fndecl 3 44812 NULL
+count_atl1c_tpd_ring_44824_fns count atl1c_tpd_ring 0 44824 NULL
+squashfs_read_id_index_table_fndecl_44826_fns squashfs_read_id_index_table fndecl 4 44826 NULL
-+snprint_stack_trace_fndecl_44832_fns snprint_stack_trace fndecl 0 44832 NULL
+dequeue_event_fndecl_44835_fns dequeue_event fndecl 3 44835 NULL
-+xt_compat_match_offset_fndecl_44840_fns xt_compat_match_offset fndecl 0 44840 NULL nohasharray
-+acpi_parse_entries_array_fndecl_44840_fns acpi_parse_entries_array fndecl 0 44840 &xt_compat_match_offset_fndecl_44840_fns
++acpi_parse_entries_array_fndecl_44840_fns acpi_parse_entries_array fndecl 0 44840 NULL
+exofs_readpages_fndecl_44841_fns exofs_readpages fndecl 4 44841 NULL
++compat_do_readv_writev_fndecl_44857_fns compat_do_readv_writev fndecl 4 44857 NULL
+pmcraid_build_passthrough_ioadls_fndecl_44865_fns pmcraid_build_passthrough_ioadls fndecl 2 44865 NULL
+intel_setup_irq_remapping_fndecl_44868_fns intel_setup_irq_remapping fndecl 0 44868 NULL
-+num_resources_platform_device_44886_fns num_resources platform_device 0 44886 NULL
++rvt_set_page_fndecl_44884_fns rvt_set_page fndecl 2 44884 NULL
+SYSC_select_fndecl_44891_fns SYSC_select fndecl 1 44891 NULL
++inst_evtlog_size_iwl_fw_44893_fns inst_evtlog_size iwl_fw 0 44893 NULL
+do_pselect_fndecl_44926_fns do_pselect fndecl 1 44926 NULL
+device_add_attrs_fndecl_44964_fns device_add_attrs fndecl 0 44964 NULL
-+qib_diag_write_fndecl_44966_fns qib_diag_write fndecl 3 44966 NULL nohasharray
-+kobject_add_varg_fndecl_44966_fns kobject_add_varg fndecl 0 44966 &qib_diag_write_fndecl_44966_fns
-+prism54_wpa_bss_ie_get_fndecl_45006_fns prism54_wpa_bss_ie_get fndecl 0 45006 NULL
-+mlx5e_redirect_rqt_fndecl_45007_fns mlx5e_redirect_rqt fndecl 3 45007 NULL
++kobject_add_varg_fndecl_44966_fns kobject_add_varg fndecl 0 44966 NULL nohasharray
++qib_diag_write_fndecl_44966_fns qib_diag_write fndecl 3 44966 &kobject_add_varg_fndecl_44966_fns
+video_usercopy_fndecl_45012_fns video_usercopy fndecl 2 45012 NULL
++rd_size_hidp_session_45023_fns rd_size hidp_session 0 45023 NULL
+sock_kmalloc_fndecl_45038_fns sock_kmalloc fndecl 2 45038 NULL
-+write_file_dfs_fndecl_45047_fns write_file_dfs fndecl 3 45047 NULL
-+alloc_upcall_fndecl_45049_fns alloc_upcall fndecl 2 45049 NULL nohasharray
-+ib_uverbs_rereg_mr_fndecl_45049_fns ib_uverbs_rereg_mr fndecl 4-5 45049 &alloc_upcall_fndecl_45049_fns
-+nd_cmd_out_size_fndecl_45105_fns nd_cmd_out_size fndecl 0 45105 NULL nohasharray
-+head_timestamp_event_queue_45105_fns head timestamp_event_queue 0 45105 &nd_cmd_out_size_fndecl_45105_fns
++ib_uverbs_rereg_mr_fndecl_45049_fns ib_uverbs_rereg_mr fndecl 4-5 45049 NULL
++pitch_tmHWStreamParameters_45105_fns pitch tmHWStreamParameters 0 45105 NULL nohasharray
++head_timestamp_event_queue_45105_fns head timestamp_event_queue 0 45105 &pitch_tmHWStreamParameters_45105_fns
+dma_map_mr_pas_fndecl_45126_fns dma_map_mr_pas fndecl 3 45126 NULL
+copyout_from_xsaves_fndecl_45153_fns copyout_from_xsaves fndecl 2 45153 NULL
+pwc_get_fps_Nala_fndecl_45162_fns pwc_get_fps_Nala fndecl 0 45162 NULL
-+cmd_sg_cnt_srp_target_port_45169_fns cmd_sg_cnt srp_target_port 0 45169 NULL
-+n_ao_urbs_usbdux_private_45171_fns n_ao_urbs usbdux_private 0 45171 NULL
-+opticon_write_fndecl_45172_fns opticon_write fndecl 4 45172 NULL
-+acl_alloc_num_fndecl_45177_fns acl_alloc_num fndecl 1-2 45177 NULL
++num_mrs_qed_rdma_info_45171_fns num_mrs qed_rdma_info 0 45171 NULL nohasharray
++n_ao_urbs_usbdux_private_45171_fns n_ao_urbs usbdux_private 0 45171 &num_mrs_qed_rdma_info_45171_fns
++sel_write_checkreqprot_fndecl_45173_fns sel_write_checkreqprot fndecl 3 45173 NULL
++acl_alloc_num_fndecl_45177_fns acl_alloc_num fndecl 2-1 45177 NULL
+pwr_tx_with_ps_read_fndecl_45216_fns pwr_tx_with_ps_read fndecl 3 45216 NULL
+hsu_dma_alloc_desc_fndecl_45228_fns hsu_dma_alloc_desc fndecl 1 45228 NULL
+ext4_update_inline_data_fndecl_45259_fns ext4_update_inline_data fndecl 3 45259 NULL
+alloc_buf_fndecl_45267_fns alloc_buf fndecl 3 45267 NULL
-+uart_input_count_oxygen_45274_fns uart_input_count oxygen 0 45274 NULL
-+iio_debugfs_read_reg_fndecl_45311_fns iio_debugfs_read_reg fndecl 3 45311 NULL
++pstore_write_buf_user_compat_fndecl_45283_fns pstore_write_buf_user_compat fndecl 7 45283 NULL
++mgt_set_varlen_fndecl_45287_fns mgt_set_varlen fndecl 4 45287 NULL
+tstats_write_fndecl_45315_fns tstats_write fndecl 3 45315 NULL
-+of_property_count_elems_of_size_fndecl_45337_fns of_property_count_elems_of_size fndecl 3 45337 NULL
++of_property_count_elems_of_size_fndecl_45337_fns of_property_count_elems_of_size fndecl 0-3 45337 NULL
+excessive_retries_read_fndecl_45338_fns excessive_retries_read fndecl 3 45338 NULL
+ablkcipher_giv_edesc_alloc_fndecl_45340_fns ablkcipher_giv_edesc_alloc fndecl 2 45340 NULL
-+msix_count_i40iw_device_45370_fns msix_count i40iw_device 0 45370 NULL
+ebcnt_vardecl_speedtest_c_45398_fns ebcnt vardecl_speedtest.c 0 45398 NULL
+brcmf_init_nvram_parser_fndecl_45415_fns brcmf_init_nvram_parser fndecl 3 45415 NULL
+pos_c4iw_debugfs_data_45424_fns pos c4iw_debugfs_data 0 45424 NULL
+nfsd_hashsize_fndecl_45441_fns nfsd_hashsize fndecl 0 45441 NULL
-+rvt_alloc_device_fndecl_45442_fns rvt_alloc_device fndecl 2 45442 NULL
++rvt_alloc_device_fndecl_45442_fns rvt_alloc_device fndecl 1-2 45442 NULL
+pmem_do_bvec_fndecl_45443_fns pmem_do_bvec fndecl 3 45443 NULL
+nonpaging_map_fndecl_45460_fns nonpaging_map fndecl 4 45460 NULL
+ssize_jumpshot_info_45467_fns ssize jumpshot_info 0 45467 NULL
@@ -208514,50 +212825,51 @@ index 0000000..510c554
+count_scpi_dvfs_info_45519_fns count scpi_dvfs_info 0 45519 NULL
+wl1273_fm_fops_write_fndecl_45534_fns wl1273_fm_fops_write fndecl 3 45534 NULL
+arch_setup_dma_ops_fndecl_45543_fns arch_setup_dma_ops fndecl 3 45543 NULL
-+ieee80211_if_read_dot11MeshConfirmTimeout_fndecl_45549_fns ieee80211_if_read_dot11MeshConfirmTimeout fndecl 3 45549 NULL
+srp_create_fr_pool_fndecl_45572_fns srp_create_fr_pool fndecl 3 45572 NULL
-+arch_hibernation_header_save_fndecl_45583_fns arch_hibernation_header_save fndecl 0 45583 NULL
+f2fs_sync_file_fndecl_45585_fns f2fs_sync_file fndecl 2-3 45585 NULL
+wpan_phy_new_fndecl_45593_fns wpan_phy_new fndecl 2 45593 NULL
++upd_received_ubi_volume_45595_fns upd_received ubi_volume 0 45595 NULL
+slave_init_fndecl_45597_fns slave_init fndecl 0 45597 NULL
++readpos_cx18_buffer_45604_fns readpos cx18_buffer 0 45604 NULL
+smk_read_ambient_fndecl_45623_fns smk_read_ambient fndecl 3 45623 NULL
++btrfs_bio_alloc_fndecl_45637_fns btrfs_bio_alloc fndecl 3 45637 NULL nohasharray
++ifalias_store_fndecl_45637_fns ifalias_store fndecl 4 45637 &btrfs_bio_alloc_fndecl_45637_fns
+ib_uverbs_modify_srq_fndecl_45645_fns ib_uverbs_modify_srq fndecl 4-5 45645 NULL
+bnxt_alloc_vf_resources_fndecl_45660_fns bnxt_alloc_vf_resources fndecl 2 45660 NULL
+xfer_from_user_fndecl_45672_fns xfer_from_user fndecl 3 45672 NULL
+videobuf_dqbuf_fndecl_45673_fns videobuf_dqbuf fndecl 0 45673 NULL
+sys_add_key_fndecl_45691_fns sys_add_key fndecl 4 45691 NULL nohasharray
+nvme_trans_copy_to_user_fndecl_45691_fns nvme_trans_copy_to_user fndecl 3 45691 &sys_add_key_fndecl_45691_fns
-+__netdev_adjacent_dev_insert_fndecl_45697_fns __netdev_adjacent_dev_insert fndecl 0 45697 NULL
+write_file_spectral_short_repeat_fndecl_45700_fns write_file_spectral_short_repeat fndecl 3 45700 NULL
-+st5481_setup_isocpipes_fndecl_45711_fns st5481_setup_isocpipes fndecl 6 45711 NULL nohasharray
-+pof_handle_data_fndecl_45711_fns pof_handle_data fndecl 0 45711 &st5481_setup_isocpipes_fndecl_45711_fns
-+__add_inline_refs_fndecl_45744_fns __add_inline_refs fndecl 3 45744 NULL
++pof_handle_data_fndecl_45711_fns pof_handle_data fndecl 0 45711 NULL nohasharray
++st5481_setup_isocpipes_fndecl_45711_fns st5481_setup_isocpipes fndecl 6-4 45711 &pof_handle_data_fndecl_45711_fns
+wil_write_file_recovery_fndecl_45753_fns wil_write_file_recovery fndecl 3 45753 NULL
+count_n_hdlc_buf_45767_fns count n_hdlc_buf 0 45767 NULL
++set_acoustic_fndecl_45772_fns set_acoustic fndecl 2 45772 NULL
+flows_cnt_fq_codel_sched_data_45775_fns flows_cnt fq_codel_sched_data 0 45775 NULL
+get_inode_info_fndecl_45784_fns get_inode_info fndecl 0 45784 NULL
+smk_write_net4addr_fndecl_45821_fns smk_write_net4addr fndecl 3 45821 NULL
-+__a2mp_build_fndecl_45864_fns __a2mp_build fndecl 3 45864 NULL
+hsc_msg_alloc_fndecl_45869_fns hsc_msg_alloc fndecl 1 45869 NULL
+mwifiex_alloc_sdio_mpa_buffers_fndecl_45874_fns mwifiex_alloc_sdio_mpa_buffers fndecl 2-3 45874 NULL
+pti_char_write_fndecl_45875_fns pti_char_write fndecl 3 45875 NULL
-+alloc_wr_fndecl_45881_fns alloc_wr fndecl 1-2 45881 NULL
++alloc_wr_fndecl_45881_fns alloc_wr fndecl 2-1 45881 NULL
+smbase_kvm_vcpu_arch_45895_fns smbase kvm_vcpu_arch 0 45895 NULL
+ath6kl_lrssi_roam_read_fndecl_45901_fns ath6kl_lrssi_roam_read fndecl 3 45901 NULL
+dfs_num_of_radar_detections_read_fndecl_45903_fns dfs_num_of_radar_detections_read fndecl 3 45903 NULL
-+alloc_sglist_fndecl_45919_fns alloc_sglist fndecl 1-3-2 45919 NULL
-+lpfc_idiag_queacc_write_fndecl_45920_fns lpfc_idiag_queacc_write fndecl 3 45920 NULL
-+read_file_ackto_fndecl_45950_fns read_file_ackto fndecl 3 45950 NULL
++alloc_sglist_fndecl_45919_fns alloc_sglist fndecl 1 45919 NULL
++sdhci_pltfm_register_fndecl_45940_fns sdhci_pltfm_register fndecl 3 45940 NULL
+sigma_fw_load_samplerates_fndecl_45951_fns sigma_fw_load_samplerates fndecl 3 45951 NULL
++i40e_calculate_l2fpm_size_fndecl_45987_fns i40e_calculate_l2fpm_size fndecl 1-2-3-4 45987 NULL
+__probe_kernel_read_fndecl_45996_fns __probe_kernel_read fndecl 3 45996 NULL
+sctp_v4_err_fndecl_45997_fns sctp_v4_err fndecl 2 45997 NULL
++rx_size_qed_cb_ll2_info_46006_fns rx_size qed_cb_ll2_info 0 46006 NULL
++add_del_listener_fndecl_46013_fns add_del_listener fndecl 0 46013 NULL
+get_derived_key_fndecl_46015_fns get_derived_key fndecl 4 46015 NULL
++afs_proc_cells_write_fndecl_46016_fns afs_proc_cells_write fndecl 3 46016 NULL
+p9_client_prepare_req_fndecl_46048_fns p9_client_prepare_req fndecl 3 46048 NULL
-+__vmalloc_fndecl_46051_fns __vmalloc fndecl 1 46051 NULL
-+calipso_map_cat_hton_fndecl_46052_fns calipso_map_cat_hton fndecl 0 46052 NULL nohasharray
-+event_oom_late_read_fndecl_46052_fns event_oom_late_read fndecl 3 46052 &calipso_map_cat_hton_fndecl_46052_fns
++event_oom_late_read_fndecl_46052_fns event_oom_late_read fndecl 3 46052 NULL nohasharray
++num_wsm_mib_beacon_filter_table_46052_fns num wsm_mib_beacon_filter_table 0 46052 &event_oom_late_read_fndecl_46052_fns
+sys_lsetxattr_fndecl_46058_fns sys_lsetxattr fndecl 4 46058 NULL
-+iwl_dbgfs_mac_params_read_fndecl_46081_fns iwl_dbgfs_mac_params_read fndecl 3 46081 NULL
+alloc_dca_provider_fndecl_46085_fns alloc_dca_provider fndecl 2 46085 NULL
+wilc_add_wep_key_bss_ap_fndecl_46087_fns wilc_add_wep_key_bss_ap fndecl 3 46087 NULL
+hidraw_read_fndecl_46097_fns hidraw_read fndecl 3 46097 NULL
@@ -208565,210 +212877,191 @@ index 0000000..510c554
+ioperm_get_fndecl_46118_fns ioperm_get fndecl 4-3 46118 NULL
+mic_calc_failure_read_fndecl_46119_fns mic_calc_failure_read fndecl 3 46119 NULL
+prism2_info_scanresults_fndecl_46146_fns prism2_info_scanresults fndecl 3 46146 NULL
-+memblock_alloc_range_nid_fndecl_46147_fns memblock_alloc_range_nid fndecl 1 46147 NULL
-+ieee80211_if_read_fwded_unicast_fndecl_46159_fns ieee80211_if_read_fwded_unicast fndecl 3 46159 NULL
-+max_segs_mmc_test_area_46176_fns max_segs mmc_test_area 0 46176 NULL
-+long_retry_limit_read_fndecl_46181_fns long_retry_limit_read fndecl 3 46181 NULL
-+venus_remove_fndecl_46230_fns venus_remove fndecl 4 46230 NULL
++init_pkru_read_file_fndecl_46218_fns init_pkru_read_file fndecl 3 46218 NULL
+response_length_mlx4_uverbs_ex_query_device_resp_46245_fns response_length mlx4_uverbs_ex_query_device_resp 0 46245 NULL
-+ieee80211_if_read_dot11MeshHWMPmaxPREQretries_fndecl_46246_fns ieee80211_if_read_dot11MeshHWMPmaxPREQretries fndecl 3 46246 NULL
+gspca_dev_probe2_fndecl_46250_fns gspca_dev_probe2 fndecl 4 46250 NULL
++__irq_alloc_domain_generic_chips_fndecl_46285_fns __irq_alloc_domain_generic_chips fndecl 3-2 46285 NULL
+ffs_prepare_buffer_fndecl_46311_fns ffs_prepare_buffer fndecl 2 46311 NULL
++biovec_create_pool_fndecl_46325_fns biovec_create_pool fndecl 1 46325 NULL
+max_vnic_func_qlcnic_hardware_context_46334_fns max_vnic_func qlcnic_hardware_context 0 46334 NULL
-+__qsfp_debugfs_write_fndecl_46356_fns __qsfp_debugfs_write fndecl 3 46356 NULL
+shadow_image_fndecl_46361_fns shadow_image fndecl 3 46361 NULL
+ring_cons_per_user_data_46365_fns ring_cons per_user_data 0 46365 NULL
++device_create_with_groups_fndecl_46371_fns device_create_with_groups fndecl 3 46371 NULL
+fs_path_ensure_buf_fndecl_46374_fns fs_path_ensure_buf fndecl 2 46374 NULL
+acpi_ds_build_internal_buffer_obj_fndecl_46379_fns acpi_ds_build_internal_buffer_obj fndecl 3 46379 NULL
+max_loop_vardecl_loop_c_46402_fns max_loop vardecl_loop.c 0 46402 NULL
-+len_minstrel_debugfs_info_46425_fns len minstrel_debugfs_info 0 46425 NULL
+rds_pin_pages_fndecl_46432_fns rds_pin_pages fndecl 0 46432 NULL
+C_SYSC_get_mempolicy_fndecl_46447_fns C_SYSC_get_mempolicy fndecl 3 46447 NULL
-+_iwl_dbgfs_bcast_filters_write_fndecl_46448_fns _iwl_dbgfs_bcast_filters_write fndecl 3 46448 NULL
-+sglen_usbtest_param_32_46451_fns sglen usbtest_param_32 0 46451 NULL
+nfsd_nrpools_fndecl_46460_fns nfsd_nrpools fndecl 0 46460 NULL
+ib_copy_from_udata_fndecl_46461_fns ib_copy_from_udata fndecl 3 46461 NULL
-+size_drm_local_map_46462_fns size drm_local_map 0 46462 NULL
+kmalloc_large_node_fndecl_46469_fns kmalloc_large_node fndecl 1 46469 NULL
+mpi_get_nbits_fndecl_46476_fns mpi_get_nbits fndecl 0 46476 NULL
+hr_num_pages_o2hb_region_46481_fns hr_num_pages o2hb_region 0 46481 NULL
+afs_fsync_fndecl_46498_fns afs_fsync fndecl 2-3 46498 NULL
+tunables_write_fndecl_46520_fns tunables_write fndecl 3 46520 NULL
-+mlx5_core_query_ib_ppcnt_fndecl_46522_fns mlx5_core_query_ib_ppcnt fndecl 4 46522 NULL
+memdup_user_fndecl_46549_fns memdup_user fndecl 2 46549 NULL
+jffs2_alloc_full_dirent_fndecl_46592_fns jffs2_alloc_full_dirent fndecl 1 46592 NULL nohasharray
+sg_build_sgat_fndecl_46592_fns sg_build_sgat fndecl 3 46592 &jffs2_alloc_full_dirent_fndecl_46592_fns
-+cma_init_reserved_mem_fndecl_46602_fns cma_init_reserved_mem fndecl 3-2 46602 NULL
++cma_init_reserved_mem_fndecl_46602_fns cma_init_reserved_mem fndecl 2 46602 NULL
+init_state_fndecl_46614_fns init_state fndecl 2 46614 NULL
+jmb38x_ms_count_slots_fndecl_46615_fns jmb38x_ms_count_slots fndecl 0 46615 NULL
+emulator_set_smbase_fndecl_46616_fns emulator_set_smbase fndecl 2 46616 NULL
+alloc_size_nf_ct_ext_type_46634_fns alloc_size nf_ct_ext_type 0 46634 NULL
++ccp_queue_buf_fndecl_46635_fns ccp_queue_buf fndecl 0 46635 NULL
+rx_rx_tkip_replays_read_fndecl_46642_fns rx_rx_tkip_replays_read fndecl 3 46642 NULL
+roaming_rssi_level_read_fndecl_46643_fns roaming_rssi_level_read fndecl 3 46643 NULL
-+got_bytes_cifs_readdata_46678_fns got_bytes cifs_readdata 0 46678 NULL
++transfer_buffer_length_usbip_header_cmd_submit_46658_fns transfer_buffer_length usbip_header_cmd_submit 0 46658 NULL
+display_crc_ctl_write_fndecl_46690_fns display_crc_ctl_write fndecl 3 46690 NULL
+printer_write_fndecl_46695_fns printer_write fndecl 3 46695 NULL
-+irq_alloc_domain_generic_chips_fndecl_46715_fns irq_alloc_domain_generic_chips fndecl 3-2 46715 NULL
+__kfifo_from_user_r_fndecl_46762_fns __kfifo_from_user_r fndecl 3-5 46762 NULL
+bytes_remaining_parser_context_46791_fns bytes_remaining parser_context 0 46791 NULL
+dccp_setsockopt_fndecl_46812_fns dccp_setsockopt fndecl 5 46812 NULL
-+kvm_mmu_get_page_fndecl_46824_fns kvm_mmu_get_page fndecl 2 46824 NULL
-+hexdump_fndecl_46840_fns hexdump fndecl 3 46840 NULL
++buffer_size_snd_rawmidi_params_46813_fns buffer_size snd_rawmidi_params 0 46813 NULL
++kvm_mmu_get_page_fndecl_46824_fns kvm_mmu_get_page fndecl 2 46824 NULL nohasharray
++numberoflines_tmHWStreamParameters_46824_fns numberoflines tmHWStreamParameters 0 46824 &kvm_mmu_get_page_fndecl_46824_fns
++mthca_alloc_resize_buf_fndecl_46841_fns mthca_alloc_resize_buf fndecl 3 46841 NULL
+n_channels_wmi_scan_chan_list_arg_46842_fns n_channels wmi_scan_chan_list_arg 0 46842 NULL
++len_wl12xx_rx_filter_field_46843_fns len wl12xx_rx_filter_field 0 46843 NULL
+driver_names_read_fndecl_46844_fns driver_names_read fndecl 3 46844 NULL
-+il_dbgfs_missed_beacon_read_fndecl_46887_fns il_dbgfs_missed_beacon_read fndecl 3 46887 NULL
+ksi_nthreads_max_ksock_sched_info_46891_fns ksi_nthreads_max ksock_sched_info 0 46891 NULL
-+il_dbgfs_rxon_flags_read_fndecl_46909_fns il_dbgfs_rxon_flags_read fndecl 3 46909 NULL nohasharray
-+dapm_widget_power_read_file_fndecl_46909_fns dapm_widget_power_read_file fndecl 3 46909 &il_dbgfs_rxon_flags_read_fndecl_46909_fns
-+ath10k_read_dfs_stats_fndecl_46910_fns ath10k_read_dfs_stats fndecl 3 46910 NULL
-+s_desc_per_block_ext2_sb_info_46964_fns s_desc_per_block ext2_sb_info 0 46964 NULL
++buffer_size_snd_urb_ctx_46897_fns buffer_size snd_urb_ctx 0 46897 NULL
++osd_req_read_kern_fndecl_46917_fns osd_req_read_kern fndecl 5 46917 NULL
++squashfs_max_decompressors_fndecl_46937_fns squashfs_max_decompressors fndecl 0 46937 NULL
++osd_req_list_dev_partitions_fndecl_46952_fns osd_req_list_dev_partitions fndecl 4 46952 NULL
++mthca_init_cq_fndecl_46968_fns mthca_init_cq fndecl 2 46968 NULL
+vcs_size_fndecl_46977_fns vcs_size fndecl 0 46977 NULL
+numbers_count_tomoyo_condition_46984_fns numbers_count tomoyo_condition 0 46984 NULL
-+gru_alloc_gts_fndecl_46987_fns gru_alloc_gts fndecl 2-3 46987 NULL
++gru_alloc_gts_fndecl_46987_fns gru_alloc_gts fndecl 3-2 46987 NULL
+sys_sched_getaffinity_fndecl_46994_fns sys_sched_getaffinity fndecl 2 46994 NULL
+dma_init_coherent_memory_fndecl_47020_fns dma_init_coherent_memory fndecl 3 47020 NULL
+length_acpi_buffer_47024_fns length acpi_buffer 0 47024 NULL
+ath6kl_listen_int_write_fndecl_47025_fns ath6kl_listen_int_write fndecl 3 47025 NULL
++amdgpu_drm_ioctl_fndecl_47050_fns amdgpu_drm_ioctl fndecl 2 47050 NULL
+ip_set_max_ip_set_net_47054_fns ip_set_max ip_set_net 0 47054 NULL
+nfs_idmap_request_key_fndecl_47055_fns nfs_idmap_request_key fndecl 2 47055 NULL
-+buf_size_usbatm_channel_47081_fns buf_size usbatm_channel 0 47081 NULL
++sect_ide_drive_s_47062_fns sect ide_drive_s 0 47062 NULL
+ld_usb_read_fndecl_47087_fns ld_usb_read fndecl 3 47087 NULL
+pcpu_need_to_extend_fndecl_47094_fns pcpu_need_to_extend fndecl 0 47094 NULL
-+__scsi_print_sense_fndecl_47105_fns __scsi_print_sense fndecl 4 47105 NULL
-+num_outstanding_cmds_req_que_47114_fns num_outstanding_cmds req_que 0 47114 NULL
+tx_tx_start_fw_gen_read_fndecl_47115_fns tx_tx_start_fw_gen_read fndecl 3 47115 NULL
-+iwl_dbgfs_rx_handlers_write_fndecl_47116_fns iwl_dbgfs_rx_handlers_write fndecl 3 47116 NULL
-+param_data_size_skl_ipc_init_instance_msg_47145_fns param_data_size skl_ipc_init_instance_msg 0 47145 NULL
++filemap_fdatawrite_range_fndecl_47125_fns filemap_fdatawrite_range fndecl 3 47125 NULL
++do_otp_lock_fndecl_47148_fns do_otp_lock fndecl 3 47148 NULL
++req_xfer_ide_atapi_pc_47159_fns req_xfer ide_atapi_pc 0 47159 NULL
+msr_init_context_fndecl_47188_fns msr_init_context fndecl 2 47188 NULL
++msix_count_qla_hw_data_47192_fns msix_count qla_hw_data 0 47192 NULL
+block_count_msb_data_47194_fns block_count msb_data 0 47194 NULL
-+vmalloc_node_fndecl_47199_fns vmalloc_node fndecl 1 47199 NULL
+mbm_socket_max_vardecl_47204_fns mbm_socket_max vardecl 0 47204 NULL
+agp_allocate_memory_fndecl_47258_fns agp_allocate_memory fndecl 2 47258 NULL
++isku_sysfs_read_fndecl_47269_fns isku_sysfs_read fndecl 5 47269 NULL
+__ofdpa_mem_alloc_fndecl_47299_fns __ofdpa_mem_alloc fndecl 3 47299 NULL
+fwnode_property_read_string_array_fndecl_47300_fns fwnode_property_read_string_array fndecl 0 47300 NULL
+command_write_fndecl_47306_fns command_write fndecl 3 47306 NULL
+qed_cxt_ilt_shadow_size_fndecl_47308_fns qed_cxt_ilt_shadow_size fndecl 0 47308 NULL
+thermal_irq_thr_low_read_fndecl_47339_fns thermal_irq_thr_low_read fndecl 3 47339 NULL
-+nd_label_active_count_fndecl_47348_fns nd_label_active_count fndecl 0 47348 NULL
+dump_midi_fndecl_47356_fns dump_midi fndecl 3 47356 NULL
-+ath6kl_wmi_send_action_cmd_fndecl_47359_fns ath6kl_wmi_send_action_cmd fndecl 7 47359 NULL
++ath6kl_wmi_send_action_cmd_fndecl_47359_fns ath6kl_wmi_send_action_cmd fndecl 7 47359 NULL nohasharray
++altc_entry_sz_mlx4_dev_cap_47359_fns altc_entry_sz mlx4_dev_cap 0 47359 &ath6kl_wmi_send_action_cmd_fndecl_47359_fns
+SYSC_sched_getattr_fndecl_47361_fns SYSC_sched_getattr fndecl 3 47361 NULL
+rx_position_r3964_info_47365_fns rx_position r3964_info 0 47365 NULL
-+il_dbgfs_status_read_fndecl_47367_fns il_dbgfs_status_read fndecl 3 47367 NULL
++qcaspi_clkspeed_vardecl_qca_spi_c_47395_fns qcaspi_clkspeed vardecl_qca_spi.c 0 47395 NULL
++idetape_pad_zeros_fndecl_47413_fns idetape_pad_zeros fndecl 2 47413 NULL
+capabilities_read_fndecl_47434_fns capabilities_read fndecl 3 47434 NULL
+usnic_vnic_get_resources_fndecl_47437_fns usnic_vnic_get_resources fndecl 3 47437 NULL
-+dw_spi_show_regs_fndecl_47461_fns dw_spi_show_regs fndecl 3 47461 NULL
+snd_rme96_capture_copy_fndecl_47463_fns snd_rme96_capture_copy fndecl 5 47463 NULL
-+memblock_alloc_try_nid_fndecl_47470_fns memblock_alloc_try_nid fndecl 1 47470 NULL
-+lpfc_idiag_baracc_read_fndecl_47473_fns lpfc_idiag_baracc_read fndecl 3 47473 NULL
-+fifo_len_tx_fifo_config_47480_fns fifo_len tx_fifo_config 0 47480 NULL
+__ffs_epfile_read_data_fndecl_47488_fns __ffs_epfile_read_data fndecl 3 47488 NULL nohasharray
+report_length_f_hidg_47488_fns report_length f_hidg 0 47488 &__ffs_epfile_read_data_fndecl_47488_fns
+setcontrast_fndecl_47513_fns setcontrast fndecl 0 47513 NULL
+ib_uverbs_create_qp_fndecl_47521_fns ib_uverbs_create_qp fndecl 4-5 47521 NULL
+pq_sources_dmatest_params_47534_fns pq_sources dmatest_params 0 47534 NULL
-+skl_tplg_tlv_control_set_fndecl_47545_fns skl_tplg_tlv_control_set fndecl 3 47545 NULL
+wep_decrypt_fail_read_fndecl_47572_fns wep_decrypt_fail_read fndecl 3 47572 NULL
+tool_peer_mw_trans_write_fndecl_47595_fns tool_peer_mw_trans_write fndecl 3 47595 NULL
+num_codecs_snd_soc_dai_link_47607_fns num_codecs snd_soc_dai_link 0 47607 NULL
+nvme_fill_device_id_scsi_string_fndecl_47624_fns nvme_fill_device_id_scsi_string fndecl 4 47624 NULL
+__iio_add_event_config_attrs_fndecl_47635_fns __iio_add_event_config_attrs fndecl 0 47635 NULL
++num_phys_hw_profile_47641_fns num_phys hw_profile 0 47641 NULL
+framebuffer_alloc_fndecl_47642_fns framebuffer_alloc fndecl 1 47642 NULL nohasharray
+nilfs_cpfile_get_offset_fndecl_47642_fns nilfs_cpfile_get_offset fndecl 0-2 47642 &framebuffer_alloc_fndecl_47642_fns
++radeon_compat_ioctl_fndecl_47645_fns radeon_compat_ioctl fndecl 2 47645 NULL
+atomic_write_len_kernfs_open_file_47658_fns atomic_write_len kernfs_open_file 0 47658 NULL
-+setup_window_fndecl_47673_fns setup_window fndecl 4-5-7 47673 NULL
++setup_window_fndecl_47673_fns setup_window fndecl 5-4 47673 NULL
+ksize_fndecl_47675_fns ksize fndecl 0 47675 NULL
-+height_v4l2_pix_format_47682_fns height v4l2_pix_format 0 47682 NULL
-+ath10k_debug_cal_data_read_fndecl_47685_fns ath10k_debug_cal_data_read fndecl 3 47685 NULL
+cno_nilfs_super_data_47691_fns cno nilfs_super_data 0 47691 NULL
+paging64_gpte_to_gfn_lvl_fndecl_47694_fns paging64_gpte_to_gfn_lvl fndecl 0-2-1 47694 NULL
+efi_capsule_write_fndecl_47697_fns efi_capsule_write fndecl 3 47697 NULL
++onenand_bbt_read_oob_fndecl_47704_fns onenand_bbt_read_oob fndecl 2 47704 NULL nohasharray
++xfs_iext_realloc_indirect_fndecl_47704_fns xfs_iext_realloc_indirect fndecl 2 47704 &onenand_bbt_read_oob_fndecl_47704_fns
+report_size_roccat_device_47705_fns report_size roccat_device 0 47705 NULL
+max_size_ttm_pool_opts_47726_fns max_size ttm_pool_opts 0 47726 NULL
-+batadv_send_tt_request_fndecl_47727_fns batadv_send_tt_request fndecl 5 47727 NULL
-+acpi_tb_install_fixed_table_fndecl_47749_fns acpi_tb_install_fixed_table fndecl 1 47749 NULL
-+width_ssd1307fb_par_47753_fns width ssd1307fb_par 0 47753 NULL
-+snic_reset_stats_read_fndecl_47774_fns snic_reset_stats_read fndecl 3 47774 NULL
++mq_ecount_lpfc_sli4_hba_47770_fns mq_ecount lpfc_sli4_hba 0 47770 NULL
+fd_copyout_fndecl_47784_fns fd_copyout fndecl 3 47784 NULL
+netdev_queue_update_kobjects_fndecl_47798_fns netdev_queue_update_kobjects fndecl 0 47798 NULL
+paging64_get_level1_sp_gpa_fndecl_47809_fns paging64_get_level1_sp_gpa fndecl 0 47809 NULL
-+size_ncp_ioctl_request_47816_fns size ncp_ioctl_request 0 47816 NULL
+rx_defrag_in_process_called_read_fndecl_47833_fns rx_defrag_in_process_called_read fndecl 3 47833 NULL
-+f2fs_fallocate_fndecl_47842_fns f2fs_fallocate fndecl 3-4 47842 NULL
+nilfs_cpfile_find_checkpoint_block_fndecl_47868_fns nilfs_cpfile_find_checkpoint_block fndecl 2-3 47868 NULL
++smt_send_ecf_fndecl_47881_fns smt_send_ecf fndecl 6 47881 NULL
+gs_alloc_req_fndecl_47888_fns gs_alloc_req fndecl 2 47888 NULL
-+write_pmsg_fndecl_47911_fns write_pmsg fndecl 3 47911 NULL
+compat_fillonedir_fndecl_47921_fns compat_fillonedir fndecl 3 47921 NULL
+iwl_mvm_sync_rx_queues_internal_fndecl_47927_fns iwl_mvm_sync_rx_queues_internal fndecl 3 47927 NULL
+de_rahead_gfs2_dirent_47954_fns de_rahead gfs2_dirent 0 47954 NULL
++depth_pitch_drm_r128_private_47959_fns depth_pitch drm_r128_private 0 47959 NULL
+le_ih_k_offset_fndecl_47992_fns le_ih_k_offset fndecl 0 47992 NULL
++width_console_font_op_48005_fns width console_font_op 0 48005 NULL
+init_pci_cap_msi_perm_fndecl_48010_fns init_pci_cap_msi_perm fndecl 2 48010 NULL nohasharray
+setgain_fndecl_48010_fns setgain fndecl 0 48010 &init_pci_cap_msi_perm_fndecl_48010_fns
+size_netlbl_unlhsh_tbl_48011_fns size netlbl_unlhsh_tbl 0 48011 NULL
+selinux_transaction_write_fndecl_48013_fns selinux_transaction_write fndecl 3 48013 NULL
-+mdiobus_read_nested_fndecl_48017_fns mdiobus_read_nested fndecl 0 48017 NULL
+drm_malloc_gfp_fndecl_48018_fns drm_malloc_gfp fndecl 1-2 48018 NULL
-+lpfc_idiag_baracc_write_fndecl_48021_fns lpfc_idiag_baracc_write fndecl 3 48021 NULL
+_find_next_bit_le_fndecl_48027_fns _find_next_bit_le fndecl 0 48027 NULL
-+aim_write_fndecl_48032_fns aim_write fndecl 3 48032 NULL
-+blocksize_sddr55_card_info_48082_fns blocksize sddr55_card_info 0 48082 NULL
-+nfc_llcp_send_i_frame_fndecl_48105_fns nfc_llcp_send_i_frame fndecl 3 48105 NULL
++__cvmx_bootmem_desc_get_fndecl_48105_fns __cvmx_bootmem_desc_get fndecl 0 48105 NULL
+namelen_xensyms_48117_fns namelen xensyms 0 48117 NULL
+vma_kernel_pagesize_fndecl_48131_fns vma_kernel_pagesize fndecl 0 48131 NULL
+tx_tx_retry_template_read_fndecl_48132_fns tx_tx_retry_template_read fndecl 3 48132 NULL
+rsa_edesc_alloc_fndecl_48134_fns rsa_edesc_alloc fndecl 2 48134 NULL
-+mem_read_fndecl_48140_fns mem_read fndecl 3 48140 NULL
+hpi_cobranet_hmi_write_fndecl_48158_fns hpi_cobranet_hmi_write fndecl 3 48158 NULL
+r3964_write_fndecl_48173_fns r3964_write fndecl 4 48173 NULL
+mr_read_fndecl_48180_fns mr_read fndecl 0 48180 NULL
-+data_transfer_length_pmcraid_ioarcb_48193_fns data_transfer_length pmcraid_ioarcb 0 48193 NULL
+proc_ns_readlink_fndecl_48211_fns proc_ns_readlink fndecl 3 48211 NULL
+__lgwrite_fndecl_48214_fns __lgwrite fndecl 4 48214 NULL
++ax88179_read_cmd_nopm_fndecl_48216_fns ax88179_read_cmd_nopm fndecl 5 48216 NULL
+b_map_count_xfs_buf_48228_fns b_map_count xfs_buf 0 48228 NULL
-+ieee80211_if_read_dot11MeshHWMPconfirmationInterval_fndecl_48233_fns ieee80211_if_read_dot11MeshHWMPconfirmationInterval fndecl 3 48233 NULL
-+i2400m_rx_stats_read_fndecl_48249_fns i2400m_rx_stats_read fndecl 3 48249 NULL
++qib_make_grh_fndecl_48250_fns qib_make_grh fndecl 0 48250 NULL
+ib_uverbs_create_xsrq_fndecl_48257_fns ib_uverbs_create_xsrq fndecl 4-5 48257 NULL
+compat_sys_set_mempolicy_fndecl_48285_fns compat_sys_set_mempolicy fndecl 3 48285 NULL
-+_iwl_dbgfs_lqm_send_cmd_write_fndecl_48326_fns _iwl_dbgfs_lqm_send_cmd_write fndecl 3 48326 NULL
+ion_test_ioctl_fndecl_48340_fns ion_test_ioctl fndecl 2 48340 NULL
+ivtv_read_fndecl_48343_fns ivtv_read fndecl 3 48343 NULL
+flash_read_fndecl_48352_fns flash_read fndecl 3 48352 NULL
-+kiblnd_create_tx_pool_fndecl_48357_fns kiblnd_create_tx_pool fndecl 2 48357 NULL
++qib_make_rc_ack_fndecl_48361_fns qib_make_rc_ack fndecl 4 48361 NULL
+bfad_debugfs_read_regrd_fndecl_48373_fns bfad_debugfs_read_regrd fndecl 3 48373 NULL
++driver_data_pci_device_id_48380_fns driver_data pci_device_id 0 48380 NULL
+mlxsw_cmd_mbox_query_aq_cap_max_num_rdqs_get_fndecl_48399_fns mlxsw_cmd_mbox_query_aq_cap_max_num_rdqs_get fndecl 0 48399 NULL
+max_kioc_mraid_mmadp_48422_fns max_kioc mraid_mmadp 0 48422 NULL
-+read_file_blob_fndecl_48429_fns read_file_blob fndecl 3 48429 NULL
-+natids_tid_info_48439_fns natids tid_info 0 48439 NULL
-+bzImage64_load_fndecl_48447_fns bzImage64_load fndecl 7 48447 NULL
-+alloc_ftrace_hash_fndecl_48452_fns alloc_ftrace_hash fndecl 1 48452 NULL
++sys_fadvise64_64_fndecl_48424_fns sys_fadvise64_64 fndecl 3 48424 NULL
++tty_register_device_attr_fndecl_48438_fns tty_register_device_attr fndecl 2 48438 NULL nohasharray
++__nvme_submit_sync_cmd_fndecl_48438_fns __nvme_submit_sync_cmd fndecl 5 48438 &tty_register_device_attr_fndecl_48438_fns
++compat_keyctl_instantiate_key_iov_fndecl_48452_fns compat_keyctl_instantiate_key_iov fndecl 3 48452 NULL
+read_file_eeprom_fndecl_48455_fns read_file_eeprom fndecl 3 48455 NULL
+pwr_ap_sleep_active_conf_read_fndecl_48457_fns pwr_ap_sleep_active_conf_read fndecl 3 48457 NULL
+copy_to_user_fromio_fndecl_48459_fns copy_to_user_fromio fndecl 3 48459 NULL
-+carl9170_read_mreg_fndecl_48468_fns carl9170_read_mreg fndecl 2 48468 NULL
++num_msix_irqs_octeon_device_48465_fns num_msix_irqs octeon_device 0 48465 NULL
+enclosure_register_fndecl_48471_fns enclosure_register fndecl 3 48471 NULL
+__origin_write_fndecl_48487_fns __origin_write fndecl 2 48487 NULL
-+sisusb_clear_vram_fndecl_48489_fns sisusb_clear_vram fndecl 2-3 48489 NULL
-+ieee80211_if_read_flags_fndecl_48493_fns ieee80211_if_read_flags fndecl 3 48493 NULL
-+rss_key_write_fndecl_48498_fns rss_key_write fndecl 3 48498 NULL
+sys_pselect6_fndecl_48506_fns sys_pselect6 fndecl 1 48506 NULL
-+read_file_skb_rx_fndecl_48513_fns read_file_skb_rx fndecl 3 48513 NULL
++octeon_read_device_mem32_fndecl_48520_fns octeon_read_device_mem32 fndecl 0 48520 NULL
+copy_in_user_fndecl_48525_fns copy_in_user fndecl 3 48525 NULL
-+fscrypt_fname_encrypted_size_fndecl_48527_fns fscrypt_fname_encrypted_size fndecl 0-2 48527 NULL
++fscrypt_fname_encrypted_size_fndecl_48527_fns fscrypt_fname_encrypted_size fndecl 0 48527 NULL
+max_sense_bytes_mpt3_ioctl_command_48528_fns max_sense_bytes mpt3_ioctl_command 0 48528 NULL
+nilfs_sufile_update_fndecl_48533_fns nilfs_sufile_update fndecl 2 48533 NULL
+cmm_read_fndecl_48547_fns cmm_read fndecl 3 48547 NULL
-+dm_stats_create_fndecl_48550_fns dm_stats_create fndecl 6-4-2-3 48550 NULL
++dm_stats_create_fndecl_48550_fns dm_stats_create fndecl 6 48550 NULL
+inode_permission_fndecl_48552_fns inode_permission fndecl 0 48552 NULL
+acpi_dev_get_resources_fndecl_48557_fns acpi_dev_get_resources fndecl 0 48557 NULL
+init_tag_map_fndecl_48568_fns init_tag_map fndecl 3 48568 NULL
+start_spy_cam_fndecl_48570_fns start_spy_cam fndecl 0 48570 NULL
-+wil_read_file_ssid_fndecl_48574_fns wil_read_file_ssid fndecl 3 48574 NULL nohasharray
-+il_dbgfs_force_reset_read_fndecl_48574_fns il_dbgfs_force_reset_read fndecl 3 48574 &wil_read_file_ssid_fndecl_48574_fns
++wil_read_file_ssid_fndecl_48574_fns wil_read_file_ssid fndecl 3 48574 NULL
+dynamic_fw_traces_read_fndecl_48579_fns dynamic_fw_traces_read fndecl 3 48579 NULL
++ishtp_io_rb_alloc_buf_fndecl_48583_fns ishtp_io_rb_alloc_buf fndecl 2 48583 NULL
+driver_register_fndecl_48593_fns driver_register fndecl 0 48593 NULL
+aggr_size_tx_agg_rate_read_fndecl_48607_fns aggr_size_tx_agg_rate_read fndecl 3 48607 NULL
+read_file_spectral_fft_period_fndecl_48618_fns read_file_spectral_fft_period fndecl 3 48618 NULL
-+num_streamids_arm_smmu_master_cfg_48625_fns num_streamids arm_smmu_master_cfg 0 48625 NULL
+get_bridge_ifindices_fndecl_48632_fns get_bridge_ifindices fndecl 0 48632 NULL
+nsymbols_dsp_symbol_desc_48638_fns nsymbols dsp_symbol_desc 0 48638 NULL
+savemem_fndecl_48642_fns savemem fndecl 3 48642 NULL
@@ -208777,57 +213070,49 @@ index 0000000..510c554
+libcfs_kvzalloc_cpt_fndecl_48651_fns libcfs_kvzalloc_cpt fndecl 3 48651 NULL
+length_fw_cdev_send_request_48658_fns length fw_cdev_send_request 0 48658 NULL
+nn_rs_control_48667_fns nn rs_control 0 48667 NULL
-+make_cpu_key_fndecl_48699_fns make_cpu_key fndecl 3 48699 NULL
++max_rds_rings_netxen_adapter_48699_fns max_rds_rings netxen_adapter 0 48699 NULL
+mbox_test_signal_write_fndecl_48729_fns mbox_test_signal_write fndecl 3 48729 NULL
+vmw_view_add_fndecl_48730_fns vmw_view_add fndecl 7 48730 NULL
-+garmin_write_bulk_fndecl_48732_fns garmin_write_bulk fndecl 3 48732 NULL
+i40evf_allocate_virt_mem_d_fndecl_48753_fns i40evf_allocate_virt_mem_d fndecl 3 48753 NULL
+string_escape_mem_fndecl_48758_fns string_escape_mem fndecl 0 48758 NULL
+read_file_debug_fndecl_48771_fns read_file_debug fndecl 3 48771 NULL
+profile_load_fndecl_48776_fns profile_load fndecl 3 48776 NULL
+acpi_ds_build_internal_package_obj_fndecl_48780_fns acpi_ds_build_internal_package_obj fndecl 3 48780 NULL
-+len_spi_transfer_48802_fns len spi_transfer 0 48802 NULL
+iscsi_decode_text_input_fndecl_48807_fns iscsi_decode_text_input fndecl 4 48807 NULL
+r100_mm_rreg_fndecl_48823_fns r100_mm_rreg fndecl 0 48823 NULL
+omap_device_count_resources_fndecl_48829_fns omap_device_count_resources fndecl 0 48829 NULL
+__generic_file_fsync_fndecl_48835_fns __generic_file_fsync fndecl 2-3 48835 NULL
+tx_tx_start_int_templates_read_fndecl_48839_fns tx_tx_start_int_templates_read fndecl 3 48839 NULL
-+ieee80211_if_read_dot11MeshTTL_fndecl_48848_fns ieee80211_if_read_dot11MeshTTL fndecl 3 48848 NULL
+vmalloc_to_sg_fndecl_48865_fns vmalloc_to_sg fndecl 2 48865 NULL
+mpls_count_nexthops_fndecl_48869_fns mpls_count_nexthops fndecl 0 48869 NULL
+__copy_from_user_swizzled_fndecl_48882_fns __copy_from_user_swizzled fndecl 2-4 48882 NULL
+bylength_atto_vda_ae_hdr_48890_fns bylength atto_vda_ae_hdr 0 48890 NULL
-+regmap_cache_only_write_file_fndecl_48899_fns regmap_cache_only_write_file fndecl 3 48899 NULL
-+radeon_ttm_gtt_read_fndecl_48900_fns radeon_ttm_gtt_read fndecl 3 48900 NULL
-+_scif_nodeqp_send_fndecl_48929_fns _scif_nodeqp_send fndecl 0 48929 NULL
+xt_alloc_table_info_fndecl_48956_fns xt_alloc_table_info fndecl 1 48956 NULL
+user_dlm_lock_fndecl_48959_fns user_dlm_lock fndecl 6 48959 NULL
+xfs_mru_cache_create_fndecl_48964_fns xfs_mru_cache_create fndecl 3 48964 NULL
-+key_algorithm_read_fndecl_48969_fns key_algorithm_read fndecl 3 48969 NULL
+vtpm_proxy_fops_write_fndecl_48972_fns vtpm_proxy_fops_write fndecl 3 48972 NULL
+dma40_prep_dma_cyclic_fndecl_48976_fns dma40_prep_dma_cyclic fndecl 4-3 48976 NULL
-+mwifiex_hscfg_read_fndecl_48979_fns mwifiex_hscfg_read fndecl 3 48979 NULL
+sel_read_handle_unknown_fndecl_48990_fns sel_read_handle_unknown fndecl 3 48990 NULL
+ip_set_alloc_fndecl_49010_fns ip_set_alloc fndecl 1 49010 NULL
++compat_writev_fndecl_49017_fns compat_writev fndecl 3 49017 NULL
+rx_reset_counter_read_fndecl_49026_fns rx_reset_counter_read fndecl 3 49026 NULL
+usb_dmac_prep_slave_sg_fndecl_49027_fns usb_dmac_prep_slave_sg fndecl 3 49027 NULL
+devno_skd_device_49051_fns devno skd_device 0 49051 NULL
-+iwl_dbgfs_ucode_rx_stats_read_fndecl_49076_fns iwl_dbgfs_ucode_rx_stats_read fndecl 3 49076 NULL
++do_writepage_fndecl_49068_fns do_writepage fndecl 2 49068 NULL
+dev_priv_size_drm_buf_49086_fns dev_priv_size drm_buf 0 49086 NULL
-+cm4040_write_fndecl_49100_fns cm4040_write fndecl 3 49100 NULL nohasharray
-+usb_stor_acquire_resources_fndecl_49100_fns usb_stor_acquire_resources fndecl 0 49100 &cm4040_write_fndecl_49100_fns
++usb_stor_acquire_resources_fndecl_49100_fns usb_stor_acquire_resources fndecl 0 49100 NULL nohasharray
++cm4040_write_fndecl_49100_fns cm4040_write fndecl 3 49100 &usb_stor_acquire_resources_fndecl_49100_fns
+alloc_rbio_fndecl_49128_fns alloc_rbio fndecl 3 49128 NULL
++mad_seg_size_ib_mad_recv_wc_49134_fns mad_seg_size ib_mad_recv_wc 0 49134 NULL
+ufx_reg_clear_and_set_bits_fndecl_49150_fns ufx_reg_clear_and_set_bits fndecl 0 49150 NULL
+ipr_alloc_ucode_buffer_fndecl_49172_fns ipr_alloc_ucode_buffer fndecl 1 49172 NULL
-+allocate_probes_fndecl_49183_fns allocate_probes fndecl 1 49183 NULL
-+fsl_edma_prep_dma_cyclic_fndecl_49197_fns fsl_edma_prep_dma_cyclic fndecl 4-3 49197 NULL nohasharray
++fsl_edma_prep_dma_cyclic_fndecl_49197_fns fsl_edma_prep_dma_cyclic fndecl 3 49197 NULL nohasharray
+of_get_child_count_fndecl_49197_fns of_get_child_count fndecl 0 49197 &fsl_edma_prep_dma_cyclic_fndecl_49197_fns
+ocrdma_dbgfs_ops_read_fndecl_49211_fns ocrdma_dbgfs_ops_read fndecl 3 49211 NULL
+usbnet_read_cmd_fndecl_49216_fns usbnet_read_cmd fndecl 7 49216 NULL
+rx_xfr_hint_trig_read_fndecl_49224_fns rx_xfr_hint_trig_read fndecl 3 49224 NULL
-+rs_sta_dbgfs_scale_table_read_fndecl_49237_fns rs_sta_dbgfs_scale_table_read fndecl 3 49237 NULL
++dmpt_entry_sz_mlx4_dev_cap_49245_fns dmpt_entry_sz mlx4_dev_cap 0 49245 NULL
+dwDefaultFrameInterval_uvc_frame_49276_fns dwDefaultFrameInterval uvc_frame 0 49276 NULL
-+ib_get_mad_data_offset_fndecl_49283_fns ib_get_mad_data_offset fndecl 0 49283 NULL
+alloc_dev_fndecl_49294_fns alloc_dev fndecl 1 49294 NULL
+SAL_nasids_size_xpc_rsvd_page_49304_fns SAL_nasids_size xpc_rsvd_page 0 49304 NULL
+get_chars_fndecl_49318_fns get_chars fndecl 3 49318 NULL nohasharray
@@ -208838,86 +213123,84 @@ index 0000000..510c554
+__iterate_backrefs_fndecl_49345_fns __iterate_backrefs fndecl 2 49345 NULL
+num_msix_entries_qib_chip_specific_49373_fns num_msix_entries qib_chip_specific 0 49373 NULL
+num_simgs_icp_qat_suof_img_tbl_49375_fns num_simgs icp_qat_suof_img_tbl 0 49375 NULL
++x509_akid_note_serial_fndecl_49380_fns x509_akid_note_serial fndecl 5 49380 NULL
++pe_data_len_ip_vs_conn_49384_fns pe_data_len ip_vs_conn 0 49384 NULL
+tty_prepare_flip_string_fndecl_49408_fns tty_prepare_flip_string fndecl 3 49408 NULL
++next_bio_fndecl_49410_fns next_bio fndecl 2 49410 NULL
+lstcon_group_list_fndecl_49413_fns lstcon_group_list fndecl 2 49413 NULL
-+size_efx_farch_filter_table_49415_fns size efx_farch_filter_table 0 49415 NULL
-+main_segments_f2fs_sm_info_49433_fns main_segments f2fs_sm_info 0 49433 NULL
+mthca_array_init_fndecl_49440_fns mthca_array_init fndecl 2 49440 NULL
+fw_device_op_read_fndecl_49445_fns fw_device_op_read fndecl 3 49445 NULL
+broadsheetfb_write_fndecl_49467_fns broadsheetfb_write fndecl 3 49467 NULL
+xen_hvm_config_fndecl_49473_fns xen_hvm_config fndecl 2 49473 NULL
-+ivtvfb_write_fndecl_49476_fns ivtvfb_write fndecl 3 49476 NULL
++wm8731_set_dai_sysclk_fndecl_49486_fns wm8731_set_dai_sysclk fndecl 3 49486 NULL
++add_tty_fndecl_49508_fns add_tty fndecl 1 49508 NULL
+datablob_hmac_append_fndecl_49525_fns datablob_hmac_append fndecl 3 49525 NULL
++mtt_entry_sz_mlx4_caps_49531_fns mtt_entry_sz mlx4_caps 0 49531 NULL
++vfs_readv_fndecl_49565_fns vfs_readv fndecl 3 49565 NULL
+pt_write_fndecl_49612_fns pt_write fndecl 3 49612 NULL
+ocfs2_sync_file_fndecl_49614_fns ocfs2_sync_file fndecl 2-3 49614 NULL
+dwc2_max_desc_num_fndecl_49623_fns dwc2_max_desc_num fndecl 0 49623 NULL
+end_async_cow_49625_fns end async_cow 0 49625 NULL
-+ath10k_write_simulate_fw_crash_fndecl_49628_fns ath10k_write_simulate_fw_crash fndecl 3 49628 NULL
++list_size_of_flash_49643_fns list_size of_flash 0 49643 NULL
+iocbq_lookup_len_lpfc_sli_49647_fns iocbq_lookup_len lpfc_sli 0 49647 NULL
+size_unit_element_struct_49673_fns size unit_element_struct 0 49673 NULL
+__seq_open_private_fndecl_49688_fns __seq_open_private fndecl 3 49688 NULL
+batadv_iv_ogm_drop_bcast_own_entry_fndecl_49690_fns batadv_iv_ogm_drop_bcast_own_entry fndecl 2 49690 NULL
-+report_size_iowarrior_49692_fns report_size iowarrior 0 49692 NULL
+security_inode_listxattr_fndecl_49699_fns security_inode_listxattr fndecl 0 49699 NULL
+pg_write_fndecl_49709_fns pg_write fndecl 3 49709 NULL
-+ieee80211_if_read_rc_rateidx_vht_mcs_mask_5ghz_fndecl_49710_fns ieee80211_if_read_rc_rateidx_vht_mcs_mask_5ghz fndecl 3 49710 NULL
+brd_init_one_fndecl_49718_fns brd_init_one fndecl 1 49718 NULL
++pyra_sysfs_read_fndecl_49736_fns pyra_sysfs_read fndecl 6 49736 NULL
+kernfs_fop_read_fndecl_49745_fns kernfs_fop_read fndecl 3 49745 NULL
-+mlx5_alloc_priv_descs_fndecl_49758_fns mlx5_alloc_priv_descs fndecl 3-4 49758 NULL
++mlx5_alloc_priv_descs_fndecl_49758_fns mlx5_alloc_priv_descs fndecl 4-3 49758 NULL
+dwFrameInterval_uvc_streaming_control_49771_fns dwFrameInterval uvc_streaming_control 0 49771 NULL
-+rtw_add_beacon_fndecl_49778_fns rtw_add_beacon fndecl 5-3 49778 NULL
+nilfs_mdt_init_fndecl_49794_fns nilfs_mdt_init fndecl 3 49794 NULL
-+write_file_wow_fndecl_49799_fns write_file_wow fndecl 3 49799 NULL
+response_length_ib_uverbs_ex_query_device_resp_49831_fns response_length ib_uverbs_ex_query_device_resp 0 49831 NULL
+read_file_queue_fndecl_49836_fns read_file_queue fndecl 3 49836 NULL
++vol_cdev_write_fndecl_49856_fns vol_cdev_write fndecl 3 49856 NULL
+waiters_read_fndecl_49877_fns waiters_read fndecl 3 49877 NULL
+isdn_add_channels_fndecl_49882_fns isdn_add_channels fndecl 3 49882 NULL
+head_len_beacon_attr_49884_fns head_len beacon_attr 0 49884 NULL
+path_listxattr_fndecl_49894_fns path_listxattr fndecl 3 49894 NULL
+snd_vx_create_fndecl_49895_fns snd_vx_create fndecl 4 49895 NULL
-+max_sds_rings_netxen_adapter_49896_fns max_sds_rings netxen_adapter 0 49896 NULL
++block_descriptor_length_scsi_mode_data_49918_fns block_descriptor_length scsi_mode_data 0 49918 NULL
++cpuhp_reserve_state_fndecl_49925_fns cpuhp_reserve_state fndecl 0 49925 NULL
+skd_max_queue_depth_vardecl_skd_main_c_49938_fns skd_max_queue_depth vardecl_skd_main.c 0 49938 NULL
+tomoyo_update_policy_fndecl_49945_fns tomoyo_update_policy fndecl 2 49945 NULL
+__ethtool_get_sset_count_fndecl_49964_fns __ethtool_get_sset_count fndecl 0 49964 NULL
+mbox_size_wl1271_49981_fns mbox_size wl1271 0 49981 NULL
+buffer_target_count_pvr2_stream_49996_fns buffer_target_count pvr2_stream 0 49996 NULL
+ff_effects_max_uinput_device_49998_fns ff_effects_max uinput_device 0 49998 NULL
-+ixgbe_dbg_reg_ops_read_fndecl_49999_fns ixgbe_dbg_reg_ops_read fndecl 3 49999 NULL
++bl_alloc_init_bio_fndecl_50026_fns bl_alloc_init_bio fndecl 1 50026 NULL
+ima_write_policy_fndecl_50039_fns ima_write_policy fndecl 3 50039 NULL
+esp_alloc_tmp_fndecl_50045_fns esp_alloc_tmp fndecl 2-3 50045 NULL
+get_priv_descr_and_size_fndecl_50103_fns get_priv_descr_and_size fndecl 0 50103 NULL
+pipeline_rx_complete_stat_fifo_int_read_fndecl_50124_fns pipeline_rx_complete_stat_fifo_int_read fndecl 3 50124 NULL
+usb_set_interface_fndecl_50126_fns usb_set_interface fndecl 0 50126 NULL
-+max_burst_whc_qset_50130_fns max_burst whc_qset 0 50130 NULL
+pid_nr_ns_fndecl_50141_fns pid_nr_ns fndecl 0 50141 NULL
-+nfc_hci_set_param_fndecl_50154_fns nfc_hci_set_param fndecl 5 50154 NULL nohasharray
-+size_ubifs_data_node_50154_fns size ubifs_data_node 0 50154 &nfc_hci_set_param_fndecl_50154_fns
-+videobuf_dma_init_user_locked_fndecl_50165_fns videobuf_dma_init_user_locked fndecl 3-4 50165 NULL
++size_ubifs_data_node_50154_fns size ubifs_data_node 0 50154 NULL
++max_inbound_iu_length_pqi_ctrl_info_50155_fns max_inbound_iu_length pqi_ctrl_info 0 50155 NULL
++fops_read_fndecl_50163_fns fops_read fndecl 3 50163 NULL
+pci_enable_resources_fndecl_50171_fns pci_enable_resources fndecl 0 50171 NULL
++ubi_more_update_data_fndecl_50182_fns ubi_more_update_data fndecl 4 50182 NULL
+nested_cr3_nested_state_50183_fns nested_cr3 nested_state 0 50183 NULL
-+gfs2_create_inode_fndecl_50184_fns gfs2_create_inode fndecl 7 50184 NULL
+echo_client_kbrw_fndecl_50193_fns echo_client_kbrw fndecl 6 50193 NULL
-+s_zmap_blocks_minix_sb_info_50206_fns s_zmap_blocks minix_sb_info 0 50206 NULL
-+mwifiex_verext_read_fndecl_50224_fns mwifiex_verext_read fndecl 3 50224 NULL
-+pwr_cont_miss_bcns_spread_read_fndecl_50241_fns pwr_cont_miss_bcns_spread_read fndecl 3 50241 NULL
++pwr_cont_miss_bcns_spread_read_fndecl_50241_fns pwr_cont_miss_bcns_spread_read fndecl 3 50241 NULL nohasharray
++r128_compat_ioctl_fndecl_50241_fns r128_compat_ioctl fndecl 2 50241 &pwr_cont_miss_bcns_spread_read_fndecl_50241_fns
++lprocfs_wr_root_squash_fndecl_50252_fns lprocfs_wr_root_squash fndecl 2 50252 NULL
+posix_acl_to_xattr_fndecl_50262_fns posix_acl_to_xattr fndecl 0 50262 NULL
+buf_struct_size_vb2_queue_50266_fns buf_struct_size vb2_queue 0 50266 NULL
+rx_filter_protection_filter_read_fndecl_50273_fns rx_filter_protection_filter_read fndecl 3 50273 NULL
-+_iwl_dbgfs_pm_params_write_fndecl_50318_fns _iwl_dbgfs_pm_params_write fndecl 3 50318 NULL
-+__vmalloc_node_fndecl_50335_fns __vmalloc_node fndecl 1-2 50335 NULL
++msix_capability_init_fndecl_50297_fns msix_capability_init fndecl 3-0 50297 NULL
++__vmalloc_node_fndecl_50335_fns __vmalloc_node fndecl 2 50335 NULL
+__copy_from_user_nocache_fndecl_50340_fns __copy_from_user_nocache fndecl 3 50340 NULL
+next_minor_vardecl_md_c_50357_fns next_minor vardecl_md.c 0 50357 NULL
-+regmap_name_read_file_fndecl_50368_fns regmap_name_read_file fndecl 3 50368 NULL
+fnic_trace_debugfs_read_fndecl_50375_fns fnic_trace_debugfs_read fndecl 3 50375 NULL
-+user_power_read_fndecl_50405_fns user_power_read fndecl 3 50405 NULL
+size_uvc_clock_50418_fns size uvc_clock 0 50418 NULL
+ecc_alloc_point_fndecl_50432_fns ecc_alloc_point fndecl 1 50432 NULL
+sbp_count_se_tpg_luns_fndecl_50444_fns sbp_count_se_tpg_luns fndecl 0 50444 NULL
-+il_dbgfs_sram_write_fndecl_50445_fns il_dbgfs_sram_write fndecl 3 50445 NULL
+nfsd_drc_mem_used_vardecl_50456_fns nfsd_drc_mem_used vardecl 0 50456 NULL
+__ath6kl_wmi_send_mgmt_cmd_fndecl_50472_fns __ath6kl_wmi_send_mgmt_cmd fndecl 7 50472 NULL
+buf_size_dmatest_params_50477_fns buf_size dmatest_params 0 50477 NULL
-+lpfc_idiag_extacc_write_fndecl_50501_fns lpfc_idiag_extacc_write fndecl 3 50501 NULL
+OSDSetBlock_fndecl_50521_fns OSDSetBlock fndecl 2-4 50521 NULL
+get_nodes_fndecl_50551_fns get_nodes fndecl 3 50551 NULL
+do_write_kmem_fndecl_50584_fns do_write_kmem fndecl 0-1-3 50584 NULL
@@ -208927,10 +213210,10 @@ index 0000000..510c554
+keymap_size_dell_dmi_results_50640_fns keymap_size dell_dmi_results 0 50640 NULL
+tomoyo_truncate_fndecl_50642_fns tomoyo_truncate fndecl 0 50642 NULL
+xor_sources_dmatest_params_50653_fns xor_sources dmatest_params 0 50653 NULL
-+qsfp2_debugfs_write_fndecl_50656_fns qsfp2_debugfs_write fndecl 3 50656 NULL
+proc_coredump_filter_read_fndecl_50658_fns proc_coredump_filter_read fndecl 3 50658 NULL
+da9150_i2c_write_device_fndecl_50670_fns da9150_i2c_write_device fndecl 3 50670 NULL
-+alloc_ring_fndecl_50684_fns alloc_ring fndecl 2-4 50684 NULL
++nclips_bttv_overlay_50673_fns nclips bttv_overlay 0 50673 NULL
++alloc_ring_fndecl_50684_fns alloc_ring fndecl 4-2 50684 NULL
+get_device_info_fndecl_50718_fns get_device_info fndecl 0 50718 NULL
+dm_create_fndecl_50754_fns dm_create fndecl 1 50754 NULL
+ip_vs_sync_buff_create_fndecl_50787_fns ip_vs_sync_buff_create fndecl 2 50787 NULL
@@ -208946,10 +213229,13 @@ index 0000000..510c554
+pwr_ap_sleep_user_conf_read_fndecl_50848_fns pwr_ap_sleep_user_conf_read fndecl 3 50848 NULL
+force_bredr_smp_read_fndecl_50855_fns force_bredr_smp_read fndecl 3 50855 NULL
+alloc_disk_fndecl_50861_fns alloc_disk fndecl 1 50861 NULL
++max_ceqs_i40iw_hmc_fpm_misc_50878_fns max_ceqs i40iw_hmc_fpm_misc 0 50878 NULL
+ie_len_ieee80211_if_ibss_50890_fns ie_len ieee80211_if_ibss 0 50890 NULL nohasharray
+pkt_add_fndecl_50890_fns pkt_add fndecl 3 50890 &ie_len_ieee80211_if_ibss_50890_fns
+req_len_proxy_dev_50912_fns req_len proxy_dev 0 50912 NULL
-+oom_score_adj_read_fndecl_50914_fns oom_score_adj_read fndecl 3 50914 NULL
++exofs_read_kern_fndecl_50914_fns exofs_read_kern fndecl 6 50914 NULL nohasharray
++oom_score_adj_read_fndecl_50914_fns oom_score_adj_read fndecl 3 50914 &exofs_read_kern_fndecl_50914_fns
++sa11x0_dma_prep_dma_cyclic_fndecl_50916_fns sa11x0_dma_prep_dma_cyclic fndecl 3-4 50916 NULL
+init_sc_pools_and_sizes_fndecl_50922_fns init_sc_pools_and_sizes fndecl 0 50922 NULL
+first_minor_gendisk_50925_fns first_minor gendisk 0 50925 NULL
+read_file_modal_eeprom_fndecl_50934_fns read_file_modal_eeprom fndecl 3 50934 NULL
@@ -208957,80 +213243,74 @@ index 0000000..510c554
+gen_pool_add_virt_fndecl_50938_fns gen_pool_add_virt fndecl 4 50938 NULL
+wil_rx_init_fndecl_50939_fns wil_rx_init fndecl 2 50939 NULL
+reg_list_size_bytes_amdgpu_rlc_50951_fns reg_list_size_bytes amdgpu_rlc 0 50951 NULL
-+brcmf_p2p_escan_fndecl_50953_fns brcmf_p2p_escan fndecl 2 50953 NULL
+nsegments_dsp_module_desc_50965_fns nsegments dsp_module_desc 0 50965 NULL
+memdup_user_nul_fndecl_50968_fns memdup_user_nul fndecl 2 50968 NULL
-+sdma_get_descq_cnt_fndecl_50975_fns sdma_get_descq_cnt fndecl 0 50975 NULL
+setkey_unaligned_fndecl_50977_fns setkey_unaligned fndecl 3 50977 NULL
+n_hdlc_tty_receive_fndecl_50980_fns n_hdlc_tty_receive fndecl 4 50980 NULL
+usif_ioctl_fndecl_50986_fns usif_ioctl fndecl 3 50986 NULL
-+mic_desc_size_fndecl_51003_fns mic_desc_size fndecl 0 51003 NULL
+ib_uverbs_create_srq_fndecl_51025_fns ib_uverbs_create_srq fndecl 4-5 51025 NULL
+int_proc_write_fndecl_51045_fns int_proc_write fndecl 3 51045 NULL
+mlxsw_sp_port_prio_tc_set_fndecl_51047_fns mlxsw_sp_port_prio_tc_set fndecl 0 51047 NULL
+cl_req_alloc_fndecl_51056_fns cl_req_alloc fndecl 4 51056 NULL
-+datablob_format_fndecl_51072_fns datablob_format fndecl 2 51072 NULL nohasharray
-+ieee80211_if_read_fwded_mcast_fndecl_51072_fns ieee80211_if_read_fwded_mcast fndecl 3 51072 &datablob_format_fndecl_51072_fns
++datablob_format_fndecl_51072_fns datablob_format fndecl 2 51072 NULL
+pp_write_fndecl_51089_fns pp_write fndecl 3 51089 NULL
+copy_chunked_from_user_fndecl_51106_fns copy_chunked_from_user fndecl 3 51106 NULL
+memblock_virt_alloc_internal_fndecl_51107_fns memblock_virt_alloc_internal fndecl 1 51107 NULL
+queue_count_nvme_rdma_ctrl_51126_fns queue_count nvme_rdma_ctrl 0 51126 NULL
-+igb_pci_enable_sriov_fndecl_51131_fns igb_pci_enable_sriov fndecl 2 51131 NULL
-+wqe_cnt_mlx4_ib_wq_51135_fns wqe_cnt mlx4_ib_wq 0 51135 NULL
++max_write_sge_ib_qp_51132_fns max_write_sge ib_qp 0 51132 NULL
+nfs_idmap_get_key_fndecl_51155_fns nfs_idmap_get_key fndecl 2 51155 NULL
+num_backlights_lm3533_platform_data_51165_fns num_backlights lm3533_platform_data 0 51165 NULL
+kvm_read_guest_cached_fndecl_51169_fns kvm_read_guest_cached fndecl 4 51169 NULL
+__dev_alloc_name_fndecl_51173_fns __dev_alloc_name fndecl 0 51173 NULL
+v4l_stk_read_fndecl_51179_fns v4l_stk_read fndecl 3 51179 NULL
+snd_rme32_capture_copy_fndecl_51190_fns snd_rme32_capture_copy fndecl 5 51190 NULL
-+prism2_info_hostscanresults_fndecl_51194_fns prism2_info_hostscanresults fndecl 3 51194 NULL
++prism2_info_hostscanresults_fndecl_51194_fns prism2_info_hostscanresults fndecl 3 51194 NULL nohasharray
++fip_op_fip_header_51194_fns fip_op fip_header 0 51194 &prism2_info_hostscanresults_fndecl_51194_fns
+drm_dp_dpcd_access_fndecl_51196_fns drm_dp_dpcd_access fndecl 0 51196 NULL
+btrfs_extent_same_fndecl_51200_fns btrfs_extent_same fndecl 3 51200 NULL
++max_num_vringh_kiov_51202_fns max_num vringh_kiov 0 51202 NULL
+kvm_clear_guest_fndecl_51207_fns kvm_clear_guest fndecl 3-2 51207 NULL
-+goodix_i2c_write_fndecl_51209_fns goodix_i2c_write fndecl 4 51209 NULL
-+mei_dbgfs_read_activation_fndecl_51224_fns mei_dbgfs_read_activation fndecl 3 51224 NULL
-+rt2x00debug_write_rf_fndecl_51232_fns rt2x00debug_write_rf fndecl 3 51232 NULL
+get_ucode_user_fndecl_51241_fns get_ucode_user fndecl 3 51241 NULL
++cdev_add_fndecl_51251_fns cdev_add fndecl 3 51251 NULL
+imxdma_prep_dma_cyclic_fndecl_51257_fns imxdma_prep_dma_cyclic fndecl 4-3 51257 NULL
-+ceph_decode_16_fndecl_51276_fns ceph_decode_16 fndecl 0 51276 NULL
++osd_req_list_partition_collections_fndecl_51292_fns osd_req_list_partition_collections fndecl 5 51292 NULL
+ramoops_read_kmsg_hdr_fndecl_51300_fns ramoops_read_kmsg_hdr fndecl 0 51300 NULL
-+mthca_alloc_icm_table_fndecl_51311_fns mthca_alloc_icm_table fndecl 3-4 51311 NULL nohasharray
-+ieee80211_if_read_auto_open_plinks_fndecl_51311_fns ieee80211_if_read_auto_open_plinks fndecl 3 51311 &mthca_alloc_icm_table_fndecl_51311_fns
++mthca_alloc_icm_table_fndecl_51311_fns mthca_alloc_icm_table fndecl 3-4 51311 NULL
+_ipw_read_reg32_fndecl_51318_fns _ipw_read_reg32 fndecl 0 51318 NULL
-+drv_sds_rings_qlcnic_adapter_51319_fns drv_sds_rings qlcnic_adapter 0 51319 NULL
+dvb_register_device_fndecl_51331_fns dvb_register_device fndecl 6-0 51331 NULL
+C_SYSC_pselect6_fndecl_51339_fns C_SYSC_pselect6 fndecl 1 51339 NULL
+xfs_bmbt_to_bmdr_fndecl_51344_fns xfs_bmbt_to_bmdr fndecl 3 51344 NULL nohasharray
+xfs_bmdr_to_bmbt_fndecl_51344_fns xfs_bmdr_to_bmbt fndecl 5 51344 &xfs_bmbt_to_bmdr_fndecl_51344_fns
+dev_change_flags_fndecl_51349_fns dev_change_flags fndecl 0 51349 NULL
+isr_rx_headers_read_fndecl_51366_fns isr_rx_headers_read fndecl 3 51366 NULL
++lprocfs_wr_nosquash_nids_fndecl_51370_fns lprocfs_wr_nosquash_nids fndecl 2 51370 NULL
+uvc_try_frame_interval_fndecl_51372_fns uvc_try_frame_interval fndecl 0-2 51372 NULL
+ucma_query_path_fndecl_51378_fns ucma_query_path fndecl 3 51378 NULL
+num_queues_virtio_scsi_51387_fns num_queues virtio_scsi 0 51387 NULL nohasharray
+__ptr_ring_init_queue_alloc_fndecl_51387_fns __ptr_ring_init_queue_alloc fndecl 1 51387 &num_queues_virtio_scsi_51387_fns
-+kmemleak_alloc_recursive_fndecl_51410_fns kmemleak_alloc_recursive fndecl 2 51410 NULL
-+num_rx_queues_ixgbevf_adapter_51428_fns num_rx_queues ixgbevf_adapter 0 51428 NULL
++mixer_channels_fw_spkr_51437_fns mixer_channels fw_spkr 0 51437 NULL
+send_extent_data_fndecl_51438_fns send_extent_data fndecl 2 51438 NULL
-+max_cmds_ipr_ioa_cfg_51439_fns max_cmds ipr_ioa_cfg 0 51439 NULL
-+compat_sys_rt_sigpending_fndecl_51480_fns compat_sys_rt_sigpending fndecl 2 51480 NULL nohasharray
-+vb2_dma_sg_alloc_fndecl_51480_fns vb2_dma_sg_alloc fndecl 3 51480 &compat_sys_rt_sigpending_fndecl_51480_fns
++nr_segments_blkif_request_indirect_51457_fns nr_segments blkif_request_indirect 0 51457 NULL
++compat_sys_rt_sigpending_fndecl_51480_fns compat_sys_rt_sigpending fndecl 2 51480 NULL
+num_vectors_mic_irq_info_51485_fns num_vectors mic_irq_info 0 51485 NULL
+end_soundfont_sample_info_51497_fns end soundfont_sample_info 0 51497 NULL
-+fw_handle_comment_fndecl_51503_fns fw_handle_comment fndecl 3 51503 NULL
-+_rtw_malloc_fndecl_51515_fns _rtw_malloc fndecl 1 51515 NULL
++pkt_alloc_packet_data_fndecl_51515_fns pkt_alloc_packet_data fndecl 1 51515 NULL nohasharray
++_rtw_malloc_fndecl_51515_fns _rtw_malloc fndecl 1 51515 &pkt_alloc_packet_data_fndecl_51515_fns
+nfp_net_rx_ring_alloc_fndecl_51524_fns nfp_net_rx_ring_alloc fndecl 3 51524 NULL
-+fifo_alloc_fndecl_51546_fns fifo_alloc fndecl 1 51546 NULL
++fifo_alloc_fndecl_51546_fns fifo_alloc fndecl 1 51546 NULL nohasharray
++scan_bytes_iio_dev_51546_fns scan_bytes iio_dev 0 51546 &fifo_alloc_fndecl_51546_fns
++validate_nan_filter_fndecl_51547_fns validate_nan_filter fndecl 0 51547 NULL
++rds_rdma_extra_size_fndecl_51573_fns rds_rdma_extra_size fndecl 0 51573 NULL
+persistent_ram_old_size_fndecl_51582_fns persistent_ram_old_size fndecl 0 51582 NULL
+aggr_recv_addba_req_evt_fndecl_51590_fns aggr_recv_addba_req_evt fndecl 4 51590 NULL
-+il_dbgfs_chain_noise_read_fndecl_51599_fns il_dbgfs_chain_noise_read fndecl 3 51599 NULL
+wilc_add_beacon_fndecl_51601_fns wilc_add_beacon fndecl 6-4 51601 NULL
+vfp_get_fndecl_51605_fns vfp_get fndecl 3-4 51605 NULL
+etb_get_buffer_depth_fndecl_51607_fns etb_get_buffer_depth fndecl 0 51607 NULL
+cifs_send_async_read_fndecl_51630_fns cifs_send_async_read fndecl 2 51630 NULL
+sysfs_do_create_link_fndecl_51632_fns sysfs_do_create_link fndecl 0 51632 NULL
-+wil_vring_init_bcast_fndecl_51633_fns wil_vring_init_bcast fndecl 3 51633 NULL nohasharray
-+_iwl_dbgfs_fw_dbg_conf_write_fndecl_51633_fns _iwl_dbgfs_fw_dbg_conf_write fndecl 3 51633 &wil_vring_init_bcast_fndecl_51633_fns
++wil_vring_init_bcast_fndecl_51633_fns wil_vring_init_bcast fndecl 3 51633 NULL
+_xfs_buf_alloc_fndecl_51641_fns _xfs_buf_alloc fndecl 3 51641 NULL
++amdgpu_cgs_add_irq_source_fndecl_51642_fns amdgpu_cgs_add_irq_source fndecl 3 51642 NULL
+nsm_create_handle_fndecl_51647_fns nsm_create_handle fndecl 4 51647 NULL
+ath10k_mem_value_read_fndecl_51648_fns ath10k_mem_value_read fndecl 3 51648 NULL
+inet_set_ifa_fndecl_51661_fns inet_set_ifa fndecl 0 51661 NULL
@@ -209042,29 +213322,22 @@ index 0000000..510c554
+proc_self_readlink_fndecl_51677_fns proc_self_readlink fndecl 3 51677 NULL
+request_key_auth_new_fndecl_51679_fns request_key_auth_new fndecl 3 51679 NULL
+num_req_context_skd_device_51707_fns num_req_context skd_device 0 51707 NULL
-+iscsit_dump_data_payload_fndecl_51720_fns iscsit_dump_data_payload fndecl 2 51720 NULL
-+ib_uverbs_modify_qp_fndecl_51721_fns ib_uverbs_modify_qp fndecl 4-5 51721 NULL nohasharray
-+nlimbs_gcry_mpi_51721_fns nlimbs gcry_mpi 0 51721 &ib_uverbs_modify_qp_fndecl_51721_fns
++f2fs_kmalloc_fndecl_51712_fns f2fs_kmalloc fndecl 2 51712 NULL
++nlimbs_gcry_mpi_51721_fns nlimbs gcry_mpi 0 51721 NULL nohasharray
++ib_uverbs_modify_qp_fndecl_51721_fns ib_uverbs_modify_qp fndecl 4-5 51721 &nlimbs_gcry_mpi_51721_fns
++output_sync_fndecl_51729_fns output_sync fndecl 3 51729 NULL
+acpi_copy_property_array_u32_fndecl_51744_fns acpi_copy_property_array_u32 fndecl 0 51744 NULL
-+sd_size_stat_data_v1_51758_fns sd_size stat_data_v1 0 51758 NULL
++rbio_add_io_page_fndecl_51775_fns rbio_add_io_page fndecl 6 51775 NULL
+btusb_qca_send_vendor_req_fndecl_51785_fns btusb_qca_send_vendor_req fndecl 4 51785 NULL
-+iwl_dbgfs_thermal_throttling_read_fndecl_51816_fns iwl_dbgfs_thermal_throttling_read fndecl 3 51816 NULL
-+bcache_device_init_fndecl_51822_fns bcache_device_init fndecl 3 51822 NULL
+do_pci_enable_device_fndecl_51841_fns do_pci_enable_device fndecl 0 51841 NULL
+ipv6_renew_option_fndecl_51854_fns ipv6_renew_option fndecl 3 51854 NULL
+nr_dma_pages_drm_savage_private_51862_fns nr_dma_pages drm_savage_private 0 51862 NULL
-+direct_entry_fndecl_51879_fns direct_entry fndecl 3 51879 NULL
+sys_select_fndecl_51896_fns sys_select fndecl 1 51896 NULL
+interfaces_fndecl_51928_fns interfaces fndecl 2 51928 NULL
+traverse_fndecl_51938_fns traverse fndecl 2 51938 NULL
-+nci_core_conn_create_fndecl_51946_fns nci_core_conn_create fndecl 4 51946 NULL
+__blk_queue_init_tags_fndecl_51956_fns __blk_queue_init_tags fndecl 2 51956 NULL
+ofdpa_group_l2_fan_out_fndecl_51958_fns ofdpa_group_l2_fan_out fndecl 4 51958 NULL
+max_data_size_mpt3_ioctl_header_51964_fns max_data_size mpt3_ioctl_header 0 51964 NULL
-+dbgfs_state_fndecl_51965_fns dbgfs_state fndecl 3 51965 NULL
-+ieee80211_if_read_dtim_count_fndecl_51968_fns ieee80211_if_read_dtim_count fndecl 3 51968 NULL
-+pmcraid_copy_sglist_fndecl_51980_fns pmcraid_copy_sglist fndecl 3 51980 NULL
-+mlx5_query_port_ptys_fndecl_52003_fns mlx5_query_port_ptys fndecl 3 52003 NULL
+kvm_write_guest_fndecl_52005_fns kvm_write_guest fndecl 4-2 52005 NULL
+videobuf_waiton_fndecl_52008_fns videobuf_waiton fndecl 0 52008 NULL
+seq_commit_fndecl_52023_fns seq_commit fndecl 2 52023 NULL
@@ -209072,66 +213345,58 @@ index 0000000..510c554
+ttm_dma_page_alloc_init_fndecl_52037_fns ttm_dma_page_alloc_init fndecl 2 52037 NULL
+btrfs_next_old_leaf_fndecl_52050_fns btrfs_next_old_leaf fndecl 0 52050 NULL
+wil_read_file_led_cfg_fndecl_52057_fns wil_read_file_led_cfg fndecl 3 52057 NULL
-+_iwl_dbgfs_scan_ant_rxchain_write_fndecl_52060_fns _iwl_dbgfs_scan_ant_rxchain_write fndecl 3 52060 NULL
+event_rx_mismatch_read_fndecl_52069_fns event_rx_mismatch_read fndecl 3 52069 NULL
++nvbios_rd32_fndecl_52086_fns nvbios_rd32 fndecl 0 52086 NULL
+iscsi_create_iface_fndecl_52093_fns iscsi_create_iface fndecl 5 52093 NULL
+dev_names_read_fndecl_52094_fns dev_names_read fndecl 3 52094 NULL
-+assoc_rem_len_amp_ctrl_52099_fns assoc_rem_len amp_ctrl 0 52099 NULL
-+drv_tx_rings_qlcnic_adapter_52102_fns drv_tx_rings qlcnic_adapter 0 52102 NULL
+cache_random_seq_create_fndecl_52109_fns cache_random_seq_create fndecl 2 52109 NULL
-+fjes_hw_get_max_epid_fndecl_52129_fns fjes_hw_get_max_epid fndecl 0 52129 NULL
+snd_nm256_playback_copy_fndecl_52148_fns snd_nm256_playback_copy fndecl 5 52148 NULL
-+il4965_rs_sta_dbgfs_scale_table_read_fndecl_52151_fns il4965_rs_sta_dbgfs_scale_table_read fndecl 3 52151 NULL
-+indirect_sg_entries_vardecl_ib_srp_c_52165_fns indirect_sg_entries vardecl_ib_srp.c 0 52165 NULL
++sbitmap_init_node_fndecl_52173_fns sbitmap_init_node fndecl 2-3 52173 NULL
+rd_allocate_sgl_table_fndecl_52188_fns rd_allocate_sgl_table fndecl 3 52188 NULL
+regmap_calc_reg_len_fndecl_52195_fns regmap_calc_reg_len fndecl 0 52195 NULL
+qp_broker_alloc_fndecl_52197_fns qp_broker_alloc fndecl 6-5 52197 NULL
+audit_init_entry_fndecl_52199_fns audit_init_entry fndecl 1 52199 NULL
-+write_enabled_file_bool_fndecl_52213_fns write_enabled_file_bool fndecl 3 52213 NULL
-+size_elf_note_info_52250_fns size elf_note_info 0 52250 NULL
++snd_hda_get_conn_list_fndecl_52255_fns snd_hda_get_conn_list fndecl 0 52255 NULL
++channels_count_gb_light_52264_fns channels_count gb_light 0 52264 NULL
+num_alt_cx231xx_audio_52283_fns num_alt cx231xx_audio 0 52283 NULL
+rts51x_get_max_lun_fndecl_52294_fns rts51x_get_max_lun fndecl 0 52294 NULL
-+alloc_page_ext_fndecl_52310_fns alloc_page_ext fndecl 1 52310 NULL
+cmd_len_c2h_evt_hdr_52322_fns cmd_len c2h_evt_hdr 0 52322 NULL
+rx_filter_dup_filter_read_fndecl_52325_fns rx_filter_dup_filter_read fndecl 3 52325 NULL
-+iwl_dbgfs_d3_sram_read_fndecl_52326_fns iwl_dbgfs_d3_sram_read fndecl 3 52326 NULL
+luns_per_chnl_nvm_dev_52339_fns luns_per_chnl nvm_dev 0 52339 NULL
+__do_replace_fndecl_52344_fns __do_replace fndecl 5 52344 NULL
+xpc_connect_fndecl_52346_fns xpc_connect fndecl 5 52346 NULL
-+_iwl_dbgfs_fw_restart_write_fndecl_52357_fns _iwl_dbgfs_fw_restart_write fndecl 3 52357 NULL
+rtl_read_byte_fndecl_52358_fns rtl_read_byte fndecl 0 52358 NULL
+nested_svm_map_fndecl_52359_fns nested_svm_map fndecl 2 52359 NULL
+num_phys_mptsas_portinfo_52375_fns num_phys mptsas_portinfo 0 52375 NULL
+nrealreaders_vardecl_rcutorture_c_52376_fns nrealreaders vardecl_rcutorture.c 0 52376 NULL
+error_tbc_exch_mismatch_read_fndecl_52388_fns error_tbc_exch_mismatch_read fndecl 3 52388 NULL
-+ieee80211_if_read_power_mode_fndecl_52394_fns ieee80211_if_read_power_mode fndecl 3 52394 NULL
+command_fndecl_52411_fns command fndecl 0 52411 NULL
++type_sctp_chunkhdr_52413_fns type sctp_chunkhdr 0 52413 NULL
+scsi_mode_select_fndecl_52417_fns scsi_mode_select fndecl 6 52417 NULL nohasharray
-+drm_fbdev_cma_init_fndecl_52417_fns drm_fbdev_cma_init fndecl 3-4-2 52417 &scsi_mode_select_fndecl_52417_fns
++drm_fbdev_cma_init_fndecl_52417_fns drm_fbdev_cma_init fndecl 3-2 52417 &scsi_mode_select_fndecl_52417_fns
+sddr09_read_control_fndecl_52418_fns sddr09_read_control fndecl 3-5 52418 NULL
+security_inode_getsecurity_fndecl_52473_fns security_inode_getsecurity fndecl 0 52473 NULL
++ib_ucm_alloc_data_fndecl_52486_fns ib_ucm_alloc_data fndecl 3 52486 NULL
++user_base_rvt_mregion_52489_fns user_base rvt_mregion 0 52489 NULL
+tx_tx_data_programmed_read_fndecl_52500_fns tx_tx_data_programmed_read fndecl 3 52500 NULL
+ControllerNumber_DAC960_Controller_52503_fns ControllerNumber DAC960_Controller 0 52503 NULL
+svc_setsockopt_fndecl_52511_fns svc_setsockopt fndecl 5 52511 NULL
+selinux_inode_notifysecctx_fndecl_52531_fns selinux_inode_notifysecctx fndecl 3 52531 NULL
+data_size_binder_transaction_data_52567_fns data_size binder_transaction_data 0 52567 NULL
-+il4965_rs_sta_dbgfs_scale_table_write_fndecl_52576_fns il4965_rs_sta_dbgfs_scale_table_write fndecl 3 52576 NULL
++device_create_groups_vargs_fndecl_52576_fns device_create_groups_vargs fndecl 3 52576 NULL
++mv88e6xxx_port_db_dump_fid_fndecl_52590_fns mv88e6xxx_port_db_dump_fid fndecl 3 52590 NULL
+auok190xfb_write_fndecl_52634_fns auok190xfb_write fndecl 3 52634 NULL
+setxattr_fndecl_52637_fns setxattr fndecl 4 52637 NULL
+page_count_drm_device_dma_52645_fns page_count drm_device_dma 0 52645 NULL
+num_txq_per_tx_bnad_52646_fns num_txq_per_tx bnad 0 52646 NULL
+ieee80211_chsw_switch_vifs_fndecl_52661_fns ieee80211_chsw_switch_vifs fndecl 2 52661 NULL
-+ec_i2c_xfer_fndecl_52662_fns ec_i2c_xfer fndecl 3 52662 NULL
+command_file_read_fndecl_52669_fns command_file_read fndecl 3 52669 NULL
-+vmap_batch_fndecl_52675_fns vmap_batch fndecl 2-3 52675 NULL
+parse_command_fndecl_52676_fns parse_command fndecl 2 52676 NULL
+SYSC_setxattr_fndecl_52677_fns SYSC_setxattr fndecl 4 52677 NULL
-+drm_mode_create_rotation_property_fndecl_52681_fns drm_mode_create_rotation_property fndecl 2 52681 NULL
-+_iwl_dbgfs_bcast_filters_macs_write_fndecl_52702_fns _iwl_dbgfs_bcast_filters_macs_write fndecl 3 52702 NULL
++cifs_min_small_vardecl_52732_fns cifs_min_small vardecl 0 52732 NULL
++do_compat_pwritev64_fndecl_52765_fns do_compat_pwritev64 fndecl 3 52765 NULL
+regmap_map_read_file_fndecl_52774_fns regmap_map_read_file fndecl 3 52774 NULL
+SYSC_get_mempolicy_fndecl_52787_fns SYSC_get_mempolicy fndecl 3 52787 NULL
-+avc_ca_pmt_fndecl_52789_fns avc_ca_pmt fndecl 3 52789 NULL
-+ieee80211_if_read_rc_rateidx_mcs_mask_2ghz_fndecl_52792_fns ieee80211_if_read_rc_rateidx_mcs_mask_2ghz fndecl 3 52792 NULL
+app_size_ls_ucode_img_desc_52793_fns app_size ls_ucode_img_desc 0 52793 NULL
+wiphy_new_nm_fndecl_52833_fns wiphy_new_nm fndecl 2 52833 NULL
+ocfs2_control_cfu_fndecl_52837_fns ocfs2_control_cfu fndecl 2 52837 NULL
@@ -209140,9 +213405,8 @@ index 0000000..510c554
+dccp_setsockopt_cscov_fndecl_52885_fns dccp_setsockopt_cscov fndecl 2-0 52885 NULL
+nvram_len_nvram_parser_52887_fns nvram_len nvram_parser 0 52887 NULL
+rx_decrypt_key_not_found_read_fndecl_52911_fns rx_decrypt_key_not_found_read fndecl 3 52911 NULL
-+il4965_rs_sta_dbgfs_rate_scale_data_read_fndecl_52915_fns il4965_rs_sta_dbgfs_rate_scale_data_read fndecl 3 52915 NULL
++cqc_entry_sz_mlx4_dev_cap_52916_fns cqc_entry_sz mlx4_dev_cap 0 52916 NULL
+smk_read_logging_fndecl_52927_fns smk_read_logging fndecl 3 52927 NULL
-+o2hb_debug_read_fndecl_52936_fns o2hb_debug_read fndecl 3 52936 NULL
+minor_drbd_genlmsghdr_52949_fns minor drbd_genlmsghdr 0 52949 NULL
+__arm_iommu_alloc_attrs_fndecl_52955_fns __arm_iommu_alloc_attrs fndecl 2 52955 NULL
+sys_setxattr_fndecl_52971_fns sys_setxattr fndecl 4 52971 NULL
@@ -209156,125 +213420,108 @@ index 0000000..510c554
+ntfs_dir_fsync_fndecl_53093_fns ntfs_dir_fsync fndecl 2-3 53093 NULL
+wilc_spi_read_fndecl_53099_fns wilc_spi_read fndecl 4 53099 NULL
+brcmf_fw_nvram_strip_fndecl_53102_fns brcmf_fw_nvram_strip fndecl 2 53102 NULL
-+rx_nr_rings_bnxt_53108_fns rx_nr_rings bnxt 0 53108 NULL
++logi_dj_recv_forward_hidpp_fndecl_53117_fns logi_dj_recv_forward_hidpp fndecl 3 53117 NULL
+xz_dec_test_write_fndecl_53124_fns xz_dec_test_write fndecl 3 53124 NULL
-+fault_inject_read_fndecl_53133_fns fault_inject_read fndecl 3 53133 NULL
-+vmalloc_32_user_fndecl_53148_fns vmalloc_32_user fndecl 1 53148 NULL
+private_data_len_ib_cm_sidr_req_param_53150_fns private_data_len ib_cm_sidr_req_param 0 53150 NULL
-+lpfc_debugfs_max_disc_trc_vardecl_lpfc_debugfs_c_53169_fns lpfc_debugfs_max_disc_trc vardecl_lpfc_debugfs.c 0 53169 NULL
+num_tx_rings_nfp_net_53170_fns num_tx_rings nfp_net 0 53170 NULL
++xhci_alloc_streams_fndecl_53185_fns xhci_alloc_streams fndecl 5 53185 NULL
+SYSC_mbind_fndecl_53221_fns SYSC_mbind fndecl 5 53221 NULL
+debugfs_reg_len_regmap_53235_fns debugfs_reg_len regmap 0 53235 NULL
++mlx4_get_mgm_entry_size_fndecl_53236_fns mlx4_get_mgm_entry_size fndecl 0 53236 NULL
+kvm_read_guest_page_mmu_fndecl_53240_fns kvm_read_guest_page_mmu fndecl 6 53240 NULL
++sys_sync_file_range2_fndecl_53247_fns sys_sync_file_range2 fndecl 4 53247 NULL
+vga_arb_write_fndecl_53251_fns vga_arb_write fndecl 3 53251 NULL
+simple_xattr_alloc_fndecl_53253_fns simple_xattr_alloc fndecl 2 53253 NULL
-+nr_descriptors_hidma_dev_53264_fns nr_descriptors hidma_dev 0 53264 NULL
++add_new_ctl_fndecl_53263_fns add_new_ctl fndecl 8 53263 NULL
+maxreqs_nfsd4_channel_attrs_53285_fns maxreqs nfsd4_channel_attrs 0 53285 NULL
+b1_alloc_card_fndecl_53288_fns b1_alloc_card fndecl 1 53288 NULL
-+vmalloc_exec_fndecl_53303_fns vmalloc_exec fndecl 1 53303 NULL
+snd_korg1212_copy_from_fndecl_53338_fns snd_korg1212_copy_from fndecl 6 53338 NULL
+SYSC_sched_getaffinity_fndecl_53347_fns SYSC_sched_getaffinity fndecl 2 53347 NULL
+ramoops_init_przs_fndecl_53364_fns ramoops_init_przs fndecl 4 53364 NULL
+SYSC_getxattr_fndecl_53377_fns SYSC_getxattr fndecl 4 53377 NULL
+viafb_iga1_odev_proc_write_fndecl_53378_fns viafb_iga1_odev_proc_write fndecl 3 53378 NULL
-+rproc_recovery_read_fndecl_53382_fns rproc_recovery_read fndecl 3 53382 NULL
++vmsplice_to_user_fndecl_53382_fns vmsplice_to_user fndecl 3 53382 NULL nohasharray
++rproc_recovery_read_fndecl_53382_fns rproc_recovery_read fndecl 3 53382 &vmsplice_to_user_fndecl_53382_fns
++jz4740_dma_prep_slave_sg_fndecl_53383_fns jz4740_dma_prep_slave_sg fndecl 3 53383 NULL
+command_setformat_fndecl_53392_fns command_setformat fndecl 0 53392 NULL
+wil_agg_size_fndecl_53398_fns wil_agg_size fndecl 0-2 53398 NULL
+num_entries_s2io_nic_53404_fns num_entries s2io_nic 0 53404 NULL
+set_rcvarray_entry_fndecl_53410_fns set_rcvarray_entry fndecl 6 53410 NULL
+cfs_hash_buckets_realloc_fndecl_53415_fns cfs_hash_buckets_realloc fndecl 4 53415 NULL
+rxHeader3_edgeport_serial_53418_fns rxHeader3 edgeport_serial 0 53418 NULL
-+codec_reg_read_file_fndecl_53419_fns codec_reg_read_file fndecl 3 53419 NULL
+compat_sys_mbind_fndecl_53427_fns compat_sys_mbind fndecl 5 53427 NULL
+ad7879_spi_xfer_fndecl_53444_fns ad7879_spi_xfer fndecl 3 53444 NULL
+nouveau_cli_create_fndecl_53462_fns nouveau_cli_create fndecl 3 53462 NULL
-+lpfc_debugfs_dif_err_read_fndecl_53468_fns lpfc_debugfs_dif_err_read fndecl 3 53468 NULL
+jbd2_journal_init_revoke_table_fndecl_53475_fns jbd2_journal_init_revoke_table fndecl 1 53475 NULL
+ath6kl_regwrite_write_fndecl_53484_fns ath6kl_regwrite_write fndecl 3 53484 NULL
++oper_log_mgm_entry_size_mlx4_dev_53488_fns oper_log_mgm_entry_size mlx4_dev 0 53488 NULL
+lc_create_fndecl_53503_fns lc_create fndecl 4 53503 NULL
+mthca_buf_alloc_fndecl_53510_fns mthca_buf_alloc fndecl 2 53510 NULL
++data_mcp_trace_format_53512_fns data mcp_trace_format 0 53512 NULL
+tx_tx_cmplt_read_fndecl_53533_fns tx_tx_cmplt_read fndecl 3 53533 NULL
+uwb_rc_cmd_done_fndecl_53543_fns uwb_rc_cmd_done fndecl 4 53543 NULL
+num_req_vfs_i40e_pf_53554_fns num_req_vfs i40e_pf 0 53554 NULL
+sctp_tsnmap_mark_fndecl_53578_fns sctp_tsnmap_mark fndecl 2 53578 NULL
+rx_defrag_init_called_read_fndecl_53580_fns rx_defrag_init_called_read fndecl 3 53580 NULL
++num_ports_mlx4_caps_53588_fns num_ports mlx4_caps 0 53588 NULL
+mlx5_get_gid_table_len_fndecl_53590_fns mlx5_get_gid_table_len fndecl 0-1 53590 NULL
+kernel_setsockopt_fndecl_53594_fns kernel_setsockopt fndecl 5 53594 NULL
+cow_file_range_async_fndecl_53595_fns cow_file_range_async fndecl 4-3 53595 NULL
+put_cmsg_compat_fndecl_53618_fns put_cmsg_compat fndecl 4 53618 NULL
+header_len_tso_state_53620_fns header_len tso_state 0 53620 NULL
-+num_channels_mlx5e_params_53632_fns num_channels mlx5e_params 0 53632 NULL
+device_add_class_symlinks_fndecl_53634_fns device_add_class_symlinks fndecl 0 53634 NULL
+write_file_antenna_fndecl_53645_fns write_file_antenna fndecl 3 53645 NULL
+generic_ocp_read_fndecl_53653_fns generic_ocp_read fndecl 3 53653 NULL
+acl_alloc_fndecl_53656_fns acl_alloc fndecl 1 53656 NULL
-+il3945_ucode_tx_stats_read_fndecl_53667_fns il3945_ucode_tx_stats_read fndecl 3 53667 NULL
+__videobuf_alloc_fndecl_53676_fns __videobuf_alloc fndecl 1 53676 NULL
+list_lru_count_one_fndecl_53682_fns list_lru_count_one fndecl 0 53682 NULL
-+lov_mds_md_max_stripe_count_fndecl_53691_fns lov_mds_md_max_stripe_count fndecl 0-1 53691 NULL
-+carl9170_rx_untie_cmds_fndecl_53694_fns carl9170_rx_untie_cmds fndecl 3 53694 NULL
+gpio_power_read_fndecl_53704_fns gpio_power_read fndecl 3 53704 NULL
-+sys_init_module_fndecl_53724_fns sys_init_module fndecl 2 53724 NULL
+mtip_hw_read_device_status_fndecl_53729_fns mtip_hw_read_device_status fndecl 3 53729 NULL
+snd_pcm_plug_read_transfer_fndecl_53731_fns snd_pcm_plug_read_transfer fndecl 0-3 53731 NULL
+xhci_alloc_stream_info_fndecl_53732_fns xhci_alloc_stream_info fndecl 3 53732 NULL
+write_emulate_fndecl_53746_fns write_emulate fndecl 2-4 53746 NULL
+dies_onenand_chip_53762_fns dies onenand_chip 0 53762 NULL
-+vxge_config_vpaths_fndecl_53775_fns vxge_config_vpaths fndecl 0 53775 NULL
+locations_count_nfsd4_fs_locations_53786_fns locations_count nfsd4_fs_locations 0 53786 NULL
-+ring_size_netvsc_device_info_53811_fns ring_size netvsc_device_info 0 53811 NULL
-+lpfc_idiag_extacc_alloc_get_fndecl_53819_fns lpfc_idiag_extacc_alloc_get fndecl 0-3 53819 NULL
++osd_req_list_collection_objects_fndecl_53803_fns osd_req_list_collection_objects fndecl 5 53803 NULL
++iscsi_host_alloc_fndecl_53804_fns iscsi_host_alloc fndecl 2 53804 NULL
+logical_minimum_hid_field_53820_fns logical_minimum hid_field 0 53820 NULL
-+elfcorebuf_sz_orig_vardecl_vmcore_c_53821_fns elfcorebuf_sz_orig vardecl_vmcore.c 0 53821 NULL
+cam_get_response16_fndecl_53836_fns cam_get_response16 fndecl 0 53836 NULL
+num_sensors_ibmpex_bmc_data_53838_fns num_sensors ibmpex_bmc_data 0 53838 NULL
+xillybus_read_fndecl_53845_fns xillybus_read fndecl 3 53845 NULL
-+buffer_blocks_st_buffer_53878_fns buffer_blocks st_buffer 0 53878 NULL
+nilfs_sufile_set_segment_usage_fndecl_53885_fns nilfs_sufile_set_segment_usage fndecl 2 53885 NULL
+path_getxattr_fndecl_53886_fns path_getxattr fndecl 4 53886 NULL
-+snd_rawmidi_kernel_read1_fndecl_53911_fns snd_rawmidi_kernel_read1 fndecl 4 53911 NULL nohasharray
-+oobavail_jffs2_sb_info_53911_fns oobavail jffs2_sb_info 0 53911 &snd_rawmidi_kernel_read1_fndecl_53911_fns
++oobavail_jffs2_sb_info_53911_fns oobavail jffs2_sb_info 0 53911 NULL nohasharray
++snd_rawmidi_kernel_read1_fndecl_53911_fns snd_rawmidi_kernel_read1 fndecl 4 53911 &oobavail_jffs2_sb_info_53911_fns
+cxgbi_device_register_fndecl_53913_fns cxgbi_device_register fndecl 2-1 53913 NULL
++of_iomap_fndecl_53930_fns of_iomap fndecl 2 53930 NULL
++i40e_init_lan_hmc_fndecl_53935_fns i40e_init_lan_hmc fndecl 2-3-4-5 53935 NULL
+hiddev_ioctl_fndecl_53955_fns hiddev_ioctl fndecl 2 53955 NULL
+proc_fault_inject_read_fndecl_53969_fns proc_fault_inject_read fndecl 3 53969 NULL
-+cm_write_fndecl_53993_fns cm_write fndecl 3 53993 NULL
-+sierra_write_fndecl_54049_fns sierra_write fndecl 4 54049 NULL
-+_iwl_dbgfs_uapsd_misbehaving_write_fndecl_54054_fns _iwl_dbgfs_uapsd_misbehaving_write fndecl 3 54054 NULL
++gb_operation_create_core_fndecl_54045_fns gb_operation_create_core fndecl 3 54045 NULL
+tunables_read_fndecl_54066_fns tunables_read fndecl 3 54066 NULL
-+afs_alloc_flat_call_fndecl_54076_fns afs_alloc_flat_call fndecl 2-3 54076 NULL
+sctp_tsnmap_init_fndecl_54093_fns sctp_tsnmap_init fndecl 3 54093 NULL
+bytes_read_usbvision_frame_54101_fns bytes_read usbvision_frame 0 54101 NULL
-+i2c_bus_read_fndecl_54111_fns i2c_bus_read fndecl 0 54111 NULL
+br_min_mtu_fndecl_54113_fns br_min_mtu fndecl 0 54113 NULL
-+carl9170_exec_cmd_fndecl_54141_fns carl9170_exec_cmd fndecl 3 54141 NULL
-+f2fs_do_collapse_fndecl_54143_fns f2fs_do_collapse fndecl 3 54143 NULL
-+tracing_map_array_alloc_fndecl_54155_fns tracing_map_array_alloc fndecl 1 54155 NULL
++gfs2_inode_ra_len_fndecl_54141_fns gfs2_inode_ra_len fndecl 0 54141 NULL
+__hwahc_op_set_ptk_fndecl_54157_fns __hwahc_op_set_ptk fndecl 5 54157 NULL
+b43_nphy_load_samples_fndecl_54162_fns b43_nphy_load_samples fndecl 3 54162 NULL
+cpu_type_read_fndecl_54191_fns cpu_type_read fndecl 3 54191 NULL
-+_iwl_dbgfs_fw_nmi_write_fndecl_54192_fns _iwl_dbgfs_fw_nmi_write fndecl 3 54192 NULL
-+ieee80211_if_read_fwded_frames_fndecl_54203_fns ieee80211_if_read_fwded_frames fndecl 3 54203 NULL
+p_filesz_elf32_phdr_54204_fns p_filesz elf32_phdr 0 54204 NULL
-+nframes_bcm_msg_head_54207_fns nframes bcm_msg_head 0 54207 NULL
+numeraseregions_mtd_info_54223_fns numeraseregions mtd_info 0 54223 NULL
+__kfifo_to_user_fndecl_54232_fns __kfifo_to_user fndecl 3 54232 NULL
-+pcnet32_realloc_rx_ring_fndecl_54245_fns pcnet32_realloc_rx_ring fndecl 3 54245 NULL
-+fl_size_qset_params_54254_fns fl_size qset_params 0 54254 NULL
+__erst_read_fndecl_54256_fns __erst_read fndecl 0 54256 NULL
+put_cmsg_fndecl_54270_fns put_cmsg fndecl 4 54270 NULL
+fat_file_fsync_fndecl_54291_fns fat_file_fsync fndecl 2-3 54291 NULL
+pvr2_issue_simple_cmd_fndecl_54313_fns pvr2_issue_simple_cmd fndecl 2 54313 NULL
-+capi_write_fndecl_54323_fns capi_write fndecl 3 54323 NULL nohasharray
-+tx_tx_done_template_read_fndecl_54323_fns tx_tx_done_template_read fndecl 3 54323 &capi_write_fndecl_54323_fns
++tx_tx_done_template_read_fndecl_54323_fns tx_tx_done_template_read fndecl 3 54323 NULL
+ide_settings_proc_write_fndecl_54325_fns ide_settings_proc_write fndecl 3 54325 NULL
+nla_alloc_flow_actions_fndecl_54328_fns nla_alloc_flow_actions fndecl 1 54328 NULL
-+ieee80211_if_read_bssid_fndecl_54346_fns ieee80211_if_read_bssid fndecl 3 54346 NULL
++iscsi_conn_setup_fndecl_54340_fns iscsi_conn_setup fndecl 2 54340 NULL
+gntdev_alloc_map_fndecl_54362_fns gntdev_alloc_map fndecl 2 54362 NULL
+size_ramoops_context_54365_fns size ramoops_context 0 54365 NULL
+usb_cdc_wdm_register_fndecl_54371_fns usb_cdc_wdm_register fndecl 3 54371 NULL
+scif_setup_qp_connect_fndecl_54372_fns scif_setup_qp_connect fndecl 3 54372 NULL
+nbufs_mlx4_buf_54391_fns nbufs mlx4_buf 0 54391 NULL
-+ring_size_netvsc_device_54397_fns ring_size netvsc_device 0 54397 NULL
+security_key_getsecurity_fndecl_54401_fns security_key_getsecurity fndecl 0 54401 NULL
+rx_rx_cmplt_task_read_fndecl_54409_fns rx_rx_cmplt_task_read fndecl 3 54409 NULL
+qat_hal_get_ins_num_fndecl_54416_fns qat_hal_get_ins_num fndecl 0 54416 NULL
@@ -209282,61 +213529,51 @@ index 0000000..510c554
+set_fd_set_fndecl_54434_fns set_fd_set fndecl 1 54434 NULL
+gfn_to_page_many_atomic_fndecl_54449_fns gfn_to_page_many_atomic fndecl 2 54449 NULL
+kimage_file_prepare_segments_fndecl_54451_fns kimage_file_prepare_segments fndecl 5 54451 NULL
-+virtio_transport_stream_enqueue_fndecl_54452_fns virtio_transport_stream_enqueue fndecl 3 54452 NULL
-+regmap_cache_bypass_write_file_fndecl_54455_fns regmap_cache_bypass_write_file fndecl 3 54455 NULL
-+nvkm_notify_init_fndecl_54464_fns nvkm_notify_init fndecl 7 54464 NULL nohasharray
-+isr_rx_rdys_read_fndecl_54464_fns isr_rx_rdys_read fndecl 3 54464 &nvkm_notify_init_fndecl_54464_fns
++isr_rx_rdys_read_fndecl_54464_fns isr_rx_rdys_read fndecl 3 54464 NULL nohasharray
++nvkm_notify_init_fndecl_54464_fns nvkm_notify_init fndecl 7 54464 &isr_rx_rdys_read_fndecl_54464_fns
++do_preadv_fndecl_54493_fns do_preadv fndecl 3 54493 NULL
+sys_setsockopt_fndecl_54507_fns sys_setsockopt fndecl 5 54507 NULL
+bio_segments_fndecl_54531_fns bio_segments fndecl 0 54531 NULL
+b43_debugfs_write_fndecl_54533_fns b43_debugfs_write fndecl 3 54533 NULL
-+__i2c_debugfs_read_fndecl_54556_fns __i2c_debugfs_read fndecl 3 54556 NULL
-+ieee80211_if_read_txpower_fndecl_54564_fns ieee80211_if_read_txpower fndecl 3 54564 NULL
+cp_nr_rings_bnxt_54565_fns cp_nr_rings bnxt 0 54565 NULL
+acpi_system_write_wakeup_device_fndecl_54582_fns acpi_system_write_wakeup_device fndecl 3 54582 NULL
+mipi_dsi_dcs_write_fndecl_54605_fns mipi_dsi_dcs_write fndecl 4 54605 NULL
-+nfs4_get_acl_uncached_fndecl_54608_fns nfs4_get_acl_uncached fndecl 3 54608 NULL
+msg_print_text_fndecl_54618_fns msg_print_text fndecl 0 54618 NULL
-+ieee80211_if_write_fndecl_54621_fns ieee80211_if_write fndecl 3 54621 NULL
+len_ncp_privatedata_ioctl_54632_fns len ncp_privatedata_ioctl 0 54632 NULL
+si476x_radio_read_rsq_primary_blob_fndecl_54647_fns si476x_radio_read_rsq_primary_blob fndecl 3 54647 NULL
+get_vddc_lookup_table_fndecl_54661_fns get_vddc_lookup_table fndecl 4 54661 NULL
+auxdev_write_fndecl_54681_fns auxdev_write fndecl 3 54681 NULL
-+i2c_transfer_fndecl_54685_fns i2c_transfer fndecl 0 54685 NULL
+rx_rx_hdr_overflow_read_fndecl_54697_fns rx_rx_hdr_overflow_read fndecl 3 54697 NULL
+coda_psdev_read_fndecl_54726_fns coda_psdev_read fndecl 3 54726 NULL
+proc_setgroups_write_fndecl_54732_fns proc_setgroups_write fndecl 3 54732 NULL
+hwdep_read_locked_fndecl_54734_fns hwdep_read_locked fndecl 3 54734 NULL
-+mei_cldev_send_fndecl_54754_fns mei_cldev_send fndecl 3 54754 NULL
+pwr_connection_out_of_sync_read_fndecl_54758_fns pwr_connection_out_of_sync_read fndecl 3 54758 NULL
+cqm_max_rmid_vardecl_cqm_c_54798_fns cqm_max_rmid vardecl_cqm.c 0 54798 NULL
+spk_msg_set_fndecl_54801_fns spk_msg_set fndecl 3 54801 NULL
+buf_size__BIG_IOCTL_Command_struct_54806_fns buf_size _BIG_IOCTL_Command_struct 0 54806 NULL
++persistent_ram_update_user_fndecl_54807_fns persistent_ram_update_user fndecl 4 54807 NULL
+pci_request_regions_fndecl_54816_fns pci_request_regions fndecl 0 54816 NULL
-+i2c1_debugfs_write_fndecl_54837_fns i2c1_debugfs_write fndecl 3 54837 NULL
-+ixgbe_pci_sriov_configure_fndecl_54843_fns ixgbe_pci_sriov_configure fndecl 2 54843 NULL
-+compat_sys_kexec_load_fndecl_54857_fns compat_sys_kexec_load fndecl 2 54857 NULL
++kernel_readv_fndecl_54834_fns kernel_readv fndecl 3 54834 NULL
+spi_register_board_info_fndecl_54864_fns spi_register_board_info fndecl 2 54864 NULL
+usb_dmac_desc_get_fndecl_54869_fns usb_dmac_desc_get fndecl 2 54869 NULL
+compress_sliced_buf_fndecl_54891_fns compress_sliced_buf fndecl 0 54891 NULL
+num_uars_mlx5_uuar_info_54898_fns num_uars mlx5_uuar_info 0 54898 NULL
+buffer_size_qcaspi_54902_fns buffer_size qcaspi 0 54902 NULL
+rds_page_copy_user_fndecl_54904_fns rds_page_copy_user fndecl 4 54904 NULL
-+pcan_dump_mem_fndecl_54915_fns pcan_dump_mem fndecl 3 54915 NULL
+sd_start_ov361x_fndecl_54922_fns sd_start_ov361x fndecl 0 54922 NULL
-+iwl_dbgfs_disable_ht40_read_fndecl_54946_fns iwl_dbgfs_disable_ht40_read fndecl 3 54946 NULL
-+len_cn_msg_54981_fns len cn_msg 0 54981 NULL
++gb_operation_create_flags_fndecl_54976_fns gb_operation_create_flags fndecl 3 54976 NULL
+fence_wait_any_timeout_fndecl_54982_fns fence_wait_any_timeout fndecl 2 54982 NULL
+alloc_netdev_mqs_fndecl_54989_fns alloc_netdev_mqs fndecl 5-6-1 54989 NULL
+udf_alloc_i_data_fndecl_55001_fns udf_alloc_i_data fndecl 2 55001 NULL
++of_irq_to_resource_fndecl_55008_fns of_irq_to_resource fndecl 2 55008 NULL
+pvr2_hdw_cpufw_get_fndecl_55011_fns pvr2_hdw_cpufw_get fndecl 0-2-4 55011 NULL
+command_setcompressionparams_fndecl_55026_fns command_setcompressionparams fndecl 0 55026 NULL
-+length_i2400m_tlv_hdr_55043_fns length i2400m_tlv_hdr 0 55043 NULL
+hpi_alloc_control_cache_fndecl_55044_fns hpi_alloc_control_cache fndecl 1 55044 NULL
-+sddr55_get_capacity_fndecl_55072_fns sddr55_get_capacity fndecl 0 55072 NULL
++restart_sge_fndecl_55067_fns restart_sge fndecl 0-4-3 55067 NULL
++stm32_dma_prep_slave_sg_fndecl_55074_fns stm32_dma_prep_slave_sg fndecl 3 55074 NULL
+read_kmem_fndecl_55103_fns read_kmem fndecl 3 55103 NULL
-+length_dw_radeon_cs_chunk_55128_fns length_dw radeon_cs_chunk 0 55128 NULL
++fake_alloc_consistent_fndecl_55132_fns fake_alloc_consistent fndecl 2 55132 NULL
+btrfs_search_old_slot_fndecl_55133_fns btrfs_search_old_slot fndecl 0 55133 NULL
-+iwl_dbgfs_drv_rx_stats_read_fndecl_55157_fns iwl_dbgfs_drv_rx_stats_read fndecl 3 55157 NULL
+buffer_to_user_fndecl_55164_fns buffer_to_user fndecl 3 55164 NULL
+virtqueue_get_vring_size_fndecl_55188_fns virtqueue_get_vring_size fndecl 0 55188 NULL
+efx_mcdi_rpc_async_quiet_fndecl_55191_fns efx_mcdi_rpc_async_quiet fndecl 4-5 55191 NULL
@@ -209346,20 +213583,20 @@ index 0000000..510c554
+req_ring_size_srp_target_port_55251_fns req_ring_size srp_target_port 0 55251 NULL
+drm_dp_dual_mode_write_fndecl_55258_fns drm_dp_dual_mode_write fndecl 4 55258 NULL nohasharray
+size_pci_cap_saved_data_55258_fns size pci_cap_saved_data 0 55258 &drm_dp_dual_mode_write_fndecl_55258_fns
-+iwl_dbgfs_bt_traffic_read_fndecl_55261_fns iwl_dbgfs_bt_traffic_read fndecl 3 55261 NULL
++__filemap_fdatawrite_range_fndecl_55259_fns __filemap_fdatawrite_range fndecl 3 55259 NULL
+bpf_convert_filter_fndecl_55264_fns bpf_convert_filter fndecl 2 55264 NULL
+dev_alloc_name_ns_fndecl_55266_fns dev_alloc_name_ns fndecl 0 55266 NULL
+num_radar_types_dfs_pattern_detector_55279_fns num_radar_types dfs_pattern_detector 0 55279 NULL
+vb2_dqbuf_fndecl_55284_fns vb2_dqbuf fndecl 0 55284 NULL
+readlen_proc_data_55289_fns readlen proc_data 0 55289 NULL
+sq905c_command_fndecl_55293_fns sq905c_command fndecl 0 55293 NULL
-+C_SYSC_kexec_load_fndecl_55294_fns C_SYSC_kexec_load fndecl 2 55294 NULL
+memcg_update_all_caches_fndecl_55303_fns memcg_update_all_caches fndecl 1 55303 NULL
+proc_scsi_host_write_fndecl_55336_fns proc_scsi_host_write fndecl 3 55336 NULL
++kernfs_xattr_set_fndecl_55347_fns kernfs_xattr_set fndecl 6 55347 NULL
+pipeline_pipeline_fifo_full_read_fndecl_55356_fns pipeline_pipeline_fifo_full_read fndecl 3 55356 NULL
+islpci_mgt_transmit_fndecl_55366_fns islpci_mgt_transmit fndecl 5 55366 NULL
-+ixgbe_dbg_netdev_ops_write_fndecl_55374_fns ixgbe_dbg_netdev_ops_write fndecl 3 55374 NULL
+find_phys_blocks_fndecl_55388_fns find_phys_blocks fndecl 0 55388 NULL
++nprim_symtab_55398_fns nprim symtab 0 55398 NULL
+periodic_size_oxu_hcd_55401_fns periodic_size oxu_hcd 0 55401 NULL
+shmem_pread_fast_fndecl_55408_fns shmem_pread_fast fndecl 3 55408 NULL
+len_wm_coeff_parsed_coeff_55454_fns len wm_coeff_parsed_coeff 0 55454 NULL
@@ -209370,47 +213607,39 @@ index 0000000..510c554
+filter_write_fndecl_55560_fns filter_write fndecl 3 55560 NULL
+exofs_file_fsync_fndecl_55588_fns exofs_file_fsync fndecl 2-3 55588 NULL
+vmw_setup_otable_base_fndecl_55639_fns vmw_setup_otable_base fndecl 4 55639 NULL
-+sg_nents_fndecl_55654_fns sg_nents fndecl 0 55654 NULL
-+ath6kl_roam_mode_write_fndecl_55659_fns ath6kl_roam_mode_write fndecl 3 55659 NULL
++cpuhp_invoke_ap_callback_fndecl_55659_fns cpuhp_invoke_ap_callback fndecl 0 55659 NULL nohasharray
++ath6kl_roam_mode_write_fndecl_55659_fns ath6kl_roam_mode_write fndecl 3 55659 &cpuhp_invoke_ap_callback_fndecl_55659_fns
+queue_logical_block_size_fndecl_55661_fns queue_logical_block_size fndecl 0 55661 NULL
-+lpfc_idiag_ctlacc_read_fndecl_55684_fns lpfc_idiag_ctlacc_read fndecl 3 55684 NULL
+sel_read_avc_cache_threshold_fndecl_55685_fns sel_read_avc_cache_threshold fndecl 3 55685 NULL
-+rs_sta_dbgfs_drv_tx_stats_read_fndecl_55689_fns rs_sta_dbgfs_drv_tx_stats_read fndecl 3 55689 NULL
++count_emac_rfd_ring_55687_fns count emac_rfd_ring 0 55687 NULL
+stv06xx_write_bridge_fndecl_55690_fns stv06xx_write_bridge fndecl 0 55690 NULL
-+read_file_tgt_rx_stats_fndecl_55691_fns read_file_tgt_rx_stats fndecl 3 55691 NULL
+kvm_vcpu_gfn_to_page_fndecl_55725_fns kvm_vcpu_gfn_to_page fndecl 2 55725 NULL
+mpi_from_key_fndecl_55729_fns mpi_from_key fndecl 0 55729 NULL
+cnt_mon_text_ptr_55741_fns cnt mon_text_ptr 0 55741 NULL
-+__az6007_read_fndecl_55752_fns __az6007_read fndecl 6 55752 NULL
+vga_switcheroo_debugfs_write_fndecl_55763_fns vga_switcheroo_debugfs_write fndecl 3 55763 NULL
-+cmd_read_size_wiimote_state_55772_fns cmd_read_size wiimote_state 0 55772 NULL
-+ppp_write_fndecl_55777_fns ppp_write fndecl 3 55777 NULL
+rx_rx_xfr_read_fndecl_55779_fns rx_rx_xfr_read fndecl 3 55779 NULL
++qed_cxt_get_proto_tid_count_fndecl_55797_fns qed_cxt_get_proto_tid_count fndecl 0 55797 NULL
++lbs_lowrssi_write_fndecl_55802_fns lbs_lowrssi_write fndecl 3 55802 NULL
+init_send_hfcd_fndecl_55817_fns init_send_hfcd fndecl 1 55817 NULL
+rd_host_buf_pos_xilly_channel_55837_fns rd_host_buf_pos xilly_channel 0 55837 NULL
-+__jffs2_ref_totlen_fndecl_55842_fns __jffs2_ref_totlen fndecl 0 55842 NULL
+raydium_i2c_write_object_fndecl_55850_fns raydium_i2c_write_object fndecl 3 55850 NULL
-+rdma_rw_init_map_wrs_fndecl_55859_fns rdma_rw_init_map_wrs fndecl 4 55859 NULL
-+cw1200_queue_init_fndecl_55860_fns cw1200_queue_init fndecl 4 55860 NULL
++rdma_rw_init_map_wrs_fndecl_55859_fns rdma_rw_init_map_wrs fndecl 6-4 55859 NULL
++ceph_msgpool_init_fndecl_55860_fns ceph_msgpool_init fndecl 4 55860 NULL nohasharray
++cw1200_queue_init_fndecl_55860_fns cw1200_queue_init fndecl 4 55860 &ceph_msgpool_init_fndecl_55860_fns
+do_raw_getsockopt_fndecl_55863_fns do_raw_getsockopt fndecl 0 55863 NULL
+nports_cyclades_card_55865_fns nports cyclades_card 0 55865 NULL
+cnic_alloc_dma_fndecl_55874_fns cnic_alloc_dma fndecl 3 55874 NULL
+ad7280_chain_setup_fndecl_55912_fns ad7280_chain_setup fndecl 0 55912 NULL
+isr_fiqs_read_fndecl_55916_fns isr_fiqs_read fndecl 3 55916 NULL
-+_iwl_dbgfs_tof_enable_write_fndecl_55919_fns _iwl_dbgfs_tof_enable_write fndecl 3 55919 NULL
+response_length_mlx5_ib_create_wq_resp_55932_fns response_length mlx5_ib_create_wq_resp 0 55932 NULL
-+pktlen_pkt_attrib_55936_fns pktlen pkt_attrib 0 55936 NULL
-+batadv_tvlv_realloc_packet_buff_fndecl_55955_fns batadv_tvlv_realloc_packet_buff fndecl 3-4 55955 NULL
++do_readv_writev_fndecl_55934_fns do_readv_writev fndecl 4 55934 NULL
++batadv_tvlv_realloc_packet_buff_fndecl_55955_fns batadv_tvlv_realloc_packet_buff fndecl 4-3 55955 NULL
+reg_w_ixbuf_fndecl_55971_fns reg_w_ixbuf fndecl 4 55971 NULL
-+ieee80211_if_read_num_sta_ps_fndecl_55985_fns ieee80211_if_read_num_sta_ps fndecl 3 55985 NULL
-+platform_list_read_file_fndecl_55997_fns platform_list_read_file fndecl 3 55997 NULL
-+usbtest_alloc_urb_fndecl_56013_fns usbtest_alloc_urb fndecl 3-5 56013 NULL
-+ath10k_read_ani_enable_fndecl_56020_fns ath10k_read_ani_enable fndecl 3 56020 NULL
++num_pins_lola_pin_array_56022_fns num_pins lola_pin_array 0 56022 NULL
+bootmode_store_fndecl_56025_fns bootmode_store fndecl 4 56025 NULL
+__iio_device_attr_init_fndecl_56028_fns __iio_device_attr_init fndecl 0 56028 NULL
+device_add_fndecl_56029_fns device_add fndecl 0 56029 NULL
+SYSC_keyctl_fndecl_56035_fns SYSC_keyctl fndecl 4 56035 NULL
-+chainsize_ctlr_info_56067_fns chainsize ctlr_info 0 56067 NULL
+iov_iter_single_seg_count_fndecl_56069_fns iov_iter_single_seg_count fndecl 0 56069 NULL
+acpi_data_get_property_fndecl_56093_fns acpi_data_get_property fndecl 0 56093 NULL
+proc_thread_self_readlink_fndecl_56102_fns proc_thread_self_readlink fndecl 3 56102 NULL
@@ -209419,86 +213648,80 @@ index 0000000..510c554
+ssl_prev_nilfs_snapshot_list_56120_fns ssl_prev nilfs_snapshot_list 0 56120 NULL
+usbvision_v4l2_read_fndecl_56129_fns usbvision_v4l2_read fndecl 3 56129 NULL
+av7110_vbi_write_fndecl_56131_fns av7110_vbi_write fndecl 3 56131 NULL
-+_iwl_dbgfs_low_latency_write_fndecl_56153_fns _iwl_dbgfs_low_latency_write fndecl 3 56153 NULL
+iwl_calib_set_fndecl_56179_fns iwl_calib_set fndecl 3 56179 NULL nohasharray
+ivtv_read_pos_fndecl_56179_fns ivtv_read_pos fndecl 3 56179 &iwl_calib_set_fndecl_56179_fns
+size_netlbl_domhsh_tbl_56186_fns size netlbl_domhsh_tbl 0 56186 NULL
+dma_rx_size_sxgbe_priv_data_56205_fns dma_rx_size sxgbe_priv_data 0 56205 NULL
+rvt_alloc_mr_fndecl_56236_fns rvt_alloc_mr fndecl 3 56236 NULL
-+qlcnic_set_tx_ring_count_fndecl_56242_fns qlcnic_set_tx_ring_count fndecl 2 56242 NULL
+dt_gpio_count_fndecl_56245_fns dt_gpio_count fndecl 0 56245 NULL
-+mwifiex_regrdwr_read_fndecl_56251_fns mwifiex_regrdwr_read fndecl 3 56251 NULL
+qp_alloc_res_fndecl_56275_fns qp_alloc_res fndecl 5 56275 NULL
+x_max_wacom_features_56285_fns x_max wacom_features 0 56285 NULL
++nr_rates_audioformat_56293_fns nr_rates audioformat 0 56293 NULL
++relay_file_read_start_pos_fndecl_56323_fns relay_file_read_start_pos fndecl 0-1 56323 NULL
+SYSC_lgetxattr_fndecl_56330_fns SYSC_lgetxattr fndecl 4 56330 NULL
-+ebt_compat_match_offset_fndecl_56334_fns ebt_compat_match_offset fndecl 2 56334 NULL
+pipeline_dec_packet_in_fifo_full_read_fndecl_56335_fns pipeline_dec_packet_in_fifo_full_read fndecl 3 56335 NULL
-+blocked_fl_read_fndecl_56341_fns blocked_fl_read fndecl 3 56341 NULL
+mapping_level_fndecl_56350_fns mapping_level fndecl 0-2 56350 NULL
-+stats_dot11RTSSuccessCount_read_fndecl_56378_fns stats_dot11RTSSuccessCount_read fndecl 3 56378 NULL
+sel_read_checkreqprot_fndecl_56383_fns sel_read_checkreqprot fndecl 3 56383 NULL
-+nd_cmd_in_size_fndecl_56386_fns nd_cmd_in_size fndecl 0 56386 NULL
+max_eps_mv_u3d_56428_fns max_eps mv_u3d 0 56428 NULL
+stat_len_sge_56432_fns stat_len sge 0 56432 NULL
++idx_lebs_ubifs_lp_stats_56439_fns idx_lebs ubifs_lp_stats 0 56439 NULL
+fb_sys_write_fndecl_56441_fns fb_sys_write fndecl 3 56441 NULL
+alloc_gid_table_fndecl_56444_fns alloc_gid_table fndecl 1 56444 NULL
+_pci_add_cap_save_buffer_fndecl_56466_fns _pci_add_cap_save_buffer fndecl 4 56466 NULL
-+dataflash_read_fact_otp_fndecl_56487_fns dataflash_read_fact_otp fndecl 2-3 56487 NULL
++banks_mca_config_56472_fns banks mca_config 0 56472 NULL
+pp_read_fndecl_56489_fns pp_read fndecl 3 56489 NULL
-+batadv_socket_receive_packet_fndecl_56509_fns batadv_socket_receive_packet fndecl 2 56509 NULL
-+portcntrnameslen_hfi1_devdata_56510_fns portcntrnameslen hfi1_devdata 0 56510 NULL
+__vb2_wait_for_done_vb_fndecl_56525_fns __vb2_wait_for_done_vb fndecl 0 56525 NULL
++vp_modern_find_vqs_fndecl_56530_fns vp_modern_find_vqs fndecl 2 56530 NULL
+cachefiles_cook_key_fndecl_56553_fns cachefiles_cook_key fndecl 2 56553 NULL
+_mv88e6xxx_port_vlan_del_fndecl_56566_fns _mv88e6xxx_port_vlan_del fndecl 3 56566 NULL
-+rss_table_size_i40e_pf_56586_fns rss_table_size i40e_pf 0 56586 NULL
+rproc_name_read_fndecl_56630_fns rproc_name_read fndecl 3 56630 NULL
-+count_v4l2_requestbuffers_56650_fns count v4l2_requestbuffers 0 56650 NULL
++x509_note_issuer_fndecl_56631_fns x509_note_issuer fndecl 5 56631 NULL
++devt_device_56638_fns devt device 0 56638 NULL
+cifs_writedata_alloc_fndecl_56675_fns cifs_writedata_alloc fndecl 1 56675 NULL nohasharray
+ath6kl_usb_submit_ctrl_in_fndecl_56675_fns ath6kl_usb_submit_ctrl_in fndecl 6 56675 &cifs_writedata_alloc_fndecl_56675_fns
+vp702x_usb_inout_cmd_fndecl_56679_fns vp702x_usb_inout_cmd fndecl 4-6 56679 NULL
+new_tape_buffer_fndecl_56689_fns new_tape_buffer fndecl 2 56689 NULL
-+usb_err_gspca_dev_56706_fns usb_err gspca_dev 0 56706 NULL nohasharray
-+il_dbgfs_tx_stats_read_fndecl_56706_fns il_dbgfs_tx_stats_read fndecl 3 56706 &usb_err_gspca_dev_56706_fns
++usb_err_gspca_dev_56706_fns usb_err gspca_dev 0 56706 NULL
+mlx5_modify_nic_vport_mac_list_fndecl_56715_fns mlx5_modify_nic_vport_mac_list fndecl 4 56715 NULL
+zlib_inflate_workspacesize_fndecl_56716_fns zlib_inflate_workspacesize fndecl 0 56716 NULL
+cfg_fof_lpfc_hba_56760_fns cfg_fof lpfc_hba 0 56760 NULL
++max_speed_hz_spi_device_56783_fns max_speed_hz spi_device 0 56783 NULL
+mem_size_mxt_data_56785_fns mem_size mxt_data 0 56785 NULL
+ib_uverbs_create_cq_fndecl_56793_fns ib_uverbs_create_cq fndecl 4-5 56793 NULL
+ntb_transport_tx_enqueue_fndecl_56794_fns ntb_transport_tx_enqueue fndecl 4 56794 NULL
-+page_base_xdr_buf_56823_fns page_base xdr_buf 0 56823 NULL
+capacity_alauda_media_info_56845_fns capacity alauda_media_info 0 56845 NULL
+tomoyo_read_self_fndecl_56848_fns tomoyo_read_self fndecl 3 56848 NULL
+dup_array_fndecl_56860_fns dup_array fndecl 3 56860 NULL
+count_subheaders_fndecl_56868_fns count_subheaders fndecl 0 56868 NULL
++scsi_execute_fndecl_56879_fns scsi_execute fndecl 5 56879 NULL
++ack_gen_tipc_mon_domain_56881_fns ack_gen tipc_mon_domain 0 56881 NULL
+cifs_fsync_fndecl_56917_fns cifs_fsync fndecl 2-3 56917 NULL
+comedi_buf_write_n_allocated_fndecl_56919_fns comedi_buf_write_n_allocated fndecl 0 56919 NULL
-+usb_gstrings_attach_fndecl_56924_fns usb_gstrings_attach fndecl 3 56924 NULL nohasharray
-+il_dbgfs_qos_read_fndecl_56924_fns il_dbgfs_qos_read fndecl 3 56924 &usb_gstrings_attach_fndecl_56924_fns
++usb_gstrings_attach_fndecl_56924_fns usb_gstrings_attach fndecl 3 56924 NULL
+nrealreaders_vardecl_rcuperf_c_56929_fns nrealreaders vardecl_rcuperf.c 0 56929 NULL
+csize_jffs2_tmp_dnode_info_56933_fns csize jffs2_tmp_dnode_info 0 56933 NULL
+drm_property_replace_global_blob_fndecl_56945_fns drm_property_replace_global_blob fndecl 3 56945 NULL
-+iwl_dbgfs_quota_min_read_fndecl_56948_fns iwl_dbgfs_quota_min_read fndecl 3 56948 NULL
+n_mem_slots_qxl_device_56964_fns n_mem_slots qxl_device 0 56964 NULL
-+maxresp_cached_nfsd4_channel_attrs_56966_fns maxresp_cached nfsd4_channel_attrs 0 56966 NULL
+irq_blk_threshold_read_fndecl_56977_fns irq_blk_threshold_read fndecl 3 56977 NULL
+arp_hdr_len_fndecl_56980_fns arp_hdr_len fndecl 0 56980 NULL
+pvr2_stream_buffer_count_fndecl_56996_fns pvr2_stream_buffer_count fndecl 2 56996 NULL
+write_file_spectral_count_fndecl_57000_fns write_file_spectral_count fndecl 3 57000 NULL
+i2c_hack_wm8775_fndecl_57014_fns i2c_hack_wm8775 fndecl 4-6 57014 NULL
++expand_corename_fndecl_57021_fns expand_corename fndecl 2 57021 NULL
+sys_keyctl_fndecl_57023_fns sys_keyctl fndecl 4 57023 NULL nohasharray
+xs_send_kvec_fndecl_57023_fns xs_send_kvec fndecl 3 57023 &sys_keyctl_fndecl_57023_fns
+__qcom_scm_hdcp_req_fndecl_57026_fns __qcom_scm_hdcp_req fndecl 3 57026 NULL
-+read_file_node_recv_fndecl_57042_fns read_file_node_recv fndecl 3 57042 NULL
-+iwl_dbgfs_tof_responder_params_read_fndecl_57049_fns iwl_dbgfs_tof_responder_params_read fndecl 3 57049 NULL
+vifs_state_read_fndecl_57073_fns vifs_state_read fndecl 3 57073 NULL
++mcs7830_get_reg_fndecl_57103_fns mcs7830_get_reg fndecl 3 57103 NULL
++bgx_cnt_hw_info_57124_fns bgx_cnt hw_info 0 57124 NULL
+size_nvif_notify_57130_fns size nvif_notify 0 57130 NULL
+joydev_ioctl_fndecl_57132_fns joydev_ioctl fndecl 2 57132 NULL
+msg_controllen_msghdr_57136_fns msg_controllen msghdr 0 57136 NULL
++iblock_get_bio_fndecl_57139_fns iblock_get_bio fndecl 3 57139 NULL
+qcom_scm_call_fndecl_57160_fns qcom_scm_call fndecl 5-7 57160 NULL
+pd_points_ath5k_pdgain_info_57180_fns pd_points ath5k_pdgain_info 0 57180 NULL
+irq_pkt_threshold_read_fndecl_57183_fns irq_pkt_threshold_read fndecl 3 57183 NULL
+cfs_trace_copyin_string_fndecl_57191_fns cfs_trace_copyin_string fndecl 4 57191 NULL
-+ieee80211_if_read_dropped_frames_no_route_fndecl_57204_fns ieee80211_if_read_dropped_frames_no_route fndecl 3 57204 NULL
+mon_buff_area_free_fndecl_57212_fns mon_buff_area_free fndecl 2 57212 NULL
+le_min_key_size_read_fndecl_57214_fns le_min_key_size_read fndecl 3 57214 NULL
+ovs_vport_alloc_fndecl_57296_fns ovs_vport_alloc fndecl 1 57296 NULL
@@ -209506,51 +213729,48 @@ index 0000000..510c554
+tcp_off_tso_state_57305_fns tcp_off tso_state 0 57305 NULL
+ip_setsockopt_fndecl_57308_fns ip_setsockopt fndecl 0-5 57308 NULL
+aggr_size_rx_size_read_fndecl_57317_fns aggr_size_rx_size_read fndecl 3 57317 NULL
-+interrupt_in_endpoint_size_ld_usb_57321_fns interrupt_in_endpoint_size ld_usb 0 57321 NULL
+fb_read_fndecl_57329_fns fb_read fndecl 3 57329 NULL
+page_bytes_remain_capsule_info_57335_fns page_bytes_remain capsule_info 0 57335 NULL
-+musb_test_mode_write_fndecl_57341_fns musb_test_mode_write fndecl 3 57341 NULL
+setup_glists_fndecl_57343_fns setup_glists fndecl 3 57343 NULL
-+ath10k_read_htt_max_amsdu_ampdu_fndecl_57346_fns ath10k_read_htt_max_amsdu_ampdu fndecl 3 57346 NULL
-+ixgbe_pci_sriov_enable_fndecl_57353_fns ixgbe_pci_sriov_enable fndecl 2 57353 NULL
++lbs_debugfs_write_fndecl_57358_fns lbs_debugfs_write fndecl 3 57358 NULL
++asix_read_cmd_fndecl_57362_fns asix_read_cmd fndecl 5 57362 NULL
+nfs_create_request_fndecl_57363_fns nfs_create_request fndecl 4 57363 NULL
+div64_u64_rem_fndecl_57393_fns div64_u64_rem fndecl 0 57393 NULL
+uhid_event_from_user_fndecl_57394_fns uhid_event_from_user fndecl 2 57394 NULL
+pwr_tx_without_ps_read_fndecl_57396_fns pwr_tx_without_ps_read fndecl 3 57396 NULL
+kfd_ioctl_fndecl_57397_fns kfd_ioctl fndecl 2 57397 NULL
+nfs4_alloc_pages_fndecl_57401_fns nfs4_alloc_pages fndecl 1 57401 NULL
-+_iwl_dbgfs_bt_tx_prio_write_fndecl_57418_fns _iwl_dbgfs_bt_tx_prio_write fndecl 3 57418 NULL
+key_size_ecryptfs_crypt_stat_57436_fns key_size ecryptfs_crypt_stat 0 57436 NULL
+send_control_msg_fndecl_57441_fns send_control_msg fndecl 6 57441 NULL
-+convert_tail_for_hole_fndecl_57444_fns convert_tail_for_hole fndecl 3 57444 NULL
+diva_os_copy_to_user_fndecl_57455_fns diva_os_copy_to_user fndecl 4 57455 NULL
+wm_coeff_tlv_put_fndecl_57463_fns wm_coeff_tlv_put fndecl 3 57463 NULL
+r8712_usbctrl_vendorreq_fndecl_57466_fns r8712_usbctrl_vendorreq fndecl 6 57466 NULL
-+item_udata_fndecl_57481_fns item_udata fndecl 0 57481 NULL
-+ath10k_fw_stats_read_fndecl_57506_fns ath10k_fw_stats_read fndecl 3 57506 NULL
+command_resume_fndecl_57510_fns command_resume fndecl 0 57510 NULL
++igb_rd32_fndecl_57524_fns igb_rd32 fndecl 0 57524 NULL
+nvbios_extend_fndecl_57525_fns nvbios_extend fndecl 2 57525 NULL
+y_max_wacom_features_57545_fns y_max wacom_features 0 57545 NULL
+dn_fib_count_nhs_fndecl_57602_fns dn_fib_count_nhs fndecl 0 57602 NULL
+_add_to_r4w_fndecl_57611_fns _add_to_r4w fndecl 4 57611 NULL
+isr_dma1_done_read_fndecl_57612_fns isr_dma1_done_read fndecl 3 57612 NULL
-+f2fs_collapse_range_fndecl_57627_fns f2fs_collapse_range fndecl 3-2 57627 NULL nohasharray
-+nvme_rdma_alloc_ring_fndecl_57627_fns nvme_rdma_alloc_ring fndecl 3-2 57627 &f2fs_collapse_range_fndecl_57627_fns
++nvme_rdma_alloc_ring_fndecl_57627_fns nvme_rdma_alloc_ring fndecl 3-2 57627 NULL
+c4iw_id_table_alloc_fndecl_57648_fns c4iw_id_table_alloc fndecl 3 57648 NULL
+nfsctl_transaction_read_fndecl_57705_fns nfsctl_transaction_read fndecl 3 57705 NULL
+read_file_recv_fndecl_57723_fns read_file_recv fndecl 3 57723 NULL
++x509_akid_note_kid_fndecl_57725_fns x509_akid_note_kid fndecl 5 57725 NULL
++partition_sched_domains_fndecl_57727_fns partition_sched_domains fndecl 1 57727 NULL
+hi6220_register_clkdiv_fndecl_57729_fns hi6220_register_clkdiv fndecl 7 57729 NULL
++max_devs_vardecl_aic94xx_hwi_c_57731_fns max_devs vardecl_aic94xx_hwi.c 0 57731 NULL
+compat_sys_io_getevents_fndecl_57736_fns compat_sys_io_getevents fndecl 3 57736 NULL
-+batadv_socket_read_fndecl_57746_fns batadv_socket_read fndecl 3 57746 NULL
+raydium_i2c_send_message_fndecl_57747_fns raydium_i2c_send_message fndecl 4 57747 NULL
+acpi_ex_convert_to_ascii_fndecl_57750_fns acpi_ex_convert_to_ascii fndecl 0 57750 NULL
+cache_write_pipefs_fndecl_57757_fns cache_write_pipefs fndecl 3 57757 NULL
+tidcnt_hfi1_tid_info_57758_fns tidcnt hfi1_tid_info 0 57758 NULL
+send_set_info_fndecl_57779_fns send_set_info fndecl 7 57779 NULL
+fp_array_size_bnx2x_57781_fns fp_array_size bnx2x 0 57781 NULL
-+lpfc_idiag_extacc_read_fndecl_57790_fns lpfc_idiag_extacc_read fndecl 3 57790 NULL
+spk_xe_vardecl_57804_fns spk_xe vardecl 0 57804 NULL
+tx_frag_init_called_read_fndecl_57834_fns tx_frag_init_called_read fndecl 3 57834 NULL
++vd_dsr_au_count_gru_vma_data_57855_fns vd_dsr_au_count gru_vma_data 0 57855 NULL
++joydev_handle_JSIOCSAXMAP_fndecl_57873_fns joydev_handle_JSIOCSAXMAP fndecl 3 57873 NULL
+xdi_copy_to_user_fndecl_57879_fns xdi_copy_to_user fndecl 4 57879 NULL
+exynos_srom_alloc_reg_dump_fndecl_57914_fns exynos_srom_alloc_reg_dump fndecl 2 57914 NULL
+ntb_transport_rx_enqueue_fndecl_57929_fns ntb_transport_rx_enqueue fndecl 4 57929 NULL
@@ -209561,77 +213781,81 @@ index 0000000..510c554
+pegasus_control_msg_fndecl_57954_fns pegasus_control_msg fndecl 3 57954 NULL
+logical_block_count_msb_data_57955_fns logical_block_count msb_data 0 57955 NULL
+mei_cl_alloc_cb_fndecl_57971_fns mei_cl_alloc_cb fndecl 2 57971 NULL
++sel_write_enforce_fndecl_57973_fns sel_write_enforce fndecl 3 57973 NULL
++rds_rm_size_fndecl_57975_fns rds_rm_size fndecl 0-2 57975 NULL
+input_count_cgs_acpi_method_info_57981_fns input_count cgs_acpi_method_info 0 57981 NULL
+status_orangefs_downcall_s_57998_fns status orangefs_downcall_s 0 57998 NULL
++num_sqsets_csio_hw_58048_fns num_sqsets csio_hw 0 58048 NULL
+scsi_register_fndecl_58069_fns scsi_register fndecl 2 58069 NULL
-+pt_read_fndecl_58083_fns pt_read fndecl 3 58083 NULL nohasharray
-+netxen_setup_msi_interrupts_fndecl_58083_fns netxen_setup_msi_interrupts fndecl 2 58083 &pt_read_fndecl_58083_fns
++pt_read_fndecl_58083_fns pt_read fndecl 3 58083 NULL
+nentries_xpc_registration_58085_fns nentries xpc_registration 0 58085 NULL
+ll_max_cached_mb_seq_write_fndecl_58097_fns ll_max_cached_mb_seq_write fndecl 3 58097 NULL
+walk_pmd_range_fndecl_58100_fns walk_pmd_range fndecl 0 58100 NULL
++ore_get_rw_state_fndecl_58120_fns ore_get_rw_state fndecl 4-5 58120 NULL
++nvkm_disp_new__fndecl_58125_fns nvkm_disp_new_ fndecl 4 58125 NULL
+sys_setgroups_fndecl_58127_fns sys_setgroups fndecl 1 58127 NULL nohasharray
-+sm501_create_subdev_fndecl_58127_fns sm501_create_subdev fndecl 3-4 58127 &sys_setgroups_fndecl_58127_fns
++sm501_create_subdev_fndecl_58127_fns sm501_create_subdev fndecl 4-3 58127 &sys_setgroups_fndecl_58127_fns
+bufsize_vardecl_subpagetest_c_58128_fns bufsize vardecl_subpagetest.c 0 58128 NULL
+do_ip_vs_set_ctl_fndecl_58130_fns do_ip_vs_set_ctl fndecl 4 58130 NULL
-+ll_rw_extents_stats_pp_seq_write_fndecl_58136_fns ll_rw_extents_stats_pp_seq_write fndecl 3 58136 NULL
++n_bitrates_ieee80211_supported_band_58136_fns n_bitrates ieee80211_supported_band 0 58136 NULL nohasharray
++ll_rw_extents_stats_pp_seq_write_fndecl_58136_fns ll_rw_extents_stats_pp_seq_write fndecl 3 58136 &n_bitrates_ieee80211_supported_band_58136_fns
+nvif_object_init_fndecl_58137_fns nvif_object_init fndecl 5 58137 NULL
-+qsfp2_debugfs_read_fndecl_58142_fns qsfp2_debugfs_read fndecl 3 58142 NULL
+altera_drscan_fndecl_58153_fns altera_drscan fndecl 2 58153 NULL
++cui_nextents_xfs_cui_log_format_58174_fns cui_nextents xfs_cui_log_format 0 58174 NULL
+total_num_uuars_mlx5_ib_alloc_ucontext_req_v2_58191_fns total_num_uuars mlx5_ib_alloc_ucontext_req_v2 0 58191 NULL
+npages_ttm_page_pool_58200_fns npages ttm_page_pool 0 58200 NULL nohasharray
+nvmet_rdma_alloc_cmds_fndecl_58200_fns nvmet_rdma_alloc_cmds fndecl 2 58200 &npages_ttm_page_pool_58200_fns
-+lpfc_idiag_drbacc_write_fndecl_58203_fns lpfc_idiag_drbacc_write fndecl 3 58203 NULL
++__pci_enable_msix_range_fndecl_58224_fns __pci_enable_msix_range fndecl 4 58224 NULL
+ubifs_jnl_write_data_fndecl_58229_fns ubifs_jnl_write_data fndecl 5 58229 NULL
+spi_replace_transfers_fndecl_58231_fns spi_replace_transfers fndecl 6-4 58231 NULL
+ath6kl_regwrite_read_fndecl_58232_fns ath6kl_regwrite_read fndecl 3 58232 NULL
+ath6kl_usb_bmi_read_fndecl_58234_fns ath6kl_usb_bmi_read fndecl 3 58234 NULL
+i915_displayport_test_active_write_fndecl_58241_fns i915_displayport_test_active_write fndecl 3 58241 NULL
-+num_rx_queues_fm10k_intfc_58243_fns num_rx_queues fm10k_intfc 0 58243 NULL
+gpiod_count_fndecl_58262_fns gpiod_count fndecl 0 58262 NULL
+mvneta_check_mtu_valid_fndecl_58264_fns mvneta_check_mtu_valid fndecl 0-2 58264 NULL
-+il3945_sta_dbgfs_stats_table_read_fndecl_58289_fns il3945_sta_dbgfs_stats_table_read fndecl 3 58289 NULL
-+actions_len_sw_flow_actions_58353_fns actions_len sw_flow_actions 0 58353 NULL
+viafb_dvp1_proc_write_fndecl_58355_fns viafb_dvp1_proc_write fndecl 3 58355 NULL
+__ffs_ep0_read_events_fndecl_58359_fns __ffs_ep0_read_events fndecl 3 58359 NULL
+ingr_start_sge_58376_fns ingr_start sge 0 58376 NULL
-+esas2r_log_hexdump_fndecl_58381_fns esas2r_log_hexdump fndecl 3 58381 NULL
+ip_vs_sync_buff_create_v0_fndecl_58401_fns ip_vs_sync_buff_create_v0 fndecl 2 58401 NULL
-+sta_vht_capa_read_fndecl_58402_fns sta_vht_capa_read fndecl 3 58402 NULL
-+orangefs_debug_write_fndecl_58409_fns orangefs_debug_write fndecl 3 58409 NULL
++lbs_wrrf_write_fndecl_58409_fns lbs_wrrf_write fndecl 3 58409 NULL nohasharray
++orangefs_debug_write_fndecl_58409_fns orangefs_debug_write fndecl 3 58409 &lbs_wrrf_write_fndecl_58409_fns
+amdtp_stream_init_fndecl_58410_fns amdtp_stream_init fndecl 7 58410 NULL
-+vzalloc_fndecl_58414_fns vzalloc fndecl 1 58414 NULL
+channels__isdn_driver_58419_fns channels _isdn_driver 0 58419 NULL
+gfn_to_pfn_prot_fndecl_58421_fns gfn_to_pfn_prot fndecl 2 58421 NULL
+walk_pte_range_fndecl_58425_fns walk_pte_range fndecl 0 58425 NULL
++lbs_wrmac_write_fndecl_58427_fns lbs_wrmac_write fndecl 3 58427 NULL
+len_ethtool_test_58446_fns len ethtool_test 0 58446 NULL
-+newpart_fndecl_58478_fns newpart fndecl 4-6 58478 NULL
++val_bytes_snd_soc_component_58447_fns val_bytes snd_soc_component 0 58447 NULL nohasharray
++set_cpu_key_k_offset_fndecl_58447_fns set_cpu_key_k_offset fndecl 2 58447 &val_bytes_snd_soc_component_58447_fns
++compat_sys_preadv64v2_fndecl_58477_fns compat_sys_preadv64v2 fndecl 3 58477 NULL
++newpart_fndecl_58478_fns newpart fndecl 6-4 58478 NULL
+nbchan_capidrv_contr_58481_fns nbchan capidrv_contr 0 58481 NULL
+C_SYSC_set_mempolicy_fndecl_58489_fns C_SYSC_set_mempolicy fndecl 3 58489 NULL
-+unlink_simple_fndecl_58497_fns unlink_simple fndecl 3 58497 NULL
+alloc_arraycache_fndecl_58498_fns alloc_arraycache fndecl 2 58498 NULL
-+ec_i2c_count_response_fndecl_58509_fns ec_i2c_count_response fndecl 0 58509 NULL
+pmsg_size_ramoops_platform_data_58514_fns pmsg_size ramoops_platform_data 0 58514 NULL
-+core_sys_select_fndecl_58517_fns core_sys_select fndecl 1 58517 NULL nohasharray
-+brcmf_vndr_ie_fndecl_58517_fns brcmf_vndr_ie fndecl 0-4 58517 &core_sys_select_fndecl_58517_fns
++core_sys_select_fndecl_58517_fns core_sys_select fndecl 1 58517 NULL
+read_block_for_search_fndecl_58525_fns read_block_for_search fndecl 0 58525 NULL
+drbg_statelen_fndecl_58540_fns drbg_statelen fndecl 0 58540 NULL
+usb_hcd_alloc_bandwidth_fndecl_58550_fns usb_hcd_alloc_bandwidth fndecl 0 58550 NULL
++process_vm_rw_fndecl_58558_fns process_vm_rw fndecl 3-5 58558 NULL
+read_ldt_fndecl_58561_fns read_ldt fndecl 2 58561 NULL
-+gsmld_output_fndecl_58570_fns gsmld_output fndecl 3 58570 NULL
++qib_copy_from_sge_fndecl_58565_fns qib_copy_from_sge fndecl 3 58565 NULL
++acpi_gpio_package_count_fndecl_58585_fns acpi_gpio_package_count fndecl 0 58585 NULL
+ext4_kvzalloc_fndecl_58598_fns ext4_kvzalloc fndecl 1 58598 NULL
+sctp_ssnmap_new_fndecl_58603_fns sctp_ssnmap_new fndecl 2-1 58603 NULL
+cache_read_pipefs_fndecl_58604_fns cache_read_pipefs fndecl 3 58604 NULL
+thermal_tx_resume_read_fndecl_58616_fns thermal_tx_resume_read fndecl 3 58616 NULL
+mousedev_read_fndecl_58624_fns mousedev_read fndecl 3 58624 NULL
-+ath10k_wmi_alloc_host_mem_fndecl_58627_fns ath10k_wmi_alloc_host_mem fndecl 4-3 58627 NULL nohasharray
-+wusb_key_dump_fndecl_58627_fns wusb_key_dump fndecl 2 58627 &ath10k_wmi_alloc_host_mem_fndecl_58627_fns
++ath10k_wmi_alloc_host_mem_fndecl_58627_fns ath10k_wmi_alloc_host_mem fndecl 4-3 58627 NULL
+msc_single_to_user_fndecl_58646_fns msc_single_to_user fndecl 3-4 58646 NULL
++page10_len_ses_device_58648_fns page10_len ses_device 0 58648 NULL
+cfg80211_connect_bss_fndecl_58657_fns cfg80211_connect_bss fndecl 7-5 58657 NULL
-+mxms_headerlen_fndecl_58666_fns mxms_headerlen fndecl 0 58666 NULL
+rx_rx_rts_timeout_read_fndecl_58667_fns rx_rx_rts_timeout_read fndecl 3 58667 NULL
+switchdev_port_fdb_del_fndecl_58668_fns switchdev_port_fdb_del fndecl 5 58668 NULL
-+rs_sta_dbgfs_rate_scale_data_read_fndecl_58670_fns rs_sta_dbgfs_rate_scale_data_read fndecl 3 58670 NULL
-+acpi_ut_initialize_buffer_fndecl_58676_fns acpi_ut_initialize_buffer fndecl 2 58676 NULL
++max_key_len_hfs_btree_58671_fns max_key_len hfs_btree 0 58671 NULL
++acpi_ut_initialize_buffer_fndecl_58676_fns acpi_ut_initialize_buffer fndecl 2 58676 NULL nohasharray
++ses_recv_diag_fndecl_58676_fns ses_recv_diag fndecl 4 58676 &acpi_ut_initialize_buffer_fndecl_58676_fns
++sctp_get_port_fndecl_58684_fns sctp_get_port fndecl 2 58684 NULL
+svc_pool_map_alloc_arrays_fndecl_58718_fns svc_pool_map_alloc_arrays fndecl 2 58718 NULL
+portcntrs_1_read_fndecl_58758_fns portcntrs_1_read fndecl 3 58758 NULL
+snd_ctl_enum_info_fndecl_58778_fns snd_ctl_enum_info fndecl 2 58778 NULL
@@ -209640,89 +213864,85 @@ index 0000000..510c554
+kvm_debugfs_num_entries_vardecl_kvm_main_c_58842_fns kvm_debugfs_num_entries vardecl_kvm_main.c 0 58842 NULL
+nr_scratch_dwc3_58852_fns nr_scratch dwc3 0 58852 NULL
+ucs2_utf8size_fndecl_58859_fns ucs2_utf8size fndecl 0 58859 NULL
-+ieee80211_if_read_dot11MeshHoldingTimeout_fndecl_58863_fns ieee80211_if_read_dot11MeshHoldingTimeout fndecl 3 58863 NULL
+pd_groupsize_ptlrpcd_58864_fns pd_groupsize ptlrpcd 0 58864 NULL
+usb_stor_bulk_transfer_sg_fndecl_58896_fns usb_stor_bulk_transfer_sg fndecl 5 58896 NULL
+v9fs_file_fsync_fndecl_58898_fns v9fs_file_fsync fndecl 2-3 58898 NULL
+vhci_read_fndecl_58901_fns vhci_read fndecl 3 58901 NULL
+comedi_write_fndecl_58917_fns comedi_write fndecl 3 58917 NULL
+fore200e_pca_dma_chunk_alloc_fndecl_58927_fns fore200e_pca_dma_chunk_alloc fndecl 4-3 58927 NULL
++sync_file_set_fence_fndecl_58938_fns sync_file_set_fence fndecl 3 58938 NULL
+cfs_percpt_alloc_fndecl_58941_fns cfs_percpt_alloc fndecl 2 58941 NULL
+drm_simple_display_pipe_init_fndecl_58972_fns drm_simple_display_pipe_init fndecl 5 58972 NULL
-+ib_umad_write_fndecl_58986_fns ib_umad_write fndecl 3 58986 NULL
+mpi_read_raw_from_sgl_fndecl_58990_fns mpi_read_raw_from_sgl fndecl 2 58990 NULL
-+nfs4_proc_get_acl_fndecl_58998_fns nfs4_proc_get_acl fndecl 3 58998 NULL
-+iwl_dbgfs_ucode_tracing_read_fndecl_59004_fns iwl_dbgfs_ucode_tracing_read fndecl 3 59004 NULL
+__kvm_read_guest_atomic_fndecl_59011_fns __kvm_read_guest_atomic fndecl 5-2 59011 NULL
+nclips_saa7146_overlay_59032_fns nclips saa7146_overlay 0 59032 NULL
-+iwl_mvm_fw_dbg_collect_fndecl_59043_fns iwl_mvm_fw_dbg_collect fndecl 4 59043 NULL
++len_nand_bbt_descr_59045_fns len nand_bbt_descr 0 59045 NULL
+posix_acl_alloc_fndecl_59052_fns posix_acl_alloc fndecl 1 59052 NULL nohasharray
+nr_strip_zones_r0conf_59052_fns nr_strip_zones r0conf 0 59052 &posix_acl_alloc_fndecl_59052_fns
+axi_dmac_prep_slave_sg_fndecl_59073_fns axi_dmac_prep_slave_sg fndecl 3 59073 NULL
+buffer_mousedev_client_59098_fns buffer mousedev_client 0 59098 NULL
-+wm_latency_write_fndecl_59118_fns wm_latency_write fndecl 3 59118 NULL
+mmc_alloc_host_fndecl_59122_fns mmc_alloc_host fndecl 1 59122 NULL
+tas571x_reg_write_multiword_fndecl_59156_fns tas571x_reg_write_multiword fndecl 4 59156 NULL
++copy_ucs2_from_user_len_fndecl_59162_fns copy_ucs2_from_user_len fndecl 3 59162 NULL
+vb2_dvb_register_bus_fndecl_59175_fns vb2_dvb_register_bus fndecl 0 59175 NULL
+get_unaligned_le24_fndecl_59191_fns get_unaligned_le24 fndecl 0 59191 NULL
++rx_desc_cnt_emac_adapter_59195_fns rx_desc_cnt emac_adapter 0 59195 NULL
+walk_page_test_fndecl_59232_fns walk_page_test fndecl 0 59232 NULL
-+bits_to_user_fndecl_59238_fns bits_to_user fndecl 2-3 59238 NULL
-+cxd2841er_i2c_debug_fndecl_59241_fns cxd2841er_i2c_debug fndecl 6 59241 NULL nohasharray
-+carl9170_debugfs_read_fndecl_59241_fns carl9170_debugfs_read fndecl 3 59241 &cxd2841er_i2c_debug_fndecl_59241_fns
++bits_to_user_fndecl_59238_fns bits_to_user fndecl 3-2 59238 NULL
+mvumi_alloc_mem_resource_fndecl_59285_fns mvumi_alloc_mem_resource fndecl 3 59285 NULL
+alloc_sched_domains_fndecl_59295_fns alloc_sched_domains fndecl 1 59295 NULL
+posix_acl_fix_xattr_from_user_fndecl_59298_fns posix_acl_fix_xattr_from_user fndecl 2 59298 NULL
-+read_file_spectral_bins_fndecl_59334_fns read_file_spectral_bins fndecl 3 59334 NULL
-+pinconf_dbg_config_write_fndecl_59336_fns pinconf_dbg_config_write fndecl 3 59336 NULL
-+lov_packmd_fndecl_59345_fns lov_packmd fndecl 0 59345 NULL
++qib_copy_sge_fndecl_59314_fns qib_copy_sge fndecl 3 59314 NULL
+tree_mod_log_insert_move_fndecl_59356_fns tree_mod_log_insert_move fndecl 5 59356 NULL
+base_tsn_sctp_tsnmap_59358_fns base_tsn sctp_tsnmap 0 59358 NULL
+buf_len_i40e_arq_event_info_59370_fns buf_len i40e_arq_event_info 0 59370 NULL
+default_drvbuffer_scsi_tape_59374_fns default_drvbuffer scsi_tape 0 59374 NULL
+free_list_size_eni_dev_59386_fns free_list_size eni_dev 0 59386 NULL
-+iwl_dbgfs_chain_noise_read_fndecl_59392_fns iwl_dbgfs_chain_noise_read fndecl 3 59392 NULL
+size_freelQ_59398_fns size freelQ 0 59398 NULL
+smk_write_direct_fndecl_59400_fns smk_write_direct fndecl 3 59400 NULL
-+num_vfs_ixgbe_adapter_59414_fns num_vfs ixgbe_adapter 0 59414 NULL
+desc_elems_timb_dma_chan_59416_fns desc_elems timb_dma_chan 0 59416 NULL
+nilfs_cpfile_block_get_checkpoint_fndecl_59441_fns nilfs_cpfile_block_get_checkpoint fndecl 2 59441 NULL
+rng_get_data_fndecl_59453_fns rng_get_data fndecl 0 59453 NULL
+platform_gpio_count_fndecl_59459_fns platform_gpio_count fndecl 0 59459 NULL
+ttm_page_pool_get_pages_fndecl_59468_fns ttm_page_pool_get_pages fndecl 5-0 59468 NULL
+rx_ringsz_alx_priv_59496_fns rx_ringsz alx_priv 0 59496 NULL
-+il_dbgfs_clear_traffic_stats_write_fndecl_59497_fns il_dbgfs_clear_traffic_stats_write fndecl 3 59497 NULL
+pci_frontend_enable_msix_fndecl_59501_fns pci_frontend_enable_msix fndecl 3 59501 NULL
++wdata_alloc_and_fillpages_fndecl_59510_fns wdata_alloc_and_fillpages fndecl 1 59510 NULL
+qlcnic_get_vnic_func_count_fndecl_59521_fns qlcnic_get_vnic_func_count fndecl 0 59521 NULL
-+kmsg_read_fndecl_59553_fns kmsg_read fndecl 3 59553 NULL
++gb_connection_recv_request_fndecl_59544_fns gb_connection_recv_request fndecl 4 59544 NULL
++kmsg_read_fndecl_59553_fns kmsg_read fndecl 3 59553 NULL nohasharray
++nouveau_drm_ioctl_fndecl_59553_fns nouveau_drm_ioctl fndecl 2 59553 &kmsg_read_fndecl_59553_fns
++mthca_alloc_cq_buf_fndecl_59555_fns mthca_alloc_cq_buf fndecl 3 59555 NULL
++rc_rcv_resp_fndecl_59556_fns rc_rcv_resp fndecl 9-7-8-4 59556 NULL
+num_stripes_btrfs_chunk_59557_fns num_stripes btrfs_chunk 0 59557 NULL
+nlm_end_grace_write_fndecl_59558_fns nlm_end_grace_write fndecl 3 59558 NULL
-+vringh_complete_multi_user_fndecl_59569_fns vringh_complete_multi_user fndecl 3 59569 NULL
++speed_hz_spi_transfer_59563_fns speed_hz spi_transfer 0 59563 NULL
++fill_in_write_vector_fndecl_59569_fns fill_in_write_vector fndecl 0 59569 NULL nohasharray
++vringh_complete_multi_user_fndecl_59569_fns vringh_complete_multi_user fndecl 3 59569 &fill_in_write_vector_fndecl_59569_fns
+key_count_applesmc_registers_59587_fns key_count applesmc_registers 0 59587 NULL
+serverworks_create_gatt_pages_fndecl_59621_fns serverworks_create_gatt_pages fndecl 1 59621 NULL
-+il3945_ucode_general_stats_read_fndecl_59660_fns il3945_ucode_general_stats_read fndecl 3 59660 NULL
++amdgpu_kms_compat_ioctl_fndecl_59667_fns amdgpu_kms_compat_ioctl fndecl 2 59667 NULL
+rtw_buf_update_fndecl_59689_fns rtw_buf_update fndecl 4 59689 NULL
-+capacity_sddr55_card_info_59695_fns capacity sddr55_card_info 0 59695 NULL
++aux_entry_sz_mlx4_dev_cap_59718_fns aux_entry_sz mlx4_dev_cap 0 59718 NULL
+__walk_page_range_fndecl_59729_fns __walk_page_range fndecl 0 59729 NULL
+__netlink_change_ngroups_fndecl_59743_fns __netlink_change_ngroups fndecl 2 59743 NULL
-+fq_resize_fndecl_59744_fns fq_resize fndecl 2 59744 NULL
+add_conn_list_fndecl_59750_fns add_conn_list fndecl 3 59750 NULL
+vxge_os_dma_malloc_fndecl_59771_fns vxge_os_dma_malloc fndecl 2 59771 NULL
+tx_tx_cfe1_read_fndecl_59777_fns tx_tx_cfe1_read fndecl 3 59777 NULL
+mlx4_buf_alloc_fndecl_59788_fns mlx4_buf_alloc fndecl 2 59788 NULL
+num_leds_lm3533_platform_data_59793_fns num_leds lm3533_platform_data 0 59793 NULL
++tm6000_i2c_recv_regs_fndecl_59796_fns tm6000_i2c_recv_regs fndecl 5 59796 NULL
+nf_nat_ftp_fndecl_59818_fns nf_nat_ftp fndecl 6 59818 NULL
+xen_setup_msi_irqs_fndecl_59830_fns xen_setup_msi_irqs fndecl 2 59830 NULL
-+dig_outs_auto_pin_cfg_59832_fns dig_outs auto_pin_cfg 0 59832 NULL
++relay_file_read_consume_fndecl_59832_fns relay_file_read_consume fndecl 3 59832 NULL nohasharray
++dig_outs_auto_pin_cfg_59832_fns dig_outs auto_pin_cfg 0 59832 &relay_file_read_consume_fndecl_59832_fns
+mpi_read_raw_data_fndecl_59835_fns mpi_read_raw_data fndecl 2 59835 NULL
+dvb_net_init_fndecl_59840_fns dvb_net_init fndecl 0 59840 NULL
-+sst_fill_byte_control_fndecl_59850_fns sst_fill_byte_control fndecl 6 59850 NULL
+acpi_rs_decode_bitmask_fndecl_59851_fns acpi_rs_decode_bitmask fndecl 0 59851 NULL
+length_pm8001_ioctl_payload_59866_fns length pm8001_ioctl_payload 0 59866 NULL
+qlcnic_83xx_sysfs_flash_bulk_write_fndecl_59875_fns qlcnic_83xx_sysfs_flash_bulk_write fndecl 4 59875 NULL
+__hwahc_dev_set_key_fndecl_59883_fns __hwahc_dev_set_key fndecl 5 59883 NULL
-+vfs_allocated_count_igb_adapter_59900_fns vfs_allocated_count igb_adapter 0 59900 NULL
+lov_iocontrol_fndecl_59919_fns lov_iocontrol fndecl 3 59919 NULL
-+ixgbe_dbg_reg_ops_write_fndecl_59964_fns ixgbe_dbg_reg_ops_write fndecl 3 59964 NULL
+size_wid_59965_fns size wid 0 59965 NULL
+configfs_read_bin_file_fndecl_59987_fns configfs_read_bin_file fndecl 3 59987 NULL
+wlcore_alloc_hw_fndecl_59990_fns wlcore_alloc_hw fndecl 1-3 59990 NULL
@@ -209733,12 +213953,12 @@ index 0000000..510c554
+__sctp_setsockopt_connectx_fndecl_60022_fns __sctp_setsockopt_connectx fndecl 3 60022 NULL
+qla4xxx_post_aen_work_fndecl_60026_fns qla4xxx_post_aen_work fndecl 3 60026 NULL
+coda_fsync_fndecl_60029_fns coda_fsync fndecl 2-3 60029 NULL
++sel_write_bool_fndecl_60039_fns sel_write_bool fndecl 3 60039 NULL
++blk_rq_map_kern_fndecl_60047_fns blk_rq_map_kern fndecl 4 60047 NULL
+cx231xx_init_bulk_fndecl_60067_fns cx231xx_init_bulk fndecl 3 60067 NULL
+level_ubifs_znode_60069_fns level ubifs_znode 0 60069 NULL
-+constraint_flags_read_file_fndecl_60073_fns constraint_flags_read_file fndecl 3 60073 NULL
+debugfs_create_u32_array_fndecl_60082_fns debugfs_create_u32_array fndecl 5 60082 NULL
+udpv6_sendmsg_fndecl_60103_fns udpv6_sendmsg fndecl 3 60103 NULL
-+iwl_dump_nic_event_log_fndecl_60130_fns iwl_dump_nic_event_log fndecl 0 60130 NULL
+vfp_set_fndecl_60145_fns vfp_set fndecl 3-4 60145 NULL
+orangefs_dirent_outcount_orangefs_readdir_response_s_60150_fns orangefs_dirent_outcount orangefs_readdir_response_s 0 60150 NULL
+pipeline_dec_packet_in_read_fndecl_60151_fns pipeline_dec_packet_in_read fndecl 3 60151 NULL
@@ -209746,42 +213966,39 @@ index 0000000..510c554
+__kfifo_out_r_fndecl_60172_fns __kfifo_out_r fndecl 4 60172 NULL
+ec_device_read_fndecl_60177_fns ec_device_read fndecl 3 60177 NULL
+snd_compr_write_data_fndecl_60179_fns snd_compr_write_data fndecl 3 60179 NULL
-+il3945_stats_flag_fndecl_60189_fns il3945_stats_flag fndecl 0 60189 NULL
+pci_enable_device_fndecl_60193_fns pci_enable_device fndecl 0 60193 NULL
+request_key_async_with_auxdata_fndecl_60211_fns request_key_async_with_auxdata fndecl 4 60211 NULL
+bo_count_vc4_exec_info_60236_fns bo_count vc4_exec_info 0 60236 NULL
+ah_rf_banks_size_ath5k_hw_60250_fns ah_rf_banks_size ath5k_hw 0 60250 NULL
-+_iwl_dbgfs_tof_range_request_write_fndecl_60255_fns _iwl_dbgfs_tof_range_request_write fndecl 3 60255 NULL
+erst_dbg_write_fndecl_60264_fns erst_dbg_write fndecl 3 60264 NULL
-+alloc_data_packet_fndecl_60281_fns alloc_data_packet fndecl 1 60281 NULL
-+read_file_tx99_fndecl_60294_fns read_file_tx99 fndecl 3 60294 NULL
+wl1271_rx_filter_alloc_field_fndecl_60306_fns wl1271_rx_filter_alloc_field fndecl 5 60306 NULL
+kvm_vcpu_write_guest_fndecl_60323_fns kvm_vcpu_write_guest fndecl 4-2 60323 NULL
-+buf_size__IOCTL_Command_struct_60338_fns buf_size _IOCTL_Command_struct 0 60338 NULL
++qib_rc_rcv_resp_fndecl_60341_fns qib_rc_rcv_resp fndecl 9-7-8-4 60341 NULL
+hest_ghes_dev_register_fndecl_60349_fns hest_ghes_dev_register fndecl 1 60349 NULL
+string_escape_str_fndecl_60365_fns string_escape_str fndecl 0 60365 NULL
+num_counters_vardecl_sysfs_c_60371_fns num_counters vardecl_sysfs.c 0 60371 NULL
-+hfi1_read_cntrs_fndecl_60378_fns hfi1_read_cntrs fndecl 0 60378 NULL
+shmem_pwrite_fast_fndecl_60393_fns shmem_pwrite_fast fndecl 3 60393 NULL
-+quirk_strict_duplicate_filter_write_fndecl_60446_fns quirk_strict_duplicate_filter_write fndecl 3 60446 NULL
+sd_quota_slots_gfs2_sbd_60466_fns sd_quota_slots gfs2_sbd 0 60466 NULL
-+ath10k_dbg_dump_fndecl_60482_fns ath10k_dbg_dump fndecl 6 60482 NULL
-+tiadc_channel_init_fndecl_60514_fns tiadc_channel_init fndecl 2 60514 NULL
+ll_iocontrol_register_fndecl_60517_fns ll_iocontrol_register fndecl 2 60517 NULL
+iommu_dma_alloc_fndecl_60521_fns iommu_dma_alloc fndecl 2 60521 NULL
+pcf2127_i2c_gather_write_fndecl_60523_fns pcf2127_i2c_gather_write fndecl 5 60523 NULL
+tty_buffer_alloc_fndecl_60526_fns tty_buffer_alloc fndecl 2 60526 NULL
++qib_sdma_verbs_send_fndecl_60539_fns qib_sdma_verbs_send fndecl 3 60539 NULL
+register_netdev_fndecl_60559_fns register_netdev fndecl 0 60559 NULL
+nilfs_palloc_delete_block_fndecl_60568_fns nilfs_palloc_delete_block fndecl 2 60568 NULL
++in_size_ide_task_request_s_60603_fns in_size ide_task_request_s 0 60603 NULL
+sys_lgetxattr_fndecl_60616_fns sys_lgetxattr fndecl 4 60616 NULL
++qpc_entry_sz_mlx4_dev_cap_60618_fns qpc_entry_sz mlx4_dev_cap 0 60618 NULL
++dqi_usable_bs_qtree_mem_dqinfo_60619_fns dqi_usable_bs qtree_mem_dqinfo 0 60619 NULL
+copy_macs_fndecl_60621_fns copy_macs fndecl 4 60621 NULL
-+i40e_alloc_vfs_fndecl_60628_fns i40e_alloc_vfs fndecl 2 60628 NULL nohasharray
-+htable_bits_htable_60628_fns htable_bits htable 0 60628 &i40e_alloc_vfs_fndecl_60628_fns
-+stats_dot11ACKFailureCount_read_fndecl_60645_fns stats_dot11ACKFailureCount_read fndecl 3 60645 NULL
-+venus_rmdir_fndecl_60655_fns venus_rmdir fndecl 4 60655 NULL
++htable_bits_htable_60628_fns htable_bits htable 0 60628 NULL
++__ax88179_read_cmd_fndecl_60659_fns __ax88179_read_cmd fndecl 5 60659 NULL
++eld_size_hdmi_eld_60661_fns eld_size hdmi_eld 0 60661 NULL
+cx18_copy_mdl_to_user_fndecl_60670_fns cx18_copy_mdl_to_user fndecl 4 60670 NULL
+h_mspro_block_setup_cmd_fndecl_60673_fns h_mspro_block_setup_cmd fndecl 3 60673 NULL
+tx_tx_cfe2_read_fndecl_60677_fns tx_tx_cfe2_read fndecl 3 60677 NULL
++pos_saa7164_user_buffer_60678_fns pos saa7164_user_buffer 0 60678 NULL
++auxv_read_fndecl_60681_fns auxv_read fndecl 3 60681 NULL
+sysfs_do_create_link_sd_fndecl_60690_fns sysfs_do_create_link_sd fndecl 0 60690 NULL
+sel_write_user_fndecl_60695_fns sel_write_user fndecl 3 60695 NULL
+ubifs_fsync_fndecl_60696_fns ubifs_fsync fndecl 2-3 60696 NULL
@@ -209790,95 +214007,87 @@ index 0000000..510c554
+kvm_mmu_page_get_gfn_fndecl_60709_fns kvm_mmu_page_get_gfn fndecl 0-2 60709 NULL
+usbdev_read_fndecl_60713_fns usbdev_read fndecl 3 60713 NULL
+pwr_missing_bcns_cnt_read_fndecl_60714_fns pwr_missing_bcns_cnt_read fndecl 3 60714 NULL
++HighPriorityCredit_mpt3sas_facts_60721_fns HighPriorityCredit mpt3sas_facts 0 60721 NULL
+command_setapcor_fndecl_60740_fns command_setapcor fndecl 0 60740 NULL
-+helene_i2c_debug_fndecl_60741_fns helene_i2c_debug fndecl 5 60741 NULL
+cfs_trace_daemon_command_usrstr_fndecl_60744_fns cfs_trace_daemon_command_usrstr fndecl 2 60744 NULL
++num_cnq_qedr_dev_60757_fns num_cnq qedr_dev 0 60757 NULL
+device_write_fndecl_60791_fns device_write fndecl 3 60791 NULL
-+sta_agg_status_write_fndecl_60799_fns sta_agg_status_write fndecl 3 60799 NULL
++tomoyo_write_self_fndecl_60794_fns tomoyo_write_self fndecl 3 60794 NULL
+sctp_pack_cookie_fndecl_60821_fns sctp_pack_cookie fndecl 6 60821 NULL
-+ieee80211_if_read_peer_fndecl_60834_fns ieee80211_if_read_peer fndecl 3 60834 NULL
+prism2_pda_proc_read_fndecl_60845_fns prism2_pda_proc_read fndecl 3 60845 NULL
+spi_alloc_master_fndecl_60852_fns spi_alloc_master fndecl 2 60852 NULL
+input_mt_init_slots_fndecl_60876_fns input_mt_init_slots fndecl 2 60876 NULL
-+reiserfs_bmap_fndecl_60877_fns reiserfs_bmap fndecl 2 60877 NULL
-+snd_pcm_oss_sync1_fndecl_60897_fns snd_pcm_oss_sync1 fndecl 2 60897 NULL nohasharray
-+sn9c2028_short_command_fndecl_60897_fns sn9c2028_short_command fndecl 0 60897 &snd_pcm_oss_sync1_fndecl_60897_fns
++sn9c2028_short_command_fndecl_60897_fns sn9c2028_short_command fndecl 0 60897 NULL nohasharray
++snd_pcm_oss_sync1_fndecl_60897_fns snd_pcm_oss_sync1 fndecl 2 60897 &sn9c2028_short_command_fndecl_60897_fns
+mlxsw_cmd_mbox_query_aq_cap_max_num_sdqs_get_fndecl_60914_fns mlxsw_cmd_mbox_query_aq_cap_max_num_sdqs_get fndecl 0 60914 NULL
-+__exchange_data_block_fndecl_60951_fns __exchange_data_block fndecl 5 60951 NULL
++x509_process_extension_fndecl_60941_fns x509_process_extension fndecl 5 60941 NULL
+posix_acl_xattr_set_fndecl_60952_fns posix_acl_xattr_set fndecl 6 60952 NULL
-+ath10k_reg_value_read_fndecl_60958_fns ath10k_reg_value_read fndecl 3 60958 NULL
-+isdn_write_fndecl_60980_fns isdn_write fndecl 3 60980 NULL
-+devm_create_dax_dev_fndecl_60990_fns devm_create_dax_dev fndecl 3 60990 NULL
-+dbgfs_frame_fndecl_61006_fns dbgfs_frame fndecl 3 61006 NULL
++get_rdac_req_fndecl_60969_fns get_rdac_req fndecl 3 60969 NULL
+cfs_cpt_weight_fndecl_61020_fns cfs_cpt_weight fndecl 0 61020 NULL
+etnaviv_gpu_cmdbuf_new_fndecl_61036_fns etnaviv_gpu_cmdbuf_new fndecl 3 61036 NULL
+nf_nat_ftp_fmt_cmd_fndecl_61045_fns nf_nat_ftp_fmt_cmd fndecl 0 61045 NULL
-+copy_to_fndecl_61058_fns copy_to fndecl 3 61058 NULL
+kobject_init_and_add_fndecl_61088_fns kobject_init_and_add fndecl 0 61088 NULL nohasharray
+reply_len_fc_bsg_job_61088_fns reply_len fc_bsg_job 0 61088 &kobject_init_and_add_fndecl_61088_fns
++snd_hdac_exec_verb_fndecl_61100_fns snd_hdac_exec_verb fndecl 0 61100 NULL
+atr_len_retry_cm4000_dev_61135_fns atr_len_retry cm4000_dev 0 61135 NULL
++ore_calc_stripe_info_fndecl_61140_fns ore_calc_stripe_info fndecl 3 61140 NULL
++__access_remote_vm_fndecl_61148_fns __access_remote_vm fndecl 0 61148 NULL
+get_free_entries_fndecl_61149_fns get_free_entries fndecl 1 61149 NULL nohasharray
+fnic_reset_stats_read_fndecl_61149_fns fnic_reset_stats_read fndecl 3 61149 &get_free_entries_fndecl_61149_fns
-+sierra_setup_urb_fndecl_61150_fns sierra_setup_urb fndecl 5 61150 NULL
-+__vmalloc_node_range_fndecl_61157_fns __vmalloc_node_range fndecl 1-2 61157 NULL nohasharray
-+max_rsp_queues_qla_hw_data_61157_fns max_rsp_queues qla_hw_data 0 61157 &__vmalloc_node_range_fndecl_61157_fns
++__vmalloc_node_range_fndecl_61157_fns __vmalloc_node_range fndecl 2 61157 NULL
++sel_commit_bools_write_fndecl_61166_fns sel_commit_bools_write fndecl 3 61166 NULL
+host1x_job_alloc_fndecl_61171_fns host1x_job_alloc fndecl 4-3-2 61171 NULL
+dma_tx_errors_read_fndecl_61183_fns dma_tx_errors_read fndecl 3 61183 NULL
++rdma_set_ib_paths_fndecl_61195_fns rdma_set_ib_paths fndecl 3 61195 NULL
+spk_ys_vardecl_61196_fns spk_ys vardecl 0 61196 NULL
+add_qgroup_rb_fndecl_61197_fns add_qgroup_rb fndecl 2 61197 NULL
+radar_debug_mode_read_fndecl_61223_fns radar_debug_mode_read fndecl 3 61223 NULL
+hidraw_get_report_fndecl_61242_fns hidraw_get_report fndecl 3 61242 NULL
-+i2c2_debugfs_write_fndecl_61249_fns i2c2_debugfs_write fndecl 3 61249 NULL nohasharray
-+rcar_dmac_prep_dma_cyclic_fndecl_61249_fns rcar_dmac_prep_dma_cyclic fndecl 4-3 61249 &i2c2_debugfs_write_fndecl_61249_fns
++rcar_dmac_prep_dma_cyclic_fndecl_61249_fns rcar_dmac_prep_dma_cyclic fndecl 4-3 61249 NULL
+CombinedStatusBufferLength_DAC960_Controller_61253_fns CombinedStatusBufferLength DAC960_Controller 0 61253 NULL
++smk_write_ambient_fndecl_61288_fns smk_write_ambient fndecl 3 61288 NULL
+ufx_i2c_configure_fndecl_61311_fns ufx_i2c_configure fndecl 0 61311 NULL
+dvb_ca_en50221_init_fndecl_61317_fns dvb_ca_en50221_init fndecl 4 61317 NULL
+rw_copy_check_uvector_fndecl_61351_fns rw_copy_check_uvector fndecl 3 61351 NULL nohasharray
+v4l2_ctrl_new_std_fndecl_61351_fns v4l2_ctrl_new_std fndecl 5 61351 &rw_copy_check_uvector_fndecl_61351_fns
-+size_sge_fl_61353_fns size sge_fl 0 61353 NULL
-+lkdtm_debugfs_read_fndecl_61355_fns lkdtm_debugfs_read fndecl 3 61355 NULL
+snd_cs46xx_io_read_fndecl_61365_fns snd_cs46xx_io_read fndecl 5 61365 NULL
+osc_checksum_type_seq_write_fndecl_61386_fns osc_checksum_type_seq_write fndecl 3 61386 NULL
++npages_nfs_page_array_61390_fns npages nfs_page_array 0 61390 NULL
+__pci_register_driver_fndecl_61400_fns __pci_register_driver fndecl 0 61400 NULL
+alloc_ts_config_fndecl_61404_fns alloc_ts_config fndecl 1 61404 NULL
+rx_ring_size_rx_queue_61409_fns rx_ring_size rx_queue 0 61409 NULL
+amdgpu_fence_driver_init_ring_fndecl_61431_fns amdgpu_fence_driver_init_ring fndecl 2 61431 NULL
-+quirk_simultaneous_discovery_read_fndecl_61433_fns quirk_simultaneous_discovery_read fndecl 3 61433 NULL
-+raw_setsockopt_fndecl_61435_fns raw_setsockopt fndecl 5 61435 NULL
+lbs_rdbbp_read_fndecl_61438_fns lbs_rdbbp_read fndecl 3 61438 NULL
++ocfs2_zero_range_for_truncate_fndecl_61461_fns ocfs2_zero_range_for_truncate fndecl 4 61461 NULL
+ath6kl_keepalive_read_fndecl_61468_fns ath6kl_keepalive_read fndecl 3 61468 NULL
+nmatches_tcf_ematch_tree_hdr_61486_fns nmatches tcf_ematch_tree_hdr 0 61486 NULL
++nlen_ubifs_dent_node_61488_fns nlen ubifs_dent_node 0 61488 NULL
+dispatch_proc_write_fndecl_61491_fns dispatch_proc_write fndecl 3 61491 NULL
+rs_init_fndecl_61492_fns rs_init fndecl 6-1 61492 NULL
-+ccp_init_data_fndecl_61495_fns ccp_init_data fndecl 5 61495 NULL nohasharray
-+writing_st_buffer_61495_fns writing st_buffer 0 61495 &ccp_init_data_fndecl_61495_fns
++ccp_init_data_fndecl_61495_fns ccp_init_data fndecl 4-5 61495 NULL
+count_sgentry_61508_fns count sgentry 0 61508 NULL
+maxcontacts_wtp_data_61511_fns maxcontacts wtp_data 0 61511 NULL
+nfs_fscache_get_super_cookie_fndecl_61520_fns nfs_fscache_get_super_cookie fndecl 3 61520 NULL
-+map_size_tracing_map_61522_fns map_size tracing_map 0 61522 NULL
-+rts_threshold_read_fndecl_61555_fns rts_threshold_read fndecl 3 61555 NULL
+aoedev_flush_fndecl_61565_fns aoedev_flush fndecl 2 61565 NULL
+mtip_hw_read_flags_fndecl_61567_fns mtip_hw_read_flags fndecl 3 61567 NULL
-+ieee80211_if_read_rc_rateidx_mcs_mask_5ghz_fndecl_61588_fns ieee80211_if_read_rc_rateidx_mcs_mask_5ghz fndecl 3 61588 NULL
+btrfs_chunk_item_size_fndecl_61613_fns btrfs_chunk_item_size fndecl 0-1 61613 NULL
+write_file_debug_fndecl_61615_fns write_file_debug fndecl 3 61615 NULL
-+___alloc_bootmem_node_nopanic_fndecl_61630_fns ___alloc_bootmem_node_nopanic fndecl 2 61630 NULL
+nr_slots_b43_dmaring_61631_fns nr_slots b43_dmaring 0 61631 NULL
-+ieee80211_if_read_dropped_frames_ttl_fndecl_61639_fns ieee80211_if_read_dropped_frames_ttl fndecl 3 61639 NULL
-+iwl_dbgfs_sram_read_fndecl_61642_fns iwl_dbgfs_sram_read fndecl 3 61642 NULL nohasharray
-+security_getprocattr_fndecl_61642_fns security_getprocattr fndecl 0 61642 &iwl_dbgfs_sram_read_fndecl_61642_fns
-+spidev_write_fndecl_61645_fns spidev_write fndecl 3 61645 NULL
++security_getprocattr_fndecl_61642_fns security_getprocattr fndecl 0 61642 NULL
+f2fs_kvmalloc_fndecl_61650_fns f2fs_kvmalloc fndecl 1 61650 NULL
-+sdio_align_size_fndecl_61658_fns sdio_align_size fndecl 0 61658 NULL
-+comm_write_fndecl_61674_fns comm_write fndecl 3 61674 NULL
++sys_msgsnd_fndecl_61674_fns sys_msgsnd fndecl 3 61674 NULL nohasharray
++comm_write_fndecl_61674_fns comm_write fndecl 3 61674 &sys_msgsnd_fndecl_61674_fns
++nvme_get_features_fndecl_61689_fns nvme_get_features fndecl 5 61689 NULL
++cma_set_req_event_data_fndecl_61691_fns cma_set_req_event_data fndecl 4 61691 NULL
+paclen_ax25_cb_61712_fns paclen ax25_cb 0 61712 NULL
+btrfs_prev_leaf_fndecl_61728_fns btrfs_prev_leaf fndecl 0 61728 NULL
+pci_msix_vec_count_fndecl_61742_fns pci_msix_vec_count fndecl 0 61742 NULL
-+SYSC_add_key_fndecl_61756_fns SYSC_add_key fndecl 4 61756 NULL
++nvkm_disp_ctor_fndecl_61743_fns nvkm_disp_ctor fndecl 4 61743 NULL
++smt_add_frame_len_fndecl_61748_fns smt_add_frame_len fndecl 2 61748 NULL
++nr_fingers_f11_2d_sensor_queries_61756_fns nr_fingers f11_2d_sensor_queries 0 61756 NULL nohasharray
++SYSC_add_key_fndecl_61756_fns SYSC_add_key fndecl 4 61756 &nr_fingers_f11_2d_sensor_queries_61756_fns
+len_s_skfp_ioctl_61764_fns len s_skfp_ioctl 0 61764 NULL
-+__qsfp_debugfs_read_fndecl_61803_fns __qsfp_debugfs_read fndecl 3 61803 NULL
+ttm_get_pages_fndecl_61821_fns ttm_get_pages fndecl 2 61821 NULL
-+tracing_resize_saved_cmdlines_fndecl_61823_fns tracing_resize_saved_cmdlines fndecl 1 61823 NULL
+SYSC_set_mempolicy_fndecl_61827_fns SYSC_set_mempolicy fndecl 3 61827 NULL
+num_virt_counters_op_x86_model_spec_61835_fns num_virt_counters op_x86_model_spec 0 61835 NULL
+size_rocker_dma_ring_info_61839_fns size rocker_dma_ring_info 0 61839 NULL
@@ -209886,74 +214095,60 @@ index 0000000..510c554
+wil_vring_init_tx_fndecl_61876_fns wil_vring_init_tx fndecl 3 61876 NULL
+virtinput_cfg_select_fndecl_61880_fns virtinput_cfg_select fndecl 0 61880 NULL
+param_data_size_skl_ipc_large_config_msg_61881_fns param_data_size skl_ipc_large_config_msg 0 61881 NULL
++__qedr_alloc_mr_fndecl_61885_fns __qedr_alloc_mr fndecl 2 61885 NULL
+vp_find_vqs_fndecl_61892_fns vp_find_vqs fndecl 2 61892 NULL
-+srp_alloc_iu_fndecl_61904_fns srp_alloc_iu fndecl 2 61904 NULL
-+mlx5_set_ports_check_fndecl_61910_fns mlx5_set_ports_check fndecl 3 61910 NULL
+rxsize_channel_data_61912_fns rxsize channel_data 0 61912 NULL
+device_create_file_fndecl_61934_fns device_create_file fndecl 0 61934 NULL
-+__subn_get_opa_cable_info_fndecl_61961_fns __subn_get_opa_cable_info fndecl 2 61961 NULL
-+indirect_size_srp_target_port_61962_fns indirect_size srp_target_port 0 61962 NULL
+qla4xxx_alloc_work_fndecl_61982_fns qla4xxx_alloc_work fndecl 2 61982 NULL
-+qib_verbs_send_dma_fndecl_61985_fns qib_verbs_send_dma fndecl 6-3 61985 NULL
++qib_verbs_send_dma_fndecl_61985_fns qib_verbs_send_dma fndecl 7-5-6-3 61985 NULL
+sub_stripes_map_lookup_61986_fns sub_stripes map_lookup 0 61986 NULL
+copydesc_user_fndecl_61988_fns copydesc_user fndecl 3 61988 NULL
-+sisusb_write_fndecl_62001_fns sisusb_write fndecl 3 62001 NULL
-+iwl_dbgfs_tof_range_req_ext_read_fndecl_62021_fns iwl_dbgfs_tof_range_req_ext_read fndecl 3 62021 NULL
+drm_dp_dpcd_read_fndecl_62030_fns drm_dp_dpcd_read fndecl 0 62030 NULL
+init_rs_fndecl_62042_fns init_rs fndecl 1-5 62042 NULL
+block_aligned_filename_size_ecryptfs_write_tag_70_packet_silly_stack_62050_fns block_aligned_filename_size ecryptfs_write_tag_70_packet_silly_stack 0 62050 NULL
+cfg80211_inform_bss_data_fndecl_62065_fns cfg80211_inform_bss_data fndecl 9 62065 NULL
+do_tty_write_fndecl_62067_fns do_tty_write fndecl 5 62067 NULL
-+storvsc_connect_to_vsp_fndecl_62078_fns storvsc_connect_to_vsp fndecl 2 62078 NULL
++max_xid_bnx2fc_hba_62096_fns max_xid bnx2fc_hba 0 62096 NULL
+ofdpa_group_l2_flood_fndecl_62112_fns ofdpa_group_l2_flood fndecl 5 62112 NULL
-+__i2c_debugfs_write_fndecl_62113_fns __i2c_debugfs_write fndecl 3 62113 NULL nohasharray
-+tx_queue_status_read_fndecl_62113_fns tx_queue_status_read fndecl 3 62113 &__i2c_debugfs_write_fndecl_62113_fns
++tx_queue_status_read_fndecl_62113_fns tx_queue_status_read fndecl 3 62113 NULL
+bo_offset_vmw_surface_offset_62116_fns bo_offset vmw_surface_offset 0 62116 NULL
+sched_read_attr_fndecl_62123_fns sched_read_attr fndecl 3 62123 NULL
+ofdpa_port_vlan_to_vid_fndecl_62138_fns ofdpa_port_vlan_to_vid fndecl 0 62138 NULL
+free_space_bitmap_size_fndecl_62144_fns free_space_bitmap_size fndecl 0 62144 NULL
-+ptrace_writedata_fndecl_62158_fns ptrace_writedata fndecl 4 62158 NULL
+dm_kvzalloc_fndecl_62194_fns dm_kvzalloc fndecl 1 62194 NULL
+wm_adsp_create_control_fndecl_62201_fns wm_adsp_create_control fndecl 4 62201 NULL
+param_count_acpi_evaluate_info_62202_fns param_count acpi_evaluate_info 0 62202 NULL
+sense_len_request_62229_fns sense_len request 0 62229 NULL
+soc_tplg_dapm_widget_dmixer_create_fndecl_62241_fns soc_tplg_dapm_widget_dmixer_create fndecl 2 62241 NULL
+mlxsw_reg_write_fndecl_62290_fns mlxsw_reg_write fndecl 0 62290 NULL
-+__kvm_read_guest_page_fndecl_62291_fns __kvm_read_guest_page fndecl 5-2 62291 NULL
-+alloc_ctrl_packet_fndecl_62312_fns alloc_ctrl_packet fndecl 1 62312 NULL
++__kvm_read_guest_page_fndecl_62291_fns __kvm_read_guest_page fndecl 2-5 62291 NULL
++num_arq_entries_i40e_adminq_info_62293_fns num_arq_entries i40e_adminq_info 0 62293 NULL
+erst_writer_fndecl_62318_fns erst_writer fndecl 7 62318 NULL
-+reiserfs_update_sd_size_fndecl_62345_fns reiserfs_update_sd_size fndecl 3 62345 NULL nohasharray
-+lov_emerg_alloc_fndecl_62345_fns lov_emerg_alloc fndecl 1 62345 &reiserfs_update_sd_size_fndecl_62345_fns
++lov_emerg_alloc_fndecl_62345_fns lov_emerg_alloc fndecl 1 62345 NULL
+switchdev_obj_size_fndecl_62346_fns switchdev_obj_size fndecl 0 62346 NULL
-+write_file_spectral_bins_fndecl_62347_fns write_file_spectral_bins fndecl 3 62347 NULL
+C_SYSC_select_fndecl_62350_fns C_SYSC_select fndecl 1 62350 NULL
+mpi_resize_fndecl_62353_fns mpi_resize fndecl 2 62353 NULL
+raid56_parity_write_fndecl_62355_fns raid56_parity_write fndecl 4 62355 NULL
+reglen_bfad_s_62360_fns reglen bfad_s 0 62360 NULL
-+fm10k_iov_alloc_data_fndecl_62361_fns fm10k_iov_alloc_data fndecl 2 62361 NULL
+ts_read_fndecl_62364_fns ts_read fndecl 3 62364 NULL
+sysfs_create_link_fndecl_62366_fns sysfs_create_link fndecl 0 62366 NULL
+num_subauth_cifs_sid_62374_fns num_subauth cifs_sid 0 62374 NULL
-+fib_count_nexthops_fndecl_62377_fns fib_count_nexthops fndecl 0 62377 NULL
+clusterip_proc_write_fndecl_62378_fns clusterip_proc_write fndecl 3 62378 NULL
+xfer_to_user_fndecl_62394_fns xfer_to_user fndecl 3 62394 NULL
-+tnode_new_fndecl_62406_fns tnode_new fndecl 3 62406 NULL
+WIL_GET_BITS_fndecl_62424_fns WIL_GET_BITS fndecl 0-3-2-1 62424 NULL
+sctp_setsockopt_fndecl_62439_fns sctp_setsockopt fndecl 5 62439 NULL
+rx_dropped_read_fndecl_62444_fns rx_dropped_read fndecl 3 62444 NULL
+__videobuf_copy_stream_fndecl_62450_fns __videobuf_copy_stream fndecl 4 62450 NULL
-+k3_dma_prep_slave_sg_fndecl_62456_fns k3_dma_prep_slave_sg fndecl 3 62456 NULL
-+page_size_mspro_block_data_62479_fns page_size mspro_block_data 0 62479 NULL
+symsize_persistent_ram_ecc_info_62489_fns symsize persistent_ram_ecc_info 0 62489 NULL
++filemap_write_and_wait_range_fndecl_62492_fns filemap_write_and_wait_range fndecl 3 62492 NULL
+evtchn_write_fndecl_62493_fns evtchn_write fndecl 3 62493 NULL
-+args_count_arm_smmu_phandle_args_62496_fns args_count arm_smmu_phandle_args 0 62496 NULL
+de_type_gfs2_dirent_62502_fns de_type gfs2_dirent 0 62502 NULL
++mpage_alloc_fndecl_62512_fns mpage_alloc fndecl 3 62512 NULL
+kvm_host_page_size_fndecl_62535_fns kvm_host_page_size fndecl 0-2 62535 NULL
+svc_pool_map_get_fndecl_62569_fns svc_pool_map_get fndecl 0 62569 NULL
+numscales_vardecl_longhaul_c_62570_fns numscales vardecl_longhaul.c 0 62570 NULL
+xenfb_write_fndecl_62599_fns xenfb_write fndecl 3 62599 NULL
-+__alloc_bootmem_low_fndecl_62604_fns __alloc_bootmem_low fndecl 1 62604 NULL nohasharray
-+msi_capability_init_fndecl_62604_fns msi_capability_init fndecl 2 62604 &__alloc_bootmem_low_fndecl_62604_fns
++__alloc_bootmem_low_fndecl_62604_fns __alloc_bootmem_low fndecl 1 62604 NULL
+usb_string_fndecl_62624_fns usb_string fndecl 0 62624 NULL
+get_vm_area_size_fndecl_62631_fns get_vm_area_size fndecl 0 62631 NULL
+fs_path_prepare_for_add_fndecl_62638_fns fs_path_prepare_for_add fndecl 2-0 62638 NULL
@@ -209963,69 +214158,60 @@ index 0000000..510c554
+tx_tx_data_prepared_read_fndecl_62714_fns tx_tx_data_prepared_read fndecl 3 62714 NULL
+isr_rx_mem_overflow_read_fndecl_62722_fns isr_rx_mem_overflow_read fndecl 3 62722 NULL
+wep_default_key_count_read_fndecl_62728_fns wep_default_key_count_read fndecl 3 62728 NULL
-+match_size_ebt_entry_match_62738_fns match_size ebt_entry_match 0 62738 NULL nohasharray
-+hpi_init_message_responseV1_fndecl_62738_fns hpi_init_message_responseV1 fndecl 4-2 62738 &match_size_ebt_entry_match_62738_fns
-+payload_size_hv_message_header_62742_fns payload_size hv_message_header 0 62742 NULL
++hpi_init_message_responseV1_fndecl_62738_fns hpi_init_message_responseV1 fndecl 4-2 62738 NULL nohasharray
++match_size_ebt_entry_match_62738_fns match_size ebt_entry_match 0 62738 &hpi_init_message_responseV1_fndecl_62738_fns
++__bioset_create_fndecl_62752_fns __bioset_create fndecl 1 62752 NULL
+tomoyo_read_fndecl_62786_fns tomoyo_read fndecl 3 62786 NULL
-+len_cx24120_cmd_62796_fns len cx24120_cmd 0 62796 NULL nohasharray
-+sysfs_create_file_ns_fndecl_62796_fns sysfs_create_file_ns fndecl 0 62796 &len_cx24120_cmd_62796_fns
++sysfs_create_file_ns_fndecl_62796_fns sysfs_create_file_ns fndecl 0 62796 NULL
++xattr_len_ima_event_data_62811_fns xattr_len ima_event_data 0 62811 NULL
+pof_recoffset_boot_data_62824_fns pof_recoffset boot_data 0 62824 NULL
+wq_len_tx_ring_62826_fns wq_len tx_ring 0 62826 NULL
+cfs_cpt_table_alloc_fndecl_62852_fns cfs_cpt_table_alloc fndecl 1 62852 NULL
+func_num_vardecl_g_ffs_c_62856_fns func_num vardecl_g_ffs.c 0 62856 NULL
-+il_dbgfs_power_save_status_read_fndecl_62862_fns il_dbgfs_power_save_status_read fndecl 3 62862 NULL
-+read_file_dfs_fndecl_62874_fns read_file_dfs fndecl 3 62874 NULL
+ath6kl_set_assoc_req_ies_fndecl_62882_fns ath6kl_set_assoc_req_ies fndecl 3 62882 NULL
+send_cmd_fndecl_62899_fns send_cmd fndecl 0 62899 NULL
+elf_core_extra_phdrs_fndecl_62917_fns elf_core_extra_phdrs fndecl 0 62917 NULL
++out_size_ide_task_request_s_62924_fns out_size ide_task_request_s 0 62924 NULL
+uio_write_fndecl_62929_fns uio_write fndecl 3 62929 NULL
-+queue_size_srp_target_port_62930_fns queue_size srp_target_port 0 62930 NULL
+iso_callback_fndecl_62939_fns iso_callback fndecl 3 62939 NULL
+ovl_split_lowerdirs_fndecl_62941_fns ovl_split_lowerdirs fndecl 0 62941 NULL
+batadv_tt_tvlv_unicast_handler_v1_fndecl_62964_fns batadv_tt_tvlv_unicast_handler_v1 fndecl 5 62964 NULL
+max_size_mlx5_rl_table_62968_fns max_size mlx5_rl_table 0 62968 NULL
+tool_mw_write_fndecl_62998_fns tool_mw_write fndecl 3 62998 NULL
-+print_hex_dump_fndecl_63006_fns print_hex_dump fndecl 7-4-5 63006 NULL
+cache_size_raw_regmap_63010_fns cache_size_raw regmap 0 63010 NULL
+gpr_get_fndecl_63026_fns gpr_get fndecl 3-4 63026 NULL
+arch_memcpy_to_pmem_fndecl_63041_fns arch_memcpy_to_pmem fndecl 3 63041 NULL
-+len_ixgbe_tx_buffer_63047_fns len ixgbe_tx_buffer 0 63047 NULL
++reset_psn_fndecl_63045_fns reset_psn fndecl 2 63045 NULL
+read_flush_fndecl_63064_fns read_flush fndecl 3 63064 NULL
++writesize_onenand_chip_63069_fns writesize onenand_chip 0 63069 NULL
++create_gpadl_header_fndecl_63075_fns create_gpadl_header fndecl 2 63075 NULL
+elements_array_data_63130_fns elements array_data 0 63130 NULL
-+reiserfs_get_blocks_direct_io_fndecl_63157_fns reiserfs_get_blocks_direct_io fndecl 2 63157 NULL
+nports_ahci_host_priv_63166_fns nports ahci_host_priv 0 63166 NULL
-+stats_dot11RTSFailureCount_read_fndecl_63167_fns stats_dot11RTSFailureCount_read fndecl 3 63167 NULL
+__clkdev_alloc_fndecl_63173_fns __clkdev_alloc fndecl 1 63173 NULL
-+xt_copy_counters_from_user_fndecl_63174_fns xt_copy_counters_from_user fndecl 2 63174 NULL
-+mlxsw_cmd_mbox_query_fw_fw_pages_get_fndecl_63177_fns mlxsw_cmd_mbox_query_fw_fw_pages_get fndecl 0 63177 NULL nohasharray
-+ulist_add_fndecl_63177_fns ulist_add fndecl 2-3 63177 &mlxsw_cmd_mbox_query_fw_fw_pages_get_fndecl_63177_fns
-+scsi_command_size_fndecl_63179_fns scsi_command_size fndecl 0 63179 NULL nohasharray
-+kvm_read_guest_virt_fndecl_63179_fns kvm_read_guest_virt fndecl 4-2 63179 &scsi_command_size_fndecl_63179_fns
++ulist_add_fndecl_63177_fns ulist_add fndecl 2-3 63177 NULL nohasharray
++mlxsw_cmd_mbox_query_fw_fw_pages_get_fndecl_63177_fns mlxsw_cmd_mbox_query_fw_fw_pages_get fndecl 0 63177 &ulist_add_fndecl_63177_fns
++kvm_read_guest_virt_fndecl_63179_fns kvm_read_guest_virt fndecl 4-2 63179 NULL nohasharray
++scsi_command_size_fndecl_63179_fns scsi_command_size fndecl 0 63179 &kvm_read_guest_virt_fndecl_63179_fns
+cache_request_fndecl_63187_fns cache_request fndecl 0 63187 NULL
-+ieee80211_if_read_rc_rateidx_vht_mcs_mask_2ghz_fndecl_63191_fns ieee80211_if_read_rc_rateidx_vht_mcs_mask_2ghz fndecl 3 63191 NULL
+squashfs_xz_uncompress_fndecl_63193_fns squashfs_xz_uncompress fndecl 6-5 63193 NULL
++nvm_submit_ppa_list_fndecl_63209_fns nvm_submit_ppa_list fndecl 7 63209 NULL
++map_nr_sbitmap_63216_fns map_nr sbitmap 0 63216 NULL
+write_flush_procfs_fndecl_63224_fns write_flush_procfs fndecl 3 63224 NULL
+tx_frag_failed_read_fndecl_63239_fns tx_frag_failed_read fndecl 3 63239 NULL
+acpi_ut_get_resource_length_fndecl_63256_fns acpi_ut_get_resource_length fndecl 0 63256 NULL
+nvme_init_iod_fndecl_63258_fns nvme_init_iod fndecl 2 63258 NULL
++cachefiles_daemon_write_fndecl_63260_fns cachefiles_daemon_write fndecl 3 63260 NULL
+read_events_fndecl_63261_fns read_events fndecl 3 63261 NULL
+dvb_ca_en50221_io_write_fndecl_63262_fns dvb_ca_en50221_io_write fndecl 3 63262 NULL
+__cyz_load_fw_fndecl_63264_fns __cyz_load_fw fndecl 0 63264 NULL
-+rpc_malloc_fndecl_63270_fns rpc_malloc fndecl 2 63270 NULL
-+video_buffer_size_osd_info_63299_fns video_buffer_size osd_info 0 63299 NULL
-+lpfc_idiag_drbacc_read_reg_fndecl_63301_fns lpfc_idiag_drbacc_read_reg fndecl 0-3 63301 NULL
+proc_read_fndecl_63309_fns proc_read fndecl 3 63309 NULL
+alloc_thread_groups_fndecl_63354_fns alloc_thread_groups fndecl 2 63354 NULL
+start_ms350_cam_fndecl_63372_fns start_ms350_cam fndecl 0 63372 NULL
-+kmalloc_large_node_hook_fndecl_63376_fns kmalloc_large_node_hook fndecl 2 63376 NULL
+max_lun_rts51x_chip_63381_fns max_lun rts51x_chip 0 63381 NULL
+__alloc_alien_cache_fndecl_63429_fns __alloc_alien_cache fndecl 2 63429 NULL
+snd_rme32_playback_copy_fndecl_63431_fns snd_rme32_playback_copy fndecl 5 63431 NULL
+bo_count_drm_vc4_get_hang_state_63455_fns bo_count drm_vc4_get_hang_state 0 63455 NULL
+sctp_setsockopt_active_key_fndecl_63480_fns sctp_setsockopt_active_key fndecl 3 63480 NULL
-+length_dw_amdgpu_cs_chunk_63482_fns length_dw amdgpu_cs_chunk 0 63482 NULL nohasharray
-+gigaset_initcs_fndecl_63482_fns gigaset_initcs fndecl 2 63482 &length_dw_amdgpu_cs_chunk_63482_fns
-+width_v4l2_pix_format_63491_fns width v4l2_pix_format 0 63491 NULL
+_gr_table_len_vardecl_x2apic_uv_x_c_63497_fns _gr_table_len vardecl_x2apic_uv_x.c 0 63497 NULL
+num_usb2_ports_xhci_hcd_63514_fns num_usb2_ports xhci_hcd 0 63514 NULL
+rx_defrag_need_decrypt_read_fndecl_63518_fns rx_defrag_need_decrypt_read fndecl 3 63518 NULL
@@ -210034,44 +214220,41 @@ index 0000000..510c554
+snd_pcm_hw_param_value_max_fndecl_63547_fns snd_pcm_hw_param_value_max fndecl 0 63547 NULL
+tlv_data_size_user_element_63549_fns tlv_data_size user_element 0 63549 NULL
+ath10k_htc_process_trailer_fndecl_63552_fns ath10k_htc_process_trailer fndecl 3 63552 NULL
++word_size_ixgbe_eeprom_info_63556_fns word_size ixgbe_eeprom_info 0 63556 NULL
+gfn_to_hva_fndecl_63570_fns gfn_to_hva fndecl 2 63570 NULL
-+sctp_setsockopt_del_key_fndecl_63571_fns sctp_setsockopt_del_key fndecl 3 63571 NULL nohasharray
-+ulong_read_file_fndecl_63571_fns ulong_read_file fndecl 3 63571 &sctp_setsockopt_del_key_fndecl_63571_fns
++ulong_read_file_fndecl_63571_fns ulong_read_file fndecl 3 63571 NULL nohasharray
++sctp_setsockopt_del_key_fndecl_63571_fns sctp_setsockopt_del_key fndecl 3 63571 &ulong_read_file_fndecl_63571_fns
+xfs_rui_init_fndecl_63573_fns xfs_rui_init fndecl 2 63573 NULL
++ide_raw_taskfile_fndecl_63584_fns ide_raw_taskfile fndecl 4 63584 NULL
+cit_get_packet_size_fndecl_63585_fns cit_get_packet_size fndecl 0 63585 NULL
-+il_dbgfs_disable_ht40_read_fndecl_63617_fns il_dbgfs_disable_ht40_read fndecl 3 63617 NULL
-+snic_queue_wq_desc_fndecl_63639_fns snic_queue_wq_desc fndecl 3 63639 NULL
++jz4740_dma_alloc_desc_fndecl_63644_fns jz4740_dma_alloc_desc fndecl 1 63644 NULL
+mlxsw_pci_fw_area_init_fndecl_63657_fns mlxsw_pci_fw_area_init fndecl 3 63657 NULL
++id_nvdimm_63666_fns id nvdimm 0 63666 NULL
+msnd_fifo_read_fndecl_63669_fns msnd_fifo_read fndecl 0 63669 NULL
-+alloc_gen8_temp_bitmaps_fndecl_63688_fns alloc_gen8_temp_bitmaps fndecl 3 63688 NULL nohasharray
-+height_ssd1307fb_par_63688_fns height ssd1307fb_par 0 63688 &alloc_gen8_temp_bitmaps_fndecl_63688_fns
++nr_map_e820map_63674_fns nr_map e820map 0 63674 NULL
++alloc_gen8_temp_bitmaps_fndecl_63688_fns alloc_gen8_temp_bitmaps fndecl 3 63688 NULL
+fanout_set_data_cbpf_fndecl_63689_fns fanout_set_data_cbpf fndecl 3 63689 NULL
-+qsfp_debugfs_dump_fndecl_63692_fns qsfp_debugfs_dump fndecl 3 63692 NULL
+__iio_add_chan_devattr_fndecl_63697_fns __iio_add_chan_devattr fndecl 0 63697 NULL
-+gsm_data_alloc_fndecl_63702_fns gsm_data_alloc fndecl 3 63702 NULL
-+key_conf_keyidx_read_fndecl_63704_fns key_conf_keyidx_read fndecl 3 63704 NULL
-+spi_split_transfers_maxsize_fndecl_63709_fns spi_split_transfers_maxsize fndecl 3 63709 NULL
-+print_section_fndecl_63738_fns print_section fndecl 3 63738 NULL
++cpuhp_issue_call_fndecl_63726_fns cpuhp_issue_call fndecl 0 63726 NULL
+len_ath10k_hif_sg_item_63747_fns len ath10k_hif_sg_item 0 63747 NULL
-+smtc_map_smem_fndecl_63754_fns smtc_map_smem fndecl 3 63754 NULL
+spidev_sync_read_fndecl_63757_fns spidev_sync_read fndecl 0 63757 NULL
+pool_allocate_fndecl_63759_fns pool_allocate fndecl 3 63759 NULL
+msix_count_skd_device_63760_fns msix_count skd_device 0 63760 NULL
++index_isi_board_63762_fns index isi_board 0 63762 NULL
+insn_size_kprobe_insn_cache_63777_fns insn_size kprobe_insn_cache 0 63777 NULL
+__hwahc_op_set_gtk_fndecl_63781_fns __hwahc_op_set_gtk fndecl 4 63781 NULL
-+alloc_trace_kprobe_fndecl_63786_fns alloc_trace_kprobe fndecl 6 63786 NULL
-+_scif_recv_fndecl_63792_fns _scif_recv fndecl 0-3 63792 NULL
-+rs_sta_dbgfs_scale_table_write_fndecl_63794_fns rs_sta_dbgfs_scale_table_write fndecl 3 63794 NULL
+ioaccel_maxsg_ctlr_info_63798_fns ioaccel_maxsg ctlr_info 0 63798 NULL
+acpi_ut_create_buffer_object_fndecl_63805_fns acpi_ut_create_buffer_object fndecl 1 63805 NULL
+iwl_mvm_scan_size_fndecl_63834_fns iwl_mvm_scan_size fndecl 0 63834 NULL
+error_elp_while_tx_exch_read_fndecl_63835_fns error_elp_while_tx_exch_read fndecl 3 63835 NULL
+ext4_sync_file_fndecl_63847_fns ext4_sync_file fndecl 2-3 63847 NULL
-+addrlen_at25_data_63857_fns addrlen at25_data 0 63857 NULL
++submit_inquiry_fndecl_63855_fns submit_inquiry fndecl 3 63855 NULL
++mv88e6xxx_port_db_load_purge_fndecl_63868_fns mv88e6xxx_port_db_load_purge fndecl 4 63868 NULL
+dw_dma_cyclic_prep_fndecl_63890_fns dw_dma_cyclic_prep fndecl 4-3 63890 NULL
+len_sock_fprog_kern_63914_fns len sock_fprog_kern 0 63914 NULL
+read_file_base_eeprom_fndecl_63915_fns read_file_base_eeprom fndecl 3 63915 NULL
+component_match_realloc_fndecl_63932_fns component_match_realloc fndecl 3 63932 NULL
++filemark_cnt_osst_tape_63937_fns filemark_cnt osst_tape 0 63937 NULL
+get_znodes_to_commit_fndecl_63946_fns get_znodes_to_commit fndecl 0 63946 NULL nohasharray
+hdr_dwords_qib_verbs_txreq_63946_fns hdr_dwords qib_verbs_txreq 0 63946 &get_znodes_to_commit_fndecl_63946_fns
+vhost_copy_to_user_fndecl_63952_fns vhost_copy_to_user fndecl 4 63952 NULL
@@ -210080,43 +214263,37 @@ index 0000000..510c554
+write_file_beacon_fndecl_63962_fns write_file_beacon fndecl 3 63962 NULL
+len_wm_coeff_ctl_63967_fns len wm_coeff_ctl 0 63967 NULL
+pla_ocp_read_fndecl_63976_fns pla_ocp_read fndecl 3 63976 NULL
-+pos_pagemapread_63988_fns pos pagemapread 0 63988 NULL
+snd_midi_event_decode_fndecl_64015_fns snd_midi_event_decode fndecl 0 64015 NULL
+dpm_sysfs_add_fndecl_64023_fns dpm_sysfs_add fndecl 0 64023 NULL
+fw_device_op_compat_ioctl_fndecl_64039_fns fw_device_op_compat_ioctl fndecl 2 64039 NULL
+drm_ioctl_fndecl_64046_fns drm_ioctl fndecl 2 64046 NULL
-+elfcorehdr_read_notes_fndecl_64049_fns elfcorehdr_read_notes fndecl 2 64049 NULL
-+entries_per_page_tracing_map_array_64081_fns entries_per_page tracing_map_array 0 64081 NULL
-+iwl_dbgfs_ucode_bt_stats_read_fndecl_64087_fns iwl_dbgfs_ucode_bt_stats_read fndecl 3 64087 NULL
++koneplus_sysfs_read_fndecl_64059_fns koneplus_sysfs_read fndecl 6 64059 NULL
+si476x_radio_read_rsq_blob_fndecl_64088_fns si476x_radio_read_rsq_blob fndecl 3 64088 NULL
+set_arg_fndecl_64091_fns set_arg fndecl 3 64091 NULL
+cxgbi_hbas_add_fndecl_64102_fns cxgbi_hbas_add fndecl 3 64102 NULL
+rx_mini_pending_ethtool_ringparam_64104_fns rx_mini_pending ethtool_ringparam 0 64104 NULL
+nvme_trans_unit_serial_page_fndecl_64108_fns nvme_trans_unit_serial_page fndecl 4 64108 NULL
-+btmrvl_fwdump_write_fndecl_64113_fns btmrvl_fwdump_write fndecl 3 64113 NULL
+of_property_count_strings_fndecl_64124_fns of_property_count_strings fndecl 0 64124 NULL
+xpc_kmalloc_cacheline_aligned_fndecl_64156_fns xpc_kmalloc_cacheline_aligned fndecl 1 64156 NULL
+sctp_getsockopt_maxburst_fndecl_64174_fns sctp_getsockopt_maxburst fndecl 2 64174 NULL
+max_fcoe_conn_cnic_dev_64181_fns max_fcoe_conn cnic_dev 0 64181 NULL
+out___kfifo_64192_fns out __kfifo 0 64192 NULL
+sys_sethostname_fndecl_64193_fns sys_sethostname fndecl 2 64193 NULL
-+st_set_options_fndecl_64214_fns st_set_options fndecl 2 64214 NULL
-+f2fs_move_file_range_fndecl_64227_fns f2fs_move_file_range fndecl 2-5 64227 NULL
++f2fs_move_file_range_fndecl_64227_fns f2fs_move_file_range fndecl 4 64227 NULL
+compat_udpv6_setsockopt_fndecl_64246_fns compat_udpv6_setsockopt fndecl 5 64246 NULL
+pwr_ap_sleep_counter_read_fndecl_64248_fns pwr_ap_sleep_counter_read fndecl 3 64248 NULL
+nfs_idmap_get_desc_fndecl_64253_fns nfs_idmap_get_desc fndecl 2-4 64253 NULL nohasharray
+rtw_os_xmit_resource_alloc_fndecl_64253_fns rtw_os_xmit_resource_alloc fndecl 3 64253 &nfs_idmap_get_desc_fndecl_64253_fns
-+mwifiex_timeshare_coex_read_fndecl_64272_fns mwifiex_timeshare_coex_read fndecl 3 64272 NULL
+denominator_v4l2_fract_64280_fns denominator v4l2_fract 0 64280 NULL
-+request_firmware_fndecl_64298_fns request_firmware fndecl 0 64298 NULL
-+snd_emux_create_port_fndecl_64310_fns snd_emux_create_port fndecl 3 64310 NULL
++sys_vmsplice_fndecl_64310_fns sys_vmsplice fndecl 3 64310 NULL nohasharray
++snd_emux_create_port_fndecl_64310_fns snd_emux_create_port fndecl 3 64310 &sys_vmsplice_fndecl_64310_fns
+smk_read_unconfined_fndecl_64317_fns smk_read_unconfined fndecl 3 64317 NULL
+cciss_add_disk_fndecl_64338_fns cciss_add_disk fndecl 3 64338 NULL
-+_iwl_dbgfs_tof_range_abort_write_fndecl_64357_fns _iwl_dbgfs_tof_range_abort_write fndecl 3 64357 NULL
+oom_score_adj_write_fndecl_64369_fns oom_score_adj_write fndecl 3 64369 NULL
+skb_array_resize_multiple_fndecl_64376_fns skb_array_resize_multiple fndecl 2-3 64376 NULL
+hpi_init_responseV1_fndecl_64379_fns hpi_init_responseV1 fndecl 2 64379 NULL
-+diversity_num_of_packets_per_ant_read_fndecl_64400_fns diversity_num_of_packets_per_ant_read fndecl 3 64400 NULL
++diversity_num_of_packets_per_ant_read_fndecl_64400_fns diversity_num_of_packets_per_ant_read fndecl 3 64400 NULL nohasharray
++oobretlen_mtd_oob_ops_64400_fns oobretlen mtd_oob_ops 0 64400 &diversity_num_of_packets_per_ant_read_fndecl_64400_fns
+sys_move_pages_fndecl_64401_fns sys_move_pages fndecl 2 64401 NULL
+head_len_icmp_bxm_64424_fns head_len icmp_bxm 0 64424 NULL
+new_node_page_fndecl_64464_fns new_node_page fndecl 2 64464 NULL
@@ -210124,6 +214301,7 @@ index 0000000..510c554
+switchdev_deferred_enqueue_fndecl_64474_fns switchdev_deferred_enqueue fndecl 3 64474 NULL
+set_aoe_iflist_fndecl_64482_fns set_aoe_iflist fndecl 2 64482 NULL
+ax25_setsockopt_fndecl_64487_fns ax25_setsockopt fndecl 5 64487 NULL
++dvb_demux_ioctl_fndecl_64510_fns dvb_demux_ioctl fndecl 2 64510 NULL
+partition_create_desc_fndecl_64535_fns partition_create_desc fndecl 3 64535 NULL
+ath10k_p2p_noa_ie_len_compute_fndecl_64548_fns ath10k_p2p_noa_ie_len_compute fndecl 0 64548 NULL
+num_channels_sh_tmu_device_64556_fns num_channels sh_tmu_device 0 64556 NULL
@@ -210134,6 +214312,7 @@ index 0000000..510c554
+alloc_context_fndecl_64592_fns alloc_context fndecl 1 64592 NULL
+of_count_phandle_with_args_fndecl_64600_fns of_count_phandle_with_args fndecl 0 64600 NULL
+gpr_set_fndecl_64611_fns gpr_set fndecl 3-4 64611 NULL
++objio_alloc_io_state_fndecl_64631_fns objio_alloc_io_state fndecl 6-7 64631 NULL
+kmp_init_fndecl_64654_fns kmp_init fndecl 2 64654 NULL
+num_allowed_vlans_qlcnic_sriov_64661_fns num_allowed_vlans qlcnic_sriov 0 64661 NULL
+cnic_init_id_tbl_fndecl_64665_fns cnic_init_id_tbl fndecl 2 64665 NULL
@@ -210141,96 +214320,91 @@ index 0000000..510c554
+cciss_update_drive_info_fndecl_64677_fns cciss_update_drive_info fndecl 2 64677 &isr_commands_read_fndecl_64677_fns
+sys_flistxattr_fndecl_64684_fns sys_flistxattr fndecl 3 64684 NULL
+get_base_info_fndecl_64688_fns get_base_info fndecl 3 64688 NULL
++__pci_enable_msix_fndecl_64689_fns __pci_enable_msix fndecl 3-0 64689 NULL
+lbs_rdrf_read_fndecl_64708_fns lbs_rdrf_read fndecl 3 64708 NULL
++goldfish_tty_current_line_count_vardecl_goldfish_c_64718_fns goldfish_tty_current_line_count vardecl_goldfish.c 0 64718 NULL
+rx_defrag_decrypt_failed_read_fndecl_64720_fns rx_defrag_decrypt_failed_read fndecl 3 64720 NULL
+layout_leb_in_gaps_fndecl_64749_fns layout_leb_in_gaps fndecl 0 64749 NULL
+pcpu_build_alloc_info_fndecl_64752_fns pcpu_build_alloc_info fndecl 2-1-3 64752 NULL nohasharray
+vop_virtio_copy_from_user_fndecl_64752_fns vop_virtio_copy_from_user fndecl 3 64752 &pcpu_build_alloc_info_fndecl_64752_fns
+iio_device_alloc_fndecl_64755_fns iio_device_alloc fndecl 1 64755 NULL
+smtcfb_read_fndecl_64764_fns smtcfb_read fndecl 3 64764 NULL
-+mac80211_format_buffer_fndecl_64801_fns mac80211_format_buffer fndecl 2 64801 NULL
+pmsg_size_ramoops_context_64804_fns pmsg_size ramoops_context 0 64804 NULL
++alloc_align_snd_array_64806_fns alloc_align snd_array 0 64806 NULL
+fpa_get_fndecl_64809_fns fpa_get fndecl 3-4 64809 NULL
-+il_dbgfs_fh_reg_read_fndecl_64818_fns il_dbgfs_fh_reg_read fndecl 3 64818 NULL
-+iwl_dbgfs_scan_ant_rxchain_read_fndecl_64820_fns iwl_dbgfs_scan_ant_rxchain_read fndecl 3 64820 NULL
+atr_csum_cm4000_dev_64828_fns atr_csum cm4000_dev 0 64828 NULL
+lprocfs_write_frac_helper_fndecl_64841_fns lprocfs_write_frac_helper fndecl 2 64841 NULL
+edma_prep_dma_cyclic_fndecl_64842_fns edma_prep_dma_cyclic fndecl 4-3 64842 NULL
-+iov_iter_truncate_fndecl_64844_fns iov_iter_truncate fndecl 2 64844 NULL
-+tool_dbfn_write_fndecl_64852_fns tool_dbfn_write fndecl 3 64852 NULL
++tool_dbfn_write_fndecl_64852_fns tool_dbfn_write fndecl 3 64852 NULL nohasharray
++_req_append_segment_fndecl_64852_fns _req_append_segment fndecl 2 64852 &tool_dbfn_write_fndecl_64852_fns
+rh_inc_fndecl_64864_fns rh_inc fndecl 2 64864 NULL
-+sc_only_mode_read_fndecl_64871_fns sc_only_mode_read fndecl 3 64871 NULL
+vfs_listxattr_fndecl_64885_fns vfs_listxattr fndecl 0 64885 NULL
-+reserve_sfa_size_fndecl_64893_fns reserve_sfa_size fndecl 2 64893 NULL
+provide_user_output_fndecl_64898_fns provide_user_output fndecl 3 64898 NULL
+f_audio_buffer_alloc_fndecl_64901_fns f_audio_buffer_alloc fndecl 1 64901 NULL
-+maxctl_brcmf_bus_64907_fns maxctl brcmf_bus 0 64907 NULL nohasharray
-+ath10k_read_wmi_services_fndecl_64907_fns ath10k_read_wmi_services fndecl 3 64907 &maxctl_brcmf_bus_64907_fns
++ubi_eba_create_table_fndecl_64916_fns ubi_eba_create_table fndecl 2 64916 NULL
+dma_attach_fndecl_64917_fns dma_attach fndecl 5-6 64917 NULL
+roccat_read_fndecl_64918_fns roccat_read fndecl 3 64918 NULL
-+qstat_read_fndecl_64946_fns qstat_read fndecl 3 64946 NULL
+dvb_ca_write_fndecl_64960_fns dvb_ca_write fndecl 3 64960 NULL
-+print_pkt_fndecl_64981_fns print_pkt fndecl 2 64981 NULL
++count_acpi_processor_power_64969_fns count acpi_processor_power 0 64969 NULL
+tx_frag_mpdu_alloc_failed_read_fndecl_64988_fns tx_frag_mpdu_alloc_failed_read fndecl 3 64988 NULL
+__mlxsw_item_get32_fndecl_64999_fns __mlxsw_item_get32 fndecl 0 64999 NULL
+netif_get_num_default_rss_queues_fndecl_65008_fns netif_get_num_default_rss_queues fndecl 0 65008 NULL
++actual_size_saa7164_user_buffer_65010_fns actual_size saa7164_user_buffer 0 65010 NULL
+dfs_file_write_fndecl_65023_fns dfs_file_write fndecl 3 65023 NULL
+bus_add_driver_fndecl_65060_fns bus_add_driver fndecl 0 65060 NULL
+flag_node_footer_65063_fns flag node_footer 0 65063 NULL
+capi_ttyminors_vardecl_capi_c_65086_fns capi_ttyminors vardecl_capi.c 0 65086 NULL
+num_tx_bds_bcmgenet_priv_65087_fns num_tx_bds bcmgenet_priv 0 65087 NULL
+rtw_android_get_macaddr_fndecl_65095_fns rtw_android_get_macaddr fndecl 0 65095 NULL
-+iwl_dbgfs_bt_notif_read_fndecl_65105_fns iwl_dbgfs_bt_notif_read fndecl 3 65105 NULL
+ntb_mw_count_fndecl_65108_fns ntb_mw_count fndecl 0 65108 NULL
+nilfs_cpfile_is_snapshot_fndecl_65110_fns nilfs_cpfile_is_snapshot fndecl 2 65110 NULL
+hsi_alloc_controller_fndecl_65113_fns hsi_alloc_controller fndecl 1 65113 NULL
-+amdgpu_bo_list_set_fndecl_65117_fns amdgpu_bo_list_set fndecl 5 65117 NULL
+do_ip_setsockopt_fndecl_65135_fns do_ip_setsockopt fndecl 5 65135 NULL
+kimage_file_alloc_init_fndecl_65136_fns kimage_file_alloc_init fndecl 5 65136 NULL
-+ixgbe_dbg_netdev_ops_read_fndecl_65148_fns ixgbe_dbg_netdev_ops_read fndecl 3 65148 NULL
-+_iwl_dbgfs_max_amsdu_len_write_fndecl_65173_fns _iwl_dbgfs_max_amsdu_len_write fndecl 3 65173 NULL
++num_pipe_drm_psb_private_65138_fns num_pipe drm_psb_private 0 65138 NULL
++ccp_get_dm_area_fndecl_65170_fns ccp_get_dm_area fndecl 4 65170 NULL
+get_fdb_entries_fndecl_65199_fns get_fdb_entries fndecl 3 65199 NULL
+nilfs_palloc_entry_blkoff_fndecl_65206_fns nilfs_palloc_entry_blkoff fndecl 0 65206 NULL
+read_gssp_fndecl_65224_fns read_gssp fndecl 3 65224 NULL
+ssid_len_connect_attr_65228_fns ssid_len connect_attr 0 65228 NULL
++range_end_writeback_control_65245_fns range_end writeback_control 0 65245 NULL
+etb_read_fndecl_65249_fns etb_read fndecl 3 65249 NULL
-+cx24116_writeregN_fndecl_65252_fns cx24116_writeregN fndecl 4 65252 NULL
+portnames_read_fndecl_65269_fns portnames_read fndecl 3 65269 NULL
-+update_stat_data_fndecl_65289_fns update_stat_data fndecl 3 65289 NULL
+hpfs_translate_name_fndecl_65290_fns hpfs_translate_name fndecl 3 65290 NULL
-+rt2x00debug_write_rfcsr_fndecl_65298_fns rt2x00debug_write_rfcsr fndecl 3 65298 NULL nohasharray
-+usb_stor_probe2_fndecl_65298_fns usb_stor_probe2 fndecl 0 65298 &rt2x00debug_write_rfcsr_fndecl_65298_fns
++usb_stor_probe2_fndecl_65298_fns usb_stor_probe2 fndecl 0 65298 NULL
+rockchip_clk_init_fndecl_65312_fns rockchip_clk_init fndecl 3 65312 NULL
++dm_get_reserved_rq_based_ios_fndecl_65322_fns dm_get_reserved_rq_based_ios fndecl 0 65322 NULL
+brcmf_flowring_attach_fndecl_65325_fns brcmf_flowring_attach fndecl 2 65325 NULL
+ath6kl_endpoint_stats_read_fndecl_65345_fns ath6kl_endpoint_stats_read fndecl 3 65345 NULL
+wm_coeff_read_control_fndecl_65358_fns wm_coeff_read_control fndecl 3 65358 NULL
+fbucket_size_qlcnic_filter_hash_65369_fns fbucket_size qlcnic_filter_hash 0 65369 NULL
++nfsd_readv_fndecl_65378_fns nfsd_readv fndecl 4 65378 NULL
+batadv_tvlv_container_ogm_append_fndecl_65383_fns batadv_tvlv_container_ogm_append fndecl 4 65383 NULL
-+num_rx_queues_ixgbe_adapter_65402_fns num_rx_queues ixgbe_adapter 0 65402 NULL
+rng_dev_read_fndecl_65406_fns rng_dev_read fndecl 3 65406 NULL
+lstcon_batch_list_fndecl_65416_fns lstcon_batch_list fndecl 2 65416 NULL
-+fq_trees_log_fq_sched_data_65425_fns fq_trees_log fq_sched_data 0 65425 NULL
+tcp_hdrlen_fndecl_65433_fns tcp_hdrlen fndecl 0 65433 NULL
+data_in_size_mpt3_ioctl_command_65434_fns data_in_size mpt3_ioctl_command 0 65434 NULL
-+a2mp_send_fndecl_65436_fns a2mp_send fndecl 4 65436 NULL
++lbs_bcnmiss_write_fndecl_65438_fns lbs_bcnmiss_write fndecl 3 65438 NULL
+spi_cmd_complete_fndecl_65442_fns spi_cmd_complete fndecl 5 65442 NULL
+rx_rx_pre_complt_read_fndecl_65446_fns rx_rx_pre_complt_read fndecl 3 65446 NULL
+squashfs_cache_init_fndecl_65451_fns squashfs_cache_init fndecl 3-2 65451 NULL
+raw_notifier_call_chain_fndecl_65500_fns raw_notifier_call_chain fndecl 0 65500 NULL
-+connector_write_fndecl_65534_fns connector_write fndecl 3 65534 NULL nohasharray
-+bcm2835_dma_prep_dma_memcpy_fndecl_65534_fns bcm2835_dma_prep_dma_memcpy fndecl 4 65534 &connector_write_fndecl_65534_fns
++sys_pwritev_fndecl_65513_fns sys_pwritev fndecl 3 65513 NULL
++bcm2835_dma_prep_dma_memcpy_fndecl_65534_fns bcm2835_dma_prep_dma_memcpy fndecl 4 65534 NULL
diff --git a/scripts/gcc-plugins/size_overflow_plugin/e_fptrs.data b/scripts/gcc-plugins/size_overflow_plugin/e_fptrs.data
new file mode 100644
-index 0000000..0d8d5c4
+index 0000000..ed95ec1
--- /dev/null
+++ b/scripts/gcc-plugins/size_overflow_plugin/e_fptrs.data
-@@ -0,0 +1,70 @@
+@@ -0,0 +1,94 @@
++iov_iter_get_pages_alloc_fndecl_76_fptrs iov_iter_get_pages_alloc fndecl 0 76 NULL
+writebootimg_HYSDN_CARD_125_fptrs writebootimg HYSDN_CARD 0 125 NULL
+notifier_call_notifier_block_360_fptrs notifier_call notifier_block 0 360 NULL
++size_si_sm_handlers_648_fptrs size si_sm_handlers 0 648 NULL
+pte_hole_mm_walk_1233_fptrs pte_hole mm_walk 0 1233 NULL
+get_tdp_level_kvm_x86_ops_1250_fptrs get_tdp_level kvm_x86_ops 0 1250 NULL
+read_kernfs_ops_1325_fptrs read kernfs_ops 0 1325 NULL
-+bus_bm_cmd_send_i2400m_2189_fptrs bus_bm_cmd_send i2400m 0 2189 NULL
++readlink_inode_operations_1540_fptrs readlink inode_operations 0 1540 NULL
+read_saa7146_use_ops_2236_fptrs read saa7146_use_ops 0 2236 NULL
+mdio_write_mdio_if_info_3033_fptrs mdio_write mdio_if_info 0 3033 NULL
+parse_header_ops_3963_fptrs parse header_ops 0 3963 NULL
@@ -210240,44 +214414,58 @@ index 0000000..0d8d5c4
+add_endpoint_hc_driver_6482_fptrs add_endpoint hc_driver 0 6482 NULL
+f_read_cntrs_qib_devdata_6502_fptrs f_read_cntrs qib_devdata 0 6502 NULL
+drop_endpoint_hc_driver_6692_fptrs drop_endpoint hc_driver 0 6692 NULL
++command_hdac_bus_ops_7079_fptrs command hdac_bus_ops 0 7079 NULL
++privsize_nft_set_ops_7151_fptrs privsize nft_set_ops 0 7151 NULL
+add_frontend_dmx_demux_7322_fptrs add_frontend dmx_demux 0 7322 NULL
++get_power_state_size_pp_hwmgr_func_8417_fptrs get_power_state_size pp_hwmgr_func 0 8417 NULL
++map_sg_ib_dma_mapping_ops_9988_fptrs map_sg ib_dma_mapping_ops 0 9988 NULL
++run_apei_exec_ins_type_10886_fptrs run apei_exec_ins_type 0 10886 NULL
+find_vqs_virtio_config_ops_11797_fptrs find_vqs virtio_config_ops 0 11797 NULL
+pcibios_enable_irq_vardecl_11854_fptrs pcibios_enable_irq vardecl 0 11854 NULL
+read8_sync_rtl_io_12571_fptrs read8_sync rtl_io 0 12571 NULL
+transfer_drm_dp_aux_14204_fptrs transfer drm_dp_aux 0 14204 NULL
-+dump_fh_il_ops_14548_fptrs dump_fh il_ops 0 14548 NULL
+dump_eeprom_eeprom_ops_15062_fptrs dump_eeprom eeprom_ops 0 15062 NULL
+mdio_read_mdio_if_info_15272_fptrs mdio_read mdio_if_info 0 15272 NULL
+get_pdptr_kvm_mmu_17247_fptrs get_pdptr kvm_mmu 0 17247 NULL
+read_hwrng_17766_fptrs read hwrng 0 17766 NULL
+count_objects_shrinker_18894_fptrs count_objects shrinker 0 18894 NULL
+proc_read_atmdev_ops_19414_fptrs proc_read atmdev_ops 0 19414 NULL
++get_response_hdac_bus_ops_19545_fptrs get_response hdac_bus_ops 0 19545 NULL
+dev_init_pre_alt_sd_19924_fptrs dev_init_pre_alt sd 0 19924 NULL
+translate_gpa_kvm_mmu_20350_fptrs translate_gpa kvm_mmu 0 20350 NULL
+waitpofready_HYSDN_CARD_20682_fptrs waitpofready HYSDN_CARD 0 20682 NULL
+data_read_hwrng_21861_fptrs data_read hwrng 0 21861 NULL
+pirq_enable_irq_fndecl_22603_fptrs pirq_enable_irq fndecl 0 22603 NULL
+bytes_number_item_operations_23452_fptrs bytes_number item_operations 0 23452 NULL
++crypto_init_drbg_state_ops_24657_fptrs crypto_init drbg_state_ops 0 24657 NULL
+transfer_snd_pcm_plugin_25081_fptrs transfer snd_pcm_plugin 0 25081 NULL
+ecp_write_data_parport_operations_26253_fptrs ecp_write_data parport_operations 0 26253 NULL
++raw_request_hid_ll_driver_26699_fptrs raw_request hid_ll_driver 0 26699 NULL
++get_xattr_handler_28917_fptrs get xattr_handler 0 28917 NULL
+read_b43_debugfs_fops_29607_fptrs read b43_debugfs_fops 0 29607 NULL
+verify_planes_array_vb2_buf_ops_30329_fptrs verify_planes_array vb2_buf_ops 0 30329 NULL
+pmd_entry_mm_walk_30448_fptrs pmd_entry mm_walk 0 30448 NULL
+ecp_read_data_parport_operations_31283_fptrs ecp_read_data parport_operations 0 31283 NULL
-+bus_bm_wait_for_ack_i2400m_31925_fptrs bus_bm_wait_for_ack i2400m 0 31925 NULL
+write_tty_ldisc_ops_32094_fptrs write tty_ldisc_ops 0 32094 NULL
+read32_tpm_tis_phy_ops_33980_fptrs read32 tpm_tis_phy_ops 0 33980 NULL
+client_channels_snd_pcm_plugin_36324_fptrs client_channels snd_pcm_plugin 0 36324 NULL
++filter_get_rx_ids_efx_nic_type_37093_fptrs filter_get_rx_ids efx_nic_type 0 37093 NULL
+gva_to_gpa_kvm_mmu_37200_fptrs gva_to_gpa kvm_mmu 0 37200 NULL
++exec_verb_hdac_device_37803_fptrs exec_verb hdac_device 0 37803 NULL
++get_key_fscache_cookie_def_39056_fptrs get_key fscache_cookie_def 0 39056 NULL
+uni2char_nls_table_41293_fptrs uni2char nls_table 0 41293 NULL
++get_sset_count_phy_driver_42200_fptrs get_sset_count phy_driver 0 42200 NULL
++rdma_get_min_cnq_msix_qed_rdma_ops_42444_fptrs rdma_get_min_cnq_msix qed_rdma_ops 0 42444 NULL
+read_b43legacy_debugfs_fops_42452_fptrs read b43legacy_debugfs_fops 0 42452 NULL
+ndo_init_net_device_ops_42812_fptrs ndo_init net_device_ops 0 42812 NULL
++get_sset_count_ethtool_ops_43861_fptrs get_sset_count ethtool_ops 0 43861 NULL
+epp_read_data_parport_operations_44383_fptrs epp_read_data parport_operations 0 44383 NULL
+preproc_res_proc_context_45654_fptrs preproc res_proc_context 0 45654 NULL
-+show_sysfs_ops_47546_fptrs show sysfs_ops 0 47546 NULL
++max_channels_evtchn_ops_45841_fptrs max_channels evtchn_ops 0 45841 NULL
+parport_ieee1284_epp_read_addr_fndecl_48478_fptrs parport_ieee1284_epp_read_addr fndecl 0 48478 NULL nohasharray
+parport_ieee1284_ecp_read_data_fndecl_48478_fptrs parport_ieee1284_ecp_read_data fndecl 0 48478 &parport_ieee1284_epp_read_addr_fndecl_48478_fptrs nohasharray
+parport_ieee1284_epp_read_data_fndecl_48478_fptrs parport_ieee1284_epp_read_data fndecl 0 48478 &parport_ieee1284_ecp_read_data_fndecl_48478_fptrs
++get_eld_i915_audio_component_ops_48948_fptrs get_eld i915_audio_component_ops 0 48948 NULL
+listxattr_inode_operations_50507_fptrs listxattr inode_operations 0 50507 NULL
+pte_entry_mm_walk_51234_fptrs pte_entry mm_walk 0 51234 NULL
+probe_parport_driver_51942_fptrs probe parport_driver 0 51942 NULL
@@ -210285,51 +214473,58 @@ index 0000000..0d8d5c4
+parport_ieee1284_epp_write_addr_fndecl_52806_fptrs parport_ieee1284_epp_write_addr fndecl 0 52806 &parport_ieee1284_ecp_write_addr_fndecl_52806_fptrs nohasharray
+parport_ieee1284_ecp_write_data_fndecl_52806_fptrs parport_ieee1284_ecp_write_data fndecl 0 52806 &parport_ieee1284_epp_write_addr_fndecl_52806_fptrs nohasharray
+parport_ieee1284_epp_write_data_fndecl_52806_fptrs parport_ieee1284_epp_write_data fndecl 0 52806 &parport_ieee1284_ecp_write_data_fndecl_52806_fptrs
++ide_inb_fndecl_54462_fptrs ide_inb fndecl 0 54462 NULL nohasharray
++ide_mm_inb_fndecl_54462_fptrs ide_mm_inb fndecl 0 54462 &ide_inb_fndecl_54462_fptrs
+nr_cached_objects_super_operations_54808_fptrs nr_cached_objects super_operations 0 54808 NULL
+connect_frontend_dmx_demux_55378_fptrs connect_frontend dmx_demux 0 55378 NULL
++max_size_akcipher_alg_57009_fptrs max_size akcipher_alg 0 57009 NULL
+byte_read_data_parport_operations_57730_fptrs byte_read_data parport_operations 0 57730 NULL
++init_pci_serial_quirk_57875_fptrs init pci_serial_quirk 0 57875 NULL
++get_num_of_pp_table_entries_pp_hwmgr_func_58341_fptrs get_num_of_pp_table_entries pp_hwmgr_func 0 58341 NULL
+writebootseq_HYSDN_CARD_59000_fptrs writebootseq HYSDN_CARD 0 59000 NULL
-+read_mii_bus_59181_fptrs read mii_bus 0 59181 NULL
++mw_count_ntb_dev_ops_59352_fptrs mw_count ntb_dev_ops 0 59352 NULL
+nibble_read_data_parport_operations_60589_fptrs nibble_read_data parport_operations 0 60589 NULL
+f_read_portcntrs_qib_devdata_61868_fptrs f_read_portcntrs qib_devdata 0 61868 NULL
++filter_count_rx_used_efx_nic_type_62026_fptrs filter_count_rx_used efx_nic_type 0 62026 NULL
+check_bandwidth_hc_driver_63438_fptrs check_bandwidth hc_driver 0 63438 NULL
++spad_count_ntb_dev_ops_63660_fptrs spad_count ntb_dev_ops 0 63660 NULL
+compat_write_data_parport_operations_64123_fptrs compat_write_data parport_operations 0 64123 NULL
+test_walk_mm_walk_64132_fptrs test_walk mm_walk 0 64132 NULL
++get_regs_len_ethtool_ops_65213_fptrs get_regs_len ethtool_ops 0 65213 NULL
diff --git a/scripts/gcc-plugins/size_overflow_plugin/e_vars.data b/scripts/gcc-plugins/size_overflow_plugin/e_vars.data
new file mode 100644
-index 0000000..632c36d
+index 0000000..8f86ad7
--- /dev/null
+++ b/scripts/gcc-plugins/size_overflow_plugin/e_vars.data
-@@ -0,0 +1,161 @@
-+cache_size_vardecl_lkdtm_usercopy_c_448_vars cache_size vardecl_lkdtm_usercopy.c 0 448 NULL
+@@ -0,0 +1,140 @@
+max_num_of_queues_per_device_vardecl_1365_vars max_num_of_queues_per_device vardecl 0 1365 NULL
++dev_number_vardecl_rio_mport_cdev_c_1836_vars dev_number vardecl_rio_mport_cdev.c 0 1836 NULL
+sdebug_num_tgts_vardecl_scsi_debug_c_2223_vars sdebug_num_tgts vardecl_scsi_debug.c 0 2223 NULL
+big_oops_buf_sz_vardecl_platform_c_2265_vars big_oops_buf_sz vardecl_platform.c 0 2265 NULL
-+fpu_kernel_xstate_size_vardecl_2787_vars fpu_kernel_xstate_size vardecl 0 2787 NULL
++gpio_devt_vardecl_gpiolib_c_2478_vars gpio_devt vardecl_gpiolib.c 0 2478 NULL
+tx_max_out_p_vardecl_mptlan_c_2906_vars tx_max_out_p vardecl_mptlan.c 0 2906 NULL
-+sysctl_nr_open_vardecl_3355_vars sysctl_nr_open vardecl 0 3355 NULL
+ecryptfs_message_buf_len_vardecl_3736_vars ecryptfs_message_buf_len vardecl 0 3736 NULL
+max_sg_segs_vardecl_osst_c_4365_vars max_sg_segs vardecl_osst.c 0 4365 NULL
+dma_tx_num_vardecl_altera_tse_main_c_4981_vars dma_tx_num vardecl_altera_tse_main.c 0 4981 NULL
++mlx4_log_num_mgm_entry_size_vardecl_5042_vars mlx4_log_num_mgm_entry_size vardecl 0 5042 NULL
+ring_buffer_size_vardecl_ldusb_c_5645_vars ring_buffer_size vardecl_ldusb.c 0 5645 NULL
+count_vardecl_speedtest_c_6069_vars count vardecl_speedtest.c 0 6069 NULL
-+buffer_kbs_vardecl_st_c_6866_vars buffer_kbs vardecl_st.c 0 6866 NULL
+sysctl_perf_event_max_stack_vardecl_7792_vars sysctl_perf_event_max_stack vardecl 0 7792 NULL
+goldfish_tty_line_count_vardecl_goldfish_c_8058_vars goldfish_tty_line_count vardecl_goldfish.c 0 8058 NULL
-+vmcore_size_vardecl_vmcore_c_8660_vars vmcore_size vardecl_vmcore.c 0 8660 NULL
+rx_buf_sz_vardecl_r8169_c_9136_vars rx_buf_sz vardecl_r8169.c 0 9136 NULL
+_max_socket_vardecl_x2apic_uv_x_c_9456_vars _max_socket vardecl_x2apic_uv_x.c 0 9456 NULL
+kdb_max_commands_vardecl_kdb_main_c_9529_vars kdb_max_commands vardecl_kdb_main.c 0 9529 NULL
+legacy_count_vardecl_pty_c_9908_vars legacy_count vardecl_pty.c 0 9908 NULL
+max_ptlrpcds_vardecl_ptlrpcd_c_9939_vars max_ptlrpcds vardecl_ptlrpcd.c 0 9939 NULL
+read_buffer_size_vardecl_legousbtower_c_10184_vars read_buffer_size vardecl_legousbtower.c 0 10184 NULL
-+agg_buf_sz_vardecl_r8152_c_10254_vars agg_buf_sz vardecl_r8152.c 0 10254 NULL
++iio_devt_vardecl_industrialio_core_c_10237_vars iio_devt vardecl_industrialio-core.c 0 10237 NULL
+dma_rx_num_vardecl_altera_tse_main_c_10728_vars dma_rx_num vardecl_altera_tse_main.c 0 10728 NULL
+default_rds_buf_vardecl_fmdrv_common_c_11072_vars default_rds_buf vardecl_fmdrv_common.c 0 11072 NULL
+snd_efw_resp_buf_size_vardecl_11291_vars snd_efw_resp_buf_size vardecl 0 11291 NULL
+_max_pnode_vardecl_x2apic_uv_x_c_11492_vars _max_pnode vardecl_x2apic_uv_x.c 0 11492 NULL
+slave_num_vardecl_shdma_base_c_11603_vars slave_num vardecl_shdma-base.c 0 11603 NULL
+c4iw_wr_log_size_order_vardecl_device_c_13134_vars c4iw_wr_log_size_order vardecl_device.c 0 13134 NULL
++vhci_num_controllers_vardecl_13178_vars vhci_num_controllers vardecl 0 13178 NULL
+max_sets_vardecl_ip_set_core_c_13393_vars max_sets vardecl_ip_set_core.c 0 13393 NULL
+sysctl_perf_event_max_contexts_per_stack_vardecl_13620_vars sysctl_perf_event_max_contexts_per_stack vardecl 0 13620 NULL
+buffer_pos_vardecl_event_buffer_c_13658_vars buffer_pos vardecl_event_buffer.c 0 13658 NULL
@@ -210339,60 +214534,51 @@ index 0000000..632c36d
+osst_max_sg_segs_vardecl_osst_c_14954_vars osst_max_sg_segs vardecl_osst.c 0 14954 NULL
+n_barrier_cbs_vardecl_rcutorture_c_16575_vars n_barrier_cbs vardecl_rcutorture.c 0 16575 NULL
+csio_fcoe_rnodes_vardecl_16778_vars csio_fcoe_rnodes vardecl 0 16778 NULL
-+esrt_data_size_vardecl_esrt_c_16842_vars esrt_data_size vardecl_esrt.c 0 16842 NULL
+cmdlog_vardecl_ipw2200_c_18024_vars cmdlog vardecl_ipw2200.c 0 18024 NULL
+nreaders_vardecl_rcutorture_c_18862_vars nreaders vardecl_rcutorture.c 0 18862 NULL
+num_freq_table_entries_vardecl_sfi_cpufreq_c_18898_vars num_freq_table_entries vardecl_sfi-cpufreq.c 0 18898 NULL
+ndoms_cur_vardecl_core_c_19519_vars ndoms_cur vardecl_core.c 0 19519 NULL
+nwriters_vardecl_rcuperf_c_20234_vars nwriters vardecl_rcuperf.c 0 20234 NULL
-+amdgpu_sched_jobs_vardecl_20778_vars amdgpu_sched_jobs vardecl 0 20778 NULL
++mpegbufs_vardecl_cx231xx_417_c_20303_vars mpegbufs vardecl_cx231xx-417.c 0 20303 NULL
+major_vardecl_dm_c_21185_vars major vardecl_dm.c 0 21185 NULL
+acpi_current_gpe_count_vardecl_21469_vars acpi_current_gpe_count vardecl 0 21469 NULL
-+uv_possible_blades_vardecl_21579_vars uv_possible_blades vardecl 0 21579 NULL
+max_nr_vardecl_exynos_combiner_c_21761_vars max_nr vardecl_exynos-combiner.c 0 21761 NULL
+xprt_max_tcp_slot_table_entries_vardecl_xprtsock_c_21949_vars xprt_max_tcp_slot_table_entries vardecl_xprtsock.c 0 21949 NULL
+ch_count_vardecl_ib_srp_c_22190_vars ch_count vardecl_ib_srp.c 0 22190 NULL
+nreaders_stress_vardecl_locktorture_c_22217_vars nreaders_stress vardecl_locktorture.c 0 22217 NULL
+_major_vardecl_dm_c_23233_vars _major vardecl_dm.c 0 23233 NULL
+nreaders_vardecl_rcuperf_c_23383_vars nreaders vardecl_rcuperf.c 0 23383 NULL
-+nr_node_ids_vardecl_23803_vars nr_node_ids vardecl 0 23803 NULL
-+usbfs_snoop_max_vardecl_devio_c_23994_vars usbfs_snoop_max vardecl_devio.c 0 23994 NULL
++input_buffer_size_vardecl_seq_midi_c_23961_vars input_buffer_size vardecl_seq_midi.c 0 23961 NULL
+st_max_sg_segs_vardecl_st_c_24474_vars st_max_sg_segs vardecl_st.c 0 24474 NULL
-+sdebug_sector_size_vardecl_scsi_debug_c_24855_vars sdebug_sector_size vardecl_scsi_debug.c 0 24855 NULL
+accent_table_size_vardecl_24972_vars accent_table_size vardecl 0 24972 NULL
+grefs_per_grant_frame_vardecl_grant_table_c_25386_vars grefs_per_grant_frame vardecl_grant-table.c 0 25386 NULL
++num_prealloc_crypto_pages_vardecl_crypto_c_25796_vars num_prealloc_crypto_pages vardecl_crypto.c 0 25796 NULL
+num_sg_lists_vardecl_25860_vars num_sg_lists vardecl 0 25860 NULL
-+nfsd_drc_max_mem_vardecl_26544_vars nfsd_drc_max_mem vardecl 0 26544 NULL
-+unconst_vardecl_lkdtm_usercopy_c_27400_vars unconst vardecl_lkdtm_usercopy.c 0 27400 NULL
-+write_buffer_size_vardecl_ldusb_c_29393_vars write_buffer_size vardecl_ldusb.c 0 29393 NULL
++core_name_size_vardecl_coredump_c_26013_vars core_name_size vardecl_coredump.c 0 26013 NULL
++total_cpus_vardecl_27560_vars total_cpus vardecl 0 27560 NULL
+nfakewriters_vardecl_rcutorture_c_30320_vars nfakewriters vardecl_rcutorture.c 0 30320 NULL
-+ip_list_hash_size_vardecl_xt_recent_c_30522_vars ip_list_hash_size vardecl_xt_recent.c 0 30522 NULL
-+xen_blkif_max_segments_vardecl_xen_blkfront_c_30543_vars xen_blkif_max_segments vardecl_xen-blkfront.c 0 30543 NULL
+DAC960_ControllerCount_vardecl_DAC960_c_31089_vars DAC960_ControllerCount vardecl_DAC960.c 0 31089 NULL
+first_slot_vardecl_cpcihp_generic_c_32129_vars first_slot vardecl_cpcihp_generic.c 0 32129 NULL
+prof_shift_vardecl_profile_c_32143_vars prof_shift vardecl_profile.c 0 32143 NULL
-+snd_buf_bytes_vardecl_usbatm_c_32457_vars snd_buf_bytes vardecl_usbatm.c 0 32457 NULL
+num_rcv_urbs_vardecl_usbatm_c_32830_vars num_rcv_urbs vardecl_usbatm.c 0 32830 NULL
+_min_socket_vardecl_x2apic_uv_x_c_33176_vars _min_socket vardecl_x2apic_uv_x.c 0 33176 NULL
+num_ae_requests_vardecl_33594_vars num_ae_requests vardecl 0 33594 NULL
+blkdev_minors_vardecl_dev_c_34365_vars blkdev_minors vardecl_dev.c 0 34365 NULL
+cpu_npartitions_vardecl_linux_cpu_c_34622_vars cpu_npartitions vardecl_linux-cpu.c 0 34622 NULL
+at_max_vardecl_35692_vars at_max vardecl 0 35692 NULL
-+mod_num_sdma_vardecl_35721_vars mod_num_sdma vardecl 0 35721 NULL
+nwriters_stress_vardecl_locktorture_c_36080_vars nwriters_stress vardecl_locktorture.c 0 36080 NULL
-+sdma_descq_cnt_vardecl_sdma_c_36526_vars sdma_descq_cnt vardecl_sdma.c 0 36526 NULL
+max_sg_segs_vardecl_st_c_36551_vars max_sg_segs vardecl_st.c 0 36551 NULL
+null_major_vardecl_null_blk_c_36718_vars null_major vardecl_null_blk.c 0 36718 NULL
+bufsiz_vardecl_spidev_c_36763_vars bufsiz vardecl_spidev.c 0 36763 NULL
+netdev_flow_limit_table_len_vardecl_36765_vars netdev_flow_limit_table_len vardecl 0 36765 NULL
+uwb_est_size_vardecl_est_c_36881_vars uwb_est_size vardecl_est.c 0 36881 NULL
++rtc_devt_vardecl_rtc_dev_c_37090_vars rtc_devt vardecl_rtc-dev.c 0 37090 NULL
+ncpus_vardecl_aoecmd_c_37517_vars ncpus vardecl_aoecmd.c 0 37517 NULL
-+nrpacks_vardecl_usbusx2yaudio_c_38056_vars nrpacks vardecl_usbusx2yaudio.c 0 38056 NULL
+fb_bpp_vardecl_udl_fb_c_38075_vars fb_bpp vardecl_udl_fb.c 0 38075 NULL
++pipe_max_size_vardecl_38097_vars pipe_max_size vardecl 0 38097 NULL
+tcp_metrics_hash_log_vardecl_tcp_metrics_c_38657_vars tcp_metrics_hash_log vardecl_tcp_metrics.c 0 38657 NULL
+max_num_clients_vardecl_ntb_transport_c_38745_vars max_num_clients vardecl_ntb_transport.c 0 38745 NULL
+sg_buffers_vardecl_dmatest_c_38796_vars sg_buffers vardecl_dmatest.c 0 38796 NULL
-+pci_ring_size_vardecl_pci_hyperv_c_39161_vars pci_ring_size vardecl_pci-hyperv.c 0 39161 NULL
+sel_start_vardecl_selection_c_39245_vars sel_start vardecl_selection.c 0 39245 NULL
+hash_table_size_vardecl_39253_vars hash_table_size vardecl 0 39253 NULL
+pktdev_major_vardecl_pktcdvd_c_39506_vars pktdev_major vardecl_pktcdvd.c 0 39506 NULL
@@ -210404,44 +214590,36 @@ index 0000000..632c36d
+major_nr_vardecl_umem_c_41471_vars major_nr vardecl_umem.c 0 41471 NULL
+pcpu_unit_pages_vardecl_percpu_c_41525_vars pcpu_unit_pages vardecl_percpu.c 0 41525 NULL
+nr_online_nodes_vardecl_41549_vars nr_online_nodes vardecl 0 41549 NULL
-+xp_max_npartitions_vardecl_41728_vars xp_max_npartitions vardecl 0 41728 NULL
-+nr_desc_prm_vardecl_hidma_c_42371_vars nr_desc_prm vardecl_hidma.c 0 42371 NULL
+prof_len_vardecl_profile_c_42405_vars prof_len vardecl_profile.c 0 42405 NULL
-+amdgpu_vm_block_size_vardecl_42475_vars amdgpu_vm_block_size vardecl 0 42475 NULL
+mtu_max_vardecl_42563_vars mtu_max vardecl 0 42563 NULL
-+hfi1_sdma_comp_ring_size_vardecl_user_sdma_c_42743_vars hfi1_sdma_comp_ring_size vardecl_user_sdma.c 0 42743 NULL
+phonet_rxq_size_vardecl_f_phonet_c_43017_vars phonet_rxq_size vardecl_f_phonet.c 0 43017 NULL
-+nr_efi_runtime_map_vardecl_runtime_map_c_43216_vars nr_efi_runtime_map vardecl_runtime-map.c 0 43216 NULL
++output_buffer_size_vardecl_seq_midi_c_43084_vars output_buffer_size vardecl_seq_midi.c 0 43084 NULL
+rds_buf_vardecl_radio_si470x_usb_c_43439_vars rds_buf vardecl_radio-si470x-usb.c 0 43439 NULL
-+write_buffer_size_vardecl_legousbtower_c_45062_vars write_buffer_size vardecl_legousbtower.c 0 45062 NULL
+xpc_nasid_mask_nbytes_vardecl_xpc_partition_c_45405_vars xpc_nasid_mask_nbytes vardecl_xpc_partition.c 0 45405 NULL
+num_fault_mutexes_vardecl_hugetlb_c_45857_vars num_fault_mutexes vardecl_hugetlb.c 0 45857 NULL
+qxl_num_crtc_vardecl_46583_vars qxl_num_crtc vardecl 0 46583 NULL
++fw_cdev_major_vardecl_46618_vars fw_cdev_major vardecl 0 46618 NULL
+mc_groups_longs_vardecl_genetlink_c_46774_vars mc_groups_longs vardecl_genetlink.c 0 46774 NULL
-+ipoib_recvq_size_vardecl_46904_vars ipoib_recvq_size vardecl 0 46904 NULL
++cy_next_channel_vardecl_cyclades_c_46964_vars cy_next_channel vardecl_cyclades.c 0 46964 NULL
+rds_buf_vardecl_radio_si470x_i2c_c_48053_vars rds_buf vardecl_radio-si470x-i2c.c 0 48053 NULL
+osst_max_dev_vardecl_osst_c_48086_vars osst_max_dev vardecl_osst.c 0 48086 NULL
+ramoops_console_size_vardecl_ram_c_48215_vars ramoops_console_size vardecl_ram.c 0 48215 NULL
++da_num_tokens_vardecl_dell_smbios_c_48798_vars da_num_tokens vardecl_dell-smbios.c 0 48798 NULL
+num_requests_vardecl_48964_vars num_requests vardecl 0 48964 NULL
-+ff_nr_dev_vardecl_fmc_fakedev_c_49085_vars ff_nr_dev vardecl_fmc-fakedev.c 0 49085 NULL
+nr_ndevs_vardecl_af_netrom_c_49435_vars nr_ndevs vardecl_af_netrom.c 0 49435 NULL
++amdgpu_sched_hw_submission_vardecl_50202_vars amdgpu_sched_hw_submission vardecl 0 50202 NULL
+agg_wsize_vardecl_50735_vars agg_wsize vardecl 0 50735 NULL
-+rcv_buf_bytes_vardecl_usbatm_c_51558_vars rcv_buf_bytes vardecl_usbatm.c 0 51558 NULL
+num_var_ranges_vardecl_51769_vars num_var_ranges vardecl 0 51769 NULL
+num_snd_urbs_vardecl_usbatm_c_52685_vars num_snd_urbs vardecl_usbatm.c 0 52685 NULL
++tpm_devt_vardecl_53182_vars tpm_devt vardecl 0 53182 NULL
+xpc_nasid_mask_nlongs_vardecl_53252_vars xpc_nasid_mask_nlongs vardecl 0 53252 NULL
-+CIFSMaxBufSize_vardecl_53372_vars CIFSMaxBufSize vardecl 0 53372 NULL
-+ramoops_ecc_vardecl_ram_c_53486_vars ramoops_ecc vardecl_ram.c 0 53486 NULL
+max_dev_vardecl_osst_c_53523_vars max_dev vardecl_osst.c 0 53523 NULL
+dma_txqueue_sz_vardecl_tsi721_dma_c_53597_vars dma_txqueue_sz vardecl_tsi721_dma.c 0 53597 NULL
+ramoops_pmsg_size_vardecl_ram_c_53601_vars ramoops_pmsg_size vardecl_ram.c 0 53601 NULL
-+max_data_size_vardecl_hsi_char_c_53736_vars max_data_size vardecl_hsi_char.c 0 53736 NULL
-+storvsc_ringbuffer_size_vardecl_storvsc_drv_c_54060_vars storvsc_ringbuffer_size vardecl_storvsc_drv.c 0 54060 NULL
+xprt_udp_slot_table_entries_vardecl_xprtsock_c_56096_vars xprt_udp_slot_table_entries vardecl_xprtsock.c 0 56096 NULL
+test_buf_size_vardecl_dmatest_c_56686_vars test_buf_size vardecl_dmatest.c 0 56686 NULL
+part_shift_vardecl_loop_c_57103_vars part_shift vardecl_loop.c 0 57103 NULL
+nr_cpu_ids_vardecl_57399_vars nr_cpu_ids vardecl 0 57399 NULL
-+ql2xmaxqueues_vardecl_57653_vars ql2xmaxqueues vardecl 0 57653 NULL
+mdp_major_vardecl_57774_vars mdp_major vardecl 0 57774 NULL
+acpi_gbl_integer_byte_width_vardecl_58054_vars acpi_gbl_integer_byte_width vardecl 0 58054 NULL
+window_vardecl_tcp_cdg_c_58396_vars window vardecl_tcp_cdg.c 0 58396 NULL
@@ -210449,18 +214627,15 @@ index 0000000..632c36d
+ebcnt_vardecl_torturetest_c_58475_vars ebcnt vardecl_torturetest.c 0 58475 NULL
+ramoops_ftrace_size_vardecl_ram_c_58686_vars ramoops_ftrace_size vardecl_ram.c 0 58686 NULL
+pcpu_nr_units_vardecl_percpu_c_59323_vars pcpu_nr_units vardecl_percpu.c 0 59323 NULL
-+resultsize_vardecl_floppy_c_59525_vars resultsize vardecl_floppy.c 0 59525 NULL
++queue_length_vardecl_ua101_c_59524_vars queue_length vardecl_ua101.c 0 59524 NULL
+perdev_minors_vardecl_block_c_60809_vars perdev_minors vardecl_block.c 0 60809 NULL
+fbcon_softback_size_vardecl_fbcon_c_61184_vars fbcon_softback_size vardecl_fbcon.c 0 61184 NULL
-+dm_ring_size_vardecl_hv_balloon_c_63071_vars dm_ring_size vardecl_hv_balloon.c 0 63071 NULL
+_min_pnode_vardecl_x2apic_uv_x_c_63577_vars _min_pnode vardecl_x2apic_uv_x.c 0 63577 NULL
+nbds_max_vardecl_nbd_c_63801_vars nbds_max vardecl_nbd.c 0 63801 NULL
+__max_logical_packages_vardecl_64002_vars __max_logical_packages vardecl 0 64002 NULL
+ubiblock_major_vardecl_block_c_64105_vars ubiblock_major vardecl_block.c 0 64105 NULL
-+ff_nr_eeprom_vardecl_fmc_fakedev_c_64224_vars ff_nr_eeprom vardecl_fmc-fakedev.c 0 64224 NULL
-+srp_sg_tablesize_vardecl_ib_srp_c_64692_vars srp_sg_tablesize vardecl_ib_srp.c 0 64692 NULL
++dev_number_vardecl_rio_cm_c_64286_vars dev_number vardecl_rio_cm.c 0 64286 NULL
+wear_eb_count_vardecl_nandsim_c_65291_vars wear_eb_count vardecl_nandsim.c 0 65291 NULL
-+max_pfn_vardecl_65317_vars max_pfn vardecl 0 65317 NULL
+fpu_user_xstate_size_vardecl_65370_vars fpu_user_xstate_size vardecl 0 65370 NULL
diff --git a/scripts/gcc-plugins/size_overflow_plugin/generate_size_overflow_hash.sh b/scripts/gcc-plugins/size_overflow_plugin/generate_size_overflow_hash.sh
new file mode 100644
@@ -210953,12 +215128,12 @@ index 0000000..d459e5f
+#include "gcc-generate-gimple-pass.h"
diff --git a/scripts/gcc-plugins/size_overflow_plugin/intentional_overflow.c b/scripts/gcc-plugins/size_overflow_plugin/intentional_overflow.c
new file mode 100644
-index 0000000..ff572b3
+index 0000000..26899bd
--- /dev/null
+++ b/scripts/gcc-plugins/size_overflow_plugin/intentional_overflow.c
@@ -0,0 +1,1171 @@
+/*
-+ * Copyright 2011-2016 by Emese Revfy <re.emese@gmail.com>
++ * Copyright 2011-2017 by Emese Revfy <re.emese@gmail.com>
+ * Licensed under the GPL v2
+ *
+ * Homepage:
@@ -212130,12 +216305,12 @@ index 0000000..ff572b3
+}
diff --git a/scripts/gcc-plugins/size_overflow_plugin/remove_unnecessary_dup.c b/scripts/gcc-plugins/size_overflow_plugin/remove_unnecessary_dup.c
new file mode 100644
-index 0000000..5ea5f35
+index 0000000..5c26862
--- /dev/null
+++ b/scripts/gcc-plugins/size_overflow_plugin/remove_unnecessary_dup.c
@@ -0,0 +1,137 @@
+/*
-+ * Copyright 2011-2016 by Emese Revfy <re.emese@gmail.com>
++ * Copyright 2011-2017 by Emese Revfy <re.emese@gmail.com>
+ * Licensed under the GPL v2
+ *
+ * Homepage:
@@ -212624,12 +216799,12 @@ index 0000000..6ab0335
+#endif
diff --git a/scripts/gcc-plugins/size_overflow_plugin/size_overflow_debug.c b/scripts/gcc-plugins/size_overflow_plugin/size_overflow_debug.c
new file mode 100644
-index 0000000..663b6c9
+index 0000000..bae3ee7
--- /dev/null
+++ b/scripts/gcc-plugins/size_overflow_plugin/size_overflow_debug.c
@@ -0,0 +1,201 @@
+/*
-+ * Copyright 2011-2016 by Emese Revfy <re.emese@gmail.com>
++ * Copyright 2011-2017 by Emese Revfy <re.emese@gmail.com>
+ * Licensed under the GPL v2
+ *
+ * Homepage:
@@ -212831,7 +217006,7 @@ index 0000000..663b6c9
+}
diff --git a/scripts/gcc-plugins/size_overflow_plugin/size_overflow_ipa.c b/scripts/gcc-plugins/size_overflow_plugin/size_overflow_ipa.c
new file mode 100644
-index 0000000..1fe86f3
+index 0000000..fc24833
--- /dev/null
+++ b/scripts/gcc-plugins/size_overflow_plugin/size_overflow_ipa.c
@@ -0,0 +1,1333 @@
@@ -213265,7 +217440,7 @@ index 0000000..1fe86f3
+ walk_use_def_next_functions(use_def_data, rhs1);
+}
+
-+void __attribute__((weak)) handle_function_ptr_ret(struct walk_use_def_data *use_def_data __unused, const_tree fn_ptr __unused)
++void __weak handle_function_ptr_ret(struct walk_use_def_data *use_def_data __unused, const_tree fn_ptr __unused)
+{
+}
+
@@ -213464,7 +217639,7 @@ index 0000000..1fe86f3
+ }
+}
+
-+void __attribute__((weak)) check_local_variables(next_interesting_function_t next_node __unused) {}
++void __weak check_local_variables(next_interesting_function_t next_node __unused) {}
+
+// Add children to parent and global_next_interesting_function
+static void collect_data_for_execute(next_interesting_function_t parent, next_interesting_function_t children)
@@ -213501,7 +217676,7 @@ index 0000000..1fe86f3
+ check_local_variables(parent);
+}
+
-+next_interesting_function_t __attribute__((weak)) get_and_create_next_node_from_global_next_nodes_fnptr(const_tree fn_ptr __unused, struct fn_raw_data *raw_data __unused)
++next_interesting_function_t __weak get_and_create_next_node_from_global_next_nodes_fnptr(const_tree fn_ptr __unused, struct fn_raw_data *raw_data __unused)
+{
+ return NULL;
+}
@@ -214050,7 +218225,7 @@ index 0000000..1fe86f3
+ pointer_set_destroy(visited);
+}
+
-+void __attribute__((weak)) check_global_variables(next_interesting_function_t cur_global __unused) {}
++void __weak check_global_variables(next_interesting_function_t cur_global __unused) {}
+
+static void global_vars_and_fptrs(void)
+{
@@ -214148,18 +218323,18 @@ index 0000000..1fe86f3
+
+// Omit the IPA/LTO callbacks until https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61311 gets fixed (license concerns)
+#if BUILDING_GCC_VERSION >= 4008
-+void __attribute__((weak)) size_overflow_write_summary(void) {}
-+void __attribute__((weak)) size_overflow_write_optimization_summary(void) {}
++void __weak size_overflow_write_summary(void) {}
++void __weak size_overflow_write_optimization_summary(void) {}
+#elif BUILDING_GCC_VERSION >= 4006
-+void __attribute__((weak)) size_overflow_write_summary(cgraph_node_set set __unused, varpool_node_set vset __unused) {}
-+void __attribute__((weak)) size_overflow_write_optimization_summary(cgraph_node_set set __unused, varpool_node_set vset __unused) {}
++void __weak size_overflow_write_summary(cgraph_node_set set __unused, varpool_node_set vset __unused) {}
++void __weak size_overflow_write_optimization_summary(cgraph_node_set set __unused, varpool_node_set vset __unused) {}
+#else
-+void __attribute__((weak)) size_overflow_write_summary(cgraph_node_set set __unused) {}
-+void __attribute__((weak)) size_overflow_write_optimization_summary(cgraph_node_set set __unused) {}
++void __weak size_overflow_write_summary(cgraph_node_set set __unused) {}
++void __weak size_overflow_write_optimization_summary(cgraph_node_set set __unused) {}
+#endif
+
-+void __attribute__((weak)) size_overflow_read_summary(void);
-+void __attribute__((weak)) size_overflow_read_optimization_summary(void);
++void __weak size_overflow_read_summary(void);
++void __weak size_overflow_read_optimization_summary(void);
+
+#define PASS_NAME size_overflow
+
@@ -214170,12 +218345,12 @@ index 0000000..1fe86f3
+#include "gcc-generate-ipa-pass.h"
diff --git a/scripts/gcc-plugins/size_overflow_plugin/size_overflow_misc.c b/scripts/gcc-plugins/size_overflow_plugin/size_overflow_misc.c
new file mode 100644
-index 0000000..b5291e1
+index 0000000..28a8356
--- /dev/null
+++ b/scripts/gcc-plugins/size_overflow_plugin/size_overflow_misc.c
@@ -0,0 +1,505 @@
+/*
-+ * Copyright 2011-2016 by Emese Revfy <re.emese@gmail.com>
++ * Copyright 2011-2017 by Emese Revfy <re.emese@gmail.com>
+ * Licensed under the GPL v2
+ *
+ * Homepage:
@@ -214681,7 +218856,7 @@ index 0000000..b5291e1
+
diff --git a/scripts/gcc-plugins/size_overflow_plugin/size_overflow_plugin.c b/scripts/gcc-plugins/size_overflow_plugin/size_overflow_plugin.c
new file mode 100644
-index 0000000..4f667bad
+index 0000000..f2571bf
--- /dev/null
+++ b/scripts/gcc-plugins/size_overflow_plugin/size_overflow_plugin.c
@@ -0,0 +1,299 @@
@@ -214718,7 +218893,7 @@ index 0000000..4f667bad
+bool check_fields, check_fns, check_fnptrs, check_vars;
+
+static struct plugin_info size_overflow_plugin_info = {
-+ .version = "20161113",
++ .version = "20170102",
+ .help = "no-size-overflow\tturn off size overflow checking\n",
+};
+
@@ -214930,7 +219105,7 @@ index 0000000..4f667bad
+#endif
+
+ if (!plugin_default_version_check(version, &gcc_version)) {
-+ error(G_("incompatible gcc/plugin versions"));
++ error_gcc_version(version);
+ return 1;
+ }
+
@@ -214986,12 +219161,12 @@ index 0000000..4f667bad
+}
diff --git a/scripts/gcc-plugins/size_overflow_plugin/size_overflow_plugin_hash.c b/scripts/gcc-plugins/size_overflow_plugin/size_overflow_plugin_hash.c
new file mode 100644
-index 0000000..67cacb9
+index 0000000..eb94acf
--- /dev/null
+++ b/scripts/gcc-plugins/size_overflow_plugin/size_overflow_plugin_hash.c
@@ -0,0 +1,469 @@
+/*
-+ * Copyright 2011-2016 by Emese Revfy <re.emese@gmail.com>
++ * Copyright 2011-2017 by Emese Revfy <re.emese@gmail.com>
+ * Licensed under the GPL v2
+ *
+ * Homepage:
@@ -217258,7 +221433,7 @@ index 0000000..7b24aea
+}
diff --git a/scripts/gcc-plugins/stackleak_plugin.c b/scripts/gcc-plugins/stackleak_plugin.c
new file mode 100644
-index 0000000..75524f4
+index 0000000..f0fdd5e
--- /dev/null
+++ b/scripts/gcc-plugins/stackleak_plugin.c
@@ -0,0 +1,342 @@
@@ -217494,7 +221669,7 @@ index 0000000..75524f4
+ return track_frame_size >= 0;
+}
+
-+static void stackleak_start_unit(void *gcc_data, void *user_data)
++static void stackleak_start_unit(void *gcc_data __unused, void *user_data __unused)
+{
+ tree fntype;
+
@@ -217569,7 +221744,7 @@ index 0000000..75524f4
+ PASS_INFO(stackleak_final, "final", 1, PASS_POS_INSERT_BEFORE);
+
+ if (!plugin_default_version_check(version, &gcc_version)) {
-+ error(G_("incompatible gcc/plugin versions"));
++ error_gcc_version(version);
+ return 1;
+ }
+
@@ -217606,7 +221781,7 @@ index 0000000..75524f4
+}
diff --git a/scripts/gcc-plugins/structleak_plugin.c b/scripts/gcc-plugins/structleak_plugin.c
new file mode 100644
-index 0000000..7ff562f
+index 0000000..d5609ab
--- /dev/null
+++ b/scripts/gcc-plugins/structleak_plugin.c
@@ -0,0 +1,235 @@
@@ -217648,7 +221823,7 @@ index 0000000..7ff562f
+ .help = "disable\tdo not activate plugin\n",
+};
+
-+static tree handle_user_attribute(tree *node, tree name, tree args, int flags, bool *no_add_attrs)
++static tree handle_user_attribute(tree *node, tree name __unused, tree args __unused, int flags __unused, bool *no_add_attrs)
+{
+ *no_add_attrs = true;
+
@@ -217673,7 +221848,7 @@ index 0000000..7ff562f
+#endif
+};
+
-+static void register_attributes(void *event_data, void *data)
++static void register_attributes(void *event_data __unused, void *data __unused)
+{
+ register_attribute(&user_attr);
+// register_attribute(&force_attr);
@@ -217702,7 +221877,7 @@ index 0000000..7ff562f
+ return false;
+}
+
-+static void finish_type(void *event_data, void *data)
++static void finish_type(void *event_data, void *data __unused)
+{
+ tree type = (tree)event_data;
+
@@ -217782,7 +221957,7 @@ index 0000000..7ff562f
+ gcc_assert(single_succ_p(ENTRY_BLOCK_PTR_FOR_FN(cfun)));
+ }
+
-+ // enumarate all local variables and forcibly initialize our targets
++ // enumerate all local variables and forcibly initialize our targets
+ FOR_EACH_LOCAL_DECL(cfun, i, var) {
+ tree type = TREE_TYPE(var);
+
@@ -217819,7 +221994,7 @@ index 0000000..7ff562f
+ PASS_INFO(structleak, "early_optimizations", 1, PASS_POS_INSERT_BEFORE);
+
+ if (!plugin_default_version_check(version, &gcc_version)) {
-+ error(G_("incompatible gcc/plugin versions"));
++ error_gcc_version(version);
+ return 1;
+ }
+
@@ -217940,10 +222115,10 @@ index 2432298..faeeb2e 100644
return -1;
if (!exact1 && exact2)
diff --git a/scripts/link-vmlinux.sh b/scripts/link-vmlinux.sh
-index 4f727eb..9728575 100755
+index f742c65..d12920b 100755
--- a/scripts/link-vmlinux.sh
+++ b/scripts/link-vmlinux.sh
-@@ -180,7 +180,7 @@ else
+@@ -229,7 +229,7 @@ else
fi;
# final build of init/
@@ -218020,7 +222195,7 @@ index 29d6699..f131bc6 100644
sprintf(alias, "dmi*");
diff --git a/scripts/mod/modpost.c b/scripts/mod/modpost.c
-index 48958d3..d5ccb52 100644
+index bd83497..73da4a1 100644
--- a/scripts/mod/modpost.c
+++ b/scripts/mod/modpost.c
@@ -37,6 +37,7 @@ static int vmlinux_section_warnings = 1;
@@ -218322,7 +222497,7 @@ index ba87004..3f4852c 100644
unsigned int secindex_strings;
diff --git a/scripts/tags.sh b/scripts/tags.sh
-index b3775a9..be6b9f9 100755
+index a2ff338..fec3117 100755
--- a/scripts/tags.sh
+++ b/scripts/tags.sh
@@ -26,7 +26,7 @@ else
@@ -218335,10 +222510,10 @@ index b3775a9..be6b9f9 100755
# Find all available archs
find_all_archs()
diff --git a/security/Kconfig b/security/Kconfig
-index 118f454..288ab93 100644
+index 118f454..3312d82 100644
--- a/security/Kconfig
+++ b/security/Kconfig
-@@ -4,6 +4,1065 @@
+@@ -4,6 +4,1066 @@
menu "Security options"
@@ -219352,6 +223527,7 @@ index 118f454..288ab93 100644
+ bool "Generate some entropy during boot and runtime"
+ default y if GRKERNSEC_CONFIG_AUTO
+ depends on GCC_PLUGINS
++ select GCC_PLUGIN_LATENT_ENTROPY
+ help
+ By saying Y here the kernel will instrument some kernel code to
+ extract some entropy from both original and artificially created
@@ -219404,7 +223580,7 @@ index 118f454..288ab93 100644
source security/keys/Kconfig
config SECURITY_DMESG_RESTRICT
-@@ -104,7 +1163,7 @@ config INTEL_TXT
+@@ -104,7 +1164,7 @@ config INTEL_TXT
config LSM_MMAP_MIN_ADDR
int "Low address space for LSM to protect from user allocation"
depends on SECURITY && SECURITY_SELINUX
@@ -219413,7 +223589,7 @@ index 118f454..288ab93 100644
default 65536
help
This is the portion of low virtual memory which should be protected
-@@ -118,13 +1177,6 @@ config LSM_MMAP_MIN_ADDR
+@@ -118,13 +1178,6 @@ config LSM_MMAP_MIN_ADDR
this low address space will need the permission specific to the
systems running LSM.
@@ -219427,7 +223603,7 @@ index 118f454..288ab93 100644
config HAVE_ARCH_HARDENED_USERCOPY
bool
help
-@@ -134,23 +1186,14 @@ config HAVE_ARCH_HARDENED_USERCOPY
+@@ -134,23 +1187,14 @@ config HAVE_ARCH_HARDENED_USERCOPY
copy_to_user() and copy_from_user().
config HARDENED_USERCOPY
@@ -219454,7 +223630,7 @@ index 118f454..288ab93 100644
help
When a multi-page allocation is done without __GFP_COMP,
hardened usercopy will reject attempts to copy it. There are,
-@@ -205,4 +1248,3 @@ config DEFAULT_SECURITY
+@@ -205,4 +1249,3 @@ config DEFAULT_SECURITY
default "" if DEFAULT_SECURITY_DAC
endmenu
@@ -219586,10 +223762,10 @@ index 179e68d..48bd588 100644
/* freed below */
name = kmalloc(strlen(parent->base.hname) + 2 + 7 + 8, GFP_KERNEL);
diff --git a/security/commoncap.c b/security/commoncap.c
-index 14540bd..eaa4c55 100644
+index 8df676f..77e2cb5 100644
--- a/security/commoncap.c
+++ b/security/commoncap.c
-@@ -438,6 +438,32 @@ int get_vfs_caps_from_disk(const struct dentry *dentry, struct cpu_vfs_cap_data
+@@ -433,6 +433,32 @@ int get_vfs_caps_from_disk(const struct dentry *dentry, struct cpu_vfs_cap_data
return 0;
}
@@ -219622,7 +223798,7 @@ index 14540bd..eaa4c55 100644
/*
* Attempt to get the on-exec apply capability sets for an executable file from
* its xattrs and, if present, apply them to the proposed credentials being
-@@ -636,6 +662,9 @@ int cap_bprm_secureexec(struct linux_binprm *bprm)
+@@ -631,6 +657,9 @@ int cap_bprm_secureexec(struct linux_binprm *bprm)
const struct cred *cred = current_cred();
kuid_t root_uid = make_kuid(cred->user_ns, 0);
@@ -219661,7 +223837,7 @@ index 9df26a2..2c6fc00 100644
result = ima_alloc_init_template(&event_data, &entry);
if (result < 0) {
diff --git a/security/integrity/ima/ima_fs.c b/security/integrity/ima/ima_fs.c
-index c07a384..52ad9bc 100644
+index 3df4690..59a419e 100644
--- a/security/integrity/ima/ima_fs.c
+++ b/security/integrity/ima/ima_fs.c
@@ -31,12 +31,12 @@ static DEFINE_MUTEX(ima_write_mutex);
@@ -219794,6 +223970,46 @@ index 346fbf2..84458b1 100644
/* record the root user tracking */
rb_link_node(&root_key_user.node,
+diff --git a/security/keys/keyctl.c b/security/keys/keyctl.c
+index d580ad0..283a3ed 100644
+--- a/security/keys/keyctl.c
++++ b/security/keys/keyctl.c
+@@ -99,7 +99,7 @@ SYSCALL_DEFINE5(add_key, const char __user *, _type,
+
+ if (_payload) {
+ ret = -ENOMEM;
+- payload = kmalloc(plen, GFP_KERNEL | __GFP_NOWARN);
++ payload = kmalloc(plen, GFP_KERNEL | GFP_USERCOPY | __GFP_NOWARN);
+ if (!payload) {
+ if (plen <= PAGE_SIZE)
+ goto error2;
+@@ -324,7 +324,7 @@ long keyctl_update_key(key_serial_t id,
+ payload = NULL;
+ if (_payload) {
+ ret = -ENOMEM;
+- payload = kmalloc(plen, GFP_KERNEL);
++ payload = kmalloc(plen, GFP_KERNEL | GFP_USERCOPY);
+ if (!payload)
+ goto error;
+
+@@ -616,7 +616,7 @@ long keyctl_describe_key(key_serial_t keyid,
+
+ /* calculate how much information we're going to return */
+ ret = -ENOMEM;
+- infobuf = kasprintf(GFP_KERNEL,
++ infobuf = kasprintf(GFP_KERNEL | GFP_USERCOPY,
+ "%s;%d;%d;%08x;",
+ key->type->name,
+ from_kuid_munged(current_user_ns(), key->uid),
+@@ -1064,7 +1064,7 @@ long keyctl_instantiate_key_common(key_serial_t id,
+
+ if (from) {
+ ret = -ENOMEM;
+- payload = kmalloc(plen, GFP_KERNEL);
++ payload = kmalloc(plen, GFP_KERNEL | GFP_USERCOPY);
+ if (!payload) {
+ if (plen <= PAGE_SIZE)
+ goto error;
diff --git a/security/keys/keyring.c b/security/keys/keyring.c
index c91e4e0..d3193f6 100644
--- a/security/keys/keyring.c
@@ -220199,10 +224415,10 @@ index bb12615..b5e4ff9 100644
unsigned long flags;
diff --git a/sound/core/pcm_native.c b/sound/core/pcm_native.c
-index c61fd50f7..3081340 100644
+index 9d33c1e..23b36d1 100644
--- a/sound/core/pcm_native.c
+++ b/sound/core/pcm_native.c
-@@ -3014,11 +3014,11 @@ int snd_pcm_kernel_ioctl(struct snd_pcm_substream *substream,
+@@ -3016,11 +3016,11 @@ int snd_pcm_kernel_ioctl(struct snd_pcm_substream *substream,
switch (substream->stream) {
case SNDRV_PCM_STREAM_PLAYBACK:
result = snd_pcm_playback_ioctl1(NULL, substream, cmd,
@@ -220249,10 +224465,10 @@ index cd0e0eb..89543da 100644
}
}
diff --git a/sound/core/seq/seq_clientmgr.c b/sound/core/seq/seq_clientmgr.c
-index d6d9419..49b620a 100644
+index 4c93520..e4032f9 100644
--- a/sound/core/seq/seq_clientmgr.c
+++ b/sound/core/seq/seq_clientmgr.c
-@@ -418,7 +418,7 @@ static ssize_t snd_seq_read(struct file *file, char __user *buf, size_t count,
+@@ -403,7 +403,7 @@ static ssize_t snd_seq_read(struct file *file, char __user *buf, size_t count,
if (!client->accept_input || (fifo = client->data.user.fifo) == NULL)
return -ENXIO;
@@ -220261,7 +224477,7 @@ index d6d9419..49b620a 100644
/* buffer overflow is detected */
snd_seq_fifo_clear(fifo);
/* return error code */
-@@ -448,7 +448,7 @@ static ssize_t snd_seq_read(struct file *file, char __user *buf, size_t count,
+@@ -433,7 +433,7 @@ static ssize_t snd_seq_read(struct file *file, char __user *buf, size_t count,
count -= sizeof(struct snd_seq_event);
buf += sizeof(struct snd_seq_event);
err = snd_seq_expand_var_event(&cell->event, count,
@@ -220270,7 +224486,7 @@ index d6d9419..49b620a 100644
sizeof(struct snd_seq_event));
if (err < 0)
break;
-@@ -1064,13 +1064,13 @@ static ssize_t snd_seq_write(struct file *file, const char __user *buf,
+@@ -1049,13 +1049,13 @@ static ssize_t snd_seq_write(struct file *file, const char __user *buf,
}
/* set user space pointer */
event.data.ext.len = extlen | SNDRV_SEQ_EXT_USRPTR;
@@ -220286,28 +224502,6 @@ index d6d9419..49b620a 100644
event.data.ext.ptr = ptr;
}
#endif
-@@ -2437,7 +2437,7 @@ int snd_seq_kernel_client_ctl(int clientid, unsigned int cmd, void *arg)
- if (client == NULL)
- return -ENXIO;
- fs = snd_enter_user();
-- result = snd_seq_do_ioctl(client, cmd, (void __force __user *)arg);
-+ result = snd_seq_do_ioctl(client, cmd, (void __force_user *)arg);
- snd_leave_user(fs);
- return result;
- }
-diff --git a/sound/core/seq/seq_compat.c b/sound/core/seq/seq_compat.c
-index 6517590..9905cee 100644
---- a/sound/core/seq/seq_compat.c
-+++ b/sound/core/seq/seq_compat.c
-@@ -60,7 +60,7 @@ static int snd_seq_call_port_info_ioctl(struct snd_seq_client *client, unsigned
- data->kernel = NULL;
-
- fs = snd_enter_user();
-- err = snd_seq_do_ioctl(client, cmd, data);
-+ err = snd_seq_do_ioctl(client, cmd, (void __force_user *)data);
- snd_leave_user(fs);
- if (err < 0)
- goto error;
diff --git a/sound/core/seq/seq_fifo.c b/sound/core/seq/seq_fifo.c
index 1d5acbe..5f55223 100644
--- a/sound/core/seq/seq_fifo.c
@@ -220743,7 +224937,7 @@ index 213a416..aeab5c9 100644
list_add(&s->list, &cs4297a_devs);
diff --git a/sound/pci/als300.c b/sound/pci/als300.c
-index add3176..c9394d9 100644
+index ab75601..28b3423 100644
--- a/sound/pci/als300.c
+++ b/sound/pci/als300.c
@@ -647,7 +647,7 @@ static int snd_als300_create(struct snd_card *card,
@@ -220756,7 +224950,7 @@ index add3176..c9394d9 100644
static struct snd_device_ops ops = {
diff --git a/sound/pci/aw2/aw2-alsa.c b/sound/pci/aw2/aw2-alsa.c
-index 1677143..85aca1d 100644
+index 57bbb87..5873521 100644
--- a/sound/pci/aw2/aw2-alsa.c
+++ b/sound/pci/aw2/aw2-alsa.c
@@ -458,7 +458,6 @@ static int snd_aw2_pcm_prepare_playback(struct snd_pcm_substream *substream)
@@ -220812,7 +225006,7 @@ index 5fcbb06..f4b85df 100644
int err;
struct amixer_mgr *amixer_mgr;
-@@ -326,8 +327,10 @@ error:
+@@ -326,8 +327,10 @@ int amixer_mgr_create(struct hw *hw, struct amixer_mgr **ramixer_mgr)
return err;
}
@@ -220835,7 +225029,7 @@ index 5fcbb06..f4b85df 100644
int err;
struct sum_mgr *sum_mgr;
-@@ -481,8 +485,10 @@ error:
+@@ -481,8 +485,10 @@ int sum_mgr_create(struct hw *hw, struct sum_mgr **rsum_mgr)
return err;
}
@@ -220873,7 +225067,7 @@ index 2de18aa..2fbd01b 100644
#endif /* CTAMIXER_H */
diff --git a/sound/pci/ctxfi/ctatc.c b/sound/pci/ctxfi/ctatc.c
-index 977a598..a787004a 100644
+index 908658a..5d1726c 100644
--- a/sound/pci/ctxfi/ctatc.c
+++ b/sound/pci/ctxfi/ctatc.c
@@ -113,16 +113,16 @@ static struct {
@@ -220918,7 +225112,7 @@ index 7f089cb..6bea28e 100644
int err, i;
struct daio_mgr *daio_mgr;
struct imapper *entry;
-@@ -741,8 +742,9 @@ error1:
+@@ -741,8 +742,9 @@ int daio_mgr_create(struct hw *hw, struct daio_mgr **rdaio_mgr)
return err;
}
@@ -220958,7 +225152,7 @@ index a5a72df..f86edb8 100644
int err, i;
struct src_mgr *src_mgr;
-@@ -584,8 +585,10 @@ error1:
+@@ -584,8 +585,10 @@ int src_mgr_create(struct hw *hw, struct src_mgr **rsrc_mgr)
return err;
}
@@ -220981,7 +225175,7 @@ index a5a72df..f86edb8 100644
int err;
struct srcimp_mgr *srcimp_mgr;
struct imapper *entry;
-@@ -873,8 +877,9 @@ error1:
+@@ -873,8 +877,9 @@ int srcimp_mgr_create(struct hw *hw, struct srcimp_mgr **rsrcimp_mgr)
return err;
}
@@ -221038,7 +225232,7 @@ index 149d4cb..7784769 100644
const struct firmware *dsp_microcode;
const struct firmware *controller_microcode;
diff --git a/sound/pci/ymfpci/ymfpci_main.c b/sound/pci/ymfpci/ymfpci_main.c
-index 4c26076..a13f370 100644
+index ffee284..c23cee1 100644
--- a/sound/pci/ymfpci/ymfpci_main.c
+++ b/sound/pci/ymfpci/ymfpci_main.c
@@ -204,8 +204,8 @@ static void snd_ymfpci_hw_stop(struct snd_ymfpci *chip)
@@ -221082,10 +225276,10 @@ index 4c26076..a13f370 100644
chip->pci = pci;
chip->irq = -1;
diff --git a/sound/soc/codecs/arizona.c b/sound/soc/codecs/arizona.c
-index ecfdbfc..38d0ebd 100644
+index 846ca07..57fa515 100644
--- a/sound/soc/codecs/arizona.c
+++ b/sound/soc/codecs/arizona.c
-@@ -2558,7 +2558,9 @@ int arizona_register_notifier(struct snd_soc_codec *codec,
+@@ -2606,7 +2606,9 @@ int arizona_register_notifier(struct snd_soc_codec *codec,
struct arizona_priv *priv = snd_soc_codec_get_drvdata(codec);
struct arizona *arizona = priv->arizona;
@@ -221097,7 +225291,7 @@ index ecfdbfc..38d0ebd 100644
return blocking_notifier_chain_register(&arizona->notifier, nb);
}
diff --git a/sound/soc/codecs/cx20442.c b/sound/soc/codecs/cx20442.c
-index fb3885f..7c89556 100644
+index 2c12471..31dd766 100644
--- a/sound/soc/codecs/cx20442.c
+++ b/sound/soc/codecs/cx20442.c
@@ -264,6 +264,12 @@ static int v253_hangup(struct tty_struct *tty)
@@ -221123,32 +225317,32 @@ index fb3885f..7c89556 100644
}
}
diff --git a/sound/soc/codecs/sti-sas.c b/sound/soc/codecs/sti-sas.c
-index 160d61a..cd7a4ac 100644
+index d6e00c7..4b64c8a 100644
--- a/sound/soc/codecs/sti-sas.c
+++ b/sound/soc/codecs/sti-sas.c
@@ -591,11 +591,13 @@ static int sti_sas_driver_probe(struct platform_device *pdev)
sti_sas_dai[STI_SAS_DAI_ANALOG_OUT].ops = drvdata->dev_data->dac_ops;
/* Set dapms*/
-- sti_sas_driver.dapm_widgets = drvdata->dev_data->dapm_widgets;
-- sti_sas_driver.num_dapm_widgets = drvdata->dev_data->num_dapm_widgets;
+- sti_sas_driver.component_driver.dapm_widgets = drvdata->dev_data->dapm_widgets;
+- sti_sas_driver.component_driver.num_dapm_widgets = drvdata->dev_data->num_dapm_widgets;
+ pax_open_kernel();
-+ const_cast(sti_sas_driver.dapm_widgets) = drvdata->dev_data->dapm_widgets;
-+ const_cast(sti_sas_driver.num_dapm_widgets) = drvdata->dev_data->num_dapm_widgets;
++ const_cast(sti_sas_driver.component_driver.dapm_widgets) = drvdata->dev_data->dapm_widgets;
++ const_cast(sti_sas_driver.component_driver.num_dapm_widgets) = drvdata->dev_data->num_dapm_widgets;
-- sti_sas_driver.dapm_routes = drvdata->dev_data->dapm_routes;
-- sti_sas_driver.num_dapm_routes = drvdata->dev_data->num_dapm_routes;
-+ const_cast(sti_sas_driver.dapm_routes) = drvdata->dev_data->dapm_routes;
-+ const_cast(sti_sas_driver.num_dapm_routes) = drvdata->dev_data->num_dapm_routes;
+- sti_sas_driver.component_driver.dapm_routes = drvdata->dev_data->dapm_routes;
+- sti_sas_driver.component_driver.num_dapm_routes = drvdata->dev_data->num_dapm_routes;
++ const_cast(sti_sas_driver.component_driver.dapm_routes) = drvdata->dev_data->dapm_routes;
++ const_cast(sti_sas_driver.component_driver.num_dapm_routes) = drvdata->dev_data->num_dapm_routes;
+ pax_close_kernel();
/* Store context */
dev_set_drvdata(&pdev->dev, drvdata);
diff --git a/sound/soc/codecs/tlv320dac33.c b/sound/soc/codecs/tlv320dac33.c
-index f7a6ce7..82310c8 100644
+index 7bcf01e..ca7af11 100644
--- a/sound/soc/codecs/tlv320dac33.c
+++ b/sound/soc/codecs/tlv320dac33.c
-@@ -1375,13 +1375,18 @@ static int dac33_set_dai_fmt(struct snd_soc_dai *codec_dai,
+@@ -1374,13 +1374,18 @@ static int dac33_set_dai_fmt(struct snd_soc_dai *codec_dai,
return 0;
}
@@ -221169,7 +225363,7 @@ index f7a6ce7..82310c8 100644
/* Read the tlv320dac33 ID registers */
diff --git a/sound/soc/codecs/uda1380.c b/sound/soc/codecs/uda1380.c
-index 35f0469..7c25cd5 100644
+index 533e3bb..7f69a52 100644
--- a/sound/soc/codecs/uda1380.c
+++ b/sound/soc/codecs/uda1380.c
@@ -687,6 +687,11 @@ static struct snd_soc_dai_driver uda1380_dai[] = {
@@ -221194,10 +225388,10 @@ index 35f0469..7c25cd5 100644
if (!pdata)
diff --git a/sound/soc/intel/skylake/skl-sst-dsp.h b/sound/soc/intel/skylake/skl-sst-dsp.h
-index 0f8629e..79f9d59 100644
+index b9e71d0..7d187d6 100644
--- a/sound/soc/intel/skylake/skl-sst-dsp.h
+++ b/sound/soc/intel/skylake/skl-sst-dsp.h
-@@ -140,7 +140,7 @@ struct skl_dsp_fw_ops {
+@@ -143,7 +143,7 @@ struct skl_dsp_fw_ops {
int (*load_mod)(struct sst_dsp *ctx, u16 mod_id, u8 *mod_name);
int (*unload_mod)(struct sst_dsp *ctx, u16 mod_id);
@@ -221207,7 +225401,7 @@ index 0f8629e..79f9d59 100644
struct skl_dsp_loader_ops {
int stream_tag;
diff --git a/sound/soc/soc-ac97.c b/sound/soc/soc-ac97.c
-index bc4a55b..ce6b925 100644
+index 6c8b0b0..2c4a5c6 100644
--- a/sound/soc/soc-ac97.c
+++ b/sound/soc/soc-ac97.c
@@ -414,8 +414,10 @@ int snd_soc_set_ac97_ops_of_reset(struct snd_ac97_bus_ops *ops,
@@ -221262,10 +225456,10 @@ index a020920..55579f6 100644
diff --git a/sound/usb/line6/driver.c b/sound/usb/line6/driver.c
-index 183311c..760f13f 100644
+index 90009c0..41ed071 100644
--- a/sound/usb/line6/driver.c
+++ b/sound/usb/line6/driver.c
-@@ -307,7 +307,7 @@ int line6_read_data(struct usb_line6 *line6, unsigned address, void *data,
+@@ -337,7 +337,7 @@ int line6_read_data(struct usb_line6 *line6, unsigned address, void *data,
{
struct usb_device *usbdev = line6->usbdev;
int ret;
@@ -221274,7 +225468,7 @@ index 183311c..760f13f 100644
unsigned count;
if (address > 0xffff || datalen > 0xff)
-@@ -324,6 +324,10 @@ int line6_read_data(struct usb_line6 *line6, unsigned address, void *data,
+@@ -354,6 +354,10 @@ int line6_read_data(struct usb_line6 *line6, unsigned address, void *data,
return ret;
}
@@ -221285,7 +225479,7 @@ index 183311c..760f13f 100644
/* Wait for data length. We'll get 0xff until length arrives. */
for (count = 0; count < LINE6_READ_WRITE_MAX_RETRIES; count++) {
mdelay(LINE6_READ_WRITE_STATUS_DELAY);
-@@ -331,30 +335,35 @@ int line6_read_data(struct usb_line6 *line6, unsigned address, void *data,
+@@ -361,30 +365,35 @@ int line6_read_data(struct usb_line6 *line6, unsigned address, void *data,
ret = usb_control_msg(usbdev, usb_rcvctrlpipe(usbdev, 0), 0x67,
USB_TYPE_VENDOR | USB_RECIP_DEVICE |
USB_DIR_IN,
@@ -221326,7 +225520,7 @@ index 183311c..760f13f 100644
/* receive the result: */
ret = usb_control_msg(usbdev, usb_rcvctrlpipe(usbdev, 0), 0x67,
USB_TYPE_VENDOR | USB_RECIP_DEVICE | USB_DIR_IN,
-@@ -378,7 +387,7 @@ int line6_write_data(struct usb_line6 *line6, unsigned address, void *data,
+@@ -408,7 +417,7 @@ int line6_write_data(struct usb_line6 *line6, unsigned address, void *data,
{
struct usb_device *usbdev = line6->usbdev;
int ret;
@@ -221335,7 +225529,7 @@ index 183311c..760f13f 100644
int count;
if (address > 0xffff || datalen > 0xffff)
-@@ -395,6 +404,10 @@ int line6_write_data(struct usb_line6 *line6, unsigned address, void *data,
+@@ -425,6 +434,10 @@ int line6_write_data(struct usb_line6 *line6, unsigned address, void *data,
return ret;
}
@@ -221346,7 +225540,7 @@ index 183311c..760f13f 100644
for (count = 0; count < LINE6_READ_WRITE_MAX_RETRIES; count++) {
mdelay(LINE6_READ_WRITE_STATUS_DELAY);
-@@ -403,27 +416,32 @@ int line6_write_data(struct usb_line6 *line6, unsigned address, void *data,
+@@ -433,27 +446,32 @@ int line6_write_data(struct usb_line6 *line6, unsigned address, void *data,
USB_TYPE_VENDOR | USB_RECIP_DEVICE |
USB_DIR_IN,
0x0012, 0x0000,
@@ -221384,7 +225578,7 @@ index 183311c..760f13f 100644
}
EXPORT_SYMBOL_GPL(line6_write_data);
diff --git a/sound/usb/line6/toneport.c b/sound/usb/line6/toneport.c
-index 6d4c50c..aa658c8 100644
+index 8e22f43..2f5e18c 100644
--- a/sound/usb/line6/toneport.c
+++ b/sound/usb/line6/toneport.c
@@ -367,13 +367,19 @@ static bool toneport_has_source_select(struct usb_line6_toneport *toneport)
@@ -221455,7 +225649,7 @@ index 0a578fe..b81f62d 100644
})
diff --git a/virt/kvm/kvm_main.c b/virt/kvm/kvm_main.c
-index 690d15e..2d4e146 100644
+index 7f9ee29..71d4ab0 100644
--- a/virt/kvm/kvm_main.c
+++ b/virt/kvm/kvm_main.c
@@ -93,12 +93,17 @@ LIST_HEAD(vm_list);
@@ -221478,7 +225672,7 @@ index 690d15e..2d4e146 100644
struct dentry *kvm_debugfs_dir;
EXPORT_SYMBOL_GPL(kvm_debugfs_dir);
-@@ -909,7 +914,7 @@ int __kvm_set_memory_region(struct kvm *kvm,
+@@ -911,7 +916,7 @@ int __kvm_set_memory_region(struct kvm *kvm,
/* We can read the guest memory with __xxx_user() later on. */
if ((id < KVM_USER_MEM_SLOTS) &&
((mem->userspace_addr & (PAGE_SIZE - 1)) ||
@@ -221487,7 +225681,7 @@ index 690d15e..2d4e146 100644
(void __user *)(unsigned long)mem->userspace_addr,
mem->memory_size)))
goto out;
-@@ -2020,9 +2025,17 @@ EXPORT_SYMBOL_GPL(kvm_read_guest_cached);
+@@ -2025,9 +2030,17 @@ EXPORT_SYMBOL_GPL(kvm_read_guest_cached);
int kvm_clear_guest_page(struct kvm *kvm, gfn_t gfn, int offset, int len)
{
@@ -221507,7 +225701,7 @@ index 690d15e..2d4e146 100644
}
EXPORT_SYMBOL_GPL(kvm_clear_guest_page);
-@@ -2373,7 +2386,7 @@ static int kvm_vcpu_release(struct inode *inode, struct file *filp)
+@@ -2379,7 +2392,7 @@ static int kvm_vcpu_release(struct inode *inode, struct file *filp)
return 0;
}
@@ -221516,7 +225710,7 @@ index 690d15e..2d4e146 100644
.release = kvm_vcpu_release,
.unlocked_ioctl = kvm_vcpu_ioctl,
#ifdef CONFIG_KVM_COMPAT
-@@ -3107,7 +3120,7 @@ out:
+@@ -3144,7 +3157,7 @@ static long kvm_vm_compat_ioctl(struct file *filp,
}
#endif
@@ -221525,7 +225719,7 @@ index 690d15e..2d4e146 100644
.release = kvm_vm_release,
.unlocked_ioctl = kvm_vm_ioctl,
#ifdef CONFIG_KVM_COMPAT
-@@ -3194,7 +3207,7 @@ out:
+@@ -3231,7 +3244,7 @@ static long kvm_dev_ioctl(struct file *filp,
return r;
}
@@ -221534,7 +225728,7 @@ index 690d15e..2d4e146 100644
.unlocked_ioctl = kvm_dev_ioctl,
.compat_ioctl = kvm_dev_ioctl,
.llseek = noop_llseek,
-@@ -3220,7 +3233,7 @@ static void hardware_enable_nolock(void *junk)
+@@ -3257,7 +3270,7 @@ static void hardware_enable_nolock(void *junk)
if (r) {
cpumask_clear_cpu(cpu, cpus_hardware_enabled);
@@ -221543,7 +225737,7 @@ index 690d15e..2d4e146 100644
pr_info("kvm: enabling virtualization on CPU%d failed\n", cpu);
}
}
-@@ -3277,10 +3290,10 @@ static int hardware_enable_all(void)
+@@ -3314,10 +3327,10 @@ static int hardware_enable_all(void)
kvm_usage_count++;
if (kvm_usage_count == 1) {
@@ -221556,18 +225750,19 @@ index 690d15e..2d4e146 100644
hardware_disable_all_nolock();
r = -EBUSY;
}
-@@ -3840,8 +3853,8 @@ int kvm_init(void *opaque, unsigned vcpu_size, unsigned vcpu_align,
+@@ -3877,8 +3890,9 @@ int kvm_init(void *opaque, unsigned vcpu_size, unsigned vcpu_align,
/* A kmem cache lets us meet the alignment requirements of fx_save. */
if (!vcpu_align)
vcpu_align = __alignof__(struct kvm_vcpu);
- kvm_vcpu_cache = kmem_cache_create("kvm_vcpu", vcpu_size, vcpu_align,
- 0, NULL);
+ kvm_vcpu_cache = kmem_cache_create_usercopy("kvm_vcpu", vcpu_size, vcpu_align,
-+ 0, 0, vcpu_size, NULL);
++ 0, offsetof(struct kvm_vcpu, arch),
++ sizeof(((struct kvm_vcpu *)0)->arch), NULL);
if (!kvm_vcpu_cache) {
r = -ENOMEM;
goto out_free_3;
-@@ -3851,9 +3864,11 @@ int kvm_init(void *opaque, unsigned vcpu_size, unsigned vcpu_align,
+@@ -3888,9 +3902,11 @@ int kvm_init(void *opaque, unsigned vcpu_size, unsigned vcpu_align,
if (r)
goto out_free;
@@ -221579,7 +225774,7 @@ index 690d15e..2d4e146 100644
r = misc_register(&kvm_dev);
if (r) {
-@@ -3863,9 +3878,6 @@ int kvm_init(void *opaque, unsigned vcpu_size, unsigned vcpu_align,
+@@ -3900,9 +3916,6 @@ int kvm_init(void *opaque, unsigned vcpu_size, unsigned vcpu_align,
register_syscore_ops(&kvm_syscore_ops);
diff --git a/4.8.17/4425_grsec_remove_EI_PAX.patch b/4.9.9/4425_grsec_remove_EI_PAX.patch
index 594598a..594598a 100644
--- a/4.8.17/4425_grsec_remove_EI_PAX.patch
+++ b/4.9.9/4425_grsec_remove_EI_PAX.patch
diff --git a/4.8.17/4426_default_XATTR_PAX_FLAGS.patch b/4.9.9/4426_default_XATTR_PAX_FLAGS.patch
index f7e97b5..f7e97b5 100644
--- a/4.8.17/4426_default_XATTR_PAX_FLAGS.patch
+++ b/4.9.9/4426_default_XATTR_PAX_FLAGS.patch
diff --git a/4.8.17/4427_force_XATTR_PAX_tmpfs.patch b/4.9.9/4427_force_XATTR_PAX_tmpfs.patch
index ba7da66..3871139 100644
--- a/4.8.17/4427_force_XATTR_PAX_tmpfs.patch
+++ b/4.9.9/4427_force_XATTR_PAX_tmpfs.patch
@@ -6,7 +6,7 @@ namespace supported on tmpfs so that the PaX markings survive emerge.
diff -Naur a/mm/shmem.c b/mm/shmem.c
--- a/mm/shmem.c 2016-04-29 19:56:25.306101147 -0400
+++ b/mm/shmem.c 2016-04-29 19:59:44.126104490 -0400
-@@ -3257,7 +3257,6 @@
+@@ -3157,7 +3157,6 @@
return simple_xattr_set(&info->xattrs, name, value, size, flags);
}
@@ -14,7 +14,7 @@ diff -Naur a/mm/shmem.c b/mm/shmem.c
static int shmem_user_xattr_handler_set(const struct xattr_handler *handler,
struct dentry *dentry, struct inode *inode,
const char *name, const void *value,
-@@ -3273,7 +3272,6 @@
+@@ -3173,7 +3172,6 @@
name = xattr_full_name(handler, name);
return simple_xattr_set(&info->xattrs, name, value, size, flags);
}
@@ -22,7 +22,7 @@ diff -Naur a/mm/shmem.c b/mm/shmem.c
static const struct xattr_handler shmem_security_xattr_handler = {
.prefix = XATTR_SECURITY_PREFIX,
-@@ -3287,13 +3285,11 @@
+@@ -3187,13 +3185,11 @@
.set = shmem_xattr_handler_set,
};
@@ -36,7 +36,7 @@ diff -Naur a/mm/shmem.c b/mm/shmem.c
static const struct xattr_handler *shmem_xattr_handlers[] = {
#ifdef CONFIG_TMPFS_POSIX_ACL
-@@ -3303,9 +3299,7 @@
+@@ -3203,9 +3199,7 @@
&shmem_security_xattr_handler,
&shmem_trusted_xattr_handler,
diff --git a/4.8.17/4430_grsec-remove-localversion-grsec.patch b/4.9.9/4430_grsec-remove-localversion-grsec.patch
index 31cf878..31cf878 100644
--- a/4.8.17/4430_grsec-remove-localversion-grsec.patch
+++ b/4.9.9/4430_grsec-remove-localversion-grsec.patch
diff --git a/4.8.17/4435_grsec-mute-warnings.patch b/4.9.9/4435_grsec-mute-warnings.patch
index 8929222..8929222 100644
--- a/4.8.17/4435_grsec-mute-warnings.patch
+++ b/4.9.9/4435_grsec-mute-warnings.patch
diff --git a/4.8.17/4440_grsec-remove-protected-paths.patch b/4.9.9/4440_grsec-remove-protected-paths.patch
index 741546d..741546d 100644
--- a/4.8.17/4440_grsec-remove-protected-paths.patch
+++ b/4.9.9/4440_grsec-remove-protected-paths.patch
diff --git a/4.8.17/4450_grsec-kconfig-default-gids.patch b/4.9.9/4450_grsec-kconfig-default-gids.patch
index cee6e27..cee6e27 100644
--- a/4.8.17/4450_grsec-kconfig-default-gids.patch
+++ b/4.9.9/4450_grsec-kconfig-default-gids.patch
diff --git a/4.8.17/4465_selinux-avc_audit-log-curr_ip.patch b/4.9.9/4465_selinux-avc_audit-log-curr_ip.patch
index 06a5294..06a5294 100644
--- a/4.8.17/4465_selinux-avc_audit-log-curr_ip.patch
+++ b/4.9.9/4465_selinux-avc_audit-log-curr_ip.patch
diff --git a/4.8.17/4470_disable-compat_vdso.patch b/4.9.9/4470_disable-compat_vdso.patch
index 1e4b84a..a1401d8 100644
--- a/4.8.17/4470_disable-compat_vdso.patch
+++ b/4.9.9/4470_disable-compat_vdso.patch
@@ -26,7 +26,7 @@ Closes bug: http://bugs.gentoo.org/show_bug.cgi?id=210138
diff -urp a/arch/x86/Kconfig b/arch/x86/Kconfig
--- a/arch/x86/Kconfig 2009-07-31 01:36:57.323857684 +0100
+++ b/arch/x86/Kconfig 2009-07-31 01:51:39.395749681 +0100
-@@ -2087,29 +2087,8 @@
+@@ -2099,29 +2099,8 @@
config COMPAT_VDSO
def_bool n
diff --git a/4.8.17/4475_emutramp_default_on.patch b/4.9.9/4475_emutramp_default_on.patch
index feb8c7b..feb8c7b 100644
--- a/4.8.17/4475_emutramp_default_on.patch
+++ b/4.9.9/4475_emutramp_default_on.patch