diff options
author | Natanael Copa <ncopa@alpinelinux.org> | 2013-12-23 08:01:53 +0000 |
---|---|---|
committer | Natanael Copa <ncopa@alpinelinux.org> | 2013-12-23 15:29:33 +0000 |
commit | 862738e0c8becc4c6522968e23e335c056f44e95 (patch) | |
tree | 22176d5a845e2dd17d799841f8ffb3983c72fd2f | |
parent | 3b8cdd62140c184189e71c14a65c2f23ac7d6d84 (diff) | |
download | aports-862738e0c8becc4c6522968e23e335c056f44e95.tar.bz2 aports-862738e0c8becc4c6522968e23e335c056f44e95.tar.xz |
main/linux-grsec: upgrade to 3.12.6
-rw-r--r-- | main/linux-grsec/APKBUILD | 16 | ||||
-rw-r--r-- | main/linux-grsec/grsecurity-3.0-3.12.6-201312221037.patch (renamed from main/linux-grsec/grsecurity-3.0-3.12.5-201312151212.patch) | 787 |
2 files changed, 331 insertions, 472 deletions
diff --git a/main/linux-grsec/APKBUILD b/main/linux-grsec/APKBUILD index 14aeb0ddad..c7d98ac324 100644 --- a/main/linux-grsec/APKBUILD +++ b/main/linux-grsec/APKBUILD @@ -2,7 +2,7 @@ _flavor=grsec pkgname=linux-${_flavor} -pkgver=3.12.5 +pkgver=3.12.6 case $pkgver in *.*.*) _kernver=${pkgver%.*};; *.*) _kernver=${pkgver};; @@ -17,7 +17,7 @@ _config=${config:-kernelconfig.${CARCH}} install= source="http://ftp.kernel.org/pub/linux/kernel/v3.x/linux-$_kernver.tar.xz http://ftp.kernel.org/pub/linux/kernel/v3.x/patch-$pkgver.xz - grsecurity-3.0-$pkgver-201312151212.patch + grsecurity-3.0-3.12.6-201312221037.patch fix-memory-map-for-PIE-applications.patch @@ -144,20 +144,20 @@ dev() { } md5sums="cc6ee608854e0da4b64f6c1ff8b6398c linux-3.12.tar.xz -70e456d21f7e7c0dc2f9bd170f1ae4ee patch-3.12.5.xz -81ff7554dff7791db8880c67e3983d56 grsecurity-3.0-3.12.5-201312151212.patch +9e75be8b127e58f1a76c0015eabb12ae patch-3.12.6.xz +08fb432729eecd94fbd97d2b413043a1 grsecurity-3.0-3.12.6-201312221037.patch c6a4ae7e8ca6159e1631545515805216 fix-memory-map-for-PIE-applications.patch 1be334b642b74ce8ee6ad499491470b0 kernelconfig.x86 f073b6d53be4460289eb4c9cfa1a3909 kernelconfig.x86_64" sha256sums="2e120ec7fde19fa51dc6b6cc11c81860a0775defcad5a5bf910ed9a50e845a02 linux-3.12.tar.xz -bfb519ae2a3662340cb20b5f9433f9b3b8598e612286274f96ec8c8bf6bc09c4 patch-3.12.5.xz -0fa7f629dea0eb02019f730f1bf216d5c70851de740d57dab74c23eb88749c68 grsecurity-3.0-3.12.5-201312151212.patch +d3f0fab91fa4f25b685ae087030252feedb0169061c2f486cdf38b399e4baf7a patch-3.12.6.xz +3db8444dda3eb2b6d41abd8f6d280303bbe2c57f3508b2537e2d3fe24aa7346a grsecurity-3.0-3.12.6-201312221037.patch 500f3577310be52e87b9fecdc2e9c4ca43210fd97d69089f9005d484563f74c7 fix-memory-map-for-PIE-applications.patch 1e4ea33e1368b50cda84c1da3dac2b1e20057e045f37cd0506a1f0a321630aba kernelconfig.x86 213c1fc7f0694883d4bce982adc2b40756261282e030b9305b0cbccb3b175b32 kernelconfig.x86_64" sha512sums="4ba5797e0772726d05c9f2eee66dc6dc2a5033c749ef44764c805a83da739ed5d0c6443b76785e38fe1ef74cc7ade787e48144faed0cfcb6f124f05248c700ff linux-3.12.tar.xz -4bf50be98a56d1c0721b4d8fded68d750213ac5120b8a57d51af3268adea7b96b795f1cb615219b64a0c8fbb479bc428526a53e257b4a24a19ffbc4c4e598a12 patch-3.12.5.xz -422576f6b72182a3fdf2310a6e3e2931e3b18ae72f6709408e5dd32920c99407673e4c32f48c74ec841bbf7da04d6049fddfe3221aef16fc23f3736ab4bcee6d grsecurity-3.0-3.12.5-201312151212.patch +dd386fa4ace7a2a63c788540fb4b76a621c2aa7ac874e2ebbf81014da255f6811584e93a4e92beffda88e33e848d8a69cdcb33cce81387b35c79ff49fc32563c patch-3.12.6.xz +f98a05fffdffee62cdb6ceaea1326d6231e391ba771f69c24e5ea0b7f3b83a1346530c48170c0fce9cf7681a247786d3324d1034c3f10e0fcf2db61429a16705 grsecurity-3.0-3.12.6-201312221037.patch 4665c56ae1bbac311f9205d64918e84ee8b01d47d6e2396ff6b8adfb10aada7f7254531ce62e31edbb65c2a54a830f09ad05d314dfcd75d6272f4068945ad7c7 fix-memory-map-for-PIE-applications.patch 381b2074adcc336ef0e015d52bc8a98cd7dd25d17aaa3c7c1768dd8244ee1f15c470e61514eb979b1c3e516e54eba6e51eab69b780553d5f3f8a283f2ba91851 kernelconfig.x86 0aec64a170ec14e4a8de7f9b2b28513a95839cacd2b319628f7c9421179cd76b75e528847b10fe15441432d91b3d930605440c2c9442de59c51eeb4ab3f3921d kernelconfig.x86_64" diff --git a/main/linux-grsec/grsecurity-3.0-3.12.5-201312151212.patch b/main/linux-grsec/grsecurity-3.0-3.12.6-201312221037.patch index 81f0265cdc..12c5249c45 100644 --- a/main/linux-grsec/grsecurity-3.0-3.12.5-201312151212.patch +++ b/main/linux-grsec/grsecurity-3.0-3.12.6-201312221037.patch @@ -281,7 +281,7 @@ index fcbb736..5508d8c 100644 pcd. [PARIDE] diff --git a/Makefile b/Makefile -index 986f3cd..8691deb 100644 +index 2b23383..a66cff0 100644 --- a/Makefile +++ b/Makefile @@ -241,8 +241,9 @@ CONFIG_SHELL := $(shell if [ -x "$$BASH" ]; then echo $$BASH; \ @@ -2819,7 +2819,7 @@ index 07314af..c46655c 100644 flush_icache_range((uintptr_t)(addr), (uintptr_t)(addr) + size); diff --git a/arch/arm/kernel/process.c b/arch/arm/kernel/process.c -index 94f6b05..efd7312 100644 +index 92f7b15..7048500 100644 --- a/arch/arm/kernel/process.c +++ b/arch/arm/kernel/process.c @@ -217,6 +217,7 @@ void machine_power_off(void) @@ -2850,7 +2850,7 @@ index 94f6b05..efd7312 100644 printk("pc : [<%08lx>] lr : [<%08lx>] psr: %08lx\n" "sp : %08lx ip : %08lx fp : %08lx\n", regs->ARM_pc, regs->ARM_lr, regs->ARM_cpsr, -@@ -422,12 +423,6 @@ unsigned long get_wchan(struct task_struct *p) +@@ -425,12 +426,6 @@ unsigned long get_wchan(struct task_struct *p) return 0; } @@ -2863,7 +2863,7 @@ index 94f6b05..efd7312 100644 #ifdef CONFIG_MMU #ifdef CONFIG_KUSER_HELPERS /* -@@ -443,7 +438,7 @@ static struct vm_area_struct gate_vma = { +@@ -446,7 +441,7 @@ static struct vm_area_struct gate_vma = { static int __init gate_vma_init(void) { @@ -2872,7 +2872,7 @@ index 94f6b05..efd7312 100644 return 0; } arch_initcall(gate_vma_init); -@@ -469,41 +464,16 @@ int in_gate_area_no_mm(unsigned long addr) +@@ -472,41 +467,16 @@ int in_gate_area_no_mm(unsigned long addr) const char *arch_vma_name(struct vm_area_struct *vma) { @@ -3083,7 +3083,7 @@ index 72024ea..ae302dd 100644 void __init smp_set_ops(struct smp_operations *ops) { diff --git a/arch/arm/kernel/traps.c b/arch/arm/kernel/traps.c -index 8fcda14..4512b9d 100644 +index 65ed63f..430c478 100644 --- a/arch/arm/kernel/traps.c +++ b/arch/arm/kernel/traps.c @@ -55,7 +55,7 @@ static void dump_mem(const char *, const char *, unsigned long, unsigned long); @@ -3114,7 +3114,7 @@ index 8fcda14..4512b9d 100644 if (signr) do_exit(signr); } -@@ -628,7 +633,9 @@ asmlinkage int arm_syscall(int no, struct pt_regs *regs) +@@ -629,7 +634,9 @@ asmlinkage int arm_syscall(int no, struct pt_regs *regs) * The user helper at 0xffff0fe0 must be used instead. * (see entry-armv.S for details) */ @@ -3124,7 +3124,7 @@ index 8fcda14..4512b9d 100644 } return 0; -@@ -885,7 +892,11 @@ void __init early_trap_init(void *vectors_base) +@@ -886,7 +893,11 @@ void __init early_trap_init(void *vectors_base) kuser_init(vectors_base); flush_icache_range(vectors, vectors + PAGE_SIZE * 2); @@ -3567,7 +3567,7 @@ index 17ca1ae..beba869 100644 struct omap_device *omap_device_alloc(struct platform_device *pdev, struct omap_hwmod **ohs, int oh_cnt); diff --git a/arch/arm/mach-omap2/omap_hwmod.c b/arch/arm/mach-omap2/omap_hwmod.c -index 3d5db8c..ddfa144 100644 +index 832adb1..49b62c4 100644 --- a/arch/arm/mach-omap2/omap_hwmod.c +++ b/arch/arm/mach-omap2/omap_hwmod.c @@ -194,10 +194,10 @@ struct omap_hwmod_soc_ops { @@ -7678,7 +7678,7 @@ index 88693ce..ac6f9ab 100644 #include <asm-generic/getorder.h> diff --git a/arch/powerpc/include/asm/pgalloc-64.h b/arch/powerpc/include/asm/pgalloc-64.h -index f65e27b..23ffb5b 100644 +index 256d6f8..b0166a7 100644 --- a/arch/powerpc/include/asm/pgalloc-64.h +++ b/arch/powerpc/include/asm/pgalloc-64.h @@ -53,6 +53,7 @@ static inline void pgd_free(struct mm_struct *mm, pgd_t *pgd) @@ -7701,7 +7701,7 @@ index f65e27b..23ffb5b 100644 #define pmd_populate(mm, pmd, pte_page) \ pmd_populate_kernel(mm, pmd, page_address(pte_page)) #define pmd_populate_kernel(mm, pmd, pte) pmd_set(pmd, (unsigned long)(pte)) -@@ -171,6 +177,7 @@ extern void __tlb_remove_table(void *_table); +@@ -169,6 +175,7 @@ extern void __tlb_remove_table(void *_table); #endif #define pud_populate(mm, pud, pmd) pud_set(pud, (unsigned long)pmd) @@ -11742,7 +11742,7 @@ index 78d91af..8ceb94b 100644 This option helps catch unintended modifications to loadable kernel module's text and read-only data. It also prevents execution diff --git a/arch/x86/Makefile b/arch/x86/Makefile -index eda00f9..c511701 100644 +index 57d0215..b4373fb 100644 --- a/arch/x86/Makefile +++ b/arch/x86/Makefile @@ -49,14 +49,12 @@ ifeq ($(CONFIG_X86_32),y) @@ -11785,13 +11785,13 @@ index eda00f9..c511701 100644 +archprepare: + $(if $(LDFLAGS_BUILD_ID),,$(error $(OLD_LD))) diff --git a/arch/x86/boot/Makefile b/arch/x86/boot/Makefile -index 379814b..add62ce 100644 +index 6cf0111..f2e2398 100644 --- a/arch/x86/boot/Makefile +++ b/arch/x86/boot/Makefile -@@ -65,6 +65,9 @@ KBUILD_CFLAGS := $(USERINCLUDE) -g -Os -D_SETUP -D__KERNEL__ \ +@@ -65,6 +65,9 @@ KBUILD_CFLAGS := $(USERINCLUDE) -m32 -g -Os -D_SETUP -D__KERNEL__ \ + $(call cc-option, -fno-unit-at-a-time)) \ $(call cc-option, -fno-stack-protector) \ $(call cc-option, -mpreferred-stack-boundary=2) - KBUILD_CFLAGS += $(call cc-option, -m32) +ifdef CONSTIFY_PLUGIN +KBUILD_CFLAGS += -fplugin-arg-constify_plugin-no-constify +endif @@ -11843,11 +11843,11 @@ index ef72bae..353a184 100644 return diff; } diff --git a/arch/x86/boot/compressed/Makefile b/arch/x86/boot/compressed/Makefile -index dcd90df..c830d7d 100644 +index c8a6792..2402765 100644 --- a/arch/x86/boot/compressed/Makefile +++ b/arch/x86/boot/compressed/Makefile -@@ -15,6 +15,9 @@ cflags-$(CONFIG_X86_64) := -mcmodel=small - KBUILD_CFLAGS += $(cflags-y) +@@ -16,6 +16,9 @@ KBUILD_CFLAGS += $(cflags-y) + KBUILD_CFLAGS += -mno-mmx -mno-sse KBUILD_CFLAGS += $(call cc-option,-ffreestanding) KBUILD_CFLAGS += $(call cc-option,-fno-stack-protector) +ifdef CONSTIFY_PLUGIN @@ -14263,7 +14263,7 @@ index 20370c6..a2eb9b0 100644 "popl %%ebp\n\t" "popl %%edi\n\t" diff --git a/arch/x86/include/asm/atomic.h b/arch/x86/include/asm/atomic.h -index 722aa3b..3a0bb27 100644 +index 722aa3b..c392d85 100644 --- a/arch/x86/include/asm/atomic.h +++ b/arch/x86/include/asm/atomic.h @@ -22,7 +22,18 @@ @@ -14280,7 +14280,7 @@ index 722aa3b..3a0bb27 100644 + * + * Atomically reads the value of @v. + */ -+static inline int atomic_read_unchecked(const atomic_unchecked_t *v) ++static inline int __intentional_overflow(-1) atomic_read_unchecked(const atomic_unchecked_t *v) +{ + return (*(volatile const int *)&(v)->counter); } @@ -14535,7 +14535,7 @@ index 722aa3b..3a0bb27 100644 return i + xadd(&v->counter, i); } -@@ -188,6 +362,10 @@ static inline int atomic_sub_return(int i, atomic_t *v) +@@ -188,9 +362,18 @@ static inline int atomic_sub_return(int i, atomic_t *v) } #define atomic_inc_return(v) (atomic_add_return(1, v)) @@ -14545,18 +14545,17 @@ index 722aa3b..3a0bb27 100644 +} #define atomic_dec_return(v) (atomic_sub_return(1, v)) - static inline int atomic_cmpxchg(atomic_t *v, int old, int new) -@@ -195,11 +373,21 @@ static inline int atomic_cmpxchg(atomic_t *v, int old, int new) - return cmpxchg(&v->counter, old, new); - } - -+static inline int atomic_cmpxchg_unchecked(atomic_unchecked_t *v, int old, int new) +-static inline int atomic_cmpxchg(atomic_t *v, int old, int new) ++static inline int __intentional_overflow(-1) atomic_cmpxchg(atomic_t *v, int old, int new) +{ + return cmpxchg(&v->counter, old, new); +} + - static inline int atomic_xchg(atomic_t *v, int new) ++static inline int atomic_cmpxchg_unchecked(atomic_unchecked_t *v, int old, int new) { + return cmpxchg(&v->counter, old, new); + } +@@ -200,6 +383,11 @@ static inline int atomic_xchg(atomic_t *v, int new) return xchg(&v->counter, new); } @@ -14568,9 +14567,12 @@ index 722aa3b..3a0bb27 100644 /** * __atomic_add_unless - add unless the number is already a given value * @v: pointer of type atomic_t -@@ -211,12 +399,25 @@ static inline int atomic_xchg(atomic_t *v, int new) +@@ -209,14 +397,27 @@ static inline int atomic_xchg(atomic_t *v, int new) + * Atomically adds @a to @v, so long as @v was not already @u. + * Returns the old value of @v. */ - static inline int __atomic_add_unless(atomic_t *v, int a, int u) +-static inline int __atomic_add_unless(atomic_t *v, int a, int u) ++static inline int __intentional_overflow(-1) __atomic_add_unless(atomic_t *v, int a, int u) { - int c, old; + int c, old, new; @@ -14693,7 +14695,7 @@ index 722aa3b..3a0bb27 100644 /* Atomic operations are already serializing on x86 */ #define smp_mb__before_atomic_dec() barrier() diff --git a/arch/x86/include/asm/atomic64_32.h b/arch/x86/include/asm/atomic64_32.h -index b154de7..aadebd8 100644 +index b154de7..bf18a5a 100644 --- a/arch/x86/include/asm/atomic64_32.h +++ b/arch/x86/include/asm/atomic64_32.h @@ -12,6 +12,14 @@ typedef struct { @@ -14797,7 +14799,7 @@ index b154de7..aadebd8 100644 + * + * Atomically reads the value of @v and returns it. + */ -+static inline long long atomic64_read_unchecked(atomic64_unchecked_t *v) ++static inline long long __intentional_overflow(-1) atomic64_read_unchecked(atomic64_unchecked_t *v) +{ + long long r; + alternative_atomic64(read, "=&A" (r), "c" (v) : "memory"); @@ -14868,7 +14870,7 @@ index b154de7..aadebd8 100644 * @i: integer value to subtract * @v: pointer to type atomic64_t diff --git a/arch/x86/include/asm/atomic64_64.h b/arch/x86/include/asm/atomic64_64.h -index 0e1cbfc..5623683 100644 +index 0e1cbfc..a891fc7 100644 --- a/arch/x86/include/asm/atomic64_64.h +++ b/arch/x86/include/asm/atomic64_64.h @@ -18,7 +18,19 @@ @@ -14886,7 +14888,7 @@ index 0e1cbfc..5623683 100644 + * Atomically reads the value of @v. + * Doesn't imply a read memory barrier. + */ -+static inline long atomic64_read_unchecked(const atomic64_unchecked_t *v) ++static inline long __intentional_overflow(-1) atomic64_read_unchecked(const atomic64_unchecked_t *v) +{ + return (*(volatile const long *)&(v)->counter); } @@ -27336,7 +27338,7 @@ index b110fe6..d9c19f2 100644 out: diff --git a/arch/x86/kvm/lapic.c b/arch/x86/kvm/lapic.c -index 5439117..f4d21f7 100644 +index dec48bf..f4d21f7 100644 --- a/arch/x86/kvm/lapic.c +++ b/arch/x86/kvm/lapic.c @@ -55,7 +55,7 @@ @@ -27348,117 +27350,6 @@ index 5439117..f4d21f7 100644 #define APIC_LVT_NUM 6 /* 14 is the version for Xeon and Pentium 8.4.8*/ -@@ -143,6 +143,8 @@ static inline int kvm_apic_id(struct kvm_lapic *apic) - return (kvm_apic_get_reg(apic, APIC_ID) >> 24) & 0xff; - } - -+#define KVM_X2APIC_CID_BITS 0 -+ - static void recalculate_apic_map(struct kvm *kvm) - { - struct kvm_apic_map *new, *old = NULL; -@@ -180,7 +182,8 @@ static void recalculate_apic_map(struct kvm *kvm) - if (apic_x2apic_mode(apic)) { - new->ldr_bits = 32; - new->cid_shift = 16; -- new->cid_mask = new->lid_mask = 0xffff; -+ new->cid_mask = (1 << KVM_X2APIC_CID_BITS) - 1; -+ new->lid_mask = 0xffff; - } else if (kvm_apic_sw_enabled(apic) && - !new->cid_mask /* flat mode */ && - kvm_apic_get_reg(apic, APIC_DFR) == APIC_DFR_CLUSTER) { -@@ -841,7 +844,8 @@ static u32 apic_get_tmcct(struct kvm_lapic *apic) - ASSERT(apic != NULL); - - /* if initial count is 0, current count should also be 0 */ -- if (kvm_apic_get_reg(apic, APIC_TMICT) == 0) -+ if (kvm_apic_get_reg(apic, APIC_TMICT) == 0 || -+ apic->lapic_timer.period == 0) - return 0; - - remaining = hrtimer_get_remaining(&apic->lapic_timer.timer); -@@ -1691,7 +1695,6 @@ static void apic_sync_pv_eoi_from_guest(struct kvm_vcpu *vcpu, - void kvm_lapic_sync_from_vapic(struct kvm_vcpu *vcpu) - { - u32 data; -- void *vapic; - - if (test_bit(KVM_APIC_PV_EOI_PENDING, &vcpu->arch.apic_attention)) - apic_sync_pv_eoi_from_guest(vcpu, vcpu->arch.apic); -@@ -1699,9 +1702,8 @@ void kvm_lapic_sync_from_vapic(struct kvm_vcpu *vcpu) - if (!test_bit(KVM_APIC_CHECK_VAPIC, &vcpu->arch.apic_attention)) - return; - -- vapic = kmap_atomic(vcpu->arch.apic->vapic_page); -- data = *(u32 *)(vapic + offset_in_page(vcpu->arch.apic->vapic_addr)); -- kunmap_atomic(vapic); -+ kvm_read_guest_cached(vcpu->kvm, &vcpu->arch.apic->vapic_cache, &data, -+ sizeof(u32)); - - apic_set_tpr(vcpu->arch.apic, data & 0xff); - } -@@ -1737,7 +1739,6 @@ void kvm_lapic_sync_to_vapic(struct kvm_vcpu *vcpu) - u32 data, tpr; - int max_irr, max_isr; - struct kvm_lapic *apic = vcpu->arch.apic; -- void *vapic; - - apic_sync_pv_eoi_to_guest(vcpu, apic); - -@@ -1753,18 +1754,24 @@ void kvm_lapic_sync_to_vapic(struct kvm_vcpu *vcpu) - max_isr = 0; - data = (tpr & 0xff) | ((max_isr & 0xf0) << 8) | (max_irr << 24); - -- vapic = kmap_atomic(vcpu->arch.apic->vapic_page); -- *(u32 *)(vapic + offset_in_page(vcpu->arch.apic->vapic_addr)) = data; -- kunmap_atomic(vapic); -+ kvm_write_guest_cached(vcpu->kvm, &vcpu->arch.apic->vapic_cache, &data, -+ sizeof(u32)); - } - --void kvm_lapic_set_vapic_addr(struct kvm_vcpu *vcpu, gpa_t vapic_addr) -+int kvm_lapic_set_vapic_addr(struct kvm_vcpu *vcpu, gpa_t vapic_addr) - { -- vcpu->arch.apic->vapic_addr = vapic_addr; -- if (vapic_addr) -+ if (vapic_addr) { -+ if (kvm_gfn_to_hva_cache_init(vcpu->kvm, -+ &vcpu->arch.apic->vapic_cache, -+ vapic_addr, sizeof(u32))) -+ return -EINVAL; - __set_bit(KVM_APIC_CHECK_VAPIC, &vcpu->arch.apic_attention); -- else -+ } else { - __clear_bit(KVM_APIC_CHECK_VAPIC, &vcpu->arch.apic_attention); -+ } -+ -+ vcpu->arch.apic->vapic_addr = vapic_addr; -+ return 0; - } - - int kvm_x2apic_msr_write(struct kvm_vcpu *vcpu, u32 msr, u64 data) -diff --git a/arch/x86/kvm/lapic.h b/arch/x86/kvm/lapic.h -index c730ac9..c8b0d0d 100644 ---- a/arch/x86/kvm/lapic.h -+++ b/arch/x86/kvm/lapic.h -@@ -34,7 +34,7 @@ struct kvm_lapic { - */ - void *regs; - gpa_t vapic_addr; -- struct page *vapic_page; -+ struct gfn_to_hva_cache vapic_cache; - unsigned long pending_events; - unsigned int sipi_vector; - }; -@@ -76,7 +76,7 @@ void kvm_set_lapic_tscdeadline_msr(struct kvm_vcpu *vcpu, u64 data); - void kvm_apic_write_nodecode(struct kvm_vcpu *vcpu, u32 offset); - void kvm_apic_set_eoi_accelerated(struct kvm_vcpu *vcpu, int vector); - --void kvm_lapic_set_vapic_addr(struct kvm_vcpu *vcpu, gpa_t vapic_addr); -+int kvm_lapic_set_vapic_addr(struct kvm_vcpu *vcpu, gpa_t vapic_addr); - void kvm_lapic_sync_from_vapic(struct kvm_vcpu *vcpu); - void kvm_lapic_sync_to_vapic(struct kvm_vcpu *vcpu); - diff --git a/arch/x86/kvm/paging_tmpl.h b/arch/x86/kvm/paging_tmpl.h index ad75d77..a679d32 100644 --- a/arch/x86/kvm/paging_tmpl.h @@ -27660,7 +27551,7 @@ index 2b2fce1..da76be4 100644 vcpu->arch.regs_avail = ~((1 << VCPU_REGS_RIP) | (1 << VCPU_REGS_RSP) diff --git a/arch/x86/kvm/x86.c b/arch/x86/kvm/x86.c -index e5ca72a..0f30b12 100644 +index eb9b9c9..0f30b12 100644 --- a/arch/x86/kvm/x86.c +++ b/arch/x86/kvm/x86.c @@ -1779,8 +1779,8 @@ static int xen_hvm_config(struct kvm_vcpu *vcpu, u64 data) @@ -27683,17 +27574,7 @@ index e5ca72a..0f30b12 100644 if (copy_to_user(user_msr_list->indices, &msrs_to_save, num_msrs_to_save * sizeof(u32))) goto out; -@@ -3192,8 +3194,7 @@ long kvm_arch_vcpu_ioctl(struct file *filp, - r = -EFAULT; - if (copy_from_user(&va, argp, sizeof va)) - goto out; -- r = 0; -- kvm_lapic_set_vapic_addr(vcpu, va.vapic_addr); -+ r = kvm_lapic_set_vapic_addr(vcpu, va.vapic_addr); - break; - } - case KVM_X86_SETUP_MCE: { -@@ -5462,7 +5463,7 @@ static struct notifier_block pvclock_gtod_notifier = { +@@ -5461,7 +5463,7 @@ static struct notifier_block pvclock_gtod_notifier = { }; #endif @@ -27702,64 +27583,6 @@ index e5ca72a..0f30b12 100644 { int r; struct kvm_x86_ops *ops = opaque; -@@ -5718,36 +5719,6 @@ static void post_kvm_run_save(struct kvm_vcpu *vcpu) - !kvm_event_needs_reinjection(vcpu); - } - --static int vapic_enter(struct kvm_vcpu *vcpu) --{ -- struct kvm_lapic *apic = vcpu->arch.apic; -- struct page *page; -- -- if (!apic || !apic->vapic_addr) -- return 0; -- -- page = gfn_to_page(vcpu->kvm, apic->vapic_addr >> PAGE_SHIFT); -- if (is_error_page(page)) -- return -EFAULT; -- -- vcpu->arch.apic->vapic_page = page; -- return 0; --} -- --static void vapic_exit(struct kvm_vcpu *vcpu) --{ -- struct kvm_lapic *apic = vcpu->arch.apic; -- int idx; -- -- if (!apic || !apic->vapic_addr) -- return; -- -- idx = srcu_read_lock(&vcpu->kvm->srcu); -- kvm_release_page_dirty(apic->vapic_page); -- mark_page_dirty(vcpu->kvm, apic->vapic_addr >> PAGE_SHIFT); -- srcu_read_unlock(&vcpu->kvm->srcu, idx); --} -- - static void update_cr8_intercept(struct kvm_vcpu *vcpu) - { - int max_irr, tpr; -@@ -6047,11 +6018,6 @@ static int __vcpu_run(struct kvm_vcpu *vcpu) - struct kvm *kvm = vcpu->kvm; - - vcpu->srcu_idx = srcu_read_lock(&kvm->srcu); -- r = vapic_enter(vcpu); -- if (r) { -- srcu_read_unlock(&kvm->srcu, vcpu->srcu_idx); -- return r; -- } - - r = 1; - while (r > 0) { -@@ -6110,8 +6076,6 @@ static int __vcpu_run(struct kvm_vcpu *vcpu) - - srcu_read_unlock(&kvm->srcu, vcpu->srcu_idx); - -- vapic_exit(vcpu); -- - return r; - } - diff --git a/arch/x86/lguest/boot.c b/arch/x86/lguest/boot.c index bdf8532..f63c587 100644 --- a/arch/x86/lguest/boot.c @@ -34214,11 +34037,11 @@ index a44f457..9140171 100644 #endif } diff --git a/arch/x86/realmode/rm/Makefile b/arch/x86/realmode/rm/Makefile -index 8869287..d577672 100644 +index 9cac825..4890b25 100644 --- a/arch/x86/realmode/rm/Makefile +++ b/arch/x86/realmode/rm/Makefile -@@ -78,5 +78,8 @@ KBUILD_CFLAGS := $(LINUXINCLUDE) -m32 -g -Os -D_SETUP -D__KERNEL__ -D_WAKEUP \ - $(call cc-option, -fno-unit-at-a-time)) \ +@@ -79,5 +79,8 @@ KBUILD_CFLAGS := $(LINUXINCLUDE) -m32 -g -Os -D_SETUP -D__KERNEL__ -D_WAKEUP \ + $(call cc-option, -fno-unit-at-a-time)) \ $(call cc-option, -fno-stack-protector) \ $(call cc-option, -mpreferred-stack-boundary=2) +ifdef CONSTIFY_PLUGIN @@ -39267,10 +39090,10 @@ index 4b91228..590c643 100644 iir = I915_READ(IIR); diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c -index 333aa1b..0183e38 100644 +index f535670..bde09e2 100644 --- a/drivers/gpu/drm/i915/intel_display.c +++ b/drivers/gpu/drm/i915/intel_display.c -@@ -9976,13 +9976,13 @@ struct intel_quirk { +@@ -10019,13 +10019,13 @@ struct intel_quirk { int subsystem_vendor; int subsystem_device; void (*hook)(struct drm_device *dev); @@ -39286,7 +39109,7 @@ index 333aa1b..0183e38 100644 static int intel_dmi_reverse_brightness(const struct dmi_system_id *id) { -@@ -9990,18 +9990,20 @@ static int intel_dmi_reverse_brightness(const struct dmi_system_id *id) +@@ -10033,18 +10033,20 @@ static int intel_dmi_reverse_brightness(const struct dmi_system_id *id) return 1; } @@ -40285,10 +40108,10 @@ index ec0ae2d..dc0780b 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 c08b5c1..6c3d50b 100644 +index aedfe50..1dc929b 100644 --- a/drivers/hid/hid-core.c +++ b/drivers/hid/hid-core.c -@@ -2415,7 +2415,7 @@ EXPORT_SYMBOL_GPL(hid_ignore); +@@ -2416,7 +2416,7 @@ EXPORT_SYMBOL_GPL(hid_ignore); int hid_add_device(struct hid_device *hdev) { @@ -40297,7 +40120,7 @@ index c08b5c1..6c3d50b 100644 int ret; if (WARN_ON(hdev->status & HID_STAT_ADDED)) -@@ -2449,7 +2449,7 @@ int hid_add_device(struct hid_device *hdev) +@@ -2450,7 +2450,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, @@ -42404,7 +42227,7 @@ index 9584443..9fc9ac9 100644 return (test_bit(DM_RAID1_FLUSH_ERROR, &(m->error_type))) ? 'F' : diff --git a/drivers/md/dm-stats.c b/drivers/md/dm-stats.c -index 3d404c1..b62af0e 100644 +index 28a9012..9c0f6a5 100644 --- a/drivers/md/dm-stats.c +++ b/drivers/md/dm-stats.c @@ -382,7 +382,7 @@ do_sync_free: @@ -42470,10 +42293,10 @@ index 73c1712..7347292 100644 schedule_work(&sc->trigger_event); } diff --git a/drivers/md/dm-table.c b/drivers/md/dm-table.c -index 41d907b..34b87ee 100644 +index 20a8cc0..5447b11 100644 --- a/drivers/md/dm-table.c +++ b/drivers/md/dm-table.c -@@ -286,7 +286,7 @@ static struct dm_dev_internal *find_device(struct list_head *l, dev_t dev) +@@ -291,7 +291,7 @@ static struct dm_dev_internal *find_device(struct list_head *l, dev_t dev) static int open_dev(struct dm_dev_internal *d, dev_t dev, struct mapped_device *md) { @@ -42482,7 +42305,7 @@ index 41d907b..34b87ee 100644 struct block_device *bdev; int r; -@@ -354,7 +354,7 @@ static int device_area_is_invalid(struct dm_target *ti, struct dm_dev *dev, +@@ -359,7 +359,7 @@ static int device_area_is_invalid(struct dm_target *ti, struct dm_dev *dev, if (!dev_size) return 0; @@ -42492,7 +42315,7 @@ index 41d907b..34b87ee 100644 "start=%llu, len=%llu, dev_size=%llu", dm_device_name(ti->table->md), bdevname(bdev, b), diff --git a/drivers/md/dm-thin-metadata.c b/drivers/md/dm-thin-metadata.c -index 60bce43..9b997d0 100644 +index 8a30ad5..72792d3 100644 --- a/drivers/md/dm-thin-metadata.c +++ b/drivers/md/dm-thin-metadata.c @@ -397,7 +397,7 @@ static void __setup_btree_details(struct dm_pool_metadata *pmd) @@ -45302,10 +45125,10 @@ index 7aad766..06addb4 100644 data->sku_cap_band_24GHz_enable ? "" : "NOT", "enabled", data->sku_cap_band_52GHz_enable ? "" : "NOT", "enabled", diff --git a/drivers/net/wireless/iwlwifi/pcie/trans.c b/drivers/net/wireless/iwlwifi/pcie/trans.c -index c3f904d..4cadf83 100644 +index 6bc3100..dd1b80d 100644 --- a/drivers/net/wireless/iwlwifi/pcie/trans.c +++ b/drivers/net/wireless/iwlwifi/pcie/trans.c -@@ -1252,7 +1252,7 @@ static ssize_t iwl_dbgfs_interrupt_write(struct file *file, +@@ -1249,7 +1249,7 @@ static ssize_t iwl_dbgfs_interrupt_write(struct file *file, struct isr_statistics *isr_stats = &trans_pcie->isr_stats; char buf[8]; @@ -45314,7 +45137,7 @@ index c3f904d..4cadf83 100644 u32 reset_flag; memset(buf, 0, sizeof(buf)); -@@ -1273,7 +1273,7 @@ static ssize_t iwl_dbgfs_csr_write(struct file *file, +@@ -1270,7 +1270,7 @@ static ssize_t iwl_dbgfs_csr_write(struct file *file, { struct iwl_trans *trans = file->private_data; char buf[8]; @@ -49513,7 +49336,7 @@ index 2a3bbdf..91d72cf 100644 file->f_version = event_count; return POLLIN | POLLRDNORM; diff --git a/drivers/usb/core/devio.c b/drivers/usb/core/devio.c -index 71dc5d7..6135ff2 100644 +index 71dc5d7..300db0e 100644 --- a/drivers/usb/core/devio.c +++ b/drivers/usb/core/devio.c @@ -187,7 +187,7 @@ static ssize_t usbdev_read(struct file *file, char __user *buf, size_t nbytes, @@ -49525,7 +49348,7 @@ index 71dc5d7..6135ff2 100644 loff_t pos; int i; -@@ -229,13 +229,13 @@ static ssize_t usbdev_read(struct file *file, char __user *buf, size_t nbytes, +@@ -229,16 +229,16 @@ static ssize_t usbdev_read(struct file *file, char __user *buf, size_t nbytes, for (i = 0; nbytes && i < dev->descriptor.bNumConfigurations; i++) { struct usb_config_descriptor *config = (struct usb_config_descriptor *)dev->rawdescriptors[i]; @@ -49540,7 +49363,11 @@ index 71dc5d7..6135ff2 100644 + size_t alloclen = le16_to_cpu(dev->config[i].desc.wTotalLength); - len = length - (*ppos - pos); +- len = length - (*ppos - pos); ++ len = length + pos - *ppos; + if (len > nbytes) + len = nbytes; + diff --git a/drivers/usb/core/hcd.c b/drivers/usb/core/hcd.c index f20a044..d1059aa 100644 --- a/drivers/usb/core/hcd.c @@ -49564,7 +49391,7 @@ index f20a044..d1059aa 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 243c672..8b66fbb 100644 +index c5c3667..e54e5cd 100644 --- a/drivers/usb/core/hub.c +++ b/drivers/usb/core/hub.c @@ -27,6 +27,7 @@ @@ -49644,7 +49471,7 @@ index 0a6ee2e..6f8d7e8 100644 INIT_LIST_HEAD(&dev->ep0.urb_list); dev->ep0.desc.bLength = USB_DT_ENDPOINT_SIZE; diff --git a/drivers/usb/dwc3/gadget.c b/drivers/usb/dwc3/gadget.c -index 5452c0f..34c9145 100644 +index 02e44fc..3c4fe64 100644 --- a/drivers/usb/dwc3/gadget.c +++ b/drivers/usb/dwc3/gadget.c @@ -532,8 +532,6 @@ static int __dwc3_gadget_ep_enable(struct dwc3_ep *dep, @@ -53584,7 +53411,7 @@ index 89dec7f..361b0d75 100644 fd_offset + ex.a_text); if (error != N_DATADDR(ex)) { diff --git a/fs/binfmt_elf.c b/fs/binfmt_elf.c -index 4c94a79..2610454 100644 +index 4c94a79..228e9da 100644 --- a/fs/binfmt_elf.c +++ b/fs/binfmt_elf.c @@ -34,6 +34,7 @@ @@ -53753,7 +53580,7 @@ index 4c94a79..2610454 100644 } error = load_addr; -@@ -538,6 +569,315 @@ out: +@@ -538,6 +569,322 @@ out: return error; } @@ -53987,34 +53814,41 @@ index 4c94a79..2610454 100644 + unsigned long pax_flags_hardmode = 0UL, pax_flags_softmode = 0UL; + + xattr_size = pax_getxattr(file->f_path.dentry, xattr_value, sizeof xattr_value); -+ if (xattr_size <= 0 || xattr_size > sizeof xattr_value) ++ switch (xattr_size) { ++ default: + return ~0UL; + -+ for (i = 0; i < xattr_size; i++) -+ switch (xattr_value[i]) { -+ default: -+ return ~0UL; -+ -+#define parse_flag(option1, option2, flag) \ -+ case option1: \ -+ if (pax_flags_hardmode & MF_PAX_##flag) \ -+ return ~0UL; \ -+ pax_flags_hardmode |= MF_PAX_##flag; \ -+ break; \ -+ case option2: \ -+ if (pax_flags_softmode & MF_PAX_##flag) \ -+ return ~0UL; \ -+ pax_flags_softmode |= MF_PAX_##flag; \ -+ break; ++ case -ENODATA: ++ break; + -+ parse_flag('p', 'P', PAGEEXEC); -+ parse_flag('e', 'E', EMUTRAMP); -+ parse_flag('m', 'M', MPROTECT); -+ parse_flag('r', 'R', RANDMMAP); -+ parse_flag('s', 'S', SEGMEXEC); ++ case 0 ... sizeof xattr_value: ++ for (i = 0; i < xattr_size; i++) ++ switch (xattr_value[i]) { ++ default: ++ return ~0UL; ++ ++#define parse_flag(option1, option2, flag) \ ++ case option1: \ ++ if (pax_flags_hardmode & MF_PAX_##flag) \ ++ return ~0UL; \ ++ pax_flags_hardmode |= MF_PAX_##flag; \ ++ break; \ ++ case option2: \ ++ if (pax_flags_softmode & MF_PAX_##flag) \ ++ return ~0UL; \ ++ pax_flags_softmode |= MF_PAX_##flag; \ ++ break; ++ ++ parse_flag('p', 'P', PAGEEXEC); ++ parse_flag('e', 'E', EMUTRAMP); ++ parse_flag('m', 'M', MPROTECT); ++ parse_flag('r', 'R', RANDMMAP); ++ parse_flag('s', 'S', SEGMEXEC); + +#undef parse_flag -+ } ++ } ++ break; ++ } + + if (pax_flags_hardmode & pax_flags_softmode) + return ~0UL; @@ -54069,7 +53903,7 @@ index 4c94a79..2610454 100644 /* * These are the functions used to load ELF style executables and shared * libraries. There is no binary dependent code anywhere else. -@@ -554,6 +894,11 @@ static unsigned long randomize_stack_top(unsigned long stack_top) +@@ -554,6 +901,11 @@ static unsigned long randomize_stack_top(unsigned long stack_top) { unsigned int random_variable = 0; @@ -54081,7 +53915,7 @@ index 4c94a79..2610454 100644 if ((current->flags & PF_RANDOMIZE) && !(current->personality & ADDR_NO_RANDOMIZE)) { random_variable = get_random_int() & STACK_RND_MASK; -@@ -572,7 +917,7 @@ static int load_elf_binary(struct linux_binprm *bprm) +@@ -572,7 +924,7 @@ static int load_elf_binary(struct linux_binprm *bprm) unsigned long load_addr = 0, load_bias = 0; int load_addr_set = 0; char * elf_interpreter = NULL; @@ -54090,7 +53924,7 @@ index 4c94a79..2610454 100644 struct elf_phdr *elf_ppnt, *elf_phdata; unsigned long elf_bss, elf_brk; int retval, i; -@@ -582,12 +927,12 @@ static int load_elf_binary(struct linux_binprm *bprm) +@@ -582,12 +934,12 @@ static int load_elf_binary(struct linux_binprm *bprm) unsigned long start_code, end_code, start_data, end_data; unsigned long reloc_func_desc __maybe_unused = 0; int executable_stack = EXSTACK_DEFAULT; @@ -54104,7 +53938,7 @@ index 4c94a79..2610454 100644 loc = kmalloc(sizeof(*loc), GFP_KERNEL); if (!loc) { -@@ -723,11 +1068,82 @@ static int load_elf_binary(struct linux_binprm *bprm) +@@ -723,11 +1075,82 @@ static int load_elf_binary(struct linux_binprm *bprm) goto out_free_dentry; /* OK, This is the point of no return */ @@ -54188,7 +54022,7 @@ index 4c94a79..2610454 100644 if (elf_read_implies_exec(loc->elf_ex, executable_stack)) current->personality |= READ_IMPLIES_EXEC; -@@ -817,6 +1233,20 @@ static int load_elf_binary(struct linux_binprm *bprm) +@@ -817,6 +1240,20 @@ static int load_elf_binary(struct linux_binprm *bprm) #else load_bias = ELF_PAGESTART(ELF_ET_DYN_BASE - vaddr); #endif @@ -54209,7 +54043,7 @@ index 4c94a79..2610454 100644 } error = elf_map(bprm->file, load_bias + vaddr, elf_ppnt, -@@ -849,9 +1279,9 @@ static int load_elf_binary(struct linux_binprm *bprm) +@@ -849,9 +1286,9 @@ static int load_elf_binary(struct linux_binprm *bprm) * allowed task size. Note that p_filesz must always be * <= p_memsz so it is only necessary to check p_memsz. */ @@ -54222,7 +54056,7 @@ index 4c94a79..2610454 100644 /* set_brk can never work. Avoid overflows. */ send_sig(SIGKILL, current, 0); retval = -EINVAL; -@@ -890,17 +1320,45 @@ static int load_elf_binary(struct linux_binprm *bprm) +@@ -890,17 +1327,45 @@ static int load_elf_binary(struct linux_binprm *bprm) goto out_free_dentry; } if (likely(elf_bss != elf_brk) && unlikely(padzero(elf_bss))) { @@ -54274,7 +54108,7 @@ index 4c94a79..2610454 100644 load_bias); if (!IS_ERR((void *)elf_entry)) { /* -@@ -1122,7 +1580,7 @@ static bool always_dump_vma(struct vm_area_struct *vma) +@@ -1122,7 +1587,7 @@ static bool always_dump_vma(struct vm_area_struct *vma) * Decide what to dump of a segment, part, all or none. */ static unsigned long vma_dump_size(struct vm_area_struct *vma, @@ -54283,7 +54117,7 @@ index 4c94a79..2610454 100644 { #define FILTER(type) (mm_flags & (1UL << MMF_DUMP_##type)) -@@ -1160,7 +1618,7 @@ static unsigned long vma_dump_size(struct vm_area_struct *vma, +@@ -1160,7 +1625,7 @@ static unsigned long vma_dump_size(struct vm_area_struct *vma, if (vma->vm_file == NULL) return 0; @@ -54292,7 +54126,7 @@ index 4c94a79..2610454 100644 goto whole; /* -@@ -1385,9 +1843,9 @@ static void fill_auxv_note(struct memelfnote *note, struct mm_struct *mm) +@@ -1385,9 +1850,9 @@ static void fill_auxv_note(struct memelfnote *note, struct mm_struct *mm) { elf_addr_t *auxv = (elf_addr_t *) mm->saved_auxv; int i = 0; @@ -54304,7 +54138,7 @@ index 4c94a79..2610454 100644 fill_note(note, "CORE", NT_AUXV, i * sizeof(elf_addr_t), auxv); } -@@ -1396,7 +1854,7 @@ static void fill_siginfo_note(struct memelfnote *note, user_siginfo_t *csigdata, +@@ -1396,7 +1861,7 @@ static void fill_siginfo_note(struct memelfnote *note, user_siginfo_t *csigdata, { mm_segment_t old_fs = get_fs(); set_fs(KERNEL_DS); @@ -54313,7 +54147,7 @@ index 4c94a79..2610454 100644 set_fs(old_fs); fill_note(note, "CORE", NT_SIGINFO, sizeof(*csigdata), csigdata); } -@@ -2023,14 +2481,14 @@ static void fill_extnum_info(struct elfhdr *elf, struct elf_shdr *shdr4extnum, +@@ -2023,14 +2488,14 @@ static void fill_extnum_info(struct elfhdr *elf, struct elf_shdr *shdr4extnum, } static size_t elf_core_vma_data_size(struct vm_area_struct *gate_vma, @@ -54330,7 +54164,7 @@ index 4c94a79..2610454 100644 return size; } -@@ -2123,7 +2581,7 @@ static int elf_core_dump(struct coredump_params *cprm) +@@ -2123,7 +2588,7 @@ static int elf_core_dump(struct coredump_params *cprm) dataoff = offset = roundup(offset, ELF_EXEC_PAGESIZE); @@ -54339,7 +54173,7 @@ index 4c94a79..2610454 100644 offset += elf_core_extra_data_size(); e_shoff = offset; -@@ -2137,10 +2595,12 @@ static int elf_core_dump(struct coredump_params *cprm) +@@ -2137,10 +2602,12 @@ static int elf_core_dump(struct coredump_params *cprm) offset = dataoff; size += sizeof(*elf); @@ -54352,7 +54186,7 @@ index 4c94a79..2610454 100644 if (size > cprm->limit || !dump_write(cprm->file, phdr4note, sizeof(*phdr4note))) goto end_coredump; -@@ -2154,7 +2614,7 @@ static int elf_core_dump(struct coredump_params *cprm) +@@ -2154,7 +2621,7 @@ static int elf_core_dump(struct coredump_params *cprm) phdr.p_offset = offset; phdr.p_vaddr = vma->vm_start; phdr.p_paddr = 0; @@ -54361,7 +54195,7 @@ index 4c94a79..2610454 100644 phdr.p_memsz = vma->vm_end - vma->vm_start; offset += phdr.p_filesz; phdr.p_flags = vma->vm_flags & VM_READ ? PF_R : 0; -@@ -2165,6 +2625,7 @@ static int elf_core_dump(struct coredump_params *cprm) +@@ -2165,6 +2632,7 @@ static int elf_core_dump(struct coredump_params *cprm) phdr.p_align = ELF_EXEC_PAGESIZE; size += sizeof(phdr); @@ -54369,7 +54203,7 @@ index 4c94a79..2610454 100644 if (size > cprm->limit || !dump_write(cprm->file, &phdr, sizeof(phdr))) goto end_coredump; -@@ -2189,7 +2650,7 @@ static int elf_core_dump(struct coredump_params *cprm) +@@ -2189,7 +2657,7 @@ static int elf_core_dump(struct coredump_params *cprm) unsigned long addr; unsigned long end; @@ -54378,7 +54212,7 @@ index 4c94a79..2610454 100644 for (addr = vma->vm_start; addr < end; addr += PAGE_SIZE) { struct page *page; -@@ -2198,6 +2659,7 @@ static int elf_core_dump(struct coredump_params *cprm) +@@ -2198,6 +2666,7 @@ static int elf_core_dump(struct coredump_params *cprm) page = get_dump_page(addr); if (page) { void *kaddr = kmap(page); @@ -54386,7 +54220,7 @@ index 4c94a79..2610454 100644 stop = ((size += PAGE_SIZE) > cprm->limit) || !dump_write(cprm->file, kaddr, PAGE_SIZE); -@@ -2215,6 +2677,7 @@ static int elf_core_dump(struct coredump_params *cprm) +@@ -2215,6 +2684,7 @@ static int elf_core_dump(struct coredump_params *cprm) if (e_phnum == PN_XNUM) { size += sizeof(*shdr4extnum); @@ -54394,7 +54228,7 @@ index 4c94a79..2610454 100644 if (size > cprm->limit || !dump_write(cprm->file, shdr4extnum, sizeof(*shdr4extnum))) -@@ -2235,6 +2698,167 @@ out: +@@ -2235,6 +2705,167 @@ out: #endif /* CONFIG_ELF_CORE */ @@ -54643,7 +54477,7 @@ index 1e86823..8e34695 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 61b5bcd..7eeede8 100644 +index b544a44..f3fb987 100644 --- a/fs/btrfs/ctree.c +++ b/fs/btrfs/ctree.c @@ -1028,9 +1028,12 @@ static noinline int __btrfs_cow_block(struct btrfs_trans_handle *trans, @@ -54716,10 +54550,10 @@ index a4b38f9..f86a509 100644 spin_lock_init(&delayed_root->lock); init_waitqueue_head(&delayed_root->wait); diff --git a/fs/btrfs/ioctl.c b/fs/btrfs/ioctl.c -index 9d46f60..a8f09eb 100644 +index 8747feb..ad1655c 100644 --- a/fs/btrfs/ioctl.c +++ b/fs/btrfs/ioctl.c -@@ -3464,9 +3464,12 @@ static long btrfs_ioctl_space_info(struct btrfs_root *root, void __user *arg) +@@ -3465,9 +3465,12 @@ static long btrfs_ioctl_space_info(struct btrfs_root *root, void __user *arg) for (i = 0; i < num_types; i++) { struct btrfs_space_info *tmp; @@ -54732,7 +54566,7 @@ index 9d46f60..a8f09eb 100644 info = NULL; rcu_read_lock(); list_for_each_entry_rcu(tmp, &root->fs_info->space_info, -@@ -3488,10 +3491,7 @@ static long btrfs_ioctl_space_info(struct btrfs_root *root, void __user *arg) +@@ -3489,10 +3492,7 @@ static long btrfs_ioctl_space_info(struct btrfs_root *root, void __user *arg) memcpy(dest, &space, sizeof(space)); dest++; space_args.total_spaces++; @@ -54756,19 +54590,6 @@ index e913328..a34fb36 100644 /* Wake up anybody who may be waiting on this transaction */ wake_up(&root->fs_info->transaction_wait); wake_up(&root->fs_info->transaction_blocked_wait); -diff --git a/fs/btrfs/tree-log.c b/fs/btrfs/tree-log.c -index 79f057c..e14e1f7 100644 ---- a/fs/btrfs/tree-log.c -+++ b/fs/btrfs/tree-log.c -@@ -3375,7 +3375,7 @@ static int log_one_extent(struct btrfs_trans_handle *trans, - btrfs_set_token_file_extent_type(leaf, fi, - BTRFS_FILE_EXTENT_REG, - &token); -- if (em->block_start == 0) -+ if (em->block_start == EXTENT_MAP_HOLE) - skip_csum = true; - } - diff --git a/fs/buffer.c b/fs/buffer.c index 6024877..7bd000a 100644 --- a/fs/buffer.c @@ -56992,7 +56813,7 @@ index 999ff5c..41f4109 100644 sizeof(struct file_handle) + handle_bytes)) retval = -EFAULT; diff --git a/fs/file.c b/fs/file.c -index 4a78f98..9447397 100644 +index 4a78f98..f9a6d25 100644 --- a/fs/file.c +++ b/fs/file.c @@ -16,6 +16,7 @@ @@ -57003,6 +56824,24 @@ index 4a78f98..9447397 100644 #include <linux/fdtable.h> #include <linux/bitops.h> #include <linux/interrupt.h> +@@ -141,7 +142,7 @@ 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. + */ +-static int expand_fdtable(struct files_struct *files, int nr) ++static int expand_fdtable(struct files_struct *files, unsigned int nr) + __releases(files->file_lock) + __acquires(files->file_lock) + { +@@ -186,7 +187,7 @@ 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. + */ +-static int expand_files(struct files_struct *files, int nr) ++static int expand_files(struct files_struct *files, unsigned int nr) + { + struct fdtable *fdt; + @@ -828,6 +829,7 @@ int replace_fd(unsigned fd, struct file *file, unsigned flags) if (!file) return __close_fd(files, fd); @@ -59543,10 +59382,10 @@ index ecc735e..79b2d31 100644 }; diff --git a/fs/nfsd/nfscache.c b/fs/nfsd/nfscache.c -index 9186c7c..3fdde3e 100644 +index b6af150..f6ec5e3 100644 --- a/fs/nfsd/nfscache.c +++ b/fs/nfsd/nfscache.c -@@ -540,14 +540,17 @@ nfsd_cache_update(struct svc_rqst *rqstp, int cachetype, __be32 *statp) +@@ -547,14 +547,17 @@ nfsd_cache_update(struct svc_rqst *rqstp, int cachetype, __be32 *statp) { struct svc_cacherep *rp = rqstp->rq_cacherep; struct kvec *resv = &rqstp->rq_res.head[0], *cachv; @@ -62018,7 +61857,7 @@ index 3b7ee65..87fc2e4 100644 pipe_unlock(ipipe); diff --git a/fs/stat.c b/fs/stat.c -index d0ea7ef..f463f9d 100644 +index ae0c3ce..9ee641c 100644 --- a/fs/stat.c +++ b/fs/stat.c @@ -28,8 +28,13 @@ void generic_fillattr(struct inode *inode, struct kstat *stat) @@ -62037,9 +61876,11 @@ index d0ea7ef..f463f9d 100644 stat->ctime = inode->i_ctime; stat->blksize = (1 << inode->i_blkbits); stat->blocks = inode->i_blocks; -@@ -46,8 +51,14 @@ int vfs_getattr(struct path *path, struct kstat *stat) - if (retval) - return retval; +@@ -52,9 +57,16 @@ EXPORT_SYMBOL(generic_fillattr); + int vfs_getattr_nosec(struct path *path, struct kstat *stat) + { + struct inode *inode = path->dentry->d_inode; ++ int retval; - if (inode->i_op->getattr) - return inode->i_op->getattr(path->mnt, path->dentry, stat); @@ -62394,7 +62235,7 @@ index 8f84153..7ce60d0 100644 return 0; sfep = xfs_dir3_sf_nextentry(mp, sfp, sfep); diff --git a/fs/xfs/xfs_ioctl.c b/fs/xfs/xfs_ioctl.c -index 2e1e6c3..689f742 100644 +index 8c8ef24..689f742 100644 --- a/fs/xfs/xfs_ioctl.c +++ b/fs/xfs/xfs_ioctl.c @@ -127,7 +127,7 @@ xfs_find_handle( @@ -62406,30 +62247,6 @@ index 2e1e6c3..689f742 100644 copy_to_user(hreq->ohandlen, &hsize, sizeof(__s32))) goto out_put; -@@ -443,7 +443,8 @@ xfs_attrlist_by_handle( - return -XFS_ERROR(EPERM); - if (copy_from_user(&al_hreq, arg, sizeof(xfs_fsop_attrlist_handlereq_t))) - return -XFS_ERROR(EFAULT); -- if (al_hreq.buflen > XATTR_LIST_MAX) -+ if (al_hreq.buflen < sizeof(struct attrlist) || -+ al_hreq.buflen > XATTR_LIST_MAX) - return -XFS_ERROR(EINVAL); - - /* -diff --git a/fs/xfs/xfs_ioctl32.c b/fs/xfs/xfs_ioctl32.c -index f671f7e..53365c6 100644 ---- a/fs/xfs/xfs_ioctl32.c -+++ b/fs/xfs/xfs_ioctl32.c -@@ -357,7 +357,8 @@ xfs_compat_attrlist_by_handle( - if (copy_from_user(&al_hreq, arg, - sizeof(compat_xfs_fsop_attrlist_handlereq_t))) - return -XFS_ERROR(EFAULT); -- if (al_hreq.buflen > XATTR_LIST_MAX) -+ if (al_hreq.buflen < sizeof(struct attrlist) || -+ al_hreq.buflen > XATTR_LIST_MAX) - return -XFS_ERROR(EINVAL); - - /* diff --git a/fs/xfs/xfs_iops.c b/fs/xfs/xfs_iops.c index 2b8952d..a60c6be 100644 --- a/fs/xfs/xfs_iops.c @@ -73248,7 +73065,7 @@ index 77ff547..181834f 100644 #define pud_none(pud) 0 #define pud_bad(pud) 0 diff --git a/include/asm-generic/atomic-long.h b/include/asm-generic/atomic-long.h -index b7babf0..04ad282 100644 +index b7babf0..97f4c4f 100644 --- a/include/asm-generic/atomic-long.h +++ b/include/asm-generic/atomic-long.h @@ -22,6 +22,12 @@ @@ -73360,7 +73177,15 @@ index b7babf0..04ad282 100644 static inline int atomic_long_sub_and_test(long i, atomic_long_t *l) { atomic64_t *v = (atomic64_t *)l; -@@ -101,6 +161,15 @@ static inline long atomic_long_add_return(long i, atomic_long_t *l) +@@ -94,13 +154,22 @@ static inline int atomic_long_add_negative(long i, atomic_long_t *l) + return atomic64_add_negative(i, v); + } + +-static inline long atomic_long_add_return(long i, atomic_long_t *l) ++static inline long __intentional_overflow(-1) atomic_long_add_return(long i, atomic_long_t *l) + { + atomic64_t *v = (atomic64_t *)l; + return (long)atomic64_add_return(i, v); } @@ -74821,7 +74646,7 @@ index 8293262..2b3b8bd 100644 extern bool frontswap_enabled; extern struct frontswap_ops * diff --git a/include/linux/fs.h b/include/linux/fs.h -index fefa7b0..5e04a8b 100644 +index 164d2a9..0ffa41d0 100644 --- a/include/linux/fs.h +++ b/include/linux/fs.h @@ -1552,7 +1552,8 @@ struct file_operations { @@ -74834,7 +74659,7 @@ index fefa7b0..5e04a8b 100644 struct inode_operations { struct dentry * (*lookup) (struct inode *,struct dentry *, unsigned int); -@@ -2746,4 +2747,14 @@ static inline bool dir_relax(struct inode *inode) +@@ -2747,4 +2748,14 @@ static inline bool dir_relax(struct inode *inode) return !IS_DEADDIR(inode); } @@ -79156,7 +78981,7 @@ index 99c1b4d..562e6f3 100644 static inline void put_unaligned_le16(u16 val, void *p) diff --git a/include/linux/usb.h b/include/linux/usb.h -index 39cfa0a..d45fa38 100644 +index 6b02370..2355ffa 100644 --- a/include/linux/usb.h +++ b/include/linux/usb.h @@ -563,7 +563,7 @@ struct usb_device { @@ -79168,7 +78993,7 @@ index 39cfa0a..d45fa38 100644 unsigned long active_duration; -@@ -1637,7 +1637,7 @@ void usb_buffer_unmap_sg(const struct usb_device *dev, int is_in, +@@ -1639,7 +1639,7 @@ void usb_buffer_unmap_sg(const struct usb_device *dev, int is_in, extern int usb_control_msg(struct usb_device *dev, unsigned int pipe, __u8 request, __u8 requesttype, __u16 value, __u16 index, @@ -82565,7 +82390,7 @@ index 086fe73..72c1122 100644 else new_fs = fs; diff --git a/kernel/futex.c b/kernel/futex.c -index c3a1a55..1b8cfce 100644 +index 221a58f..1b8cfce 100644 --- a/kernel/futex.c +++ b/kernel/futex.c @@ -54,6 +54,7 @@ @@ -82588,15 +82413,6 @@ index c3a1a55..1b8cfce 100644 /* * The futex address must be "naturally" aligned. */ -@@ -288,7 +294,7 @@ again: - put_page(page); - /* serialize against __split_huge_page_splitting() */ - local_irq_disable(); -- if (likely(__get_user_pages_fast(address, 1, 1, &page) == 1)) { -+ if (likely(__get_user_pages_fast(address, 1, !ro, &page) == 1)) { - page_head = compound_head(page); - /* - * page_head is valid pointer but we must pin @@ -441,7 +447,7 @@ static int cmpxchg_futex_value_locked(u32 *curval, u32 __user *uaddr, static int get_futex_value_locked(u32 *dest, u32 __user *from) @@ -82863,10 +82679,10 @@ index e30ac0f..3528cac 100644 /* diff --git a/kernel/kexec.c b/kernel/kexec.c -index 2a74f30..d139351 100644 +index ecd783d..9aa270c 100644 --- a/kernel/kexec.c +++ b/kernel/kexec.c -@@ -1041,7 +1041,8 @@ asmlinkage long compat_sys_kexec_load(unsigned long entry, +@@ -1044,7 +1044,8 @@ asmlinkage long compat_sys_kexec_load(unsigned long entry, unsigned long flags) { struct compat_kexec_segment in; @@ -85668,7 +85484,7 @@ index 5ac63c9..d912786 100644 #else static void register_sched_domain_sysctl(void) diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c -index 7c70201..23f52b6 100644 +index 513fc2f..906a851 100644 --- a/kernel/sched/fair.c +++ b/kernel/sched/fair.c @@ -869,7 +869,7 @@ void task_numa_fault(int node, int pages, bool migrated) @@ -85680,7 +85496,7 @@ index 7c70201..23f52b6 100644 p->mm->numa_scan_offset = 0; } -@@ -5838,7 +5838,7 @@ static void nohz_idle_balance(int this_cpu, enum cpu_idle_type idle) { } +@@ -5840,7 +5840,7 @@ static void nohz_idle_balance(int this_cpu, 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). */ @@ -95083,7 +94899,7 @@ index 4b85e6f..22f9ac9 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 f60b1ee..40b401c 100644 +index 5e2c2f1..6473c22 100644 --- a/net/ipv4/udp.c +++ b/net/ipv4/udp.c @@ -87,6 +87,7 @@ @@ -95134,7 +94950,7 @@ index f60b1ee..40b401c 100644 daddr = inet->inet_daddr; dport = inet->inet_dport; /* Open fast path for connected socket. -@@ -1144,7 +1161,7 @@ static unsigned int first_packet_length(struct sock *sk) +@@ -1141,7 +1158,7 @@ static unsigned int first_packet_length(struct sock *sk) IS_UDPLITE(sk)); UDP_INC_STATS_BH(sock_net(sk), UDP_MIB_INERRORS, IS_UDPLITE(sk)); @@ -95143,7 +94959,7 @@ index f60b1ee..40b401c 100644 __skb_unlink(skb, rcvq); __skb_queue_tail(&list_kill, skb); } -@@ -1224,6 +1241,10 @@ try_again: +@@ -1221,6 +1238,10 @@ try_again: if (!skb) goto out; @@ -95154,7 +94970,7 @@ index f60b1ee..40b401c 100644 ulen = skb->len - sizeof(struct udphdr); copied = len; if (copied > ulen) -@@ -1257,7 +1278,7 @@ try_again: +@@ -1254,7 +1275,7 @@ try_again: if (unlikely(err)) { trace_kfree_skb(skb, udp_recvmsg); if (!peeked) { @@ -95163,7 +94979,7 @@ index f60b1ee..40b401c 100644 UDP_INC_STATS_USER(sock_net(sk), UDP_MIB_INERRORS, is_udplite); } -@@ -1545,7 +1566,7 @@ csum_error: +@@ -1542,7 +1563,7 @@ csum_error: UDP_INC_STATS_BH(sock_net(sk), UDP_MIB_CSUMERRORS, is_udplite); drop: UDP_INC_STATS_BH(sock_net(sk), UDP_MIB_INERRORS, is_udplite); @@ -95172,7 +94988,7 @@ index f60b1ee..40b401c 100644 kfree_skb(skb); return -1; } -@@ -1564,7 +1585,7 @@ static void flush_stack(struct sock **stack, unsigned int count, +@@ -1561,7 +1582,7 @@ static void flush_stack(struct sock **stack, unsigned int count, skb1 = (i == final) ? skb : skb_clone(skb, GFP_ATOMIC); if (!skb1) { @@ -95181,7 +94997,7 @@ index f60b1ee..40b401c 100644 UDP_INC_STATS_BH(sock_net(sk), UDP_MIB_RCVBUFERRORS, IS_UDPLITE(sk)); UDP_INC_STATS_BH(sock_net(sk), UDP_MIB_INERRORS, -@@ -1736,6 +1757,9 @@ int __udp4_lib_rcv(struct sk_buff *skb, struct udp_table *udptable, +@@ -1733,6 +1754,9 @@ int __udp4_lib_rcv(struct sk_buff *skb, struct udp_table *udptable, goto csum_error; UDP_INC_STATS_BH(net, UDP_MIB_NOPORTS, proto == IPPROTO_UDPLITE); @@ -95191,7 +95007,7 @@ index f60b1ee..40b401c 100644 icmp_send(skb, ICMP_DEST_UNREACH, ICMP_PORT_UNREACH, 0); /* -@@ -2168,7 +2192,7 @@ static void udp4_format_sock(struct sock *sp, struct seq_file *f, +@@ -2165,7 +2189,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, @@ -96052,7 +95868,7 @@ index 545f047..9757a9d 100644 return res; } diff --git a/net/mac80211/cfg.c b/net/mac80211/cfg.c -index 629dee7..4bdd2c8 100644 +index 9903ee5..18978be 100644 --- a/net/mac80211/cfg.c +++ b/net/mac80211/cfg.c @@ -826,7 +826,7 @@ static int ieee80211_set_monitor_channel(struct wiphy *wiphy, @@ -96064,7 +95880,7 @@ index 629dee7..4bdd2c8 100644 local->_oper_chandef = *chandef; ieee80211_hw_config(local, 0); } -@@ -3125,7 +3125,7 @@ static void ieee80211_mgmt_frame_register(struct wiphy *wiphy, +@@ -3124,7 +3124,7 @@ static void ieee80211_mgmt_frame_register(struct wiphy *wiphy, else local->probe_req_reg--; @@ -96073,7 +95889,7 @@ index 629dee7..4bdd2c8 100644 break; ieee80211_queue_work(&local->hw, &local->reconfig_filter); -@@ -3588,8 +3588,8 @@ static int ieee80211_cfg_get_channel(struct wiphy *wiphy, +@@ -3587,8 +3587,8 @@ static int ieee80211_cfg_get_channel(struct wiphy *wiphy, if (chanctx_conf) { *chandef = chanctx_conf->def; ret = 0; @@ -96182,7 +95998,7 @@ index fcecd63..a404454 100644 } diff --git a/net/mac80211/main.c b/net/mac80211/main.c -index 21d5d44..4fee18a 100644 +index e765f77..dfd72e7 100644 --- a/net/mac80211/main.c +++ b/net/mac80211/main.c @@ -172,7 +172,7 @@ int ieee80211_hw_config(struct ieee80211_local *local, u32 changed) @@ -100381,10 +100197,10 @@ index fc3e662..7844c60 100644 lock = &avc_cache.slots_lock[hvalue]; diff --git a/security/selinux/hooks.c b/security/selinux/hooks.c -index 5b52310..da3bf8e 100644 +index d9a78fd..5038314 100644 --- a/security/selinux/hooks.c +++ b/security/selinux/hooks.c -@@ -5603,7 +5603,7 @@ static int selinux_key_getsecurity(struct key *key, char **_buffer) +@@ -5662,7 +5662,7 @@ static int selinux_key_getsecurity(struct key *key, char **_buffer) #endif @@ -100393,7 +100209,7 @@ index 5b52310..da3bf8e 100644 .name = "selinux", .ptrace_access_check = selinux_ptrace_access_check, -@@ -5955,6 +5955,9 @@ static void selinux_nf_ip_exit(void) +@@ -6014,6 +6014,9 @@ static void selinux_nf_ip_exit(void) #ifdef CONFIG_SECURITY_SELINUX_DISABLE static int selinux_disabled; @@ -100403,7 +100219,7 @@ index 5b52310..da3bf8e 100644 int selinux_disable(void) { if (ss_initialized) { -@@ -5972,7 +5975,9 @@ int selinux_disable(void) +@@ -6031,7 +6034,9 @@ int selinux_disable(void) selinux_disabled = 1; selinux_enabled = 0; @@ -103154,10 +102970,10 @@ index 0000000..679b9ef +} diff --git a/tools/gcc/size_overflow_hash.data b/tools/gcc/size_overflow_hash.data new file mode 100644 -index 0000000..7dad2cd +index 0000000..a0c9844 --- /dev/null +++ b/tools/gcc/size_overflow_hash.data -@@ -0,0 +1,7690 @@ +@@ -0,0 +1,7723 @@ +intel_fake_agp_alloc_by_type_1 intel_fake_agp_alloc_by_type 1 1 NULL +ocfs2_get_refcount_tree_3 ocfs2_get_refcount_tree 0 3 NULL +batadv_orig_node_del_if_4 batadv_orig_node_del_if 2 4 NULL @@ -103172,8 +102988,8 @@ index 0000000..7dad2cd +snd_korg1212_copy_to_92 snd_korg1212_copy_to 6 92 NULL +load_msg_95 load_msg 2 95 NULL +device_flush_iotlb_115 device_flush_iotlb 2-3 115 NULL -+write_all_supers_117 write_all_supers 0 117 NULL nohasharray -+ipath_verbs_send_117 ipath_verbs_send 5-3 117 &write_all_supers_117 ++ipath_verbs_send_117 ipath_verbs_send 5-3 117 NULL nohasharray ++write_all_supers_117 write_all_supers 0 117 &ipath_verbs_send_117 +init_q_132 init_q 4 132 NULL +ocfs2_local_alloc_slide_window_134 ocfs2_local_alloc_slide_window 0 134 NULL +memstick_alloc_host_142 memstick_alloc_host 1 142 NULL @@ -103312,6 +103128,7 @@ index 0000000..7dad2cd +file_read_actor_1401 file_read_actor 4 1401 NULL +vb2_vmalloc_alloc_1402 vb2_vmalloc_alloc 2 1402 NULL +cfs_trace_copyout_string_1416 cfs_trace_copyout_string 2 1416 NULL ++pq_init_1423 pq_init 1 1423 NULL +init_rs_internal_1436 init_rs_internal 1 1436 NULL +vb2_dc_get_user_pages_1442 vb2_dc_get_user_pages 1-3 1442 NULL +stack_max_size_read_1445 stack_max_size_read 3 1445 NULL @@ -103473,7 +103290,7 @@ index 0000000..7dad2cd +__swab64p_2875 __swab64p 0 2875 NULL +nla_padlen_2883 nla_padlen 1 2883 NULL +cmm_write_2896 cmm_write 3 2896 NULL -+alloc_page_cgroup_2919 alloc_page_cgroup 1 2919 NULL ++alloc_page_cgroup_2919 alloc_page_cgroup 1-2 2919 NULL +osc_import_seq_write_2923 osc_import_seq_write 3 2923 NULL +xfs_trans_get_buf_map_2927 xfs_trans_get_buf_map 4 2927 NULL +nes_read_indexed_2946 nes_read_indexed 0 2946 NULL @@ -103581,7 +103398,7 @@ index 0000000..7dad2cd +ath6kl_disconnect_timeout_read_3650 ath6kl_disconnect_timeout_read 3 3650 NULL +i915_compat_ioctl_3656 i915_compat_ioctl 2 3656 NULL +replace_pin_at_irq_node_3687 replace_pin_at_irq_node 2 3687 NULL -+ntfs_attr_make_non_resident_3694 ntfs_attr_make_non_resident 0 3694 NULL ++ntfs_attr_make_non_resident_3694 ntfs_attr_make_non_resident 0-2 3694 NULL +snd_m3_assp_read_3703 snd_m3_assp_read 0 3703 NULL nohasharray +create_irq_3703 create_irq 0 3703 &snd_m3_assp_read_3703 +videobuf_pages_to_sg_3708 videobuf_pages_to_sg 2 3708 NULL @@ -103858,6 +103675,7 @@ index 0000000..7dad2cd +hfa384x_inw_6329 hfa384x_inw 0 6329 &SyS_mincore_6329 +fuse_get_req_for_background_6337 fuse_get_req_for_background 2 6337 NULL +ucs2_strnlen_6342 ucs2_strnlen 0 6342 NULL ++utc2ntfs_6347 utc2ntfs 0 6347 NULL +regcache_sync_block_raw_6350 regcache_sync_block_raw 5-4 6350 NULL +mei_dbgfs_read_devstate_6352 mei_dbgfs_read_devstate 3 6352 NULL +_proc_do_string_6376 _proc_do_string 2 6376 NULL @@ -103875,6 +103693,7 @@ index 0000000..7dad2cd +ieee80211_if_fmt_dot11MeshMaxRetries_6476 ieee80211_if_fmt_dot11MeshMaxRetries 3 6476 NULL +qp_memcpy_from_queue_6479 qp_memcpy_from_queue 5-4 6479 NULL +cipso_v4_map_lvl_hton_6490 cipso_v4_map_lvl_hton 0 6490 NULL ++ntfs_cluster_free_6497 ntfs_cluster_free 0 6497 NULL +dbg_intr_buf_6501 dbg_intr_buf 2 6501 NULL +mei_read_6507 mei_read 3 6507 NULL +__start_delalloc_inodes_6528 __start_delalloc_inodes 0 6528 NULL @@ -104075,6 +103894,7 @@ index 0000000..7dad2cd +snd_pcm_update_state_8320 snd_pcm_update_state 0 8320 NULL +construct_key_and_link_8321 construct_key_and_link 4 8321 NULL +ipwireless_send_packet_8328 ipwireless_send_packet 4 8328 NULL ++cfs_cpt_spread_node_8338 cfs_cpt_spread_node 0 8338 NULL +tracing_entries_read_8345 tracing_entries_read 3 8345 NULL +ieee80211_if_fmt_ht_opmode_8347 ieee80211_if_fmt_ht_opmode 3 8347 NULL +generic_write_sync_8358 generic_write_sync 0 8358 NULL @@ -104142,6 +103962,7 @@ index 0000000..7dad2cd +__bitmap_weight_8796 __bitmap_weight 0-2 8796 NULL +cpuset_common_file_read_8800 cpuset_common_file_read 5 8800 NULL +intel_ring_begin_8808 intel_ring_begin 0 8808 NULL ++ntfs_commit_pages_after_write_8809 ntfs_commit_pages_after_write 4-3 8809 NULL +metronomefb_write_8823 metronomefb_write 3 8823 NULL +SyS_llistxattr_8824 SyS_llistxattr 3 8824 NULL +get_queue_depth_8833 get_queue_depth 0 8833 NULL @@ -104167,8 +103988,8 @@ index 0000000..7dad2cd +usb_allocate_stream_buffers_8964 usb_allocate_stream_buffers 3 8964 NULL +qib_qsfp_dump_8966 qib_qsfp_dump 0-3 8966 NULL +venus_mkdir_8967 venus_mkdir 4 8967 NULL -+vol_cdev_read_8968 vol_cdev_read 3 8968 NULL nohasharray -+seq_open_net_8968 seq_open_net 4 8968 &vol_cdev_read_8968 ++seq_open_net_8968 seq_open_net 4 8968 NULL nohasharray ++vol_cdev_read_8968 vol_cdev_read 3 8968 &seq_open_net_8968 +bio_integrity_get_tag_8974 bio_integrity_get_tag 3 8974 NULL +btrfs_alloc_free_block_8986 btrfs_alloc_free_block 3-8 8986 NULL +jbd2_journal_blocks_per_page_9004 jbd2_journal_blocks_per_page 0 9004 NULL @@ -104217,6 +104038,7 @@ index 0000000..7dad2cd +ieee80211_if_fmt_txpower_9334 ieee80211_if_fmt_txpower 3 9334 NULL +nvme_trans_fmt_get_parm_header_9340 nvme_trans_fmt_get_parm_header 2 9340 NULL +ocfs2_orphan_for_truncate_9342 ocfs2_orphan_for_truncate 4 9342 NULL ++__ksm_enter_9347 __ksm_enter 0 9347 NULL +ll_direct_rw_pages_9361 ll_direct_rw_pages 0 9361 NULL +of_node_to_nid_9367 of_node_to_nid 0 9367 NULL +sta_beacon_loss_count_read_9370 sta_beacon_loss_count_read 3 9370 NULL @@ -104242,7 +104064,8 @@ index 0000000..7dad2cd +read_file_dma_9530 read_file_dma 3 9530 NULL +ext3_alloc_branch_9534 ext3_alloc_branch 5 9534 NULL +iwl_dbgfs_bf_params_read_9542 iwl_dbgfs_bf_params_read 3 9542 NULL -+il_dbgfs_missed_beacon_write_9546 il_dbgfs_missed_beacon_write 3 9546 NULL ++unmerge_ksm_pages_9546 unmerge_ksm_pages 0 9546 NULL nohasharray ++il_dbgfs_missed_beacon_write_9546 il_dbgfs_missed_beacon_write 3 9546 &unmerge_ksm_pages_9546 +compat_SyS_pwritev64_9548 compat_SyS_pwritev64 3 9548 NULL +readl_9557 readl 0 9557 NULL +fw_node_create_9559 fw_node_create 2 9559 NULL @@ -104350,6 +104173,7 @@ index 0000000..7dad2cd +whci_add_cap_10350 whci_add_cap 0 10350 NULL +dbAllocAny_10354 dbAllocAny 0 10354 NULL +ath6kl_listen_int_read_10355 ath6kl_listen_int_read 3 10355 NULL ++__ntfs_cluster_free_10360 __ntfs_cluster_free 0 10360 NULL +ms_write_multiple_pages_10362 ms_write_multiple_pages 6-5 10362 NULL +sta_ht_capa_read_10366 sta_ht_capa_read 3 10366 NULL +ecryptfs_decode_and_decrypt_filename_10379 ecryptfs_decode_and_decrypt_filename 5 10379 NULL @@ -104581,8 +104405,8 @@ index 0000000..7dad2cd +shash_compat_setkey_12267 shash_compat_setkey 3 12267 NULL +add_sctp_bind_addr_12269 add_sctp_bind_addr 3 12269 NULL +note_last_dentry_12285 note_last_dentry 3 12285 NULL -+roundup_to_multiple_of_64_12288 roundup_to_multiple_of_64 0-1 12288 NULL nohasharray -+il_dbgfs_nvm_read_12288 il_dbgfs_nvm_read 3 12288 &roundup_to_multiple_of_64_12288 ++il_dbgfs_nvm_read_12288 il_dbgfs_nvm_read 3 12288 NULL nohasharray ++roundup_to_multiple_of_64_12288 roundup_to_multiple_of_64 0-1 12288 &il_dbgfs_nvm_read_12288 +wrap_min_12303 wrap_min 0-1-2 12303 NULL +bt_sock_recvmsg_12316 bt_sock_recvmsg 4 12316 NULL +pcbit_writecmd_12332 pcbit_writecmd 2 12332 NULL @@ -104841,8 +104665,8 @@ index 0000000..7dad2cd +efx_mdio_check_mmds_14486 efx_mdio_check_mmds 2 14486 NULL nohasharray +ieee80211_if_read_dot11MeshGateAnnouncementProtocol_14486 ieee80211_if_read_dot11MeshGateAnnouncementProtocol 3 14486 &efx_mdio_check_mmds_14486 +ocfs2_debug_read_14507 ocfs2_debug_read 3 14507 NULL -+dataflash_read_user_otp_14536 dataflash_read_user_otp 3-2 14536 NULL nohasharray -+ep0_write_14536 ep0_write 3 14536 &dataflash_read_user_otp_14536 ++ep0_write_14536 ep0_write 3 14536 NULL nohasharray ++dataflash_read_user_otp_14536 dataflash_read_user_otp 3-2 14536 &ep0_write_14536 +register_trace_sched_switch_14545 register_trace_sched_switch 0 14545 NULL +picolcd_debug_eeprom_read_14549 picolcd_debug_eeprom_read 3 14549 NULL +drm_vmalloc_dma_14550 drm_vmalloc_dma 1 14550 NULL @@ -104878,8 +104702,8 @@ index 0000000..7dad2cd +keys_proc_write_14792 keys_proc_write 3 14792 NULL +ext4_kvmalloc_14796 ext4_kvmalloc 1 14796 NULL +__kfifo_in_14797 __kfifo_in 3-0 14797 NULL -+snd_als300_gcr_read_14801 snd_als300_gcr_read 0 14801 NULL nohasharray -+hpet_readl_14801 hpet_readl 0 14801 &snd_als300_gcr_read_14801 ++hpet_readl_14801 hpet_readl 0 14801 NULL nohasharray ++snd_als300_gcr_read_14801 snd_als300_gcr_read 0 14801 &hpet_readl_14801 +changed_cb_14819 changed_cb 0 14819 NULL +do_tune_cpucache_14828 do_tune_cpucache 2 14828 NULL +mrp_attr_create_14853 mrp_attr_create 3 14853 NULL @@ -105022,7 +104846,7 @@ index 0000000..7dad2cd +ext4_xattr_block_get_16148 ext4_xattr_block_get 0 16148 NULL +update_block_group_16155 update_block_group 0 16155 NULL +optimal_reclaimed_pages_16172 optimal_reclaimed_pages 0 16172 NULL -+mapping_level_16188 mapping_level 2 16188 NULL ++mapping_level_16188 mapping_level 2-0 16188 NULL +i40e_allocate_virt_mem_d_16191 i40e_allocate_virt_mem_d 3 16191 NULL +tcp_syn_options_16197 tcp_syn_options 0 16197 NULL +ath10k_htt_rx_ring_size_16201 ath10k_htt_rx_ring_size 0 16201 NULL @@ -105062,7 +104886,7 @@ index 0000000..7dad2cd +ieee80211_if_read_tsf_16420 ieee80211_if_read_tsf 3 16420 NULL +rxrpc_server_keyring_16431 rxrpc_server_keyring 3 16431 NULL +__bio_add_page_16435 __bio_add_page 0-4 16435 NULL -+btrfs_truncate_inode_items_16452 btrfs_truncate_inode_items 0 16452 NULL ++btrfs_truncate_inode_items_16452 btrfs_truncate_inode_items 0-4 16452 NULL +ocfs2_expand_refcount_tree_16455 ocfs2_expand_refcount_tree 0 16455 NULL +netlink_change_ngroups_16457 netlink_change_ngroups 2 16457 NULL +alloc_disk_node_16458 alloc_disk_node 2 16458 NULL @@ -105269,7 +105093,7 @@ index 0000000..7dad2cd +__sysfs_add_one_18258 __sysfs_add_one 0 18258 NULL +qdisc_class_hash_alloc_18262 qdisc_class_hash_alloc 1 18262 NULL +gfs2_alloc_sort_buffer_18275 gfs2_alloc_sort_buffer 1 18275 NULL -+alloc_ring_18278 alloc_ring 4-2 18278 NULL ++alloc_ring_18278 alloc_ring 4-2-8 18278 NULL +find_dirty_idx_leb_18280 find_dirty_idx_leb 0 18280 NULL +nouveau_subdev_create__18281 nouveau_subdev_create_ 7 18281 NULL nohasharray +bio_phys_segments_18281 bio_phys_segments 0 18281 &nouveau_subdev_create__18281 @@ -105392,6 +105216,7 @@ index 0000000..7dad2cd +create_gpadl_header_19064 create_gpadl_header 2 19064 NULL +ieee80211_key_alloc_19065 ieee80211_key_alloc 3 19065 NULL +ceph_create_snap_context_19082 ceph_create_snap_context 1 19082 NULL ++kvm_lapic_set_vapic_addr_19083 kvm_lapic_set_vapic_addr 2 19083 NULL +sta_last_seq_ctrl_read_19106 sta_last_seq_ctrl_read 3 19106 NULL +cifs_readv_from_socket_19109 cifs_readv_from_socket 3 19109 NULL +ATOMIC_SUB_RETURN_19115 ATOMIC_SUB_RETURN 2 19115 NULL @@ -105526,6 +105351,7 @@ index 0000000..7dad2cd +tm6000_i2c_send_regs_20250 tm6000_i2c_send_regs 5 20250 NULL +pcpu_alloc_20255 pcpu_alloc 1-2 20255 NULL +resource_size_20256 resource_size 0 20256 NULL ++uv_blade_to_memory_nid_20259 uv_blade_to_memory_nid 0 20259 NULL +r10_sync_page_io_20307 r10_sync_page_io 3 20307 NULL +dm_get_reserved_bio_based_ios_20315 dm_get_reserved_bio_based_ios 0 20315 NULL +tx_tx_burst_programmed_read_20320 tx_tx_burst_programmed_read 3 20320 NULL @@ -105570,8 +105396,8 @@ index 0000000..7dad2cd +cpulist_scnprintf_20648 cpulist_scnprintf 2-0 20648 NULL +oz_add_farewell_20652 oz_add_farewell 5 20652 NULL +oz_cdev_read_20659 oz_cdev_read 3 20659 NULL -+btrfs_qgroup_reserve_20676 btrfs_qgroup_reserve 0 20676 NULL nohasharray -+snd_hdsp_playback_copy_20676 snd_hdsp_playback_copy 5 20676 &btrfs_qgroup_reserve_20676 ++snd_hdsp_playback_copy_20676 snd_hdsp_playback_copy 5 20676 NULL nohasharray ++btrfs_qgroup_reserve_20676 btrfs_qgroup_reserve 0 20676 &snd_hdsp_playback_copy_20676 +get_user_page_nowait_20682 get_user_page_nowait 3 20682 NULL nohasharray +dvb_dmxdev_buffer_read_20682 dvb_dmxdev_buffer_read 0-4 20682 &get_user_page_nowait_20682 +cpumask_size_20683 cpumask_size 0 20683 NULL @@ -105643,6 +105469,7 @@ index 0000000..7dad2cd +alloc_pg_vec_21159 alloc_pg_vec 3 21159 NULL +btrfs_add_root_ref_21186 btrfs_add_root_ref 0 21186 NULL +cx18_v4l2_read_21196 cx18_v4l2_read 3 21196 NULL ++get_current_ntfs_time_21198 get_current_ntfs_time 0 21198 NULL +ipc_rcu_alloc_21208 ipc_rcu_alloc 1 21208 NULL +scsi_execute_req_flags_21215 scsi_execute_req_flags 5 21215 NULL +_ocfs2_free_clusters_21220 _ocfs2_free_clusters 4-0 21220 NULL @@ -105665,6 +105492,7 @@ index 0000000..7dad2cd +SYSC_rt_sigpending_21379 SYSC_rt_sigpending 2 21379 NULL +video_ioctl2_21380 video_ioctl2 2 21380 NULL +diva_get_driver_dbg_mask_21399 diva_get_driver_dbg_mask 0 21399 NULL ++sle64_to_cpu_21400 sle64_to_cpu 0-1 21400 NULL +snd_m3_inw_21406 snd_m3_inw 0 21406 NULL +snapshot_read_next_21426 snapshot_read_next 0 21426 NULL +tcp_bound_to_half_wnd_21429 tcp_bound_to_half_wnd 0-2 21429 NULL @@ -105756,7 +105584,6 @@ index 0000000..7dad2cd +mem_write_22232 mem_write 3 22232 NULL +p9_virtio_zc_request_22240 p9_virtio_zc_request 6-5 22240 NULL +fsnotify_parent_22243 fsnotify_parent 0 22243 NULL -+atomic64_xchg_22246 atomic64_xchg 0 22246 NULL +compat_process_vm_rw_22254 compat_process_vm_rw 3-5 22254 NULL +ping_common_sendmsg_22261 ping_common_sendmsg 5 22261 NULL +add_res_tree_22263 add_res_tree 7 22263 NULL @@ -106236,8 +106063,8 @@ index 0000000..7dad2cd +read_sb_page_26119 read_sb_page 5 26119 NULL +__fswab64_26155 __fswab64 0 26155 NULL +copy_oldmem_page_26164 copy_oldmem_page 3 26164 NULL -+ath6kl_roam_table_read_26166 ath6kl_roam_table_read 3 26166 NULL nohasharray -+gfs2_xattr_acl_get_26166 gfs2_xattr_acl_get 0 26166 &ath6kl_roam_table_read_26166 ++gfs2_xattr_acl_get_26166 gfs2_xattr_acl_get 0 26166 NULL nohasharray ++ath6kl_roam_table_read_26166 ath6kl_roam_table_read 3 26166 &gfs2_xattr_acl_get_26166 +disk_devt_26180 disk_devt 0 26180 NULL +cgroup_setxattr_26188 cgroup_setxattr 4 26188 NULL +ieee80211_if_fmt_dot11MeshTTL_26198 ieee80211_if_fmt_dot11MeshTTL 3 26198 NULL @@ -106331,6 +106158,7 @@ index 0000000..7dad2cd +pcf857x_irq_domain_map_26998 pcf857x_irq_domain_map 2 26998 NULL +i2c_smbus_xfer_27006 i2c_smbus_xfer 0 27006 NULL +omfs_allocate_range_27034 omfs_allocate_range 3 27034 NULL ++fill_read_buf_27036 fill_read_buf 0 27036 NULL +ufs_alloc_fragments_27059 ufs_alloc_fragments 3-0-2 27059 NULL +__videobuf_alloc_vb_27062 __videobuf_alloc_vb 1 27062 NULL +ext4_convert_unwritten_extents_27064 ext4_convert_unwritten_extents 4-3-0 27064 NULL @@ -106372,7 +106200,8 @@ index 0000000..7dad2cd +pcbit_stat_27364 pcbit_stat 2 27364 NULL +lz4_compress_crypto_27387 lz4_compress_crypto 3 27387 NULL +seq_read_27411 seq_read 3 27411 NULL -+ib_dma_map_sg_27413 ib_dma_map_sg 0 27413 NULL ++ib_dma_map_sg_27413 ib_dma_map_sg 0 27413 NULL nohasharray ++zalloc_cpumask_var_node_27413 zalloc_cpumask_var_node 3 27413 &ib_dma_map_sg_27413 +ieee80211_if_read_smps_27416 ieee80211_if_read_smps 3 27416 NULL +ocfs2_refcount_cal_cow_clusters_27422 ocfs2_refcount_cal_cow_clusters 0-3-4 27422 NULL nohasharray +evm_inode_init_security_27422 evm_inode_init_security 0 27422 &ocfs2_refcount_cal_cow_clusters_27422 @@ -106563,8 +106392,8 @@ index 0000000..7dad2cd +xz_dec_init_29029 xz_dec_init 2 29029 NULL +i915_gem_object_bind_to_vm_29035 i915_gem_object_bind_to_vm 0 29035 NULL +ieee80211_if_read_ht_opmode_29044 ieee80211_if_read_ht_opmode 3 29044 NULL -+rxrpc_sendmsg_29049 rxrpc_sendmsg 4 29049 NULL nohasharray -+ProcessGetHostMibs_29049 ProcessGetHostMibs 0 29049 &rxrpc_sendmsg_29049 ++ProcessGetHostMibs_29049 ProcessGetHostMibs 0 29049 NULL nohasharray ++rxrpc_sendmsg_29049 rxrpc_sendmsg 4 29049 &ProcessGetHostMibs_29049 +btrfs_root_bytenr_29058 btrfs_root_bytenr 0 29058 NULL +iso_packets_buffer_init_29061 iso_packets_buffer_init 3-4 29061 NULL +roundup_64_29066 roundup_64 2-0-1 29066 NULL @@ -106957,6 +106786,7 @@ index 0000000..7dad2cd +__add_missing_keys_32402 __add_missing_keys 0 32402 NULL +vmci_qp_alloc_32405 vmci_qp_alloc 5-3 32405 NULL +regmap_irq_map_32429 regmap_irq_map 2 32429 NULL ++break_ksm_32439 break_ksm 0 32439 NULL +__ext4_handle_dirty_super_32458 __ext4_handle_dirty_super 0 32458 NULL +snd_pcm_sync_ptr_32461 snd_pcm_sync_ptr 0 32461 NULL +cache_status_32462 cache_status 5 32462 NULL @@ -106988,6 +106818,7 @@ index 0000000..7dad2cd +ib_sg_dma_len_32649 ib_sg_dma_len 0 32649 NULL +generic_readlink_32654 generic_readlink 3 32654 NULL nohasharray +ftrace_startup_32654 ftrace_startup 0 32654 &generic_readlink_32654 ++get_unaligned_be24_32667 get_unaligned_be24 0 32667 NULL +move_addr_to_kernel_32673 move_addr_to_kernel 2 32673 NULL +apei_res_add_32674 apei_res_add 0 32674 NULL +jfs_readpages_32702 jfs_readpages 4 32702 NULL @@ -107121,7 +106952,6 @@ index 0000000..7dad2cd +get_user_pages_33908 get_user_pages 0-3-4 33908 NULL +ath6kl_roam_mode_write_33912 ath6kl_roam_mode_write 3 33912 NULL +queue_logical_block_size_33918 queue_logical_block_size 0 33918 NULL -+atomic64_add_return_33927 atomic64_add_return 0-1 33927 NULL +sel_read_avc_cache_threshold_33942 sel_read_avc_cache_threshold 3 33942 NULL +lpfc_idiag_ctlacc_read_33943 lpfc_idiag_ctlacc_read 3 33943 NULL +read_file_tgt_rx_stats_33944 read_file_tgt_rx_stats 3 33944 NULL nohasharray @@ -107175,8 +107005,8 @@ index 0000000..7dad2cd +av7110_vbi_write_34384 av7110_vbi_write 3 34384 NULL +usbvision_v4l2_read_34386 usbvision_v4l2_read 3 34386 NULL +read_rbu_image_type_34387 read_rbu_image_type 6 34387 NULL -+ivtv_read_pos_34400 ivtv_read_pos 3 34400 NULL nohasharray -+iwl_calib_set_34400 iwl_calib_set 3 34400 &ivtv_read_pos_34400 ++iwl_calib_set_34400 iwl_calib_set 3 34400 NULL nohasharray ++ivtv_read_pos_34400 ivtv_read_pos 3 34400 &iwl_calib_set_34400 +wd_exp_mode_write_34407 wd_exp_mode_write 3 34407 NULL +nl80211_send_disassoc_34424 nl80211_send_disassoc 4 34424 NULL +security_socket_create_34439 security_socket_create 0 34439 NULL @@ -107186,13 +107016,13 @@ index 0000000..7dad2cd +i2o_parm_field_get_34477 i2o_parm_field_get 5 34477 NULL +ocfs2_block_group_clear_bits_34484 ocfs2_block_group_clear_bits 0 34484 NULL +security_inode_permission_34488 security_inode_permission 0 34488 NULL -+__ffs64_34494 __ffs64 1-0 34494 NULL nohasharray -+SyS_pwritev_34494 SyS_pwritev 3 34494 &__ffs64_34494 ++SyS_pwritev_34494 SyS_pwritev 3 34494 NULL nohasharray ++__ffs64_34494 __ffs64 1-0 34494 &SyS_pwritev_34494 +qp_alloc_res_34496 qp_alloc_res 5 34496 NULL +lu_buf_check_and_alloc_34505 lu_buf_check_and_alloc 2 34505 NULL +snd_pcm_hw_param_value_34525 snd_pcm_hw_param_value 0 34525 NULL -+tracing_stats_read_34537 tracing_stats_read 3 34537 NULL nohasharray -+ext4_fallocate_34537 ext4_fallocate 4-3 34537 &tracing_stats_read_34537 ++ext4_fallocate_34537 ext4_fallocate 4-3 34537 NULL nohasharray ++tracing_stats_read_34537 tracing_stats_read 3 34537 &ext4_fallocate_34537 +hugetlbfs_read_actor_34547 hugetlbfs_read_actor 4-5-2-0 34547 NULL +dbBackSplit_34561 dbBackSplit 0 34561 NULL +alloc_ieee80211_rsl_34564 alloc_ieee80211_rsl 1 34564 NULL nohasharray @@ -107205,8 +107035,8 @@ index 0000000..7dad2cd +cw1200_queue_init_34599 cw1200_queue_init 4 34599 &ceph_msgpool_init_34599 +__add_prelim_ref_34600 __add_prelim_ref 0 34600 NULL +brcmf_cfg80211_mgmt_tx_34608 brcmf_cfg80211_mgmt_tx 7 34608 NULL -+mtd_write_34609 mtd_write 0 34609 NULL nohasharray -+__jffs2_ref_totlen_34609 __jffs2_ref_totlen 0 34609 &mtd_write_34609 ++__jffs2_ref_totlen_34609 __jffs2_ref_totlen 0 34609 NULL nohasharray ++mtd_write_34609 mtd_write 0 34609 &__jffs2_ref_totlen_34609 +apei_get_nvs_resources_34616 apei_get_nvs_resources 0 34616 NULL +__cfg80211_disconnected_34622 __cfg80211_disconnected 3 34622 NULL +cnic_alloc_dma_34641 cnic_alloc_dma 3 34641 NULL @@ -107257,6 +107087,7 @@ index 0000000..7dad2cd +brcmf_sdio_chip_writenvram_35042 brcmf_sdio_chip_writenvram 4 35042 NULL +pwr_connection_out_of_sync_read_35061 pwr_connection_out_of_sync_read 3 35061 NULL +ext4_split_unwritten_extents_35063 ext4_split_unwritten_extents 0 35063 NULL ++ntfs_attr_extend_initialized_35084 ntfs_attr_extend_initialized 2 35084 NULL +store_ifalias_35088 store_ifalias 4 35088 NULL +__kfifo_uint_must_check_helper_35097 __kfifo_uint_must_check_helper 0-1 35097 NULL +capi_write_35104 capi_write 3 35104 NULL nohasharray @@ -107329,6 +107160,7 @@ index 0000000..7dad2cd +nv50_vm_create_35643 nv50_vm_create 2-3 35643 NULL +spi_register_board_info_35651 spi_register_board_info 2 35651 NULL +rdmaltWithLock_35669 rdmaltWithLock 0 35669 NULL ++cpu_to_sle64_35677 cpu_to_sle64 0-1 35677 NULL +ext3_mark_iloc_dirty_35686 ext3_mark_iloc_dirty 0 35686 NULL +dm_table_create_35687 dm_table_create 3 35687 NULL +SYSC_pwritev_35690 SYSC_pwritev 3 35690 NULL @@ -107652,6 +107484,7 @@ index 0000000..7dad2cd +_get_val_38115 _get_val 2 38115 NULL +vmw_kms_present_38130 vmw_kms_present 9 38130 NULL +__ntfs_copy_from_user_iovec_inatomic_38153 __ntfs_copy_from_user_iovec_inatomic 0-4-3 38153 NULL ++btrfs_extent_same_38163 btrfs_extent_same 3-2 38163 NULL +kvm_clear_guest_38164 kvm_clear_guest 3-2 38164 NULL +cirrus_ttm_tt_create_38167 cirrus_ttm_tt_create 2 38167 NULL +send_rename_38170 send_rename 0 38170 NULL @@ -107669,11 +107502,11 @@ index 0000000..7dad2cd +snd_pcm_playback_rewind_38249 snd_pcm_playback_rewind 0-2 38249 NULL +from_dblock_38256 from_dblock 0-1 38256 NULL +vmci_qp_broker_set_page_store_38260 vmci_qp_broker_set_page_store 3-2 38260 NULL -+ieee80211_if_read_auto_open_plinks_38268 ieee80211_if_read_auto_open_plinks 3 38268 NULL nohasharray -+SYSC_msgrcv_38268 SYSC_msgrcv 3 38268 &ieee80211_if_read_auto_open_plinks_38268 nohasharray -+mthca_alloc_icm_table_38268 mthca_alloc_icm_table 4-3 38268 &SYSC_msgrcv_38268 -+xfs_bmbt_to_bmdr_38275 xfs_bmbt_to_bmdr 3 38275 NULL nohasharray -+xfs_bmdr_to_bmbt_38275 xfs_bmdr_to_bmbt 5 38275 &xfs_bmbt_to_bmdr_38275 ++SYSC_msgrcv_38268 SYSC_msgrcv 3 38268 NULL nohasharray ++ieee80211_if_read_auto_open_plinks_38268 ieee80211_if_read_auto_open_plinks 3 38268 &SYSC_msgrcv_38268 nohasharray ++mthca_alloc_icm_table_38268 mthca_alloc_icm_table 4-3 38268 &ieee80211_if_read_auto_open_plinks_38268 ++xfs_bmdr_to_bmbt_38275 xfs_bmdr_to_bmbt 5 38275 NULL nohasharray ++xfs_bmbt_to_bmdr_38275 xfs_bmbt_to_bmdr 3 38275 &xfs_bmdr_to_bmbt_38275 +ftdi_process_packet_38281 ftdi_process_packet 4 38281 NULL +gpa_to_gfn_38291 gpa_to_gfn 0-1 38291 NULL +ucma_query_path_38305 ucma_query_path 3 38305 NULL @@ -107746,8 +107579,8 @@ index 0000000..7dad2cd +ext3_trim_all_free_38929 ext3_trim_all_free 4-3-2 38929 NULL +il_dbgfs_sram_write_38942 il_dbgfs_sram_write 3 38942 NULL +__ath6kl_wmi_send_mgmt_cmd_38971 __ath6kl_wmi_send_mgmt_cmd 7 38971 NULL -+usb_maxpacket_38977 usb_maxpacket 0 38977 NULL nohasharray -+C_SYSC_preadv64_38977 C_SYSC_preadv64 3 38977 &usb_maxpacket_38977 ++C_SYSC_preadv64_38977 C_SYSC_preadv64 3 38977 NULL nohasharray ++usb_maxpacket_38977 usb_maxpacket 0 38977 &C_SYSC_preadv64_38977 +OSDSetBlock_38986 OSDSetBlock 2-4 38986 NULL +lpfc_idiag_extacc_write_38998 lpfc_idiag_extacc_write 3 38998 NULL +udf_new_block_38999 udf_new_block 4 38999 NULL @@ -107760,7 +107593,6 @@ index 0000000..7dad2cd +do_write_kmem_39051 do_write_kmem 1-3-0 39051 NULL +gen_pool_create_39064 gen_pool_create 2 39064 NULL +ext4_init_block_bitmap_39071 ext4_init_block_bitmap 3 39071 NULL -+atomic64_add_negative_39098 atomic64_add_negative 1 39098 NULL +ReadHFC_39104 ReadHFC 0 39104 NULL +tomoyo_truncate_39105 tomoyo_truncate 0 39105 NULL +leb_write_lock_39111 leb_write_lock 0 39111 NULL @@ -107812,8 +107644,8 @@ index 0000000..7dad2cd +ext_depth_39607 ext_depth 0 39607 NULL +nfs_idmap_get_key_39616 nfs_idmap_get_key 2 39616 NULL +sdio_readb_39618 sdio_readb 0 39618 NULL -+dm_exception_table_init_39645 dm_exception_table_init 2 39645 NULL nohasharray -+set_dev_class_39645 set_dev_class 4 39645 &dm_exception_table_init_39645 ++set_dev_class_39645 set_dev_class 4 39645 NULL nohasharray ++dm_exception_table_init_39645 dm_exception_table_init 2 39645 &set_dev_class_39645 +snd_rme32_capture_copy_39653 snd_rme32_capture_copy 5 39653 NULL +tcp_try_rmem_schedule_39657 tcp_try_rmem_schedule 3 39657 NULL +kvm_read_guest_cached_39666 kvm_read_guest_cached 4 39666 NULL @@ -108188,7 +108020,7 @@ index 0000000..7dad2cd +isku_sysfs_read_info_42781 isku_sysfs_read_info 6 42781 &cryptd_hash_setkey_42781 +elfcorehdr_read_notes_42786 elfcorehdr_read_notes 2 42786 NULL +koneplus_sysfs_read_42792 koneplus_sysfs_read 6 42792 NULL -+ntfs_attr_extend_allocation_42796 ntfs_attr_extend_allocation 0-2 42796 NULL ++ntfs_attr_extend_allocation_42796 ntfs_attr_extend_allocation 0-2-3 42796 NULL +fw_device_op_compat_ioctl_42804 fw_device_op_compat_ioctl 2 42804 NULL +drm_ioctl_42813 drm_ioctl 2 42813 NULL +iwl_dbgfs_ucode_bt_stats_read_42820 iwl_dbgfs_ucode_bt_stats_read 3 42820 NULL @@ -108249,6 +108081,7 @@ index 0000000..7dad2cd +mmu_set_spte_43327 mmu_set_spte 7-6 43327 NULL +__ext4_get_inode_loc_43332 __ext4_get_inode_loc 0 43332 NULL +kvm_host_page_size_43348 kvm_host_page_size 2-0 43348 NULL ++activation_descriptor_init_43358 activation_descriptor_init 1 43358 NULL +gart_free_coherent_43362 gart_free_coherent 4-2 43362 NULL +hash_net4_expire_43378 hash_net4_expire 3 43378 NULL +xenfb_write_43412 xenfb_write 3 43412 NULL @@ -108256,8 +108089,8 @@ index 0000000..7dad2cd +usb_alloc_urb_43436 usb_alloc_urb 1 43436 NULL +ath6kl_wmi_roam_tbl_event_rx_43440 ath6kl_wmi_roam_tbl_event_rx 3 43440 NULL +ocfs2_rotate_tree_left_43442 ocfs2_rotate_tree_left 0 43442 NULL -+usb_string_43443 usb_string 0 43443 NULL nohasharray -+usemap_size_43443 usemap_size 0-2-1 43443 &usb_string_43443 ++usemap_size_43443 usemap_size 0-2-1 43443 NULL nohasharray ++usb_string_43443 usb_string 0 43443 &usemap_size_43443 +get_vm_area_size_43444 get_vm_area_size 0 43444 NULL +nvme_trans_device_id_page_43466 nvme_trans_device_id_page 4 43466 NULL +calculate_discard_block_size_43480 calculate_discard_block_size 0 43480 NULL nohasharray @@ -108277,6 +108110,7 @@ index 0000000..7dad2cd +proc_read_43614 proc_read 3 43614 NULL +i915_gem_execbuffer_relocate_object_slow_43618 i915_gem_execbuffer_relocate_object_slow 0 43618 NULL nohasharray +disable_dma_on_even_43618 disable_dma_on_even 0 43618 &i915_gem_execbuffer_relocate_object_slow_43618 ++alloc_thread_groups_43625 alloc_thread_groups 2 43625 NULL +random_write_43656 random_write 3 43656 NULL +bio_integrity_tag_43658 bio_integrity_tag 3 43658 NULL +ext4_acl_count_43659 ext4_acl_count 0-1 43659 NULL @@ -108565,8 +108399,8 @@ index 0000000..7dad2cd +dma_tx_errors_read_46060 dma_tx_errors_read 3 46060 &__ocfs2_move_extent_46060 +sel_commit_bools_write_46077 sel_commit_bools_write 3 46077 NULL +arizona_set_irq_wake_46101 arizona_set_irq_wake 2 46101 NULL -+il3945_ucode_general_stats_read_46111 il3945_ucode_general_stats_read 3 46111 NULL nohasharray -+memcg_update_array_size_46111 memcg_update_array_size 1 46111 &il3945_ucode_general_stats_read_46111 ++memcg_update_array_size_46111 memcg_update_array_size 1 46111 NULL nohasharray ++il3945_ucode_general_stats_read_46111 il3945_ucode_general_stats_read 3 46111 &memcg_update_array_size_46111 +C_SYSC_writev_46113 C_SYSC_writev 3 46113 NULL +mlx4_ib_alloc_fast_reg_page_list_46119 mlx4_ib_alloc_fast_reg_page_list 2 46119 NULL +paging32_walk_addr_nested_46121 paging32_walk_addr_nested 3 46121 NULL @@ -108586,8 +108420,8 @@ index 0000000..7dad2cd +mpi_read_raw_data_46248 mpi_read_raw_data 2 46248 NULL +ReadReg_46277 ReadReg 0 46277 NULL +sg_proc_write_dressz_46316 sg_proc_write_dressz 3 46316 NULL -+compat_SyS_readv_46328 compat_SyS_readv 3 46328 NULL nohasharray -+__hwahc_dev_set_key_46328 __hwahc_dev_set_key 5 46328 &compat_SyS_readv_46328 ++__hwahc_dev_set_key_46328 __hwahc_dev_set_key 5 46328 NULL nohasharray ++compat_SyS_readv_46328 compat_SyS_readv 3 46328 &__hwahc_dev_set_key_46328 +iwl_dbgfs_chain_noise_read_46355 iwl_dbgfs_chain_noise_read 3 46355 NULL +smk_write_direct_46363 smk_write_direct 3 46363 NULL +__iommu_calculate_agaw_46366 __iommu_calculate_agaw 2 46366 NULL @@ -108634,6 +108468,7 @@ index 0000000..7dad2cd +irq_domain_add_simple_46734 irq_domain_add_simple 2-3 46734 NULL +ext4_count_free_46754 ext4_count_free 2 46754 NULL nohasharray +pte_pfn_46754 pte_pfn 0 46754 &ext4_count_free_46754 ++ntfs2utc_46762 ntfs2utc 1 46762 NULL +hest_ghes_dev_register_46766 hest_ghes_dev_register 1 46766 NULL +int_hw_irq_en_46776 int_hw_irq_en 3 46776 NULL +regcache_lzo_sync_46777 regcache_lzo_sync 2 46777 NULL @@ -108685,6 +108520,7 @@ index 0000000..7dad2cd +acpi_ut_initialize_buffer_47143 acpi_ut_initialize_buffer 2 47143 &ses_recv_diag_47143 +mxms_headerlen_47161 mxms_headerlen 0 47161 NULL +rs_sta_dbgfs_rate_scale_data_read_47165 rs_sta_dbgfs_rate_scale_data_read 3 47165 NULL ++alloc_cpumask_var_node_47167 alloc_cpumask_var_node 3 47167 NULL +bpf_alloc_binary_47170 bpf_alloc_binary 1 47170 NULL +rts51x_ms_rw_47171 rts51x_ms_rw 3-4 47171 NULL +btrfs_del_inode_ref_47181 btrfs_del_inode_ref 0 47181 NULL @@ -108805,8 +108641,8 @@ index 0000000..7dad2cd +set_discoverable_48141 set_discoverable 4 48141 NULL +dn_fib_count_nhs_48145 dn_fib_count_nhs 0 48145 NULL +get_cur_inode_state_48149 get_cur_inode_state 0 48149 NULL -+bitmap_onto_48152 bitmap_onto 4 48152 NULL nohasharray -+_add_to_r4w_48152 _add_to_r4w 4 48152 &bitmap_onto_48152 ++_add_to_r4w_48152 _add_to_r4w 4 48152 NULL nohasharray ++bitmap_onto_48152 bitmap_onto 4 48152 &_add_to_r4w_48152 +isr_dma1_done_read_48159 isr_dma1_done_read 3 48159 NULL +c4iw_id_table_alloc_48163 c4iw_id_table_alloc 3 48163 NULL +ocfs2_find_next_zero_bit_unaligned_48170 ocfs2_find_next_zero_bit_unaligned 2-3 48170 NULL nohasharray @@ -108848,7 +108684,8 @@ index 0000000..7dad2cd +tun_recvmsg_48463 tun_recvmsg 4 48463 NULL +compat_SyS_preadv64_48469 compat_SyS_preadv64 3 48469 NULL +ipath_format_hwerrors_48487 ipath_format_hwerrors 5 48487 NULL -+r8712_usbctrl_vendorreq_48489 r8712_usbctrl_vendorreq 6 48489 NULL ++init_section_page_cgroup_48489 init_section_page_cgroup 2 48489 NULL nohasharray ++r8712_usbctrl_vendorreq_48489 r8712_usbctrl_vendorreq 6 48489 &init_section_page_cgroup_48489 +ocfs2_refcount_cow_48495 ocfs2_refcount_cow 3 48495 NULL +send_control_msg_48498 send_control_msg 6 48498 NULL +mlx4_en_create_tx_ring_48501 mlx4_en_create_tx_ring 4 48501 NULL @@ -108887,8 +108724,9 @@ index 0000000..7dad2cd +vc_do_resize_48842 vc_do_resize 4-3 48842 NULL +comedi_buf_write_alloc_48846 comedi_buf_write_alloc 0-2 48846 NULL +suspend_dtim_interval_write_48854 suspend_dtim_interval_write 3 48854 NULL -+viafb_dvp1_proc_write_48864 viafb_dvp1_proc_write 3 48864 NULL nohasharray -+C_SYSC_pwritev64_48864 C_SYSC_pwritev64 3 48864 &viafb_dvp1_proc_write_48864 ++C_SYSC_pwritev64_48864 C_SYSC_pwritev64 3 48864 NULL nohasharray ++viafb_dvp1_proc_write_48864 viafb_dvp1_proc_write 3 48864 &C_SYSC_pwritev64_48864 ++ide_port_alloc_devices_48866 ide_port_alloc_devices 2 48866 NULL +__ffs_ep0_read_events_48868 __ffs_ep0_read_events 3 48868 NULL +ext2_alloc_branch_48889 ext2_alloc_branch 4 48889 NULL +crypto_cipher_ctxsize_48890 crypto_cipher_ctxsize 0 48890 NULL @@ -109143,12 +108981,13 @@ index 0000000..7dad2cd +dpcm_show_state_50827 dpcm_show_state 0 50827 NULL +acpi_ev_install_gpe_block_50829 acpi_ev_install_gpe_block 2 50829 NULL +SetArea_50835 SetArea 4 50835 NULL nohasharray -+mask_from_50835 mask_from 0-1-2 50835 &SetArea_50835 nohasharray -+create_mem_extents_50835 create_mem_extents 0 50835 &mask_from_50835 ++create_mem_extents_50835 create_mem_extents 0 50835 &SetArea_50835 nohasharray ++mask_from_50835 mask_from 0-1-2 50835 &create_mem_extents_50835 +videobuf_dma_init_user_50839 videobuf_dma_init_user 3-4 50839 NULL +btrfs_search_slot_for_read_50843 btrfs_search_slot_for_read 0 50843 NULL +self_check_write_50856 self_check_write 0-5 50856 NULL +carl9170_debugfs_write_50857 carl9170_debugfs_write 3 50857 NULL ++alloc_masks_50861 alloc_masks 3 50861 NULL +__percpu_counter_init_50878 __percpu_counter_init 0 50878 NULL +btrfs_insert_inode_ref_50884 btrfs_insert_inode_ref 0 50884 NULL +SyS_lgetxattr_50889 SyS_lgetxattr 4 50889 NULL @@ -109235,8 +109074,8 @@ index 0000000..7dad2cd +load_pdptrs_51541 load_pdptrs 3 51541 NULL +__alloc_eip_netdev_51549 __alloc_eip_netdev 1 51549 NULL +ixgb_get_eeprom_len_51586 ixgb_get_eeprom_len 0 51586 NULL -+snd_interval_refine_first_51589 snd_interval_refine_first 0 51589 NULL nohasharray -+get_cur_path_51589 get_cur_path 0 51589 &snd_interval_refine_first_51589 ++get_cur_path_51589 get_cur_path 0 51589 NULL nohasharray ++snd_interval_refine_first_51589 snd_interval_refine_first 0 51589 &get_cur_path_51589 +aac_convert_sgraw2_51598 aac_convert_sgraw2 4 51598 NULL +table_size_to_number_of_entries_51613 table_size_to_number_of_entries 0-1 51613 NULL +extent_fiemap_51621 extent_fiemap 3 51621 NULL @@ -109245,7 +109084,7 @@ index 0000000..7dad2cd +get_new_cssid_51665 get_new_cssid 2 51665 NULL +ps_upsd_utilization_read_51669 ps_upsd_utilization_read 3 51669 NULL +sctp_setsockopt_associnfo_51684 sctp_setsockopt_associnfo 3 51684 NULL -+host_mapping_level_51696 host_mapping_level 2 51696 NULL ++host_mapping_level_51696 host_mapping_level 2-0 51696 NULL +sel_write_access_51704 sel_write_access 3 51704 NULL +tty_cdev_add_51714 tty_cdev_add 2-4 51714 NULL +v9fs_alloc_rdir_buf_51716 v9fs_alloc_rdir_buf 2 51716 NULL @@ -109272,9 +109111,10 @@ index 0000000..7dad2cd +get_indirect_ea_51869 get_indirect_ea 4 51869 NULL +user_read_51881 user_read 3 51881 NULL +dbAdjCtl_51888 dbAdjCtl 0 51888 NULL -+virt_to_phys_51896 virt_to_phys 0 51896 NULL nohasharray -+SyS_mq_timedsend_51896 SyS_mq_timedsend 3 51896 &virt_to_phys_51896 ++SyS_mq_timedsend_51896 SyS_mq_timedsend 3 51896 NULL nohasharray ++virt_to_phys_51896 virt_to_phys 0 51896 &SyS_mq_timedsend_51896 +commit_fs_roots_51898 commit_fs_roots 0 51898 NULL ++uvhub_to_first_node_51916 uvhub_to_first_node 0 51916 NULL +wmi_set_ie_51919 wmi_set_ie 3 51919 NULL +dbg_status_buf_51930 dbg_status_buf 2 51930 NULL +__tcp_mtu_to_mss_51938 __tcp_mtu_to_mss 0-2 51938 NULL @@ -109288,6 +109128,7 @@ index 0000000..7dad2cd +get_zone_51981 get_zone 0-1 51981 NULL +ath6kl_sdio_alloc_prep_scat_req_51986 ath6kl_sdio_alloc_prep_scat_req 2 51986 NULL +_c4iw_write_mem_dma_51991 _c4iw_write_mem_dma 3 51991 NULL ++ntfs_attr_size_51994 ntfs_attr_size 0 51994 NULL +dwc3_mode_write_51997 dwc3_mode_write 3 51997 NULL +skb_copy_datagram_from_iovec_52014 skb_copy_datagram_from_iovec 4-2-5 52014 NULL +rdmalt_52022 rdmalt 0 52022 NULL @@ -109483,8 +109324,8 @@ index 0000000..7dad2cd +nr_sendmsg_53656 nr_sendmsg 4 53656 NULL +fuse_fill_write_pages_53682 fuse_fill_write_pages 0-4 53682 NULL +v4l2_event_subscribe_53687 v4l2_event_subscribe 3 53687 NULL -+igb_alloc_q_vector_53690 igb_alloc_q_vector 6-4 53690 NULL nohasharray -+bdev_logical_block_size_53690 bdev_logical_block_size 0 53690 &igb_alloc_q_vector_53690 ++bdev_logical_block_size_53690 bdev_logical_block_size 0 53690 NULL nohasharray ++igb_alloc_q_vector_53690 igb_alloc_q_vector 6-4 53690 &bdev_logical_block_size_53690 +find_overflow_devnum_53711 find_overflow_devnum 0 53711 NULL +bio_integrity_split_53714 bio_integrity_split 3 53714 NULL +__ocfs2_resv_find_window_53721 __ocfs2_resv_find_window 3 53721 NULL @@ -109585,7 +109426,8 @@ index 0000000..7dad2cd +setsockopt_54539 setsockopt 5 54539 NULL +i915_reset_gen7_sol_offsets_54547 i915_reset_gen7_sol_offsets 0 54547 NULL +lbs_lowsnr_write_54549 lbs_lowsnr_write 3 54549 NULL -+i915_gem_get_seqno_54555 i915_gem_get_seqno 0 54555 NULL ++ntfs_commit_pages_after_non_resident_write_54555 ntfs_commit_pages_after_non_resident_write 4-3 54555 NULL nohasharray ++i915_gem_get_seqno_54555 i915_gem_get_seqno 0 54555 &ntfs_commit_pages_after_non_resident_write_54555 +btrfs_update_inode_item_54561 btrfs_update_inode_item 0 54561 NULL nohasharray +SYSC_setsockopt_54561 SYSC_setsockopt 5 54561 &btrfs_update_inode_item_54561 +nfsd_vfs_write_54577 nfsd_vfs_write 6 54577 NULL @@ -109598,6 +109440,7 @@ index 0000000..7dad2cd +dns_resolver_read_54658 dns_resolver_read 3 54658 NULL +twl6030_interrupt_mask_54659 twl6030_interrupt_mask 2 54659 NULL +kvm_read_cr3_54662 kvm_read_cr3 0 54662 NULL ++tdp_page_fault_54663 tdp_page_fault 2 54663 NULL +bus_add_device_54665 bus_add_device 0 54665 NULL +cw1200_queue_stats_init_54670 cw1200_queue_stats_init 2 54670 NULL +bio_kmalloc_54672 bio_kmalloc 2 54672 NULL @@ -109685,8 +109528,8 @@ index 0000000..7dad2cd +lov_get_stripecnt_55297 lov_get_stripecnt 0-3 55297 NULL +gsm_control_modem_55303 gsm_control_modem 3 55303 NULL +wimax_msg_len_55304 wimax_msg_len 0 55304 NULL -+qp_alloc_guest_work_55305 qp_alloc_guest_work 5-3 55305 NULL nohasharray -+__get_vm_area_node_55305 __get_vm_area_node 6 55305 &qp_alloc_guest_work_55305 ++__get_vm_area_node_55305 __get_vm_area_node 6 55305 NULL nohasharray ++qp_alloc_guest_work_55305 qp_alloc_guest_work 5-3 55305 &__get_vm_area_node_55305 +__vxge_hw_vpath_initialize_55328 __vxge_hw_vpath_initialize 2 55328 NULL +do_shmat_55336 do_shmat 5 55336 NULL +vme_user_read_55338 vme_user_read 3 55338 NULL @@ -109763,6 +109606,7 @@ index 0000000..7dad2cd +ceph_get_direct_page_vector_55956 ceph_get_direct_page_vector 2 55956 NULL +simple_read_from_buffer_55957 simple_read_from_buffer 5-2 55957 NULL +tx_tx_imm_resp_read_55964 tx_tx_imm_resp_read 3 55964 NULL ++btrfs_clone_55977 btrfs_clone 5-3 55977 NULL +wa_xfer_create_subset_sg_55992 wa_xfer_create_subset_sg 2-3 55992 NULL +nvme_alloc_iod_56027 nvme_alloc_iod 1-2 56027 NULL +dccp_sendmsg_56058 dccp_sendmsg 4 56058 NULL @@ -109869,8 +109713,8 @@ index 0000000..7dad2cd +__bitmap_clear_bits_56912 __bitmap_clear_bits 3 56912 NULL +strcspn_56913 strcspn 0 56913 NULL +__kfifo_out_56927 __kfifo_out 0-3 56927 NULL -+journal_init_revoke_56933 journal_init_revoke 2 56933 NULL nohasharray -+CopyBufferToControlPacket_56933 CopyBufferToControlPacket 0 56933 &journal_init_revoke_56933 ++CopyBufferToControlPacket_56933 CopyBufferToControlPacket 0 56933 NULL nohasharray ++journal_init_revoke_56933 journal_init_revoke 2 56933 &CopyBufferToControlPacket_56933 +nouveau_xtensa_create__56952 nouveau_xtensa_create_ 8 56952 NULL +diva_get_driver_info_56967 diva_get_driver_info 0 56967 NULL +nouveau_device_create__56984 nouveau_device_create_ 6 56984 NULL @@ -109986,8 +109830,8 @@ index 0000000..7dad2cd +kiblnd_create_tx_pool_57846 kiblnd_create_tx_pool 2 57846 NULL +process_all_new_xattrs_57881 process_all_new_xattrs 0 57881 NULL +xt_alloc_table_info_57903 xt_alloc_table_info 1 57903 NULL -+atomic_add_return_unchecked_57910 atomic_add_return_unchecked 0-1 57910 NULL nohasharray -+iio_read_first_n_kfifo_57910 iio_read_first_n_kfifo 2 57910 &atomic_add_return_unchecked_57910 ++iio_read_first_n_kfifo_57910 iio_read_first_n_kfifo 2 57910 NULL nohasharray ++atomic_add_return_unchecked_57910 atomic_add_return_unchecked 0-1 57910 &iio_read_first_n_kfifo_57910 +memcg_caches_array_size_57918 memcg_caches_array_size 0-1 57918 NULL +twl_i2c_write_57923 twl_i2c_write 3-4 57923 NULL +__snd_gf1_look16_57925 __snd_gf1_look16 0 57925 NULL @@ -110066,6 +109910,7 @@ index 0000000..7dad2cd +xfs_iomap_write_delay_58616 xfs_iomap_write_delay 2 58616 NULL +skb_copy_to_page_nocache_58624 skb_copy_to_page_nocache 6 58624 NULL +filemap_fdatawrite_range_58630 filemap_fdatawrite_range 0 58630 NULL ++vb2_qbuf_58631 vb2_qbuf 0 58631 NULL +module_alloc_update_bounds_rx_58634 module_alloc_update_bounds_rx 1 58634 NULL +tx_tx_start_fw_gen_read_58648 tx_tx_start_fw_gen_read 3 58648 NULL +ocfs2_block_to_cluster_start_58653 ocfs2_block_to_cluster_start 2 58653 NULL @@ -110226,8 +110071,8 @@ index 0000000..7dad2cd +xlog_bread_offset_60030 xlog_bread_offset 3 60030 NULL +bio_integrity_hw_sectors_60039 bio_integrity_hw_sectors 0-2 60039 NULL +do_ip6t_set_ctl_60040 do_ip6t_set_ctl 4 60040 NULL -+pin_2_irq_60050 pin_2_irq 0-3 60050 NULL nohasharray -+vcs_size_60050 vcs_size 0 60050 &pin_2_irq_60050 ++vcs_size_60050 vcs_size 0 60050 NULL nohasharray ++pin_2_irq_60050 pin_2_irq 0-3 60050 &vcs_size_60050 +gru_alloc_gts_60056 gru_alloc_gts 3-2 60056 NULL +open_cur_inode_file_60057 open_cur_inode_file 0 60057 NULL +compat_writev_60063 compat_writev 3 60063 NULL @@ -110492,6 +110337,7 @@ index 0000000..7dad2cd +set_ssp_62411 set_ssp 4 62411 NULL +mlx4_en_create_rx_ring_62498 mlx4_en_create_rx_ring 3 62498 NULL +ext_rts51x_sd_execute_read_data_62501 ext_rts51x_sd_execute_read_data 9 62501 NULL ++mtip_get_next_rr_node_62502 mtip_get_next_rr_node 0 62502 NULL +ocfs2_path_bh_journal_access_62504 ocfs2_path_bh_journal_access 0 62504 NULL +pep_sendmsg_62524 pep_sendmsg 4 62524 NULL +test_iso_queue_62534 test_iso_queue 5 62534 NULL nohasharray @@ -110548,6 +110394,7 @@ index 0000000..7dad2cd +agp_create_user_memory_62955 agp_create_user_memory 1 62955 NULL +send_write_62969 send_write 0-3 62969 NULL +__ext3_journal_stop_63017 __ext3_journal_stop 0 63017 NULL ++alloc_mem_cgroup_per_zone_info_63024 alloc_mem_cgroup_per_zone_info 2 63024 NULL +kstrtoull_from_user_63026 kstrtoull_from_user 2 63026 NULL +PTR_ERR_63033 PTR_ERR 0 63033 NULL nohasharray +__vb2_perform_fileio_63033 __vb2_perform_fileio 3 63033 &PTR_ERR_63033 @@ -110845,8 +110692,10 @@ index 0000000..7dad2cd +il_dbgfs_wd_timeout_write_65464 il_dbgfs_wd_timeout_write 3 65464 NULL +ext4_es_zeroout_65465 ext4_es_zeroout 0 65465 NULL +clear_user_65470 clear_user 2 65470 NULL -+dpcm_state_read_file_65489 dpcm_state_read_file 3 65489 NULL ++__pcibus_to_node_65489 __pcibus_to_node 0 65489 NULL nohasharray ++dpcm_state_read_file_65489 dpcm_state_read_file 3 65489 &__pcibus_to_node_65489 +lookup_inline_extent_backref_65493 lookup_inline_extent_backref 9-0 65493 NULL ++qib_create_ctxtdata_65497 qib_create_ctxtdata 3 65497 NULL +nvme_trans_standard_inquiry_page_65526 nvme_trans_standard_inquiry_page 4 65526 NULL diff --git a/tools/gcc/size_overflow_plugin.c b/tools/gcc/size_overflow_plugin.c new file mode 100644 @@ -115440,7 +115289,7 @@ index 96b919d..c49bb74 100644 + #endif diff --git a/virt/kvm/kvm_main.c b/virt/kvm/kvm_main.c -index 1cf9ccb..4a8abb5 100644 +index aac732d..bc87a5d 100644 --- a/virt/kvm/kvm_main.c +++ b/virt/kvm/kvm_main.c @@ -75,12 +75,17 @@ LIST_HEAD(vm_list); @@ -115472,7 +115321,27 @@ index 1cf9ccb..4a8abb5 100644 (void __user *)(unsigned long)mem->userspace_addr, mem->memory_size))) goto out; -@@ -1867,7 +1872,7 @@ static int kvm_vcpu_release(struct inode *inode, struct file *filp) +@@ -1613,8 +1618,17 @@ EXPORT_SYMBOL_GPL(kvm_read_guest_cached); + + int kvm_clear_guest_page(struct kvm *kvm, gfn_t gfn, int offset, int len) + { +- return kvm_write_guest_page(kvm, gfn, (const void *) empty_zero_page, +- offset, len); ++ int r; ++ unsigned long addr; ++ ++ addr = gfn_to_hva(kvm, gfn); ++ if (kvm_is_error_hva(addr)) ++ return -EFAULT; ++ r = __clear_user((void __user *)addr + offset, len); ++ if (r) ++ return -EFAULT; ++ mark_page_dirty(kvm, gfn); ++ return 0; + } + EXPORT_SYMBOL_GPL(kvm_clear_guest_page); + +@@ -1867,7 +1881,7 @@ static int kvm_vcpu_release(struct inode *inode, struct file *filp) return 0; } @@ -115481,17 +115350,7 @@ index 1cf9ccb..4a8abb5 100644 .release = kvm_vcpu_release, .unlocked_ioctl = kvm_vcpu_ioctl, #ifdef CONFIG_COMPAT -@@ -1893,6 +1898,9 @@ static int kvm_vm_ioctl_create_vcpu(struct kvm *kvm, u32 id) - int r; - struct kvm_vcpu *vcpu, *v; - -+ if (id >= KVM_MAX_VCPUS) -+ return -EINVAL; -+ - vcpu = kvm_arch_vcpu_create(kvm, id); - if (IS_ERR(vcpu)) - return PTR_ERR(vcpu); -@@ -2550,7 +2558,7 @@ static int kvm_vm_mmap(struct file *file, struct vm_area_struct *vma) +@@ -2553,7 +2567,7 @@ static int kvm_vm_mmap(struct file *file, struct vm_area_struct *vma) return 0; } @@ -115500,7 +115359,7 @@ index 1cf9ccb..4a8abb5 100644 .release = kvm_vm_release, .unlocked_ioctl = kvm_vm_ioctl, #ifdef CONFIG_COMPAT -@@ -2651,7 +2659,7 @@ out: +@@ -2654,7 +2668,7 @@ out: return r; } @@ -115509,7 +115368,7 @@ index 1cf9ccb..4a8abb5 100644 .unlocked_ioctl = kvm_dev_ioctl, .compat_ioctl = kvm_dev_ioctl, .llseek = noop_llseek, -@@ -2677,7 +2685,7 @@ static void hardware_enable_nolock(void *junk) +@@ -2680,7 +2694,7 @@ static void hardware_enable_nolock(void *junk) if (r) { cpumask_clear_cpu(cpu, cpus_hardware_enabled); @@ -115518,7 +115377,7 @@ index 1cf9ccb..4a8abb5 100644 printk(KERN_INFO "kvm: enabling virtualization on " "CPU%d failed\n", cpu); } -@@ -2731,10 +2739,10 @@ static int hardware_enable_all(void) +@@ -2734,10 +2748,10 @@ static int hardware_enable_all(void) kvm_usage_count++; if (kvm_usage_count == 1) { @@ -115531,7 +115390,7 @@ index 1cf9ccb..4a8abb5 100644 hardware_disable_all_nolock(); r = -EBUSY; } -@@ -3168,7 +3176,7 @@ static void kvm_sched_out(struct preempt_notifier *pn, +@@ -3171,7 +3185,7 @@ static void kvm_sched_out(struct preempt_notifier *pn, kvm_arch_vcpu_put(vcpu); } @@ -115540,7 +115399,7 @@ index 1cf9ccb..4a8abb5 100644 struct module *module) { int r; -@@ -3215,7 +3223,7 @@ int kvm_init(void *opaque, unsigned vcpu_size, unsigned vcpu_align, +@@ -3218,7 +3232,7 @@ int kvm_init(void *opaque, unsigned vcpu_size, unsigned vcpu_align, if (!vcpu_align) vcpu_align = __alignof__(struct kvm_vcpu); kvm_vcpu_cache = kmem_cache_create("kvm_vcpu", vcpu_size, vcpu_align, @@ -115549,7 +115408,7 @@ index 1cf9ccb..4a8abb5 100644 if (!kvm_vcpu_cache) { r = -ENOMEM; goto out_free_3; -@@ -3225,9 +3233,11 @@ int kvm_init(void *opaque, unsigned vcpu_size, unsigned vcpu_align, +@@ -3228,9 +3242,11 @@ int kvm_init(void *opaque, unsigned vcpu_size, unsigned vcpu_align, if (r) goto out_free; @@ -115561,7 +115420,7 @@ index 1cf9ccb..4a8abb5 100644 r = misc_register(&kvm_dev); if (r) { -@@ -3237,9 +3247,6 @@ int kvm_init(void *opaque, unsigned vcpu_size, unsigned vcpu_align, +@@ -3240,9 +3256,6 @@ int kvm_init(void *opaque, unsigned vcpu_size, unsigned vcpu_align, register_syscore_ops(&kvm_syscore_ops); |