diff options
-rw-r--r-- | 4.8.17/1016_linux-4.8.17.patch | 3229 | ||||
-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.patch | 2048 | ||||
-rw-r--r-- | 4.9.9/1008_linux-4.9.9.patch | 2333 | ||||
-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(<c->subdev.mutex); - ltc->func->cbc_clear(ltc, first, limit); - ltc->func->cbc_wait(ltc); -+ mutex_unlock(<c->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, <new); +@@ -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(¤t_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(®s); } -@@ -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, ®s->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 = ¤t->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 != ¤t->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 = ¤t->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, ¶m_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 *)¶m, 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 = ®ulator_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 = ¶m_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() (¤t->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, ¶m); } @@ -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(¤t->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 = >_ggc_mx_tree_node, -+ .pchw = >_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 *)>_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 *)>_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 *)>_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 *)>_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 ®_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 ¬esize_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 ¤t_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 µread_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 ©_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 >t_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 §or_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 ®_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 ®_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 §or_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 ðerMtu_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 >t_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 >t_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 ¤t_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 ¤t_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 §or_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 >t_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 ®_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 ¬ify_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 >k_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 ©_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 ©_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 ®map_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 ¬e_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 |